Lispはなぜ狂信者を生むのか? その答えは、奇妙な出自。【ポール・グレアム3】
HTML-код
- Опубликовано: 28 июл 2024
- 「ポール・グレアム」の第3回です。「Lispはなぜ狂信者を生むのか」「文法よりも意味を重視した言語」「最後までチョケたっぷりの『ハッカーと画家』」など、Lispの特徴やポール・グレアムの本の魅力について話しました。
【ハッカーと画家 コンピュータ時代の創造者たち】
www.valuebooks.jp/bp/VS005373...
【ゆるコンピュータ科学ラジオ書店】
www.valuebooks.jp/shelf-items...
【目次】
0:00 自分のうんざりベンチマークとは?
1:46 ポール・グレアムはスーツ嫌い
5:22 Lisperたちが狂信するLispとは
16:40 何度も挫折しても現れてくる関数型言語
22:10 Lispはセマンティクスに近い言語
28:23 今度もVALUE BOOKSで売ってます!
31:20 最後までチョケたっぷり
【参考文献】
◯Land of Lisp
amzn.to/3ulWsQU
◯はじめてのLisp関数型プログラミング
amzn.to/3HNgqHg
【サポーターコミュニティへの加入はこちらから!】
yurugengo.com/support
【親チャンネル:ゆる言語学ラジオ】
/ @yurugengo
【実店舗プロジェクト:ゆる学徒カフェ】
/ @yurugakuto
【おたよりフォーム】
forms.gle/BLEZpLcdEPmoZTH4A
※皆様からの楽しいおたよりをお待ちしています!
【お仕事依頼はこちら!】
info@pedantic.jp
【堀元見プロフィール】
慶應義塾大学理工学部卒。専門は情報工学。WEBにコンテンツを作り散らかすことで生計を立てている。現在の主な収入源は「アカデミックに人の悪口を書くnote有料マガジン」。
Twitter→ / kenhori2
noteマガジン→note.com/kenhori2/m/m125fc452...
個人RUclips→ / @kenhorimoto
【水野太貴プロフィール】
名古屋大学文学部卒。専門は言語学。
某大手出版社で編集者として勤務。言語学の知識が本業に活きてるかと思いきや、そうでもない。
Twitter→ / yuru_mizuno
【姉妹チャンネル】
◯ゆる音楽学ラジオ( / @yuruongaku )
◯ゆる民俗学ラジオ ( / @yuruminzoku )
◯ゆる天文学ラジオ ( / @yurutenmon )
◯ゆる書道学ラジオ ( / @yurushodo )
◯ゆる生態学ラジオ ( / @yuruseitai )
◯ゆる哲学ラジオ ( / @yurutetsugaku )
#ポール・グレアム #ゆるコンピュータ科学_ポール・グレアム
【ハッカーと画家 コンピュータ時代の創造者たち】
www.valuebooks.jp/bp/VS0053739931
【ゆるコンピュータ科学ラジオ書店】
www.valuebooks.jp/shelf-items/folder/0a655b11699edf9
本当はめっちゃ優しくておもろいやつなのにそれに気づくのに入学から半年かかるクラスメイトみたいなサムネ
人の血が通ってない連続殺人鬼にも見えるから、半年もかかるのには納得せざる得ない。
「入れ子にする(カッコで包む)」しかまともな構文が存在しないのにプログラミング言語として成立する、というところに、「入れ子構造こそ表現力の根源・必要十分条件である」ことを実感できて、そこに自然言語との共通点も(個人的に)感じます
静かなLispの森の陰から(中略)括弧 括弧 括弧・・・・・
歯科の話、ちょうど先週思ったことだったのでタイムリーで共感した。
忙しいわけではないけど、情報溢れる現代、SNSのチェック、アニメや漫画の新作……などと暇なはずの時間でも意外と労力を使ってるなと、麻酔が効くまでの待機10分で思った。
10分くらいなら、寝る前に目をつぶる機会であるはずなんだけど、本心は「寝たくない」。明日仕事だから、寝ないと体調に支障をきたすから、寝るのであって、寝付くまで休んでいる感じはしない。
本当はしたいことを思い浮かべて今日は出来なかったとくやしがったり、明日の仕事にうんざりしたり、そもそも残業なくともフルタイム8時間という制度がもう嫌だと思ったり、寝る前は妄想すると聞いて試してみても楽しいものでなかったり。
そんな感じで、穴の開いたタオルで顔を覆われ、タイマーがなるまで待ってる時間は意外と心地よかった。
いつにもまして今回のグッときた。テーマ本筋の話題、脱線した話題、コネクティングドッツみ、真面目な話、チョケた話、がうまいことバランスよく融合してた。
ポールグレアムは「The Roots of Lisp」というエッセイも書いていて、何年か前に訳したのですが、
Lispはマッカーシーがデザインしたものというよりは発見したものという方が近い。Lispとは、計算を公理化しようと試みた結果として得られる何かなのである。
と書いていたのが印象的でした
川合さんはGaucheと呼ばれるscheme処理系を作った方ですね。昔はFFの開発にも参加しててLisp界隈ではめちゃくちゃ有名な人です。
そうそう、FF7のワールドマップエディタを書いたって聞きました。
13:02 おそらくカンブリア紀に生息していたオパビニアじゃないかなと
「最後までチョケたっぷり」
細かい部分への遊び心が見ていて嬉しいです。
24:03 「発声器官が無い人の発想」の表現いいですね。
4:36 ヤク者の方は、Lispハッカーであり自身でLisp処理系まで作っている方なので、プログラマーで画家で投資家でもある人の本をプログラマーで役者で翻訳者でもある人が訳したのです!
Lispの本読んでたら
Lispの機能の説明で
Lisp reader
この本の読者のことではない
ってまず書いてあって吹いた。
日本語ではLisp使いは格好()つけたがるって呼ばれるけど、
英語では
CarをCdrに変えるときは
carefullyにしなければならない、さもなくばcdrefullyなんて言葉を見つける。
って言い伝えがありますね。
全ての機能を備えた言語回、楽しみです
Lispが難しい理由が理解できてよかったわ
いくら書き言葉なら、ツリー化できるとは言っても
ツリーになっている文章を普段見たこともないし、どう読めば理解しやすいかとか知らないもの
楽しみに待ってました
奇遇ですね、僕もです😊
たのまち
@kinsyu_man そだよ
ぼくも!
on lisp、let over lambdaも面白いですね
眼鏡なし水野さんに対していつも以上に眉毛描き足したい気持ちが湧いています
逆にこのままで髪形だけパンチパーマに変更するのも似合う気がしてる
「やくしゃとやくしゃをやっています」と言うためだけに、役者と訳者を目指そうかな。
訳者川合さんもLispハッカー
lispの1つであるschemeは、繰り返し構文すら「末尾再帰最適化があれば不要」とする思い切りの良さが好きです
クロマニョン人にクロマニョン人と書いてあるのはもうみすず学苑だろ
関数型言語以外でも、
- できるだけ状態を持たない
- 副作用を最小限にする
として関数型風味で書けたほうがいいなとは感じております。
そのうちD言語くんも紹介されるかないな。
ちょうどいいゲームとして2048を上げる水野さんセンスある。
河合さんはSchemeの実装Gaucheを作った人ですよね。バリバリですよね。
自宅で使ってるメール振り分けソフト、gaucheで書かれてます。
LISPを逆ポーランド記法で書いて括弧を使わないこともできそう FORTHかPostscript
堀元さんのLisp回&水野さんの意味論回を楽しみにしてます!
意味論とUMLの技法は、似ているよね。
水野さん、普通の言語をあまり知らんうちにLispから入る、を経験できたら素晴らしいのではないでしょうか
Lispは存じ上げなかったですが、関数型言語のRしかほとんど使えない人なので、関数型というだけでなんだかとっつきやすく思っちゃいました。
30:54 ということはよしのぶさんにドンピシャの本ってことですね!
水野さんの下に出る字幕にスラッシュ入ってるなぁと思ったら、マイクに照明が反射してるだけだった😂
Lispの括弧の多さの意味が生成文法の系統樹と関連しているとは、Lispの理解が進んだ。
Lots of Insipid Stupid Parenthesesの頭字語だから括弧が多いwww
13:21 bisonやflexをゆる*でやってほしいです
(なんとなくテリトリーとしては言語学でなく計算機科学になりますか?)
言語学の先生とか他分野の人が専門外の勉強する番組とかもみたいな
24:38 括弧コンソーシアムきたーーー
水野さんの天井に朝刊を投影してくれ発言は
目の手術中に数学の論文を読もうとして主治医と大喧嘩になったポール・エルディシュの思想に似ている
Lispに強い影響を受けて開発されたJulia言語も取り上げてください!
LISPは英語より日本語に近い
LISPは( )の中に小さな世界を作れる神の言語
堀本「副作用がなくなるのが関数型!!」
純粋関数型至上主義者だ怖い
つ setq prog cond
「(プログラムの動作の分類である)副作用が無い」というのは関数型プログラミングの「(主作用でなはいという意味での)副作用」なんだよね
コメントの多さをみてこんなにLispを好きな人が多いのにびっくりした。『千のプラトー』にも出てくるから出会いの裾野は広いと思うけど。
ラムダ計算と意味論の話だと、ちょっと道を踏み外して表示的意味論の方に逸れて領域理論に突っこんだり、あるいは項書換え系とかコンビネータ論理とか (つらそう
関数型言語ってなんとなくとっつき悪かったけど、興味出てきた
関数型プログラミングって実はそんなに高尚なものじゃなくて、なんなら普段からわかりやすいプログラミングを心がけてると、無意識下でやってる可能性すらあったりする。
@@kettle9265 ほんそれ。
エクセルの開発タブとマクロボタンはデフォでは隠されてたりするので「俺のエクセルにはそんなもの無い」は往々にしてある
11:15 Lispから交雑した言語…の話で、もう一回動画つくれますね!!(^^;
3:10 そういえば、ロータス123のマクロで給与計算組んだなぁ。
ジョン・マッカーシーは今回出てきた人(AIの命名者)として認識してたので、川原先生会でびっくりしました
「インプットをしていない時間が無い」と聞いて、普段ボケっとyoutube見て何も残らない自分とは全く違う人間なんだと痛感した。
14:22
知ってる人は知っている、川合史朗氏は日本で有名なschemeの作者でlisperですね。
ご存知なかったようですので、一度、wikipediaでもお調べになってみてはいかがでしょうか。
たぶんshiro(川合氏のネットのハンドルネーム)さんはゆるコンのことを知ってる可能性が高いので、いつか、ゆるコンに登場していただける日を楽しみにしています。
ハッカーと画家を学生時代に拗らせた身としてはLisp合宿超やりたいです
LISP について、lambda とか、シンボルというデータ型とか、データ構造(CONS)とプログラムの同型性とか、どこまで語られるのかなぁ。
確かにJavaScriptが駆逐されてないのよく分かんないですね……
改良版?のTypeScriptも結局jsにトランスパイルして使ったりするし。
結局ブラウザ上で広く扱えるっていう部分が強みなんですかね。
「OOエンジニアの輪! ~ 第 21 回 川合史朗 さんの巻」がお薦めです!
Shiroさんだけで1回分いけるので頼みます!
途中でストレージとメモリがごちゃまぜになっているという発言がありましたけど、計算機科学的にはDRAMは主記憶装置で、NANDメモリは補助記憶装置でどちらもメモリだと思います. レジスタ、SRAM(2次キャッシュ)、DRAM、NANDメモリは速度、容量、揮発性など特性に合わせて使い分けされているだけですべてメモリです. あとNANDメモリは普通にGCがあります(勝手にやられてれ気づいてないだけ)
「Lispが奇妙に見えるのは(実際にはそれがLispの特質を決定づけているのだが)、「LispがLisp自身によって書ける」ということだ。」
グレアム「Lispの起源」。
アラン・ケイも「LISP1.5マニュアル」(マッカーシー)のそこの部分が超重要だと言ってますね。
多分そうなんでしょう。
入門者向けにそれを教えてるのが「Scheme手習い」なので、取り上げてみてはいかがでしょう。
Yコンビネータも出てきますよ。
12:58 もしかしてオパビニア?
24:03 ここで映画『メッセージ』の解像度がさらに上がった気がしました
自分の河合史郎君へのイメージは天才プログラマでめちゃキータイプが速い人ですね。バリバリのLISPERでもなくて普通にCでも書いてます。トースターを改造してPCを作った逸話もある人
歯科の話を聞いてアキバ歯科という歯科助手がみんなメイドの格好をしている歯医者のことを思い出したけど、実はとんでもなく素晴らしいご楽なのかもしれないと思った
コネクティングドッツみ!
関数型の良い所は、書く事が少なくなる点だと思う
25:04 「開発者に口はある」が「死人に口なし」の形式に見えてしまった
(+(* 12 80) (/ 20 5))
コンピュータよく分からないし数学は高校の文系範囲しか知らないけど、この書き方は結構しっくりくるな。
f(a,b,c,…)=a*b*c*…
g(a,b,c,…)=a/(b*c*…)
h(a,b,c,…)=a+b+c+…
みたいな感じで予め関数を定めて、
h(f(12,20),g(20,5))
このように表してるのと似たような見た目してるな〜って思いました。
分かりやすい!だから関数型言語というのか
堀元さんも関数型言語を学ぶガチコンピュータ科学ラジオやればいいのでは?
ガチ言語学ラジオよりもついてくる人が少なそうだけど。
今日の名言「パソコンができるんだね〜」
37:20 「関数型言語」に「強い型付け」が必須だという姿勢が最近の流行、一方ちょい前のLispブームの頃だと必須とは言ってなかった(気がする)ので、これは流行なのか、それともどっちか(!)が間違えているのか、は気になっています。
「強い型付け」というワードは結構問題含みなので避けます(し使うのをおすすめしません)が、これが静的型付けのことだとすると、関数型プログラミング言語に静的型付けは必須ではありません。HaskellやOCamlなどの言語によって静的型付けの威力が知られるようになって以来の流行りのようなものです。もし言っているとしたらそれは便利だよ!という意味で言ってると思います。
静的型付けではない関数型プログラミング言語としてはclojureが挙げられます。ちょうど今回話題になったlispの末裔で、意図的に動的型付けを採用するなど作者の明確な思想の下作られた言語です。個人的にはかなり美しい言語だと思うのですが、lispハッカーがどう思ってるか私も気になっています(彼らはjavaのランタイムを毛嫌いするかもしれませんが、言語仕様の感想を聞いてみたいですね)。
Racket学んでるけど難しい
34:35 Lispは当時と同じ形で生き残ってるけどJavaScriptは滅びてESになったと言っても過言ではないと思う
Lispは数学的言語でほかは工学的言語!
Haskell「ほーん?」
Land of lispを怪物本っていうひともいますね
3~40年前はコンピューターを使う=プログラムを作る、だったのかなぁ
サムネにチベットスナギツネ紛れちゃってますよ
『ハッカーと画家』って、
ビル・ゲイツの写真が載ってる本でしたっけ?
Lispの本を買ったのは25年も前のこと。積読になったあと、どこかに死蔵されました。😅
「未来を予測する最善の方法は、それを発明することだ」
3:56 佐賀県のSCP
余談ながらLISPと聞いて、十数年前その名で声優ユニットが音楽活動初めてすぐ休止したのを思い出したのはここだけの話
うんざりベンチはおもろい視点やなぁ😮
LEANも数学的なプログラミング言語だった気がします
それ以上は何も知りません
教えて
我らがLisper藤井さんを召喚してはいかがですか?ゆる学徒カフェにてレンタルできるみたいですし。
飯田さんに勧められた本、飯田さんが読んだかどうかを当てる会、希望。
病院で治療受けてるときはスマホ触らないから「ああ、俺休んでるなぁ…」と感じるよなぁ
24:43 嶋村先生の真似の解像度が高くなってる
鳥谷敬さんが座ってる
水野さん、意味論はいつですか
おい水野!あれだけメガネを外すなと言ったであろう!
全然関係ないですが、プログラミングでラベル(label)ってしばしば出てくる用語なんですが、なぜこれってレイベルとかレーベルじゃないんでしょう?テーブル(table)のことタベルって発音するレベルで発音が違うと思うのですが。音楽の会社とかはレーベルっていうのだけど。
コードについて英語話者と喋っているときにthis labelって言われると母語の干渉がでかすぎてえーっとどのラベルの事?となって困ります。labelをラベルの意味でラベルって発音する言語って日本語以外にあるんでしょうか?
表紙はオパビニアですね。カンブリア紀に登場した節足動物の仲間です。
22:05 LISPでバスに乗るのではなくCARに乗るのでは?
えっ、クダーらんこと言うな!?
12:55 ゾウ×オパビニアですか?
シンギュラリティは2030年までに到来する
関数型言語なら任せてくれい...って言いたい
LISPの想い出といえば、emas(UNIX環境のテキストエディタ)の初期設定を決めるためにLISPを勉強したんですが、括弧の多さに負けました〜
emasのエディタ環境でコンパイラやらメールやらゲームすらできるんですが、エディタはvi に戻りましたとさ。
Emacsではsetq以外覚えなくて良いのでは?
電検(電検3種)じゃなくて電気工事士2種かな。
加減乗除をオペレーターと考えるから変なのであって、関数と考えればふつうですよね。
Lispは設計思想は関数型ですが、(特にCommon Lisp制定前の)現実のプログラムは下手したらGO(GOTO)まであって、とっても手続き的です。
プログラマパラダイムを学ぶのであれば、応用的な話がない方がいいかもしれません。
あと、もっと変態的な言語としてはPrologもおすすめします。一階述語論理をそのまま実装しています。が、言語としては未完成な部分が多く、実用的なプログラムを書くのはなかなか大変です。
meta的に書けるってことかな??? Lisp
!!!!LISPモンスターだ!!!!
クロマニョン人はクロマニョン人なの、カバはカバと思ってる奴じゃないか?
サムネグラサンでも良かったかもw
Lispモンスターには発声器が無い?