[Programmer Legends #06] Larry Wall ― Perlの創造者と三大美徳

はじめに

1987年、awk や sed、C では満たせない現場のニーズに応えるため、ひとりのプログラマが新しい言語を生み出した。
それが Perl、そしてその作者こそ Larry Wall(ラリー・ウォール) である。

Wall は単なる言語設計者ではない。彼の活動はしばしば「プログラマというより思想家・文化人類学者的存在」と評される。大学で言語学を学び、NASAやJPLで働き、宣教師的な活動経験を持つという異色の経歴が、そのまま Perl の「人間くささ」や「言語の多様性」へと投影された。

UNIX 系 OS に Perl が標準搭載され、ネット黎明期の CGI スクリプトやログ処理、テキスト変換を支えたことは周知の事実だが、同時に Larry Wall 自身も「パッチの作者」「メーリングリストでの思想的発言者」として、ソフトウェア文化に独自の足跡を残した。


補足:パッチ作者としての顔

Larry Wall は Perl 以前から、patch(1) コマンドの作者として有名です。

  • patch は diff で作られた差分ファイルを既存ソースコードに適用するツールで、オープンソース開発の根幹に欠かせない存在。

  • 今でも UNIX/Linux 系統では標準ユーティリティとして生き続けており、Perlと並んで Larry Wall の「もうひとつの代表作」といえる。


1. 生い立ちとキャリア

Larry Arnold Wall(1954–) はロサンゼルス生まれ、ワシントン州ブレマートン育ちのプログラマ/言語学徒

1987年の Perl と 1985年の patch(1) の作者として知られ、のちに Free Software Foundation の第1回“自由ソフトウェア発展賞(1998)” も受賞している。(ウィキペディア)

学問的バックグラウンド(言語学 × 自然言語の視点)

  • Seattle Pacific University(SPU) で化学・音楽・プレメディカルを経て、在学中に計算機センターで働きつつ進路を転じ、“Natural and Artificial Languages(自然言語と人工言語)”の学士号を取得。“言語をつくる/扱う”という関心が初期から強かった。 (ウィキペディア)

  • 大学院では UC Berkeley(のち UCLA も関与)で言語学を学ぶ。妻のグロリアとともに未記述言語に文字体系を与え、聖書を含むテキストを翻訳するという、言語学と宣教を横断する計画を立てていた(のちに体調などの理由で断念)。(ウィキペディア)

Wall は著述や講演で、プログラミング言語を“自然言語に近いもの”として捉える姿勢を繰り返し語っている。Perl の設計判断にも言語学的比喩(名詞・動詞・トピカライザ等)を用いるのが彼の流儀だ。(ウィキペディア)

宣教師的活動との接点(宗教と言語)

  • SPU 卒業後、夫妻で Wycliffe Bible Translators(シル/SIL International 系) の訓練を受け、“言語を通じて文化へ橋を架ける” ことを志向。宗教と言語/コードの横断という Larry Wall の世界観は、この文脈に強く根ざす。(spu.edu)

  • 本人はキリスト教的信仰とプログラミングを対立させず、「科学的視点と信仰の両立」 を語る発言を複数のインタビューで残している。(interviews.slashdot.org)

初期キャリア:NASA/JPL と「実用主義」の源泉

  • 大学院後は NASA の JPL(Jet Propulsion Laboratory) に参加。その後 System Development Corporation(SDC → Burroughs → Unisys) へ移り、現場の“報告書処理・ログ加工・運用自動化”という泥臭いニーズに応える形で Perl(1987) を設計する。(ウィキペディア)

  • Perl 以前にも、ニュースリーダ rn、そして 1985年に差分適用ツール patch を公開(mod.sources に初投稿)。OSS の開発様式=パッチ送受の基盤を整えた功績は、Perlと並ぶもう一つの代表作だ。(ウィキペディア)

「awk/sed/C では足りない現場の穴を埋める」——この発想こそが Perl の出発点。Wall の言語学的な“人間言語”視点と、**運用現場の“実用主義”**が一人の中で合流して生まれたのが Perl だった。(linuxjournal.com)

文化的影響:三大美徳と TMTOWTDI

  • Wall は “プログラマの三大美徳”Laziness / Impatience / Hubris)を掲げ、「怠惰ゆえの自動化・せっかちゆえの性能追求・自負ゆえの品質確保」 という逆説的倫理を提示した。また TMTOWTDI(There’s more than one way to do it) は Perl 文化の合言葉となり、“唯一解よりも表現の自由” を是とする設計哲学を育んだ。(Big Think)

