[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Lua is about to become history
- From: Bret Victor <bret@...>
- Date: Thu, 4 May 2006 09:14:02 +0000 (UTC)
> I think you have to be very careful about making this case. How
> tolerant of backwards-incompatibility do you thing the Lua user base
> would be if the Lua authors modernized the language to support
> zero-based array and string indexing?
I believe that one-based indexing was very intentional.
Most people (who haven't had their minds warped into
conflating ordinals with pointer offsets) expect the
third item in a list to be #3. That's certainly what my
grocery list looks like. Lua was designed to be usable
by these people.
But even so, zero-based array indexing would be a
minor change in comparison with, say, throwing out the
preprocessor, replacing tag methods with metatables,
replacing upvalues with lexical scoping, scooping
global functions into packages, overhauling the
C API, etc. etc. Even the 5.0 -> 5.1 incompatibilities
are beyond what many language communities would
tolerate. Making changes of that scope to Javascript
would break the world.
Imagine a Lua that was forced into preserving tag
methods and upvalues and arg and the rest of the
obsolete cruft for fear of breaking a large installed
base of programs. Actually, you don't have to imagine;
it's called "Perl".
-Bret