Logs: liberachat/#haskell
| 2021-06-02 10:00:45 | × | dpl_ quits (~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 245 seconds) |
| 2021-06-02 10:01:02 | → | shryke_ joins (~shryke@91.103.43.254) |
| 2021-06-02 10:02:07 | × | tonyday quits (~user@202-65-93-249.ip4.superloop.com) (Read error: Connection reset by peer) |
| 2021-06-02 10:02:25 | → | tonyday joins (~user@202-65-93-249.ip4.superloop.com) |
| 2021-06-02 10:04:04 | × | thiross quits (~thiross@173.242.113.143.16clouds.com) (Ping timeout: 250 seconds) |
| 2021-06-02 10:04:30 | × | shryke quits (~shryke@91.103.43.254) (Ping timeout: 245 seconds) |
| 2021-06-02 10:06:35 | × | fabfianda quits (~fabfianda@net-93-148-125-174.cust.dsl.teletu.it) (Ping timeout: 245 seconds) |
| 2021-06-02 10:07:03 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:2e4f:b94a:ab3f:8431) (Ping timeout: 244 seconds) |
| 2021-06-02 10:07:21 | → | fabfianda joins (~fabfianda@mob-5-90-240-15.net.vodafone.it) |
| 2021-06-02 10:07:26 | × | tonyday quits (~user@202-65-93-249.ip4.superloop.com) (Ping timeout: 272 seconds) |
| 2021-06-02 10:11:24 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 268 seconds) |
| 2021-06-02 10:11:47 | → | benin4 joins (~benin@183.82.205.186) |
| 2021-06-02 10:11:49 | → | favonia joins (~favonia@user/favonia) |
| 2021-06-02 10:12:18 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:ca30:4180:833e:bce9) |
| 2021-06-02 10:12:30 | × | benin quits (~benin@183.82.205.186) (Ping timeout: 272 seconds) |
| 2021-06-02 10:12:30 | benin4 | is now known as benin |
| 2021-06-02 10:13:45 | → | k3nny joins (~k3nny@user/k3nny) |
| 2021-06-02 10:16:25 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 2021-06-02 10:17:37 | × | haskman quits (~haskman@106.201.29.153) (Ping timeout: 272 seconds) |
| 2021-06-02 10:18:18 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 264 seconds) |
| 2021-06-02 10:19:28 | × | fabfianda quits (~fabfianda@mob-5-90-240-15.net.vodafone.it) (Ping timeout: 272 seconds) |
| 2021-06-02 10:19:40 | → | fabfianda joins (~fabfianda@net-93-148-125-174.cust.dsl.teletu.it) |
| 2021-06-02 10:20:59 | → | rk04 joins (~rk04@user/rajk) |
| 2021-06-02 10:22:46 | → | dpl_ joins (~dpl@77-121-78-163.chn.volia.net) |
| 2021-06-02 10:26:44 | → | ubikium joins (~ubikium@113x43x248x70.ap113.ftth.arteria-hikari.net) |
| 2021-06-02 10:29:02 | → | scn joins (~user@2600:6c54:4500:1849:11c9:ec1e:8500:8c64) |
| 2021-06-02 10:32:49 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds) |
| 2021-06-02 10:33:03 | × | scn quits (~user@2600:6c54:4500:1849:11c9:ec1e:8500:8c64) (Quit: ERC (IRC client for Emacs 27.1)) |
| 2021-06-02 10:33:13 | → | favonia joins (~favonia@user/favonia) |
| 2021-06-02 10:33:24 | × | dhil quits (~dhil@195.213.192.85) (Ping timeout: 272 seconds) |
| 2021-06-02 10:35:15 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-dev) |
| 2021-06-02 10:36:04 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 2021-06-02 10:36:45 | × | amk quits (~amk@176.61.106.150) (Remote host closed the connection) |
| 2021-06-02 10:37:04 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 2021-06-02 10:37:17 | × | bor0 quits (~boro@user/bor0) (Quit: Leaving) |
| 2021-06-02 10:37:40 | → | haskman joins (~haskman@223.190.0.187) |
| 2021-06-02 10:37:55 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds) |
| 2021-06-02 10:38:49 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-06-02 10:39:26 | → | amk joins (~amk@176.61.106.150) |
| 2021-06-02 10:41:43 | → | dhil joins (~dhil@195.213.192.85) |
| 2021-06-02 10:43:16 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
| 2021-06-02 10:45:07 | × | berberman quits (~berberman@user/berberman) (Ping timeout: 265 seconds) |
| 2021-06-02 10:45:13 | → | berberman_ joins (~berberman@user/berberman) |
| 2021-06-02 10:46:56 | × | img quits (~img@2405:6580:b1c0:2500:1e68:3732:5209:e4c0) (Quit: ZNC 1.8.1 - https://znc.in) |
| 2021-06-02 10:47:43 | × | rk04 quits (~rk04@user/rajk) (Quit: Client closed) |
| 2021-06-02 10:49:15 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 2021-06-02 10:49:47 | → | img joins (~img@2405:6580:b1c0:2500:2508:a86c:693c:5a39) |
| 2021-06-02 10:49:59 | fendor_ | is now known as fendor |
| 2021-06-02 10:56:06 | × | azeem quits (~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 264 seconds) |
| 2021-06-02 10:56:19 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-06-02 10:57:40 | → | raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 2021-06-02 11:00:20 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds) |
| 2021-06-02 11:06:49 | → | ru0mad joins (~ru0mad@82-64-17-144.subs.proxad.net) |
| 2021-06-02 11:08:38 | → | y04nn joins (~y04nn@193.32.127.220) |
| 2021-06-02 11:08:50 | × | _xft0 quits (~root@185.234.208.208.r.toneticgroup.pl) (Quit: leaving) |
| 2021-06-02 11:09:40 | → | xsperry joins (~as@user/xsperry) |
| 2021-06-02 11:10:08 | × | shryke_ quits (~shryke@91.103.43.254) (Ping timeout: 272 seconds) |
| 2021-06-02 11:10:32 | <ziman> | i'm writing an algorithm (check various caches, if they all miss, do something expensive) that can short-circuit in two ways: 1) cache hit, 2) some error. Is there a neat way of expressing this? Now I'm using MonadFail to express the errors but the cache lookups still cause a indentation cascade of case expressions, where the (Just hitData) branch is always (return hitData). |
| 2021-06-02 11:10:57 | <ziman> | I find it hard to google. |
| 2021-06-02 11:11:01 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 2021-06-02 11:11:51 | × | ru0mad quits (~ru0mad@82-64-17-144.subs.proxad.net) (Remote host closed the connection) |
| 2021-06-02 11:12:17 | → | ru0mad joins (~ru0mad@82-64-17-144.subs.proxad.net) |
| 2021-06-02 11:12:25 | → | cheater1__ joins (~Username@user/cheater) |
| 2021-06-02 11:12:27 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 2021-06-02 11:12:37 | cheater1__ | is now known as cheater |
| 2021-06-02 11:12:59 | × | ru0mad quits (~ru0mad@82-64-17-144.subs.proxad.net) (Remote host closed the connection) |
| 2021-06-02 11:13:24 | → | ru0mad joins (~ru0mad@82-64-17-144.subs.proxad.net) |
| 2021-06-02 11:13:25 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2021-06-02 11:13:42 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-dev) |
| 2021-06-02 11:14:01 | × | ru0mad quits (~ru0mad@82-64-17-144.subs.proxad.net) (Client Quit) |
| 2021-06-02 11:15:20 | × | wanagnuj quits (~wanagnuj@101.95.97.158) (Ping timeout: 245 seconds) |
| 2021-06-02 11:16:14 | <boxscape> | ziman I don't have extensive experience with it but that seems like a use case for callCC, which lets you return early |
| 2021-06-02 11:16:22 | <boxscape> | https://en.m.wikibooks.org/wiki/Haskell/Continuation_passing_style (search for callcc here) |
| 2021-06-02 11:16:22 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 2021-06-02 11:16:52 | <boxscape> | ziman you could combine ContT with ExceptT to get both the ability to return early and the ability to throw an error |
| 2021-06-02 11:18:08 | <ziman> | ah, i see |
| 2021-06-02 11:18:48 | <ziman> | yeah, that would probably work for my use case |
| 2021-06-02 11:19:38 | → | ikex joins (~ash@user/ikex) |
| 2021-06-02 11:20:52 | × | ixlun quits (~matthew@109.249.184.235) (Read error: Connection reset by peer) |
| 2021-06-02 11:28:03 | <boxscape> | ziman I suppose you could also only use Cont without Except and have the function live in Cont r (Either Error Result), not sure which would be more convenient |
| 2021-06-02 11:29:12 | × | haskman quits (~haskman@223.190.0.187) (Quit: Going to sleep. ZZZzzz…) |
| 2021-06-02 11:29:38 | <ziman> | i think i'd prefer to have two distinct "throws" |
| 2021-06-02 11:29:42 | <boxscape> | fair |
| 2021-06-02 11:29:43 | <ziman> | but it's an interesting question |
| 2021-06-02 11:30:19 | <ziman> | well, in other words, i'd like (pure x) return the success thing without me having to wrap it in Right |
| 2021-06-02 11:30:46 | <ziman> | because otherwise the monad instance would be annoying, i imagine |
| 2021-06-02 11:30:58 | <ziman> | like not being able to fmap stuff easily and such |
| 2021-06-02 11:31:02 | → | boxscape10 joins (~boxscape@user/boxscape) |
| 2021-06-02 11:31:25 | <boxscape10> | ziman are you familiar with mtl style? |
| 2021-06-02 11:31:36 | → | azeem joins (~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) |
| 2021-06-02 11:32:01 | <ziman> | i use mtl but i'm not sure what you mean by the "mtl style"; do you mean autolifting via typeclasses? |
| 2021-06-02 11:32:06 | <boxscape10> | yeah |
| 2021-06-02 11:32:27 | <boxscape10> | but if you use mtl I imagine the answer is yes :) |
| 2021-06-02 11:32:45 | <ziman> | hmm, is there an autolifted version of "pure"? |
| 2021-06-02 11:32:57 | <ziman> | not sure if that makes sense, even |
| 2021-06-02 11:33:27 | <boxscape10> | erm, I suppose I say pure is already autolifted IIUC |
| 2021-06-02 11:33:34 | <boxscape10> | s/I say/I would say |
| 2021-06-02 11:33:54 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds) |
| 2021-06-02 11:34:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-06-02 11:34:55 | × | boxscape quits (~boxscape@user/boxscape) (Ping timeout: 245 seconds) |
All times are in UTC.