ソース公開について
今までの経緯
2001年2月に、Uva for Win32の処理系をソース付きで世に公開しました。
当初のソース公開の意図は4点ありました。


1.プログラミング言語という基盤プログラムは、ソース公開であることが信頼性の保証に繋がるため
2.フィードバックへの期待
3.ソース公開文化への還元
4.向学心の強い後輩達への研究材料となるように

ソースが公開されたプログラムが多数あるおかげで、私はプログラムを学び研究する
ことができました。ソースを公開した先人の心意気や開放的なコミュニケーションに
敬意を表し、私がプログラム作品を発表するときには出来る限りソースを公開しよう、そう考えました。

古くからUnixの世界ではソース公開(というよりソース配布)が当たり前でした。
互換OSがいくつもあり、バイナリ配布が困難だったという背景があったそうです。
ソース配布によるコミュニケーションは、単なるプログラム配布だけではなく、
プログラムの構造そのものを表すソースを読むことで学ぶことができます。
しかし、一方的な与える/受け取る関係では長く続くはずもありません。
受け取ったソースを改良し配布元へ還元したり、ソースから学んだ人々は
自分が作成したプログラムのソースを公開することで、循環的な関係を築きあげていったのです。
このことにより、膨大なUnixプログラムが広まることになったのです。

私はこのような循環的な関係を素晴らしく思います。しかし、残念なことに
私が一番長い時間を過ごしたWindowsの世界ではソース公開の文化は一般的ではありません。
バイナリ配布で問題がないこと、コンパイラが高価であること、プログラミングの
難易度が増したおかげで、作成者/使用者と立場が明確になり始めたことなどが
原因と言われています。仕事でしょうがなく使ってるだけという人も多く、
その結果ソース公開文化における循環的関係がありません。
こう言い切ってしまいたくなる出来事が、過去にありました。

私は、以前にEasyCardという付箋プログラムを作っていました。
ソース付きで公開していたのですが、ある日「ソース公開とは素晴らしい。
私のプログラムに付箋機能を付けたいのだが使ってもいいか?」
というメールが来ました。「うん、いいよ。当然、それはフリーソフトだよね?」
と聞いたところ、「シェアウェアです」と返ってきました。
これには空いた口も塞がりませんでした。自分のプログラムの機能アップのため、
公開された私のソースをタダで取り込みお金を取ろうというのです。
シェアウェアにするなら、最初からそう伝えるのが筋でしょう。
そういう常識や礼儀のかけらもないメールをもらって、
怒りとともに悲しくもなりました。

Uvaの公開後にも似たようなことがありました。
とある方から「UvaのVMを自分の作る言語に使いたい」という申し出があり、
その時はUvaにもメリットになると思い承諾したのですが、
その後いろいろあったのでVM提供を拒否したところ、
ひどい罵声メールが飛んで来ました。これにはあきれたと同時に、
ひどく悲しくなりました。そんな罵声メールをもらうためにソース公開をしてきたわけではなかったのに。

これからの方針
開発初期はUva単体では使い物にならなかったためソースも添付していましたが、
最近は私自身がソースを参照せずともUvaプログラムを書けるようになったので、
これを期にソース公開を基本的に中止とします。
しかし、以下の目的に当てはまる方に限り、ソースを配布します。

Uvaプログラムの効率的なデバッグ目的として
コンパイラ処理系の勉強・研究目的として
ソースを希望される方は、ユーザー登録をした上で、私宛てにメールをください。