Newest at the top
2024-11-19 16:37:01 +0100 | <Leary> | f-a: Guesswork: it does infer that much, but the constraint is not explicitly given so GHC tries to resolve it from top-level instances. `instance Mul a b c => Mul a [b] [c]` & `b ~ [c]` then put it into a loop. |
2024-11-19 16:36:56 +0100 | <f-a> | adding f :: Mul a [b] b => Bool -> a -> b -> b |
2024-11-19 16:36:11 +0100 | <f-a> | the example is take from the end of this paragraph, hellwolf https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/instances.html#instance-termination… |
2024-11-19 16:35:57 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-11-19 16:35:47 +0100 | mari-estel | (~mari-este@user/mari-estel) (Remote host closed the connection) |
2024-11-19 16:35:26 +0100 | <haskellbridge> | <hellwolf> it seems a bottom is the only "valid" formular |
2024-11-19 16:35:12 +0100 | <haskellbridge> | <hellwolf> Also, how "instance Mul a b c" can even have a parametric implementation? you know nothing about c |
2024-11-19 16:34:17 +0100 | <haskellbridge> | <hellwolf> Perhaps removing the functional dependencies, since the first instance you have does not really comply with it? |
2024-11-19 16:28:04 +0100 | weary-traveler | (~user@user/user363627) user363627 |
2024-11-19 16:24:40 +0100 | son0p | (~ff@2800:e6:4001:6cc3:2748:5c2a:65d9:57ac) son0p |
2024-11-19 16:23:36 +0100 | <f-a> | https://pastebin.com/mzSwq1um UndecidableInstances question |
2024-11-19 16:22:26 +0100 | alp | (~alp@2001:861:8ca0:4940:789d:8e16:7be2:5e3) (Ping timeout: 248 seconds) |
2024-11-19 16:21:15 +0100 | m5zs7k | (aquares@web10.mydevil.net) m5zs7k |
2024-11-19 16:21:14 +0100 | alp_ | (~alp@2001:861:8ca0:4940:483b:a21e:7fb4:76cd) |
2024-11-19 16:20:51 +0100 | m5zs7k | (aquares@web10.mydevil.net) (Read error: Connection reset by peer) |
2024-11-19 16:18:26 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) ubert |
2024-11-19 16:18:16 +0100 | f-a | (ff2a@joined.irc.for-some.fun) f-a |
2024-11-19 16:18:07 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) (Remote host closed the connection) |
2024-11-19 16:18:00 +0100 | alp | (~alp@2001:861:8ca0:4940:789d:8e16:7be2:5e3) |
2024-11-19 16:17:37 +0100 | alp | (~alp@2001:861:8ca0:4940:e2f7:5955:8ab2:2afc) (Remote host closed the connection) |
2024-11-19 16:09:08 +0100 | divya` | (~user@139.5.11.231) (Ping timeout: 244 seconds) |
2024-11-19 16:00:08 +0100 | alexherbo2 | (~alexherbo@2a02-8440-3201-1725-d030-8edc-2b2b-9bf9.rev.sfr.net) (Remote host closed the connection) |
2024-11-19 15:51:19 +0100 | tv | (~tv@user/tv) tv |
2024-11-19 15:50:45 +0100 | tv | (~tv@user/tv) (Quit: derp) |
2024-11-19 15:49:17 +0100 | euleritian | (~euleritia@dynamic-176-001-192-221.176.1.pool.telefonica.de) |
2024-11-19 15:48:39 +0100 | euleritian | (~euleritia@ip4d16fc9f.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-11-19 15:44:19 +0100 | euleritian | (~euleritia@ip4d16fc9f.dynamic.kabel-deutschland.de) |
2024-11-19 15:43:33 +0100 | euleritian | (~euleritia@ip4d16fc9f.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds) |
2024-11-19 15:42:35 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) ubert |
2024-11-19 15:42:18 +0100 | ubert | (~Thunderbi@178.115.41.15.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
2024-11-19 15:37:04 +0100 | sawilagar | (~sawilagar@user/sawilagar) sawilagar |
2024-11-19 15:36:41 +0100 | sawilagar | (~sawilagar@user/sawilagar) (Remote host closed the connection) |
2024-11-19 15:34:18 +0100 | <hellwolf> | I bet vscode has it better. |
2024-11-19 15:34:10 +0100 | <hellwolf> | emacs lsp haskell formatting just not ideal, not sure how to fix :/ |
2024-11-19 15:33:51 +0100 | <haskellbridge> | <hellwolf> https://kf8nh.com/_heisenbridge/media/matrix.org/UnZTcaLGKnpftQUaEXKifiUY/SmsNSH3-GDQ/image.png |
2024-11-19 15:30:45 +0100 | <bwe> | dminuoso, mauke, Leary: Thanks for your inputs! |
2024-11-19 15:24:08 +0100 | jinsun | (~jinsun@user/jinsun) jinsun |
2024-11-19 15:22:54 +0100 | jinsun | (~jinsun@user/jinsun) (Ping timeout: 276 seconds) |
2024-11-19 15:21:25 +0100 | mari-estel | (~mari-este@user/mari-estel) mari-estel |
2024-11-19 15:18:53 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-11-19 15:14:46 +0100 | <bwe> | dminuoso: wow, I've got it working now. It's magic. |
2024-11-19 15:07:53 +0100 | <dminuoso> | With default implementations of sizeOfP |
2024-11-19 15:07:28 +0100 | <dminuoso> | Though we could conceive a world of having `sizeOf :: Storable s => s -> Int`, `sizeOfP :: Storable s => proxy s -> Int`, `alignment :: Storable s => s -> Int` and `alignmentP :: Storable s => proxy s -> Int` |
2024-11-19 15:05:30 +0100 | <dminuoso> | (Now in this particular example it could be argued, that sizeOf might also be applied to actual values not just undefined at a type) |
2024-11-19 15:04:38 +0100 | <dminuoso> | Something like `sizeOf (Proxy :: Proxy T)` would have been cleaner. |
2024-11-19 15:04:25 +0100 | <dminuoso> | You will find plenty of snippets like `sizeOf (undefined :: T)` in the wild. |
2024-11-19 15:04:11 +0100 | <dminuoso> | bwe: Fun fact, the proxy pattern is what sizeOf in Storable should arguably use. |
2024-11-19 15:02:26 +0100 | <dminuoso> | https://hackage.haskell.org/package/servant-server-0.20.2/docs/Servant-Server.html#t:HasServer |
2024-11-19 15:02:23 +0100 | <dminuoso> | bwe: Take note that this is exactly how servant works its magic: |
2024-11-19 15:01:28 +0100 | <mauke> | (the latter part being equivalent to (Proxy :: Proxy Website)) |