Ruby30周年イベント(中編)~言語を「作りたい」と思ってから10年以上経って、スキルと環境が追いついてRubyを作ることができるようになった

今回は「Ruby30周年イベント(中編)~言語を「作りたい」と思ってから10年以上経って、スキルと環境が追いついてRubyを作ることができるようになった」についてご紹介します。

関連ワード (全然、同時、過去等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


まつもとゆきひろ氏によって開発が始まったRuby言語の30周年を祝うイベント「プログラミング言語Ruby30周年記念イベント」が2月25日にオンラインで開催されました。

イベントでは関係者やRuby愛好家らによる過去30年の振り返りやRubyにまつわるライトニングトークなどが行われ、最後にまつもとゆきひろ氏による基調講演「D is for Dream, V for Vaporware」が行われました。

基調講演では、Rubyを開発する前にまつもと氏が手がけた、Rubyの原点となるソフトウェア「CXライブラリ」や、今回初めて名前が明かされた「Tish」という作りかけのプログラミング言語や、これまであまり語られることのなかった、さらにその前の学生時代に妄想していたプログラミング言語「Alpha」や、そもそもプログラミング言語の開発のきっかけとなった小説についても紹介されました。

そしてこれから作りたいものとして、まつもと氏は「Static Compiler for Ruby」を挙げ、そのための道具立てが揃ってきたこと、そしてRubyのような暗黙的型言語の可能性と、そしてまだ作られていないRubyのサブセット言語を「スピネル」と命名するなど、これからのRubyの夢を語りました。

この記事ではその基調講演の内容を紹介します。記事は前編、中編、後編(明日公開予定)の3つに分かれています。いまお読みの記事は中編です。

高校時代に妄想したプログラミング言語「Alpha」

さらにさかのぼりますね。

1982年頃、私は米子という町で高校生だったのですけれども、そのときに作った言語の名前が「Alpha」ですね。

これも本邦初公開の名前です。

fig

これは「ぼくのかんがえたさいきょうのげんご」っていう感じなんですけれども、当時、私の使っていたコンピュータはPC-8801無印というやつで、同時にシャープのPC-1210というポケットコンピューターも使っていて、どちらも電源を入れるとBASICが動くんですね。言語を作るとか、そういう感じではないんです。

fig

当時、とんがったプログラマーたちはですねアセンブラを駆使してPC88やPC80の上で言語を作るみたいな人もいましたけれども、私はそんなとんがったプログラマーではないので。

当時のプログラミング環境や当時の私のスキルでは、プログラミング言語を作りたいと思っても作ることが全然できなかったんですね。

本屋に行って今のプロム言語を作る方法はないかって調べてみても、コンパイラっていう本があって、開けてみても訳が分からないんですね。

長野先生という、後に私の大学の先生になった人が書いた本を読んだんですけれども、大学の教科書ですから分からないんですよね。

もう一つ、やさしいコンパイラの作り方という本もあって、ちょっと薄いしこれなら分かるかなと思ったら、「やさしい」はコンパイラの方にかかってるんですよね。

つまり仕様が小さいコンパイラであって、作り方は決してやさしくないという。挫折するしかなかったんですけれども。

仕方がないので、いつかちゃんとしたコンピュータを手に入れて、ちゃんとしたスキルが身に付いて、ちゃんとプログラミングできるようになったら、こんなプログラミング言語を作りたいという妄想をするわけです。

私も小学校時代から妄想タイプだったので、いつか自分の言語ができたらな、へへへ、とか言いながらノートを書いて、自分の妄想したプログラミング言語でプログラムを書いて。

忘れてしまいましたけれども、このAlphaというプログラミング言語の仕様はもう何も覚えてないんです。作ったということしか覚えてなくて、ノートの紛失によって失われてしまいました。

「バベル17」で人工の言語にはまる

さらにさかのぼって1980年頃になりますけれども「バベル17」(バベルセブンティーン)という小説がありまして、これはサミュエル・R・ディレーニイという人が書いた本なんですけども。

fig

ネタバレになるのであんまり喋れませんが、バベル17というのは一種の暗号なんですね。暗号は実は人工的な言語であったというようなことで、サピア・ウォーフ仮説(注:思考は使っている言語によって影響を受けるという仮説)を反映したような小説ですね。ぜひ読んでいただきたいと思います。

このとき以来、人工の言語というのにはまったんですね。当時まだ中学生か高校生ぐらいですけれども、例えばエスペラントであるとか、それからそのすぐ後にプログラミング言語にはまったんですね。

fig

そういうことで、言語を作ることそのものが私にとってある種の夢だったんですね。自分で決めたかったんですよ。私にとってプログラミング言語とは作りたいもの、でした。

fig

その頃、私の周りにプログラミングをする人はいないわけです。情報といえば、例えば「月刊アスキー」や「I/O」「マイコン」「RAM」とか、マイコン雑誌ぐらいしか情報がなくて。

その雑誌に、新しいプログラミング言語が、みたいな記事が載るわけです。そうすると、プログラミングに興味がある人のうちのそうだな10人に1人、あるいは3人に1人ぐらいはプログラミング言語を作りたいと思う人がいるのかなと私は思ってたのですが、大学に行ってプログラミングに詳しい人が周りに増えると、プログラミング言語を作りたいと思う人は本当に少数派だと気がついたんです。

Rubyは私の夢の実現である

そうやって「作りたい」と思ってから大体10年以上たってから、1993年ぐらにいは作りたいと思っていたので、そこから10年以上経って、スキルと環境が追いついてRubyを実際に作ることができるようになる。

そうするとRubyは、今から数えて40年以上前からの私の持っていた夢が実現したものであるということですね。

fig

だから「One Man’s Dream」はディズニーのあれですけど、私が、1人の男が作りたいと思ったものが現実化して、いろんな段階を踏んで世界に広まって、そして世界を変えたということですね。

fig

昨日あたりから「#ruby30th」というハッシュタグを見ると、本当にたくさんの人たちがRubyを使って生活が変わったとかね、Rubyのおかげでその就職ができて、結婚できて、なんかすごい怪しい通販の広告みたいな感じがしましたけれども、それも含めて本当にたくさんの人たちに人生に影響を与えたと思います。

犬の名前をRubyにした人もいましたし。自分の子供の名前をRubyにした人もいましたね。

(この講演の)タイトルの「D is for Dream」というのは、Rubyは私の夢の実現であるということをご紹介しようと思って、話をしてきました。

fig

ここからは、未来の話をしたいと思います。

≫続きます(明日 3月3日公開予定)~ Ruby30周年イベント(後編):まつもと氏「Static Compiler for Ruby」を作りたい。道具立ては揃ってきた

COMMENTS


Recommended

TITLE
CATEGORY
DATE
グーグルも注力、クラウドシフトを起点にITの「内製化」は進むか
IT関連
2022-11-08 22:35
フォルクスワーゲンがファーウェイの自動運転部門を買収する方向で交渉中との報道
IT関連
2022-02-20 06:52
「まど☆マギ」新作映画「ワルプルギスの廻天」制作決定 スタッフ変わらずファン安堵
くらテク
2021-04-27 02:29
SAPジャパン、中堅企業向けのパッケージプログラム–「SAP S/4HANA Cloud」導入を支援
IT関連
2022-07-08 08:27
日本MS、「GIGAスクール」第2期に向けた3つの施策–生徒の主体性育む
IT関連
2024-06-11 06:57
人工の皮膚をロボットに–その可能性とさまざまな取り組み
IT関連
2021-06-22 13:50
「父が“反韓系YouTuber”にハマった」 息子の苦悩と打開策 (1/2 ページ)
くわしく
2021-04-28 09:14
朝日新聞が27年ぶり値上げ デジタル版のプラン改定に続き
くらテク
2021-06-11 17:20
Denoとして初の長期サポート版「Deno 2.1」正式リリース。WebAssemblyの実行が容易に、「npm init」など新機能
JavaScript
2024-12-02 14:57
サーバー仮想化とクラウド化による脱炭素効果を調査–AWS
IT関連
2021-08-20 15:17
GoogleからAppleへAI人材移籍再び AI部門の研究マネジャーだったサミー・ベンジオ氏がAppleに転職
ロボット・AI
2021-05-07 18:00
Facebook、テキストエディタ用のUIコンポーネント「lexical」をオープンソースで公開。Reactなどフレームワークの依存性なく軽量で高速、機能拡張も容易に
Facebook
2022-04-15 07:59
「LegalForce」、案件管理機能をアップデート–契約書の版管理を効率化
IT関連
2022-02-23 05:02
GVA TECH、AI契約審査「GVA assist」に文書比較機能を追加
IT関連
2022-07-05 04:04