Another status update, covering about 2 weeks of development. Highlights: - Early backtracing support. - Much better AOT compilation. Parts of the standard library are now pre-compiled for testing. - Migrated to LLVM top of tree. - Dispatcher performance is now back to normal (we lost about 30% due to gcc not inlining code). - Many bug fixes. We are content-complete for a first beta release of MacRuby 0.5. We will release it very soon then continue converging until the final 0.5 release. Details: - Better GCD documentation - Implemented Symbol.all_symbols - Rewrote the file loader (file.c) fixing a few bugs - Added preliminary support for backtracing / symbolication - Make sure stdio objects are never finalized - Fixed more eval/Binding bugs - Fixed END{} block - Fixed a memory problem in the libyaml extension - Fixed rescues in rescues (most cases) - Fixed a 10.5-only bug in the new Array class - Fixed a bug of the parser when dealing with byte strings - AOT: now compiling part of the stdlib (notably irb and rubygems) - AOT: fixed bugs in the compilation of defined?, undef, rb_eStandardError, literal ranges - Fixed a bug in the compilation of `for' loops - Fixed many minor compilation bugs discovered by the LLVM module verifier - The arguments resolver is now able to deal with any number of arguments - Fixed minor String bugs - Added autorelease and dealloc to the list of handled ignored selectors - Fixed a bug when instance variables were not visible from within an iterator in method called through KVO - Fixed an infinite recursion trying to convert an NSPathStore2 to a string - Moved to LLVM r82747, enabled LLVM multithreaded mode - Fixed GC problems in the parser - Create all ruby scopes with external linkage, otherwise the AOT compiler won't generate frame info for them - Fixed a bug when open would crash when mode is numeric - Now using a gcc constructor to initialize .rbo files - Added Dispatch::Semaphore + fixed a few things - Make sure RoxorVM instances created lazily have a valid thread accessor - Fixed a random bug of Numeric#chr - macruby is now SIGINT interruptible (but no exception is raised, yet) - Fixed a few 32-bit only bugs - Fixed a GC bug in builtin global variable setters - Fixed a bug in Set#to_a - Fixed the BridgeSupport parser to properly handle one liner <method> elements - Fixed variadic functions/methods calls - Fixed a few bugs in Array#pack - Fixed a serious bug in the way we used to promote strings to byte strings - Fixed a few bugs in IO#ioctl and IO#fcntl - Now separately compiling the dispatcher and forcing function inlining - Fixed a bug in File.open when file permissions were not taken into account - Make sure ivar slot generation is disabled when compiling attr accessors - Fixed a bug in the way we AOT compile super method cache - Added an empty Ruby template file - Improved the MacRuby Application template: Embed MacRuby target and some unit testing mechanism are added Laurent