lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Since some of the GSL Shell users may not monitor LuaJIT mailing list,
I forward below (with Francesco permission) the announcement of the
GSL Shell version 2.3.


---------- Forwarded message ----------
From: Francesco Abbate <>
Date: Thu, Apr 11, 2013 at 5:36 PM
Subject: [ANN] gsl shell 2.3.0 beta1
To:, luajit <>

Hi all,

I'm glad to announce the beta release of GSL Shell 2.3.

This latter brings an important new feature, a new type of tabular
data with named columns that can contain strings or numeric data. I
have named these kind of tables "general data tables" and it is
abbreviated to "gdt".

GDT are very similar to GNU R's data frames and are very useful to
store data for further analysis. Many functions are available to work
on GDT tables and can be grouped in:
- statistical functions, mainly gdt.lm for linear fit
- plotting functions
- table manipulations (filtering, adding columns, etc.)

The linear fit function gdt.lm is almost exactly the same of the GNU
R's function with the same name.

The plotting functions are very interesting since I've introduced a
declarative language to easily create plot based on data tables. For
example you can write something like;

gdt.plot(t, "thickness ~ time | tool")

to easily create a lineplot with several lines for each "tool". The
fields you refer to into the expression corresponds to the variable's
name of the table.

The statistical functions with the plotting functions together are
extremely powerful and they offer the better of Excel's pivot tables
(without interactivity) and GNU R's functions in a single tool.

In addition it is also possible to create plots with stratified labels
for nested factors. This is extremely useful to plot data based on
multiple factors and is on the par with Excel.

All the new function about GDT table are documented in a specific
chapter of the user manual:

Otherwise, please consider that this is a beta release and some things
are still missing and there are still some rough edges but I hope I
will be able to fill the gaps for the final 2.3 release.

Any feedback will be greatly appreciated. The new user manual is
already published:

and the binary packages are available here:

The source code is available on github, as usual:

Best regards