Lua: Good, Bad, and Ugly Parts

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • luau

    A fast, small, safe, gradually typed embeddable scripting language derived from Lua

  • It is nice small, so Lua even ran on Playstation 3 SPU!

    We used to ship lua binaries for the premake build system.

    For me, the indexed from 1 rather than 0 is a big turn off.

    Roblox has the mlua fork, https://github.com/Roblox/luau

  • lua-cmake

    Embed lua with CMake

  • Lua is a very nice piece of technology. Its source code is pretty easy to get into, the documentation is complete.

    It has its quirks yes, but if I need to add scripting to a software, I'd consider Lua before considering writing a DSL, simply because you can pretty much embed Lua's source in your C/C++ software as a static library[0].

    The stack-based approach makes it so easy to interact with C/C++, and I've been looking at the Rust bindings[1] recently out of curiosity, looks promising.

      [0] - https://github.com/lubgr/lua-cmake

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • rlua

    High level Lua bindings to Rust

  • [1] - https://github.com/amethyst/rlua/blob/master/examples/guided_tour.rs

  • mlua

  • I believe mlua [0] is the recommended Lua Rust binding now.

    [0] https://github.com/khvzak/mlua

  • piccolo

    An experimental stackless Lua VM implemented in pure Rust (by kyren)

  • gopher-lua

    GopherLua: VM and compiler for Lua in Go

  • fengari

    🌙 φεγγάρι - The Lua VM written in JS ES6 for Node and the browser

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • moonsharp

    An interpreter for the Lua language, written entirely in C# for the .NET, Mono, Xamarin and Unity3D platforms, including handy remote debugger facilities.

  • lua-lockbox

    A collection of cryptographic primitives written in pure Lua

  • lanarts

    lanarts is an open source RPG that attempts to play like a real-time rogue-like

  • I looked at many options, what I lacked when I looked in this space is a big comparable project to, say, my game engine https://github.com/lanarts/lanarts that uses one of these typed Lua's. I'm not in a position where I can spend the time being the first - typescript has very mature idioms for large code bases

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts