List of types ------------- Primitive types ^^^^^^^^^^^^^^^ .. type:: Boolean This represents a `boolean `_ type, which essentially means: Values of this type can only have two values: *true* and *false*. This makes it well-suited for `logical operations `_. .. type:: Double This represents decimal (*floating point* [#float64]_) numbers. For most purposes, operations with them behave exactly like they would on a calculator. All numbers with a decimal point that you write in GP Script are interpreted as `Double`. .. type:: Integer This type represents *integers*. Because of that, some operations behave differently as when performed with `Double`. For example, the result of ``3 / 2`` is not *1.5* as this would not be an integer but a decimal number. Instead, the decimal part is cut off and the result is actually *1*. All numbers without a decimal point that you write in GP Script are interpreted as `Integer`. .. type:: Int Just an alias for `Integer`. You can use both terms interchangeably, but this documentation will be sticking to `Integer` in every code sample. Opaque and Hybrid types ^^^^^^^^^^^^^^^^^^^^^^^ .. todo:: Offer explanations for the presented types .. type:: ADSR .. type:: AfterTouchMessage .. type:: AutoSustainer .. type:: Block .. type:: ChordRecognizer .. type:: ControlChangeMessage .. type:: ExternalApplication .. type:: ExternalWidget .. type:: Generator .. type:: MidiInBlock .. type:: MidiMessage .. type:: MidiOutBlock .. type:: MidiSequence .. type:: NoteMessage .. type:: NoteTracker .. type:: OSCMessage .. type:: PitchBendMessage .. type:: PolyTouchMessage .. type:: ProgramChangeMessage .. type:: Ramp .. type:: String .. type:: SysexManager .. type:: SysexMessage .. type:: Widget .. rubric:: Footnotes .. [#float64] GP Script uses `64-bit floating point numbers `_.