﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Stefan Wenig commented on Purely declarative DSL</title><description>&gt; Of course, then we are not in the purely declarative DSL anymore.
  
  
SQL is declarative, functional languages are. if your sample doesn't imply line-by-line execution, it might be too. are you talking about programming languages or data? (then again, given don box's weird talk at lang.net, we might be up to replace programming with XML altogether, only he understands that some would rather not write so many angle brackets...)
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment15</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment15</guid><pubDate>Fri, 01 Feb 2008 20:39:23 GMT</pubDate></item><item><title>Harry commented on Purely declarative DSL</title><description>Wow, can't wait to see your book.
  
I like the drop-and-go approach. I am solving a field mapping problem (very similar to functoids in BizTalk, if you know what I mean). Basically business users can map fields and generate reports/files the way they want. I am thinking about using DSL for that purpose. Boo looks easy enough, but I want to use ANTLR to create my own DSL. 
  
Anyway, your posts give me a lot of inspirations. 
  
Thanks, 
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment14</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment14</guid><pubDate>Fri, 01 Feb 2008 13:54:18 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>"Holy War"
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment13</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment13</guid><pubDate>Wed, 30 Jan 2008 21:36:19 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>HW?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment12</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment12</guid><pubDate>Wed, 30 Jan 2008 21:34:01 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
Ok, this Boo/.NET SDK turns out into more of a HW. 
  
  
I guess that with the proper logical organization of the solutions the difference in efficiency between these two will turn out to be marginal (especially when development resources are not limited). 
  
  
Although I'll keep an eye on the lookout of the user stories that could not be not be efficiently leveraged by plain .NET.
  
  
Thanks for the dispute.
  
  
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment11</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment11</guid><pubDate>Wed, 30 Jan 2008 21:24:34 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>Rinat,
  
Boo is a language that compiles down to IL and run on the CLR.
  
It is not included in the .NET SDK, but neither does a lot of useful things.
  
Limiting yourself to the .NET SDK is a bad habit.
  
  
As for the advantages, they have been discussed in this blog extensively in the past, check the DSL category
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment10</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment10</guid><pubDate>Wed, 30 Jan 2008 20:38:12 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
I do not think that Boo is .NET, since .NET SDK does not contain tools to compile Boo scripts. 
  
  
Still, what's the example of language modification that Boo can handle much more efficiently than the latest C#?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment9</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment9</guid><pubDate>Wed, 30 Jan 2008 19:46:20 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>First of all, Boo _is_ .Net.
  
The ability to modify the language itself to fit our needs is extremely powerful.
  
  
Check the Domain Specific Language category in this blog for more details.
  
Brail, Rhino ETL, Bake, etc are all such examples
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment8</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment8</guid><pubDate>Wed, 30 Jan 2008 18:56:52 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
Hm, I just cannot imagine development level that so high that the Boo can handle more efficiently than .NET. (not only DSL)
  
  
Could you show an example of that, please?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment7</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment7</guid><pubDate>Wed, 30 Jan 2008 18:48:44 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>drop&amp; go refers to just dropping a script in a directory and getting the new functionality.
  
  
1/ Because the language is flexible.
  
2/ There is an IDE for Boo, if this is required. I tend to write short DSL scripts, which rarely need this, though.
  
  
As for the extra tool, it allows you to work at a higher level, with a lot of help from the language. It is a good tool
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment6</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment6</guid><pubDate>Wed, 30 Jan 2008 18:22:16 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
yes, you were right, I was not aware of the Boo's existence. Given that some of my arguments are obsolete.
  
  
And yet those arguments remain:
  
1. Why do you need to use another language if .NET can do the same?
  
2. Boo + .NET development feels to be less efficient than pure .NET development, since in the last case you do not have IDE support (IntelliSense + support), there's an extra tool in the stack to handle (that complicates build and integration scripts, there are more naming and usage guidelines to document and follow)
  
  
PS: What is the drop-n-go approach?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment5</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment5</guid><pubDate>Wed, 30 Jan 2008 18:00:48 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>Rinat,
  
Efficiency? It compiles down to the same IL.
  
I don't see the point, frankly.
  
The code the is required to build this is around 150 lines, is supports runtime updates, drop &amp; go approach and is very easy to follow.
  
Time to write this: 1.5 hours, mostly spent writing the explanation in the book.
  
  
Just to be clear, are you aware that those DSL samples are using the Boo language? And that Boo is a fully fledged CLR language?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment4</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment4</guid><pubDate>Wed, 30 Jan 2008 17:35:35 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
And what about the efficiency?
  
  
I've just posted a simple .NET code that does exactly the same things as your samples for the DSL book. And yet it took me just a little bit of time to write that (as opposed to spending some resources to write and maintain separate DSL).
  
  
http://rabdullin.com/how-to-implement-dsl-functionality-efficiently/
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment3</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment3</guid><pubDate>Wed, 30 Jan 2008 17:19:57 GMT</pubDate></item><item><title>Ayende Rahien commented on Purely declarative DSL</title><description>Rinat,
  
Please check previous discussion on this in this blog.
  
Broadly, flexibility, clarity, simplicity.
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment2</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment2</guid><pubDate>Wed, 30 Jan 2008 15:29:24 GMT</pubDate></item><item><title>Rinat Abdullin commented on Purely declarative DSL</title><description>Oren,
  
  
what's the point in adding second "language" with some cryptic syntax (along with all the disadvantages of DSL and its coupling with the code) to the development project, when you already have .NET at your hands?
</description><link>http://ayende.com/3125/purely-declarative-dsl#comment1</link><guid>http://ayende.com/3125/purely-declarative-dsl#comment1</guid><pubDate>Wed, 30 Jan 2008 15:14:59 GMT</pubDate></item></channel></rss>