ディスカッション (11件)
「Perlisisms」は、計算機科学の先駆者であるAlan Perlisが1982年に発表した、プログラミングやソフトウェア設計に関する非常に示唆に富んだ格言集です。現代のエンジニアにとっても、コードの美学やシステム設計の哲学を学ぶための必読のバイブルとして愛され続けています。
そして#27に、全てのLLMコーディングエージェントの根拠があるな。「プログラムの仕組みを理解したら、後は誰か別の人間に書かせればいい」
今となってはすごく古風に感じるね。あの頃に戻れたらどんなにいいか。
ついでに宣伝させて。Alan Perlisの引用がすごく気に入ったから、1年くらい前に https://perl.is/ を取得して、そこで公開してるよ。
- 関数はバインディングを遅らせるが、データ構造はバインディングを誘発する。教訓:データ構造化はプログラミングプロセスの後半に行うべき。
これを強制する良い方法は、プロセスの最初でデータを暗号化することだね。
そうすれば、構造化データを返す関数は明らかにナンセンスだってことがわかるし、削除対象としてマークできる。
プログラミング言語が低レイヤーであるとは、そのプログラムにおいて無関係なことへの注意が必要な状態を指す。
これ、素晴らしい定義だよね。
- 形式的な手段によって、非形式的なものから形式的なものへ進むことはできない。
これってClaudeみたいなLLMベースのプログラミングシステムに対する批判になりそうだ。
Kai LentitのPerlプログラマーの声を真似て音読すると最高に面白いよ。
最初は「Perlism(Perl主義)」かと思って、HNでPerlが見られるのかとワクワクしちゃったよ。
プログラミングに対する考え方に影響を与えない言語は、知る価値がない。
これは特に刺さった。お気に入りだな。
LLMの時代において、他にも興味深いものがあるよ:
- 「何をしてほしいか言うだけで済むプログラミング言語が欲しい」と言う人がいたら、ペロペロキャンディでもあげておけ。
- コンピュータの内部では、自然言語は不自然なものだ。
- プログラミングの概念は誰もが理解できるが、実際に実行するのは不可能だ。
- プログラムの書き方を理解したら、後は誰か別の人間に書かせればいい。
- 神経科学と心理学をつなぐ唯一の建設的な理論は、ソフトウェアの研究から生まれるだろう。
自動化やコンピュータ化の結果とコストについては、LLMを使っているかどうかにかかわらず、これも考えておく価値があるね:
- 人と機械の共生においては、順応すべきなのは人間の方だ。機械にはそれができない。
個人的にはこれが一番好きだな:
- 単純さは複雑さに先行するのではなく、複雑さの後に続くものだ。
「最初の1つは捨てるつもりで作れ」に近い考え方だね。