このパートは「思想(言語学/信仰)→実務(JPL/SDC)→道具(patch/Perl)」の順で流し、“技術と言葉/宗教とコード”を結びつける視点を自然に立ち上げています。

次は 「2. Perl 誕生:Why Perl、そして TMTOWTDI」 に進めます。

2. Perl誕生(1987年)

awk/sed/C では届かなかった現場ニーズ

1980年代半ば、Larry Wall は System Development Corporation(SDC → 後のUnisys) のエンジニアとして、UNIX環境でのレポート生成やログ処理、システム管理スクリプトに追われていた。 既存のツールセットは強力だったが、それぞれに制約があった:

  • awk:テキスト処理は得意だが、制御構造や外部処理の柔軟さに欠ける。
  • sed:ストリーム編集は可能だが、大規模な処理やロジックの表現は困難。
  • C言語:柔軟で高速だが、ちょっとしたログ変換やワンショットのレポート生成には「重すぎる」。

この「awk では小さすぎ、C では大きすぎる」という“間の隙間”を埋める道具として、Practical Extraction and Report Language = Perl が設計された。

Wall 自身が後年語ったように、「Perl は科学的に設計されたのではなく、そのとき必要だったから作られた」。まさに現場主義の産物だった。


TMTOWTDI ― 表現の自由を是とする哲学

1987年12月18日、Perl 1.0comp.sources.misc に初公開された。

Perl は単なる「便利ツール」以上の文化を持ち込み、すぐに世界中のUNIX管理者・開発者に広まった。
その背景には、Larry Wall が掲げた象徴的なスローガンがある。

「There’s more than one way to do it(TMTOWTDI)」 =「やり方は一つじゃない」。

これは、CやPascalのような**「最適解・唯一解」を求める設計哲学とは真逆**であり、

  • “可読性”よりも“書き手の自由”
  • “一貫性”よりも“多様性” を尊重する姿勢だった。

この価値観は Perl コミュニティの根幹に刻まれ、CPAN モジュール群ハッカー文化の広がりにも大きな影響を与えた。


ネット黎明期とPerlの爆発的普及

1990年代前半、インターネットとWebの急成長が訪れると、Perl は “ウェブのダクトテープ” と呼ばれるほど重要な役割を担った。

  • システム管理/ネットワーク運用
    メール配送(sendmail連携)、ログ解析、ユーザ管理スクリプトに広く利用。
  • CGIスクリプト
    NCSA HTTPd(後のApache)が CGI を実装すると、Webフォームや掲示板、カウンタなどの動的Webのほぼすべてが Perl で動く時代が到来。
  • CPAN(Comprehensive Perl Archive Network, 1995年設立)
    世界中のハッカーがライブラリを共有し合う場として、Perl の進化を爆発的に加速。

この頃の Perl は、「UNIXの裏方」から「インターネットの表舞台」へ躍り出た言語だった。
実際、1990年代後半の Web は Perl CGI で彩られ、「.pl」拡張子のスクリプトが至る所に存在していた。

3. 文化と哲学

三大美徳:Laziness / Impatience / Hubris

Larry Wall は『Programming Perl』の文脈で、プログラマの三大美徳をこう位置づけた。

  • Laziness(怠惰)
    総労力を減らすために先回りして自動化する美徳(結果として他人にも役立つツールとドキュメントが生まれる)。
  • Impatience(せっかち)
    待たされることを嫌い、レスポンスUXにこだわる気質。
  • Hubris(自負)
    恥ずかしくないコードを書くために品質や保守性に責任を持つ姿勢。

これらは“徳目のパロディ”ではなく、現場を前に進めるための動機づけとして定義された(Wall は後年、対になる「勤勉・忍耐・謙虚」も語って対話的に位置づけている)。 (C2.com)

「言語は文化の延長」— Perl Culture の自己認識

