Lumars 1.1.1 & Lumarsh 0.2.2

russhy russhy at gmail.com
Fri Nov 26 14:32:55 UTC 2021


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

-


More information about the Digitalmars-d-announce mailing list