D言語

概要

C言語は、元々オペレーティングシステムの記述用に開発された言語であり、複雑高度なアプリケーションを書くための機能が充実しているとは言い難い。一方で幅広いプラットフォームでの動作実績には抜きん出たものがあり、結局、開発者の最大公約数としてC言語を用いることが一般化している。このような状況に対して、C言語をより適切な言語で置き換えようという試みがなされてきたが、どれも決定打に欠けているのが現状である。C言語の後継としてはC++が有名であるが、その複雑さも随一である。Javaは複雑さを適度に抑えて豊富な標準ライブラリを持つが、仮想機械を必要とするためパフォーマンスを求める場合には敬遠される。かといってC言語では低レベルすぎるといった、それぞれの言語の使いづらさに対して現実主義的な回答を模索した言語がD言語だといえる。2007年1月3日(現地時間1月2日)にようやくDMD(Digital Mars社製のD言語コンパイラ)のバージョン1.0がリリースされた。比較的新しい言語であるため、近年発達してきた概念や機能が多く取り込まれている。具体的には、例外処理テンプレートなどへの対応がなされているほか、正規表現やスレッドソケットなども標準ライブラリに含まれている。事前・事後条件のチェックや不変条件のチェック、debug 識別子の導入など、プログラムのデバッグ・保守に対して重点的にサポートしている点もこの言語の特徴である。またコンパイラの作成を非常に重視しており、言語仕様そのものがコンパイラ側の効率を意識して作られている。これはC言語が幅広く普及した背景に処理系のポーティングの容易さがあったことを踏まえており、関連する解析ツールなどの開発環境までを含めて「言語の実用性」ととらえた現実的な考え方を反映している。

戻る