Ted Leung on the air
Ted Leung on the air: Open Source, Java, Python, and ...
Ted Leung on the air: Open Source, Java, Python, and ...
Thu, 19 Jun 2003
Compositional semantics
James is recounting the continuation of his conversation with Ken Arnold about Ant:
[12:32] |
[computers/programming] |
# |
TB |
F |
G |
2 Comments |
The problem with Ant is that it violates something we learned with Unix. Tasks aren't composable.Compositional semantics are very important. They lead to simple and regular languages for accomplishing tasks (and yes, Ant is a language). One of the things that irks/trips me up in Python is that not everything is an expression. This leads to situations where composability is compromised.
Ever since I first saw ant, I knew it was the wrong way to approach the problem of a new build tool. It has taken me a while, but I now realize that ant is a scripting language with a backwards and verbose syntax, no conditionals and no loops. I realize make isn't cross-platform (in and of itself), but ant is just so terrible. It is the worst hack, and the fact that people like it so much really scares me. I think the fact that it is XML is why people go nuts for it. a-a-p, written by the vim guy ( [www.a-a-p.org www.a-a-p.org] ) is a pyhton-based build tool that looks to be pretty good. For that matter, why not just use python as the build tool?
Posted by Dave at Fri Jun 20 14:14:06 2003
Posted by Dave at Fri Jun 20 14:14:06 2003
I think it's true that Ant is a kind of language -- actually its somewhat like a declarative language such as XSLT or Prolog. Which is good -- I don't want to sort out all the dependencies. The problem is that because tasks don't compose, you then need all kinds of machinery to get variable values and so on, and once you have that then you need looping and the next thing you know, you're a full blown language.
When Ant came out it was popular because it was better than just typing 'javac *.java'. Now there are tasks for so many things, and the installed base is so big, that something will have to be a lot better to dislodge it.
Posted by Ted Leung at Fri Jun 20 14:19:18 2003
When Ant came out it was popular because it was better than just typing 'javac *.java'. Now there are tasks for so many things, and the installed base is so big, that something will have to be a lot better to dislodge it.
Posted by Ted Leung at Fri Jun 20 14:19:18 2003
You can subscribe to an RSS feed of the comments for this blog:
Add a comment here:
You can use some HTML tags in the comment text:
To insert a URI, just type it -- no need to write an anchor tag.
Allowable html tags are:
You can also use some Wiki style:
URI => [uri title]
<em> => _emphasized text_
<b> => *bold text*
Ordered list => consecutive lines starting spaces and an asterisk
To insert a URI, just type it -- no need to write an anchor tag.
Allowable html tags are:
<a href>
, <em>
, <i>
, <b>
, <blockquote>
, <br/>
, <p>
, <code>
, <pre>
, <cite>
, <sub>
and <sup>
.You can also use some Wiki style:
URI => [uri title]
<em> => _emphasized text_
<b> => *bold text*
Ordered list => consecutive lines starting spaces and an asterisk