From: Elliot Temple Date: 2006-06-04T01:17:43+09:00 Subject: Re: Can you do Lisp-like macros in Ruby? On Jun 3, 2006, at 8:19 AM, Mat Schaffer wrote: > I do agree that Lisp has some neat tricks, but it made my eyes hurt > trying to figure out where all the parens in that code started and > stopped.... most of the parentheses can be ignored because the whitespace contains the same information. like in ruby we use whitespace to read nested do/end blocks. for the paren that can't be ignored, the information is necessary to prevent ambiguity about grouping things together. all languages have to express that information somehow. ruby does foo(bar(x,y),z) and lisp does (foo (bar x y) z) Those are almost the same (all the identifiers are in the same order (prefix, not infix, for both lisp and ruby)). the lisp version is IMO a little nicer. certainly nothing worth hating. ruby does other things as well, like using dots: "c,b,a".split (",").sort.join. maybe that is even nicer. lisp could do that too, if you wanted it to. -- Elliot Temple http://www.curi.us/blog/