[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: ActiveState seeking Lua community feedback
- From: "Tony Papadimitriou" <tonyp@...>
- Date: Tue, 8 Nov 2016 16:23:03 +0200
To add my own thoughts on this.
IMHO, ActiveState could potentially help Lua's wider acceptance (and,
therefore, their own business as a percentage of that) if they can provide
the following as a minimum:
A single executable (static build -- no DLL hell) of the latest Lua version
with all patches already applied, and one that also includes some
can't-do-without core libraries on which to build upon with only pure Lua
libraries. One that requires zero installation (other than to copy it
somewhere in your path).
The inclusion of a 'mix' of core libraries will allow Lua to be used for Web
related apps, e-mail, telnet for IoT device configuration, and databases,
etc as a minimum.
(They might also provide a 5.1 equivalent version if they feel the audience
for that version is -- or going to remain -- too big, but I don't think they
should be stuck in just that version -- a dead-end.)
I already have a build of Lua (both for Windows and Linux) that,
unfortunately for now, at least, includes just two libraries -- LFS and
SQLite3 (lsqlite3).
What it lacks is some networking capability (and that makes me use Python
for those apps that need it). Although Python is a very powerful language,
I believe Lua is equally powerful with less syntax to remember.
Why did I not include networking? Because all of the available network
modules I found on the net (e.g., luasocket) are either too time consuming
to figure out how to correctly integrate (statically, not as DLL) into my
single executable Lua, or are not even compatible with Lua 5.3, insisting on
a 5.1-only compatibility, or always being too late to catch up with the
latest version. If Lua 5.4 comes out tomorrow, I would like my whole system
to follow -- instead of some modules forever keeping me back to an older
version. And, I'm not willing to invest too much time trying to solve this
problem when there are alternative tools to do the job (i.e., Python).
Although not my top priority, it would also be nice to include some core UI
API (at for least for Windows, and hopefully also for Linux) so that one
could create simple UI forms for those who do not like command-line only
interfaces in their apps.
Some people may call what I describe a Lua with batteries included. But,
the trick is to figure out just which 'mix' of batteries is enough to keep
the 'core' usable for a variety of applications without unnecessarily
bloating it. The criterion (in my view) is very simple: if whatever
functionality is required for one's app can be achieved with just pure Lua
code, this functionality should be left out from the Lua binary, and
provided (or left for the end user to provide -- if not popular enough) as
pure Lua code -- source or compiled (if one does not wish to release the
source).
Ideally, the Lua binary should not require any external non-Lua modules to
be able to do with just Lua code pretty much anything Python can do with
just Python code.
If ActiveState could provide such a version, it would be a winner in my
eyes.
Thanks for listening.