2025/01/31

Newest at the top

2025-01-31 19:05:34 +0100jespada(~jespada@2800:a4:2215:4d00:20a9:6cd:d7c4:a65f) jespada
2025-01-31 19:02:48 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 246 seconds)
2025-01-31 19:01:01 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Quit: Gateway shutdown)
2025-01-31 19:00:32 +0100vektor(~vektor@IP-149249154134.pools.medianet-world.de)
2025-01-31 18:59:47 +0100ash3en1ash3en
2025-01-31 18:58:49 +0100tabaqui1(~root@87.200.129.102) (Ping timeout: 260 seconds)
2025-01-31 18:58:37 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-01-31 18:58:06 +0100vektor(~vektor@IP-149249154134.pools.medianet-world.de) (Quit: Client closed)
2025-01-31 18:57:28 +0100ash3en1(~Thunderbi@146.70.124.222) ash3en
2025-01-31 18:57:21 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 276 seconds)
2025-01-31 18:56:30 +0100jespada(~jespada@2800:a4:2215:4d00:20a9:6cd:d7c4:a65f) (Quit: My Mac has gone to sleep. ZZZzzz…)
2025-01-31 18:54:37 +0100sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2025-01-31 18:52:20 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2025-01-31 18:51:12 +0100ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Quit: ash3en)
2025-01-31 18:51:12 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2025-01-31 18:48:21 +0100target_i(~target_i@user/target-i/x-6023099) target_i
2025-01-31 18:39:09 +0100ensyde(~ensyde@2601:5c6:c200:6dc0::64a2) (Ping timeout: 260 seconds)
2025-01-31 18:34:31 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-01-31 18:34:08 +0100urdh(~urdh@user/urdh) (Ping timeout: 245 seconds)
2025-01-31 18:33:47 +0100acidjnk_new3(~acidjnk@p200300d6e7283f83f8f1a3a9ad07643b.dip0.t-ipconnect.de) acidjnk
2025-01-31 18:33:30 +0100 <EvanR> s/Blah/Foo, s/Foo/Blah, Blarg!
2025-01-31 18:28:54 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-01-31 18:23:09 +0100 <ski> c_wraith : hm, subsumption worked something like the above ?
2025-01-31 18:23:08 +0100 <ski> )
2025-01-31 18:22:42 +0100 <ski> (if you'd use an explicit type signature, you'd still need to include the constraint `Foo x y' in `frob :: Foo x y => Blah x y -> Blah x y'
2025-01-31 18:22:23 +0100 <ski> er, s/Blah x y =>/Foo x y =>/
2025-01-31 18:21:17 +0100 <ski> '
2025-01-31 18:21:12 +0100 <ski> therefore `Blah x y -> Blah x y' means `(x -> (x y,y)) -> (x -> (x y,y))' with `Foo x y' as presupposition, so if that's the inferred type of a function binding, it'd get (assuming no further constraints on `x' and `y' generalized to `forall x y. Blah x y => (x -> (x y,y)) -> (x -> (x y,y))
2025-01-31 18:19:04 +0100 <ski> type Foo x y => Blah x y = x -> (x y,y) -- if `Foo x y' holds, then `Blah x y' is an alias for `(x y,y)'
2025-01-31 18:18:12 +0100 <ski> .. it seems like it would perhaps be useful to be able to declare a constraint as a presupposition of a synonym
2025-01-31 18:17:54 +0100 <ski> (iow, `type Blah x y = Foo x y => x -> (x y,y)' .. still, it's not too clear how useful this would be)
2025-01-31 18:17:51 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
2025-01-31 18:15:14 +0100 <ski> "you're (intentionally or not) defining an existential" -- unless you parameterize
2025-01-31 18:14:54 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 252 seconds)
2025-01-31 18:14:33 +0100chele(~chele@user/chele) (Remote host closed the connection)
2025-01-31 18:13:48 +0100ubert(~Thunderbi@p200300ecdf4e6362e6fd4bc8009ee988.dip0.t-ipconnect.de) ubert
2025-01-31 18:13:29 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 260 seconds)
2025-01-31 18:12:48 +0100ubert(~Thunderbi@p200300ecdf4e6362e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2025-01-31 18:11:21 +0100 <lxsameer> thank you
2025-01-31 18:09:12 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-01-31 18:08:51 +0100 <c_wraith> I still can't believe that was GHC's default behavior for forever.
2025-01-31 18:08:12 +0100 <c_wraith> unless you have deep subsumption enabled, in which case it implicitly lifts the constraint to the top of the type
2025-01-31 18:06:48 +0100Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2025-01-31 18:06:18 +0100ubert(~Thunderbi@p200300ecdf4e6362e6b318fffe838f33.dip0.t-ipconnect.de) ubert
2025-01-31 18:02:55 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-01-31 18:02:11 +0100 <lxsameer> thank you
2025-01-31 18:02:09 +0100 <lxsameer> merijn: ok i have to read more about it then
2025-01-31 18:01:17 +0100 <merijn> rankn type, I meant
2025-01-31 18:01:09 +0100 <merijn> eh, not existential
2025-01-31 18:01:00 +0100 <merijn> lxsameer: Because otherwise you're (intentionally or not) defining an existential