2024/09/09

2024-09-09 00:00:07 +0000xff0x(~xff0x@2405:6580:b080:900:5825:9cdb:90f7:52b0) (Client Quit)
2024-09-09 00:02:03 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 00:05:58 +0000Axman6(~Axman6@user/axman6)
2024-09-09 00:06:39 +0000xff0x(~xff0x@2405:6580:b080:900:55c2:e74c:3e3:5f94)
2024-09-09 00:07:36 +0000 <xacktm> hello, I'm trying to parse an HTML page with xml-conduit by ignoring the HTML <head> boilerplate to get to the <body> data but can't work out how to use the provided ignore* functions to accomplish that - any hints? https://bpa.st/7YMVS
2024-09-09 00:11:58 +0000 <xacktm> oh wait, I got it to compile... wrapped parens around the bit after >> like: (ignoreTree "head" ignoreAttrs) >> (tagIgnoreAttrs "body" $ manyYield parseNode)
2024-09-09 00:12:26 +0000 <xacktm> thanks rubber ducks ^^
2024-09-09 00:13:11 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 00:18:09 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 00:18:32 +0000 <mauke> the parens in (ignoreTree "head" ignoreAttrs) are redundant
2024-09-09 00:20:00 +0000spew(~spew@201.141.99.170) (Ping timeout: 272 seconds)
2024-09-09 00:20:29 +0000 <mauke> the problem is that $ has low precedence, so `a >> b $ c` parses as `(a >> b) $ c`, when you wanted `a >> (b $ c)`
2024-09-09 00:21:44 +0000spew(~spew@201.141.99.170)
2024-09-09 00:22:16 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 00:25:01 +0000ZharMeny(~ZharMeny@user/ZharMeny) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4))
2024-09-09 00:26:33 +0000xff0x(~xff0x@2405:6580:b080:900:55c2:e74c:3e3:5f94) (Ping timeout: 276 seconds)
2024-09-09 00:26:42 +0000 <xacktm> thanks, yes that error did confuse me where to put the parens - I overlooked that $, thinking I could simply chain
2024-09-09 00:27:24 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 00:28:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 00:30:45 +0000JuanDaugherty(~juan@user/JuanDaugherty)
2024-09-09 00:33:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 00:36:55 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 00:38:11 +0000tcard_(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
2024-09-09 00:41:15 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 00:44:46 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 00:49:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 00:59:39 +0000Everything(~Everythin@109.162.122.37) (Quit: leaving)
2024-09-09 00:59:44 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 01:00:34 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 01:02:28 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-09-09 01:05:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 01:07:01 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 01:07:21 +0000auri(~auri@fsf/member/auri) ()
2024-09-09 01:07:46 +0000weary-traveler(~user@user/user363627)
2024-09-09 01:09:36 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-09-09 01:16:21 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 01:21:09 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 01:21:42 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 01:22:31 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 01:24:33 +0000xff0x(~xff0x@om126166210134.28.openmobile.ne.jp)
2024-09-09 01:26:01 +0000 <Axman6> xacktm: ignoreTree "head" ignoreAttrs >> tagIgnoreAttrs "body" (manyYield parseNode) is how I would write that
2024-09-09 01:26:09 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 01:27:05 +0000auri(~auri@fsf/member/auri)
2024-09-09 01:27:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-09-09 01:32:34 +0000troojg(~troojg@user/troojg) (Ping timeout: 260 seconds)
2024-09-09 01:34:42 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 01:38:11 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 01:39:58 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 245 seconds)
2024-09-09 01:40:00 +0000xff0x(~xff0x@om126166210134.28.openmobile.ne.jp) (Read error: Connection reset by peer)
2024-09-09 01:42:51 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 01:44:45 +0000 <xacktm> hm yes, that is a bit clearer
2024-09-09 01:45:02 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2024-09-09 01:45:54 +0000ACuriousMoose(~ACuriousM@156.34.161.188)
2024-09-09 01:50:28 +0000Guest55(~Guest55@c-71-229-185-228.hsd1.co.comcast.net)
2024-09-09 01:50:42 +0000Guest55(~Guest55@c-71-229-185-228.hsd1.co.comcast.net) (Client Quit)
2024-09-09 01:53:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 01:54:39 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 01:59:04 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 01:59:24 +0000 <haskellbridge> <Bowuigi> Is there some resource on syntactic experiments for functional languages? I have seen some really interesting ideas (do/codo/arrow notation, indentation-based grouping, etc) but I don't know if there is a central place for them
2024-09-09 01:59:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 02:00:56 +0000 <haskellbridge> <Bowuigi> Indentation-based grouping seems interesting for languages that don't have Haskell-style pattern matching, but rather use eliminators and/or first class patterns and/or optics
2024-09-09 02:04:16 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 02:08:44 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 02:09:46 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 02:14:45 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 02:18:50 +0000comonad1(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2024-09-09 02:22:12 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 02:25:34 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 02:27:40 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 02:29:27 +0000comonad(~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de)
2024-09-09 02:30:27 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 02:35:58 +0000spew(~spew@201.141.99.170) (Quit: spew)
2024-09-09 02:41:21 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 02:41:55 +0000weary-traveler(~user@user/user363627) (Remote host closed the connection)
2024-09-09 02:41:58 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 252 seconds)
2024-09-09 02:42:04 +0000terrorjack4(~terrorjac@static.48.15.202.116.clients.your-server.de) (Quit: The Lounge - https://thelounge.chat)
2024-09-09 02:42:22 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 02:42:30 +0000greenflower(~greenflow@125.16.7.78)
2024-09-09 02:43:43 +0000terrorjack4(~terrorjac@2a01:4f8:c17:dc9f::)
2024-09-09 02:46:12 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 02:48:39 +0000td_(~td@i53870918.versanet.de) (Ping timeout: 246 seconds)
2024-09-09 02:50:43 +0000td_(~td@i5387092B.versanet.de)
2024-09-09 02:57:07 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 03:02:09 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-09-09 03:03:42 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 03:04:54 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-09-09 03:09:18 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 03:14:12 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 03:14:17 +0000 <ski> Bowuigi : "Indentation-based grouping seems interesting for languages that don't have Haskell-style pattern matching, but rather use eliminators and/or first class patterns and/or optics" -- why ? (and "first class patterns" meaning ?)
2024-09-09 03:18:31 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 03:25:05 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 03:28:50 +0000JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-09-09 03:29:12 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 276 seconds)
2024-09-09 03:30:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 03:30:40 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2024-09-09 03:35:12 +0000aforemny_(~aforemny@2001:9e8:6cde:3200:4b2a:73ea:fa78:d732)
2024-09-09 03:36:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 03:36:21 +0000aforemny(~aforemny@2001:9e8:6cfd:5300:79d5:7cd7:efda:1b62) (Ping timeout: 276 seconds)
2024-09-09 03:40:52 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 03:45:53 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 03:48:54 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 03:52:32 +0000sourcetarius(~sourcetar@user/sourcetarius) (Quit: zzz)
2024-09-09 03:52:43 +0000tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2024-09-09 03:55:51 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds)
2024-09-09 04:02:09 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 04:12:26 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 04:19:59 +0000misterfish(~misterfis@84.53.85.146)
2024-09-09 04:20:00 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 04:26:32 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds)
2024-09-09 04:31:48 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 04:34:39 +0000arahael_(~arahael@user/arahael)
2024-09-09 04:36:27 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 04:41:30 +0000arahael(~arahael@user/arahael) (Ping timeout: 252 seconds)
2024-09-09 04:47:35 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 04:52:50 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-09-09 04:54:58 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 04:59:56 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2024-09-09 05:00:26 +0000 <haskellbridge> <Bowuigi> "First class patterns" are functions that act like small scale pattern matches (like checking if a constructor tag matches and running an action if it does), they are described in a calculus form in a paper of the same name by B. Jay and D. Kessner
2024-09-09 05:00:37 +0000 <haskellbridge> <Bowuigi> Kesner*
2024-09-09 05:02:22 +0000 <haskellbridge> <Bowuigi> A more modern formulation can be found in "Optimizing First-Class Pattern Matching" by J. Smits, T. Hartman and J. Cockx
2024-09-09 05:02:57 +0000michalz(~michalz@185.246.207.203)
2024-09-09 05:03:20 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 05:04:03 +0000 <haskellbridge> <Bowuigi> As usual, it can be modelled with row types. Pattern matching on the constructor is equivalent to many variant decompositions or to a single variant elimination, pattern matching on fields is equivalent to record patterns, add some combinators and done, reusable patterns
2024-09-09 05:04:54 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 260 seconds)
2024-09-09 05:05:36 +0000 <haskellbridge> <Bowuigi> Any kind of first class pattern matching can be eventually optimized to the usual pattern matching so their optimization methods also apply
2024-09-09 05:07:12 +0000 <haskellbridge> <Bowuigi> If with "why" you mean why is it a good idea to use indentation to group expressions on these cases, consider the map function for Church-encoded lists
2024-09-09 05:07:36 +0000arahael_(~arahael@user/arahael) (Ping timeout: 246 seconds)
2024-09-09 05:07:54 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 05:10:22 +0000 <haskellbridge> <Bowuigi> (I hope IRC is fine with multi-line messages)
2024-09-09 05:10:22 +0000 <haskellbridge> ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/ZocllxsAxFUSJmQebtytfPyz (3 lines)
2024-09-09 05:10:23 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 05:14:54 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds)
2024-09-09 05:16:13 +0000youthlic(~Thunderbi@user/youthlic) (Quit: youthlic)
2024-09-09 05:17:42 +0000youthlic(~Thunderbi@user/youthlic)
2024-09-09 05:18:33 +0000qqe(~qqq@92.43.167.61)
2024-09-09 05:22:47 +0000 <mauke> <+haskellbridge> ... long message truncated: https://kf8nh.com/_matrix/media/v3/download/kf8nh.com/ZocllxsAxFUSJmQebtytfPyz (3 lines
2024-09-09 05:23:58 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 05:24:09 +0000michalz(~michalz@185.246.207.203) (Remote host closed the connection)
2024-09-09 05:25:41 +0000misterfish(~misterfis@84.53.85.146) (Ping timeout: 248 seconds)
2024-09-09 05:26:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 05:26:58 +0000xff0x(~xff0x@om126166210134.28.openmobile.ne.jp)
2024-09-09 05:27:01 +0000michalz(~michalz@185.246.207.200)
2024-09-09 05:27:03 +0000arahael(~arahael@user/arahael)
2024-09-09 05:28:15 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 05:28:49 +0000 <haskellbridge> <Bowuigi> Yeah that works too
2024-09-09 05:33:18 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-09 05:34:05 +0000takuan(~takuan@178-116-218-225.access.telenet.be)
2024-09-09 05:36:50 +0000mstksg(~jle`@2603:8001:3b02:84d4:a690:69a1:4e16:510b) (Quit: WeeChat 4.2.2)
2024-09-09 05:39:36 +0000jle`(~jle`@2603:8001:3b02:84d4:1e01:15c4:e899:3d70)
2024-09-09 05:41:22 +0000arahael(~arahael@user/arahael) (Read error: Connection reset by peer)
2024-09-09 05:41:54 +0000jle`(~jle`@2603:8001:3b02:84d4:1e01:15c4:e899:3d70) (Client Quit)
2024-09-09 05:42:43 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2024-09-09 05:43:46 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 05:44:23 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 05:44:44 +0000jle`(~jle`@2603:8001:3b02:84d4:1413:617c:6ead:3f73)
2024-09-09 05:46:16 +0000euleritian(~euleritia@dynamic-176-006-140-223.176.6.pool.telefonica.de)
2024-09-09 05:48:11 +0000acidjnk_new(~acidjnk@p200300d6e72cfb21181cd9b506c11910.dip0.t-ipconnect.de)
2024-09-09 05:48:57 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds)
2024-09-09 05:49:20 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-09-09 05:53:03 +0000CiaoSen(~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da)
2024-09-09 06:00:10 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 06:01:00 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 06:05:31 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-09-09 06:07:33 +0000xff0x(~xff0x@om126166210134.28.openmobile.ne.jp) (Read error: Connection reset by peer)
2024-09-09 06:08:21 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 06:11:16 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 06:12:58 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2024-09-09 06:16:06 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 06:20:31 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 06:23:00 +0000Square2(~Square4@user/square)
2024-09-09 06:26:00 +0000Squared(~Square@user/square) (Ping timeout: 252 seconds)
2024-09-09 06:27:05 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 06:34:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 06:36:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 06:36:33 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 06:40:17 +0000TMA(tma@twin.jikos.cz) (Ping timeout: 248 seconds)
2024-09-09 06:41:19 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 06:42:00 +0000sord937(~sord937@gateway/tor-sasl/sord937)
2024-09-09 06:42:01 +0000TMA(tma@twin.jikos.cz)
2024-09-09 06:42:21 +0000Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-09-09 06:44:58 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 265 seconds)
2024-09-09 06:51:53 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 06:54:43 +0000ft(~ft@p4fc2a393.dip0.t-ipconnect.de) (Quit: leaving)
2024-09-09 06:54:49 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-09-09 06:56:47 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 06:58:52 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 07:02:09 +0000CiaoSen(~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da) (Ping timeout: 248 seconds)
2024-09-09 07:04:07 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 07:04:39 +0000euleritian(~euleritia@dynamic-176-006-140-223.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-09-09 07:04:57 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-09-09 07:07:40 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 07:08:20 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2024-09-09 07:17:20 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 07:18:26 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 07:18:56 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 07:23:09 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 07:25:18 +0000EarlPitts(~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu)
2024-09-09 07:26:04 +0000talismanick(~user@2601:644:937c:ed10:536b:7670:fffc:851a) (Ping timeout: 260 seconds)
2024-09-09 07:28:05 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 07:34:47 +0000kuribas(~user@ptr-17d51epau2xs89jopnb.18120a2.ip6.access.telenet.be)
2024-09-09 07:36:34 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 07:37:26 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 07:41:05 +0000srazkvt(~sarah@user/srazkvt)
2024-09-09 07:41:27 +0000 <kuribas> I want to participate in munichac with my hasqlator library.
2024-09-09 07:41:48 +0000 <kuribas> Would you say that Applicative/Monoid/Functor are Beginner level, or intermediate level?
2024-09-09 07:42:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 07:43:34 +0000 <kuribas> What about phantom variables with lifted DataKinds? I have a single type family.
2024-09-09 07:44:54 +0000 <kuribas> The lower level of my library just uses Applicative/Monoid, I'd say that's pretty standard haskell?
2024-09-09 07:47:49 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 07:50:58 +0000sourcetarius(~sourcetar@user/sourcetarius)
2024-09-09 07:52:47 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
2024-09-09 07:53:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 07:53:57 +0000 <Unicorn_Princess> kuribas, i'd say applicative/monoid/functor are intermediate level for non-haskellers, and beginner-level for haskellers
2024-09-09 07:54:40 +0000 <Unicorn_Princess> but then i'm sure there's a mind-bending way of using them that'd make them intermediate/advanced
2024-09-09 07:55:22 +0000 <Unicorn_Princess> in any case the surest way to find out would be to check how older submissions were categorized
2024-09-09 07:55:43 +0000 <dminuoso> kuribas: Depends on how you spin it.
2024-09-09 07:55:57 +0000hgolden_(~hgolden@146.70.173.37) (Ping timeout: 246 seconds)
2024-09-09 07:56:01 +0000 <dminuoso> If you forego the generalization and focus on just `fmap/<*>/<+>` at a specific instance, it's beginner level.
2024-09-09 07:56:04 +0000cfricke(~cfricke@user/cfricke)
2024-09-09 07:56:18 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 07:56:22 +0000hgolden(~hgolden@169.150.203.10)
2024-09-09 07:56:51 +0000 <dminuoso> You can even assist that by providing bindings at those specific types.
2024-09-09 07:57:06 +0000misterfish(~misterfis@87.215.131.102)
2024-09-09 07:57:29 +0000 <dminuoso> Like if we had `thenIO :: IO a -> (a -> IO b) -> IO b`, and `pureIO :: a -> IO a`, I think much of the monad scare would just... not exist.
2024-09-09 07:57:58 +0000 <dminuoso> (In fact, this is even why we have `map`)
2024-09-09 08:00:15 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 08:01:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 08:01:39 +0000 <kuribas> Unicorn_Princess: I would think people who attend a haskell conference already no so minimum haskell.
2024-09-09 08:01:48 +0000 <kuribas> Including Monads and Applicatives.
2024-09-09 08:02:13 +0000rickbx(~rick@38.42.185.148)
2024-09-09 08:02:36 +0000rickbx(~rick@38.42.185.148) (Remote host closed the connection)
2024-09-09 08:02:41 +0000 <kuribas> dminuoso: right, people working on this would not have to make their own instances, so you could say it's beginner friendly...
2024-09-09 08:02:59 +0000rickbx(~rick@38.42.185.148)
2024-09-09 08:04:29 +0000 <dminuoso> Well this is not necessarily about "making their own instances", but rather using the polymorphic interface can be intimidating for beginners.
2024-09-09 08:04:37 +0000arahael(~arahael@user/arahael)
2024-09-09 08:04:48 +0000 <kuribas> right
2024-09-09 08:05:04 +0000arahael_(~arahael@user/arahael)
2024-09-09 08:05:27 +0000 <dminuoso> The confusion arises because the generalization of these interfaces is only relevant if a) you are writing that interface to begin with, or b) you want to provide some polymorphic library function yourself that uses the former primitive.
2024-09-09 08:06:05 +0000 <dminuoso> But if a user uses `>>=` they see a bizarre looking operator, and an intimiating class name, both of which are mostly irrelevant to the task at hand.
2024-09-09 08:06:05 +0000 <kuribas> Not sure I get your second point...
2024-09-09 08:06:32 +0000 <dminuoso> Well say Im exposing `double :: Functor f -> f Int -> f Int` rather than `double :: [Int] -> [Int]`
2024-09-09 08:06:35 +0000Smiles(uid551636@id-551636.lymington.irccloud.com)
2024-09-09 08:06:35 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com)
2024-09-09 08:06:41 +0000 <dminuoso> Or even more confusing
2024-09-09 08:06:52 +0000 <dminuoso> double :: (Num a, Functor f) => f a -> f a
2024-09-09 08:07:00 +0000 <kuribas> Yeah, the applicative operator is hard to grasp, but if composing it is easy, just put <$> first, then <*>
2024-09-09 08:07:13 +0000 <dminuoso> Im saying using it at a particular instance is simnple.
2024-09-09 08:07:17 +0000srazkvt(~sarah@user/srazkvt) (Ping timeout: 248 seconds)
2024-09-09 08:07:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 08:07:58 +0000 <dminuoso> With some implicit understanding of f `(<*> @IO)` 1 `(<$> IO)` 2
2024-09-09 08:08:01 +0000 <dminuoso> if it were.
2024-09-09 08:08:29 +0000 <kuribas> There is not a lot of polymorphism at the lower level: https://hackage.haskell.org/package/hasqlator-mysql-0.1.0/docs/Database-MySQL-Hasqlator.html
2024-09-09 08:08:32 +0000 <dminuoso> That way you're no longer talking about Applicative, but some particular functions that can attribute clear and explainable behavior to.
2024-09-09 08:09:01 +0000 <kuribas> right, abstraction is difficult.
2024-09-09 08:09:13 +0000__monty__(~toonn@user/toonn)
2024-09-09 08:09:14 +0000 <kuribas> Before you actually understand the things it's abstracting over.
2024-09-09 08:10:41 +0000EarlPitts(~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) (Remote host closed the connection)
2024-09-09 08:12:01 +0000rickbx(~rick@38.42.185.148) (Ping timeout: 248 seconds)
2024-09-09 08:13:17 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 08:15:22 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 08:16:31 +0000EarlPitts(~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu)
2024-09-09 08:18:43 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-09-09 08:19:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 08:20:37 +0000oo_miguel(~Thunderbi@78.10.207.45)
2024-09-09 08:21:27 +0000Guest12(~Guest12@210.115.223.46)
2024-09-09 08:22:35 +0000 <kuribas> I am on a waitlist :( I already bought a busticket and hotel...
2024-09-09 08:24:41 +0000qqe(~qqq@92.43.167.61) (Quit: Lost terminal)
2024-09-09 08:26:35 +0000srazkvt(~sarah@user/srazkvt)
2024-09-09 08:29:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 08:35:04 +0000CiaoSen(~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da)
2024-09-09 08:35:15 +0000chele(~chele@user/chele)
2024-09-09 08:37:27 +0000EvanR_(~EvanR@user/evanr)
2024-09-09 08:37:47 +0000EvanR(~EvanR@user/evanr) (Read error: Connection reset by peer)
2024-09-09 08:39:42 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-09-09 08:39:49 +0000Axman6(~Axman6@user/axman6) (Ping timeout: 246 seconds)
2024-09-09 08:44:04 +0000Axman6(~Axman6@user/axman6)
2024-09-09 08:46:45 +0000todi(~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2024-09-09 08:49:09 +0000todi(~todi@p57803331.dip0.t-ipconnect.de)
2024-09-09 08:49:58 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 08:49:58 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 08:50:55 +0000cfricke(~cfricke@user/cfricke) (Remote host closed the connection)
2024-09-09 08:52:18 +0000cfricke(~cfricke@user/cfricke)
2024-09-09 08:53:17 +0000cfricke(~cfricke@user/cfricke) (Remote host closed the connection)
2024-09-09 08:53:34 +0000cfricke(~cfricke@user/cfricke)
2024-09-09 08:54:45 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 08:56:32 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds)
2024-09-09 08:58:41 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 09:03:29 +0000CrunchyFlakes(~CrunchyFl@31.18.102.35) (Ping timeout: 260 seconds)
2024-09-09 09:03:56 +0000bcksl(~bcksl@user/bcksl) (Quit: \)
2024-09-09 09:03:57 +0000end(~end@user/end/x-0094621) (Quit: end)
2024-09-09 09:04:50 +0000sus0(zero@user/zeromomentum)
2024-09-09 09:05:45 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 09:06:45 +0000Axma40506(~Axman6@user/axman6)
2024-09-09 09:08:39 +0000Axman6(~Axman6@user/axman6) (Ping timeout: 240 seconds)
2024-09-09 09:10:30 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 09:10:34 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2024-09-09 09:10:54 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 09:11:15 +0000EarlPitts(~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) (Remote host closed the connection)
2024-09-09 09:11:38 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2024-09-09 09:12:06 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 09:14:17 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 09:15:48 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2024-09-09 09:15:52 +0000mal1lieven
2024-09-09 09:19:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 09:22:33 +0000bcksl(~bcksl@user/bcksl)
2024-09-09 09:23:04 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2024-09-09 09:23:28 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2024-09-09 09:25:02 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer)
2024-09-09 09:30:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 09:31:58 +0000end(~end@user/end/x-0094621)
2024-09-09 09:34:23 +0000sawilagar(~sawilagar@user/sawilagar)
2024-09-09 09:35:00 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 09:35:44 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 09:44:22 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 09:46:20 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 09:46:39 +0000 <ski> Bowuigi : reminds me of "SRFI 49: Indentation-sensitive syntax" by Egill Möller in 2005-07-22 at <https://srfi.schemers.org/srfi-49/srfi-49.html> ; "SRFI 110: Sweet-expressions (t-expressions)" by David A. Wheeler,Alan Manuel K. Gloria in 2013-09-09 at <https://srfi.schemers.org/srfi-110/srfi-110.html> ; "SRFI 119: wisp: simpler indentation-sensitive scheme" by Arne Babenhauserheide in 2015-06-23 at
2024-09-09 09:46:45 +0000 <ski> <https://srfi.schemers.org/srfi-119/srfi-119.html>
2024-09-09 09:50:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 09:56:03 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 09:59:05 +0000murgeljm(~murgeljm@APN-122-12-44-gprs.simobil.net)
2024-09-09 10:00:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 10:02:46 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 10:02:47 +0000turlando(~turlando@user/turlando) ()
2024-09-09 10:03:18 +0000turlando(~turlando@user/turlando)
2024-09-09 10:06:47 +0000califax(~califax@user/califx) (Remote host closed the connection)
2024-09-09 10:07:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 10:08:29 +0000califax(~califax@user/califx)
2024-09-09 10:09:25 +0000Axman6(~Axman6@user/axman6)
2024-09-09 10:11:03 +0000srazkvt(~sarah@user/srazkvt) (Ping timeout: 252 seconds)
2024-09-09 10:11:15 +0000califax(~califax@user/califx) (Remote host closed the connection)
2024-09-09 10:11:26 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 10:11:31 +0000Axma40506(~Axman6@user/axman6) (Ping timeout: 246 seconds)
2024-09-09 10:12:16 +0000califax(~califax@user/califx)
2024-09-09 10:15:03 +0000john2(~john@2406:5a00:241a:5600:f0eb:f825:2ac6:1387)
2024-09-09 10:19:20 +0000chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2024-09-09 10:19:27 +0000benjaminl_(~benjaminl@c-76-144-12-233.hsd1.or.comcast.net)
2024-09-09 10:19:27 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 10:20:23 +0000chexum(~quassel@gateway/tor-sasl/chexum)
2024-09-09 10:20:51 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 246 seconds)
2024-09-09 10:21:01 +0000benjaminl(~benjaminl@user/benjaminl) (Ping timeout: 265 seconds)
2024-09-09 10:21:06 +0000alexherbo2(~alexherbo@2a02-8440-3106-cf87-a4cc-9bf0-cfc8-04ba.rev.sfr.net)
2024-09-09 10:22:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 10:26:40 +0000turlando(~turlando@user/turlando) ()
2024-09-09 10:27:09 +0000turlando(~turlando@user/turlando)
2024-09-09 10:27:30 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 10:31:06 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 10:33:06 +0000turlando(~turlando@user/turlando) (Ping timeout: 265 seconds)
2024-09-09 10:35:42 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 10:40:06 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-09-09 10:40:50 +0000euleritian(~euleritia@dynamic-176-006-133-025.176.6.pool.telefonica.de)
2024-09-09 10:41:23 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 10:42:35 +0000greenflower(~greenflow@125.16.7.78) (Quit: Ping timeout (120 seconds))
2024-09-09 10:46:22 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2024-09-09 10:46:37 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 10:49:51 +0000ZharMeny(~ZharMeny@user/ZharMeny)
2024-09-09 10:51:43 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-09-09 10:54:56 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 10:56:32 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
2024-09-09 11:00:15 +0000Guest12vincent42
2024-09-09 11:01:22 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 11:02:09 +0000sourcetarius(~sourcetar@user/sourcetarius) (Ping timeout: 246 seconds)
2024-09-09 11:02:25 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 11:04:52 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 11:04:59 +0000misterfish(~misterfis@87.215.131.102) (Ping timeout: 260 seconds)
2024-09-09 11:07:09 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 11:07:33 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 11:08:18 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer)
2024-09-09 11:08:48 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 246 seconds)
2024-09-09 11:09:06 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 11:09:44 +0000foul_owl(~kerry@157.97.134.165) (Ping timeout: 255 seconds)
2024-09-09 11:10:29 +0000misterfish(~misterfis@87.215.131.102)
2024-09-09 11:11:42 +0000vincent42(~Guest12@210.115.223.46) (Changing host)
2024-09-09 11:11:42 +0000vincent42(~Guest12@user/vincent42)
2024-09-09 11:12:04 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 11:12:21 +0000ash3en(~Thunderbi@89.246.174.164) (Ping timeout: 248 seconds)
2024-09-09 11:13:42 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 11:14:54 +0000vincent42(~Guest12@user/vincent42) (Quit: Connection closed)
2024-09-09 11:16:21 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 11:16:50 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 11:21:19 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 11:21:55 +0000foul_owl(~kerry@157.97.134.167)
2024-09-09 11:25:17 +0000vincent42(~vincent42@user/vincent42)
2024-09-09 11:25:24 +0000ash3en(~Thunderbi@89.246.174.164) (Ping timeout: 260 seconds)
2024-09-09 11:25:41 +0000vincent42(~vincent42@user/vincent42) (Client Quit)
2024-09-09 11:27:24 +0000vincent42(~vincent42@user/vincent42)
2024-09-09 11:30:43 +0000foul_owl(~kerry@157.97.134.167) (Read error: Connection reset by peer)
2024-09-09 11:31:31 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 11:32:02 +0000vincent4228(~vincent42@user/vincent42)
2024-09-09 11:32:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 11:32:29 +0000vincent4228(~vincent42@user/vincent42) (Client Quit)
2024-09-09 11:34:02 +0000vincent42(~vincent42@user/vincent42) (Quit: Connection closed)
2024-09-09 11:36:12 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 11:36:56 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 11:37:19 +0000hacklschorsch(~flo@vantaa.latfa.net)
2024-09-09 11:39:51 +0000 <hacklschorsch> Hi all! What's a good Haskell job board?
2024-09-09 11:40:05 +0000 <hacklschorsch> (We have an open position that I would like to re-post)
2024-09-09 11:43:43 +0000 <haskellbridge> <maerwald> hacklschorsch: Not reddit, not discourse
2024-09-09 11:43:52 +0000 <haskellbridge> <maerwald> Post on haskell weekly
2024-09-09 11:44:24 +0000vincent42(~vincent42@user/vincent42)
2024-09-09 11:44:38 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 11:45:29 +0000vincent42(~vincent42@user/vincent42) (Client Quit)
2024-09-09 11:46:08 +0000vincent45(uid574193@id-574193.hampstead.irccloud.com)
2024-09-09 11:47:48 +0000foul_owl(~kerry@157.97.134.164)
2024-09-09 11:47:52 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 11:48:17 +0000misterfish(~misterfis@87.215.131.102) (Remote host closed the connection)
2024-09-09 11:48:35 +0000misterfish(~misterfis@87.215.131.102)
2024-09-09 11:49:05 +0000chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2024-09-09 11:49:14 +0000chexum(~quassel@gateway/tor-sasl/chexum)
2024-09-09 11:49:49 +0000mechap(~mechap@user/mechap) (Read error: Connection reset by peer)
2024-09-09 11:50:09 +0000cheater(~Username@user/cheater) (Quit: Going offline, see ya! (www.adiirc.com))
2024-09-09 11:52:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 11:52:28 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-09 11:52:56 +0000vincent45vpark42
2024-09-09 11:53:04 +0000vpark42vincent42
2024-09-09 11:53:22 +0000vincent42(uid574193@id-574193.hampstead.irccloud.com) (Changing host)
2024-09-09 11:53:22 +0000vincent42(uid574193@user/vincent42)
2024-09-09 11:56:32 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds)
2024-09-09 12:02:28 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 12:03:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 12:04:11 +0000cheater(~Username@user/cheater)
2024-09-09 12:08:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 244 seconds)
2024-09-09 12:08:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 12:11:58 +0000turlando(~turlando@user/turlando)
2024-09-09 12:12:30 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 12:17:18 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 12:18:44 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 12:19:20 +0000 <hacklschorsch> Thanks maerwald!
2024-09-09 12:20:41 +0000Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-09-09 12:21:43 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 12:22:13 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 12:23:05 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 12:24:38 +0000ash3en(~Thunderbi@89.246.174.164) (Client Quit)
2024-09-09 12:25:57 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 12:26:38 +0000sawilagar(~sawilagar@user/sawilagar) (Ping timeout: 245 seconds)
2024-09-09 12:27:30 +0000euleritian(~euleritia@dynamic-176-006-133-025.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-09-09 12:27:48 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-09-09 12:29:29 +0000 <haskellbridge> <sm> There's often plenty of job posts on those too.. seems ok if clearly labelled ? Is there a policy link ?
2024-09-09 12:29:50 +0000 <cheater> posts there are encouraged
2024-09-09 12:30:27 +0000 <Leary> Haskell weekly gets posted to them anyway.
2024-09-09 12:30:49 +0000 <cheater> of course, given that they're just comment threads, people are free to point out BS posts and bad previous experiences
2024-09-09 12:31:02 +0000 <haskellbridge> <sm> hacklschorsch: have a look at the recent ones, anticipating all the FAQs you'll get creates a good impression
2024-09-09 12:31:35 +0000 <cheater> i guess the FAQs taken from that would be "do you make cruise missiles" and "are you paying an acceptable wage"
2024-09-09 12:33:03 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 12:33:09 +0000alexherbo2(~alexherbo@2a02-8440-3106-cf87-a4cc-9bf0-cfc8-04ba.rev.sfr.net) (Remote host closed the connection)
2024-09-09 12:34:08 +0000 <haskellbridge> <maerwald> cheater: yeah, or spam it with political nonsense or slander
2024-09-09 12:35:14 +0000 <haskellbridge> <maerwald> the etiquette is just incredibly bad... reddit is the worst, discourse is somewhat more strict. But I'd rather not have anyone comment if I'd do job postings
2024-09-09 12:36:12 +0000 <cheater> well i mean, if companies try to run a phd level position with barely livable wages, "get laughed out of the room" is the right response
2024-09-09 12:37:34 +0000 <haskellbridge> <maerwald> yeah, promoting more trash commenting, sweet
2024-09-09 12:38:19 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 12:39:32 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 12:39:39 +0000 <cheater> there's gotta be a line in the sand somewhere, lol
2024-09-09 12:40:21 +0000xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds)
2024-09-09 12:40:53 +0000 <cheater> ok so what would you call "high quality commenting" in such a situation?
2024-09-09 12:41:43 +0000gaff(~gaff@49.207.232.248)
2024-09-09 12:41:48 +0000gaff(~gaff@49.207.232.248) (Client Quit)
2024-09-09 12:45:05 +0000 <haskellbridge> <maerwald> insightful comments
2024-09-09 12:46:18 +0000 <haskellbridge> <maerwald> most people don't care about your political opinion and are not 15 years old (as in: don't need a warning about capitalism and specific industries)
2024-09-09 12:47:21 +0000 <haskellbridge> <maerwald> if you see a job posting where you _think_ the salary is low... provide information about similar jobs that have higher salaries (help people understand average market rate specific to Haskell in a specific position)
2024-09-09 12:47:48 +0000 <haskellbridge> <maerwald> there are websites for that
2024-09-09 12:48:39 +0000 <cheater> ok so give me an example comment for a job that requires 5 years of haskell experience and pays $60k
2024-09-09 12:48:50 +0000 <cheater> that insightfully expresses the money is laughably low
2024-09-09 12:48:50 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 12:48:53 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-09-09 12:50:59 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds)
2024-09-09 12:51:06 +0000 <haskellbridge> <maerwald> cheater: where is the company located?
2024-09-09 12:51:23 +0000 <haskellbridge> <maerwald> not enough information to comment
2024-09-09 12:51:27 +0000 <cheater> nowhere, it's remote
2024-09-09 12:51:49 +0000 <haskellbridge> <maerwald> You didn't answer the question lol
2024-09-09 12:51:58 +0000 <haskellbridge> <maerwald> I didn't ask whether it's remote, but where the company is located
2024-09-09 12:51:59 +0000 <cheater> that's exactly your answer
2024-09-09 12:52:05 +0000 <haskellbridge> <maerwald> the company has a location lol
2024-09-09 12:52:08 +0000 <haskellbridge> <maerwald> otherwise it's not a company
2024-09-09 12:52:10 +0000 <cheater> many job posts are from companies that are fully remote and there is no one central location
2024-09-09 12:52:12 +0000 <haskellbridge> <maerwald> you have to register it
2024-09-09 12:52:19 +0000 <haskellbridge> <maerwald> yes there is
2024-09-09 12:52:24 +0000 <cheater> ok fine. it's registered in the virgin islands
2024-09-09 12:52:24 +0000 <haskellbridge> <maerwald> where the company is registered
2024-09-09 12:52:43 +0000 <haskellbridge> <maerwald> I have no idea about the rates and situation there
2024-09-09 12:52:50 +0000 <cheater> and there you go
2024-09-09 12:53:12 +0000 <haskellbridge> <maerwald> correct: if you don't have insightful information, don't comment
2024-09-09 12:53:35 +0000 <haskellbridge> <maerwald> if I see 60k for a bank in Singapore, I'd definitely comment
2024-09-09 12:53:37 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 12:54:03 +0000 <cheater> ok fine, what would you comment there?
2024-09-09 12:55:39 +0000 <haskellbridge> <maerwald> it's probably half of the average market rate, depending on position even less
2024-09-09 12:56:09 +0000 <haskellbridge> <maerwald> you don't have to add a moral dimension
2024-09-09 12:57:01 +0000 <cheater> ok, so you're upset that people add a moral dimension to their arguments
2024-09-09 12:57:02 +0000 <haskellbridge> <sm> maerwald: it may be annoying but some people do care about that and if it's posted on a discussion forum used to open discussion, there'll be discussion
2024-09-09 12:57:18 +0000misterfish(~misterfis@87.215.131.102) (Ping timeout: 246 seconds)
2024-09-09 12:57:20 +0000 <cheater> like "this wage is immoral" is something that would upset you?
2024-09-09 12:57:42 +0000 <haskellbridge> <sm> job posters can manage this a bit by anticipating the FAQs
2024-09-09 12:58:36 +0000 <haskellbridge> <maerwald> cheater: it degrades etiquette, causes useless flamewars and people saying "blockchain is a scam". How insightful
2024-09-09 12:58:36 +0000sawilagar(~sawilagar@user/sawilagar)
2024-09-09 12:59:06 +0000 <haskellbridge> <maerwald> I have such trashtalk discussions in private... but in public? Jeez.
2024-09-09 13:00:23 +0000 <cheater> how does "this wage is unfit" directly cause "blockchain is a scam"?
2024-09-09 13:00:59 +0000 <cheater> and also, how does a comment on a wage being immoral "degrade etiquette"?
2024-09-09 13:01:12 +0000 <cheater> i don't see your logic on either of those
2024-09-09 13:02:52 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 13:02:58 +0000 <haskellbridge> <maerwald> "blockchain is a scam" and other noteworthy comments about companies like meta are common on reddit
2024-09-09 13:03:07 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 13:03:10 +0000Square2(~Square4@user/square) (Ping timeout: 272 seconds)
2024-09-09 13:03:21 +0000 <cheater> sure, but where's the causality chain that you were presenting just 4 minutes ago?
2024-09-09 13:03:58 +0000 <haskellbridge> <maerwald> you misunderstood my comment I think
2024-09-09 13:04:09 +0000 <cheater> <maerwald> cheater: it degrades etiquette, causes useless flamewars and people saying "blockchain is a scam"
2024-09-09 13:04:15 +0000 <haskellbridge> <maerwald> and I'm not sure what we're arguing about here
2024-09-09 13:04:22 +0000 <cheater> you said that "this wage is immoral" causes people saying "blockchain is a scam"
2024-09-09 13:04:30 +0000 <cheater> i'd like you to explain this
2024-09-09 13:04:38 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 13:05:01 +0000 <haskellbridge> <maerwald> no I didn't
2024-09-09 13:05:21 +0000 <cheater> ok, so what did you mean when you said, to quote exactly: causes useless flamewars and people saying "blockchain is a scam"
2024-09-09 13:05:57 +0000 <haskellbridge> <maerwald> I was referring to the moral dimension
2024-09-09 13:06:25 +0000justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 248 seconds)
2024-09-09 13:06:39 +0000 <cheater> idk, i wouldn't say that someone arguing about morality of job wages immediately invites discussion about the morality of specific jobs
2024-09-09 13:06:50 +0000 <haskellbridge> <maerwald> look at reddit
2024-09-09 13:07:05 +0000 <cheater> yeah, i have. i don't see what you're painting here
2024-09-09 13:07:12 +0000 <haskellbridge> <maerwald> or discourse, where people even make comments about the voting habits of CEOs
2024-09-09 13:07:25 +0000ystael(~ystael@user/ystael)
2024-09-09 13:07:37 +0000 <haskellbridge> <maerwald> I get it... elections are coming up in the US and people feel the need to save the world
2024-09-09 13:07:45 +0000 <haskellbridge> <maerwald> and yet I still don't care
2024-09-09 13:07:48 +0000CiaoSen(~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da) (Ping timeout: 246 seconds)
2024-09-09 13:08:02 +0000 <cheater> you're refering to the thread about anduril. people made those comments without any previous comments about the morality or not of their wages. there were no such comments. therefore there can be no such causality.
2024-09-09 13:08:09 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 13:08:22 +0000 <haskellbridge> <maerwald> I'm not talking about wages
2024-09-09 13:08:23 +0000 <cheater> they would be making those comments whether or not people put wages into question (which they didn't, which proves it)
2024-09-09 13:08:26 +0000 <cheater> well i am
2024-09-09 13:08:28 +0000 <haskellbridge> <maerwald> you're not listening, I think we're done here
2024-09-09 13:08:36 +0000 <haskellbridge> <maerwald> have a good day
2024-09-09 13:09:03 +0000 <cheater> my initial hypothesis was that it's good that people can talk about bad previous experiences and companies trying to run haskell tax
2024-09-09 13:09:21 +0000misterfish(~misterfis@87.215.131.102)
2024-09-09 13:10:08 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-09-09 13:10:11 +0000 <cheater> you responded to this saying that talking about job wages in terms of whether they're moral is not good, because discussions of morality generally in your opinion devolve to surveys of CEO voting habits and whether it's moral to work for some industry
2024-09-09 13:10:51 +0000 <cheater> that's not a causality
2024-09-09 13:10:51 +0000 <haskellbridge> <maerwald> please stop misrepresenting what I said
2024-09-09 13:11:04 +0000 <cheater> that's an exact rundown of what you said
2024-09-09 13:11:22 +0000 <cheater> you can go ahead and clarify what you said
2024-09-09 13:11:29 +0000 <haskellbridge> <maerwald> it's not
2024-09-09 13:11:34 +0000 <cheater> ok, fine, how is it not?
2024-09-09 13:11:52 +0000 <haskellbridge> <maerwald> I'm not interested anymore
2024-09-09 13:12:14 +0000 <cheater> it looks to me like you painted yourself into a corner here
2024-09-09 13:12:42 +0000 <haskellbridge> <maerwald> looks to my like you're trying to troll here
2024-09-09 13:12:54 +0000 <haskellbridge> <maerwald> would you like me to ping the mods?
2024-09-09 13:15:19 +0000 <hacklschorsch> Woa what peace please. I was having lunch, now come back (late) to a meeting and also check IRC and (first: thank you all for the many answers!) into the midst of some stand-off haha
2024-09-09 13:15:34 +0000 <hacklschorsch> I'll get back asap
2024-09-09 13:16:07 +0000 <haskellbridge> <thirdofmay18081814goya> reading https://www.microsoft.com/en-us/research/wp-content/uploads/1997/01/multi.pdf anyone have thoughts on it
2024-09-09 13:16:36 +0000 <cheater> lol
2024-09-09 13:17:54 +0000 <haskellbridge> <sm> maerwald I see no trolling here
2024-09-09 13:18:16 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 13:19:07 +0000 <haskellbridge> <thirdofmay18081814goya> apparently invalid pdf for some, here's the home: https://www.microsoft.com/en-us/research/publication/type-classes-an-exploration-of-the-design-spa…
2024-09-09 13:19:45 +0000mulk(~mulk@p5b112b2e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2024-09-09 13:20:34 +0000 <haskellbridge> <sm> what's the quickest way to track down the spelling of the language extension to turn off partial warnings ?
2024-09-09 13:20:36 +0000haskellbridgesm tried and failed
2024-09-09 13:21:40 +0000 <cheater> sm: in vim, something like C-X C-L ?
2024-09-09 13:22:16 +0000 <haskellbridge> <sm> if you don't have a haskell-configured vim handy :)
2024-09-09 13:22:18 +0000 <cheater> sm: do you mean the partial matches warnings?
2024-09-09 13:22:27 +0000 <haskellbridge> <sm> yup
2024-09-09 13:22:38 +0000 <haskellbridge> <sm> ah no, I mean the new one for using partial functions like head
2024-09-09 13:22:53 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-09 13:23:27 +0000 <cheater> C-X C-L is standard vim and not haskell related
2024-09-09 13:23:40 +0000 <cheater> idk about the new one, haven't encountered it
2024-09-09 13:23:50 +0000 <cheater> C-X C-L is line completion
2024-09-09 13:24:10 +0000 <cheater> so if you already have a file open that does that, you can complete the line to that
2024-09-09 13:24:59 +0000 <Leary> sm: man ghc /-Wno-x
2024-09-09 13:26:14 +0000 <haskellbridge> <sm> Leary: that's quick, but doesn't find it alas
2024-09-09 13:26:49 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 13:28:06 +0000 <haskellbridge> <sm> would this be a language extension, or a ghc option ?
2024-09-09 13:28:06 +0000 <Leary> sm: The warning should show `-Wx-partial`. That implies you want `-Wno-x-partial`. I'm not aware that this functionality is connected to any language extension.
2024-09-09 13:28:49 +0000justsomeguy(~justsomeg@user/justsomeguy)
2024-09-09 13:29:25 +0000 <haskellbridge> <sm> yup Maybe that explains it. I found -Wpartial-fields -Wno-partial-fields, neither of which sounds right.
2024-09-09 13:29:42 +0000 <haskellbridge> <sm> guess I'll search for how I silenced it last time
2024-09-09 13:30:40 +0000 <haskellbridge> <sm> ...though that could take a while. I wish things like this could be quick-referenced more quickly.
2024-09-09 13:32:34 +0000 <Leary> Uh. Maybe you missed the second sentence?
2024-09-09 13:33:55 +0000srazkvt(~sarah@user/srazkvt)
2024-09-09 13:34:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 13:34:30 +0000 <haskellbridge> <sm> Leary: oh, you think -Wno-x-partial is the ghc option I'm looking for ? Could be, I missed that spelling because it's not in my "man ghc" (which is ghc 9.8)
2024-09-09 13:35:17 +0000 <Leary> Right, it doesn't list the categories themselves, but it gives you the format. You get the category from the warning itself.
2024-09-09 13:36:10 +0000 <Leary> (because the categories are arbitrarily extensible, there's no point trying to maintain a list of "standard" ones)
2024-09-09 13:36:26 +0000 <haskellbridge> <sm> You're right - {-# OPTIONS_GHC -Wno-x-partial #-} is what I was needing. "man ghc" wasn't quite good enough since I was working on a runhaskell script in a ghc 9.10 project. Thanks for the pointers
2024-09-09 13:36:54 +0000 <haskellbridge> <sm> (system ghc was 9.8, and this is a 9.10-specific feature)
2024-09-09 13:38:57 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 13:39:05 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 13:39:32 +0000mulk(~mulk@p5b112b2e.dip0.t-ipconnect.de)
2024-09-09 13:39:43 +0000tomboy64(~tomboy64@user/tomboy64) (Ping timeout: 264 seconds)
2024-09-09 13:41:40 +0000 <cheater> sm: the listing of GHC flags is incomplete in the places i look for them, and it's annoying. docs are getting better but idk if it's fully solved. but yes, -Wx implies the existence of a -Wno-x
2024-09-09 13:42:26 +0000 <cheater> (let's be honest though, the correct fix to that warning is to get rid of partial functions though)
2024-09-09 13:42:37 +0000 <cheater> -though
2024-09-09 13:42:51 +0000 <haskellbridge> <sm> Agreed. A related question, should I have guessed that this would be a ghc option not a language extension ? the line seems a bit fuzzy to me
2024-09-09 13:44:05 +0000 <haskellbridge> <sm> not agreed on the fix, at this time I only wanted to silence warnings about head in this script :)
2024-09-09 13:45:21 +0000 <haskellbridge> <sm> yes I would fix it later as you suggest, fine fine
2024-09-09 13:46:03 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds)
2024-09-09 13:47:02 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com)
2024-09-09 13:47:09 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
2024-09-09 13:48:08 +0000 <cheater> yes, i was confused at first when you mentioned extension
2024-09-09 13:48:13 +0000 <cheater> warnings are compiler options
2024-09-09 13:48:20 +0000 <cheater> or rather
2024-09-09 13:48:26 +0000 <cheater> warnings settings are compiler options
2024-09-09 13:48:59 +0000xff0x(~xff0x@2405:6580:b080:900:979f:5e3e:76e8:a33b)
2024-09-09 13:49:05 +0000 <cheater> but yes, a language pragma can turn them off. some people have a mental shortcut to thinking that language pragmas are "how i do extensions", which is fair, but can confuse you into looking into the wrong place apparently :)
2024-09-09 13:49:51 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 13:53:47 +0000 <Leary> sm: The distinction /can/ be fuzzy, but in this case it shouldn't be. These warnings are purely generated by WARNING /pragmata/, not Haskell proper, so strictly speaking they have no relation to the language, only the compiler.
2024-09-09 13:54:58 +0000vincent42(uid574193@user/vincent42) (Quit: Connection closed for inactivity)
2024-09-09 13:54:58 +0000 <cheater> Leary: that's actually a super good way of thinking about this, thank you
2024-09-09 13:55:01 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 13:56:22 +0000ash3en(~Thunderbi@89.246.174.164) (Ping timeout: 272 seconds)
2024-09-09 14:01:00 +0000arahael_(~arahael@user/arahael) (Ping timeout: 246 seconds)
2024-09-09 14:01:11 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 14:05:37 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 14:06:08 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer)
2024-09-09 14:07:11 +0000 <hacklschorsch> Thanks again maerwald, cheater, Leary, sm. Helpful! Have a good week y'all
2024-09-09 14:07:22 +0000 <cheater> same! enjoy your week
2024-09-09 14:08:45 +0000 <sm> good luck!
2024-09-09 14:09:16 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-09-09 14:09:29 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 14:09:38 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com) (Ping timeout: 265 seconds)
2024-09-09 14:09:54 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 14:10:29 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 14:19:16 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 14:19:24 +0000mesaoptimizer(~mesaoptim@user/PapuaHardyNet) (Quit: mesaoptimizer)
2024-09-09 14:19:26 +0000 <haskellbridge> <sm> element is showing me some of this recent irc chat out of order, and I'm having trouble fixing it. Apologies in advance if this next click resends some messages.
2024-09-09 14:19:34 +0000mesaoptimizer(~mesaoptim@user/PapuaHardyNet)
2024-09-09 14:22:11 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer)
2024-09-09 14:24:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 14:25:20 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 14:26:33 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 14:27:56 +0000 <cheater> it's showing me everything in order
2024-09-09 14:28:12 +0000murgeljm(~murgeljm@APN-122-12-44-gprs.simobil.net) (Remote host closed the connection)
2024-09-09 14:28:19 +0000 <cheater> i think you just slipped up and admitted to being a time lord
2024-09-09 14:29:00 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 14:30:45 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer)
2024-09-09 14:31:05 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de)
2024-09-09 14:32:31 +0000 <haskellbridge> <sm> It gets confused again every time I try to fix it by clearing cache and reloading/restarting. I'll hope that the next bridge restart will fix it.. but probably not..
2024-09-09 14:33:00 +0000 <cheater> hehe
2024-09-09 14:33:05 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2)
2024-09-09 14:33:15 +0000 <Rembane> Maybe the previous will?
2024-09-09 14:33:45 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 14:33:53 +0000 <cheater> lmao
2024-09-09 14:34:04 +0000 <cheater> see, the pragmatic developer would have bought this and called it a day https://www.ebay.co.uk/itm/296479710435
2024-09-09 14:34:42 +0000 <cheater> sure, it won't give you five nines
2024-09-09 14:34:45 +0000 <cheater> but it'll give you nine fives
2024-09-09 14:38:06 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 14:38:22 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 14:38:55 +0000EvanR_EvanR
2024-09-09 14:41:03 +0000killy(~killy@staticline-31-183-181-204.toya.net.pl)
2024-09-09 14:42:43 +0000CrunchyFlakes(~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Ping timeout: 244 seconds)
2024-09-09 14:43:19 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-09-09 14:46:56 +0000 <haskellbridge> <Bowuigi> ski re:SRFI yeah, that is where I got the idea from. It probably works better for Lisp than it does for Haskell but it can't hurt to try
2024-09-09 14:51:52 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 14:55:03 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 14:55:24 +0000ash3en(~Thunderbi@89.246.174.164) (Client Quit)
2024-09-09 14:55:38 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 255 seconds)
2024-09-09 14:56:24 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 14:57:19 +0000ash3en(~Thunderbi@89.246.174.164)
2024-09-09 14:57:23 +0000ash3en(~Thunderbi@89.246.174.164) (Client Quit)
2024-09-09 14:59:37 +0000athan(~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b)
2024-09-09 15:03:24 +0000misterfish(~misterfis@87.215.131.102) (Ping timeout: 260 seconds)
2024-09-09 15:03:55 +0000 <zfnmxt> I'm having issues trying to capture writes to "stdout" in a "Tasty" test using a function "testIO": https://www.pastery.net/cvyegm/ Specifically, the issue is that the captured output is sometimes polluted with output to "stdout" from "Tasty". Putting a delay just before "testIO" is executed (like doing something stupid like pure $ sum [0..99999]) fixes it, but I was hoping there's a more robust approach. I tried flushing "stdout" at the start of "stdout"...
2024-09-09 15:04:00 +0000 <zfnmxt> ... as well as setting "stdout" to "NoBuffering" using "hSetBuffering", but neither worked. Any tips/ideas?
2024-09-09 15:05:53 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 15:09:13 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 15:10:13 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 15:14:09 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 15:15:13 +0000haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
2024-09-09 15:16:12 +0000haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com)
2024-09-09 15:16:12 +0000ChanServ+v haskellbridge
2024-09-09 15:17:37 +0000rosco(~rosco@175.136.158.234)
2024-09-09 15:20:17 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 15:23:11 +0000 <dmj`> I will say, claude.ai is nice from FromJSON instances
2024-09-09 15:23:15 +0000 <dmj`> for*
2024-09-09 15:23:36 +0000 <cheater> did claude.ai write that message :)
2024-09-09 15:23:46 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 15:27:26 +0000califax(~califax@user/califx) (Read error: Connection reset by peer)
2024-09-09 15:28:50 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-09-09 15:28:55 +0000califax(~califax@user/califx)
2024-09-09 15:29:28 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2024-09-09 15:29:47 +0000tomboy64(~tomboy64@user/tomboy64)
2024-09-09 15:33:44 +0000spew(~spew@201.141.99.170)
2024-09-09 15:34:04 +0000 <mauke> for the record, I do not agree with this "having morals (or talking about morals) is bad manners" stance
2024-09-09 15:36:12 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 246 seconds)
2024-09-09 15:36:36 +0000 <dmj`> cheater: yes, I did
2024-09-09 15:38:46 +0000 <cheater> mauke: appreciate the clarification
2024-09-09 15:38:59 +0000 <cheater> dmj`: appreciate the qualification
2024-09-09 15:40:03 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 15:40:15 +0000 <dmj`> cheater: we should let AIs run our IRC accounts, trained on log files
2024-09-09 15:40:50 +0000srazkvt(~sarah@user/srazkvt) (Quit: Konversation terminated!)
2024-09-09 15:41:10 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-09-09 15:41:47 +0000hiecaq(~hiecaq@user/hiecaq)
2024-09-09 15:44:58 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-09 15:48:15 +0000 <dmj`> "did you try removing the type signature and letting GHC infer it for you"
2024-09-09 15:49:20 +0000 <glguy> deriving FromJSON via ClaudeAI
2024-09-09 15:54:39 +0000 <dmj`> what could possibly go wrong
2024-09-09 15:54:45 +0000chele(~chele@user/chele) (Remote host closed the connection)
2024-09-09 15:55:10 +0000athan_(~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b)
2024-09-09 15:55:19 +0000athan(~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) (Ping timeout: 260 seconds)
2024-09-09 15:55:35 +0000sp1ff(~user@c-73-11-70-111.hsd1.wa.comcast.net) (Remote host closed the connection)
2024-09-09 15:55:36 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 15:58:14 +0000cfricke(~cfricke@user/cfricke) (Quit: WeeChat 4.2.2)
2024-09-09 15:58:28 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 16:00:25 +0000eron(~eron@179.98.5.91)
2024-09-09 16:00:38 +0000eron(~eron@179.98.5.91) ()
2024-09-09 16:00:48 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-09-09 16:01:31 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com)
2024-09-09 16:03:40 +0000simendsjo(~user@84.211.91.108)
2024-09-09 16:04:36 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 16:06:18 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 16:11:06 +0000 <haskellbridge> <thirdofmay18081814goya> in Haskell we distinguish between normal types and type classes because of the time complexity of type inference in higher universes right?
2024-09-09 16:11:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 16:11:33 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 16:14:10 +0000aforemny_(~aforemny@2001:9e8:6cde:3200:4b2a:73ea:fa78:d732) (Ping timeout: 244 seconds)
2024-09-09 16:14:21 +0000 <ski> no
2024-09-09 16:14:48 +0000aforemny(~aforemny@2001:9e8:6ce5:1500:20e4:f28d:e540:f289)
2024-09-09 16:14:53 +0000 <ski> type classes are properties/predicates/relations on types
2024-09-09 16:15:00 +0000 <mreh> do orphan just instances not work? compiler is warning me and the instance doesn't seem to be recognised
2024-09-09 16:15:14 +0000 <mreh> s/just instances/instances just
2024-09-09 16:15:34 +0000 <haskellbridge> <thirdofmay18081814goya> ski: it's not immediately obvious why then we need a separate representation instead of making them a higher-order type
2024-09-09 16:16:20 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 16:16:22 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 16:16:25 +0000 <monochrom> Coherence.
2024-09-09 16:16:49 +0000tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net)
2024-09-09 16:17:27 +0000 <ski> required instances of type classes are automatically synthesized from instances and instance "rules" (instances with contexts) at the top-level. and there's a uniqueness of this synthesis, guaranteeing that you don't get different behaviour for an instance of a particular type, in different contexts, in the same program
2024-09-09 16:18:05 +0000 <monochrom> If my binary search tree functions are typed "insert :: (a -> a -> Ordering) -> a -> BST a -> BST a" and "isMember :: (a -> a -> Ordering) -> a -> BST a -> Bool", then it is prone to the user error that they use one comparator for insert and a different one for isMember.
2024-09-09 16:18:06 +0000 <ski> (assuming you don't use a few particular language extensions)
2024-09-09 16:18:51 +0000 <haskellbridge> <thirdofmay18081814goya> monochrom: hm of what sort of thing is this a property of? is this a property of lambda calculi ? or of set of inference/rewrite rules?
2024-09-09 16:19:34 +0000 <ski> .. you can simulate ML functors generating a structure with an abstract type, by returning a record of operations whose types are collectively existentially quantified
2024-09-09 16:19:35 +0000 <monochrom> I don't understand the question. Under my misinterpretation, answer: Human fallibility?
2024-09-09 16:20:25 +0000 <ski> thirdofmay18081814goya : plain lambda calculi don't tend to have type classes
2024-09-09 16:21:18 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 16:21:35 +0000 <haskellbridge> <thirdofmay18081814goya> hm i will meditate on these answers ty
2024-09-09 16:22:02 +0000 <mreh> is it possible to add a derived instance to a newtype that I haven't defined?
2024-09-09 16:22:19 +0000 <ski> (something like `makeBSTStructure :: (a -> a -> Ordering) -> exists bst. (a -> bst -> bst,a -> bst -> Bool,..a..bst..)')
2024-09-09 16:22:32 +0000 <Rembane> thirdofmay18081814goya: Would this paper perhaps give some food for meditations? https://www.researchgate.net/profile/Stephen-Blott/publication/2710954_How_to_Make_Ad-Hoc_Polymorp…
2024-09-09 16:22:45 +0000 <ski> mreh : `StandaloneNewtypeDeriving' ?
2024-09-09 16:23:14 +0000 <haskellbridge> <thirdofmay18081814goya> Rembane: niiice ty!
2024-09-09 16:23:25 +0000 <ski> er, s/Newtype//
2024-09-09 16:23:41 +0000 <mreh> ski: yes, but I'm still getting a `No instance` compiler error
2024-09-09 16:23:55 +0000 <mreh> GeneralizedNewtypeDeriving + StandaloneDeriving
2024-09-09 16:24:15 +0000 <ski> is the `newtype' exported abstractly ?
2024-09-09 16:24:17 +0000 <mreh> also the compiler is warning about an orphan instance, so I'm not sure if I'm wrong
2024-09-09 16:24:40 +0000 <mreh> ski: you mean is the constructor visible?
2024-09-09 16:25:10 +0000 <ski> sure
2024-09-09 16:25:30 +0000 <mreh> It appears to be: https://hackage.haskell.org/package/reflex-0.9.3.0/docs/Reflex-PerformEvent-Base.html#t:PerformEve…
2024-09-09 16:25:47 +0000 <mreh> It's actually two levels of newtype nesting...
2024-09-09 16:26:00 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 16:26:10 +0000 <mreh> They possible missed a MonadAsyncException instance on the topmost one.
2024-09-09 16:26:25 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 16:26:51 +0000rosco(~rosco@175.136.158.234) (Quit: Lost terminal)
2024-09-09 16:28:12 +0000skiwouldn't know
2024-09-09 16:28:14 +0000killy(~killy@staticline-31-183-181-204.toya.net.pl) (Quit: leaving)
2024-09-09 16:28:31 +0000 <ski> ("Note that, despite the name, `PerformEventT' is not an instance of `MonadTrans'.")
2024-09-09 16:28:53 +0000 <mreh> Yeah... :\
2024-09-09 16:29:05 +0000 <ski> you added a `deriving instance ...' declaration, yes ?
2024-09-09 16:29:23 +0000 <mreh> yeah, I added in my own module
2024-09-09 16:29:24 +0000 <Leary> thirdoftoolongtotype: It's basically a matter of `(->) :: Type -> (Type -> Type)` for manually-supplied requirements and `(=>) :: Constraint -> (Type -> Type)` (morally) for compiler-supplied requirements. What should `Int => ...` or `Num a -> ...` even mean, if they kind checked? Best that they just don't.
2024-09-09 16:30:26 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 16:30:41 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 16:31:06 +0000 <ski> (it's not clear what you had in mind, with "higher universes" or "set of inference/rewrite rules")
2024-09-09 16:31:44 +0000 <mreh> Anyway, I'm making life hard for myself so I can integrate GPipe's ContextT into the transformer stack of my reflex app and have somewhat elegant code.
2024-09-09 16:36:10 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 16:37:03 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 16:37:55 +0000justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6)
2024-09-09 16:40:26 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 16:40:48 +0000tomboy64(~tomboy64@user/tomboy64) (Read error: Connection reset by peer)
2024-09-09 16:40:53 +0000tomboy65(~tomboy64@user/tomboy64)
2024-09-09 16:42:18 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-09-09 16:42:44 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2024-09-09 16:44:34 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds)
2024-09-09 16:49:30 +0000Guest17(~Guest17@210.176.229.129)
2024-09-09 16:52:51 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 16:57:57 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 16:58:21 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 16:58:53 +0000Inst_(~Inst@user/Inst)
2024-09-09 17:01:09 +0000Inst(~Inst@user/Inst) (Ping timeout: 248 seconds)
2024-09-09 17:05:09 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 17:06:54 +0000itaipu(~itaipu@168.121.99.162) (Ping timeout: 276 seconds)
2024-09-09 17:07:50 +0000Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
2024-09-09 17:08:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 17:11:15 +0000Inst_Inst
2024-09-09 17:13:10 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 17:13:29 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 17:17:25 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 17:18:24 +0000ZharMeny(~ZharMeny@user/ZharMeny) (Ping timeout: 272 seconds)
2024-09-09 17:21:15 +0000itaipu(~itaipu@168.121.99.111)
2024-09-09 17:23:35 +0000ZharMeny(~ZharMeny@user/ZharMeny)
2024-09-09 17:24:26 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 17:26:56 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 17:29:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-09-09 17:30:33 +0000Megant(megant@user/megant)
2024-09-09 17:31:46 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4)
2024-09-09 17:32:34 +0000ft(~ft@p4fc2a393.dip0.t-ipconnect.de)
2024-09-09 17:32:54 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds)
2024-09-09 17:33:42 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 17:33:56 +0000youthlic(~Thunderbi@user/youthlic) (Quit: youthlic)
2024-09-09 17:37:48 +0000 <cheater> having T and not being Trans should be forbidden
2024-09-09 17:38:33 +0000pavonia(~user@user/siracusa) (Quit: Bye!)
2024-09-09 17:40:13 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 17:44:51 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Quit: ash3en)
2024-09-09 17:45:14 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 17:45:28 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4)
2024-09-09 17:48:22 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 17:50:00 +0000 <mauke> haha
2024-09-09 17:51:18 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds)
2024-09-09 17:51:20 +0000 <EvanR> PerformEvent<T>
2024-09-09 17:51:28 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-09-09 17:54:08 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2024-09-09 17:54:34 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-09-09 17:57:36 +0000athan_(~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) (Ping timeout: 276 seconds)
2024-09-09 17:58:35 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-09-09 17:59:57 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 18:01:12 +0000ski. o O ( `PerformOdd' )
2024-09-09 18:03:43 +0000Guest17(~Guest17@210.176.229.129) (Quit: Client closed)
2024-09-09 18:06:41 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 18:07:54 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 18:09:34 +0000 <d34df00d> Leary: `Num a ->` is easy — it's a user-supplied dictionary of the `Num` methods.
2024-09-09 18:10:22 +0000 <d34df00d> `Int =>` can be interpreted as «find some int a fill it in here», which doesn't make much sense for ints, but could be more interesting for types that only have (at most) one inhabitant and that are non-trivial.
2024-09-09 18:11:05 +0000 <monochrom> :(
2024-09-09 18:11:50 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 18:13:02 +0000 <EvanR> haskell doesn't "find some dictionary" it finds THE dictionary and slaps you around with a large trout if there's more than one option
2024-09-09 18:13:20 +0000 <EvanR> I'm not sure how you can do that with Int
2024-09-09 18:17:09 +0000 <dolio> There would have to be a declaration somewhere of which Int is the Int.
2024-09-09 18:18:16 +0000 <geekosaur> right, I was just thinking "so how is this not `Monoid`, with all the problems that come from needing to `newtype` for different `Monoid`s"?
2024-09-09 18:18:21 +0000 <tomsmeding> I didn't follow the discussion, but is -XImplicitParameters relevant here?
2024-09-09 18:18:40 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 18:18:41 +0000 <dolio> Or you would have to only work with a local assumption that there is a the Int, which is basically ImplicitParameters.
2024-09-09 18:18:45 +0000 <geekosaur> wiring that into ghc seems like a non-scalable and generally unfortunate option
2024-09-09 18:20:42 +0000 <monochrom> IMO this is all over-engineering where "Num a ->" and "Int =>" are simply errors but one goes out of their ways to rationalize legalizing them.
2024-09-09 18:21:15 +0000 <geekosaur> agreed
2024-09-09 18:21:47 +0000 <geekosaur> but someone somewhere will have their pet use case
2024-09-09 18:21:54 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Ping timeout: 260 seconds)
2024-09-09 18:22:26 +0000 <EvanR> yet another technology which solves the already working solution of pass an Int in to function xD
2024-09-09 18:22:34 +0000 <Leary> d34df00d: These are /possible/ choices, but they aren't /good/ choices. If you really want, you can easily simulate them both anyway.
2024-09-09 18:23:10 +0000 <Leary> (`Dict (Num a)`; `class Choice a where choice :: a`)
2024-09-09 18:23:30 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 18:23:58 +0000 <dolio> Yeah, the other problem is there's no mechanism for referring to the Int, because it isn't a class.
2024-09-09 18:25:19 +0000 <dolio> When you define e.g. Default, you make up a name for referring to the value.
2024-09-09 18:25:44 +0000 <dolio> Or when you use an implicit parameter, it comes with a name.
2024-09-09 18:26:28 +0000 <probie> You could probably have `(T :: Type) => ...` as a claim that T is inhabited. Since you can't refer to the inhabitant, it doesn't matter which one is chosen
2024-09-09 18:26:59 +0000 <EvanR> it's so implicit that you don't even have to write where it's used
2024-09-09 18:27:04 +0000 <EvanR> haskell decides where it is used for you
2024-09-09 18:27:10 +0000 <d34df00d> EvanR: hence "have (at most) one inhabitant"
2024-09-09 18:27:21 +0000 <d34df00d> Then _any_ dictionary would be _the_ dictionary.
2024-09-09 18:27:42 +0000 <EvanR> I was responding to your characterization of that as "is more interesting in case there is at most 1 inhabitant" implying it's fine to make no sense sometimes xD
2024-09-09 18:27:46 +0000 <EvanR> unlike typeclasses
2024-09-09 18:28:13 +0000 <EvanR> which always make sense in that respect
2024-09-09 18:29:31 +0000rvalue-(~rvalue@user/rvalue)
2024-09-09 18:29:32 +0000leah2(~leah@vuxu.org) (Ping timeout: 244 seconds)
2024-09-09 18:30:04 +0000 <d34df00d> I'm curious how to combine coherence with more liberal interpretation of `Foo =>`.
2024-09-09 18:30:05 +0000rvalue(~rvalue@user/rvalue) (Ping timeout: 260 seconds)
2024-09-09 18:30:39 +0000 <d34df00d> That'd allow combining all^W a reasonable set of the nice features of classes a-la-Idris with coherence properties of Haskell ones.
2024-09-09 18:31:30 +0000 <d34df00d> probie: I wouldn't want to mix the notion of implicit auto-searched arguments with the notion of erasure/irrelevance/etc.
2024-09-09 18:32:35 +0000 <EvanR> since you can't refer to the implicit dictionary, it might serve a purpose as a compile time logic check
2024-09-09 18:33:09 +0000 <EvanR> Foo is a proposition defined somewhere, and the compiler won't compile this function/term until it can (automatically) prove Foo, but that's it
2024-09-09 18:33:21 +0000leah2(~leah@vuxu.org)
2024-09-09 18:33:30 +0000 <d34df00d> Why can't I refer to it?
2024-09-09 18:33:38 +0000 <EvanR> because it has no name?
2024-09-09 18:33:43 +0000rvalue-rvalue
2024-09-09 18:33:48 +0000 <d34df00d> Also, are we talking about actuall haskell or some hypothetical language?
2024-09-09 18:34:26 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 18:34:28 +0000 <d34df00d> (or not-hypothetical-but-not-haskell, that's also always an option!)
2024-09-09 18:36:08 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4)
2024-09-09 18:36:39 +0000 <monochrom> Clearly "Int =>" is hypothetical.
2024-09-09 18:38:57 +0000 <d34df00d> In this case I claim that a language where we have such auto arguments, and were it's a sugar for `{auto _ : Foo} ->` (note the underscore) is practical.
2024-09-09 18:39:15 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 18:39:21 +0000 <d34df00d> Then, we can also have `{auto name : Foo} ->`, which also makes sense.
2024-09-09 18:40:24 +0000 <d34df00d> Hence, given `nameful : {auto n : Foo} -> ...; nameful = .. use n ...` we can have `nameless : Foo => ...; nameless = nameful`, and that's all still practical.
2024-09-09 18:41:51 +0000 <EvanR> ok yeah then it has a name
2024-09-09 18:42:21 +0000 <EvanR> but I still like my previous joke that the implicit argment also gets used somewhere implicitly so you don't have to type anything!
2024-09-09 18:42:28 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Ping timeout: 245 seconds)
2024-09-09 18:43:59 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 18:46:26 +0000 <d34df00d> yay extensionality!
2024-09-09 18:47:49 +0000 <probie> Haskell is already a bit of a mess. How many inhabitants does `() -> ()` have?
2024-09-09 18:48:29 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-09-09 18:49:38 +0000 <probie> I think for any of this to make sense, we need the language to be total, otherwise `auto` can just always pick `let x = x in x`
2024-09-09 18:49:40 +0000 <d34df00d> Can I plead the fifth?
2024-09-09 18:50:13 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 18:53:41 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-09-09 18:54:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 18:56:11 +0000 <sprout> probie: how many?
2024-09-09 18:57:43 +0000 <dolio> At least 4.
2024-09-09 18:58:51 +0000 <sprout> superficially, I would assume 5
2024-09-09 18:59:03 +0000 <sprout> but no idea
2024-09-09 18:59:40 +0000 <geekosaur> I count 4, but I'm probably missing a possibility
2024-09-09 18:59:44 +0000sawilagar(~sawilagar@user/sawilagar) (Ping timeout: 272 seconds)
2024-09-09 19:00:21 +0000 <sprout> the four combination of bottom and unit in a function type, and bottom itself. so I counted five
2024-09-09 19:00:32 +0000 <sprout> no idea whether that is anything near correct though
2024-09-09 19:00:37 +0000 <geekosaur> ah, right, that's the one I missed
2024-09-09 19:01:05 +0000 <EvanR> 1
2024-09-09 19:01:24 +0000mreh(~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 260 seconds)
2024-09-09 19:01:32 +0000 <EvanR> or infinity
2024-09-09 19:01:54 +0000 <sprout> elaborate!
2024-09-09 19:02:05 +0000 <EvanR> if the answer or 4 or 5 that is so ripe for a star trek reference about lights
2024-09-09 19:02:35 +0000 <EvanR> I'll ask you one more time. How many inhabitants of () -> () do you see
2024-09-09 19:04:28 +0000 <sprout> well, okay, infinity makes sense too. we'ld need to define inhabitant for haskell properly first
2024-09-09 19:05:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 19:06:07 +0000 <mauke> > length [error (show n) | n <- [0 ..]]
2024-09-09 19:06:13 +0000 <lambdabot> mueval-core: Time limit exceeded
2024-09-09 19:07:05 +0000target_i(~target_i@user/target-i/x-6023099)
2024-09-09 19:07:46 +0000 <dolio> The function must be monotone.
2024-09-09 19:07:59 +0000 <mauke> assuming all bottoms are equal, what's the 5th one?
2024-09-09 19:08:17 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-09 19:08:24 +0000 <dolio> It's the one where people forgot the function must be monotone. :)
2024-09-09 19:08:47 +0000 <mauke> like, boring?
2024-09-09 19:10:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 19:10:58 +0000 <sprout> only democracy can save us here. 1, 4, 5, or inf
2024-09-09 19:11:21 +0000 <EvanR> the 1 4 5 infinity rule
2024-09-09 19:11:58 +0000 <mauke> undefined, const undefined, id, const ()
2024-09-09 19:12:19 +0000 <EvanR> \() -> bottom
2024-09-09 19:12:53 +0000 <d34df00d> > fix error
2024-09-09 19:12:54 +0000 <lambdabot> "*Exception: *Exception: *Exception: *Exception: *Exception: *Exception: *Ex...
2024-09-09 19:12:55 +0000 <mauke> that's const undefined
2024-09-09 19:13:10 +0000 <EvanR> it's observably the same
2024-09-09 19:13:22 +0000morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-09 19:14:38 +0000sawilagar(~sawilagar@user/sawilagar)
2024-09-09 19:21:25 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 19:26:24 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4)
2024-09-09 19:26:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 19:28:57 +0000Me-me(~me-me@user/me-me) (Remote host closed the connection)
2024-09-09 19:29:37 +0000Me-me(~me-me@kc.randomserver.name)
2024-09-09 19:32:12 +0000pwug(~pwug@user/pwug)
2024-09-09 19:33:57 +0000 <Leary> mauke: It's `\x -> unsafePerformIO ((evaluate x $> undefined) `catch` \SomeException{} -> pure ())`, duh.
2024-09-09 19:37:07 +0000sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2024-09-09 19:37:11 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 19:38:03 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-09-09 19:38:55 +0000 <geekosaur> is that even safe in unsafePerformIO?
2024-09-09 19:39:53 +0000 <Leary> % magic ()
2024-09-09 19:39:54 +0000 <yahb2> *** Exception: Prelude.undefined ; CallStack (from HasCallStack): ; undefined, called at <interactive>:29:51 in interactive:Ghci7
2024-09-09 19:39:57 +0000 <Leary> % magic undefined
2024-09-09 19:39:57 +0000 <yahb2> ()
2024-09-09 19:40:08 +0000 <Leary> Safe and pure!
2024-09-09 19:40:23 +0000 <Leary> Good enough for your average "Haskell" library.
2024-09-09 19:40:33 +0000 <Leary> (though I was mostly joking)
2024-09-09 19:42:02 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 19:42:35 +0000 <mauke> that technically violates my stated assumptions
2024-09-09 19:42:36 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com) (Ping timeout: 246 seconds)
2024-09-09 19:44:13 +0000 <mauke> % magic (last (repeat ()))
2024-09-09 19:44:15 +0000 <yahb2> <timeout>
2024-09-09 19:45:45 +0000 <dolio> At least in the version of that supported by the Haskell report, there is essentially no guarantee about what that term does.
2024-09-09 19:46:29 +0000 <dolio> So a compiler is free to choose on of the actual semantic values.
2024-09-09 19:46:34 +0000 <dolio> One of, even.
2024-09-09 19:51:06 +0000CiaoSen(~Jura@2a05:5800:206:9700:ca4b:d6ff:fec1:99da)
2024-09-09 19:51:21 +0000simendsjo(~user@84.211.91.108) (Ping timeout: 246 seconds)
2024-09-09 19:52:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 19:53:45 +0000 <dmj`> wonder if we had a whole program optimizer if we could get away with a conservative GC, since fusion / unboxing would be global across deps.
2024-09-09 19:54:06 +0000 <probie> sprout: I'd have claimed 4; undefined, one of (\_ -> undefined, \() -> undefined), \() -> () and \_ -> (). But my point was that it wasn't 1
2024-09-09 19:54:59 +0000 <haskellbridge> <thirdofmay18081814goya> type inference is performed only on terms with no free variables, right? where all subterms are annotated at least with a type variable?
2024-09-09 19:58:07 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-09-09 19:58:26 +0000athan(~athan@2600:382:2c2a:786c:a62e:28bc:97b8:21a6)
2024-09-09 19:58:28 +0000 <ski> that would make it hard to do type inference on e.g. `\x -> x'. or `\b -> not b || b'
2024-09-09 19:58:45 +0000 <ski> (note that the latter has `not' and `(||)' as free variables)
2024-09-09 20:01:02 +0000 <ski> thirdofmay18081814goya : perhaps "Polymorphic Type Inference" by Michael I. Schwartzbach in 1995-03 at <https://cs.au.dk/~amoeller/mis/typeinf.pdf> could be interesting
2024-09-09 20:01:22 +0000 <mauke> :t \b -> ?or b (?not b)
2024-09-09 20:01:23 +0000 <lambdabot> (?not::t1 -> t2, ?or::t1 -> t2 -> t3) => t1 -> t3
2024-09-09 20:08:47 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 20:10:51 +0000ash3en(~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Quit: ash3en)
2024-09-09 20:12:56 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 20:13:44 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 20:14:40 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 20:15:22 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 20:16:09 +0000 <haskellbridge> <thirdofmay18081814goya> ski: this made me realize i have no clue what i mean by bound/free ty
2024-09-09 20:17:38 +0000 <haskellbridge> <thirdofmay18081814goya> lambda calculi don't have those
2024-09-09 20:18:08 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 20:18:32 +0000 <haskellbridge> <thirdofmay18081814goya> or well, i would have separated variable symbols from those of functions and constants
2024-09-09 20:18:49 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 20:18:57 +0000 <haskellbridge> <thirdofmay18081814goya> only variable symbols having a notion of bound/unbound defined
2024-09-09 20:19:15 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-09-09 20:19:23 +0000sourcetarius(~sourcetar@user/sourcetarius)
2024-09-09 20:19:47 +0000pwug(~pwug@user/pwug) (Remote host closed the connection)
2024-09-09 20:20:07 +0000 <haskellbridge> <thirdofmay18081814goya> (this is dumb ignore it)
2024-09-09 20:24:34 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 20:24:58 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 20:25:39 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 20:29:42 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-09-09 20:36:26 +0000takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2024-09-09 20:37:18 +0000pwug(~pwug@user/pwug)
2024-09-09 20:40:21 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 20:40:33 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 20:41:14 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 20:42:21 +0000pwug(~pwug@user/pwug) (Remote host closed the connection)
2024-09-09 20:45:09 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-09-09 20:47:21 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 246 seconds)
2024-09-09 20:50:01 +0000 <tomsmeding> thirdofmay: type systems typically define a judgement Γ |- t : τ, where Γ is the environment in which this type should be checked
2024-09-09 20:50:18 +0000 <tomsmeding> that allows you to _check_ open terms just fine
2024-09-09 20:50:42 +0000 <tomsmeding> type inference is mostly just performing type checking symbolically and seeing whether you can solve the resulting constraint system
2024-09-09 20:50:49 +0000foul_owl(~kerry@157.97.134.164) (Ping timeout: 245 seconds)
2024-09-09 20:50:56 +0000 <tomsmeding> (possibly formulated as a more efficient algorithm than doing literally that)
2024-09-09 20:54:53 +0000__monty__(~toonn@user/toonn) (Quit: leaving)
2024-09-09 20:55:35 +0000JuanDaugherty(~juan@user/JuanDaugherty)
2024-09-09 20:56:07 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 20:58:13 +0000 <tomsmeding> mauke: now I'm sad that `?or` is not a thing
2024-09-09 21:00:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 21:01:38 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:02:19 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:04:14 +0000target_i(~target_i@user/target-i/x-6023099) (Quit: leaving)
2024-09-09 21:05:13 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:05:20 +0000foul_owl(~kerry@174-21-143-250.tukw.qwest.net)
2024-09-09 21:05:54 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:09:08 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:09:50 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:10:24 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: so just to be sure, any term that will be type-checked must be well-typed first, right?
2024-09-09 21:10:51 +0000 <haskellbridge> <thirdofmay18081814goya> or is well-typing the result of type inference?
2024-09-09 21:11:02 +0000michalz(~michalz@185.246.207.200) (Remote host closed the connection)
2024-09-09 21:11:53 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 21:12:31 +0000 <monochrom> Not sure if that is technical or philosophical.
2024-09-09 21:12:53 +0000 <tomsmeding> type _checking_ takes an untyped bit of syntax and deduces the type of that term, if that can be done consistently. The proof of that result also gives types of the subterms
2024-09-09 21:13:15 +0000 <tomsmeding> type _inference_ is just beefed-up type checking that can handle some types being unspecified
2024-09-09 21:13:21 +0000 <monochrom> Iff a term passes type checking, it is well-typed. Iff type inference succeeds for a term, it is well-typed.
2024-09-09 21:13:41 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: hm I see ty
2024-09-09 21:13:59 +0000 <haskellbridge> <thirdofmay18081814goya> monochrom: right makes sense
2024-09-09 21:16:54 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 21:19:11 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-09-09 21:21:45 +0000 <haskellbridge> <thirdofmay18081814goya> right right, type checking consists of taking a typing judgment and establishing whether there exists a corresponding derivation
2024-09-09 21:23:21 +0000 <haskellbridge> <thirdofmay18081814goya> and type inference takes a term and a context and produces a typing judgment
2024-09-09 21:24:33 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:25:14 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:26:14 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-09-09 21:27:42 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 21:32:15 +0000machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net)
2024-09-09 21:33:24 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-09-09 21:41:25 +0000 <tomsmeding> thirdofmay: not sure that's an accurate description of "type inference"
2024-09-09 21:42:03 +0000 <tomsmeding> it's more than that: with type inference, in addition to not needing to annotate the top-level type, one typically expects to need to annotate less types _inside_ the term too
2024-09-09 21:42:30 +0000 <tomsmeding> e.g. without type inference, in STLC, lambdas need their argument to be annotated
2024-09-09 21:43:07 +0000 <tomsmeding> with type inference, I would expect that to be unnecessary (if the type can be inferred in some other way); in this case, for this subexpression, it is an element of Γ that is unknown, not the result type
2024-09-09 21:43:28 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 21:44:24 +0000athan(~athan@2600:382:2c2a:786c:a62e:28bc:97b8:21a6) (Ping timeout: 246 seconds)
2024-09-09 21:45:38 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:46:18 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: maybe a recursive definition that begins at the first untyped term in the context, for a given context and untyped term?
2024-09-09 21:46:19 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:47:32 +0000 <tomsmeding> but in my example, it's not a term that is untyped, it's a _binder_ that's untyped
2024-09-09 21:48:08 +0000 <tomsmeding> without type inference, in STLC, '\x:T -> x' can be checked, assuming that T is a valid type
2024-09-09 21:48:10 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-09 21:48:43 +0000 <tomsmeding> actually, let's make that the polymorphic lambda calculus, not STLC
2024-09-09 21:49:01 +0000 <tomsmeding> then with type inference, I would expect '\x -> x' to be well-typed by the type checker (which also does inference)
2024-09-09 21:49:10 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: "t" or "x" in "Λt" or "λx"?
2024-09-09 21:49:15 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:49:22 +0000 <tomsmeding> indeed
2024-09-09 21:49:27 +0000JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-09-09 21:49:45 +0000 <tomsmeding> in neither case am I annotating the type of the _term_ x, or the term '\x:T -> x'
2024-09-09 21:49:56 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:50:20 +0000 <tomsmeding> and yet, () |- (\x:T -> x) : T -> T can be checked without type inference!
2024-09-09 21:51:33 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2024-09-09 21:51:39 +0000 <tomsmeding> it's a bit slippery to try to assign mathematically rigorous definitions to the words "type checking" and "type inference", because although they have fairly specific conventional meanings, these meanings are a bit fluid in practice, especially when considering type checkers for various kinds of languages
2024-09-09 21:52:27 +0000CiaoSen(~Jura@2a05:5800:206:9700:ca4b:d6ff:fec1:99da) (Ping timeout: 246 seconds)
2024-09-09 21:52:58 +0000 <tomsmeding> i.e. for the standard family of lambda calculi it's all quite clear, but what is the boundary between a type checker and a type inferencer for a logic programming language?
2024-09-09 21:53:11 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 21:53:15 +0000 <monochrom> I don't think we even have a rigorous definition of "type". :)
2024-09-09 21:53:33 +0000 <tomsmeding> also that :p
2024-09-09 21:53:52 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 21:54:00 +0000 <monochrom> We have a social consensus. We also have a social consensus on horses, white horses, and programming languages.
2024-09-09 21:54:39 +0000 <tomsmeding> and because lambda calculi tend to be studied by mathematically inclined people, the naming conventions tend to be fairly mathematically principled
2024-09-09 21:54:52 +0000 <monochrom> No one will define "white horse", "programming language" rigorously. And yet there is no problem.
2024-09-09 21:55:08 +0000 <tomsmeding> famous example of this kind of situation: what does "pure" mean
2024-09-09 21:55:22 +0000 <tomsmeding> (though that one does cause miscommunications sometimes)
2024-09-09 21:55:23 +0000 <ski> "what is the boundary between a type checker and a type inferencer for a logic programming language?" -- what deviation do you have in mind ?
2024-09-09 21:56:13 +0000 <tomsmeding> ski: do you need to annotate logical variables (metavariables? I don't know this terminology, sorry)?
2024-09-09 21:56:17 +0000 <ski> @where purely-functional
2024-09-09 21:56:17 +0000 <lambdabot> "What is a Purely Functional Language?" by Amr Sabry in 1993-01 at <https://www.cs.indiana.edu/~sabry/papers/purelyFunctional.ps>
2024-09-09 21:56:22 +0000 <tomsmeding> i.e. local variables on a right-hand side
2024-09-09 21:56:54 +0000 <tomsmeding> if you don't, does that mean that you have type inference going on?
2024-09-09 21:57:02 +0000 <monochrom> . o O ( A purely functional language is not a functional language haha )
2024-09-09 21:57:05 +0000 <haskellbridge> <thirdofmay18081814goya> am processing
2024-09-09 21:57:24 +0000 <ski> traditionally (i.e. Prolog) there's no explicit binders (like quantifiers). Mercury and lambdaProlog does have explicit quantifiers, though
2024-09-09 21:57:36 +0000 <tomsmeding> right
2024-09-09 21:57:44 +0000 <tomsmeding> but doesn't that prove my point?
2024-09-09 21:57:52 +0000 <ski> Mercury does type inference, as does lambdaProlog
2024-09-09 21:58:05 +0000 <ski> tomsmeding : dunno .. since i didn't get what your point was
2024-09-09 21:58:22 +0000 <tomsmeding> ski: fair, I'm having trouble articulating it :p
2024-09-09 21:59:08 +0000 <tomsmeding> say, in Prolog, if you have an implicitly quantified variable on the right-hand side: f(X) :- X = Y, Y = foo. or something
2024-09-09 21:59:14 +0000 <tomsmeding> (I forget how prolog works, I hope that's syntax)
2024-09-09 21:59:15 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 21:59:26 +0000 <tomsmeding> in prolog you annotate nothing of course
2024-09-09 21:59:41 +0000 <tomsmeding> but does that fact (that you annotate nothing) mean that there is not only type checking going on, but also type inference?
2024-09-09 21:59:45 +0000 <tomsmeding> or is that a nonsense question
2024-09-09 21:59:52 +0000 <ski> (they also allow implicit quantification, if you're fine with universally quantifying clauses at the outermost level (cf. implicit universal quantification at the outermost level of type signatures, in Haskell))
2024-09-09 22:00:20 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-09-09 22:00:27 +0000 <ski> in Mercury, there's type inference, for that clause, yes
2024-09-09 22:00:48 +0000 <ski> in Prolog .. well, it's not statically typed, so neither type inference nor type checking
2024-09-09 22:00:59 +0000 <tomsmeding> hm
2024-09-09 22:01:23 +0000 <tomsmeding> monochrom: you said that "type" isn't even rigorously defined, did you have a good "weird language" in mind here :p
2024-09-09 22:01:40 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: i think a formal statement that resolves this would be: "\x:T -> x" is not a typing judgment and can only be type-checked by being such a typing judgment, so the only possibility for producing a well-typed program must be to first run type inference to produce "{} |- \x:T -> x : T -> T"
2024-09-09 22:01:45 +0000 <haskellbridge> <thirdofmay18081814goya> no?
2024-09-09 22:01:50 +0000 <monochrom> Does COBOL count? >:)
2024-09-09 22:01:54 +0000 <ski> the interpretation of that clause, in Prolog (borrowing Mercury syntax to explicate the implicit quantification), is
2024-09-09 22:02:11 +0000 <ski> all [X,Y] ( f(X) :- X = Y,Y = foo ).
2024-09-09 22:02:18 +0000 <ski> while, in Mercury, it would be
2024-09-09 22:02:24 +0000 <monochrom> I haven't seen a weird language. People have a surprisingly good and uncontrovserial consensus.
2024-09-09 22:02:32 +0000 <tomsmeding> thirdofmay: '\x:T -> x' is a _term_, and a term is not the same as a judgement, indeed
2024-09-09 22:02:34 +0000 <ski> all [X] ( f(X) :- some [Y] ( X = Y,Y = foo ) ).
2024-09-09 22:02:51 +0000 <ski> which is of course logically equivalent to the former
2024-09-09 22:02:57 +0000 <sprout> type has a lot of competing possible meanings. abstract label as in type theory, a set as in set theory, a catagory, or something corresponding to something in the operational semantics
2024-09-09 22:03:05 +0000 <ski> .. but this difference sometimes matters
2024-09-09 22:03:12 +0000 <monochrom> OK, one more try. Does set theory count? >:D
2024-09-09 22:03:20 +0000 <sprout> and that are only 4 of the top of my head
2024-09-09 22:03:40 +0000CiaoSen(~Jura@2a05:5800:206:9700:ca4b:d6ff:fec1:99da)
2024-09-09 22:03:49 +0000 <ski> (.. although, in some cases, Prolog behaves as if it does the latter. but this is outside of the core theory of plain Horn clauses)
2024-09-09 22:03:58 +0000 <sprout> ah, logical proposition too. let's not foget curry howard
2024-09-09 22:04:07 +0000 <sprout> *forget
2024-09-09 22:04:23 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: hm but then where is the problem?
2024-09-09 22:04:34 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 22:05:04 +0000 <haskellbridge> <thirdofmay18081814goya> if we want a program that takes a partially annotated context and produces a well-typed context or the proposition that it can't be typed, we have all we need no?
2024-09-09 22:05:13 +0000 <sprout> hmm, don't lay in an awkward position on the couch maybe
2024-09-09 22:05:15 +0000 <tomsmeding> thirdofmay: at this point you'd first have to specify exactly what the inputs to, and outputs of, your type checking/inference algorithms are
2024-09-09 22:05:25 +0000sproutsits up
2024-09-09 22:05:41 +0000 <tomsmeding> and at that point we're talking more about particular algorithms than about the overarching theory
2024-09-09 22:06:09 +0000 <tomsmeding> can the algorithm handle open terms? If so, does it take a list of variables with Maybe Type annotations, or something else?
2024-09-09 22:06:25 +0000 <tomsmeding> there's not a _whole_ lot of possible variations here
2024-09-09 22:06:29 +0000 <haskellbridge> <thirdofmay18081814goya> tomsmeding: a partially annotated context, so an ordered set containing either typing judgments or terms
2024-09-09 22:06:47 +0000 <tomsmeding> not typing jugements, pairs of a name and a type
2024-09-09 22:07:00 +0000 <ski> tomsmeding : Mercury borrows quite heavily from Haskell (and the MLs), in the type system
2024-09-09 22:07:00 +0000 <haskellbridge> <thirdofmay18081814goya> yeah that works better
2024-09-09 22:07:08 +0000 <ski> (it even has type classes ..)
2024-09-09 22:07:29 +0000 <tomsmeding> ok people I dunno right
2024-09-09 22:07:54 +0000 <tomsmeding> if you want to get this technical, write the definitions down rigorously in mathematical language, instead of in English
2024-09-09 22:08:03 +0000 <tomsmeding> then we can talk about technicalities
2024-09-09 22:08:17 +0000 <tomsmeding> also it's past midnight here, so I'm off to bed
2024-09-09 22:08:33 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 22:08:49 +0000 <haskellbridge> <thirdofmay18081814goya> ty for help
2024-09-09 22:09:14 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 22:09:23 +0000ski. o O ( hypothetical judgements, parameterized judgments -- "Judgements as Types correspondence", a la LF (Twelf implementation) )
2024-09-09 22:10:59 +0000 <Rembane> This twelf? https://twelf.org/
2024-09-09 22:12:06 +0000 <ski> yes
2024-09-09 22:12:46 +0000 <ski> ("LF" stands for "Logical Framework")
2024-09-09 22:12:58 +0000 <Rembane> Thank you!
2024-09-09 22:13:27 +0000CiaoSen(~Jura@2a05:5800:206:9700:ca4b:d6ff:fec1:99da) (Ping timeout: 265 seconds)
2024-09-09 22:13:46 +0000 <ski> (Twelf is a dependently typed logic programming language)
2024-09-09 22:15:04 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 22:15:14 +0000 <Rembane> That seems incredibly powerful. Its syntax doesn't look too horrible too!
2024-09-09 22:16:05 +0000 <ski> it's for sure an interesting system
2024-09-09 22:16:23 +0000 <haskellbridge> <thirdofmay18081814goya> what would be some good use cases?
2024-09-09 22:16:34 +0000 <haskellbridge> <thirdofmay18081814goya> type checker for one
2024-09-09 22:18:45 +0000 <ski> focus on applications have more been on the side of specifying logical systems, or inference systems relating to programming languages (type systems, operational semantics), and then to prove theorems about these systems. but one can also write programs to compute things, (more or less) in the style of usual logic programming
2024-09-09 22:19:09 +0000meygerjos(~meygerjos@user/meygerjos)
2024-09-09 22:19:43 +0000 <haskellbridge> <thirdofmay18081814goya> neat
2024-09-09 22:19:45 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 22:20:17 +0000 <ski> lambdaProlog is a related system, sharing quite a bit of the background. it's not dependently typed, though, and it has (some) more facilities for more traditional programming
2024-09-09 22:20:56 +0000 <ski> it's especially nice for doing HOAS (Higher-Order Abstract Syntax)
2024-09-09 22:22:12 +0000 <meygerjos> i'm offering lessons in category theory https://meygerjos.com/ - also this is my first time on irc so lmk if i'm doing self-promotion in an inappropriate way
2024-09-09 22:22:25 +0000 <ski> the main features of it, over traditional Prolog (and not considering it being statically typed), are (a) lambda terms (with unification); (b0) implication goals; and (b1) universal quantification goals
2024-09-09 22:22:52 +0000 <haskellbridge> <thirdofmay18081814goya> ski: lambda terms is all i need
2024-09-09 22:23:05 +0000 <haskellbridge> <thirdofmay18081814goya> and "fix"
2024-09-09 22:23:06 +0000 <ski> even without (a), (b0) and (b1) can sometimes be quite nice, in logic programming. however, only (a) without (b0) and (b1) tends to be cumbersome
2024-09-09 22:26:13 +0000 <ski> (one could also argue that (b1) naturally calls for (a) in cases, and perhaps also that (b0) is less useful without (b1). with (b0) you can introduce local clauses, but to get lexical scoping, hiding a local definition, you also need (b1))
2024-09-09 22:27:45 +0000 <ski> (.. of course, one could always introduce an "ad hoc" construction for lexical scoping of loca definitions .. but it's quite nicer for these to naturally fall out of already traditionally accepted logical connectives)
2024-09-09 22:28:41 +0000 <ski> oh .. and Twelf also have these (a),(b0),(b1)
2024-09-09 22:29:38 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 22:29:53 +0000Squared(~Square@user/square)
2024-09-09 22:30:20 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 22:30:41 +0000 <ski> thirdofmay18081814goya : however, the lambda terms they have are restricted, can't perform arbitrary computation (but you do get beta- and eta- conversion) in that there is e.g. no `case' construction on sum types. to compute stuff, you use predicates, as in Prolog
2024-09-09 22:30:49 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 22:31:46 +0000 <ski> (Mercury does have general computing functions .. but it doesn't have unification of functions, apart from the trivial cases when one or both sides are unconstrained variables)
2024-09-09 22:33:17 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 22:33:45 +0000 <ski> (oh, no `fix' in lambdaProlog,Twelf, either. (well-typed) lambda terms have terminating reduction)
2024-09-09 22:33:58 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 22:35:58 +0000Me-me(~me-me@kc.randomserver.name) (Changing host)
2024-09-09 22:35:58 +0000Me-me(~me-me@user/me-me)
2024-09-09 22:35:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-09-09 22:36:04 +0000tv(~tv@user/tv) (Ping timeout: 260 seconds)
2024-09-09 22:36:34 +0000oo_miguel(~Thunderbi@78.10.207.45) (Ping timeout: 252 seconds)
2024-09-09 22:37:12 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 22:37:54 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 22:43:17 +0000gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2024-09-09 22:44:15 +0000EvanR(~EvanR@user/evanr) (Quit: Leaving)
2024-09-09 22:46:36 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 22:48:55 +0000gentauro(~gentauro@user/gentauro)
2024-09-09 22:50:49 +0000 <haskellbridge> <thirdofmay18081814goya> i'm definitely looking at logic programming the second i have a chance
2024-09-09 22:50:51 +0000 <haskellbridge> <thirdofmay18081814goya> am very curious
2024-09-09 22:51:15 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-09-09 22:51:15 +0000acidjnk_new(~acidjnk@p200300d6e72cfb21181cd9b506c11910.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2024-09-09 22:52:33 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 22:53:15 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 22:56:09 +0000sawilagar(~sawilagar@user/sawilagar) (Ping timeout: 246 seconds)
2024-09-09 22:56:13 +0000meygerjos(~meygerjos@user/meygerjos) (Ping timeout: 245 seconds)
2024-09-09 22:59:18 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com)
2024-09-09 22:59:58 +0000hgolden_(~hgolden@static-198-44-129-51.cust.tzulo.com)
2024-09-09 23:02:05 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 23:02:45 +0000hgolden(~hgolden@169.150.203.10) (Ping timeout: 265 seconds)
2024-09-09 23:03:23 +0000Sgeo(~Sgeo@user/sgeo)
2024-09-09 23:03:30 +0000meygerjos(~meygerjos@syn-024-090-143-083.res.spectrum.com)
2024-09-09 23:04:41 +0000Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2024-09-09 23:05:29 +0000k_hachig_(~k_hachig@2607:fea8:351d:ef0:f026:cab8:26a0:8d01)
2024-09-09 23:06:59 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-09-09 23:13:38 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 23:14:20 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 23:15:40 +0000athan(~athan@syn-098-153-145-140.biz.spectrum.com) (Quit: Konversation terminated!)
2024-09-09 23:16:54 +0000peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2024-09-09 23:17:16 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 23:17:59 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 23:21:14 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 23:21:55 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 23:22:17 +0000k_hachig_k_hachig
2024-09-09 23:25:27 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net)
2024-09-09 23:27:39 +0000k_hachig(~k_hachig@2607:fea8:351d:ef0:f026:cab8:26a0:8d01) (Ping timeout: 246 seconds)
2024-09-09 23:33:39 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 23:36:28 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 23:37:10 +0000Goodbye_Vincent1(cyvahl@freakshells.net)
2024-09-09 23:39:00 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-09-09 23:40:51 +0000pavonia(~user@user/siracusa)
2024-09-09 23:43:59 +0000hgolden__(~hgolden@23.162.40.28)
2024-09-09 23:44:31 +0000meygerjos(~meygerjos@syn-024-090-143-083.res.spectrum.com) (Ping timeout: 264 seconds)
2024-09-09 23:46:12 +0000hgolden_(~hgolden@static-198-44-129-51.cust.tzulo.com) (Ping timeout: 246 seconds)
2024-09-09 23:49:27 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl)
2024-09-09 23:50:30 +0000EvanR(~EvanR@user/evanr)
2024-09-09 23:50:38 +0000meygerjos(~meygerjos@syn-024-090-143-083.res.spectrum.com)
2024-09-09 23:52:05 +0000 <haskellbridge> <thirdofmay18081814goya> huh, lean4 typeclass resolution is the result of logic programming research
2024-09-09 23:53:14 +0000 <geekosaur> I could see that, yes
2024-09-09 23:53:17 +0000emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2024-09-09 23:54:08 +0000merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-09 23:55:55 +0000raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 265 seconds)
2024-09-09 23:57:33 +0000Goodbye_Vincent1(cyvahl@freakshells.net) (Remote host closed the connection)
2024-09-09 23:58:01 +0000 <geekosaur> I'm pretty sure I could describe GHC's constraint resolution (and certain I could describe standard Haskell's typeclass resolution) in Prolog, but the state of the art in logic programming has changed a bit since the last time I did anything with Prolog
2024-09-09 23:58:15 +0000Goodbye_Vincent1(cyvahl@freakshells.net)