Strongtalk
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 | |
---|---|
Basisdaten
| |
Entwickler | Sun und Andere |
Erscheinungsjahr | 1. Juli 2002 |
Aktuelle Version | 1.1.2 / 2.0 (9. August 2006) |
Betriebssystem | Windows |
Programmiersprache | C++[1] |
Kategorie | objektorientierte Programmiersprache |
Lizenz | BSD-ähnlich |
deutschsprachig | nein |
strongtalk.org |
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.[2] Strongtalk wird unter einer Open-Source-Lizenz zur Verfügung gestellt. Im September 2006 wurden auch die Quellen der virtuellen Maschine offengelegt.
Vergegenwärtigt man sich den Aufbau des Strongtalk Entwicklungssystems, so wird klar, dass diese Sprache viel eher als Java-Vorgänger bezeichnet werden könnte. 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- Gilad Bracha, David Griswold: Strongtalk: Typechecking Smalltalk in a Production Environment. Proceedings of the OOPSLA '93 Conference on Object-oriented Programming Systems, Languages and Applications, 1993 (englisch) summary citeseerx.ist.psu.edu
Weblinks
Bearbeiten- strongtalk.org – offizielle Website (englisch)
- Geschichte von Strongtalk
Einzelnachweise
Bearbeiten- ↑ The talksmalls_Strongtalk Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 19. Oktober 2018).
- ↑ Lars Bak: Language Based Virtual Machines – … or why speed matters. ( des vom 23. September 2015 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis. (PDF)