Logs: liberachat/#haskell
| 2026-04-03 07:58:01 | × | CiaoSen quits (~Jura@p549cb690.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 2026-04-03 07:58:26 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 256 seconds) |
| 2026-04-03 07:58:46 | × | qqq quits (~qqq@185.54.23.237) (Remote host closed the connection) |
| 2026-04-03 07:59:34 | × | merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-04-03 08:05:34 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 2026-04-03 08:07:00 | → | merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl) |
| 2026-04-03 08:09:18 | → | CiaoSen joins (~Jura@p549cb690.dip0.t-ipconnect.de) |
| 2026-04-03 08:10:42 | × | emmanuelux quits (~em@user/emmanuelux) (Quit: bye) |
| 2026-04-03 08:12:40 | → | qqq joins (~qqq@185.54.23.237) |
| 2026-04-03 08:20:13 | × | rabbull quits (~rabbull@user/rabbull) (Read error: Connection reset by peer) |
| 2026-04-03 08:20:33 | → | rabbull joins (~rabbull@user/rabbull) |
| 2026-04-03 08:22:12 | → | acidjnk_new3 joins (~acidjnk@p200300d6e700e5002ce9abe45c9e09a5.dip0.t-ipconnect.de) |
| 2026-04-03 08:23:44 | → | __monty__ joins (~toonn@user/toonn) |
| 2026-04-03 08:32:43 | × | CiaoSen quits (~Jura@p549cb690.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 2026-04-03 08:36:00 | × | Digit quits (~user@user/digit) (Ping timeout: 245 seconds) |
| 2026-04-03 08:41:11 | → | arandombit joins (~arandombi@2a02:2455:8656:7100:cd4b:38a2:fba4:622b) |
| 2026-04-03 08:41:11 | × | arandombit quits (~arandombi@2a02:2455:8656:7100:cd4b:38a2:fba4:622b) (Changing host) |
| 2026-04-03 08:41:11 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-04-03 08:45:50 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 252 seconds) |
| 2026-04-03 08:51:24 | → | Guest62 joins (~Guest62@p200300ca8f128700b6df0e37d8ec3f22.dip0.t-ipconnect.de) |
| 2026-04-03 08:55:31 | × | rembo10_ quits (~rembo10@main.remulis.com) (Quit: ZNC 1.10.1 - https://znc.in) |
| 2026-04-03 08:56:21 | → | rembo10 joins (~rembo10@main.remulis.com) |
| 2026-04-03 08:58:06 | → | Tuplanolla joins (~Tuplanoll@88-114-89-88.elisa-laajakaista.fi) |
| 2026-04-03 09:00:52 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-04-03 09:02:55 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 2026-04-03 09:07:23 | × | Guest62 quits (~Guest62@p200300ca8f128700b6df0e37d8ec3f22.dip0.t-ipconnect.de) (Quit: Client closed) |
| 2026-04-03 09:10:10 | × | synchromesh quits (~john@2406:5a00:2412:2c00:fc97:d0a4:cdd9:afc1) (Read error: Connection reset by peer) |
| 2026-04-03 09:11:03 | → | synchromesh joins (~john@2406:5a00:2412:2c00:343e:4e23:bce:73a3) |
| 2026-04-03 09:12:25 | → | Digitteknohippie joins (~user@user/digit) |
| 2026-04-03 09:12:28 | → | Square3 joins (~Square@user/square) |
| 2026-04-03 09:19:14 | Digitteknohippie | is now known as Digit |
| 2026-04-03 09:54:17 | × | xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds) |
| 2026-04-03 10:02:26 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 268 seconds) |
| 2026-04-03 10:07:12 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 2026-04-03 10:07:22 | × | Square3 quits (~Square@user/square) (Ping timeout: 268 seconds) |
| 2026-04-03 10:07:25 | → | califax joins (~califax@user/califx) |
| 2026-04-03 10:10:37 | → | arandombit joins (~arandombi@2a02:2455:8656:7100:cd4b:38a2:fba4:622b) |
| 2026-04-03 10:10:37 | × | arandombit quits (~arandombi@2a02:2455:8656:7100:cd4b:38a2:fba4:622b) (Changing host) |
| 2026-04-03 10:10:37 | → | arandombit joins (~arandombi@user/arandombit) |
| 2026-04-03 10:16:14 | → | acidjnk_new joins (~acidjnk@p200300d6e700e5029fa95e10e4e0754b.dip0.t-ipconnect.de) |
| 2026-04-03 10:19:21 | × | acidjnk_new3 quits (~acidjnk@p200300d6e700e5002ce9abe45c9e09a5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 2026-04-03 10:20:29 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 2026-04-03 10:47:43 | × | arandombit quits (~arandombi@user/arandombit) (Ping timeout: 244 seconds) |
| 2026-04-03 10:48:40 | <gentauro> | > :i newStdGen |
| 2026-04-03 10:48:41 | <lambdabot> | <hint>:1:1: error: parse error on input `:' |
| 2026-04-03 10:48:46 | <gentauro> | % :i newStdGen |
| 2026-04-03 10:48:46 | <yahb2> | <interactive>:1:1: error: [GHC-76037] Not in scope: ‘newStdGen’ |
| 2026-04-03 10:49:05 | <gentauro> | % import System.Random |
| 2026-04-03 10:49:05 | <yahb2> | <no location info>: error: [GHC-35235] ; Could not find module ‘System.Random’. ; It is not a module in the current program, or in any known package. |
| 2026-04-03 10:49:08 | <gentauro> | > import System.Random |
| 2026-04-03 10:49:09 | <lambdabot> | <hint>:1:1: error: parse error on input `import' |
| 2026-04-03 11:02:13 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 2026-04-03 11:43:04 | <tomsmeding> | gentauro: random is not a boot library |
| 2026-04-03 11:44:30 | <tomsmeding> | %% System.Process.system "ghc-pkg --global list" |
| 2026-04-03 11:44:30 | <yahb2> | https://paste.tomsmeding.com/SSJGWZ5X |
| 2026-04-03 11:56:46 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 2026-04-03 12:03:32 | → | czan joins (~czan@user/mange) |
| 2026-04-03 12:12:45 | <gentauro> | tomsmeding: :( |
| 2026-04-03 12:13:22 | <gentauro> | tomsmeding: how do you invoke our Lord and Saviour RNGesus here? |
| 2026-04-03 12:24:35 | → | xff0x joins (~xff0x@2405:6580:b080:900:ec01:f28c:6f01:3489) |
| 2026-04-03 12:25:54 | → | tromp joins (~textual@2001:1c00:340e:2700:f5b2:b468:1c7d:8570) |
| 2026-04-03 12:30:57 | → | somemathguy joins (~somemathg@user/somemathguy) |
| 2026-04-03 12:32:25 | <tomsmeding> | % :m Data.Bits Data.Word |
| 2026-04-03 12:32:25 | <yahb2> | <no output> |
| 2026-04-03 12:32:37 | <tomsmeding> | % data RNG = RNG Word64 Word64 Word64 Word64 deriving (Show) -- https://arxiv.org/pdf/2312.17043 CWG64 |
| 2026-04-03 12:32:37 | <yahb2> | <no output> |
| 2026-04-03 12:32:43 | <tomsmeding> | % cwg64 :: RNG -> (Word64, RNG) ; cwg64 (RNG x a w s) = let x' = (x `quot` 2) * ((a + x) .|. 1) `xor` (w + s) in (a `shiftR` 48 `xor` x', RNG x' (a+x) (w+s) s) |
| 2026-04-03 12:32:43 | <yahb2> | <no output> |
| 2026-04-03 12:32:48 | <tomsmeding> | % newRNG :: Word64 -> RNG ; newRNG seed = iterate (snd . cwg64) (RNG 0 0 0 (2*seed+1)) !! 48 |
| 2026-04-03 12:32:48 | <yahb2> | <no output> |
| 2026-04-03 12:33:24 | <tomsmeding> | % take 4 . map fst . iterate (cwg64 . snd) $ cwg64 (newRNG 42) |
| 2026-04-03 12:33:24 | <yahb2> | [14283230361796893884,4031505161053706,7205329903210052340,4002821135440951121] |
| 2026-04-03 12:34:53 | <tomsmeding> | % cwg64 :: RNG -> (Word64, RNG) ; cwg64 (RNG x a w s) = let x' = (x `quot` 2) * ((a + x) .|. 1) `xor` (w + s) in ((a+x) `shiftR` 48 `xor` x', RNG x' (a+x) (w+s) s) |
| 2026-04-03 12:34:53 | <yahb2> | <no output> |
| 2026-04-03 12:34:56 | <tomsmeding> | % take 4 . map fst . iterate (cwg64 . snd) $ cwg64 (newRNG 42) |
| 2026-04-03 12:34:56 | <yahb2> | [14283230361796891556,4031505161050178,7205329903210052357,4002821135440958291] |
| 2026-04-03 12:35:48 | <tomsmeding> | ... interesting, that typo didn't change the results; I wonder if that means that x just doesn't have high bits? |
| 2026-04-03 12:36:00 | <tomsmeding> | ¯\_(ツ)_/¯ |
| 2026-04-03 12:50:32 | × | craunts795335385 quits (~craunts@152.32.99.2) (Quit: The Lounge - https://thelounge.chat) |
| 2026-04-03 13:02:57 | × | tromp quits (~textual@2001:1c00:340e:2700:f5b2:b468:1c7d:8570) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2026-04-03 13:05:00 | × | divlamir quits (~divlamir@user/divlamir) (Read error: Connection reset by peer) |
| 2026-04-03 13:05:19 | <int-e> | % Data.ByteString.Lazy.take 32 <$> Data.ByteString.Lazy.readFile "/dev/urandom" |
| 2026-04-03 13:05:19 | <yahb2> | *** Exception: /dev/urandom: openBinaryFile: does not exist (No such file or directory) ; ; HasCallStack backtrace: ; ioError, called at libraries/ghc-internal/src/GHC/Internal/Foreign/C/Error.h... |
| 2026-04-03 13:05:26 | → | divlamir joins (~divlamir@user/divlamir) |
| 2026-04-03 13:05:27 | <int-e> | oh, haha |
| 2026-04-03 13:05:52 | × | czan quits (~czan@user/mange) (Quit: Zzz...) |
| 2026-04-03 13:11:11 | → | tromp joins (~textual@2001:1c00:340e:2700:f5b2:b468:1c7d:8570) |
| 2026-04-03 13:18:40 | <int-e> | % foreign import ccall getrandom :: Ptr a -> CSize -> CInt -> IO CSize |
| 2026-04-03 13:18:40 | <yahb2> | <no output> |
| 2026-04-03 13:18:40 | × | synchromesh quits (~john@2406:5a00:2412:2c00:343e:4e23:bce:73a3) (Read error: Connection reset by peer) |
| 2026-04-03 13:18:50 | <int-e> | % alloca (\p -> getrandom p 8 0 >> peek p) :: IO Word |
| 2026-04-03 13:18:50 | <yahb2> | 1080570571463088587 |
| 2026-04-03 13:19:48 | → | synchromesh joins (~john@2406:5a00:2412:2c00:343e:4e23:bce:73a3) |
| 2026-04-03 13:32:30 | <tomsmeding> | int-e: cool |
| 2026-04-03 13:33:45 | <tomsmeding> | % :q |
| 2026-04-03 13:33:45 | <yahb2> | <bye> |
| 2026-04-03 13:33:51 | <tomsmeding> | % Data.ByteString.Lazy.take 32 <$> Data.ByteString.Lazy.readFile "/dev/urandom" |
| 2026-04-03 13:33:51 | <yahb2> | "V4\205\ESC\247Kv\194\EOT\144\DLEf\165\211%\201\197&\156\ESC\190\CAN*\RS\CAN\215Fj\"\226n\CAN" |
| 2026-04-03 13:34:07 | <tomsmeding> | added it to the sandbox |
| 2026-04-03 13:34:38 | <tomsmeding> | gentauro: ^ |
All times are in UTC.