Home liberachat/#haskell: Logs Calendar

Logs on 2024-02-13 (liberachat/#haskell)

00:00:05 LukeHoersten joins (~LukeHoers@user/lukehoersten)
00:03:31 cheater joins (~Username@user/cheater)
00:06:52 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
00:07:41 × vulpine quits (~xfnw@tilde.team) (Ping timeout: 260 seconds)
00:08:08 × remmie quits (ianremsen@198.50.210.248) (Ping timeout: 268 seconds)
00:08:13 × Midjak quits (~MarciZ@82.66.147.146) (Quit: This computer has gone to sleep)
00:09:52 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
00:10:28 chexum joins (~quassel@gateway/tor-sasl/chexum)
00:10:42 × califax quits (~califax@user/califx) (Remote host closed the connection)
00:11:08 califax joins (~califax@user/califx)
00:12:14 × LukeHoersten quits (~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:13:46 LukeHoersten joins (~LukeHoers@user/lukehoersten)
00:19:46 × LukeHoersten quits (~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:22:18 azimut joins (~azimut@gateway/tor-sasl/azimut)
00:37:14 dibblego joins (~dibblego@haskell/developer/dibblego)
00:44:06 × dibblego quits (~dibblego@haskell/developer/dibblego) (Ping timeout: 255 seconds)
00:46:16 × tri_ quits (~tri@172.59.9.246) (Remote host closed the connection)
00:48:55 dibblego joins (~dibblego@haskell/developer/dibblego)
00:49:19 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
00:51:55 vulpine joins (xfnw@tilde.team)
00:53:59 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
00:57:45 × mrmr155334 quits (~mrmr@user/mrmr) (Read error: Connection reset by peer)
01:05:00 remmie joins (ianremsen@tilde.team)
01:15:11 × califax quits (~califax@user/califx) (Ping timeout: 255 seconds)
01:15:24 califax_ joins (~califax@user/califx)
01:16:40 califax_ is now known as califax
01:20:33 × foul_owl quits (~kerry@185.219.141.164) (Ping timeout: 256 seconds)
01:23:57 jmdaemon joins (~jmdaemon@user/jmdaemon)
01:25:08 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
01:25:33 ec joins (~ec@gateway/tor-sasl/ec)
01:25:55 × Hooloovoo quits (~Hooloovoo@hax0rbana.org) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
01:29:42 × TonyStone quits (~TonyStone@074-076-057-186.res.spectrum.com) (Quit: Leaving)
01:30:07 Hooloovoo joins (~Hooloovoo@hax0rbana.org)
01:32:39 Sciencentistguy0 joins (~sciencent@hacksoc/ordinary-member)
01:33:12 eL_Bart0- joins (eL_Bart0@dietunichtguten.org)
01:33:55 dispater- joins (~dispater@mail.brprice.uk)
01:34:28 ridcully_ joins (~ridcully@p508ac914.dip0.t-ipconnect.de)
01:34:31 × tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 255 seconds)
01:34:58 foul_owl joins (~kerry@174-21-148-34.tukw.qwest.net)
01:35:10 driib3 joins (~driib@vmi931078.contaboserver.net)
01:35:43 srk_ joins (~sorki@user/srk)
01:35:45 simpleauthority_ joins (~simpleaut@user/simpleauthority)
01:35:47 roosterphant_ joins (~roosterph@idlerpg/player/roosterphant)
01:35:53 k_hachig joins (~k_hachig@2607:fea8:351d:ef0:88b5:6a7a:debb:86f7)
01:36:04 xff0x_ joins (~xff0x@2405:6580:b080:900:f63f:9232:e534:15f0)
01:36:04 dobblego joins (~dibblego@116-255-1-119.ip4.superloop.au)
01:36:04 dontdieych_ joins (~alarm@132.226.169.184)
01:36:04 × dobblego quits (~dibblego@116-255-1-119.ip4.superloop.au) (Changing host)
01:36:04 dobblego joins (~dibblego@haskell/developer/dibblego)
01:36:05 aku_ joins (~aku@65.108.245.241)
01:36:06 beanmachine joins (bm380@pip.srcf.societies.cam.ac.uk)
01:36:06 mzg_ joins (mzg@lazy.unconscious.biz)
01:36:07 myxokephale joins (~myxos@065-028-251-121.inf.spectrum.com)
01:36:09 eugenrh_ joins (~eugenrh@2a01:4f9:c011:265::1)
01:36:15 czy` joins (~user@117.63.127.239)
01:36:18 mauke_ joins (~mauke@user/mauke)
01:36:18 mjacob_ joins (~mjacob@adrastea.uberspace.de)
01:36:22 leeb- joins (~leeb@tk2-243-31079.vs.sakura.ne.jp)
01:36:26 jjhoo_ joins (jahakala@user/jjhoo)
01:36:44 exarkun_ joins (~exarkun@user/exarkun)
01:36:47 Hoolootwo joins (~Hooloovoo@hax0rbana.org)
01:37:40 hueso_ joins (~root@user/hueso)
01:37:44 Batzy_ joins (~quassel@user/batzy)
01:37:45 nitrix_ joins (~nitrix@user/nitrix)
01:37:58 Natch| joins (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
01:38:44 Maxdaman1us joins (~Maxdamant@user/maxdamantus)
01:40:24 × eL_Bart0 quits (eL_Bart0@dietunichtguten.org) (Ping timeout: 264 seconds)
01:40:24 × Adran quits (~adran@botters/adran) (Ping timeout: 264 seconds)
01:40:24 × leeb quits (~leeb@tk2-243-31079.vs.sakura.ne.jp) (Ping timeout: 264 seconds)
01:40:24 × myxos quits (~myxos@065-028-251-121.inf.spectrum.com) (Ping timeout: 264 seconds)
01:40:24 × dispater quits (~dispater@mail.brprice.uk) (Ping timeout: 264 seconds)
01:40:24 × flocks_ quits (~flocks@134.122.90.60) (Ping timeout: 264 seconds)
01:40:24 × Raito_Bezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 264 seconds)
01:40:24 leeb- is now known as leeb
01:40:24 × echoreply quits (~echoreply@45.32.163.16) (Ping timeout: 264 seconds)
01:40:24 × greenbagels quits (~gb@user/greenbagels) (Ping timeout: 264 seconds)
01:40:24 × dontdieych quits (~alarm@132.226.169.184) (Ping timeout: 264 seconds)
01:40:24 × Hooloovoo quits (~Hooloovoo@hax0rbana.org) (Ping timeout: 264 seconds)
01:40:24 × dibblego quits (~dibblego@haskell/developer/dibblego) (Ping timeout: 264 seconds)
01:40:24 × xff0x quits (~xff0x@ai099196.d.east.v6connect.net) (Ping timeout: 264 seconds)
01:40:24 × Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds)
01:40:24 × driib quits (~driib@vmi931078.contaboserver.net) (Ping timeout: 264 seconds)
01:40:25 × Natch quits (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 264 seconds)
01:40:25 × Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 264 seconds)
01:40:25 × czy quits (~user@117.63.127.239) (Ping timeout: 264 seconds)
01:40:25 × nitrix quits (~nitrix@user/nitrix) (Ping timeout: 264 seconds)
01:40:25 × exarkun quits (~exarkun@user/exarkun) (Ping timeout: 264 seconds)
01:40:25 × hueso quits (~root@user/hueso) (Ping timeout: 264 seconds)
01:40:25 × ridcully quits (~ridcully@p508ac914.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
01:40:25 × eugenrh quits (~eugenrh@static.20.60.21.65.clients.your-server.de) (Ping timeout: 264 seconds)
01:40:25 × mjacob quits (~mjacob@adrastea.uberspace.de) (Ping timeout: 264 seconds)
01:40:25 × Batzy quits (~quassel@user/batzy) (Ping timeout: 264 seconds)
01:40:25 × aku quits (~aku@65.108.245.241) (Ping timeout: 264 seconds)
01:40:25 × jjhoo quits (~jahakala@user/jjhoo) (Ping timeout: 264 seconds)
01:40:25 × simpleauthority quits (~simpleaut@user/simpleauthority) (Ping timeout: 264 seconds)
01:40:25 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Ping timeout: 264 seconds)
01:40:25 × Igloo quits (~ian@matrix.chaos.earth.li) (Ping timeout: 264 seconds)
01:40:25 × mauke quits (~mauke@user/mauke) (Ping timeout: 264 seconds)
01:40:25 × srk quits (~sorki@user/srk) (Ping timeout: 264 seconds)
01:40:25 × koolazer quits (~koo@user/koolazer) (Ping timeout: 264 seconds)
01:40:25 × mzg quits (mzg@lazy.unconscious.biz) (Ping timeout: 264 seconds)
01:40:25 × benmachine quits (bm380@pip.srcf.societies.cam.ac.uk) (Ping timeout: 264 seconds)
01:40:25 driib3 is now known as driib
01:40:25 dobblego is now known as dibblego
01:40:25 Sciencentistguy0 is now known as Sciencentistguy
01:40:26 mauke_ is now known as mauke
01:40:26 srk_ is now known as srk
01:40:26 simpleauthority_ is now known as simpleauthority
01:40:30 Natch| is now known as Natch
01:40:30 nitrix_ is now known as nitrix
01:41:00 flocks joins (~flocks@134.122.90.60)
01:41:05 Igloo joins (~ian@2001:8b0:645c::210)
01:41:11 koolazer joins (~koo@user/koolazer)
01:44:30 Adran joins (~adran@botters/adran)
01:45:03 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
01:45:13 shailangsa joins (~shailangs@host109-152-9-157.range109-152.btcentralplus.com)
01:47:10 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
01:47:53 tomboy64 joins (~tomboy64@user/tomboy64)
01:48:00 Lycurgus joins (~georg@user/Lycurgus)
01:48:10 echoreply joins (~echoreply@2001:19f0:9002:1f3b:5400:ff:fe6f:8b8d)
01:48:26 Raito_Bezarius joins (~Raito@wireguard/tunneler/raito-bezarius)
01:56:34 Hoolootwo is now known as Hooloovoo
02:14:26 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 256 seconds)
02:16:05 × otto_s quits (~user@p5b044082.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
02:17:29 otto_s joins (~user@p4ff27c98.dip0.t-ipconnect.de)
02:19:19 d0liver joins (~d0liver@ip70-191-97-164.tu.ok.cox.net)
02:20:09 bilegeek joins (~bilegeek@2600:1008:b057:3739:dd8b:4851:4b80:631b)
02:32:00 mrmr155334 joins (~mrmr@user/mrmr)
02:38:19 × jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 246 seconds)
02:40:50 jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
02:45:14 roosterphant_ is now known as roosterphant
03:01:58 × dsrt^ quits (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Remote host closed the connection)
03:04:57 × xff0x_ quits (~xff0x@2405:6580:b080:900:f63f:9232:e534:15f0) (Ping timeout: 255 seconds)
03:05:40 xff0x joins (~xff0x@2405:6580:b080:900:1d6a:1ca0:6d55:1501)
03:09:30 iteratee_ joins (~kyle@162.218.222.207)
03:09:30 × iteratee quits (~kyle@162.218.222.207) (Read error: Connection reset by peer)
03:23:07 × xff0x quits (~xff0x@2405:6580:b080:900:1d6a:1ca0:6d55:1501) (Ping timeout: 246 seconds)
03:24:04 xff0x joins (~xff0x@2405:6580:b080:900:1873:af:349f:f9a5)
03:27:00 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 255 seconds)
03:28:38 iteratee joins (~kyle@162.218.222.207)
03:28:38 × iteratee_ quits (~kyle@162.218.222.207) (Read error: Connection reset by peer)
03:30:28 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Killed (NickServ (GHOST command used by roosterphant_)))
03:31:05 × td_ quits (~td@i53870937.versanet.de) (Ping timeout: 252 seconds)
03:31:24 roosterphant_ joins (~roosterph@idlerpg/player/roosterphant)
03:32:45 td_ joins (~td@i5387092A.versanet.de)
03:41:15 roosterphant_ is now known as roosterphant
03:45:25 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Quit: ChaiTRex)
03:46:18 whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com)
03:47:53 roosterphant is now known as roosterphantt
03:47:57 roosterphantt is now known as roosterphant
03:51:43 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
03:52:44 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
03:53:46 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Remote host closed the connection)
03:54:07 roosterphant joins (~roosterph@idlerpg/player/roosterphant)
03:54:44 × mulk quits (~mulk@pd9514245.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
03:55:22 × Hooloovoo quits (~Hooloovoo@hax0rbana.org) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
03:55:43 × Square3 quits (~Square4@user/square) (Ping timeout: 260 seconds)
03:55:50 mulk joins (~mulk@p5b2dc076.dip0.t-ipconnect.de)
03:56:05 Hooloovoo joins (~Hooloovoo@hax0rbana.org)
04:00:57 ChaiTRex joins (~ChaiTRex@user/chaitrex)
04:04:17 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
04:10:50 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Quit: Bye)
04:11:32 roosterphant joins (~roosterph@185.21.217.76)
04:11:32 × roosterphant quits (~roosterph@185.21.217.76) (Changing host)
04:11:32 roosterphant joins (~roosterph@idlerpg/player/roosterphant)
04:14:13 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Remote host closed the connection)
04:14:24 × Hooloovoo quits (~Hooloovoo@hax0rbana.org) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
04:14:48 roosterphant joins (~roosterph@185.21.217.76)
04:14:48 × roosterphant quits (~roosterph@185.21.217.76) (Changing host)
04:14:48 roosterphant joins (~roosterph@idlerpg/player/roosterphant)
04:17:04 Hooloovoo joins (~Hooloovoo@hax0rbana.org)
04:29:21 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
04:29:25 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Quit: Bye)
04:29:40 Sgeo joins (~Sgeo@user/sgeo)
04:29:46 roosterphant joins (~roosterph@idlerpg/player/roosterphant)
04:32:15 × flocks quits (~flocks@134.122.90.60) (Ping timeout: 255 seconds)
04:33:01 flocks joins (~flocks@134.122.90.60)
04:33:36 × eugenrh_ quits (~eugenrh@2a01:4f9:c011:265::1) (Ping timeout: 255 seconds)
04:33:36 × gentauro quits (~gentauro@user/gentauro) (Ping timeout: 255 seconds)
04:33:54 eugenrh_ joins (~eugenrh@2a01:4f9:c011:265::1)
04:34:02 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Read error: Connection reset by peer)
04:34:03 × tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 255 seconds)
04:34:03 × koolazer quits (~koo@user/koolazer) (Ping timeout: 255 seconds)
04:34:24 koolazer joins (~koo@user/koolazer)
04:35:36 gentauro joins (~gentauro@user/gentauro)
04:35:44 × jargon quits (~jargon@157.sub-174-205-162.myvzw.com) (Remote host closed the connection)
04:36:18 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
04:37:14 × foul_owl quits (~kerry@174-21-148-34.tukw.qwest.net) (Ping timeout: 256 seconds)
04:37:36 roosterphant joins (~roosterph@idlerpg/player/roosterphant)
04:44:25 aforemny_ joins (~aforemny@i59F516EF.versanet.de)
04:45:49 × aforemny quits (~aforemny@i59F516D4.versanet.de) (Ping timeout: 256 seconds)
04:47:34 tomboy64 joins (~tomboy64@user/tomboy64)
04:48:04 × roosterphant quits (~roosterph@idlerpg/player/roosterphant) (Remote host closed the connection)
04:51:28 foul_owl joins (~kerry@157.97.134.168)
05:02:24 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 255 seconds)
05:06:09 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
05:07:42 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
05:08:18 michalz joins (~michalz@185.246.207.221)
05:10:29 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
05:11:25 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
05:11:41 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
05:20:47 <jackdk> Lens question: I seek to write a function with the following type: `makeMap :: (Applicative f) => (a -> f b) -> Set a -> f (Map a b)`. I can almost do it with `lens`: `makeMap f = toMapOf (folded . selfIndex . _)` but I can't find an applicative variant of `to`. Is there one, or am I doomed?
05:22:28 <jackdk> (A non-lens solution: `makeMap f = sequenceA . Map.fromSet f`, but I've been nerd-sniped)
05:30:20 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
05:31:34 × k_hachig quits (~k_hachig@2607:fea8:351d:ef0:88b5:6a7a:debb:86f7) (Ping timeout: 260 seconds)
05:32:37 igemnace joins (~ian@user/igemnace)
05:33:34 × michalz quits (~michalz@185.246.207.221) (Quit: ZNC 1.8.2 - https://znc.in)
05:36:22 michalz joins (~michalz@185.246.207.200)
05:41:17 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 272 seconds)
05:53:37 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
05:56:55 Maxdaman1us is now known as Maxdamantus
05:59:23 benjaminl joins (~benjaminl@user/benjaminl)
06:02:30 zetef joins (~quassel@95.77.17.251)
06:02:49 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
06:04:11 × mulk quits (~mulk@p5b2dc076.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
06:04:45 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
06:15:20 mulk joins (~mulk@p5b112c60.dip0.t-ipconnect.de)
06:15:51 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
06:16:49 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
06:18:10 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
06:18:23 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
06:21:10 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
06:21:51 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
06:22:49 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
06:25:35 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
06:35:58 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
06:47:52 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
06:48:02 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
06:52:41 RaspbellySwirl joins (~Raspbelly@host-213-235-142-6.ip.topnet.cz)
07:22:12 takuan joins (~takuan@178-116-218-225.access.telenet.be)
07:23:01 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
07:23:18 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:23:45 zetef joins (~quassel@95.77.17.251)
07:33:09 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
07:39:01 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:45:47 × lottaquestions quits (~nick@2607:fa49:503d:b200:d22b:7da7:bae:91de) (Ping timeout: 260 seconds)
07:49:33 × ft quits (~ft@p508db2e6.dip0.t-ipconnect.de) (Quit: leaving)
07:59:22 lottaquestions joins (~nick@2607:fa49:503d:b200:3407:5975:bc8d:f2ea)
08:08:47 azimut joins (~azimut@gateway/tor-sasl/azimut)
08:10:18 gmg joins (~user@user/gehmehgeh)
08:13:04 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
08:18:56 danse-nr3 joins (~danse@151.43.157.6)
08:22:01 × danse-nr3 quits (~danse@151.43.157.6) (Remote host closed the connection)
08:22:24 danse-nr3 joins (~danse@151.43.157.6)
08:22:53 × bilegeek quits (~bilegeek@2600:1008:b057:3739:dd8b:4851:4b80:631b) (Quit: Leaving)
08:23:40 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
08:23:47 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
08:23:58 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
08:24:05 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
08:27:21 <Axman6> jackdk: that looks like one of the cases where you can passed directly to the lens; one of the several functions in lens which are defined as id
08:31:40 pruiz joins (~user@user/pruiz)
08:32:15 mei joins (~mei@user/mei)
08:34:23 CiaoSen joins (~Jura@2a05:5800:2ab:ac00:e6b9:7aff:fe80:3d03)
08:42:01 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
08:44:26 Midjak joins (~MarciZ@82.66.147.146)
08:53:56 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
08:56:46 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 256 seconds)
09:13:35 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
09:14:05 × cheater quits (~Username@user/cheater) (Remote host closed the connection)
09:14:08 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
09:14:28 × tzh quits (~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz)
09:14:43 chele joins (~chele@user/chele)
09:16:05 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
09:16:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
09:17:05 yoo joins (~yo0O0o@130.105.134.210)
09:17:42 × yoo quits (~yo0O0o@130.105.134.210) (Remote host closed the connection)
09:29:29 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
09:32:39 <ncf> you don't need an applicative version of to, you need an applicative version of toMapOf
09:33:38 × danse-nr3 quits (~danse@151.43.157.6) (Read error: Connection reset by peer)
09:34:36 danse-nr3 joins (~danse@151.57.190.101)
09:35:44 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 252 seconds)
09:46:34 sroso joins (~sroso@user/SrOso)
09:48:12 × mei quits (~mei@user/mei) (Remote host closed the connection)
09:48:35 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
09:49:26 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
09:50:35 mei joins (~mei@user/mei)
09:54:43 × Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Quit: o/)
09:55:01 Sciencentistguy joins (~sciencent@hacksoc/ordinary-member)
09:55:05 drdo0 joins (~drdo@bl14-14-49.dsl.telepac.pt)
09:55:13 ubert joins (~Thunderbi@2a02:8109:ab8a:5a00:2634:f071:f667:7b20)
09:55:22 × drdo quits (~drdo@bl14-14-49.dsl.telepac.pt) (Ping timeout: 255 seconds)
09:55:22 drdo0 is now known as drdo
09:55:45 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
09:56:32 × Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Client Quit)
09:56:50 Sciencentistguy joins (~sciencent@hacksoc/ordinary-member)
10:14:51 rscastilho2024 joins (rscastilho@189.61.140.215)
10:15:20 × rscastilho2024 quits (rscastilho@189.61.140.215) (Remote host closed the connection)
10:17:12 fendor joins (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c)
10:35:39 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 260 seconds)
10:35:54 × xff0x quits (~xff0x@2405:6580:b080:900:1873:af:349f:f9a5) (Ping timeout: 268 seconds)
10:36:18 xff0x joins (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252)
10:37:01 mima joins (~mmh@wifi-eduroam-84-150.paris.inria.fr)
10:41:17 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
10:41:58 __monty__ joins (~toonn@user/toonn)
10:45:22 mima parts (~mmh@wifi-eduroam-84-150.paris.inria.fr) ()
10:49:39 × CiaoSen quits (~Jura@2a05:5800:2ab:ac00:e6b9:7aff:fe80:3d03) (Ping timeout: 260 seconds)
10:57:13 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
10:57:41 × flounders quits (~flounders@24.246.176.178) (Ping timeout: 240 seconds)
10:57:51 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
11:08:42 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 255 seconds)
11:14:06 × sroso quits (~sroso@user/SrOso) (Quit: Leaving :))
11:19:18 <haskellbridge> <m​aralorn> I have newly enabled a bunch of extensions in an old code base. GHC got a bit more picky about Kind inference. There are a few places were I now need a (a :: Type) annotation. I assume because GHC is infering a too general kind. Does anyone know which extension does that?
11:20:12 motherfsck joins (~motherfsc@user/motherfsck)
11:20:13 yoo joins (~yo0O0o@104.28.226.105)
11:21:05 <[Leary]> maralorn: PolyKinds, presumably.
11:25:48 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 255 seconds)
11:26:38 <haskellbridge> <m​aralorn> [Leary]: Thank you, makes sense!
11:28:26 motherfsck joins (~motherfsc@user/motherfsck)
11:29:20 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
11:34:18 yooo joins (~yo0O0o@104.28.226.106)
11:35:43 × poscat quits (~poscat@user/poscat) (Ping timeout: 255 seconds)
11:35:55 × yoo quits (~yo0O0o@104.28.226.105) (Ping timeout: 246 seconds)
11:37:16 pruiz parts (~user@user/pruiz) (ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.1))
11:41:59 × yooo quits (~yo0O0o@104.28.226.106) (Ping timeout: 264 seconds)
11:42:02 yoo joins (~yo0O0o@104.28.226.106)
11:44:49 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 264 seconds)
11:45:34 <haskellbridge> <J​ade> This might be stupid, but why is `NaN` not a constructor of `Double`
11:45:48 <haskellbridge> <J​ade> you have to use `0/0` which "gets" you that value
11:49:37 cheater joins (~Username@user/cheater)
11:50:05 yooo joins (~yo0O0o@104.28.226.106)
11:50:18 flounders joins (~flounders@24.246.176.178)
11:51:49 × yoo quits (~yo0O0o@104.28.226.106) (Ping timeout: 256 seconds)
11:52:03 <ncf> what is the question exactly? do you mean "why isn't Double defined as an inductive type with a NaN constructor?" or "why isn't NaN a valid number literal?" ?
11:54:44 <haskellbridge> <m​aralorn> Maybe we can add a PatternSynonym for that to base?^^
11:56:10 <ncf> > pattern NaN <- (isNaN -> True) where NaN = 0/0
11:56:12 <lambdabot> <hint>:1:1: error:
11:56:12 <lambdabot> Parse error in pattern: pattern
11:56:12 <lambdabot> Possibly caused by a missing 'do'?
11:56:21 <ncf> % pattern NaN <- (isNaN -> True) where NaN = 0/0
11:56:21 <yahb2> <interactive>:169:13: error: ; parse error on input ‘<-’ ; Perhaps this statement should be within a 'do' block?
11:56:27 <ncf> :(
11:57:08 <danse-nr3> > 0/0
11:57:09 <lambdabot> NaN
11:57:10 motherfsck joins (~motherfsc@user/motherfsck)
11:57:12 <jackdk> ncf: Yes, an applicative version of `toMapOf` sounds right. Thanks for the insight.
12:00:07 <Axman6> what's the type of toMapOf (folded . selfIndex) jackdk?
12:00:52 <ncf> (Ord i, Foldable f) => f i -> Map i i
12:00:56 <jackdk> Axman6: (Ord a, Foldable f) => f a -> Map a a
12:02:02 <ncf> :t Data.Map.fromSet id
12:02:03 <lambdabot> S.Set a -> M.Map a a
12:06:27 dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
12:07:43 poscat joins (~poscat@user/poscat)
12:08:01 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
12:10:35 × danse-nr3 quits (~danse@151.57.190.101) (Read error: Connection reset by peer)
12:11:59 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 264 seconds)
12:13:53 mzg_ is now known as mzg
12:15:09 yoo joins (~yo0O0o@104.28.226.104)
12:15:37 × yooo quits (~yo0O0o@104.28.226.106) (Ping timeout: 256 seconds)
12:17:01 × yoo quits (~yo0O0o@104.28.226.104) (Remote host closed the connection)
12:17:30 Guest10 joins (~Guest10@176.122.87.241)
12:17:31 yoo joins (~yo0O0o@104.28.226.104)
12:18:24 <Guest10> Hello
12:18:25 <Guest10> https://paste.tomsmeding.com/Rg7AfEH9
12:20:02 <Guest10> Why "res" is fully evaluated?
12:22:29 pavonia joins (~user@user/siracusa)
12:22:33 × xff0x quits (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252) (Ping timeout: 256 seconds)
12:22:37 × yoo quits (~yo0O0o@104.28.226.104) (Ping timeout: 264 seconds)
12:22:48 danse-nr3 joins (~danse@151.57.167.189)
12:23:11 xff0x joins (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252)
12:23:35 motherfsck joins (~motherfsc@user/motherfsck)
12:23:40 × danse-nr3 quits (~danse@151.57.167.189) (Remote host closed the connection)
12:24:04 danse-nr3 joins (~danse@151.57.167.189)
12:30:02 CiaoSen joins (~Jura@2a05:5800:2ab:ac00:e6b9:7aff:fe80:3d03)
12:34:09 yoo joins (~yo0O0o@104.28.194.106)
12:34:17 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
12:34:35 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
12:38:51 × yoo quits (~yo0O0o@104.28.194.106) (Ping timeout: 260 seconds)
12:41:16 yoo joins (~yo0O0o@104.28.226.104)
12:50:13 × xff0x quits (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252) (Ping timeout: 260 seconds)
12:50:45 xff0x joins (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252)
12:52:48 <mauke> Guest10: 1) how do you know it is? 2) you'd have to ask httpJSON
12:54:22 × Guest10 quits (~Guest10@176.122.87.241) (Quit: Client closed)
13:01:26 × xff0x quits (~xff0x@2405:6580:b080:900:7a4b:a416:79a8:9252) (Ping timeout: 268 seconds)
13:03:28 xff0x joins (~xff0x@ai099196.d.east.v6connect.net)
13:07:31 ricardo1 joins (~ricardo@84.16.179.218)
13:10:53 × ricardo2 quits (~ricardo@84.16.179.218) (Ping timeout: 240 seconds)
13:12:17 × yoo quits (~yo0O0o@104.28.226.104) (Quit: ZNC 1.8.2+deb2build5 - https://znc.in)
13:12:18 exarkun_ is now known as exarkun
13:12:47 yoo joins (~yo0O0o@104.28.226.104)
13:17:49 × yoo quits (~yo0O0o@104.28.226.104) (Ping timeout: 264 seconds)
13:38:23 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
13:39:14 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
13:41:59 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3)
13:42:29 <segfaultfizzbuzz> hello i am probably the worst at haskell here and am trying to get the first example here working https://guygastineau.com/files/FizzBuzz.pdf
13:42:48 × mei quits (~mei@user/mei) (Remote host closed the connection)
13:43:43 <segfaultfizzbuzz> there are some simple issues in pasting this code from the PDF, you can see here: https://paste.rs/FlDbl.hs
13:44:18 <segfaultfizzbuzz> i don't know what ∘ should become here, maybe . ?
13:44:39 <ncf> yes
13:44:59 <ncf> or use base-unicode-symbols
13:45:13 mei joins (~mei@user/mei)
13:45:15 <ncf> (https://wiki.haskell.org/Unicode-symbols)
13:47:53 <segfaultfizzbuzz> hmm {-# LANGUAGE UnicodeSyntax #-} didn't fix the issue, shrug ...
13:48:00 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
13:48:24 × czy` quits (~user@117.63.127.239) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.2.50))
13:48:57 <ncf> <ncf> or use base-unicode-symbols
13:49:12 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
13:50:05 × myxokephale quits (~myxos@065-028-251-121.inf.spectrum.com) (Quit: myxokephale)
13:50:23 myxos joins (~myxos@065-028-251-121.inf.spectrum.com)
13:51:01 czy joins (~user@117.63.127.239)
13:56:21 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3) (Remote host closed the connection)
13:57:04 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3)
13:57:38 <segfaultfizzbuzz> let me know if this is too basic of a question but i am interested to understand forM_ and IO here... in particular fizzBuzz is IO () but everything else is String ... here is code which runs if you like https://paste.rs/HRMla.hs
13:58:20 <segfaultfizzbuzz> i guess forM_ somehow sequences the IO actions emitted but the putStrLn in fizzBuzz ?
13:58:40 <segfaultfizzbuzz> *by the putStrLn
14:02:41 <ncf> that's what it does
14:02:43 mmhat joins (~mmh@p200300f1c740af24ee086bfffe095315.dip0.t-ipconnect.de)
14:06:04 alexherbo2 joins (~alexherbo@2a02-8440-3341-44af-08ee-d5a2-2eb4-3c55.rev.sfr.net)
14:08:59 agander_m_ joins (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805)
14:09:57 × agander_m_ quits (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805) (Client Quit)
14:10:06 <ncf> segfaultfizzbuzz: it might help to translate this from point-free style
14:10:16 agander_m joins (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805)
14:11:59 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 264 seconds)
14:13:33 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
14:16:08 L29Ah joins (~L29Ah@wikipedia/L29Ah)
14:22:44 yoo joins (~yo0O0o@104.28.194.104)
14:23:15 × yoo quits (~yo0O0o@104.28.194.104) (Remote host closed the connection)
14:24:57 yoo joins (~yo0O0o@104.28.194.104)
14:25:11 × agander_m quits (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805) (Ping timeout: 264 seconds)
14:25:15 × mmhat quits (~mmh@p200300f1c740af24ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
14:25:37 mmhat joins (~mmh@p200300f1c740af5dee086bfffe095315.dip0.t-ipconnect.de)
14:27:12 rhodon joins (~Thunderbi@92-110-9-137.cable.dynamic.v4.ziggo.nl)
14:27:35 × danse-nr3 quits (~danse@151.57.167.189) (Ping timeout: 264 seconds)
14:30:01 rhodon is now known as Silver1
14:30:09 Silver1 is now known as SilverT
14:31:19 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3) (Ping timeout: 260 seconds)
14:31:31 × yoo quits (~yo0O0o@104.28.194.104) (Changing host)
14:31:31 yoo joins (~yo0O0o@user/mobivme)
14:33:04 danse-nr3 joins (~danse@151.57.167.189)
14:33:40 Square3 joins (~Square4@user/square)
14:34:09 SilverT parts (~Thunderbi@92-110-9-137.cable.dynamic.v4.ziggo.nl) ()
14:35:30 Rhodon joins (~Thunderbi@user/Rhodon)
14:37:11 Rhodon parts (~Thunderbi@user/Rhodon) (#haskell)
14:38:58 Rhodon joins (~Thunderbi@user/Rhodon)
14:51:11 average joins (uid473595@user/average)
14:58:23 × CiaoSen quits (~Jura@2a05:5800:2ab:ac00:e6b9:7aff:fe80:3d03) (Ping timeout: 256 seconds)
15:03:32 Erutuon joins (~Erutuon@user/erutuon)
15:04:10 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
15:04:37 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:06:51 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3)
15:07:52 <segfaultfizzbuzz> if i write appendMaybe (fizz i) " " (buzz i) then ghc complains Couldn't match type: Maybe String with: [Char] but in ghci, :t " " is String ... how does this make sense?
15:08:30 <segfaultfizzbuzz> the error message seems to contradict itself as well, because it goes on to complain: Expected: String Actual: Maybe String
15:08:59 <ncf> are you trying to putStrLn the result?
15:09:56 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
15:11:23 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
15:12:22 ChaiTRex joins (~ChaiTRex@user/chaitrex)
15:12:37 Sgeo joins (~Sgeo@user/sgeo)
15:13:37 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
15:15:54 <segfaultfizzbuzz> i am eventually going to putStrLn, i am trying to remove the point free style as you suggested
15:16:17 <segfaultfizzbuzz> but i am surprised that the type of " " seems to have changed when i make what appears to be the same function call as in the pointfree implementation
15:17:14 <ncf> i doubt the error is about the type of " ", but it's hard to say without actually seeing the error
15:18:21 <ncf> (and the code that triggers it)
15:19:37 <segfaultfizzbuzz> https://paste.rs/BwmNU.hs
15:19:47 <segfaultfizzbuzz> at the moment i am just worried about making fbfn work
15:20:32 <ncf> appendMaybe returns a Maybe String, not a String
15:21:02 <ncf> note that the entire "appendMaybe ... ... ..." expression is underlined, not just " "
15:21:08 <segfaultfizzbuzz> but why is it complaining about [Char] ...?
15:21:20 <ncf> because fbfn returns a [Char]
15:21:41 <ncf> so that is the expected type of that expression, whereas its actual type is the return type of appendMaybe
15:21:57 <segfaultfizzbuzz> but it says fbfn :: Int -> String ... ???
15:22:31 <ncf> String is an alias for [Char]
15:22:38 <ncf> @src String
15:22:39 <lambdabot> type String = [Char]
15:22:46 × dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 264 seconds)
15:22:58 <segfaultfizzbuzz> ayaa that is confusing
15:23:14 × jjhoo_ quits (jahakala@user/jjhoo) (Ping timeout: 256 seconds)
15:26:08 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
15:26:37 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:33:48 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
15:35:59 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
15:36:56 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:37:48 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3) (Ping timeout: 255 seconds)
15:39:09 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 255 seconds)
15:39:52 Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
15:42:06 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3)
15:47:16 ec_ joins (~ec@gateway/tor-sasl/ec)
15:47:35 × alexherbo2 quits (~alexherbo@2a02-8440-3341-44af-08ee-d5a2-2eb4-3c55.rev.sfr.net) (Remote host closed the connection)
15:48:38 × ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
15:50:26 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
15:52:01 × smalltalkman quits (uid545680@id-545680.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
15:52:04 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
15:53:06 ChaiTRex joins (~ChaiTRex@user/chaitrex)
15:58:47 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 264 seconds)
16:11:30 × berberman quits (~berberman@user/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
16:11:43 berberman joins (~berberman@user/berberman)
16:15:03 × danse-nr3 quits (~danse@151.57.167.189) (Read error: Connection reset by peer)
16:15:26 danse-nr3 joins (~danse@151.43.148.88)
16:16:06 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
16:17:47 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds)
16:18:38 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.1.1)
16:20:07 euleritian joins (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de)
16:23:23 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 264 seconds)
16:23:57 ricardo_2 joins (~ricardo@217.70.197.9)
16:25:47 × Square3 quits (~Square4@user/square) (Ping timeout: 264 seconds)
16:27:56 <segfaultfizzbuzz> so i changed fbfn to Int -> Maybe String and that is fine for now
16:28:21 <segfaultfizzbuzz> but i need to convert that into something which can be printed
16:28:36 <segfaultfizzbuzz> i am trying to use a combination of fromMaybe and show, as the original code did, but no permutation is working
16:28:57 <segfaultfizzbuzz> for example: fromMaybe (fbfn 4)
16:29:21 <ncf> :t fromMaybe
16:29:22 <lambdabot> a -> Maybe a -> a
16:31:47 × euleritian quits (~euleritia@dynamic-176-006-198-167.176.6.pool.telefonica.de) (Ping timeout: 264 seconds)
16:32:07 euleritian joins (~euleritia@dynamic-046-114-003-048.46.114.pool.telefonica.de)
16:32:39 adanwan_ joins (~adanwan@gateway/tor-sasl/adanwan)
16:33:21 tri joins (~tri@172.59.8.166)
16:33:38 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 255 seconds)
16:36:23 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
16:41:20 zetef joins (~quassel@95.77.17.251)
16:45:10 × zetef quits (~quassel@95.77.17.251) (Remote host closed the connection)
16:54:18 × euleritian quits (~euleritia@dynamic-046-114-003-048.46.114.pool.telefonica.de) (Ping timeout: 255 seconds)
16:56:04 euleritian joins (~euleritia@dynamic-176-007-159-068.176.7.pool.telefonica.de)
16:58:47 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 264 seconds)
16:58:57 × danse-nr3 quits (~danse@151.43.148.88) (Ping timeout: 256 seconds)
17:00:35 × euleritian quits (~euleritia@dynamic-176-007-159-068.176.7.pool.telefonica.de) (Ping timeout: 264 seconds)
17:03:10 × ubert quits (~Thunderbi@2a02:8109:ab8a:5a00:2634:f071:f667:7b20) (Remote host closed the connection)
17:05:17 <segfaultfizzbuzz> so fbfn is now Int -> String: https://paste.rs/9kLlt.hs but forM_ is unhappy with me
17:06:01 alexherbo2 joins (~alexherbo@2a02-8440-3341-44af-80cf-6700-420f-0553.rev.sfr.net)
17:07:11 × Rhodon quits (~Thunderbi@user/Rhodon) (Ping timeout: 264 seconds)
17:08:15 <geekosaur> `forM_ (putStrLn fbfn [1 .. 100] )` looks pretty wrong to me
17:08:18 <ncf> :t forM_
17:08:19 <lambdabot> (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
17:08:38 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
17:08:44 <ncf> you can use hoogle to look up the types of things: https://hoogle.haskell.org/?scope=set%3Astackage&hoogle=forM_
17:11:12 <segfaultfizzbuzz> forM_ (putStrLn [1 .. 100] fbfn) is also unhappy -- i assume that the list from 1 to 100 is foldable, and... i guess the monad should be (putStrLn fbfn) ? that doesn't work either...
17:11:38 <ncf> ??
17:11:49 <mauke> the problem is that forM_ takes two arguments
17:11:50 <ncf> the monad is IO
17:11:54 <segfaultfizzbuzz> hoogle says forM_ :: (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
17:11:55 <mauke> ( ... ) is one
17:12:17 <mauke> (well, one of the problems)
17:12:35 <segfaultfizzbuzz> it says this behaves like a map with the arguments flipped, and i am used to map f [1 .. 100]
17:12:42 <mauke> yes
17:12:45 <segfaultfizzbuzz> so this is weirdmap [1 .. 100] f
17:12:50 <mauke> exactly
17:13:14 <segfaultfizzbuzz> and f should be IO, and i think putStrLn makes something IO?
17:13:23 <mauke> no
17:13:26 <mauke> f should be a function
17:15:00 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:15:15 <mauke> segfaultfizzbuzz: do you know how to write anonymous functions in Haskell?
17:20:14 Nikopol joins (nikopol@user/astrorigin)
17:22:21 <segfaultfizzbuzz> no
17:22:38 × igemnace quits (~ian@user/igemnace) (Remote host closed the connection)
17:22:45 <segfaultfizzbuzz> well, is that like (+1) ?
17:23:05 <mauke> that's a special case. generally it involves \
17:23:25 <mauke> but you can literally write: forM_ [1 .. 100] f
17:23:36 <mauke> where f x = putStrLn (fbfn x)
17:24:57 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
17:25:40 azimut joins (~azimut@gateway/tor-sasl/azimut)
17:26:44 <segfaultfizzbuzz> generally speaking i am not fond of "clever" ways of writing code,... yeah when i do forM_ [1 .. 100] fbfn ghc complains, and it also complains about forM_ [1 .. 100] (putStrLn fbfn)
17:27:08 <segfaultfizzbuzz> oh you have to put an argument there, i see
17:27:13 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
17:27:58 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
17:28:01 <segfaultfizzbuzz> that's weird, why can't i say forM_ [1 .. 100] (putStrLn fbfn) ?
17:28:06 <mauke> that's type error
17:28:18 <mauke> putStrLn takes a String, but you're giving it an Int -> String
17:28:40 <mauke> that is, you're trying to pass fbfn (a function) to putStrLn, which wants a String
17:28:42 <segfaultfizzbuzz> but forM_ applies the [1 .. 100] to the function,...
17:28:53 <mauke> that comes later
17:29:10 <segfaultfizzbuzz> ok i guess this is just part of getting used to reading haskell
17:29:30 <mauke> and causes a second problem because putStrLn XXX has type IO ()
17:29:36 <mauke> which is not a function
17:30:11 <mauke> (XXX represents any value)
17:30:32 <segfaultfizzbuzz> IO is not a function? it's a ... monad.. ? i guess?
17:30:55 <mauke> a value of type IO () is just ... some value
17:31:01 <segfaultfizzbuzz> so a monad is a type ?
17:31:01 <mauke> it's abstract
17:31:14 <mauke> technically, a monad has to be a parameterized type
17:31:29 <mauke> so not like Int or String, but like IO or Maybe
17:31:41 <johnw> I wouldn't say IO _is_ a monad, it's a data type that presents the Monad interface as a way of interacting with it
17:31:57 <mauke> IO is a monad like 42 is an Integer
17:31:57 <segfaultfizzbuzz> so monad is not a type then
17:32:09 <johnw> Monad is a type _class_
17:32:14 <johnw> it's an algebra with laws
17:32:22 <segfaultfizzbuzz> typeclassof(42) = Num, typeclassof(IO) = monad
17:32:34 <mauke> heh
17:32:41 <segfaultfizzbuzz> i am familiar with typeclasses, at least from rust
17:32:44 <yushyin> maybe start by not using pointfree-style
17:33:04 <mauke> that's not quite accurate because a type (or type constructor) can implement multiple classes :-)
17:33:12 <segfaultfizzbuzz> well i had to try to read as much of a PDF documenting fizzbuzz as i could
17:33:19 <johnw> typeclassof(Int) = Num
17:33:19 <segfaultfizzbuzz> it bubbled up on r/haskell
17:33:21 <johnw> not 42
17:33:26 <mauke> oh, that too
17:33:42 <ncf> "typeclassof" doesn't make any sense
17:34:03 <segfaultfizzbuzz> typeclasses(42) = [Num], typeclasses(IO) = [Monad] then i guess ?
17:34:03 <johnw> it's also not the only type class that Int implements; but I get the gist
17:34:12 <johnw> you're mixing values and types still
17:34:27 <segfaultfizzbuzz> typeclasses(typeof(42)) = [Num]
17:34:32 <johnw> there you go :)
17:34:36 <ncf> IO implements Monad. Int implements Num. 42 has type Int. putStrLn "hi" has type IO ().
17:34:38 <mauke> segfaultfizzbuzz: if anything, typeclasses(Int) = [Num, Eq, Ord, Read, Show, ...]
17:34:41 <johnw> [Num, Integral, Bounded, ...]
17:34:59 <segfaultfizzbuzz> yeah i think i understand
17:35:11 <mauke> segfaultfizzbuzz: but the set is "open" in the sense that you can define additional instances for Int in your own code
17:35:28 <segfaultfizzbuzz> and it remains Int?
17:35:34 <mauke> sure
17:35:41 <segfaultfizzbuzz> whatwhat, that makes no sense
17:35:42 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 255 seconds)
17:35:49 <mauke> ?
17:36:07 <segfaultfizzbuzz> so i can append to typeclasses(Int) ?
17:36:20 <mauke> class Twice a where { twice :: a -> a }; instance Twice Int where { twice x = 2 * x }
17:36:23 <mauke> yes
17:36:49 <segfaultfizzbuzz> ...doesn't make sense, then Int would behave like it was mutable ... ?
17:36:57 <mauke> how so?
17:37:00 <segfaultfizzbuzz> a mutable type
17:37:10 <segfaultfizzbuzz> it would make more sense to have a typealias
17:37:22 <mauke> we're just defining additional operations over an existing type
17:37:41 <mauke> the class instances aren't part of the type
17:37:57 <segfaultfizzbuzz> like TwiceableInt = appendtypeclass( Int Twiceable)
17:38:16 <segfaultfizzbuzz> err sorry still used to parenthesis here: TwiceableInt appendtypeclass Int Twiceable
17:38:29 Square joins (~Square@user/square)
17:38:42 <mauke> why are you trying to bundle up a type with classes?
17:38:44 <segfaultfizzbuzz> am i learning too slowly for this to go anywhere
17:39:14 <mauke> types and class instances live their own, separate lives
17:39:36 <mauke> (in particular, Num is not stored "inside" of Int)
17:40:15 <segfaultfizzbuzz> understood, but Int is "associated to" Num
17:40:20 <johnw> segfaultfizzbuzz: I wouldn't think about the "How" so much as the "What" at this point
17:40:38 <segfaultfizzbuzz> ananyway, maybe i am just making a mess out of things
17:40:55 <segfaultfizzbuzz> the dumb interpretation here is that forM_ can glue one IO () onto another IO ()
17:41:00 <segfaultfizzbuzz> and that putStrLn generates IO ()
17:41:17 <mauke> that's not wrong
17:41:26 <johnw> putStrLn is a function from strings to an value of type IO () that the runtime can interpret in such a way that it prints the string
17:41:39 <mauke> the fundamental gluing operation is (>>)
17:41:46 <segfaultfizzbuzz> it would be a little nice to have a simple example of what could be inside of () in IO ()
17:41:55 <mauke> any type at all, really
17:41:56 <ncf> :t getChar
17:41:57 <lambdabot> IO Char
17:42:11 <mauke> () is just a convenient dummy type
17:42:24 <mauke> (the () type has a single value, also called ())
17:42:31 <segfaultfizzbuzz> so then IO Char becomes what, a monad whose value depends on the value of the Char? does that behave like a function, kinda like a generic function...?
17:43:01 <mauke> what programming languages are you familiar with?
17:43:14 <mauke> in particular, do you know promises/futures?
17:43:37 <segfaultfizzbuzz> i have probably used 30 programming languages over the years, these days i use rust when i need to do something
17:43:50 <segfaultfizzbuzz> i have very limited exposure to futures/promises/async
17:44:12 <mauke> aww
17:44:22 <segfaultfizzbuzz> but it is something i know i should gain some familiarity with
17:44:28 <mauke> because you can think of IO Char as Promise<Char>
17:44:28 <segfaultfizzbuzz> i know people complain about it mercilessly ;-)
17:44:42 <mauke> i.e. some abstract box that promises to produce a Char at some point in the future
17:44:51 <segfaultfizzbuzz> ok, a deferred/lazy function which generates a value of type Char then?
17:45:11 <mauke> yes, except we don't call it a function because it is a (potentially) side-effecty operation
17:45:23 <segfaultfizzbuzz> that's fine, everything in haskell is nonstrict i understand
17:45:27 <segfaultfizzbuzz> ohh i see
17:45:27 <johnw> segfaultfizzbuzz: monads don't exist at runtime
17:45:44 <segfaultfizzbuzz> so monad can translate to "side-effecty function" then
17:45:50 <johnw> it's just an interface that abstracts a certain pattern of interaction
17:45:57 <mauke> you could implement IO in a strict language
17:46:10 <mauke> and this is just about IO, not monads in general
17:46:56 <mauke> on the other hand, monads are all about effects if you're willing to be creative about what an "effect" is :-)
17:47:01 <johnw> the "concept" of Monad lets you compose functions of type "a -> m b"
17:47:15 <johnw> where, for the current discussion, m = IO
17:47:42 <johnw> but thinking about this operationally is a going to trip you up
17:47:54 <segfaultfizzbuzz> haha i don't know what operationally means here lol
17:47:59 <johnw> bits and bytes
17:48:13 <segfaultfizzbuzz> ok, you mean "think math, not computers" then ?
17:48:18 <johnw> Monads would make sense to a mathematician, IO wouldn't
17:48:26 <johnw> yes
17:48:32 <segfaultfizzbuzz> ok
17:49:12 <mauke> I'd say IO can be understood entirely operationally. the general Monad interface ... well, that's another thing
17:49:20 <johnw> right
17:49:32 <johnw> I'd even say that IO can _only_ be understood operationally :)
17:49:41 <johnw> because it's a huge jumble of C code with no formal specification
17:49:54 <segfaultfizzbuzz> so the IO value is produced if (1) something demands it and (2) the Char is provided, but otherwise it is deferred, am i guessing?
17:50:09 <mauke> that doesn't sound right
17:50:10 <johnw> the fact that "IO" and "Monad" have wrapped fancy types and type classes around it, obscures the fact that it's mainly a black box
17:50:12 <segfaultfizzbuzz> lol you are making me feel very reassured about the reliability of haskell
17:50:14 <mauke> IO is not about lazy evaluation
17:50:35 <ncf> getChar asks the user for a character, so in this case the character is produced if and when the user feels like it
17:50:53 <mauke> from the POV of the program, the Char is produced when the IO action is executed
17:51:05 <mauke> which happens outside of Haskell proper
17:51:37 <mauke> that is, you can't trigger execution from inside Haskell (and we don't talk about unsafePerformIO)
17:51:58 segfaultfizzbuzz finished removing the pointfree notation here, feel free to criticize https://paste.rs/qkays.hs
17:52:44 <segfaultfizzbuzz> ok, so only the haskell runtime makes your code execute
17:53:00 <segfaultfizzbuzz> and the haskell runtime is invoked by your operating system or pushing buttons on your keyboard etc
17:53:02 <johnw> appendMaybe isn't necessary, btw, but otherwise it looks fine
17:53:34 <mauke> basically, your Haskell code creates little IO actions and glues them together into bigger IO actions, until you get one gigantic IO action that is bound to 'main'
17:53:39 <mauke> and that's what the runtime actually executes
17:53:55 <segfaultfizzbuzz> makes sense-ish
17:54:13 <johnw> segfaultfizzbuzz: https://gist.github.com/jwiegley/724abb87ba71dfed5a2c687e9cb1b245
17:54:22 <johnw> there's another use of the Monad interface for you, this time for the Maybe monad
17:54:25 <mauke> the runtime is imperative: it can do stuff, talk to the OS, etc
17:54:35 <segfaultfizzbuzz> "IO is not about lazy evaluation" "you can think of IO Char as Promise<Char>" these cannot both be true,... ?
17:54:36 <mauke> and it can call into Haskell, which is pure
17:54:58 <mauke> segfaultfizzbuzz: Promise<Char> exists in JavaScript, which is not a lazy language
17:55:37 <mauke> (well, typescript probably. assuming it has a Char type)
17:56:02 <kaol> Lazy evaluation is what makes "fst (1, undefined)" not explode (among other things).
17:56:05 segfaultfizzbuzz is wishing that javascript would go away as a language
17:56:25 <mauke> my point is that you could imagine a non-lazy variant of Haskell, in which IO would work exactly the same way
17:56:28 <segfaultfizzbuzz> yeah i have a D- understanding of laziness i think, top and bottom and all that
17:57:37 <mauke> % putChar 'a'
17:57:37 <yahb2> a
17:57:44 <johnw> you can think of laziness as meaning "you'll have a value when I need it, if I need it", rather than eagerness which is "compute the value as soon as you have the inputs"
17:57:45 <mauke> % putChar 'a' >> putChar 'b'
17:57:45 <yahb2> ab
17:57:53 <mauke> % putChar 'a' >> putChar 'b' >> putChar 'c'
17:57:53 <yahb2> abc
17:58:03 tzh joins (~tzh@c-71-193-181-0.hsd1.or.comcast.net)
17:58:15 <mauke> % sequence_ [putChar 'a', putChar 'b', putChar 'c']
17:58:15 <yahb2> abc
17:58:27 <segfaultfizzbuzz> johnw: your rewritten version of my fizzbuzz has a "do" which i think is bad imperative codesmell?
17:58:43 <mauke> % sequence_ (map putChar ['a', 'b', 'c'])
17:58:43 <yahb2> abc
17:58:52 <johnw> segfaultfizzbuzz: I'm not sure I'd say that
17:59:02 <johnw> "do" is just syntactic sugar for interacting through the Monad interface
18:00:09 <segfaultfizzbuzz> what does the underscore mean in haskellspeak
18:00:12 <mauke> johnw: that looks semantically wrong
18:00:15 <segfaultfizzbuzz> i'm not fond of these punctuation characters
18:00:36 <johnw> mauke: oh?
18:00:57 <mauke> in this case, a trailing underscore indicates that the (intermediate) results are thrown away/ignored
18:01:12 × alexherbo2 quits (~alexherbo@2a02-8440-3341-44af-80cf-6700-420f-0553.rev.sfr.net) (Remote host closed the connection)
18:01:21 <johnw> oh, you are right
18:01:29 <kaol> It's a proper part of those functions' names, it's not a special character in that. for_ and so on.
18:01:44 <mauke> johnw: your code can only produce fizzbuzz, never fizz or buzz alone
18:01:45 <johnw> segfaultfizzbuzz: my code only returns a string if they are both Just values, and Nothing if either is Nothing. This is wrong.
18:02:01 <segfaultfizzbuzz> understood,... i see, so most of what i do in imperativeland is "underscore-like" i gather
18:02:09 <johnw> mauke: thank you for catching that!
18:02:13 <segfaultfizzbuzz> that is to say, i routinely call functions and discard their outputs
18:02:37 <segfaultfizzbuzz> johnw: lol did you fail to implement fizzbuzz correctly?
18:02:39 <mauke> :t sequence
18:02:40 <lambdabot> (Traversable t, Monad m) => t (m a) -> m (t a)
18:02:44 <johnw> I'd have to call my do block using: fromMaybe (show i) s <|> fizz i <|> buzz i
18:02:51 <mauke> hah, what a type
18:02:55 <johnw> segfaultfizzbuzz: I sure did
18:03:05 <segfaultfizzbuzz> johnw: 🤪
18:03:08 <johnw> I'd have to call my do block using: fromMaybe (show i) (s <|> fizz i <|> buzz i)
18:03:24 <segfaultfizzbuzz> how many haskell programmers does it take to write fizzbuzz
18:03:52 <mauke> :t sequence `asAppliedTo` []
18:03:54 <lambdabot> Monad m => [m a] -> m [a]
18:03:56 <mauke> :t sequence_ `asAppliedTo` []
18:03:57 <lambdabot> Monad m => [m a] -> m ()
18:04:02 <mauke> there we go
18:04:08 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:04:35 <mauke> informally, sequence takes a list of actions and turns it into a single action (that produces a list of results)
18:04:58 <mauke> sequence_ does the same thing, but instead of collecting the results in a list, it throws them away
18:05:01 Rhodon joins (~Thunderbi@user/Rhodon)
18:06:57 <ncf> johnw: i don't think that works either?
18:07:13 dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
18:07:28 <johnw> ncf: say more!
18:08:03 <ncf> nvm i missed the definition of s
18:08:33 × mulk quits (~mulk@p5b112c60.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
18:10:22 mulk joins (~mulk@pd9514dc9.dip0.t-ipconnect.de)
18:11:42 × yoo quits (~yo0O0o@user/mobivme) (Ping timeout: 255 seconds)
18:22:39 tri_ joins (~tri@ool-18bc2e74.dyn.optonline.net)
18:24:58 agander_m joins (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805)
18:25:05 Erutuon joins (~Erutuon@user/erutuon)
18:25:39 × tri quits (~tri@172.59.8.166) (Ping timeout: 255 seconds)
18:26:58 × Rhodon quits (~Thunderbi@user/Rhodon) (Ping timeout: 264 seconds)
18:29:20 target_i joins (~target_i@217.175.14.39)
18:46:17 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
18:46:35 Sgeo joins (~Sgeo@user/sgeo)
18:47:17 yoo joins (~yo0O0o@104.28.194.104)
18:52:05 × yoo quits (~yo0O0o@104.28.194.104) (Changing host)
18:52:05 yoo joins (~yo0O0o@user/mobivme)
18:52:58 Hooloovoo parts (~Hooloovoo@hax0rbana.org) (Leaving)
18:54:12 × szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
18:54:24 × agander_m quits (agander_m@gateway/vpn/protonvpn/aganderm/x-34304805) (Quit: Leaving)
18:55:19 ft joins (~ft@p508db2e6.dip0.t-ipconnect.de)
19:03:15 notzmv is now known as livoreno
19:08:30 johnw_ joins (~johnw@69.62.242.138)
19:10:19 × chele quits (~chele@user/chele) (Remote host closed the connection)
19:10:31 × johnw quits (~johnw@69.62.242.138) (Read error: Connection reset by peer)
19:14:42 Pixi__ joins (~Pixi@user/pixi)
19:17:52 × Pixi` quits (~Pixi@user/pixi) (Ping timeout: 255 seconds)
19:25:30 Rhodon joins (~Thunderbi@user/Rhodon)
19:25:57 × dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds)
19:45:54 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
19:48:07 × Rhodon quits (~Thunderbi@user/Rhodon) (Quit: Rhodon)
19:49:21 alexherbo2 joins (~alexherbo@2a02-8440-3341-44af-7190-3750-610e-9d91.rev.sfr.net)
19:49:48 × yoo quits (~yo0O0o@user/mobivme) (Remote host closed the connection)
19:50:03 yoo joins (~yo0O0o@104.28.194.104)
19:50:37 × mei quits (~mei@user/mei) (Remote host closed the connection)
19:53:01 mei joins (~mei@user/mei)
19:53:23 × Buggys quits (Buggys@shelltalk.net) (Ping timeout: 252 seconds)
19:56:03 pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
20:00:32 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 252 seconds)
20:02:55 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:10:30 Buggys joins (Buggys@shelltalk.net)
20:10:53 MironZ3 joins (~MironZ@nat-infra.ehlab.uk)
20:11:17 × MironZ quits (~MironZ@nat-infra.ehlab.uk) (Ping timeout: 240 seconds)
20:11:17 MironZ3 is now known as MironZ
20:13:20 <tomsmeding> I tested my code with ghc-9.8 and because I'm using 'head', I got the -Wx-partial warning that's new in ghc-9.8
20:13:42 <tomsmeding> but I didn't want to refactor this particular bit of code, so I added {-# OPTIONS_GHC -Wno-x-partial #-}
20:13:53 <tomsmeding> which led to a -Wunrecognised-warning-flags on earlier ghc versions
20:13:57 <tomsmeding> so I now have {-# OPTIONS_GHC -Wno-unrecognised-warning-flags -Wno-x-partial #-}
20:14:01 <tomsmeding> which works everywhere
20:14:05 <tomsmeding> ._.
20:15:09 <Logio> you could add -Why-must-i-suffer to the list, then
20:15:20 <tomsmeding> that is true!
20:17:09 <segfaultfizzbuzz> lol
20:17:49 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 264 seconds)
20:17:50 <segfaultfizzbuzz> if i ever reach a point of becoming literate in haskell, i have a fantasy of making a new haskell with DX as a top priority
20:18:37 <tomsmeding> I mean, an alternative would have been to conditionally add the flag globally to the package in the cabal file
20:18:47 <tomsmeding> conditional on the ghc version, that is
20:19:12 <tomsmeding> conditioning on the ghc version inside a source file would necessitate CPP and that's ugly
20:21:58 Erutuon joins (~Erutuon@user/erutuon)
20:22:45 <tomsmeding> another infelicity of -fdefer-type-errors: if you have a 'deriving (Show)' on a data type with some non-Show field, you don't get 1 error but 6
20:23:09 dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
20:23:14 <tomsmeding> https://paste.tomsmeding.com/sDhJ0WvA
20:23:20 × michalz quits (~michalz@185.246.207.200) (Quit: ZNC 1.8.2 - https://znc.in)
20:24:40 <tomsmeding> (meaning that HLS shows 6 errors on the offending line instead of 1, because HLS checks your code with -fdefer-type-errors)
20:28:22 × yoo quits (~yo0O0o@104.28.194.104) (Changing host)
20:28:22 yoo joins (~yo0O0o@user/mobivme)
20:28:27 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:28:39 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
20:29:39 <tomsmeding> segfaultfizzbuzz: you can get literate in haskell very quickly by using literate haskell
20:30:02 <EvanR> *wears a shirt that says "GOT LITERATE?"*
20:36:32 <segfaultfizzbuzz> what?
20:38:18 <segfaultfizzbuzz> write my code in tex, are you crazy?
20:38:28 <tomsmeding> :p
20:38:43 <tomsmeding> it's _you_ who started talking about literacy ;)
20:39:14 <segfaultfizzbuzz> i mean "understand the haskell language" not this tex abomination
20:39:20 <tomsmeding> I know, I was just joking :p
20:42:56 <monochrom> I don't think literate haskell implies tex.
20:43:15 <monochrom> In fact, I put html instead of tex in my literate haskell code.
20:43:54 <tomsmeding> daring
20:45:05 r2 joins (~r2@89-38-99-82.hosted-by-worldstream.net)
20:45:57 × tri_ quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
20:46:32 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
20:47:07 <ncf> i put agda in my markdown
20:48:39 × dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Remote host closed the connection)
20:50:23 × r2 quits (~r2@89-38-99-82.hosted-by-worldstream.net) (Remote host closed the connection)
20:50:54 r2 joins (~r2@89-38-99-82.hosted-by-worldstream.net)
20:50:59 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
20:52:33 jargon joins (~jargon@13.sub-174-205-175.myvzw.com)
20:57:44 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
20:58:24 euleritian joins (~euleritia@dynamic-176-001-010-233.176.1.pool.telefonica.de)
21:00:53 × pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 272 seconds)
21:01:05 r2 is now known as NomadTC
21:01:11 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 264 seconds)
21:02:41 <EvanR> tomsmeding, moreover, <BOLD>
21:05:59 <tomsmeding> indeed
21:07:39 k_hachig joins (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca)
21:14:23 × RaspbellySwirl quits (~Raspbelly@host-213-235-142-6.ip.topnet.cz) (Ping timeout: 264 seconds)
21:15:12 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
21:15:47 willsewell_ joins (~willsewel@185.195.232.180)
21:18:54 × fendor quits (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c) (Remote host closed the connection)
21:19:20 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
21:19:27 × willsewell_ quits (~willsewel@185.195.232.180) (Client Quit)
21:25:14 × NomadTC quits (~r2@89-38-99-82.hosted-by-worldstream.net) (Ping timeout: 252 seconds)
21:26:26 <segfaultfizzbuzz> is there a way to write a computer program so that the world is a better place
21:27:43 <haskellbridge> <s​m> ha. That used to be easier
21:27:59 willsewell joins (~willsewel@185.195.232.180)
21:28:01 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
21:28:30 <segfaultfizzbuzz> mkWorldBetter
21:28:34 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
21:28:48 <ncf> :: IO a
21:28:55 <tomsmeding> > succ GHC.Exts.RealWorld
21:28:56 <lambdabot> error:
21:28:56 <lambdabot> Not in scope: data constructor ‘GHC.Exts.RealWorld’
21:29:00 <tomsmeding> % succ GHC.Exts.RealWorld
21:29:00 <yahb2> <interactive>:181:6: error: ; • Illegal term-level use of the type constructor ‘GHC.Prim.RealWorld’ ; • In the first argument of ‘succ’, namely ‘GHC.Prim.RealWorld’ ; In the expressio...
21:29:05 <haskellbridge> <s​m> solve some real world problems without causing excessive costs and side effects over the long term
21:30:36 × k_hachig quits (~k_hachig@ipagstaticip-b4f1257d-69a8-678e-1ff6-80999a2f9589.sdsl.bell.ca) (Ping timeout: 255 seconds)
21:31:57 × euleritian quits (~euleritia@dynamic-176-001-010-233.176.1.pool.telefonica.de) (Ping timeout: 255 seconds)
21:32:51 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 255 seconds)
21:34:03 euleritian joins (~euleritia@dynamic-176-001-010-233.176.1.pool.telefonica.de)
21:36:23 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
21:36:30 <EvanR> making the world better or worse would require some side effect, so haskell's inappropriate
21:43:08 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
21:45:02 × dispater- quits (~dispater@mail.brprice.uk) (Ping timeout: 260 seconds)
21:45:44 × orcus- quits (~orcus@mail.brprice.uk) (Ping timeout: 256 seconds)
21:46:51 mud joins (~mud@user/kadoban)
21:47:06 × willsewell quits (~willsewel@185.195.232.180) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
21:48:20 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 252 seconds)
21:50:11 dispater joins (~dispater@mail.brprice.uk)
21:50:14 willsewell joins (~willsewel@185.195.232.180)
21:50:42 orcus joins (~orcus@mail.brprice.uk)
21:53:01 × willsewell quits (~willsewel@185.195.232.180) (Client Quit)
21:54:54 × johnw_ quits (~johnw@69.62.242.138) (Ping timeout: 255 seconds)
21:55:27 willsewell joins (~willsewel@185.195.232.180)
21:57:58 johnw joins (~johnw@69.62.242.138)
21:58:32 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
22:01:01 × willsewell quits (~willsewel@185.195.232.180) (Ping timeout: 264 seconds)
22:04:08 <Axman6> @hoogle showHex
22:04:08 <lambdabot> Numeric showHex :: (Integral a, Show a) => a -> ShowS
22:04:08 <lambdabot> BasePrelude showHex :: (Integral a, Show a) => a -> ShowS
22:04:08 <lambdabot> Number.Positional showHex :: Exponent -> T -> String
22:08:53 mechap joins (~mechap@user/mechap)
22:11:05 willsewell joins (~willsewel@141.98.252.232)
22:11:11 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:a854:aacf:c202:aba3) (Ping timeout: 272 seconds)
22:11:33 dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
22:11:45 kadobanana joins (~mud@user/kadoban)
22:12:23 <EvanR> > showHex (11 :: Word8) ""
22:12:25 <lambdabot> "b"
22:13:06 × mud quits (~mud@user/kadoban) (Read error: Connection reset by peer)
22:16:19 emad joins (~emad@156.214.178.69)
22:18:12 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
22:23:59 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
22:25:06 × target_i quits (~target_i@217.175.14.39) (Quit: leaving)
22:26:01 <Axman6> @hoogle Int# -> Word#
22:26:02 <lambdabot> GHC.Exts int2Word# :: Int# -> Word#
22:26:02 <lambdabot> GHC.Prim int2Word# :: Int# -> Word#
22:26:02 <lambdabot> GHC.PrimopWrappers int2Word# :: Int# -> Word#
22:30:26 × alexherbo2 quits (~alexherbo@2a02-8440-3341-44af-7190-3750-610e-9d91.rev.sfr.net) (Remote host closed the connection)
22:31:47 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 264 seconds)
22:37:13 × erisco quits (~erisco@d24-141-66-165.home.cgocable.net) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
22:38:05 erisco joins (~erisco@d24-141-66-165.home.cgocable.net)
22:42:11 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
22:44:50 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:603e:ee72:ccf6:3b57)
22:48:22 zenna joins (~zenna@64.189.201.97)
22:48:25 × acidjnk_new3 quits (~acidjnk@p5dd87f44.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
22:48:57 zenna parts (~zenna@64.189.201.97) ()
22:50:15 × willsewell quits (~willsewel@141.98.252.232) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
22:50:47 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
22:51:59 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
22:53:36 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
22:54:02 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
22:54:40 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
22:56:52 mizlan joins (~mizlan@2607:f010:2e9:b:24e3:3288:b16c:e350)
22:58:31 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
22:58:59 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
22:59:19 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
22:59:22 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
22:59:40 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
22:59:43 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
23:00:02 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
23:00:10 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
23:00:37 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
23:01:18 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
23:01:33 × mechap quits (~mechap@user/mechap) (Ping timeout: 260 seconds)
23:01:45 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
23:02:33 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
23:03:21 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
23:04:15 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
23:05:40 a51 joins (a51@gateway/vpn/protonvpn/a51)
23:08:23 × xigua quits (~xigua@user/xigua) (Read error: Connection reset by peer)
23:08:37 xigua joins (~xigua@user/xigua)
23:08:42 × mizlan quits (~mizlan@2607:f010:2e9:b:24e3:3288:b16c:e350) (Ping timeout: 255 seconds)
23:09:36 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:603e:ee72:ccf6:3b57) (Ping timeout: 255 seconds)
23:11:16 mizlan joins (~mizlan@2607:f010:2e9:b:24e3:3288:b16c:e350)
23:12:13 jjhoo joins (~jahakala@user/jjhoo)
23:13:49 mud joins (~mud@user/kadoban)
23:13:49 × kadobanana quits (~mud@user/kadoban) (Read error: Connection reset by peer)
23:15:51 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:22:24 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
23:25:47 segfaultfizzbuzz joins (~segfaultf@2600:1702:6d0:e930:603e:ee72:ccf6:3b57)
23:29:09 × mud quits (~mud@user/kadoban) (Read error: Connection reset by peer)
23:29:29 mud joins (~mud@user/kadoban)
23:30:46 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
23:30:58 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:31:12 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
23:31:44 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:35:39 Tuplanolla joins (~Tuplanoll@91-159-68-95.elisa-laajakaista.fi)
23:35:42 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds)
23:37:03 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 255 seconds)
23:37:26 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:38:21 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
23:39:54 Batzy_ is now known as Batzy
23:40:07 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:40:49 dsrt^ joins (~cd@c-98-242-74-66.hsd1.ga.comcast.net)
23:42:54 × xff0x quits (~xff0x@ai099196.d.east.v6connect.net) (Ping timeout: 255 seconds)
23:44:21 × yoo quits (~yo0O0o@user/mobivme) (Remote host closed the connection)
23:44:48 xff0x joins (~xff0x@178.255.149.135)
23:44:49 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
23:45:53 k_hachig joins (~k_hachig@38.147.245.17)
23:46:08 yoo joins (~yo0O0o@104.28.194.104)
23:47:13 × sudden quits (~cat@user/sudden) (Ping timeout: 264 seconds)
23:49:46 × xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 264 seconds)
23:51:00 xff0x joins (~xff0x@2405:6580:b080:900:f232:3180:fb80:a011)
23:51:43 × segfaultfizzbuzz quits (~segfaultf@2600:1702:6d0:e930:603e:ee72:ccf6:3b57) (Ping timeout: 268 seconds)
23:53:48 × mei quits (~mei@user/mei) (Remote host closed the connection)
23:55:11 × yoo quits (~yo0O0o@104.28.194.104) (Ping timeout: 264 seconds)
23:55:23 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
23:56:02 × mizlan quits (~mizlan@2607:f010:2e9:b:24e3:3288:b16c:e350) (Ping timeout: 268 seconds)
23:56:12 mei joins (~mei@user/mei)
23:56:51 × k_hachig quits (~k_hachig@38.147.245.17) (Ping timeout: 255 seconds)
23:58:00 sudden joins (~cat@user/sudden)
23:59:59 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)

All times are in UTC on 2024-02-13.