/sonata

Mathematics in console

Primary LanguageLuaGNU General Public License v3.0GPL-3.0

so/\/ata

Sonata is a mathematical library and console based interpreter for solving different problems. The program is written in pure Lua language and can be called on each platform where the Lua is installed. It is designed to be a handy tool for simple calculations and modeling.

Screenshot

Features

  • Pure Lua code (high portability)
  • Variety of modules
  • Template generation for new modules and localization files
  • Standalone mathematical library

Getting started

To run the Sonata clone the code and call

lua sonata.lua

To get a brief introduction, call

lua sonata.lua notes/intro.note

Use flag -h to see additional options:

lua sonata.lua -h

Structure

Main components:

  • core - interpreter, help and test systems, other program specific elements
  • matlib - collection of mathematical modules
  • sonata.lua - program configuration and loading

Additional components:

  • about - system info
  • locale - localization files
  • notes - predefined interactive files

Dependencies

Sonata works in Lua 5.x interpreter, version 5.3+ is preferable.

Module dependencies:

  • gnuplot.lua requires gnuplot program to be installed
  • graph.lua uses graphviz for image generation