2026/01/08

Newest at the top

2026-01-08 10:25:52 +0100merijn(~merijn@77.242.116.146) merijn
2026-01-08 10:22:48 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 244 seconds)
2026-01-08 10:21:15 +0100vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 240 seconds)
2026-01-08 10:15:59 +0100 <int-e> dutchie: Btw there's an error message reading exercise here: it complains that it doesn't know that some `a0` and `Value` have the same representation. It's easy to guess where the `Value` comes from, but GHC should also tell you what it introduced `a0` for.
2026-01-08 10:12:16 +0100 <danza> what is the point of having a newtype if then you use coerce
2026-01-08 10:11:51 +0100tromp(~textual@2001:1c00:3487:1b00:a460:d351:8685:d1f0) (Quit: My iMac has gone to sleep. ZZZzzz…)
2026-01-08 10:10:51 +0100 <int-e> and specifying the key type is less of a hassle than figuring out whether we have partial type signatures :P
2026-01-08 10:10:45 +0100chromoblob(~chromoblo@user/chromob1ot1c) chromoblob\0
2026-01-08 10:10:12 +0100 <int-e> merijn: yeah but it's complaining about the Value type
2026-01-08 10:10:03 +0100 <dutchie> ah explicit annotation on Map.empty does it
2026-01-08 10:09:55 +0100chromoblob(~chromoblo@user/chromob1ot1c) (Ping timeout: 240 seconds)
2026-01-08 10:09:47 +0100 <merijn> At least, it shouldn't be
2026-01-08 10:09:43 +0100 <merijn> Map's key type is not coercible, afaik
2026-01-08 10:09:14 +0100 <int-e> presumably you need a type signature like (Map.empty :: Map Text Value) so that the inner type is actually fully known.
2026-01-08 10:08:26 +0100 <dutchie> so do I have to do `coerce . cons . coerce`? feels like I might as well explicitly unwrap/wrap then
2026-01-08 10:08:04 +0100 <dutchie> right, does that not work? I want to coerce `NonEmpty (Map) -> NonEmpty (Map)` to a function on my newtype
2026-01-08 10:07:49 +0100Googulator14Googulator
2026-01-08 10:04:47 +0100 <danza> cons is partially applied, so you are applying coerce to a function
2026-01-08 10:03:10 +0100 <lambdabot> Cons s s a a => a -> s -> s
2026-01-08 10:03:08 +0100 <danza> :t cons
2026-01-08 10:01:08 +0100 <dutchie> s/`/"/
2026-01-08 10:01:02 +0100 <dutchie> the error is "Couldn't match representation of type ‘a0’ with that of ‘Value’`
2026-01-08 10:00:45 +0100kuribas(~user@2a02-1810-2825-6000-e123-c17a-ed17-774f.ip6.access.telenet.be) kuribas
2026-01-08 10:00:35 +0100 <dutchie> should coerce be able to do this? or am I missing what's going on
2026-01-08 10:00:16 +0100 <dutchie> (in a state monad)
2026-01-08 10:00:10 +0100 <dutchie> question about coerce: I have a newtype of NonEmpty (Map Text Value), and I want to write something like `modify (coerce $ NonEmpty.cons Map.empty)` but it doesn't typecheck
2026-01-08 09:59:48 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2026-01-08 09:58:47 +0100merijn(~merijn@77.242.116.146) merijn
2026-01-08 09:58:07 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 255 seconds)
2026-01-08 09:56:55 +0100peterbecich(~Thunderbi@71.84.33.135) (Ping timeout: 240 seconds)
2026-01-08 09:49:35 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2026-01-08 09:46:15 +0100acidjnk(~acidjnk@p200300d6e7171973ed8816f9e416ce0a.dip0.t-ipconnect.de) acidjnk
2026-01-08 09:43:37 +0100emmanuelux(~emmanuelu@user/emmanuelux) (Remote host closed the connection)
2026-01-08 09:42:52 +0100vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2026-01-08 09:39:37 +0100orcus(~orcus@user/brprice) (Ping timeout: 264 seconds)
2026-01-08 09:39:28 +0100orcus-(~orcus@user/brprice) brprice
2026-01-08 09:30:11 +0100chele(~chele@user/chele) chele
2026-01-08 09:21:03 +0100lortabac(~lortabac@mx1.fracta.dev) lortabac
2026-01-08 09:19:49 +0100lortabac(~lortabac@mx1.fracta.dev) (Ping timeout: 264 seconds)
2026-01-08 09:18:59 +0100synchromesh(~john@2406:5a00:2412:2c00:d907:3b01:3c28:cb58) synchromesh
2026-01-08 09:17:59 +0100synchromesh(~john@2406:5a00:2412:2c00:4db3:269e:6459:c957) (Read error: Connection reset by peer)
2026-01-08 09:16:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2026-01-08 09:15:01 +0100Square3(~Square@user/square) (Ping timeout: 244 seconds)
2026-01-08 09:13:34 +0100notzmv(~umar@user/notzmv) (Ping timeout: 244 seconds)
2026-01-08 09:10:45 +0100duckworld(~duckworld@user/duckworld) duckworld
2026-01-08 09:10:06 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2026-01-08 09:09:51 +0100danza(~danza@user/danza) danza
2026-01-08 09:09:48 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-08 08:58:46 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-01-08 08:58:42 +0100housemate(~housemate@202.7.247.224) housemate