# Eukleides Reference Manual

Next: Basics [Contents][Index]

## Introduction

This manual describes the second version of the Eukleides language, as implemented in the `eukleides` 1.5.4 interpreter. The first version of the language was implemented in `eukleides` up to 1.0, which is not developed any longer. Even though both versions have rather close designs, there is no backwards compatibility.

Eukleides is a computer language devoted to elementary plane geometry. It aims to be a fairly comprehensive system to create geometric figures, either static or dynamic. It allows one to handle basic types of data: numbers and strings, as well as geometric types of data: points, vectors, sets (of points), lines, circles, and conics.

A Eukleides script usually consists in a declarative part where objects are defined, and a descriptive part where objects are drawn. Nonetheless, Eukleides is also a full featured programming language, providing conditional and iterative structures, user defined functions, modules, etc. Hence, it can easily be extended.

The Eukleides distribution provides two distinct interpreters: `eukleides` and `euktopst`, and three shell scripts: `euktoeps`, `euktotex`, and `euktopdf`. The former interpreter produces Encapsulated PostScript (EPS). The later, which is run by the scripts, produces TeXable PSTricks macros. The `euktoeps` script is an alternative to `eukleides` when mathematics typesetting is required. The two other scripts are useful when using Eukleides together with LaTeX.

The first version of Eukleides came with a graphical user interface (GUI) named `xeukleides`, allowing to create and view interactive figures. A GUI for the second version will be developed in the future. Yet, the specifications of the language already include interactivity.

Eukleides is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

Bug reports as well as comments or contributions should be sent to the author of Eukleides, Christian Obrecht (`obrecht at eukleides dot org`).

Next: Basics [Contents][Index]