2016 Grant Accomplishment Report
The following projects have been completed, and their deliverables have been accepted by the grant committee.
This project aims at making Tensorflow.rb completely compatible with Tensorflow C API. Currently many interesting developments are taking place in Tensorflow and by the end of the project all the functionalities of the C API of Tensorflow must be easily accessible from the Ruby API.
Rubex - A new language for writing Ruby extensions
Rubex is basically a superset of the Ruby Programming Language that will allow users to write Ruby C extensions for the CRuby interpreter without having to leave the comfort of Ruby.
To summarize, the objectives of the Rubex project are as follows:
- Provide a Ruby-like syntax for writing C extensions.
- Completely abstract the CRuby C API from the user.
- Allow Ruby code to co-exist with Rubex-specific syntax.
- ltimately generate C code for writing Ruby extensions
Ruby System for Elementary Statistical Analysis
We aim to “make Ruby a practical language in data science” and “develop and build an elementary statistical analysis pipeline”. Although some gems for data science such as Nyaplot or Daru has been developed, these gems are not yet widely used. The main causes are “immatureness of gem cooperation” and “lack of document”. For example, practical examples combining multiple packages are provided with detailed document, and there is no concern about these points in Python. Through the statistical analysis pipeline we will create a guide showing how to combine Ruby gems and how to input, analyze and visualize data. In addition we will improve existing gems and make cooperation between gems easier as well.
Yoshihiro Ashida Yusuke Sangenya Kozo Nishida
Subproject libraries for Ruby/Numo
I’ll implement a linear algebra library and a GSL library for NArray / Ruby Numo. The library numo-lapack will provides direct interface to LAPACK, and equivalent functionality which NumPy’s linalg.