2021-08-14 00:02:22 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-08-14 00:04:17 +0200 | jtomas | (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) (Ping timeout: 248 seconds) |
2021-08-14 00:05:07 +0200 | azeem | (~azeem@176.200.230.183) (Ping timeout: 268 seconds) |
2021-08-14 00:05:53 +0200 | sander | (~sander@user/sander) (Ping timeout: 248 seconds) |
2021-08-14 00:06:17 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 00:09:25 +0200 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 268 seconds) |
2021-08-14 00:11:36 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-08-14 00:17:16 +0200 | azeem | (~azeem@176.200.230.183) (Ping timeout: 256 seconds) |
2021-08-14 00:17:27 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 00:21:53 +0200 | azeem | (~azeem@176.200.230.183) (Ping timeout: 248 seconds) |
2021-08-14 00:22:28 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 00:25:24 +0200 | jneira | (~jneira@28.red-80-28-169.staticip.rima-tde.net) |
2021-08-14 00:29:15 +0200 | <falsifian> | Las[m]: Cool, maybe I will try it later. For now, my current project is already started with ghcjs, so I think I'll stick with it. I was running into trouble re-adding it to nixpkgs, but it looks like I can use haskell.nix instead where it still works. |
2021-08-14 00:29:44 +0200 | <falsifian> | (It was an unpleasant surprise to update to the latest NixOS release to find that ghcjs had disappeared :( ) |
2021-08-14 00:30:11 +0200 | jay-invariant | (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Remote host closed the connection) |
2021-08-14 00:31:03 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-08-14 00:31:25 +0200 | drownbes | (~igloo@79-206-50-195.sta.estpak.ee) |
2021-08-14 00:32:06 +0200 | jay_invariant | (~jay@c-24-4-6-169.hsd1.ca.comcast.net) |
2021-08-14 00:32:16 +0200 | drownbes | (~igloo@79-206-50-195.sta.estpak.ee) (Remote host closed the connection) |
2021-08-14 00:33:59 +0200 | haykam1 | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
2021-08-14 00:34:12 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
2021-08-14 00:34:35 +0200 | michalz | (~michalz@185.246.204.33) (Remote host closed the connection) |
2021-08-14 00:34:37 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 00:37:40 +0200 | curiousgay | (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 256 seconds) |
2021-08-14 00:38:43 +0200 | jay-invariant | (~jay@c-24-4-6-169.hsd1.ca.comcast.net) |
2021-08-14 00:40:07 +0200 | jay_invariant | (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
2021-08-14 00:43:49 +0200 | chomwitt | (~chomwitt@athedsl-32301.home.otenet.gr) (Remote host closed the connection) |
2021-08-14 00:53:33 +0200 | goepsilongo | (~goepsilon@2603-7000-ab00-62ed-95a9-15a9-30f0-cc26.res6.spectrum.com) |
2021-08-14 00:54:25 +0200 | azeem | (~azeem@176.200.230.183) (Ping timeout: 248 seconds) |
2021-08-14 00:55:11 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 00:59:45 +0200 | azeem | (~azeem@176.200.230.183) (Ping timeout: 248 seconds) |
2021-08-14 01:00:19 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 01:00:37 +0200 | azeem | (~azeem@176.200.230.183) (Read error: Connection reset by peer) |
2021-08-14 01:01:55 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
2021-08-14 01:02:42 +0200 | tapas | Saladin |
2021-08-14 01:05:02 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Ping timeout: 258 seconds) |
2021-08-14 01:05:17 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-08-14 01:09:06 +0200 | aweinstock | (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 240 seconds) |
2021-08-14 01:11:09 +0200 | goepsilongo | (~goepsilon@2603-7000-ab00-62ed-95a9-15a9-30f0-cc26.res6.spectrum.com) (Quit: Textual IRC Client: www.textualapp.com) |
2021-08-14 01:11:12 +0200 | aweinstock | (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) |
2021-08-14 01:18:47 +0200 | SoF | (~skius@user/skius) (Quit: Ping timeout (120 seconds)) |
2021-08-14 01:19:20 +0200 | Unode | (~Unode@194.94.44.220) (Remote host closed the connection) |
2021-08-14 01:19:46 +0200 | aforemny | (~aforemny@static.248.158.34.188.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-08-14 01:20:37 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 01:20:37 +0200 | SoF6 | (~skius@user/skius) |
2021-08-14 01:20:38 +0200 | Unode_ | (~Unode@194.94.44.220) |
2021-08-14 01:20:38 +0200 | aforemny_ | (~aforemny@static.248.158.34.188.clients.your-server.de) |
2021-08-14 01:20:47 +0200 | Unode_ | Unode |
2021-08-14 01:20:47 +0200 | SoF6 | SoF |
2021-08-14 01:23:52 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 01:27:29 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 01:27:47 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.210.188) |
2021-08-14 01:29:38 +0200 | GIANTWORLDKEEPER | (~pjetcetal@2.95.210.188) (Read error: Connection reset by peer) |
2021-08-14 01:34:32 +0200 | Square | (~a@178.62.91.8) |
2021-08-14 01:38:50 +0200 | aweinstock | (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (Ping timeout: 268 seconds) |
2021-08-14 01:39:56 +0200 | Saladin | tapas |
2021-08-14 01:40:26 +0200 | aweinstock | (~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) |
2021-08-14 01:41:42 +0200 | jgeerds | (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 256 seconds) |
2021-08-14 01:48:29 +0200 | Ananta-shesha | (~pjetcetal@2.95.210.188) |
2021-08-14 01:49:27 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-08-14 01:52:33 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
2021-08-14 01:55:17 +0200 | slack1256 | (~slack1256@191.126.13.254) |
2021-08-14 01:59:42 +0200 | hexfive | (~eric@50.35.83.177) |
2021-08-14 01:59:47 +0200 | hexfive | (~eric@50.35.83.177) (Client Quit) |
2021-08-14 02:03:56 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-08-14 02:17:28 +0200 | Cajun | (~Cajun@user/cajun) (Ping timeout: 246 seconds) |
2021-08-14 02:21:25 +0200 | bitmapper | (uid464869@id-464869.tooting.irccloud.com) |
2021-08-14 02:22:33 +0200 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-08-14 02:22:33 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-08-14 02:22:36 +0200 | allbery_b | geekosaur |
2021-08-14 02:26:09 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-14 02:26:50 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 02:27:23 +0200 | jeslie0 | (~user@108.162.150.9) |
2021-08-14 02:28:57 +0200 | jeslie0 | (~user@108.162.150.9) (Remote host closed the connection) |
2021-08-14 02:30:07 +0200 | <justsomeguy> | Las[m]: "Idris is ready for production, if prodution is ready for it." ~ James Brown |
2021-08-14 02:31:43 +0200 | jeslie0 | (~user@108.162.150.9) |
2021-08-14 02:32:14 +0200 | o1lo01ol1o | (~o1lo01ol1@31.22.136.245) (Ping timeout: 272 seconds) |
2021-08-14 02:35:47 +0200 | agua_pesada | (~agua_pesa@191.177.175.57) |
2021-08-14 02:38:56 +0200 | Core6816 | (~agua_pesa@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Ping timeout: 256 seconds) |
2021-08-14 02:41:35 +0200 | Atum_ | (~IRC@user/atum/x-2392232) (Quit: Atum_) |
2021-08-14 02:42:59 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 244 seconds) |
2021-08-14 02:44:23 +0200 | DigitalKiwi | (~kiwi@2604:a880:400:d0::12fc:5001) (Quit: quite.) |
2021-08-14 02:45:07 +0200 | DigitalKiwi | (~kiwi@2604:a880:400:d0::12fc:5001) |
2021-08-14 02:46:14 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 258 seconds) |
2021-08-14 02:50:27 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds) |
2021-08-14 02:50:31 +0200 | curiousgay | (~curiousga@77-120-186-48.kha.volia.net) |
2021-08-14 02:50:53 +0200 | the_proffesor | (~theproffe@2601:282:847f:8010::3a29) |
2021-08-14 02:51:06 +0200 | Cajun | (~Cajun@user/cajun) |
2021-08-14 02:52:26 +0200 | the_proffesor | (~theproffe@2601:282:847f:8010::3a29) (Changing host) |
2021-08-14 02:52:26 +0200 | the_proffesor | (~theproffe@user/theproffesor) |
2021-08-14 02:52:42 +0200 | theproffesor | (~theproffe@user/theproffesor) (Killed (platinum.libera.chat (Nickname regained by services))) |
2021-08-14 02:52:42 +0200 | the_proffesor | theproffesor |
2021-08-14 02:52:48 +0200 | jfrent | (~josiah@user/jfrent) |
2021-08-14 02:54:11 +0200 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
2021-08-14 02:56:56 +0200 | mnrmnaughmnrgle | (~mnrmnaugh@68.162.206.56) |
2021-08-14 02:59:45 +0200 | mnrmnaugh | (~mnrmnaugh@68.162.206.56) (Ping timeout: 248 seconds) |
2021-08-14 03:07:34 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-08-14 03:07:57 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 03:11:45 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-08-14 03:18:15 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:d53f:ff79:b405:7cdc) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-14 03:23:57 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 03:25:07 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 245 seconds) |
2021-08-14 03:26:54 +0200 | fjmorazan | (~quassel@user/fjmorazan) (Quit: fjmorazan) |
2021-08-14 03:27:36 +0200 | fjmorazan | (~quassel@user/fjmorazan) |
2021-08-14 03:27:58 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 272 seconds) |
2021-08-14 03:30:08 +0200 | notzmv | (~zmv@user/notzmv) |
2021-08-14 03:33:53 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-14 03:35:54 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:3498:2815:cba3:43e9) |
2021-08-14 03:49:00 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 03:52:02 +0200 | xff0x | (~xff0x@2001:1a81:5278:5300:2655:c9ee:974:3c59) (Ping timeout: 256 seconds) |
2021-08-14 03:53:15 +0200 | hololeap | (~hololeap@user/hololeap) (Ping timeout: 244 seconds) |
2021-08-14 03:53:37 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) (Remote host closed the connection) |
2021-08-14 03:53:39 +0200 | xff0x | (~xff0x@2001:1a81:52b4:6700:e48a:7334:5a0f:61a4) |
2021-08-14 03:53:50 +0200 | haykam | (~haykam@static.100.2.21.65.clients.your-server.de) |
2021-08-14 03:54:09 +0200 | hololeap | (~hololeap@user/hololeap) |
2021-08-14 03:55:43 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 03:58:04 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:3498:2815:cba3:43e9) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-14 04:01:55 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) |
2021-08-14 04:04:03 +0200 | jeslie0 | (~user@108.162.150.9) (Ping timeout: 258 seconds) |
2021-08-14 04:05:44 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) (Quit: Leaving) |
2021-08-14 04:06:28 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-08-14 04:08:15 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-08-14 04:09:39 +0200 | slack1256 | (~slack1256@191.126.13.254) (Remote host closed the connection) |
2021-08-14 04:10:03 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) |
2021-08-14 04:10:27 +0200 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 256 seconds) |
2021-08-14 04:11:37 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2021-08-14 04:12:49 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 248 seconds) |
2021-08-14 04:16:01 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-08-14 04:16:22 +0200 | td_ | (~td@muedsl-82-207-238-005.citykom.de) (Ping timeout: 245 seconds) |
2021-08-14 04:18:20 +0200 | td_ | (~td@94.134.91.195) |
2021-08-14 04:19:05 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
2021-08-14 04:21:37 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-08-14 04:23:23 +0200 | hendursaga | (~weechat@user/hendursaga) (Client Quit) |
2021-08-14 04:23:29 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-08-14 04:24:54 +0200 | curiousgay | (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 256 seconds) |
2021-08-14 04:25:22 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-08-14 04:25:22 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (osmium.libera.chat (Nickname regained by services))) |
2021-08-14 04:25:22 +0200 | finn_elija | FinnElija |
2021-08-14 04:32:40 +0200 | hendursaga | (~weechat@user/hendursaga) |
2021-08-14 04:39:33 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-08-14 04:40:23 +0200 | Axman6 | (~Axman6@user/axman6) |
2021-08-14 04:44:37 +0200 | HarveyPwca | (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) |
2021-08-14 04:44:47 +0200 | Axman6 | (~Axman6@user/axman6) (Remote host closed the connection) |
2021-08-14 04:46:17 +0200 | Axman6 | (~Axman6@user/axman6) |
2021-08-14 05:01:21 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2021-08-14 05:01:34 +0200 | cheater | (~Username@user/cheater) |
2021-08-14 05:01:38 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) |
2021-08-14 05:07:55 +0200 | mnrmnaughmnrgle | mnrmnaugh |
2021-08-14 05:11:52 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-08-14 05:12:12 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
2021-08-14 05:23:57 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 05:27:29 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 05:28:24 +0200 | kevin_ | (~tripoli@69.233.98.238) |
2021-08-14 05:28:25 +0200 | kevin_ | (~tripoli@69.233.98.238) (Client Quit) |
2021-08-14 05:29:07 +0200 | tripoli | (~tripoli@69.233.98.238) |
2021-08-14 05:31:22 +0200 | fef | (~thedawn@user/thedawn) |
2021-08-14 05:31:40 +0200 | alx741 | (~alx741@181.196.68.193) (Quit: alx741) |
2021-08-14 05:45:54 +0200 | zaquest | (~notzaques@5.128.210.178) (Quit: Leaving) |
2021-08-14 05:50:45 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-08-14 05:52:52 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-14 05:53:05 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2) |
2021-08-14 05:54:30 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-08-14 05:58:44 +0200 | stevenxl | (uid133530@id-133530.highgate.irccloud.com) |
2021-08-14 06:07:30 +0200 | smitop | (~smitop@user/smitop) (Read error: Connection reset by peer) |
2021-08-14 06:08:08 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-08-14 06:08:11 +0200 | smitop | (~smitop@user/smitop) |
2021-08-14 06:12:17 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 248 seconds) |
2021-08-14 06:19:40 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 06:23:25 +0200 | mnrmnaugh | KeziahMason |
2021-08-14 06:36:00 +0200 | fef | (~thedawn@user/thedawn) (Ping timeout: 244 seconds) |
2021-08-14 06:48:37 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-08-14 06:53:57 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-08-14 07:09:00 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
2021-08-14 07:23:10 +0200 | ellie | (~ellie@user/ellie) (Quit: The Lounge - https://thelounge.chat) |
2021-08-14 07:23:23 +0200 | ellie | (~ellie@user/ellie) |
2021-08-14 07:24:12 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 07:25:20 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-14 07:25:20 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-14 07:25:58 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 07:27:36 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 258 seconds) |
2021-08-14 07:30:09 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 248 seconds) |
2021-08-14 07:43:03 +0200 | norias | (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Quit: Leaving) |
2021-08-14 07:45:05 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-14 07:47:23 +0200 | ellie | ell |
2021-08-14 07:50:12 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 07:55:19 +0200 | MidAutumnMoon | (~MidAutumn@user/midautumnmoon) (Quit: Leaving for a break - theLounge) |
2021-08-14 07:58:16 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 258 seconds) |
2021-08-14 08:05:11 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-08-14 08:05:38 +0200 | sander | (~sander@user/sander) |
2021-08-14 08:06:07 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-08-14 08:10:08 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 08:11:02 +0200 | bitmapper | (uid464869@id-464869.tooting.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-14 08:11:13 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 08:11:37 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 08:12:43 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 08:13:09 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 08:14:10 +0200 | retroid_ | (~retro@5ec19a54.skybroadband.com) |
2021-08-14 08:14:13 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 08:14:36 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 08:24:23 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-08-14 08:29:44 +0200 | Axman6 | (~Axman6@user/axman6) (Ping timeout: 260 seconds) |
2021-08-14 08:29:45 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-08-14 08:31:37 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 258 seconds) |
2021-08-14 08:31:38 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-08-14 08:39:43 +0200 | vrilles | (~vrilles@user/aman) (Quit: vrilles) |
2021-08-14 08:50:16 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 09:03:59 +0200 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-08-14 09:07:15 +0200 | <tomsmeding> | hololeap: in case you hadn't already figured it out: the problem in your applyExtraArgs function is exactly what I said earlier about non-injective type families |
2021-08-14 09:07:31 +0200 | <tomsmeding> | Where if Foo is non-injective, ghc can't infer a from knowing what Foo a is |
2021-08-14 09:07:50 +0200 | <tomsmeding> | In this case, ghc can't infer r from knowing what WithExtraArgs as r is |
2021-08-14 09:08:40 +0200 | <tomsmeding> | Hm but it's weird |
2021-08-14 09:11:28 +0200 | <tomsmeding> | Yeah I bet that your fucking problem is AllowAmbiguousTypes |
2021-08-14 09:11:31 +0200 | <tomsmeding> | I knew it |
2021-08-14 09:11:36 +0200 | <tomsmeding> | I hate AllowAmbiguousTypes |
2021-08-14 09:11:46 +0200 | <tomsmeding> | applyExtraArgs is uncallable |
2021-08-14 09:12:18 +0200 | tripoli | (~tripoli@69.233.98.238) (Quit: tripoli) |
2021-08-14 09:12:43 +0200 | <tomsmeding> | Unless you give it actual type applications |
2021-08-14 09:13:10 +0200 | <tomsmeding> | Type ascriptions (like you've done here) aren't enough because of the non-injective type family that doesn't actually say what r is |
2021-08-14 09:13:55 +0200 | <tomsmeding> | I bet if you give the call of applyExtraArgs in the last line of foo two type applications, @as' @r, then it'll compile |
2021-08-14 09:19:04 +0200 | <tomsmeding> | hololeap: ah, actually only @_ @r is necessary of course, because as is already pinned down by the Sing thing |
2021-08-14 09:20:05 +0200 | <tomsmeding> | also with the current code you can remove the proxy argument from 'foo' since its type variable, a, is already inferrable from the function-typed argument |
2021-08-14 09:20:19 +0200 | <tomsmeding> | ((->) _is_ injective since it's a data constructor :p ) |
2021-08-14 09:20:40 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) |
2021-08-14 09:22:46 +0200 | <Cajun> | so im trying to build monomer because i saw it on the subreddit, but despite having freetype2 on my path and all installed via my package manager, it refuses to see ft2build.h, specifically when building nanovg. also, the required version for nanovg is >= 0.8 but nanovg only goes to 0.7, what gives? |
2021-08-14 09:24:10 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 09:24:17 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
2021-08-14 09:26:27 +0200 | <Cajun> | more specifically, it spits this out: https://paste.tomsmeding.com/zJHTNu8Z |
2021-08-14 09:26:40 +0200 | <Cajun> | i have freetype2 set up, the dir is on the path, so why cant it find the header? |
2021-08-14 09:27:20 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 09:27:29 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 09:29:08 +0200 | <tomsmeding> | Cajun: this PR on nanovg-hs bumps version to 0.8; presumably fjvallarino assumes this is merged soon :p https://github.com/cocreature/nanovg-hs/pull/14 |
2021-08-14 09:29:24 +0200 | <tomsmeding> | only sounds relevant if you're using windows |
2021-08-14 09:30:13 +0200 | <Cajun> | im on windows but WSL, so its irrelevant |
2021-08-14 09:30:24 +0200 | <tomsmeding> | Cajun: re include paths: presumably it's only looking in the standard include paths, e.g. /usr/include, not in /usr/include/freetype2 |
2021-08-14 09:30:30 +0200 | <maerwald[m]> | https://github.com/fjvallarino/monomer/issues/7 |
2021-08-14 09:30:50 +0200 | <maerwald[m]> | the hackage version is simply broken |
2021-08-14 09:30:59 +0200 | <Cajun> | tomsmeding: well i have `/usr/include/freetype2` on the path so... |
2021-08-14 09:31:19 +0200 | <tomsmeding> | Cajun: which path? |
2021-08-14 09:31:28 +0200 | <Cajun> | whatever $PATH is |
2021-08-14 09:31:35 +0200 | euouae | (~euouae@user/euouae) |
2021-08-14 09:31:41 +0200 | <tomsmeding> | maerwald[m]: your build log is outdated, because there _is_ a 0.7 on hackage, just not a 0.8 :p (point still stands) |
2021-08-14 09:31:50 +0200 | euouae | (~euouae@user/euouae) () |
2021-08-14 09:31:54 +0200 | <tomsmeding> | Cajun: $PATH is completely unrelated to finding libraries, it's for finding executables |
2021-08-14 09:32:04 +0200 | <tomsmeding> | s/libraries/header files/ |
2021-08-14 09:32:05 +0200 | <maerwald[m]> | tomsmeding: how's my build log outdated? |
2021-08-14 09:32:11 +0200 | <tomsmeding> | though the libraries statement is also true |
2021-08-14 09:32:14 +0200 | <maerwald[m]> | the dependency is nanovg>=0.8 && <1.0 |
2021-08-14 09:32:15 +0200 | <Cajun> | ah that would make sense, im not too great with linux yet :P |
2021-08-14 09:32:21 +0200 | <tomsmeding> | maerwald[m]: your cabal only has nanovg 0.6 but 0.7 exists on hackage |
2021-08-14 09:32:36 +0200 | <tomsmeding> | (not that that helps yet) |
2021-08-14 09:32:41 +0200 | <Cajun> | well `nanovg>=0.8 && <1.0` would still fail yeah |
2021-08-14 09:33:20 +0200 | <Cajun> | its why im using --allow-older just to see if it wants to work |
2021-08-14 09:33:33 +0200 | <tomsmeding> | Cajun: seeing that header file would happen with one of two changes: 1. the include is changed to #include <freetype2/ft2build.h>, or 2. gcc gets -I/usr/include/freetype2 |
2021-08-14 09:33:40 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
2021-08-14 09:34:40 +0200 | <Cajun> | could i move the `freetypes` folder and the `ft2build.h` header outside of `/usr/include/freetypes2` into `/usr/include` ? |
2021-08-14 09:35:03 +0200 | <Cajun> | it seems like whats in the `/include/freetypes2` folder is how all of the other headers in there are formatted |
2021-08-14 09:35:04 +0200 | Axman6 | (~Axman6@user/axman6) |
2021-08-14 09:35:58 +0200 | <tomsmeding> | Cajun: yeah that's a pretty standard layout as you have it currently |
2021-08-14 09:36:19 +0200 | <tomsmeding> | while you _could_ copy the folder contents, I strongly recommend you don't |
2021-08-14 09:36:26 +0200 | <tomsmeding> | I'll have a try building it |
2021-08-14 09:36:26 +0200 | <Cajun> | hmm well what does `gcc gets -I/usr/include/freetype2` mean? |
2021-08-14 09:37:06 +0200 | <tomsmeding> | gcc needs that as an additional command-line argument |
2021-08-14 09:37:41 +0200 | <Cajun> | so how can i pass that through `cabal build` ? or do i just do that command alone |
2021-08-14 09:38:06 +0200 | <tomsmeding> | I _think_ nanovg needs to add 'cc-options: -I/usr/include/freetype2' in this 'else'-branch https://github.com/cocreature/nanovg-hs/blob/master/nanovg.cabal#L90 |
2021-08-14 09:38:09 +0200 | <tomsmeding> | but uncertain |
2021-08-14 09:39:27 +0200 | <Cajun> | so nanovg is just broke currently? |
2021-08-14 09:39:37 +0200 | <tomsmeding> | yeah |
2021-08-14 09:39:49 +0200 | <tomsmeding> | perhaps there are systems where it isn't, because I think this is a linux-specific issue |
2021-08-14 09:41:37 +0200 | <maerwald> | tomsmeding: extra-include-dirs |
2021-08-14 09:41:47 +0200 | <tomsmeding> | ah |
2021-08-14 09:43:06 +0200 | <Cajun> | well im glad im not going crazy :) thanks for making this make sense! |
2021-08-14 09:43:08 +0200 | <maerwald> | nanovg has too many issues, I get c2hs errors |
2021-08-14 09:44:26 +0200 | <maerwald> | also, freetype has pkgconfig files |
2021-08-14 09:44:38 +0200 | <maerwald> | why is it not using those |
2021-08-14 09:45:05 +0200 | sm2n | (~sm2n@user/sm2n) (Ping timeout: 248 seconds) |
2021-08-14 09:45:27 +0200 | <tomsmeding> | maerwald: shouldn't it be include-dirs instead of extra-include-dirs? |
2021-08-14 09:45:43 +0200 | <maerwald> | extra-include-dirs you can pass on the cmdline |
2021-08-14 09:45:51 +0200 | <tomsmeding> | ah right |
2021-08-14 09:45:52 +0200 | <zyklotomic> | is there a way to type a do statement? |
2021-08-14 09:46:03 +0200 | <zyklotomic> | like x <- do :: [Int] |
2021-08-14 09:46:23 +0200 | <maerwald> | x :: [Int] <- do |
2021-08-14 09:46:30 +0200 | <tomsmeding> | maerwald: probably the author of nanovg isn't very familiar with linux :p |
2021-08-14 09:46:38 +0200 | <zyklotomic> | maerwald: thumbs up lol |
2021-08-14 09:47:10 +0200 | <maerwald> | tomsmeding: that would surprise me |
2021-08-14 09:48:11 +0200 | <tomsmeding> | seems indeed just adding ', freetype2' to that pkgconfig-depends makes it work |
2021-08-14 09:48:52 +0200 | <maerwald> | pkgconfig isn't well implemented in cabal, because it doesn't allow falling back to other means |
2021-08-14 09:49:13 +0200 | <maerwald> | often times whether you have pkg-config of a lib depends on the library version or even the distro |
2021-08-14 09:49:23 +0200 | <tomsmeding> | right |
2021-08-14 09:49:41 +0200 | <maerwald> | https://github.com/haskell/cabal/issues/6771 |
2021-08-14 09:49:42 +0200 | <tomsmeding> | lol monomer itself doesn't build |
2021-08-14 09:50:09 +0200 | <Cajun> | are you getting the version dependency issue? |
2021-08-14 09:50:22 +0200 | <Cajun> | or is this another issue with the library... |
2021-08-14 09:50:50 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-14 09:50:56 +0200 | timCF | (~timCF@200-149-20-81.sta.estpak.ee) (Ping timeout: 268 seconds) |
2021-08-14 09:50:57 +0200 | timCF_ | (~timCF@200-149-20-81.sta.estpak.ee) (Ping timeout: 248 seconds) |
2021-08-14 09:51:13 +0200 | <tomsmeding> | no I actually got so far as to compile monomer itself https://paste.tomsmeding.com/tLnOGV5Y |
2021-08-14 09:51:32 +0200 | <tomsmeding> | by relaxing the nanovg bounds to 0.7 and adding freetype2 to the pkgconfig-depends list of nanovg |
2021-08-14 09:51:47 +0200 | <maerwald> | use nanosvg 0.8 |
2021-08-14 09:52:02 +0200 | <tomsmeding> | right |
2021-08-14 09:52:54 +0200 | <maerwald> | https://github.com/fjvallarino/monomer/pull/8 |
2021-08-14 09:53:10 +0200 | <maerwald> | oops |
2021-08-14 09:53:14 +0200 | <maerwald> | that's a broken PR |
2021-08-14 09:53:34 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-08-14 09:53:43 +0200 | <maerwald> | they put cabal.project in gitignore |
2021-08-14 09:53:46 +0200 | <maerwald> | *sigh* |
2021-08-14 09:54:40 +0200 | <maerwald> | now |
2021-08-14 09:56:06 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-08-14 09:56:49 +0200 | <tomsmeding> | ah the nanovg-0.8 from that windows PR actually puts freetype2 in the nanovg.cabal file :p |
2021-08-14 09:59:07 +0200 | <tomsmeding> | making a project that depends on monomer and adding the monomer repo and fjvallarino's fork of nanovg-hs as subdirectories, and then checking out ba8733f in nanovg-hs, and adding a cabal.project in my root project with 'packages: . monomer nanovg-hs' works for me |
2021-08-14 09:59:39 +0200 | <Cajun> | sounds like.. a lot of work |
2021-08-14 10:00:02 +0200 | <maerwald> | don't understand why you'd do that |
2021-08-14 10:00:12 +0200 | <maerwald> | that's what source-repository-package is for, see my PR |
2021-08-14 10:01:02 +0200 | <tomsmeding> | ah because I don't know cabal.project well enough |
2021-08-14 10:01:16 +0200 | <tomsmeding> | don't need the +stb_truetype flag here |
2021-08-14 10:01:40 +0200 | <tomsmeding> | is that really cabal support though? |
2021-08-14 10:01:46 +0200 | <JavierNeira[m]> | https://cabal.readthedocs.io/en/latest/cabal-projectindex.html#cap-cabal.project%20fields :-) |
2021-08-14 10:01:57 +0200 | <JavierNeira[m]> | yeah, in `constraints:` |
2021-08-14 10:02:01 +0200 | <tomsmeding> | like, it probably allows you to build the monomer repo, but if that gets uploaded to hackage, would it allow me to _depend_ on monomer |
2021-08-14 10:02:15 +0200 | <tomsmeding> | or is cabal.project also inspected for dependencies |
2021-08-14 10:02:25 +0200 | <maerwald> | no |
2021-08-14 10:02:30 +0200 | <maerwald> | cabal support /= hackage support |
2021-08-14 10:02:34 +0200 | <tomsmeding> | right |
2021-08-14 10:03:15 +0200 | <tomsmeding> | maerwald: is that +stb_truetype flag necessary for you? |
2021-08-14 10:03:27 +0200 | <maerwald> | no idea, it's in stack.yaml |
2021-08-14 10:03:48 +0200 | <maerwald> | I can't build at all due to c2hs errors |
2021-08-14 10:04:03 +0200 | <tomsmeding> | mac? |
2021-08-14 10:04:07 +0200 | <maerwald> | linux |
2021-08-14 10:04:18 +0200 | <maerwald> | c2hs is constantly broken, because it re-implements its own C parser |
2021-08-14 10:05:02 +0200 | <tomsmeding> | interesting, I'm on arch with a fairly new C compiler and it works for me |
2021-08-14 10:05:20 +0200 | tripoli | (~tripoli@69.233.98.238) |
2021-08-14 10:05:36 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-08-14 10:07:24 +0200 | <tomsmeding> | heh got the first tutorial example to compile, but it won't run because SDL fails to create a GL context (?) |
2021-08-14 10:07:40 +0200 | <tomsmeding> | oh, no because glMakeCurrent fails |
2021-08-14 10:07:56 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) |
2021-08-14 10:08:52 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
2021-08-14 10:09:31 +0200 | tomsmeding | is going to do something else for a while :p |
2021-08-14 10:09:53 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer) |
2021-08-14 10:10:04 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-14 10:10:34 +0200 | <Cajun> | yeah this just sounds like hell, i think im going to let this library settle for a month or more and move to other alternatives, ive heard `gi-gtk-declarative` isnt awful |
2021-08-14 10:17:34 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-08-14 10:17:37 +0200 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-08-14 10:17:40 +0200 | allbery_b | geekosaur |
2021-08-14 10:19:29 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-08-14 10:24:04 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-08-14 10:24:20 +0200 | elf_fortrez | (~elf_fortr@adsl-72-50-6-221.prtc.net) |
2021-08-14 10:27:15 +0200 | trueboxguy | (~trueboxgu@user/trueboxguy) (Quit: ZNC 1.7.2+deb3 - https://znc.in) |
2021-08-14 10:30:30 +0200 | shredder | (~user@user/shredder) (Quit: quitting) |
2021-08-14 10:31:21 +0200 | shredder | (~user@user/shredder) |
2021-08-14 10:31:34 +0200 | agua_pesada | (~agua_pesa@191.177.175.57) (Quit: CoreIRC for Android - www.coreirc.com) |
2021-08-14 10:31:51 +0200 | aguapesada | (~aguapesad@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) |
2021-08-14 10:32:52 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-14 10:34:43 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2021-08-14 10:36:30 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 10:37:47 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Remote host closed the connection) |
2021-08-14 10:38:18 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 10:41:10 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Remote host closed the connection) |
2021-08-14 10:45:54 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Remote host closed the connection) |
2021-08-14 10:47:01 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 10:50:41 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
2021-08-14 10:51:59 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Ping timeout: 268 seconds) |
2021-08-14 10:52:51 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-08-14 10:55:14 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-08-14 10:58:22 +0200 | oxide | (~lambda@user/oxide) |
2021-08-14 10:59:13 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-08-14 11:01:21 +0200 | sander | (~sander@user/sander) (Ping timeout: 248 seconds) |
2021-08-14 11:01:58 +0200 | sander | (~sander@user/sander) |
2021-08-14 11:02:37 +0200 | oxide | (~lambda@user/oxide) (Client Quit) |
2021-08-14 11:19:42 +0200 | ikex | (~ash@user/ikex) (Ping timeout: 256 seconds) |
2021-08-14 11:20:26 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-08-14 11:20:31 +0200 | ikex | (~ash@user/ikex) |
2021-08-14 11:20:32 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 11:20:39 +0200 | sm2n | (~sm2n@user/sm2n) |
2021-08-14 11:21:00 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 11:21:02 +0200 | sander | (~sander@user/sander) |
2021-08-14 11:22:32 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-08-14 11:23:59 +0200 | curiousgay | (~curiousga@77-120-186-48.kha.volia.net) |
2021-08-14 11:24:17 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 11:25:56 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 256 seconds) |
2021-08-14 11:27:29 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 11:29:34 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-08-14 11:31:10 +0200 | sander | (~sander@user/sander) |
2021-08-14 11:35:28 +0200 | sndr | (~sander@user/sander) |
2021-08-14 11:36:08 +0200 | sander | (~sander@user/sander) (Ping timeout: 256 seconds) |
2021-08-14 11:36:15 +0200 | sndr | sander |
2021-08-14 11:37:04 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-14 11:41:56 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
2021-08-14 11:42:57 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Ping timeout: 248 seconds) |
2021-08-14 11:42:57 +0200 | jneira | (~jneira@28.red-80-28-169.staticip.rima-tde.net) (Ping timeout: 248 seconds) |
2021-08-14 11:45:50 +0200 | azeem | (~azeem@176.200.230.183) |
2021-08-14 11:47:28 +0200 | azeem | (~azeem@176.200.230.183) (Read error: Connection reset by peer) |
2021-08-14 11:47:47 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
2021-08-14 11:51:17 +0200 | dunj3 | (~dunj3@2001:16b8:3087:1500:4897:30d0:e9f9:702b) |
2021-08-14 11:52:05 +0200 | jneira | (~jneira@28.red-80-28-169.staticip.rima-tde.net) |
2021-08-14 11:55:16 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-08-14 11:55:24 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-08-14 11:59:22 +0200 | polyphem | (~polyphem@2a02:810d:640:776c:5ce9:eeb2:9e8b:b083) (Ping timeout: 256 seconds) |
2021-08-14 12:01:32 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 12:03:48 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-08-14 12:04:52 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-08-14 12:05:53 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 248 seconds) |
2021-08-14 12:07:00 +0200 | kuribas | (~user@ptr-25vy0i7jvn9rvz44z49.18120a2.ip6.access.telenet.be) |
2021-08-14 12:08:18 +0200 | <kuribas> | Is there a libary that does polymorphic operations over records? |
2021-08-14 12:08:27 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-08-14 12:08:31 +0200 | <kuribas> | Like taking a subset of (named) fields. |
2021-08-14 12:08:38 +0200 | <kuribas> | Transforming the types of fields... |
2021-08-14 12:09:48 +0200 | <carbolymer> | does anyone has an example of a single file haskell script with cabal? like stack script, but with cabal? my duckduckgo-fu seems to fail me today... |
2021-08-14 12:09:51 +0200 | sander | (~sander@user/sander) |
2021-08-14 12:10:21 +0200 | <kuribas> | hmm, maybe I can use https://hackage.haskell.org/package/generic-data-surgery-0.3.0.0 |
2021-08-14 12:11:09 +0200 | <kuribas> | carbolymer: how do you specify packages if it's a single file? |
2021-08-14 12:12:00 +0200 | <carbolymer> | ok, I've found it... but it seems that it recompiles everything each time, and stack does some additional caching... https://github.com/haskell/cabal/issues/5688#issuecomment-438456164 |
2021-08-14 12:12:06 +0200 | <carbolymer> | kuribas: ^ |
2021-08-14 12:12:26 +0200 | <carbolymer> | s/everything/my code/ |
2021-08-14 12:13:04 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
2021-08-14 12:14:01 +0200 | <kuribas> | I just use ghc or ghci. |
2021-08-14 12:14:11 +0200 | <kuribas> | But it depends on globally installed packages, so it's not ideal. |
2021-08-14 12:14:46 +0200 | <carbolymer> | kuribas: but you can pin version in dependencies, can't you? |
2021-08-14 12:14:55 +0200 | <carbolymer> | aah, you mean ghc |
2021-08-14 12:15:16 +0200 | <carbolymer> | right - I was looking for more portable solution so I can drop single file on a machine and make it work there |
2021-08-14 12:15:35 +0200 | <kuribas> | Nowadays I make a small package always... |
2021-08-14 12:16:13 +0200 | <kuribas> | if the ghci approach doesn't work. |
2021-08-14 12:20:36 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-08-14 12:21:47 +0200 | keutoi | (~keutoi@157.48.222.12) |
2021-08-14 12:23:08 +0200 | tripoli | (~tripoli@69.233.98.238) (Quit: nyaa~) |
2021-08-14 12:25:36 +0200 | <kuribas> | uhm, data-surgery doesn't loop over all fields... |
2021-08-14 12:25:36 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-08-14 12:26:19 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 12:26:27 +0200 | <kuribas> | Is there no library to do generic record operations, like in clojure? |
2021-08-14 12:26:58 +0200 | <kuribas> | Like mapping all fields (polymorphically), taking a subset of fields, union of two records. |
2021-08-14 12:28:25 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-08-14 12:29:07 +0200 | Erutuon | (~Erutuon@user/erutuon) (Quit: WeeChat 2.8) |
2021-08-14 12:29:13 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
2021-08-14 12:32:58 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 12:34:05 +0200 | skykanin | (~skykanin@115.81-166-221.customer.lyse.net) |
2021-08-14 12:35:14 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-08-14 12:38:03 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds) |
2021-08-14 12:39:54 +0200 | sander | (~sander@user/sander) (Ping timeout: 268 seconds) |
2021-08-14 12:43:52 +0200 | dunj3 | (~dunj3@2001:16b8:3087:1500:4897:30d0:e9f9:702b) (Ping timeout: 245 seconds) |
2021-08-14 12:48:28 +0200 | sander | (~sander@user/sander) |
2021-08-14 12:50:58 +0200 | dudek | (~dudek@185.150.236.112) |
2021-08-14 12:59:13 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 248 seconds) |
2021-08-14 13:01:18 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 13:05:28 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 13:05:32 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Ping timeout: 245 seconds) |
2021-08-14 13:09:56 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-08-14 13:10:07 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2021-08-14 13:24:17 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 13:28:01 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 13:28:34 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 13:31:13 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) (Read error: Connection reset by peer) |
2021-08-14 13:33:22 +0200 | azeem | (~azeem@dynamic-adsl-94-34-33-6.clienti.tiscali.it) |
2021-08-14 13:36:38 +0200 | shredder | (~user@user/shredder) (Ping timeout: 268 seconds) |
2021-08-14 13:41:35 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 13:43:22 +0200 | yushyin | (MbKMC7U51Q@karif.server-speed.net) (Quit: WeeChat 3.1) |
2021-08-14 13:43:33 +0200 | yushyin | (PW3hWJBC9s@karif.server-speed.net) |
2021-08-14 13:47:35 +0200 | <adamCS> | kuribas: vinyl? https://hackage.haskell.org/package/vinyl |
2021-08-14 13:47:52 +0200 | <kuribas> | adamCS: no, I want to use just records. |
2021-08-14 13:48:11 +0200 | <adamCS> | Ah. |
2021-08-14 13:49:18 +0200 | <kuribas> | I am messing around now to make something easy to use... |
2021-08-14 13:50:38 +0200 | vpan | (~vilius@212.117.1.172) |
2021-08-14 13:51:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 13:52:01 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 248 seconds) |
2021-08-14 13:54:55 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-08-14 13:55:46 +0200 | <kuribas> | using a newtype to define a generic operation. |
2021-08-14 13:56:17 +0200 | <Franciman> | hi, is there any pretty printing library allowing to specify precedence rules |
2021-08-14 13:56:27 +0200 | <Franciman> | so that the output does not contain extra parantheses? |
2021-08-14 13:57:51 +0200 | shredder | (~user@user/shredder) |
2021-08-14 13:59:14 +0200 | igghibu | (~igghibu@91.193.5.28) |
2021-08-14 13:59:21 +0200 | igghibu | (~igghibu@91.193.5.28) (Client Quit) |
2021-08-14 14:00:42 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
2021-08-14 14:05:50 +0200 | aarchi | (sid486183@id-486183.highgate.irccloud.com) |
2021-08-14 14:07:30 +0200 | <aarchi> | Is it possible to install multiple GHC versions in parallel? I want to install GHC 5.02 on macOS 10.14. |
2021-08-14 14:08:05 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-14 14:08:28 +0200 | <Hecate> | kuribas: much better, a typed language that compiles to JVM bytecode |
2021-08-14 14:08:43 +0200 | <Hecate> | (curse, my IRC client betrayed me) |
2021-08-14 14:09:12 +0200 | <kuribas> | Hecate: yes? |
2021-08-14 14:09:34 +0200 | <Franciman> | aarchi: yes, with ghcup |
2021-08-14 14:09:40 +0200 | <Franciman> | it is handy |
2021-08-14 14:09:40 +0200 | <kuribas> | Hecate: have a look at this: https://flix.dev/ |
2021-08-14 14:09:43 +0200 | <maerwald> | 5.02?? |
2021-08-14 14:09:58 +0200 | <kuribas> | Hecate: and don't mention scala :) |
2021-08-14 14:10:09 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) |
2021-08-14 14:10:57 +0200 | tam | (~alpha@163.172.215.78) (Quit: WeeChat 2.7.1) |
2021-08-14 14:11:14 +0200 | <Hecate> | kuribas: nah I'm just waiting for the moment when GHC backends will be more pluggable |
2021-08-14 14:11:14 +0200 | <maerwald> | 5.02 is i386 only :D |
2021-08-14 14:11:22 +0200 | <Hecate> | so Eta will be able to live again |
2021-08-14 14:11:26 +0200 | <aarchi> | Yes 5.02. I am formalizing a spec for the Whitespace programming language (created by the creator of Idris) based on its reference implementation that was written in Haskell, tested on GHC 5.02 |
2021-08-14 14:11:38 +0200 | <maerwald> | there's no bindist for mac |
2021-08-14 14:11:38 +0200 | <kuribas> | Hecate: AFAIK it never lived. |
2021-08-14 14:11:42 +0200 | <maerwald> | https://downloads.haskell.org/~ghc/5.02/ |
2021-08-14 14:11:43 +0200 | <Hecate> | kuribas: shortly |
2021-08-14 14:11:57 +0200 | <kuribas> | nobody used it seriously |
2021-08-14 14:12:01 +0200 | <maerwald> | you'll have a hard time bootstrapping 5.02 |
2021-08-14 14:12:06 +0200 | <aarchi> | Probably would be a pain to bootstrap |
2021-08-14 14:12:19 +0200 | <maerwald> | VM |
2021-08-14 14:12:27 +0200 | <Hecate> | kuribas: that's another thing, due to its short life :P |
2021-08-14 14:12:32 +0200 | <aarchi> | Yeah that's my best option, I guess |
2021-08-14 14:13:51 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 14:16:03 +0200 | <kuribas> | Hecate: I never believed it would take off. On the other hand I didn't believe in ghcjs either (and still don't). |
2021-08-14 14:16:14 +0200 | shredder | (~user@user/shredder) (Quit: quitting) |
2021-08-14 14:16:30 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) |
2021-08-14 14:17:35 +0200 | shredder | (~user@user/shredder) |
2021-08-14 14:20:50 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) (Ping timeout: 258 seconds) |
2021-08-14 14:23:46 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) |
2021-08-14 14:24:41 +0200 | <Hecate> | kuribas: I don't believe in GHCJS as being adequate for the browser, but a JVM backend with excellent Java FFI would be a game changer in enterprise environments |
2021-08-14 14:25:51 +0200 | <kuribas> | Hecate: it could be, but it's a huge effort. |
2021-08-14 14:25:59 +0200 | <kuribas> | Which I doubt many people are willing to do. |
2021-08-14 14:27:07 +0200 | <Hecate> | kuribas: I'm not betting on willingness |
2021-08-14 14:27:15 +0200 | <Hecate> | I'm betting on corporate money |
2021-08-14 14:27:45 +0200 | <kuribas> | corporations aren't interested in haskell |
2021-08-14 14:28:07 +0200 | <kuribas> | And if they are, they aren't willing to pay big bucks for an unsupported platform. |
2021-08-14 14:28:24 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:2c98:e880:4d8:8f3d) (Ping timeout: 256 seconds) |
2021-08-14 14:30:29 +0200 | <Hecate> | kuribas: I don't know what is the basis of your first sentence but I have first-hand experience of the contrary, so it's a bit hard to believe you on your word :P |
2021-08-14 14:30:32 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-14 14:30:57 +0200 | <Hecate> | regarding supporting an unsupported platform, I don't understand why it would be "unsupported" |
2021-08-14 14:31:08 +0200 | <kuribas> | Hecate: a few, but not that many AFAIK... |
2021-08-14 14:31:18 +0200 | <kuribas> | Hecate: but if I am wrong, even better :) |
2021-08-14 14:31:43 +0200 | <Hecate> | there are more than we know because they're not "in the community" as much as Tweag/Well-Typed |
2021-08-14 14:31:51 +0200 | <Hecate> | but there have been more in the past years |
2021-08-14 14:32:24 +0200 | <Hecate> | Nova Discovery in France, Scrive in Sweden/Czech Republic, the StanChart teams in Poland & the UK… |
2021-08-14 14:32:57 +0200 | <Hecate> | I bet Tweag would love to have a JVM backend |
2021-08-14 14:33:17 +0200 | <kuribas> | Hecate: you know of this right? https://hackage.haskell.org/package/inline-java |
2021-08-14 14:33:38 +0200 | <kuribas> | Hecate: it would be nice to have, but it would mean maintaining a separate ecosystem. |
2021-08-14 14:34:37 +0200 | <Hecate> | kuribas: yes I know of this, that's why I say that a more integrated solution would please Tweag |
2021-08-14 14:35:03 +0200 | <Hecate> | kuribas: no, it's just means that some packages are not portable across all platforms, which is already the case |
2021-08-14 14:35:10 +0200 | <Hecate> | it has always been the case |
2021-08-14 14:35:54 +0200 | <Hecate> | again, I don't know what is your reasoning behind "maintaining a separate ecosystem", which certainly sounds scary but you bring this without any deeper explanation so it's like an empty threat :P |
2021-08-14 14:37:22 +0200 | <kuribas> | Hecate: huh what? |
2021-08-14 14:37:31 +0200 | <kuribas> | Am I threatening someone? |
2021-08-14 14:37:49 +0200 | <kuribas> | I just have a hard time to believe people will pay for this. |
2021-08-14 14:37:55 +0200 | <kuribas> | Seeing the sorry state of some libraries... |
2021-08-14 14:38:00 +0200 | <kuribas> | In what we have now. |
2021-08-14 14:38:25 +0200 | curiousgay | (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 248 seconds) |
2021-08-14 14:39:31 +0200 | <Hecate> | kuribas: considering that the Haskell Foundation has raised half a million dollars from corporations using Haskell, I have no doubt that they are ready to pay |
2021-08-14 14:39:33 +0200 | drd | (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 268 seconds) |
2021-08-14 14:39:46 +0200 | <Hecate> | they don't want to organise though, which is what the HF is paid to do |
2021-08-14 14:39:47 +0200 | <kuribas> | Hecate: well, good! |
2021-08-14 14:40:12 +0200 | <kuribas> | Don't get me wrong, I am not against a java ghc... |
2021-08-14 14:40:22 +0200 | <Hecate> | pretty sure outputting .NET bytecode will earn us a big fat chèque from MS as well :P |
2021-08-14 14:43:14 +0200 | <kuribas> | Maybe webassembly would be nice |
2021-08-14 14:44:31 +0200 | <Hecate> | kuribas: https://github.com/tweag/asterius |
2021-08-14 14:45:22 +0200 | polyphem | (~polyphem@2a02:810d:640:776c:c8d6:203f:c7c7:b242) |
2021-08-14 14:47:06 +0200 | <kuribas> | ah, nice! |
2021-08-14 14:52:18 +0200 | sander | (~sander@user/sander) (Quit: So long! :)) |
2021-08-14 14:52:45 +0200 | <kuribas> | ah sweet, my generic record map works! https://gist.github.com/kuribas/9111beafd31a9368efa75d94fb68fb6f |
2021-08-14 14:53:12 +0200 | <kuribas> | And is easy to use, just define a newtype with MapField instance. |
2021-08-14 14:55:35 +0200 | <kuribas> | Now I only need to implement union, subset and superset... |
2021-08-14 14:58:23 +0200 | jehugawa | (~jehugawa@2a01:4f9:c010:4649::1) |
2021-08-14 14:58:46 +0200 | <fvr> | what would the union of two records return? You first need to create a new record with the union of all the fields in them? |
2021-08-14 14:59:04 +0200 | <kuribas> | yes |
2021-08-14 14:59:07 +0200 | sander | (~sander@user/sander) |
2021-08-14 15:00:26 +0200 | <fvr> | I wrote a library that creates sub record types and conversion functions with template haskell a few years ago |
2021-08-14 15:00:30 +0200 | <fvr> | https://github.com/vacationlabs/record-splicer |
2021-08-14 15:00:49 +0200 | alx741 | (~alx741@181.196.68.193) |
2021-08-14 15:02:43 +0200 | <kuribas> | neat |
2021-08-14 15:03:09 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 15:07:11 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 15:07:30 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-08-14 15:11:29 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 248 seconds) |
2021-08-14 15:12:27 +0200 | idf | (~idf@198.23.223.146) |
2021-08-14 15:15:53 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-08-14 15:17:21 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
2021-08-14 15:19:15 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-08-14 15:19:35 +0200 | <keutoi> | Is there a way to get the default Show instance of a data type without deriving it? I have a custom Show instance for a data type, but I also want to see the default as it helps during debugging. |
2021-08-14 15:19:40 +0200 | pragma- | (~chaos@user/pragmatic-chaos) |
2021-08-14 15:23:11 +0200 | <dminuoso> | You can also write out the instance yourself, of course |
2021-08-14 15:23:11 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 15:23:40 +0200 | <dminuoso> | keutoi: Honestly, if you have custom formatting, Show is likely a bad candidate anyway |
2021-08-14 15:23:54 +0200 | <dminuoso> | It's often misused as a generic "ToString" type of class, but that's not the purpose of it. |
2021-08-14 15:24:35 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 15:24:48 +0200 | <dminuoso> | For custom formatting, I'd either have a library specific Pretty typeclass, or a bunch of pretty functions, like prettyFoo and prettyBar. Then you can still use Show for debugging like its intended, and not be in conflict with your domain specific prettification |
2021-08-14 15:25:46 +0200 | vrilles | (~vrilles@user/aman) |
2021-08-14 15:28:01 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 248 seconds) |
2021-08-14 15:31:12 +0200 | Atum_ | (~IRC@user/atum/x-2392232) |
2021-08-14 15:32:24 +0200 | <keutoi> | I am only using the custom show instance for debugging, but there is some ambiguity as different inputs produce the same string. In default instance they will be different. So I wanted to see if there is some function, say /show_canonical/ which prints the default version. |
2021-08-14 15:33:57 +0200 | <dminuoso> | keutoi: Show is supposed to produce a Haskell expression that evaluates/reads back into the same value. |
2021-08-14 15:34:40 +0200 | markpythonicbitc | (~markpytho@50.228.44.6) |
2021-08-14 15:34:54 +0200 | <dminuoso> | Use something other than Show. Some custom class if you must (generally this is a bad idea, since you rarely have only a single canonical way of stringifying some data type), or just functions |
2021-08-14 15:38:28 +0200 | lbseale_ | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-08-14 15:40:31 +0200 | <keutoi> | I guess just using functions for custom conversion and deriving the default instance is a saner way of working with this. |
2021-08-14 15:40:36 +0200 | <keutoi> | dminuoso: Thank You |
2021-08-14 15:42:32 +0200 | <kuribas> | Is there a map which allows fetching by type? |
2021-08-14 15:42:58 +0200 | <dminuoso> | You mean like a GADT? |
2021-08-14 15:43:07 +0200 | <kuribas> | No, just the type of the contents |
2021-08-14 15:43:55 +0200 | <kuribas> | "store :: a -> DynamicMap -> DynamicMap" "retrieve :: DynamicMap -> Maybe a" |
2021-08-14 15:44:23 +0200 | <Hecate> | keutoi: from your usecase it would seem that you need a Debug typeclass :) |
2021-08-14 15:45:08 +0200 | <dminuoso> | keutoi: What you could do, is use CPP or a runtime flag to swap out the definition of such a pretty function with the use of a deriving generated Show. |
2021-08-14 15:45:42 +0200 | <dminuoso> | Presumably you have some fields that are hidden or considered internal? |
2021-08-14 15:46:21 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-08-14 15:47:50 +0200 | <Hecate> | guess I my next crusade is to put a Debug typeclass in base |
2021-08-14 15:48:26 +0200 | <dminuoso> | What's wrong with Show? |
2021-08-14 15:48:40 +0200 | <dminuoso> | Typeclasses are an already bad fit for this domain |
2021-08-14 15:48:54 +0200 | <dminuoso> | It works for Show because it has very clear semantics with little room for ambiguities. |
2021-08-14 15:48:55 +0200 | <Hecate> | dminuoso: "Show" itself is not problematic, this is not the proper reasoning |
2021-08-14 15:49:28 +0200 | <dminuoso> | But for Debug its a bad idea. You generally dont have a single canonical way of presenting a debug output for a value. |
2021-08-14 15:49:35 +0200 | <dminuoso> | You tend to have multiple ones |
2021-08-14 15:49:41 +0200 | <dminuoso> | It's why Pretty is a bad idea most of time too |
2021-08-14 15:50:03 +0200 | <Hecate> | dminuoso: considering the amount of "Show" that is used for Deugging, I'd say this fits in many usecases |
2021-08-14 15:50:31 +0200 | <dminuoso> | Hecate: Sure, because often you just want to know how this value was constructed |
2021-08-14 15:51:01 +0200 | <keutoi> | dminuoso: I have not used CPP in haskell before, but this might be just what I need for now. Let me try... |
2021-08-14 15:51:03 +0200 | <Hecate> | and also what it looks like |
2021-08-14 15:51:25 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Quit: ERC (IRC client for Emacs 28.0.50)) |
2021-08-14 15:52:16 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-08-14 15:52:40 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) |
2021-08-14 15:53:54 +0200 | <Hecate> | dminuoso: my point is rather than every datatype has different needs when it comes to pretty-printing/debugging, and a Show instance without a less principled couterpart is never the answer |
2021-08-14 15:53:54 +0200 | nf | (~n@monade.li) (Quit: Fairfarren.) |
2021-08-14 15:54:06 +0200 | nf | (~n@monade.li) |
2021-08-14 15:54:11 +0200 | yoctocell | (~user@h87-96-130-155.cust.a3fiber.se) (Remote host closed the connection) |
2021-08-14 15:54:18 +0200 | <Hecate> | because you inevitably end up trying to fit your domain into the instance, which produces unlawful instances |
2021-08-14 15:54:33 +0200 | berberman | (~berberman@user/berberman) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-08-14 15:54:48 +0200 | <kuribas> | dminuoso: nevermind, I'll use a datatype and this :) https://hackage.haskell.org/package/generic-lens-2.2.0.0/docs/Data-Generics-Product-Any.html |
2021-08-14 15:55:29 +0200 | berberman | (~berberman@user/berberman) |
2021-08-14 15:59:32 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2021-08-14 16:01:24 +0200 | <keutoi> | dminuoso: CPP works perfectly to switch between default and custom instances. Thank You. |
2021-08-14 16:13:06 +0200 | AndrewYu | luk4yx |
2021-08-14 16:13:09 +0200 | luk4yx | AndrewYu |
2021-08-14 16:13:49 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-14 16:14:57 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-14 16:16:28 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-14 16:17:35 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-14 16:17:55 +0200 | jtomas | (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) |
2021-08-14 16:22:34 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2021-08-14 16:23:00 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-08-14 16:27:58 +0200 | elf_fortrez | (~elf_fortr@adsl-72-50-6-221.prtc.net) (Ping timeout: 246 seconds) |
2021-08-14 16:34:34 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-14 16:34:55 +0200 | zcombinator | (~zcombinat@37.162.157.57) |
2021-08-14 16:35:00 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 16:36:01 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-14 16:37:58 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) |
2021-08-14 16:38:14 +0200 | vpan | (~vilius@212.117.1.172) (Quit: Leaving.) |
2021-08-14 16:39:17 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 245 seconds) |
2021-08-14 16:43:06 +0200 | cross | (~cross@spitfire.i.gajendra.net) (Ping timeout: 240 seconds) |
2021-08-14 16:44:49 +0200 | cross | (~cross@spitfire.i.gajendra.net) |
2021-08-14 16:47:26 +0200 | <maerwald> | show isn't for debugging :p |
2021-08-14 16:48:03 +0200 | jeslie0 | (~user@108.162.150.9) |
2021-08-14 16:48:07 +0200 | <kuribas> | maerwald: pPrint is :) |
2021-08-14 16:48:19 +0200 | <kuribas> | or at least, it's what I use :-P |
2021-08-14 16:48:24 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-08-14 16:48:24 +0200 | <maerwald> | https://hackage.haskell.org/package/network-uri-2.7.0.0/docs/src/Network.URI.html#line-274 |
2021-08-14 16:48:38 +0200 | <maerwald> | show is for... hmm, showing stuff |
2021-08-14 16:48:51 +0200 | <maerwald> | log-safe |
2021-08-14 16:49:11 +0200 | <kuribas> | I'd say debugging is the primary usecase for Show... |
2021-08-14 16:49:59 +0200 | <maerwald> | then you might not like the show utf8 proposal |
2021-08-14 16:50:09 +0200 | <maerwald> | for the string instance |
2021-08-14 16:51:00 +0200 | jeslie0 | (~user@108.162.150.9) (Remote host closed the connection) |
2021-08-14 16:51:12 +0200 | gethuen | (uid502979@id-502979.stonehaven.irccloud.com) |
2021-08-14 16:52:43 +0200 | <maerwald> | https://gitlab.haskell.org/ghc/ghc/-/issues/20027 |
2021-08-14 16:53:41 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-08-14 16:54:53 +0200 | kuribas | (~user@ptr-25vy0i7jvn9rvz44z49.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
2021-08-14 16:55:16 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) |
2021-08-14 16:56:35 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-14 17:01:11 +0200 | <joeyh> | if a cabal file has a extra-deps github: line, and the git repository contains several packages, with a cabal.project in it that lists them all, will stack use those packages to satisfy other extra-deps? |
2021-08-14 17:01:16 +0200 | <keutoi> | How constrained should I be w.r.t read . show == id ? Is it idiomatic that this hold? |
2021-08-14 17:01:37 +0200 | <tomsmeding> | aarchi: doesn't the whitespace code build on a newer ghc? did you try, perhaps one in the 7 series that ghcup still has? |
2021-08-14 17:02:18 +0200 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) |
2021-08-14 17:03:05 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 17:05:11 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Read error: Connection reset by peer) |
2021-08-14 17:06:33 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Quit: FinnElija) |
2021-08-14 17:07:17 +0200 | <hololeap> | keutoi: yes, it's considered bad practice to use Show for anything other than "poor-man's serialization" |
2021-08-14 17:07:35 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Ping timeout: 258 seconds) |
2021-08-14 17:09:08 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 17:09:56 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:10:26 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-08-14 17:10:45 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:11:08 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:12:16 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:12:40 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:13:42 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
2021-08-14 17:13:45 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:14:08 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:14:14 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 17:14:39 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 17:15:15 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:15:35 +0200 | fendor | (~fendor@178.165.196.92.wireless.dyn.drei.com) |
2021-08-14 17:15:40 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:16:45 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:17:10 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) |
2021-08-14 17:18:15 +0200 | mattil | (~mattilinn@84-253-224-16.bb.dnainternet.fi) (Remote host closed the connection) |
2021-08-14 17:18:48 +0200 | Erupmi | (~user@2001:8003:2309:8400:1683:bc27:3e09:7cdc) |
2021-08-14 17:19:24 +0200 | Erupmi | (~user@2001:8003:2309:8400:1683:bc27:3e09:7cdc) (Client Quit) |
2021-08-14 17:19:48 +0200 | machinedgod | (~machinedg@24.105.81.50) (Remote host closed the connection) |
2021-08-14 17:19:53 +0200 | Erupmi | (~user@2001:8003:2309:8400:1683:bc27:3e09:7cdc) |
2021-08-14 17:21:48 +0200 | Erupmi | (~user@2001:8003:2309:8400:1683:bc27:3e09:7cdc) (Remote host closed the connection) |
2021-08-14 17:23:17 +0200 | Guest15 | (~Guest15@2001:8003:2309:8400:1683:bc27:3e09:7cdc) |
2021-08-14 17:24:09 +0200 | Guest15 | (~Guest15@2001:8003:2309:8400:1683:bc27:3e09:7cdc) (Client Quit) |
2021-08-14 17:24:39 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 17:28:28 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 272 seconds) |
2021-08-14 17:39:37 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-08-14 17:40:32 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-08-14 17:40:45 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 17:42:52 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-08-14 17:45:09 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
2021-08-14 17:45:20 +0200 | zcombinator | (~zcombinat@37.162.157.57) (Quit: WeeChat 3.2) |
2021-08-14 17:47:30 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-08-14 17:47:55 +0200 | MQ-17J | (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
2021-08-14 17:48:36 +0200 | V | (~v@anomalous.eu) (Ping timeout: 258 seconds) |
2021-08-14 17:48:51 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
2021-08-14 17:58:30 +0200 | <sm> | joeyh, that's a bit of a puzzler. extra-deps in a cabal file ? stack and cabal.project ? do all those things go together ? |
2021-08-14 17:59:04 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Remote host closed the connection) |
2021-08-14 18:01:05 +0200 | keutoi | (~keutoi@157.48.222.12) (Ping timeout: 248 seconds) |
2021-08-14 18:02:57 +0200 | keutoi | (~keutoi@223.182.21.173) |
2021-08-14 18:05:22 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 18:08:01 +0200 | aegon | (~mike@174.127.249.180) |
2021-08-14 18:08:30 +0200 | <aegon> | I'm instancing Read manually for the first time and am unsure how to deal with the precidence correctly https://paste.tomsmeding.com/KUDLLu1Q |
2021-08-14 18:08:59 +0200 | <aegon> | i got those types backwards Point should be the newtype and Position is what point is :X |
2021-08-14 18:09:53 +0200 | dcompoze | (~dcompoze@5E98D6D9.static.tld.pl) |
2021-08-14 18:11:21 +0200 | t0zy | (~t0zy@49.207.220.61) |
2021-08-14 18:11:42 +0200 | <aegon> | here's a correct paste https://paste.tomsmeding.com/HnQi4a6S |
2021-08-14 18:15:46 +0200 | t0zy | (~t0zy@49.207.220.61) (Client Quit) |
2021-08-14 18:15:49 +0200 | jackdk | (sid373013@cssa/jackdk) (Ping timeout: 258 seconds) |
2021-08-14 18:16:58 +0200 | <monochrom> | w00t GHC 8.10.6 |
2021-08-14 18:17:00 +0200 | jackdk | (sid373013@cssa/jackdk) |
2021-08-14 18:19:17 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-08-14 18:20:26 +0200 | <sm> | \o/ |
2021-08-14 18:20:48 +0200 | darxun | (sid504814@tinside.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 18:20:48 +0200 | _0x47 | (sid508683@tinside.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 18:21:59 +0200 | _0x47 | (sid508683@id-508683.tinside.irccloud.com) |
2021-08-14 18:24:24 +0200 | darxun | (sid504814@id-504814.tinside.irccloud.com) |
2021-08-14 18:28:51 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 18:29:26 +0200 | dcompoze_ | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) |
2021-08-14 18:30:20 +0200 | hongminhee | (sid295@tinside.irccloud.com) (Read error: Connection reset by peer) |
2021-08-14 18:30:29 +0200 | hongminhee | (sid295@id-295.tinside.irccloud.com) |
2021-08-14 18:32:12 +0200 | dcompoze | (~dcompoze@5E98D6D9.static.tld.pl) (Ping timeout: 245 seconds) |
2021-08-14 18:39:41 +0200 | HarveyPwca | (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06) (Quit: Leaving) |
2021-08-14 18:41:31 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-08-14 18:43:22 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
2021-08-14 18:44:40 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-08-14 18:44:41 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) (Read error: Connection reset by peer) |
2021-08-14 18:44:54 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) |
2021-08-14 18:45:13 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 18:46:47 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-08-14 18:48:40 +0200 | <joeyh> | sm: it seems not, based on some experiments. ended up having to clone it and add file paths instead |
2021-08-14 18:48:58 +0200 | <joeyh> | oh, the stack file had the extra-deps not the cabal file of course |
2021-08-14 18:49:37 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 248 seconds) |
2021-08-14 18:49:48 +0200 | mousey | (~skymouse@gateway/tor-sasl/mousey) |
2021-08-14 18:50:01 +0200 | <maerwald> | link or it didn't happen |
2021-08-14 18:52:32 +0200 | <tomsmeding> | maerwald: https://mail.haskell.org/pipermail/ghc-devs/2021-August/020101.html |
2021-08-14 18:52:43 +0200 | pragma- | (~chaos@user/pragmatic-chaos) (Bye!) |
2021-08-14 18:52:44 +0200 | <maerwald> | tomsmeding: yeah? |
2021-08-14 18:52:52 +0200 | <tomsmeding> | or did you mean the extra-deps thing :p |
2021-08-14 18:53:01 +0200 | <sm> | joeyh: right, I believe `extra-deps` is in stack.yaml, github repositories can't be in a cabal file's dependencies:, and stack doesn't see cabal.project |
2021-08-14 18:53:15 +0200 | <maerwald> | yeah, basically tooling mess |
2021-08-14 18:54:57 +0200 | <sm> | s/dependencies:/build-depends:/ |
2021-08-14 18:55:11 +0200 | <maerwald> | joeyh: so you are using cabal? |
2021-08-14 18:55:21 +0200 | <dminuoso> | 18:50:59 maerwald | [14:47:26] show isn't for debugging :p |
2021-08-14 18:56:31 +0200 | <dminuoso> | Arguably it is. Deriving generated instances give a very strong hint at what the point is - providing valid Haskell expressions that both evaluate and `read` back to the value, clearly is aimed at providing an internal representation of data objects. |
2021-08-14 18:56:54 +0200 | <maerwald> | dminuoso: did you check my link where the show instance hides the password? :p |
2021-08-14 18:57:07 +0200 | <maerwald> | tbh... I don't even know what to think of it |
2021-08-14 18:57:08 +0200 | <dminuoso> | Yes, some packages break that habit. |
2021-08-14 18:57:25 +0200 | <maerwald> | but it's true that Show is used in logging |
2021-08-14 18:57:31 +0200 | <maerwald> | either explicit or implicitly |
2021-08-14 18:57:38 +0200 | <maerwald> | you don't want prett-printing in logging |
2021-08-14 18:57:40 +0200 | <dminuoso> | Not in the general case |
2021-08-14 18:57:49 +0200 | <dminuoso> | I wholeheartedly disagree |
2021-08-14 18:57:54 +0200 | <dminuoso> | You want pretty printing in logging. |
2021-08-14 18:58:06 +0200 | <maerwald> | well, I don't have a strong opinion |
2021-08-14 18:58:06 +0200 | <dminuoso> | You want to control the output since it's for enduser consumption |
2021-08-14 18:58:15 +0200 | <aegon> | depends on how much you pay for passive logging |
2021-08-14 18:58:18 +0200 | <maerwald> | logging sux, I'm glad when I'm done with it |
2021-08-14 18:58:39 +0200 | <aegon> | imo, if its an error report pretty print away, otherwise keep it to a minimum needed to trace processes |
2021-08-14 18:58:50 +0200 | <maerwald> | but now that you mention it... I did switch from Show to some pretty print for logging bc it was awful |
2021-08-14 18:59:17 +0200 | <dminuoso> | My rule of thumb is: If the output is meant for developers, go crazy with `show` all you want - it's great because it gives as much internal structure of values as possible. |
2021-08-14 18:59:31 +0200 | <aegon> | congrats on 8.10.6 |
2021-08-14 18:59:35 +0200 | <dminuoso> | If its for non-developers, try and pretty print (whatever that means, really) |
2021-08-14 18:59:48 +0200 | vrilles | (~vrilles@user/aman) (Quit: vrilles) |
2021-08-14 18:59:58 +0200 | <dminuoso> | It doesnt mean you have to unload a pretty printer library, but at least provide `pretty` type of functions `pprT :: T -> String` |
2021-08-14 18:59:59 +0200 | <sm> | I'm a developer and I pretty print everything, because reading pages of run together Show output is not what my brain is for |
2021-08-14 19:00:31 +0200 | <joeyh> | maerwald: I was building with stack. unsure what stack uses cabal for and what it doesn't |
2021-08-14 19:01:00 +0200 | <sm> | joeyh: in that case, reference the github repos in stack.yaml, not cabal.project |
2021-08-14 19:01:12 +0200 | <maerwald> | joeyh: stack uses Setup.hs |
2021-08-14 19:03:25 +0200 | <aegon> | i started using cabal and have switched to stack, now it seems more projects are using cabal. Is stack semi-abandoned in favor of cabal now that fp-complete is doing more rust oriented develoment or what are the general feels about the two |
2021-08-14 19:03:44 +0200 | <dminuoso> | aegon: I'd say the community is fairly split |
2021-08-14 19:03:46 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-08-14 19:04:17 +0200 | <aegon> | I know they are not 1:1. I like the isolation between projects of stack, i don't particularly like the resolver notion |
2021-08-14 19:04:24 +0200 | <sm> | it's a polarised topic, #haskell tends to lean anti stack, industrial programmers tend to be pro stack |
2021-08-14 19:04:50 +0200 | <aegon> | its easier to point someone new to haskell to stack than cabal. I haven't looked at what cabal has been up too since 2008-ish though |
2021-08-14 19:04:53 +0200 | <dminuoso> | From my perspective the main motivations behind stack have become moot since cabal has introduced nix-style builds years ago. |
2021-08-14 19:04:56 +0200 | <maerwald> | sm: any source for that? |
2021-08-14 19:05:15 +0200 | <aegon> | kk, i'll ask in off topic then after some coffee :P |
2021-08-14 19:05:21 +0200 | <sm> | my personal observation over the years |
2021-08-14 19:05:23 +0200 | <dminuoso> | But if you want to use stack, there's nothing inherently wrong with it. Just bear in mind that it introduces additional tooling that you need to cater for. |
2021-08-14 19:05:54 +0200 | <aegon> | i'm new to nix, i'd be into switching, is there a good blog post about cabal + nix for isolation? |
2021-08-14 19:05:57 +0200 | <maerwald> | sm: cardano-node uses cabal |
2021-08-14 19:06:06 +0200 | <dminuoso> | aegon: cabal + nix is a different topic again! |
2021-08-14 19:06:12 +0200 | <sm> | maerwald: also, various haskell surveys over the years |
2021-08-14 19:06:30 +0200 | <aegon> | dminuoso: :X |
2021-08-14 19:06:37 +0200 | <dminuoso> | aegon: When I said `nix-style` builds I meant that cabal has started doing builds the way nix does a few years ago. |
2021-08-14 19:06:42 +0200 | <maerwald> | sm: does the haskell survey say if stack users are industrial programmers? |
2021-08-14 19:06:45 +0200 | <dminuoso> | This essentially solved dependency hell with cabal |
2021-08-14 19:06:59 +0200 | <dminuoso> | Also, what is an "industrial programmer" |
2021-08-14 19:07:19 +0200 | <dminuoso> | aegon: So you have the following options: |
2021-08-14 19:08:03 +0200 | <sm> | agh no cross examination at this time of morning please. :) If you have been paying attention to the haskell world for a few years this has not been in question. Maybe it it shifting ? You will need a new haskell survey to be sure |
2021-08-14 19:08:08 +0200 | mousey | (~skymouse@gateway/tor-sasl/mousey) (Quit: Reconnecting) |
2021-08-14 19:08:17 +0200 | mousey | (~skymouse@gateway/tor-sasl/mousey) |
2021-08-14 19:08:23 +0200 | <maerwald> | sm: I have been paying attention and I didn't get your impression |
2021-08-14 19:08:25 +0200 | <dminuoso> | 1. cabal nix-style (this is just called `cabal` nowadays), 2. stack, 3. cabal + nix (provide cabal/ghc/native dependencies via nix, but otherwise do a plain cabal build like in 1), 3. nix using callCabal2nix, 4. nix using haskell.nix. |
2021-08-14 19:08:34 +0200 | <maerwald> | my impression is that it's basically impossible to say |
2021-08-14 19:08:49 +0200 | <dminuoso> | Oh sorry, the count was wrong. |
2021-08-14 19:08:55 +0200 | <dminuoso> | 1. cabal nix-style (this is just called `cabal` nowadays), 2. stack, 3. cabal + nix (provide cabal/ghc/native dependencies via nix, but otherwise do a plain cabal build like in 1), 4. nix using callCabal2nix, 5. nix using haskell.nix. |
2021-08-14 19:08:57 +0200 | <monochrom> | It is not very difficult to say "I have no data". |
2021-08-14 19:08:57 +0200 | <dminuoso> | There. |
2021-08-14 19:09:02 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Remote host closed the connection) |
2021-08-14 19:09:17 +0200 | keutoi | (~keutoi@223.182.21.173) (Ping timeout: 245 seconds) |
2021-08-14 19:10:13 +0200 | keutoi | (~keutoi@223.182.21.173) |
2021-08-14 19:10:34 +0200 | <maerwald> | also: stack vs cabal isn't a "company" decision... I can use any stack build system with cabal |
2021-08-14 19:10:37 +0200 | <maerwald> | I decide myself :) |
2021-08-14 19:10:51 +0200 | <aegon> | for a new comer that is far too many optoins, i'm really curious about nix since its gaining traction from my "gut" feeling talking with others in haskell land but it feels wierd to me. |
2021-08-14 19:10:53 +0200 | <maerwald> | in public projects, I want stack.yaml and cabal.project likewise |
2021-08-14 19:11:02 +0200 | <sclv> | aegon: the standard cabal (nix-style) builds now give you the isolation between projects without sacrificing the resolver notion, so it sounds like that might be the simplest approach to start with |
2021-08-14 19:11:23 +0200 | <aegon> | I don't really understand it but from what i grokk it feels like giving up on compatible / generic code and making os blot containers for every lib version ever and relying on isolation to deal with vulnerabilities? |
2021-08-14 19:11:30 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 268 seconds) |
2021-08-14 19:11:37 +0200 | <dminuoso> | aegon: 3 is just a slight improvement of 1 in my opinion, consider that you need to provide the binaries of cabal, ghc and native dependencies some way! |
2021-08-14 19:11:43 +0200 | <dminuoso> | perhaps it ought not be listed here. |
2021-08-14 19:11:50 +0200 | <dminuoso> | since it's, at the end, just plain cabal |
2021-08-14 19:11:56 +0200 | wonko | (~wjc@62.115.229.50) |
2021-08-14 19:12:01 +0200 | <sclv> | imho using "actual nix" for everything is either because you like using nix to manage everything else in your dev ecosystem, or because you are at a shop that's using nix for its workflows pervasively |
2021-08-14 19:12:14 +0200 | <sclv> | for individual projects/libs my experience is nix buys very little |
2021-08-14 19:12:22 +0200 | <maerwald> | aegon: oh, nix isn't a good fit if you care about vulnerabilities and security fixes |
2021-08-14 19:12:26 +0200 | <sclv> | but for managing releases/deployments of large multi-component systems it buys a Lot |
2021-08-14 19:13:16 +0200 | <dminuoso> | Indeed. We are currently building a multi node fleet of about 25 different servers doing different things. A fair chunk of it runs custom haskell code, and there's a lot of coupling and dependencies |
2021-08-14 19:13:33 +0200 | <dminuoso> | For this type of deployment going all nixos/nix helps a lot staying sane |
2021-08-14 19:13:36 +0200 | <aegon> | sclv: dminuoso: i'll try switching over a project from stack to the new cabal, do you have a good pointer to docs to freshen up on? |
2021-08-14 19:13:50 +0200 | <dminuoso> | aegon: cabal has very good documentation |
2021-08-14 19:13:56 +0200 | <maerwald> | @hackage stack2cabal -- aegon |
2021-08-14 19:13:56 +0200 | <lambdabot> | https://hackage.haskell.org/package/stack2cabal -- aegon |
2021-08-14 19:14:06 +0200 | <sclv> | https://cabal.readthedocs.io/en/3.4/nix-local-build-overview.html |
2021-08-14 19:14:09 +0200 | <monochrom> | Clearly, the decision about nix is very easy. If you already know nix, it's a no-brainer to add "now use it for haskell stuff". If you don't already know nix, clearly it is Bismarck's Nightmare to fight both nix and haskell stuff at the same time. |
2021-08-14 19:14:31 +0200 | <dminuoso> | monochrom: Indeed, it took me nearly 2 to get a full grasp and handle on nixos and nix. |
2021-08-14 19:14:35 +0200 | <dminuoso> | 2 years. |
2021-08-14 19:14:51 +0200 | <dminuoso> | But we didnt have someone in our company to help and train |
2021-08-14 19:15:00 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-14 19:15:11 +0200 | <dminuoso> | Figuring everything out by yourself is incredibly nightmarish |
2021-08-14 19:15:12 +0200 | <sclv> | yes, we rely heavily on nix at work and i can't imagine what we'd do without it, some ungodly combination of puppet and docker and three other things, i imagine. also i barely understand it at all and rely on our nix-experts to do anything nontrivial :-) |
2021-08-14 19:15:22 +0200 | <sm> | is there any change Nix-style could be removed and replaced with another term in cabal docs ? It's confusing |
2021-08-14 19:15:24 +0200 | <sm> | chance |
2021-08-14 19:15:33 +0200 | <dminuoso> | sm: absolutely, make the proposal? |
2021-08-14 19:15:51 +0200 | Guest74 | (~Guest74@91-155-110-45.elisa-laajakaista.fi) |
2021-08-14 19:15:57 +0200 | <sclv> | iirc nobody really likes the name, but there's been no clear far better replacements |
2021-08-14 19:16:07 +0200 | <maerwald> | sclv: I had the same. The nix guru left and we rewrote in ansible and never looked back, because after all, the problem was advertised more complicated than it actually was :p |
2021-08-14 19:16:31 +0200 | <dminuoso> | For us, the only alternative would be kubernetes |
2021-08-14 19:16:35 +0200 | <sclv> | the word "nix" luckily doesn't appear anywhere in the commands and u/x for haskell afaik |
2021-08-14 19:16:48 +0200 | <sm> | I found https://github.com/haskell/cabal/issues/6105 |
2021-08-14 19:16:51 +0200 | <dminuoso> | But kubernetes is just as complicated in terms of knowledge needed to absorb |
2021-08-14 19:17:08 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) |
2021-08-14 19:17:08 +0200 | Guest74 | (~Guest74@91-155-110-45.elisa-laajakaista.fi) (Client Quit) |
2021-08-14 19:17:14 +0200 | <sm> | but v2-build is even worse |
2021-08-14 19:17:23 +0200 | <maerwald> | whether you have a nix guru or a kubernetes guru... not much difference |
2021-08-14 19:17:24 +0200 | <sclv> | my feeling is as we rewrite the docs (ongoing) then its a good opportunity to clean that all up, especially since "v2-build" or "nix style build" is just "build" and its really just a term to distinguish from legacy build |
2021-08-14 19:17:29 +0200 | <maerwald> | except the nix guru might be more expensive |
2021-08-14 19:17:38 +0200 | <sclv> | so on a long enough timeframe, the right prefix is... none |
2021-08-14 19:17:41 +0200 | <dsal> | So you're saying nix is more lucrative... |
2021-08-14 19:17:48 +0200 | <maerwald> | it's more niche |
2021-08-14 19:18:04 +0200 | <dsal> | I really like nixos as a user, but I haven't really figured out how to do anything useful with nix as a thing. |
2021-08-14 19:18:10 +0200 | <maerwald> | and nix is heavily oversold |
2021-08-14 19:18:15 +0200 | <maerwald> | so it can pay well |
2021-08-14 19:18:18 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 258 seconds) |
2021-08-14 19:18:37 +0200 | <dminuoso> | Btw, I was very amused when you said |
2021-08-14 19:18:39 +0200 | <dminuoso> | 18:58:05 maerwald | well, I don't have a strong opinion |
2021-08-14 19:18:44 +0200 | <dminuoso> | You're one with very strong opinions. :-) |
2021-08-14 19:18:47 +0200 | <maerwald> | lol |
2021-08-14 19:19:02 +0200 | <sclv> | who hacked maerwalds account!? |
2021-08-14 19:19:17 +0200 | <maerwald> | maybe I just like to get roasted? ;-) |
2021-08-14 19:20:37 +0200 | gethuen | (uid502979@id-502979.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-14 19:21:05 +0200 | vicfred | (~vicfred@user/vicfred) (Ping timeout: 248 seconds) |
2021-08-14 19:21:32 +0200 | burnsidesLlama | (~burnsides@dhcp168-012.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
2021-08-14 19:21:40 +0200 | <monochrom> | Give a man a fire, and he will be warm for a day. Give a strong opinion, and you will be warm for the rest of your life. |
2021-08-14 19:23:19 +0200 | <aegon> | the nix-style builds looks like all the same stuff, i need to learn how to run local hoogle in cabal-nix land per project and this seems like an easy switch / way out of resolver land |
2021-08-14 19:24:23 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 19:24:50 +0200 | <dminuoso> | aegon: "nix-style builds" is just a fancy way of saying that cabal since a few years will put build artifacts into a system global store, thereby allowing multiple flavors/versions of a dependency to co-exist. |
2021-08-14 19:25:07 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-08-14 19:25:18 +0200 | <dminuoso> | This is termed "nix-style" since this was inspired by how nix builds things. |
2021-08-14 19:25:35 +0200 | <sclv> | aegon: `cabal v2-haddock --haddock-hoogle` should generate the hoogledb? note that v2-haddock in general is not in great shape to be honest. |
2021-08-14 19:26:04 +0200 | <sclv> | it may have gotten better, but where it ends up stashing stuff is sort of confusing |
2021-08-14 19:26:37 +0200 | <sclv> | the whole notion of haddocks has a more "global" feel than a lot of other commands, so its a bit more odd in the new paradigm |
2021-08-14 19:27:11 +0200 | <maerwald[m]> | Imo nix only makes sense if you don't control the environment |
2021-08-14 19:27:11 +0200 | <dminuoso> | For my uses, `hoogle` on the website against the stackage resolver seems to work fine 95% of the time. :P |
2021-08-14 19:27:18 +0200 | <sclv> | instead of "nix style" it might be more generic to call these "store-style builds" as opposed to "packagedb-style builds" |
2021-08-14 19:27:25 +0200 | <sclv> | for some neutral terminology going forward |
2021-08-14 19:27:41 +0200 | <maerwald[m]> | That's why cardano's daedalus uses nix to set up the wallet and node etc |
2021-08-14 19:27:47 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-08-14 19:27:57 +0200 | <maerwald[m]> | Because you don't know the users env |
2021-08-14 19:28:10 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 272 seconds) |
2021-08-14 19:28:26 +0200 | <maerwald[m]> | If you deploy to your own environments, what's the point |
2021-08-14 19:28:27 +0200 | <monochrom> | Eventually I wrote https://github.com/treblacy/hasdoc to locate library docs. My script focuses on the index.html's, but perhaps you can adapt it for hoogledb. |
2021-08-14 19:30:31 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-08-14 19:30:43 +0200 | <aegon> | yeah i think i need to get into a situtuation where nix solves a problem for me before i grokk it. It feels like a security vulnerability to me at the moment, like flat-pack. seems easy to have some super old libs active on your system and not realize it |
2021-08-14 19:31:06 +0200 | <maerwald[m]> | Nix wasn't designed around security |
2021-08-14 19:31:24 +0200 | mei | (~mei@user/mei) |
2021-08-14 19:31:29 +0200 | <maerwald[m]> | Anything that freezes package versions or does LTS style things isn't |
2021-08-14 19:32:18 +0200 | keutoi | (~keutoi@223.182.21.173) (Quit: leaving) |
2021-08-14 19:32:51 +0200 | betelgeuse | (~john2gb@94-225-47-8.access.telenet.be) |
2021-08-14 19:32:52 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
2021-08-14 19:34:19 +0200 | <sm> | to be secure we should pull in new things every time, yup :) |
2021-08-14 19:35:09 +0200 | <sm> | I feel the optimum must be somewhere in the middle |
2021-08-14 19:35:31 +0200 | <maerwald[m]> | Yes, reproducible and security are contradicting goals |
2021-08-14 19:36:56 +0200 | <aegon> | all my bias is from a bad experience fighting lts-like systems in debian with a needed patch to openssl so I'm coming at this from a heavy bias |
2021-08-14 19:37:49 +0200 | <maerwald[m]> | There's only one universal definition of security and that's about how economic it is for an attacker to find vulnerabilities. And there's only one sure way to increase this cost: always update. Because then attackers have to study new versions |
2021-08-14 19:37:49 +0200 | <aegon> | don't claim to have good reasoning against lts or reproducablility. in the past its been way easier to test version upgrades vs having to upgrade something baked into a curated lts set of packages |
2021-08-14 19:38:19 +0200 | <maerwald[m]> | Security backports are not as useful as ppl think |
2021-08-14 19:38:44 +0200 | <maerwald[m]> | As gregkh put it: it's not even clear what bugfix is a security bugfix and what isn't |
2021-08-14 19:38:58 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving) |
2021-08-14 19:39:16 +0200 | <maerwald[m]> | No one has been able to come up with a reasonable distinction that you can apply |
2021-08-14 19:39:22 +0200 | <maerwald[m]> | So you must assume all bugfixes can affect security |
2021-08-14 19:40:19 +0200 | <maerwald[m]> | And as such the linux kernel doesn't make this distinction on purpose |
2021-08-14 19:41:08 +0200 | hexology | (~hexology@user/hexology) (Quit: hex on you ...) |
2021-08-14 19:44:51 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 19:45:35 +0200 | wonko | (~wjc@62.115.229.50) |
2021-08-14 19:45:49 +0200 | pavonia | (~user@user/siracusa) |
2021-08-14 19:46:09 +0200 | thaumavorio | (~thaumavor@thaumavor.io) (Ping timeout: 248 seconds) |
2021-08-14 19:47:09 +0200 | <monochrom> | I am not impressed with the cottage industry of security either. Since the dawn of programming we already know about for example array index out of bound errors, and we already have a name for that, it's "array index out of bound error", it doesn't need a new name. |
2021-08-14 19:48:15 +0200 | <maerwald[m]> | You just follow ISO 27k and you're good xD |
2021-08-14 19:48:20 +0200 | thaumavorio | (~thaumavor@thaumavor.io) |
2021-08-14 19:48:51 +0200 | <maerwald[m]> | It starts with closing server rooms and the like |
2021-08-14 19:48:58 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-14 19:49:01 +0200 | <maerwald[m]> | Physical access |
2021-08-14 19:49:27 +0200 | <maerwald[m]> | And then basically stops there |
2021-08-14 19:49:29 +0200 | <maerwald[m]> | xD |
2021-08-14 19:49:41 +0200 | haowenl | (~Thunderbi@066-215-230-039.res.spectrum.com) |
2021-08-14 19:50:47 +0200 | <maerwald[m]> | They needed to introduce security in automotive industry, but the only engineering method (formal methods) would have set the industry back for years if it was enforced by law |
2021-08-14 19:50:50 +0200 | <maerwald[m]> | So now you just have snake oil |
2021-08-14 19:50:57 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 248 seconds) |
2021-08-14 19:51:05 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) |
2021-08-14 19:52:57 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2021-08-14 19:53:11 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-08-14 19:53:23 +0200 | <sm> | re cabal terminology, https://github.com/haskell/cabal/issues/6105#issuecomment-898934058 |
2021-08-14 19:53:33 +0200 | <sm> | other ideas ? |
2021-08-14 19:54:03 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
2021-08-14 19:55:32 +0200 | <maerwald[m]> | Trash nix style builds and re-introduce sandboxes. They are more reliable, easier to delete and clean up, debug, fix. |
2021-08-14 19:56:17 +0200 | <maerwald[m]> | Cargo does the same |
2021-08-14 19:56:58 +0200 | <sm> | no thank you, I don't like rebuilding the world for every new project :) |
2021-08-14 19:57:08 +0200 | <maerwald[m]> | There are other solutions to this problem |
2021-08-14 19:57:40 +0200 | <monochrom> | You know what, we can still call it sandboxing. You can't see a denotational difference. |
2021-08-14 19:57:43 +0200 | haowenl | (~Thunderbi@066-215-230-039.res.spectrum.com) (Quit: haowenl) |
2021-08-14 19:58:25 +0200 | <maerwald[m]> | Yeah, you can use a new store dir for every project |
2021-08-14 19:58:35 +0200 | <yushyin> | seems like haskell will never have good tooling, what next? re-re-introduce nix-style builds? |
2021-08-14 19:59:52 +0200 | <maerwald[m]> | sm: i constantly have to rebuild world anyway. Change one ghc flag, update GHC version etc etc |
2021-08-14 20:01:36 +0200 | <maerwald[m]> | Why do I need to rebuild everything if I update GHC from 8.10.5 to 8.10.6? |
2021-08-14 20:01:48 +0200 | <maerwald[m]> | No one seems to mind |
2021-08-14 20:03:20 +0200 | <monochrom> | I mind. But it is a tradeoff. The alternative is hugs or C. |
2021-08-14 20:05:16 +0200 | <monochrom> | Or rather, the alternatives are Hugs, C, C++, Rust, write my own Haskell compiler. |
2021-08-14 20:06:05 +0200 | <pavonia> | Hugs \o/ |
2021-08-14 20:06:09 +0200 | <monochrom> | Thanks you very much, I'll stick to GHC, at least it's my poor laptop, not me, who does the hard work. |
2021-08-14 20:06:17 +0200 | <maerwald[m]> | HF raised half a million, is that enough to fund you? |
2021-08-14 20:06:26 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
2021-08-14 20:06:33 +0200 | <monochrom> | No, I would do a very poor job. |
2021-08-14 20:06:34 +0200 | <c_wraith> | honestly, that's nothing compared to the cost of a reasonable compiler |
2021-08-14 20:06:45 +0200 | Shaeto | (~Shaeto@94.25.234.223) |
2021-08-14 20:07:00 +0200 | <monochrom> | I mean yes! Who doesn't want to scam for half a million dollars? >:) |
2021-08-14 20:07:08 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-08-14 20:08:07 +0200 | <monochrom> | BTW if anything is a wage slave in the programming world, it's the poor computers, not any human at all. Programmers are overpriced as is. |
2021-08-14 20:08:22 +0200 | <maerwald[m]> | Psst |
2021-08-14 20:08:47 +0200 | <dsal> | Are you suggesting the computers seize the means of production? |
2021-08-14 20:08:48 +0200 | <maerwald[m]> | They still think it's magic |
2021-08-14 20:09:46 +0200 | <monochrom> | The computers are always compiling (a thankless job indeed, look at how humans complain about build errors), while humans can have bourgeois fun, https://xkcd.com/303/ |
2021-08-14 20:10:10 +0200 | markpythonicbitc | (~markpytho@50.228.44.6) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-08-14 20:10:45 +0200 | <maerwald[m]> | Are you gonna start the AI revolution? |
2021-08-14 20:10:58 +0200 | <monochrom> | "exterminate all humans" |
2021-08-14 20:11:22 +0200 | wallymathieu | (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: Textual IRC Client: www.textualapp.com) |
2021-08-14 20:11:34 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 20:14:13 +0200 | <maerwald[m]> | Roger |
2021-08-14 20:16:18 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds) |
2021-08-14 20:19:13 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 248 seconds) |
2021-08-14 20:20:43 +0200 | <sclv> | oh monochrom btw do you have any suggestions on a ux for adding hasdoc-style functionality into cabal directly? |
2021-08-14 20:20:52 +0200 | <sclv> | feel free to open a ticket for it |
2021-08-14 20:26:18 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-08-14 20:27:12 +0200 | jneira | (~jneira@28.red-80-28-169.staticip.rima-tde.net) (Ping timeout: 245 seconds) |
2021-08-14 20:29:35 +0200 | V | (~v@anomalous.eu) |
2021-08-14 20:30:29 +0200 | <sclv> | monochrom: https://github.com/haskell/cabal/issues/5803 |
2021-08-14 20:31:27 +0200 | mousey | (~skymouse@gateway/tor-sasl/mousey) (Ping timeout: 244 seconds) |
2021-08-14 20:32:18 +0200 | V | (~v@anomalous.eu) (Remote host closed the connection) |
2021-08-14 20:32:33 +0200 | V | (~v@anomalous.eu) |
2021-08-14 20:32:36 +0200 | V | (~v@anomalous.eu) (Remote host closed the connection) |
2021-08-14 20:33:36 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3ab-85.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-08-14 20:33:46 +0200 | Vajb | (~Vajb@2001:999:252:4e3c:27f9:d93:655e:583) |
2021-08-14 20:34:31 +0200 | V | (~v@anomalous.eu) |
2021-08-14 20:40:33 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) (Ping timeout: 248 seconds) |
2021-08-14 20:44:29 +0200 | haowenl | (~Thunderbi@066-215-230-039.res.spectrum.com) |
2021-08-14 20:44:33 +0200 | Boomerang | (~Boomerang@xd520f68c.cust.hiper.dk) (Ping timeout: 258 seconds) |
2021-08-14 20:45:35 +0200 | <hololeap> | lets say I came up with a fancy new Monoid and I want to check to see if it obeys the laws, would agda or idris help me automate this? |
2021-08-14 20:47:01 +0200 | dcompoze_ | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) (Quit: WeeChat 3.2) |
2021-08-14 20:47:15 +0200 | dcompoze | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) |
2021-08-14 20:51:02 +0200 | <hpc> | agda could, but idris is turing complete |
2021-08-14 20:51:20 +0200 | <hpc> | although maybe it could tell you enough to be helpful |
2021-08-14 20:51:35 +0200 | <hpc> | without being a true proof |
2021-08-14 20:52:21 +0200 | <hpc> | quickcheck might be enough too |
2021-08-14 20:52:32 +0200 | <hololeap> | I should probably take some time to get familiar with both and understand how proof assistants work in general |
2021-08-14 20:53:11 +0200 | <hpc> | plus it's good to know anyway |
2021-08-14 20:53:54 +0200 | <hpc> | the "in general" is pretty simple - types are assertions, and values of those types are their proofs |
2021-08-14 20:54:02 +0200 | astra` | (sid289983@user/amish) (Ping timeout: 252 seconds) |
2021-08-14 20:54:08 +0200 | acertain | (sid470584@id-470584.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:54:08 +0200 | ehamberg | (sid18208@id-18208.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:54:11 +0200 | <hpc> | for an example of why being turing-complete is bad, consider fix |
2021-08-14 20:54:14 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) (Ping timeout: 272 seconds) |
2021-08-14 20:54:17 +0200 | <hpc> | fix :: (a -> a) -> a |
2021-08-14 20:54:18 +0200 | pjlsergeant | (sid143467@id-143467.stonehaven.irccloud.com) (Ping timeout: 272 seconds) |
2021-08-14 20:54:29 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Ping timeout: 252 seconds) |
2021-08-14 20:54:31 +0200 | Firedancer | (sid336191@id-336191.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:54:39 +0200 | <mikko> | i'm having some trouble creating a function that decrements an integer.. i know i could do (\x -> x-1) but i was hoping to do something similar to what you can do with multiplication "(*3) 4" |
2021-08-14 20:54:42 +0200 | christiaanb | (sid84827@id-84827.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:54:46 +0200 | <hpc> | or, "given a proof that an assertion implies itself, that assertion is true" |
2021-08-14 20:54:52 +0200 | edwardk | (sid47016@haskell/developer/edwardk) (Ping timeout: 256 seconds) |
2021-08-14 20:54:54 +0200 | <hololeap> | hpc: this is all over my head |
2021-08-14 20:54:56 +0200 | dmj` | (sid72307@id-72307.stonehaven.irccloud.com) (Ping timeout: 272 seconds) |
2021-08-14 20:55:03 +0200 | <hpc> | heh |
2021-08-14 20:55:04 +0200 | <mikko> | i think the arguments need to be flipped somehow but i think i'm using "flip" wrong |
2021-08-14 20:55:06 +0200 | vito | (sid1962@user/vito) (Ping timeout: 240 seconds) |
2021-08-14 20:55:06 +0200 | whez | (sid470288@id-470288.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:07 +0200 | amir | (sid22336@user/amir) (Ping timeout: 245 seconds) |
2021-08-14 20:55:11 +0200 | haowenl | (~Thunderbi@066-215-230-039.res.spectrum.com) () |
2021-08-14 20:55:17 +0200 | jakesyl | (sid56879@id-56879.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:55:18 +0200 | aria | (sid380617@id-380617.tooting.irccloud.com) (Ping timeout: 268 seconds) |
2021-08-14 20:55:23 +0200 | <hpc> | mikko: you're running into syntactic issues |
2021-08-14 20:55:24 +0200 | T_S_ | (sid501726@id-501726.highgate.irccloud.com) (Read error: Connection reset by peer) |
2021-08-14 20:55:26 +0200 | enemeth79 | (sid309041@id-309041.tooting.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-14 20:55:29 +0200 | <hpc> | (-1) is negative 1 |
2021-08-14 20:55:30 +0200 | hamishmack | (sid389057@id-389057.stonehaven.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:30 +0200 | aarchi | (sid486183@id-486183.highgate.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:30 +0200 | systemfault | (sid267009@id-267009.highgate.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:30 +0200 | NemesisD | (sid24071@id-24071.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:30 +0200 | SrPx | (sid108780@id-108780.highgate.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:32 +0200 | gmc | (sid58314@id-58314.charlton.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:55:34 +0200 | <hpc> | try (subtract 1) |
2021-08-14 20:55:35 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Remote host closed the connection) |
2021-08-14 20:55:40 +0200 | SanchayanMaity | (sid478177@id-478177.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:55:40 +0200 | tritlo | (sid58727@user/tritlo) (Ping timeout: 258 seconds) |
2021-08-14 20:55:40 +0200 | mustafa | (sid502723@rockylinux/releng/mustafa) (Ping timeout: 258 seconds) |
2021-08-14 20:55:54 +0200 | hendi | (sid489601@id-489601.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:55:55 +0200 | degraafk | (sid71464@id-71464.tooting.irccloud.com) (Ping timeout: 268 seconds) |
2021-08-14 20:55:55 +0200 | truckasaurus | (sid457088@id-457088.brockwell.irccloud.com) (Ping timeout: 268 seconds) |
2021-08-14 20:55:56 +0200 | <hpc> | :t (-1) |
2021-08-14 20:55:57 +0200 | iphy | (sid67735@id-67735.tooting.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:55:57 +0200 | <lambdabot> | Num a => a |
2021-08-14 20:55:59 +0200 | <hpc> | :t subtract 1 |
2021-08-14 20:56:00 +0200 | <lambdabot> | Num a => a -> a |
2021-08-14 20:56:03 +0200 | <mikko> | huh, i didn't know subtract is a thing, thanks |
2021-08-14 20:56:03 +0200 | joel135 | (sid136450@id-136450.stonehaven.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:56:03 +0200 | conjunctive | (sid433686@id-433686.brockwell.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:56:03 +0200 | kaizen | (sid501599@id-501599.brockwell.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:56:04 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-08-14 20:56:08 +0200 | cbarrett | (sid192934@id-192934.brockwell.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:56:08 +0200 | PotatoGim | (sid99505@id-99505.tooting.irccloud.com) (Ping timeout: 250 seconds) |
2021-08-14 20:56:12 +0200 | rubin55___ | (sid175221@id-175221.stonehaven.irccloud.com) (Ping timeout: 272 seconds) |
2021-08-14 20:56:13 +0200 | <hololeap> | there is also pred |
2021-08-14 20:56:14 +0200 | totbwf__ | (sid402332@id-402332.highgate.irccloud.com) (Read error: Connection reset by peer) |
2021-08-14 20:56:14 +0200 | hsiktas | (sid224847@id-224847.tooting.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:56:16 +0200 | <hololeap> | :t pred |
2021-08-14 20:56:17 +0200 | <lambdabot> | Enum a => a -> a |
2021-08-14 20:56:22 +0200 | ephemient | (uid407513@id-407513.tooting.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:56:23 +0200 | <hololeap> | > pred 4 |
2021-08-14 20:56:24 +0200 | angerman | (sid209936@id-209936.charlton.irccloud.com) (Ping timeout: 276 seconds) |
2021-08-14 20:56:24 +0200 | <lambdabot> | 3 |
2021-08-14 20:56:34 +0200 | hook54321 | (sid149355@user/hook54321) (Ping timeout: 256 seconds) |
2021-08-14 20:56:39 +0200 | SrPx | (sid108780@highgate.irccloud.com) |
2021-08-14 20:56:41 +0200 | supersven | (uid501114@id-501114.charlton.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:56:42 +0200 | bw | (sid2730@user/betawaffle) (Ping timeout: 240 seconds) |
2021-08-14 20:56:47 +0200 | S11001001 | (sid42510@id-42510.charlton.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:56:51 +0200 | T_S_ | (sid501726@highgate.irccloud.com) |
2021-08-14 20:56:52 +0200 | <sm> | > (-(1)) 3 |
2021-08-14 20:56:53 +0200 | <lambdabot> | error: |
2021-08-14 20:56:53 +0200 | <lambdabot> | • Could not deduce (Num t0) |
2021-08-14 20:56:53 +0200 | <lambdabot> | from the context: (Num t, Num (t -> t1)) |
2021-08-14 20:57:00 +0200 | elvishjerricco | (sid237756@id-237756.brockwell.irccloud.com) (Read error: Connection reset by peer) |
2021-08-14 20:57:06 +0200 | carter | (sid14827@id-14827.brockwell.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:57:12 +0200 | stevenxl | (uid133530@id-133530.highgate.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:57:12 +0200 | dsal | (sid13060@id-13060.tooting.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:57:15 +0200 | edwardk | (sid47016@haskell/developer/edwardk) |
2021-08-14 20:57:25 +0200 | <mikko> | oh, pred is even better! |
2021-08-14 20:57:33 +0200 | degraafk | (sid71464@tooting.irccloud.com) |
2021-08-14 20:57:34 +0200 | travv0 | (sid293381@user/travv0) (Read error: Connection reset by peer) |
2021-08-14 20:57:35 +0200 | <hpc> | i would stick to subtract though, even if just to ward off the inevitable "why are you using an Enum operation on floats" |
2021-08-14 20:57:37 +0200 | tapas | (sid467876@id-467876.charlton.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:57:43 +0200 | enemeth79 | (sid309041@tooting.irccloud.com) |
2021-08-14 20:57:46 +0200 | cbarrett | (sid192934@brockwell.irccloud.com) |
2021-08-14 20:57:54 +0200 | alanz | (sid110616@id-110616.highgate.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:57:56 +0200 | <hpc> | why should pred 5.0 be 4.0 when it could also be 4.9? |
2021-08-14 20:57:57 +0200 | whez | (sid470288@tooting.irccloud.com) |
2021-08-14 20:57:57 +0200 | conjunctive | (sid433686@brockwell.irccloud.com) |
2021-08-14 20:58:06 +0200 | <mikko> | the thing is i'm training for code golf :D |
2021-08-14 20:58:10 +0200 | <hololeap> | hpc: where would I start to begin learning about how types are assertions and values are proofs? I lack the fundamentals to even comprehend that. |
2021-08-14 20:58:11 +0200 | <hpc> | oh hah |
2021-08-14 20:58:16 +0200 | mrianbloom | (sid350277@id-350277.charlton.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-14 20:58:16 +0200 | integral | (sid296274@user/integral) (Ping timeout: 256 seconds) |
2021-08-14 20:58:16 +0200 | feepo | (sid28508@id-28508.brockwell.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-14 20:58:18 +0200 | cln | (sid336875@id-336875.charlton.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:58:20 +0200 | davetapley | (sid666@id-666.highgate.irccloud.com) (Read error: Connection reset by peer) |
2021-08-14 20:58:21 +0200 | nrr | (sid20938@id-20938.tooting.irccloud.com) (Ping timeout: 276 seconds) |
2021-08-14 20:58:21 +0200 | b20n | (sid115913@id-115913.highgate.irccloud.com) (Ping timeout: 276 seconds) |
2021-08-14 20:58:21 +0200 | bjs | (sid190364@user/bjs) (Ping timeout: 258 seconds) |
2021-08-14 20:58:26 +0200 | dpratt_ | (sid193493@id-193493.brockwell.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:58:26 +0200 | gregberns__ | (sid315709@id-315709.brockwell.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:58:36 +0200 | systemfault | (sid267009@highgate.irccloud.com) |
2021-08-14 20:58:41 +0200 | <sm> | nice. I had resorted to (+(negate 1)) |
2021-08-14 20:58:42 +0200 | NiKaN | (sid385034@id-385034.brockwell.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:58:44 +0200 | jonrh | (sid5185@id-5185.charlton.irccloud.com) (Ping timeout: 250 seconds) |
2021-08-14 20:58:53 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) (Ping timeout: 252 seconds) |
2021-08-14 20:58:54 +0200 | <hololeap> | why in the world does Float even have an Enum instance? |
2021-08-14 20:59:01 +0200 | elvishjerricco | (sid237756@brockwell.irccloud.com) |
2021-08-14 20:59:06 +0200 | scav | (sid309693@id-309693.brockwell.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:59:07 +0200 | Adeon | (sid418992@id-418992.tooting.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:59:07 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:59:17 +0200 | travv0 | (sid293381@user/travv0) |
2021-08-14 20:59:20 +0200 | <hpc> | hololeap: start with "curry-howard correspondance" perhaps |
2021-08-14 20:59:20 +0200 | hook54321 | (sid149355@user/hook54321) |
2021-08-14 20:59:22 +0200 | supersven | (uid501114@charlton.irccloud.com) |
2021-08-14 20:59:22 +0200 | artem | (uid512590@highgate.irccloud.com) (Ping timeout: 272 seconds) |
2021-08-14 20:59:30 +0200 | bradparker | (sid262931@id-262931.highgate.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:59:30 +0200 | gaze___ | (sid387101@id-387101.brockwell.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:59:38 +0200 | <sm> | ah, (+(-1)) works and is in the spirit of the OQ |
2021-08-14 20:59:39 +0200 | parseval | (sid239098@id-239098.brockwell.irccloud.com) (Ping timeout: 276 seconds) |
2021-08-14 20:59:42 +0200 | christiaanb | (sid84827@id-84827.tooting.irccloud.com) |
2021-08-14 20:59:42 +0200 | gonz__ | (sid304396@id-304396.tooting.irccloud.com) (Ping timeout: 245 seconds) |
2021-08-14 20:59:44 +0200 | iphy | (sid67735@tooting.irccloud.com) |
2021-08-14 20:59:48 +0200 | carter | (sid14827@brockwell.irccloud.com) |
2021-08-14 20:59:49 +0200 | NemesisD | (sid24071@tooting.irccloud.com) |
2021-08-14 20:59:49 +0200 | artem | (uid512590@id-512590.highgate.irccloud.com) |
2021-08-14 20:59:52 +0200 | bw | (sid2730@user/betawaffle) |
2021-08-14 20:59:52 +0200 | stevenxl | (uid133530@highgate.irccloud.com) |
2021-08-14 20:59:53 +0200 | feepo | (sid28508@id-28508.brockwell.irccloud.com) |
2021-08-14 20:59:53 +0200 | S11001001 | (sid42510@id-42510.charlton.irccloud.com) |
2021-08-14 20:59:53 +0200 | SethTisue__ | (sid14912@id-14912.charlton.irccloud.com) (Ping timeout: 258 seconds) |
2021-08-14 20:59:54 +0200 | sclv | (sid39734@haskell/developer/sclv) (Ping timeout: 240 seconds) |
2021-08-14 20:59:54 +0200 | parisienne | (sid383587@id-383587.brockwell.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:59:54 +0200 | JSharp | (sid4580@id-4580.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 20:59:56 +0200 | bradparker | (sid262931@id-262931.highgate.irccloud.com) |
2021-08-14 20:59:58 +0200 | idnar | (sid12240@debian/mithrandi) (Ping timeout: 256 seconds) |
2021-08-14 20:59:58 +0200 | grfn | (sid449115@id-449115.brockwell.irccloud.com) (Ping timeout: 256 seconds) |
2021-08-14 20:59:58 +0200 | totbwf__ | (sid402332@id-402332.highgate.irccloud.com) |
2021-08-14 20:59:58 +0200 | vito | (sid1962@user/vito) |
2021-08-14 20:59:59 +0200 | davetapley | (sid666@highgate.irccloud.com) |
2021-08-14 21:00:02 +0200 | aria | (sid380617@id-380617.tooting.irccloud.com) |
2021-08-14 21:00:02 +0200 | tapas | (sid467876@id-467876.charlton.irccloud.com) |
2021-08-14 21:00:03 +0200 | hsiktas | (sid224847@tooting.irccloud.com) |
2021-08-14 21:00:04 +0200 | <[exa]> | hololeap: people love to enumFromTo |
2021-08-14 21:00:12 +0200 | aarchi | (sid486183@highgate.irccloud.com) |
2021-08-14 21:00:12 +0200 | gmc | (sid58314@id-58314.charlton.irccloud.com) |
2021-08-14 21:00:14 +0200 | alanz | (sid110616@id-110616.highgate.irccloud.com) |
2021-08-14 21:00:18 +0200 | caasih | (sid13241@id-13241.charlton.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 21:00:18 +0200 | hendi | (sid489601@id-489601.tooting.irccloud.com) |
2021-08-14 21:00:22 +0200 | <hpc> | hololeap: actually, maybe just start from https://wiki.portal.chalmers.se/agda/Main/GettingStarted |
2021-08-14 21:00:23 +0200 | dsal | (sid13060@id-13060.tooting.irccloud.com) |
2021-08-14 21:00:23 +0200 | cln | (sid336875@id-336875.charlton.irccloud.com) |
2021-08-14 21:00:24 +0200 | kaizen | (sid501599@brockwell.irccloud.com) |
2021-08-14 21:00:25 +0200 | scav | (sid309693@id-309693.brockwell.irccloud.com) |
2021-08-14 21:00:25 +0200 | angerman | (sid209936@charlton.irccloud.com) |
2021-08-14 21:00:28 +0200 | truckasaurus | (sid457088@id-457088.brockwell.irccloud.com) |
2021-08-14 21:00:30 +0200 | mrianbloom | (sid350277@id-350277.charlton.irccloud.com) |
2021-08-14 21:00:32 +0200 | dpratt_ | (sid193493@id-193493.brockwell.irccloud.com) |
2021-08-14 21:00:32 +0200 | jonrh | (sid5185@charlton.irccloud.com) |
2021-08-14 21:00:33 +0200 | b20n | (sid115913@id-115913.highgate.irccloud.com) |
2021-08-14 21:00:33 +0200 | NiKaN | (sid385034@id-385034.brockwell.irccloud.com) |
2021-08-14 21:00:36 +0200 | ephemient | (uid407513@id-407513.tooting.irccloud.com) |
2021-08-14 21:00:39 +0200 | integral | (sid296274@user/integral) |
2021-08-14 21:00:40 +0200 | gaze___ | (sid387101@id-387101.brockwell.irccloud.com) |
2021-08-14 21:00:42 +0200 | teehemkay | (sid14792@id-14792.tooting.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 21:00:42 +0200 | rune | (sid21167@id-21167.charlton.irccloud.com) (Ping timeout: 240 seconds) |
2021-08-14 21:00:46 +0200 | <hololeap> | hpc: thanks |
2021-08-14 21:00:49 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) |
2021-08-14 21:00:50 +0200 | bjs | (sid190364@user/bjs) |
2021-08-14 21:00:52 +0200 | <hpc> | but build your way up to curry-howard, since that's ultimately the principle that makes it work in the first place |
2021-08-14 21:00:53 +0200 | gregberns__ | (sid315709@id-315709.brockwell.irccloud.com) |
2021-08-14 21:01:00 +0200 | Pent | (sid313808@id-313808.tooting.irccloud.com) |
2021-08-14 21:01:04 +0200 | Adeon | (sid418992@id-418992.tooting.irccloud.com) |
2021-08-14 21:01:13 +0200 | astra` | (sid289983@user/amish) |
2021-08-14 21:01:14 +0200 | parseval | (sid239098@id-239098.brockwell.irccloud.com) |
2021-08-14 21:01:21 +0200 | T_S_ | (sid501726@highgate.irccloud.com) (Ping timeout: 248 seconds) |
2021-08-14 21:01:35 +0200 | grfn | (sid449115@id-449115.brockwell.irccloud.com) |
2021-08-14 21:01:37 +0200 | rune | (sid21167@id-21167.charlton.irccloud.com) |
2021-08-14 21:01:38 +0200 | <mikko> | i guess there's no way around the outer parens in (+(-1)) |
2021-08-14 21:01:42 +0200 | T_S_ | (sid501726@id-501726.highgate.irccloud.com) |
2021-08-14 21:01:43 +0200 | sclv | (sid39734@haskell/developer/sclv) |
2021-08-14 21:01:44 +0200 | idnar | (sid12240@debian/mithrandi) |
2021-08-14 21:01:45 +0200 | parisienne | (sid383587@id-383587.brockwell.irccloud.com) |
2021-08-14 21:01:49 +0200 | SethTisue__ | (sid14912@id-14912.charlton.irccloud.com) |
2021-08-14 21:01:50 +0200 | JSharp | (sid4580@id-4580.tooting.irccloud.com) |
2021-08-14 21:01:57 +0200 | caasih | (sid13241@id-13241.charlton.irccloud.com) |
2021-08-14 21:02:02 +0200 | teehemkay | (sid14792@id-14792.tooting.irccloud.com) |
2021-08-14 21:02:27 +0200 | gonz__ | (sid304396@id-304396.tooting.irccloud.com) |
2021-08-14 21:02:32 +0200 | PotatoGim | (sid99505@tooting.irccloud.com) |
2021-08-14 21:02:39 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-08-14 21:02:47 +0200 | hendursa1 | (~weechat@user/hendursaga) (Remote host closed the connection) |
2021-08-14 21:03:13 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-08-14 21:05:00 +0200 | <c_wraith> | :t (-1+) |
2021-08-14 21:05:02 +0200 | <lambdabot> | Num a => a -> a |
2021-08-14 21:05:05 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-08-14 21:05:09 +0200 | <c_wraith> | that's a horrible hack. don't use it. |
2021-08-14 21:05:17 +0200 | <c_wraith> | :t (subtract 1) |
2021-08-14 21:05:18 +0200 | <lambdabot> | Num a => a -> a |
2021-08-14 21:05:19 +0200 | <hpc> | alternatively, use it everywhere |
2021-08-14 21:05:22 +0200 | <c_wraith> | use that |
2021-08-14 21:05:29 +0200 | <mikko> | c_wraith: but i love it already >:D |
2021-08-14 21:05:44 +0200 | <tomsmeding> | hololeap: frame challenge: have you heard of |
2021-08-14 21:05:48 +0200 | <tomsmeding> | @hackage quickcheck-classes |
2021-08-14 21:05:48 +0200 | <lambdabot> | https://hackage.haskell.org/package/quickcheck-classes |
2021-08-14 21:05:51 +0200 | <c_wraith> | note that it's only the same if addition is commutative in your Num instance |
2021-08-14 21:05:52 +0200 | tritlo | (sid58727@user/tritlo) |
2021-08-14 21:06:05 +0200 | hnOsmium0001 | (uid453710@id-453710.stonehaven.irccloud.com) |
2021-08-14 21:06:05 +0200 | joel135 | (sid136450@id-136450.stonehaven.irccloud.com) |
2021-08-14 21:06:09 +0200 | Firedancer | (sid336191@id-336191.stonehaven.irccloud.com) |
2021-08-14 21:06:24 +0200 | fabfianda | (~fabfianda@37.183.255.57) (Ping timeout: 258 seconds) |
2021-08-14 21:06:33 +0200 | SanchayanMaity | (sid478177@id-478177.stonehaven.irccloud.com) |
2021-08-14 21:06:35 +0200 | fabfianda | (~fabfianda@mob-5-91-116-37.net.vodafone.it) |
2021-08-14 21:06:36 +0200 | jakesyl | (sid56879@id-56879.stonehaven.irccloud.com) |
2021-08-14 21:06:38 +0200 | dmj` | (sid72307@id-72307.stonehaven.irccloud.com) |
2021-08-14 21:06:42 +0200 | rubin55___ | (sid175221@id-175221.stonehaven.irccloud.com) |
2021-08-14 21:07:04 +0200 | mustafa | (sid502723@rockylinux/releng/mustafa) |
2021-08-14 21:07:04 +0200 | acertain | (sid470584@id-470584.stonehaven.irccloud.com) |
2021-08-14 21:07:50 +0200 | <hololeap> | tomsmeding: frame challenge? and no, that seems quite useful |
2021-08-14 21:07:56 +0200 | amir | (sid22336@user/amir) |
2021-08-14 21:08:03 +0200 | <tomsmeding> | perhaps not a proper frame challenge indeed :) |
2021-08-14 21:08:08 +0200 | <tomsmeding> | there's also |
2021-08-14 21:08:11 +0200 | <tomsmeding> | @hackage checkers |
2021-08-14 21:08:11 +0200 | <lambdabot> | https://hackage.haskell.org/package/checkers |
2021-08-14 21:08:15 +0200 | <tomsmeding> | if I remember correctly |
2021-08-14 21:08:36 +0200 | <tomsmeding> | not sure what the differences are |
2021-08-14 21:08:48 +0200 | <tomsmeding> | hololeap: did you figure out the applyExtraParams from yesterday? |
2021-08-14 21:09:37 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) |
2021-08-14 21:10:43 +0200 | <hololeap> | tomsmeding: I haven't heard the term "frame challenge" before. I'm still working on the extra params thing. I drew a diagram which helped me understand the problem |
2021-08-14 21:11:11 +0200 | dcompoze | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) (Quit: WeeChat 3.2) |
2021-08-14 21:11:23 +0200 | <tomsmeding> | hololeap: https://ircbrowse.tomsmeding.com/day/lchaskell/2021/08/14?id=139342#trid139342 |
2021-08-14 21:11:29 +0200 | ehamberg | (sid18208@stonehaven.irccloud.com) |
2021-08-14 21:11:32 +0200 | <tomsmeding> | the only thing you need with that particular code is a type application |
2021-08-14 21:11:33 +0200 | pjlsergeant | (sid143467@stonehaven.irccloud.com) |
2021-08-14 21:11:44 +0200 | hamishmack | (sid389057@stonehaven.irccloud.com) |
2021-08-14 21:11:53 +0200 | <tomsmeding> | forget my usage of "frame challenge", it was an improper use of the word I think |
2021-08-14 21:12:58 +0200 | Shaeto | (~Shaeto@94.25.234.223) (Ping timeout: 268 seconds) |
2021-08-14 21:13:04 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 21:13:08 +0200 | Shaeto | (~Shaeto@94.25.234.248) |
2021-08-14 21:13:28 +0200 | dcompoze | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) |
2021-08-14 21:14:36 +0200 | o1lo01ol1o | (~o1lo01ol1@89.214.83.229) (Ping timeout: 276 seconds) |
2021-08-14 21:17:51 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 276 seconds) |
2021-08-14 21:18:44 +0200 | jtomas | (~jtomas@233.red-83-34-2.dynamicip.rima-tde.net) (Remote host closed the connection) |
2021-08-14 21:21:20 +0200 | machinedgod | (~machinedg@24.105.81.50) (Read error: Connection reset by peer) |
2021-08-14 21:21:26 +0200 | machined1od | (~machinedg@24.105.81.50) |
2021-08-14 21:22:46 +0200 | __monty__ | (~toonn@user/toonn) |
2021-08-14 21:24:19 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 21:26:06 +0200 | <tomsmeding> | hololeap: my usage was actually correct! "A frame challenge is where an author answers a question in a wholly different way the querent never asked for, or potentially expressly forbade, but in a way the author feels will actually solve the problem. (Or otherwise improve the querent's life quality or prevent them from making some terrible mistake.) This is as opposed to answers which answer the |
2021-08-14 21:26:06 +0200 | <tomsmeding> | question at face value." -- https://rpg.meta.stackexchange.com/questions/6842/whats-a-frame-challenge |
2021-08-14 21:27:23 +0200 | <monochrom> | Nice, there is a word for that. :) |
2021-08-14 21:28:23 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 268 seconds) |
2021-08-14 21:28:39 +0200 | <tomsmeding> | fascinating! https://english.stackexchange.com/questions/416923/how-do-we-describe-answering-a-question-tangent… |
2021-08-14 21:28:47 +0200 | <tomsmeding> | TIL this is not a word in common use |
2021-08-14 21:29:14 +0200 | <tomsmeding> | I've indeed seen it used mostly on stackexchange... |
2021-08-14 21:29:15 +0200 | <maerwald[m]> | https://www.reddit.com/r/rust/comments/p45tw7/going_from_haskell_to_rust/h8x1b44?utm_medium=androi… |
2021-08-14 21:29:22 +0200 | <maerwald[m]> | Haskell vs rust |
2021-08-14 21:30:50 +0200 | <c_wraith> | I don't understand complaints like that. It's been 10 years since I've had trouble with a library in Haskell |
2021-08-14 21:30:50 +0200 | gentauro | (~gentauro@user/gentauro) (Read error: Connection reset by peer) |
2021-08-14 21:31:24 +0200 | gentauro | (~gentauro@user/gentauro) |
2021-08-14 21:31:42 +0200 | <maerwald[m]> | But I agree that rust ecosystem has much more traction atm |
2021-08-14 21:32:02 +0200 | markpythonicbitc | (~markpytho@2601:647:5a00:35:a0f9:2ba0:ff0:86b4) |
2021-08-14 21:32:08 +0200 | <maerwald[m]> | The frequency of new libraries and projects is 10 times higher atm |
2021-08-14 21:32:13 +0200 | <monochrom> | And nice, "querent" exists too. |
2021-08-14 21:32:24 +0200 | <c_wraith> | Oh, that's not entirely true. I had trouble with some libraries stack users made in that period where they believed that they never had to specify version requirements |
2021-08-14 21:32:48 +0200 | <monochrom> | Oh we just saw an example of that yesterday or the day before. |
2021-08-14 21:33:02 +0200 | <c_wraith> | stack was such a huge negative to the ecosystem |
2021-08-14 21:34:49 +0200 | <maerwald[m]> | Well, cargo is neither cabal nor stack, but cabal has focused on imitating stack features instead of going back to being a simple unix style tool. |
2021-08-14 21:36:21 +0200 | <monochrom> | I think no. cabal certainly doesn't imitate stack's LTS aspect. |
2021-08-14 21:36:35 +0200 | <monochrom> | And the nix-style thing, the cabal people theorized it first. |
2021-08-14 21:36:45 +0200 | <sm> | nice discussion maerwald. We need the inverse thread on /r/haskell as well |
2021-08-14 21:36:46 +0200 | <maerwald[m]> | I'm aware |
2021-08-14 21:37:16 +0200 | <maerwald[m]> | But atm the UX is barely different, modulo a few things you can simply turn off in stack |
2021-08-14 21:37:48 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-08-14 21:37:50 +0200 | <monochrom> | "I want to use rust but I use haskell instead because cabal is simpler than cargo"? >:) |
2021-08-14 21:37:52 +0200 | <maerwald[m]> | And reading discourse etc ppl request more stack features for cabal |
2021-08-14 21:37:53 +0200 | <sm> | (https://www.reddit.com/r/rust/comments/p45tw7/going_from_haskell_to_rust) |
2021-08-14 21:38:31 +0200 | <sm> | said noone ever :) |
2021-08-14 21:39:40 +0200 | <sclv> | i mean... there still is the simple unix style thing and idk what else it needs as long as it intends to stay simple? and that's ./Setup.hs :-) |
2021-08-14 21:39:40 +0200 | <maerwald[m]> | I learned rust and wrote a few things. But I never stuck with it. Maybe because you need to type so much |
2021-08-14 21:40:06 +0200 | <monochrom> | Hand-chasing dependencies is not simple. |
2021-08-14 21:40:06 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds) |
2021-08-14 21:41:21 +0200 | <maerwald[m]> | sclv: ya, and now lets build a dependency solver around it that's not over engineered and can install stuff in a *simple* way |
2021-08-14 21:43:30 +0200 | <hpc> | monochrom: worse - hand-chasing dependencies is simple, slow, boring, and sensitive to tiny changes over time |
2021-08-14 21:43:38 +0200 | <hpc> | the problem is less "i don't know how" and more "i don't want to" |
2021-08-14 21:43:46 +0200 | <hpc> | and who would |
2021-08-14 21:43:51 +0200 | <monochrom> | Unpopular opinion: People who say "cabal is not simple" are only because the cabal file format predates YAML. |
2021-08-14 21:43:59 +0200 | <sclv> | in my experience people only think that build and package management systems are over complicated until they've tried to create a working one at scale |
2021-08-14 21:44:18 +0200 | <hpc> | monochrom: agreed |
2021-08-14 21:44:24 +0200 | <monochrom> | Generally I am skeptic when people say "this is not simple" or "I don't understand this". They always mean something else. They are always wrong. |
2021-08-14 21:44:24 +0200 | <sclv> | every few years its "just do it like X" |
2021-08-14 21:44:39 +0200 | <hpc> | i have to look up syntax and field names now and again, but after that everything makes perfect sense |
2021-08-14 21:44:52 +0200 | <sclv> | where X was like cpan at one point? and then npm, and now cargo. (and a few in between too) |
2021-08-14 21:45:07 +0200 | <sclv> | oh right, like python at one point |
2021-08-14 21:45:07 +0200 | alx741 | (~alx741@181.196.68.193) (Ping timeout: 245 seconds) |
2021-08-14 21:45:25 +0200 | <sclv> | and then you dig in and discover "wait? python has more package managers than haskell does!" |
2021-08-14 21:45:32 +0200 | <maerwald[m]> | sclv: eh, cabal shoves the entire pkg-config database into the solver and now one understands why or how it works |
2021-08-14 21:45:51 +0200 | <sclv> | and "ok now building this javascript project requires four package managers that recursively install one another!?" |
2021-08-14 21:46:00 +0200 | <sm> | unpopular opinions: stack made it possible for me to ship software that built reliably and easily, when cabal could not. Now cabal technically can do that but the UX still hasn't caught up |
2021-08-14 21:46:32 +0200 | <maerwald[m]> | So yes, there are a number of reasons cabal-install isn't simple |
2021-08-14 21:46:36 +0200 | <sclv> | and also, the systems that initially appear to work Really well, like cargo, do so because either they're highly curated, or have a small set of packages, or bitrot has not yet set in because they're so young, or some combination |
2021-08-14 21:47:20 +0200 | <sclv> | (or in npm's case its just "untyped langauge let people paper over a lot of what would have been errors in any other ecosystem") |
2021-08-14 21:47:29 +0200 | <sm> | sclv: +1, I feel cargo must have some of these going on but I don't know which |
2021-08-14 21:47:29 +0200 | <hpc> | cargo is (was?) especially weird with how many packages require pre-release versions of rust |
2021-08-14 21:48:06 +0200 | <sclv> | like I do not doubt that people's experiences with rust package management are really nice at the moment. but i think that's a matter of time and maturity. purescript went thru the same thing iirc. |
2021-08-14 21:48:14 +0200 | <c_wraith> | fewer packages require that now, mostly they were things that depended on a couple features like async that have been released. |
2021-08-14 21:48:46 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-08-14 21:48:57 +0200 | <sclv> | sm i don't feel that opinion is unpopular btw. we have a lot of ongoing work on documentation and ux. |
2021-08-14 21:49:32 +0200 | <sclv> | and features like auto-fetching git repos have undoubtably turned out to be large qol improvements, even tho they seem pretty easy to work around |
2021-08-14 21:49:38 +0200 | <sm> | sclv: great. It often feels unpopular in here, but I know #haskell is not the world :) |
2021-08-14 21:49:49 +0200 | <c_wraith> | stack itself is fine, but it did a lot of damage to hackage |
2021-08-14 21:50:00 +0200 | <c_wraith> | because it encouraged people to release broken libraries |
2021-08-14 21:50:10 +0200 | sm | refrains from arguing |
2021-08-14 21:50:11 +0200 | <c_wraith> | and then they got really angry when hvr started fixing the breakage |
2021-08-14 21:50:33 +0200 | <sclv> | like, i mean, i'm tracking the large amount of work that the new maintainers and hf is putting into ux and documentation on cabal, and its pretty clear that this is a known area of improvement |
2021-08-14 21:50:38 +0200 | <maerwald[m]> | Also, trying to figure out how cabal invokes GHC is impossible, or know linking order etc etc |
2021-08-14 21:50:52 +0200 | <sclv> | the linking order should be in the build plan |
2021-08-14 21:50:58 +0200 | <sclv> | and the invocations are all printed with -v3 |
2021-08-14 21:51:18 +0200 | <sclv> | i agree that pkgconf story needs some tlc and a good design |
2021-08-14 21:52:28 +0200 | <maerwald[m]> | sclv: https://gitlab.haskell.org/ghc/ghc/-/issues/19945 |
2021-08-14 21:53:14 +0200 | <maerwald[m]> | That's one instance where include dir order was totally random and impossible to control |
2021-08-14 21:53:41 +0200 | <maerwald[m]> | Took more than an hour to debug |
2021-08-14 21:53:58 +0200 | <sclv> | yeah that's a good issue -- not just a cabal problem though, relates to ghc design as well right? |
2021-08-14 21:54:13 +0200 | <maerwald[m]> | The abstraction is thick, you get little to no access to the underlying details |
2021-08-14 21:54:42 +0200 | <maerwald[m]> | I'm not sure if you had the same problem if you used shake or make with ghc |
2021-08-14 21:56:09 +0200 | machined1od | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
2021-08-14 21:57:02 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-08-14 21:57:16 +0200 | lbseale | (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
2021-08-14 21:58:09 +0200 | alx741 | (~alx741@186.178.108.32) |
2021-08-14 21:58:13 +0200 | peterhil_ | (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Quit: Must not waste too much time here...) |
2021-08-14 21:58:30 +0200 | <maerwald[m]> | Here's some background about the oddities of cabals pkg-config story https://github.com/haskell/cabal/issues/6771 |
2021-08-14 21:59:56 +0200 | <maerwald[m]> | And it turned out there's no one left who understands what is going on :) |
2021-08-14 22:00:26 +0200 | <sclv> | oh the solver's not that scary. and we do have the solver experts around to consult with, oleg was exaggerating |
2021-08-14 22:00:42 +0200 | <dminuoso> | What knowledge does cabal solver use from pkgconfig exactly |
2021-08-14 22:01:04 +0200 | <sclv> | i was just looking at related stuff the other day -- i didn't dig into that precise vein of stuff, but it looked straightforward |
2021-08-14 22:01:06 +0200 | <sclv> | sec |
2021-08-14 22:01:22 +0200 | acidjnk | (~acidjnk@p200300d0c72b9508a1e806c8914cbd0f.dip0.t-ipconnect.de) |
2021-08-14 22:01:33 +0200 | Shaeto | (~Shaeto@94.25.234.248) (Quit: WeeChat 3.1) |
2021-08-14 22:01:34 +0200 | <maerwald[m]> | Which packages exist and it may switch flags depending on it |
2021-08-14 22:01:38 +0200 | peterhil | (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) |
2021-08-14 22:02:19 +0200 | <maerwald[m]> | But it doesn't seem clear how it works |
2021-08-14 22:04:41 +0200 | <maerwald[m]> | From an implementation perspective, stack code is easier to understand than cabal-install imo. That, imo, also explains the lack of maintainers |
2021-08-14 22:05:00 +0200 | <sclv> | this is really the full interaction: https://github.com/haskell/cabal/blob/00a2351789a460700a2567eb5ecc42cca0af913f/cabal-install/cabal… |
2021-08-14 22:05:13 +0200 | <sclv> | its blindingly clear |
2021-08-14 22:05:43 +0200 | <sclv> | if you're in a branch of the search tree that requires a package be available in pkgconfig and that fails, then fail the branch and backtrack |
2021-08-14 22:05:54 +0200 | <sclv> | that's it |
2021-08-14 22:06:01 +0200 | juhp | (~juhp@128.106.188.220) (Ping timeout: 268 seconds) |
2021-08-14 22:06:12 +0200 | <sclv> | everything else is just plumbing |
2021-08-14 22:06:31 +0200 | <sclv> | also what happened is cabal had some core maintainers step away, is all |
2021-08-14 22:06:42 +0200 | <sclv> | at the moment it has some enthusiastic new ones, and there's plenty of contributing volunteers |
2021-08-14 22:06:58 +0200 | <sclv> | this "x code is harder than y code to understand" stuff is usually bogus in my experience |
2021-08-14 22:07:05 +0200 | <sclv> | the harder code to understand is the code you've worked with less |
2021-08-14 22:07:39 +0200 | juhp | (~juhp@128.106.188.220) |
2021-08-14 22:07:44 +0200 | <maerwald[m]> | I hacked on both and that's my experience |
2021-08-14 22:08:20 +0200 | <maerwald[m]> | Definitely didn't work more on stack :) |
2021-08-14 22:08:22 +0200 | <sclv> | in my experience, a few things in cabal are hard, like the flag/config passing is overcomplicated |
2021-08-14 22:08:31 +0200 | <sclv> | plenty of other things are pretty modular and easy |
2021-08-14 22:08:52 +0200 | <sclv> | the solver took a minute to get used to, but once i got it, i thought it was very well engineered |
2021-08-14 22:09:47 +0200 | <sclv> | the general stuff with what level options act at and how they get threaded thru to different programs is as a whole a Big hard problem thats not fully there, and v2 made it even harder, because there's so many different variants |
2021-08-14 22:10:04 +0200 | <sclv> | since at different parts of the plan, you can potentially have different options being used for the same package, etc |
2021-08-14 22:10:54 +0200 | derelict | (~derelict@user/derelict) (Quit: WeeChat 3.2) |
2021-08-14 22:10:55 +0200 | <dsal> | Is 'protofunctor' an actual thing? I'm looking and I find profunctor descriptions and what looks like might be typos or Mandela effects or something. |
2021-08-14 22:11:30 +0200 | <maerwald[m]> | You seem to agree with my original statement that cabal is not simple :p |
2021-08-14 22:11:34 +0200 | amesgen[m] | amesgen |
2021-08-14 22:11:40 +0200 | <sclv> | Cabal the library is simple |
2021-08-14 22:11:46 +0200 | <sclv> | cabal-install is not much harder than it needs to be, imho |
2021-08-14 22:11:55 +0200 | <maerwald[m]> | Yes |
2021-08-14 22:11:57 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-08-14 22:12:05 +0200 | <maerwald[m]> | Well, I think it is |
2021-08-14 22:12:09 +0200 | <sclv> | with the exception of the args parsing, which is not so much complex, as just "stupidly verbose" |
2021-08-14 22:13:05 +0200 | <maerwald[m]> | But I'm glad people are working on it |
2021-08-14 22:13:10 +0200 | <sclv> | dsal: a protofunctor should be a morphism between protocategories |
2021-08-14 22:13:15 +0200 | <sclv> | https://ncatlab.org/nlab/show/protocategory |
2021-08-14 22:13:28 +0200 | <sclv> | but i think that's going to be obscure and almost never what someone means |
2021-08-14 22:15:27 +0200 | <dsal> | That might be too deep in category theory for me. I'm going to assume people generally mean profunctor but want more syllables. |
2021-08-14 22:15:28 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-08-14 22:15:41 +0200 | <monochrom> | :) |
2021-08-14 22:16:03 +0200 | amesgen | amesgen[m] |
2021-08-14 22:18:16 +0200 | wonko | (~wjc@62.115.229.50) |
2021-08-14 22:18:37 +0200 | <sm> | supersubprotofunctorialoid |
2021-08-14 22:21:12 +0200 | <hpc> | zygohistomorphic prepromorphism? |
2021-08-14 22:23:18 +0200 | <dsal> | Now that one's just made up. |
2021-08-14 22:23:46 +0200 | dcompoze | (~dcompoze@cpc97624-walt24-2-0-cust75.13-2.cable.virginm.net) (Quit: WeeChat 3.2) |
2021-08-14 22:25:35 +0200 | <hpc> | https://wiki.haskell.org/Zygohistomorphic_prepromorphisms |
2021-08-14 22:25:55 +0200 | <aarchi> | tomsmeding: Good to know that ghcup has GHC 7. I've modified the Whitespace interpreter to build on latest GHC and that's been my testing version so far, but I want to test the version as intended by the Whitespace authors using the same GHC version |
2021-08-14 22:27:16 +0200 | <int-e> | . o O ( "Most readers get as far as the zygohistomorphic prepromorphism giving up, and in fact in later editions of the book all the pages beyond this point have been left blank to save on printing costs." ) |
2021-08-14 22:27:26 +0200 | <int-e> | +before |
2021-08-14 22:27:34 +0200 | <hololeap> | to be fair, I think edwardk made that up as a joke |
2021-08-14 22:28:13 +0200 | derelict | (~derelict@user/derelict) |
2021-08-14 22:28:59 +0200 | <int-e> | I've got to hand it to Douglas Adams though, "Future Semi-Conditionally Modified Subinverted Plagal Past Subjunctive Intentional" sounds more impressive than "zygohistomorphic prepromorphism". |
2021-08-14 22:29:54 +0200 | <hpc> | it's definitely better than physics' "let's name it after me" |
2021-08-14 22:30:27 +0200 | <aarchi> | Do any of you know when UTF-8 support was added to readFile, getLine, getChar, putChar, and putStr from System.IO? |
2021-08-14 22:30:52 +0200 | <Hecate> | aarchi: no idea |
2021-08-14 22:31:36 +0200 | <hololeap> | aarchi: are you trying to set a minimum bound on a "base" dependency? |
2021-08-14 22:32:06 +0200 | jgeerds | (~jgeerds@55d45555.access.ecotel.net) |
2021-08-14 22:32:06 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 22:32:45 +0200 | <aarchi> | No, I'm writing a spec for the Whitespace programming language, based on the reference interpreter that was written in Haskell in 2004. I want a scope for how different GHC 5.02 is from current GHC |
2021-08-14 22:33:56 +0200 | <Hecate> | aarchi: utterly differenct |
2021-08-14 22:33:56 +0200 | <geekosaur> | late 6.x but I couldn't tell you exactly when |
2021-08-14 22:33:59 +0200 | <Hecate> | *-c |
2021-08-14 22:34:00 +0200 | <hololeap> | my uneducated guess is that it will run just as well on modern GHC as it did back in 2004 |
2021-08-14 22:34:49 +0200 | <int-e> | https://downloads.haskell.org/~ghc/6.12.1/docs/html/users_guide/release-6-12-1.html " Handle IO now supports automatic character set encoding and newline translation. For more information, see the "Unicode encoding/decoding" and "Newline conversion" sections in the System.IO haddock docs." |
2021-08-14 22:36:08 +0200 | <aarchi> | int-e: thanks |
2021-08-14 22:36:10 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Remote host closed the connection) |
2021-08-14 22:36:38 +0200 | <aarchi> | Before 6.12.1, IO would only accept ASCII? |
2021-08-14 22:36:44 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) |
2021-08-14 22:36:55 +0200 | <geekosaur> | iso8859-1 |
2021-08-14 22:37:00 +0200 | <int-e> | it was byte-based (so basically ISO-8859-1) |
2021-08-14 22:37:32 +0200 | fendor | (~fendor@178.165.196.92.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-08-14 22:37:35 +0200 | <int-e> | good times ;-) |
2021-08-14 22:37:36 +0200 | <aarchi> | I presume that nothing would have caused encoding errors then |
2021-08-14 22:37:53 +0200 | <int-e> | (not really, but the transition period was pretty nasty) |
2021-08-14 22:38:07 +0200 | <int-e> | aarchi: right |
2021-08-14 22:38:33 +0200 | <int-e> | not even on writing, IIRC; codepoints would just be truncated to their least significant 8 bits |
2021-08-14 22:39:23 +0200 | <sm> | ah! happy error-free days! |
2021-08-14 22:39:50 +0200 | <hpc> | make things interesting, re-encode to UTF-32 and take the last two bits from each byte :D |
2021-08-14 22:40:16 +0200 | <aarchi> | This is the snippet for printing an arbitrary-precision int as a char: putChar (toEnum (fromInteger n)). In GHC<6.12, that would have printed n%256 as a byte, right? |
2021-08-14 22:40:39 +0200 | <int-e> | yes |
2021-08-14 22:40:49 +0200 | <aarchi> | Modern GHC treats that as a UTF-32 codepoint |
2021-08-14 22:41:05 +0200 | burnsidesLlama | (~burnsides@client-8-91.eduroam.oxuni.org.uk) (Ping timeout: 258 seconds) |
2021-08-14 22:42:00 +0200 | <aarchi> | Does (or has) getLine have different line ending handling per OS, i.e. LF/CRLF/CR? |
2021-08-14 22:42:11 +0200 | <hpc> | yes |
2021-08-14 22:42:19 +0200 | <geekosaur> | that's aforementioned newline translation |
2021-08-14 22:42:28 +0200 | <hpc> | https://hackage.haskell.org/package/base-4.15.0.0/docs/System-IO.html#v:hSetNewlineMode |
2021-08-14 22:42:35 +0200 | <int-e> | aarchi: the quote above mentions newline conventions as well |
2021-08-14 22:42:54 +0200 | <int-e> | isn't there a LFCR convention too? |
2021-08-14 22:43:09 +0200 | <hololeap> | what's the difference between a DSL and a EDSL? would would blaze-html count as? |
2021-08-14 22:43:42 +0200 | <int-e> | hololeap: the difference is that EDSL must fit into the language's syntax; DSL can use preprocessors. |
2021-08-14 22:43:49 +0200 | <int-e> | E = "embedded" |
2021-08-14 22:44:03 +0200 | <dmj`> | Is there a way to overlap an instance by just adding a single constraint or will it always be considered duplicate |
2021-08-14 22:44:07 +0200 | <hpc> | nix is a dsl, dhall is an edsl |
2021-08-14 22:44:12 +0200 | <hololeap> | ok, so this is actually an EDSL, even though it calls itself a DSL: https://hackage.haskell.org/package/cascading |
2021-08-14 22:44:16 +0200 | <aarchi> | int-e: Acorn BBC and Spool OS used CRLF: https://en.wikipedia.org/wiki/Newline |
2021-08-14 22:44:17 +0200 | <hololeap> | that's what confused me |
2021-08-14 22:44:17 +0200 | <int-e> | Of course that distinction is blurred when you have quasiquoters |
2021-08-14 22:44:27 +0200 | <aarchi> | int-e: edit: those two used LFCR |
2021-08-14 22:44:47 +0200 | <hpc> | er, dhall is a dsl too |
2021-08-14 22:45:21 +0200 | <int-e> | aarchi: Yeah, stupid autocorrecting brains ;-) |
2021-08-14 22:45:38 +0200 | <aarchi> | Yeah. LFCR just feels so wrong |
2021-08-14 22:46:29 +0200 | <monochrom> | Classic Mac used LFCR. |
2021-08-14 22:46:37 +0200 | <aarchi> | Really? I thought it was CR |
2021-08-14 22:46:50 +0200 | <geekosaur> | same here |
2021-08-14 22:47:15 +0200 | <monochrom> | Ah my bad. |
2021-08-14 22:47:51 +0200 | <hololeap> | what I really want is an EDSL very much in the spirit of elm-ui that outputs CSS |
2021-08-14 22:47:54 +0200 | <hololeap> | https://github.com/mdgriffith/elm-ui |
2021-08-14 22:48:01 +0200 | <hololeap> | "Many layout errors (like you'd run into using CSS) are just not possible to write in the first place!" |
2021-08-14 22:48:12 +0200 | <hololeap> | that's the killer feature I'm after |
2021-08-14 22:49:27 +0200 | nate1 | (~nate@2600:1010:b02a:2679:2dce:c77d:8f55:dad5) |
2021-08-14 22:49:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
2021-08-14 22:52:11 +0200 | <aarchi> | Are stdin/stdout text or binary Handles, i.e. do they translate LF<->CRLF by default? |
2021-08-14 22:52:21 +0200 | <c_wraith> | text |
2021-08-14 22:53:06 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-08-14 22:54:57 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-08-14 22:57:32 +0200 | Erutuon | (~Erutuon@user/erutuon) |
2021-08-14 22:58:22 +0200 | nate1 | (~nate@2600:1010:b02a:2679:2dce:c77d:8f55:dad5) (Ping timeout: 272 seconds) |
2021-08-14 23:01:16 +0200 | Guest21 | (~Guest21@2a02:aa1:1010:e9f8:8986:a924:83c:1c23) |
2021-08-14 23:03:04 +0200 | Guest54 | (~Guest54@187.83.249.216.dyn.smithville.net) |
2021-08-14 23:04:36 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
2021-08-14 23:07:07 +0200 | <hololeap> | i like how the website for clay (css EDSL) has an obnoxious floating title and menu that takes up almost half of the screen |
2021-08-14 23:10:37 +0200 | <Guest21> | Hello I am new to Haskell could someone help me out? We are going to find the largest number under 100,000 that's divisible by 3829. GHCI is complaining about precedence with my mod predicate. |
2021-08-14 23:10:48 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-08-14 23:10:49 +0200 | <Guest21> | findLargestDiv' = last . filter (`mod` 3829 == 0) [1..100000] |
2021-08-14 23:11:56 +0200 | <monochrom> | Yeah the computer thinks you mean (`mod` (3829 == 0)). |
2021-08-14 23:12:10 +0200 | <monochrom> | You are really better off writing a lambda. |
2021-08-14 23:12:40 +0200 | <hololeap> | are you asking how to fix it or are you confused about the error message? |
2021-08-14 23:13:26 +0200 | <Guest21> | Asking how to fix it, if it's even possible to do it that way. I solved it with list comprehensions but I want to do it with filter and map. |
2021-08-14 23:15:15 +0200 | mousey | (~skymouse@gateway/tor-sasl/mousey) |
2021-08-14 23:16:23 +0200 | <hololeap> | > findLargestDiv' = last . filter (\i -> i `mod` 3829 == 0) [1..100000] |
2021-08-14 23:16:24 +0200 | <lambdabot> | <hint>:1:17: error: parse error on input ‘=’ |
2021-08-14 23:16:41 +0200 | <hololeap> | > findLargestDiv' = last . filter (\i -> i `mod` 3829 == 0) |
2021-08-14 23:16:43 +0200 | <lambdabot> | <hint>:1:17: error: parse error on input ‘=’ |
2021-08-14 23:18:25 +0200 | <hololeap> | > let findLargestDiv' = last . filter (\i -> i `mod` 3829 == 0) |
2021-08-14 23:18:27 +0200 | <lambdabot> | <no location info>: error: |
2021-08-14 23:18:27 +0200 | <lambdabot> | not an expression: ‘let findLargestDiv' = last . filter (\i -> i `mod` 3... |
2021-08-14 23:18:40 +0200 | <hololeap> | not sure what's up with lambdabot... |
2021-08-14 23:18:54 +0200 | wroathe | (~wroathe@96-88-30-181-static.hfc.comcastbusiness.net) |
2021-08-14 23:18:57 +0200 | <monochrom> | expression ≠ declaration |
2021-08-14 23:19:06 +0200 | <monochrom> | has always been that way since day one |
2021-08-14 23:19:11 +0200 | <hololeap> | % findLargestDiv' = last . filter (\i -> i `mod` 3829 == 0) |
2021-08-14 23:19:11 +0200 | <yahb> | hololeap: |
2021-08-14 23:19:20 +0200 | <hololeap> | % findLargestDiv' [1..100000] |
2021-08-14 23:19:21 +0200 | <yahb> | hololeap: 99554 |
2021-08-14 23:19:54 +0200 | <hololeap> | I thought it hooked into a GHCI session or something. yahb has always been more intuitive to me |
2021-08-14 23:20:22 +0200 | <monochrom> | No. lambdabot is only hint and/or mueval. |
2021-08-14 23:21:51 +0200 | <hololeap> | how would you do a declaration with lambdabot? |
2021-08-14 23:21:58 +0200 | <monochrom> | Don't. |
2021-08-14 23:21:59 +0200 | <hpc> | @let likethis = "like this" |
2021-08-14 23:22:00 +0200 | <lambdabot> | Defined. |
2021-08-14 23:22:07 +0200 | <hololeap> | ok |
2021-08-14 23:22:13 +0200 | <hpc> | @undefine |
2021-08-14 23:22:13 +0200 | <lambdabot> | Undefined. |
2021-08-14 23:22:37 +0200 | aguapesada | (~aguapesad@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) (Ping timeout: 245 seconds) |
2021-08-14 23:22:44 +0200 | <hololeap> | Guest21: sorry for the noise, did you get your question answered? |
2021-08-14 23:23:01 +0200 | Ariakenom | (~patrik@c83-255-154-140.bredband.tele2.se) |
2021-08-14 23:23:06 +0200 | <monochrom> | GHCi too didn't take most declarations until a decade ago or 5 years ago or something. |
2021-08-14 23:24:03 +0200 | <monochrom> | It required "let" for "let <pat> = <expr", and it didn't take "data X = X", "import List". |
2021-08-14 23:24:11 +0200 | <monochrom> | (And yes back then it was called "List".) |
2021-08-14 23:24:29 +0200 | pfurla | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) |
2021-08-14 23:24:47 +0200 | <hololeap> | when I first started with haskell, ghci was like that. and then right after that it changed to the current behavior which is much more intuitive for me |
2021-08-14 23:25:55 +0200 | aguapesada | (~aguapesad@2804:14c:8793:8e2f:311f:1da6:1cf6:61ea) |
2021-08-14 23:27:49 +0200 | <hpc> | i thought i was joking when i told people ghci was a giant do block |
2021-08-14 23:27:59 +0200 | <hpc> | turns out it really was, back then lol |
2021-08-14 23:28:12 +0200 | pfurla_ | (~pfurla@ool-3f8fcb0f.dyn.optonline.net) (Ping timeout: 272 seconds) |
2021-08-14 23:28:29 +0200 | <aarchi> | Are there significant I/O differences between Haskell 98 and 2010? |
2021-08-14 23:28:58 +0200 | <hpc> | in what way? |
2021-08-14 23:29:00 +0200 | <hpc> | performance? |
2021-08-14 23:29:44 +0200 | <monochrom> | I think no. |
2021-08-14 23:30:07 +0200 | Ariakenom | (~patrik@c83-255-154-140.bredband.tele2.se) (Quit: WeeChat 3.1) |
2021-08-14 23:30:13 +0200 | <aarchi> | I'm mostly interested in encoding-related changes |
2021-08-14 23:30:13 +0200 | <Guest21> | hololeap yeah I figured it out, however I am stuck once again if you want to lend a hand. =) |
2021-08-14 23:30:14 +0200 | <monochrom> | The requirement of Unicode compliance was there in Haskell 98 or earlier. |
2021-08-14 23:30:22 +0200 | Ariakenom | (~patrik@c83-255-154-140.bredband.tele2.se) |
2021-08-14 23:30:30 +0200 | <hololeap> | Guest21: go ahead and ask |
2021-08-14 23:30:42 +0200 | <monochrom> | It was actual implementations like GHC and Hugs that ignored that until a decade ago or something. |
2021-08-14 23:31:26 +0200 | <Guest21> | We are going to find the sum of all odd squares that are smaller than 10 000. |
2021-08-14 23:31:34 +0200 | <Guest21> | sumOddSquares = sum . filter f $ map (^2) [1..] |
2021-08-14 23:31:34 +0200 | <Guest21> | where f x = odd x && x < 10000 |
2021-08-14 23:31:50 +0200 | <Guest21> | My function runs forever for some reason. |
2021-08-14 23:32:40 +0200 | <monochrom> | If you find a GHC version that can't be persuaded to do non-latin-1 I/O, take note that its Char type is still big enough for all of Unicode, it's just the I/O routines that disappoint. |
2021-08-14 23:32:41 +0200 | <hololeap> | Guest21: use the takeWhile function |
2021-08-14 23:32:56 +0200 | <Guest21> | Sure, but why doesn't it work like I wrote? |
2021-08-14 23:32:57 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 268 seconds) |
2021-08-14 23:33:16 +0200 | <hololeap> | because there is nothing that tells it to stop |
2021-08-14 23:33:34 +0200 | <hololeap> | it doesn't know you want to stop at 10000 |
2021-08-14 23:33:35 +0200 | <Guest21> | what happens to my x < 10 000? |
2021-08-14 23:33:47 +0200 | <monochrom> | If you start with [1, 3 .. 10000] you have all odd numbers below 10000 in the first place. |
2021-08-14 23:34:02 +0200 | <hololeap> | the filter function just continues returning False for infinity. it doesn't know to do anything else |
2021-08-14 23:34:15 +0200 | <Guest21> | Oh that's the answer I wanted, thanks! |
2021-08-14 23:34:21 +0200 | <Guest21> | hololeap |
2021-08-14 23:34:55 +0200 | <hololeap> | np |
2021-08-14 23:35:07 +0200 | <monochrom> | You should take a close look at the code of filter and hand-execute it to see what it really does. |
2021-08-14 23:36:06 +0200 | <monochrom> | As opposed to taking an "intuitive" wordy narrative that is completely open to misinterpretation therefore you can misunderstand it and indeed you did. |
2021-08-14 23:36:19 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2021-08-14 23:36:24 +0200 | <monochrom> | A formula is worth a thousand pictures. Which is a million words. |
2021-08-14 23:36:28 +0200 | <hololeap> | yeah, the code doesn't lie |
2021-08-14 23:38:58 +0200 | fvr | (uid503686@id-503686.highgate.irccloud.com) (Quit: Connection closed for inactivity) |
2021-08-14 23:39:55 +0200 | <monochrom> | Maybe I should put that on my exam too. |
2021-08-14 23:41:53 +0200 | <monochrom> | Is this Project Euler? |
2021-08-14 23:42:54 +0200 | <monochrom> | Did Project Euler not place a very visible banner reminding you you're supposed to math the sh*t out of it and think up a basically O(1)-time algorithm and that should be what you code up, as opposed to brute-forcing it? |
2021-08-14 23:43:47 +0200 | <aarchi> | Are .hi files platform-independent? How compiler version-independent are they? |
2021-08-14 23:44:04 +0200 | <geekosaur> | they're very version-dependent |
2021-08-14 23:44:12 +0200 | <monochrom> | I still don't get it when people, even today, use it for "learning to code". What is the value in learning to code up only brute forcing, really? |
2021-08-14 23:44:44 +0200 | <aarchi> | Can a .hs file be reverse engineered from a .hi file? |
2021-08-14 23:44:49 +0200 | <Cajun> | its very good for learning how to google the right thing to find the right algorithm :P |
2021-08-14 23:44:49 +0200 | <geekosaur> | in fact they start out with a version indicator so the compiler can abort if a .hi file for the wrong version is used |
2021-08-14 23:45:06 +0200 | <geekosaur> | it doesn't have enough infoprmation to recreate a .hs file |
2021-08-14 23:45:24 +0200 | <hpc> | i think you need both the .hi and the .o file to have a chance |
2021-08-14 23:45:26 +0200 | <aarchi> | Does it have AST/source information? An IR? |
2021-08-14 23:45:53 +0200 | <aarchi> | What's in an .hi file? |
2021-08-14 23:46:21 +0200 | <geekosaur> | all it has is enough type information to use a .o fileproperly, and source unfoldings for cross-module inlining (whicyh applies only to small functions) |
2021-08-14 23:48:13 +0200 | <geekosaur> | you can use ghc to dump a .hi file in human-readable file (ghc --print-hi-file iirc) |
2021-08-14 23:49:20 +0200 | <aarchi> | I've got this .hi/.o pair, but no .hs source and I'd like to reverse engineer it: |
2021-08-14 23:49:21 +0200 | <aarchi> | https://web.archive.org/web/20030624020343/http://www.dur.ac.uk/d.j.walrond/whitespace/whitespace-… |
2021-08-14 23:49:25 +0200 | <aarchi> | https://web.archive.org/web/20030624020612/http://www.dur.ac.uk/d.j.walrond/whitespace/whitespace-… |
2021-08-14 23:49:47 +0200 | <aarchi> | I have a later version of VM.hs, but want to derive this version |
2021-08-14 23:49:56 +0200 | <geekosaur> | sorry, it's --show-iface |
2021-08-14 23:50:50 +0200 | <geekosaur> | and I don't think you have enough information to derive that VM.hs |
2021-08-14 23:53:56 +0200 | Guest21 | (~Guest21@2a02:aa1:1010:e9f8:8986:a924:83c:1c23) (Quit: Client closed) |
2021-08-14 23:54:58 +0200 | <aarchi> | I get "bad CPU type in executable" for both --print-hi-file and --show-iface. I'll have to try it in Docker |
2021-08-14 23:55:10 +0200 | <aarchi> | I guess that means that .hi files are plat-dependent |
2021-08-14 23:55:44 +0200 | <aarchi> | geekosaur: you said the GHC version is at the start of the .hi; I don't see it with xxd/less or strings |
2021-08-14 23:57:14 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-08-14 23:57:47 +0200 | <geekosaur> | aarchi, it's numerically encoded |
2021-08-14 23:58:11 +0200 | <geekosaur> | and that error actualy means you can't even run ghc |
2021-08-14 23:59:14 +0200 | <aarchi> | Looks like I forgot to cleanup my installation after experimenting with 6.2.1 |
2021-08-14 23:59:36 +0200 | <monochrom> | Yeah "executable" refers to GHC itself. |