GAP

Main Branches

Downloads  Installation  Overview  Data Libraries  Packages  Documentation  Contacts  FAQ  GAP 3 
This is a page on GAP 3, which is still available, but no longer supported. The present version is GAP 4  (See  Status of GAP 3).

Overview of GAP 3

GAP 3 provides:

  • A programming language, also called GAP, which is interpreted. Note that the language of GAP 3 differs in some details from that of GAP 4 (see GAP 3 to GAP 4). The language features:
    • Pascal-like control structures,
    • automatic memory management including garbage collection,
    • built-in data types for key algebraic objects,
    • flexible list and record data types.
  • An interactive environment that supports debugging and timing of GAP programs, and provides online access to the reference manual as well as interactive help.
  • A library of functions containing implementations of various algebraic algorithms written in the GAP language. Besides using them you can also look at them to find how they work, and use them as examples for own programs. Although the GAP 3 library provides over 4,000 functions, compare the manuals of GAP 3 and GAP 4 to see that the library of functions of GAP 4 provides by far more functionality than that of GAP 3.
  • Separate share packages consisting of additional libraries of functions for specialized purposes.
  • Data libraries containing lists of large classes of algebraic objects that are accessible by using GAP 3 commands.
  • Documentation, in particular Note that the last three points refer to information for both, GAP 3 and GAP 4.
  • Download and Installation instructions.
  • FAQ answers, some of which refer to GAP 4.

Structure of GAP 3

GAP 3 has a kernel written in C. It implements

  • the GAP 3 language,
  • an interactive environment for developing and using GAP 3 programs,
  • memory management, and
  • fast versions of time critical operations for various data types.

All the rest of the library of functions is written in the GAP 3 language.

Requirements and Availability

GAP 3 will run on any machine with a UNIX-like or recent Windows or MacOS operating system. For hardware requirements see the GAP 3 download instructions.