2022/02/13

2022-02-13 00:00:11 +0100alx741(~alx741@157.100.197.240)
2022-02-13 00:01:20 +0100 <olle> Aaand it's late (CET)
2022-02-13 00:05:45 +0100ChanServ+o litharge
2022-02-13 00:05:46 +0100litharge-bo *!*@98.38.249.169$##fix-your-connection litharge
2022-02-13 00:05:56 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 00:06:03 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 00:06:08 +0100 <monochrom> oh darn, so 20 minutes is not enough either
2022-02-13 00:06:08 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 00:06:14 +0100ChanServ+o monochrom
2022-02-13 00:06:18 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 00:06:22 +0100monochrom+b *!*@98.38.249.169$##fix-your-connection
2022-02-13 00:06:25 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 00:06:46 +0100 <geekosaur> they'realso overriding the forward ban, so little point in including it I guess
2022-02-13 00:08:26 +0100monochrom-o monochrom
2022-02-13 00:11:43 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de)
2022-02-13 00:11:46 +0100 <EvanR> some sort of cosmic ircops conflict
2022-02-13 00:17:59 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 00:18:56 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 00:19:33 +0100coot(~coot@213.134.190.95) (Quit: coot)
2022-02-13 00:21:17 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-02-13 00:24:05 +0100maxime__(~maxime@2a01cb08833598009e7cfeb2ba15b673.ipv6.abo.wanadoo.fr) (Quit: Leaving)
2022-02-13 00:24:44 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 00:24:46 +0100alx741(~alx741@157.100.197.240)
2022-02-13 00:26:42 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 00:28:49 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-02-13 00:28:49 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 00:29:37 +0100cosimone(~user@93-44-184-23.ip98.fastwebnet.it) (Quit: ERC (IRC client for Emacs 27.1))
2022-02-13 00:32:06 +0100off^(~off@50.235.176.163) (Ping timeout: 256 seconds)
2022-02-13 00:33:36 +0100analognoise(~analognoi@185.229.59.36) (Quit: Leaving)
2022-02-13 00:39:34 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2022-02-13 00:45:55 +0100alx741(~alx741@157.100.197.240)
2022-02-13 00:45:57 +0100Unicorn_Princess(~Unicorn_P@46-54-248-191.static.kate-wing.si) (Quit: Leaving)
2022-02-13 00:50:46 +0100off^(~off@50.235.176.163)
2022-02-13 00:51:22 +0100olle(~olle@i5E866D81.versanet.de) (Ping timeout: 256 seconds)
2022-02-13 00:52:51 +0100 <pavonia> geekosaur: What do you mean by overriding the ban?
2022-02-13 00:53:19 +0100wombat871(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net)
2022-02-13 00:53:49 +0100 <geekosaur> a forward ban pushes them into a different channel. clients generally remember that and on reconnect go to the new channel. and did so the last few times lavaman's client started doing this
2022-02-13 00:53:57 +0100 <geekosaur> but now they're coming back here anyway
2022-02-13 00:54:26 +0100 <geekosaur> I don't think they're being malicious, but they're ignoring the name of the channel they end up in…
2022-02-13 00:55:01 +0100 <geekosaur> (it's a "reserved" channel for this use, people whose clients start disconnecting and reconnecting in rapid succession)
2022-02-13 00:56:01 +0100 <pavonia> Okay, I didn't know there are clients that auto-replace joined channels by forwards
2022-02-13 00:56:26 +0100 <geekosaur> baswically they remember the channels they're in. this doesn't work across restarts usually, but do across reconnects
2022-02-13 00:56:26 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 01:02:10 +0100xff0x(~xff0x@2001:1a81:524f:ad00:23cf:423a:2190:173f) (Ping timeout: 260 seconds)
2022-02-13 01:02:39 +0100xff0x(~xff0x@2001:1a81:524f:ad00:ca8e:e915:817b:c700)
2022-02-13 01:03:35 +0100 <int-e> geekosaur: oh I thought you were alluding to the +Q user mode.
2022-02-13 01:04:01 +0100 <geekosaur> no, to the $##fix-your-connection
2022-02-13 01:04:02 +0100 <int-e> (which causes forwards to be ignored)
2022-02-13 01:04:11 +0100 <geekosaur> sadly quiet does nothing to silence joins/parts
2022-02-13 01:04:19 +0100 <geekosaur> ah
2022-02-13 01:04:34 +0100 <int-e> cf. https://libera.chat/guides/usermodes ...but apparently that's not in play
2022-02-13 01:04:50 +0100 <geekosaur> that mode can't be assigned by non-ops, so I'd really hope they don't have it
2022-02-13 01:05:32 +0100 <int-e> ? it's a user mode. It's not ignoring the ban, just the forward part of it.
2022-02-13 01:06:00 +0100 <int-e> Anyway, I just misunderstood what you meant by "ignore".
2022-02-13 01:06:33 +0100ChanServ+o litharge
2022-02-13 01:06:34 +0100litharge-bo *!*@98.38.249.169$##fix-your-connection litharge
2022-02-13 01:06:49 +0100chenqisu1(~chenqisu1@183.217.200.249)
2022-02-13 01:07:24 +0100 <int-e> (This is on my mind because I should probably tweak lambdabot to use +Q, because these forwards do nothing useful for it.)
2022-02-13 01:10:45 +0100wroathe(~wroathe@user/wroathe)
2022-02-13 01:12:20 +0100Tuplanolla(~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) (Quit: Leaving.)
2022-02-13 01:13:15 +0100alx741(~alx741@181.199.42.143)
2022-02-13 01:14:20 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 272 seconds)
2022-02-13 01:16:31 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 01:16:43 +0100Erutuon(~Erutuon@user/erutuon)
2022-02-13 01:28:32 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-02-13 01:28:35 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 01:28:38 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 01:29:11 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 01:33:29 +0100alx741(~alx741@181.199.42.143)
2022-02-13 01:33:37 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-02-13 01:33:37 +0100Ariakenom__(~Ariakenom@h-82-196-111-63.NA.cust.bahnhof.se) (Quit: Leaving)
2022-02-13 01:35:45 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-02-13 01:38:41 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 01:38:42 +0100burnsidesLlama(~burnsides@dhcp168-017.wadham.ox.ac.uk) (Remote host closed the connection)
2022-02-13 01:45:17 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net) (Ping timeout: 256 seconds)
2022-02-13 01:49:15 +0100acidjnk(~acidjnk@p200300d0c705755700771b768146bc05.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2022-02-13 01:49:49 +0100DNH(~DNH@2a02:8108:1100:16d8:95db:50d7:7eec:328d) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-02-13 01:50:34 +0100mvk(~mvk@2607:fea8:5cdc:bf00::99e7)
2022-02-13 01:54:28 +0100prolic(~prolic@181.122.131.227)
2022-02-13 01:55:03 +0100 <prolic> hi
2022-02-13 01:55:21 +0100 <geekosaur> hi
2022-02-13 01:55:32 +0100 <prolic> would someone willing to help me out with a problem here?
2022-02-13 01:55:42 +0100 <geekosaur> don't ask to ask, just ask
2022-02-13 01:55:47 +0100alx741(~alx741@157.100.197.240)
2022-02-13 01:55:57 +0100 <prolic> I forked secp256k1-haskell in order to re-add support for schnorr signatures
2022-02-13 01:56:12 +0100 <prolic> I managed to get "stack build" to compile everything
2022-02-13 01:56:45 +0100 <prolic> however "stack test" complains about CPP bindings: error: undefined reference to 'secp256k1_xonly_pubkey_create'
2022-02-13 01:57:04 +0100 <prolic> I have no idea what went wrong
2022-02-13 01:57:51 +0100hgolden(~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Remote host closed the connection)
2022-02-13 01:58:14 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2022-02-13 01:58:40 +0100 <prolic> https://github.com/prolic/secp256k1-schnorr/tree/test_refactor
2022-02-13 01:58:40 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 02:05:40 +0100acidsys(~LSD@2a03:4000:55:d20::3) (Excess Flood)
2022-02-13 02:06:06 +0100 <geekosaur> not seeing anything immediately except a potential confusion: LANGUAGE CPP doesn't seem to be being used
2022-02-13 02:06:13 +0100acidsys(~LSD@2a03:4000:55:d20::3)
2022-02-13 02:10:25 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-02-13 02:10:33 +0100 <geekosaur> the only thing that comes to mind is that you might be better off using capi instead of ccall
2022-02-13 02:10:47 +0100 <geekosaur> it handles various things better than ccall does
2022-02-13 02:11:18 +0100 <geekosaur> including "functions" that are actually preprocessor macros, which ccall won't be able to find at all
2022-02-13 02:14:54 +0100alx741(~alx741@157.100.197.240)
2022-02-13 02:16:17 +0100 <prolic> mh
2022-02-13 02:16:32 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-02-13 02:19:02 +0100MatthiasG2(~matthias@i6DFA0382.versanet.de) (Quit: leaving)
2022-02-13 02:23:48 +0100 <geekosaur> also, if it's not clear, LANGUAGE CPP has nothing to do with C++; it means to run the Haskell source through the C preprocessor. You don't have any preprocessor usage in that file, so I don't see what LANGUAGE CPP is supposed to be getting you.)
2022-02-13 02:23:50 +0100mmhat(~mmh@55d4ce4d.access.ecotel.net) (Quit: WeeChat 3.4)
2022-02-13 02:26:30 +0100 <prolic> LANGUAGE CPP was previously used in that file
2022-02-13 02:26:41 +0100 <prolic> the fact that it's enabled is not my problem
2022-02-13 02:27:41 +0100 <prolic> it's a fork of https://github.com/haskoin/secp256k1-haskell (to re-add schnorr sigs)
2022-02-13 02:28:16 +0100 <prolic> whatever code they have is working, I assume it's correct, I forked it, just re-enabled a bunch of code they deleted
2022-02-13 02:28:25 +0100 <prolic> and suddenly nothing compiles
2022-02-13 02:29:26 +0100 <prolic> your suggestions might be helpful in another scenario, but I am not going to refactor ccall to capi, or anything alike, when all I want is to get the damn test-suite running again and I know it must be one line error somewhere that I cannot see at the moment
2022-02-13 02:30:47 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 02:32:02 +0100 <geekosaur> I don't know that, especially since I just searched the secp256k1 repo and the only reference to that function is the commit that added schnorrsig
2022-02-13 02:33:00 +0100 <geekosaur> making me wonder if it's missing because you don't have the (optional) schnorr support enabled, or because you need to use capi to get access to it
2022-02-13 02:33:22 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 02:34:38 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de) (Remote host closed the connection)
2022-02-13 02:38:27 +0100dcoutts_(~duncan@host109-149-1-225.range109-149.btcentralplus.com)
2022-02-13 02:39:59 +0100erts(~erts@user/erts)
2022-02-13 02:40:31 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-02-13 02:40:58 +0100dcoutts(~duncan@host213-122-143-132.range213-122.btcentralplus.com) (Ping timeout: 250 seconds)
2022-02-13 02:43:32 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-02-13 02:46:59 +0100alx741(~alx741@157.100.197.240)
2022-02-13 02:48:15 +0100 <janus> you can use ccall, they don't use varargs
2022-02-13 02:48:25 +0100 <janus> i added that schnorrsig support but they have since changed the interface, i think
2022-02-13 02:48:31 +0100 <janus> so even if it compiles, it will break horribly
2022-02-13 02:48:39 +0100 <janus> (i know prolic is gone now)
2022-02-13 02:49:05 +0100 <janus> anyway the cardano people also want schnorrsig support, so why not just wait for them to write it
2022-02-13 02:50:51 +0100 <janus> i prefer the way russell o'connor is doing it in simplicity though. afaik he exposes field primitives for those that really want to make their own algos
2022-02-13 02:51:02 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 02:51:29 +0100adanwan_(~adanwan@gateway/tor-sasl/adanwan)
2022-02-13 02:52:20 +0100adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-02-13 02:52:24 +0100hololeap(~hololeap@user/hololeap) (Read error: Connection reset by peer)
2022-02-13 02:53:31 +0100hololeap(~hololeap@user/hololeap)
2022-02-13 02:53:46 +0100ix(~ix@213.205.241.13) (Ping timeout: 256 seconds)
2022-02-13 02:53:58 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Read error: Connection reset by peer)
2022-02-13 02:57:07 +0100deadmarshal(~deadmarsh@95.38.116.52)
2022-02-13 02:57:38 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 02:57:46 +0100eco(~ubuntu@ec2-54-201-230-197.us-west-2.compute.amazonaws.com) (Remote host closed the connection)
2022-02-13 02:57:46 +0100shapr(~user@pool-173-73-44-186.washdc.fios.verizon.net) (Remote host closed the connection)
2022-02-13 02:57:56 +0100motherfsck(~motherfsc@user/motherfsck)
2022-02-13 02:57:59 +0100shapr(~user@pool-173-73-44-186.washdc.fios.verizon.net)
2022-02-13 03:01:43 +0100ix(~ix@213.205.241.13)
2022-02-13 03:01:56 +0100erts(~erts@user/erts) (Read error: Connection reset by peer)
2022-02-13 03:02:00 +0100deadmarshal(~deadmarsh@95.38.116.52) (Ping timeout: 272 seconds)
2022-02-13 03:03:55 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 272 seconds)
2022-02-13 03:05:14 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt) (Quit: WeeChat 3.4)
2022-02-13 03:07:26 +0100vysn(~vysn@user/vysn)
2022-02-13 03:08:09 +0100alx741(~alx741@157.100.197.240)
2022-02-13 03:09:34 +0100califax-(~califax@user/califx)
2022-02-13 03:10:10 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com)
2022-02-13 03:12:15 +0100califax(~califax@user/califx) (Ping timeout: 276 seconds)
2022-02-13 03:12:15 +0100califax-califax
2022-02-13 03:12:56 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 03:14:56 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.0.91))
2022-02-13 03:15:17 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com)
2022-02-13 03:19:55 +0100 <geekosaur> thank you. I did go through the upstream codebase and it left me thinking that API had simply been removed
2022-02-13 03:20:14 +0100 <geekosaur> but I was kinda through with prolic's attitude tbh
2022-02-13 03:21:01 +0100 <geekosaur> (also varargs isn't the only reason to use capi, and in fact ghc devs are now recommending capi over ccall as best practice)
2022-02-13 03:22:52 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-02-13 03:23:03 +0100 <sm> OT: https://github.com/martinvonz/jj is a rather nice git-like VCS
2022-02-13 03:24:03 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 250 seconds)
2022-02-13 03:24:44 +0100 <janus> i want that fancy ass AST-based vcs that jonathan edwards shows in https://vimeo.com/631461226
2022-02-13 03:28:57 +0100 <janus> yes it is true that prolic didn't have the best attitude. a validating data point for the crypto haters :P
2022-02-13 03:29:06 +0100alx741(~alx741@181.199.42.143)
2022-02-13 03:37:38 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 03:38:40 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 03:41:36 +0100dcoutts(~duncan@host109-149-1-225.range109-149.btcentralplus.com)
2022-02-13 03:42:15 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-02-13 03:43:23 +0100dcoutts_(~duncan@host109-149-1-225.range109-149.btcentralplus.com) (Ping timeout: 256 seconds)
2022-02-13 03:48:16 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-02-13 03:53:49 +0100alp(~alp@user/alp) (Ping timeout: 240 seconds)
2022-02-13 03:55:29 +0100alx741(~alx741@157.100.197.240)
2022-02-13 03:59:02 +0100xff0x(~xff0x@2001:1a81:524f:ad00:ca8e:e915:817b:c700) (Ping timeout: 260 seconds)
2022-02-13 03:59:31 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4)
2022-02-13 04:00:21 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 04:00:50 +0100xff0x(~xff0x@2001:1a81:5288:ea00:61bf:cfbd:ecf1:532b)
2022-02-13 04:01:18 +0100cynomys(~cynomys@user/cynomys) (Quit: Lost terminal)
2022-02-13 04:02:11 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 04:03:37 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 04:04:04 +0100cynomys(~cynomys@user/cynomys)
2022-02-13 04:10:16 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 04:12:00 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 04:16:38 +0100alx741(~alx741@157.100.197.240)
2022-02-13 04:20:15 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 04:23:43 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 04:25:18 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 04:25:21 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 04:32:56 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 04:32:56 +0100td_(~td@94.134.91.27) (Ping timeout: 256 seconds)
2022-02-13 04:34:30 +0100td_(~td@94.134.91.109)
2022-02-13 04:34:47 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 04:36:41 +0100alx741(~alx741@181.199.42.143)
2022-02-13 04:37:50 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: Leaving)
2022-02-13 04:41:11 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 04:43:19 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 04:43:19 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 04:47:45 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com) (Ping timeout: 256 seconds)
2022-02-13 04:48:43 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com)
2022-02-13 04:53:17 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com) (Ping timeout: 240 seconds)
2022-02-13 04:54:35 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2022-02-13 04:55:21 +0100waleee(~waleee@h-98-128-229-110.NA.cust.bahnhof.se) (Ping timeout: 245 seconds)
2022-02-13 04:55:41 +0100prolic(~prolic@181.122.131.227)
2022-02-13 04:55:49 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2022-02-13 04:56:01 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-02-13 04:56:22 +0100 <prolic> hi again, I have an idea regarding my problem decribed before, hopefully somebody of you guys know.
2022-02-13 04:56:49 +0100 <prolic> if I "apt remove libsecp256k1" from my system, the compiler fails immediately.
2022-02-13 04:57:04 +0100 <prolic> so I tried compiling this lib from source, latest version
2022-02-13 04:57:16 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com)
2022-02-13 04:57:36 +0100 <prolic> now stack still cannot find the lib, even though I just installed it again, path /usr/local/lib, so should be good, IMHO
2022-02-13 04:57:55 +0100 <jackdk> prolic: here are some messages you missed, which may be relevant https://www.irccloud.com/pastebin/VQ8D2121/
2022-02-13 04:58:03 +0100 <prolic> with installed again, I mean "make install" after compiling from source, not via apt of course
2022-02-13 04:58:13 +0100leungbk(~user@2603-8000-1201-2dd2-1067-ad14-f206-2522.res6.spectrum.com) (Remote host closed the connection)
2022-02-13 04:59:39 +0100 <prolic> thanks janus, I fear that I don't have time to wait for cardano people to deliver, if they even started working on it
2022-02-13 05:00:07 +0100alx741(~alx741@157.100.197.240)
2022-02-13 05:03:46 +0100 <sm> slackers! prolic doesn't have time for your lollygagging !
2022-02-13 05:08:12 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 05:08:30 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2022-02-13 05:08:44 +0100 <prolic> lol, you might have gotten that one wrong
2022-02-13 05:09:30 +0100 <prolic> I'm just asking for very specific help, just wait a few years until somebody else did it is not an option for an programmer, because I will do it, obviously
2022-02-13 05:10:13 +0100 <prolic> if someone can point me to how to use self-compiled c-libs within haskell, that would be great
2022-02-13 05:17:42 +0100nunggu(~q@user/nunggu) (Ping timeout: 276 seconds)
2022-02-13 05:21:07 +0100off^(~off@50.235.176.163) (Ping timeout: 256 seconds)
2022-02-13 05:26:44 +0100alx741(~alx741@157.100.197.240)
2022-02-13 05:27:16 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Remote host closed the connection)
2022-02-13 05:28:04 +0100 <sm> prolic: I'm not understanding that question exactly. it sounds like you're pretty close if the main package builds. when was it last released ? tried their issue tracker / maintainer ?
2022-02-13 05:30:08 +0100off^(~off@50.235.176.163)
2022-02-13 05:30:28 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 05:32:13 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 05:34:40 +0100 <janus> prolic: have you seen the issue i posted on your bug tracker?
2022-02-13 05:36:22 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-02-13 05:39:05 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2022-02-13 05:46:25 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-02-13 05:47:11 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 05:48:21 +0100alx741(~alx741@157.100.197.240)
2022-02-13 05:49:10 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 05:49:13 +0100wombat871(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Ping timeout: 272 seconds)
2022-02-13 05:50:34 +0100off^(~off@50.235.176.163) (Ping timeout: 256 seconds)
2022-02-13 05:51:27 +0100hueso(~root@user/hueso) (Ping timeout: 256 seconds)
2022-02-13 05:52:31 +0100hueso(~root@user/hueso)
2022-02-13 05:52:31 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 05:59:33 +0100notzmv(~zmv@user/notzmv)
2022-02-13 06:00:57 +0100deadmarshal(~deadmarsh@95.38.116.52)
2022-02-13 06:01:57 +0100mvk(~mvk@2607:fea8:5cdc:bf00::99e7) (Ping timeout: 240 seconds)
2022-02-13 06:09:22 +0100mybbgirl(~mybbgirl@188.25.57.254)
2022-02-13 06:09:31 +0100alx741(~alx741@181.199.42.143)
2022-02-13 06:11:09 +0100off^(~off@50.235.176.163)
2022-02-13 06:13:05 +0100 <prolic> yes, thanks janus
2022-02-13 06:13:13 +0100 <prolic> will get back to it tomorrow
2022-02-13 06:13:18 +0100 <prolic> good night
2022-02-13 06:13:28 +0100mybbgirl(~mybbgirl@188.25.57.254) (K-Lined)
2022-02-13 06:18:22 +0100nunggu(~q@user/nunggu)
2022-02-13 06:19:47 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 06:20:36 +0100jao(~jao@static-68-235-44-70.cust.tzulo.com) (Ping timeout: 256 seconds)
2022-02-13 06:21:31 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 06:22:47 +0100hueso(~root@user/hueso) (Ping timeout: 272 seconds)
2022-02-13 06:23:05 +0100hueso(~root@user/hueso)
2022-02-13 06:27:08 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Remote host closed the connection)
2022-02-13 06:34:10 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 272 seconds)
2022-02-13 06:38:44 +0100off^(~off@50.235.176.163) (Ping timeout: 256 seconds)
2022-02-13 06:41:23 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 06:41:59 +0100alx741(~alx741@157.100.197.240)
2022-02-13 06:42:30 +0100 <hololeap> does anyone know how to disable a doctest without changing the way it renders?
2022-02-13 06:42:50 +0100pranaysashank(ef3e56ca8b@2604:bf00:561:2000::3c4)
2022-02-13 06:44:57 +0100ix(~ix@213.205.241.13) (Ping timeout: 240 seconds)
2022-02-13 06:46:37 +0100 <hololeap> I've got some doctests that I'm trying to edit so that they don't make network calls. some rely on an internet connection that breaks gentoo's sandbox
2022-02-13 06:48:36 +0100 <hololeap> for instance: https://github.com/dhall-lang/dhall-haskell/blob/ecef9b7daf5bb16d2678a7c973406fbc78731d19/dhall/sr…
2022-02-13 06:51:17 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 06:51:17 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 06:53:09 +0100ix(~ix@213.205.241.13)
2022-02-13 06:56:21 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2022-02-13 07:01:23 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-02-13 07:02:30 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2022-02-13 07:03:26 +0100wroathe(~wroathe@user/wroathe) (Quit: Lost terminal)
2022-02-13 07:03:53 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-02-13 07:03:53 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-02-13 07:03:53 +0100wroathe(~wroathe@user/wroathe)
2022-02-13 07:05:43 +0100 <pavonia> I really hope there is a flag to disable those network calls O.o
2022-02-13 07:06:09 +0100 <jackdk> I would skip doctests in my packaging, personally
2022-02-13 07:08:13 +0100alx741(~alx741@157.100.197.240)
2022-02-13 07:08:55 +0100 <sm> disable without changing how it renders ? do you mean an easy way to comment out a doctest ?
2022-02-13 07:11:25 +0100mbuf(~Shakthi@117.96.194.162)
2022-02-13 07:12:56 +0100 <hololeap> sm: I mean disabling the test itself without changing the way it renders in haddock
2022-02-13 07:13:38 +0100 <sm> does it render specially in haddock ? How about s/>>>/#>>>/
2022-02-13 07:14:38 +0100 <sm> or s/>>>/>>> -- /
2022-02-13 07:14:52 +0100 <sm> just guessing
2022-02-13 07:16:08 +0100xff0x(~xff0x@2001:1a81:5288:ea00:61bf:cfbd:ecf1:532b) (Ping timeout: 250 seconds)
2022-02-13 07:17:02 +0100xff0x(~xff0x@2001:1a81:5288:ea00:6fee:3fb4:5f11:904c)
2022-02-13 07:17:32 +0100 <hololeap> sm: search for "directly into Haskell" here: https://hackage.haskell.org/package/dhall-1.40.2/docs/Dhall-Tutorial.html
2022-02-13 07:17:46 +0100 <hololeap> you can see the source code here: https://hackage.haskell.org/package/dhall-1.40.2/docs/src/Dhall.Tutorial.html#line-146
2022-02-13 07:18:24 +0100 <hololeap> doctest might have some intended way to do this
2022-02-13 07:19:08 +0100 <hololeap> but that is how doctest renders the tests
2022-02-13 07:19:13 +0100 <sm> I don't think so, I'd just try things some things locally till it looks right
2022-02-13 07:19:27 +0100 <sm> I can't quite see the need, but no matter
2022-02-13 07:20:25 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 272 seconds)
2022-02-13 07:21:08 +0100 <hololeap> I'm submitting a patch upstream to allow for disabling a few of these tests and I didn't want to mess up how their docs render
2022-02-13 07:21:12 +0100nunggu(~q@user/nunggu) (Ping timeout: 276 seconds)
2022-02-13 07:21:13 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 07:24:02 +0100nunggu(~q@user/nunggu)
2022-02-13 07:25:28 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-02-13 07:26:07 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-02-13 07:26:07 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-02-13 07:26:07 +0100wroathe(~wroathe@user/wroathe)
2022-02-13 07:29:03 +0100 <sm> I see. Shouldn't the tests just be removed ? Network dependent tests seem fragile
2022-02-13 07:29:25 +0100 <sm> 🤷‍♀️
2022-02-13 07:31:13 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: This computer has gone to sleep)
2022-02-13 07:31:26 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-02-13 07:31:40 +0100slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2022-02-13 07:32:35 +0100ix(~ix@213.205.241.13) (Ping timeout: 256 seconds)
2022-02-13 07:35:59 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds)
2022-02-13 07:39:51 +0100alx741(~alx741@157.100.197.240)
2022-02-13 07:40:26 +0100ix(~ix@213.205.241.13)
2022-02-13 07:44:51 +0100 <hololeap> dhall is supposed to be able to pull imports from online sources, so they probably want these tests in most cases
2022-02-13 07:57:06 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-02-13 07:57:07 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 07:58:53 +0100off^(~off@50.235.176.163)
2022-02-13 08:14:00 +0100alx741(~alx741@181.199.42.143)
2022-02-13 08:19:36 +0100off^(~off@50.235.176.163) (Ping timeout: 256 seconds)
2022-02-13 08:19:37 +0100vysn(~vysn@user/vysn) (Ping timeout: 240 seconds)
2022-02-13 08:21:42 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 08:27:39 +0100little_mac(~little_ma@2601:410:4300:3ce0:f502:3f20:a1e5:5bdc) (Remote host closed the connection)
2022-02-13 08:35:25 +0100chronon(~chronon@user/chronon) ()
2022-02-13 08:37:44 +0100deadmarshal(~deadmarsh@95.38.116.52) (Ping timeout: 256 seconds)
2022-02-13 08:38:21 +0100alx741(~alx741@181.199.42.143)
2022-02-13 08:42:47 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 08:45:03 +0100nunggu(~q@user/nunggu) (Remote host closed the connection)
2022-02-13 08:46:47 +0100nunggu(~q@user/nunggu)
2022-02-13 08:48:58 +0100fef(~thedawn@user/thedawn)
2022-02-13 08:49:25 +0100emf(~emf@2620:10d:c090:400::5:a68a)
2022-02-13 08:49:31 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 08:54:30 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 08:59:43 +0100alx741(~alx741@157.100.197.240)
2022-02-13 09:01:53 +0100deadmarshal(~deadmarsh@95.38.116.52)
2022-02-13 09:02:15 +0100mastarija(~mastarija@2a05:4f46:e04:6000:e488:a50d:e3f0:97b0)
2022-02-13 09:03:15 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-02-13 09:04:13 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909) (Remote host closed the connection)
2022-02-13 09:05:18 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-02-13 09:06:43 +0100Batzy(~quassel@user/batzy) (Read error: Connection reset by peer)
2022-02-13 09:10:48 +0100emf(~emf@2620:10d:c090:400::5:a68a) (Quit: emf)
2022-02-13 09:13:36 +0100emf(~emf@2620:10d:c090:400::5:5ef1)
2022-02-13 09:14:32 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 09:14:35 +0100Batzy(~quassel@user/batzy)
2022-02-13 09:15:36 +0100fef(~thedawn@user/thedawn)
2022-02-13 09:17:40 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-02-13 09:19:39 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-02-13 09:19:54 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it)
2022-02-13 09:21:49 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 09:21:51 +0100Sgeo(~Sgeo@user/sgeo)
2022-02-13 09:22:06 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-02-13 09:22:15 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 09:22:28 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 09:23:55 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 09:26:17 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909) (Ping timeout: 240 seconds)
2022-02-13 09:30:40 +0100alx741(~alx741@181.199.42.143)
2022-02-13 09:31:24 +0100zaquest(~notzaques@5.130.79.72) (Quit: Leaving)
2022-02-13 09:32:05 +0100Tuplanolla(~Tuplanoll@91-159-69-98.elisa-laajakaista.fi)
2022-02-13 09:32:38 +0100qwedfg(~qwedfg@user/qwedfg) (Quit: ZNC - https://znc.in)
2022-02-13 09:34:05 +0100qwedfg(~qwedfg@user/qwedfg)
2022-02-13 09:34:05 +0100fef(~thedawn@user/thedawn)
2022-02-13 09:34:40 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 09:34:58 +0100zaquest(~notzaques@5.130.79.72)
2022-02-13 09:37:00 +0100max22-(~maxime@2a01cb0883359800610101aa1dfab334.ipv6.abo.wanadoo.fr)
2022-02-13 09:41:16 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 09:43:08 +0100zeenk(~zeenk@2a02:2f04:a30d:1300:51a3:bcfc:6cda:9fc5)
2022-02-13 09:45:21 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-02-13 09:47:49 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-02-13 09:48:19 +0100cynomys(~cynomys@user/cynomys) (Ping timeout: 256 seconds)
2022-02-13 09:48:26 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-02-13 09:48:37 +0100ix(~ix@213.205.241.13) (Remote host closed the connection)
2022-02-13 09:49:04 +0100ix(~ix@213.205.241.13)
2022-02-13 09:51:58 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2022-02-13 09:52:03 +0100alx741(~alx741@157.100.197.240)
2022-02-13 09:55:13 +0100mbuf(~Shakthi@117.96.194.162) (Remote host closed the connection)
2022-02-13 09:56:30 +0100acidjnk(~acidjnk@pd9e0b668.dip0.t-ipconnect.de)
2022-02-13 09:56:46 +0100mikoto-chan(~mikoto-ch@213.177.151.239)
2022-02-13 09:56:54 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 09:56:56 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909) (Remote host closed the connection)
2022-02-13 09:57:03 +0100mikoto-chan(~mikoto-ch@213.177.151.239) (Client Quit)
2022-02-13 09:57:11 +0100fef(~thedawn@user/thedawn) (Quit: Leaving)
2022-02-13 09:57:43 +0100max22-(~maxime@2a01cb0883359800610101aa1dfab334.ipv6.abo.wanadoo.fr) (Ping timeout: 256 seconds)
2022-02-13 10:06:41 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-02-13 10:07:13 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 10:09:12 +0100_ht(~quassel@231-169-21-31.ftth.glasoperator.nl)
2022-02-13 10:11:48 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-02-13 10:12:50 +0100`2jt(~jtomas@130.red-88-22-46.staticip.rima-tde.net)
2022-02-13 10:13:20 +0100Null_A(~null_a@c-98-210-133-39.hsd1.ca.comcast.net)
2022-02-13 10:14:35 +0100alx741(~alx741@157.100.197.240)
2022-02-13 10:17:18 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 10:18:23 +0100Null_A(~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 272 seconds)
2022-02-13 10:20:36 +0100nunggu(~q@user/nunggu) (Ping timeout: 276 seconds)
2022-02-13 10:20:52 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 10:22:57 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 10:23:08 +0100nunggu(~q@user/nunggu)
2022-02-13 10:23:45 +0100max22-(~maxime@2a01cb08833598008a0dd74c15f933a2.ipv6.abo.wanadoo.fr)
2022-02-13 10:24:00 +0100mikoto-chan(~mikoto-ch@213.177.151.239)
2022-02-13 10:27:14 +0100olle(~olle@i5E866D96.versanet.de)
2022-02-13 10:30:36 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-02-13 10:31:08 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 10:31:43 +0100xff0x(~xff0x@2001:1a81:5288:ea00:6fee:3fb4:5f11:904c) (Ping timeout: 256 seconds)
2022-02-13 10:32:14 +0100xff0x(~xff0x@2001:1a81:5288:ea00:43ab:35e6:a5cd:7882)
2022-02-13 10:33:34 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-02-13 10:33:43 +0100alx741(~alx741@157.100.197.240)
2022-02-13 10:35:36 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-02-13 10:39:33 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 10:42:01 +0100zer0bitz(~zer0bitz@2001:2003:f74d:b800:78e9:2c9a:5431:d092) (Read error: Connection reset by peer)
2022-02-13 10:43:23 +0100cynomys(~cynomys@user/cynomys)
2022-02-13 10:43:23 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 10:44:06 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-02-13 10:45:51 +0100mbuf(~Shakthi@117.96.194.162)
2022-02-13 10:45:54 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de)
2022-02-13 10:47:16 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 10:47:54 +0100mc47(~mc47@xmonad/TheMC47)
2022-02-13 10:50:13 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de) (Ping timeout: 240 seconds)
2022-02-13 10:52:07 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909) (Ping timeout: 256 seconds)
2022-02-13 10:53:45 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 10:56:12 +0100zer0bitz(~zer0bitz@2001:2003:f74d:b800:f8af:7e9a:b154:2753)
2022-02-13 10:57:01 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 10:58:19 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 10:58:29 +0100random-jellyfish(~random-je@user/random-jellyfish)
2022-02-13 10:59:11 +0100 <ehammarstrom> Any recommended write-ups/getting-started on fused-effects?
2022-02-13 10:59:53 +0100 <fendor[m]> ehammarstrom, what are you looking for? Program architecture, or how to use them?
2022-02-13 11:00:13 +0100fendor(~fendor@178.165.165.136.wireless.dyn.drei.com)
2022-02-13 11:00:42 +0100 <ehammarstrom> fendor[m]: How to use them is a good start, showing actual use-cases would be great
2022-02-13 11:01:14 +0100alx741(~alx741@157.100.197.240)
2022-02-13 11:02:16 +0100 <fendor[m]> I argue that it is rather similar to any popular effect system. Are you familiar with effect systems in general?
2022-02-13 11:05:09 +0100 <ehammarstrom> I used mtl some years ago to compose some monad transformers into a monad that had the effects/functionality that I needed
2022-02-13 11:05:21 +0100 <ehammarstrom> Familiar yes, comfortable? Maybe not
2022-02-13 11:05:54 +0100 <fendor[m]> Ok, I really liked this blogpost: https://haskell-explained.gitlab.io/blog/posts/2019/07/28/polysemy-is-cool-part-1/
2022-02-13 11:06:24 +0100 <fendor[m]> It is about polysemy, but the ideas are similar. Once you got a feel for it, I believe the fused-effects hackage documentation will be already very helpful
2022-02-13 11:06:24 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 11:06:43 +0100 <ehammarstrom> Thanks, I'll have a look
2022-02-13 11:11:03 +0100jespada(~jespada@87.74.36.188)
2022-02-13 11:11:44 +0100 <fendor[m]> if not, feel free to call me out 😀
2022-02-13 11:13:08 +0100Guest|79(~Guest|79@ip5f5bf785.dynamic.kabel-deutschland.de)
2022-02-13 11:14:09 +0100cheater(~Username@user/cheater) (Ping timeout: 256 seconds)
2022-02-13 11:14:21 +0100cheater(~Username@user/cheater)
2022-02-13 11:14:42 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:15:00 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:15:17 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2022-02-13 11:16:44 +0100gehmehgeh(~user@user/gehmehgeh)
2022-02-13 11:16:47 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-02-13 11:17:06 +0100mastarija(~mastarija@2a05:4f46:e04:6000:e488:a50d:e3f0:97b0) (Quit: Leaving)
2022-02-13 11:20:41 +0100Null_A(~null_a@c-98-210-133-39.hsd1.ca.comcast.net)
2022-02-13 11:20:48 +0100`2jt(~jtomas@130.red-88-22-46.staticip.rima-tde.net) (Remote host closed the connection)
2022-02-13 11:23:19 +0100alx741(~alx741@157.100.197.240)
2022-02-13 11:25:17 +0100Null_A(~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2022-02-13 11:26:52 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 11:30:18 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:30:36 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:34:16 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:34:34 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:34:36 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 11:36:25 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:36:44 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:38:15 +0100__monty__(~toonn@user/toonn)
2022-02-13 11:40:19 +0100Guest|79(~Guest|79@ip5f5bf785.dynamic.kabel-deutschland.de) ()
2022-02-13 11:42:46 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:43:04 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:44:43 +0100alx741(~alx741@181.199.42.143)
2022-02-13 11:46:49 +0100ardell(~ardell@user/ardell)
2022-02-13 11:48:09 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 11:49:02 +0100awpr(uid446117@id-446117.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-02-13 11:50:23 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 11:52:17 +0100vysn(~vysn@user/vysn)
2022-02-13 11:52:37 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 240 seconds)
2022-02-13 11:53:34 +0100chenqisu1(~chenqisu1@183.217.200.249) (Quit: Leaving)
2022-02-13 11:55:48 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 11:56:06 +0100prolic(~prolic@181.122.131.227)
2022-02-13 11:59:50 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:00:09 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:03:29 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-02-13 12:03:54 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2022-02-13 12:04:57 +0100alx741(~alx741@181.199.42.143)
2022-02-13 12:06:18 +0100Lord_of_Life_Lord_of_Life
2022-02-13 12:07:16 +0100zeenk(~zeenk@2a02:2f04:a30d:1300:51a3:bcfc:6cda:9fc5) (Quit: Konversation terminated!)
2022-02-13 12:09:06 +0100ix(~ix@213.205.241.13) (Ping timeout: 256 seconds)
2022-02-13 12:09:41 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 12:11:14 +0100ix(~ix@213.205.192.252)
2022-02-13 12:14:37 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net)
2022-02-13 12:19:33 +0100Erutuon(~Erutuon@user/erutuon)
2022-02-13 12:24:42 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:24:59 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:26:21 +0100alx741(~alx741@157.100.197.240)
2022-02-13 12:27:55 +0100yauhsien(~yauhsien@61-231-32-103.dynamic-ip.hinet.net)
2022-02-13 12:30:52 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 12:34:31 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 12:36:04 +0100yauhsien(~yauhsien@61-231-32-103.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-02-13 12:37:45 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:38:02 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:39:43 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:40:01 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:41:41 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:41:45 +0100yauhsien(~yauhsien@61-231-32-103.dynamic-ip.hinet.net)
2022-02-13 12:42:00 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:43:40 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:43:57 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:44:54 +0100fef(~thedawn@user/thedawn)
2022-02-13 12:45:41 +0100acidjnk(~acidjnk@pd9e0b668.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2022-02-13 12:47:40 +0100chenqisu1(~chenqisu1@183.217.200.249)
2022-02-13 12:48:44 +0100ardell(~ardell@user/ardell) (Quit: Konversation terminated!)
2022-02-13 12:48:53 +0100alx741(~alx741@157.100.197.240)
2022-02-13 12:50:23 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 12:51:30 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 12:51:42 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 12:52:17 +0100yauhsien(~yauhsien@61-231-32-103.dynamic-ip.hinet.net) (Ping timeout: 272 seconds)
2022-02-13 12:54:56 +0100acidjnk(~acidjnk@p200300d0c70575217cad9542db460749.dip0.t-ipconnect.de)
2022-02-13 12:57:35 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 12:57:53 +0100prolic(~prolic@181.122.131.227)
2022-02-13 12:57:57 +0100Nahra(~user@static.161.95.99.88.clients.your-server.de)
2022-02-13 13:01:32 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:01:49 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:03:31 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:03:35 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 13:03:48 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:04:05 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 13:05:45 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:05:56 +0100coot(~coot@213.134.190.95)
2022-02-13 13:06:02 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:06:06 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 13:09:22 +0100alx741(~alx741@157.100.197.240)
2022-02-13 13:11:37 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee) (Ping timeout: 240 seconds)
2022-02-13 13:11:52 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee)
2022-02-13 13:12:20 +0100random-jellyfish(~random-je@user/random-jellyfish) (Ping timeout: 256 seconds)
2022-02-13 13:13:47 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 13:16:59 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee) (Ping timeout: 272 seconds)
2022-02-13 13:18:06 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee)
2022-02-13 13:21:22 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:21:40 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:25:20 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:25:20 +0100vglfr(~vglfr@coupling.penchant.volia.net) (Read error: Connection reset by peer)
2022-02-13 13:25:32 +0100vglfr(~vglfr@coupling.penchant.volia.net)
2022-02-13 13:25:38 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:27:18 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:27:35 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:29:16 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:29:34 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:30:31 +0100alx741(~alx741@181.199.42.143)
2022-02-13 13:33:16 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:33:34 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:35:14 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:35:31 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:35:32 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 13:37:41 +0100phma(~phma@host-67-44-208-185.hnremote.net) (Read error: Connection reset by peer)
2022-02-13 13:39:30 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:39:34 +0100phma(phma@2001:5b0:215a:a4e8:1976:ce9f:8bfa:70aa)
2022-02-13 13:39:49 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:41:29 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:41:46 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:45:44 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:46:02 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:48:35 +0100machinedgod(~machinedg@24.105.81.50)
2022-02-13 13:49:43 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it) (Remote host closed the connection)
2022-02-13 13:52:39 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it)
2022-02-13 13:52:49 +0100alx741(~alx741@157.100.197.240)
2022-02-13 13:54:29 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 13:54:48 +0100prolic(~prolic@181.122.131.227)
2022-02-13 13:56:23 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 13:57:29 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-02-13 13:59:10 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-02-13 13:59:26 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-02-13 14:00:41 +0100cynomys(~cynomys@user/cynomys) (Ping timeout: 272 seconds)
2022-02-13 14:01:09 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-02-13 14:03:05 +0100 <sshine> is there a thing like Control.Monad.guard that'll let me provide an error for Either e?
2022-02-13 14:03:44 +0100 <sshine> e.g. guard' (length xs == 5) "length must be 5"
2022-02-13 14:05:09 +0100chenqisu1(~chenqisu1@183.217.200.249) (Quit: Leaving)
2022-02-13 14:06:51 +0100 <hpc> :t (<?>)
2022-02-13 14:06:52 +0100 <lambdabot> error:
2022-02-13 14:06:52 +0100 <lambdabot> • Variable not in scope: <?>
2022-02-13 14:06:52 +0100 <lambdabot> • Perhaps you meant one of these:
2022-02-13 14:07:08 +0100 <hpc> hmm, that's just for parsers
2022-02-13 14:07:09 +0100 <maerwald> I don't think that's possible with the Alternative class
2022-02-13 14:07:19 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 14:08:06 +0100 <maerwald> MonadThrow yes
2022-02-13 14:08:15 +0100 <hpc> p <?> e = if p then pure () else fail s -- ?
2022-02-13 14:08:21 +0100 <hpc> or something along those lines
2022-02-13 14:08:45 +0100 <maerwald> that requires MonadFail
2022-02-13 14:08:55 +0100machinedgod(~machinedg@24.105.81.50) (Remote host closed the connection)
2022-02-13 14:09:41 +0100 <hpc> huh, there's no instance for Either String
2022-02-13 14:09:47 +0100 <hpc> p <?> e = if p then pure () else Right s -- :(
2022-02-13 14:09:54 +0100machinedgod(~machinedg@24.105.81.50)
2022-02-13 14:09:59 +0100 <hpc> er, Left
2022-02-13 14:10:02 +0100 <hpc> it's not my day lol
2022-02-13 14:10:04 +0100 <dminuoso> sshine: How generic do you want this to be?
2022-02-13 14:10:16 +0100 <dminuoso> Note that guard really isnt about "failure" modes in general
2022-02-13 14:10:26 +0100 <dminuoso> For example, in STM `guard` will cause a retry
2022-02-13 14:10:48 +0100 <sshine> :t guard
2022-02-13 14:10:49 +0100 <lambdabot> Alternative f => Bool -> f ()
2022-02-13 14:12:05 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 272 seconds)
2022-02-13 14:13:07 +0100 <sshine> hm.
2022-02-13 14:13:29 +0100 <dminuoso> Or consider how you can use `guard` in list-monad to filter out cases
2022-02-13 14:13:51 +0100 <maerwald> > unless (True == False) $ throwM (userError "lol") :: Either SomeException ()
2022-02-13 14:13:53 +0100 <lambdabot> error:
2022-02-13 14:13:53 +0100 <lambdabot> • Variable not in scope:
2022-02-13 14:13:53 +0100 <lambdabot> throwM :: IOError -> Either SomeException ()
2022-02-13 14:13:54 +0100 <dminuoso> i.e. you can think of list-comprehension predicates as desugaring into guard
2022-02-13 14:14:12 +0100alx741(~alx741@181.199.42.143)
2022-02-13 14:16:48 +0100 <sshine> I really just had this in mind: guardEither :: Bool -> e -> Either e () -- I didn't think of what degree it might generalise to. :)
2022-02-13 14:16:48 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 14:17:18 +0100 <sshine> with 'guardEither False e = Left e' and 'guardEither True _ = Right ()'
2022-02-13 14:17:36 +0100 <maerwald> see MonadThrow
2022-02-13 14:18:45 +0100 <dminuoso> MonadThrow is a poor fit
2022-02-13 14:18:52 +0100 <dminuoso> MonadError gives you that particular interface
2022-02-13 14:19:02 +0100 <dminuoso> instance e ~ SomeException => MonadThrow (Either e)
2022-02-13 14:19:17 +0100 <dminuoso> Given sshine's requirement, MonadThrow wouldnt suffice
2022-02-13 14:19:24 +0100 <maerwald> why
2022-02-13 14:19:38 +0100 <dminuoso> Because you cant provide a string?
2022-02-13 14:19:43 +0100 <maerwald> I did so above
2022-02-13 14:20:00 +0100deadmarshal(~deadmarsh@95.38.116.52) (Ping timeout: 256 seconds)
2022-02-13 14:21:41 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 14:21:59 +0100prolic(~prolic@181.122.131.227)
2022-02-13 14:23:19 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net) (Remote host closed the connection)
2022-02-13 14:23:35 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net)
2022-02-13 14:24:41 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-02-13 14:25:33 +0100 <dminuoso> Well, the catch part is going to be a bit more silly now
2022-02-13 14:25:40 +0100 <dminuoso> Because you have to be ready for any SomeException
2022-02-13 14:26:12 +0100 <dminuoso> instance MonadError e (Either e)
2022-02-13 14:26:16 +0100 <dminuoso> % :t throwError
2022-02-13 14:26:17 +0100 <yahb> dminuoso: MonadError e m => e -> m a
2022-02-13 14:26:29 +0100 <dminuoso> I think I might prefer that one, it's more direct for Either.
2022-02-13 14:27:32 +0100 <ehammarstrom> fendor[m]: it was useful, I was able to use it to write an effect with fused-effects. I'll see if I can write another one and compose them; thanks for helping out
2022-02-13 14:28:19 +0100 <hpc> this is why i don't like exceptions, btw
2022-02-13 14:28:44 +0100 <hpc> all of a sudden not only does lexical scope not matter, but to some extent types don't matter either
2022-02-13 14:29:00 +0100 <hpc> (re the SomeException thing)
2022-02-13 14:29:57 +0100cross(~cross@spitfire.i.gajendra.net) (Quit: leaving)
2022-02-13 14:30:32 +0100cross(~cross@spitfire.i.gajendra.net)
2022-02-13 14:33:33 +0100alx741(~alx741@157.100.197.240)
2022-02-13 14:33:48 +0100jao(~jao@static-68-235-44-22.cust.tzulo.com)
2022-02-13 14:35:58 +0100acidjnk(~acidjnk@p200300d0c70575217cad9542db460749.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2022-02-13 14:37:38 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 14:37:58 +0100prolic(~prolic@181.122.131.227)
2022-02-13 14:38:54 +0100fendor_(~fendor@91.141.33.218.wireless.dyn.drei.com)
2022-02-13 14:39:21 +0100prite(~pritam@user/pritambaral)
2022-02-13 14:41:50 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 14:41:51 +0100fendor(~fendor@178.165.165.136.wireless.dyn.drei.com) (Ping timeout: 272 seconds)
2022-02-13 14:42:09 +0100prolic(~prolic@181.122.131.227)
2022-02-13 14:44:24 +0100 <maerwald> dminuoso: bimap displayException id
2022-02-13 14:45:21 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 14:45:24 +0100 <c_wraith> isn't that the equivalent of lmap displayException?
2022-02-13 14:46:20 +0100 <dminuoso> maerwald: Im not seeing how that helps your case.. :-)
2022-02-13 14:46:20 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 14:46:34 +0100 <maerwald> dminuoso: then I don't see your problem
2022-02-13 14:46:42 +0100 <dminuoso> ok
2022-02-13 14:46:46 +0100 <maerwald> you can have string, exception, whatever you want
2022-02-13 14:48:21 +0100 <dminuoso> maerwald: They didnt ask to have a generalization of IO exceptions, together with exception hierarchies.
2022-02-13 14:48:44 +0100 <maerwald> MonadThrow doesn't require IO exceptions
2022-02-13 14:48:54 +0100 <dminuoso> No, MonadThrow *generalizes* them
2022-02-13 14:49:12 +0100 <dminuoso> It's why you have this `SomeException ~ e` constraint on that instance
2022-02-13 14:49:23 +0100 <maerwald> I don't see what this has to do with IO
2022-02-13 14:49:35 +0100xkuru(~xkuru@user/xkuru)
2022-02-13 14:49:42 +0100 <maerwald> I use MonadThrow outside of IO
2022-02-13 14:49:49 +0100 <dminuoso> okay I have more productive things to do than to argue with you
2022-02-13 14:50:05 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 14:53:14 +0100 <xsperry> TBH I like how the caller gets to decide how to handle errors when uses MonadThrow
2022-02-13 14:53:20 +0100 <xsperry> using*
2022-02-13 14:53:40 +0100 <maerwald> yes
2022-02-13 14:54:01 +0100 <maerwald> if you're in IO, you're triggering in IO exception, but you might as well turn it into a Maybe and deal with it
2022-02-13 14:54:53 +0100 <maerwald> might be a bit unwieldy if you want to pattern match on the error in Either, but so is using a String
2022-02-13 14:59:24 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 14:59:41 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:01:12 +0100 <maerwald> e.g.: case parseAbsFile "lol" of ; Left e | (Just (InvalidAbsFile fp)) <- fromException e -> "lolz"
2022-02-13 15:01:18 +0100 <maerwald> with https://hackage.haskell.org/package/path-0.9.2/docs/Path-Posix.html#v:parseAbsDir
2022-02-13 15:01:23 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2022-02-13 15:01:47 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 15:04:01 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net) (Ping timeout: 272 seconds)
2022-02-13 15:05:02 +0100coot(~coot@213.134.190.95) (Quit: coot)
2022-02-13 15:05:11 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 15:05:39 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 256 seconds)
2022-02-13 15:07:26 +0100Pickchea(~private@user/pickchea)
2022-02-13 15:08:37 +0100deadmarshal(~deadmarsh@95.38.116.52)
2022-02-13 15:08:45 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 15:11:03 +0100coot(~coot@213.134.190.95)
2022-02-13 15:12:43 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:13:01 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:13:35 +0100jao(~jao@static-68-235-44-22.cust.tzulo.com) (Ping timeout: 256 seconds)
2022-02-13 15:14:25 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 256 seconds)
2022-02-13 15:16:08 +0100tremon(~tremon@83-84-18-241.cable.dynamic.v4.ziggo.nl)
2022-02-13 15:19:14 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:19:32 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:21:13 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:21:30 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:21:44 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 15:24:03 +0100deadmarshal(~deadmarsh@95.38.116.52) (Ping timeout: 250 seconds)
2022-02-13 15:24:45 +0100deadmarshal(~deadmarsh@95.38.114.155)
2022-02-13 15:26:51 +0100coot(~coot@213.134.190.95) (Quit: coot)
2022-02-13 15:30:00 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:30:17 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:33:58 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:34:14 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 15:34:17 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:35:19 +0100max22-(~maxime@2a01cb08833598008a0dd74c15f933a2.ipv6.abo.wanadoo.fr) (Ping timeout: 250 seconds)
2022-02-13 15:35:21 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-02-13 15:37:56 +0100 <sshine> I did Data.Aeson.decodeFileStrict' "myfile" and got *** Exception: myfile: openBinaryFile: does not exist (No such file or directory) -- should I try to catch that exception, or is there a safer way to read a file that might not exist?
2022-02-13 15:38:55 +0100 <sshine> oh, there's eitherDecodeFileStrict'!
2022-02-13 15:39:51 +0100 <jkaye[m]> Is it possible to get hls to work on a single file without a project and such? I'd like editor features for my xmonad configuration file if possible
2022-02-13 15:41:25 +0100 <geekosaur> I think you need a project/stack.yaml for it to find xmonad and xmonad-contrib
2022-02-13 15:41:34 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2022-02-13 15:42:01 +0100 <geekosaur> hls isn't really designed for global installs, and even xmonad is moving away from them
2022-02-13 15:42:02 +0100 <sshine> jkaye[m], you can make a minimal project around your xmonad config.
2022-02-13 15:42:18 +0100 <sshine> jkaye[m], doesn't even need a src/ sub-directory.
2022-02-13 15:42:33 +0100 <jkaye[m]> I was hoping to avoid that, but yeah should be easy enough to just init the yamls I suppose
2022-02-13 15:42:36 +0100 <geekosaur> (we already have stack support built inas of 0.17.0 and I want to add direct cabal support)
2022-02-13 15:42:36 +0100 <jkaye[m]> Thanks
2022-02-13 15:43:52 +0100 <sshine> jkaye[m], it'd be neat with something like rust-script, which lets you embed a project file in a comment at the top of the file :)
2022-02-13 15:44:46 +0100 <jkaye[m]> Yeah, there actually is something similar-ish with stack script, this is a bit of a different thing since it's a configuration file though, but agreed
2022-02-13 15:44:56 +0100 <geekosaur> stack has that and cabal has at least part of it
2022-02-13 15:45:09 +0100 <geekosaur> but I doubt hls knows about it
2022-02-13 15:46:09 +0100 <sshine> ohhh, right.
2022-02-13 15:47:16 +0100Pickchea(~private@user/pickchea) (Ping timeout: 256 seconds)
2022-02-13 15:49:16 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:49:35 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:49:57 +0100deadmarshal(~deadmarsh@95.38.114.155) (Ping timeout: 240 seconds)
2022-02-13 15:54:26 +0100vysn(~vysn@user/vysn) (Ping timeout: 260 seconds)
2022-02-13 15:57:46 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 15:58:05 +0100prolic(~prolic@181.122.131.227)
2022-02-13 15:59:51 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:00:08 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:04:00 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:04:18 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:05:30 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de)
2022-02-13 16:07:07 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 16:09:37 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de) (Ping timeout: 240 seconds)
2022-02-13 16:12:13 +0100 <jkaye[m]> Hmm, after stack init and installing locally (reloading configs as well), it looks like hls is choking without errors somehow. Very odd
2022-02-13 16:13:36 +0100max22-(~maxime@2a01cb08833598002ee6dc78da9599b4.ipv6.abo.wanadoo.fr)
2022-02-13 16:15:16 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:15:35 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:17:35 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:17:53 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:18:30 +0100 <sshine> hm, Data.Aeson.eitherDecodeFileStrict' apparently throws on file not found and only gives Left on decode errors. :-/
2022-02-13 16:19:22 +0100 <maerwald> catch it?
2022-02-13 16:19:37 +0100 <sshine> jkaye[m], I don't know the state of HLS right now, but maybe it can be fixed with a hie.yaml?
2022-02-13 16:19:57 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2022-02-13 16:19:57 +0100 <sshine> maerwald, how do I do that?
2022-02-13 16:20:16 +0100 <alt-romes> hallo, what's a point free version of (f <$>)
2022-02-13 16:20:16 +0100jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-02-13 16:20:17 +0100 <jkaye[m]> I don't think so - it doesn't seem to have any issue starting up and running with the project, just doesn't report anything back to Emacs. It's not that important honestly
2022-02-13 16:20:21 +0100 <maerwald> sshine: https://hackage.haskell.org/package/base-4.16.0.0/docs/Control-Exception.html#v:catch
2022-02-13 16:20:39 +0100wombat875(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net)
2022-02-13 16:20:51 +0100 <maerwald> or https://hackage.haskell.org/package/base-4.16.0.0/docs/Control-Exception.html#v:try
2022-02-13 16:21:15 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds)
2022-02-13 16:21:15 +0100 <alt-romes> example for what's the point free version of: fun = (const NoContent <$>) . liftIO . print
2022-02-13 16:21:35 +0100 <geekosaur> that is pointfree
2022-02-13 16:21:36 +0100 <sshine> maerwald, thanks!
2022-02-13 16:21:44 +0100 <geekosaur> (the pointd are not the dots, they are bindings)
2022-02-13 16:21:52 +0100 <maerwald> fmap join . try . bimap displayException id . eitherDecodeFileStriict'
2022-02-13 16:21:56 +0100 <maerwald> sth like that
2022-02-13 16:21:58 +0100 <alt-romes> geekosaur: was about to say that ahah, but I was wondering if there was something like <.>
2022-02-13 16:22:18 +0100 <sshine> maerwald, ah, awesome :)
2022-02-13 16:22:22 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 16:26:06 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:26:23 +0100 <maerwald> fmap (join . bimap (displayException @SomeException) id) . try . eitherDecodeFileStrict' @String
2022-02-13 16:26:25 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:26:28 +0100 <maerwald> that typechecks
2022-02-13 16:28:08 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:28:26 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:28:36 +0100 <maerwald> the last type application is for the type to decode into
2022-02-13 16:29:58 +0100 <sshine> right. thanks!
2022-02-13 16:31:09 +0100sshineis doing a proof-of-concept of something, and in an hour of coding has added 7 LANGUAGE pragmas and 14 import lines. -_-
2022-02-13 16:31:40 +0100 <sshine> it feels right, but it also feels like it's not something you stumble into doing,hehe.
2022-02-13 16:34:36 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:34:53 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:35:23 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 16:35:28 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 16:36:34 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-02-13 16:37:57 +0100alt-romes(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 240 seconds)
2022-02-13 16:41:03 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:41:21 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:43:01 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:43:18 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:43:56 +0100_73(~user@pool-96-233-64-53.bstnma.fios.verizon.net)
2022-02-13 16:45:38 +0100 <_73> is there a name for the concept of currying the function application function `$`? It feels rather remarkable to me to curry function application itself.
2022-02-13 16:47:17 +0100ix(~ix@213.205.192.252) (Ping timeout: 240 seconds)
2022-02-13 16:47:44 +0100jgeerds_(~jgeerds@55d4a547.access.ecotel.net)
2022-02-13 16:49:02 +0100 <janus> why do you call that currying?
2022-02-13 16:49:03 +0100mbuf(~Shakthi@117.96.194.162) (Quit: Leaving)
2022-02-13 16:49:09 +0100 <[exa]> _73: how would you curry that if ($)'s argument isn't a (,)? (perhaps you meant uncurrying?)
2022-02-13 16:49:46 +0100ix(~ix@213.205.242.209)
2022-02-13 16:51:36 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:51:54 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:53:33 +0100 <_73> hmm maybe this doesn't make sense in haskell I am not much of a haskeller. Really I am currying `funcall` in lisp but I got no answers on the lisp or programming channels. `(curry #'funcall #'+ 1)`
2022-02-13 16:53:53 +0100 <_73> I got no answers on the other channels I tried and figured you people know all about currying.
2022-02-13 16:54:23 +0100DNH(~DNH@2a02:8108:1100:16d8:a8cc:c7ff:6c11:4c2d)
2022-02-13 16:54:56 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-02-13 16:54:56 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-02-13 16:54:56 +0100wroathe(~wroathe@user/wroathe)
2022-02-13 16:57:50 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 16:58:09 +0100prolic(~prolic@181.122.131.227)
2022-02-13 16:58:09 +0100 <ski> _73 : looks more like partial application, to me ?
2022-02-13 16:59:02 +0100 <xsperry> sometimes it makes to partially apply function application. for example:
2022-02-13 16:59:04 +0100 <ski> (also "curry" is a somewhat fuzzy term)
2022-02-13 16:59:07 +0100 <xsperry> > map ($2) [(*2),(^8),(*10)]
2022-02-13 16:59:08 +0100 <lambdabot> [4,256,20]
2022-02-13 16:59:28 +0100alp(~alp@user/alp)
2022-02-13 16:59:37 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-02-13 17:00:02 +0100 <_73> ski: so perhaps it can be said that currying function application results in partial application?
2022-02-13 17:00:07 +0100joaquinmg[m](~joaquinmg@2001:470:69fc:105::1:67d2) (Quit: You have been kicked for being idle)
2022-02-13 17:00:41 +0100 <ski> "curry" tends to refer to convert to a function that takes its parameters in curried style. could be converting from (some version of) tupled style. or, in languages which have multiple parameters in function application, it could be converting from a function accepting multiple parameters
2022-02-13 17:02:19 +0100 <ski> however, the fuzziness then comes in that, there's many ways to "make a curried function" out of that, if you have multiple parameter functions. because you need not necessarily convert to a function that takes one parameter, and computes a function that takes one parameter, &c. until you compute the result. instead you could "split" the sequence of parameters into larger chunks (possibly more than two
2022-02-13 17:02:25 +0100 <ski> chunks)
2022-02-13 17:03:02 +0100 <_73> is this an example of a function that takes its args in a curried style?: `f = \x -> \y -> (+) x y`
2022-02-13 17:03:11 +0100 <ski> _73 : i suppose you could say so. but i would also say `(lambda (x z) (f x 3 z))' is a partial application of `f'
2022-02-13 17:03:15 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-02-13 17:03:35 +0100 <ski> yes
2022-02-13 17:03:42 +0100stuebinm(~stuebinm@user/stuebinm)
2022-02-13 17:03:50 +0100 <xsperry> _73, yes, but in haskell that is the same as f x y = ..
2022-02-13 17:04:03 +0100 <_73> ok my conception of currying has been incorrect to this point.
2022-02-13 17:04:21 +0100lucas96(~lucas96@177.70.94.186)
2022-02-13 17:04:23 +0100 <ski> (or just `f = (+)', in that particular case, since infix operators are curried(ly expressed) in Haskell)
2022-02-13 17:04:36 +0100 <ski> (note that Haskell does *not* "have curried functions")
2022-02-13 17:05:52 +0100 <ski> curried style (as well as tupled style) are *styles* of *encoding* / *simulating* multiparameter functions (e.g. in a language that doesn't actually have those, like Haskell)
2022-02-13 17:05:54 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 17:06:07 +0100 <ski> iow, curried style, tuples style, is all in your head, is not in Haskell itself
2022-02-13 17:06:17 +0100ix(~ix@213.205.242.209) (Ping timeout: 240 seconds)
2022-02-13 17:07:03 +0100 <_73> ski: so you could say that because haskell functions can only take one parameter we must use curried style to simulate multi-parameter functions?
2022-02-13 17:07:05 +0100 <ski> (that said, several features of Haskell syntax is designed so as to encourage curried style as a default style for expressing multiparameter functions (which Haskell doesn't have))
2022-02-13 17:07:23 +0100 <ski> not "must". we can also use "tupled style"
2022-02-13 17:07:53 +0100 <ski> (by which i mean packaging the "multiple parameters" together into some compound structure, e.g. a tuple, but could be a list, or array, or record, or some other structure, as well)
2022-02-13 17:08:08 +0100 <_73> Doesn't haskell's `curry` function use tupled style?
2022-02-13 17:08:11 +0100 <_73> :t curry
2022-02-13 17:08:11 +0100 <lambdabot> ((a, b) -> c) -> a -> b -> c
2022-02-13 17:08:25 +0100 <sshine> > (\(x, y) -> x + y) (2, 3)
2022-02-13 17:08:26 +0100 <lambdabot> 5
2022-02-13 17:08:37 +0100 <ski> it converts from tupled style (expressed via a pair) to curried style (of two parameters)
2022-02-13 17:08:38 +0100stuebinm(~stuebinm@user/stuebinm) (WeeChat 3.3)
2022-02-13 17:08:40 +0100 <sshine> > (\x y -> x + y) 2 3
2022-02-13 17:08:41 +0100 <lambdabot> 5
2022-02-13 17:09:07 +0100 <_73> ok I have a much better understanding of currying now
2022-02-13 17:09:23 +0100 <ski> also, `curry' can also be thought of as a partial application operation, itself expressed in curried style ..
2022-02-13 17:09:54 +0100 <sshine> > curry (\(x, y) -> x + y) 2 3
2022-02-13 17:09:55 +0100 <lambdabot> 5
2022-02-13 17:09:59 +0100 <ski> .. a partial application expressed in tupled style would be e.g. `partialApply :: ((a,b) -> c,a) -> (b -> c)'
2022-02-13 17:10:05 +0100 <sshine> > uncurry (\x y -> x + y) (2, 3)
2022-02-13 17:10:07 +0100 <lambdabot> 5
2022-02-13 17:10:19 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-02-13 17:11:18 +0100 <sshine> :t (\x y -> x + y) 2
2022-02-13 17:11:19 +0100 <lambdabot> Num a => a -> a
2022-02-13 17:11:21 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 17:11:42 +0100lucas96(~lucas96@177.70.94.186) (Quit: Client closed)
2022-02-13 17:12:10 +0100 <sshine> @pl (\x y -> x + y) 2
2022-02-13 17:12:10 +0100 <lambdabot> (2 +)
2022-02-13 17:12:23 +0100 <ski> _73 : anyway, in Lisps, `+' usually can take an arbitrary amount of elements. so if we want to partially apply it, how many "nested `lambda's" do we want to get ? it's not obvious at all
2022-02-13 17:12:41 +0100 <sshine> Lisp '+' is Haskell 'sum', right?
2022-02-13 17:13:04 +0100 <ski> well, i guess partial application doesn't really stage more, normally. but if you're thinking of it in terms of "currying", then you need to answer this question
2022-02-13 17:13:08 +0100 <sshine> or somewhat, I guess, since Lisp '+' is variadic.
2022-02-13 17:13:17 +0100 <ski> sshine : more or less, yea
2022-02-13 17:14:35 +0100 <ski> (if you have an actual list of numbers, and want to sum them up, then you'd probably use `apply' (or maybe some specific summing function that accepts a list. that could be relevant if there's restrictions on number of parameters, and the list is very long))
2022-02-13 17:15:07 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 17:16:43 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 17:16:54 +0100 <ski> _73 : so what does your `curry' (in, i assume CL ? or Emacs Lisp ?) actually do ?
2022-02-13 17:16:55 +0100 <_73> You could never write lisps `+` in curried style, which is why haskell does not have variadic functions.
2022-02-13 17:17:23 +0100Unicorn_Princess(~Unicorn_P@46-54-248-191.static.kate-wing.si)
2022-02-13 17:17:44 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-02-13 17:17:56 +0100 <ski> if you fix the number of "nestings", you could get a function that takes a number of parameters, and computes a function that takes a number of parameters, ..., eventually summing them all, giving that back as result
2022-02-13 17:18:23 +0100 <ski> (but yes, that's not a general thing)
2022-02-13 17:18:49 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 256 seconds)
2022-02-13 17:18:49 +0100 <ski> Haskell doesn't have variadic functions, because it doesn't have multiparameter functions to begin with
2022-02-13 17:19:20 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 17:20:06 +0100 <_73> ski: It is CL and comes from alexandria. I have only found a use for it for partial application. In case you are curious here is the implementation: http://dpaste.com/3LFT5XP99
2022-02-13 17:20:14 +0100 <_73> Ok I see
2022-02-13 17:20:16 +0100ix(~ix@213.205.242.181)
2022-02-13 17:20:52 +0100 <[exa]> _73: btw you can "simulate" the variadic functions with typeclasses but I'd say it is not a very good idea, except in highly specific usecases (like printf)
2022-02-13 17:22:26 +0100 <ski> _73 : hm, ok. i think i'd rather name that something like `partial-apply' (or `partial-apply-to-prefix', maybe). (a) because it just introduces "two" levels of functions; (b) because it takes `arguments' in the same application as `function' (rather than in the next `lambda')
2022-02-13 17:23:16 +0100 <ski> (`curry', as a verb, is generally used to express *converting* to curried style. iow, it should not take the parameters directly, but return a function that does (in a nested fashion))
2022-02-13 17:24:41 +0100 <ski> (i guess if you curry `curry' itself, you could call it `curry')
2022-02-13 17:25:47 +0100awpr(uid446117@id-446117.lymington.irccloud.com)
2022-02-13 17:26:31 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 272 seconds)
2022-02-13 17:27:17 +0100 <ski> (.. (re a `+' in curried style, in Lisps) i suppose another thing one could do is a function (or object, maybe), which one could send parameters to, and again, repeatedly, until one signals to it that one's "done" (perhaps sending a specific message to the object), at which point it'd compute the result. but this all seems quite awkward ..)
2022-02-13 17:29:00 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 17:29:18 +0100prolic(~prolic@181.122.131.227)
2022-02-13 17:29:28 +0100fendor_(~fendor@91.141.33.218.wireless.dyn.drei.com) (Remote host closed the connection)
2022-02-13 17:29:30 +0100 <ski> anyway, partial application is useful. but attempting to express "currying" and "uncurrying" seem to rarely be as useful, unless one has some particular conventions for the source and target format in mind
2022-02-13 17:30:30 +0100 <_73> In haskell you could use an auxilary function that takes an extra parameter `say count` for the number of parameters and decrements it on recursive calls?
2022-02-13 17:30:55 +0100 <ski> (and `uncurry' and `curry' in Haskell only converts between a function accepting a pair, and a function curriedly taking two parameters. it's not a general thing. and it's quite rare than one even wants versions for triples, say. there are some library definitions for those, floating around, but i'm not sure i've even seen for higher arities)
2022-02-13 17:31:03 +0100CiaoSen(~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2022-02-13 17:31:13 +0100 <_73> and when count is 0 returns the accumulator
2022-02-13 17:31:28 +0100 <ski> hm .. i'm not quite sure what situation you have in mind
2022-02-13 17:31:46 +0100 <ski> but if you're talking about currying/uncurrying -- then that would require dependent types
2022-02-13 17:32:18 +0100 <_73> never mind we get back to the original problem with haskell not being able to support variadic arguments
2022-02-13 17:32:51 +0100 <[exa]> _73: check out the printf package, as above
2022-02-13 17:33:03 +0100 <_73> [exa]: I will
2022-02-13 17:33:20 +0100 <[exa]> I hope that solves your original problem :]
2022-02-13 17:33:48 +0100skiwas just about to refer back to [exa]'s previous comment
2022-02-13 17:35:28 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 17:35:47 +0100prolic(~prolic@181.122.131.227)
2022-02-13 17:37:27 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 17:37:45 +0100prolic(~prolic@181.122.131.227)
2022-02-13 17:38:06 +0100polyphem_(~rod@2a02:810d:840:8754:c99b:50d8:45d8:1cbb)
2022-02-13 17:38:26 +0100Pickchea(~private@user/pickchea)
2022-02-13 17:40:27 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 17:41:18 +0100polyphem(~rod@2a02:810d:840:8754:a99c:f444:1e7c:25d1) (Ping timeout: 260 seconds)
2022-02-13 17:41:42 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-02-13 17:42:03 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 17:43:27 +0100machinedgod(~machinedg@24.105.81.50)
2022-02-13 17:52:32 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-02-13 17:56:12 +0100Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com)
2022-02-13 17:59:36 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 17:59:53 +0100prolic(~prolic@181.122.131.227)
2022-02-13 18:01:40 +0100zer0bitz_(~zer0bitz@2001:2003:f74d:b800:70e8:bae3:c5b2:7d1d)
2022-02-13 18:05:37 +0100zer0bitz(~zer0bitz@2001:2003:f74d:b800:f8af:7e9a:b154:2753) (Ping timeout: 256 seconds)
2022-02-13 18:08:17 +0100coot(~coot@213.134.190.95)
2022-02-13 18:10:22 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 18:10:23 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 18:10:40 +0100prolic(~prolic@181.122.131.227)
2022-02-13 18:12:21 +0100olle(~olle@i5E866D96.versanet.de) (Ping timeout: 256 seconds)
2022-02-13 18:14:27 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 18:14:46 +0100prolic(~prolic@181.122.131.227)
2022-02-13 18:15:15 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 18:15:38 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com)
2022-02-13 18:20:25 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds)
2022-02-13 18:22:22 +0100kuribas(~user@ptr-25vy0i7awh2t1unux26.18120a2.ip6.access.telenet.be)
2022-02-13 18:22:26 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 18:23:44 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it) (Quit: ERC (IRC client for Emacs 27.1))
2022-02-13 18:23:53 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 250 seconds)
2022-02-13 18:25:36 +0100k8yun(~k8yun@user/k8yun)
2022-02-13 18:27:56 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 18:28:14 +0100prolic(~prolic@181.122.131.227)
2022-02-13 18:30:17 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 18:30:29 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 18:31:35 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 18:31:45 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 18:32:16 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 18:32:27 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 18:32:31 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it)
2022-02-13 18:34:00 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:7dab:1fa0:9cf6:a5de)
2022-02-13 18:34:55 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 18:35:07 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr)
2022-02-13 18:35:26 +0100polyphem_(~rod@2a02:810d:840:8754:c99b:50d8:45d8:1cbb) (Ping timeout: 260 seconds)
2022-02-13 18:36:20 +0100polyphem_(~rod@2a02:810d:840:8754:21f9:18ab:ce0d:488d)
2022-02-13 18:36:45 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 18:36:46 +0100vysn(~vysn@user/vysn)
2022-02-13 18:37:02 +0100econo(uid147250@user/econo)
2022-02-13 18:37:37 +0100maxime__(~maxime@2a01cb0883359800f9c64cc16050cef5.ipv6.abo.wanadoo.fr)
2022-02-13 18:37:46 +0100max22-(~maxime@2a01cb08833598002ee6dc78da9599b4.ipv6.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2022-02-13 18:39:59 +0100wombat875(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Quit: WeeChat 2.2-dev)
2022-02-13 18:40:13 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2022-02-13 18:43:14 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 18:43:31 +0100prolic(~prolic@181.122.131.227)
2022-02-13 18:43:46 +0100`2jt(~jtomas@130.red-88-22-46.staticip.rima-tde.net)
2022-02-13 18:44:11 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 18:45:12 +0100k8yun(~k8yun@user/k8yun) (Read error: Connection reset by peer)
2022-02-13 18:48:13 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-02-13 18:49:12 +0100waleee(~waleee@h-98-128-229-110.NA.cust.bahnhof.se)
2022-02-13 18:50:05 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 18:50:16 +0100deadmarshal(~deadmarsh@95.38.114.155)
2022-02-13 18:50:31 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 18:53:49 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4)
2022-02-13 18:54:57 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909) (Ping timeout: 240 seconds)
2022-02-13 18:57:10 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4)
2022-02-13 19:00:11 +0100Sgeo(~Sgeo@user/sgeo)
2022-02-13 19:05:20 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 19:05:37 +0100prolic(~prolic@181.122.131.227)
2022-02-13 19:07:44 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:07:44 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:08:58 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:09:10 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:09:42 +0100fef(~thedawn@user/thedawn) (Ping timeout: 276 seconds)
2022-02-13 19:09:52 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:10:06 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:11:46 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 19:12:00 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:12:04 +0100prolic(~prolic@181.122.131.227)
2022-02-13 19:12:11 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:15:01 +0100vysn(~vysn@user/vysn) (Ping timeout: 240 seconds)
2022-02-13 19:16:41 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 19:16:57 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Ping timeout: 256 seconds)
2022-02-13 19:17:00 +0100prolic(~prolic@181.122.131.227)
2022-02-13 19:17:02 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:17:07 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:17:30 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 19:18:06 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Quit: Leaving)
2022-02-13 19:18:37 +0100Pickchea(~private@user/pickchea) (Ping timeout: 272 seconds)
2022-02-13 19:21:22 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-02-13 19:21:53 +0100Vajb(~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e)
2022-02-13 19:22:07 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:22:18 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:22:43 +0100 <dmj`> geekosaur: see that new video on Mu? https://www.youtube.com/watch?v=A70SN7vFsKU
2022-02-13 19:22:51 +0100Vajb(~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e) (Read error: Connection reset by peer)
2022-02-13 19:23:04 +0100Vajb(~Vajb@85-76-72-55-nat.elisa-mobile.fi)
2022-02-13 19:25:29 +0100 <geekosaur> I don't generally watch videos, they're kinda difficult for me
2022-02-13 19:25:29 +0100 <dmj`> no support for RankNTypes (hence why I asked before) and they monomorphize everything up front, probably how they support "everything is serializeable", and they use GRIN ...
2022-02-13 19:25:29 +0100Vajb(~Vajb@85-76-72-55-nat.elisa-mobile.fi) (Read error: Connection reset by peer)
2022-02-13 19:25:40 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:25:42 +0100Hanicef(~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving)
2022-02-13 19:26:01 +0100 <dmj`> ah, k.
2022-02-13 19:26:09 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-02-13 19:26:10 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:27:18 +0100 <dmj`> I bet Mu could support laziness (opt-in at the very least) since they use GRIN
2022-02-13 19:27:43 +0100 <maerwald> dmj`: cool
2022-02-13 19:28:36 +0100 <dsal> Me clearly not understanding how to use `these` properly: `(bad, good) = these (,[]) ([],) (,) $ maybe (This []) parseAndGroup (NE.nonEmpty candidates)`
2022-02-13 19:28:57 +0100jespada(~jespada@87.74.36.188) (Ping timeout: 240 seconds)
2022-02-13 19:30:29 +0100 <dmj`> geekosaur: Mu doesn't support recursive data types, that's one way to get rid of String I guess ...
2022-02-13 19:30:33 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 19:31:26 +0100zer0bitz_(~zer0bitz@2001:2003:f74d:b800:70e8:bae3:c5b2:7d1d) (Read error: Connection reset by peer)
2022-02-13 19:31:49 +0100justsomeguy(~justsomeg@user/justsomeguy)
2022-02-13 19:32:40 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 19:33:09 +0100jespada(~jespada@87.74.36.188)
2022-02-13 19:34:58 +0100little_mac(~little_ma@2601:410:4300:3ce0:c9f2:b4e0:2bd7:fbaf)
2022-02-13 19:36:13 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-02-13 19:37:39 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-02-13 19:38:53 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-02-13 19:43:35 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Ping timeout: 256 seconds)
2022-02-13 19:44:25 +0100Vajb(~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e)
2022-02-13 19:45:35 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds)
2022-02-13 19:46:10 +0100mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-02-13 19:46:17 +0100emf(~emf@2620:10d:c090:400::5:5ef1) (Ping timeout: 240 seconds)
2022-02-13 19:47:36 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:48:09 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:48:45 +0100Vajb(~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e) (Ping timeout: 256 seconds)
2022-02-13 19:49:21 +0100hololeap(~hololeap@user/hololeap) (Remote host closed the connection)
2022-02-13 19:49:47 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-02-13 19:50:16 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:50:44 +0100hololeap(~hololeap@user/hololeap)
2022-02-13 19:51:33 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:55:15 +0100TonyStone(~TonyStone@2603-7080-8607-c36a-c0be-54b3-db2c-85e9.res6.spectrum.com)
2022-02-13 19:56:27 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:57:10 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com) (Remote host closed the connection)
2022-02-13 19:57:21 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:58:19 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-02-13 19:58:38 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-02-13 19:58:57 +0100wombat875(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net)
2022-02-13 19:58:58 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 19:59:10 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com)
2022-02-13 19:59:27 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 19:59:40 +0100 <justsomeguy> I have a pdf file, and I want to number the paragraphs, the figures, and label the sentences with letters. Is there a package or library that is well-suited to doing this kind of thing?
2022-02-13 20:01:28 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 20:01:47 +0100prolic(~prolic@181.122.131.227)
2022-02-13 20:02:20 +0100olle(~olle@i5E866D96.versanet.de)
2022-02-13 20:02:33 +0100zeenk(~zeenk@2a02:2f04:a30d:1300:51a3:bcfc:6cda:9fc5)
2022-02-13 20:05:28 +0100 <[exa]> justsomeguy: it's quite hard to detect actual sentence structure from just pdf
2022-02-13 20:06:07 +0100 <geekosaur> even paragraphs are difficult, from the last time I worked with a PDF
2022-02-13 20:06:22 +0100 <hpc> words are difficult even
2022-02-13 20:06:50 +0100 <hpc> sometimes kerning is implemented as having hundreds of individual text items offset by a pixel or two
2022-02-13 20:06:58 +0100 <geekosaur> PDFs are basically virtual printouts. it's allmove-print-move-print and you need to track how far it moves even to detect words (due to kerning) much less sentences or paragraphs
2022-02-13 20:07:32 +0100 <geekosaur> it'sa *really* lousy format for semantic manipulation
2022-02-13 20:07:46 +0100 <hpc> and that's if it's not an image
2022-02-13 20:08:14 +0100 <justsomeguy> Hmm... maybe I should email the author and ask for a copy of the latex source code. I don't think he'll respond, but it's worth a shot.
2022-02-13 20:09:20 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-02-13 20:09:37 +0100 <justsomeguy> In the pdf file, each pargraph has a leading indent, so I thought that maybe I could get lucky and use that as a rule-of-thumb to recognize where each paragraph beigns/ends.
2022-02-13 20:10:34 +0100 <geekosaur> until you get quoting thta uses the same indent (I get stuff like this,it's sometimes difficult even just reading it normally)
2022-02-13 20:10:48 +0100stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 276 seconds)
2022-02-13 20:11:12 +0100 <justsomeguy> That sounds frustrating.
2022-02-13 20:17:17 +0100 <hololeap> is there a way to check from within a project (possibly using CPP) if a build is using dist or dist-newstyle?
2022-02-13 20:17:31 +0100olle(~olle@i5E866D96.versanet.de) (Ping timeout: 272 seconds)
2022-02-13 20:18:36 +0100 <geekosaur> hm. isn't that basically cabal v1 vs. cabal v2?
2022-02-13 20:18:42 +0100deadmarshal(~deadmarsh@95.38.114.155) (Ping timeout: 256 seconds)
2022-02-13 20:18:58 +0100 <hololeap> pretty close. Setup.hs also uses dist
2022-02-13 20:19:08 +0100 <geekosaur> that's more or less cabal v1
2022-02-13 20:19:17 +0100alp(~alp@user/alp) (Ping timeout: 240 seconds)
2022-02-13 20:20:14 +0100 <hololeap> I'm mucking around with fixing the environment for doctests and I need to know if it's dist or dist-newstyle. I could just check to see if one or the other exists
2022-02-13 20:21:15 +0100 <hololeap> but being able to know exactly where the build directory is would be nice
2022-02-13 20:21:24 +0100 <hololeap> s/is would be/would be
2022-02-13 20:21:41 +0100 <hololeap> wait no :/
2022-02-13 20:22:11 +0100merijn(~merijn@c-001-002-004.client.esciencecenter.eduvpn.nl)
2022-02-13 20:23:03 +0100 <sclv> hololeap: what doctest package are you working on in particular/
2022-02-13 20:23:20 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2022-02-13 20:25:20 +0100 <Franciman> monochrom: thanks for the «why functional programming matters» paper
2022-02-13 20:25:23 +0100 <Franciman> it's juicy
2022-02-13 20:25:53 +0100 <[exa]> justsomeguy: internally the PDF is usally in postscript, which will contain something like `go to 524,6264 and start making letters there` for the paragraph indent, instead of `got to 2345245,24234 and start making letters there`... so just taking a source and re-typesetting is probably gonna be easiest :D pdf2text may help if author doesn't respond
2022-02-13 20:25:57 +0100sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds)
2022-02-13 20:26:14 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 20:26:35 +0100 <hololeap> sclv: I'm not sure what you mean, but this is what I'm working on: https://github.com/dhall-lang/dhall-haskell/pull/2383/commits/6e9b65ffcbcafe78493d3629f15eaf5804cc…
2022-02-13 20:28:31 +0100 <hololeap> I made the assumption that it would be using dist, forgetting that most CI uses dist-newstyle: "-package-db=" ++ prefix </> "dist/package.conf.inplace"
2022-02-13 20:29:02 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-02-13 20:29:33 +0100 <sclv> I thought that the cabal-doctest tool would figure out that stuff for you?
2022-02-13 20:32:22 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2022-02-13 20:33:06 +0100 <hololeap> there was some problem problem I ran into when using Build_doctests.flags ... I had to slim it down, but I'm not remembering exactly why I did that
2022-02-13 20:33:36 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr)
2022-02-13 20:33:47 +0100zer0bitz(~zer0bitz@2001:2003:f74d:b800:f425:fffb:4465:6325)
2022-02-13 20:33:48 +0100vicfred(~vicfred@user/vicfred)
2022-02-13 20:33:48 +0100 <hololeap> Oh, it's because dhall has a custom doctest that skips certain modules, and the default Build_doctests.flags includes all of them
2022-02-13 20:34:14 +0100vicfred(~vicfred@user/vicfred) (Remote host closed the connection)
2022-02-13 20:34:38 +0100vicfred(~vicfred@user/vicfred)
2022-02-13 20:36:13 +0100maxime__(~maxime@2a01cb0883359800f9c64cc16050cef5.ipv6.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2022-02-13 20:38:45 +0100Erutuon(~Erutuon@user/erutuon)
2022-02-13 20:41:16 +0100 <sclv> ah, makes sense!
2022-02-13 20:42:23 +0100 <justsomeguy> Thanks [exa] :^)
2022-02-13 20:44:03 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com) (Remote host closed the connection)
2022-02-13 20:44:59 +0100_73(~user@pool-96-233-64-53.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2))
2022-02-13 20:46:17 +0100xff0x(~xff0x@2001:1a81:5288:ea00:43ab:35e6:a5cd:7882) (Ping timeout: 240 seconds)
2022-02-13 20:47:53 +0100xff0x(~xff0x@2001:1a81:5288:ea00:43ab:35e6:a5cd:7882)
2022-02-13 20:50:36 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection)
2022-02-13 20:51:07 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com)
2022-02-13 20:53:53 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-02-13 20:56:07 +0100merijn(~merijn@c-001-002-004.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 20:57:47 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 20:58:05 +0100prolic(~prolic@181.122.131.227)
2022-02-13 20:59:23 +0100vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2022-02-13 21:02:01 +0100kuribas(~user@ptr-25vy0i7awh2t1unux26.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2022-02-13 21:04:06 +0100`2jt(~jtomas@130.red-88-22-46.staticip.rima-tde.net) (Remote host closed the connection)
2022-02-13 21:04:31 +0100`2jt(~jtomas@130.red-88-22-46.staticip.rima-tde.net)
2022-02-13 21:04:57 +0100juhp(~juhp@128.106.188.82) (Ping timeout: 240 seconds)
2022-02-13 21:07:24 +0100juhp(~juhp@128.106.188.82)
2022-02-13 21:08:58 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4)
2022-02-13 21:09:01 +0100olle(~olle@i5E866D96.versanet.de)
2022-02-13 21:12:24 +0100machinedgod(~machinedg@24.105.81.50)
2022-02-13 21:14:07 +0100maxime__(~maxime@2a01cb08833598002d961177afb4f0f1.ipv6.abo.wanadoo.fr)
2022-02-13 21:14:47 +0100zer0bitz(~zer0bitz@2001:2003:f74d:b800:f425:fffb:4465:6325) (Read error: Connection reset by peer)
2022-02-13 21:16:49 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 256 seconds)
2022-02-13 21:17:57 +0100shailangsa(~shailangs@host109-159-108-227.range109-159.btcentralplus.com) (Ping timeout: 256 seconds)
2022-02-13 21:20:12 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 21:20:21 +0100adanwan_(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 276 seconds)
2022-02-13 21:20:29 +0100prolic(~prolic@181.122.131.227)
2022-02-13 21:20:35 +0100adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-02-13 21:24:24 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 21:24:42 +0100prolic(~prolic@181.122.131.227)
2022-02-13 21:24:50 +0100zincy_(~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b)
2022-02-13 21:26:16 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 21:30:59 +0100ix(~ix@213.205.242.181) (Ping timeout: 256 seconds)
2022-02-13 21:31:37 +0100jao(~jao@static-68-235-44-54.cust.tzulo.com) (Ping timeout: 272 seconds)
2022-02-13 21:32:22 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 256 seconds)
2022-02-13 21:33:15 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-02-13 21:33:17 +0100cjb(~cjb@user/cjb)
2022-02-13 21:33:51 +0100alp(~alp@user/alp)
2022-02-13 21:35:34 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 21:35:52 +0100prolic(~prolic@181.122.131.227)
2022-02-13 21:37:33 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 21:37:51 +0100prolic(~prolic@181.122.131.227)
2022-02-13 21:38:03 +0100michalz(~michalz@185.246.204.93)
2022-02-13 21:42:33 +0100dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2022-02-13 21:42:54 +0100cynomys(~cynomys@user/cynomys)
2022-02-13 21:43:08 +0100maxime__(~maxime@2a01cb08833598002d961177afb4f0f1.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-02-13 21:43:28 +0100Null_A(~null_a@2601:645:8700:2290:a4fb:481a:7fa9:b909)
2022-02-13 21:43:57 +0100max22-(~maxime@2a01cb0883359800adb23edd069ed7e4.ipv6.abo.wanadoo.fr)
2022-02-13 21:45:10 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 21:45:21 +0100ix(~ix@213.205.242.82)
2022-02-13 21:46:09 +0100alx741(~alx741@181.199.42.143)
2022-02-13 21:47:57 +0100zincy_(~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Remote host closed the connection)
2022-02-13 21:49:14 +0100acidjnk(~acidjnk@p200300d0c70575217cad9542db460749.dip0.t-ipconnect.de)
2022-02-13 21:51:01 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 21:51:38 +0100alx741(~alx741@181.199.42.143)
2022-02-13 21:51:39 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 256 seconds)
2022-02-13 21:52:06 +0100sektor|3(~kvirc@87.227.175.182) (Read error: Connection reset by peer)
2022-02-13 21:52:39 +0100cosimone(~user@93-34-133-235.ip49.fastwebnet.it) (Read error: Connection reset by peer)
2022-02-13 21:53:17 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20)
2022-02-13 21:56:03 +0100romesrf(~romes@44.190.189.46.rev.vodafone.pt)
2022-02-13 21:57:10 +0100shailangsa_(~shailangs@host86-186-127-164.range86-186.btcentralplus.com)
2022-02-13 22:00:10 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 22:00:29 +0100prolic(~prolic@181.122.131.227)
2022-02-13 22:04:24 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 22:04:42 +0100prolic(~prolic@181.122.131.227)
2022-02-13 22:06:06 +0100jao(~jao@68.235.43.108)
2022-02-13 22:06:11 +0100zincy_(~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b)
2022-02-13 22:08:04 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 22:12:17 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
2022-02-13 22:14:02 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 22:16:17 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-02-13 22:17:01 +0100shailangsa_(~shailangs@host86-186-127-164.range86-186.btcentralplus.com) (Remote host closed the connection)
2022-02-13 22:17:13 +0100mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 272 seconds)
2022-02-13 22:17:27 +0100ix(~ix@213.205.242.82) (Ping timeout: 256 seconds)
2022-02-13 22:19:06 +0100_ht(~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
2022-02-13 22:19:16 +0100ix(~ix@213.205.192.245)
2022-02-13 22:19:22 +0100 <Sqaure> Cant seem to find something i expected existed. Namely :: Int -> [a] -> Maybe a. Is it hiding?
2022-02-13 22:21:58 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 22:22:16 +0100prolic(~prolic@181.122.131.227)
2022-02-13 22:22:37 +0100 <Sqaure> oh, found one in lens
2022-02-13 22:22:44 +0100 <geekosaur> @hoogle [a]-> Int -> Maybe a
2022-02-13 22:22:45 +0100 <lambdabot> Safe atMay :: [a] -> Int -> Maybe a
2022-02-13 22:22:45 +0100 <lambdabot> Protolude atMay :: [a] -> Int -> Maybe a
2022-02-13 22:22:45 +0100 <lambdabot> Protolude.Safe atMay :: [a] -> Int -> Maybe a
2022-02-13 22:25:57 +0100ix(~ix@213.205.192.245) (Ping timeout: 256 seconds)
2022-02-13 22:28:12 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 22:28:29 +0100prolic(~prolic@181.122.131.227)
2022-02-13 22:30:57 +0100alx741(~alx741@181.199.42.143)
2022-02-13 22:31:53 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 256 seconds)
2022-02-13 22:35:17 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 22:39:39 +0100adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 276 seconds)
2022-02-13 22:40:02 +0100 <EvanR> atMay oundSay saferSay anThey artialPay unctionsFay
2022-02-13 22:40:10 +0100adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-02-13 22:40:20 +0100 <EvanR> doh, autocorrect
2022-02-13 22:43:30 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk)
2022-02-13 22:44:48 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Read error: Connection reset by peer)
2022-02-13 22:45:34 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20)
2022-02-13 22:48:02 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 22:48:20 +0100prolic(~prolic@181.122.131.227)
2022-02-13 22:50:07 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr)
2022-02-13 22:50:19 +0100burnsidesLlama(~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-02-13 22:52:09 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-02-13 22:52:22 +0100alx741(~alx741@181.199.42.143)
2022-02-13 22:52:37 +0100max22-(~maxime@2a01cb0883359800adb23edd069ed7e4.ipv6.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2022-02-13 22:52:54 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl)
2022-02-13 22:54:51 +0100dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.3)
2022-02-13 22:55:28 +0100alx741(~alx741@181.199.42.143) (Read error: Connection reset by peer)
2022-02-13 22:55:38 +0100maxime__(~maxime@2a01cb08833598009b8db594e1e70b96.ipv6.abo.wanadoo.fr)
2022-02-13 22:56:32 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Quit: ERC (IRC client for Emacs 27.1))
2022-02-13 22:56:58 +0100shailangsa(~shailangs@host86-186-127-164.range86-186.btcentralplus.com)
2022-02-13 22:57:12 +0100random-jellyfish(~random-je@user/random-jellyfish)
2022-02-13 22:58:15 +0100maxime_(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 256 seconds)
2022-02-13 23:03:03 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-02-13 23:10:02 +0100ix(~ix@213.205.242.104)
2022-02-13 23:10:18 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2022-02-13 23:10:49 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-02-13 23:12:49 +0100coot(~coot@213.134.190.95) (Quit: coot)
2022-02-13 23:12:51 +0100alx741(~alx741@157.100.197.240)
2022-02-13 23:19:46 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 23:20:05 +0100prolic(~prolic@181.122.131.227)
2022-02-13 23:20:30 +0100zebrag(~chris@user/zebrag)
2022-02-13 23:21:10 +0100 <jackdk> > [1, 2, 3] ^? ix 5
2022-02-13 23:21:12 +0100 <lambdabot> Nothing
2022-02-13 23:21:23 +0100 <jackdk> does require lens, however
2022-02-13 23:22:38 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 23:23:39 +0100slack1256(~slack1256@191.126.227.77)
2022-02-13 23:24:01 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:24:16 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:24:23 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:24:36 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:24:44 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:24:59 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:25:06 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:25:20 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:25:28 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:25:42 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:25:49 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:25:51 +0100 <geekosaur> sigh
2022-02-13 23:25:54 +0100ChanServ+o geekosaur
2022-02-13 23:26:04 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:26:05 +0100geekosaur+b *!*@98.38.249.169
2022-02-13 23:26:12 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-02-13 23:27:09 +0100merijn(~merijn@c-001-001-027.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-02-13 23:27:22 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2022-02-13 23:27:50 +0100 <romesrf> say I have `class CSomething a`, and a `data DSomething b`, and I `instance CSomething (DSomething a)`. When writing a function `f :: CSomething a => ...`, how would I access the type variable of `a`
2022-02-13 23:28:17 +0100 <romesrf> So, `class CSomething a` where a must have kind * -> *, and then I want to reason over the kind of the instanced class? :P
2022-02-13 23:28:30 +0100 <romesrf> hahaha
2022-02-13 23:29:05 +0100 <romesrf> over the type variable of the instanced class*
2022-02-13 23:29:45 +0100 <geekosaur> you can't. just as you can't do f :: a -> something and get at the type `a`
2022-02-13 23:30:10 +0100Tuplanolla(~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) (Quit: Leaving.)
2022-02-13 23:30:11 +0100 <geekosaur> only instance methods get to do that
2022-02-13 23:32:58 +0100justsomeguy(~justsomeg@user/justsomeguy)
2022-02-13 23:33:28 +0100 <romesrf> :)
2022-02-13 23:35:27 +0100 <phma> I'm writing some code to do arithmetic in a complex base and would like to use QuickCheck for unit tests. I use random tests in C++ and like them.
2022-02-13 23:36:00 +0100zincy_(~zincy@2a00:23c8:970c:4801:39f9:90f7:922:e73b) (Remote host closed the connection)
2022-02-13 23:36:39 +0100 <phma> One function takes a Word32 and expresses it in base 343, returning a list. Another takes such a list and reassembles it into a number. I can test them together with random numbers.
2022-02-13 23:37:40 +0100 <phma> But I'd also like to do a few single tests where I choose a number, call the function, and check that the list is correct. Can I do this with QuickCheck?
2022-02-13 23:37:58 +0100 <romesrf> geekosaur: this is as close as I could get: https://paste.tomsmeding.com/LgZ2aPtP , which is pretty close to what I wanted but didn't know it yet ;)
2022-02-13 23:38:10 +0100 <romesrf> first time using KindSignatures, they're cool :P
2022-02-13 23:38:53 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-02-13 23:38:53 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-02-13 23:38:53 +0100wroathe(~wroathe@user/wroathe)
2022-02-13 23:39:00 +0100 <romesrf> so in the end i can constraint over the type variable of the instancing datatype
2022-02-13 23:39:41 +0100 <geekosaur> you still can't write code that can distinguish different `m`s, which is what I understood you as asking for
2022-02-13 23:40:23 +0100alx741(~alx741@157.100.197.240)
2022-02-13 23:40:27 +0100 <geekosaur> you can write what you did but it has to work for all possible `m`s, which in practice means using instance functions
2022-02-13 23:41:03 +0100 <romesrf> ic ic :)
2022-02-13 23:41:06 +0100 <romesrf> ty
2022-02-13 23:42:34 +0100geekosaur-o geekosaur
2022-02-13 23:44:14 +0100prolic(~prolic@181.122.131.227) (Remote host closed the connection)
2022-02-13 23:44:33 +0100prolic(~prolic@181.122.131.227)
2022-02-13 23:45:09 +0100dsrt^(~dsrt@50.235.176.163)
2022-02-13 23:45:15 +0100 <geekosaur> phma, QuickCheck is not so much about choosing inputs, rather it chooses the inputs and verifies the correct result. It's good for verifying that a property holds across an entire range of inputs
2022-02-13 23:45:16 +0100alx741(~alx741@157.100.197.240) (Read error: Connection reset by peer)
2022-02-13 23:45:45 +0100 <sshine> is 'include-env' package the preferred way to include environment variables at compile-time?
2022-02-13 23:46:15 +0100 <phma> geekosaur: how should I do single tests if I'm doing random tests with QuickCheck?
2022-02-13 23:46:28 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2022-02-13 23:47:05 +0100 <geekosaur> you generally don't
2022-02-13 23:47:36 +0100 <sshine> phma, you can combine property tests and unit tests in one test suite
2022-02-13 23:47:37 +0100 <geekosaur> QC is just one kind of testing; there are test frameworks which provide other kinds of testing in addition
2022-02-13 23:47:58 +0100 <geekosaur> so you may want to look into HSpec or tasty
2022-02-13 23:48:12 +0100 <phma> thanks
2022-02-13 23:48:52 +0100 <sshine> phma, if you use e.g. HSpec or Tasty, you can define them next to each other; here's an example of Hedgehog property tests + HSpec unit tests, combined with Tasty: https://github.com/sshine/evm-opcodes/blob/main/test/OpcodeTest.hs
2022-02-13 23:49:57 +0100michalz(~michalz@185.246.204.93) (Remote host closed the connection)
2022-02-13 23:50:03 +0100 <sshine> phma, most test frameworks have something similar. for example, using only HSpec, you can also embed QuickCheck properties.
2022-02-13 23:50:47 +0100 <sshine> phma, https://hspec.github.io/ -- there's a simpler example of an HSpec suite that includes a QuickCheck property. you could get to there with only one or two extra dependencies in your test suite.
2022-02-13 23:51:14 +0100ChanServ+o litharge
2022-02-13 23:51:14 +0100litharge-bo *!*@98.38.249.169 litharge
2022-02-13 23:51:18 +0100 <geekosaur> Hedgehog is QuickCheck on steroids, if you're wondering
2022-02-13 23:51:57 +0100wombat875(~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Ping timeout: 240 seconds)
2022-02-13 23:52:36 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-02-13 23:52:46 +0100 <romesrf> I've a question: Is there any type-level fold? that folds a list of types into a mega type with some combinator
2022-02-13 23:52:47 +0100 <monochrom> Ugh in these days of dope test controversies... :)
2022-02-13 23:53:14 +0100random-jellyfish(~random-je@user/random-jellyfish) (Ping timeout: 256 seconds)
2022-02-13 23:53:15 +0100 <sshine> ...who is testing the testers?
2022-02-13 23:53:15 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2022-02-13 23:53:17 +0100 <romesrf> like... foldl (->) [Int, Int, Int] ~ Int -> Int -> Int
2022-02-13 23:53:53 +0100 <geekosaur> that looks to me like something that would require serious singletons wizardry
2022-02-13 23:54:10 +0100 <sshine> yes
2022-02-13 23:54:29 +0100 <monochrom> Does this count? https://aphyr.com/posts/342-typing-the-technical-interview
2022-02-13 23:55:25 +0100 <phma> my favorite random test that I've written: make a random upper triangular matrix with all 1 on the diagonal, permute rows and columns randomly, and take the determinant. It should be close to 1.
2022-02-13 23:55:32 +0100dsrt^(~dsrt@50.235.176.163) (Remote host closed the connection)
2022-02-13 23:56:39 +0100 <monochrom> That's a beautiful math insight, phma. :)
2022-02-13 23:57:02 +0100sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-02-13 23:57:16 +0100 <romesrf> HAHAHAHAAHAH monochrom
2022-02-13 23:57:27 +0100 <romesrf> i'm halfway through that's hilarious
2022-02-13 23:57:53 +0100lavaman(~lavaman@98.38.249.169)
2022-02-13 23:58:00 +0100dsrt^(~dsrt@50.235.176.163)
2022-02-13 23:58:59 +0100jinsun(~quassel@user/jinsun) ()
2022-02-13 23:58:59 +0100 <monochrom> It's a satire on type level programming in those days. But it was also before DataKinds, TypeInType, kind polymorphism, even type families maybe.
2022-02-13 23:59:09 +0100olle(~olle@i5E866D96.versanet.de) (Ping timeout: 256 seconds)
2022-02-13 23:59:19 +0100jinsun(~jinsun@user/jinsun)
2022-02-13 23:59:39 +0100 <monochrom> So, it had to make do with undecidable instances and those empty data declarations "data Nil; data Cons ...".