<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: DSL renaissance</title>
	<link>http://tech.puredanger.com/2007/09/22/dsl-renaissance/</link>
	<description>Alex Miller's technical blog</description>
	<pubDate>Thu, 28 Aug 2008 03:36:40 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.2</generator>

	<item>
		<title>by: Alex</title>
		<link>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8963</link>
		<pubDate>Mon, 24 Sep 2007 14:50:54 +0000</pubDate>
		<guid>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8963</guid>
					<description>On layouts, I think clearly VB is easier in that choice, but I think this is a false dichotomy.  Clearly there are lots of possibilities in between these two extremes.  I don't know much about layout stuff, but I'm sure there are DSLs out there that lie in between writing GridBag code and pushing pixels on a grid.  The VB editor isn't doing the same thing either - it's giving you a pixel-perfect rendering, not a resizable layout.  I'd be willing to bet that using a DSL could be even faster and more efficient presuming you knew what you wanted to create.  But, my point in the post was really that while domains may have DSLs and we will use those DSLs, we will still spend the majority of our time writing code in a general purpose language in a text editor.  

I think there is still a load of room for improvement in the way text editors convey information.  IDEs have improved rapidly at leveraging syntax highlighting, marking error occurrences, code folding to hide unimportant stuff, indicating whether a method is overriding another method, displaying diffs against an SCM, etc.  But those are visual editor improvements, not changes in the code itself.  I distrust any part of my program that doesn't exist somewhere as text in a file.

The benefit of text is that it is precise.  Writing code is necessarily an exercise in precision given the target (computer) is kind of a stickler for it.  Our visual systems are phenomenal but they are not designed for the kind of precision a language demands.</description>
		<content:encoded><![CDATA[<p>On layouts, I think clearly VB is easier in that choice, but I think this is a false dichotomy.  Clearly there are lots of possibilities in between these two extremes.  I don&#8217;t know much about layout stuff, but I&#8217;m sure there are DSLs out there that lie in between writing GridBag code and pushing pixels on a grid.  The VB editor isn&#8217;t doing the same thing either - it&#8217;s giving you a pixel-perfect rendering, not a resizable layout.  I&#8217;d be willing to bet that using a DSL could be even faster and more efficient presuming you knew what you wanted to create.  But, my point in the post was really that while domains may have DSLs and we will use those DSLs, we will still spend the majority of our time writing code in a general purpose language in a text editor.  </p>
<p>I think there is still a load of room for improvement in the way text editors convey information.  IDEs have improved rapidly at leveraging syntax highlighting, marking error occurrences, code folding to hide unimportant stuff, indicating whether a method is overriding another method, displaying diffs against an SCM, etc.  But those are visual editor improvements, not changes in the code itself.  I distrust any part of my program that doesn&#8217;t exist somewhere as text in a file.</p>
<p>The benefit of text is that it is precise.  Writing code is necessarily an exercise in precision given the target (computer) is kind of a stickler for it.  Our visual systems are phenomenal but they are not designed for the kind of precision a language demands.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Hamlet D'Arcy</title>
		<link>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8962</link>
		<pubDate>Mon, 24 Sep 2007 14:23:34 +0000</pubDate>
		<guid>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8962</guid>
					<description>Consider the Java Swing LayoutManager classes. Is laying out a graphical form easier if you have a VisualBasic style form editor, or if you have a text editor and GridBagLayout objects? 

Consider software architecture. Is it easier to get a high level overview of a component using a UML diagram or looking at source code? 

Text is a new phenomenon. Vision is an old one. We have fairly well developed vision because we were at one time hunters. Humans can easily discern between two colors. Or look at three objects and tell which one is bigger. Humans are very bad at looking at two instances of &quot;.x = 486&quot; and one of &quot;.x = 490&quot; and realizing that the width of two boxes is different. 

To harness the power of our biology I would recommend using colors, shapes, and size to communicate information. I really like those widgets that do a frequency count of keywords and then render the common words in a bigger font. (UserScripts.org used to do this... don't know the name of the technique). That was a communication medium that harnessed our biology! Very cool. 

I too think we'll use text editors for a long time... but I think the cause is developer's lacking imagination rather than a test editor's fitness of purpose.</description>
		<content:encoded><![CDATA[<p>Consider the Java Swing LayoutManager classes. Is laying out a graphical form easier if you have a VisualBasic style form editor, or if you have a text editor and GridBagLayout objects? </p>
<p>Consider software architecture. Is it easier to get a high level overview of a component using a UML diagram or looking at source code? </p>
<p>Text is a new phenomenon. Vision is an old one. We have fairly well developed vision because we were at one time hunters. Humans can easily discern between two colors. Or look at three objects and tell which one is bigger. Humans are very bad at looking at two instances of &#8220;.x = 486&#8243; and one of &#8220;.x = 490&#8243; and realizing that the width of two boxes is different. </p>
<p>To harness the power of our biology I would recommend using colors, shapes, and size to communicate information. I really like those widgets that do a frequency count of keywords and then render the common words in a bigger font. (UserScripts.org used to do this&#8230; don&#8217;t know the name of the technique). That was a communication medium that harnessed our biology! Very cool. </p>
<p>I too think we&#8217;ll use text editors for a long time&#8230; but I think the cause is developer&#8217;s lacking imagination rather than a test editor&#8217;s fitness of purpose.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Alex</title>
		<link>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8886</link>
		<pubDate>Mon, 24 Sep 2007 01:47:44 +0000</pubDate>
		<guid>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8886</guid>
					<description>On #2, I don't see the limited symbol domain of text as a problem, rather I see that as a strength as it allows precision and automated processing.  I think text is a pretty flexible system - I'm willing to stick with it.

On #3, I consider XML-based languages to be DSLs, but then I'm willing to take a pretty wide interpretation of the term.  However, I think most XML-based DSLs are fairly bad as DSLs due to their verbosity.  I think either external DSLs built with tool support from language tools or embedded DSLs in general-purpose languages that have good support for them are much better options.</description>
		<content:encoded><![CDATA[<p>On #2, I don&#8217;t see the limited symbol domain of text as a problem, rather I see that as a strength as it allows precision and automated processing.  I think text is a pretty flexible system - I&#8217;m willing to stick with it.</p>
<p>On #3, I consider XML-based languages to be DSLs, but then I&#8217;m willing to take a pretty wide interpretation of the term.  However, I think most XML-based DSLs are fairly bad as DSLs due to their verbosity.  I think either external DSLs built with tool support from language tools or embedded DSLs in general-purpose languages that have good support for them are much better options.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: things</title>
		<link>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8865</link>
		<pubDate>Sun, 23 Sep 2007 19:56:31 +0000</pubDate>
		<guid>http://tech.puredanger.com/2007/09/22/dsl-renaissance/#comment-8865</guid>
					<description>to consider:
1. typing for decades can cause arthritis.
2. humans think in symbols (icons) not necessarly text (which is a subset of symbols).  
3. Would you consider VoiceXML a DSL?</description>
		<content:encoded><![CDATA[<p>to consider:<br />
1. typing for decades can cause arthritis.<br />
2. humans think in symbols (icons) not necessarly text (which is a subset of symbols).<br />
3. Would you consider VoiceXML a DSL?
</p>
]]></content:encoded>
				</item>
</channel>
</rss>