1997年のキーノート “The Culture of Perl” で、Wall はPerl文化を「制御と混沌のバランス」で説明した。

  • 文化を伝えるのはミームとメタファーであり、Perl文化を理解するにはまず“Larry Wallという発生源のメタファー”を理解せよ、と。
  • 「言語は芸術の媒体」 であり、“生きた言語”は共同作業(cooperative effort) として育つべきだ、と述べる。
  • その帰結として掲げられるのが TMTOWTDI(There’s more than one way to do it)。唯一解ではなく、多様性を許容する設計と運用 が、環境変化(UNIX→Windows 等)でも生態系を生き延びさせる、と説く。 (Perl.com)

Languages are an artistic medium … I want Perl to be a living language.(要旨)— 1997年キーノートより。 (Perl.com)

Perl Mongers という「場」の発明

Perl の文化は道具(言語) だけでなく、場(コミュニティ) で加速した。

  • Perl Mongers は 1998年に brian d foy らが立ち上げた国際ユーザー会連合。最初のグループ NY.pm は**第1回 O’Reilly Perl Conference(1997年8月)**の流れから誕生し、その後 2000年に The Perl Foundation の一部となる。 (ウィキペディア)

  • 公式サイトの説明どおり、各地のPMは**定期的に集まり、技術&ソーシャルを混ぜる“緩い連合”**として動いてきた。実務のTips共有から勉強会運営まで、草の根の運営力が文化を下支えした。 (pm.org)

  • YAPC(Yet Another Perl Conference) はその延長線上にある草の根シンポジウムで、財団が後援しつつ世界各地で開催され、PMと相互作用しながら人と知識の流通を作った。 (yapc.org)

  • 財団の回顧でも、NY.pm 結成(1997)→ Perl Mongers 法人化(1998)→ 急速な国際展開という立ち上がりが記録されている。コミュニティという“場”の整備が、Perlの“多様性を受け止める文化”を具体物にした。 (news.perlfoundation.org)


4. その後の活動

Perl 6 構想(2000年)

1990年代後半、Perl は「ウェブのダクトテープ」として圧倒的な地位を築いたが、同時にコード規模の拡大・可読性の問題・モジュール設計の限界などが課題化していた。
2000年7月、Larry Wall は Perl 6 計画を発表。“rewrite of Perl, not just upgrade” を掲げ、次世代言語としてゼロから再設計を試みた。

  • 目的:Perl 5 の「継ぎ足し文化」から抜け出し、より一貫性と表現力を持つ言語へ
  • 設計思想:「Perl 5 は良いシステム言語だが、Perl 6 はより人間中心の言語を目指す」。
  • 結果:仕様議論が膨大になり、開発は数十年規模の長期化 。多くの試行錯誤の果てに 2019年、言語名を “Raku” と改名 し独立することが正式決定された。

物議と“Perl 5 vs Perl 6” 問題

Perl 6 の長期化と複雑化は、逆にコミュニティ内に分裂や混乱 を生んだ。

  • Perl 5 の改良継続 vs Perl 6 への移行 という二重構造が長年続き、外部からは「Perlは停滞した」と見られる要因になった。
  • Wall 自身は「Perl 5 は成熟した大人、Perl 6 は実験的な若者」と説明したが、商用開発現場では Perl 5 継続採用が主流となり、Perl 6 の普及は限定的に留まった。

Larry Wall の立ち位置の変化

Perl 6 構想以降、Larry Wall は 「言語設計の実務者」から「文化的・思想的アイコン」 へと比重を移していった。

  • 言語仕様やリリースマネジメントはコア開発チームや財団が担い、Wall 自身は方向性や哲学を語る“スポークスマン” の役割に専念。
  • 2000年代後半以降、彼は頻繁にキーノートやインタビューで「Perl文化とOSSの未来 」「宗教と技術の対話 」といったテーマを話すようになる。
  • 2019年の Raku 改名の際も、Wall は「Perlという名前に縛られず、それぞれの文化が共生する方が健全」として容認の立場を示した。

思想的な影響の持続

