Newest at the top
2024-10-19 00:15:39 +0200 | mreh | (~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Ping timeout: 276 seconds) |
2024-10-19 00:07:12 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds) |
2024-10-19 00:05:10 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-10-18 23:58:08 +0200 | <dmj`> | pretty sure microhs does this |
2024-10-18 23:57:58 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-10-18 23:57:41 +0200 | <dmj`> | it could be added technically, and then its usage would be restricted, so end users couldn't express higher order functions in type families |
2024-10-18 23:56:40 +0200 | <dmj`> | Ok we do have KindApp, we'd need TypeLam, which would be problematic |
2024-10-18 23:55:09 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2024-10-18 23:53:53 +0200 | <int-e> | and so are type synonyms (which can't be partially applied) |
2024-10-18 23:53:20 +0200 | <dmj`> | that's the restriction on type families, they're not higher order. |
2024-10-18 23:52:19 +0200 | <dmj`> | you're right it would require higher order unification |
2024-10-18 23:51:30 +0200 | <dmj`> | we just have KindFun |
2024-10-18 23:51:09 +0200 | mreh | (~matthew@host86-128-2-51.range86-128.btcentralplus.com) mreh |
2024-10-18 23:50:34 +0200 | <dmj`> | we'd need to add a KindApp constructor |
2024-10-18 23:50:20 +0200 | <int-e> | Which I think is something GHC is trying very hard to avoid. |
2024-10-18 23:49:43 +0200 | <int-e> | well until things become fully dependently typed |
2024-10-18 23:49:25 +0200 | <int-e> | nobody's unifying terms |
2024-10-18 23:49:16 +0200 | <int-e> | dmj`: but yours are at the type level |
2024-10-18 23:48:29 +0200 | <dmj`> | int-e: term level lambdas don't require higher order unification so |
2024-10-18 23:47:29 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-10-18 23:42:36 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-10-18 23:41:31 +0200 | <dmj`> | yea, definitely don't want higher order unification, but would like a lightweight way around restriction, one that doesn't involve newtypes |
2024-10-18 23:35:08 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-10-18 23:27:49 +0200 | <int-e> | I still expect that the compiler would fall flat on its nose if you allowed this, because suddenly you'll have to deal with constraints like Functor (\a -> Foo a b) => ... and ultimately deal at least with some of the messier complications of higher order unification. |
2024-10-18 23:26:40 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-10-18 23:26:34 +0200 | Feuermagier | (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
2024-10-18 23:24:11 +0200 | <dmj`> | or allow type synonyms to rearrange the variables so kind inference would pass |
2024-10-18 23:21:59 +0200 | <dmj`> | supposedly it does |
2024-10-18 23:21:51 +0200 | <int-e> | "expose" - does the compiler actually have that internally now? |
2024-10-18 23:20:49 +0200 | <dmj`> | instance Functor (\a -> Foo a b) where |
2024-10-18 23:20:21 +0200 | mreh | (~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Ping timeout: 248 seconds) |
2024-10-18 23:19:59 +0200 | <dmj`> | would be nice to expose type level lambda syntax in instance heads |
2024-10-18 23:19:55 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-10-18 23:17:30 +0200 | dcoutts_ | (~duncan@host86-143-111-204.range86-143.btcentralplus.com) (Ping timeout: 252 seconds) |
2024-10-18 23:14:08 +0200 | poxel | (~lennart@user/poxel) (Quit: WeeChat 4.4.2) |
2024-10-18 23:13:37 +0200 | supercode | (~supercode@user/supercode) supercode |
2024-10-18 23:10:06 +0200 | hgolden__ | (~hgolden@23.162.40.110) (Ping timeout: 265 seconds) |
2024-10-18 23:09:09 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-10-18 23:07:22 +0200 | hgolden_ | (~hgolden@146.70.173.229) hgolden |
2024-10-18 23:04:32 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) merijn |
2024-10-18 23:02:44 +0200 | kimiamania | (~924ba01d@user/kimiamania) kimiamania |
2024-10-18 23:02:21 +0200 | kimiamania | (~924ba01d@user/kimiamania) (Quit: PegeLinux) |
2024-10-18 23:01:48 +0200 | neuroevolutus | (~neuroevol@2001:ac8:9a:75::e014) (Quit: Client closed) |
2024-10-18 22:58:59 +0200 | mima | (~mmh@user/mima) mima |
2024-10-18 22:57:14 +0200 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) tcard |
2024-10-18 22:56:36 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2024-10-18 22:54:38 +0200 | dcoutts__ | (~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848) (Ping timeout: 265 seconds) |
2024-10-18 22:53:36 +0200 | merijn | (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-10-18 22:51:39 +0200 | dcoutts_ | (~duncan@host86-143-111-204.range86-143.btcentralplus.com) |
2024-10-18 22:50:07 +0200 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |