Removing the confusion: a DSL can be much more than just a Fluent Interface.

In my previous post I alluded to the common tendency to confuse a fluent interface with a DSL. Here are few fantastic posts that explain the differences:

Fowler’s discussion of of DSLs mentions FluentInterface as a form of DSL, but says that in some languages (LISP, smalltalk) it goes far beyond this. From Scott Bellware comes Fluent Interfaces and DSL’s and Disambiguating Fluent Interface. Jimmy Bogard succintly puts it

using extension methods, fluent interfaces, etc. [is] all a poor man’s substitute for the clearer syntax that Ruby inherently provides.

. Jimmy also reaches the same conclusion as I - once IronRuby ships there won’t be much point in trying to achieve these DSLs in C# anymore, indeed IronRuby will be a poweful tool in the .NET developer’s toolbox.


You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

One Response to “Removing the confusion: a DSL can be much more than just a Fluent Interface.”

  1. Ayende (http://www.ayende.com/blog/) is showing several DSL samples using boo (http://boo.codehaus.org/), which could be classified as a “static compiled dynamic language”?!

    Anyway, I think IronRuby will also be a good alternative to DSL.

Leave a Reply