> IMO a much simpler treatment is "if the list is improper, use nfx" > without counting anything.
I've modified my proposal to say improper end == length 0. I think saying *either* "proper only" or "improper end length=0" is a similar level of complexity. There's no efficiency issue. We have to walk the list anyway to determine if we have the right symbols and length, and anybody who sticks THAT many operators in an infix list is crazy. > So in order for the "alternating symbol" rule to trigger: > > 1. The contents should be a proper list > 2. The list should have an odd number of elements My proposal is to NOT say "proper" and instead append to #2 "(an improper end has length 0)" > 3. The even elements (counting the first element as odd) should be > the same symbol, as compared by eq? and must return true when applied > to the symbol? predicate I said "the same" in the spec, by which I *meant* eq? if you use Scheme. I didn't _say_ "eq?" because this specification is supposed to work on any Lisp, and different Lisps have different names for this predicate. I similarly didn't say "symbol?" because other Lisps call that predicate different names. But you make a good point, it needs to be clear. I don't think there's a problem with the word "symbol", but everyone has multiple equality predicates, and we need to make that obvious. I've tweaked the specification to clarify this (I don't think is a "new" spec, it's just a clarification of what it already says), so that it now says: (3) all even parameters are the same symbol (aka eq? or eq) If our primary argument is over {a + b . z} we're doing well :-). --- David A. Wheeler ------------------------------------------------------------------------------ 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