2021/03/31

2021-03-31 00:00:16 +0200 <mpickering> zephyz: I think most people cross compile with haskell.nix
2021-03-31 00:00:16 +0200 <edwardk> zephyz: (honestly i've never had to cross-compile with it, so in my case it that is an actual true statement, but sarcasm in, sarcasm out.)
2021-03-31 00:00:18 +0200 <mpickering> have you tried that?
2021-03-31 00:00:44 +0200 <zephyz> that would partially explain why every documentation I find is about bootstrapping GHC itself rather than explain the correct options
2021-03-31 00:00:47 +0200borne(~fritjof@200116b864cfc800f7ed9fd86a2491f0.dip.versatel-1u1.de) (Ping timeout: 250 seconds)
2021-03-31 00:00:55 +0200 <zephyz> mpickering I'm not familiar with haskell.nix, what is it?
2021-03-31 00:00:58 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
2021-03-31 00:01:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 00:01:49 +0200 <zephyz> mpickering oh, is this what you're refering to? https://input-output-hk.github.io/haskell.nix/tutorials/cross-compilation/
2021-03-31 00:02:02 +0200 <mpickering> yeah
2021-03-31 00:02:26 +0200 <mpickering> apparently it's quite easy. I know people who regularly compile binaries for rasp pi
2021-03-31 00:02:53 +0200 <zephyz> fantastic, I'll give it a go!
2021-03-31 00:03:08 +0200 <zephyz> thanks!
2021-03-31 00:04:21 +0200Rudd0(~Rudd0@185.189.115.103)
2021-03-31 00:05:02 +0200 <tolt> We use haskell.nix to compile for arm
2021-03-31 00:05:13 +0200 <tolt> Works well for us, just takes a while
2021-03-31 00:06:22 +0200Feuermagier_(~CatWithMo@gateway/tor-sasl/catwithmoustache)
2021-03-31 00:06:47 +0200CatWithMoustache(~CatWithMo@gateway/tor-sasl/catwithmoustache) (Remote host closed the connection)
2021-03-31 00:07:44 +0200average(uid473595@gateway/web/irccloud.com/x-mdzvkbciicshchec)
2021-03-31 00:09:18 +0200_d0t(void@gateway/vpn/mullvad/d0t/x-89419360) (Ping timeout: 240 seconds)
2021-03-31 00:10:00 +0200Vadrigar_(~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de)
2021-03-31 00:11:15 +0200RamZess(a5e15ade@165.225.90.222) ()
2021-03-31 00:11:56 +0200fendor_(~fendor@178.165.130.8.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-03-31 00:13:07 +0200dumptruckman(~dumptruck@li1287-148.members.linode.com) (Quit: ZNC - https://znc.in)
2021-03-31 00:13:23 +0200dumptruckman(~dumptruck@li1287-148.members.linode.com)
2021-03-31 00:14:09 +0200acidjnk_new(~acidjnk@p200300d0c72b9549c1d5f2f7c60f6477.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-03-31 00:14:18 +0200Vadrigar_(~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds)
2021-03-31 00:19:48 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 00:20:00 +0200spidr(~spider@2402:1f00:8100:400::6b1) (Quit: brb)
2021-03-31 00:21:37 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de) (Remote host closed the connection)
2021-03-31 00:23:38 +0200yunusaydin(4eb8266d@78.184.38.109)
2021-03-31 00:26:43 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-03-31 00:28:02 +0200xzs(~xzc@ip68-14-50-158.ri.ri.cox.net)
2021-03-31 00:28:08 +0200xzs(~xzc@ip68-14-50-158.ri.ri.cox.net) ()
2021-03-31 00:29:45 +0200 <dmj`> zephyz: I've cross compiled Haskell to ARM using nix, it uses the LLVM backend. What tolt said.
2021-03-31 00:30:40 +0200usr25(~usr25@unaffiliated/usr25)
2021-03-31 00:31:29 +0200 <dmj`> zephyz: nix-repl> :b pkgsCross.aarch64-multiplatform.haskellPackages.hello
2021-03-31 00:32:15 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 246 seconds)
2021-03-31 00:32:46 +0200__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2021-03-31 00:35:58 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-03-31 00:36:36 +0200MrMobius(~MrMobius@208.58.206.154) (Read error: Connection reset by peer)
2021-03-31 00:37:40 +0200MrMobius(~MrMobius@208.58.206.154)
2021-03-31 00:38:07 +0200recon_-(~quassel@2602:febc:0:b6::6ca2) (Ping timeout: 276 seconds)
2021-03-31 00:38:31 +0200jud^(~jud@206.217.205.84)
2021-03-31 00:38:35 +0200Xnuk-(~xnuk@45.76.202.58)
2021-03-31 00:38:38 +0200xwvvvvwx-(xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx)
2021-03-31 00:38:47 +0200codedmart_(~codedmart@149.28.9.205)
2021-03-31 00:38:52 +0200recon_-(~quassel@2602:febc:0:b6::6ca2)
2021-03-31 00:38:53 +0200zyeri-(zyeri@gateway/shell/tilde.team/x-oxjvkgeanxdxtgws)
2021-03-31 00:38:54 +0200Anthaas_(~Anthaas@unaffiliated/anthaas)
2021-03-31 00:38:57 +0200xsarnik02(xsarnik@gateway/shell/fi.muni.cz/x-ejzqrdqgatevcaqk)
2021-03-31 00:39:00 +0200uberj_(~uberj@107.170.237.156)
2021-03-31 00:39:15 +0200zephyz(zephyz@gateway/vpn/privateinternetaccess/zephyz) (Quit: zephyz)
2021-03-31 00:39:23 +0200nshepperd27(~nshepperd@li364-218.members.linode.com)
2021-03-31 00:39:30 +0200gothos_(~gothos@antsy.jhz.name)
2021-03-31 00:39:37 +0200styledash7(~styledash@157.230.173.136)
2021-03-31 00:39:41 +0200samebchase-6(~samebchas@51.15.68.182)
2021-03-31 00:39:42 +0200__minoru__shirae(~shiraeesh@109.166.57.161) (Ping timeout: 260 seconds)
2021-03-31 00:39:46 +0200tilaiti_(~tilaiti@static.144.156.216.95.clients.your-server.de)
2021-03-31 00:39:47 +0200caubert_(~caubert@136.244.111.235)
2021-03-31 00:40:01 +0200L1Cafe9(~L1Cafe@kydara.com)
2021-03-31 00:40:06 +0200infinisi1(~infinisil@NixOS/user/infinisil)
2021-03-31 00:40:08 +0200bbear_(~znc@21212.s.t4vps.eu)
2021-03-31 00:40:08 +0200bgamari_(~bgamari@2001:470:e438::1)
2021-03-31 00:40:12 +0200rkrishnan_(~rkrishnan@rkrishnan.org)
2021-03-31 00:40:16 +0200xhlr(~xhlr@static.144.156.216.95.clients.your-server.de)
2021-03-31 00:40:20 +0200lockshaw_(~lockshaw@165.22.163.71)
2021-03-31 00:40:26 +0200skewerr(~spoonm@tokyo.spoonm.org)
2021-03-31 00:40:30 +0200tstat_(~tstat@104.131.113.212)
2021-03-31 00:40:34 +0200noecho-(~noecho@2a01:4f8:1c0c:80ee::4223)
2021-03-31 00:40:35 +0200forell_(~forell@unaffiliated/forell)
2021-03-31 00:40:48 +0200xts_(~ts@46.101.20.9)
2021-03-31 00:40:54 +0200Wamanuz2(~wamanuz@78-70-34-81-no84.tbcn.telia.com)
2021-03-31 00:41:03 +0200Majoo(~Majiir@pool-96-237-149-35.bstnma.fios.verizon.net)
2021-03-31 00:41:15 +0200arianvp_(~weechat@arianvp.me)
2021-03-31 00:41:16 +0200mceier_(~mceier@89-68-132-187.dynamic.chello.pl)
2021-03-31 00:41:20 +0200micro_(~micro@a9.lence.net)
2021-03-31 00:41:21 +0200icebreak1r(michalc@freeshell.de)
2021-03-31 00:41:22 +0200crtschin(~crtschin@104.131.9.149) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200a3Dman(~3Dman@unaffiliated/a3dman) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200lockshaw(~lockshaw@165.22.163.71) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200xhlr_(~xhlr@static.144.156.216.95.clients.your-server.de) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200mceier(~mceier@89-68-132-187.dynamic.chello.pl) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200xts(~ts@46.101.20.9) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200forell(~forell@unaffiliated/forell) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200lortabac(~lortabac@51.158.65.124) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200micro(~micro@unaffiliated/micro) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200deu(de@uio.re) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200samebchase(~samebchas@51.15.68.182) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200runawayfive(~nope@unaffiliated/runawayfive) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200shapr(~shapr@haskell/developer/shapr) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200bbear(~znc@21212.s.t4vps.eu) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200bcoppens(~bartcopp@kde/coppens) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200freeside(~ubuntu@ec2-52-58-69-57.eu-central-1.compute.amazonaws.com) (Ping timeout: 265 seconds)
2021-03-31 00:41:22 +0200forell_forell
2021-03-31 00:41:26 +0200Uma_(~uma@umazalakain.info)
2021-03-31 00:41:38 +0200Wamanuz(~wamanuz@78-70-34-81-no84.tbcn.telia.com) (Write error: Connection reset by peer)
2021-03-31 00:41:41 +0200bcoppens(~bartcopp@vpn2.bartcoppens.be)
2021-03-31 00:41:42 +0200bcoppens(~bartcopp@vpn2.bartcoppens.be) (Changing host)
2021-03-31 00:41:42 +0200bcoppens(~bartcopp@kde/coppens)
2021-03-31 00:41:43 +0200micro_Guest95177
2021-03-31 00:41:43 +0200freeside(~ubuntu@ec2-52-58-69-57.eu-central-1.compute.amazonaws.com)
2021-03-31 00:41:43 +0200crtschin(~crtschin@2604:a880:800:10::3126:f001)
2021-03-31 00:41:47 +0200jvanbure_(~jvanbure@159.65.233.183)
2021-03-31 00:41:47 +0200bgamari(~bgamari@72.65.101.179) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200Anthaas(~Anthaas@unaffiliated/anthaas) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200newsham(~ubuntu@ec2-18-218-216-88.us-east-2.compute.amazonaws.com) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200adium(adium@unaffiliated/adium) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200xwvvvvwx(xwvvvvwx@gateway/vpn/mullvad/xwvvvvwx) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200orhan89(~orhan89@151.91.188.35.bc.googleusercontent.com) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200rkrishnan(~rkrishnan@rkrishnan.org) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200zyeri(zyeri@tilde.team/users/zyeri) (Ping timeout: 265 seconds)
2021-03-31 00:41:47 +0200xwvvvvwx-xwvvvvwx
2021-03-31 00:41:50 +0200z0(~zzz@2a03:b0c0:3:d0::3095:3001)
2021-03-31 00:41:51 +0200chindy_(~quassel@51.15.63.78)
2021-03-31 00:41:51 +0200mceier_mceier
2021-03-31 00:42:01 +0200sud0(~Death@hackspaceuy/member/sud0) (Disconnected by services)
2021-03-31 00:42:01 +0200spoonm(~spoonm@tokyo.spoonm.org) (Read error: Connection reset by peer)
2021-03-31 00:42:13 +0200z0Guest48265
2021-03-31 00:42:15 +0200sud0(~Death@hackspaceuy/member/sud0)
2021-03-31 00:42:16 +0200Techcable(~Techcable@168.235.93.147) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200jle`(~mstksg@unaffiliated/mstksg) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200Ekho(~Ekho@unaffiliated/ekho) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200infinisil(~infinisil@NixOS/user/infinisil) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200chindy(~quassel@51.15.63.78) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200energizer(~energizer@unaffiliated/energizer) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200Squarism(~someone@unaffiliated/squarism) (Ping timeout: 265 seconds)
2021-03-31 00:42:16 +0200avp(~avp@unaffiliated/avp) (Ping timeout: 265 seconds)
2021-03-31 00:42:18 +0200greymalkin_(~greymalki@199.180.249.79)
2021-03-31 00:42:19 +0200samebchase(~samebchas@51.15.68.182)
2021-03-31 00:42:23 +0200orhan89(~orhan89@151.91.188.35.bc.googleusercontent.com)
2021-03-31 00:42:26 +0200jtcs_(~jtcs@vmi359854.contaboserver.net)
2021-03-31 00:42:34 +0200newsham(~ubuntu@ec2-18-218-216-88.us-east-2.compute.amazonaws.com)
2021-03-31 00:42:35 +0200shapr(~shapr@162.243.9.169)
2021-03-31 00:42:36 +0200shaprGuest54397
2021-03-31 00:42:36 +0200djanatyn1(~djanatyn@vps-7f49a6b0.vps.ovh.ca)
2021-03-31 00:42:37 +0200tureba_(~tureba@tureba.org)
2021-03-31 00:42:38 +0200ian_(~igloo@matrix.chaos.earth.li)
2021-03-31 00:42:43 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-03-31 00:42:45 +0200lortabac(~lortabac@51.158.65.124)
2021-03-31 00:42:59 +0200sajith_(~sajith@fsf/member/nonzen)
2021-03-31 00:43:09 +0200Chobbes_(~Chobbes@pool-98-115-239-235.phlapa.fios.verizon.net)
2021-03-31 00:43:13 +0200jud(~jud@unaffiliated/jud) (Read error: Connection reset by peer)
2021-03-31 00:43:13 +0200Xnuk(~xnuk@45.76.202.58) (Remote host closed the connection)
2021-03-31 00:43:13 +0200greymalkin(~greymalki@199.180.249.79) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200jtcs(~jtcs@vmi359854.contaboserver.net) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200rzmt(~rzmt@87-92-180-112.rev.dnainternet.fi) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200meck(~meck@li1809-18.members.linode.com) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200jvanbure(~jvanbure@159.65.233.183) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200zzz(~zzz@46.101.134.251) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200Uma(~uma@umazalakain.info) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200Chobbes(~Chobbes@pool-98-115-239-235.phlapa.fios.verizon.net) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200arianvp(~weechat@arianvp.me) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200obiiwahn(~obiwahn@obiwahn.org) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200tstat(~tstat@104.131.113.212) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200noecho(~noecho@static.143.42.203.116.clients.your-server.de) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200icebreaker(michalc@unaffiliated/icebreaker) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200codedmart(~codedmart@149.28.9.205) (Read error: Connection reset by peer)
2021-03-31 00:43:13 +0200Majiir(~Majiir@pool-96-237-149-35.bstnma.fios.verizon.net) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200L1Cafe(~L1Cafe@kydara.com) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200styledash(~styledash@157.230.173.136) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200nshepperd2(~nshepperd@li364-218.members.linode.com) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200xsarnik0(xsarnik@gateway/shell/fi.muni.cz/x-vgmyhysznfdvtvub) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200djanatyn(~djanatyn@vps-7f49a6b0.vps.ovh.ca) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200samebchase-(~samebchas@51.15.68.182) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200uberj(~uberj@unaffiliated/uberj) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200tureba(~tureba@tureba.org) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200Igloo(~igloo@matrix.chaos.earth.li) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200caubert(~caubert@136.244.111.235) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200sajith(~sajith@fsf/member/nonzen) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200gothos(~gothos@antsy.jhz.name) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200msgctl(~msgctl@ometochtli.centzontotochtin.org) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200lnx(~irssi@167.71.7.27) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200o1lo01ol1o(~o1lo01ol1@bl7-88-181.dsl.telepac.pt) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200tilaiti(~tilaiti@static.144.156.216.95.clients.your-server.de) (Ping timeout: 240 seconds)
2021-03-31 00:43:13 +0200Guest48265zzz
2021-03-31 00:43:13 +0200L1Cafe9L1Cafe
2021-03-31 00:43:13 +0200nshepperd27nshepperd2
2021-03-31 00:43:13 +0200gothos_gothos
2021-03-31 00:43:14 +0200styledash7styledash
2021-03-31 00:43:14 +0200greymalkin_greymalkin
2021-03-31 00:43:14 +0200xsarnik02xsarnik0
2021-03-31 00:43:15 +0200lnx(~irssi@167.71.7.27)
2021-03-31 00:43:27 +0200Squarism(~someone@178.62.91.8)
2021-03-31 00:43:27 +0200Squarism(~someone@178.62.91.8) (Changing host)
2021-03-31 00:43:27 +0200Squarism(~someone@unaffiliated/squarism)
2021-03-31 00:43:30 +0200Techcable(~Techcable@168.235.93.147)
2021-03-31 00:43:42 +0200zzzGuest87001
2021-03-31 00:43:52 +0200rzmt(~rzmt@87-92-180-112.rev.dnainternet.fi)
2021-03-31 00:43:54 +0200deu(de@uio.re)
2021-03-31 00:44:00 +0200energizer(~energizer@unaffiliated/energizer)
2021-03-31 00:44:01 +0200meck(~meck@li1809-18.members.linode.com)
2021-03-31 00:45:12 +0200Ekho-(~Ekho@unaffiliated/ekho)
2021-03-31 00:45:20 +0200skewerrspoonm
2021-03-31 00:45:34 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 00:45:35 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 268 seconds)
2021-03-31 00:47:09 +0200Ekho-Ekho
2021-03-31 00:47:55 +0200Guest23174(~Waithamai@178.239.168.171) (Remote host closed the connection)
2021-03-31 00:48:43 +0200runawayfive(~nope@unaffiliated/runawayfive)
2021-03-31 00:48:52 +0200adium(adium@unaffiliated/adium)
2021-03-31 00:48:58 +0200lawid(~quassel@dslb-090-186-122-181.090.186.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2021-03-31 00:50:04 +0200a3Dman_(~3Dman@ns334323.ip-5-196-65.eu)
2021-03-31 00:50:18 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-03-31 00:50:31 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 268 seconds)
2021-03-31 00:52:23 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 00:53:40 +0200lawid(~quassel@dslb-090-186-122-181.090.186.pools.vodafone-ip.de)
2021-03-31 00:56:11 +0200thc202(~thc202@unaffiliated/thc202) (Ping timeout: 245 seconds)
2021-03-31 00:58:12 +0200perrier-jouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.1)
2021-03-31 00:59:06 +0200motte(~weechat@unaffiliated/motte) (Quit: WeeChat 1.9.1)
2021-03-31 01:00:58 +0200perrier-jouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2021-03-31 01:03:22 +0200yunusaydin(4eb8266d@78.184.38.109) (Ping timeout: 240 seconds)
2021-03-31 01:03:24 +0200dcoutts_(~dcoutts@unaffiliated/dcoutts)
2021-03-31 01:03:37 +0200kirb1(~kirb@178.239.168.171)
2021-03-31 01:04:43 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 01:05:57 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-quhfmudexyuduixm) (Quit: Connection closed for inactivity)
2021-03-31 01:07:21 +0200obiiwahn(~obiwahn@pdpc/supporter/student/obiwahn)
2021-03-31 01:08:40 +0200Erutuon_(~Erutuon@97-116-27-119.mpls.qwest.net)
2021-03-31 01:08:52 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com)
2021-03-31 01:08:52 +0200jle`(~mstksg@cpe-23-240-75-236.socal.res.rr.com) (Changing host)
2021-03-31 01:08:52 +0200jle`(~mstksg@unaffiliated/mstksg)
2021-03-31 01:09:16 +0200avp(~avp@unaffiliated/avp)
2021-03-31 01:09:27 +0200msgctl(~msgctl@ometochtli.centzontotochtin.org)
2021-03-31 01:17:42 +0200DavidEichmann(~david@47.27.93.209.dyn.plus.net) (Remote host closed the connection)
2021-03-31 01:18:16 +0200stree(~stree@68.36.8.116) (Ping timeout: 268 seconds)
2021-03-31 01:18:25 +0200conal(~conal@64.71.133.70)
2021-03-31 01:18:27 +0200RusAlex(~Chel@unaffiliated/rusalex) (Ping timeout: 246 seconds)
2021-03-31 01:20:32 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-03-31 01:25:50 +0200v01d4lph4(~v01d4lph4@223.190.20.92)
2021-03-31 01:26:59 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 01:27:18 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 01:29:51 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2021-03-31 01:30:44 +0200v01d4lph4(~v01d4lph4@223.190.20.92) (Ping timeout: 246 seconds)
2021-03-31 01:30:56 +0200stree(~stree@68.36.8.116)
2021-03-31 01:32:01 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 01:34:54 +0200Guest13757(~textual@mskresolve-a.mskcc.org) (Ping timeout: 268 seconds)
2021-03-31 01:35:18 +0200tureba_(~tureba@tureba.org) (Quit: leaving)
2021-03-31 01:35:35 +0200tureba(~tureba@tureba.org)
2021-03-31 01:36:22 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 01:37:06 +0200Rudd0(~Rudd0@185.189.115.103) (Ping timeout: 260 seconds)
2021-03-31 01:40:49 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 260 seconds)
2021-03-31 01:41:51 +0200RusAlex(~Chel@unaffiliated/rusalex)
2021-03-31 01:41:58 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
2021-03-31 01:45:27 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 01:45:30 +0200Synthetica(uid199651@gateway/web/irccloud.com/x-xpdysnkajitxqqrt) (Quit: Connection closed for inactivity)
2021-03-31 01:46:06 +0200clog(~nef@bespin.org) (Ping timeout: 240 seconds)
2021-03-31 01:46:49 +0200clog(~nef@66.114.33.57)
2021-03-31 01:48:13 +0200frozenErebus(~frozenEre@37.231.244.249) (Quit: leaving)
2021-03-31 01:49:18 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 01:49:42 +0200Z3ph0d(~peter@061092022201.ctinets.com)
2021-03-31 01:52:00 +0200Tops2(~Tobias@dyndsl-095-033-026-062.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2021-03-31 01:54:35 +0200conal(~conal@64.71.133.70)
2021-03-31 01:55:46 +0200Sgeo_(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-03-31 01:55:57 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-03-31 01:56:26 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-03-31 01:56:55 +0200Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2021-03-31 02:00:01 +0200Alleria(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com)
2021-03-31 02:00:06 +0200ddellaco_(~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
2021-03-31 02:00:24 +0200AlleriaGuest90356
2021-03-31 02:01:33 +0200ephemient(uid407513@gateway/web/irccloud.com/x-abcfjjixtrhtzzix) (Quit: Connection closed for inactivity)
2021-03-31 02:04:17 +0200Guest90356(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com) (Ping timeout: 250 seconds)
2021-03-31 02:05:43 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 02:10:31 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 02:11:31 +0200infinisi1infinisil
2021-03-31 02:12:42 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com) (Ping timeout: 246 seconds)
2021-03-31 02:12:45 +0200xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Ping timeout: 240 seconds)
2021-03-31 02:12:49 +0200DataComputist(~lumeng@50.43.26.251)
2021-03-31 02:12:55 +0200xelxebar_(~xelxebar@gateway/tor-sasl/xelxebar)
2021-03-31 02:15:33 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Remote host closed the connection)
2021-03-31 02:15:43 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-03-31 02:15:48 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-03-31 02:15:52 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2021-03-31 02:16:50 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-03-31 02:20:44 +0200bodisiw(~bodiskw@cpe-74-138-114-237.kya.res.rr.com) (Quit: Leaving)
2021-03-31 02:21:25 +0200eldritch(~eldritch@unaffiliated/eldritch) (Read error: Connection reset by peer)
2021-03-31 02:21:56 +0200unyu(~pyon@unaffiliated/pyon)
2021-03-31 02:25:44 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood)
2021-03-31 02:26:31 +0200 <koz_> I have some trouble understanding the second and third case of this: https://hackage.haskell.org/package/extra-1.7.9/docs/src/Data.List.Extra.html#split
2021-03-31 02:26:37 +0200Yumasi(~guillaume@2a01:e0a:5cb:4430:6c9e:d835:53cb:dfd2) (Quit: WeeChat 2.8)
2021-03-31 02:26:48 +0200 <koz_> What is this actually saying?
2021-03-31 02:26:59 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-03-31 02:27:11 +0200jpp_(~jpp@47-220-44-237.htvlcmtk02.res.dyn.suddenlink.net) (Remote host closed the connection)
2021-03-31 02:29:06 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 02:31:52 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 02:32:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2021-03-31 02:32:25 +0200 <infinisil> koz_: These lines are using pattern guards
2021-03-31 02:32:34 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Client Quit)
2021-03-31 02:32:37 +0200 <int-e> the second one is just a boolean guard
2021-03-31 02:32:37 +0200lordyod(~lordyod@c-67-169-144-132.hsd1.ca.comcast.net)
2021-03-31 02:32:50 +0200 <koz_> What about the third?
2021-03-31 02:33:06 +0200 <monochrom> if split f xs matches the pattern y:ys
2021-03-31 02:33:15 +0200 <koz_> And what happens if not?
2021-03-31 02:33:32 +0200 <int-e> koz_: then it falls through, but it cannot happen
2021-03-31 02:33:40 +0200 <int-e> since split never returns an empty list
2021-03-31 02:33:52 +0200 <koz_> GHC doesn't believe me though.
2021-03-31 02:34:07 +0200 <koz_> I tried reimplementing this using constructs I understand, and GHC says I have an incomplete match.
2021-03-31 02:34:09 +0200 <int-e> sure, that's not surprising. it's still true
2021-03-31 02:34:53 +0200 <monochrom> Right, this is an external reasoning based on the base case producing a non-empty list so the recursion produces a non-empty list by induction.
2021-03-31 02:35:26 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
2021-03-31 02:35:32 +0200 <koz_> So the honest type of split would be (a -> Bool) -> [a] -> NonEmpty [a] or so?
2021-03-31 02:35:50 +0200 <infinisil> Yeah I think so
2021-03-31 02:36:03 +0200 <monochrom> -fno-warn-obviously-total-functions
2021-03-31 02:36:11 +0200usr25(~usr25@unaffiliated/usr25) (Quit: Leaving)
2021-03-31 02:36:13 +0200 <infinisil> > words ""
2021-03-31 02:36:14 +0200 <lambdabot> []
2021-03-31 02:36:21 +0200 <infinisil> The words function unfortunately doesn't work like that
2021-03-31 02:36:42 +0200 <koz_> monochrom: Is that you being sarcastic or is that an actual option? :P
2021-03-31 02:36:49 +0200 <monochrom> joke
2021-03-31 02:37:00 +0200 <koz_> I figured, but had to be sure.
2021-03-31 02:37:11 +0200Guest55480(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 268 seconds)
2021-03-31 02:37:14 +0200 <monochrom> And satire on warnings of all sorts of non-problems
2021-03-31 02:37:58 +0200 <int-e> Hmm not sure I'd call that unfortunate. `word` is lossy, but it's a feature.
2021-03-31 02:38:03 +0200 <infinisil> koz_: I'd add a final pattern match returning `error "Can't happen"`
2021-03-31 02:38:03 +0200 <monochrom> Seriously IMO a warning on "do { foo; bar ; zed }" is ridiculous.
2021-03-31 02:38:23 +0200 <infinisil> monochrom: What's the warning/
2021-03-31 02:38:25 +0200 <koz_> infinisil: Lol, fair.
2021-03-31 02:38:25 +0200 <infinisil> ?
2021-03-31 02:38:26 +0200 <monochrom> i.e., a warning on using "foo" instead of "pat <- foo"
2021-03-31 02:38:55 +0200 <infinisil> monochrom: Doesn't it only do that if pattern wouldn't be ()?
2021-03-31 02:38:55 +0200 <monochrom> I forgot the exact option name because good riddance.
2021-03-31 02:39:13 +0200 <monochrom> Oh here is what I think is hypocritic about that.
2021-03-31 02:39:39 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 268 seconds)
2021-03-31 02:39:42 +0200 <monochrom> Suppose I have "data U = U". So it's should be of the same status as (), right? RIGHT?
2021-03-31 02:40:08 +0200 <monochrom> So if foo :: IO U, I'm warned; if foo :: IO (), I'm not warned.
2021-03-31 02:40:13 +0200 <monochrom> WHAT KIND OF LOGIC IS THAT
2021-03-31 02:40:29 +0200 <monochrom> Answer: Hypocrisy.
2021-03-31 02:41:37 +0200 <int-e> thought shalt have no other unit type before ()
2021-03-31 02:41:45 +0200 <int-e> thou
2021-03-31 02:41:48 +0200 <monochrom> OK, this and other warnings are not in the default. They are "merely" in -Wall.
2021-03-31 02:41:51 +0200 <int-e> stupid auto-correcting fingers
2021-03-31 02:42:05 +0200 <infinisil> -Wall -Werror all the way
2021-03-31 02:42:10 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 02:42:33 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 02:42:53 +0200 <infinisil> I haven't tried out -Weverything but now I want to
2021-03-31 02:42:59 +0200 <monochrom> So over the years I gathered that -Wall is full of these useless warnings. Or worse, halfly full of these useless warnings and so the value of -Wall is devalued.
2021-03-31 02:43:21 +0200 <monochrom> This phenomenon is well-known as the cry-wolf fable.
2021-03-31 02:43:45 +0200 <infinisil> I'm so far quite pleased by -Wall
2021-03-31 02:44:00 +0200 <monochrom> It means that if -Wall cries wolf false alarm too many times, when one day it actually finds a real issue, you won't notice.
2021-03-31 02:44:48 +0200 <infinisil> Honestly, I can't really relate
2021-03-31 02:44:57 +0200 <infinisil> Maybe I'm not doing fancy enough things to trigger the false alarms
2021-03-31 02:45:01 +0200 <int-e> monochrom: so to make warnings useful, you fix all the warnings that you don't disable, even if it makes the code less readable :-/
2021-03-31 02:45:13 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-03-31 02:45:17 +0200enya[m](enyaismatr@gateway/shell/matrix.org/x-wlpxchczeengvguo)
2021-03-31 02:46:11 +0200andi-(~andi-@NixOS/user/andi-) (Ping timeout: 248 seconds)
2021-03-31 02:51:25 +0200obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl)
2021-03-31 02:51:36 +0200 <int-e> infinisil: well that split code is an example of code that is correct, but in order to squelch the warning you either need to change the type (inducing conversions between NonEmpty [a] and [a] down the line) or add a useless line of code like | [] <- split f xs = error "impossible case"
2021-03-31 02:52:03 +0200 <int-e> infinisil: and I don't think that particular code is fancy at all.
2021-03-31 02:52:11 +0200 <monochrom> In the split case, NonEmpty is the way to go.
2021-03-31 02:52:43 +0200 <infinisil> Hmm, though I'm with the compiler there. There's no way for it to infer that the function can't return an empty list
2021-03-31 02:52:49 +0200 <int-e> I can't bring myself to like NonEmpty.
2021-03-31 02:53:07 +0200 <int-e> infinisil: oh sure, I don't expect it to figure that one out either
2021-03-31 02:53:40 +0200 <monochrom> In the absence of NonEmpty, I wouldn't mind adding a final clause "= error "should not happen"" either. At least it benefits human readers.
2021-03-31 02:53:45 +0200 <int-e> and the particular warning... missing cases... tends to be useful, so I might actually add the useless case instead.
2021-03-31 02:54:48 +0200 <koz_> I agree with the useless case.
2021-03-31 02:54:59 +0200 <koz_> I'd rather not disable such a useful warning for a whole module cause of one function.
2021-03-31 02:56:37 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
2021-03-31 02:57:17 +0200 <monochrom> But I would do it for human readers, not for -Wall
2021-03-31 02:58:19 +0200carlomagno(~cararell@148.87.23.5) (Quit: Leaving.)
2021-03-31 03:00:04 +0200obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2021-03-31 03:00:53 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 03:01:54 +0200andi-(~andi-@NixOS/user/andi-)
2021-03-31 03:03:01 +0200conal(~conal@64.71.133.70)
2021-03-31 03:05:39 +0200eldritch(~eldritch@unaffiliated/eldritch)
2021-03-31 03:06:02 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-03-31 03:06:38 +0200 <DigitalKiwi> but would you do it for -Werror?
2021-03-31 03:07:23 +0200 <monochrom> No
2021-03-31 03:07:40 +0200kiweun(~kiweun@2607:fea8:2a62:9600:8050:1fea:250d:e11e)
2021-03-31 03:07:56 +0200 <monochrom> If Buddha is in my way, I kill Buddha. If -Werror is in my way, I kill -Werror.
2021-03-31 03:08:04 +0200 <DigitalKiwi> ;(
2021-03-31 03:08:52 +0200 <monochrom> But I would write a long comment to explain or remind the reader why there is a certain syntactic case doesn't need to be handled.
2021-03-31 03:09:12 +0200 <DigitalKiwi> in soviet russia Buddha/-Werror kill you
2021-03-31 03:09:52 +0200solvr(57e3c46d@87.227.196.109)
2021-03-31 03:09:53 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
2021-03-31 03:10:06 +0200 <monochrom> And if I'm willing to write that long comment, adding a short '= error "doesn't happen"' is no big deal. I can do that for the reader.
2021-03-31 03:10:10 +0200Tario(~Tario@201.192.165.173) (Remote host closed the connection)
2021-03-31 03:10:44 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-03-31 03:11:51 +0200whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-03-31 03:12:06 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 03:12:36 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:14ea:f44:a077:bc09)
2021-03-31 03:15:46 +0200Erutuon_(~Erutuon@97-116-27-119.mpls.qwest.net) (Ping timeout: 240 seconds)
2021-03-31 03:17:54 +0200Erutuon_(~Erutuon@97-116-27-119.mpls.qwest.net)
2021-03-31 03:21:01 +0200carlomagno(~cararell@148.87.23.6)
2021-03-31 03:21:20 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2021-03-31 03:29:39 +0200ddellacosta(~ddellacos@86.106.143.144)
2021-03-31 03:30:55 +0200Tario(~Tario@201.192.165.173)
2021-03-31 03:37:12 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 03:37:54 +0200ddellacosta(~ddellacos@86.106.143.144) (Remote host closed the connection)
2021-03-31 03:38:04 +0200ddellacosta(~ddellacos@86.106.143.144)
2021-03-31 03:38:41 +0200ddellacosta(~ddellacos@86.106.143.144) (Remote host closed the connection)
2021-03-31 03:39:10 +0200ddellacosta(~ddellacos@86.106.143.144)
2021-03-31 03:39:29 +0200stree(~stree@68.36.8.116) (Ping timeout: 268 seconds)
2021-03-31 03:41:26 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 03:43:39 +0200 <styledash> l
2021-03-31 03:43:47 +0200ddellacosta(~ddellacos@86.106.143.144) (Ping timeout: 268 seconds)
2021-03-31 03:47:26 +0200Guest54397shapr
2021-03-31 03:47:38 +0200shapr(~shapr@162.243.9.169) (Changing host)
2021-03-31 03:47:38 +0200shapr(~shapr@haskell/developer/shapr)
2021-03-31 03:49:40 +0200lewky(~lewky@159.65.37.240) (Ping timeout: 252 seconds)
2021-03-31 03:51:11 +0200elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
2021-03-31 03:52:01 +0200stree(~stree@68.36.8.116)
2021-03-31 03:57:01 +0200Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-03-31 03:57:05 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2021-03-31 03:58:28 +0200Tario(~Tario@201.192.165.173)
2021-03-31 04:00:59 +0200xff0x(~xff0x@2001:1a81:52a1:b000:b050:426f:481c:717d) (Ping timeout: 252 seconds)
2021-03-31 04:01:08 +0200rajivr(uid269651@gateway/web/irccloud.com/x-vhalmegvcwkpzygm)
2021-03-31 04:01:45 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 04:02:06 +0200RusAlex(~Chel@unaffiliated/rusalex) (Ping timeout: 240 seconds)
2021-03-31 04:02:33 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 04:02:55 +0200xff0x(~xff0x@2001:1a81:52d9:7900:960c:6609:3a45:b460)
2021-03-31 04:04:38 +0200FinnElija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-03-31 04:04:38 +0200finn_elijaGuest1130
2021-03-31 04:04:38 +0200FinnElijafinn_elija
2021-03-31 04:05:13 +0200howdoi(uid224@gateway/web/irccloud.com/x-jjboehqzacazreox) (Quit: Connection closed for inactivity)
2021-03-31 04:06:11 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 04:07:57 +0200Guest1130(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds)
2021-03-31 04:08:37 +0200urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2021-03-31 04:10:17 +0200Vadrigar_(~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de)
2021-03-31 04:10:46 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 04:10:51 +0200viluon(uid453725@gateway/web/irccloud.com/x-fqedziywpebcqkui) (Quit: Connection closed for inactivity)
2021-03-31 04:13:34 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 04:14:58 +0200haritz(~hrtz@unaffiliated/haritz) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
2021-03-31 04:15:21 +0200Vadrigar_(~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
2021-03-31 04:17:08 +0200drakonis(~drakonis@unaffiliated/drakonis)
2021-03-31 04:17:49 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 04:18:20 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 268 seconds)
2021-03-31 04:20:40 +0200carlomagno(~cararell@148.87.23.6) (Remote host closed the connection)
2021-03-31 04:20:46 +0200drbean_(~drbean@TC210-63-209-55.static.apol.com.tw)
2021-03-31 04:21:00 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-uawxrfrpxwexcklr) (Quit: Connection closed for inactivity)
2021-03-31 04:22:38 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 268 seconds)
2021-03-31 04:24:00 +0200conal(~conal@64.71.133.70)
2021-03-31 04:24:04 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-03-31 04:27:02 +0200ezrakilty(~ezrakilty@97-113-35-199.tukw.qwest.net)
2021-03-31 04:27:23 +0200average(uid473595@gateway/web/irccloud.com/x-mdzvkbciicshchec) (Quit: Connection closed for inactivity)
2021-03-31 04:30:50 +0200jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-03-31 04:33:21 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 04:33:53 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 04:34:33 +0200conal(~conal@64.71.133.70)
2021-03-31 04:38:04 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 252 seconds)
2021-03-31 04:42:17 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1)
2021-03-31 04:44:49 +0200ezrakilty(~ezrakilty@97-113-35-199.tukw.qwest.net) (Remote host closed the connection)
2021-03-31 04:45:32 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 04:45:34 +0200shad0w_(a0ca25aa@160.202.37.170)
2021-03-31 04:50:07 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
2021-03-31 04:50:21 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 260 seconds)
2021-03-31 04:51:22 +0200ddellacosta(~ddellacos@86.106.143.66)
2021-03-31 04:55:28 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:14ea:f44:a077:bc09) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 04:56:02 +0200ddellacosta(~ddellacos@86.106.143.66) (Ping timeout: 252 seconds)
2021-03-31 04:56:49 +0200lewky(~lewky@159.65.37.240)
2021-03-31 04:57:00 +0200DTZUZU_(~DTZUZO@207.81.119.43)
2021-03-31 04:57:05 +0200RusAlex(~Chel@unaffiliated/rusalex)
2021-03-31 04:58:59 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 246 seconds)
2021-03-31 05:02:29 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 05:04:08 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-03-31 05:16:46 +0200motherfsck(~motherfsc@unaffiliated/motherfsck) (Ping timeout: 240 seconds)
2021-03-31 05:17:58 +0200drbean_(~drbean@TC210-63-209-55.static.apol.com.tw) (Ping timeout: 240 seconds)
2021-03-31 05:22:32 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-03-31 05:23:02 +0200motherfsck(~motherfsc@unaffiliated/motherfsck)
2021-03-31 05:23:07 +0200matryoshka`(~matryoshk@2606:6080:1002:8:3285:30e:de43:8809)
2021-03-31 05:24:06 +0200matryoshka(~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) (Read error: Connection reset by peer)
2021-03-31 05:25:21 +0200dpl(~dpl@77.121.78.163) (Ping timeout: 260 seconds)
2021-03-31 05:31:03 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 05:32:09 +0200ddellaco_(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 05:33:01 +0200poljar1(~poljar@93-139-86-101.adsl.net.t-com.hr)
2021-03-31 05:35:33 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 260 seconds)
2021-03-31 05:36:02 +0200poljar(~poljar@93-143-162-187.adsl.net.t-com.hr) (Ping timeout: 268 seconds)
2021-03-31 05:36:20 +0200Kaiepi(~Kaiepi@47.54.252.148) (Remote host closed the connection)
2021-03-31 05:36:24 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-03-31 05:36:26 +0200ddellaco_(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-03-31 05:36:38 +0200Kaiepi(~Kaiepi@47.54.252.148)
2021-03-31 05:39:35 +0200matryoshka`(~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) (Quit: ZNC 1.8.2 - https://znc.in)
2021-03-31 05:44:58 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 05:45:26 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2021-03-31 05:46:16 +0200_xor(~xor@74.215.46.133) (Quit: WeeChat 3.1)
2021-03-31 05:56:50 +0200raym(~ray@115.187.32.14)
2021-03-31 05:59:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 05:59:40 +0200_xor(~xor@74.215.46.133)
2021-03-31 06:00:19 +0200Alleria(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com)
2021-03-31 06:00:41 +0200stree(~stree@68.36.8.116) (Ping timeout: 268 seconds)
2021-03-31 06:00:42 +0200AlleriaGuest30185
2021-03-31 06:01:23 +0200borne(~fritjof@200116b864cfc800f7ed9fd86a2491f0.dip.versatel-1u1.de)
2021-03-31 06:01:41 +0200frozenErebus(~frozenEre@37.231.244.249) (Quit: Lost terminal)
2021-03-31 06:01:55 +0200electricityZZZZ(~electrici@135-180-3-82.static.sonic.net) (Ping timeout: 268 seconds)
2021-03-31 06:03:07 +0200Kaeipi(~Kaiepi@47.54.252.148)
2021-03-31 06:03:09 +0200Kaiepi(~Kaiepi@47.54.252.148) (Remote host closed the connection)
2021-03-31 06:03:38 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 06:04:31 +0200Guest30185(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com) (Ping timeout: 245 seconds)
2021-03-31 06:07:01 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 06:08:14 +0200Rudd0(~Rudd0@185.189.115.103)
2021-03-31 06:08:47 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 06:12:01 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 06:12:25 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 268 seconds)
2021-03-31 06:13:07 +0200stree(~stree@68.36.8.116)
2021-03-31 06:13:53 +0200borne(~fritjof@200116b864cfc800f7ed9fd86a2491f0.dip.versatel-1u1.de) (Ping timeout: 250 seconds)
2021-03-31 06:15:00 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 06:15:33 +0200borne(~fritjof@200116b86411e500998fce1c43ef4e0a.dip.versatel-1u1.de)
2021-03-31 06:16:26 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-03-31 06:20:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
2021-03-31 06:20:49 +0200Nobita(ca0e7816@202.14.120.22)
2021-03-31 06:21:19 +0200Nobita(ca0e7816@202.14.120.22) (Client Quit)
2021-03-31 06:23:38 +0200deviantfero(~deviantfe@190.150.27.58) (Ping timeout: 260 seconds)
2021-03-31 06:24:02 +0200 <edwardk> these linear logic proofs are making me go cross-eyed
2021-03-31 06:24:58 +0200 <edwardk> https://github.com/ekmett/linear-logic/blob/main/src/Linear/Logic/Functor.hs#L1270
2021-03-31 06:27:38 +0200alx741(~alx741@181.196.68.106) (Quit: alx741)
2021-03-31 06:30:24 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 06:30:30 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:cdc8:88ee:4ef9:ae5c)
2021-03-31 06:33:27 +0200JanBessa1(~JanB@85-22-26-176.ip.dokom21.de)
2021-03-31 06:33:37 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 06:35:27 +0200 <glguy> edwardk, how much of that is blindly following the types, and how much is creative?
2021-03-31 06:35:51 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 268 seconds)
2021-03-31 06:37:06 +0200JanBessai(~JanB@85-22-13-230.ip.dokom21.de) (Ping timeout: 260 seconds)
2021-03-31 06:37:30 +0200 <edwardk> it actually gets difficult at times, but a lot os blind type following
2021-03-31 06:37:38 +0200 <edwardk> a little tactic engine would knock these out fast
2021-03-31 06:38:02 +0200 <nshepperd2> is this coq but in haskell
2021-03-31 06:40:06 +0200 <edwardk> nshepperd2: in https://github.com/ekmett/linear-logic/blob/main/src/Linear/Logic/Internal.hs#L54 i define a 'full' intuitionistic linear logic suite using the limited linear haskell a %1 -> b arrow as half of my arrow, and by attaching involutively the notion of what evidence it takes to refute a given proof.
2021-03-31 06:40:31 +0200 <edwardk> then once i have that, and build with and par, which are the missing connectives, its off to the races.
2021-03-31 06:41:05 +0200 <edwardk> then i wanted a place to put all my boilerplate proofs, so i started adding bifunctors, monoidal category structure, etc.
2021-03-31 06:41:30 +0200 <edwardk> but once i had that it was somewhat disappointing that the proofs couldn't flow back into the arguments for bimap, etc.
2021-03-31 06:41:45 +0200 <edwardk> because they were external to the logic program itself.
2021-03-31 06:41:53 +0200 <edwardk> but i was able to internalize them too
2021-03-31 06:42:10 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
2021-03-31 06:43:09 +0200 <edwardk> glguy: as for hard parts, i'd say it takes a good deal of creativity to figure out how to plumb apartness information around when you get more complicated proofs involving isos
2021-03-31 06:43:25 +0200 <edwardk> using holes is critical to getting anything done
2021-03-31 06:43:48 +0200 <edwardk> lenses/traversals are coming soon
2021-03-31 06:43:50 +0200 <edwardk> =)
2021-03-31 06:43:56 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 06:44:24 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 06:46:04 +0200Wuzzy(~Wuzzy@p57a2fb8a.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-03-31 06:46:47 +0200 <edwardk> the type of https://github.com/ekmett/linear-logic/blob/main/src/Linear/Logic/Functor.hs#L853 was what fmap' used to be, but that top level arrow wasn't contradictable.
2021-03-31 06:47:50 +0200acidjnk_new(~acidjnk@p200300d0c72b9549c1d5f2f7c60f6477.dip0.t-ipconnect.de)
2021-03-31 06:48:38 +0200 <edwardk> glguy: i was particularly proud of figuring out a way to overload lollipops to work with actual function application, while still letting me work backwards through the refutations because refutations for lollipops and haskell functions are isomorphic, and the ones for unrestricted haskell functions can also fit in
2021-03-31 06:48:51 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
2021-03-31 06:51:11 +0200egorbelibov(55f7af94@bl14-175-148.dsl.telepac.pt)
2021-03-31 06:51:31 +0200JanBessa1(~JanB@85-22-26-176.ip.dokom21.de) (Quit: leaving)
2021-03-31 06:51:56 +0200kiweun(~kiweun@2607:fea8:2a62:9600:8050:1fea:250d:e11e) (Remote host closed the connection)
2021-03-31 06:52:37 +0200egorbelibov(55f7af94@bl14-175-148.dsl.telepac.pt) ()
2021-03-31 06:53:03 +0200elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 246 seconds)
2021-03-31 06:53:50 +0200raym(~ray@115.187.32.14) (Quit: leaving)
2021-03-31 06:54:40 +0200solvr(57e3c46d@87.227.196.109) (Quit: Connection closed)
2021-03-31 06:55:29 +0200acidjnk_new(~acidjnk@p200300d0c72b9549c1d5f2f7c60f6477.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-03-31 06:56:52 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 07:02:27 +0200ezrakilty(~ezrakilty@97-113-35-199.tukw.qwest.net)
2021-03-31 07:04:58 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 07:07:20 +0200Z3ph0d(~peter@061092022201.ctinets.com) (Quit: Leaving)
2021-03-31 07:10:24 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Quit: gone to sleep. ZZZzzz…)
2021-03-31 07:10:55 +0200mawk(mawk@serveur.io)
2021-03-31 07:15:07 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
2021-03-31 07:15:42 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2021-03-31 07:17:02 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 07:19:41 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 07:20:46 +0200borne(~fritjof@200116b86411e500998fce1c43ef4e0a.dip.versatel-1u1.de) (Ping timeout: 245 seconds)
2021-03-31 07:20:46 +0200berberman(~berberman@unaffiliated/berberman) (Ping timeout: 258 seconds)
2021-03-31 07:20:52 +0200berberman_(~berberman@unaffiliated/berberman)
2021-03-31 07:21:23 +0200conal(~conal@64.71.133.70)
2021-03-31 07:22:22 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in)
2021-03-31 07:23:34 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 07:24:00 +0200ddellacosta(~ddellacos@86.106.143.118)
2021-03-31 07:24:02 +0200Lowl3v3l(~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de)
2021-03-31 07:24:09 +0200Feuermagier_(~CatWithMo@gateway/tor-sasl/catwithmoustache) (Quit: Leaving)
2021-03-31 07:24:25 +0200ezrakilty(~ezrakilty@97-113-35-199.tukw.qwest.net) (Remote host closed the connection)
2021-03-31 07:24:32 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 252 seconds)
2021-03-31 07:25:22 +0200CatWithMoustache(~CatWithMo@gateway/tor-sasl/catwithmoustache)
2021-03-31 07:28:34 +0200ddellacosta(~ddellacos@86.106.143.118) (Ping timeout: 252 seconds)
2021-03-31 07:33:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 07:35:30 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 260 seconds)
2021-03-31 07:36:38 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 07:37:23 +0200sord937(~sord937@gateway/tor-sasl/sord937)
2021-03-31 07:38:21 +0200raym(~ray@115.187.32.14)
2021-03-31 07:38:21 +0200acidjnk_new(~acidjnk@p200300d0c72b9549c1d5f2f7c60f6477.dip0.t-ipconnect.de)
2021-03-31 07:40:37 +0200xff0x(~xff0x@2001:1a81:52d9:7900:960c:6609:3a45:b460) (Ping timeout: 276 seconds)
2021-03-31 07:41:08 +0200xff0x(~xff0x@2001:1a81:52d9:7900:6b0c:e3df:c0c:8727)
2021-03-31 07:45:00 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 07:47:31 +0200v01d4lph4(~v01d4lph4@223.190.20.92)
2021-03-31 07:48:18 +0200v01d4lph4(~v01d4lph4@223.190.20.92) (Remote host closed the connection)
2021-03-31 07:48:30 +0200v01d4lph4(~v01d4lph4@223.190.20.92)
2021-03-31 07:49:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2021-03-31 07:57:40 +0200plutoniix(~q@184.82.196.30)
2021-03-31 07:57:51 +0200ddellacosta(~ddellacos@86.106.143.27)
2021-03-31 07:59:46 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 08:00:24 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-03-31 08:02:33 +0200ddellacosta(~ddellacos@86.106.143.27) (Ping timeout: 260 seconds)
2021-03-31 08:02:46 +0200Alleria_(~AllahuAkb@2603-7000-3040-0000-f003-eca1-8bf8-0ed7.res6.spectrum.com) (Read error: Connection reset by peer)
2021-03-31 08:03:30 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2021-03-31 08:05:44 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 08:05:59 +0200 <CatWithMoustache> how do I use an element twice in a list comprehension?
2021-03-31 08:06:09 +0200 <CatWithMoustache> so x : x : xs
2021-03-31 08:06:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-03-31 08:06:52 +0200Alleria_(~AllahuAkb@2603-7000-3040-0000-501f-0d46-1115-b500.res6.spectrum.com)
2021-03-31 08:07:23 +0200malumore(~malumore@151.62.117.70)
2021-03-31 08:07:54 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 08:09:30 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 08:09:37 +0200 <edwardk> CatWithMoustache: not sure what you are asking. you want a pattern or a comprehension that returns one or what?
2021-03-31 08:10:31 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 08:10:38 +0200 <edwardk> > let foo (x:y:zs) | x == y = "hit" | otherwise = "miss" in foo "oooh"
2021-03-31 08:10:41 +0200 <lambdabot> "hit"
2021-03-31 08:11:07 +0200 <edwardk> there's no syntax for a literal match with a previous variable per se. though you can use view patterns to fake it
2021-03-31 08:12:38 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 08:12:42 +0200 <edwardk> > let foo (x:((==) x -> True):zs) = "hit"; foo (x:y:zs) = "miss" in foo "oooh"
2021-03-31 08:12:44 +0200 <lambdabot> "hit"
2021-03-31 08:12:45 +0200CatWithMoustache(~CatWithMo@gateway/tor-sasl/catwithmoustache) (Ping timeout: 240 seconds)
2021-03-31 08:12:59 +0200 <edwardk> but for actual comprehensions you can use filter equations
2021-03-31 08:13:08 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 08:13:57 +0200 <edwardk> > [ (x,y) | x <- [1..3], y <- [1..3] , x < y ]
2021-03-31 08:13:59 +0200 <lambdabot> [(1,2),(1,3),(2,3)]
2021-03-31 08:14:29 +0200 <edwardk> replacing < with == there might be what you asked for. but its hard to parse your meaning from that one line
2021-03-31 08:14:59 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-03-31 08:15:05 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 08:15:28 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 08:15:39 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 08:17:33 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 08:18:29 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 08:18:52 +0200CatWithMoustache(~CatWithMo@gateway/tor-sasl/catwithmoustache)
2021-03-31 08:20:21 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 08:20:22 +0200unyu(~pyon@unaffiliated/pyon) (Quit: brb)
2021-03-31 08:20:29 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 08:20:50 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 08:20:59 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-03-31 08:21:00 +0200stree(~stree@68.36.8.116) (Ping timeout: 252 seconds)
2021-03-31 08:23:22 +0200malumore(~malumore@151.62.117.70) (Remote host closed the connection)
2021-03-31 08:24:45 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds)
2021-03-31 08:25:21 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 08:28:01 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 08:30:46 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 08:31:44 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 08:32:06 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 240 seconds)
2021-03-31 08:32:40 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 08:32:53 +0200unyu(~pyon@unaffiliated/pyon)
2021-03-31 08:33:43 +0200stree(~stree@68.36.8.116)
2021-03-31 08:34:12 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 246 seconds)
2021-03-31 08:36:03 +0200 <Axman6> CatWithMoustache: can you elaborate on what you want? we haven't been able to make sense of your question
2021-03-31 08:36:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 260 seconds)
2021-03-31 08:37:46 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-03-31 08:37:57 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 268 seconds)
2021-03-31 08:39:05 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362)
2021-03-31 08:40:34 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 08:40:54 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-03-31 08:41:05 +0200jakalx(~jakalx@base.jakalx.net) ("Error from remote client")
2021-03-31 08:43:36 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 08:44:38 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.1 - https://znc.in)
2021-03-31 08:45:30 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2021-03-31 08:48:10 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:cdc8:88ee:4ef9:ae5c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 08:49:32 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2021-03-31 08:49:56 +0200quinn(~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
2021-03-31 08:51:08 +0200 <xsperry> CatWithMoustache, something like this?
2021-03-31 08:51:08 +0200 <xsperry> > [x : x : [] | x <- [1,2,3]]
2021-03-31 08:51:10 +0200 <lambdabot> [[1,1],[2,2],[3,3]]
2021-03-31 08:51:20 +0200 <CatWithMoustache> Axman6, I have a list comprehension, [x, x * 34 | x <- xs ] where I want to put x twice
2021-03-31 08:51:38 +0200 <CatWithMoustache> flattened, so just an int list
2021-03-31 08:52:11 +0200 <Axman6> > let xs = [1, 10, 100] in [ y | x <- xs, y <- [x, x*34]]
2021-03-31 08:52:13 +0200 <lambdabot> [1,34,10,340,100,3400]
2021-03-31 08:53:20 +0200 <xsperry> > concat [[x, x * 34] | x <- [1,2,3] ]
2021-03-31 08:53:21 +0200 <lambdabot> [1,34,2,68,3,102]
2021-03-31 08:53:31 +0200Jd007(~Jd007@162.156.11.151) (Quit: Jd007)
2021-03-31 08:55:36 +0200 <xsperry> > concatMap (\x -> [x, x*34]) [1,2,3]
2021-03-31 08:55:38 +0200 <lambdabot> [1,34,2,68,3,102]
2021-03-31 08:56:15 +0200Gurkenglas(~Gurkengla@unaffiliated/gurkenglas)
2021-03-31 08:56:21 +0200andreas31(~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 240 seconds)
2021-03-31 08:56:46 +0200 <Axman6> so many different but requivalent implementations, it's almost like there's some pattern here...
2021-03-31 08:57:15 +0200 <Axman6> > [1,10,100] >>= \x -> [x, x*34]
2021-03-31 08:57:16 +0200Tario(~Tario@201.192.165.173)
2021-03-31 08:57:16 +0200 <lambdabot> [1,34,10,340,100,3400]
2021-03-31 08:57:36 +0200coot(~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
2021-03-31 08:58:45 +0200 <[exa]> > (*) <$> [1,10,100] <*> [1,34]
2021-03-31 08:58:48 +0200 <lambdabot> [1,34,10,340,100,3400]
2021-03-31 09:00:20 +0200pavonia(~user@unaffiliated/siracusa) (Quit: Bye!)
2021-03-31 09:00:26 +0200Franciman(~francesco@host-79-53-62-46.retail.telecomitalia.it)
2021-03-31 09:01:50 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de)
2021-03-31 09:02:40 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-03-31 09:06:11 +0200molehillish(~molehilli@2600:8800:8d06:1800:b177:1e40:d97b:578c)
2021-03-31 09:07:12 +0200raym(~ray@115.187.32.14) (Read error: Connection reset by peer)
2021-03-31 09:08:02 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 09:08:31 +0200unyu(~pyon@unaffiliated/pyon) (Quit: brb)
2021-03-31 09:08:55 +0200 <gnumonic> I'm writing lenses for kind-indexed GADTs w/ singletons. It doesn't violate any lens laws if I write "conditional" lenses with setters that just return the original object if some dependently typed predicate fails to obtain, right?
2021-03-31 09:09:35 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de) (Ping timeout: 246 seconds)
2021-03-31 09:09:40 +0200raym(~ray@115.187.32.14)
2021-03-31 09:09:56 +0200Tario(~Tario@201.192.165.173) (Ping timeout: 246 seconds)
2021-03-31 09:10:34 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 09:10:49 +0200molehillish(~molehilli@2600:8800:8d06:1800:b177:1e40:d97b:578c) (Ping timeout: 252 seconds)
2021-03-31 09:10:49 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-03-31 09:10:53 +0200 <edwardk> gnumonic: it does.
2021-03-31 09:11:13 +0200 <edwardk> the 'you get what you set' law is the one being violated here
2021-03-31 09:11:55 +0200Varis(~Tadas@unaffiliated/varis)
2021-03-31 09:12:03 +0200 <edwardk> now you can still use the library, and still compose these with other lenses that also violate this law and all that is lost is that you can sometimes see the fact that the lens library fuses everything into one pass over your structure, so the operations aren't necessarily canonical aside from they are the 'most fused' version.
2021-03-31 09:12:57 +0200rmk236(~lcampos@2a02:908:3616:b100:e41f:37c6:378f:6062)
2021-03-31 09:13:00 +0200 <edwardk> gnumonic: lenses are deliberately very dumb things.
2021-03-31 09:13:24 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 09:14:58 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-03-31 09:16:05 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 09:16:39 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-03-31 09:16:55 +0200 <gnumonic> Hm. Would it work if I wrote the lenses over some wrapper type that hides the kind index? So if I did something like :: forall a. Lens' (IndexedType 'KindIndex) SomeComponent where SomeComponent is a wrapper over Component 'ComponentKindIndex? Then I think I'd actually be getting out what I put in
2021-03-31 09:17:29 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 245 seconds)
2021-03-31 09:18:01 +0200 <edwardk> not sure, it at least sounds plausible.
2021-03-31 09:18:39 +0200mawk(mawk@serveur.io) (Ping timeout: 268 seconds)
2021-03-31 09:20:58 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2021-03-31 09:21:46 +0200 <CatWithMoustache> Axman6, can i do something similar to that with a map?
2021-03-31 09:22:00 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:23:34 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 09:25:48 +0200dpl(~dpl@77.121.78.163)
2021-03-31 09:26:13 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 09:26:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 09:30:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 09:30:25 +0200kadoban_(~mud@unaffiliated/kadoban)
2021-03-31 09:30:40 +0200kadoban__(~mud@unaffiliated/kadoban) (Ping timeout: 252 seconds)
2021-03-31 09:30:42 +0200 <gnumonic> Thanks btw edwardk. I'm trying to figure out if I can prove that the existential wrapper thing works, but it's good to know that even if it doesn't I can still use them and nothing will explode :)
2021-03-31 09:31:02 +0200tessier(~treed@kernel-panic/copilotco) (Ping timeout: 265 seconds)
2021-03-31 09:35:01 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 09:35:45 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-03-31 09:36:59 +0200mawk(mawk@serveur.io)
2021-03-31 09:39:35 +0200tessier(~treed@98.171.210.130)
2021-03-31 09:39:35 +0200tessier(~treed@98.171.210.130) (Changing host)
2021-03-31 09:39:35 +0200tessier(~treed@kernel-panic/copilotco)
2021-03-31 09:39:38 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
2021-03-31 09:39:53 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
2021-03-31 09:40:18 +0200Aquazi(uid312403@gateway/web/irccloud.com/x-afninwolvrucszhg)
2021-03-31 09:42:43 +0200 <gnumonic> Actually while I'm thinking about lenses, I wrote a function that "lifts" traversals over a (particular) kind-indexed GADT to operate over the GADT's existential wrapper. https://gist.github.com/gnumonik/a321defc6ba0af9035653f5ac3693c24 Is that like... an ok thing to do? (I just started using the not-just-record-accessors parts of lens recently)
2021-03-31 09:43:56 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck)
2021-03-31 09:46:06 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 09:46:44 +0200maroloccio(~marolocci@pousada3ja.mma.com.br)
2021-03-31 09:46:53 +0200kritzefitz(~kritzefit@fw-front.credativ.com)
2021-03-31 09:48:13 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:48:26 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 09:49:48 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:3745:335c:aec7:833d) (Ping timeout: 246 seconds)
2021-03-31 09:49:57 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de)
2021-03-31 09:51:41 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 09:52:40 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:52:57 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-03-31 09:52:57 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
2021-03-31 09:53:02 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com)
2021-03-31 09:53:08 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com) (Remote host closed the connection)
2021-03-31 09:53:11 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 09:53:20 +0200Sorny(~Sornaensi@79.142.232.102.static.router4.bolignet.dk)
2021-03-31 09:53:55 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:56:26 +0200Sorna(~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 260 seconds)
2021-03-31 09:57:25 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 09:58:26 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 09:59:04 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:59:04 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 09:59:29 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:01:35 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:1351:13b7:f6af:b97a)
2021-03-31 10:01:51 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:02:06 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
2021-03-31 10:02:12 +0200kirb1(~kirb@178.239.168.171) (Remote host closed the connection)
2021-03-31 10:02:56 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 10:03:28 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:03:51 +0200jacob11(~jacob1@185.163.110.108)
2021-03-31 10:03:54 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:04:13 +0200Wizek(uid191769@gateway/web/irccloud.com/x-auesgaiuendcjtgu)
2021-03-31 10:05:00 +0200thc202(~thc202@unaffiliated/thc202)
2021-03-31 10:05:20 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 10:05:48 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:06:11 +0200Guest55480(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de)
2021-03-31 10:07:21 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:08:12 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:09:00 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 10:09:11 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:09:40 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:11:35 +0200xourt(d4c620ea@212-198-32-234.rev.numericable.fr)
2021-03-31 10:14:06 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 10:14:33 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:14:47 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:14:47 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 10:15:37 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 10:17:26 +0200LiaoTao_(~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection)
2021-03-31 10:17:47 +0200LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao)
2021-03-31 10:18:14 +0200CatWithMoustache(~CatWithMo@gateway/tor-sasl/catwithmoustache) (Quit: Leaving)
2021-03-31 10:19:48 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-03-31 10:21:10 +0200ddellacosta(~ddellacos@86.106.143.144)
2021-03-31 10:23:02 +0200shad0w_(a0ca25aa@160.202.37.170) (Ping timeout: 240 seconds)
2021-03-31 10:25:32 +0200ddellacosta(~ddellacos@86.106.143.144) (Ping timeout: 246 seconds)
2021-03-31 10:26:06 +0200__minoru__shirae(~shiraeesh@109.166.57.161)
2021-03-31 10:26:33 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 10:27:15 +0200rmk236(~lcampos@2a02:908:3616:b100:e41f:37c6:378f:6062) (Ping timeout: 246 seconds)
2021-03-31 10:30:31 +0200andreas303(~andreas@gateway/tor-sasl/andreas303)
2021-03-31 10:32:15 +0200Sornaensis(~Sornaensi@077213203030.dynamic.telenor.dk)
2021-03-31 10:33:06 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 10:35:34 +0200Sorny(~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 252 seconds)
2021-03-31 10:35:56 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-03-31 10:39:55 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-03-31 10:42:06 +0200stree(~stree@68.36.8.116) (Ping timeout: 260 seconds)
2021-03-31 10:47:20 +0200tionos(~tionos@185.173.235.27)
2021-03-31 10:48:23 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 10:50:52 +0200Sorna(~Sornaensi@79.142.232.102.static.router4.bolignet.dk)
2021-03-31 10:53:31 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 258 seconds)
2021-03-31 10:53:31 +0200Sornaensis(~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 258 seconds)
2021-03-31 10:55:07 +0200stree(~stree@68.36.8.116)
2021-03-31 10:55:09 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
2021-03-31 10:56:11 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net)
2021-03-31 10:56:16 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-31 11:00:10 +0200invent[m](inventmatr@gateway/shell/matrix.org/x-szzijrqsdjgoiqjh) (Quit: Idle for 30+ days)
2021-03-31 11:00:30 +0200ddellacosta(~ddellacos@86.106.143.79)
2021-03-31 11:00:56 +0200fendor(~fendor@178.165.130.8.wireless.dyn.drei.com)
2021-03-31 11:01:03 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-03-31 11:02:19 +0200petersen(~petersen@redhat/juhp) (Quit: petersen)
2021-03-31 11:03:02 +0200petersen(~petersen@redhat/juhp)
2021-03-31 11:05:16 +0200ddellacosta(~ddellacos@86.106.143.79) (Ping timeout: 252 seconds)
2021-03-31 11:13:08 +0200astroanax(astroanax@gateway/shell/ircnow/x-himxsnhawzzdfgwb) (Quit: quit)
2021-03-31 11:15:01 +0200michalz(~user@185.246.204.56)
2021-03-31 11:16:54 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 11:17:42 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 11:19:01 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 11:19:29 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 11:19:51 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 11:19:57 +0200Guest28699mstruebing
2021-03-31 11:20:02 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 11:22:36 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 268 seconds)
2021-03-31 11:26:56 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw) (Remote host closed the connection)
2021-03-31 11:27:11 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw)
2021-03-31 11:27:30 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 11:32:24 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 11:32:27 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 268 seconds)
2021-03-31 11:34:03 +0200yunusaydin(4eb8266d@78.184.38.109)
2021-03-31 11:37:12 +0200dpl_(~dpl@77.121.78.163)
2021-03-31 11:37:13 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 258 seconds)
2021-03-31 11:37:59 +0200kuribas(~user@ptr-25vy0i8a26pq5ck0xjc.18120a2.ip6.access.telenet.be)
2021-03-31 11:39:08 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 258 seconds)
2021-03-31 11:39:47 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-03-31 11:40:06 +0200dpl(~dpl@77.121.78.163) (Ping timeout: 240 seconds)
2021-03-31 11:40:07 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-03-31 11:40:51 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-03-31 11:41:12 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2021-03-31 11:42:45 +0200Mrbuck(~Mrbuck@gateway/tor-sasl/mrbuck) (Ping timeout: 240 seconds)
2021-03-31 11:43:10 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de)
2021-03-31 11:43:10 +0200grumble(~Thunderbi@freenode/staff/grumble) (Quit: K-Lined)
2021-03-31 11:43:54 +0200NinjaTrappeur(~ninja@unaffiliated/ninjatrappeur) (Ping timeout: 246 seconds)
2021-03-31 11:45:29 +0200grumble(~Thunderbi@freenode/staff/grumble)
2021-03-31 11:45:33 +0200CaptainIRS(9d3386ab@157.51.134.171)
2021-03-31 11:45:38 +0200NinjaTrappeur(~ninja@unaffiliated/ninjatrappeur)
2021-03-31 11:48:40 +0200DavidEichmann(~david@47.27.93.209.dyn.plus.net)
2021-03-31 11:50:36 +0200neiluj(~jco@91-167-203-101.subs.proxad.net)
2021-03-31 11:50:36 +0200neiluj(~jco@91-167-203-101.subs.proxad.net) (Changing host)
2021-03-31 11:50:36 +0200neiluj(~jco@unaffiliated/neiluj)
2021-03-31 11:51:32 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-03-31 11:55:28 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 11:57:07 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 11:57:26 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 11:59:05 +0200 <CrabMan> I am working on a project which uses stack. Thus, it has a stack.yaml file. I use ghc from nix-shell, thus I need to pass `--nix` to stack. I can either pass it as an argument or include it in stack.yaml. But stack.yaml is used by everyone on the team and thus it's bad to add `nix: enable: true` there. Is there some kind of local version of stack.yaml that's used only on my computer?
2021-03-31 12:01:48 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:02:06 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 252 seconds)
2021-03-31 12:03:53 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:04:36 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:04:58 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:06:06 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 12:07:38 +0200maroloccio(~marolocci@pousada3ja.mma.com.br) (Ping timeout: 240 seconds)
2021-03-31 12:08:04 +0200rond_(594020a1@89-64-32-161.dynamic.chello.pl)
2021-03-31 12:09:09 +0200Xnuk-Xnuk
2021-03-31 12:11:18 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 268 seconds)
2021-03-31 12:13:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-03-31 12:14:12 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:14:50 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:17:05 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 258 seconds)
2021-03-31 12:19:58 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-03-31 12:20:00 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 12:20:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:22:04 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 12:24:27 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2021-03-31 12:24:42 +0200xourt(d4c620ea@212-198-32-234.rev.numericable.fr) (Ping timeout: 240 seconds)
2021-03-31 12:24:50 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2021-03-31 12:26:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-03-31 12:26:43 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 268 seconds)
2021-03-31 12:26:44 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:26:52 +0200sQVe(~sQVe@unaffiliated/sqve)
2021-03-31 12:27:07 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-03-31 12:27:59 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 12:29:26 +0200Erutuon_(~Erutuon@97-116-27-119.mpls.qwest.net) (Ping timeout: 260 seconds)
2021-03-31 12:30:13 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 12:30:48 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:31:13 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:31:53 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-03-31 12:32:15 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:33:41 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:36:22 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:36:39 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:37:25 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 12:37:34 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:37:38 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-03-31 12:37:39 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:38:03 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:38:11 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:38:23 +0200yunusaydin(4eb8266d@78.184.38.109) (Quit: Connection closed)
2021-03-31 12:38:43 +0200malumore(~malumore@151.62.117.70)
2021-03-31 12:39:11 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894)
2021-03-31 12:40:43 +0200ph88(~ph88@ip5f5af71a.dynamic.kabel-deutschland.de)
2021-03-31 12:40:49 +0200 <ph88> hi all
2021-03-31 12:41:02 +0200 <ph88> i have trouble to understand this compiler error https://bpa.st/X5DA could someone take a look ?
2021-03-31 12:41:02 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:211f:91f5:87eb:894) (Remote host closed the connection)
2021-03-31 12:41:58 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-03-31 12:42:45 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-03-31 12:42:50 +0200 <tomsmeding> ph88: what's the type of 'tryIOError'?
2021-03-31 12:43:46 +0200 <tomsmeding> ph88: oh right, perhaps you need to 'lift' the result of 'throwError'
2021-03-31 12:43:52 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:44:32 +0200 <tomsmeding> nah, that depends on the type of tryIOError
2021-03-31 12:45:38 +0200ph88(~ph88@ip5f5af71a.dynamic.kabel-deutschland.de) (Ping timeout: 240 seconds)
2021-03-31 12:47:55 +0200ph88(~ph88@2a02:8109:9e00:7e5c:80c0:e61:5729:782)
2021-03-31 12:48:04 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 12:49:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2021-03-31 12:49:18 +0200 <ph88> tomsmeding, hi, i got disconneted. saw you replied from the logs of this channel
2021-03-31 12:49:36 +0200 <ph88> tryIOError :: IO a -> IO (Either IOError a)
2021-03-31 12:49:47 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 12:49:53 +0200 <tomsmeding> how is tryIOError going to work in a non-IO monad then? it's only MonadIO, not real IO
2021-03-31 12:50:04 +0200 <tomsmeding> I admit the error is inscrutable though :p
2021-03-31 12:52:02 +0200 <ph88> https://bpa.st/26ZQ
2021-03-31 12:52:32 +0200 <tomsmeding> ph88: in general tryIOError can't work on arbitrary MonadIO monads, I believe; e.g. the unliftio version, https://hackage.haskell.org/package/unliftio-0.2.14/docs/UnliftIO-Exception.html#v:tryIO , requires MonadUnliftIO which doesn't allow state in the transformer stack: https://hackage.haskell.org/package/unliftio-core-0.2.0.1/docs/Control-Monad-IO-Unlift.html#t:Mona…
2021-03-31 12:52:34 +0200 <merijn> tomsmeding: "liftIO . tryIOError"? :p
2021-03-31 12:53:10 +0200 <merijn> eh
2021-03-31 12:53:31 +0200 <merijn> ph88: That code example won't use MonadError
2021-03-31 12:53:36 +0200 <tomsmeding> merijn: 'action' is in MonadIO, not in IO :p
2021-03-31 12:53:45 +0200 <merijn> Or rather, it will
2021-03-31 12:54:18 +0200 <tomsmeding> ph88: I think you can only make it work if 'action' is not of type 'm a' but of 'IO a', or more generically MonadUnliftIO m => m a but that won't help you much
2021-03-31 12:54:21 +0200 <merijn> tomsmeding: I misunderstood what you mean
2021-03-31 12:54:24 +0200 <merijn> *meant
2021-03-31 12:54:41 +0200 <merijn> MonadUnliftIO is profoundly dangerous, tbh
2021-03-31 12:55:13 +0200 <tomsmeding> the documentation for MonadUnliftIO states you can only really use it with ReaderT and IdentityT, in which case I guess it's safe?
2021-03-31 12:55:16 +0200 <tomsmeding> haven't used it myself
2021-03-31 12:55:36 +0200 <merijn> tomsmeding: The problem isn't "what is MonadUnliftIO" *that* is fine
2021-03-31 12:55:48 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 258 seconds)
2021-03-31 12:56:07 +0200 <merijn> tomsmeding: THe problem is that it is tempting for people to use the unlift stuff to run stuff in other threads/async
2021-03-31 12:56:18 +0200 <merijn> But unliftIO doesn't handle that nicely at all
2021-03-31 12:56:45 +0200 <merijn> For example, ResourceT is MonadUnliftIO, but when you introduce threads that ruins everything
2021-03-31 12:57:17 +0200 <tomsmeding> so basically the problem is that people write instances of MonadUnliftIO that are thread-unsafe?
2021-03-31 12:58:22 +0200 <merijn> Basically, the problem is that everyone who is not me or approved by me should be banned from writing concurrent code and threads >.<
2021-03-31 12:58:42 +0200 <tomsmeding> 🤔
2021-03-31 12:59:25 +0200ephemient(uid407513@gateway/web/irccloud.com/x-kreuktrxowjvrjcm)
2021-03-31 12:59:51 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-03-31 13:00:06 +0200Alleria(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com)
2021-03-31 13:00:30 +0200AlleriaGuest22240
2021-03-31 13:00:46 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds)
2021-03-31 13:01:14 +0200 <merijn> tomsmeding: https://github.com/snoyberg/conduit/issues/425
2021-03-31 13:02:09 +0200 <merijn> tomsmeding: A lot of the FPComplete ecosystem of "safe by default" libraries leave a considerable of undocumented uncertain pitfalls, tbh
2021-03-31 13:02:58 +0200peanut_(~peanut_@2a02:8388:a101:2600:1fde:3e3:f7a:66f2)
2021-03-31 13:02:58 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-03-31 13:03:51 +0200 <ph88> tomsmeding, thanks for your help. Your comment here was correct: I think you can only make it work if 'action' is not of type 'm a' but of 'IO a'
2021-03-31 13:04:03 +0200 <tomsmeding> merijn: hah! interesting
2021-03-31 13:04:15 +0200tomsmedinghas to go for a while
2021-03-31 13:04:32 +0200sQVe(~sQVe@unaffiliated/sqve) (Quit: Bye!)
2021-03-31 13:04:58 +0200Guest22240(~textual@2603-7000-3040-0000-1143-d148-dab6-7a8a.res6.spectrum.com) (Ping timeout: 276 seconds)
2021-03-31 13:05:31 +0200SaitamaPlus(uid272474@gateway/web/irccloud.com/x-fidhhtxlftktthli)
2021-03-31 13:06:57 +0200nf(~n@monade.li) (Quit: Fairfarren.)
2021-03-31 13:07:40 +0200nf(~n@monade.li)
2021-03-31 13:11:46 +0200lawid(~quassel@dslb-090-186-122-181.090.186.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2021-03-31 13:12:53 +0200lawid(~quassel@dslb-178-000-142-147.178.000.pools.vodafone-ip.de)
2021-03-31 13:13:25 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 13:14:26 +0200tefter(~bmaxa@62.240.24.69) (Ping timeout: 240 seconds)
2021-03-31 13:16:21 +0200stree(~stree@68.36.8.116)
2021-03-31 13:16:40 +0200tefter(~bmaxa@62.240.24.69)
2021-03-31 13:18:00 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
2021-03-31 13:18:02 +0200lawid(~quassel@dslb-178-000-142-147.178.000.pools.vodafone-ip.de) (Ping timeout: 260 seconds)
2021-03-31 13:19:31 +0200jamm__(~jamm@unaffiliated/jamm)
2021-03-31 13:22:57 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 246 seconds)
2021-03-31 13:23:32 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-03-31 13:24:19 +0200mouseghost(~draco@87-206-9-185.dynamic.chello.pl)
2021-03-31 13:24:19 +0200mouseghost(~draco@87-206-9-185.dynamic.chello.pl) (Changing host)
2021-03-31 13:24:19 +0200mouseghost(~draco@wikipedia/desperek)
2021-03-31 13:26:37 +0200dpl__(~dpl@77.121.78.163)
2021-03-31 13:28:25 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 13:29:22 +0200rond_(594020a1@89-64-32-161.dynamic.chello.pl) (Ping timeout: 240 seconds)
2021-03-31 13:29:26 +0200dpl_(~dpl@77.121.78.163) (Ping timeout: 240 seconds)
2021-03-31 13:29:29 +0200ph88^(~ph88@ip5f5af71a.dynamic.kabel-deutschland.de)
2021-03-31 13:30:40 +0200lawid(~quassel@dslb-090-186-122-181.090.186.pools.vodafone-ip.de)
2021-03-31 13:31:51 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 13:33:06 +0200ph88(~ph88@2a02:8109:9e00:7e5c:80c0:e61:5729:782) (Ping timeout: 246 seconds)
2021-03-31 13:33:36 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2021-03-31 13:33:43 +0200Alleria__(~textual@mskresolve-a.mskcc.org)
2021-03-31 13:35:03 +0200lawid_(~quassel@ipservice-092-219-052-236.092.219.pools.vodafone-ip.de)
2021-03-31 13:35:47 +0200lawid(~quassel@dslb-090-186-122-181.090.186.pools.vodafone-ip.de) (Ping timeout: 268 seconds)
2021-03-31 13:36:24 +0200 <ph88^> are debug builds slower than normal builds ?
2021-03-31 13:36:43 +0200o1lo01ol1o(~o1lo01ol1@bl7-88-181.dsl.telepac.pt)
2021-03-31 13:37:06 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 13:38:03 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-03-31 13:38:22 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net) (Remote host closed the connection)
2021-03-31 13:38:34 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 13:39:49 +0200 <merijn> ph88^: THe resulting code, you mean?
2021-03-31 13:40:19 +0200kafl(~kafl@unaffiliated/kafl)
2021-03-31 13:40:36 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2021-03-31 13:40:42 +0200 <ph88^> i mean the time waiting for GHC#
2021-03-31 13:41:00 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-03-31 13:41:58 +0200 <merijn> It should't?
2021-03-31 13:43:42 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2021-03-31 13:44:31 +0200matryoshka(~matryoshk@2606:6080:1002:8:3285:30e:de43:8809)
2021-03-31 13:44:37 +0200 <tomsmeding> ph88^: what do you mean by "debug build"? non-optimising, or also profiling?
2021-03-31 13:45:01 +0200 <ph88^> non optimising and profiling
2021-03-31 13:45:06 +0200 <tomsmeding> non-optimising should always be faster than, or at least as fast as, optimising
2021-03-31 13:45:13 +0200 <tomsmeding> but profiling may take a little longer, don't know about that
2021-03-31 13:45:39 +0200 <tomsmeding> that adds instrumentation that inhibits optimisations that may make the compiler run faster
2021-03-31 13:45:40 +0200 <ph88^> by the way is there a way to get string/text overloading with a type ? just because i would like to put a top level signature
2021-03-31 13:45:53 +0200 <tomsmeding> ph88^: IsString s => ... s ... ?
2021-03-31 13:45:57 +0200 <ph88^> oki
2021-03-31 13:46:03 +0200 <ph88^> thank you
2021-03-31 13:46:11 +0200 <tomsmeding> that overloads with a lot more than just String/Text though
2021-03-31 13:48:28 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 13:49:32 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de)
2021-03-31 13:50:38 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 246 seconds)
2021-03-31 13:50:43 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 13:50:45 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-03-31 13:52:45 +0200tmciver(~tmciver@cpe-172-101-40-226.maine.res.rr.com)
2021-03-31 13:53:33 +0200ddellacosta(~ddellacos@86.106.143.209)
2021-03-31 13:53:49 +0200plutoniix(~q@184.82.196.30) (Quit: Leaving)
2021-03-31 13:54:37 +0200orbeliboveg(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 13:55:01 +0200orbeliboveg(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 13:55:01 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 13:55:02 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 13:56:20 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 13:57:10 +0200 <ph88^> can i throw my own IOError ?
2021-03-31 13:57:59 +0200__minoru__shirae(~shiraeesh@109.166.57.161) (Ping timeout: 246 seconds)
2021-03-31 13:58:20 +0200ddellacosta(~ddellacos@86.106.143.209) (Ping timeout: 252 seconds)
2021-03-31 13:59:22 +0200 <ph88^> hhm scrap that question :p
2021-03-31 14:00:13 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 14:01:41 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
2021-03-31 14:02:53 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 246 seconds)
2021-03-31 14:02:58 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
2021-03-31 14:07:02 +0200geekosaur(82650c7a@130.101.12.122)
2021-03-31 14:08:02 +0200rmk236(~lcampos@2a02:908:3616:b100:96f1:d4a5:d139:4f48)
2021-03-31 14:09:46 +0200viluon(uid453725@gateway/web/irccloud.com/x-uyquvhnfkmiqllxw)
2021-03-31 14:10:32 +0200solvr(57e3c46d@87.227.196.109)
2021-03-31 14:11:25 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 14:12:02 +0200Yuu-chan(bcaa545d@188.170.84.93)
2021-03-31 14:13:03 +0200m1dnight_m1dnight__
2021-03-31 14:13:11 +0200m1dnight__m1dnight_
2021-03-31 14:13:17 +0200 <Yuu-chan> @djinn Alternative f => f (Maybe a) -> f a
2021-03-31 14:13:17 +0200 <lambdabot> Error: Class not found: Alternative
2021-03-31 14:13:51 +0200 <Yuu-chan> @djinn Control.Applicative.Alternative f => f (Maybe a) -> f a
2021-03-31 14:13:51 +0200 <lambdabot> Error: Class not found: Control.Applicative.Alternative
2021-03-31 14:14:50 +0200Benzi-Junior(~BenziJuni@88-149-67-143.du.xdsl.is) (Ping timeout: 252 seconds)
2021-03-31 14:15:00 +0200 <geekosaur> djinn is a bit out of date
2021-03-31 14:15:16 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 268 seconds)
2021-03-31 14:15:21 +0200 <ski> @type (maybe mempty return =<<)
2021-03-31 14:15:23 +0200 <lambdabot> (Monad m, Monoid (m b)) => m (Maybe b) -> m b
2021-03-31 14:15:34 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
2021-03-31 14:15:42 +0200 <ski> @type (maybe mzero return =<<) -- er, rather
2021-03-31 14:15:43 +0200 <lambdabot> MonadPlus m => m (Maybe b) -> m b
2021-03-31 14:15:45 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-03-31 14:15:47 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:3823:8d85:637f:874d)
2021-03-31 14:16:01 +0200 <Yuu-chan> @type (maybe empty return =<<)
2021-03-31 14:16:02 +0200 <lambdabot> (Monad m, Alternative m) => m (Maybe b) -> m b
2021-03-31 14:16:24 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de)
2021-03-31 14:16:43 +0200rmk236(~lcampos@2a02:908:3616:b100:96f1:d4a5:d139:4f48) (Quit: Leaving.)
2021-03-31 14:17:54 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 14:17:56 +0200 <Yuu-chan> ski thanks
2021-03-31 14:18:03 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 14:18:03 +0200gorbelibove(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 14:18:03 +0200Benzi-Junior(~BenziJuni@dsl-149-67-143.hive.is)
2021-03-31 14:18:28 +0200 <ski> it seems to me, with that problem formulation, you won't get around `Monad'. except for trivial solutions like `const empty'
2021-03-31 14:18:58 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 14:19:01 +0200 <ski> (`Maybe (f a) -> f a' would be another thing, of course)
2021-03-31 14:19:18 +0200AkechiShiro(~AkechiShi@2a01:e0a:5f9:9681:1473:3dff:fe42:56a9) (Quit: WeeChat 2.9)
2021-03-31 14:19:37 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 14:19:56 +0200 <Yuu-chan> Monad constraint is fine
2021-03-31 14:19:57 +0200AkechiShiro(~AkechiShi@2a01:e0a:5f9:9681:1473:3dff:fe42:56a9)
2021-03-31 14:20:12 +0200 <ski> you want the effects that the output action performs to depend on the result produced by the input action. that's dynamic sequencing, iow monads
2021-03-31 14:20:36 +0200 <Yuu-chan> Yep, I understand now
2021-03-31 14:20:50 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 14:21:10 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 14:21:50 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7)
2021-03-31 14:22:02 +0200egorbelibov(~65676f72@2001:8a0:5708:2a00:bc7d:b8d3:66cd:f4d7) (Remote host closed the connection)
2021-03-31 14:24:37 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:3823:8d85:637f:874d) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 14:25:26 +0200jacob11(~jacob1@185.163.110.108) (Remote host closed the connection)
2021-03-31 14:27:26 +0200gnumonic(~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2021-03-31 14:28:13 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:3823:8d85:637f:874d)
2021-03-31 14:28:48 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 14:30:52 +0200Yuu-chan(bcaa545d@188.170.84.93) (Quit: Ping timeout (120 seconds))
2021-03-31 14:31:58 +0200v01d4lph4(~v01d4lph4@223.190.20.92) (Remote host closed the connection)
2021-03-31 14:31:59 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 14:32:19 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 14:33:38 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:3823:8d85:637f:874d) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 14:33:38 +0200ddellacosta(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 260 seconds)
2021-03-31 14:33:57 +0200solvr(57e3c46d@87.227.196.109) (Quit: Connection closed)
2021-03-31 14:37:11 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 14:38:08 +0200solvr(57e3c46d@87.227.196.109)
2021-03-31 14:40:03 +0200LKoen(~LKoen@65.250.88.92.rev.sfr.net)
2021-03-31 14:41:24 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-31 14:42:42 +0200geekosaur(82650c7a@130.101.12.122) (Ping timeout: 240 seconds)
2021-03-31 14:43:03 +0200AkechiShiro(~AkechiShi@2a01:e0a:5f9:9681:1473:3dff:fe42:56a9) (Quit: WeeChat 2.9)
2021-03-31 14:44:08 +0200dpl_(~dpl@77.121.78.163)
2021-03-31 14:44:11 +0200dpl__(~dpl@77.121.78.163) (Ping timeout: 260 seconds)
2021-03-31 14:44:32 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de)
2021-03-31 14:53:17 +0200urodna(~urodna@unaffiliated/urodna)
2021-03-31 14:54:42 +0200geekosaur(82650c7a@130.101.12.122)
2021-03-31 14:59:27 +0200 <ph88^> i am using vscode and haskell language server. I get a popup that GHC is not installed, but it is through stack. Anyone know how to make it work ?
2021-03-31 15:03:30 +0200ddellacosta(~ddellacos@86.106.143.157)
2021-03-31 15:03:46 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr)
2021-03-31 15:04:13 +0200 <maerwald> I thought the plugin installs GHC for you
2021-03-31 15:04:51 +0200dandart(~Thunderbi@home.dandart.co.uk)
2021-03-31 15:07:04 +0200acidjnk_new(~acidjnk@p200300d0c72b9549c1d5f2f7c60f6477.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-03-31 15:08:41 +0200ddellacosta(~ddellacos@86.106.143.157) (Ping timeout: 260 seconds)
2021-03-31 15:08:53 +0200alx741(~alx741@181.196.69.168)
2021-03-31 15:09:52 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 15:10:06 +0200rmk236(~lcampos@ip-37-201-211-26.hsi13.unitymediagroup.de) (Quit: Leaving.)
2021-03-31 15:10:20 +0200bitmagie(~Thunderbi@200116b806372b00585283af1f69c7fb.dip.versatel-1u1.de)
2021-03-31 15:10:35 +0200sajith_sajith
2021-03-31 15:11:09 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Remote host closed the connection)
2021-03-31 15:11:37 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-31 15:11:37 +0200ddellacosta(~ddellacos@ool-44c73afa.dyn.optonline.net)
2021-03-31 15:12:18 +0200 <ph88^> hhmm then something didnt go right there
2021-03-31 15:12:27 +0200Sorny(~Sornaensi@077213203030.dynamic.telenor.dk)
2021-03-31 15:15:04 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 268 seconds)
2021-03-31 15:16:34 +0200Sorna(~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 260 seconds)
2021-03-31 15:17:01 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 260 seconds)
2021-03-31 15:17:03 +0200carlomagno(~cararell@148.87.23.10)
2021-03-31 15:17:16 +0200jamm__(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-03-31 15:17:25 +0200egwor(520bc907@cpc110777-lewi20-2-0-cust262.2-4.cable.virginm.net)
2021-03-31 15:20:57 +0200grrandi(mlp@kapsi.fi)
2021-03-31 15:21:08 +0200 <egwor> I'm trying to get to grips with cabal project layouts. Are there good example structures (along with the cabal project files) that are available to see?
2021-03-31 15:22:58 +0200 <maerwald> egwor: the cabal project
2021-03-31 15:24:40 +0200 <merijn> egwor: I mean, how much structure do you need? That mostly only becomes relevant when projects start hitting a certain size
2021-03-31 15:24:49 +0200 <merijn> Doesn't seem much point in worrying about it too early on...
2021-03-31 15:24:50 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
2021-03-31 15:24:57 +0200stree(~stree@68.36.8.116) (Ping timeout: 268 seconds)
2021-03-31 15:25:19 +0200 <egwor> I want to take some of my uni projects (very simple) and add tests/get them to build
2021-03-31 15:25:53 +0200 <egwor> What I'd quite like is a single project for an exercise/practical and then a library or executable for each part of the practical
2021-03-31 15:25:55 +0200 <merijn> egwor: I mean, the only extra structure you'd really need is "a test directory that has the tests"? :)
2021-03-31 15:26:43 +0200 <merijn> egwor: 1 directory per executable and then either the library in src or just in the root of the directory?
2021-03-31 15:29:53 +0200idhugo(~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
2021-03-31 15:30:21 +0200 <egwor> I guess what I'm struggling with is that in app I have a Main.lhs. That refers to the Factor module, where I have my code. That sits inside src. To get that to compile, under the 'executable Factor' section  I added a build-depends of Factor.
2021-03-31 15:30:50 +0200 <egwor> I was a bit surprised that I needed to add an explicit 'build-depends' dependency on the Factor module
2021-03-31 15:31:16 +0200 <egwor> so I assumed I'd some something wrong => hence the questions of whether there are some examples (with actual structure commited)
2021-03-31 15:31:30 +0200glaceon(~glaceon@117.222.65.198)
2021-03-31 15:32:05 +0200 <merijn> egwor: No, that's correct
2021-03-31 15:32:33 +0200 <egwor> ahh, ok, thanks!
2021-03-31 15:33:02 +0200 <merijn> egwor: The fact that your library and executable are in the same package doesn't (automatically) mean your executable uses/depends on that library
2021-03-31 15:33:19 +0200xff0x(~xff0x@2001:1a81:52d9:7900:6b0c:e3df:c0c:8727) (Ping timeout: 245 seconds)
2021-03-31 15:33:54 +0200 <merijn> egwor: A fact that seems strange in the current hackage version of "max 1 library per package", but cabal already supports multiple libraries per package (and hackage eventually will too), in which case not all executables necessarily depend on all libraries in the same package
2021-03-31 15:34:26 +0200xff0x(~xff0x@2001:1a81:52d9:7900:a1dd:11c7:dd0c:6878)
2021-03-31 15:34:29 +0200vchlup(~vchlup@nat.brnet.cz)
2021-03-31 15:34:35 +0200 <egwor> thanks, that's helpful.
2021-03-31 15:34:55 +0200 <merijn> explicit is better than implicit, and all that ;)
2021-03-31 15:34:58 +0200 <egwor> I appreciate that I'm doing some pretty basic stuff here, but that's sort of the point-- to figure this out:)
2021-03-31 15:35:03 +0200 <egwor> thanks :)
2021-03-31 15:37:08 +0200bergey(~user@pool-74-108-99-127.nycmny.fios.verizon.net)
2021-03-31 15:37:28 +0200stree(~stree@68.36.8.116)
2021-03-31 15:37:29 +0200cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.1)
2021-03-31 15:38:46 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:7ca5:80cc:e540:ad18)
2021-03-31 15:38:57 +0200hexfive(~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
2021-03-31 15:39:31 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 15:40:35 +0200acidjnk_new(~acidjnk@p200300d0c72b95496cfd1d07fe22841d.dip0.t-ipconnect.de)
2021-03-31 15:40:37 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 15:41:34 +0200deviantfero(~deviantfe@190.150.27.58)
2021-03-31 15:43:03 +0200glaceon(~glaceon@117.222.65.198) ()
2021-03-31 15:43:58 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
2021-03-31 15:44:58 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
2021-03-31 15:45:29 +0200geekosaur(82650c7a@130.101.12.122) (Quit: Connection closed)
2021-03-31 15:45:39 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-03-31 15:49:42 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 15:50:31 +0200coot(~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-03-31 15:51:54 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 15:52:28 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 15:54:26 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
2021-03-31 15:55:51 +0200xff0x(~xff0x@2001:1a81:52d9:7900:a1dd:11c7:dd0c:6878) (Ping timeout: 250 seconds)
2021-03-31 15:56:39 +0200xff0x(~xff0x@2001:1a81:52d9:7900:c563:7e1d:2a51:3033)
2021-03-31 15:56:44 +0200pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-03-31 15:57:28 +0200solvr(57e3c46d@87.227.196.109) (Quit: Connection closed)
2021-03-31 15:57:35 +0200acidjnk_new(~acidjnk@p200300d0c72b95496cfd1d07fe22841d.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-03-31 15:58:54 +0200malumore_(~malumore@151.62.117.70)
2021-03-31 16:01:06 +0200malumore(~malumore@151.62.117.70) (Ping timeout: 240 seconds)
2021-03-31 16:02:26 +0200egwor(520bc907@cpc110777-lewi20-2-0-cust262.2-4.cable.virginm.net) (Quit: Connection closed)
2021-03-31 16:05:02 +0200cheater(~user@unaffiliated/cheater) (Ping timeout: 246 seconds)
2021-03-31 16:06:59 +0200siersij
2021-03-31 16:07:39 +0200cheater(~user@unaffiliated/cheater)
2021-03-31 16:11:26 +0200dandart(~Thunderbi@home.dandart.co.uk) (Quit: dandart)
2021-03-31 16:14:01 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 16:14:21 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 16:18:10 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta)
2021-03-31 16:18:15 +0200berberman(~berberman@unaffiliated/berberman)
2021-03-31 16:18:23 +0200berberman_(~berberman@unaffiliated/berberman) (Ping timeout: 250 seconds)
2021-03-31 16:18:45 +0200caubert_(~caubert@136.244.111.235) (Quit: WeeChat 3.0)
2021-03-31 16:18:46 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-03-31 16:18:58 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 16:19:00 +0200caubert(~caubert@136.244.111.235)
2021-03-31 16:21:47 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Read error: Connection reset by peer)
2021-03-31 16:21:59 +0200Jd007(~Jd007@162.156.11.151)
2021-03-31 16:22:31 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 16:22:34 +0200motherfsck(~motherfsc@unaffiliated/motherfsck) (Remote host closed the connection)
2021-03-31 16:22:54 +0200ddellac__(ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 268 seconds)
2021-03-31 16:23:09 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2021-03-31 16:23:22 +0200hololeap(~hololeap@unaffiliated/hololeap)
2021-03-31 16:24:50 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-03-31 16:26:46 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 16:27:18 +0200maroloccio(~marolocci@pousada3ja.mma.com.br)
2021-03-31 16:30:50 +0200coot(~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
2021-03-31 16:33:14 +0200fancyremarker(~fancyrema@185.169.233.10)
2021-03-31 16:33:29 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 16:34:19 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-03-31 16:34:26 +0200dpl_(~dpl@77.121.78.163) (Ping timeout: 260 seconds)
2021-03-31 16:34:53 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 16:36:55 +0200raym(~ray@115.187.32.14) (Quit: leaving)
2021-03-31 16:36:55 +0200solvr(57e3c46d@87.227.196.109)
2021-03-31 16:39:14 +0200hololeap(~hololeap@unaffiliated/hololeap) (Remote host closed the connection)
2021-03-31 16:39:44 +0200hololeap(~hololeap@unaffiliated/hololeap)
2021-03-31 16:46:06 +0200maroloccio(~marolocci@pousada3ja.mma.com.br) (Ping timeout: 240 seconds)
2021-03-31 16:46:41 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Ping timeout: 260 seconds)
2021-03-31 16:49:33 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 16:50:40 +0200acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 268 seconds)
2021-03-31 16:51:00 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 16:52:13 +0200enoq(~textual@194-208-146-143.lampert.tv)
2021-03-31 16:52:18 +0200maroloccio(~marolocci@pousada3ja.mma.com.br)
2021-03-31 16:53:54 +0200maroloccio(~marolocci@pousada3ja.mma.com.br) (Read error: Connection reset by peer)
2021-03-31 16:55:30 +0200kritzefitz_(~kritzefit@212.86.56.80)
2021-03-31 16:55:46 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 16:56:24 +0200kritzefitz_(~kritzefit@212.86.56.80) (Client Quit)
2021-03-31 16:57:11 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Ping timeout: 260 seconds)
2021-03-31 16:57:24 +0200evanjs-(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 17:01:49 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 17:02:20 +0200Eoco(~ian@x-160-94-179-157.acm.umn.edu)
2021-03-31 17:02:29 +0200kritzefitz_(~kritzefit@212.86.56.80)
2021-03-31 17:03:36 +0200kritzefitz(~kritzefit@fw-front.credativ.com) (Ping timeout: 268 seconds)
2021-03-31 17:10:56 +0200bodisiw(~bodiskw@cpe-74-138-114-237.kya.res.rr.com)
2021-03-31 17:11:18 +0200bitmagie(~Thunderbi@200116b806372b00585283af1f69c7fb.dip.versatel-1u1.de) (Quit: bitmagie)
2021-03-31 17:14:51 +0200cfricke(~cfricke@unaffiliated/cfricke)
2021-03-31 17:16:30 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 17:18:00 +0200xff0x(~xff0x@2001:1a81:52d9:7900:c563:7e1d:2a51:3033) (Ping timeout: 258 seconds)
2021-03-31 17:18:42 +0200kiweun(~kiweun@2607:fea8:2a62:9600:f936:9f33:4140:eb88)
2021-03-31 17:18:55 +0200xff0x(~xff0x@2001:1a81:52d9:7900:4e7f:f403:b0b5:ef3)
2021-03-31 17:21:56 +0200wonko7(~wonko7@62.115.229.50)
2021-03-31 17:22:05 +0200peanut_(~peanut_@2a02:8388:a101:2600:1fde:3e3:f7a:66f2) (Quit: Leaving)
2021-03-31 17:24:26 +0200Tario(~Tario@201.192.165.173)
2021-03-31 17:26:14 +0200tilaiti_(~tilaiti@static.144.156.216.95.clients.your-server.de) (Ping timeout: 246 seconds)
2021-03-31 17:26:24 +0200tilaiti(~tilaiti@static.144.156.216.95.clients.your-server.de)
2021-03-31 17:27:12 +0200jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-03-31 17:27:29 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 17:27:35 +0200jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-03-31 17:29:24 +0200dandart(~Thunderbi@home.dandart.co.uk)
2021-03-31 17:30:39 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-03-31 17:32:47 +0200CaptainIRS(9d3386ab@157.51.134.171) (Quit: Connection closed)
2021-03-31 17:33:39 +0200mjlbach(atriusmatr@gateway/shell/matrix.org/x-xpyboyzatqyxnpnd) (Ping timeout: 248 seconds)
2021-03-31 17:35:02 +0200mjlbach(atriusmatr@gateway/shell/matrix.org/x-ijeyeywqmxydamrw)
2021-03-31 17:37:32 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-03-31 17:40:37 +0200cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 268 seconds)
2021-03-31 17:40:50 +0200__minoru__shirae(~shiraeesh@109.166.57.243)
2021-03-31 17:43:05 +0200bergey(~user@pool-74-108-99-127.nycmny.fios.verizon.net) (Ping timeout: 260 seconds)
2021-03-31 17:45:18 +0200stree(~stree@68.36.8.116) (Ping timeout: 240 seconds)
2021-03-31 17:46:18 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr)
2021-03-31 17:47:55 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr) (Remote host closed the connection)
2021-03-31 17:48:00 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-03-31 17:48:30 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 17:48:31 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr)
2021-03-31 17:48:50 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr) (Client Quit)
2021-03-31 17:49:06 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr)
2021-03-31 17:49:09 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr) (Client Quit)
2021-03-31 17:49:21 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr)
2021-03-31 17:50:34 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 17:51:02 +0200deviantfero(~deviantfe@190.150.27.58) (Quit: WeeChat 3.1)
2021-03-31 17:51:11 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 17:51:20 +0200enoq(~textual@194-208-146-143.lampert.tv) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 17:52:49 +0200dandart(~Thunderbi@home.dandart.co.uk) (Remote host closed the connection)
2021-03-31 17:55:15 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 246 seconds)
2021-03-31 17:56:53 +0200solvr35(57e3c46d@87.227.196.109)
2021-03-31 17:57:42 +0200solvr(57e3c46d@87.227.196.109) (Ping timeout: 240 seconds)
2021-03-31 17:58:09 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Remote host closed the connection)
2021-03-31 17:58:10 +0200masterplain(ce7fb161@ics177-97.icsincorporated.com)
2021-03-31 17:58:51 +0200stree(~stree@68.36.8.116)
2021-03-31 17:59:59 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 18:00:03 +0200joe[m]1(joemonoida@gateway/shell/matrix.org/x-ddskqwzpoidneuno) (Quit: Idle for 30+ days)
2021-03-31 18:00:18 +0200geekosaur(82650c7a@130.101.12.122)
2021-03-31 18:00:28 +0200electricityZZZZ(~electrici@135-180-3-82.static.sonic.net)
2021-03-31 18:00:49 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 18:01:00 +0200solvr(57e3c46d@87.227.196.109)
2021-03-31 18:01:56 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Ping timeout: 260 seconds)
2021-03-31 18:03:06 +0200malumore_(~malumore@151.62.117.70) (Ping timeout: 240 seconds)
2021-03-31 18:03:10 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-03-31 18:04:02 +0200solvr35(57e3c46d@87.227.196.109) (Ping timeout: 240 seconds)
2021-03-31 18:04:34 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 245 seconds)
2021-03-31 18:04:45 +0200mouseghost(~draco@wikipedia/desperek) (Quit: mew wew)
2021-03-31 18:04:50 +0200ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-03-31 18:05:54 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 268 seconds)
2021-03-31 18:05:55 +0200supercoven(~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
2021-03-31 18:07:51 +0200ezrakilty(~ezrakilty@97-126-86-140.tukw.qwest.net)
2021-03-31 18:15:43 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 18:17:26 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-03-31 18:18:25 +0200xff0x(~xff0x@2001:1a81:52d9:7900:4e7f:f403:b0b5:ef3) (Ping timeout: 250 seconds)
2021-03-31 18:19:10 +0200xff0x(~xff0x@2001:1a81:52d9:7900:15bf:3601:850c:fab3)
2021-03-31 18:20:10 +0200ezrakilty(~ezrakilty@97-126-86-140.tukw.qwest.net) (Remote host closed the connection)
2021-03-31 18:20:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-03-31 18:24:43 +0200malumore_(~malumore@151.62.117.70)
2021-03-31 18:28:16 +0200fuzzy_id(~user@1.red-88-0-41.dynamicip.rima-tde.net)
2021-03-31 18:29:23 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 18:30:20 +0200 <fuzzy_id> What's the lens way to apply a getter to a Maybe?
2021-03-31 18:31:15 +0200 <fuzzy_id> i.e. an alternative for 'fmap (^. g) $ x ^. f'
2021-03-31 18:31:30 +0200 <fuzzy_id> where 'x ^. f' is of type Maybe a
2021-03-31 18:32:00 +0200 <fuzzy_id> I'm starring at prisms and my head is melting. :/
2021-03-31 18:32:42 +0200 <kuribas> fuzzy_id: traverse?
2021-03-31 18:32:51 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 18:33:49 +0200evanjs-(~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in)
2021-03-31 18:33:50 +0200 <kuribas> > preview (_1 . traverse) (Just 3, "foo")
2021-03-31 18:33:52 +0200 <lambdabot> Just 3
2021-03-31 18:34:00 +0200 <kuribas> or _Just
2021-03-31 18:34:05 +0200 <kuribas> > preview (_1 . _Just) (Just 3, "foo")
2021-03-31 18:34:07 +0200 <lambdabot> Just 3
2021-03-31 18:34:11 +0200chele(~chele@ip5b40237d.dynamic.kabel-deutschland.de)
2021-03-31 18:34:37 +0200 <kuribas> > tolistOf (_1 . traverse) (Just 3, "foo")
2021-03-31 18:34:39 +0200 <lambdabot> error:
2021-03-31 18:34:39 +0200 <lambdabot> • Variable not in scope:
2021-03-31 18:34:39 +0200 <lambdabot> tolistOf
2021-03-31 18:35:18 +0200 <kuribas> > toListOf (_1 . traverse) (Just 3, "foo")
2021-03-31 18:35:20 +0200 <lambdabot> [3]
2021-03-31 18:35:31 +0200 <kuribas> > toListOf (_1 . _Just) (Nothing, "foo")
2021-03-31 18:35:32 +0200 <lambdabot> []
2021-03-31 18:36:10 +0200evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-03-31 18:36:52 +0200 <raehik> fuzzy_id: using view and (<$>) might make it look nicer?
2021-03-31 18:36:58 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
2021-03-31 18:37:07 +0200 <raehik> > view _1 <$> (Just (1, 2))
2021-03-31 18:37:09 +0200 <lambdabot> Just 1
2021-03-31 18:37:26 +0200 <raehik> (apologies I don't do enough lenses to rewrite your example)
2021-03-31 18:38:07 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 258 seconds)
2021-03-31 18:38:49 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 18:38:57 +0200Deide(~Deide@217.155.19.23)
2021-03-31 18:39:49 +0200 <fuzzy_id> raehik: Yeah, I guess I go with that.
2021-03-31 18:40:05 +0200 <fuzzy_id> kuribas: tbh I don't have any idea how to apply your suggestions. :P
2021-03-31 18:40:16 +0200 <kuribas> raehik: that only works if the Maybe is outer.
2021-03-31 18:40:43 +0200 <raehik> yes
2021-03-31 18:41:37 +0200solvr(57e3c46d@87.227.196.109) (Quit: Connection closed)
2021-03-31 18:41:37 +0200 <kuribas> raehik: give an example where you are failing?
2021-03-31 18:42:48 +0200 <raehik> kuribas: I think you meant to tag fuzzy_id!
2021-03-31 18:42:58 +0200 <kuribas> eh, right
2021-03-31 18:43:19 +0200pavonia(~user@unaffiliated/siracusa)
2021-03-31 18:44:13 +0200gaff(~user@49.207.224.136)
2021-03-31 18:44:20 +0200 <kuribas> fuzzy_id: traverse targets all elements of a Traversable. _Just targets a maybe value if it is a Just.
2021-03-31 18:44:27 +0200 <kuribas> fuzzy_id: which means the same thing in the end.
2021-03-31 18:44:42 +0200 <gaff> i have some code pasted at https://pastebin.com/mBevWnT4
2021-03-31 18:44:57 +0200 <kuribas> fuzzy_id: also, since you may return no values, you need to use preview or toListOf.
2021-03-31 18:45:20 +0200 <kuribas> fuzzy_id: because view always returns a value, but that doesn't work when the Maybe is Nothing.
2021-03-31 18:45:50 +0200argento(~argent0@191.81.225.82)
2021-03-31 18:45:55 +0200average(uid473595@gateway/web/irccloud.com/x-ygfxxolhucppzalr)
2021-03-31 18:46:00 +0200 <fuzzy_id> Hmm. Let's see, I need something to fetch the 2 in 'x = (Just (1, 2), 3)'
2021-03-31 18:46:38 +0200 <kuribas> > preview (_Just . _2) (Just (1, 2), 3)
2021-03-31 18:46:40 +0200 <lambdabot> error:
2021-03-31 18:46:40 +0200 <lambdabot> • Couldn't match type ‘(Maybe (a0, b1), b2)’ with ‘Maybe b0’
2021-03-31 18:46:40 +0200 <lambdabot> arising from a functional dependency between:
2021-03-31 18:46:50 +0200 <kuribas> > preview (_1 . _Just . _2) (Just (1, 2), 3)
2021-03-31 18:46:51 +0200 <lambdabot> Just 2
2021-03-31 18:46:59 +0200 <kuribas> > view (_1 . _Just . _2) (Just (1, 2), 3)
2021-03-31 18:47:00 +0200 <gaff> basically, if the function is one module, the call works fine, but if the code is located in another module, it hangs. i am not sure why.
2021-03-31 18:47:01 +0200 <lambdabot> error:
2021-03-31 18:47:01 +0200 <lambdabot> • Ambiguous type variable ‘a0’ arising from a use of ‘show_M623296576548...
2021-03-31 18:47:01 +0200 <lambdabot> prevents the constraint ‘(Show a0)’ from being solved.
2021-03-31 18:47:13 +0200 <kuribas> > view (_1 . _Just . _2) (Just (1, 2), 3) :: Int
2021-03-31 18:47:15 +0200 <lambdabot> error:
2021-03-31 18:47:15 +0200 <lambdabot> • No instance for (Monoid Int) arising from a use of ‘_Just’
2021-03-31 18:47:15 +0200 <lambdabot> • In the first argument of ‘(.)’, namely ‘_Just’
2021-03-31 18:47:22 +0200masterplain(ce7fb161@ics177-97.icsincorporated.com) (Changing host)
2021-03-31 18:47:22 +0200masterplain(ce7fb161@unaffiliated/sayo-)
2021-03-31 18:47:41 +0200 <kuribas> fuzzy_id: so that fails, because view tries to collect all the results in a monoid, but the result isn't a monoid.
2021-03-31 18:48:08 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 246 seconds)
2021-03-31 18:48:37 +0200masterplain(ce7fb161@unaffiliated/sayo-) ()
2021-03-31 18:48:46 +0200 <kuribas> fuzzy_id: it's a detail which you may forget :) Just remember that view can only be used if you always return a value.
2021-03-31 18:48:53 +0200 <gaff> it is quite strange behaviour.
2021-03-31 18:49:33 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 18:50:37 +0200 <fuzzy_id> kuribas: ok. that clearifies things a bit.
2021-03-31 18:50:39 +0200 <fuzzy_id> I guess.
2021-03-31 18:51:29 +0200 <kuribas> fuzzy_id: preview return (Just x), where x is the first value, or Nothing, when there are no values.
2021-03-31 18:51:36 +0200chele(~chele@ip5b40237d.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2021-03-31 18:51:40 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:7ca5:80cc:e540:ad18) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 18:51:52 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 18:51:56 +0200 <ski> gaff : what if you change from using `i' in `Integral', to using `Integer' ?
2021-03-31 18:53:03 +0200 <gaff> well, i haven't tried that, but how would it affect which module the code lives?
2021-03-31 18:53:22 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 18:53:24 +0200 <gaff> also, for smaller inputs, things work just fine.
2021-03-31 18:53:43 +0200 <geekosaur> gaff, inlining will vary depending on where the code is
2021-03-31 18:53:57 +0200 <geekosaur> among other things
2021-03-31 18:54:05 +0200cheater(~user@unaffiliated/cheater) (Ping timeout: 246 seconds)
2021-03-31 18:54:07 +0200 <geekosaur> and specialisation
2021-03-31 18:54:12 +0200 <gaff> i see
2021-03-31 18:54:35 +0200 <gaff> that's a nasty surprise.
2021-03-31 18:54:39 +0200 <ski> gaff : it could possibly affect efficiency
2021-03-31 18:54:44 +0200cheater(~user@unaffiliated/cheater)
2021-03-31 18:54:54 +0200kuribas(~user@ptr-25vy0i8a26pq5ck0xjc.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2021-03-31 18:55:30 +0200 <fuzzy_id> kuribas: thanks a lot. I guess I just have to sit down and study lenses properly.
2021-03-31 18:55:32 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 18:55:32 +0200 <ski> in any case, using a constrained polymorphic `primes' like that is probably not that good, in the first place
2021-03-31 18:56:10 +0200 <ski> (i guess possibly it floats the instantiation out of the lambda)
2021-03-31 18:56:20 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 18:58:46 +0200conal(~conal@64.71.133.70) (Ping timeout: 240 seconds)
2021-03-31 18:59:59 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 245 seconds)
2021-03-31 18:59:59 +0200 <gaff> ski: that works! i changed it to INT
2021-03-31 19:00:17 +0200conal(~conal@64.71.133.70)
2021-03-31 19:00:26 +0200 <ski> gaff : because, now `primes' is shared
2021-03-31 19:00:29 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 19:01:10 +0200 <gaff> ski: i din't catch you. shared?
2021-03-31 19:01:29 +0200 <ski> gaff : probably, with `dff', it didn't really hang indefinitely, just took a very long time (possibly exponentially slower), while `df' didn't experience that, due to inlining or specialization or so happening, because it was in the same module
2021-03-31 19:01:51 +0200 <gaff> ok
2021-03-31 19:02:11 +0200 <gaff> and why is it working when i change it to INT, as you suggested?
2021-03-31 19:02:25 +0200 <ski> gaff : with lazy / by-need evaluation, if you do `let x = 2 + 3 in x * x', then the computation of `2 * 3' is shared, so that it's not redone, when the value of the second `x' in `x * x' is demanded
2021-03-31 19:02:50 +0200 <gaff> correct.
2021-03-31 19:02:59 +0200Neuromancer(~Neuromanc@unaffiliated/neuromancer)
2021-03-31 19:03:28 +0200 <ski> such a memoization/sharing does not happen, if you have a function. if you write `f x = 2 + 3', then `f 4 * f 4' won't share the result of `2 + 3', under by-need
2021-03-31 19:03:54 +0200 <gaff> i see
2021-03-31 19:04:20 +0200 <ski> there is no automatic memoization, caching of an association from input values to output values (such a thing would require some kind of equality check on inputs. also there's other possible issues ..)
2021-03-31 19:04:25 +0200 <ski> however
2021-03-31 19:04:29 +0200 <ski> if you have
2021-03-31 19:04:45 +0200 <ski> counting :: Integer i => [i]
2021-03-31 19:04:58 +0200 <ski> counting = 0 : map (1 +) counting
2021-03-31 19:05:43 +0200 <ski> even though it *looks* like `counting' would be shared here, it won't. because, under the dictionary-passing translation (/ implementation) of type classes, this will correspond to something like
2021-03-31 19:06:01 +0200 <ski> counting :: IntegralDict i -> [i]
2021-03-31 19:06:43 +0200 <ski> counting iDict = fromInteger iDict (0 :: Integer) : map ((+) iDict (fromInteger iDict (1 :: Integer))) (counting iDict)
2021-03-31 19:06:57 +0200 <ski> (sorry, obviously `Integer i' should have been `Integral i')
2021-03-31 19:07:14 +0200 <gaff> yeah, i was wondering about that
2021-03-31 19:07:32 +0200 <ski> where `IntegralDict i' is a data type, a record of implementations of the methods of `Integral' (and superclasses), for `i'
2021-03-31 19:07:44 +0200 <gaff> i see
2021-03-31 19:07:53 +0200 <ski> so, "secretly", under this implementation, `counting' will be a function. so, no sharing
2021-03-31 19:08:00 +0200 <ski> this is the reason for the DMR existing
2021-03-31 19:08:03 +0200 <gaff> i see
2021-03-31 19:09:35 +0200 <ski> if you had skipped the type signature on `counting' or `primes', then you'd either gotten an error that it was ambiguous (it refusing to infer it as a *constrained* polymorphic operation), or else it might have picked a default type for `i' (like `Integer'), in case one was available (and then your operation would be monomorphic)
2021-03-31 19:10:06 +0200 <gaff> okay
2021-03-31 19:10:07 +0200 <ski> (in this case, i think you'd get the defaulting .. but in general, it might not find a suitable default, and so it would complain)
2021-03-31 19:10:08 +0200zfnmxt(~zfnmxt@unaffiliated/zfnmxt) (Quit: Bye!)
2021-03-31 19:10:15 +0200zfnmxt_(~zfnmxt@unaffiliated/zfnmxt)
2021-03-31 19:10:19 +0200Jello_Raptor(~Jello_Rap@li641-12.members.linode.com) (Ping timeout: 252 seconds)
2021-03-31 19:10:46 +0200 <gaff> so in this case, when i cahnge to `INT`, `primes` get shared?
2021-03-31 19:10:53 +0200CitizenSnips(~CitizenSn@irc.refl.club) (Quit: ZNC 1.8.2 - https://znc.in)
2021-03-31 19:10:54 +0200fredcy|(fredcy@2600:3c00::f03c:91ff:feae:15ae) (Quit: ZNC - http://znc.in)
2021-03-31 19:11:04 +0200fredcy(fredcy@2600:3c00::f03c:91ff:feae:15ae)
2021-03-31 19:11:08 +0200 <gaff> sorry, *change*
2021-03-31 19:12:20 +0200CitizenSnips(~CitizenSn@irc.refl.club)
2021-03-31 19:12:20 +0200 <ski> (the way to avoid dealing with DMR is to either (a) add an explicit type signature, signalling that you're aware that it's *constrained* polymorphic (so no sharing); or (b), in case it's a function, add explicit parameter to the left of `='. so instead of `f = ...' do `f x = (...) x', or instead of `f = \x -> ..x..', do `f x = ..x..'; or (c) turn off DMR (but then you don't get warned by it, when you lose
2021-03-31 19:12:26 +0200 <ski> sharing like this))
2021-03-31 19:12:28 +0200 <ski> gaff : yes
2021-03-31 19:13:10 +0200 <ski> if you load the module, then do `take 4 primes', it will show the primes under ten
2021-03-31 19:13:12 +0200Jello_Raptor(~Jello_Rap@li641-12.members.linode.com)
2021-03-31 19:13:25 +0200 <gaff> yes
2021-03-31 19:13:47 +0200 <ski> if you then do `take 25 primes', it will show the primes under one hundred, but not recompute the first four, sharing them from the previous computation, only recomputing the remaining twentyone
2021-03-31 19:14:14 +0200 <ski> with `primes' constrained polymorphic, you'll recompute each time. at least under a naïve by-need / lazy implementation
2021-03-31 19:14:17 +0200Forlorn_(~Forlorn@unaffiliated/forlorn)
2021-03-31 19:14:26 +0200 <gaff> i see
2021-03-31 19:14:41 +0200 <ski> and then, each call to one of your operations using `primes' would recompute it from the start again, each time it used it
2021-03-31 19:14:49 +0200 <gaff> correct
2021-03-31 19:15:28 +0200 <ski> i think even each recursive call might recompute it (unless it does `let'-floating of the specialization to `i') .. and this could likely cause exponential worsening of time
2021-03-31 19:15:44 +0200__monty__(~toonn@unaffiliated/toonn)
2021-03-31 19:16:16 +0200 <ski> however, it seemed to happen that with `df' in the same module, it managed to, in that case, avoid this. probably due to specialization, and possibly also inlining. but it didn't manage to do that with `dff' in a different module
2021-03-31 19:16:31 +0200 <ski> that's my theory about the behaviour you observed, anyway
2021-03-31 19:16:39 +0200 <gaff> ski: primes is shared because it is not a function, is suppose?
2021-03-31 19:16:46 +0200 <ski> if you're curious, you could dive into core, or profile, or so
2021-03-31 19:16:49 +0200 <ski> yep
2021-03-31 19:16:57 +0200 <gaff> reasoning from your statements
2021-03-31 19:18:35 +0200 <gaff> ski: i am not familiar with `DMR`. what does it stand for, in full?
2021-03-31 19:18:36 +0200 <ski> it's like if you had said `isPrime n = ..n.. where primes = ...', or `isPrime n = let primes = ... in ..n..' (or, in the `let'-floating case, it would be `isPrime = let primes = ... in \n -> ..n..', which would share `primes' over the body of `isPrime', but not across calls to it. i guess whether it would share among recursive calls depends on whether it would float it out of the recursion or not)
2021-03-31 19:19:11 +0200 <geekosaur> "dreaded monomorphism restriction"
2021-03-31 19:19:35 +0200 <gaff> ah, i know that, just didn't know the abbreviation.
2021-03-31 19:19:45 +0200 <geekosaur> "monomorphism restriction" is its proper name. "dreaded" is more or less because of this :)
2021-03-31 19:20:01 +0200 <gaff> i see
2021-03-31 19:20:37 +0200 <ski> (also, in actuality, it would probably be more like `isPrime @i n = ..i..n.. where myPrimes = primes @i', where `primes' is the polymorphic one, defined on the top-level, and `myPrimes' is the specialization of it, to the particular type `i' (with corresponding `Integral' instance dictionary) that was used for this particular call to `isPrime')
2021-03-31 19:21:14 +0200 <gaff> i see
2021-03-31 19:21:59 +0200 <ski> (so that `isPrime @i n = ..i..n.. where myPrimes = primes @i' would then be translated into `isPrime @i iDict n = ..i..n.. where myPrimes = primes @i iDict', passing the dictionary to `primes' to get the resulting list, then sharing that list, by naming it `myPrimes' and reusing that name)
2021-03-31 19:22:03 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:4485:5098:cb7a:cbe1)
2021-03-31 19:22:26 +0200 <gaff> ah
2021-03-31 19:23:08 +0200 <ski> anyway, i'm not totally sure on the details that it actually does. but it could do something along these lines
2021-03-31 19:24:20 +0200 <gaff> ski: using rank types does entail a performance cost sometimes.
2021-03-31 19:24:55 +0200 <gaff> in this case, at least, for example.
2021-03-31 19:26:56 +0200 <ski> there's no higher-rank stuff here
2021-03-31 19:27:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-03-31 19:27:27 +0200 <ski> the performance related stuff here is about the class constraints, implemented by passing dictionaries
2021-03-31 19:27:38 +0200 <gaff> i see
2021-03-31 19:27:50 +0200 <ski> (and how that precludes the sharing of results)
2021-03-31 19:27:57 +0200 <gaff> okay, i will have to remember that
2021-03-31 19:28:05 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 19:28:45 +0200 <gaff> this problem came as a surprise to me. i have never seen it before.
2021-03-31 19:29:05 +0200 <gaff> i suppose that's things come to you when you are young
2021-03-31 19:30:03 +0200 <gaff> ski: thanks much. appreciate your help, indeed.
2021-03-31 19:30:34 +0200dyeplexer(~lol@unaffiliated/terpin)
2021-03-31 19:30:48 +0200 <ski> np
2021-03-31 19:32:12 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 246 seconds)
2021-03-31 19:32:35 +0200 <gaff> ski: one way i could track this kind of stuff is to load the code in ghci and step through it line by line.
2021-03-31 19:32:47 +0200 <ski> i guess
2021-03-31 19:32:54 +0200 <gaff> ah
2021-03-31 19:33:27 +0200MartinR23(d9f579b1@pd9f579b1.dip0.t-ipconnect.de)
2021-03-31 19:33:43 +0200 <ski> one can learn to watch out for things that are intended to be shared, but are overloaded
2021-03-31 19:34:10 +0200 <ski> (or, at least, to relatively quickly realize that could be the culprit, in the case of a problem)
2021-03-31 19:34:37 +0200 <gaff> also, the thought of changing the type to INT came to me earlier, but i, for some reason, dismissed it without checking it out.
2021-03-31 19:34:54 +0200 <gaff> i see
2021-03-31 19:35:16 +0200 <gaff> nice tips. thanks
2021-03-31 19:35:58 +0200 <gaff> despite these issues, i love writing code in haskell. it is so elegant.
2021-03-31 19:38:52 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de) (Ping timeout: 276 seconds)
2021-03-31 19:40:12 +0200gaff(~user@49.207.224.136) (Quit: ERC (IRC client for Emacs 27.1))
2021-03-31 19:41:33 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net)
2021-03-31 19:44:05 +0200jakalx(~jakalx@base.jakalx.net) ("Error from remote client")
2021-03-31 19:44:34 +0200DTZUZU_(~DTZUZO@207.81.119.43) (Ping timeout: 268 seconds)
2021-03-31 19:44:47 +0200gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
2021-03-31 19:45:10 +0200argento(~argent0@191.81.225.82) (Ping timeout: 268 seconds)
2021-03-31 19:51:22 +0200geekosaur(82650c7a@130.101.12.122) (Ping timeout: 240 seconds)
2021-03-31 19:52:11 +0200isBEKaml(~isBEKaml@unaffiliated/isbekaml)
2021-03-31 19:54:00 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
2021-03-31 19:54:22 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com)
2021-03-31 19:55:02 +0200DTZUZU_(~DTZUZO@205.ip-149-56-132.net)
2021-03-31 19:55:39 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 19:55:41 +0200fuzzy_id(~user@1.red-88-0-41.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2021-03-31 19:55:47 +0200DTZUZU(~DTZUZO@205.ip-149-56-132.net) (Read error: Connection reset by peer)
2021-03-31 19:56:15 +0200TheMule(~TheMule@aftr-37-201-195-154.unity-media.net)
2021-03-31 19:56:20 +0200TheMule(~TheMule@aftr-37-201-195-154.unity-media.net) (Client Quit)
2021-03-31 19:56:20 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com) (Client Quit)
2021-03-31 19:56:26 +0200cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-03-31 19:58:35 +0200frozenErebus(~frozenEre@37.231.244.249)
2021-03-31 19:58:45 +0200Guest41032(~laudiacay@67.176.215.84)
2021-03-31 19:59:20 +0200gitgood(~gitgood@80-44-12-39.dynamic.dsl.as9105.com)
2021-03-31 19:59:32 +0200MartinR23(d9f579b1@pd9f579b1.dip0.t-ipconnect.de) (Quit: Connection closed)
2021-03-31 20:01:02 +0200DTZUZU_DTZUZU
2021-03-31 20:01:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-03-31 20:02:19 +0200mouseghost(~draco@wikipedia/desperek)
2021-03-31 20:03:33 +0200frozenErebus(~frozenEre@37.231.244.249) (Ping timeout: 260 seconds)
2021-03-31 20:04:43 +0200 <Uniaika> MrMobius:
2021-03-31 20:04:43 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr) (Read error: Connection reset by peer)
2021-03-31 20:04:47 +0200 <Uniaika> woops, sorry!
2021-03-31 20:05:28 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr)
2021-03-31 20:06:14 +0200mrlazos(~mrlazos@46-44-92.adsl.cyta.gr) (Remote host closed the connection)
2021-03-31 20:06:49 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de)
2021-03-31 20:06:50 +0200Guest41032(~laudiacay@67.176.215.84) (Ping timeout: 260 seconds)
2021-03-31 20:06:50 +0200stree(~stree@68.36.8.116) (Ping timeout: 260 seconds)
2021-03-31 20:06:53 +0200bodisiw(~bodiskw@cpe-74-138-114-237.kya.res.rr.com) (Quit: Leaving)
2021-03-31 20:07:27 +0200isBEKaml(~isBEKaml@unaffiliated/isbekaml) ()
2021-03-31 20:07:53 +0200geekosaur(82650c7a@130.101.12.122)
2021-03-31 20:08:12 +0200TheMule(~TheMule@2a02:908:3a3:8660:e095:501c:2700:5d7c)
2021-03-31 20:10:25 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 20:10:55 +0200TheMule(~TheMule@2a02:908:3a3:8660:e095:501c:2700:5d7c) (Client Quit)
2021-03-31 20:11:23 +0200TheMule(~TheMule@aftr-37-201-195-154.unity-media.net)
2021-03-31 20:11:39 +0200dyeplexer(~lol@unaffiliated/terpin) (Remote host closed the connection)
2021-03-31 20:11:56 +0200TheMulemkDoku
2021-03-31 20:12:13 +0200conal(~conal@64.71.133.70)
2021-03-31 20:12:26 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 20:12:39 +0200rajivr(uid269651@gateway/web/irccloud.com/x-vhalmegvcwkpzygm) (Quit: Connection closed for inactivity)
2021-03-31 20:19:05 +0200__minoru__shirae(~shiraeesh@109.166.57.243) (Ping timeout: 268 seconds)
2021-03-31 20:19:45 +0200Pickchea(~private@unaffiliated/pickchea)
2021-03-31 20:19:58 +0200vicfred(~vicfred@unaffiliated/vicfred)
2021-03-31 20:20:07 +0200stree(~stree@68.36.8.116)
2021-03-31 20:22:36 +0200 <tomsmeding> Under what conditions is a ByteString null-terminated?
2021-03-31 20:23:03 +0200Sgeo_(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 20:23:24 +0200 <tomsmeding> as in: does bytestring itself null-terminate things sometimes, or is this always the user's task?
2021-03-31 20:24:18 +0200Sgeo__(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 20:24:55 +0200olle(~olle@i5E8666BD.versanet.de)
2021-03-31 20:24:57 +0200 <tomsmeding> context: snap-core defines this function: https://hackage.haskell.org/package/snap-core-1.0.4.2/docs/src/Snap.Internal.Http.Types.html#parse…
2021-03-31 20:25:12 +0200 <olle> Question: Is exceptions in Haskell a regular monad? Or does it have some extras built in?
2021-03-31 20:25:17 +0200 <olle> Are*
2021-03-31 20:25:57 +0200 <tomsmeding> S.unsafeUseAsCString (where S = Data.ByteString.Unsafe) requires that the bytestring is null-terminated, but my application is crashing (segfault) within the C function called here and I'm not sure how to debug why
2021-03-31 20:26:34 +0200 <tomsmeding> olle: are you talking about ExceptT, or something else?
2021-03-31 20:27:04 +0200 <geekosaur> I'd expect it to be the user's job, since it may be e.g. part of a network stream
2021-03-31 20:27:06 +0200Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 268 seconds)
2021-03-31 20:27:07 +0200 <geekosaur> fwiw
2021-03-31 20:27:11 +0200 <olle> tomsmeding: dunno
2021-03-31 20:27:12 +0200 <tomsmeding> also not sure what you mean with "extras"; every monad implements some kind of functionality apart from supporting 'return' and '>>='
2021-03-31 20:27:20 +0200 <tomsmeding> except I guess Identity
2021-03-31 20:27:34 +0200 <tomsmeding> geekosaur: that's what I'd think too
2021-03-31 20:27:34 +0200 <olle> tomsmeding: extras = special language support that makes it different than any other monad
2021-03-31 20:27:43 +0200 <tomsmeding> olle: if you're talking about ExceptT, no
2021-03-31 20:27:51 +0200 <olle> alright
2021-03-31 20:28:06 +0200Sgeo_(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 252 seconds)
2021-03-31 20:28:08 +0200 <olle> Is there a concsensus in Haskell community of which error handling design pattern is best?
2021-03-31 20:28:20 +0200 <tomsmeding> olle: reason why I'm asking: haskell also has IO exceptions and asynchronous exceptions, which are two different things that are also different from ExceptT, and both are not monads at all :p
2021-03-31 20:28:21 +0200 <olle> Exceptions vs result types, etc
2021-03-31 20:28:29 +0200 <olle> tomsmeding: oh?
2021-03-31 20:28:34 +0200 <tomsmeding> "Is there a consensus in Haskell community of " -- no
2021-03-31 20:28:40 +0200 <olle> ^^
2021-03-31 20:28:49 +0200 <Uniaika> olle: my own consensus is that MonadError is great
2021-03-31 20:28:56 +0200 <Uniaika> if you handle business data-types
2021-03-31 20:29:05 +0200 <tomsmeding> well that may be overstating the case, but there are many different opinions about many different things
2021-03-31 20:29:09 +0200 <Uniaika> when it comes to file-system, network, etc, then Exceptions are a better way to go
2021-03-31 20:29:16 +0200 <olle> OK
2021-03-31 20:31:01 +0200 <tomsmeding> new question: if I define a local library with the name 'foo' in my cabal.project, will that shadow any 'foo' from hackage in the dependencies of my dependencies?
2021-03-31 20:31:12 +0200 <tomsmeding> (foo = snap-core >:D)
2021-03-31 20:32:00 +0200argento(~argent0@191.81.225.82)
2021-03-31 20:32:00 +0200acidjnk_new(~acidjnk@p200300d0c72b95486cfd1d07fe22841d.dip0.t-ipconnect.de)
2021-03-31 20:33:54 +0200 <geekosaur> I think it's supposed to. It did here, at least
2021-03-31 20:34:05 +0200 <tomsmeding> thanks!
2021-03-31 20:35:01 +0200 <tomsmeding> reason why I'm asking: ircbrowse is crashing, like, often
2021-03-31 20:35:55 +0200 <tomsmeding> like, a total of 7700 times in the past two months
2021-03-31 20:36:04 +0200viluon(uid453725@gateway/web/irccloud.com/x-uyquvhnfkmiqllxw) (Quit: Connection closed for inactivity)
2021-03-31 20:36:18 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 20:36:19 +0200 <geekosaur> I had wondered why 502 Bad Gateway was so relatively common…
2021-03-31 20:36:35 +0200 <tomsmeding> >.>
2021-03-31 20:37:05 +0200 <geekosaur> I think most of the time that would show up as a link time error, though, not as a crash. At least if it exposes any of the ABI
2021-03-31 20:37:06 +0200 <tomsmeding> for some reason I never looked in my core dump log; I assumed it was an uncommon occurrence
2021-03-31 20:37:14 +0200 <tomsmeding> link time error?
2021-03-31 20:38:02 +0200 <geekosaur> either duplicate symbols, or if it exposes any of the ABI at Haskell level then a compile time error showing two apparently identical types as not matching
2021-03-31 20:38:06 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 240 seconds)
2021-03-31 20:38:36 +0200 <tomsmeding> I'm talking about a segfault in C that comes seems to come from a null pointer dereference
2021-03-31 20:38:56 +0200 <tomsmeding> and I'm not trusting that unsafeUseAsCString, but maybe I'm mistaken
2021-03-31 20:39:09 +0200 <tomsmeding> (the crash seems to always be in that C function c_parse_http_time)
2021-03-31 20:39:40 +0200conal(~conal@64.71.133.70) (Read error: Connection reset by peer)
2021-03-31 20:39:50 +0200 <geekosaur> that doesn't sound like missing \0, to be honest
2021-03-31 20:39:59 +0200 <geekosaur> don't confuse \NUL with null pointers
2021-03-31 20:40:03 +0200Alleria__(~textual@mskresolve-a.mskcc.org) (Ping timeout: 268 seconds)
2021-03-31 20:40:08 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 20:40:10 +0200Sgeo_(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-03-31 20:40:19 +0200 <tomsmeding> very true
2021-03-31 20:40:27 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 20:40:45 +0200 <tomsmeding> can unsafeUseAsCString every provide a null pointer?
2021-03-31 20:40:47 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 258 seconds)
2021-03-31 20:41:33 +0200 <geekosaur> I don't think so, unless maybe it was fed one
2021-03-31 20:41:40 +0200lawid_(~quassel@ipservice-092-219-052-236.092.219.pools.vodafone-ip.de) (Ping timeout: 252 seconds)
2021-03-31 20:42:17 +0200 <tomsmeding> I'm going to instrument the C function anyway
2021-03-31 20:42:39 +0200 <tomsmeding> the coredumps tell me precious little without going through the pages of assembly listing in strptime()
2021-03-31 20:42:45 +0200lawid(~quassel@dslb-178-005-075-217.178.005.pools.vodafone-ip.de)
2021-03-31 20:42:54 +0200 <geekosaur> but it shouldn't be possible to feed it one since you're feeding it a ByteArray# allocated by the bytestring package, and if that's generating null pointers I'd expect a lot more to break
2021-03-31 20:43:45 +0200Sgeo__(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Ping timeout: 268 seconds)
2021-03-31 20:44:14 +0200 <geekosaur> hm. you may need to initialize the locale
2021-03-31 20:44:40 +0200conal(~conal@64.71.133.70)
2021-03-31 20:45:06 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 20:46:20 +0200howdoi(uid224@gateway/web/irccloud.com/x-qufpuczcdkidmfvl)
2021-03-31 20:47:36 +0200 <tomsmeding> running the function on sane input from 'cabal repl' works on my server, so I'm not sure it's an environment problem
2021-03-31 20:50:13 +0200Alleria(~textual@zrcout.mskcc.org)
2021-03-31 20:50:19 +0200_fcntl(~jaroslawj@185.234.208.208.r.toneticgroup.pl)
2021-03-31 20:50:21 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-03-31 20:50:37 +0200AlleriaGuest90523
2021-03-31 20:51:32 +0200lampowner(~xblow@2a02:2168:b03:3b74::1)
2021-03-31 20:53:52 +0200 <tomsmeding> (in any case it seems my server's system locale is C.UTF-8)
2021-03-31 20:55:08 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 20:55:26 +0200geekosaurwonders if that's the problem. it may not be fully set up, since that's a somewhat weird-looking locale
2021-03-31 20:56:08 +0200 <geekosaur> I'd use either C or en_US.UTF-8, not a combination of the two that might be half specified or something
2021-03-31 20:56:18 +0200tomsmedingdoesn't remember changing it from the ubuntu default
2021-03-31 20:57:22 +0200 <tomsmeding> then again, a segfault in an http time parsing function that only occurs sometimes?
2021-03-31 20:57:28 +0200 <geekosaur> /etc/default/locale here is en_US.UTF-8 fwiw
2021-03-31 20:57:33 +0200 <tomsmeding> s/segfault/null pointer dereference/
2021-03-31 20:57:54 +0200 <geekosaur> I dunno, I'm spitballing since I don't have enough information
2021-03-31 20:58:19 +0200 <tomsmeding> thanks anyway :)
2021-03-31 20:58:28 +0200 <tomsmeding> I'm going to try some instrumentation
2021-03-31 20:59:00 +0200 <geekosaur> and strptime() uses locale stuff heavily
2021-03-31 20:59:49 +0200 <tomsmeding> hm good point
2021-03-31 21:01:01 +0200vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-03-31 21:01:10 +0200 <tomsmeding> changed locale to en_US.UTF-8 and restarted ircbrowse, let's first see if this fixes things
2021-03-31 21:01:56 +0200Erutuon_(~Erutuon@97-116-27-119.mpls.qwest.net)
2021-03-31 21:02:41 +0200lawid(~quassel@dslb-178-005-075-217.178.005.pools.vodafone-ip.de) (Ping timeout: 265 seconds)
2021-03-31 21:02:58 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 21:05:20 +0200dpl_(~dpl@77.121.78.163)
2021-03-31 21:07:10 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2021-03-31 21:12:46 +0200mkDoku(~TheMule@aftr-37-201-195-154.unity-media.net) (Ping timeout: 240 seconds)
2021-03-31 21:14:09 +0200aarvar(~foewfoiew@2601:602:a080:fa0:906c:b23f:e55d:e8aa) (Ping timeout: 245 seconds)
2021-03-31 21:14:54 +0200 <_fcntl> wanted to play with ghc hacking, followed docs, bet on docker and got image that is based on project which is 1.5yo... does anyone use docker for ghc hacking?
2021-03-31 21:17:29 +0200olle(~olle@i5E8666BD.versanet.de) ()
2021-03-31 21:18:18 +0200 <Clint> what?
2021-03-31 21:19:06 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 21:19:11 +0200larryba(~bc8134e3@199.204.85.195)
2021-03-31 21:19:47 +0200molehillish(~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
2021-03-31 21:21:17 +0200kenran(~kenran@mue-88-130-62-062.dsl.tropolys.de)
2021-03-31 21:21:48 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
2021-03-31 21:21:56 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net)
2021-03-31 21:23:46 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
2021-03-31 21:25:53 +0200 <tomsmeding> hm?
2021-03-31 21:26:45 +0200 <tomsmeding> _fcntl: I think most people working on ghc just checkout the git repository directly on their machine and work in that
2021-03-31 21:26:46 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 252 seconds)
2021-03-31 21:27:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 21:27:26 +0200 <geekosaur> yes, docker images are more to install particular ghc versions to build programs that need those versions
2021-03-31 21:27:35 +0200 <geekosaur> and there are other/better ways to do that
2021-03-31 21:27:49 +0200 <_fcntl> @toms: tried, but have only ghc 8.8 in repository, and it needs 8.10 not available on Ubuntu, so tried with docker
2021-03-31 21:27:49 +0200 <lambdabot> Unknown command, try @list
2021-03-31 21:27:49 +0200jakalx(~jakalx@base.jakalx.net) ("Error from remote client")
2021-03-31 21:28:38 +0200fuzzy_id(~user@1.red-88-0-41.dynamicip.rima-tde.net)
2021-03-31 21:28:42 +0200 <tomsmeding> _fcntl: people generally use either hvr's ppa, or ghcup to install their ghc; using ghc from the standard distro repositories is fairly uncommon
2021-03-31 21:28:51 +0200malumore_(~malumore@151.62.117.70) (Remote host closed the connection)
2021-03-31 21:29:07 +0200fuzzy_id(~user@1.red-88-0-41.dynamicip.rima-tde.net) ()
2021-03-31 21:29:07 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 21:29:08 +0200 <_fcntl> tomsmending: understood, thanks!
2021-03-31 21:29:35 +0200malumore(~malumore@151.62.117.70)
2021-03-31 21:29:56 +0200 <tomsmeding> _fcntl: though I guess installing ghc in a docker container shouldn't be that difficult, nor would updating the image you got be, I guess?
2021-03-31 21:30:20 +0200dbmikus(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2021-03-31 21:30:42 +0200 <_fcntl> @tomsmending: true, but I'm 'newcomer' followed official docs, and couldn't do anything...
2021-03-31 21:30:42 +0200 <lambdabot> Unknown command, try @list
2021-03-31 21:30:47 +0200Pickchea(~private@unaffiliated/pickchea) (Quit: Leaving)
2021-03-31 21:31:27 +0200 <tomsmeding> _fcntl: which docs recommended using an outdated docker image? Perhaps those docs need to be updated :)
2021-03-31 21:31:59 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de)
2021-03-31 21:32:07 +0200 <_fcntl> tomsmeding: https://gitlab.haskell.org/ghc/ghc/-/wikis/building/preparation/linux
2021-03-31 21:34:18 +0200 <Clint> what's the problem you're trying to solve?
2021-03-31 21:34:42 +0200 <tomsmeding> Clint: they're trying to follow official docs to build ghc for local development and obtain a ghc that is quite old
2021-03-31 21:35:29 +0200 <_fcntl> Clint: exactly, as tomsmeding said... I'd like to contribute to ghc somehow...
2021-03-31 21:36:05 +0200 <Clint> but doesn't that page tell you how to build whatever version of ghc you want?
2021-03-31 21:36:06 +0200 <tomsmeding> _fcntl: regardless of what the docs say, anyway, I recommend using hvr's ppa or ghcup and doing it locally
2021-03-31 21:36:43 +0200 <tomsmeding> hm, interesting
2021-03-31 21:36:52 +0200 <tomsmeding> _fcntl: where did you get the old stuff from?
2021-03-31 21:37:01 +0200 <tomsmeding> does the docker container not work as specified?
2021-03-31 21:37:08 +0200 <_fcntl> ok, but now my env is getting a little bit messy ;) I've got ghc from aptitude, some local stack installs, not sure if not installed something via cabal and now ... ghcup, must clean that first..
2021-03-31 21:37:35 +0200tomsmedingassumed without checking that the docker image came with a pre-loaded ghc source tree that was old somehow, but in retrospect that makes no sense
2021-03-31 21:37:58 +0200 <_fcntl> toms: not working as current (> 9.1 I suspect) requires 8.10 ghc, and docke image has only 8.4 installed
2021-03-31 21:38:20 +0200jakalx(~jakalx@base.jakalx.net)
2021-03-31 21:38:29 +0200 <tomsmeding> _fcntl: the potential problem with not getting ghc from apt is that if you install some system package that requires haskell libraries, that may pull in the system ghc package anyway
2021-03-31 21:38:33 +0200 <tomsmeding> _fcntl: ah
2021-03-31 21:38:47 +0200 <_fcntl> configure: error: GHC version 8.10 or later is required to compile GHC.
2021-03-31 21:38:54 +0200 <_fcntl> that's the message I got
2021-03-31 21:39:04 +0200 <Clint> aha
2021-03-31 21:39:05 +0200 <_fcntl> pity docker images are not inside ghc repo
2021-03-31 21:39:15 +0200 <_fcntl> *docker descriptos
2021-03-31 21:39:32 +0200 <Clint> you might want to file a bug on https://github.com/gregwebs/ghc-docker-dev/issues
2021-03-31 21:39:41 +0200 <Clint> or send a pull request after tweaking the Dockerfile yourself
2021-03-31 21:39:51 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 21:40:04 +0200o1lo01ol1o(~o1lo01ol1@bl7-88-181.dsl.telepac.pt) (Remote host closed the connection)
2021-03-31 21:40:10 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 21:40:32 +0200 <tomsmeding> _fcntl: the Dockerfile is there though
2021-03-31 21:40:43 +0200 <_fcntl> I may do that but I think it would be easier (?) to introduce dockerfile to ghc source tree
2021-03-31 21:40:46 +0200 <_fcntl> lemme check
2021-03-31 21:41:06 +0200 <tomsmeding> though debian testing only seems to have ghc-8.8.4
2021-03-31 21:41:41 +0200 <Clint> doesn't matter, he's getting it from hvr
2021-03-31 21:42:20 +0200 <tomsmeding> Clint: where do you see that Dockerfile adding hvr's repo?
2021-03-31 21:42:25 +0200Guest_17(6029f825@096-041-248-037.res.spectrum.com)
2021-03-31 21:42:40 +0200 <tomsmeding> oh lol hvr's name isn't in there
2021-03-31 21:42:55 +0200 <Clint> tomsmeding: https://github.com/gregwebs/ghc-docker-dev/blob/master/Dockerfile#L30
2021-03-31 21:42:55 +0200tomsmedingis stupid
2021-03-31 21:43:04 +0200 <tomsmeding> yes indeed thanks
2021-03-31 21:43:07 +0200 <Clint> np
2021-03-31 21:44:43 +0200Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2021-03-31 21:47:07 +0200ircbrowse_tom(~ircbrowse@64.225.78.177)
2021-03-31 21:47:07 +0200Server+CLnt
2021-03-31 21:47:24 +0200 <tomsmeding> monochrom: I'm using digitalocean's standard ubuntu image for this particular server
2021-03-31 21:47:36 +0200 <tomsmeding> though I changed the system locale to en_US.UTF-8 and it's still crashing :p
2021-03-31 21:47:44 +0200Lord_of_Life_Lord_of_Life
2021-03-31 21:47:47 +0200 <monochrom> haha yikes
2021-03-31 21:48:01 +0200 <geekosaur> ick
2021-03-31 21:48:21 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw) (Ping timeout: 240 seconds)
2021-03-31 21:50:12 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 21:50:41 +0200 <monochrom> Yikes, so Strachey was responsible for the name "currying".
2021-03-31 21:50:51 +0200vgtw(~vgtw@gateway/tor-sasl/vgtw)
2021-03-31 21:51:10 +0200 <dolio> Oh really?
2021-03-31 21:51:34 +0200 <monochrom> https://en.wikipedia.org/wiki/Christopher_Strachey#Work
2021-03-31 21:52:09 +0200 <dolio> So it's his fault that Schönfinkel doesn't get his due?
2021-03-31 21:52:11 +0200 <monochrom> haha [citation needed] OK I am not so sure now
2021-03-31 21:54:15 +0200 <tomsmeding> relevant: https://en.wikipedia.org/wiki/Currying#History
2021-03-31 21:55:06 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 21:55:22 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-03-31 21:55:33 +0200 <tomsmeding> searching "strachey 1967" turns up https://www.cs.cmu.edu/~crary/819-f09/Strachey67.pdf which doesn't contain the word 'currying'
2021-03-31 21:56:28 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-03-31 21:56:47 +0200 <monochrom> Um, and he got to patent "base registers for program relocation"??!!!
2021-03-31 21:56:48 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
2021-03-31 21:57:58 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net)
2021-03-31 21:58:26 +0200 <tomsmeding> patent?
2021-03-31 21:58:41 +0200 <tomsmeding> did every cpu manufacturer ever pay royalties
2021-03-31 21:58:52 +0200 <monochrom> Yeah. The good old days of being able to patent base registers and xor tricks.
2021-03-31 21:59:42 +0200 <monochrom> Then again, today we also get to patent 1-click-buy and touch-the-icon-to-open.
2021-03-31 22:00:17 +0200 <tomsmeding> patent "using foldl' instead of foldl" and make every haskell program slower
2021-03-31 22:00:17 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de) (Ping timeout: 250 seconds)
2021-03-31 22:00:39 +0200 <monochrom> >:)
2021-03-31 22:01:29 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-03-31 22:04:33 +0200argento(~argent0@191.81.225.82) (Ping timeout: 268 seconds)
2021-03-31 22:05:06 +0200petersen(~petersen@redhat/juhp) (Ping timeout: 240 seconds)
2021-03-31 22:05:14 +0200kritzefitz_(~kritzefit@212.86.56.80) (Remote host closed the connection)
2021-03-31 22:06:14 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 22:06:21 +0200geowiesnot(~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 260 seconds)
2021-03-31 22:07:13 +0200petersen(~petersen@redhat/juhp)
2021-03-31 22:09:08 +0200 <maerwald> computer scientists are to blame for most of our modern day problems
2021-03-31 22:10:17 +0200abrar(~abrar@static-108-30-103-121.nycmny.fios.verizon.net) (Quit: WeeChat 2.9)
2021-03-31 22:10:35 +0200justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2021-03-31 22:10:38 +0200 <[exa]> (including computers)
2021-03-31 22:11:01 +0200Rudd0(~Rudd0@185.189.115.103) (Ping timeout: 260 seconds)
2021-03-31 22:11:33 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 22:11:55 +0200usr25(~usr25@unaffiliated/usr25)
2021-03-31 22:12:17 +0200 <maerwald> I'm glad many high-IQ ppl waste their life on chess. That creates less problems for us.
2021-03-31 22:12:56 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de)
2021-03-31 22:13:38 +0200kenran_(~kenran@mue-88-130-62-062.dsl.tropolys.de)
2021-03-31 22:16:11 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-03-31 22:16:11 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-03-31 22:16:15 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-03-31 22:16:35 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 22:18:11 +0200v01d4lph4(~v01d4lph4@223.190.20.92)
2021-03-31 22:18:27 +0200fancyremarker(~fancyrema@185.169.233.10) (Remote host closed the connection)
2021-03-31 22:18:47 +0200geekosaur(82650c7a@130.101.12.122) (Quit: Connection closed)
2021-03-31 22:18:48 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:1351:13b7:f6af:b97a) (Ping timeout: 246 seconds)
2021-03-31 22:21:11 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-03-31 22:22:18 +0200v01d4lph4(~v01d4lph4@223.190.20.92) (Ping timeout: 240 seconds)
2021-03-31 22:23:12 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-03-31 22:23:51 +0200 <fryguybob> Is there a straight forward way to write "shortest" so that shortest [[1..], [1,2,3]] -> [1,2,3] ?
2021-03-31 22:25:01 +0200kenran(~kenran@mue-88-130-62-062.dsl.tropolys.de) (Quit: Lost terminal)
2021-03-31 22:25:41 +0200 <sclv> fryguybob: sure, just use `genericLength` and peano numbers, I think :-)
2021-03-31 22:25:54 +0200 <justsomeguy> Maybe by using a type other than list, that requries a finite length.
2021-03-31 22:25:58 +0200 <sclv> actually you can do it directly by induction
2021-03-31 22:26:24 +0200 <[exa]> fryguybob: experiment with `map tail`
2021-03-31 22:26:26 +0200 <sclv> pair each list with itself, using the first element as the "index"
2021-03-31 22:26:58 +0200 <sclv> if there's something for which the "index" is nil, return it, if not drop one from each index, repeat
2021-03-31 22:27:47 +0200 <fryguybob> I was thinking something silly like map head . sequence ...
2021-03-31 22:28:14 +0200stree(~stree@68.36.8.116) (Ping timeout: 260 seconds)
2021-03-31 22:28:17 +0200 <sclv> oh yeah can't imagine a fully golfed one, but i can imagine a "slick" looking one with generic peanos at least
2021-03-31 22:28:34 +0200conal(~conal@64.71.133.70)
2021-03-31 22:30:11 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-03-31 22:31:10 +0200hiroaki(~hiroaki@2a02:8108:8c40:2bb8:461b:1426:c666:74bc)
2021-03-31 22:33:24 +0200 <[exa]> concatIterate would help
2021-03-31 22:34:52 +0200kenanmarasli(1fdf0dda@31.223.13.218)
2021-03-31 22:37:16 +0200supercoven(~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Ping timeout: 260 seconds)
2021-03-31 22:38:13 +0200kenran_(~kenran@mue-88-130-62-062.dsl.tropolys.de) (Quit: leaving)
2021-03-31 22:38:52 +0200 <kenanmarasli> I am having a bit of a terminology problem.
2021-03-31 22:38:53 +0200 <kenanmarasli> Why are *if* *else* *case* expressions in Haskell, but in C they are statements?
2021-03-31 22:39:28 +0200 <Rembane> kenanmarasli: Because Haskell doesn't have statements. This might actually be a lie, but it's a good lie imo.
2021-03-31 22:39:54 +0200 <maerwald> Rembane: it's not a lie
2021-03-31 22:40:00 +0200 <[exa]> kenanmarasli: counterexample-- in C, there's no sense doing `a = if (123) printf("123");`
2021-03-31 22:40:11 +0200 <ph88^> does anyone know how this site came into existence ? https://riptutorial.com/haskell
2021-03-31 22:40:30 +0200ubert(~Thunderbi@p200300ecdf25d9fde6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-03-31 22:40:50 +0200 <Rembane> maerwald: Cool. Are the functions in a module expressions? Or are they something else?
2021-03-31 22:40:55 +0200solidus-river(~mike@174.127.249.180)
2021-03-31 22:41:26 +0200stree(~stree@68.36.8.116)
2021-03-31 22:41:32 +0200 <yushyin> declarations/definitions
2021-03-31 22:41:43 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
2021-03-31 22:41:52 +0200 <Rembane> Of course! Thank you!
2021-03-31 22:41:55 +0200 <solidus-river> hey all, i have to parse a bunch of binary blobs sent over the wire and each parse returns an Either Err Result. It winds up being an unwieldly number of nested case statements to parse is there a better way to do this syntactically?
2021-03-31 22:41:57 +0200 <maerwald> haskell report doesn't say anything about execution either
2021-03-31 22:42:04 +0200 <maerwald> it's not specified
2021-03-31 22:42:18 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net)
2021-03-31 22:42:52 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-03-31 22:42:56 +0200 <[exa]> solidus-river: attoparsec? (not sure how much "binary" it is but if it fits in bytestrings then attoparsec should just work)
2021-03-31 22:43:56 +0200usr25(~usr25@unaffiliated/usr25) ("Leaving")
2021-03-31 22:44:03 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net)
2021-03-31 22:44:07 +0200 <ephemient> @hackage attoparsec
2021-03-31 22:44:07 +0200 <lambdabot> https://hackage.haskell.org/package/attoparsec
2021-03-31 22:44:11 +0200 <ephemient> @hackage binary
2021-03-31 22:44:11 +0200 <lambdabot> https://hackage.haskell.org/package/binary
2021-03-31 22:44:24 +0200 <[exa]> solidus-river: ah you already have the functions for parsing these, sorry. You might want to exploit the monad instance for Either then, it works like "returning Left means an error"
2021-03-31 22:45:40 +0200 <solidus-river> [exa]: ooo, the monad instance looks like exactly what I want, I can just print out the whole sequence on any error and then not worry so much about reporting exactly what failed to parse
2021-03-31 22:45:46 +0200 <ephemient> Either Err Result is in the correct order for that already, but I am not sure given the previous statement whether the awkwardness is in the parsing or in handling the parse result?
2021-03-31 22:47:20 +0200 <[exa]> solidus-river: it usually helps, given there's not much other complexity that would break it. Generally, you can rewrite your program with `do` statements, "bind" each Either with say `subResult <- parsingOperation`, and you get the "Right" type and can completely ignore Lefts
2021-03-31 22:47:31 +0200 <[exa]> if anything breaks, the first Left gets returned
2021-03-31 22:48:07 +0200 <[exa]> > do { a <- Right 5; b <- Right 3; Right (a+b); }
2021-03-31 22:48:09 +0200 <lambdabot> Right 8
2021-03-31 22:48:24 +0200 <[exa]> (you can use `return` or `pure` instead of the last `Right`)
2021-03-31 22:48:29 +0200 <[exa]> compare to:
2021-03-31 22:48:33 +0200 <[exa]> > do { a <- Right 5; b <- Left "sorry"; Right (a+b); }
2021-03-31 22:48:35 +0200 <lambdabot> Left "sorry"
2021-03-31 22:48:58 +0200 <solidus-river> i think the monad instance would collapse things nicely. I was being kinda derpy and logging each parse error nad the case statments were running of the right end of the screen. the do syntax looks tasty though, every error ends up being the same. I need to be better about reading how things are instanced that I'm using
2021-03-31 22:49:10 +0200 <kenanmarasli> Rembane: I see. Well for me it looks like I can think of these keywords in Haskell like they are wrapped in a function. *if* *else* eventually returns a value and that's why they are expressions. Is it correct?
2021-03-31 22:49:24 +0200 <solidus-river> side note, I don't think the monadic instance in zeromq4-haskell is actually usefull in a real world scenario.
2021-03-31 22:49:39 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
2021-03-31 22:49:58 +0200 <solidus-river> but I should also :X until I have a pr with a different instance to back my thoughts
2021-03-31 22:50:00 +0200Guest_17(6029f825@096-041-248-037.res.spectrum.com) (Quit: Connection closed)
2021-03-31 22:50:20 +0200 <Rembane> kenanmarasli: Yeah, they evaluate to a value. Both branches evaluate to values of the same type too which is a nice property.
2021-03-31 22:50:25 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-03-31 22:50:49 +0200 <solidus-river> * not actually useful
2021-03-31 22:51:00 +0200 <kenanmarasli> Thank you :)
2021-03-31 22:51:08 +0200 <Rembane> np :)
2021-03-31 22:51:22 +0200son0p(~son0p@181.136.122.143) (Quit: Lost terminal)
2021-03-31 22:52:09 +0200 <[exa]> solidus-river: it may be good for demos. it kinda reminds me the Action monad from Scotty (takes care about simple mistakes, causes trouble later)
2021-03-31 22:52:30 +0200Narinas(~Narinas@187-178-93-112.dynamic.axtel.net)
2021-03-31 22:53:24 +0200 <[exa]> (/me -> afk)
2021-03-31 22:53:47 +0200stree(~stree@68.36.8.116) (Quit: Caught exception)
2021-03-31 22:54:08 +0200 <sm2n> kenanmarasli, [exa], note that the C example could return a value, it is just that C was designed not to
2021-03-31 22:54:09 +0200stree(~stree@68.36.8.116)
2021-03-31 22:54:40 +0200 <sm2n> most lisps will return a value in that example, for example
2021-03-31 22:54:47 +0200 <sm2n> C is just not very compositional
2021-03-31 22:54:50 +0200 <wz1000> is there a variant of Data.Sequence on hackage that is strict in the elements?
2021-03-31 22:55:18 +0200royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds)
2021-03-31 22:55:49 +0200 <sm2n> though I should point out, C has the ternary operator a ? b : c, which is essentially if expressions
2021-03-31 22:55:55 +0200 <wz1000> I guess Vector would also work, but I can't use Data.Vector.Unboxed or Data.Vector.Storable
2021-03-31 22:56:49 +0200 <monochrom> Right, Haskell's if-then-else is really better off compared to C's ?:
2021-03-31 22:57:27 +0200bitmapper(uid464869@gateway/web/irccloud.com/x-lksmeqawycwfpajp)
2021-03-31 22:57:54 +0200 <systemfault> No... but Haskell has alternatives when you need to do multiple comparisons. C does not.
2021-03-31 22:58:06 +0200cyphase(~cyphase@unaffiliated/cyphase) (Ping timeout: 240 seconds)
2021-03-31 22:58:21 +0200RusAlex(~Chel@unaffiliated/rusalex) (Ping timeout: 246 seconds)
2021-03-31 22:59:03 +0200 <monochrom> I am just talking about if-then-else.
2021-03-31 22:59:28 +0200 <sm2n> yeah, of course
2021-03-31 22:59:40 +0200 <monochrom> and on the C side, just ?: vs if(){}else{}
2021-03-31 22:59:59 +0200acidjnk_new(~acidjnk@p200300d0c72b95486cfd1d07fe22841d.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-03-31 23:00:45 +0200 <monochrom> If I relate Haskell's Int32#->Int32# to C's int(int), you don't go "no, Haskell has polymorphic types, C does not".
2021-03-31 23:01:06 +0200Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 265 seconds)
2021-03-31 23:01:49 +0200 <monochrom> Or maybe you should! Someone please tell me "no, GHC has levity polymorphism, C does not". >:)
2021-03-31 23:02:18 +0200 <solidus-river> [exa]: yeah it hides timing around closing sockets and provides an easy way to do something in another thread but unless I'm missing something about forkFinally, in doing so it takes away your ability to be smart about coordinating shutdown or reacting to fatal errors in threads
2021-03-31 23:02:26 +0200 <Rembane> I don't know about levity polymorphism, but I could sure use some levitating polymorphism.
2021-03-31 23:02:33 +0200 <solidus-river> sm2n: i missed the paste but I"m curious
2021-03-31 23:02:34 +0200 <monochrom> :)
2021-03-31 23:02:51 +0200hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 252 seconds)
2021-03-31 23:03:28 +0200 <sm2n> paste?
2021-03-31 23:04:03 +0200 <solidus-river> i thought there was some code being referenced in the if-then-else discussion
2021-03-31 23:05:00 +0200ian_Igloo
2021-03-31 23:05:30 +0200cyphase(~cyphase@unaffiliated/cyphase)
2021-03-31 23:05:33 +0200yunusaydin(4eb8266d@78.184.38.109)
2021-03-31 23:06:12 +0200 <sm2n> <[exa]> kenanmarasli: counterexample-- in C, there's no sense doing `a = if (123) printf("123");`
2021-03-31 23:06:45 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 23:06:58 +0200kenanmarasli(1fdf0dda@31.223.13.218) (Quit: Connection closed)
2021-03-31 23:07:08 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-03-31 23:07:10 +0200 <Rembane> sm2n: You could do that in Haskell for about the same amount of sense.
2021-03-31 23:07:25 +0200heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2021-03-31 23:08:09 +0200lampowner(~xblow@2a02:2168:b03:3b74::1) (Ping timeout: 246 seconds)
2021-03-31 23:09:56 +0200nbloomf(~nbloomf@2600:1700:ad14:3020:4485:5098:cb7a:cbe1) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-03-31 23:09:56 +0200 <sm2n> my point is that is a language design thing
2021-03-31 23:10:28 +0200 <monochrom> The story of the imperative, statement version of if(){} is also interesting in its own right.
2021-03-31 23:11:29 +0200 <monochrom> First, realize that sequential composition of two statements is an associative operator. Indeed, in Pascal, the semicolon is a binary operator, you cannot write "s; t;", you can only write "s; t".
2021-03-31 23:11:34 +0200int-e(~noone@int-e.eu) (Remote host closed the connection)
2021-03-31 23:12:02 +0200olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2021-03-31 23:12:16 +0200int-e(~noone@int-e.eu)
2021-03-31 23:12:22 +0200 <monochrom> So next you ask "does it have an identity?". Yes, that would be the no-op statement, syntactically as various ways of writing "the empty statement".
2021-03-31 23:12:55 +0200 <monochrom> With that, if(){} is best viewed as syntax sugar for if(){}else{no-op}.
2021-03-31 23:13:04 +0200 <ephemient> in IO, `when` acts like a single-branch imperative if. you don't get a (useful) result out of it either
2021-03-31 23:13:32 +0200tolwiz(4f028693@host-79-2-134-147.business.telecomitalia.it)
2021-03-31 23:13:47 +0200 <monochrom> If you ever try to reason about imperative programs (euphemism for "give the language a semantics"), you need to be aware of this, and not be blinded by the slick "if(){}" syntax.
2021-03-31 23:14:13 +0200lambdabot(~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection)
2021-03-31 23:14:41 +0200lambdabot(~lambdabot@silicon.int-e.eu)
2021-03-31 23:14:41 +0200lambdabot(~lambdabot@silicon.int-e.eu) (Changing host)
2021-03-31 23:14:41 +0200lambdabot(~lambdabot@haskell/bot/lambdabot)
2021-03-31 23:16:12 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de) (Ping timeout: 246 seconds)
2021-03-31 23:17:53 +0200jules_(~jules@ip201.ip-135-125-227.eu)
2021-03-31 23:19:58 +0200gzj(~gzj@unaffiliated/gzj)
2021-03-31 23:22:07 +0200bugbot(~bugbot@185.169.233.10)
2021-03-31 23:22:14 +0200wonko7(~wonko7@62.115.229.50) (Ping timeout: 268 seconds)
2021-03-31 23:22:55 +0200wonko7(~wonko7@62.115.229.50)
2021-03-31 23:23:56 +0200borne(~fritjof@200116b86411e500f7ed9fd86a2491f0.dip.versatel-1u1.de)
2021-03-31 23:28:24 +0200wonko7(~wonko7@62.115.229.50) (Ping timeout: 268 seconds)
2021-03-31 23:28:34 +0200jamm_(~jamm@unaffiliated/jamm)
2021-03-31 23:32:54 +0200jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
2021-03-31 23:33:58 +0200dpl_(~dpl@77.121.78.163) (Read error: Connection reset by peer)
2021-03-31 23:36:04 +0200Guest90523(~textual@zrcout.mskcc.org) (Quit: Textual IRC Client: www.textualapp.com)
2021-03-31 23:36:09 +0200fendor_(~fendor@91.141.3.64.wireless.dyn.drei.com)
2021-03-31 23:37:06 +0200elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-03-31 23:38:25 +0200fendor(~fendor@178.165.130.8.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2021-03-31 23:38:52 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-03-31 23:40:10 +0200Alleria(~textual@zrcout.mskcc.org)
2021-03-31 23:40:33 +0200AlleriaGuest50609
2021-03-31 23:42:33 +0200Lycurgus(~niemand@98.4.120.166)
2021-03-31 23:46:03 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 265 seconds)
2021-03-31 23:46:29 +0200sqrt2(~ben@unaffiliated/sqrt2) (Read error: Connection reset by peer)
2021-03-31 23:46:39 +0200sqrt2(~ben@unaffiliated/sqrt2)
2021-03-31 23:48:35 +0200Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-03-31 23:51:52 +0200 <_fcntl> (woohoo! at last, built ghc 9.2...)
2021-03-31 23:52:44 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Remote host closed the connection)
2021-03-31 23:53:03 +0200star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-03-31 23:54:17 +0200RusAlex(~Chel@unaffiliated/rusalex)
2021-03-31 23:54:34 +0200coot(~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-03-31 23:55:19 +0200neiluj(~jco@unaffiliated/neiluj) (Quit: leaving)
2021-03-31 23:56:13 +0200conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-03-31 23:57:11 +0200cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 240 seconds)
2021-03-31 23:59:41 +0200conal_(~conal@64.71.133.70)