2024/11/19

Newest at the top

2024-11-20 00:33:00 +0100remexre(~remexre@user/remexre) (Ping timeout: 252 seconds)
2024-11-20 00:33:00 +0100 <geekosaur> I don't think you can, no; it'd be kinda the extreme case of the staging restriction
2024-11-20 00:32:18 +0100 <hellwolf> ... but I am quite content already comparing to where I was few hours ago about this part of the code.
2024-11-20 00:32:18 +0100 <hellwolf> ... and so on, in the module export list
2024-11-20 00:32:18 +0100 <hellwolf> , U8,U16,U24,U32,U40,U48,U56,U64
2024-11-20 00:32:18 +0100 <hellwolf> -- *** Assorted INTx Types
2024-11-20 00:32:18 +0100 <hellwolf> right. I am more curious about if one can go one step of further of not to write this manually
2024-11-20 00:29:52 +0100Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-11-20 00:28:20 +0100 <geekosaur> things defined via TH can be exported, yes
2024-11-20 00:22:22 +0100 <hellwolf> module XYZ ( ... U8, U16, ... U256,...)
2024-11-20 00:21:51 +0100 <hellwolf> I also defined I8,I16..I256, U8,U16...U256, all without TH. I can now replace that with the magic too. Can you actually do such a splice in the module export list too? I guess that's where the magic is limited?
2024-11-20 00:17:30 +0100L29Ah(~L29Ah@wikipedia/L29Ah) L29Ah
2024-11-20 00:07:33 +0100 <hellwolf> *works
2024-11-20 00:07:24 +0100 <hellwolf> the fact is it worked. I take that as a magic.
2024-11-20 00:05:43 +0100 <Leary> I mean, GHC could just do the inlining for you. Not like it doesn't already do plenty of that.
2024-11-20 00:04:52 +0100 <geekosaur> "Magic" would be quite literal
2024-11-20 00:03:17 +0100 <geekosaur> think about it
2024-11-20 00:03:12 +0100 <geekosaur> I still don't know how you think that would work
2024-11-19 23:56:48 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Error from remote client)
2024-11-19 23:55:14 +0100 <hellwolf> you can do a lot with this trick... this needn't to be a amazement if GHC didn't have that "stage restriction". But for now, it's wonderful.
2024-11-19 23:52:28 +0100 <hellwolf> I understood that I could skip the $() at top-level.
2024-11-19 23:52:17 +0100 <hellwolf> but then... it seems all very reasonable that I didn't have to name it.
2024-11-19 23:51:55 +0100 <hellwolf> I took your example and named it, and it didn't work.
2024-11-19 23:51:38 +0100 <hellwolf> I didn't know the trick of not naming it.
2024-11-19 23:50:59 +0100 <Leary> hellwolf: It is a `Q [Dec]`, implicitly wrapped in $(). The key to avoiding the stage restriction is to inline it into the top-level instead of naming it or its components.
2024-11-19 23:50:25 +0100Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla
2024-11-19 23:48:18 +0100 <hellwolf> https://play-haskell.tomsmeding.com/saved/BnEqXAOh
2024-11-19 23:47:54 +0100 <hellwolf> Thank you!
2024-11-19 23:47:50 +0100 <hellwolf> https://play-haskell.tomsmeding.com/saved/fFgkdYeB <-- I saved the excerpt.
2024-11-19 23:47:37 +0100haritz(~hrtz@user/haritz) haritz
2024-11-19 23:47:37 +0100haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
2024-11-19 23:47:34 +0100haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
2024-11-19 23:47:34 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-11-19 23:47:18 +0100Alleria_(~Alleria@user/alleria) (Ping timeout: 276 seconds)
2024-11-19 23:44:40 +0100 <hellwolf> this is magic
2024-11-19 23:44:34 +0100 <hellwolf> hallelujah
2024-11-19 23:44:14 +0100 <hellwolf> and it did work!
2024-11-19 23:44:12 +0100 <hellwolf> oh wait, so you didn't wrap it in a Q Dec
2024-11-19 23:44:01 +0100Alleria(~Alleria@user/alleria) Alleria
2024-11-19 23:43:30 +0100haritz(~hrtz@user/haritz) (Ping timeout: 252 seconds)
2024-11-19 23:43:10 +0100 <Leary> hellwolf: https://play-haskell.tomsmeding.com/saved/T1DSbH8S
2024-11-19 23:42:12 +0100 <hellwolf> (without full understanding of why)
2024-11-19 23:41:58 +0100 <hellwolf> my dogmatic belief was that I should always use TH Qs imported.
2024-11-19 23:41:34 +0100ljdarj1ljdarj
2024-11-19 23:41:34 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 260 seconds)
2024-11-19 23:41:12 +0100 <hellwolf> me? I was expecting magic.
2024-11-19 23:40:49 +0100 <hellwolf> but then it would warn about orphaned instances, which is probably not too bad.
2024-11-19 23:40:23 +0100 <geekosaur> ?
2024-11-19 23:40:22 +0100 <hellwolf> but I can indeed use that in a separate module, which doesn't make the module organization awkward
2024-11-19 23:40:22 +0100 <geekosaur> what were you expecting? that ghc would pull the definition out and build it separately