Boo is a new object oriented programming language for the CommonLanguageInfrastructure underlying DotNet and the MonoProject.
It has a syntax near identical to PythonLanguage (including features planned for Python 3.0), but Boo is a statically typed language. It does most of its work at compile-time instead of at run-time, although there are run-time features such as DuckTyping. As such, feature-wise Boo actually has more in common with CsharpLanguage, such as static typing (by default), (optional) explicit typing: "private x as int", interfaces, events, abstract classes, delegates, enums, properties, operator overloading, etc.
Additional features include:
- AnonymousMethods/LexicalClosures (see http://boo.codehaus.org/Closures )
- explicit type declarations ("x as int") are optional (uses TypeInference)
- compile directly to a cross-platform exe or dll assembly
- support for custom macros and attributes (similar to decorators in python)
- advanced features for extending the compiler and the language itself.
- DuckTyping, and more runtime typing features planned
- CaseInsensitive option
- A Boo add-in for the free SharpDevelop IDE
CategoryProgrammingLanguage, CategoryDotNet