22:05 | <TabAtkins> | Can I get https://github.com/tc39-transfer/proposal-random-functions adopted into the tc39 repo? |
22:14 | <Chris de Almeida> | Can I get https://github.com/tc39-transfer/proposal-random-functions adopted into the tc39 repo? |
22:29 | <ljharb> | i'll surely bounce it in as soon as it gets stage 1 tho |
22:29 | <ljharb> | lmk if you need any permissions fixed or anything |
22:34 | <TabAtkins> | Ah, k, np then. So far it looks like we're good. |
22:34 | <TabAtkins> | (Someone pinged me with some good ideas for a parallel project alongside my seeded random, and it would benefit to have them consistent, so I'm running it as well.) |
23:11 | <Michael Ficarra> | ah, this person I assume? https://github.com/tc39/proposal-seeded-random/issues/21 |
23:12 | <Michael Ficarra> | TabAtkins: here's some more prior art for you: https://www.npmjs.com/package/gentest |
23:13 | <kriskowal> | ah, this person I assume? https://github.com/tc39/proposal-seeded-random/issues/21 new Math({ seed }) ) |
23:13 | <TabAtkins> | ah, this person I assume? https://github.com/tc39/proposal-seeded-random/issues/21 |
23:13 | <TabAtkins> | This reminds me that I should get in touch with TabAtkins and poison his mind with my “new math” idea. ( |
23:13 | <Michael Ficarra> | generative testing / directed fuzzing is just applying structure to a stream of randomness, so there's plenty of prior art to explore there |
23:14 | <kriskowal> | lol what |
23:15 | <kriskowal> | generative testing / directed fuzzing is just applying structure to a stream of randomness, so there's plenty of prior art to explore there |
23:16 | <Michael Ficarra> | I have done this by hand at least twice. |
23:16 | <kriskowal> | e.g., https://github.com/kriskowal/collections/blob/master/packages/specs/set-fuzz.js |
23:17 | <Michael Ficarra> | honestly, anyone who has ever made a data structure or pure data transformation as a library should have done this |
23:19 | <TabAtkins> | Thanks, I filed gentest under prior art |
23:21 | <bakkot> | I would start with just sampling an integer in a range and shuffling an array I think |
23:21 | <Michael Ficarra> | yeah it's gonna be hard to draw a line between obvious MVP inclusions and later additions |
23:21 | <Michael Ficarra> | like with iterator helpers |
23:28 | <TabAtkins> | Yup, that's why we're looking at a lot of prior art, to see what has a good argument for initial inclusion. Like, probably not all the distribution sampling from Python (tho maybe normal) |
23:28 | <TabAtkins> | But ints, floats, and shuffle I think are shoe-ins. |
23:31 | <bakkot> | I can't think of a time I've ever wanted a uniformly random float in some range other that [0, 1), but I guess I'm not opposed to having it |
23:32 | <TabAtkins> | I mean at least for floats it's not too bad to just implement it as .random()*(max-min) + min , tho perhaps there are more intelligent ways to make that slightly more uniform. |
23:55 | <Michael Ficarra> | TabAtkins: I think you'd get a slightly unbalanced distribution for some very specific min/max choices (close together on either side of an ulp boundary) using that strategy |