On Fri, Sep 17, 2004 at 11:44:09AM +0200, James Mastros wrote: > > >Or is there some syntactic shortcut that can be made to let us find > >the end of a closure without having to fully parse the closure itself? > Well, we could do that for the time being, in which case, I suggest the > end condition be a m:5/^}\s*/ line.
I'm going to go with a syntactic shortcut for the time being, albeit something more complex than the suggestion above. I don't want to force people to make multi-line closures. It will probably look for matching braces, skipping over quoted strings and anything with a backslash in front of it. Yes, I know it's possible to construct cases where this won't do the right thing -- I'm just trying to get something usable for now. In the long run I'm thinking we may just leave the syntactic shortcut in place, for those compilers that don't (or can't?) provide all of the "parse one closure, tell me how many characters you used" semantics we'd need. Maybe we'll have a rule option that says "don't use the closure syntax shortcut, call the compiler directly", or have the rule automatically decide what to do based on the properties of the (inner) compiler. Pm