lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On Tue, Nov 14, 2006 at 12:21:27PM +1100, Mike Kreuzer wrote:
> Sure, there are bindings & wrappers, but so far the ones I've looked at
> (& I haven't investigated yours) either act with the same carte blanche
> with regard to changing their APIs, or they don't update at all.
> Not updating seems to be a popular choice, but what possible goal
> could be achieved by fragmenting the user base between different
> versions of the language?

(A goal--as I see it, at least--is to avoid bloat.  You describe a side-
effect.  The above is like saying  "what possible goal could be achieved
by stubbing your toe?" to someone who wasn't wearing shoes and, as a
side-effect, stubbed his toe.)

> OK, I'll up the ante with Santa.  Now I'd now like backwards
> compatibility for Christmas as well.  From version 5.1, any 5.1 script
> should run in any future version of Lua.  If the language is mature, and
> I think it is, then it's time to say so.
> The Oxford English Dictionary has a very simple rule for deleting a word
> once it's in the dictionary:  They don't.  I think we should adopt the
> same approach with language features.  It might concentrate minds a bit
> when new features are being considered.

This is the "feature bloat" approach: once a feature is added, it's
stuck in the code, even when it serves no purpose but backwards
compatibility, and even when that compatibility causes code bloat,
design bloat--you have to design around the need for those features,
forever--and maintenance bloat--you have to test these features and
keep them working.

I don't want a Lua where luaL_checkudata has to always return NULL for
backwards compatibility, even though the rest of the check* functions
throw errors.  I want a Lua that's consistent today, even if it means
more work to upgrade.  I don't want these deprecated functions and
features to stick around in the code and headers and documentation
forever; I want them to go away.

I don't want Lua's evolution stunted by backwards compatibility.

Glenn Maynard