[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Y Store now C++
Sundar Narasimhan wrote:
> what I meant
>to say was more like: I have no problem w/ new languages, it's just
>that I think people could also work fruitfully extending/fixing
>existing ones
>
(In fact, there is a lot of work going on into fixing/improving Java.
Some areas of interest
now are: adding a real and good "enumeration" feature; making it more
suitable for high-performance
numerical computation; fixing flaws in the memory model involving the
rules for
multiple threads accessing the same data (I think the name of the guy
responsible
for the really good work here is William Pugh); and adding parameterized
types.
It's happening slowly, partly because of compatibility considerations
and partly
because the designers are taking extreme care about precise semantics.
I and
some of my friends speculate that the pace of language innovation may be
speeding up due to competition with C#.)
>So what are the hacks that constrain you in Common Lisp -- that you
>couldn't fix within the language?
>
Having separate "value cells" and "function cells" (to use the "street
language" way
of saying it) was one of the most unfortuanate issues. We did not want
to break
pre-existing programs that had a global variable named "foo" and a
global function
named "foo" that were distinct. We at Symbolics were forced to insist
on this, in
the face of everyone's knowing that it was not what we would have done
absent
compatibility constraints. It's hard for me to remember all the specific
things like this,
but if we had had fewer compatibility issues, I think it would have come
out looking
more like Scheme in general.