www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Lumars 1.1.1 & Lumarsh 0.2.2

reply SealabJaster <sealabjaster gmail.com> writes:


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



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.
Nov 26 2021
next sibling parent Imperatorn <johan_forsberg_86 hotmail.com> writes:
On Friday, 26 November 2021 at 11:11:20 UTC, SealabJaster wrote:


 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.

 [...]
Cool! 😍
Nov 26 2021
prev sibling parent reply russhy <russhy gmail.com> writes:
On Friday, 26 November 2021 at 11:11:20 UTC, SealabJaster wrote:


 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



 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 -
Nov 26 2021
parent SealabJaster <sealabjaster gmail.com> writes:
On Friday, 26 November 2021 at 14:32:55 UTC, russhy wrote:
 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

 -
;3 I was being lazy.
I'll fix them up though.
Nov 26 2021