Objekt
Beschreibung
Ein Objekt dient als Oberklasse aller sogenannten Terminale. Terminale nennen wir alles, was sich nicht weiter reduzieren lässt. Hierzu gehören:
Nicht dazu gehört z.B. der Ausruck '3+1'. Dieser Ausdruck besteht aus der Funktion + mit den Parametern 3 und 1. Die Parameter sind in diesem Fall jeweils zwei Objekte des Typs Ganzzahl.
Mithilfe von sogenannten Konstruktoren könne diese Objekte erzeugt werden. Beispielsweise ein Vektor hat den Konstruktor vector().
Diese Objekte können in den Variablen [var=***] gespeichert werden. Alle Terminale werden zum Beispiel in einem Task, einem Advice oder einem Feedback durch ihre jeweilige LaTeX Repräsentation dargestellt. Gleichzeitig können diese Variablen in jeder folgenden Anweisung für den Evaluator wiederverwendet werden. Eine einmal erstellte Matrix lässt sich so zum Beispiel in eine Liste packen.
<option name="matrixA" value="matrix(matrixrow(1,2),matrixrow(3,4)" /> <option name="Liste1" value="list([var=matrixA],2,3,4)" />
Typen
In den jeweiligen oben genannten Typen lässt sich nachlesen, wie diese erstellt werden. Außerdem lässt sich dort nachlesen, welchen Bereich diese jeweils abdecken.
In der folgenden Tabelle wird veranschaulicht, welche Typen sich ersetzen können. D.h. zum Beispiel die Funktion Concat erwartet als Parameter Zeichenketten. Es ist aber auch möglich Ganzzahlen einzugeben, da diese automatisch in Zeichenketten übersetz werden. Die Tabelle ist wiefolgt zu lesen: Objekt Z kann durch Objekt S ersetzt werden. (Z = Zeile, S = Spalte). Wie dies genau umgesetzt wird, ist in dem jeweiligen Typ nachzulesen.
Ganzzahl | Gleitkommazahl | Zeichen | Zeichenkette | Vektor | Matrix | List | |
Ganzzahl | ja | nein | nein | nein | nein | nein | nein |
Gleitkommazahl | ja | ja | nein | nein | nein | nein | nein |
Zeichen | ja | ja | ja | nein | nein | nein | nein |
Zeichenkette | ja | ja | ja | ja | nein | nein | nein |
Vektor | nein | nein | nein | nein | ja | nein | nein |
Matrix | nein | nein | nein | nein | nein | ja | nein |
List | ja | ja | ja | ja | ja | ja | ja |