DeRailed DSL (was Re: compile-time regex redux)

Andrei Alexandrescu (See Website For Email) SeeWebsiteForEmail at erdani.org
Fri Feb 9 20:26:45 PST 2007


kris wrote:
> Andrei Alexandrescu (See Website For Email) wrote:
>>>> I think there is a lot of apprehension and misunderstanding 
>>>> surrounding what metacode is able and supposed to do or simplify. 
>>>> Please, let's focus on understanding _before_ forming an opinion.
>>>
>>>
>>> If that's the case, then perhaps it's due to a lack of solid & 
>>> practical examples for people to examine? There's been at least two 
>>> requests recently for an example of how this could help DeRailed in a 
>>> truly practical sense, yet both of those requests appear to have been 
>>> ignored thus far.
>>>
>>> I suspect that such practical examples would help everyone understand 
>>> since, as you suggest, there appears to be "differences" in 
>>> perspective? Since Walter brough RoR up, and you apparently endorsed 
>>> his point, perhaps one of you might enlighten us via those relevant 
>>> examples?
>>>
>>> There's a request in the original post on "The DeRailed Challenge" 
>>> for just such an example ... don't feel overtly obliged; but it might 
>>> do something to offset the misunderstanding you believe is prevalent.
>>
>>
>> I saw the request. My problem is that I don't know much about 
>> DeRailed, and that I don't have time to invest in it. 
> 
> You wrote (in the past):
> ====
> I think things would be better if we had better libraries and some 
> success stories.
> ====
> 
> We have better libraries now. And we're /trying/ to build a particular 
> success story. Is that not enough reason to illustrate some practical 
> examples, busy though you are? I mean, /we're/ putting in a lot of 
> effort, regardless of how busy our personal lives may be. All we're 
> asking for are some practical and relevant examples as to why advanced 
> DSL support in D will assist us so much.
> 
> 
>> My current understanding is that DeRailed's approach is basically 
>> dynamic, a domain that metaprogramming can help somewhat, but not a 
>> lot. The simplest example is to define variant types (probably they 
>> are already there) using templates. Also possibly there are some code 
>> generation aspects (e.g. for various platforms), which I understand 
>> RoR does a lot, that could be solved using metacode.
> 
> I read "Possibly there ... Could be solved ..."
> 
> Forgive me, Andrei, but that really does not assist in comprehending 
> what it is that you say we fail to understand. Surely you would agree? 
> Variant types can easily be handled by templates today, but without an 
> example it's hard to tell if that's what you were referring to.
> 
> On Feb 7th, you wrote (in reference to the DSL discourse):
> =====
> Walter gave another good case study: Ruby on Rails. The success of Ruby
> on Rails has a lot to do with its ability to express abstractions that
> were a complete mess to deal with in concreteland.
> ====
> 
> On Feb 7th, Walter wrote (emphasis added):
> =====
> Good question. The simple answer is look what Ruby on Rails did for 
> Ruby. Ruby's a good language, but the killer app for it was RoR. RoR is 
> what drove adoption of Ruby through the roof. /Enabling ways for 
> sophisticated DSLs to interoperate with D will enable such applications/
> =====
> 
> You see that subtle but important reference to RoR and DSL in the above? 
> What we're asking for is that one of you explain just exactly what is 
> /meant/ by that. DeRailed faces many of the same issues RoR did, so some 
> relevant examples pertaining to the RoR claim may well assist DeRailed.
> 
> Do we have to get down on our knees and beg?

Aw, give me a break.

Andrei



More information about the Digitalmars-d mailing list