2026/06/01

Newest at the top

2026-06-01 19:21:50 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-06-01 19:15:16 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 19:08:49 +0000peterbecich(~Thunderbi@71.84.33.135) (Ping timeout: 268 seconds)
2026-06-01 19:06:25 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-06-01 19:01:34 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 18:57:22 +0000wickedjargon(~user@207.194.126.30) (Remote host closed the connection)
2026-06-01 18:50:59 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-06-01 18:46:50 +0000divlamir_divlamir
2026-06-01 18:46:49 +0000divlamir(~divlamir@user/divlamir) (Ping timeout: 244 seconds)
2026-06-01 18:45:45 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 18:44:47 +0000divlamir_(~divlamir@user/divlamir) divlamir
2026-06-01 18:34:54 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-06-01 18:32:29 +0000 <tomsmeding> essentially anything that requires a mutable array fast becomes annoying in haskell, and you don't even get SIMD vectorisation
2026-06-01 18:31:36 +0000 <tomsmeding> there is plenty of code that is simultaneously awkward to express in haskell _and_ slow, and using a proper imperative language addresses both
2026-06-01 18:31:06 +0000 <tomsmeding> merijn: re "you should pick haskell over C": perhaps over C, but you should definitely not pick haskell over every other imperative language
2026-06-01 18:30:43 +0000 <tomsmeding> there may be formulations of the categorical combinators that address these relatively stupid issues
2026-06-01 18:30:19 +0000 <tomsmeding> you can of course improve this to O(log |Γ|) with a tree structure, but then you have to construct that tree, etc.
2026-06-01 18:29:59 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 18:29:53 +0000 <tomsmeding> nest this and variable reference becomes O(|Γ|)
2026-06-01 18:29:45 +0000 <tomsmeding> concretely, the idea of a local binding in combinators is pairing up an additional value with your input; that means that accessing your original input now takes one additional projection
2026-06-01 18:28:57 +0000 <tomsmeding> e.g. don't expect your variable references to be constant-time any more
2026-06-01 18:28:45 +0000 <tomsmeding> jaror: the thing I may have told you at some point is that to do Conal's fancy stuff on combinators you have to translate your pointful program to combinators first, and that translation introduces inefficiencies
2026-06-01 18:18:56 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-06-01 18:17:33 +0000divlamir_divlamir
2026-06-01 18:17:33 +0000divlamir(~divlamir@user/divlamir) (Ping timeout: 263 seconds)
2026-06-01 18:14:39 +0000divlamir_(~divlamir@user/divlamir) divlamir
2026-06-01 18:12:07 +0000peterbecich(~Thunderbi@71.84.33.135) peterbecich
2026-06-01 18:11:36 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 18:01:18 +0000tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net)
2026-06-01 18:00:50 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2026-06-01 17:58:43 +0000tnt1(~Thunderbi@user/tnt1) (Ping timeout: 272 seconds)
2026-06-01 17:56:09 +0000Raito_Bezarius(~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) (Ping timeout: 245 seconds)
2026-06-01 17:55:49 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 17:52:44 +0000chele(~chele@user/chele) (Remote host closed the connection)
2026-06-01 17:48:36 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) lisbeths
2026-06-01 17:46:21 +0000Square2(~Square@user/square) Square
2026-06-01 17:44:33 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-06-01 17:42:39 +0000Guest86(~Guest86@109-81-172-14.rct.o2.cz) (Client Quit)
2026-06-01 17:41:19 +0000Guest86(~Guest86@109-81-172-14.rct.o2.cz)
2026-06-01 17:41:01 +0000tnt1(~Thunderbi@user/tnt1) tnt1
2026-06-01 17:38:09 +0000 <newmind> i think with haskell predictability of performance is more of a problem than in the absolute. it's not always straightforward as in, say, C
2026-06-01 17:37:50 +0000merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-06-01 17:37:22 +0000wickedjargon(~user@207.194.126.30) wickedjargon
2026-06-01 17:36:57 +0000wickedjargon(~user@207.194.126.30) (Remote host closed the connection)
2026-06-01 17:36:16 +0000wickedjargon(~user@207.194.126.30) wickedjargon
2026-06-01 17:35:58 +0000 <sm> you meant reliably optimal performance, maybe
2026-06-01 17:35:39 +0000ft(~ft@p4fc2aedc.dip0.t-ipconnect.de) ft
2026-06-01 17:35:23 +0000 <sm> many haskell programs run "fast" by default, compared to some other languages
2026-06-01 17:34:57 +0000 <sm> I think that's a bit too strong
2026-06-01 17:28:59 +0000 <yin> performance is never an easy goal with haskell