[Squeak-ev] Etoys/Squeak vs. Scratch (Diskussionsbeitrag von Ralf Romeike)

Guido Stepken gstepken at googlemail.com
Fre Nov 5 00:38:23 UTC 2010


Überlegen ist nun Etoys/Squeak aus pädagogischer Sicht sicherlich in 
vielerlei Hinsicht. Es kommt bei den Kiddies kaum Frust auf, Spiel 
überwiegt. Wenn ich mir allein überlege, wie lange ich für so einen 
Quatsch in C++ oder Java bräuchte?

#(1 2 3 4) + 5.

#(6 7 8 9)

#(3 #(3 4) #(5 6 7)) * 3.1415. 

#(9.4245 #(9.4245 12.566) #(15.7075 18.849 21.9905))


6 Dinge allerdings machen mir Kopfschmerzen:

1. Einmal Smalltalk - die wollen nie wieder andere Programmiersprachen 
erlernen!

2. Smalltalk ist Hacken, kein modernes Software Engineering, wie man 
z.B. mit JAVA und BlueJ lernen kann.

3. Multiprozessorunterstützung fehlt bislang (RoarVM kommt wohl bald)

4. Erziehung zur Frusttrationstoleranz. Sich mal auch "durchbeissen 
müssen" durch Bits und Bytes

5. Sinnlos erworbenes Wissen, da kein Entscheider Squeak einsetzen wird.

6. Zu hohes Abstraktionsniveau für Einsteiger


zu 6)

The Elements of Computing Systems: Building a Modern Computer from First 
Principles ... Von Noam Nisan,Shimon Schocken
http://books.google.de/books?id=THie6tt-2z8C&printsec=frontcover&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false

Wer sich das in Ruhe mal durchliest, wird viele neue Erkenntnisse haben. 
Nicht nur, dass das pädagogische System von Shocken sich nicht nur um 
Programmierung dreht, sondern ebenfalls um den Entwurf der dazu 
gehörigen Hardware, was elementare Einblicke in die Wechselwirkung von 
Hard - und Software gibt, kein - man kann einen Computer mit Hardware 
simulieren und im Betrieb beobachten. Und später das auch in FPGA oder 
ASIC giessen. So erfährt man auch, was es mit diesen Firmware - Treibern 
unter Linux auf sich hat! ;-) Z.B. ist es recht anschaulich erklärt, wie 
man ein PONG Spiel mit nur wenigen hundert Byte realisiert.

Ich verwende das System zur Ausbildung von Informatik - Studis an der 
Berliner Uni. Erinnert mich an die Zeit, wo ich selber noch Chips 
gelötet habe.

zu 3)

Schaue ich mir das neue C++0x, die Programmiersprache GO, Haskell an, so 
komme ich mit diesen Werkzeugen zu jedem Ziel. Automatische 
Parallelisierung steckt bereits in den neuen Libraries.

In Kürze werden alle Computer Mehrprozessorsysteme sein, ARM, INTEL, 
GPGPU's sogar massiv. Ein Parallelrechner mit 512 Prozesoren ist für 
unter 1000€ zu haben!

Smalltalk besitzt z.B. im Gegensatz zu Haskell keinerlei eingebauten 
Parallelismus. In Haskell sind alle verwendeten Algorithmen 
*GRUNDSÄTZLICH* parallelisierbar. Keine Library, die nicht 
vollautomatisch alle verfügbaren Prozessoren ausnutzt. C++0x wird da 
kaum hinterher stehen, GO ebenso. Smalltalk ist zwar theoretisch auf der 
RoarVM lauffähig, aber *ALLE* verwendeten Algorithmen in den Libraries 
sind Single - Prozessor Algorithmen. Smalltalk müsste, um eine Zukunft 
zu haben, angesichts der MP - Welle, *komplett* eingestampft und mit 
Parallelalgorithmen völlig neu implementiert werden.

Zu RoarVM siehe: http://forums.instantiations.com/viewtopic.php?f=12&t=5523

Damit komme ich zu 5.)

Es ist für einen Schüler einfach vertane Zeit, Smalltalk zu lernen, wenn 
er nach Schulschluß einen Nebenjob in einer Programmierfirma mit C++0x 
oder Java haben könnte.

MfG, Guido Stepken