Email list hosting service & mailing list manager

The ". $" notation (was: Re: how useful are collecting lists?) Alan Manuel Gloria (18 Mar 2013 01:26 UTC)
Re: The ". $" notation Shiro Kawai (18 Mar 2013 02:42 UTC)
Re: The ". $" notation Alan Manuel Gloria (18 Mar 2013 02:44 UTC)
Re: The ". $" notation Shiro Kawai (18 Mar 2013 04:45 UTC)
Re: The ". $" notation David A. Wheeler (18 Mar 2013 16:25 UTC)
Re: The ". $" notation Alan Manuel Gloria (19 Mar 2013 00:17 UTC)
Re: The ". $" notation David A. Wheeler (19 Mar 2013 03:28 UTC)
Re: The ". $" notation Alan Manuel Gloria (19 Mar 2013 05:52 UTC)
Re: The ". $" notation David A. Wheeler (19 Mar 2013 10:44 UTC)
Handling scomments after "." David A. Wheeler (19 Mar 2013 03:41 UTC)
Re: Handling scomments after "." David A. Wheeler (19 Mar 2013 04:12 UTC)

Re: The ". $" notation David A. Wheeler 18 Mar 2013 16:25 UTC

Alan Manuel Gloria:
> >> 1.  Allow "foo . EOL INDENT x ..." ==> "(foo . (x ...))"
> >> 2.  Allow "foo . $ x ..." ==> "(foo x ...)"

Unfortunately, those 2 forms greatly differ in ease-of-implementation.

The *second* form is easy to add to the BNF.  Here's the patch:

diff --git a/sweet.g b/sweet.g
index 82055ea..937e54d 100644
--- a/sweet.g
+++ b/sweet.g
@@ -1061,6 +1061,7 @@ rest returns [Object v]
         (pn=n_expr hspace* (n_expr error)? {$v = $pn.v;}
          | COLLECTING hspace* pc=collecting_tail hspace*
            (n_expr error)? {$v = $pc.v;}
+         | SUBLIST hspace* ps=rest {$v = $ps.v;}
          | empty {$v = list(".");})
        | empty   {$v = list(".");})
   | scomment hspace* (sr=rest {$v = $sr.v;} | empty {$v = null;} )

So we could easily support form #2, and I don't see any big downside.
I'll post the ANTLR patch on git; we can revert it later, or implement it in the
Scheme implementation, depending on what people say.

I don't see an obvious way to add the first form to the BNF, though, and
I don't think we should reorganize everything for such a bizarre case.
Also, I can see form #1 being created accidentally, so *preventing* it seems wise.

Granted, that's a minor inconsistency, but ". $" is such a bizarre useless
sequence that I'm going to lose any sleep over it (if we add it).

--- David A. Wheeler