|
This post originated from an RSS feed registered with Ruby Buzz
by Red Handed.
|
Original Post: Syndey, the New People's Choice Ruby
Feed Title: RedHanded
Feed URL: http://redhanded.hobix.com/index.xml
Feed Description: sneaking Ruby through the system
|
Latest Ruby Buzz Posts
Latest Ruby Buzz Posts by Red Handed
Latest Posts From RedHanded
|
|
Evan Webb has done this neat thing where he’s branched Ruby 1.8 to add a pile of features that have been tinkling in our ears for years. Look at this list and tell me you haven’t personally tugged on Matz’ apron for this stuff.
- Native OS Threads (Thread::OS). These do not replace the normal Threads, and allow for MxN thread setups (see test/sydney/test_osthread.rb#test_mxn).
- Backtrace and Frame objects. Exceptions now provide a programmatic way of inspecting the backtrace and relevant frames.
- Global Error Handler. A closure which can handle any errors which reach the top (think better IDE integration). [Ed. Note: I was just wishing for this today.]
- Native Binding.of_caller
- Frame metadata Allows you to attach any data to a frame object which can then be retrieved a number of ways (Kernel.caller, Exception#backtrace, etc)
- More event hooks.
- GC.on_gc. Run when the garbage collection is about to run. (test_gc.rb)
- Ruby::State#on_switch. Run when a new Thread is about to be switched to (test_state.rb)
- Fulfillment of RCR 279, user defined % expansion.(test_precexpansion.rb)
Stupendous work. What a great way to try these features out to get an idea of how these changes affect the performance of the interpreter.
I’m compiling on FreeBSD and ./configure --enable-pthread was the right course. Bleeding edge, dangerous stuff, and all that . The release announcement is on Evan’s blog. First development release available as a tarball.
Read: Syndey, the New People's Choice Ruby