[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Y Store now C++
[Daniel Weinreb]
>
> Michael Vanier wrote:
>
> >Why not just make this behavior deprecated? Then anyone who uses "foo" for
> >both a function and a variable name will see a warning message and will
> >know what to change. This strategy has worked well for other languages
> >(java, python come to mind).
> >
> Sure, you can make it deprecated. On what date are you going to stop
> supporting it, and
> break Macsyma? Sorry, in the real world it's a lot harder to make
> incompatible changes
> like that.
Unattended source-to-source transformation is fairly
easy in s-exp-based languages. It may well be one of
the selling points of such languages. For this reason,
I doubt that Lisp2 is being reluctantly tolerated
merely for backward compatibilty. I should think
people actually want it, and for new programs. The two
reasons I have heard consistently offered by Lisp2
partisans are
(a) they want to use "natural" variable names like
`list' (although the unavailability of `t' seems OK)
without worrying that it will clash with function
names, and
(b) defmacro-based macros (allegedly) risk no or
fewer variable-capture problems.