Limboとは
Limbo(リンボ)は、1995年にベル研究所のロブ・パイク(Rob Pike)氏らによって開発されたプログラミング言語です。
Limboは、Inferno(インフェルノ)というOS上で動作するソフトウェアを開発する際に使用します。 Infernoは分散システムのためのOSであり、Limboも並行プログラミングによる分散システムの開発に適した言語として設計されています。
尚、Limboを設計したロブ・パイク氏は、2009年に発表されたGo言語の開発メンバーでもあります。Go言語に影響を与えた言語としては、C言語やPythonなどが挙げられますが、LimboもまたGo言語に影響を与えた言語のひとつです。
Limboの特徴
Limboには、以下の特徴があります。
- 並行プログラミングに適している
- コンパイルおよび実行時の型チェック
- ガベージコレクションによりメモリが自動解放される
- 構文はC言語に似ている
Limboは、並行プログラミングに適した言語設計になっています。複数のプロセス(スレッド)を簡単に作成でき、それらの間で通信する機能があります。
Limboは、コンパイルおよび実行時に型チェックが行われます。型チェックが強力でエラーがあっても事前に発見されやすく、プログラムの安全性が高められます。
Limboでは、ガベージコレクションによりメモリが自動解放されます。使用されなくなったメモリを明示的に解放する必要が無いため、プログラミングが楽になり、メモリ管理にまつわるエラーが起こりにくくなります。
LimboはC言語の影響を受けており、構文はC言語に似ています。他に、宣言の仕方はPascal、抽象的なデータ型はAlefの影響を受けています。
Limboはこんな場面で使われている
Limboは、Inferno(インフェルノ)というOSに上で動作するソフトウェアを開発する際に使用します。Infernoで利用できる言語はほぼLimboだけなので、 Inferno向けのソフトウェアを開発するなら、Limboを使用することになります。
Infernoは、もともとベル研究所が開発したOSです。現在はイギリスのVita Nuova Holdings社が権利を持っており、商用ライセンス販売を行っていますが、フリーソフトウェアとして無料でダウンロードすることもできます。
Limboを学ぶメリット
これからプログラミング学習を始める人が、Limboから入ることは少ないでしょう。もし、プログラマとして就職に有利になる言語を身に着けたいなら、他のプログラミング言語を学んだ方が良いかもしれません。