- 1 名前:デフォルトの名無しさん mailto:sage [2011/10/09(日) 17:58:58.06 ]
- Common Lisp、SchemeをはじめとするLisp族全般のスレです
■前スレ Lisp Scheme Part32 hibari.2ch.net/test/read.cgi/tech/1303299696/ ■テンプレ wiki.fdiary.net/lisp/ ■関連スレ 【入門】Common Lisp その8【質問よろず】 hibari.2ch.net/test/read.cgi/tech/1309940115/
- 792 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:05:30.04 ]
- >>785
横に長くなるのが嫌なら、手続き的に書くだけで充分に縦長になるので その上に更にOOで幅を狭くしたいとは思わない
- 793 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:07:12.71 ]
- >>788 >>790 そう思うあなたのために Common Lisp があるのに、何が不満だ?
- 794 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:10:53.58 ]
- >>793
SICPの話しているんかと思ったんだけど SICPにCommon Lisp関係ないしょ
- 795 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:13:03.24 ]
- アホはひとつしか言語が使えないのか。
分野によって使用言語を使い分けるのが常識だと思うけど。 言語の文法は優劣でなくて選択で、ある点で有利な文法は他の点では劣ってるのが普通。 言語の作り方を見せるという点でscheme以上の言語はいまのところない。
- 796 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:16:12.50 ]
- うちの教授はLispしか使えんぞ
- 797 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:22:53.73 ]
- SICPだから言語の作り方でなくて、計算の基礎理論か。
それにSICPはschemeの教科書ではないよ。 あれはCSの教科書。schemeの理由は上にあるように、CSを教える用途に優れてたから使っただけ。
- 798 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:36:25.38 ]
- 今ならOcamlとかHaskell使った方がいいよね
- 799 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:38:47.94 ]
- S式ならね
- 800 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 14:49:33.45 ]
- >>787
Lispは文法の純潔さを選んでいるわけですね。 >>789 あくまで個人的な印象だけど、メッセージ送信の文法は構文糖以上だと思うな。 名前空間も絡んで来るし。 >>791 確かに選べるけど、それらが役に立つのは自分で新しくオブジェクトを書くときか その文法が使われているライブラリを利用するときだけで、 既存のデータ型を好きな文法でシームレスに扱える訳じゃないから あまり嬉しくなかったりする。 >>792 長さは置いておいても、意味が同じ手続きをプログラマ側で使い分けないといけないのが 面倒に感じるんだよね。
- 801 名前:785 mailto:sage [2012/01/23(月) 15:03:18.43 ]
- >>789
ちょい追加。個人的な印象ってのはよくない。 vec.refからvector-refに展開するにはvecの型と対応する手続きを知ってないといけないから、 静的にはできないし構文糖とは言えないんじゃないかな。
- 802 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 15:46:58.18 ]
- pythonのnumpyに相当するものは欲しい
行列計算や数値計算の枠組みを共通化してほしい
- 803 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 15:49:49.77 ]
- ついでに
>>618
- 804 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 16:08:39.28 ]
- 共通化よりも変換だ
unicodeとiconvのどっちかを捨てろと言われたらunicodeを捨てる
- 805 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 16:20:16.28 ]
- その二つを比べてどうする
- 806 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 16:33:45.07 ]
- >>800
端折り過ぎたというか、言葉が足りなくて色々考えさせたみたいで申し訳ない。 メソッドのディスパッチとか、そういった途中経過も勿論含めての話。 オブジェクトとメソッドへの引数を伴った、単なる手続きの呼び出しと、 最終的に等価になるのは同意してもらえると思うんだけど、どうだろうか。 それで納得してもらえたら、あとは>>789の最後の部分に続く。
- 807 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 18:38:29.18 ]
- >>802
ベクトル・行列演算ならBLAS 連立一次方程式ならLAPACK とFotran由来の共通規格があるじゃないか
- 808 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 19:24:22.02 ]
- >>779
> 古典・漢文はいらんだろ。少なくても時間を減らすべき。 減らさずに土曜日授業もやればいいんだよ。 生物学は物理学との選択で学べず、地学は選択すらできなかった。 大学受験予備校化や実用主義って学問をやる上で邪魔な存在だよ。 実用主義に走りたいなら義務教育が終わったらやる気や才能ある奴が働きやすいようにしたらいい。 就職予備校化している大学は専門学校って名前を変えればいいんだよ。 >>786 なんか作ろうと思ってマイコン関連のスレにずっと常駐しているけど、 ブラックボックスになっているチップやモジュールは好まれず、仕様 公開とか、色々とホワイトボックスになっていないと好まれないじゃん。 オープンなAruduinoがあるけど、どういう位置づけなの? あと具体的にブラックボックスのモジュールってどういうの? > 言語でもありもののライブラリを集めて使うことが重要になってきたと。 これってSchemeの得意分野じゃないの。 >>788 そりゃあ、言語選びはもの凄く大事でしょう。 習字の二度書き禁止みたいに無駄に何個も覚えるもんではないからね。 シェルスクリプトbashを覚えちゃったけど、kshを覚えたかったなあ。
- 809 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 19:30:53.37 ]
- MSが作ったから馬鹿にしてたけど
PowerShellが以外とよかった
- 810 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 21:12:30.80 ]
- >>808
ブラックボックスって言い方が悪かったか。仕様は公開されてるけど、使う時に チップの中の電位分布の変化を意識したりしないでしょ。ディスクリートで 組む時のような意味では。インタフェースと定格と限界さえ理解してれば、 中身はブラックボックスとして扱っても良いってこと。 SICPの文脈だと、具体的には、MITでは電気電子情報の学生は初年度に ロボットを作らせることになったのね。そのくらいの複雑度になると、 全てを把握するってのは無理で、出来合いのユニットのインタフェースを 理解して目的に合わせて使いこなしてゆくってことが重要になってくるって話。 > これってSchemeの得意分野じゃないの。 PythonのライブラリとSchemeのライブラリの量を比べてみれ。 Schemeが教育上の効率(言語の説明が省ける)で選ばれたのと同様、 Pythonが教育上の効率(使えるライブラリが既にたくさんある)で選ばれるわけさ。 この現実に不満があるなら、Schemeのライブラリを同じくらい充実させるしかないねえ。
- 811 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 21:30:04.88 ]
- SICPをSchemeで教えるかPythonで教えるかって話をしてるところに、
SICPを教えるかライブラリ利用云々を教えるかっていう、関係ありそうで全然別の話を持ち込んでる人が居ますね
- 812 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 21:36:19.80 ]
- 何ヶ月も学習するわけだから
最初にやるSchemeとPythonの言語の大きさの差なんて誤差のうち むしろ一般人には規模が大きくてもPythonの方が楽に学べそうだ
- 813 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 22:43:40.59 ]
- 全員が高校卒業までに体系的にSchemeを学ぶ必要はないけど、独学でやり込んで来てくれと
いう話じゃないの。 Pythonを一から教えるなら一年かかると思うし、半年で教えるなら色々と前提条件がつくんじゃないの。 MITのロボットの話だって事前に設計図を読めて書けて安価なマイコン・コンデンサ・モジュールを 組んだりとか、してきてねってことじゃないの。やっていないと物凄い苦労するよって。 人権無視で長時間拘束して大学で4年間教えていいなら教えられるけど、人権ありで4年間だと何も 教えられないんじゃないの。 >>812 なんで楽なのにPython3って普及しないの? Python3.1になったらみんな使い始めるって計画じゃなかった? 今、 Stable release 3.2.2 / September 4, 2011; 4 months ago (2011-09-04)だよ 。 Pythonに思い入れがなく、ただ覚えやすいという宣伝文句にひっかかって使い出したに過ぎ ないんじゃないのか。教祖のGuidoが3使えって言っているんだら3使えよ。 教祖に背くと地獄に行くぞ。
- 814 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 23:11:51.34 ]
- まだやってんのか
- 815 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 23:13:15.55 ]
- >811
>787 あたりみるとSICP書いて教えてる本人がいってるんじゃね?
- 816 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 23:22:31.56 ]
- MITはライブラリがないからScheme使うのやめたってことなのか
- 817 名前:デフォルトの名無しさん mailto:sage [2012/01/23(月) 23:41:14.71 ]
- sussmanさんの話だとSICPをやめたのは時代遅れだからで
Schemeをやめたのはライブラリがなかったからか
- 818 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 00:25:52.86 ]
- 古い言語は捨てられ新しい言語が次々と作られる
一方、ライブラリは足りないから古いライブラリは生きのこる
- 819 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 00:51:48.31 ]
- >>818
> 古い言語は捨てられ新しい言語が次々と作られる かくして世の中は思い付きで作られたポッと出の出来損ない言語とバグだらけの処理系だらけになる。
- 820 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 01:05:05.25 ]
- 出来そこないの処理系の多さではSchemeがダントツでしょうな
- 821 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 01:42:18.24 ]
- sussmanって人SICPの著者?
- 822 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 02:04:31.01 ]
- >>818
でもLispにはライブラリがないから、捨てられるね だれか、QtをSchemeにバインディングしてくれないかな
- 823 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 04:25:26.26 ]
- Qt程度ならSchemeで実装すりゃいいじゃん
- 824 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 06:55:28.14 ]
- >>820 はぁ?
そもそも仕様ができそこない、というゴミ言語が山ほどある時点で、 Schemeがダントツとかありえません。おまえの脳みそが出来損ないw
- 825 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 07:00:03.59 ]
- Schemeのマクロだけを詳しく噛み砕いて解説した本出した
ら売れるよ
- 826 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 07:32:29.79 ]
- ライブラリの具体例がUIというのはすごいな
全然具体的じゃないがいかにもありそうな話だな
- 827 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 09:15:33.73 ]
- 問題の切り分けができない負けず嫌いが教育を語る
- 828 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 09:17:43.99 ]
- >>827
救世主現る! 解決お願いします。
- 829 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 09:45:11.42 ]
- >>824
仕様ができそこないがどんな意味で言ってるのかわからんが とりあえず実装数の多さじゃSchemeはダントツだな次点はJavascriptか
- 830 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 10:33:03.39 ]
- みんなで処理系ばかり作っても意味ないだろ
ライブラリ作れっての
- 831 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 11:02:53.14 ]
- 処理系向けのテクニックが開発されていく言語というのがある。
そういう分野では処理系たくさん作られることが重要。
- 832 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 11:18:26.33 ]
- 最近の処理系向けのテクニックってどんなんがある?
- 833 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 14:00:49.69 ]
- 少なくともRacketはライブラリ充実してるぞ
Chikenは既存のC++ライブラリをくっつけやすいから 違う意味で充実している
- 834 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 15:45:56.76 ]
- racketは名前が駄目だわ
- 835 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 15:52:31.82 ]
- 「ライブラリが充実」で想定しているレベルに齟齬があるような気がする。
本業がプログラマでなく別の専門を持っている人たちが書いたようなもの、 生物屋さんがゲノムデータベースを簡単に検索して実験データと付き合わせるために 作りましたとか、経済学の人たちがセンサスの情報を統計処理しますとか、 言語学で文献のデジタル化をやっててその解析に使える便利ライブラリですよとか、 そのへんの層の厚さなんだよね。決め手になるのは。Schemeにそれが無いとは 言わないけれど。その分野の専門でない人間が聞き齧り、読み齧りで書いた ライブラリって、専門の現場のフローに合ってなくて使えないこともままあるし。 現場の人が現場の事情に合わせて書いて、それが蓄積されてるってのはでかいよ。 CS教育の話をしてるんだから関係ないと思うかもしれないが、研究にせよ開発にせよ、 今は別の分野の専門家とコラボしてソフトウェア工学を使ってその分野の問題を解決 する重要性が大きいし、今後もそっちが大きくなる一方だから。
- 836 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 15:57:02.23 ]
- 日本の大学では
インタプリタの作り方教えて リスパーの数を増やすことがCSだから
- 837 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 16:17:03.97 ]
- そういえば俺の大学には記号処理という名のcommonlispの授業があったな
- 838 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 16:20:06.29 ]
- つか別にインタプリタの作り方をやらなくて良くなったってわけじゃなくて、
メタサーキュラーインタプリタくらいは基礎教養としてスタート前にやっといてくれ、って くらいの話だと思う。 おいらは自分で何か書くならLispだし、Lisperが増えて欲しいとも思っているが、 だからこそ「それLispにもあるよ」ってタカをくくってる意見には賛同できない。
- 839 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 16:21:37.24 ]
- MITの学生は入学前にメタサーキュラーインタプリタ知っていると?
- 840 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 16:31:59.82 ]
- 知ってる学生もいるだろうし、知らなかったら1ヶ月で詰め込める。
web.mit.edu/alexmv/6.S184/ てか大学の実験や実習なんて教わってないことだらけで、そんなのは自習するのが前提でしょ。 俺は日本の大学だったけど。 「スタート前にやっといてくれ」はちょっと変か。「講義でやらないけど知らなかったら自分で やっといてね」くらい。
- 841 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 17:16:07.16 ]
- chez schemeの開発者の一人が書いた本(mit press)らしいけど、
読んだ人がいるなら感想を聞きたい The Scheme Programming Language, 4th Edition www.scheme.com/tspl4/
- 842 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 17:59:11.32 ]
- >>835
その辺の層の厚さが一番あるのはRとperl pythonは正直いまひとつ 劣化matlab
- 843 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/01/24(火) 18:59:38.06 ]
- >>841
日本語版 (3rd だが) なら読んだことがある。 SICP や Little Schemer と違って、 Scheme の言語機能の解説が多くを占める。 C++ にとっての `The C++ Programming Language' みたいなもの。 4th では R6RS を前提とした内容に大幅に改定されているはず。
- 844 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 19:05:02.20 ]
- >>835
非本業プログラマはCL一択でいいと思うんだけどね。gccに匹敵する速さだし、 REPLでelispとも親和性が高い。 >>842 PerlってRみたいに統計関連のツールって豊富なの? Perlでやると遅くてメモリ食うわで最悪な選択な気がするんだけど。
- 845 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 19:37:11.83 ]
- >R6RSを前提
えーー
- 846 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 19:38:49.24 ]
- R6RSってR5RSと比べて全体的にどんな感じで変化した(させた)んでしょうか?
- 847 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 19:40:16.84 ]
- CLは美しくない
- 848 名前:SCHEME餃子 ◆8X2XSCHEME mailto:sage [2012/01/24(火) 20:17:45.36 ]
- >>846
色々あるけど、モジュール化をどうするかが一番大きな議題だったように思う。 結果的にライブラリという概念を導入した。 # それさえ出来れば後々の規格改定で機能を追加することになっても、 # ライブラリを分けて共存を図ることもできるという思惑もあったみたいなのに # R7RS では仕組を変えようとしてるので、おまいらもちつけと言いたい。 # しかも新しい提案も R6RS と劇的な差があるわけでもないし。 それとマクロシステムが拡張されて非健全なマクロ等も書けるようになった。 マクロで問題になる、マクロ展開時にどの環境を使うかという点はフェイズの概念を導入することで解決した。 フェイズはライブラリ単位で決まるので、上述のモジュール化の仕組みとも密接に関連している。 レコードや文字列ポートなど、多くのケースで便利な機能がちょろっと追加された。 R5RS までは小さい言語コアだけ決めて残りは SRFI や各処理系の裁量にお任せという感じだったのが、 ここへ来て方向性が変わった感じがする。 細かいことは↓を参照 practical-scheme.net/wiliki/wiliki.cgi?R6RS%3a%E5%A4%89%E6%9B%B4%E7%82%B9
- 849 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 21:13:32.52 ]
- CL、Scheme(R5RS)、Scheme(R6RS)、Clojure
利用者の割合はどんなんだろ
- 850 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 21:14:06.24 ]
- >>841
3版と4版を読んだけど、無難な言語解説書。 深い事は書いてないから、なんたらハンドブック系の価値。 3版なら無料で読める。 www.scheme.com/tspl3/ >>842 Fortranも忘れてはいかん。科学屋さんが大量に書いてる。 基本的に専門分野ではRやFortranみたいな特化された言語が使われてる気がする。
- 851 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 21:24:53.98 ]
- ???
4版も無料で読めるような気がするけど 気のせい?
- 852 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 21:26:23.93 ]
- あとでFBIの職員が集金に来ます
- 853 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 21:31:12.71 ]
- >>851
ごめん、3版しか使ってないから忘れてた。 本文読めるのなら質問しないで良いじゃないか・・・。
- 854 名前:デフォルトの名無しさん mailto:sage [2012/01/24(火) 22:43:30.92 ]
- >>847
チンコはデカい方がいいだろ。 emacs子と親和性高いのは重要だよ。
- 855 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:13:28.44 ]
- >>835
> CS教育の話をしてるんだから関係ないと思うかもしれないが、研究にせよ開発にせよ、 > 今は別の分野の専門家とコラボしてソフトウェア工学を使ってその分野の問題を解決 > する重要性が大きいし、 応用プログラムを書くのとCSを専門として学ぶというのとは目的が全く違う。 数学で確率論やルベーグ積分を学ぶのと保険のアクチュアリーになるのが全く違うように。 今のCSは応用に向いた教育ばかりになってしまっていてCSを専門に学んだはずの人が 趣味や独学でプログラミングに上達した人と大して質的な差がなくなっている。 応用としてのプログラミングなんてものは、パソコン1台あれば専門教育なんて受けなくても勉強して身に着けようと思えば着けられるんだよ。 だって、プログラムを書くだけならば必要な知識はカタログ的な平板で雑多かつ多量の知識(ライブラリとかAPIとかね)なんだから。 そうすると、CSの教育を専門的に受けたというアドバンテージをどこに求めるのか、と言えば 体系的な知識、例えば雑多な様々なプログラミング言語を構成している基本概念やそれらの間の関係をきちんと理解しているとか、 それに基づいた様々な技術(プログラム解析とかね)を体系的に身に着けているといった点に求める事になる。 プログラミングに限らず他の分野でもカタログ的な知識は下手をすると素人マニアの方がプロよりも上だったりするわけだ。 例えば鉄道ヲタクの連中は、△△電鉄の3000型のブレーキは初期型は××製だったが後期型車両からは○○製になり その結果として制動能力がどれだけ上がって云々なんてのを知っていたりする。下手をすると当の△△電鉄の関係者や その3000型車両を設計・製造した車両メーカーの技術者よりも型番なんかに関しては詳しかったりする。 だけど、そんな知識を持っていても、その鉄ヲタは電鉄会社の整備主任も車両メーカーの設計技師も務まらない。 何故ならば、彼らに必要な知識は体系的なもの、つまり(科学や)工学だからだ。 今のCS教育は同じカタログ知識の教育に偏重していると思う。これでは素人プログラマと変わらない人材しか育てられない。 Schemeの長所は言語概念を体系的に教えるのに非常に適した言語だという事。だからCS教育に向いているんだ。
- 856 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:21:31.15 ]
- >Schemeの長所は言語概念を体系的に教えるのに非常に適した言語だという事。
これLisperの主観でしょ
- 857 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:29:06.45 ]
- 今の時代に大学でしか学べないCSって何があるの?
むしろ大学に行くと教える側の専門に縛られたりするんじゃね?
- 858 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:31:27.55 ]
- その大学で扱っている専門を知った上で入るならいいんだけど、
大抵の受験生は自分が受かりそうな中で偏差値が高いとか、 家から近いとかで大学選んでそうだし。
- 859 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 02:50:16.59 ]
- >>856
どういうことなんだろうな、Schemeだけで言語概念が云々ってのは。 lispが全てS式だからとか、再帰処理が構文解析器とかにマッチするとか、そんなん? プログラミング言語論の授業では特定の言語に拘らず色んなパラダイムを紹介されたけどねえ それと実装は別だな。特別に指定されない提出物なら全部pythonで書いてる 楽だから。何より楽だから。 matplotlibも便利でエクセルなんか使わずに結果をプロット出来るし まあ他の言語もgnuplotとか使えるだろうけどmatplotlibのが楽
- 860 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 03:47:33.62 ]
- は?抽象構文木を直接扱って、いかなるパラダイムでも実現できるのは、現状Lispしかないだろ。
楽なのが良いならPerlを使うべきだろうな。ライブラリがダントツで、人為的な強制もない。 一つの言語で全て出来るという幻想を持ってるようだけど、長く続けてると言語処理系やOS等の下位層を直接弄る事態になるから。 複数の言語が出来て当然だから。年に一つは新しいプログラミング言語を憶えるべき(特にパラダイムが全く異なる言語を)だから。構文抽象というパラダイムはLispにしかないから。
- 861 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 04:00:32.63 ]
- 誰が、一つで全てなんて幻想を持ってるって???まったく、LisperとPerlerがそうなだろうなあ
最も一つに拘ってるのがLisperだからな、初めから矛盾してる 指定されなければpythonつってるのに、それすらも読めないのかよ Cを指定されることが多いわ。こだわりが無いからpythonなんだよ お前みたいな頭がダイヤモンドより固い奴が、完全に思考停止して 毎年プログラミング言語を意味もなく覚えたり、意味もなく弄って何かやってるつもりになってると思うと頭がいたくなるわ プログラミング言語はツールだろ。いや、お前にとってはオナニーの道具なのかもしれないけどさ 必要に応じて使い分けてるだけなんで、ただやることもなくプログラミング言語の中をウロウロしてる浮浪者に何か言われる筋合いはないです
- 862 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 04:14:03.09 ]
- 長文はやめて3行以内に分けてレスしよう
まるで人が多いかのようにみえるよ!
- 863 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 04:15:19.05 ]
- 議論なら良いけど、喧嘩なら他所でやってくれないかな。
自分の常駐してるスレでそういうのやられたら嫌でしょ?
- 864 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 04:44:02.56 ]
- Lisperが持ってる「見下し」というスペシャルスキルによって、Lispの実のない権威は支えられている
全てのパラダイムが実現できても、実際のプロジェクトにはほぼ使われない Lisp万能論車の妄想に付き合うのは面倒だが。少なくとも一般人は自由を強いられたいとは思ってないよ プログラミング作法があるのならそれに合わせたいの。趣味的な誤差でもね。特に見やすさは強制でなくても重視している、残念ながら。
- 865 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 04:50:45.36 ]
- 必要に応じて使い分けるなら、構文を知るためにはLispが便利なのも分かるだろ。
一年に一つの言語は「達人プログラマ」だよ。もちろん読んでるよな。 最初から議論じゃなくて喧嘩だろ。未踏に落ちたか知らないけど、変なLispアンチ野郎との。
- 866 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:00:04.25 ]
- 作法でなくて人為的に一部の操作をやり辛くしているのが問題だと言ってるんだよ。
書きたい事の足を言語が引っぱるの、しかも実装の必要でもない作者の主義とやらで。 Windozeと同じく一般人がやりたい事はやり易いけど、深い事をやろうとすると足を引っぱろうとする。 実際のプロジェクトに使いたいならscheme以外の言語をどうぞ。CLとかどうでしょうか。あるいは自分が頑張ってschemeのライブラリを書いて下さい。R7RSの議論に参加するのも良いのではないでしょうか。 但しLispのみが構文抽象を扱える重要な言語であるという事実は変わりません。
- 867 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:00:36.66 ]
- もちろん最初から今現在に至るまでずっと両方を邪魔に思ってる。
言わせんな恥ずかしい。
- 868 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:04:32.64 ]
- いや無批判に引用すんなよ。一年に一つの言語なんて馬鹿の極み
それくらいも分からないの?本を読んでも意味をなしてないね だからさあ、構文を知るためにとか大袈裟なんだよね。噴飯物だよ。それも何かの本の引用なの? Schemeは書けるけど、別に構文を知るためにSchemeを勉強したわけでもなければ Lispを見たことなくても構文の勉強は出来るし。そうしてる大学も多いだろ
- 869 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:06:07.82 ]
- 邪魔らしいので私は消滅、さらばだ。
- 870 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:09:23.51 ]
- >>866
Lisp至上主義の成れの果てだな、視野が極端に狭い
- 871 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 05:11:24.33 ]
- 構文を知るためだけの言語
- 872 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 07:24:03.06 ]
- むしろ構文が1種類しかない言語なんだが
- 873 名前:デフォルトの名無しさん [2012/01/25(水) 07:47:19.29 ]
- Lispは重要な言語じゃないだろw
- 874 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 08:21:19.67 ]
- わかった。
見下されたい奴は並べ↓
- 875 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 08:39:08.59 ]
- 同じ括弧に見えるけど構文は1個じゃないんだよ
- 876 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 08:43:17.70 ]
- 先頭にあるシンボルを解決した結果が関数かマクロかによって、S式(リスト構造)の
解釈(インタプリテーション)が変わるだけであって、S式を表現するための構文は唯一だ。 あとはアトムのリテラルの記法がいくつかあるだけで。
- 877 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 09:05:18.84 ]
- 言語の話をしてるんじゃないの?
ご自分で言語なんだがーつってるのにw
- 878 名前:855 mailto:sage [2012/01/25(水) 11:36:40.67 ]
- >>856
> Schemeの長所は言語概念を体系的に教えるのに非常に適した言語だという事。 > > これLisperの主観でしょ 違います。 ついでに言えばSchemeと他の大多数のLispとは上の一点に於いて全く違います。 ほとんどのLisp(典型はCommon Lisp)は基本的な言語概念が見えにくくなっています。 実用を重んじて言語設計された結果として、あまりにも余分なものや複合的なものが多いので。 (抽象構文木を直接的に表現できるデータ構造を基本データとして持っているという点はもちろんLisp族すべてに共通ですが) SchemeはGuy Steeleの若き頃のMITレポートの数々を見ても分かるとおり、それまでの言語概念を突きつめて考察した結果から 可能な限り単純な要素概念だけを言語としては提供して、プログラムを書く側はそれらを自在に組み合わせられるようにする という言語設計哲学に基づいて言語仕様が作られました。その点では他のLisp族言語よりもAlgol 60やAlgol 68の精神を引き継いだ言語です。 (Revised^6で台無しにされてしまいましたが) Schemeの開発者たちがAlgol 60のシンプルで例外の少ない言語という精神を引き継ごうとしている事は、Schemeの言語仕様の タイトルにも表されています。 RubyにせよPythonにせよ、もっと他の言語にせよ、実用で広く使われるのを狙って作られた言語は、Scheme以外の他のLisp系言語と同じく 言語概念が基本要素でなく複合的であったり様々なシュガーで最初から修飾された形でプログラマに提供されているケースが多く、 基本要素概念を単独で用いたいと思うと逆に回りくどい書き方をせねばならないようなケースがしばしばあります。 そこがSchemeとは決定的に違うのです。 Schemeは、少なくともRevised^5までは実用よりも言語の基本要素概念を学び理解する為の言語として言語仕様が策定されて来ました。 だからこそ、実用的な構文は最初からは入れずに体系的な構文拡張の方法を導入して、「シュガーが欲しければ自分で好みの言語に仕上げなさい」 というスタイルで実用側からの言語仕様拡大の圧力に対応して来たのです。 856のような人はSchemeをきちんと勉強した事がなく言語の基本要素概念とは何かを真剣に自分で考えようとした事がないのでしょう。
- 879 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 12:44:40.41 ]
- >>844
CLでgccなみに高速プログラム作るめんどくささは cで最初から作った方がましな感じ
- 880 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 12:48:28.76 ]
- SchemeがLex/Yaccでどんな言語にも変換可能なら
あらゆるアルゴリズムをSchemeで書く有用性もあるのだけどねえ
- 881 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 12:50:54.29 ]
- >実用側からの言語仕様拡大の圧力に対応して来たのです。
対応できてないから廃れてんだよ >言語の基本要素概念とは何か その基本概念も絶対的なものじゃないでしょ
- 882 名前:デフォルトの名無しさん [2012/01/25(水) 13:17:10.43 ]
- >>881
最後の行は内容ある反論できずに相対主義持ち出して議論から逃げた典型だなw
- 883 名前:デフォルトの名無しさん [2012/01/25(水) 13:45:30.40 ]
- Schemeが廃れた原因って10年ちょい前からのプログラミング言語論とかプログラミング論教育の軽視だろ
ACMのカリキュラムでもその手の科目が消えるとかインディアナのFelleisenとか騒いでたし ACMのカリキュラムも881みたいな 知ったかプログラマに合わせたってことだろ 881も自分に内容あるって言いたきゃ Schemeとは全然ちがうけど 同じように見かけもフォーマルなセマンティクスも単純な コンセプトや構文だけで構成されてる 実用言語の具体例あげろよ 878の主張は実用言語は実用めざすから否応なしに複雑になっちまうってことだろ
- 884 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 17:35:29.21 ]
- 言語の基本要素概念とはなんなのか?
まずは855以外の人に聞きたいな
- 885 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 17:42:51.26 ]
- >>884
おおざっぱだけど言語仕様と言語の基本要素概念は同じものっていう定義でいいだろ。
- 886 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 17:50:17.74 ]
- >>885
>言語概念が基本要素でなく複合的であったり様々なシュガーで最初から修飾された形でプログラマに提供されているケースが多く、 >基本要素概念を単独で用いたいと思うと逆に回りくどい書き方をせねばならないようなケースがしばしばあります。 855の人の意見だと違うものだと取れるけど
- 887 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:18:04.18 ]
- コレはアレから導出できる、みたいなのを突き詰めていった時に
最後に残る要素はなんだろうみたいな話では。
- 888 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:31:03.57 ]
- 最後に残る要素は何?
- 889 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:37:32.86 ]
- Lispの簡易実装を読んだらJavaScriptの動作が腑に落ちた。
てかJavaScriptじゃなくてLispにしてくれたらよかったのになあ。 つかHTMLがS式だったらよかったのになあ(笑
- 890 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:38:41.00 ]
- >>888
愛だろ、愛
- 891 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:40:58.82 ]
- >>889
世の中の人が欲しているのは DartとかCoffeeScriptでLispではない
- 892 名前:デフォルトの名無しさん mailto:sage [2012/01/25(水) 18:48:34.55 ]
- (define (f) 3)
と int f(void) { return 3; } は意味論的には同じだけど、 (define (f) 3) => (define f (lambda (x) 3)) で、これはSchemeがCにない無名関数という基本概念要素を持っている。 とか (define (f x) x) をCでやることはできない これはSchemeがCにない動的型付けという基本概念要素(?)を持っているから、とか? 言語仕様のなかでユーザーが利用できる概念のうちsyntax sugarでないもの? で、Schemeの基本概念要素は標準的なな言語が持ちうる概念を網羅している、という主張? ちゃんと考えると(怪しい)論文ができあがりそう。
|

|