Strongtalk

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Strongtalk
Entwickler Sun und Andere
Aktuelle Version 1.1.2
(9. August 2006)
Betriebssystem Windows
Kategorie objektorientierte Programmiersprache
Lizenz BSD-ähnlich
Deutschsprachig nein
strongtalk.org

Strongtalk ist eine Variante der Programmiersprache Smalltalk, die über ein optional statisches Typsystem verfügt. Auch die Sprache Strongtalk ist, vergleichbar mit Smalltalk, in ein vollständiges Programmier-Universum eingebettet. Zu diesem gehören der obligatorische Klassenbrowser, der Workspace, ein Mixins-Browser und natürlich ein Debugger. Dieses so genannte Programmier-Universum ist vergleichbar mit modernen Entwicklungsumgebungen (IDE), ist aber dennoch weitaus spezifischer, da Strongtalk nicht auf Dateiebene sondern auf Basis eines so genannten Images arbeitet. Eine moderne IDE basiert hingegen in den meisten Fällen auf Objekten, die auf Dateisystem-Ebene abgelegt sind.

Strongtalk wurde von Urs Hölzle, einem der ursprünglichen Entwickler der Programmiersprache Self, zusammen mit anderen bekannten Experten auf diesem Gebiet wie unter anderem Lars Bak, Gilad Bracha und Robert Griesemer entwickelt.[1] Strongtalk wird unter einer Open-Source-Lizenz zur Verfügung gestellt. Im September 2006 wurden auch die Quellen der virtuellen Maschine offengelegt.

Die einzelnen Komponenten des Strongtalk Entwicklungssystems im Überblick

Vergegenwärtigt man sich den Aufbau des Strongtalk Entwicklungssystems, so wird klar, dass diese Sprache viel eher als Java-Vorgänger gelten sollte. So ist die Objekthierarchie durchgängig typisiert und das originäre Objekt ist das Objekt Object. In der Illustration ist auch zu erkennen, dass es wie in Smalltalk eine Art Klassenbrowser gibt, mittels dessen innerhalb der Objekthierarchie navigiert werden kann. Zudem veranschaulicht die Illustration den Vorgang der Instanziierung des Objektes Semaphore. Dies geschieht, ähnlich wie in einem Smalltalk-System, über die Code-Zeile:

Semaphore new.

Hier wird auf dem Klassenobjekt Semaphore die Klassenmethode new aufgerufen, die eine neue Instanz ebendieser Klasse zurückliefert. Gegenstücke zur Klassenmethode new sind beispielsweise, wie aus der Illustration zu erkennen, die Instanzmethoden signalCount und signalCount:. Sie fungieren als Getter bzw. Setter der Instanzvariablen signalCount. Dies ist die gängige Konvention in Smalltalk-Systemen.

Literatur[Bearbeiten]

Quellen[Bearbeiten]

  1. Language Based Virtual Machines – ... or why speed matters von Lars Bak

Weblinks[Bearbeiten]