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

kris foo at bar.com
Thu Feb 8 12:36:31 PST 2007


Andrei Alexandrescu (See Website For Email) wrote:
> kris wrote:
> 
>> For example, having a DSL go and hit a database at /compile time/ 
>> sounds like an appalling reduction in /perceived/ compiler efficiency. 
>> If I have to hit the DB for every single compilation of each module 
>> with such a DSL embedded, I will simply discard the toolset. That 
>> approach would be borderline insanity :p
> 
> 
> Probably we haven't worked in the same environments. In the large 
> database systems I worked with (Chase Manhattan), the schema and the 
> basic views change very rarely, and whenever that happens, the stored 
> procedures are spilled automatically in text files that can be read by 
> the build process. It was entirely reasonable to recompile the system 
> whenever that happened, and it was highly desirable to fix mismatches 
> before the system runs.

Yes, that's one approach (I wasn't trying to limit the perspective at 
all). Yet, the DSL would still have to read the spilled data files; at 
compile time? That's a blatant security breach, is it not? Or are you 
hinting that sort of thing is acceptable within specific organizations?

> 
> In other cases, a dynamic approach does better. Dynamic has always been 
> more flexible, no doubt about that. The point is that each approach has 
> its advantages and disadvantages.

Yes, I fully agree. It just that this discourse has been heavily slanted 
toward compile-time instead. Trade-offs are prevalent everywhere, and I 
honestly feel we're not getting a clear (fully unbiased) picture of what 
the pros and cons are.

> 
> I can also do without the belligerent tone. Not knowing or not 
> understanding does not automatically lend insanity on the interlocutor.

Hrm, you have me all wrong, Andrei. I got the distinct impression that 
particular tone was pointed in my direction instead? I hope you'll let 
it go by, and focus on the more valuable aspects.

So how about it? What can DSL really do, in a practical sense, for 
someone using a D-based DeRailed environment? We /really/ do wish to 
hear what the options are, and your input on that subject is valuable ...



More information about the Digitalmars-d mailing list