Re: luamplib and randomseed
Dohyun Kim <[email protected]> Mon, 2 Aug 2021 12:49:43 +0900
| Newsgroups | gmane.comp.tex.metapost |
|---|---|
| Message-ID | <CAFzmAm1Qp7LD988N5tPkx9fky7mCTqaJQ4fuXah_U3BUT8p7ug@mail.gmail.com> |
2021년 8월 2일 (월) 오전 7:56, Toby Thurston <[email protected]>님이 작성: > > There appear to be a couple of small problems with the implementation of `randomseed` in luamplib. > > First one is that the default value appears only to change every minute. > > If I run this program through `mpost` > > prologues:=3;outputtemplate:="rs.eps"; > beginfig(1); > label.top(decimal normaldeviate, origin); > label.bot(decimal minute, origin); > endfig; > end > > Then I get a different value for the random number every time, and the minute > value changes every minute (as expected). > > But if I run the same program through lualatex — LuaHBTeX, 1.13.0 (TL 2021) > > \documentclass{standalone} \usepackage{luamplib} \begin{document} \begin{mplibcode} > beginfig(1); > label.top(decimal normaldeviate, origin); > label.bot(decimal minute, origin); > endfig; > \end{mplibcode} \end{document} > > then the random number only changes when the minute changes.... > > Apparently the luamplib version is using the old default randomseed of day + minute of day despite > the fact that the relevant bit of mp.w says this: > > The global variable |random_seed| was introduced in version 0.9, > for the sole reason of stressing the fact that the initial value of the > random seed is system-dependant. The initialization code below will initialize > this variable to |(internal[mp_time] div unity)+internal[mp_day]|, but this > is not good enough on modern fast machines that are capable of running > multiple MetaPost processes within the same second. > > Could we have the default seed to set to something that is "good enough"? Or at least something > that is consistent with `mpost` ? > > > Secondly, if I include this in an mpost program > > randomseed := uniformdeviate infinity; > > I get this useful output in the log file > > {randomseed:=3768.2096} > > showing me the randomseed value actually used (which I might want to re-use later...) > > But with lualatex nothing gets written to the log when I call randomseed. > Could this be made consistent with `mpost` as well please? As for the second issue: using luamplib v2.20.8 2021/08/02 which was sent to ctan maintainers a few minutes ago, you'll see the message in the log file when \mplibshowlog{true} is declared. Best, -- Dohyun Kim Seoul, Republic of Korea -- http://tug.org/metapost/