Boo 0.7 review

by on

Boo is a new object oriented statically typed programming language for the Common Language Infrastructure with a python inspired synt

License: GPL (GNU General Public License)
File size: 506K
Developer: Boo Team
0 stars award from

Boo is a new object oriented statically typed programming language for the Common Language Infrastructure with a python inspired syntax and a special focus on language and compiler extensibility.

Here are some key features of "Boo":
Type Inference
Functions As Objects
Duck Typing
Interactive Interpreter
Builtin Literals
String Interpolation
Syntactic Macros

What's New in This Release:
BOO-251 - Local variables not falling out of scope properly.
BOO-252 - Code Completion in abstract classes does not function.
BOO-254 - Boo's builtin regular expresses + code completion = error.
BOO-260 - incorrect check of void return type
BOO-268 - "Setup Error"
BOO-278 - "not" operator precedence
BOO-281 - Calling ToString not possible on integer values in multidimensional arrays
BOO-285 - #develop crashes on untyped [property()]
BOO-286 - SVN 1486 (GAC-Friendly way of loading assembly) breaks BooBinding.
BOO-291 - BooCodeGenerator generates illegal code for arrays
BOO-297 - Enum values can't be negative
BOO-301 - Infinite loop when breaking in a while loop after a nested for loop
BOO-321 - does not implement OnCharLiteralExpression
BOO-322 - Attack of the missing members in code completion!
BOO-326 - Overloaded ?== and != are not called
BOO-330 - Codecompletion does not include events.
BOO-333 - Events can be directly raised outside of defining assembly.
BOO-348 - boo.rsp relies on assemblies not included in mono-core
BOO-450 - Error msg when accessing non-static outer class member
BOO-460 - Accessing member of outer class
BOO-465 - Unhandled exception in Boo Explorer when opening new Interactive Console
BOO-470 - Void methods and string extrapolation cause Invalid Program exception
BOO-474 - member references to duck casts not converted to invoke runtimeservices
BOO-475 - try: block without except: or ensure: produces internal compiler error
BOO-476 - emit custom attributes for constructors
BOO-480 - BooPrinterVisitor does not output assembly attributes
BOO-481 - errors with attributes in C# to boo converter
BOO-492 - Can't compile class which implements IResourceReader
BOO-493 - Hex character escapes rejected in regex literals
BOO-501 - slice duck typed arrays and lists
BOO-173 - Multi-dimensional arrays.
BOO-201 - print AST visitor
BOO-246 - Implicit duck typing option
BOO-257 - booc task should check for updated targets
BOO-264 - by ref parameters
BOO-269 - raw array indexing
BOO-280 - Explicit interface implementation
BOO-298 - len overload for multidimensional arrays
BOO-312 - "cat" built-in.
BOO-463 - Support for Int16/UInt16 literals (e.g. Int16.MaxValue)
BOO-80 - implicit conversion from single char string literal to char
BOO-113 - reversed iteration
BOO-192 - duck typing - indexed property access
BOO-255 - Allow outside scopes to be used by boo interpreter
BOO-256 - explict conversions from char to integers and integers to char
BOO-277 - Indexed properties with more than1 index
BOO-292 - treat any subclass of IQuackFu as a duck when Ducky is set
BOO-295 - allow a and other special characters
BOO-299 - treat duck as callable
BOO-302 - EvalFile in interpreter
BOO-303 - Improve interactive interpreter welcome message.
BOO-310 - multi generator expression
BOO-331 - use implicit bool conversions when available
BOO-334 - for and unpack statements should work with IEnumerator
BOO-335 - for and unpack statements should work with any type that exposes a compatible GetEnumerator method
BOO-336 - Boo.Lang.Hash does not override Clone.
BOO-350 - allow assemblies to be generated only in disk
BOO-366 - Remove one level of indirection from generators and allow generator methods to use IEnumerator as the return type
BOO-373 - And the unary complement operator (~)
BOO-6 - MonoDevelop plugin
BOO-7 - c# style private interface implementations
BOO-130 - use relative file paths instead of absolute file paths in compiler output
BOO-249 - A new binary release.
BOO-296 - Add Set class to Boo.Lang
BOO-18 - boo primer

Boo 0.7 keywords