[Squeak-ev] Etoys/Squeak vs. Scratch (Diskussionsbeitrag von
Ralf Romeike)
Guido Stepken
gstepken at googlemail.com
Fre Nov 5 16:35:54 UTC 2010
Markus Schlager schrieb:
> Das ist genau der Weg, den wir bei uns bestreiten:
>
> 7. Klasse, einstündig: Ablaufmodellierung mit Scratch
Auf dem Treffen beim HPI hat Jens Mönig den Nachfolger von Scratch
vorgestellt.
Vorteil: Das didaktisch sehr wertvolle Prinzip der vorgeformten
verschiebbaren, wie Lego ineinander greifenden Logikkacheln hat er auf
ganz Smalltalk ausgeweitet.
Also nicht nur, dass man in Scratch nun - was ja auf der Idee von Etoys
mit seinen Logikkacheln basiert - in einer eigenen
Grafikprogrammiersprache durch schubsen von Kacheln neue Algorithmen
generieren kann, sondern er hat das komplette, darunterliegende
Smalltalk in Logikkacheln überführt, die man hin- und her- schubsen kann.
Diese "Zusatz-GUI" hat er "Elements" genannt.". Sie müsste eigentlich
leicht auf jeden Smalltalk Dialekt übertragbar sein, der auf einem alten
Squeak basiert. (Pharo, ...)
Für mich war das Programmieren wie von einem anderen Stern. (und das
nach 21 Programmiersprachen, die ich inzwischen so gelernt habe).
Das Besondere:
Normalerweise kann man in Etoys oder Scratch keine Funktionen
definieren, ohne in den Quellcode eingreifen zu müssen. Das ist häßlich,
weil man das Konzept des Herumschubsens der Kacheln verlassen muss. Also
didaktisch gesehen ein Bruch. Jens hat es geschafft, dass man auch
Funktionen jeder Art, z.B. auch anonyme Funktionen als sog. "first class
objects" behandeln und als Logikkacheln schubsen kann.
So kann man z.B. als Lehrer unter Scratch mit den Kiddies - ohne
überhaupt die Scratch - typische GUI verlassen zu müssen, Mandelbrot
Fraktale auf den Bildschirm zaubern.
In den Logikkacheln von Scratch stecken ja unsichtbar eine Vielzahl von
impliziten, verborgenen Logiken, die der Anwender nicht sieht, von denen
er nichts ahnt.
Wenn ich aber will, kann ich mir genau diese impliziten Logiken der
Logikkacheln selber als Logikkacheln wiederum anzeigen lassen. Jens
Mönig hat es geschafft, die Programmiersprache Smalltalk selber als
System aus Logikkacheln erscheinen zu lassen, wobei der Übergang zur
grafischen "Kunstsprache" Scratch fliessend wird.
Das Konzept der Logikkacheln ist also selber zu einem "general purpose
system" geworden, mit dem sich alles programmieren lässt. Sogar kann man
mit Jens' System selber neue Logikkacheln erzeugen, ohne die GUI und das
Konzept der Logikkacheln verlassen zu müssen.
Ich kann also jede Abstraktionsebene in Smalltalk nun mit Schubsen von
Logikkacheln bewältigen. Nun auch die unterste, Ebene, also den
Smalltalk Code selber.
Dahinter steckt schon eine ganz erhebliche Denkleistung, die logischen
Elemente der Programmiersprache Smalltalk mit den Logikkacheln von
Scratch so nahtlos zu verbinden. Eine Denkleistung, die vor ihm, denke
ich, keiner der Freaks aus der Informatik je geschafft hat.
Insgesamt eine sehr, sehr beachtliche, eine großartige, philosophische
Denkleistung. Angewandte Modelltheorie pur. Da musste wohl erst ein
Jurist ankommen, um den Informatikern zu zeigen, wo der Hammer hängt.
Dieses System ist nun unter dem Namen "Build Your Own Blog" ("BYOB" -
für Google) frei downloadbar.
Have fun, Guido Stepken