Genius (software)
   HOME

TheInfoList



OR:

Genius (also known as the Genius Math Tool) is a free
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
numerical computing environment and
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
, similar in some aspects to
MATLAB MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation ...
,
GNU Octave GNU Octave is a high-level programming language primarily intended for scientific computing and numerical computation. Octave helps in solving linear and nonlinear problems numerically, and for performing other numerical experiments using a langu ...
,
Mathematica Wolfram Mathematica is a software system with built-in libraries for several areas of technical computing that allow machine learning, statistics, symbolic computation, data manipulation, network analysis, time series analysis, NLP, optimizat ...
and
Maple ''Acer'' () is a genus of trees and shrubs commonly known as maples. The genus is placed in the family Sapindaceae.Stevens, P. F. (2001 onwards). Angiosperm Phylogeny Website. Version 9, June 2008 nd more or less continuously updated since http ...
. Genius is aimed at mathematical experimentation rather than computationally intensive tasks. It is also very useful as just a calculator. The programming language is called GEL and aims to have a mathematically friendly syntax. The software comes with a
command-line interface A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
and a
GUI The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
, which uses the
GTK+ GTK (formerly GIMP ToolKit and GTK+) is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License, allowing both free and proprie ...
libraries. The graphical version supports both 2D and 3D plotting. The graphical version includes a set of tutorials originally aimed at in class demonstrations.


History

Genius was the original calculator for the
GNOME A gnome is a mythological creature and diminutive spirit in Renaissance magic and alchemy, first introduced by Paracelsus in the 16th century and later adopted by more recent authors including those of modern fantasy literature. Its characte ...
project started in 1997, but was split into a separate project soon after the 0.13 release of GNOME in 1998. Because of this ancestry, it was also known as Genius Calculator or GNOME Genius. There was an attempt to merge Genius and the
Dr. Geo GNU Dr. Geo is interactive geometry software that allows its users to design & manipulate interactive geometric sketches. It is free software (source code, translations, icons and installer are released under GNU GPL license), created by Hilaire F ...
interactive geometry software Interactive geometry software (IGS) or dynamic geometry environments (DGEs) are computer programs which allow one to create and then manipulate geometric constructions, primarily in plane geometry. In most IGS, one starts construction by putting a ...
, but this merge never materialized. Version 1.0 was released in 2007 almost 10 years after the initial release.


Example GEL source code

Here is a sample definition of a function calculating the factorial recursively
function f(x) = (
  if x <= 1 then
    1
  else
    (f(x-1)*x)
)
GEL contains primitives for writing the product iteratively and hence we can get the following iterative version
function f(x) = prod k=1 to x do k


See also

*
Comparison of numerical analysis software The following tables provide a comparison of numerical-analysis software. Applications General Operating system support The operating systems the software can run on natively (without emulation). Language features Colors indicate ...


Notes

{{Numerical analysis software Array programming languages Free educational software Free mathematics software Free software programmed in C Numerical analysis software for Linux Numerical analysis software for macOS Numerical programming languages Science software that uses GTK Unix programming tools