I'm going to post proposed abbrev+EOL+indent semantics, which basically look just like the children-indent semantics but ' is interpreted just like the word "quote".
This means that: ' ! hello world ==> (quote (hello world)) Also: ' ! x ==> (quote x) I believe the following BNF accomplishes this, where "abbrevw" is an abbreviation followed by a space, tab, return, or linefeed: - | abbrevh hspace* abbrev_i_expr=it_expr - {$v=list($abbrevh.v, $abbrev_i_expr.v);} ; + | abbrevw hspace* + (comment_eol indent sub_abbrev=body + {$v = append(list($abbrevw.v), $sub_abbrev.v);} + | abbrev_i_expr=it_expr + {$v=list($abbrevw.v, $abbrev_i_expr.v);} ) ; I looked at an alternative semantic that forced multiple lines into one list (replacing {$v = append(list($abbrevw.v), $sub_abbrev.v);} with {$v=list($abbrevw.v, monify($sub_abbrev.v));}). But I've learned that some people argue for multiple-argument abbreviations, e.g., the "Bawden quasiquote extension" (http://www.r6rs.org/r6rs-editors/2006-June/001376.html)... which I think makes creating special limiting cases a bad idea. Thoughts? --- David A. Wheeler ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan _______________________________________________ Readable-discuss mailing list Readable-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/readable-discuss