Just a quick request for two extensions to the language, one minor, one a bit more involved.
1. Love the new dot syntax! But subnodes.length feels way too long for something we used to have content for. I'm not mentally ready to say goodbye to content yet. At least could we have it as a getter on treenode, please? (Setter is optional, after all writing treenode.content = 4 would be cool but not critical).
2. Was thinking about what I use content for the most, and it is in loops. Why not get rid of
for(int i = 1; i <= node.subnodes.length; i++) { treenode subnode = node.subnodes[i]; // .. Use subnode }
in favor of
for each( treenode subnode in node.subnodes ) { // .. Use subnode }