[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Lua and backwards compatibility - was Re: [ANN] Lua 5.3.4 (rc2) now available,
- From: Dibyendu Majumdar <mobile@...>
- Date: Thu, 12 Jan 2017 00:02:49 +0000
On 11 January 2017 at 21:06, Hisham <firstname.lastname@example.org> wrote:
> On 11 January 2017 at 17:08, Roberto Ierusalimschy
> <email@example.com> wrote:
>>> Please, do not make such a severely breaking change in a 5.3.x release.
>> We did not realize that. It will be corrected.
> Thank you! :)
I was wondering if it is possible to consider making strong backwards
compatibility guarantees for Lua from 5.3 upwards. I think this will
mean some constraints to Lua's development obviously, but it would
strengthen Lua 's ecosystem.
The strongest argument I could make is that Lua is built on C, and
imagine how difficult it would have been if C had kept changing in
incompatible ways every few years, and all new C compilers stopped
supporting older versions of C.
The other argument for a compatibility promise is to try and bring
everyone up to 5.3 at least. If the language again changes in an
incompatible way that then you will end up with users in 5.1, 5.2, 5.3
and future versions. I think this fragmentation is not beneficial to
I was thinking initially of requesting that "Lua be frozen" as a
language ... but that is maybe too radical a thought.
I think we can see from experience that languages that have done this
- i.e. maintained strong backwards compatibility - such as C, C++,
Java, C#, Go, have all benefited from it. We see also the struggle
being faced by Python moving everyone to 3.x, and similarly the
fragmented ecosystem of Lua.