lua-users home
lua-l archive

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


Just another humble opinion from someone who hasn't even used Lua for
anything serious yet:-

All the ideas expressed so far about getting some commercial input into
Lua seem to have one major flaw: they are all about making Lua resemble
the languages that are already established ("Lua could compete with
Rebol", "Lua should have a large standard library like Python does",
"needs a graphical GUI, IDE", etc).

I think Lua's very strength lies in the fact that it DOESN'T have these
features. The philosophy behind Lua is that it should be very easy to
embed and I think this requires it to be minimal but effective
nevertheless.

We have observed that, say, Python CAN be stripped down to a minimal
implementation which can be embedded. But embeddability is not exactly
Python's forte and is a relatively minor design issue in the language.
For example, I doubt that Python could boast that it is "written in
ANSI C, and compiles unmodified in all known platforms". You can't just
pick Python up and drop it into your app.

Lua, on the other hand IS specifically designed to be embeddable. I
think this is what the authors intended it to be all along and this
strength is what should be developed in the future. There is no point in
adding features that are common in other languages (at least we
shouldn't treat this as high priority) because we will simply end up
re-inventing Python or Perl or Rebol. As programmers, we are all
concerned about avoiding unnecessary code duplication, and this is code
duplication of the worst kind: open source projects competing for the
same niche!

It will take considerable creative effort to preserve Lua's fresh and
distinctive spirit because (I think) it is the first language whose
syntax and implementation are specifically designed for "extreme"
embeddability above all else. But if we put respectability above
embeddability, then we will end up with another Python. Don't get me
wrong, Python is great, but we don't need two of them!

&.