Ruby.rewrite(Ruby)
In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.
- Ruby,
Tracking change and innovation in the enterprise software development community
Posted by Nick Laiacona on May 31, 2008 12:37 PM
At RailsConf on Friday, Avi Bryant and Bob Walker of GemStone revealed plans for the MagLev project. MagLev will run Ruby on Rails within GemStone's distributed object technology. The MagLev VM, although only partially implemented, so far outperforms MRI 1.8.
MagLev is a Ruby VM based on the GemStone S64 VM, which runs Smalltalk. The Smalltalk VM has been extended with special byte codes to make it Ruby compatible. GemStone's Smalltalk VM has been used for over 20 years in sectors such as real time financial markets and the worldwide shipping industry. It as a mature, fast, stable, distributed, and transactional data store which can hold over a trillion objects or 17PB (Petabytes) worth of information. The goal of the MagLev project is to bring this distributed object technology to the world of Ruby on Rails.
Avi Bryant, core team member on Dabble DB and SeaSide, demonstrated MagLev's distributed object technology running Ruby. Using an irb session on one Ruby VM, he was able to share object data to an irb session in another VM by simply instantiating global objects. Avi then demonstrated the BEGIN, COMMIT, and ABORT keywords that provide a fully transactional and ACID compliant concurrency strategy. He was also able to access persistent data storage using this same mechanism. In essence, MagLev was filling the roles not just of the VM but also the caching and persistent storage layers.
Bob Walker, who is the project manager for the MagLev project at GemStone, then spoke about the progress of the effort. As of today, Bob Walker's team has MagLev running about 36 of the Ruby Shootout Benchmarks significantly faster than MRI 1.8. They plan to use the Rubinius project's Ruby Specs in order to verify compatibility. They are currently three months into implementation. Portions of the project will be open source, but the core VM, which is written in C, will likely remain closed source.
GemStone is still pondering a pricing model for MagLev. Bob Walker did state that there will be a free version available. GemStone management speculates that a two or three tier pricing model is possible with either storage size or number of transactions defining the tiers. GemStone has set up a project page where they promise ongoing information about the project will be available soon.
Read InfoQ's exclusive interview with Gemstone's Bob Walker on MagLev.White Paper: Writing Good Use Cases
The Agile Business Analyst: Skills and Techniques needed for Agile
Agile Projects: Five Ways to Fail When You Scale
Continuous Application Performance eKit - Articles, Discussion Panel, Whitepapers, Demos
Agile development secrets - steps to succeed with agile practices webcast
In this RubyFringe talk, Reginald Braithwaite writes Ruby code to read, write, and rewrite Ruby. Demos include extending Ruby with conditional expressions, call-by-name and more.
Aptana RadRails: An IDE for Rails Development by Javier Ramírez discusses the latest Aptana RadRails IDE, a development environment for creating Ruby on Rails applications.
Cliff Click discusses how to optimize generated bytecode for running on the JVM. Click analyzes and reports on several JVM languages and shows several places where they could increase performance.
Scott Ambler, Practice Lead for Agile Development at IBM, speaks on the current status of the Agile community and practices having a look at the perspective of the Agile’s future.
Dave Nicolette and Karl Scotland try to introduce non-technical managers to one of the most popular Agile development techniques: Test-Driven Development (TDD).
Smooks is best known for its transformation capabilities, but in this article Tom Fennelly describes how you can also use it for structured event streaming.
Successful architectures evolve over time to meet changing business requirements. Luke Hohmann presents how to collaborate with key members of your business to manage architectural changes.
In this article, Dr. Tobias Komischke explains how colors used in a GUI can influence our interaction with a computer and offers advice on using the appropriate colors for the interface.
No comments
Reply