Die folgende Tabelle stellt einen Vergleich von LabTalk-Skript und Origin C-Programmierung dar:
|
Origin C |
LabTalk |
Kompiliert |
Ja
|
Nein Kompilieren nicht erforderlich. Einfache Codes sind leichter zu ändern und zu testen.
|
Zugriff auf interne Origin-Objekte |
Ja, bedeutend mehr Kontrolle als bei LabTalk
|
Ja, begrenzter Zugriff
|
Groß/Kleinschreibung (Befehle und Variablen) |
Ja
|
Nein
|
Aufrufen von Funktionen/Makros |
Ja, Standardregeln der C-Sprache gelten für Aufruffunktionen.
|
Ja, begrenzte Unterstützung mit Substation-Notation.
Labtalk-Makro kann wie ein Befehl verwendet werden, um Skript aufzurufen.
Außerdem verfügt LabTalk über die Möglichkeit, Abschnitte in Skriptdateien (.OGS) aufzurufen. So können einfache Textargumente weitergegeben werden.
|
Ausführungsmodus |
Der Code von Origin C wird in Funktionen organisiert. Funktionen können von anderen Origin C-Funktionen standardmäßig aufgerufen werden, indem Argumente verschiedener Typen weitergegeben werden. Funktionen akzeptieren Zeichenketten, Doppelte und Vektoren (Datensätze) von Zeichenketten und Doppelten und können vom Skriptfenster, von LabTalk-Skripts, von Menübefehlen und Symbolleistenschaltflächen sowie von Schaltflächen in verschiedenen Origin-Fenstern (Grafik, Worksheets, etc.) aus aufgerufen werden.
|
LabTalk-Skripts sind normalerweise durch Abschnitte in .OGS-Skriptdateien organisiert. Sie können durch einfache Eingabe des Namens der OGS-Datei aufgerufen werden (Abschnitt ist so nicht möglich, Ausführen des Befehls run.section ist notwendig, nicht wahr?, aber vielleicht werden die meisten Anwender die gesamte Datei nur durch die neue Methode, nämlich durch Eingeben des Namens, ausführen...). LabTalk-Skripts können auch direkt in das Skriptfenster eingegeben werden und von dort ausgeführt werden. Sie können mit Menübefehlen und Symbolleistenschaltflächen oder mit Schaltflächen auf verschiedenen Origin-Fenstern (Grafiken, Worksheets, etc.) verbinden. Origin C-Funktionen und X-Funktionen können von LabTalk-Skripts aus ausgeführt werden.
|
Variablentypen |
Ja Alle standardmäßigen C-Typen sowie Zeiger werden unterstützt. Hat standardmäßigen Vektor und Matrixvorlagen. Objektorientierter Zugriff auf Origin-Objekte wird unterstützt. Zusätzlich werden auch Baum- und XML-Objekte werden unterstützt. Alle Variablen müssen vor der Verwendung angegeben werden
|
Ja Skalar- (double, int and const), Zeichenketten-, StringArray-, Baum- und Bereichsvariablen werden beim Zugriff auf verschiedene Origin-Objekte unterstützt.
|
Umfang von Variablen |
Alle Standardkonzepte von C/C++
|
Es gibt drei Klassen von LabTalk-Variablen:
Projektvariablen
Diese werden in einer Origin (.OPJ )-Projektdatei gespeichert. Sobald ein Projekt geschlossen wird, sind sie nicht mehr verfügbar.
Sitzungsvariablen
Sitzungsvariablen sind in der aktuellen Origin-Sitzung projektübergreifend verfügbar. Daher existiert eine Variable, sobald sie als Sitzungsvariable definiert wurde, bis die Origin-Anwendung beendet oder die Variable gelöscht wurde.
Lokale Variable
Lokale Variable existieren nur innerhalb des aktuellen Umfangs des Skripts.
|
Bedienelementstrukturen |
Alle Bedienelementstrukturen im Stil von C werden unterstützt (if-else, switch, for, while, do-while, goto). Auch Foreach-Schleifen werden unterstützt, mit denen alle Mitglieder einer Sammlung ganz einfach aufgezählt werden können.
|
LabTalk unterstützt C-ähnliche if-else- und switch-Aussagen. Es unterstützt auch C-ähnliche for-loop sowie LabTalk-spezifische Wiederholungs- und Schleifenstrukturen.
|
Unterstützt X-Funktionen |
Ja
|
Ja
X-Funktionen können ganz einfach von Labtalk-Skripts aus ausgeführt werden. Das neue Befehlsfenster verfügt über umfangreichere Zugriffsmöglichkeiten auf X-Funktionen, einschließlich Automatisch fertigstellen.
|