From: Achim Gratz <Stromeko@nexgo.de>
To: emacs-devel@gnu.org
Subject: Re: random doesn't feel very random
Date: Sun, 26 Aug 2012 16:24:55 +0200 [thread overview]
Message-ID: <87wr0livd4.fsf@Rainer.invalid> (raw)
In-Reply-To: E1T5cdL-000680-0A@fencepost.gnu.org
Richard Stallman writes:
> If that is really true, maybe the code to set the seed needs to be
> changed. Maybe it only gives you seed values from a subset of all
> those possible.
>
> Perhaps instead of initializing the seed based on the time, it should
> change the seed based on the time. That way, all possible seeds
> could occur after (random t).
Re-seeding a PRNG inside the same application is misguided even when
there are multiple consumers of the sequence. Provided the PRNG is of
sufficient quality, partial sequences aren't any less random. Therefore
the PRNG should be seeded once at start-up, from a good source of
entropy. The only application for re-seeding is to provide a repeatable
sequence (but Emacs' random doesn't allow for that since you can't give
the seed value directly) or if the PRNG state has been compromised.
Given the widespread use of (random t) it should probably be made a
no-op and a separate API to provide a local state for application that
wish to control it for whatever reason should be made available.
Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
Waldorf MIDI Implementation & additional documentation:
http://Synth.Stromeko.net/Downloads.html#WaldorfDocs
next prev parent reply other threads:[~2012-08-26 14:24 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-24 5:47 random doesn't feel very random Ivan Kanis
2012-08-24 6:22 ` Tassilo Horn
2012-08-24 17:19 ` random doesn't feel very random, random doesn't feel very random, " Ivan Kanis
2012-08-24 18:50 ` Stephen J. Turnbull
2012-08-25 7:46 ` Ivan Kanis
2012-08-24 6:30 ` Leo
2012-08-24 22:48 ` Richard Stallman
2012-08-24 22:57 ` Andreas Schwab
2012-08-25 20:55 ` Richard Stallman
2012-08-25 23:25 ` Leo
2012-08-26 13:12 ` Richard Stallman
2012-08-26 14:24 ` Achim Gratz [this message]
2012-08-26 23:22 ` Leo
2012-08-27 0:50 ` Stefan Monnier
2012-08-27 6:31 ` Simon Leinen
2012-08-27 3:41 ` Richard Stallman
2012-08-27 4:48 ` Stefan Monnier
2012-08-31 9:41 ` Eli Zaretskii
2012-08-31 15:06 ` Stefan Monnier
2012-08-31 15:23 ` chad
2012-08-31 17:50 ` Eli Zaretskii
2012-08-31 19:43 ` Stefan Monnier
2012-09-01 1:18 ` Paul Eggert
2012-09-01 7:19 ` Achim Gratz
2012-09-01 13:19 ` Paul Eggert
2012-09-04 19:19 ` Nix
2012-09-04 20:07 ` Paul Eggert
2012-09-04 20:11 ` Nix
2012-09-02 12:27 ` Jason Rumney
2012-09-02 13:08 ` Stefan Monnier
2012-09-01 7:22 ` Ivan Kanis
2012-09-01 11:13 ` joakim
2012-08-31 23:04 ` Leo
2012-08-27 5:17 ` Achim Gratz
2012-08-31 9:42 ` Eli Zaretskii
2012-08-31 15:07 ` Stefan Monnier
2012-08-31 17:50 ` Eli Zaretskii
2012-08-26 9:06 ` Ivan Kanis
2012-08-24 7:03 ` Stephen J. Turnbull
2012-08-24 9:10 ` Paul Eggert
2012-08-24 17:45 ` Stephen J. Turnbull
2012-08-24 12:45 ` OT: appropriateness of "random" for playlist generation (was: random doesn't feel very random) Jeremiah Dodds
2012-08-24 14:37 ` random doesn't feel very random Drew Adams
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wr0livd4.fsf@Rainer.invalid \
--to=stromeko@nexgo.de \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).