4 ms·
Can you explain what you mean by "connectness over convenience", here? I find Lua to be much less so than Python, which has heavy-handed ideas about what isn't
by silentbicycle 17y ago
Can you explain what you mean by "connectness over convenience", here? I find Lua to be much less so than Python, which has heavy-handed ideas about what isn't "Pythonic". With Lua, the elements I suspect you're referring to are because the language is targeted at making embedding convienient - for example, there's no threading in the core language because concurrency decisions will probably be decided by the project Lua is running inside.
Also, the small and completely portable standard library keeps it small enough to trivially embed. One common response to wanting a batteries-included Lua to be standard is essentially, "If you want Python, you know where to find it." (There are such distributions, such as Lua for Windows (http://luaforwindows.luaforge.net/ http://luaforwindows.luaforge.net/), they're just not the primary one.)
- lg 17y agoMaybe that explains it. What I mean is things like Lua doesn't have a popen in its standard library that lets you both read and write to the subprocess, because there's a case where this can break (if what you're sending over the pipe is bigger than some internal buffer). Ruby and Python both let you do this, even with the potential for breakage, but Lua prefers correctness over convenience. A lot of the library calls in Lua seem closer than I'd prefer to the underlying C, because they don't want to provide abstractions over it that could break (even if the case where it breaks is something you'd never do). I guess this is because they don't know where it could end up getting embedded, but that kills it as an everyday scripting language for me.