Info on Smalltalk DSLs or Metaprogramming...

Rich Warren rwmlist at gmail.com
Thu Sep 7 07:25:23 UTC 2006


On Sep 5, 2006, at 6:51 AM, Ramon Leon wrote:

>
> I understand you reasoning, I appreciate the discussion, it's  
> always good to
> see how others think, I just don't agree on your redefinition of  
> the word,
> and will have to invoke Laynes Law.

Here's the thing (then I'll shut up, I promise), I don't think I'm  
redefining the term. Almost all the information I originally read  
about DSLs discussed them from an interpreting, internal DSL  
standpoint. I think there are a large number of people who use DSL  
this way. A lot of people use it the other way. Some are sloppy in  
their usage. All of this leads to a great amount of miscommunication.

For example, most of the Ruby DSL stuff on the web is about  
interpreting external files (or at least, most of what I've found).

I actually haven't found any authoritative references that use DSL  
for either Smalltalk or Lisp in the way you describe. The  
authoritative piece on programming lisp (from OnLisp) that describes  
using these techniques refers to them as 'bottom-up programming', not  
DSL. Don't get me wrong, I'd love to be proven wrong here (heck, I'd  
love to see any decent descriptions of using lisp or Smalltalk for  
writing DSLs, for any possible value of DSL).

I'm fine excepting your definition of DSL. However, I still think  
there should be a way to describe the more specific, interpreted  
case. There's a lot of value in looking at the interpreted case as a  
separate technique. And that's hard to do if you say DSL and everyone  
just makes their own assumptions.

-Rich-

>
> I don't see much further to discuss, you want to call a language a  
> DSL.  We
> disagree on fundamental definitions.  You want DSL to hinge on
> interpretation or not, it's not a position I can agree with.  IMHO,  
> you
> should drop the DS, and just call what you're talking about a  
> language.
> Yes, likely a domain specific language, but I'm simply not going to  
> agree on
> making everything that's not interpreted "not" a DSL.  Then entire  
> Lisp and
> Smalltalk community have been calling their style of programming  
> building
> DSL's for far too long to suddenly change the definition and  
> exclude them
> because you feel it's too ambiguous.
>
> I did enjoy the discussion, I just don't see where it can go from  
> here.
>
> - Ramon Leon
>
>
>
>
>




More information about the Squeak-dev mailing list