3 ms·
> If you are making an application from scratch using just the stand-alone interpreter, your scripts and a bunch of dependencies from the internets, use Python.
by pansa2 6y ago
> If you are making an application from scratch using just the stand-alone interpreter, your scripts and a bunch of dependencies from the internets, use Python. People work really hard to make this semi-viable in Lua, but it is a path of frustration.
It's unfortunate that Lua doesn't work well for this. The Lua implementation's light weight, portability and robustness [0] seem ideal for building these applications - especially for building applications that can be distributed to end-users (a scenario which is not a focus of Python [1]).
Obviously Lua is never going to include a large standard library because that conflicts with its embeddability. However, even in the Python community, “batteries included” is no longer considered entirely beneficial [2]. Instead, I think Lua would benefit from a set of officially recommended external libraries. This would improve the situation for people trying to write standalone applications in Lua, and I believe it would also help those who are writing scripts targeting embedded interpreters.
[0] https://www.lua.org/bugs.html https://www.lua.org/bugs.html
[1] https://twitter.com/gvanrossum/status/1347045076401147904 https://twitter.com/gvanrossum/status/1347045076401147904
[2] https://lwn.net/Articles/790677/ https://lwn.net/Articles/790677/
- pull_my_finger 6y agoHaving a set of "blessed" libraries has definitely been discussed on the mailing list. Also there are plenty of "distributions" like Lua for Windows[1], LuaPower[2], or runtimes like Luvit[3] that add features ootb. That said - the Lua ecosystem in 2021 is not the same as it was in 2005 or whenever people compare it to. There is a healthy amount of Libraries and choices of libraries for solving most tasks on Luarocks. And I would suggest you produce a better end project by selecting which libraries are included in your project that uses Lua for scripting. You can even further remove your choice of the libraries that _are_ included ootb. [1] - https://github.com/rjpcomputing/luaforwindows https://github.com/rjpcomputing/luaforwindows [2] - https://luapower.com/ https://luapower.com/ [3] - http://luvit.io/ http://luvit.io/