BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Ruby Content on InfoQ

  • Ruby 1.9 with Symbol#to_proc and (soon) curried Procs

    Ruby 1.9 added the to_proc feature to Symbol, which allows for a very succinct way to create Procs that just call one method. Also: a recent development version of 1.9 added currying to Ruby. We look at how these features work and what they can be used for.

  • Thin The Fast Ruby Web Server

    Today Mongrel is the defacto Ruby web server of choice. But a new experimental solution is now available in the name of Thin. Thin glues together the Mongrel parser, EventMachine and Rack in order to surpass Mongrel's performance.

  • Presentation: Ruby and the Art of Domain Specific Languages

    Rich Kilmer gives an introduction to the art of creating Domain Specific Languages in Ruby. The presentation gives a basic introduction, but moves on to useful distinctions in DSL styles, such as implicit vs. explicit internal DSLs or declarative vs. imperative DSLs. A look at a long list of real world DSLs Rich has created rounds of the presentation.

  • JRuby 1.1RC2 released with reduced memory requirements

    The JRuby 1.1 release is inching closer: Release Candidate 2 is out - and it's a big update with many bug fixes. A big update was the work on the Ruby to JVM bytecode JIT, which now requires less memory and shares JITed code among multiple JRuby runtimes in the same JVM.

  • Interview: Wilson Bilkovich Discusses Rubinius

    Wilson Bilkovich is an Engine Yard employee working as a core Rubinius team member. Wilson discusses various Rubinius systems and how they're implemented, as well as distributed version control systems, the Ruby Hit Squad, RubyGems and more.

  • Glimmer - using JRuby and SWT for Eclipse RCP apps

    Glimmer is a library for building GUIs with JRuby and SWT. Using the Builder idiom, it allows to define GUIs very quickly, but also permits to access SWT APIs directly. Glimmer was recently proposed as an official Eclipse project, so we caught up with Andy Maleh to talk about the project.

  • How to Develop New Activities for the One Laptop Per Child Project?

    The One Laptop Per Child project has starting shipping its first generation of XO laptops. OLPC "is not a laptop project, it is an education project", explains Nicholas Negroponte, director of the project. A full Sugar based development environment is available for developers to contribute new activities to the project. Sugar supports collaborative activities when XOs are meshed together.

  • Communicating Intent through Idiom and Paradigm Selection

    What about using idioms and programming conventions as signals to achieve more readability and expressiveness? This is what Reg Braithwaite advocates for, suggesting that syntax or even paradigm choices can be a means to communicate the intent.

  • Using ParseTree for LINQ-style queries and extracting metadata

    Whether it's LISP macros or LINQ's expression trees - access to the AST of code is a powerful tool. We look at how ParseTree allows this in Ruby - and how it's being used in libraries like Ambition, Sequel and the web framework Merb.

  • Interview: Charles Nutter discusses JRuby

    JRuby project lead Charles Nutter discusses how he got involved with JRuby, Sun's involvement with JRuby, how JRuby fits into enterprise-level web applications, the possibility of a friendly fork of the OpenJDK source code, reasons for switching to JRuby, the future of JRuby, Spring and JRuby, and the Ruby community as a whole.

  • Bill Burke on Dynamic Languages: Rationalizations and Myths

    "Am I just a Java fanboy?" - this is a good question. And it is one that Bill Burke does answer in his blog post Dynamic Languages: Rationalizations and Myths. But along with the post comes an overwhelming response, and insight into where we are heading as a community.

  • Dynamic Languages on the CLR and JVM

    John Rose, a key designer behind Sun's new Da Vinci Machine project initiative, and Charles Nutter of the JRuby project, contrast dynamic language support and optimization on the JVM and Microsoft's Dynamic Language Runtime.

  • EngineYard hires developer for mod_rubinius and Rubinius

    EngineYard, a Rails hosting company and employer of 5 Rubinius team members, just added a 6th developer to work on Rubinius and mod_rubinius. The mod_rubinius effort is supposed to significantly improve the deployment of Ruby and RoR applications.

  • Checking 1.8 vs 1.9 compatibility with Multiruby

    With Ruby 1.9 out, it's time to check libraries and applications for compatibility between these versions. We look at Multiruby, a utility that helps to track down changed behavior.

  • Anvil - Ruby MVC GUI library

    Anvil is a new Ruby GUI MVC framework aimed to make GUI development with Ruby simpler. Taking ideas from Rails and Merb, it provides code generators and other tools to automate much of the tedious work. InfoQ caught up with the developer Lance Carlson to see what's behind Anvil and what's planned for future releases.

BT