Lispの勉強をしたら『葬送のフリーレン』と同じカタルシスが待っていた。【Lisp2】
Vložit
- čas přidán 29. 06. 2024
- 「Lisp」シリーズの第2回。「小カッコに隠された美しい統一理論とは?」「世にも珍しいLisp母語話者が生まれた」「Lispを通して見る自然言語」など、Lispが持つ統一理論の美しさについて話しました。
【目次】
0:00 このプログラミング言語がすごい!
0:43 統一理論こそが美しい
12:50 Lispの統一理論「リストを作る」
28:34 Lispを通して見る自然言語
41:45 検証結果:Lispが大好きになる
【参考文献】
◯Land of Lisp
www.valuebooks.jp/bp/VS003681...
◯はじめてのLisp関数型プログラミング
www.valuebooks.jp/bp/VS000374...
◯葉桜の季節に君を想うということ
amzn.to/43Krv64
◯葬送のフリーレン(1)
amzn.to/43JqjA1
◯括弧への異常な愛情 または私は如何にして心配するのを止めてCommon Lispを愛するようになったか
www.slideshare.net/m2ym/commo...
※「Lispは手段ではなく目的」という主張はここから。
【サポーターコミュニティへの加入はこちらから!】
yurugengo.com/support
【親チャンネル:ゆる言語学ラジオ】
/ @yurugengo
【実店舗プロジェクト:ゆる学徒カフェ】
/ @yurugakuto
【おたよりフォーム】
forms.gle/BLEZpLcdEPmoZTH4A
※皆様からの楽しいおたよりをお待ちしています!
【お仕事依頼はこちら!】
info@pedantic.jp
【堀元見プロフィール】
慶應義塾大学理工学部卒。専門は情報工学。WEBにコンテンツを作り散らかすことで生計を立てている。現在の主な収入源は「アカデミックに人の悪口を書くnote有料マガジン」。
Twitter→ / kenhori2
noteマガジン→note.com/kenhori2/m/m125fc452...
個人CZcams→ / @kenhorimoto
【水野太貴プロフィール】
名古屋大学文学部卒。専門は言語学。
某大手出版社で編集者として勤務。言語学の知識が本業に活きてるかと思いきや、そうでもない。
Twitter→ / yuru_mizuno
【姉妹チャンネル】
◯ゆる音楽学ラジオ( / @yuruongaku )
◯ゆる民俗学ラジオ ( / @yuruminzoku )
◯ゆる天文学ラジオ ( / @yurutenmon )
◯ゆる書道学ラジオ ( / @yurushodo )
◯ゆる生態学ラジオ ( / @yuruseitai )
◯ゆる哲学ラジオ ( / @yurutetsugaku )
#Lisp #ゆるコンピュータ科学_Lisp
【参考文献】
◯Land of Lisp
www.valuebooks.jp/bp/VS0036813874
◯はじめてのLisp関数型プログラミング
www.valuebooks.jp/bp/VS0003745575
◯葉桜の季節に君を想うということ
amzn.to/43Krv64
◯葬送のフリーレン(1)
amzn.to/43JqjA1
◯括弧への異常な愛情 または私は如何にして心配するのを止めてCommon Lispを愛するようになったか
www.slideshare.net/m2ym/common-lisp-9838434
※「Lispは手段ではなく目的」という主張はここから。
【サポーターコミュニティへの加入はこちらから!】
yurugengo.com/support
【おたよりフォーム】
forms.gle/BLEZpLcdEPmoZTH4A
※皆様からの楽しいおたよりをお待ちしています!
「そうそう」のホリーケン
これすき
「私は1000年以上Lispを勉強してきたLisperだ!」
茄子、茶化せ。
@@ebangelist2ミズノ、コッカ増やせ
「…人間のあごは短いってわかっていたのに、なんでもっと茶化そうと思わなかったんだろう…」
4:38 親切な処理系「おかしいじょ。カッコが足りてないじょ。」
「堀元!IDE環境を使うのじゃ!」 byジェダイ
幼少期水野や。やはりLispを聴いて育っていたのか。
(楽しみに(た(ます(いる(待つ(私 この番組))))))
(was (i (forward (look (ing (this radio))))))
(think (i (wrong (this letters))))
(learn (ed (do (not (i (Lisp))))))
ニコニコ動画に投稿したら「サムネバイバイ」のタグが付きそう
サムネの威力が神っぽいなに次ぐ破壊力
40:28 「認知機能」に引きずられて「にんちき」って言っちゃうホリーレン氏かわいい
楽しみに待ってましたじょ
奇遇ですね、僕もです。じょ🍢
太貴少年おるやん
たにょまち
あれ、おかしいじょ。髪がないじょ。
ぼくもだじょ!
楽しみにしていたLisp回、ブラウザ更新したら面長のホリーレンが飛び込んできてやられた
大陸中の魔法使いがこぞってLispを研究した。今では関数型言語と呼ばれているよ
サムネ見て、俗に言う汚い系のMADかなと思って避けようとしたけど、リスプって見えたら正気に戻ってゆるコンだと理解できたので、リスプってやっぱ凄いなと思った。
例のアレ扱いされるゆるコン…
あぁ?ホイホイチャーハン?
22:11
Lisp神話によって(確固たる国家)が生まれた
上手すぎて草
「基本ルールは少なくして、単語にルールを持たせる」って、トレーディングカードゲームのようにも聞こえた
???「土地は山です😊」(断言)
「カードが違います」は正しい主張だった?
原初のTCG、マジック・ザ・ギャザリングのルールの黄金律の一つ「カードはルールに勝つ」ですね!
強すぎるサムネに吸われるように、いつの間にか動画を開いていた
雑コラに見えて意外と調整してそうなサムネ面白すぎる
「英語はどんどんLispに寄っている?」って聞いた時、中国語母語話者の私はそう思い浮かべました。「中国語の語順は重要ですが、ほかの文法(英語、日本語のような名詞変化、動詞)も少ないし、「名詞」を「動詞」として捉えるまさに必殺技の「轉品」も使うこともができます。中国語の意味を伝える効率も高いですし...」
そう考えると中国語、特に文言は英語よりLispに近い言語かも🤔
個人的に、漢文は語順で決まる。文脈でわかる名詞は省略してよい。という超高認知付加言語だと認識しています。動詞の場所にあれば名詞だろうが動詞、助詞の場所にあれば名詞だろうが助詞(「耳」はその発音から「のみ」の意味)扱いのかなりLisperな言語かと。
近代では形容節を明示する「的」とか、時勢(アスペクトのほうかも)を表す「了」を使うなど、Lisp離れも起きているとか。
聞きかじりなので詳しい人いたら教えて下さい。
この番組がいつか「ガチLispラジオ」にならんことを
隠れLisper水野、隠れチョムスキアン堀元が大きな山の両側からそれぞれが穴を掘り進め、無事に開通し出会えたかのような動画(堀元氏視点)
ゆるコンピュータ科学たまに普通にサムネがきもい回があるのも好きポイント
これみて、Lispいいなって思ったHaskellerです。
関数型同士でもずいぶん思想が違うなぁ
サムネでしばきたくなったのは初めてです。
カッコに関する語彙が発達してるってとこめっちゃおもろいな
サムネで笑顔にする魔法
sicpでプログラムをおぼえたおじさんは若者がlispを語るのを楽しく聞かせてもらいました。久しぶりに倉庫からlispの本を引っ張り出してきました。やっぱりlispは良い。
同じくです(私は日本語版第二版から入ったゆとり世代ですが)。
最近はSICPの教科書がpythonになったと聞きましたが、lisp(scheme)無しでどうやってあの真髄を伝えるんだろ?と思ってます。
魔術本、懐かしいです👍
36:52 これだとloveの引数に長さが2でないリストが入った場合の意味づけが曖昧になってしまうので、loveを主語と目的語の2引数をとる関数とした(love John Mary)で良い気がします。
家族愛とかなら love(家族構成員リスト) が使えるってことですか?(※私はLojbanに思考が引きずられています)
嶋村先生の生成文法回めちゃくちゃ頑張って聴いたから、今回の話は本当に気持ちよかった。興奮した。
LISP回待ってました!ありがとうございます
隠れLisperとしては水野さんが「束縛」と発したときにキター!となったです。
そして、統一原理原理主義の堀元さんはschemeに入門すると良いです。
なんだこれは、たまげたなぁ・・・
ホリラ「私は10年以上プログラミングをやってきた大プログラマーだ」
グレーアム「お前の前にいるのは30年以上Lispを書いてきたLisperだ」
ズン
ン゛キ゛モ゛チ゛ィ゛ィ゛ィ゛
Lisp使いが人間を理解する番組である
Lispにすごい興味が湧いてきたものの、1番最初に本格的に学ぶプログラム言語がLispでいいのか?という思いもある
人間のために導入されているプログラミング文法で一番有名なのは、
C言語ではarray[i]は*(array+i)のシンタックスシュガーだということかな?
ルール数を最小化するなら全部ポインタ記法に統一すればいいわけですね。
クリシェだと思いますが、*(array+i)と*(i+array)は同値なので、
array[i]はi[array]とも書けますね。
2回でも十分にカタルシス感じました。
コード書いていて、微妙に感じていた違和感を言語化してくれて、回収された感覚。
この動画きっかけでフリーレンみたんだけど、とんでもなく面白くてびっくりした
出会わせてくれてありがとう、ホリーケン
サムネ強いww
相撲取りが食べ物のことをちゃんこと呼ぶんではなくて、相撲取りの食べ物のことをちゃんこと呼ぶんですよね
Lispのコード自体もリストだから、List ProcessorであるLispでLispを作るというのは極めて自然な発想で
実際情報系だと学部でLisp on Lisp作りますね
(最近はSICPが廃れたのでLisp自体やらないかもしれませんが)
トレードオフのくだりで、新城カズマ(作家・架空言語設計家)の小説の中で「ルールが極端に少ない言語では様々単語が長大化する」のような記述があったのを思い出した(細部はあいまい)
CPU の、「CISC vs RISC」みたいな。
アウラ、
def L = LifeExpectancyYear
int Aura (int L) {return L = 0;
}
I thinkをなおすくだりで、受験生の時の英語読解を思い出しました
難解な英文を和訳するためにバラバラにして並べ直していました
普段はポッドキャスト勢のため
「(葬送の)フリーレンと…」を
「フリーレント」と聴き間違えて、
フリーハゲという
堀元さんが葬りたいかもしれないコンテンツを想起
タイトルと言えば「推しの子」なのよ
16:24 たしかLispの「リスト」って「順番」も含んでた気がする。そゆ意味で水野さんの「語順」が要るという意見は凄く正鵠を射ていて、そしてそれは実現済みだ、ということなんだろうなあ。(そいや他の言語でもリストと呼ぶものは順番つきであることが多い気がする)
癖強すぎいい😅
言語学とコンピュータ科学 お二方のそれぞれ好きな分野を喋ってただけなのに、たびたび合流地点が出現するの大好きです
今回すごい面白かったなー!
お二人の興味が重なって、めっちゃ盛り上がってた
生成文法とも繋がってくるのカタルシスすぎた
それはそうとして、サムネふざけすぎ笑
時間と空間のトレードオフ・・・黄昏世代の私には最高の学びだった。ゆるコンピュータ科学ラジオとゆる言語学ラジオの壮大な伏線回収が成立した回ですね。
22:11 ゾルトラーク
神っぽいな以来の衝撃的な雑コラコスプレサムネw
逆に癖になってきたな…
先日初めてゆる学徒カフェに行った時に、堀元さんに「プログラマーの弟が三上文法に興味を持っていた」と話しましたが、この動画で「プログラムと言語学は親和性がある」という独自仮説に根拠を得た気がしました。
言語学、特に統語論と意味論を大学で学んで、その後プログラミング言語を趣味で勉強し始めたときに、めちゃくちゃ物分かりがよかったのも、私が隠れLisperだったからなんですね。
それにしても私の予想通り、水野さんがプログラミング言語と親和性良いの見てて笑いました笑
エディタが括弧の対応とかインデントを全部自動で処理してくれるやつを親切な誰かがブログとかで紹介してくれてそう
Vim でも VS Code でもありますよ
サムネの破壊力強すぎて思わず開いちゃった笑
語順が大事とか、助詞が大事とか、結局同じだと思うんです。とくにプログラミングの観点も混ざっていれば、ますますこういう気がします。
例えば、 love(var1, var2) という関数が 必ず「var1がvar2を愛す」という結果を得ることは、最初からそういう"助詞"が式に埋まってあるんだと思います。
ただ、var1,var2の順番は人には大事なことですが、コンピューターにはそうでもありません。
たとえlove(var2,var1)になっても、プログラミングの世界では「var2がvar1を愛す」という結果を得るはずです。 (決して 「var2 をvar1 が愛す」得られません。)
こう解釈すれば、逆に日本語っぽくありませんか?
それに、逆ポーランド式記法になおせば、さらに似ているではないか?
(ジョン,メアリー)愛す
((((メアリー,ジョン)愛す)される,て)いる,(る)pop)た (あっているかどうか自信がない)
* 因みに、日本語と逆ポーランド記法の相似性を言っている先生もいますが、名前までは覚えていませんので...。
ゆる言語学ラジオもほかの番組や本とかも、日本語はあまり語順が大事ではないと言っているんですが。この描述は私的には不完全だと思います。
助詞は重要だが、日本人も一定の順で話していますし。それに、この順番を守らないと、理解できないとは言えないが、理解の速度(効率?)が落ちます。
どれだけ落ちるかよく言えませんが、機会があればこういう研究をやりたいです。が、その前にもっと日本語の勉強をしないとっていう自覚がありますけど。
Lispではコードと抽象構文木(AST:Abstract Syntax Tree)が一致しているという認識でした。
Lisp回おもしろすぎてLispやりたくなってきたのミーハーすぎて悔しい!オフイベントでLisp入門講座やってくれーーー
Lispのコードは機械にとって扱いやすい形なので、コード変換で構文を拡張できるだけじゃなくて、エディタのサポートも受けやすいんですよね。
だからオートインデントの形だけを見ていて括弧の対応とかは見なくなるし、括弧単位での編集操作ができるから書くのも楽になってきます。
逆にエディタがないと読めないし書けない・・・
30:20
日本語もひらがなで基本的には記述できるけど
漢字を含まない100文字と漢字入り100文字なら認知負荷もかなり違いそう
40:01 (置く ジョン (に (の 花子 花瓶) (at (at 机 上) 右側)))
Lispが手段ではなくて目的って、わかるーーー(^^)
楽しいですもん!
伝聞形式の会話だと、かっこの中身を声色を変えてわかりやすくしたりしますね。あと、漢字おぽえるのがペナルティしかないと思っていた時期もあったけど、漢字のほうが認識速度は段違いで早いからトレードオフですね。
昼から中華料理店で呑みながら聞いてたら、フリーレンのEDながれてきた。これも運命 12時53分
面長だから頭身バグっとるやん
11:00から先を聞きたいので勉強着手しました
ハーモニー読んた時のような視聴体験 38:29
最近素数を暗記するために、10以上の素数は一の位に1379しか要素を持たないから16進数に置き直して30:A=(1010)=31,37みたいに圧縮できるな〜って思ったけど解凍がめんどくさくて時間と空間のトレードオフを感じた
これってつまりどういうことですか?
31,37という素数を覚えるために30:Aというコードを覚えると言った発想ですか?変換方法がよくわからないです。
@@dnnb-st
10nに対してそれぞれ、1379の存在するか否かを16進数に割り振れるという感じです
素数を最初から列挙する場合は20の次に30が来るのは当然なので30:Aなどとしなくても、F5AE....と列挙していけばせいぜいn桁の16進数で10nまでの素数が覚えられます
@@user-bv9yy2yr9p長い質問の返信を書いてる途中で文章の意味が分かりました。
10nに対して1,3,7,9と4ビットを対応させ、素数がある部分に1を立てるという話なんですね。面白いです。
n=2なら21は非素数、23は素数、27は非素数、29は素数であるため20〜29までの素数達は(0101)₂=(5)₁₆
n=3なら31は素数、33は非素数、37は素数、39は非素数のため1010=A
n=4なら41と43と47が素数、49が非素数のため1110=E
って事ですね!
n=1もやっておくと11,13,17,19が全て素数なので1111=F。
10〜19の16進数、20〜29の16進数、30〜39の16進数、40〜49の16進数、...と並べるとF5AE...となって、これを覚えれば1/4の記憶容量で素数を覚えられる...が、16進数と10進数の変換は息をするように出来なければならない...という話ですね。
ただ私は解凍が苦ではないのでこの方法は割と効率が良いように思えます。とはいえ10台から初めてF5AE...とするのは今覚えているビットが先頭から何番目なのか分からなくなりそうなので30台に対しA、みたいに30とAは一緒に覚える方法のが良さそうです。ありがとうございます。
40:20 いいまとめ
22:10 急に鉄さん出てきてヴォーテツサーンになった
Lispやってみたいな
いつか話していた、「科学者は神を信じ始める」につながりそう
こうした関数型を見ると、カプセル化が如何に強力かが再確認できる。Lispはとても面白そうだけれど、自分にはまだ早そうだ。
サムネ雑コラすぎて笑った
面白い話をありがとうございます。アルファベット26文字に対してひらがな・カタカナ・漢字も使う日本語も、時間と空間のトレードオフ、認知をやり易くする一つの方法になっているのだなと思いました。
キモいMADあるなぁ思ったらゆるコンだった
エクセルに似てるなって思った
関数の書き方は一つだけど、引数とかのルールは各関数依存だしマクロで拡張し放題だし
サムネの吸引力がすごい
ポールグレアムが何者か全くわからないままこの人の本を読んでいた勢力なのでLISP回はとても好き
時間と空間のトレードオフ、「漢字かな混じり」と「かなのみ」の差とかがそれに近いのかな?
全文かなでも文脈とか含めればなんとか解釈できるけど漢字使えば文意を一意に定めやすいよね
漢字って、言ってしまえば「マクロ」ですからね・・・
うわぁ、今回もひd…凄いな…
逆に人間に寄り添った設計に振り切って、格助詞で構造を定めるプログラミング言語とかあるんだろうか
Gpt
リストの説明、水野さんだったら、生成文法の樹形図で、データが葉のみに存在し、ノードやルートにはデータがないもの、といった方がわかりやすい気が…
面白すぎるw
個人用
18:04
元々シンプルで、自分で言語処理系拡張できるんか!えぐっ!世界を構築できる、、、
37:07 Lispだと開き括弧のすぐうしろは動詞という決まりなので、quote無しで第1引数に名詞をもってくるとエラーになりそうです。I think that John says that Ken lovesa her. は (think I (say John (love Ken her))) でしょうかねぇ。
受験のとき、文章題で think だの that だのが出てくると示す範囲を () でくくって分かりやすくしてたのを思い出した。
30年くらい前にlisp使ったなぁ。
逆ポーランド記法懐かしい。
事前知識無しだと何書かれてるかさっぱりわからない。
サムネのまがまがしさがすごいな
どうでもいいことだけど閉じカッコのことコッカっていう下り、texのコマンドの名称設定でおんなじことやってて親近感湧いた
unix の shell script も、「if」が「fi」で終わるし(笑)
@@user-hf9yo2ly2t Cシェル系「」
サムネが面白すぎる
コンピュータ言語の知識0ですし、ただただ毛嫌いしていましたが、Lisp入門本を読んでみようかと思いました。
めっちゃ面白かったです。人間がLispのような言語を使うと認知負荷が高いのは、口という器官で「音」という媒体を使ってコミュニケーションを取るよう発達したからかもしれないですね。
直列に並べた文章で構造を表現できなければならず、そうなると((( )))が連続すると不便しかなさそうではあります。
GoFのデザインパターンのひとつに、visitorパターンがある。
データと処理を、分離する設計方法です。
神の言語なのに普及していないし、将来も普及しなさそうな理由がよくわかる神回でした。
人間の手に余る使いづらい言語だったんですね😢
先日無くなった作家 山本弘 氏の初期のSF作品「サイバーナイト」で、宇宙人の機械知性体が喋る言語を解析していた博士が「美しい! Lispに近い言語体系だ」みたいなこと言うシーンがありました。コンピュータに近い知性体なので言語がLispに寄ってたという設定。
サムネがZ会音MADみたいだったから、しばらく新着に気づかなかった
全然別の分野だと思ってたものが共鳴しあうの、connecting the dotsみある〜〜
40:28 にんちき
Lisp母語話者になりたくなりました。