墜落日記 - 2009年5月10日の墜落
Borland 買収と Delphi コンパイラの将来
突然のことだったが、先日 Borland が Micro Focus に買収された。
Micro Focus 社はレガシーマイグレーションに重点を置き、Windows や UNIX/Linux 上での COBOL 環境を販売する企業だ。
とは言っても、元々の Borland 由来の技術である Turbo Pascal から発展・派生した Delphi や、C++Builder、JBuilder など、昔からの Borland を知る技術者にとって Borland の遺伝子と呼べるべき技術は CodeGear として分社化され、既に EMBARCADERO TECHNOLOGIES へ買収されている。
言ってみれば今回 Micro Focus が買収した部分は Borland が多角化を目指して各社から買収した部分である。
なので、一抹の寂しさはあるにせよ、本来の Borland の遺伝子にはもはやなんの影響もない。
と言うか、Micro Focus が今の Borland のどの部分を必要としていたのか、ちょっと微妙な気もしないでもないが、ソフトウェアテストツール市場の拡充を目論んでのことだろうか?
CodeGear と言えば、先日「Delphi コンパイラの将来」と題した記事が投稿された。
Delphi しか知らない人からしてみれば Turbo Pascal コンパイラ時代から引き継がれていた文法などが実は残っていることなど知るよしもないだろうが、Delphi が今まで大命題として掲げてきた過去の開発資産との互換性―――後方互換性と、先進的でエキサイティングな機能の実装との二律背反が感じられて面白い。
後方互換性という面はビジネス現場での開発にとって非常に重要な問題となる。
一発一発が単発なツールの類や、小規模なパッケージではあまり問題は起こらないだろうが、大規模かつミッションクリティカルなビジネスアプリケーションの開発に於いて、開発言語が最新の技術に対応しつつ後方互換性を確実に維持してくれることは非常に大きな武器となる。
例えば、Microsoft の VisualBasic は 6.0 と .Net の間に埋めがたい大きな溝が発生して、マイグレーションに多大な工数を必要とした―――それはぶっちゃけ作り直しのレベルである。
6.0 までの VisualBasic の言語仕様がキチガイという事実もあるにせよ、これを .Net 仕様に合わせて大変革してしまうのは、純粋に技術的な観点からは良いとしても、大規模かつミッションクリティカルなビジネスアプリケーションを維持するベンダとしては狂気の沙汰にしか思えなかった。
大規模かつミッションクリティカルなビジネスアプリケーションを VisualBasic で作ったというそもそもの選択ミスはここでは語らないことにするが。
Delphi では元々の言語仕様が割としっかりしていたせいもあって、その様な狂気じみた地殻変動は起こっていない。
しかし反対にドラスティックな言語機能の拡張というのも今まで起こっていなかったとも言える。
最近流行の無名メソッドやジェネリック型の対応などがなかなか実装されなかった部分などもこれを如実に表している。
もっとも如実な例は、マルチバイト文字の内部実装がずっと旧態依然とした Shift JIS であり、最新の 2009 になるまで Unicode 対応しなかったことである。
これを槍玉に挙げて Delphi コンパイラを糞だ何だと大騒ぎする短絡的な連中もいるが、これはひとえに高度な後方互換性を維持してきたが故の苦肉の選択であり、「Delphi コンパイラの将来」で語られる二律背反な部分である。
この「Delphi コンパイラの将来」を読むと、後方互換性の維持と先進的でエキサイティングな機能との両立に、如何に神経を割いてきたのかが伺える。
2010 年には発表されるという 64bit 対応コンパイラにおいてどのような解答を示してくるのか、非常に楽しみである。
コメントは投稿されていません。