Luerl - have you used it?

If so, where/how and what do you like about it? :003:

Created by @rvirding :smiley:

Luerl is an implementation of standard Lua 5.3 written in Erlang/OTP.

Lua is a powerful, efficient, lightweight, embeddable scripting language common in games, IoT devices, AI bots, machine learning and scientific computing research.

It supports procedural, object-oriented, functional, data-driven, reactive, organizational programming and data description.

Being an extension language, Lua has no notion of a “main” program: it works as a library embedded in a host simple called the embedding program. The host program can invoke functions to execute a piece of Lua code, can write and read Lua variables, and can call Erlang functions by Lua code.

Through the use of Erlang functions, Luerl can be augmented to cope with a wide range of different domains, creating a customized language sharing a syntactical framework.

Luerl is implemented as a library, written in clean Erlang/OTP. For more information, read the documentation and follow the get started tutorial. You may also browse the examples and learn from the luerl_demo source code

3 Likes

Luerl is awesome, highly recommended for a scripting language.

1 Like

are there any ways to debug it or have some repl in this lua?

2 Likes

Not that I’ve ever tried? But haven’t had issues with it yet for being a scriptable access checker in one of my systems so far.

1 Like

I have experimented with writing a simple repl similar o the one that comes with Lua which would allow you to evaluate Lua directly. It has not been released yet, but maybe one day.

4 Likes

Just here to say Thank you for Luerl. And that a Luerl REPL still really sounds interesting :wink:

2 Likes

OK, I will try and make a usable one. :wink:

4 Likes

Currently using it for a plugin system. Quite useful, especially when it comes to isolating effects of plugins on the system as a whole and on each other.

1 Like

I’d like to join the list of people thanking @rvirding for luerl.
Currently testing luerl as a scripting language for industrial IoT digital device twins event driven applications.
We are investigating its scalability handling a large number of instances on smart metering applications; it works well and it’s pretty robust, though debugging crashing luerl scripts is not straighforward.

3 Likes

Yes I know. The reason is that the Luerl VM wasn’t really designed for debugging. :smile: One of these days I will get around to fixing it.

4 Likes

I’ve found it useful to preload a utility tables with helpers. I’ve exposed the logger with a term formatter and it makes debugging by print much smoother :slight_smile:

1 Like