# &appname; Manual

1997-2006
Jiri (George) Lebl
2004
Kai Willadsen

&legal;

Jiri
Lebl
University of California, San Diego

     jirka@5z.com

Kai
Willadsen
University of Queensland, Australia

     kaiw@itee.uq.edu.au

This manual describes version &appversion; of &appname;.

## Feedback

To report a bug or make a suggestion regarding the &app; application or this manual, follow the directions in the GNOME Feedback Page.

## Introduction

The &app; application is a general calculator for use as a desktop calculator, an educational tool in mathematics, and is useful even for rudimentary research. The language tries to be more ‘mathematical’ in the sense that it should be ‘what you mean is what you get’, though of course that’s not an entirely attainable goal. It features using rationals, arbitrary precision integers and multiple precision floats using the GMP library. It also fully supports complex numbers. It can work with matrices and vectors and do rudimetary linear algebra. The language can have user-defined functions, variables and parameters.

This manual describes mostly the graphical version of the calculator, but the language is of course the same. The command line only version lacks the graphing capabilities and all other capabilities that require the graphical user interface.

## Getting Started

&starting-to-start; &starting-when-start;

## Basic usage

&usage-workarea; &usage-create-program; &usage-open-program;

## Plotting

&gel-plotting;

## GEL Basics

GEL stands for Genius Extension Language. Alternatively it also stands for George's Ego Leverage. It is the language you use to write programs in &appname;. A program in GEL is simply an expression that evaluates to a number.

&gel-values; &gel-variables; &gel-functions; &gel-absolute-value-modulus; &gel-separator; &gel-modular-evaluation; &gel-operator-list;

## Programming with GEL

&gel-conditionals; &gel-loops; &gel-sums-products; &gel-comparison-operators; &gel-returning; &gel-references; &gel-lvalues;

## Advanced Programming with GEL

&gel-error-handling; &gel-startup-procedure; &gel-loading-programs;

## Matrices in GEL

&gel-matrix-support; &gel-matrix-transpose;

## Polynomials in GEL

&gel-polynomials;

## List of GEL functions

&gel-function-list;

## Example programs in GEL

&examples;

## Settings

To configure &app;, choose Settings Preferences. There are several basic parameters provided by the calculator in addition to the ones provided by the standard library. These control how the calculator behaves.

### Changing settings with GEL

Many of the settings in &appname; are simply global variables, and can be evaluated and assigned to in the same way as normal variables. See about evaluating and assigning to variables, and for a list of settings that can be modified in this way.

As an example, you can set the maximum number of digits in a result to 12 by typing:

    MaxDigits = 12

&prefs-display; &prefs-precision; &prefs-terminal;

## About &app;

&about;