[Allegro] Braucht jemand Zufallszahlen?

Thomas Berger ThB at Gymel.com
Mi Mai 14 09:47:43 CEST 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Lieber Herr Eversberg,


| Frage: Wird so etwas gebraucht? Sollten wir dafür einen FLEX-Befehl
| einrichten? Oder kann/sollte man lieber nur ein FLEX-Unterprogramm
| dafür schaffen? Groß kann der Bedarf nicht sein, er hätte sich
| sonst längst verbalisiert. Und wo es nicht nötig ist, ein Programm
| zu schreiben, da ist es nötig, kein Programm zu schreiben.
| (Und klar: hätte man statt FLEX eine richtige Programmiersprache
| genommen, wär's gar kein Thema.)

Zufallszahlen sind dann wichtig, wenn es um temporaere Datei-
oder Verzeichnisnamen geht, und sie koennen nuetzlich sein,
wenn es ums Setzen von "Duftmarken" geht: "War ich, Flex, das, der
den Satz / diese Datei angelegt hat?".

Bei $Bill gibt es Zufallszahlen auch im Kontext der GUIDs oder SIDs,
also der schweifklammrigen Ungetueme
~ {B9C9AA03-8A7A-41b0-A162-28D1A4D4FB69}
die man ueberall in der Registry antrifft (leider in mehreren
Geschmacksrichtungen, was Gross/Kleinschreibung angeht).


| Wie auch immer, was herauskäme, sollte natürlich wirklich
| unvorhersehbar sein, nicht z.B. beim ersten Aufruf in einer Sitzung
| immer dieselbe Zahl, oder gar stets bei mehrfachem Aufruf dieselbe
| Folge von Zahlen. Und innerhalb eines spezifizierten Größenbereichs
| sollte jede Zahl mit derselben Wahrscheinlichkeit herauskommen
| können. Die Zufälligkeit sollte ferner völlig sprunghaft sein und
| nicht z.B. Zahlen in aufsteigender Folge liefern, die dann erst
| bei Erreichen einer Schwelle wieder von unten begänne.
| Nähme man einfach die Uhrzeit und addierte Stunden, Minuten und
| Sekunden, wäre das wohl nicht alles gegeben.
| Ganz simpel wäre die Sache also nicht, jeder Programmierer weiß das.

... und daher nutzt er die Funktionen des Betriebssystems hierfuer
(selbst die XP-Command-Shell kennt eine Pseudoumgebungsvariable
%random%), weil das im Zweifelsfall die Zufallszahlen auch mit
Hardwareunterstuetzung errechnen kann (spezielle Chips sind zwar
normalerweise nicht eingebaut, aber sehr physiknahe Werte wie
Zeit seit dem letzten Plattenzugriff etc.).

Es waere aeusserst fahrlaessig, selbstgestrickte Pseudozufallszahlen
zu benutzen, also nicht auf die vom Betriebssystem / C Library
bereitgestellten zurueckzugreifen!

viele Gruesse
Thomas Berger


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3-nr1 (Windows XP)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iQCVAwUBSCqZH2ITJZieluOzAQLxZAP/Us8X8Im3ECv+tYG+bHjlsSU6GDD/JLKD
aYOLanzo07voW+++GibRuPgvA53ee6mAccF57Ag+hNEB2YgBAQ0SeQ1b2O2fAEjJ
rmD4f3HbYr9jhRpsHMRvMah0/HPFcx7JQhMYTajiA8WSIMTfa6/ZyzvhEwj47pbc
t5Y+3C3lelY=
=iMrF
-----END PGP SIGNATURE-----



Mehr Informationen über die Mailingliste Allegro