Episode 52: DSL Development in Ruby

Episode 52: DSL Development in Ruby

In this episode, we're talking to Obie Fernandez about agile DSL development in Ruby. We started our discussion by defining what a DSL is, the difference between internal and external DSLs as well as the importance of the flexibly syntax of the host la...
51 Minuten

Beschreibung

vor 18 Jahren
In this episode, we're talking to Obie Fernandez about agile DSL
development in Ruby. We started our discussion by defining what a
DSL is, the difference between internal and external DSLs as well
as the importance of the flexibly syntax of the host language in
order to make DSLs worthwhile. We then looked at a couple of real
world examples for DSLs, specifically, at Business Natural
Languages. We then progressed to the main part of the discussions,
which centered around the features of Ruby that are important for
building DSLs. These include the flexible handling of parentheses,
symbols, blocks as well as literal arrays and hashes. We then
discussed Ruby's meta programming feautures and how they are
important for building DSLs: instantiation, method_missing
callback, class macros, top level functions and sandboxing.
Features like eval, class_eval, instance_eval and define_method are
also important for DSLs in Ruby, as well as using alias_method for
simple AOP.

Kommentare (0)

Lade Inhalte...
15
15