[Squeak-ev] Schulen

Boris Gaertner Boris.Gaertner at gmx.net
Mit Mar 9 13:04:17 UTC 2005


"Tammo Ricklefs" <tammo.ricklefs at hamburg.de> schrieb


> Das Problem sind fehlende Anleitungen und die enthaltenen Fehler.
> Auch Squeak muss man lernen.

>  So beschäftigt sich das System nur
> noch mit sich selbst, wenn ich und den Teamwerkzeugen mit Listener und
> Badge arbeite. Klicke ich im Badge auf das "T" so bekomme ich eine
> MessageNotUnderstood MorphicUnknownEvent Fehlermeldung und
> damit kann man Squeak nur noch ausschalten.
Leider ist das richtig. Allerdings steht in der Datei SqueakDebug.log
ein Hinweis, der weiterführt. Hier ist etwas ganz Einfaches passiert;
in RemoteHandMorph>>transmitEvent:

steht der Ausdruck:

 firstEvt :=MorphicUnknownEvent
                            type: #worldBounds
                            argument: self worldBounds extent.

wo es richtig heißen müsste

 firstEvt :=MorphicUnknownEvent new
                            setType: #worldBounds
                            argument: self worldBounds extent.


Als Anlage finden Sie einen fix, der Ihnen ein Stück weiterhelfen
kann. Squeak bleibt aber nach meinem Eindruck immer noch hängen,
wenn der Rechner, dessen IP-Adresse im Badge angegeben ist, nicht
antwortet.

Für solche Probleme ist diese Liste nach meinem Eindruck zu klein.
Wenn Sie das mit einer ausführlichen Schilderung des Problems
bei squeak-dev
(http://lists.squeakfoundation.org/listinfo/squeak-dev)
 abgeben, sind Ihre Chancen, Hilfe zu erhalten
viel größer. (Von den amerikanischen Squeakern liest praktisch
keiner squeak-ev  :-)  ) Außerdem haben Fixes, die über
squeak-dev bekannt gemacht werden, eine wenn auch kleine
Chance, ins Basis image übernommen zu werden.

> Ist dies eine Problem meines Schulsystems oder ein Squeak-Problem?
Ich konnte dieses Problem mit einem Windows-Rechner bestätigen
und denke, dass das nicht mit Ihrem Schulsystem zu tun hat.

> Es gibt relativ viele Beispiele, leider funktionieren viele Beispiele
> nicht. Ein Grund scheint zu sein, dass es sehr starke Veränderungen
> zwischen den Squeak-Versionen gibt, die ich noch nicht überblicke.

* Der leidgeprüfte Squeaker beginnt seine Problemberichte an die
Liste squeak-dev immer so:

  This bug report is for Squeak x.y, latest update #zzzz

Das hilft allen, vor allem aber denen, die durchaus bereit sind,
ausreichend detaillierte Fehlermeldungen zu bearbeiten.

Was für x, y, zzzz einzusetzen ist, erfährt man aus der
Menüfolge
   help -> about this system


* Der kooperative Squeaker schreibt zu seinen Beispielen und
Projekten dazu, für welche Version von Squeak sie passen
und welche zusätzlichen Pakete ggf. zu laden sind, bevor
ein Projekt geladen werden kann.
Wo diese Informationen fehlen, kann man folgendes tun:

1. Versuchen, ein Projekt (oder ein change set, *.sar oder *.mcz)
in frühere Versionen von Squeak zu laden.

2. *.sar Dateien und *.mcz Dateien in *.zip umbenennen
(jawohl, das geht, es ist das gleiche Spiel wie bei *.jar und
*.sxw), mit einem Programm wie WinZip öffnen und in den
*.cs oder *.st Dateien lesen. In *.cs-Dateien hat man
oft eine Versionsangabe, bei *.st-Dateien sieht man
wenigstens, welche Klassen ins image geladen werden und
für welche Klassen nur Methoden dazugeladen werden.
Wenn eine Klasse, für die in einer Datei nur Methoden stehen,
im Image fehlt, hat man natürlich ein Problem.

3. Auf squeak-dev fragen, am besten mit Schilderung aller
aus erfolglosen und erfolgreichen Versuchen gewonnenen
Einsichten.



> Wenn  ich es richtig verstanden habe wird daran gearbeitet, dass Squeak
> einen Kern bekommt und der Rest über Plugins ergänzt wird.
> Dies bedeute aber, dass es starke Veränderungen geben muss.
Ja. Es hat ein Kernel-Cleanup Project gegeben, dessen wesentliche
Veränderungen durchaus dazu führen können, dass ältere Beispiele
in Squeak 3.7 oder 3.8 nicht mehr funktionieren.
In Squeak 3.8 ist erstmals Unicode-Support probiert worden;
das ist sehr wünschenswert, aber im Augenblick haben wir
im Zusammenhang mit dieser Änderung Berichte über Probleme
mit FileStreams.

> Der Ansatz ist sicher richtig, aber als Baustelle ist Squeak kaum für
> Fortbildungen geeignet.
Alle Smalltalks sind Baustellen, aber Squeak hat z.Zt. eine viel
höhere Änderungsgeschwindigkeit als etwas VisualWorks oder
VisualAge. Wo es auf Stabilität ankommt und chinesische
Ideogramme nicht gebraucht werden, würde ich im Augenblick
nicht weiter gehen als bis zu Squeak 3.6 oder 3.7. Beachten Sie,
dass in 3.7 die Instanzerzeugung

   <class> new

mit impliziter Initializierung versehen wurde, was es vorher nicht gab,
das ist alleine schon ausreichend, um Inkompatibilitäten zu älterem
Code zu verursachen.

> Dann muss man vielleicht noch warten, bis es Squeak 4.0 oder 5.0 gibt.
Kommt darauf an, was man will. Ich arbeite meist mit MVC, da hat sich
seit langem nichts mehr getan. Wenn wirklich mal eine Neuerung, die
in Morphic funktioniert, in MVC einen Fehler verursacht, schicke
ich einen Fix an squeak-dev, aber im Ganzen fühle ich mich in den
Ecken von Squeak, die niemanden mehr interessieren, sehr wohl.


> Aus diesem Grund wäre ich an einem Austausch mit Kollegen interessiert.
Von mir aus gerne, obwohl ich kein Lehrer bin.
Scheuen Sie sich aber nicht, mit den größeren Problemen rund
um die Kommunikation zu squeak-dev zu gehen. Auf der Liste
haben wir viel Kompetenz und sehr viel Hilfsbereitschaft.

Gruß
Boris
http://www.bgaertner.gmxhome.de
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : Badges.1.cs
Dateityp    : application/octet-stream
Dateigröße  : 1624 bytes
Beschreibung: nicht verfügbar
URL         : http://lists.squeakfoundation.org/pipermail/squeak-ev/attachments/20050309/11a1c3e5/Badges.1.obj