Am 25.09.2004 um 13:23 schrieb Harald M. Müller:
Zu der Formel - siehe unten. Aber das Rundungsproblem kann ich nicht nachvollziehen - wo wurde gerundet?
Wenn man in dem "Nicht-Formel-Editor" 0.2 eintippt. Also das Anzeigen von Zahlen ist ziemlich falsch, muss ich sagen. Mach folgendes:
- Irgendeine Figur zeichnen, Betrachter öffnen
- Neben "gehe vorwärts um" die Zahl 5 durch 0.2 ersetzen, auf Enter
drücken. 3. Oft auf ! klicken - tatsächlich: Man sieht, wie sich y nur bei jedem fünften Klick um eins erhöht. 4. "gehe vorwärts um" als Skript herausziehen - noch immer gleiche Anzeige, gleiches Verhalten. 5. Auf den nach-rechts-Pfeil neben 0.2 klicken -> es steh plötzlich wieder 0 da!!! - aber intern ist der Wert doch 0.2!! (sieht man durch weiteres ausprobieren; oder Skript auf "laufend" setzen; oder in den Skripttext hineinschauen). Nix gut ... abgezeigte Werte müssen mit internen Werten immer übereinstimmen ...
Das war mein "0" - ich dachte letzte Woche, dass 0 auch 0 bedeutet, d.h. dass wirklich gerundet/abgeschnitten wird.
Ah, ja, das ist wirklich ein Bug. Hab's eben in den Bugtracker eingetragen (wer am Verfolgen der Bugs Interesse hat, kann sich bei http://bugs.impara.de/ anmelden, und dann Projekt "squeakland" wählen).
Da hast du eines der wesentlichen Probleme der momentanen EToys erkannt
- der Formeleditor ist keiner.
Das ist ja schrecklich ... anders kann ich es nicht sagen. Wo steht der Sourcecode dazu, und kann man den Sourcecode ändern und sofort verwenden (ich kenne das dahinterliegende Smalltalk-System nicht) ...
Kann man. Im roten Halodrops-Menu unter "Programmieren" wähle "Browser für Morf". Das funktioniert, aber wenn man ernsthaft was programmieren möchte, sollte man lieber das Developer-Image (http://squeakland.org/plugin/installers/files.html) nehmen, bei dem die Quelltexte in ihrer Original-Formatierung dabei sind (die Quelltexte in der normalen Downloadversion werden durch Dekompilierung erzeugt, um Platz zu sparen).
eine
korrekte (lt. meiner Definition) Übersetzung der "zusammengeklickten Ausdrücke" in ein Script schreibe ich in einer Stunde, würde ich hoffen
- und dann passt das - oder sind die Datenstrukturen hier etwas
aufwendiger zu verstehen, als ich mir das naiverweise vorstelle?
Kommt drauf an ;-) Sooo kompiziert ist es eigentlich nicht, aber der gesamte EToy-Code ist mittlerweile ziemlich verfahren. War nie dazu gedacht, über mehrere Jahre verwendet zu werden, sondern eigentlich nur, um damit in ausgewählten Schulen zu experimentieren. Aus genau dem Grund arbeiten wir gerade an Etoys2, was eine saubere Neuimplementierung ist, im Gegensatz zu diesem über die Jahre verwucherten Monstrum. Das Verhalten der alten Etoys jetzt zu ändern, wäre schon aus dem Grund nicht gut, als dass sich die Leute mittlerweile an diesen "Bug" gewöhnt haben und wir ihre Skripte kaputt machen würden.
Was man meiner Meinung nach am derzeitigen System tun könnte, wäre, bei Ausdrücken mit mehr als einem Operator Klammern einzublenden, so dass man zumindest sieht, was da genau passiert. Wäre ein nettes kleines Projekt ... wenn ich jetzt nicht einen Weg um unser Haus bauen müsste. Das echte Leben in Gestalt meiner Gattin ruft ;-)
- Bert -