Newest at the top
2024-09-04 04:12:18 +0200 | <haskellbridge> | <Bowuigi> (As an alternative, the eta-optimized version is a good choice) |
2024-09-04 04:12:03 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-04 04:11:54 +0200 | <haskellbridge> | <Bowuigi> If this is possible, then making a tiny and reasonably fast functional compiler is as well, which is fantastic |
2024-09-04 04:10:46 +0200 | <haskellbridge> | <Bowuigi> https://crypto.stanford.edu/~blynn/lambda/kiselyov.html has an optimized compilation algorithm ("bulkOpt") and linear+logaritmic expansions. The structure of the combinators seems to hint at a way to run them as is, but I can't find it |
2024-09-04 04:09:49 +0200 | nadja | (~dequbed@banana-new.kilobyte22.de) |
2024-09-04 04:09:15 +0200 | nadja | (~dequbed@banana-new.kilobyte22.de) (Ping timeout: 265 seconds) |
2024-09-04 04:08:15 +0200 | <monochrom> | In the next episode, I will talk about how OO secretly dreams to be codata with linearity, and Haskell has real codata with linearity. >:) |
2024-09-04 04:08:13 +0200 | <haskellbridge> | <Bowuigi> And speaking about that, is it possible to efficiently run bulk combinators ala Kiselyov in "Lambda to SKI, semantically"? |
2024-09-04 04:07:13 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 04:07:08 +0200 | <haskellbridge> | <Bowuigi> Yeah, the magic of PL theory |
2024-09-04 04:06:36 +0200 | <monochrom> | Python generators secretly dream to be codata. System F and Haskell have real codata. :) |
2024-09-04 04:06:14 +0200 | <haskellbridge> | <Bowuigi> Also this means that you can get total anamorphisms (and above), which means more recursion schemes for my total lang! Thanks! |
2024-09-04 04:05:33 +0200 | <haskellbridge> | <Bowuigi> I see, it works more like a generator |
2024-09-04 03:56:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-04 03:51:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 03:49:05 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-04 03:41:36 +0200 | Batzy | (~quassel@user/batzy) (Ping timeout: 252 seconds) |
2024-09-04 03:40:33 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-04 03:35:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 03:30:32 +0200 | weary-traveler | (~user@user/user363627) |
2024-09-04 03:24:44 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
2024-09-04 03:19:59 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 03:18:29 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 260 seconds) |
2024-09-04 03:08:42 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-04 03:04:05 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 03:01:41 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 248 seconds) |
2024-09-04 02:59:09 +0200 | motherfsck | (~motherfsc@user/motherfsck) |
2024-09-04 02:58:54 +0200 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 246 seconds) |
2024-09-04 02:57:25 +0200 | motherfsck | (~motherfsc@user/motherfsck) (Quit: quit) |
2024-09-04 02:53:48 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-04 02:50:59 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-04 02:48:47 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2024-09-04 02:48:18 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 02:48:03 +0200 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2024-09-04 02:45:07 +0200 | <Leary> | (in Haskell the limits are just softer, bottoming out at runtime rather than failing to type check) |
2024-09-04 02:42:32 +0200 | gmg | (~user@user/gehmehgeh) |
2024-09-04 02:42:28 +0200 | <Leary> | The infiniteness is in the semantics we ascribe, not in the program that actually runs. Of course that limits which operations we can support, but this is all the same whether in Haskell or System F. |
2024-09-04 02:41:23 +0200 | <Leary> | Bowuigi: GFP_F := forall r. (forall x. (x -> F x) -> x -> r) -> r; ana_F := /\a. \coalg:a -> F a. \seed:a. /\r. \expair:forall x. (x -> F x) -> x -> r. expair a coalg seed; out_F := \ff:GFP_F. ff (F GFP_F) /\a. \coalg:a -> F a. \seed:a. map_F a GFP_F (ana_F a coalg) (coalg seed) |
2024-09-04 02:40:44 +0200 | myxos | (~myxos@syn-065-028-251-121.res.spectrum.com) |
2024-09-04 02:37:25 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-04 02:35:14 +0200 | myxos | (~myxos@syn-065-028-251-121.res.spectrum.com) (Ping timeout: 255 seconds) |
2024-09-04 02:32:30 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-04 02:32:06 +0200 | <Inst> | like, say, Foo pat; Bar pat = pat * 3 |
2024-09-04 02:31:48 +0200 | <Inst> | i'm sort of disappointed you can't condense multiple pattern matches into the same term, though |
2024-09-04 02:31:27 +0200 | <Inst> | are the or patterns from GHC 9.12 actually useful? |
2024-09-04 02:29:30 +0200 | <haskellbridge> | <Bowuigi> If the only valid operations are pretty much "zip" (over codata) and take (to data) variants it makes sense though |
2024-09-04 02:28:40 +0200 | <haskellbridge> | <Bowuigi> Leary what about the "infinite-ness" of codata tho? You can't fold/traverse over infinite structures without taking infinite time on normal order (thus, breaking Church-Rosser and disproving totality) |
2024-09-04 02:27:09 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-04 02:21:41 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-09-04 02:16:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |