Alan Manuel Gloria:
> Looks pretty good, although I'm kind of confused in your ACL2 example
> - is the syntax for nonpunctuation infix {x implies b} or {a /implies/
> b}?  Or does {} automatically assume that if the second entry in a
> 3-entry list is a symbol (regardless of punctuation or lack thereof)
> it must be infix (for non-infixed default)?

Well, there's an excellent reason that you're confused about that example: I 
made a cut-and-paste error.  Sorry about that!  I _think_ I've fixed it.

The ACL2 example is probably important because it's one of the few times where 
infix-default has a specific advantage (you can have a spelled-out infix 
operator WITHOUT disabling indentation).  But on looking at it, it's not a 
compelling example.

I was surprised how often the "infix default" and "infix non-default" ended up 
being the same, or nearly so.  All the extra rule complexity just doesn't seem 
to be as helpful as I expected.


> >    6. Immediate completion. A single complete expression that begins at the 
> > left edge of a line, and is immediately followed by newline after it 
> > completes, causes the expression to immediately complete... Type an initial 
> > space if you want to enter only a single complete expression on a line yet 
> > follow it with child lines.
> 
> Hmm, this seems to conflict with your BitC example:
>  deftypeclass
>     forall (Eql('a)) Ord('a)
>     < : fn(('a 'a) 'a)
> So: does deftypeclass have a starting space or no? And why not?

Yes, it DOES have a starting space.  So no problem... at least conceptually.

> Hmm, come to think of it this rule is kinda confusing to me...

Understand.  Actually, the indentation stuff has some serious problems as I 
examine it more closely.  The Scheme spec for indentation hides some really 
serious problems - I don't think it got enough serious use before they spec'ed 
it.

I think that entire rule "starting space" etc. rule will have to go away.  But 
I think that's better left for a separate thread of emails - the problem is 
subtle.  I'd really like the guy who developed I-expressions to be involved, if 
I can get him.

--- David A. Wheeler

Reply via email to