So, basically: ENLIST does not treat its RHS as a new line expression, unlike QUOTE et al., SPLIT, or GROUP, i.e. it won't somehow recurse into readblock-internal.
ENLIST treats its RHS specially, and if the next line is indented, also treats that specially. If ENLIST treated its RHS as an expression, then it will be no better than SPLIT, and might as well be dropped. Anyway, I've got my hands full on SPLIT and its effects, as well as planning the reorganization/refactoring of modern.scm and sugar.scm and sweet.scm, and add source location information at least on Guile (and preferably also on Racket), so I'm really gonna have to pass ENLIST to one of you guys to consider. Basically, remember that: 1. GROUP is how group actually works in SRFI-49. 2. ENLIST is how you imagined group was *supposed* to work when you first saw SRFI-49's sentence "The GROUP symbol is used to allow lists whose first element is also a list.", and then saw it used in let examples of the SRFI-49 document. In short: ENLIST is simple to talk about informally but once you start thinking of it, I suspect ENLIST is going to be larger/more complex than what you simply assume. My first stab at ENLIST is: 1. ENLIST-at-the-start: Force all elements of the rest of the line to be a list, and make that list the first element of a higher-level list; this ends at newline. If the next line is indented more than the current line, then get additional sub-expressions at that indentation level and append those additional sub-expressions to the higher-level list. Applying the ENLIST-at-the-start rule: ~ foo bar . nitz quux . meow fish "Force all elements of the rest of the line to be a list...." ;#~ means we are processing ENLIST #~ (foo bar) . nitz quux . meow fish "...make that list the first element of a higher-level list..." #~ ((foo bar) ... ; to be continued... . nitz quux . meow fish "...get additional sub-expressions at that indentation level and append those additional sub-expressions to the higher-level list" #~ ((foo bar) ... . (nitz quux) . (meow fish) ) ; okay, found end here... Final result: ((foo bar) (nitz quux) (meow fish)) 2. ENLIST-inline: this is when my brain BSOD'ed. Sincerely, AmkG ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Readable-discuss mailing list Readable-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/readable-discuss