On Friday, 26 November 2021 at 11:11:20 UTC, SealabJaster wrote:
# Lumars

Lumars is a high-level wrapper around the Lua API. It only targets Lua 5.1 because of LuaJit. It bundles a precompiled version of LuaJit for Windows and Posix x86_64 machines to make it easier to include.

The main highlight of the latest release is the ability to create EmmyLua-annotated code, allowing you to automatically generate up-to-date documentation for your D-side functions, that lua plugins can digest to allow for intelisense. (it has a long way to go still, but this is at least a start for it).

https://github.com/BradleyChatha/lumars

# Lumarsh

You could describe it as a "single-binary, batteries-included Lua distro" that aims to provide a decent built-in library for Lua scripts to consume. Personally, I dislike bash, and I like Lua, so I want to use Lua wherever possible >:3

Lumarsh also has support for luarocks, so you can still use external libraries if needed.

Because it's powered by Lumars, it was [very easy](https://github.com/BradleyChatha/lumarsh/blob/master/source/api/path.d) to expose some select Phobos modules for Lua to use.

`dub run lumarsh -- args` is the easiest way to mess around with it.

I haven't actually written the code to generate the EmmyLua stuff yet, but that's because I'm amazingly lazy at times (it should only take 5 mins at most).

https://github.com/BradleyChatha/lumarsh

They're both still pretty rough around the edges, and definitely have some usability issues, but I feel they're both ready for others to experiment with at least.

Nice projects! thanks for sharing

One tip:

- avoid "import std", makes compile time increase for nothing
- https://github.com/BradleyChatha/lumars/blob/master/source/lumars/emmylua.d#L3 - https://github.com/BradleyChatha/lumars/blob/master/source/lumars/function_.d#L4 - https://github.com/BradleyChatha/lumars/blob/master/source/lumars/state.d#L3 - https://github.com/BradleyChatha/lumars/blob/master/source/lumars/table.d#L3

-

Reply via email to