たとえ Perl 6 が主流にならなくとも、Larry Wall の言語観は他言語・開発文化に残り続けた。

  • Ruby の Matz(まつもとゆきひろ)は「Perl文化に大きな影響を受けた」と公言している。TMTOWTDI への共感が Ruby 設計に反映された。
  • OSS文化全般に広がった「草の根ユーザー会」「多様性容認」「逆説的美徳」の思想も、Perl Mongers からの波及。
  • 現在でも “Perl の功績” はコードそのものだけでなく、「OSSコミュニティを文化として設計する 」試みの先駆けとして語られている。

5. レガシーと現在

Perl という遺産

今日の Perl は、かつての「Web のダクトテープ」から後退したとはいえ、堅牢なテキスト処理エンジン として生き残っている。

  • Perl 5 系列は継続開発中 で、2024年に v5.40、2025年には v5.42 がリリースされた。try/catch 構文、class / role の実験、Unicode 16 サポートなど、現代的な改善が続いている。
  • CPAN (Comprehensive Perl Archive Network) は 1995年以来の膨大なモジュール群を保持し続け、毎日更新が続く。これは OSS 史上もっとも長命かつ持続的な「共有ライブラリ文化」の一つ。
  • 運用・科学計算・移行ツール など、いまも「Perl だから強い」分野は残っている(正規表現、バイオインフォマティクス、テキスト変換系のスクリプトなど)。

Larry Wall の存在感

一方、Larry Wall 自身は “現場のリーダー”から“象徴的人物” へと変化した。

  • Perl 6/Raku の物議を経て、彼は積極的にコードをリードするよりも、「哲学や文化を語る人」 として位置づけられるようになった。
  • カンファレンスやインタビューでは、プログラミング言語を「人間文化の延長 」として語り、宗教と言語学とコード を交差させる比喩を投げ続けている。
  • 彼の「三大美徳」や TMTOWTDI は、いまもコミュニティの合言葉であり続け、Perl を超えて Ruby、Python、OSS 文化全般 に影響を与えた。

OSS 文化に残した痕跡

Wall の功績は Perl というツールだけでなく、OSS コミュニティのデザイン にあった。

  • patch(1) によって「パッチを送り合う文化」が加速。
  • Perl Mongers / YAPC によって「ユーザー会と草の根カンファレンス」のスタイルが普及。
  • 逆説的美徳(Laziness, Impatience, Hubris) は、ハッカー文化に「ユーモアと哲学のある自己規律」を与えた。

総括

Perl は 2025年の TIOBE Index で突如「10位」に浮上したように、表面的な人気の浮き沈みを繰り返してきた。
だが Larry Wall の仕事の本質は、ランキングや採用率の外側にある。

「Perlは“帰ってきた”のではなく、最初からそこにあり続けた」

そして Larry Wall の思想は、言語の枠を超えて「プログラマという生き方」を形づくる文化遺産となった。

まとめ

Larry Wall は単に Perl の生みの親という枠に収まらない。
彼のキャリアは、言語学・文化人類学・信仰・実用主義が交差した異色のものだった。
その結果として生まれた Perl は、1987年から今日に至るまで **「テキスト処理と実用の現場力」**を提供し続けている。

Wall が提示した TMTOWTDI(やり方は一つじゃない)、そして プログラマの三大美徳(Laziness, Impatience, Hubris)は、 Perl の内外に広がり、Ruby や Python、OSS コミュニティ文化全般へ波及した。

2000年代以降、Perl 6(Raku)構想の長期化や人気低迷があっても、

  • patch コマンドによる開発様式の基盤
  • CPANによるモジュール共有文化
  • Perl Mongers / YAPCによる草の根コミュニティ運営

これらは今も OSS 世界の標準となっている。

Larry Wall は「プログラマ」以上に「文化を設計した人」だった。
Perl の歴史は、その思想が形をとった実例であり、Wall の哲学は今も生きている。

だからこそ 2025年の今、Perl がランキングに姿を現そうが消えようが重要ではない。
Wall の残したものは コードの行数ではなく、プログラマの生き方を豊かにする文化的遺産なのだ。


引用で締める

“The three chief virtues of a programmer are: Laziness, Impatience, and Hubris.”
— Larry Wall, Programming Perl

“Languages are an artistic medium … I want Perl to be a living language.”
— Larry Wall, The Culture of Perl (1997 Keynote)

参考リンク