YaBasic
# YaBasic

YaBasic ist ein quelloffener BASIC-Interpreter für Linux/Unix und für Windows. Er zeichnet sich durch seine Kompaktheit (gepackte Größe etwa 140 kB) und eine flexible Syntax aus: Für die Farbwahl sind zum Beispiel sowohl der Befehl color als auch colour möglich, und auch für if ... then ... else ... endif-Konstrukte gibt es eine Reihe verschiedener Syntax-Varianten usw.

## Geschichte

YaBasic wurde ab 1995 von Marc-Oliver Ihm entwickelt. Die Version 2.763 wurde von ihm im Jahr 2005 als „final“ bezeichnet, da er sich nunmehr anderen Softwareprojekten widmen wollte. Im Jahr 2008 wurde die Weiterentwicklung von YaBasic durch Pedro Sá und Thomas Larsen aufgenommen. Sie entwickeln Patches für die Version 2.763 und arbeiten derzeit an YaBasic 3. Im Dezember 2010 wurde die erste Beta-Version von YaBasic 3 freigegeben. Seitdem ist es um dieses Projekt still geworden. Eine offizielle Version 3 ist bisher (Ende 2012) nicht erschienen. YaBasic v2.78.1 wurde am 13. August 2017 veröffentlicht. Die Version 2.78.0-1 ist in verschiedenen Linux-Distributionen integriert, wie z. B. Ubuntu 17.04 oder Debian 9.

## Eigenschaften

YaBasic zeichnet sich gegenüber anderen BASIC-Interpretern durch folgende Eigenschaften aus:

* Keine Zeilennummern
* Strukturierte Programmierung mit Kontrollstrukturen (do ... loop usw.), Prozeduren und Modulen/Bibliotheken mit eigenen Namensräumen
* Selbstmodifizierender Code (für ein Beispiel, siehe unten)
* Möglichkeit der Generierung lauffähiger Executables durch Bindung des Interpreters an das BASIC-Programm
* Geplant für Version 3: Benutzerdefinierte Datentypen (UDTs)

## Beispiele

### Hallo-Welt-Programm

Das allgegenwärtige Hallo-Welt-Programm benötigt in YaBasic nur eine Zeile:

### Grafik

Der folgende Code gibt zwei rote Kreise aus:

### Selbstmodifizierender Code

Zeichenketten können vom Interpreter während der Laufzeit zu ausführbarem Code übersetzt werden, was einem Programm erlaubt, sich selbst zu modifizieren.

Der Codeabschnitt

erzeugt zum Beispiel eine neue Prozedur,

während das Programm läuft. Von nun an kann die Prozedur einfach durch

oder über das geringfügig komplexere Kommando

aufgerufen werden.

## Weitere Versionen

Die Version 3 befindet sich seit Dezember 2009 im Beta-Stadium.

YaBasic wird unter dem Namen yab auf Haiku/BeOS/ZETA portiert.

Sony liefert YaBasic für die PlayStation 2 kostenlos mit der Demo-DVD der PAL-Version aus.

YaBasic steht unter der GPL und der Artistic License.

