Logs: liberachat/#haskell
| 2025-10-15 15:31:38 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 248 seconds) |
| 2025-10-15 15:32:01 | <dminuoso> | Sure, but then you're no longer picking ApplicativeDo for just RecordWildcards, but for whatever it is that you're doing. |
| 2025-10-15 15:32:25 | <ski> | yes |
| 2025-10-15 15:32:30 | <ski> | [> MyRecord { foo = [<fooExpr>],bar = [<barExpr>] } <] -- my "(local) reflective effect syntax" |
| 2025-10-15 15:32:42 | <int-e> | I think the "positional" variant would be Foo <$> makeF1 <*> makeF2 |
| 2025-10-15 15:32:49 | <ski> | yes |
| 2025-10-15 15:32:55 | <dminuoso> | Ah I see what you're getting at. |
| 2025-10-15 15:34:00 | <dminuoso> | I've tried to use it as well because its less brittle than positional, but bitten over and over again with slightly nuanced versions and then ApplicativeDo would just break apart. :( |
| 2025-10-15 15:34:14 | <dminuoso> | I really want a doA. |
| 2025-10-15 15:34:40 | <ski> | i should try working a bit more on my TH implementation of my syntax |
| 2025-10-15 15:35:01 | <int-e> | . o O ( ado ) |
| 2025-10-15 15:35:27 | <dminuoso> | int-e: Something tells me that ado has more uses in hackage than doA. :-) |
| 2025-10-15 15:35:48 | <ski> | `ado' <https://hackage.haskell.org/package/applicative-quoters-0.1.0.8/docs/Control-Applicative-QQ-ADo.html> |
| 2025-10-15 15:35:50 | <dminuoso> | Who knows, maybe neither are used - I should get a hackage copy at some point. |
| 2025-10-15 15:36:31 | <ski> | what would the `doA' do differently ? |
| 2025-10-15 15:36:56 | <int-e> | dminuoso: but "much doA about nothing" just isn't the same |
| 2025-10-15 15:36:57 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 2025-10-15 15:37:09 | <dminuoso> | :) |
| 2025-10-15 15:38:30 | × | GdeVolpiano quits (~GdeVolpia@user/GdeVolpiano) (Ping timeout: 252 seconds) |
| 2025-10-15 15:38:33 | × | hsw quits (~hsw@112.104.9.97) (Remote host closed the connection) |
| 2025-10-15 15:38:52 | → | hsw joins (~hsw@112-104-9-97.adsl.dynamic.seed.net.tw) |
| 2025-10-15 15:39:31 | → | GdeVolpiano joins (~GdeVolpia@user/GdeVolpiano) |
| 2025-10-15 15:39:46 | × | GdeVolpiano quits (~GdeVolpia@user/GdeVolpiano) (Client Quit) |
| 2025-10-15 15:40:16 | × | tromp quits (~textual@2001:1c00:3487:1b00:cdf:654a:2a7f:261) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-10-15 15:47:06 | × | Inline quits (~inline@2a02:8071:57a1:1260:30a1:2a21:7e45:e8e4) (Quit: Leaving) |
| 2025-10-15 15:47:25 | × | Digit quits (~user@user/digit) (Ping timeout: 264 seconds) |
| 2025-10-15 15:49:22 | → | Digit joins (~user@user/digit) |
| 2025-10-15 15:58:14 | → | tromp joins (~textual@2001:1c00:3487:1b00:cdf:654a:2a7f:261) |
| 2025-10-15 16:02:54 | <tomsmeding> | dminuoso: how would doA help you? |
| 2025-10-15 16:03:19 | Digit | is now known as digitteknohippie |
| 2025-10-15 16:03:25 | digitteknohippie | is now known as Digit |
| 2025-10-15 16:03:39 | <tomsmeding> | getting an error because doA can't manage to construct an Applicative expression for it, or getting an error because Monad is not satisfied -- how are these fundamentally different, apart from being potentially confusing to a newcomer? |
| 2025-10-15 16:03:48 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 2025-10-15 16:06:00 | × | gustrb quits (~gustrb@191.243.134.87) (Ping timeout: 252 seconds) |
| 2025-10-15 16:08:06 | → | Square3 joins (~Square@user/square) |
| 2025-10-15 16:11:12 | → | mochie joins (~mochie@93.124.228.5) |
| 2025-10-15 16:11:27 | × | Square quits (~Square4@user/square) (Ping timeout: 260 seconds) |
| 2025-10-15 16:14:50 | × | kuribas` quits (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.3)) |
| 2025-10-15 16:20:23 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 2025-10-15 16:23:22 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 2025-10-15 16:25:19 | <Leary> | tomsmeding: The `Applicative` could have a `Monad` instance you don't want to use. |
| 2025-10-15 16:25:35 | <tomsmeding> | dminuoso was talking about optparse-applicative though |
| 2025-10-15 16:29:02 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 2025-10-15 16:31:00 | × | mochie quits (~mochie@93.124.228.5) (Quit: WeeChat 4.7.1) |
| 2025-10-15 16:31:04 | <Leary> | dminuoso: You could use `A.do` with `QualifiedDo`, where `module A` provides `join` and `>>=` imposing `Unsatisfiable` constraints. |
| 2025-10-15 16:34:41 | → | gustrb joins (~gustrb@191.243.134.87) |
| 2025-10-15 16:36:06 | → | OftenFaded47 joins (~OftenFade@user/tisktisk) |
| 2025-10-15 16:53:03 | × | tromp quits (~textual@2001:1c00:3487:1b00:cdf:654a:2a7f:261) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2025-10-15 16:56:11 | → | tccq joins (~user@user/tccq) |
| 2025-10-15 17:04:17 | → | inline joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:06:27 | → | inline_ joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:06:38 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-10-15 17:06:48 | inline | is now known as Guest6155 |
| 2025-10-15 17:06:48 | inline_ | is now known as inline |
| 2025-10-15 17:06:50 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 2025-10-15 17:08:08 | → | inline_ joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:08:12 | × | inline quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Killed (osmium.libera.chat (Nickname regained by services))) |
| 2025-10-15 17:08:12 | inline_ | is now known as inline |
| 2025-10-15 17:09:53 | × | Guest6155 quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Ping timeout: 244 seconds) |
| 2025-10-15 17:10:01 | × | inline quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Read error: Connection reset by peer) |
| 2025-10-15 17:10:29 | → | inline joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:11:09 | × | inline quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Max SendQ exceeded) |
| 2025-10-15 17:12:02 | → | inline joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:12:21 | → | jmcantrell joins (~weechat@user/jmcantrell) |
| 2025-10-15 17:12:57 | → | tromp joins (~textual@2001:1c00:3487:1b00:cdf:654a:2a7f:261) |
| 2025-10-15 17:17:14 | → | inline_ joins (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) |
| 2025-10-15 17:19:11 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 2025-10-15 17:20:16 | × | inline quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Ping timeout: 246 seconds) |
| 2025-10-15 17:23:59 | inline_ | is now known as inline |
| 2025-10-15 17:24:38 | × | nogloff quits (uid464985@id-464985.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 2025-10-15 17:25:33 | × | tccq quits (~user@user/tccq) (Quit: ERC 5.6.1-git (IRC client for GNU Emacs 31.0.50)) |
| 2025-10-15 17:29:46 | × | OftenFaded47 quits (~OftenFade@user/tisktisk) (Quit: Client closed) |
| 2025-10-15 17:31:16 | → | stilgart joins (~Christoph@2001:41d0:2:8673::42) |
| 2025-10-15 17:35:19 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 2025-10-15 17:36:59 | <dminuoso> | tomsmeding: Well thats what I ended up using as its reliable enough for that (because it has no Monad instance) |
| 2025-10-15 17:37:12 | <dminuoso> | Though in combination with some features like pattern matching it still breaks. |
| 2025-10-15 17:37:38 | <dminuoso> | i.e. when you do stuff like `Only a <- ...` |
| 2025-10-15 17:41:21 | <tomsmeding> | sure, but doA wouldn't fix that, would it? |
| 2025-10-15 17:41:26 | <tomsmeding> | it would just throw a different error |
| 2025-10-15 17:45:22 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 2025-10-15 17:46:54 | × | inline quits (~inline@2a02:8071:57a1:1260:adb1:4ce:703e:ab76) (Quit: Leaving) |
| 2025-10-15 17:57:03 | <EvanR> | it's interesting how something "as simple as" |
| 2025-10-15 17:57:12 | <EvanR> | :t Control.Exception.catches |
| 2025-10-15 17:57:13 | <lambdabot> | IO a -> [Control.Exception.Handler a] -> IO a |
| 2025-10-15 17:57:25 | × | gustrb quits (~gustrb@191.243.134.87) (Ping timeout: 256 seconds) |
| 2025-10-15 17:57:30 | → | inline joins (~inline@2a02:8071:57a1:1260:810a:b569:d13b:c6fe) |
| 2025-10-15 17:57:42 | <EvanR> | requires understanding "existential" style polymorphism |
| 2025-10-15 17:57:57 | <EvanR> | so much for simplehaskell.org |
| 2025-10-15 18:01:09 | <EvanR> | (existential style wouldn't be so bad if it was explained somewhere obvious when you're trying to learn the language. It's unfortunately not in "a gentle introduction" xD) |
| 2025-10-15 18:03:04 | → | Axman6 joins (~Axman6@user/axman6) |
| 2025-10-15 18:04:33 | × | Axma32074 quits (~Axman6@user/axman6) (Ping timeout: 240 seconds) |
| 2025-10-15 18:10:22 | → | michalz_ joins (~michalz@185.246.207.222) |
| 2025-10-15 18:11:24 | × | michalz quits (~michalz@185.246.207.215) (Ping timeout: 252 seconds) |
| 2025-10-15 18:15:20 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 2025-10-15 18:15:27 | → | peterbecich joins (~Thunderbi@172.222.148.214) |
| 2025-10-15 18:15:34 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 2025-10-15 18:18:41 | <monochrom> | Unfortunately the Gentle Introduction predated existential types. |
| 2025-10-15 18:19:26 | <monochrom> | Or fortunately? I feel like the problem is caused by mentioning existential types, not by not mentioning. |
| 2025-10-15 18:19:37 | × | chromoblob quits (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2025-10-15 18:20:11 | <tomsmeding> | which problem? |
All times are in UTC.