11 Stimmen

Aktuelle Smalltalk-Entwicklungstätigkeit

Ich bin jetzt seit ein paar Monaten auf meiner Smalltalk-Lernreise. Mir war von Anfang an klar, dass Smalltalk mehrere "Dialekte" hat (vielleicht ist "Dialekt" nicht das beste Wort), aber damit meine ich VisualWorks, Squeak und Dolphin, um nur drei zu nennen. Bislang habe ich mich auf Visualworks und Squeak beschränkt. Aber ich habe jetzt entdeckt, dass sich Squeak in mehrere andere Varianten zu verwandeln scheint (Wortspiel beabsichtigt!), z.B. Tweak, Pharo, Cobalt und Croquet.

Kann mir das jemand erklären? a) warum diese Initiativen (Tweak, Pharo, Croquet und Cobalt) entstanden sind? b) sollte ich mir die Zeit nehmen, mich auf dem Laufenden zu halten - wenn man bedenkt, dass ich ein Smalltalk-Neuling bin? c) Wie kommt es, dass eine so unpopuläre Sprache eine so lebhafte Entwicklung erfährt? d) Gibt es andere Initiativen, die ich kennen sollte? (als Anfänger, nicht als Computerforscher)

11voto

Dale Henrichs Punkte 1273

Zu der Frage "Wie kommt es, dass eine so unbeliebte Sprache eine so dynamische Entwicklung erfährt?" muss ich sagen, dass "Beliebtheit" nicht mit Nutzen oder Produktivität korreliert. Ein Querdenker wird Ihnen sagen, dass die Mehrheit immer falsch.

Wenn man vom Smalltalk-Bug gebissen wird, bleibt man meist auch gebissen. Es gibt viele ehemalige Smalltalker, die ihren Lebensunterhalt mit anderen Sprachen verdienen und die Sprache vermissen und die Gelegenheit ergreifen würden, ihren Lebensunterhalt wieder mit Smalltalk zu verdienen.

Dieses Phänomen macht die lebendige Gemeinschaft aus.

Ich persönlich finde, dass ich am produktivsten bin, wenn ich in Smalltalk arbeite. Die Werkzeuge und die Sprache arbeiten zusammen, um die Kluft zwischen Idee und Ausführung sehr klein zu machen. Wenn ich in Smalltalk eine neue Bibliothek verwenden muss, kann ich mit dem Debugger mitten in das Geschehen einsteigen und den Zustand und den Code in einem einzigen Werkzeug betrachten. Diese Erfahrung lässt sich nicht durch das Lesen von Code und das Studieren von Protokolldateien wiederholen...

Smalltalk hat seine Macken, und die Macken halten Smalltalk vom Mainstream fern. Aber einige der Macken machen Smalltalk zu einer produktiven Arbeitsumgebung, was vielleicht bedeutet, dass es nie Mainstream werden wird.

Aber spielt es angesichts einer lebendigen und aktiven Gemeinschaft, die Smalltalk (in einer Vielzahl von Dialekten) unterstützt, eine Rolle, ob Smalltalk Mainstream ist oder nicht?

7voto

Ein wenig Hintergrundwissen könnte hilfreich sein: Tweak war ein Forschungsprojekt, bei dem versucht wurde, einige der großartigen Dinge von Etoys auf die Systemebene zu bringen (d.h. die Spieler-Kostüm-Architektur, das Gleichzeitigkeitsmodell, "Ereignisse überall", asynchrone Benachrichtigungen usw.). Tweak war ein "Blue-Plane"-Ansatz für Grafik, Komposition und Skripting und in gewisser Weise nie wirklich als Produktionswerkzeug gedacht. Dass es eines wurde, war sein Untergang, denn es war nicht ausgefeilt genug für den breiten Einsatz und dadurch, dass es ein Produktionswerkzeug wurde, wurde es unmöglich, einige der radikalen Änderungen zu implementieren, die erforderlich gewesen wären, um es für die Weltherrschaft bereit zu machen ;-)

Croquet hatte ein ganz anderes Ziel. Wir brauchten Croquet, weil wir eine bit-identische replizierte Berechnungsmaschine brauchten. Croquet rechnet auf allen Plattformen bit-identisch, was Änderungen an der virtuellen Maschine und einigen Bibliotheken (z. B. Gleitkomma) erforderte. Cobalt ist ein Ableger von Croquet, der das SDK übernimmt und daraus eine Anwendung erstellt. In diesem Sinne ist Cobalt nicht wirklich ein Fork - es ist der aktuelle Schwerpunkt der Croquet-Gemeinschaft.

5voto

Janko Mivšek Punkte 3874

Dies zeigt nur, wie inspirierend Smalltalk ist und wie solide und klug es aufgebaut ist. Sie inspiriert Menschen von der Wissenschaft bis zur Industrie dazu, zu versuchen, neue "Dialekte" zu entwickeln, die dann in der Regel in gewissem Umfang miteinander verschmolzen werden, so dass wir am Ende alle davon profitieren.

Deshalb mag ich Smalltalk und seine Gemeinschaft(en), auch wenn man dort manchmal Spannungen spürt. Aber jeder Fortschritt braucht zuerst eine Spannung.

Pharo ist zum Beispiel ein Ergebnis solcher Spannungen. Pharo ist eine Abspaltung von Squeak, die von einer Gruppe von Squeakern mit einer starken Führung und einer "Work More/Talk Less"-Mentalität entwickelt wurde, die bereits Ergebnisse zeigt und Squeak, wenn nicht sogar Smalltalk insgesamt, einen Schritt weiterbringen wird.

5voto

Ich weiß nicht, wie es um die anderen von Ihnen genannten Initiativen steht, aber Pharo ist ein Fork, der darauf abzielt, eine Version von Squeak ohne den ganzen Schnickschnack (wie z.B. EToys), bessere Entwicklerunterstützung und die Verwendung moderner (??) Technologien wie TrueType-Schriften zu entwickeln. Es lohnt sich, das aktuelle Image herunterzuladen und einen Blick darauf zu werfen - ich finde es etwas langsam auf meiner alten Festplatte, aber ich werde es im Auge behalten.

2voto

Norbert Hartl Punkte 10085

Ich denke, dass es diese Initiativen oder Forks gibt, weil die Gemeinschaft in der Lage ist, es zu tun :) Diese kleine Smalltalk-Gemeinschaft ist voll von klugen Leuten, die wissen, was sie tun. Es gibt genug Wissen über virtuelle Maschinen, Sprachdesign und dergleichen. Andererseits ist es wie in jeder anderen Community auch. Es gibt Leute mit unterschiedlichen Meinungen. Es ist also nur eine Frage der Zeit, bis ein paar Leute etwas "etwas anderes" anfangen, um ihre Ideen zu überprüfen/umzusetzen. Und das tun sie, weil sie es können.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X