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).