cuyo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Cuyo-devel] Vorschlag: unbewegliche Variablen


From: Mark Weyer
Subject: Re: [Cuyo-devel] Vorschlag: unbewegliche Variablen
Date: Thu, 1 Dec 2005 16:57:52 +0100
User-agent: Mutt/1.5.9i

> Uber die ortsfesten Blops hab ich auch schon mal nachgedacht. Waere
> zumindest konsequent, wenn auch die global-blobs blobs sind.
> 
> Performance-Overhead: Ich denke, wenn die of-blobs gar keinen Cual-Code
> ausfuehren, wird's nicht so schlimm sein. (Allerdings hab ich schon oft
> nicht-so-schlimm-Dinge hinzugefuegt, und auf die Dauer summiert sich das
> sicher.) Wirklich Angst hab ich nur, wenn jemand anfaengt, die of-blobs
> zu benutzen, d.h. wenn die auch alle noch Cual-Code ausfuehren.

Das würde ich aber machen wollen (sonst haben die ortsfesten Blops nicht
viel Sinn). Natürlich erspart es nur, einen cual-Aufruf in ganz viele
Sorten einzutragen. Aber das tut es eben auch und verbessert cual-code
damit konzeptionell. So wie der semiglobal Blop in labskaus bereits
dafür gesorgt hat, daß nicht jede Sorte etwas über Ballons wissen muß,
sie aber trotzdem nicht nur in nothing erscheinen.

> Noch was: Die Bild-Stapel sind ja bisher noch in den Blobs drin. Die
> sollten dann auch eher an den Orten sein, insbesondere weil ja mehrere
> Blobs in die selben Stapel malen.

Das halte ich nicht für so wesentlich. Es ist mehr eine Frage der
Sauberkeit des C++-Entwurfs. Man kann es mal machen, aber extensional
wird das der Identitätsoperator sein. Bildstapel werden einfach pro
Schritt initialisiert, bemalt und ausgegeben und währenddessen gibt es
keine Wanderungen. Bis auf diese Optimierungen, die Du mal erwähntest.
Wie ist es da, würde man für die die Bildstapel nicht eher mitwandern
lassen lassen?


Hier stand mal ein Absatz, den ich aber revidiert habe. Übrig bleibt
eine Klammer: (A propos: Hast Du eine Syntax-Idee für das feature,
das in TODO steht, ich vermute von Dir dort eingetragen: Bei @ die
Hälfte mit angeben (links, rechts, hier oder drüben)? Für
links/rechts hätte ich an @<(0,0) / @>(0,0) gedacht oder so. Für hier
braucht man gar nichts, weil das der Default ist. Aber für drüben?
Irgendein symmetrisches Zeichen, (aber = weckt falsche
Assoziationen)? Oder <-, ->, <->? Die fehlende Syntaxidee ist der
einzige Grund, daß es das feature noch nicht gibt; die Infrastruktur
steht bereit.)


> - Es gibt Events, die Code ausfuehren. In Abhaengigkeit vom Event
>   kann bekommt der Code verschieden detaillierte Informationen ueber
>   seinen Ort. (global-step-Event bekommt gar keine Information,
>   draw-Event bekommt x,y,spieler,fallend?.)

Was ist der global-step-event? Ist das der draw-event vom global-blop?
Dann würde ich sagen, ist das ein normaler draw-event, der halt nicht
bei sich selbst malen darf, aber vollständige Information über seinen
absoluten Ort bekommt, nämlich, daß er im global-blop ausgeführt wird.
Reminder to selves: Der global-blop sollte irgendwann mal pics lesen
dürfen. Noch braucht das aber kein Level, weil es den semiglobal-blop
gibt.

> Was genau "Blob" in dieser Welt bedeutet, ist mir nicht ganz klar.
> Entweder, man verwendet "Blob" nur noch fuer die normal-beweglichen 
> Dinge (und also nicht mehr fuer den Global-Blob), oder (vermutlich 
> besser) "Blob" gibt es auch in den verschiedenen Geschmacksrichtungen, 
> wobei allerdings Zuweisungen/etc. nur innerhalb einer Geschmacksrichtung 
> erlaubt sind.

Bisher gibt es Variablen, Sorten, Blops, Code und Orte. Sorten sind
etwas mehr als ein großes switch; sie sind eine konzeptionelle
Bündelung zusammengehörender Codes: bla.init und blub.init sind nur im
Sinne von switch verbunden, aber bla.init und bla.land kann man so
nicht verstehen.
Variablen gibt es pro Ort genau einmal. So könnte man Ort definieren.
Blops sind ein Paket aus Variablen, das eine Sorte hat, und sich
gemeinsam bewegt. Oder, im Fall von (semi)global-blops, auch nicht
bewegt, aber das auch gemeinsam.
Ich glaube, ich komme auch grad bei Deiner Auffassung an. Dann hätte
man pro Kästchen drei Blops, die sich die Variablen disjunkt
aufteilen. global/semiglobal wäre aber nur ein Blop. Was ist mit dem
Fall? Existieren alle Variablen an allen Orten (in irgendeinem Blop)?

  Mark


> >P.S.: Immis Einträge im Changelog (also bei cvs commit) sind Englisch.
> >  Soll ich das auch so machen?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]