[ANN] Suravi 0.6 alpha release

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[ANN] Suravi 0.6 alpha release

Dibyendu Majumdar
Suravi (https://github.com/dibyendumajumdar/Suravi) is a small
distribution of Ravi/Lua 5.3 with batteries such as cjson, lpeglabel,
luasocket, moses, penlight, torch7, luv, luaossl. I am pleased to
announce that a new release 0.6 alpha is available
(https://github.com/dibyendumajumdar/Suravi/releases/tag/0.6).

The goal of Suravi is to create a harmonious set of batteries for
Ravi/Lua 5.3. This goal is not yet achieved, as the libraries included
have some overlapping functionality, and some key areas are not yet
covered. However a start has been made to unify the documentation
here: https://github.com/dibyendumajumdar/Suravi/tree/master/Documentation

I am also pleased to announce that a Docker image for Suravi (with
Ravi) is now available, and if you have Docker installed then this is
the easiest way to try out Suravi.

docker pull redukti/suravi:latest
docker run --rm -it redukti/suravi:latest

Important Changes in this release:

* Ravi now uses the MIR JIT backend on Linux systems. This is a major
step forward for Ravi as MIR is a really small but high performance
JIT backend.

* All dependency on 'ffi' has been removed. 'ffi' was a source of
instability in Suravi; and several Torch libraries relied on it. I am
pleased to say that after some effort the use of ffi has been
eliminated. As a result the luaffi library has been dropped.

There is considerable work that remains to be done. It takes
significant effort to test all the libraries and then fix issues on
the three supported platforms - Win64, Linux and Mac OSX. This is
partly why Suravi only includes a small set of libraries.

Right now binaries are not distributed except as a Docker image. Win64
binaries will be added in the next few days.

I would welcome any help or feedback from the Lua community in improving Suravi.

Regards
Dibyendu

Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Suravi 0.6 alpha release

Dibyendu Majumdar
I forgot to mention that the Lua 5.3 distribution in Suravi has
following interesting (to me at least!) changes:

* 'defer' statement is available
* The enhanced Lua parser can skip Ravi annotations, thus allowing Lua
to execute Ravi scripts. Ravi library extensions are not available
yet, but I hope to add a compatibility library in the future.

Regards

On Sat, 18 Jan 2020 at 23:36, Dibyendu Majumdar <[hidden email]> wrote:

>
> Suravi (https://github.com/dibyendumajumdar/Suravi) is a small
> distribution of Ravi/Lua 5.3 with batteries such as cjson, lpeglabel,
> luasocket, moses, penlight, torch7, luv, luaossl. I am pleased to
> announce that a new release 0.6 alpha is available
> (https://github.com/dibyendumajumdar/Suravi/releases/tag/0.6).
>
> The goal of Suravi is to create a harmonious set of batteries for
> Ravi/Lua 5.3. This goal is not yet achieved, as the libraries included
> have some overlapping functionality, and some key areas are not yet
> covered. However a start has been made to unify the documentation
> here: https://github.com/dibyendumajumdar/Suravi/tree/master/Documentation
>
> I am also pleased to announce that a Docker image for Suravi (with
> Ravi) is now available, and if you have Docker installed then this is
> the easiest way to try out Suravi.
>
> docker pull redukti/suravi:latest
> docker run --rm -it redukti/suravi:latest
>
> Important Changes in this release:
>
> * Ravi now uses the MIR JIT backend on Linux systems. This is a major
> step forward for Ravi as MIR is a really small but high performance
> JIT backend.
>
> * All dependency on 'ffi' has been removed. 'ffi' was a source of
> instability in Suravi; and several Torch libraries relied on it. I am
> pleased to say that after some effort the use of ffi has been
> eliminated. As a result the luaffi library has been dropped.
>
> There is considerable work that remains to be done. It takes
> significant effort to test all the libraries and then fix issues on
> the three supported platforms - Win64, Linux and Mac OSX. This is
> partly why Suravi only includes a small set of libraries.
>
> Right now binaries are not distributed except as a Docker image. Win64
> binaries will be added in the next few days.
>
> I would welcome any help or feedback from the Lua community in improving Suravi.
>
> Regards
> Dibyendu