2026/05/28

Newest at the top

2026-05-28 22:23:44 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-05-28 22:18:48 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 22:07:52 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 253 seconds)
2026-05-28 22:07:52 +0000emmanuelux(~em@user/emmanuelux) emmanuelux
2026-05-28 22:07:13 +0000 <janus> "Go to the new bug tracker" and it takes you to cvs.haskell.org o_O
2026-05-28 22:06:46 +0000 <janus> and also, i realized that ghc used sourceforge before it used trac. so the bugs are on https://sourceforge.net/p/ghc/bugs/
2026-05-28 22:05:43 +0000 <janus> just took me way too long to realize that libc6-dev was not properly declared a dependency...
2026-05-28 22:04:17 +0000 <janus> and then to bootstrap GHC4 (including profiling build), it takes another 15 min on my laptop from 2016
2026-05-28 22:03:44 +0000 <janus> so you can just launch Debian Woody and install GHC4 in 30 secs
2026-05-28 22:03:34 +0000 <janus> just found that docker hub has images for debian going really far back, and apt-get still works on them
2026-05-28 22:03:08 +0000 <jreicher> I quote from the paper: "A let expression (and only a let) allocates an object in the heap."
2026-05-28 22:02:52 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 22:01:42 +0000 <jreicher> zq: implementing let in lambda calculus is a lambda calculus thing. In the Haskell machine let has a "machine level" significance. You probably want to look at the STG machine definition.
2026-05-28 21:59:06 +0000LiberaJacques(~LiberaJac@82.40.71.42) (K-Lined)
2026-05-28 21:58:59 +0000LiberaJacques(~LiberaJac@82.40.71.42)
2026-05-28 21:55:34 +0000Beowulf(florian@sleipnir.bandrate.org) (Ping timeout: 256 seconds)
2026-05-28 21:55:09 +0000 <monochrom> I don't understand why. But I guess if you take HM minus occurs-check you can do it, i.e., now you allow infinite types like D = D -> A.
2026-05-28 21:54:08 +0000 <monochrom> Fun fact: C++ can type-infer and accept the self-app trick `auto foo = [](auto f, int x) -> int { return x<2 ? x : f(f, x-1) + f(f, x-2); }; ... foo(foo, 5) ...`
2026-05-28 21:51:53 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 251 seconds)
2026-05-28 21:46:41 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 21:41:10 +0000michalz(~michalz@185.246.207.201) (Remote host closed the connection)
2026-05-28 21:38:05 +0000 <monochrom> Ah same thing.
2026-05-28 21:37:22 +0000 <monochrom> I defined `newtype D a = D (D a -> a)` to obtain fix.
2026-05-28 21:35:27 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2026-05-28 21:30:43 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 21:09:27 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2026-05-28 21:06:39 +0000bggd(~bgg@user/bggd) bggd
2026-05-28 21:06:39 +0000bggd(~bgg@2a01:e0a:fd5:f510:7685:8777:7677:172c) (Changing host)
2026-05-28 21:06:38 +0000bggd(~bgg@2a01:e0a:fd5:f510:7685:8777:7677:172c)
2026-05-28 20:59:53 +0000weary-traveler(~user@user/user363627) user363627
2026-05-28 20:59:36 +0000merijn(~merijn@77.242.116.146) (Ping timeout: 259 seconds)
2026-05-28 20:55:04 +0000Square2(~Square@user/square) (Ping timeout: 276 seconds)
2026-05-28 20:52:46 +0000ouilemur(~jgmerritt@user/ouilemur) ouilemur
2026-05-28 20:47:29 +0000shots____fired(uid751043@id-751043.lymington.irccloud.com)
2026-05-28 20:46:14 +0000shots____fired(uid751043@id-751043.lymington.irccloud.com) (Excess Flood)
2026-05-28 20:44:45 +0000merijn(~merijn@77.242.116.146) merijn
2026-05-28 20:43:27 +0000peterbecich(~Thunderbi@71.84.33.135) (Ping timeout: 252 seconds)
2026-05-28 20:43:09 +0000shots____fired(uid751043@id-751043.lymington.irccloud.com)
2026-05-28 20:42:09 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Read error: Connection reset by peer)
2026-05-28 20:42:06 +0000ouilemur(~jgmerritt@user/ouilemur) (Quit: WeeChat 4.9.0)
2026-05-28 20:39:46 +0000diabloblanco(~diablobla@user/diabloblanco) (Ping timeout: 248 seconds)
2026-05-28 20:39:45 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 20:37:07 +0000Square3(~Square4@user/square) Square
2026-05-28 20:35:52 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-05-28 20:35:27 +0000diabloblanco(~diablobla@user/diabloblanco) diabloblanco
2026-05-28 20:31:56 +0000takuan(~takuan@d8D86B9E9.access.telenet.be) (Ping timeout: 266 seconds)
2026-05-28 20:31:03 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-05-28 20:27:44 +0000pavonia(~user@user/siracusa) siracusa
2026-05-28 20:22:37 +0000 <int-e> Right. You get a fixed point combinator. You don't get sharing though. (yfix (1:) produces an infinite heap object)
2026-05-28 20:21:38 +0000peterbecich(~Thunderbi@71.84.33.135) peterbecich