<$BlogRSDUrl$>

Friday, May 28, 2004

Intentional Programming

Reading up on Intentional Programming. Greg and I talked a bit about what to call the AST thingy, since what we were thinking of it as (ideally at least) wasn't really syntax per se but just a representation of the program separate from any concrete syntax. The IP people have this notion as well, and they call the representation the IP Source Tree. So,
  • Why trees? (I mean, what is it about a tree structure that captures so much about what we're doing when writing a program).
  • Can this "abstract program" representation we're thinking about actually be separated from the syntax in the way we imagine? I guess I mean to ask about the nature of the abstract representation... what sort of structure could it have?

    IP just says that the IP Source Tree is composed of a tree of Intentions, with the children of each intention being a more concrete intention. Parent intentions contain all the information needed to understand/debug/image/compile its child intentions.

  • What's become of IP? It seems to be inspired by the same notions that Greg has been talking about (esp. the "operate on the source tree" and extensibility aspects).
Also reading up on aspect-oriented programming (interesting ideas on how to add behaviours to a program which can cut across the usual tree-like boundaries of a bunch of code), and also messing around with groovy.

This page is powered by Blogger. Isn't yours?