Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
user_guide:lingo [2019/02/05 14:23] – [Application] adjusted wording. oroehrig | user_guide:lingo [2019/02/28 11:46] (current) – this is explained in the intro tut, the objects tut, and the extension page. oroehrig | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== polymake Lingo ====== | ||
- | This page wants to explain common terminology which is used throughout the documentation. | ||
- | |||
- | ===== Application ===== | ||
- | |||
- | An application is a collection of object types, functions and other stuff all related to some distinct mathematical subject. Currently polymake consists of the following applications: | ||
- | * **common** for things shared between all applications | ||
- | * **fan** for fans | ||
- | * **fulton** for tropical vaieties | ||
- | * **graph** for graphs | ||
- | * **group** for groups and their actions on polymake objects | ||
- | * **matroid** for matroids | ||
- | * **polytope** for polytopes | ||
- | * **topaz** for topology-related things | ||
- | * **tropical** for tropical gemoetry | ||
- | |||
- | The prompt in the polymake shell indicates the currently active application. You can switch by typing | ||
- | < | ||
- | The default application active on startup is '' | ||
- | |||
- | The only difference between the current application and the rest is that you can call the functions and object constructors of the former without having to qualify them with the application name as a prefix. To use things from other applications, | ||
- | < | ||
- | topaz > $c = polytope:: | ||
- | </ | ||
- | |||
- | |||
- | Within the source code an application is visible as the top level subdirectory " | ||
- | ===== Extension ===== | ||
- | |||
- | An extension is code which does not belong to the polymake core but extends polymake' | ||
- | |||
- | There is a guide for [[.extend: | ||
- | |||
- | Some extensions are " | ||
- | |||
- | ===== Big Object ===== | ||
- | |||
- | A big object is an instance of a data type which represents a mathematical concept with clear semantics. | ||
- | |||
- | Big objects are defined in a rule file which is included from apps/ | ||
- | |||
- | Big object types may have template parameters. | ||
- | |||
- | Examples are polytope:: | ||
- | |||
- | In the rulefiles, big object types are simply referred to as [[user_guide: | ||
- | |||
- | Here is an {{ : | ||
- | |||
- | ===== Small Object ===== | ||
- | |||
- | A small object is an instance of one of the many data types commonly used in computer science. | ||
- | |||
- | Small object types are implemented in C++ and may or may not be accessible from the Perl side of polymake. | ||
- | |||
- | Small object types may have template parameters. | ||
- | |||
- | Examples are Array, Set or Map. | ||
- | |||
- | In the rulefiles, small object types are referred to as [[user_guide: |