Arc Forumnew | comments | leaders | submitlogin
1 point by evanrmurphy 3503 days ago | link | parent

Another reason it makes sense to decouple numbers in particular from their symbols is that it indirectly solves the '! vs. 'alref problem we've had with association lists (another valient hack by aw [http://awwx.ws/alistcall]). Basically the problem has been, how do you cleanly implement !-alrefs for alists when there is the special case of al!n if n is a number? [http://arclanguage.org/item?id=78] While it's tempting to think this points to an issue with using '! for alists, in my mind the issue actually roots itself with numbers being inseparable from their symbolic representations. Only for numbers does 'n evaluate to n unconditionally, and as soon as you let them be independent, then everything falls into place with al.n returning the nth cadr of al as it always does for lists and al!n now able to do an alref on the symbol 'n.