Boo はオブジェクト指向で静的型付けのプログラミング言語であり、共通言語基盤を通してUnicodeや国際化と地域化をサポートしている。ウェブアプリケーションも開発可能であり、Pythonに影響を受けた文法構造を持つ。[1]そして言語やコンパイラの拡張性に重点が置かれている。特筆すべき機能を幾つか挙げてみると、型推論, ジェネレータ, 多重ディスパッチ、および付加的なダックタイピング、マクロ、真のクロージャ、カリー化、第一級関数などがある。Boo言語は2003年から活発に開発が行われている。
Boo言語の処理系はフリーソフトウェアであり、MITライセンス/BSDライセンスで配布されている。そしてマイクロソフト .NETおよびMonoの両方で動作する。
またオープンソースによる統合開発環境であるSharpDevelopやMonoDevelopでは、Boo言語による開発を標準でサポートしている。[2]
Boo言語による Hello, World! プログラムは次のようになる。
print "Hello, World!"
def fib(): a, b = 0L, 1L #「L」が付いた数は64ビットになる。 while true: yield b a, b = b, a + b # 数列の最初の5つの数を出力する。 for index as int, element in zip(range(5), fib()): print("${index+1}: ${element}")