News for hackers. Stuff that matters.
Re:The Y Combinator in Arc and Java by parenthesis on Monday March 02, 2009 @06:28PM (#500784)
Please don't conclude that lisp-2 is a bad idea until you've considered that:

• there are disadvantages as well as advantages to lisp-1; and

• there is nothing about lisp-2-ness itself that requires the verbosity of (funcall #'…)-ing in Common Lisp:

Firstly, even in Common Lisp, (funcall (lambda …) …) and (funcall 'car list) are valid. (And many implementations allow ((lambda …) …) — though I can't remember whether the standard defines this.)

Secondly, funcall can be renamed something shorter (e.g. fun).

And finally, for those lispers not against a little syntax, a lisp-2 could define some syntax so that one could write, e.g. (#f …) for (funcall f …) and (##f …) for (funcall 'f …).

Then the above code would be:

  (defun Y (r)
    ((lambda (f) (#f f))
      (lambda (f)
        (#r (lambda (x)
              (fun (#f f) x))))))
etc.. (And we can make it even shorter if we call lambda something shorter, e.g. fn.)
Re:The Y Combinator in Arc and Java by newt0311 on Tuesday March 03, 2009 @02:28AM (#501175)