2024/11/16

Newest at the top

2024-11-16 23:30:52 +0100 <hellwolf> type As :: Type -> Constraint
2024-11-16 23:30:29 +0100 <hellwolf> https://paste.tomsmeding.com/fTQmMzsa
2024-11-16 23:30:24 +0100 <geekosaur> huh. recent pastes shows a bunch of gift card ads but they censor you?
2024-11-16 23:30:14 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2024-11-16 23:30:14 +0100 <int-e> @where paste
2024-11-16 23:30:11 +0100 <hellwolf> would i flood the screen if I do it here
2024-11-16 23:30:00 +0100 <hellwolf> oh, being censorred
2024-11-16 23:29:42 +0100 <hellwolf> 1000 of them
2024-11-16 23:29:40 +0100 <geekosaur> 404
2024-11-16 23:29:33 +0100 <hellwolf> (a, (..)). A NP constraint.
2024-11-16 23:29:16 +0100 <hellwolf> https://pastebin.com/BTCYzKLN
2024-11-16 23:29:02 +0100geekosaurwonders at what point the typechecker goes "wtf are you asking me to solve?!"
2024-11-16 23:28:39 +0100 <hellwolf> I did it
2024-11-16 23:28:38 +0100 <hellwolf> yep
2024-11-16 23:26:43 +0100 <hellwolf> let me try...
2024-11-16 23:26:38 +0100 <hellwolf> It encourages me to go a bit crazy, isn't it
2024-11-16 23:26:12 +0100 <hellwolf> what the sorcery was the suggestino.
2024-11-16 23:25:55 +0100 <hellwolf> "Instead, use a nested tuple)
2024-11-16 23:25:33 +0100 <hellwolf> sorry, function declaration
2024-11-16 23:25:24 +0100 <hellwolf> while the class declaration does not.
2024-11-16 23:25:14 +0100 <geekosaur> interesting
2024-11-16 23:25:01 +0100 <hellwolf> constraint kind subjects to the same limit
2024-11-16 23:24:49 +0100 <hellwolf> Instead, use a nested tuple
2024-11-16 23:24:49 +0100 <hellwolf> • Constraint tuple arity too large: 1000 (max arity = 64)
2024-11-16 23:24:49 +0100 <hellwolf> constraintslim.hs:2008:13: error: [GHC-89347]
2024-11-16 23:24:39 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-11-16 23:22:16 +0100 <geekosaur> at Core level the names are "f$…" iirc (the … is the z-encoded class name and type parameters)
2024-11-16 23:21:30 +0100 <geekosaur> I guess program-wide uniqueness means they have to be named
2024-11-16 23:21:17 +0100 <hellwolf> (max size is 64)
2024-11-16 23:21:17 +0100 <hellwolf> • A 100-tuple is too large for GHC
2024-11-16 23:21:17 +0100 <hellwolf> tuplelimits.hs:1:6: error: [GHC-94803]
2024-11-16 23:21:15 +0100 <hellwolf> sorry, wrogn copy paste
2024-11-16 23:21:06 +0100 <hellwolf> say no more, let me write a test case
2024-11-16 23:20:11 +0100Square(~Square@user/square) (Ping timeout: 244 seconds)
2024-11-16 23:18:55 +0100 <geekosaur> actually (b) is wrong, instance dictionaries are value level but bypass the limit unless they're compiled internally to magic named records (I know they are at Core level, but not sure about before that)
2024-11-16 23:11:28 +0100 <hellwolf> okay, made the classes less trivial, with one function only. still okay, but notice a tiny little delay when loading through ghci
2024-11-16 23:11:11 +0100michalz(~michalz@185.246.207.203) (Remote host closed the connection)
2024-11-16 23:10:02 +0100 <hellwolf> 1000s is fine too, I hope the empty class did not mattered.
2024-11-16 23:08:31 +0100 <hellwolf> 100 constraints was fine
2024-11-16 23:07:31 +0100sdrfan123(~sdrfan123@2607:fb91:db5:49ea:b971:f45f:2d53:96d1)
2024-11-16 23:06:35 +0100 <hellwolf> say no more, let me try
2024-11-16 23:02:12 +0100Jeff94(~Jeff@2603:8000:0:d7:bc06:28cf:84d9:61b8) (Client Quit)
2024-11-16 23:01:56 +0100 <geekosaur> (at least, I think that becomes a tuple)
2024-11-16 23:01:11 +0100 <geekosaur> (b) type level tuples already exceed the value level limit (consider the size of the Foldable instance dictionary)
2024-11-16 23:01:10 +0100Jeff94(~Jeff@2603:8000:0:d7:bc06:28cf:84d9:61b8)
2024-11-16 23:00:36 +0100 <geekosaur> (a) it is actually neither a value level tuple nor a normal type level tuple
2024-11-16 22:57:21 +0100 <hellwolf> GHC stress test
2024-11-16 22:54:17 +0100 <geekosaur> I would not be surprised if the typechecker falls over before hitting it though 🙂
2024-11-16 22:53:41 +0100 <geekosaur> I don't know
2024-11-16 22:53:29 +0100 <hellwolf> or it is unlimited.