Top-Fragen
Zeitleiste
Chat
Kontext
Pawn (Programmiersprache)
einfache, typlose 32-Bit-Erweiterungssprache mit einer C-ähnlichen Syntax Aus Wikipedia, der freien Enzyklopädie
Remove ads
Pawn ist eine einfache, typenlose, 32-Bit-Erweiterungssprache mit einer Syntax, die der von C ähnelt. Ein Pawn-Programm wird in eine Binärdatei kompiliert. Der Pawn-Compiler erzeugt P-Code (oder Bytecode), der dann auf einer abstrakten Maschine ausgeführt wird. Die Ausführungsgeschwindigkeit, Stabilität, Einfachheit und ein geringer Speicherbedarf waren die Hauptdesignkriterien für die Sprache und die abstrakte Maschine.[1]

Remove ads
Geschichte
Die Pawn-Programmiersprache entstand Ende der 1990er Jahre durch IT-Studenten der Universität Uppsala in Schweden. Ihr Hauptziel war die Entwicklung einer einfachen, aber leistungsfähigen Skriptsprache, die vielseitig einsetzbar ist.[2]
Merkmale
Merkmale von Pawn
- C-ähnliche Syntax: Die Syntax von Pawn ist an C/C++ angelehnt, was sie für Entwickler, die mit diesen Sprachen vertraut sind, leicht verständlich macht.
- Kompaktheit: Pawn zeichnet sich durch seine geringe Größe aus und erfordert wenig Speicherplatz, was für den Einsatz in ressourcenbeschränkten Umgebungen wie Mikrocontrollern vorteilhaft ist.
- Precompiler-System: Das Precompiler-System von Pawn ermöglicht es Entwicklern, benutzerdefinierte Befehle und Funktionen zu erstellen, um ihre Arbeitsabläufe zu automatisieren und zu optimieren.
- Portabilität: Pawn ist auf verschiedenen Plattformen verfügbar und bietet somit eine hohe Portabilität für Entwickler.
- Modularität: Entwickler können Bibliotheken und Module in Pawn schreiben und wiederverwenden, um die Entwicklung von Skripten zu beschleunigen.
Remove ads
Anwendungsbereiche
Pawn ist eine Programmiersprache, die in verschiedenen Anwendungsbereichen Verwendung findet.
Die Sprache erlangte insbesondere als Skriptsprache für Modding-Aktivitäten des Spiels "GTA San Andreas" im Kontext der Multiplayer-Modifikation SAMP (San Andreas Multiplayer) Bekanntheit. Obwohl Pawn oft mit SAMP assoziiert wird, findet es auch in anderen Bereichen Anwendung. So wird Pawn für die Programmierung von Mikrocontrollern und anderen Embedded-Systemen genutzt. Zudem findet Pawn Verwendung in weiteren Spielmodifikationen und Projekten.[3][4]
Wenn Pawn für SAMP verwendet wird, erfolgt dies durch das Einbinden von SAMP-spezifischen Includes in das Skript wie z. B.:
#include <a_samp>
Dadurch können alle relevanten Publics, Funktionen und Callbacks von SAMP benutzt werden.
Variablen
Im Vergleich zu C weist Pawn weniger Variablentypen auf und die Deklaration ist unterschiedlich. In Pawn ist die Verwendung des Schlüsselwortes "new" erforderlich, welches bei Bedarf durch den entsprechenden Typ ergänzt und vom Variablennamen gefolgt wird. Standardmäßig werden Variablen in Pawn als Integer deklariert, sodass die explizite Typangabe oft entfallen kann. Es gilt als etablierte Konvention, Variablen bei der Deklaration stets zu initialisieren, obwohl der Compiler automatisch einen Wert zuweist.
main()
{
new Float:pi = 3.14;
printf("Näherungswert von pi : %f");
}
Remove ads
Strukturen und Schleifen, Operatoren
Pawn kennt, analog zu C, Kontrollstrukturen wie if-else
, switch
; Schleifenkonstrukte wie for
, while
oder do while
sowie arithmetische Operatoren (z. B. +
) und auch logische (z. B. ||
).[5]
Funktionen
Beispiel einer Funktion:
forward bool:Gleich(a, b); // Erstellen eines Vorwärtsdeklaration unter Verwendung des Schlüsselworts forward
main()
{
new a = 5, b = 3;
printf("A und B gleich? %b\n", Gleich(a, b));
}
bool:Gleich(a, b)
{
return a == b;
}
Weblinks
Commons: Pawn – Sammlung von Bildern, Videos und Audiodateien
Einzelnachweise
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads