| 2024-09-09 00:00:07 +0000 | xff0x | (~xff0x@2405:6580:b080:900:5825:9cdb:90f7:52b0) (Client Quit) |
| 2024-09-09 00:02:03 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 00:05:58 +0000 | Axman6 | (~Axman6@user/axman6) |
| 2024-09-09 00:06:39 +0000 | xff0x | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 00:18:09 +0000 | merijn | (~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 +0000 | spew | (~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 +0000 | spew | (~spew@201.141.99.170) |
| 2024-09-09 00:22:16 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 00:25:01 +0000 | ZharMeny | (~ZharMeny@user/ZharMeny) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)) |
| 2024-09-09 00:26:33 +0000 | xff0x | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 00:28:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 00:30:45 +0000 | JuanDaugherty | (~juan@user/JuanDaugherty) |
| 2024-09-09 00:33:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 00:36:55 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 00:38:11 +0000 | tcard_ | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving) |
| 2024-09-09 00:41:15 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 00:44:46 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 00:49:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 00:59:39 +0000 | Everything | (~Everythin@109.162.122.37) (Quit: leaving) |
| 2024-09-09 00:59:44 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 01:00:34 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 01:02:28 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 2024-09-09 01:05:24 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 01:07:01 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 01:07:21 +0000 | auri | (~auri@fsf/member/auri) () |
| 2024-09-09 01:07:46 +0000 | weary-traveler | (~user@user/user363627) |
| 2024-09-09 01:09:36 +0000 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 2024-09-09 01:16:21 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 01:21:09 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 01:21:42 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 01:22:31 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 01:24:33 +0000 | xff0x | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 01:27:05 +0000 | auri | (~auri@fsf/member/auri) |
| 2024-09-09 01:27:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 2024-09-09 01:32:34 +0000 | troojg | (~troojg@user/troojg) (Ping timeout: 260 seconds) |
| 2024-09-09 01:34:42 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 01:38:11 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 01:39:58 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 245 seconds) |
| 2024-09-09 01:40:00 +0000 | xff0x | (~xff0x@om126166210134.28.openmobile.ne.jp) (Read error: Connection reset by peer) |
| 2024-09-09 01:42:51 +0000 | merijn | (~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 +0000 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2024-09-09 01:45:54 +0000 | ACuriousMoose | (~ACuriousM@156.34.161.188) |
| 2024-09-09 01:50:28 +0000 | Guest55 | (~Guest55@c-71-229-185-228.hsd1.co.comcast.net) |
| 2024-09-09 01:50:42 +0000 | Guest55 | (~Guest55@c-71-229-185-228.hsd1.co.comcast.net) (Client Quit) |
| 2024-09-09 01:53:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 01:54:39 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 01:59:04 +0000 | morb | (~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 +0000 | merijn | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 02:08:44 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 02:09:46 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 02:14:45 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 02:18:50 +0000 | comonad1 | (~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 2024-09-09 02:22:12 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 02:25:34 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 02:27:40 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 02:29:27 +0000 | comonad | (~comonad@p200300d02705e800d14b563ba919432f.dip0.t-ipconnect.de) |
| 2024-09-09 02:30:27 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 02:35:58 +0000 | spew | (~spew@201.141.99.170) (Quit: spew) |
| 2024-09-09 02:41:21 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 02:41:55 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2024-09-09 02:41:58 +0000 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 2024-09-09 02:42:04 +0000 | terrorjack4 | (~terrorjac@static.48.15.202.116.clients.your-server.de) (Quit: The Lounge - https://thelounge.chat) |
| 2024-09-09 02:42:22 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 02:42:30 +0000 | greenflower | (~greenflow@125.16.7.78) |
| 2024-09-09 02:43:43 +0000 | terrorjack4 | (~terrorjac@2a01:4f8:c17:dc9f::) |
| 2024-09-09 02:46:12 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 02:48:39 +0000 | td_ | (~td@i53870918.versanet.de) (Ping timeout: 246 seconds) |
| 2024-09-09 02:50:43 +0000 | td_ | (~td@i5387092B.versanet.de) |
| 2024-09-09 02:57:07 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 03:02:09 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 2024-09-09 03:03:42 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 03:04:54 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
| 2024-09-09 03:09:18 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 03:14:12 +0000 | merijn | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 03:25:05 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 03:28:50 +0000 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 2024-09-09 03:29:12 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 276 seconds) |
| 2024-09-09 03:30:24 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 03:30:40 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
| 2024-09-09 03:35:12 +0000 | aforemny_ | (~aforemny@2001:9e8:6cde:3200:4b2a:73ea:fa78:d732) |
| 2024-09-09 03:36:14 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 03:36:21 +0000 | aforemny | (~aforemny@2001:9e8:6cfd:5300:79d5:7cd7:efda:1b62) (Ping timeout: 276 seconds) |
| 2024-09-09 03:40:52 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 03:45:53 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 03:48:54 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 03:52:32 +0000 | sourcetarius | (~sourcetar@user/sourcetarius) (Quit: zzz) |
| 2024-09-09 03:52:43 +0000 | tcard | (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 2024-09-09 03:55:51 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds) |
| 2024-09-09 04:02:09 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 04:12:26 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 04:19:59 +0000 | misterfish | (~misterfis@84.53.85.146) |
| 2024-09-09 04:20:00 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 04:26:32 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds) |
| 2024-09-09 04:31:48 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 04:34:39 +0000 | arahael_ | (~arahael@user/arahael) |
| 2024-09-09 04:36:27 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 04:41:30 +0000 | arahael | (~arahael@user/arahael) (Ping timeout: 252 seconds) |
| 2024-09-09 04:47:35 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 04:52:50 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 2024-09-09 04:54:58 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 04:59:56 +0000 | morb | (~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 +0000 | michalz | (~michalz@185.246.207.203) |
| 2024-09-09 05:03:20 +0000 | merijn | (~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 +0000 | xff0x | (~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 +0000 | arahael_ | (~arahael@user/arahael) (Ping timeout: 246 seconds) |
| 2024-09-09 05:07:54 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 05:14:54 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 2024-09-09 05:16:13 +0000 | youthlic | (~Thunderbi@user/youthlic) (Quit: youthlic) |
| 2024-09-09 05:17:42 +0000 | youthlic | (~Thunderbi@user/youthlic) |
| 2024-09-09 05:18:33 +0000 | qqe | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 05:24:09 +0000 | michalz | (~michalz@185.246.207.203) (Remote host closed the connection) |
| 2024-09-09 05:25:41 +0000 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 248 seconds) |
| 2024-09-09 05:26:04 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 05:26:58 +0000 | xff0x | (~xff0x@om126166210134.28.openmobile.ne.jp) |
| 2024-09-09 05:27:01 +0000 | michalz | (~michalz@185.246.207.200) |
| 2024-09-09 05:27:03 +0000 | arahael | (~arahael@user/arahael) |
| 2024-09-09 05:28:15 +0000 | morb | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 2024-09-09 05:34:05 +0000 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
| 2024-09-09 05:36:50 +0000 | mstksg | (~jle`@2603:8001:3b02:84d4:a690:69a1:4e16:510b) (Quit: WeeChat 4.2.2) |
| 2024-09-09 05:39:36 +0000 | jle` | (~jle`@2603:8001:3b02:84d4:1e01:15c4:e899:3d70) |
| 2024-09-09 05:41:22 +0000 | arahael | (~arahael@user/arahael) (Read error: Connection reset by peer) |
| 2024-09-09 05:41:54 +0000 | jle` | (~jle`@2603:8001:3b02:84d4:1e01:15c4:e899:3d70) (Client Quit) |
| 2024-09-09 05:42:43 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds) |
| 2024-09-09 05:43:46 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 05:44:23 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 05:44:44 +0000 | jle` | (~jle`@2603:8001:3b02:84d4:1413:617c:6ead:3f73) |
| 2024-09-09 05:46:16 +0000 | euleritian | (~euleritia@dynamic-176-006-140-223.176.6.pool.telefonica.de) |
| 2024-09-09 05:48:11 +0000 | acidjnk_new | (~acidjnk@p200300d6e72cfb21181cd9b506c11910.dip0.t-ipconnect.de) |
| 2024-09-09 05:48:57 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds) |
| 2024-09-09 05:49:20 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
| 2024-09-09 05:53:03 +0000 | CiaoSen | (~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da) |
| 2024-09-09 06:00:10 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 06:01:00 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 06:05:31 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
| 2024-09-09 06:07:33 +0000 | xff0x | (~xff0x@om126166210134.28.openmobile.ne.jp) (Read error: Connection reset by peer) |
| 2024-09-09 06:08:21 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 06:11:16 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 06:12:58 +0000 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2024-09-09 06:16:06 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 06:20:31 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 06:23:00 +0000 | Square2 | (~Square4@user/square) |
| 2024-09-09 06:26:00 +0000 | Squared | (~Square@user/square) (Ping timeout: 252 seconds) |
| 2024-09-09 06:27:05 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 06:34:24 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 06:36:04 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 06:36:33 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 06:40:17 +0000 | TMA | (tma@twin.jikos.cz) (Ping timeout: 248 seconds) |
| 2024-09-09 06:41:19 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 06:42:00 +0000 | sord937 | (~sord937@gateway/tor-sasl/sord937) |
| 2024-09-09 06:42:01 +0000 | TMA | (tma@twin.jikos.cz) |
| 2024-09-09 06:42:21 +0000 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2024-09-09 06:44:58 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 265 seconds) |
| 2024-09-09 06:51:53 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 06:54:43 +0000 | ft | (~ft@p4fc2a393.dip0.t-ipconnect.de) (Quit: leaving) |
| 2024-09-09 06:54:49 +0000 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 2024-09-09 06:56:47 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 06:58:52 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 07:02:09 +0000 | CiaoSen | (~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da) (Ping timeout: 248 seconds) |
| 2024-09-09 07:04:07 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 07:04:39 +0000 | euleritian | (~euleritia@dynamic-176-006-140-223.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 2024-09-09 07:04:57 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 2024-09-09 07:07:40 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 07:08:20 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 2024-09-09 07:17:20 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 07:18:26 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 07:18:56 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2024-09-09 07:23:09 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 07:25:18 +0000 | EarlPitts | (~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) |
| 2024-09-09 07:26:04 +0000 | talismanick | (~user@2601:644:937c:ed10:536b:7670:fffc:851a) (Ping timeout: 260 seconds) |
| 2024-09-09 07:28:05 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 07:34:47 +0000 | kuribas | (~user@ptr-17d51epau2xs89jopnb.18120a2.ip6.access.telenet.be) |
| 2024-09-09 07:36:34 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 07:37:26 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 07:41:05 +0000 | srazkvt | (~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 +0000 | morb | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 07:50:58 +0000 | sourcetarius | (~sourcetar@user/sourcetarius) |
| 2024-09-09 07:52:47 +0000 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 2024-09-09 07:53:04 +0000 | merijn | (~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 +0000 | hgolden_ | (~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 +0000 | cfricke | (~cfricke@user/cfricke) |
| 2024-09-09 07:56:18 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 07:56:22 +0000 | hgolden | (~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 +0000 | misterfish | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 08:01:14 +0000 | morb | (~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 +0000 | rickbx | (~rick@38.42.185.148) |
| 2024-09-09 08:02:36 +0000 | rickbx | (~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 +0000 | rickbx | (~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 +0000 | arahael | (~arahael@user/arahael) |
| 2024-09-09 08:04:48 +0000 | <kuribas> | right |
| 2024-09-09 08:05:04 +0000 | arahael_ | (~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 +0000 | Smiles | (uid551636@id-551636.lymington.irccloud.com) |
| 2024-09-09 08:06:35 +0000 | mreh | (~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 +0000 | srazkvt | (~sarah@user/srazkvt) (Ping timeout: 248 seconds) |
| 2024-09-09 08:07:39 +0000 | merijn | (~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 +0000 | EarlPitts | (~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) (Remote host closed the connection) |
| 2024-09-09 08:12:01 +0000 | rickbx | (~rick@38.42.185.148) (Ping timeout: 248 seconds) |
| 2024-09-09 08:13:17 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 08:15:22 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 08:16:31 +0000 | EarlPitts | (~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) |
| 2024-09-09 08:18:43 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
| 2024-09-09 08:19:45 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 08:20:37 +0000 | oo_miguel | (~Thunderbi@78.10.207.45) |
| 2024-09-09 08:21:27 +0000 | Guest12 | (~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 +0000 | qqe | (~qqq@92.43.167.61) (Quit: Lost terminal) |
| 2024-09-09 08:26:35 +0000 | srazkvt | (~sarah@user/srazkvt) |
| 2024-09-09 08:29:04 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 08:35:04 +0000 | CiaoSen | (~Jura@2a05:5800:2b2:3500:ca4b:d6ff:fec1:99da) |
| 2024-09-09 08:35:15 +0000 | chele | (~chele@user/chele) |
| 2024-09-09 08:37:27 +0000 | EvanR_ | (~EvanR@user/evanr) |
| 2024-09-09 08:37:47 +0000 | EvanR | (~EvanR@user/evanr) (Read error: Connection reset by peer) |
| 2024-09-09 08:39:42 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 2024-09-09 08:39:49 +0000 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 246 seconds) |
| 2024-09-09 08:44:04 +0000 | Axman6 | (~Axman6@user/axman6) |
| 2024-09-09 08:46:45 +0000 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 2024-09-09 08:49:09 +0000 | todi | (~todi@p57803331.dip0.t-ipconnect.de) |
| 2024-09-09 08:49:58 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 08:49:58 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 08:50:55 +0000 | cfricke | (~cfricke@user/cfricke) (Remote host closed the connection) |
| 2024-09-09 08:52:18 +0000 | cfricke | (~cfricke@user/cfricke) |
| 2024-09-09 08:53:17 +0000 | cfricke | (~cfricke@user/cfricke) (Remote host closed the connection) |
| 2024-09-09 08:53:34 +0000 | cfricke | (~cfricke@user/cfricke) |
| 2024-09-09 08:54:45 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 08:56:32 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds) |
| 2024-09-09 08:58:41 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 09:03:29 +0000 | CrunchyFlakes | (~CrunchyFl@31.18.102.35) (Ping timeout: 260 seconds) |
| 2024-09-09 09:03:56 +0000 | bcksl | (~bcksl@user/bcksl) (Quit: \) |
| 2024-09-09 09:03:57 +0000 | end | (~end@user/end/x-0094621) (Quit: end) |
| 2024-09-09 09:04:50 +0000 | sus0 | (zero@user/zeromomentum) |
| 2024-09-09 09:05:45 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 09:06:45 +0000 | Axma40506 | (~Axman6@user/axman6) |
| 2024-09-09 09:08:39 +0000 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 240 seconds) |
| 2024-09-09 09:10:30 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 09:10:34 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 2024-09-09 09:10:54 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 09:11:15 +0000 | EarlPitts | (~EarlPitts@20014C4C1C6E6700A4006D5FAF3CEF25.catv.pool.telekom.hu) (Remote host closed the connection) |
| 2024-09-09 09:11:38 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 2024-09-09 09:12:06 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) |
| 2024-09-09 09:14:17 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 09:15:48 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds) |
| 2024-09-09 09:15:52 +0000 | mal1 | lieven |
| 2024-09-09 09:19:24 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 09:22:33 +0000 | bcksl | (~bcksl@user/bcksl) |
| 2024-09-09 09:23:04 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 2024-09-09 09:23:28 +0000 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 2024-09-09 09:25:02 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer) |
| 2024-09-09 09:30:04 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 09:31:58 +0000 | end | (~end@user/end/x-0094621) |
| 2024-09-09 09:34:23 +0000 | sawilagar | (~sawilagar@user/sawilagar) |
| 2024-09-09 09:35:00 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 09:35:44 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 09:44:22 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 09:46:20 +0000 | morb | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 09:56:03 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 09:59:05 +0000 | murgeljm | (~murgeljm@APN-122-12-44-gprs.simobil.net) |
| 2024-09-09 10:00:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 10:02:46 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 10:02:47 +0000 | turlando | (~turlando@user/turlando) () |
| 2024-09-09 10:03:18 +0000 | turlando | (~turlando@user/turlando) |
| 2024-09-09 10:06:47 +0000 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2024-09-09 10:07:14 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 10:08:29 +0000 | califax | (~califax@user/califx) |
| 2024-09-09 10:09:25 +0000 | Axman6 | (~Axman6@user/axman6) |
| 2024-09-09 10:11:03 +0000 | srazkvt | (~sarah@user/srazkvt) (Ping timeout: 252 seconds) |
| 2024-09-09 10:11:15 +0000 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2024-09-09 10:11:26 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 10:11:31 +0000 | Axma40506 | (~Axman6@user/axman6) (Ping timeout: 246 seconds) |
| 2024-09-09 10:12:16 +0000 | califax | (~califax@user/califx) |
| 2024-09-09 10:15:03 +0000 | john2 | (~john@2406:5a00:241a:5600:f0eb:f825:2ac6:1387) |
| 2024-09-09 10:19:20 +0000 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 2024-09-09 10:19:27 +0000 | benjaminl_ | (~benjaminl@c-76-144-12-233.hsd1.or.comcast.net) |
| 2024-09-09 10:19:27 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 10:20:23 +0000 | chexum | (~quassel@gateway/tor-sasl/chexum) |
| 2024-09-09 10:20:51 +0000 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 246 seconds) |
| 2024-09-09 10:21:01 +0000 | benjaminl | (~benjaminl@user/benjaminl) (Ping timeout: 265 seconds) |
| 2024-09-09 10:21:06 +0000 | alexherbo2 | (~alexherbo@2a02-8440-3106-cf87-a4cc-9bf0-cfc8-04ba.rev.sfr.net) |
| 2024-09-09 10:22:14 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 10:26:40 +0000 | turlando | (~turlando@user/turlando) () |
| 2024-09-09 10:27:09 +0000 | turlando | (~turlando@user/turlando) |
| 2024-09-09 10:27:30 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 10:31:06 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 10:33:06 +0000 | turlando | (~turlando@user/turlando) (Ping timeout: 265 seconds) |
| 2024-09-09 10:35:42 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 10:40:06 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds) |
| 2024-09-09 10:40:50 +0000 | euleritian | (~euleritia@dynamic-176-006-133-025.176.6.pool.telefonica.de) |
| 2024-09-09 10:41:23 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 10:42:35 +0000 | greenflower | (~greenflow@125.16.7.78) (Quit: Ping timeout (120 seconds)) |
| 2024-09-09 10:46:22 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds) |
| 2024-09-09 10:46:37 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 10:49:51 +0000 | ZharMeny | (~ZharMeny@user/ZharMeny) |
| 2024-09-09 10:51:43 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
| 2024-09-09 10:54:56 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 10:56:32 +0000 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 2024-09-09 11:00:15 +0000 | Guest12 | vincent42 |
| 2024-09-09 11:01:22 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 11:02:09 +0000 | sourcetarius | (~sourcetar@user/sourcetarius) (Ping timeout: 246 seconds) |
| 2024-09-09 11:02:25 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 11:04:52 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) |
| 2024-09-09 11:04:59 +0000 | misterfish | (~misterfis@87.215.131.102) (Ping timeout: 260 seconds) |
| 2024-09-09 11:07:09 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 11:07:33 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 11:08:18 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer) |
| 2024-09-09 11:08:48 +0000 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 246 seconds) |
| 2024-09-09 11:09:06 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 11:09:44 +0000 | foul_owl | (~kerry@157.97.134.165) (Ping timeout: 255 seconds) |
| 2024-09-09 11:10:29 +0000 | misterfish | (~misterfis@87.215.131.102) |
| 2024-09-09 11:11:42 +0000 | vincent42 | (~Guest12@210.115.223.46) (Changing host) |
| 2024-09-09 11:11:42 +0000 | vincent42 | (~Guest12@user/vincent42) |
| 2024-09-09 11:12:04 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) |
| 2024-09-09 11:12:21 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Ping timeout: 248 seconds) |
| 2024-09-09 11:13:42 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 11:14:54 +0000 | vincent42 | (~Guest12@user/vincent42) (Quit: Connection closed) |
| 2024-09-09 11:16:21 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 11:16:50 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 11:21:19 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 11:21:55 +0000 | foul_owl | (~kerry@157.97.134.167) |
| 2024-09-09 11:25:17 +0000 | vincent42 | (~vincent42@user/vincent42) |
| 2024-09-09 11:25:24 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Ping timeout: 260 seconds) |
| 2024-09-09 11:25:41 +0000 | vincent42 | (~vincent42@user/vincent42) (Client Quit) |
| 2024-09-09 11:27:24 +0000 | vincent42 | (~vincent42@user/vincent42) |
| 2024-09-09 11:30:43 +0000 | foul_owl | (~kerry@157.97.134.167) (Read error: Connection reset by peer) |
| 2024-09-09 11:31:31 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2024-09-09 11:32:02 +0000 | vincent4228 | (~vincent42@user/vincent42) |
| 2024-09-09 11:32:04 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 11:32:29 +0000 | vincent4228 | (~vincent42@user/vincent42) (Client Quit) |
| 2024-09-09 11:34:02 +0000 | vincent42 | (~vincent42@user/vincent42) (Quit: Connection closed) |
| 2024-09-09 11:36:12 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 11:36:56 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 11:37:19 +0000 | hacklschorsch | (~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 +0000 | vincent42 | (~vincent42@user/vincent42) |
| 2024-09-09 11:44:38 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 11:45:29 +0000 | vincent42 | (~vincent42@user/vincent42) (Client Quit) |
| 2024-09-09 11:46:08 +0000 | vincent45 | (uid574193@id-574193.hampstead.irccloud.com) |
| 2024-09-09 11:47:48 +0000 | foul_owl | (~kerry@157.97.134.164) |
| 2024-09-09 11:47:52 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 11:48:17 +0000 | misterfish | (~misterfis@87.215.131.102) (Remote host closed the connection) |
| 2024-09-09 11:48:35 +0000 | misterfish | (~misterfis@87.215.131.102) |
| 2024-09-09 11:49:05 +0000 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 2024-09-09 11:49:14 +0000 | chexum | (~quassel@gateway/tor-sasl/chexum) |
| 2024-09-09 11:49:49 +0000 | mechap | (~mechap@user/mechap) (Read error: Connection reset by peer) |
| 2024-09-09 11:50:09 +0000 | cheater | (~Username@user/cheater) (Quit: Going offline, see ya! (www.adiirc.com)) |
| 2024-09-09 11:52:14 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 11:52:28 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 2024-09-09 11:52:56 +0000 | vincent45 | vpark42 |
| 2024-09-09 11:53:04 +0000 | vpark42 | vincent42 |
| 2024-09-09 11:53:22 +0000 | vincent42 | (uid574193@id-574193.hampstead.irccloud.com) (Changing host) |
| 2024-09-09 11:53:22 +0000 | vincent42 | (uid574193@user/vincent42) |
| 2024-09-09 11:56:32 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 255 seconds) |
| 2024-09-09 12:02:28 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 12:03:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 12:04:11 +0000 | cheater | (~Username@user/cheater) |
| 2024-09-09 12:08:45 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 244 seconds) |
| 2024-09-09 12:08:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 12:11:58 +0000 | turlando | (~turlando@user/turlando) |
| 2024-09-09 12:12:30 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 12:17:18 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 12:18:44 +0000 | morb | (~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 +0000 | Smiles | (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 2024-09-09 12:21:43 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 12:22:13 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 12:23:05 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 12:24:38 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Client Quit) |
| 2024-09-09 12:25:57 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 12:26:38 +0000 | sawilagar | (~sawilagar@user/sawilagar) (Ping timeout: 245 seconds) |
| 2024-09-09 12:27:30 +0000 | euleritian | (~euleritia@dynamic-176-006-133-025.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
| 2024-09-09 12:27:48 +0000 | euleritian | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 12:33:09 +0000 | alexherbo2 | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 12:39:32 +0000 | morb | (~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 +0000 | xff0x | (~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 +0000 | gaff | (~gaff@49.207.232.248) |
| 2024-09-09 12:41:48 +0000 | gaff | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 12:48:53 +0000 | athan | (~athan@syn-098-153-145-140.biz.spectrum.com) |
| 2024-09-09 12:50:59 +0000 | morb | (~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 +0000 | merijn | (~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 +0000 | misterfish | (~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 +0000 | sawilagar | (~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 +0000 | morb | (~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 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 13:03:10 +0000 | Square2 | (~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 +0000 | merijn | (~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 +0000 | justsomeguy | (~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 +0000 | ystael | (~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 +0000 | CiaoSen | (~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 +0000 | morb | (~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 +0000 | misterfish | (~misterfis@87.215.131.102) |
| 2024-09-09 13:10:08 +0000 | merijn | (~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 +0000 | merijn | (~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 +0000 | mulk | (~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 +0000 | haskellbridge | sm 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 +0000 | merijn | (~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 +0000 | tromp | (~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 +0000 | justsomeguy | (~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 +0000 | srazkvt | (~sarah@user/srazkvt) |
| 2024-09-09 13:34:04 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 13:39:05 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 13:39:32 +0000 | mulk | (~mulk@p5b112b2e.dip0.t-ipconnect.de) |
| 2024-09-09 13:39:43 +0000 | tomboy64 | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds) |
| 2024-09-09 13:47:02 +0000 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
| 2024-09-09 13:47:09 +0000 | euleritian | (~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 +0000 | xff0x | (~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 +0000 | merijn | (~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 +0000 | vincent42 | (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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 13:56:22 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Ping timeout: 272 seconds) |
| 2024-09-09 14:01:00 +0000 | arahael_ | (~arahael@user/arahael) (Ping timeout: 246 seconds) |
| 2024-09-09 14:01:11 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 14:05:37 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 14:06:08 +0000 | CrunchyFlakes | (~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 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 2024-09-09 14:09:29 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) |
| 2024-09-09 14:09:38 +0000 | athan | (~athan@syn-098-153-145-140.biz.spectrum.com) (Ping timeout: 265 seconds) |
| 2024-09-09 14:09:54 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 14:10:29 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 14:19:16 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 14:19:24 +0000 | mesaoptimizer | (~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 +0000 | mesaoptimizer | (~mesaoptim@user/PapuaHardyNet) |
| 2024-09-09 14:22:11 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer) |
| 2024-09-09 14:24:45 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 14:25:20 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) |
| 2024-09-09 14:26:33 +0000 | merijn | (~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 +0000 | murgeljm | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 14:30:45 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Read error: Connection reset by peer) |
| 2024-09-09 14:31:05 +0000 | CrunchyFlakes | (~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 +0000 | lortabac | (~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 +0000 | morb | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 14:38:22 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 14:38:55 +0000 | EvanR_ | EvanR |
| 2024-09-09 14:41:03 +0000 | killy | (~killy@staticline-31-183-181-204.toya.net.pl) |
| 2024-09-09 14:42:43 +0000 | CrunchyFlakes | (~CrunchyFl@ip-109-42-114-219.web.vodafone.de) (Ping timeout: 244 seconds) |
| 2024-09-09 14:43:19 +0000 | merijn | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 14:55:03 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 14:55:24 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Client Quit) |
| 2024-09-09 14:55:38 +0000 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 255 seconds) |
| 2024-09-09 14:56:24 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 14:57:19 +0000 | ash3en | (~Thunderbi@89.246.174.164) |
| 2024-09-09 14:57:23 +0000 | ash3en | (~Thunderbi@89.246.174.164) (Client Quit) |
| 2024-09-09 14:59:37 +0000 | athan | (~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) |
| 2024-09-09 15:03:24 +0000 | misterfish | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 15:09:13 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 15:10:13 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 15:14:09 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 15:15:13 +0000 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection) |
| 2024-09-09 15:16:12 +0000 | haskellbridge | (~hackager@syn-024-093-192-219.res.spectrum.com) |
| 2024-09-09 15:16:12 +0000 | ChanServ | +v haskellbridge |
| 2024-09-09 15:17:37 +0000 | rosco | (~rosco@175.136.158.234) |
| 2024-09-09 15:20:17 +0000 | merijn | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 15:27:26 +0000 | califax | (~califax@user/califx) (Read error: Connection reset by peer) |
| 2024-09-09 15:28:50 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 2024-09-09 15:28:55 +0000 | califax | (~califax@user/califx) |
| 2024-09-09 15:29:28 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 272 seconds) |
| 2024-09-09 15:29:47 +0000 | tomboy64 | (~tomboy64@user/tomboy64) |
| 2024-09-09 15:33:44 +0000 | spew | (~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 +0000 | machinedgod | (~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 +0000 | merijn | (~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 +0000 | srazkvt | (~sarah@user/srazkvt) (Quit: Konversation terminated!) |
| 2024-09-09 15:41:10 +0000 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 2024-09-09 15:41:47 +0000 | hiecaq | (~hiecaq@user/hiecaq) |
| 2024-09-09 15:44:58 +0000 | merijn | (~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 +0000 | chele | (~chele@user/chele) (Remote host closed the connection) |
| 2024-09-09 15:55:10 +0000 | athan_ | (~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) |
| 2024-09-09 15:55:19 +0000 | athan | (~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) (Ping timeout: 260 seconds) |
| 2024-09-09 15:55:35 +0000 | sp1ff | (~user@c-73-11-70-111.hsd1.wa.comcast.net) (Remote host closed the connection) |
| 2024-09-09 15:55:36 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 15:58:14 +0000 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 4.2.2) |
| 2024-09-09 15:58:28 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 16:00:25 +0000 | eron | (~eron@179.98.5.91) |
| 2024-09-09 16:00:38 +0000 | eron | (~eron@179.98.5.91) () |
| 2024-09-09 16:00:48 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 2024-09-09 16:01:31 +0000 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
| 2024-09-09 16:03:40 +0000 | simendsjo | (~user@84.211.91.108) |
| 2024-09-09 16:04:36 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 16:06:18 +0000 | morb | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 16:11:33 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 246 seconds) |
| 2024-09-09 16:14:10 +0000 | aforemny_ | (~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 +0000 | aforemny | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 2024-09-09 16:16:22 +0000 | tromp | (~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 +0000 | tzh | (~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 +0000 | merijn | (~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 +0000 | morb | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 16:26:51 +0000 | rosco | (~rosco@175.136.158.234) (Quit: Lost terminal) |
| 2024-09-09 16:28:12 +0000 | ski | wouldn't know |
| 2024-09-09 16:28:14 +0000 | killy | (~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 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 16:30:41 +0000 | morb | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 16:37:03 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 16:37:55 +0000 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6) |
| 2024-09-09 16:40:26 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2024-09-09 16:40:48 +0000 | tomboy64 | (~tomboy64@user/tomboy64) (Read error: Connection reset by peer) |
| 2024-09-09 16:40:53 +0000 | tomboy65 | (~tomboy64@user/tomboy64) |
| 2024-09-09 16:42:18 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 2024-09-09 16:42:44 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
| 2024-09-09 16:44:34 +0000 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
| 2024-09-09 16:49:30 +0000 | Guest17 | (~Guest17@210.176.229.129) |
| 2024-09-09 16:52:51 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 16:57:57 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 16:58:21 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 16:58:53 +0000 | Inst_ | (~Inst@user/Inst) |
| 2024-09-09 17:01:09 +0000 | Inst | (~Inst@user/Inst) (Ping timeout: 248 seconds) |
| 2024-09-09 17:05:09 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 17:06:54 +0000 | itaipu | (~itaipu@168.121.99.162) (Ping timeout: 276 seconds) |
| 2024-09-09 17:07:50 +0000 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
| 2024-09-09 17:08:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 17:11:15 +0000 | Inst_ | Inst |
| 2024-09-09 17:13:10 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 2024-09-09 17:13:29 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 17:17:25 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2024-09-09 17:18:24 +0000 | ZharMeny | (~ZharMeny@user/ZharMeny) (Ping timeout: 272 seconds) |
| 2024-09-09 17:21:15 +0000 | itaipu | (~itaipu@168.121.99.111) |
| 2024-09-09 17:23:35 +0000 | ZharMeny | (~ZharMeny@user/ZharMeny) |
| 2024-09-09 17:24:26 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 17:26:56 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 17:29:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 2024-09-09 17:30:33 +0000 | Megant | (megant@user/megant) |
| 2024-09-09 17:31:46 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) |
| 2024-09-09 17:32:34 +0000 | ft | (~ft@p4fc2a393.dip0.t-ipconnect.de) |
| 2024-09-09 17:32:54 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds) |
| 2024-09-09 17:33:42 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 17:33:56 +0000 | youthlic | (~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 +0000 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2024-09-09 17:40:13 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 17:44:51 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Quit: ash3en) |
| 2024-09-09 17:45:14 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 17:45:28 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) |
| 2024-09-09 17:48:22 +0000 | merijn | (~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 +0000 | morb | (~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 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 2024-09-09 17:54:08 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
| 2024-09-09 17:54:34 +0000 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
| 2024-09-09 17:57:36 +0000 | athan_ | (~athan@2600:382:1f2b:73cc:7880:341e:685d:d35b) (Ping timeout: 276 seconds) |
| 2024-09-09 17:58:35 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
| 2024-09-09 17:59:57 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 18:01:12 +0000 | ski | . o O ( `PerformOdd' ) |
| 2024-09-09 18:03:43 +0000 | Guest17 | (~Guest17@210.176.229.129) (Quit: Client closed) |
| 2024-09-09 18:06:41 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 2024-09-09 18:07:54 +0000 | merijn | (~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 +0000 | morb | (~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 +0000 | merijn | (~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 +0000 | ash3en | (~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 +0000 | merijn | (~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 +0000 | rvalue- | (~rvalue@user/rvalue) |
| 2024-09-09 18:29:32 +0000 | leah2 | (~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 +0000 | rvalue | (~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 +0000 | leah2 | (~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 +0000 | rvalue- | 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 +0000 | merijn | (~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 +0000 | ash3en | (~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 +0000 | merijn | (~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 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Ping timeout: 245 seconds) |
| 2024-09-09 18:43:59 +0000 | morb | (~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 +0000 | morb | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 18:53:41 +0000 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 2024-09-09 18:54:39 +0000 | merijn | (~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 +0000 | sawilagar | (~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 +0000 | mreh | (~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 +0000 | merijn | (~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 +0000 | target_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 +0000 | morb | (~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 +0000 | merijn | (~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 +0000 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
| 2024-09-09 19:14:38 +0000 | sawilagar | (~sawilagar@user/sawilagar) |
| 2024-09-09 19:21:25 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 19:26:24 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) |
| 2024-09-09 19:26:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 19:28:57 +0000 | Me-me | (~me-me@user/me-me) (Remote host closed the connection) |
| 2024-09-09 19:29:37 +0000 | Me-me | (~me-me@kc.randomserver.name) |
| 2024-09-09 19:32:12 +0000 | pwug | (~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 +0000 | sord937 | (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 2024-09-09 19:37:11 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 19:38:03 +0000 | athan | (~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 +0000 | merijn | (~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 +0000 | athan | (~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 +0000 | CiaoSen | (~Jura@2a05:5800:206:9700:ca4b:d6ff:fec1:99da) |
| 2024-09-09 19:51:21 +0000 | simendsjo | (~user@84.211.91.108) (Ping timeout: 246 seconds) |
| 2024-09-09 19:52:59 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 2024-09-09 19:58:26 +0000 | athan | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 20:10:51 +0000 | ash3en | (~Thunderbi@2a02:3100:7e70:9c00:d19d:5a51:2f62:3ca4) (Quit: ash3en) |
| 2024-09-09 20:12:56 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2024-09-09 20:13:44 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 20:14:40 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 20:15:22 +0000 | Goodbye_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 +0000 | Goodbye_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 +0000 | Goodbye_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 +0000 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 2024-09-09 20:19:23 +0000 | sourcetarius | (~sourcetar@user/sourcetarius) |
| 2024-09-09 20:19:47 +0000 | pwug | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 20:24:58 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 20:25:39 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 20:29:42 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 2024-09-09 20:36:26 +0000 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 2024-09-09 20:37:18 +0000 | pwug | (~pwug@user/pwug) |
| 2024-09-09 20:40:21 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 20:40:33 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 20:41:14 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 20:42:21 +0000 | pwug | (~pwug@user/pwug) (Remote host closed the connection) |
| 2024-09-09 20:45:09 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 2024-09-09 20:47:21 +0000 | machinedgod | (~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 +0000 | foul_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 +0000 | JuanDaugherty | (~juan@user/JuanDaugherty) |
| 2024-09-09 20:56:07 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 21:01:38 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 21:02:19 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 21:04:14 +0000 | target_i | (~target_i@user/target-i/x-6023099) (Quit: leaving) |
| 2024-09-09 21:05:13 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 21:05:20 +0000 | foul_owl | (~kerry@174-21-143-250.tukw.qwest.net) |
| 2024-09-09 21:05:54 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 21:09:08 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 21:09:50 +0000 | Goodbye_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 +0000 | michalz | (~michalz@185.246.207.200) (Remote host closed the connection) |
| 2024-09-09 21:11:53 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 21:19:11 +0000 | peterbecich | (~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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 21:25:14 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 21:26:14 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
| 2024-09-09 21:27:42 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 21:32:15 +0000 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 2024-09-09 21:33:24 +0000 | merijn | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 21:44:24 +0000 | athan | (~athan@2600:382:2c2a:786c:a62e:28bc:97b8:21a6) (Ping timeout: 246 seconds) |
| 2024-09-09 21:45:38 +0000 | Goodbye_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 +0000 | Goodbye_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 +0000 | merijn | (~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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 21:49:22 +0000 | <tomsmeding> | indeed |
| 2024-09-09 21:49:27 +0000 | JuanDaugherty | (~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 +0000 | Goodbye_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 +0000 | Unicorn_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 +0000 | CiaoSen | (~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 +0000 | Goodbye_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 +0000 | Goodbye_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 +0000 | merijn | (~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 +0000 | tromp | (~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 +0000 | CiaoSen | (~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 +0000 | merijn | (~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 +0000 | sprout | sits 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 +0000 | Goodbye_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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 22:09:23 +0000 | ski | . 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 +0000 | CiaoSen | (~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 +0000 | merijn | (~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 +0000 | meygerjos | (~meygerjos@user/meygerjos) |
| 2024-09-09 22:19:43 +0000 | <haskellbridge> | <thirdofmay18081814goya> neat |
| 2024-09-09 22:19:45 +0000 | merijn | (~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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 22:29:53 +0000 | Squared | (~Square@user/square) |
| 2024-09-09 22:30:20 +0000 | Goodbye_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 +0000 | merijn | (~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 +0000 | Goodbye_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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 22:35:58 +0000 | Me-me | (~me-me@kc.randomserver.name) (Changing host) |
| 2024-09-09 22:35:58 +0000 | Me-me | (~me-me@user/me-me) |
| 2024-09-09 22:35:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
| 2024-09-09 22:36:04 +0000 | tv | (~tv@user/tv) (Ping timeout: 260 seconds) |
| 2024-09-09 22:36:34 +0000 | oo_miguel | (~Thunderbi@78.10.207.45) (Ping timeout: 252 seconds) |
| 2024-09-09 22:37:12 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 22:37:54 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 22:43:17 +0000 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
| 2024-09-09 22:44:15 +0000 | EvanR | (~EvanR@user/evanr) (Quit: Leaving) |
| 2024-09-09 22:46:36 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 22:48:55 +0000 | gentauro | (~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 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 2024-09-09 22:51:15 +0000 | acidjnk_new | (~acidjnk@p200300d6e72cfb21181cd9b506c11910.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 2024-09-09 22:52:33 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 22:53:15 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 22:56:09 +0000 | sawilagar | (~sawilagar@user/sawilagar) (Ping timeout: 246 seconds) |
| 2024-09-09 22:56:13 +0000 | meygerjos | (~meygerjos@user/meygerjos) (Ping timeout: 245 seconds) |
| 2024-09-09 22:59:18 +0000 | athan | (~athan@syn-098-153-145-140.biz.spectrum.com) |
| 2024-09-09 22:59:58 +0000 | hgolden_ | (~hgolden@static-198-44-129-51.cust.tzulo.com) |
| 2024-09-09 23:02:05 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 23:02:45 +0000 | hgolden | (~hgolden@169.150.203.10) (Ping timeout: 265 seconds) |
| 2024-09-09 23:03:23 +0000 | Sgeo | (~Sgeo@user/sgeo) |
| 2024-09-09 23:03:30 +0000 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) |
| 2024-09-09 23:04:41 +0000 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
| 2024-09-09 23:05:29 +0000 | k_hachig_ | (~k_hachig@2607:fea8:351d:ef0:f026:cab8:26a0:8d01) |
| 2024-09-09 23:06:59 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 2024-09-09 23:13:38 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 23:14:20 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 23:15:40 +0000 | athan | (~athan@syn-098-153-145-140.biz.spectrum.com) (Quit: Konversation terminated!) |
| 2024-09-09 23:16:54 +0000 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 2024-09-09 23:17:16 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 23:17:59 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 23:21:14 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 23:21:55 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 23:22:17 +0000 | k_hachig_ | k_hachig |
| 2024-09-09 23:25:27 +0000 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 2024-09-09 23:27:39 +0000 | k_hachig | (~k_hachig@2607:fea8:351d:ef0:f026:cab8:26a0:8d01) (Ping timeout: 246 seconds) |
| 2024-09-09 23:33:39 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 23:36:28 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) (Remote host closed the connection) |
| 2024-09-09 23:37:10 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |
| 2024-09-09 23:39:00 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 2024-09-09 23:40:51 +0000 | pavonia | (~user@user/siracusa) |
| 2024-09-09 23:43:59 +0000 | hgolden__ | (~hgolden@23.162.40.28) |
| 2024-09-09 23:44:31 +0000 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) (Ping timeout: 264 seconds) |
| 2024-09-09 23:46:12 +0000 | hgolden_ | (~hgolden@static-198-44-129-51.cust.tzulo.com) (Ping timeout: 246 seconds) |
| 2024-09-09 23:49:27 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
| 2024-09-09 23:50:30 +0000 | EvanR | (~EvanR@user/evanr) |
| 2024-09-09 23:50:38 +0000 | meygerjos | (~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 +0000 | emmanuelux | (~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer) |
| 2024-09-09 23:54:08 +0000 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 2024-09-09 23:55:55 +0000 | raehik | (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 265 seconds) |
| 2024-09-09 23:57:33 +0000 | Goodbye_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 +0000 | Goodbye_Vincent1 | (cyvahl@freakshells.net) |