Zigoyal.lua -
While highly praised for ease of use, some advanced users find broad-spectrum wrappers like Ziglua "unpredictable" because they try to support too many versions simultaneously.
: Provides null-terminated slices instead of raw C strings and enforces compiler checks on optional pointers to prevent null-pointer dereferences. zigoyal.lua
(often referred to as Ziglua or associated with Zig-luau ) is a specialized Zig wrapper for the Lua C API, designed to make embedding Lua into Zig programs as "idiomatic" and safe as possible. Core Features and Ergonomics While highly praised for ease of use, some
: Since it is a thin wrapper over the C API, it retains Lua’s reputation for being lightweight and fast. Specialized versions like Luau include performance optimizations such as inline caching , specialized builtin calls, and native vector math support. Critical Perspectives Core Features and Ergonomics : Since it is
“In some cases, the behavior of a functions changes between versions, in other cases the function exists but panics at runtime.” Reddit · r/Zig · 1 year ago Security Warning Introducing Ziglua - Nathan Craddock
: Replaces standard C types with better Zig equivalents (e.g., bool instead of int ) and uses type-checked enums for parameters and return values.
“the natecradock/ziglua language bindings... ultimately quite problematic for me to use. The Zig API exposed in that packages tries to support six different Lua versions, and as a result it is very inconsistent and unpredictable.” Reddit · r/Zig · 1 year ago