It's been a long year since the last release but the wait is finally over: Boo 0.9.4 is here!
It's a release packed full of features, improvements and bug fixes:
- ~4x shorter compilation times
- support for partial interfaces (http://goo.gl/k5f16) and enums (http://goo.gl/LgiLC)
- support for typed collection initializers (http://goo.gl/vNH1R and http://goo.gl/pfd9x)
- much improved Linq extension method support including type inference for closures (https://gist.github.com/618168)
- System.Core.dll is now referenced by default, import System.Linq.Enumerable and Linq away
- 'new' keyword for explicit shadowing of inherited members (http://goo.gl/kQKrw)
- initial support for .Net 4.0
- loads of metaprogramming improvements
- macro application over type members (http://goo.gl/0GXaE)
- support for macros yielding partial types (http://goo.gl/Dzmq6)
- much improved Boo.Lang.PatternMatching
- much improved quasiquotation and splicing support (http://goo.gl/WuOVd - http://goo.gl/NbOAU - ...)
- meta methods can now expand to code containing macros (http://goo.gl/FIcpc)
- better support for block quasiquotation ("block:" trick no longer needed when quasiquoting a complex sequence of statements) (http://goo.gl/2IbSb)
- type inference for empty arrays will take their usage into account (http://goo.gl/FJMST)
- cast function has been deprecated by the introduction of the new cast operator (e cast type)
- ifdef macro for conditional compilation (http://goo.gl/RJgZM)
- simple identifier interpolation: "Hello, $name!"
- for consistency interpolation now uses () instead of {} for complex expressions ("2+2: $(2 + 2)" instead of "2+2: ${2 + 2}")
- automatic stubbing of inherited abstract generic methods (http://goo.gl/gn1WV)
- proper support for partial classes containing nested types (http://goo.gl/ixmt0)
- fixed matrix builtin on .net (broken by a System.Reflection.Emit bug)
- better report of ambiguous generic type reference errors
- fix for shortcircuited expressions involving implicit bool conversion operators
- and many many more...
Kudos to all that contributed to this release throughout the year specially: Квасов Роман, Ryan Boggs, Dmitry Malyshev, Maksym Trushyn, Daniel Grunwald, Cedric Vivier, Spruce Weber, socrates877, rektide, George Dernovoy and Benjamin Reed.
As usual the packages can be download from:
http://dist.codehaus.org/boo/distributions/?C=M;O=D
A new MonoDevelop addin is also available and can be installed from the Community Add-in Repository:
http://addins.monodevelop.com/
Enjoy!
