Lisp Scheme Part40 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
読むだけなら三〇分だったなぁ(速読なんで)
理解するのは3月以上かかった orz OnLisp を読んで、ユーザー定義のマクロは害悪だと、あらためて認識しました 極端なマクロを作るべきではないし実際にそれほど使われないけど、
マクロを使いたいときというのは汚いコードを隠蔽したいときだったりするので、
マクロを定義できないとたぶんもっとひどいことになる。 On Lisp読んでmacroを害悪って感じるのが不思議だわ
使いどころを間違えると確かに非道いものになるが、使うべき所で使わないのも非道い事になるって明確に述べられているじゃん マクロあってこそ唯一無二のLisp族なのに、マクロを否定したら読み辛いだけの欠陥言語やないか〜い! マクロなくても読みやすくね?
コードが視覚的に構造化されてるし >>12
OnLispの内容を、隣の同僚に説明することまで想像してください >>14-15
構造化と言えば構造化だけどどの構造も同じように括弧で表されるのは微妙。
慣れれば読み難いとは思わないけど、読み易いというほどでもないんじゃないか。
読み易いかどうかと言うよりも許容可能かどうかという話だと思う。
どの構文にも名前 (記号によって表される名前のこともあるけど) が付いているから検索しやすいとか、
本物のマクロを使えるとか、そういうのは利点としてカウントできるから見難さを上回る利点になるけど、
簡単に覚えられる程度の決まりきった構文しか使わないという人には利点がないわけで、欠点が上回ってしまうということは考えられる。
>>10
そんなわけで、マクロを否定しつつそれでもLISPを使いたいというのは何が嬉しいのかよくわからない。
それともLISP自体が駄目と言いたいのかな?
わからないというのは言葉通りの意味で、批判とかではないよ。
わかるように是非とも説明して欲しい。 理系女を引っ掛ける時の武器になるじゃない
俺「つまり、リスプで無名再帰をランダムでYコンビネーターするわけさ。実際見てみたい?」
女「うん」
俺「(*´σー`)エヘヘ、そそり立ったマクロをランダムに君のYにプス。ニップルにもプス、さあさあ、リスプリスプ」
女「リスプ・スゴー!ズコーってスゴー」 >>20
ラテン語はEUの大学出のインテリだったらほぼ必須と思って良かったはず
エゲレスはラテン語圏じゃないからしらん チンコそそり立つ奴うぜえと思ってggったら個人特定できてワロタw ふふふ、俺に嫉妬してるな
よし、中国五千年の秘法、少漏多接でおまえもチンコ鍛えろ >>15
むしろ Lisp 使うときのモチベーションがマクロ
専用エディタがなくても使う人はいるのかどうか ショートリフの医薬品エキスパートシステムではマクロは使われてたんかいなぁ? >>27
使われてたというか、無しだと難しいでしょう
プロンプトとのインターフェイスだけはマクロの方が読みやすいのは、さすがの私でも認める 巷で話題のDeep Learningとは対極だしね >>22
S式単位の編集、評価が便利すぎるんだよな 最近はCommon LispとSchemeの人口はどっちが多いんだろう? githubとかの活動状況みて、人口数だとclojureがうなぎ登りな感じする
schemeって何かするときに処理系に依存するのが多いのが厭
clって何かするときに過去のしがらみが厭
みたいな理由でclojureに流れた人なので余計にそう感じるのかも<<俺
;;;ちなみにjvmと.net(clojure cli)の狭間で同じように嫌いになりかけてる orz >>33
ttp://redmonk.com/sogrady/2015/01/14/language-rankings-1-15/
しっかし改めてみて見ると、Lisp方言の中ではClojureが抜きん出てるな clojure は Lisp の皮をかぶせた Java って感じだから、
伝統的 Lisp が好きな人はイマイチに感じるかもね。
それでも Clojure がそれだけ伸びたってことは
「伝統」が Lisp 人口を抑制する理由になってたってことだ。
具体的にどれというわけでもないけど、文法的にもコミュニティ的にも。 ここに詭弁がある
それでも Clojure がそれだけ伸びたってことは
「伝統」が Lisp 人口を抑制する理由になってたってことだ。 Paas上にサービス作ろうと思うとたいていJVM上になるからClojureになっちゃう
ホストしてくれるところがあるならCommon Lispで書いてもいいんだけど clojure は repl のあるjavaです
だんじてlispではない PaulGrahamの言う大理石みたいな言語ってやっぱりHaskellのこと? >>40
え、どうみても Lisp じゃんか?何が嫌なの 俺も一々 java が顔出してくるので嫌になって clojure 辞めた Dot 対が無いのが嫌って人が居たな>>clojure しばらく前に触った時は、時々エラーメッセージがまんまjavaで出てきて、デバッグし辛くて嫌になった。
今は改善されてるかな? car/cdrがないなんて
オッパイとチンコがない人類みたいじゃないか 確かにエラーメッセージが意味をなしてないことは多々ある
REPLでNullPointerExceptionとか言われても困るし car: 吾が身は、成り成りて成り合はざる処一処あり
adr: 我が身は、成り成りて成り余れる処一処あり
cons: 此の吾が身の成り余れる処を以ちて汝が身の成り合はざる処に刺し塞ぎて国土を生み成さむ 特定の言語を指して言ってるようにも読みとれないし、
指していないものとして読んでも意味は通じると思うのだが。 でもポール・グラハムの価値観というか美的センスは知りたいよね Lisper捕まえて価値化とか美的センス問いただすってどうなの PGの経歴考えれば、氏の美的センスに興味持つのは別におかしいことじゃないだろ 教祖が思いつきで適当こいたことを信者が一生懸命意味づけしてるみたい PGは経済的な感覚はするどいと思う
プログラマとして、言語設計者としてはどうかと思う グレアムは現実寄りの感覚を持っていると思う。
言語設計者が陥りがちな罠として一貫性とか対称性とかを過度に重視してしまうことがあるんだけど、
グレアムの場合は逆に「汚くてもこの方が効率的だ」と言えちゃうところがある。
それはそれでプログラマ、言語設計者に必要な資質だと思う。 ■ このスレッドは過去ログ倉庫に格納されています