Ruby Science Foundation
Tools for Scientific Computing in Ruby
We believe that the time for a Ruby science and visualization package has come. Sometimes when a solution of sugar and water becomes super-saturated, from it precipitates a pure, delicious, and diabetes-inducing crystal of sweetness, induced by no more than the tap of a finger. So it is today with numeric and visualization libraries for Ruby.
The SciRuby project is oriented towards providing computational research infrastructure for the Ruby Programming Language. SciRuby consists of a fairly large number of gems, including statsample, statsample-glm, statsample-timeseries, distribution, minimization, integration, rubyvis, plotrb, Nyaplot, MDArray, Publisci, Ruby-Band, daru, and NMatrix.
NMatrix has been awarded grants by the Ruby Association in 2012 and 2015, and has a goal of supplying Ruby with a robust, versatile linear algebra library with support for both dense and sparse matrices. Statsample and its related packages aim to provide Ruby with statistical analysis packages, while daru, nyaplot and gnuplotrb take care of data analysis and visualization. Nyaplot was also awarded the Ruby Association Grant in 2014.
A major portion of our gems have been written by GSoC students — including Nyaplot, daru, plotrb, PubliSci, Ruby-Band, statsample-timeseries, and statsample-glm. Others, like minimization, integration and nmatrix, have been overhauled over the course of Summer of Code projects.
Working on SciRuby is a chance to get involved at the ground floor on a project which is viewed as critical by many Rubyists, including Ruby's creator, Matz. Further, since we are a science-related project, we expect that successful student projects could lead to publications. Better yet, students might get to see their code go into orbit, or used to save lives in biomedical research.
Ruby Science Foundation 2016 Projects
Categorical data support for Daru, Statsample and Statsample-glmIn Data Science acquiring insight from data is what matters and any good data analysis tool must have the key functionalities required to extract...
Create a Ruby Wrapper for NASA's SPICE ToolkitNASA's SPICE toolkit is a collection of subroutines and functions designed to interpret and perform numerical computations on archived data returned...
Port Nmatrix to JRubyNMatrix for MRI has become a fairly well-established project. However with JRuby+Truffle+Graal becoming very fast compared to MRI, a lot of ruby...
Ruby Wrappers for SymEngineThe work proposed is to extend the already available, but limited SymEngine's Ruby interface. This project will greatly increase the computational...