BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Metaprogramming Content on InfoQ

  • What's a Ruby DSL and what isn't?

    "Domain Specific Language" (DSL) is a popular buzzword in the Ruby community. Recently, however, doubts about the use of the term arose, particularly because it tends to be used even for ordinary APIs, simply because Ruby allows to omit parentheses. We look at some of the style debates.

  • Edit Expression Trees with MetaLinq

    In the current implementation of .NET 3.5, expression trees are immutable. Developers wishing to edit one have to manually build new expressions by copying existing ones. Aaron Erickson's MetaLinq allows developers to side-step this by providing a way to convert expression trees into mutable representations and back again.

  • Article: Adding Properties to Ruby Metaprogramatically

    Werner Schuster walks us through a simple example of adding Java-style properties support (declarative getters, setters and change listeners) to Ruby classes via a Mixin by using elements of Ruby meta-programming. Introduces ideas for enhancement using principles of design-by-contract and pluggable type systems.

  • Ruby Metaprogramming Techniques

    Ola Bini looks at several common metaprogramming techniques in Ruby.

  • InfoQ Article: Will the Enterprise change Ruby, or will Ruby change the Enterprise?

    Ruby is often criticized for lacking the features required for developing large applications and maintaining them over long periods of time with large teams. Are we missing something fundamental for widescale adoption of Ruby in the enterprise?

BT