Quelle: http://www.swisseduc.ch/informatik/karatojava/turingkara/
Die Kara-Familie bietet ein Modul für Turingmaschinen mit ein- bzw. zweidimensionalen Bändern an. Dabei handelt es sich um ein Javaprogramm, das auf allen Betriebssystemen mit einer Java-Virtual-Maschine lauffähig ist. Die Bandbelegung (Alphabet) ist allerdings sehr eingeschränkt. Neben den Ziffern 0 und 1 können eine Raute sowie vier Pfeilsymbole auf einem Feld des Bandes abgelegt werden.
In einem Weltfenster wird das Band dargestellt. Hier kann die Bandbelegung mit der Maus einfach belegt werden. Ausgewählte Bandeinstellungen können auch gespeichert und geladen werden. Die aktuelle Leseposition wird durch ein rotes Quadrat markiert.

Programm
Ist ein Programm geladen, so kann es hier gestartet werden. Neben einem Einzelschrittmodus kann die Ablaufgeschwindigkeit eingestellt werden.
Über den Punkt "Programm" gelangt man in den Programmeditor. Hier werden die einzelnen Zustände definiert. Ein Zustand wird durch einen Kreis dargestellt. Übergänge zwischen Zustände sind durch Pfeile markiert. Dabei kann ein Pfeil auch auf sich selbst zeigen.

Zunächst müssen Zustände erzeugt werden, wobei genau ein Zustand als Anfangszustand gekennzeichnet werden muss. In diesem Zustand wird das Programm später starten.
Die Übergangsbeschreibungen können hier mit der Maus sehr bequem erstellt werden.
Im Punkt 1 sind links alle felder bis auf das leere Feld markiert. Als Reaktion wird für diesem Zustand ein Pfeil nach rechts mit der Maus in die Zeile gezogen. Ganz rechts steht der entsprechende Folgezustand (hier der Zustand selbst).
Punkt 2 verarbeitet die Situation, dass auf dem Band kein Zeichen gefunden wurde. In diesem Fall soll die Maschine um einen Schritt nach links gehen. Und in den Folgezustand "Stop" übergehen. Hier stoppt die Maschine.
Klickt man auf den Stern in Zeile 3, so wird eine neue Eingabezeile erzeugt.
Nach Fertigstellung des Programms sollte man dieses speichern und zur Weltansicht zurückkehren und das Programm starten. Hierauf muss die rote Positionsmarke bis zum ersten leere Feld wandern und dann wieder einen Schritt nach links zurück.
Der Zweck des Programms kann also etwa wie folgt beschrieben werden:
Bewege den Lesekopf auf das letzte Zeichen vor dem ersten freien Platz auf dem Band.
Die folgenden Beispiele werden zeigen, dass man solche Sequenzen häufig benötigt.