gsl-shell-info
[Top][All Lists]
Advanced

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

Re: [Gsl-shell-info] question and status of gsl-shell


From: Isaac Xin Pei
Subject: Re: [Gsl-shell-info] question and status of gsl-shell
Date: Tue, 29 Jan 2013 10:06:32 -0500

hi Francesco,

Thank you for such a nice reply with so many interesting points.

You mentioned 'putting the ML in copy", were you referring to Machine Learning or something else? actually that's another front got me really interested in luajit - whenever it's computation intensive, the lightweight of lua/luajit will stand out among other languages, I noticed this torch also: https://github.com/andresy/torch

For some reasons (maybe historical), Lua doesn't have the comprehensive package support like in python and ruby, and definitely less exposed like the two.my history started with perl (biology), then I became very interested in ruby, tried to avoid python, taking up Lua due to some constrains that I had,  but recently circle back as python ... Though everything are mostly analyzed in R (in my case), python is serving as the glue of different things. 

So the question I have is: given lua's speed and better design (in my opinion), it's the future, but how can we have an ecosystem? just speaking out loud: it might be hard for lua to compete with python in their python ground: (ipython project recently got ~1 million $ grant) and there are many research groups, organizations/corporation back it up.

Gsl-shell is a wonderful idea (& your great choice of using luajit and implementation). Torch might be another one. but my question is how/where we shall position for future development? Graphics is definitely one, but implementing something like matlab/octave/R/Sage though doable, but may not be a worthwhile effort (it will be just a copy the thing).

my thought would be some ecosystem where we can plugin gsl-shell/luajit (honestly I don't know much about gsl-shell, just tried some plot and amazed by it). Ideally that ecosystem would be using lua as it's main language platform, but if not, luajit/gsl-shell shall provide a superior user experience (productivity & speed) ... 

while I am writing, ...just a thought: why not a better modern data analysis 'shell'? ipython is nice, but I still think there are much room to improve it. maybe some artificial intelligence built into gsl-shell to pattern recognizing user's input, script, to extract functionality; providing automatic resource allocation (online searches, suggestions)... And it will be great if we can interface somehow gsl-shell and R easily, using gsl-shell as shell,and R as some back end? ...these are just some random thoughts. 

can not wait to check out your gdt module. I will start to hack more of gsl-shell and hope to be able to contribute as much as I can, is the module in github? if so, I can also help with bugs etc as well.

BTW, some other interesting front I saw: http://moonscript.org/ it seems very promising and would be a very productive language to write lua.

Thanks again for starting this interesting project.

 Best regards,
   Isaac 




On Mon, Jan 28, 2013 at 4:25 PM, Francesco Abbate <address@hidden> wrote:
2013/1/28 Isaac Xin Pei <address@hidden>:
> hi Francesco,
>
> I am a researcher working a lot on data analysis in R etc, but constantly
> looking for better tools. I had been very interested in lua and used it here
> and there for a while. I was quite excited to see your gsl-shell project
> several month ago, but didn't have much time to evaluate it.

Hi Isaac,

I'm glad you are interested in GSL Shell. I'm putting the ML in copy,
may be other people will be interested.

> I am curious about the status of the project, such as whether it's still
> being actively developed, and are there many contributors to it. If I would
> like to contribute in coding/building up pakages, where shall I start.

GSL Shell is currently actively developed but it is mainly the effort
of a single person, me. A few other people have made some precious
contributions but I'm currently the only main developer of GSL Shell.

If you want to contribute to GSL Shell you are very welcome. There is
a lot of interesting things to do, you have the choice based on your
background and your interests, just let me know.

> lastly, how does gsl-shell compare with the python toolkit (ipython, scipy,
> numpy)? the python group has been popular, but I think Luajit speed might
> make a lot difference when coming to performance.

The python project you are talking about are actively developed by a
lot of talented people and they have a lot of features that GSL Shell
does not have. Yet I believe that GSL Shell is interesting because it
is based on an excellent programming language, Lua, and because
LuaJIT2 a very effectively JIT compiler. With LuaJIT/GSL Shell you can
write complex algorithms and they can run, in many cases, to a speed
comparable to optimized native code or better. Python is generally
much more slower and it does have a bigger footprint.

I'm also very proud of its graphical plotting system and its light
footprint compared to other systems. I've also made a lot of works to
offer a very good quality of the plots and to design a simple API for
its utilisation. I've also added a function to export plots in SVG
format so that plots can be easily used outside of GSL Shell itself
with a good level of quality.

There is also something new that I'm going to release in the next
weeks may be, the General Data Table (gdt) module. This is the
equivalent of the data frames in GNU R and I believe it will be
incredibly useful in GSL Shell, just likes data frames are useful in
GNU R.

The gdt module can be already used, it is in the "gdt-new" branch of
the git repository at github. Probably I'm going to release this new
feature very soon.

I was glad that you gave me the opportunity of talking about this new
feature I'm working on :-)

Best regards,
Francesco



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Isaac Xin Pei,
- "A word fitly spoken Is like apples of gold in network of silver. " Proverbs 25:11

reply via email to

[Prev in Thread] Current Thread [Next in Thread]