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