Relative merits of Lisp-1 vs. Lisp-2?



What are the relative merits of a Lisp-1 (one namespace for both
functions and variable) versus a Lisp-2 (one namespace for functions,
and one for variables)? I can think of the following:

For Lisp-1:
* No #'
* It's always clear what a name refers to; can't do potentially
confusing things like (foo foo)
* Somewhat simplified language description, somewhat simplified
implementation

For Lisp-2:
* Can't accidentially shadow function names (especially important for
safe non-hygienic macros)
* The size of the namespace is doubled, because you can reuse each
name twice

Looking at the above lists, I would tentatively choose Lisp-2, since
the arguments for Lisp-1 are mostly aesthetic, and the arguments for
Lisp-2 are quite practical. But, what do you think? Are there any items
you would add to the lists?

.



Relevant Pages

  • Re: LISP
    ... Lisp-2 over Lisp-1. ... Clojure that are not perfect. ... specfically with lists, have exactly one parameter which is supposed to ...
    (comp.lang.lisp)
  • Re: Relative merits of Lisp-1 vs. Lisp-2?
    ... For Lisp-1: ... For Lisp-2: ... The size of the namespace is doubled, ... (define (deriv f x delta-x) ...
    (comp.lang.lisp)
  • Re: Relative merits of Lisp-1 vs. Lisp-2?
    ... For Lisp-1: ... For Lisp-2: ... The size of the namespace is doubled, ... In a class definition, it is quite common to give an accessor the same name as the slot it accesses, like this: ...
    (comp.lang.lisp)
  • Re: LISP
    ... Lisp-2 over Lisp-1. ... looks like just another ruse to get people to look at Clojure code. ... a language which has only a variable ...
    (comp.lang.lisp)
  • Re: LISP
    ... I was always talking about CLs reader macro #' for FUNCTION. ... Lisp-2 over Lisp-1. ... Clojure that are not perfect. ...
    (comp.lang.lisp)