Logs on 2021-03-24 (freenode/#haskell)
| 00:00:04 | → | Alleria joins (~textual@2603-7000-3040-0000-5092-5f75-2147-b80d.res6.spectrum.com) |
| 00:00:27 | Alleria | is now known as Guest36287 |
| 00:02:18 | → | gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) |
| 00:02:26 | × | jespada quits (~jespada@90.254.243.187) (Ping timeout: 264 seconds) |
| 00:03:46 | → | jespada joins (~jespada@90.254.243.187) |
| 00:04:50 | × | Guest36287 quits (~textual@2603-7000-3040-0000-5092-5f75-2147-b80d.res6.spectrum.com) (Ping timeout: 264 seconds) |
| 00:04:54 | → | wopas32 joins (uid384704@gateway/web/irccloud.com/x-yqojhidlabqfaddk) |
| 00:05:17 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 00:06:00 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 00:06:29 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:06:32 | → | sw1nn joins (~sw1nn@2a00:23c7:622f:2c00:200f:4151:e888:f7e6) |
| 00:07:47 | × | codygman__ quits (~user@47.186.207.161) (Read error: No route to host) |
| 00:07:55 | → | codygman` joins (~user@47.186.207.161) |
| 00:10:44 | × | rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds) |
| 00:12:28 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 00:12:29 | → | vgtw_ joins (~vgtw@gateway/tor-sasl/vgtw) |
| 00:12:35 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 256 seconds) |
| 00:13:44 | × | vgtw quits (~vgtw@gateway/tor-sasl/vgtw) (Remote host closed the connection) |
| 00:13:45 | vgtw_ | is now known as vgtw |
| 00:15:46 | × | sm2n quits (~sm2n@bras-base-hmtnon143hw-grc-11-65-95-103-225.dsl.bell.ca) (Quit: Leaving) |
| 00:18:22 | → | sm2n joins (~sm2n@bras-base-hmtnon143hw-grc-11-65-95-103-225.dsl.bell.ca) |
| 00:21:29 | → | augnun joins (~augnun@2804:14c:658b:41bb:9d27:655f:eef9:d872) |
| 00:23:11 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 00:25:11 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 00:25:47 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:26:36 | → | vicfred joins (vicfred@gateway/vpn/mullvad/vicfred) |
| 00:26:47 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 00:27:25 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:28:14 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 264 seconds) |
| 00:31:24 | × | acidjnk_new quits (~acidjnk@p200300d0c72b958398d78e73e557de79.dip0.t-ipconnect.de) (Ping timeout: 244 seconds) |
| 00:33:11 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 00:33:41 | × | mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew) |
| 00:35:56 | → | epicte7us joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 00:36:31 | → | elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 00:37:28 | → | slack1256 joins (~slack1256@dvc-186-186-101-190.movil.vtr.net) |
| 00:37:50 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 00:38:15 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 00:38:34 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 00:38:48 | → | ph88_ joins (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) |
| 00:39:19 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:39:32 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Read error: Connection reset by peer) |
| 00:39:33 | × | ep1ctetus quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Ping timeout: 264 seconds) |
| 00:40:47 | × | epicte7us quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Client Quit) |
| 00:42:25 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
| 00:42:59 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 00:43:14 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 256 seconds) |
| 00:43:32 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:43:36 | <wroathe> | So https://hackage.haskell.org/package/req-3.9.0/docs/Network-HTTP-Req.html#t:Req made the design decision to throw for a non-200 response status code instead of just returning normally. It's been a while since I've haskelled... Could someone remind me what the right way to go about getting this to just return a response normally for all status codes is? |
| 00:44:10 | × | forgottenone quits (~forgotten@176.42.23.95) (Quit: Konversation terminated!) |
| 00:44:12 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 00:44:45 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:45:26 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 00:46:35 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 00:47:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:47:20 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 00:48:04 | → | unyu joins (~pyon@unaffiliated/pyon) |
| 00:48:19 | → | ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 00:48:33 | × | ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 00:48:40 | × | usr25 quits (~usr25@unaffiliated/usr25) (Quit: Leaving) |
| 00:49:04 | → | ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta) |
| 00:49:08 | → | ddellac__ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 00:50:00 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Remote host closed the connection) |
| 00:50:14 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 00:50:28 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 00:51:03 | <wroathe> | Oh, found it. |
| 00:51:10 | <wroathe> | It's httpConfigCheckResponse |
| 00:51:23 | → | Guest_63 joins (49f4b23e@c-73-244-178-62.hsd1.fl.comcast.net) |
| 00:51:32 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 00:51:44 | × | Guest_63 quits (49f4b23e@c-73-244-178-62.hsd1.fl.comcast.net) (Client Quit) |
| 00:53:23 | × | ddellac__ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 245 seconds) |
| 00:55:06 | → | stree joins (~stree@68.36.8.116) |
| 00:55:12 | × | apache8080 quits (~rishi@wsip-70-168-153-252.oc.oc.cox.net) (Ping timeout: 260 seconds) |
| 00:55:26 | × | Tops2 quits (~Tobias@dyndsl-095-033-016-025.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 00:56:29 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 00:57:09 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 00:58:07 | × | dhil quits (~dhil@80.208.56.181) (Ping timeout: 260 seconds) |
| 00:59:13 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 01:00:53 | × | slack1256 quits (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection) |
| 01:01:07 | → | alphabeta1 joins (~kilolympu@5.151.5.178) |
| 01:01:53 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:02:32 | × | kilolympus quits (~kilolympu@5.151.5.178) (Ping timeout: 240 seconds) |
| 01:05:03 | → | kilolympus joins (~kilolympu@5.151.5.181) |
| 01:07:23 | × | jacks2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Ping timeout)) |
| 01:07:33 | × | alphabeta1 quits (~kilolympu@5.151.5.178) (Ping timeout: 256 seconds) |
| 01:07:49 | → | apache8080 joins (~rishi@wsip-70-168-153-252.oc.oc.cox.net) |
| 01:10:25 | × | Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa) |
| 01:21:24 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Remote host closed the connection) |
| 01:23:19 | → | Vadrigar_ joins (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) |
| 01:23:49 | × | ph88_ quits (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) (Ping timeout: 272 seconds) |
| 01:25:35 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 01:25:41 | × | bitmapper quits (uid464869@gateway/web/irccloud.com/x-sfwykfysiphrscur) (Quit: Connection closed for inactivity) |
| 01:25:54 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 01:27:52 | × | Vadrigar_ quits (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
| 01:28:17 | → | rajivr joins (uid269651@gateway/web/irccloud.com/x-yuttflczfhjstiup) |
| 01:29:01 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 01:36:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 01:37:08 | × | apache8080 quits (~rishi@wsip-70-168-153-252.oc.oc.cox.net) (Ping timeout: 245 seconds) |
| 01:40:43 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 01:40:54 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 01:41:30 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 01:42:29 | → | drbean joins (~drbean@TC210-63-209-208.static.apol.com.tw) |
| 01:43:24 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 246 seconds) |
| 01:43:27 | × | average quits (uid473595@gateway/web/irccloud.com/x-npstzxdmagpahzvl) (Quit: Connection closed for inactivity) |
| 01:44:57 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds) |
| 01:45:17 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 244 seconds) |
| 01:45:28 | × | justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1) |
| 01:46:14 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 264 seconds) |
| 01:47:05 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 01:47:36 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 01:58:27 | → | mozzarella joins (~sam@unaffiliated/sam113101) |
| 01:58:47 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 02:01:37 | × | cr3 quits (~cr3@192-222-143-195.qc.cable.ebox.net) (Client Quit) |
| 02:02:13 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Quit: Goodbye) |
| 02:03:22 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 02:03:30 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 02:05:21 | × | CrazyPython quits (~crazypyth@98.122.164.118) (Ping timeout: 264 seconds) |
| 02:05:48 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 02:06:45 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:11:53 | × | urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna) |
| 02:14:33 | × | wopas32 quits (uid384704@gateway/web/irccloud.com/x-yqojhidlabqfaddk) (Quit: Connection closed for inactivity) |
| 02:17:42 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 02:19:08 | → | conal joins (~conal@64.71.133.70) |
| 02:19:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:19:35 | → | maroloccio joins (~marolocci@pousada3ja.mma.com.br) |
| 02:22:24 | × | machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 256 seconds) |
| 02:22:29 | × | m0rphism quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 244 seconds) |
| 02:24:40 | → | solidus-river joins (~fuag1@174.127.249.180) |
| 02:25:10 | × | GZJ0X_ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 02:25:17 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 02:25:20 | <solidus-river> | hmm i have a [( a -> Bool) ], i want to write a function that takes an a and tests it against the list but earlies out if one is false (like &&) |
| 02:25:30 | → | GZJ0X_ joins (~gzj@unaffiliated/gzj) |
| 02:25:35 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 02:25:53 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 02:26:13 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:26:30 | <solidus-river> | oh! maybe i can test this using bottom in ghci |
| 02:26:44 | <solidus-river> | couldn't think of a way to test if it was early-out ing or not |
| 02:26:53 | <monochrom> | :) |
| 02:27:48 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 02:29:10 | <solidus-river> | yep, playing around with that works :) |
| 02:29:48 | <monochrom> | Slick spoiler: f a list = all (\p -> p a) list |
| 02:30:07 | <monochrom> | "all" has early-out behaviour. |
| 02:30:34 | → | CrazyPython joins (~crazypyth@98.122.164.118) |
| 02:30:58 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:31:38 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 02:31:39 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 265 seconds) |
| 02:34:17 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 02:34:52 | × | codygman` quits (~user@47.186.207.161) (Ping timeout: 256 seconds) |
| 02:35:07 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:35:43 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 02:36:17 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 02:36:53 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 02:38:59 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 02:40:09 | × | juri_ quits (~juri@178.63.35.222) (Ping timeout: 264 seconds) |
| 02:40:15 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 02:40:50 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 264 seconds) |
| 02:41:26 | × | xff0x quits (~xff0x@2001:1a81:5390:3000:a737:9764:8d39:b00d) (Ping timeout: 264 seconds) |
| 02:41:38 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 02:42:02 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:42:54 | → | xff0x joins (~xff0x@2001:1a81:53b3:e900:2f67:ad37:c4b:d353) |
| 02:43:45 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds) |
| 02:45:16 | → | bobweb joins (ac3a116c@172.58.17.108) |
| 02:46:57 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 02:47:14 | <solidus-river> | oh |
| 02:47:35 | <solidus-river> | well, still fun to hack at :) |
| 02:47:46 | <solidus-river> | monochrom, thanks! |
| 02:47:49 | <bobweb> | Hi. I am this problem: https://paste.tomsmeding.com/1dcB2ieh Please help me to resolve the error and pass quickBatch Applicative. Thank you. |
| 02:47:53 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:48:02 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Read error: Connection reset by peer) |
| 02:48:04 | <monochrom> | Yeah it is valuable to both write your own recursion and try to reuse a library function. |
| 02:48:44 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 02:51:35 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 02:52:28 | <monochrom> | In "instance Semigroup a => Semigroup (ZipList' a) where", what is the benefit of "Semigroup a =>"? When do you ever need it? (This is a rhetorical guiding question.) |
| 02:55:05 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:55:47 | <bobweb> | Hi monochrom: Well, I thought it necessary for (<>) (ZipList' x) (ZipList' y) = ZipList' (x <> y). But apparently that is not true! Thank you, I will now meditate on why it's not needed. |
| 02:56:39 | <bobweb> | Specifically this part: ZipList' (x <> y) |
| 02:57:22 | → | frankdmartinez joins (~frankdmar@62.182.99.65) |
| 02:57:35 | <monochrom> | Suppose I'm doing [1,2]<>[3,4], and the intention is merely list concatenation. The answer is [1,2,3,4], not some kind of [1<>2, 3<>4]. Therefore, emphatically I am not doing <> on the elements. |
| 02:57:36 | × | frankdmartinez quits (~frankdmar@62.182.99.65) (Client Quit) |
| 02:57:45 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 02:58:09 | <bobweb> | You rock, monochrom: |
| 02:58:30 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 02:59:41 | <monochrom> | OTOH, if I'm asking about [1,2] == [3,4], then in the process I will be asking about 1==2, 3==4. Therefore, I am totally doing == on the elements. This is the only reason why "Eq [a]" requires "Eq a". This is not to be cargo-culted. |
| 02:59:59 | → | Alleria joins (~textual@2603-7000-3040-0000-5092-5f75-2147-b80d.res6.spectrum.com) |
| 03:00:22 | Alleria | is now known as Guest65589 |
| 03:00:29 | × | bobweb quits (ac3a116c@172.58.17.108) (Quit: Connection closed) |
| 03:00:33 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 264 seconds) |
| 03:00:43 | → | bobweb joins (ac3a116c@172.58.17.108) |
| 03:00:52 | × | CrazyPython quits (~crazypyth@98.122.164.118) (Read error: Connection reset by peer) |
| 03:00:58 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 03:03:23 | × | notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 258 seconds) |
| 03:03:33 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
| 03:04:50 | × | Guest65589 quits (~textual@2603-7000-3040-0000-5092-5f75-2147-b80d.res6.spectrum.com) (Ping timeout: 264 seconds) |
| 03:05:11 | <bobweb> | monochrom: Actually, I have a better answer to your "rhetorical" question. I thought that in order for ZipList' (x <> y) to work, both x and y needed to have instances of Semigroup. Otherwise, why do I bother including the a in instance Semigroup (ZipList' a)? Can you jog my thinking with another good question maybe? |
| 03:05:34 | × | drbean quits (~drbean@TC210-63-209-208.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in) |
| 03:05:40 | <monochrom> | What is the type of x again? |
| 03:05:53 | × | Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 245 seconds) |
| 03:06:02 | × | Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer) |
| 03:06:16 | → | Tario joins (~Tario@201.192.165.173) |
| 03:06:17 | <bobweb> | x is polymorphic; could be anything. |
| 03:06:24 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 03:06:28 | <monochrom> | half true half false |
| 03:06:48 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:06:54 | <bobweb> | LOL, now that is truly a Zen answer! |
| 03:07:23 | <monochrom> | Here is how you could have performed a simple experiment to refute your hypothesis. |
| 03:07:47 | <monochrom> | Is "ZipList' False" valid? Therefore, can x have type Bool? |
| 03:07:51 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 03:08:53 | <bobweb> | Oh, duh. That's right! It's a list. Yup, tunnel vision, LOL. Thank you, monochrom: |
| 03:09:19 | → | bitmagie joins (~Thunderbi@200116b806323f00a9345f0cd31bb1ac.dip.versatel-1u1.de) |
| 03:11:18 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 245 seconds) |
| 03:13:08 | × | GZJ0X_ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 03:13:29 | → | GZJ0X_ joins (~gzj@unaffiliated/gzj) |
| 03:13:55 | × | acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 256 seconds) |
| 03:14:11 | → | slack1256 joins (~slack1256@dvc-186-186-101-190.movil.vtr.net) |
| 03:14:22 | × | bobweb quits (ac3a116c@172.58.17.108) (Ping timeout: 240 seconds) |
| 03:14:53 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:16:13 | → | stree joins (~stree@68.36.8.116) |
| 03:16:29 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 03:16:53 | <slack1256> | Can someone help understand this issue in ghc? https://gitlab.haskell.org/ghc/ghc/-/issues/19534 , the commenter claims there are allocations on the first core output, but I see no `let` that does that. |
| 03:20:01 | <slack1256> | Nevermind, I understand now. |
| 03:23:13 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:23:44 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer) |
| 03:24:08 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 03:24:40 | <monochrom> | This is why I add -ddump-prep in addition to -ddump-simpl. simpl is less clutter, but prep puts back all the let's that simpl doesn't care to spam you with. |
| 03:24:55 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 03:25:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:25:47 | slack1256 | saves that in his zettel |
| 03:26:07 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 03:28:18 | → | z0k joins (~user@115.186.169.1) |
| 03:31:52 | <slack1256> | Oh, that prints both, tidy-core and CorePrep ! |
| 03:31:59 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:32:33 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 03:33:38 | → | toorevitimirp joins (~tooreviti@117.182.183.55) |
| 03:33:46 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 03:33:47 | <monochrom> | In extreme cases I have -ddump-simpl -ddump-prep -ddump-opt-cmm -ddump-asm in one go. |
| 03:34:26 | <monochrom> | And when you do want them all, it is better to request all in one go, so the randomized variable names line up. |
| 03:34:41 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:34:55 | <monochrom> | And -ddump-to-file so I am not spamming stdout/err |
| 03:34:56 | <slack1256> | plus -ddump-to-file, otherwise my tmux will swallow some lines. |
| 03:35:04 | <monochrom> | Yeah that :) |
| 03:35:08 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 03:35:12 | × | augnun quits (~augnun@2804:14c:658b:41bb:9d27:655f:eef9:d872) (Quit: WeeChat 3.1) |
| 03:36:27 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 03:40:11 | × | perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.1) |
| 03:40:48 | × | slack1256 quits (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection) |
| 03:40:51 | × | bitmagie quits (~Thunderbi@200116b806323f00a9345f0cd31bb1ac.dip.versatel-1u1.de) (Remote host closed the connection) |
| 03:41:01 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:41:20 | × | solidus-river quits (~fuag1@174.127.249.180) (Quit: Leaving) |
| 03:42:13 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 03:43:00 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:44:11 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 03:45:36 | × | theDon quits (~td@muedsl-82-207-238-243.citykom.de) (Ping timeout: 265 seconds) |
| 03:47:06 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 03:47:08 | → | theDon joins (~td@94.134.91.247) |
| 03:48:00 | → | raym joins (~ray@115.187.32.14) |
| 03:48:21 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 03:50:06 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:52:10 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 03:52:21 | → | notzmv joins (~zmv@unaffiliated/zmv) |
| 03:53:15 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 03:53:25 | × | nfd quits (~nfd9001@2601:602:77f:1820:144a:da71:587f:e0c7) (Ping timeout: 244 seconds) |
| 03:54:46 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 03:56:10 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 03:56:23 | → | Sathiana joins (~kath@185-113-98-38.cust.bredband2.com) |
| 03:57:12 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 265 seconds) |
| 03:58:44 | → | FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 03:58:44 | finn_elija | is now known as Guest32817 |
| 03:58:44 | FinnElija | is now known as finn_elija |
| 04:00:38 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 04:00:46 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:02:03 | × | finn_elija quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection) |
| 04:02:29 | → | FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) |
| 04:02:29 | FinnElija | is now known as finn_elija |
| 04:02:36 | × | Guest32817 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 268 seconds) |
| 04:02:59 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 04:04:04 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:04:21 | → | Rudd0 joins (~Rudd0@185.189.115.108) |
| 04:06:51 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 04:07:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 04:08:48 | × | Tario quits (~Tario@201.192.165.173) (Ping timeout: 265 seconds) |
| 04:11:26 | × | Sathiana quits (~kath@185-113-98-38.cust.bredband2.com) (Quit: WeeChat 3.1) |
| 04:12:17 | × | elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
| 04:12:51 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:13:22 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 04:19:18 | × | alx741 quits (~alx741@186.178.108.164) (Quit: alx741) |
| 04:19:26 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Ping timeout: 265 seconds) |
| 04:19:50 | × | _Alleria quits (~AllahuAkb@2603-7000-3040-0000-e868-95dd-6dea-dfa1.res6.spectrum.com) (Ping timeout: 264 seconds) |
| 04:20:28 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:20:34 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 04:21:00 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 04:22:09 | × | Noldorin quits (~noldorin@unaffiliated/noldorin) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…) |
| 04:22:29 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 04:22:36 | × | ezzieyguywuf quits (~Unknown@unaffiliated/ezzieyguywuf) (Ping timeout: 240 seconds) |
| 04:24:03 | × | darjeeling_ quits (~darjeelin@122.245.208.187) (Ping timeout: 246 seconds) |
| 04:26:15 | <zebrag> | I want to get rid of "represented" in "the representable functor represented by X" while not resorting to notation. And preferably keeping the "first" "representable". |
| 04:26:54 | <Axman6> | "the representable functor X"? |
| 04:26:57 | × | toorevitimirp quits (~tooreviti@117.182.183.55) (Ping timeout: 260 seconds) |
| 04:28:10 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:28:14 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 264 seconds) |
| 04:28:47 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 04:28:48 | <zebrag> | Not sure I, myself, would understand that, because X being an object... I would be confused for a while |
| 04:28:59 | → | geowiesnot_bis joins (~user@87-89-181-157.abo.bbox.fr) |
| 04:29:16 | <Axman6> | I don't understand the original sentense so that's the best I can do :) |
| 04:29:26 | × | azure1 quits (~azure@103.154.230.130) (Ping timeout: 264 seconds) |
| 04:29:36 | <zebrag> | thanks |
| 04:29:53 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:29:56 | → | ezzieyguywuf joins (~Unknown@unaffiliated/ezzieyguywuf) |
| 04:30:26 | → | azure1 joins (~azure@103.154.230.130) |
| 04:33:02 | × | aarvar quits (~foewfoiew@2601:602:a080:fa0:49ff:dc3d:e55f:8dd) (Ping timeout: 264 seconds) |
| 04:33:50 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 04:35:38 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 04:39:20 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 04:40:53 | → | Alleria_ joins (~AllahuAkb@69.202.254.168) |
| 04:42:22 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:42:41 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 04:43:10 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 04:44:05 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds) |
| 04:44:35 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 256 seconds) |
| 04:46:20 | → | tpefreedom joins (~tsomers@184-157-240-110.dyn.centurytel.net) |
| 04:49:43 | × | haritz quits (~hrtz@unaffiliated/haritz) (Ping timeout: 260 seconds) |
| 04:50:05 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 04:50:25 | → | haritz joins (~hrtz@62.3.70.206) |
| 04:50:25 | × | haritz quits (~hrtz@62.3.70.206) (Changing host) |
| 04:50:25 | → | haritz joins (~hrtz@unaffiliated/haritz) |
| 04:52:52 | → | plutoniix joins (~q@node-uqb.pool-125-24.dynamic.totinternet.net) |
| 05:00:05 | → | Alleria joins (~textual@69.202.254.168) |
| 05:00:28 | Alleria | is now known as Guest65675 |
| 05:01:27 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 05:02:08 | × | pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 240 seconds) |
| 05:02:44 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 05:03:26 | → | pfurla joins (~pfurla@216.151.180.226) |
| 05:03:37 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 05:03:41 | × | astroanax quits (astroanax@gateway/shell/ircnow/x-ugavefgpyfztxwoh) (Ping timeout: 244 seconds) |
| 05:04:59 | × | Guest65675 quits (~textual@69.202.254.168) (Ping timeout: 256 seconds) |
| 05:05:27 | × | carlomagno quits (~cararell@148.87.23.5) (Quit: Leaving.) |
| 05:05:42 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 05:06:19 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 265 seconds) |
| 05:07:37 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 05:11:26 | → | paddymahoney joins (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) |
| 05:13:26 | → | forgottenone joins (~forgotten@176.42.23.95) |
| 05:14:33 | → | fffff joins (7712037d@119-18-3-125.771203.syd.nbn.aussiebb.net) |
| 05:15:58 | × | MrMobius quits (~MrMobius@208.58.206.154) (Read error: No route to host) |
| 05:16:53 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 05:17:08 | → | MrMobius joins (~MrMobius@208.58.206.154) |
| 05:19:09 | × | tpefreedom quits (~tsomers@184-157-240-110.dyn.centurytel.net) (Remote host closed the connection) |
| 05:19:34 | → | tpefreedom joins (~tsomers@184-157-240-110.dyn.centurytel.net) |
| 05:19:54 | × | forgottenone quits (~forgotten@176.42.23.95) (Read error: Connection reset by peer) |
| 05:20:03 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 05:20:19 | fffff | is now known as difficultfornore |
| 05:20:40 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 05:21:04 | × | tpefreedom quits (~tsomers@184-157-240-110.dyn.centurytel.net) (Client Quit) |
| 05:23:35 | → | Vadrigar_ joins (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) |
| 05:24:41 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds) |
| 05:26:28 | → | astroanax joins (astroanax@gateway/shell/ircnow/x-ieczsueboltuwogn) |
| 05:27:10 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 05:28:11 | → | wrunt joins (~ajc@vmx14030.hosting24.com.au) |
| 05:28:16 | × | Vadrigar_ quits (~Vadrigar@ip5b417208.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
| 05:36:46 | × | pfurla quits (~pfurla@216.151.180.226) (Ping timeout: 256 seconds) |
| 05:37:32 | → | stree joins (~stree@68.36.8.116) |
| 05:38:27 | → | pfurla joins (~pfurla@ool-182ed2e2.dyn.optonline.net) |
| 05:38:28 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 05:38:31 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 05:42:22 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 05:43:31 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 05:44:39 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 05:44:57 | → | average joins (uid473595@gateway/web/irccloud.com/x-ngtcmmwtbxjkvcum) |
| 05:45:53 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 05:46:45 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 264 seconds) |
| 05:53:23 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 05:55:00 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 06:01:50 | × | solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed) |
| 06:02:50 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 06:03:07 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 06:03:11 | × | Wuzzy quits (~Wuzzy@p57a2ecf2.dip0.t-ipconnect.de) (Quit: Wuzzy) |
| 06:04:07 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:04:36 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 06:07:23 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:08:41 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 06:08:53 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 06:09:40 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:11:06 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 06:11:23 | × | ozataman quits (~ozataman@pool-151-202-25-12.nycmny.fios.verizon.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…) |
| 06:15:59 | → | malumore joins (~malumore@151.62.115.239) |
| 06:16:24 | → | v01d4lph4 joins (~v01d4lph4@106.212.133.35) |
| 06:19:41 | × | maroloccio quits (~marolocci@pousada3ja.mma.com.br) (Read error: Connection reset by peer) |
| 06:22:21 | → | maroloccio_ joins (~marolocci@pousada3ja.mma.com.br) |
| 06:24:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:25:01 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 06:25:56 | × | xff0x quits (~xff0x@2001:1a81:53b3:e900:2f67:ad37:c4b:d353) (Ping timeout: 240 seconds) |
| 06:27:03 | × | monochrom quits (trebla@216.138.220.146) (Quit: NO CARRIER) |
| 06:28:29 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 06:30:19 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 06:31:13 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:33:23 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 245 seconds) |
| 06:34:11 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 06:35:24 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 06:37:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
| 06:37:43 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 06:39:37 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 06:39:51 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds) |
| 06:42:57 | → | monochrom joins (trebla@216.138.220.146) |
| 06:43:10 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 06:44:26 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds) |
| 06:47:58 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 06:49:33 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 06:51:51 | → | _flow_ joins (~none@salem.informatik.uni-erlangen.de) |
| 06:52:08 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds) |
| 06:52:51 | → | ryxai joins (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) |
| 06:57:00 | × | plutoniix quits (~q@node-uqb.pool-125-24.dynamic.totinternet.net) (Quit: Leaving) |
| 06:58:17 | → | aqd joins (~aqd@84.20.147.33) |
| 06:58:47 | × | pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!) |
| 06:59:45 | → | graf_blutwurst joins (~user@2001:171b:226e:adc0:102c:ecb5:8d03:4f2b) |
| 06:59:47 | × | z0k quits (~user@115.186.169.1) (Quit: WeeChat 3.0) |
| 07:01:32 | → | danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) |
| 07:02:16 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 07:03:15 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:04:15 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 07:05:06 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:06:07 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:06:40 | × | jlamothe quits (~jlamothe@198.251.55.207) (Ping timeout: 265 seconds) |
| 07:06:57 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:07:40 | × | ryxai quits (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:07:48 | → | jlamothe joins (~jlamothe@198.251.55.207) |
| 07:07:55 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:09:20 | × | howdoi quits (uid224@gateway/web/irccloud.com/x-icyhhocxhhkwzcda) (Quit: Connection closed for inactivity) |
| 07:09:21 | × | Varis quits (~Tadas@unaffiliated/varis) (Read error: Connection reset by peer) |
| 07:10:45 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:12:27 | → | michalz joins (~user@185.246.204.51) |
| 07:12:47 | → | ryxai joins (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) |
| 07:12:49 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 07:13:52 | × | Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer) |
| 07:15:15 | × | Inoperable quits (~PLAYER_1@fancydata.science) (Quit: All your buffer are belong to us!) |
| 07:16:26 | × | roconnor quits (~roconnor@host-45-58-230-226.dyn.295.ca) (Ping timeout: 240 seconds) |
| 07:17:46 | × | ryxai quits (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 07:17:47 | → | roconnor joins (~roconnor@host-45-58-230-226.dyn.295.ca) |
| 07:18:00 | → | obiiwahn joins (~obiwahn@pdpc/supporter/student/obiwahn) |
| 07:18:56 | × | michalz quits (~user@185.246.204.51) (Ping timeout: 240 seconds) |
| 07:19:54 | → | xff0x joins (~xff0x@dynamic-046-114-034-164.46.114.pool.telefonica.de) |
| 07:19:54 | → | hexfifty joins (~hexfive@50.35.83.177) |
| 07:20:13 | × | hexfive quits (~hexfive@50.35.83.177) (Ping timeout: 258 seconds) |
| 07:20:14 | × | obiwahn quits (~obiwahn@pdpc/supporter/student/obiwahn) (Ping timeout: 258 seconds) |
| 07:23:04 | × | _flow_ quits (~none@salem.informatik.uni-erlangen.de) (Ping timeout: 240 seconds) |
| 07:23:56 | → | _flow_ joins (~none@salem.informatik.uni-erlangen.de) |
| 07:24:03 | × | Forlorn quits (~Forlorn@unaffiliated/forlorn) (Quit: leaving) |
| 07:24:40 | × | zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving) |
| 07:24:54 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 07:26:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:26:43 | → | zaquest joins (~notzaques@5.128.210.178) |
| 07:27:23 | → | idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 07:27:48 | × | xff0x quits (~xff0x@dynamic-046-114-034-164.46.114.pool.telefonica.de) (Ping timeout: 268 seconds) |
| 07:28:22 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:28:42 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 07:28:58 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:29:08 | → | xff0x joins (~xff0x@2001:1a81:53c9:9f00:9d06:569d:fae7:bd39) |
| 07:29:56 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Client Quit) |
| 07:30:00 | × | graf_blutwurst quits (~user@2001:171b:226e:adc0:102c:ecb5:8d03:4f2b) (Remote host closed the connection) |
| 07:30:56 | → | graf_blutwurst joins (~user@2001:171b:226e:adc0:102c:ecb5:8d03:4f2b) |
| 07:31:21 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:31:33 | → | ian_ joins (~igloo@matrix.chaos.earth.li) |
| 07:31:40 | → | Inoperable joins (~PLAYER_1@fancydata.science) |
| 07:31:58 | × | Igloo quits (~igloo@matrix.chaos.earth.li) (Ping timeout: 240 seconds) |
| 07:31:58 | × | natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 244 seconds) |
| 07:32:12 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:32:53 | × | cyphase quits (~cyphase@unaffiliated/cyphase) (Ping timeout: 256 seconds) |
| 07:33:20 | → | natechan joins (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 07:33:28 | → | plutoniix joins (~q@ppp-27-55-82-213.revip3.asianet.co.th) |
| 07:33:31 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:34:10 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:34:19 | → | cyphase joins (~cyphase@unaffiliated/cyphase) |
| 07:35:51 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 07:38:31 | → | hacxman joins (~hexo@gateway/tor-sasl/hexo) |
| 07:38:32 | → | sorki joins (~sorki@gateway/tor-sasl/sorki) |
| 07:39:03 | × | hexo quits (~hexo@gateway/tor-sasl/hexo) (Ping timeout: 268 seconds) |
| 07:39:03 | × | srk quits (~sorki@gateway/tor-sasl/sorki) (Ping timeout: 268 seconds) |
| 07:39:04 | hacxman | is now known as hexo |
| 07:39:09 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 07:39:30 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:40:55 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 07:41:27 | sorki | is now known as srk |
| 07:44:44 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 07:45:40 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 07:45:51 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:45:55 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 256 seconds) |
| 07:46:33 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:47:43 | → | dyeplexer joins (~lol@unaffiliated/terpin) |
| 07:50:44 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Remote host closed the connection) |
| 07:51:07 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:52:01 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 07:52:31 | × | RusAlex quits (~Chel@unaffiliated/rusalex) (Quit: WeeChat 3.0) |
| 07:53:17 | → | Yumasi joins (~guillaume@2a01:e0a:5cb:4430:ba39:67f5:3885:dbb6) |
| 07:54:23 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 07:58:53 | → | stree joins (~stree@68.36.8.116) |
| 07:59:04 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 07:59:29 | → | coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) |
| 07:59:59 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 08:00:06 | → | Alleria joins (~textual@69.202.254.168) |
| 08:00:29 | Alleria | is now known as Guest27044 |
| 08:01:32 | × | evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer) |
| 08:02:02 | × | vicfred quits (vicfred@gateway/vpn/mullvad/vicfred) (Quit: Leaving) |
| 08:02:21 | → | Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 08:03:16 | → | RusAlex joins (~Chel@unaffiliated/rusalex) |
| 08:04:06 | <bahamas> | if I want to provide a consistent way to print the values of a certain type, how should I do it? I'm thinking it would make sense to implement a Show instance, but are there any libraries or best practices to have in mind? |
| 08:04:06 | × | idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 256 seconds) |
| 08:04:40 | × | Guest27044 quits (~textual@69.202.254.168) (Ping timeout: 265 seconds) |
| 08:04:47 | <bahamas> | the type I have in mind is a record, but there could also be a tree, where indentation would be involved |
| 08:04:58 | → | chele joins (~chele@ip5b40237d.dynamic.kabel-deutschland.de) |
| 08:05:05 | → | evanjs joins (~evanjs@075-129-098-007.res.spectrum.com) |
| 08:06:51 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:08:03 | → | Varis joins (~Tadas@unaffiliated/varis) |
| 08:08:10 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 08:09:06 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:10:13 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 08:12:11 | → | m0rphism joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
| 08:12:58 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 08:13:34 | → | dhil joins (~dhil@80.208.56.181) |
| 08:15:17 | → | idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 08:15:38 | <bahamas> | I see this in the documentation for Show "The result of show is a syntactically correct Haskell expression containing only constants". it sounds like I shouldn't use Show directly, if I want to ommit some of the fields of the record |
| 08:16:03 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:20:05 | <sclv> | correct. show is for things you can "read" |
| 08:21:03 | × | idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 256 seconds) |
| 08:24:50 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 08:25:00 | → | Sorna joins (~Sornaensi@79.142.232.102) |
| 08:26:02 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:27:04 | → | gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh) |
| 08:27:31 | × | hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:83f1:3643:e78d:1fe7) (Ping timeout: 272 seconds) |
| 08:27:33 | × | maroloccio_ quits (~marolocci@pousada3ja.mma.com.br) (Ping timeout: 245 seconds) |
| 08:28:09 | × | Sornaensis quits (~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 272 seconds) |
| 08:28:12 | <ski> | bahamas : `Show' and `Read' are not intended for custom pretty-printing / formatting, or the like |
| 08:29:03 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 08:29:11 | <ski> | make your own function, or perhaps make a type class (or find some suitable one in a package, maybe) |
| 08:29:27 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 08:30:11 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:30:30 | <bahamas> | ski: any packages I could look at? |
| 08:30:53 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 08:31:20 | <ski> | i'm not aware of any particular ones (and it probably depends more on what exactly you have in mind, or what your requirements are, what you're trying to do) |
| 08:31:35 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:32:25 | <ski> | i think there's some packages for composably constructing indented pretty-printed things. those might serve as a starting point |
| 08:32:29 | <ski> | (can't recall names) |
| 08:32:37 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 08:33:43 | _flow_ | is now known as flow |
| 08:33:45 | <ski> | (i vaguely recall reading a paper (a functional pearl, i think), about the design of such a pretty-printing library, that involved vertical composition, horizontal composition, both having an empty document as neutral elements) |
| 08:34:49 | difficultfornore | is now known as mice-user |
| 08:35:39 | → | dawiss joins (~dawiss@178.43.197.203.ipv4.supernova.orange.pl) |
| 08:36:30 | <bahamas> | well, I found a package that sounds simple enough for starters. https://hackage.haskell.org/package/pretty-display-0.1.10/docs/Text-Display.html |
| 08:36:55 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 08:37:16 | <bahamas> | the library you're talking about sounds familiar (although I don't remember the name). however, I fear it uses too many abstractions, which might not be necessary for what I'm trying to do |
| 08:38:19 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:38:20 | → | idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 08:38:28 | <bahamas> | I have another question. I see some warnings regarding automatic deriving "No deriving strategy specified. Did you want stock, newtype, or anyclass? |
| 08:38:59 | → | hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:a7dd:a3bb:c8b0:2d88) |
| 08:39:01 | <bahamas> | do I have to specify the strategy on each deriving declaration, or is there a different approach? |
| 08:39:07 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 08:39:51 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:40:14 | → | borne joins (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) |
| 08:40:48 | → | Boomerang joins (~Boomerang@2a05:f6c7:2179:0:f97c:9426:ef00:f528) |
| 08:40:49 | <ski> | <https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/deriving_strategies.html> |
| 08:41:32 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 08:42:21 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 08:42:27 | → | ph88_ joins (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) |
| 08:43:39 | → | kuribas joins (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) |
| 08:44:02 | <ski> | i guess the laste paragraph on that page applies in your case, and you then have to explicitly specify the strategies in which there's an ambiguity reported |
| 08:45:38 | → | xourt joins (d4c620ea@212-198-32-234.rev.numericable.fr) |
| 08:47:07 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 256 seconds) |
| 08:47:10 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 08:47:25 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:48:30 | <bahamas> | ski: I'm deriving Show and Generic for a record and a sum type |
| 08:48:42 | → | maroloccio_ joins (~marolocci@pousada3ja.mma.com.br) |
| 08:49:01 | <bahamas> | so none of them are a newtype. I'm assuming the warning shows up, because I have GeneralizedNewtypeDeriving enabled |
| 08:50:09 | <bahamas> | ok, this is just a warning, so I'll ignore it for now |
| 08:51:07 | <ski> | so the ambiguity is between `stock' and `anyclass', for `Show', i think |
| 08:51:09 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 08:51:19 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 08:52:01 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 08:52:34 | <ski> | hm |
| 08:54:39 | <bahamas> | I have a question regarding records and json. I know that one pattern is to prefix each record field to prevent clashes. for example data User = { uName :: Text, uAge :: Int }. but the incoming json is usually { name: "foo", age: 26 }. is there a way to handle this automatically? |
| 08:55:50 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 264 seconds) |
| 08:55:55 | → | kritzefitz joins (~kritzefit@p548c9398.dip0.t-ipconnect.de) |
| 08:56:01 | <kuribas> | bahamas: the duplicaterecordfields extension |
| 08:56:38 | <kuribas> | bahamas: And if you use that, the namedFieldPuns and recordWildCards extensions are very handy. |
| 08:56:48 | <kuribas> | Because it makes manipulating records much easier. |
| 08:56:50 | → | thc202 joins (~thc202@unaffiliated/thc202) |
| 08:57:30 | → | ubert joins (~Thunderbi@p200300ecdf25d975e6b318fffe838f33.dip0.t-ipconnect.de) |
| 08:57:51 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 08:58:12 | <xsperry> | IIRC json will handle it automatically if your field names start with data name. so data User = { userName :: Text, userAge :: Int } |
| 08:58:25 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 08:58:40 | <kuribas> | bahamas: or alternatively you can also use a conversion function in the genericToJSON |
| 08:58:53 | <kuribas> | xsperry: that's not automatic, you need to write it yourself. |
| 08:59:06 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:00:07 | × | MichaelHoffmannb quits (brisadmozi@gateway/shell/matrix.org/x-cvnnmjtfpdwpnugh) (Quit: Idle for 30+ days) |
| 09:00:28 | <kuribas> | bahamas: https://hackage.haskell.org/package/aeson-1.5.6.0/docs/Data-Aeson.html#v:fieldLabelModifier |
| 09:00:43 | <bahamas> | kuribas: yeah. that's my current solution |
| 09:01:02 | <kuribas> | bahamas: then what is the question? |
| 09:01:07 | <bahamas> | kuribas: that involves copying a JsonUtils file in all projects. I was wondering if someone abstracted this |
| 09:01:11 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 09:01:20 | <kuribas> | JsonUtils? |
| 09:01:24 | <kuribas> | it's part of Aeson |
| 09:01:33 | <bahamas> | kuribas: that's just how I named the file |
| 09:01:40 | <kuribas> | And how much more abstraction do you want then genericToJSON? |
| 09:02:06 | <kuribas> | you can always write, myCustomToJSON = genericToJSON optionOverrides |
| 09:02:09 | <bahamas> | kuribas: https://bpa.st/DLGA |
| 09:02:23 | <bahamas> | this is my current implementation |
| 09:03:00 | <kuribas> | bahamas: and? |
| 09:03:05 | <kuribas> | I don't see the problem |
| 09:03:11 | <bahamas> | hey, I was just wondering if anybody did this. maybe it's not general enough or maybe it's not worth making a library out of it |
| 09:03:21 | <bahamas> | it's ok if that's the case. I just thought I'd ask |
| 09:03:48 | → | Franciman joins (~francesco@host-79-53-62-46.retail.telecomitalia.it) |
| 09:05:01 | <kuribas> | that would be very useful IMO... |
| 09:05:06 | <kuribas> | wouldn't |
| 09:05:15 | <kuribas> | it's fairly easy to implement |
| 09:06:00 | → | wonko7 joins (~wonko7@45.15.17.60) |
| 09:06:03 | <bahamas> | sure. at the same time, I think the pattern of prefixing labels with lowercase letters is widespread. so it could be an alternative option provided by aeson |
| 09:06:16 | <bahamas> | but I don't have strong feelings for this. it's just a thought |
| 09:07:02 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:07:40 | × | Cale quits (~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) (Ping timeout: 276 seconds) |
| 09:07:44 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 09:08:57 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 09:09:46 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:09:55 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 265 seconds) |
| 09:13:34 | → | olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber) |
| 09:14:21 | × | cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 09:20:37 | × | lupulin quits (~lupulo@163.117.64.56) (Remote host closed the connection) |
| 09:21:03 | → | hidedagger joins (~nate@unaffiliated/hidedagger) |
| 09:21:07 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 09:21:55 | → | darjeeling_ joins (~darjeelin@122.245.208.187) |
| 09:22:44 | → | fuzzypixelz joins (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
| 09:22:52 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 09:24:21 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:d4ca:3dbb:1110:af82) (Remote host closed the connection) |
| 09:24:25 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:26:04 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 09:26:09 | × | arianvp quits (~weechat@arianvp.me) (Ping timeout: 244 seconds) |
| 09:27:01 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 09:28:15 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:28:21 | → | arianvp joins (~weechat@arianvp.me) |
| 09:29:45 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 09:30:24 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:31:00 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 09:31:39 | → | Mrbuck joins (~Mrbuck@gateway/tor-sasl/mrbuck) |
| 09:31:53 | × | azure1 quits (~azure@103.154.230.130) (Ping timeout: 256 seconds) |
| 09:32:55 | → | azure1 joins (~azure@103.154.230.130) |
| 09:34:15 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:36:48 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 09:37:09 | × | kritzefitz quits (~kritzefit@p548c9398.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 09:37:28 | → | kritzefitz joins (~kritzefit@2003:5b:203b:200::10:49) |
| 09:39:46 | × | GZJ0X_ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 09:40:08 | → | son0p joins (~son0p@181.58.39.182) |
| 09:40:24 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 09:40:47 | <Mrbuck> | ?? |
| 09:41:06 | <Mrbuck> | quit message |
| 09:41:21 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:42:51 | × | kuribas quits (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) (Read error: Connection reset by peer) |
| 09:43:04 | → | kuribas joins (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) |
| 09:43:21 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 09:43:53 | <pjb> | Mrbuck: :-) |
| 09:44:36 | × | average quits (uid473595@gateway/web/irccloud.com/x-ngtcmmwtbxjkvcum) (Quit: Connection closed for inactivity) |
| 09:45:46 | → | dddddd_ joins (~dddddd@unaffiliated/dddddd) |
| 09:47:05 | × | DirefulSalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 09:47:24 | → | DirefulSalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) |
| 09:49:11 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:49:46 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Remote host closed the connection) |
| 09:52:34 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 09:55:44 | → | aarvar joins (~foewfoiew@2601:602:a080:fa0:49ff:dc3d:e55f:8dd) |
| 09:55:55 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 09:56:16 | × | hidedagger quits (~nate@unaffiliated/hidedagger) (Quit: WeeChat 3.1) |
| 09:56:27 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 09:56:50 | → | juri_ joins (~juri@212.86.35.86) |
| 09:56:56 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 240 seconds) |
| 09:57:29 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 09:58:17 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 10:00:04 | → | ryxai joins (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) |
| 10:00:18 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 10:04:59 | → | acidjnk_new joins (~acidjnk@p200300d0c72b958398d78e73e557de79.dip0.t-ipconnect.de) |
| 10:05:31 | × | maroloccio_ quits (~marolocci@pousada3ja.mma.com.br) (Read error: Connection reset by peer) |
| 10:06:35 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds) |
| 10:08:02 | → | maroloccio_ joins (~marolocci@pousada3ja.mma.com.br) |
| 10:08:22 | → | Noldorin joins (~noldorin@unaffiliated/noldorin) |
| 10:09:27 | → | DavidEichmann joins (~david@47.27.93.209.dyn.plus.net) |
| 10:13:15 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 256 seconds) |
| 10:13:21 | × | waleee-cl quits (uid373333@gateway/web/irccloud.com/x-vadqztdqpenulmke) (Quit: Connection closed for inactivity) |
| 10:15:34 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 10:17:53 | → | Lycurgus joins (~niemand@98.4.116.165) |
| 10:19:42 | → | stree joins (~stree@68.36.8.116) |
| 10:19:49 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 10:20:39 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 10:21:31 | × | ukari quits (~ukari@unaffiliated/ukari) (Ping timeout: 272 seconds) |
| 10:22:48 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Client Quit) |
| 10:22:52 | × | plutoniix quits (~q@ppp-27-55-82-213.revip3.asianet.co.th) (Quit: Leaving) |
| 10:23:40 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 10:24:39 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 10:25:25 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 10:26:50 | → | fendor joins (~fendor@91.141.1.53.wireless.dyn.drei.com) |
| 10:27:58 | × | malumore quits (~malumore@151.62.115.239) (Ping timeout: 245 seconds) |
| 10:34:35 | → | dandart joins (~Thunderbi@home.dandart.co.uk) |
| 10:35:36 | × | Noldorin quits (~noldorin@unaffiliated/noldorin) (Quit: Textual IRC Client: www.textualapp.com) |
| 10:39:27 | × | ryxai quits (~textual@pool-71-183-41-241.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 10:39:38 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 10:40:31 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 10:40:52 | × | HiRE quits (~HiRE@104.128.237.40) (Quit: Later) |
| 10:41:16 | → | HiRE joins (~HiRE@2602:ffc5:20::1:512e) |
| 10:43:07 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 10:43:14 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 10:43:28 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 10:44:07 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 10:44:28 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 10:47:58 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 245 seconds) |
| 10:50:20 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 10:51:37 | × | Mrbuck quits (~Mrbuck@gateway/tor-sasl/mrbuck) (Quit: WeeChat 2.8) |
| 10:53:29 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 10:53:32 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 256 seconds) |
| 10:53:51 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 10:54:16 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 10:54:48 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 10:54:52 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 260 seconds) |
| 10:54:54 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 10:54:59 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 10:57:44 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Read error: Connection reset by peer) |
| 10:58:38 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 10:58:57 | × | Lycurgus quits (~niemand@98.4.116.165) (Quit: Exeunt) |
| 11:01:17 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 260 seconds) |
| 11:02:27 | × | dddddd_ quits (~dddddd@unaffiliated/dddddd) (Ping timeout: 260 seconds) |
| 11:05:09 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 11:05:35 | × | fuzzypixelz quits (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Leaving.) |
| 11:05:43 | → | Nahra joins (~user@static.161.95.99.88.clients.your-server.de) |
| 11:05:52 | → | hacxman joins (~hexo@gateway/tor-sasl/hexo) |
| 11:05:57 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
| 11:06:12 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:06:15 | × | hexo quits (~hexo@gateway/tor-sasl/hexo) (Ping timeout: 268 seconds) |
| 11:06:15 | × | xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Ping timeout: 268 seconds) |
| 11:06:16 | hacxman | is now known as hexo |
| 11:06:17 | → | xelxebar_ joins (~xelxebar@gateway/tor-sasl/xelxebar) |
| 11:06:42 | × | xourt quits (d4c620ea@212-198-32-234.rev.numericable.fr) (Ping timeout: 240 seconds) |
| 11:07:37 | × | dandart quits (~Thunderbi@home.dandart.co.uk) (Quit: dandart) |
| 11:08:08 | → | dandart joins (~Thunderbi@home.dandart.co.uk) |
| 11:08:39 | × | geowiesnot_bis quits (~user@87-89-181-157.abo.bbox.fr) (Quit: geowiesnot_bis) |
| 11:09:04 | → | geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) |
| 11:11:15 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds) |
| 11:11:30 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:12:30 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 11:13:30 | × | ph88_ quits (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) (Ping timeout: 268 seconds) |
| 11:15:13 | × | Nahra quits (~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection) |
| 11:15:20 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 11:16:04 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 11:16:21 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection) |
| 11:16:35 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 240 seconds) |
| 11:17:02 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 11:17:12 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:17:26 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:18:57 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 11:20:00 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 11:20:39 | × | yaroot quits (~yaroot@138.102.13.160.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat) |
| 11:21:07 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection) |
| 11:21:26 | → | yaroot joins (~yaroot@138.102.13.160.dy.iij4u.or.jp) |
| 11:21:51 | → | Alleria joins (~textual@mskresolve-a.mskcc.org) |
| 11:22:00 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:22:14 | Alleria | is now known as Guest8601 |
| 11:22:53 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 11:23:33 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 11:23:38 | → | machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca) |
| 11:25:48 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Remote host closed the connection) |
| 11:26:45 | → | Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas) |
| 11:27:11 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 11:28:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:28:08 | <Uniaika> | maralorn: hi! Could you update hlint in nixpkgs to provide v3.3 ? |
| 11:28:49 | → | is_null_ joins (~jpic@pdpc/supporter/professional/is-null) |
| 11:29:08 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 11:29:26 | × | geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds) |
| 11:30:17 | <maralorn> | Uniaika: You have found the right person to blame. I am the one who pinned hlint to the older version, because it uses ghc-lib 9.0, but hls does not support that yet. You just want the plain hlint to be 3.3? |
| 11:30:48 | <Uniaika> | maralorn: ideally? I was mostly thinking of hlint, not haskellPackage.hlint |
| 11:31:07 | <Uniaika> | maralorn: and yes, https://search.nixos.org/packages has listed you as the maintainer :P |
| 11:31:11 | → | malumore joins (~malumore@151.62.115.239) |
| 11:31:24 | <maralorn> | Uniaika: Oh, I forgot.^^ |
| 11:31:29 | <Uniaika> | :-D |
| 11:31:47 | <maralorn> | Uniaika: Yeah, okay, I can look into that until fridays merge. |
| 11:32:05 | <Uniaika> | <3 |
| 11:32:15 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 240 seconds) |
| 11:33:55 | × | Neuromancer quits (~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 276 seconds) |
| 11:35:07 | → | esp32_prog joins (esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) |
| 11:36:59 | → | _Alleria joins (~AllahuAkb@2603-7000-3040-0000-b174-32cd-b29a-dcb9.res6.spectrum.com) |
| 11:38:19 | × | Unhammer quits (~Unhammer@gateway/tor-sasl/unhammer) (Ping timeout: 268 seconds) |
| 11:38:47 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds) |
| 11:39:27 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:39:38 | × | Alleria_ quits (~AllahuAkb@69.202.254.168) (Ping timeout: 245 seconds) |
| 11:40:23 | × | hexfifty quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.) |
| 11:43:15 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 11:44:21 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 264 seconds) |
| 11:47:51 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 11:50:25 | × | dftxbs3e quits (~dftxbs3e@unaffiliated/dftxbs3e) (Remote host closed the connection) |
| 11:51:05 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 11:52:26 | × | Amanda3 quits (~Amanda@139.28.218.148) (Remote host closed the connection) |
| 11:55:09 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 11:58:31 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 11:59:47 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
| 11:59:54 | × | p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Remote host closed the connection) |
| 12:00:23 | → | p8m joins (p8m@gateway/vpn/protonvpn/p8m) |
| 12:00:47 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 260 seconds) |
| 12:03:02 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 264 seconds) |
| 12:08:57 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 12:09:11 | → | peanut_ joins (~peanut_@2a02:8388:a101:2600:4b2:18d8:9396:5c4f) |
| 12:09:14 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 12:09:36 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 12:14:41 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 12:15:20 | → | codygman` joins (~user@47.186.207.161) |
| 12:18:02 | × | poscat quits (~poscat@2408:8207:4823:b150::1) (Ping timeout: 264 seconds) |
| 12:18:30 | → | Nahra joins (~Nahra@unaffiliated/nahra) |
| 12:20:53 | × | gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 12:22:42 | × | geekosaur quits (82650c7a@130.101.12.122) (Ping timeout: 240 seconds) |
| 12:25:50 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 12:26:53 | → | ep1ctetus joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 12:27:24 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 12:28:01 | → | ph88_ joins (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) |
| 12:28:09 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 264 seconds) |
| 12:28:45 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 264 seconds) |
| 12:30:33 | × | jneira quits (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182) (Ping timeout: 264 seconds) |
| 12:32:10 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 12:32:21 | → | tinhatcat joins (~tsranso@108-91-101-161.lightspeed.gnvlsc.sbcglobal.net) |
| 12:34:26 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 12:34:41 | → | Tario joins (~Tario@201.192.165.173) |
| 12:35:02 | × | kuribas quits (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) (Read error: Connection reset by peer) |
| 12:36:05 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 12:37:02 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 12:37:30 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 12:38:35 | × | son0p quits (~son0p@181.58.39.182) (Quit: Lost terminal) |
| 12:38:58 | → | geekosaur joins (82650c7a@130.101.12.122) |
| 12:39:52 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 12:40:01 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 256 seconds) |
| 12:40:59 | → | stree joins (~stree@68.36.8.116) |
| 12:41:03 | × | fryguybob quits (~fryguybob@cpe-74-65-31-113.rochester.res.rr.com) (Ping timeout: 246 seconds) |
| 12:41:53 | × | tinhatcat quits (~tsranso@108-91-101-161.lightspeed.gnvlsc.sbcglobal.net) (Quit: Leaving) |
| 12:42:21 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Remote host closed the connection) |
| 12:44:21 | × | maroloccio_ quits (~marolocci@pousada3ja.mma.com.br) (Quit: WeeChat 2.3) |
| 12:44:36 | → | jacks2 joins (~bc8134e3@217.29.117.252) |
| 12:44:38 | → | shaunm joins (~shaunm@185.204.1.185) |
| 12:45:18 | → | knupfer joins (~Thunderbi@i59F7FF52.versanet.de) |
| 12:48:26 | × | Yumasi quits (~guillaume@2a01:e0a:5cb:4430:ba39:67f5:3885:dbb6) (Ping timeout: 240 seconds) |
| 12:48:52 | → | Yumasi joins (~guillaume@static-176-175-104-214.ftth.abo.bbox.fr) |
| 12:49:28 | × | esp32_prog quits (esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) (Remote host closed the connection) |
| 12:49:59 | → | esp32_prog joins (esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) |
| 12:51:45 | × | esp32_prog quits (esp32_prog@gateway/vpn/mullvad/esp32prog/x-46565127) (Remote host closed the connection) |
| 12:52:29 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 12:53:11 | → | fryguybob joins (~fryguybob@cpe-74-65-31-113.rochester.res.rr.com) |
| 12:53:22 | × | is_null_ quits (~jpic@pdpc/supporter/professional/is-null) (Read error: Connection reset by peer) |
| 12:53:28 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 12:53:57 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 12:54:23 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 12:54:42 | → | timCF joins (~i.tkachuk@200-149-20-81.sta.estpak.ee) |
| 12:56:52 | → | Nahra` joins (~user@static.161.95.99.88.clients.your-server.de) |
| 12:57:36 | <timCF> | Hello! Does anybody know, in case where package A has conditional compilation dependent on version of package B, and I'm using package A as dependency in my project, and I do override version of B in my stack.yaml file, will package A respect my overrided version of B, or it will use its own? |
| 12:58:00 | <timCF> | I'm talking about usage of CPP extension |
| 12:58:48 | × | Nahra quits (~Nahra@unaffiliated/nahra) (Quit: leaving) |
| 12:59:16 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 12:59:19 | × | Nahra` quits (~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection) |
| 12:59:33 | <timCF> | Macro expression like if MIN_VERSION_A(X,Y,Z) ... else ... endif |
| 13:00:15 | <edwardk> | timCF: you'll get one copy of any individual lib in a normal build plan, so if you disable feature flags on it, it'll have those features off for all customers. you'll only see MIN_VERSION_foo macros for libs you directly depend on though |
| 13:00:20 | <edwardk> | so not sure if that's what you're asking |
| 13:00:59 | <edwardk> | if foo depends on bar, and bar has some flag enabled in your stack.yaml or cabal.project, and baz depends on foo then you'll get bar with the flag enabled. |
| 13:01:07 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 272 seconds) |
| 13:01:14 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 13:01:29 | <edwardk> | but basically cabal internally doesn't have any way to specify this package depends on that package with a given flag set one way or another. |
| 13:01:39 | → | Nahra joins (~user@unaffiliated/nahra) |
| 13:01:40 | <timCF> | edwardk: that's what I was looking for, thanks! |
| 13:01:42 | <edwardk> | other than through the cabal.project or stack.yaml |
| 13:02:39 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 13:02:46 | <edwardk> | sometimes folks will ship packages with options to remove functionality that isn't commonly needed, e.g. -f-comonad or something, for customers that know they'll never use the comonad instances, but they are generally unsupported configurations |
| 13:02:53 | <edwardk> | at least that is my practice |
| 13:03:35 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 240 seconds) |
| 13:04:38 | × | codygman` quits (~user@47.186.207.161) (Remote host closed the connection) |
| 13:05:22 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 13:06:10 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 13:06:24 | → | codygman__ joins (~user@47.186.207.161) |
| 13:07:11 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:07:33 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:08:12 | × | codygman__ quits (~user@47.186.207.161) (Remote host closed the connection) |
| 13:09:06 | → | alx741 joins (~alx741@186.178.108.164) |
| 13:09:23 | → | codygman__ joins (~user@47.186.207.161) |
| 13:09:51 | → | ddellac__ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 13:11:05 | × | codygman__ quits (~user@47.186.207.161) (Remote host closed the connection) |
| 13:11:11 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:11:14 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 13:11:27 | → | is_null_ joins (~jpic@pdpc/supporter/professional/is-null) |
| 13:11:28 | → | codygman__ joins (~user@47.186.207.161) |
| 13:11:31 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:12:12 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:12:32 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:13:09 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Read error: Connection reset by peer) |
| 13:13:30 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:13:33 | × | dandart quits (~Thunderbi@home.dandart.co.uk) (Quit: dandart) |
| 13:13:39 | × | ubert quits (~Thunderbi@p200300ecdf25d975e6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
| 13:13:52 | → | dandart joins (~Thunderbi@home.dandart.co.uk) |
| 13:14:02 | × | codygman__ quits (~user@47.186.207.161) (Remote host closed the connection) |
| 13:14:24 | → | codygman__ joins (~user@47.186.207.161) |
| 13:14:43 | × | timCF quits (~i.tkachuk@200-149-20-81.sta.estpak.ee) (Quit: leaving) |
| 13:14:58 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 265 seconds) |
| 13:15:03 | × | DavidEichmann quits (~david@47.27.93.209.dyn.plus.net) (Ping timeout: 272 seconds) |
| 13:15:12 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:15:26 | → | DavidEichmann joins (~david@47.27.93.209.dyn.plus.net) |
| 13:15:35 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 240 seconds) |
| 13:15:35 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:17:11 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:17:34 | → | GZJ0X__ joins (~gzj@unaffiliated/gzj) |
| 13:18:26 | × | ph88_ quits (~ph88@2a02:8109:9e00:7e5c:4978:201f:ec35:67e9) (Ping timeout: 240 seconds) |
| 13:19:12 | → | Deide joins (~Deide@217.155.19.23) |
| 13:19:14 | × | GZJ0X__ quits (~gzj@unaffiliated/gzj) (Remote host closed the connection) |
| 13:19:26 | × | ddellac__ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 13:19:53 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 13:21:07 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 13:22:38 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 13:23:24 | × | codygman__ quits (~user@47.186.207.161) (Remote host closed the connection) |
| 13:23:46 | → | codygman__ joins (~user@47.186.207.161) |
| 13:25:15 | → | carlomagno joins (~cararell@148.87.23.9) |
| 13:25:53 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 244 seconds) |
| 13:26:14 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 13:26:33 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 13:27:16 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 13:27:27 | → | epicte7us joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 13:27:56 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 240 seconds) |
| 13:30:16 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 276 seconds) |
| 13:30:37 | × | ep1ctetus quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Ping timeout: 260 seconds) |
| 13:31:06 | × | jacks2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/) |
| 13:35:26 | × | is_null_ quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 264 seconds) |
| 13:35:57 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 272 seconds) |
| 13:37:03 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 13:37:10 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 13:41:50 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 256 seconds) |
| 13:42:47 | → | __minoru__shirae joins (~shiraeesh@46.34.207.185) |
| 13:44:16 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 13:45:17 | → | ddellac__ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 13:45:44 | × | geekosaur quits (82650c7a@130.101.12.122) (Quit: Connection closed) |
| 13:46:51 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 13:47:00 | × | jespada quits (~jespada@90.254.243.187) (Ping timeout: 258 seconds) |
| 13:47:28 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 13:47:49 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 13:47:57 | × | __minoru__shirae quits (~shiraeesh@46.34.207.185) (Ping timeout: 264 seconds) |
| 13:47:58 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 245 seconds) |
| 13:49:24 | → | idhugo_ joins (~idhugo@80-62-117-136-mobile.dk.customer.tdc.net) |
| 13:49:40 | → | jespada joins (~jespada@90.254.243.187) |
| 13:52:14 | × | idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 264 seconds) |
| 13:52:26 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds) |
| 13:53:06 | → | mouseghost joins (~draco@87-206-9-185.dynamic.chello.pl) |
| 13:53:06 | × | mouseghost quits (~draco@87-206-9-185.dynamic.chello.pl) (Changing host) |
| 13:53:06 | → | mouseghost joins (~draco@wikipedia/desperek) |
| 13:54:40 | × | xff0x quits (~xff0x@2001:1a81:53c9:9f00:9d06:569d:fae7:bd39) (Ping timeout: 258 seconds) |
| 13:55:23 | → | xff0x joins (~xff0x@2001:1a81:53c9:9f00:6a34:c608:ac81:347c) |
| 13:56:18 | → | Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net) |
| 13:56:26 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 13:57:26 | → | o1lo01ol1o joins (~o1lo01ol1@bl7-88-181.dsl.telepac.pt) |
| 13:57:45 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 13:58:53 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 13:58:57 | × | Guest8601 quits (~textual@mskresolve-a.mskcc.org) (Ping timeout: 244 seconds) |
| 13:59:14 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 14:00:01 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 14:00:48 | × | Kaiepi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 14:00:51 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
| 14:01:03 | × | emmanuel_erc quits (~user@cpe-74-71-106-64.nyc.res.rr.com) (Ping timeout: 256 seconds) |
| 14:01:16 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 14:01:22 | → | Alleria joins (~textual@zrcout.mskcc.org) |
| 14:01:33 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 14:01:47 | Alleria | is now known as Guest39025 |
| 14:01:54 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 14:02:14 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 14:02:57 | → | Lycurgus joins (~niemand@98.4.116.165) |
| 14:03:36 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 14:03:56 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 14:04:50 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 264 seconds) |
| 14:06:22 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 14:08:58 | <gentauro> | edwardk: they do that so you can have faster compile-times? |
| 14:12:29 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 14:13:36 | → | jumper149 joins (~jumper149@130.75.103.190) |
| 14:13:44 | × | jumper149 quits (~jumper149@130.75.103.190) (Client Quit) |
| 14:14:58 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 14:16:00 | <edwardk> | gentauro: yeah |
| 14:16:40 | <edwardk> | gentauro: i'll generally take patches that let you conditionally compile without some subset of packages if it cleanly splits out of the api |
| 14:17:42 | <edwardk> | then folks who do sandbox builds (or now just cabal v2 builds) or stack builds can benefit by tuning down the sandbox or cabal.project or stack .yaml file to exclude what isn't needed for their application. can be quite useful on CI in particular. |
| 14:23:21 | × | DirefulSalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection) |
| 14:23:43 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 256 seconds) |
| 14:24:08 | → | DirefulSalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) |
| 14:24:34 | × | ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Remote host closed the connection) |
| 14:24:53 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 14:25:33 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 14:25:37 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 14:25:45 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 14:25:55 | × | ddellac__ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 14:25:56 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 14:26:23 | → | Foritus joins (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) |
| 14:27:36 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 14:27:41 | × | dawiss quits (~dawiss@178.43.197.203.ipv4.supernova.orange.pl) (Ping timeout: 256 seconds) |
| 14:28:11 | → | bitmapper joins (uid464869@gateway/web/irccloud.com/x-ebwsglbljqlehoxu) |
| 14:29:16 | → | dawiss joins (~dawiss@185-119-185-201.actus-info.pl) |
| 14:29:26 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 14:30:59 | × | Lycurgus quits (~niemand@98.4.116.165) (Quit: Exeunt) |
| 14:31:08 | × | epicte7us quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Ping timeout: 256 seconds) |
| 14:31:56 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 14:32:15 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 14:33:15 | → | kuribas joins (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) |
| 14:33:18 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-04c4-76ab-ac37-8670.res6.spectrum.com) |
| 14:35:00 | → | pavonia joins (~user@unaffiliated/siracusa) |
| 14:35:57 | → | marinelli joins (~marinelli@gateway/tor-sasl/marinelli) |
| 14:36:42 | → | malumore_ joins (~malumore@151.62.115.239) |
| 14:37:16 | → | romesrf joins (~romesrf@44.190.189.46.rev.vodafone.pt) |
| 14:37:26 | <romesrf> | hello |
| 14:38:26 | <romesrf> | can someone explain/point me to where i can read about what the things in between {} means? newtype Church = Church { unChurch :: ChurchNum } |
| 14:39:55 | × | malumore quits (~malumore@151.62.115.239) (Ping timeout: 272 seconds) |
| 14:40:28 | × | juri_ quits (~juri@212.86.35.86) (Read error: Connection reset by peer) |
| 14:40:58 | <sclv> | romesrf: that's knows as "record syntax" and its in all the standard tutorials and documentation |
| 14:41:00 | → | juri_ joins (~juri@212.86.35.86) |
| 14:44:04 | → | epicte7us joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 14:45:13 | <romesrf> | sclv: perfect! record syntax - that was exactly it, i've found nice docs :) |
| 14:48:01 | → | samthecoy[m]1 joins (samthecoym@gateway/shell/matrix.org/x-dyjfykhwbtubhalr) |
| 14:49:13 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 256 seconds) |
| 14:50:10 | × | jlamothe quits (~jlamothe@198.251.55.207) (Quit: leaving) |
| 14:51:09 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 265 seconds) |
| 14:53:54 | malumore_ | is now known as malumore |
| 14:54:45 | × | dawiss quits (~dawiss@185-119-185-201.actus-info.pl) (Ping timeout: 244 seconds) |
| 14:56:22 | → | dawiss joins (~dawiss@178.43.197.203.ipv4.supernova.orange.pl) |
| 15:00:14 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Remote host closed the connection) |
| 15:00:51 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 15:01:28 | → | ubert joins (~Thunderbi@p200300ecdf25d975e6b318fffe838f33.dip0.t-ipconnect.de) |
| 15:02:22 | → | stree joins (~stree@68.36.8.116) |
| 15:02:54 | × | aqd quits (~aqd@84.20.147.33) (Quit: Textual IRC Client: www.textualapp.com) |
| 15:04:38 | → | Synthetica joins (uid199651@gateway/web/irccloud.com/x-pidwjwkshsuukvyi) |
| 15:05:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 264 seconds) |
| 15:06:35 | → | waleee-cl joins (uid373333@gateway/web/irccloud.com/x-uhyhmepkjdyoglfc) |
| 15:06:49 | × | seanparsons quits (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net) (Quit: ZNC 1.8.1 - https://znc.in) |
| 15:07:05 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 15:07:09 | → | elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) |
| 15:07:22 | → | ukari joins (~ukari@unaffiliated/ukari) |
| 15:07:28 | → | seanparsons joins (~sean@cpc145088-gill21-2-0-cust281.20-1.cable.virginm.net) |
| 15:07:33 | → | ozataman joins (~ozataman@pool-151-202-25-12.nycmny.fios.verizon.net) |
| 15:10:35 | → | jlamothe joins (~jlamothe@198.251.55.207) |
| 15:12:27 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds) |
| 15:15:11 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 15:17:48 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 15:19:12 | × | epicte7us quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Remote host closed the connection) |
| 15:19:28 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection) |
| 15:19:31 | → | epicte7us joins (~epictetus@ip72-194-215-136.sb.sd.cox.net) |
| 15:19:45 | × | urodna quits (~urodna@unaffiliated/urodna) (Read error: Connection reset by peer) |
| 15:19:45 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-04c4-76ab-ac37-8670.res6.spectrum.com) (Read error: Connection reset by peer) |
| 15:19:54 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 15:19:55 | × | hexagoxel quits (~hexagoxel@2a01:4f8:c0c:e::2) (Ping timeout: 240 seconds) |
| 15:19:55 | × | yushyin quits (Q5ik5TuR5I@karif.server-speed.net) (Ping timeout: 240 seconds) |
| 15:20:15 | → | yushyin joins (lkZmV9yVXV@karif.server-speed.net) |
| 15:20:23 | × | elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds) |
| 15:20:33 | → | urodna joins (~urodna@unaffiliated/urodna) |
| 15:20:38 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 15:20:57 | → | hexagoxel joins (~hexagoxel@hexagoxel.de) |
| 15:21:33 | × | raym quits (~ray@115.187.32.14) (Quit: leaving) |
| 15:22:33 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 245 seconds) |
| 15:23:22 | → | Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net) |
| 15:25:06 | × | xff0x quits (~xff0x@2001:1a81:53c9:9f00:6a34:c608:ac81:347c) (Ping timeout: 268 seconds) |
| 15:25:36 | → | xff0x joins (~xff0x@2001:1a81:53c9:9f00:27ac:86d9:28a4:2240) |
| 15:25:36 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 15:25:50 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 15:25:57 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 15:27:01 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 15:29:39 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 15:30:23 | → | Waifod joins (~Waifod@91.106.123.186) |
| 15:31:20 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 15:31:43 | × | thc202 quits (~thc202@unaffiliated/thc202) (Read error: Connection reset by peer) |
| 15:32:54 | × | idhugo_ quits (~idhugo@80-62-117-136-mobile.dk.customer.tdc.net) (Ping timeout: 256 seconds) |
| 15:33:35 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 15:34:23 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:35:50 | <romesrf> | and what's the "$" called? |
| 15:36:43 | <peanut_> | application |
| 15:37:22 | <monochrom> | root of all evil :) |
| 15:37:33 | × | s00pcan quits (~chris@075-133-056-178.res.spectrum.com) (Ping timeout: 272 seconds) |
| 15:37:35 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 268 seconds) |
| 15:37:52 | <romesrf> | monochrom: T_T |
| 15:37:55 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds) |
| 15:37:58 | <romesrf> | ahahaha |
| 15:38:08 | → | s00pcan joins (~chris@107.181.165.217) |
| 15:38:09 | <romesrf> | peanut_: ty |
| 15:43:37 | → | thc202 joins (~thc202@unaffiliated/thc202) |
| 15:44:34 | → | jb55 joins (~jb55@gateway/tor-sasl/jb55) |
| 15:44:49 | <marinelli> | hi everyone |
| 15:45:27 | <marinelli> | some of you has some experience with TextShow? |
| 15:49:29 | <tomsmeding> | romesrf: https://hackage.haskell.org/package/base-4.14.0.0/docs/Prelude.html#v:-36- |
| 15:50:10 | → | geekosaur joins (ac3a8f06@172.58.143.6) |
| 15:53:45 | → | Mzg joins (Mzg@s1.ct8.pl) |
| 15:54:19 | <ij> | I would like to have a "data Foo" data type that could have two different inside of it which should be statically typed. i.e. not either |
| 15:54:30 | × | jb55 quits (~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection) |
| 15:54:58 | <merijn> | ij: What's the problem? |
| 15:55:01 | <ij> | writing now |
| 15:55:13 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) |
| 15:55:23 | <ij> | It's going to be a Map Int (Set a) vor a Map Int Int. At one point, I'll go over to Map Int (Set a), because I'll need more information later, but at the beginning I don't need it. |
| 15:55:57 | <ij> | the Int in values is going to be the Set size. First I'll just +1 or join (sum) them, later I'll insert elements or join sets |
| 15:56:29 | <tomsmeding> | data Foo a where FooCount :: Map Int Int -> Foo Int ; FooSet :: Map Int (Set a) -> Foo (Set a) |
| 15:56:39 | <tomsmeding> | or, just, use Map Int Int and Map Int (Set a) directly? |
| 15:57:17 | <tomsmeding> | or is the point that you want to write functions that work on both representations? |
| 15:57:33 | <ij> | you can have a data with where? |
| 15:57:40 | <tomsmeding> | make both types an instance of a typeclass that implements the required functionality? |
| 15:57:44 | <tomsmeding> | ij: that Foo I wrote is a GADT |
| 15:57:57 | <tomsmeding> | 'data Foo where' is GADT syntax |
| 15:58:09 | <ij> | ok, I'd never seen that |
| 15:58:27 | <ij> | I'd only seen "data Foo = A | B" without any where clause |
| 15:58:44 | <tomsmeding> | it allows you to let the constructor restrict the type parameters |
| 15:58:46 | <tomsmeding> | like here |
| 15:58:54 | <peanut_> | data Foo a = A | B always create a "Foo a" |
| 16:00:17 | <tomsmeding> | ij: I'm not convinced a type class can't solve your problems :) |
| 16:00:17 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 16:00:29 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 16:00:32 | → | Sorny joins (~Sornaensi@077213203030.dynamic.telenor.dk) |
| 16:00:44 | <ij> | I was thinking that there's going to be a typeclass |
| 16:00:57 | <romesrf> | tomsmeding: nice! ty |
| 16:01:20 | <ij> | I was trying to program in my head while daydreaming and I was convinced I was missing something |
| 16:02:04 | → | Sornaensis joins (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) |
| 16:03:07 | <ij> | tomsmeding, could you whip that up in lambdabot? |
| 16:03:20 | <tomsmeding> | the type class thing? |
| 16:03:23 | <ij> | aha |
| 16:03:32 | <tomsmeding> | well the contents of the type class would kind of depend on what you're doing with those types :p |
| 16:03:59 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 16:04:22 | <tomsmeding> | % class IJthing a where onlySmallOnes :: a -> a |
| 16:04:23 | <yahb> | tomsmeding: |
| 16:04:37 | × | Sorna quits (~Sornaensi@79.142.232.102) (Ping timeout: 258 seconds) |
| 16:04:56 | <tomsmeding> | % instance IJthing (Map Int Int) where onlySmallOnes = M.filter (< 10) |
| 16:04:56 | <yahb> | tomsmeding: ; <interactive>:66:19: error:; Not in scope: type constructor or class `Map'; Perhaps you meant `M.Map' (imported from Data.Map) |
| 16:05:03 | <tomsmeding> | % instance IJthing (M.Map Int Int) where onlySmallOnes = M.filter (< 10) |
| 16:05:03 | <yahb> | tomsmeding: |
| 16:05:12 | × | Sorny quits (~Sornaensi@077213203030.dynamic.telenor.dk) (Ping timeout: 260 seconds) |
| 16:05:16 | <tomsmeding> | % instance IJthing (M.Map Int (Set a)) where onlySmallOnes = M.filter ((< 10) . Set.size) |
| 16:05:16 | <yahb> | tomsmeding: ; <interactive>:68:30: error:; Not in scope: type constructor or class `Set'; Perhaps you meant one of these: `S.Set' (imported from Data.Set), `Seq.Seq' (imported from Data.Sequence); <interactive>:68:79: error:; Not in scope: `Set.size'; Perhaps you meant `S.size' (imported from Data.Set); No module named `Set' is imported. |
| 16:05:20 | <tomsmeding> | % instance IJthing (M.Map Int (Set a)) where onlySmallOnes = M.filter ((< 10) . S.size) |
| 16:05:20 | <yahb> | tomsmeding: ; <interactive>:69:30: error:; Not in scope: type constructor or class `Set'; Perhaps you meant one of these: `S.Set' (imported from Data.Set), `Seq.Seq' (imported from Data.Sequence) |
| 16:05:24 | <tomsmeding> | % instance IJthing (M.Map Int (S.Set a)) where onlySmallOnes = M.filter ((< 10) . S.size) |
| 16:05:24 | <yahb> | tomsmeding: |
| 16:05:40 | <tomsmeding> | % onlySmallOnes (M.fromList [(1,1), (2,10), (3,5)]) |
| 16:05:40 | <yahb> | tomsmeding: ; <interactive>:71:1: error:; * No instance for (IJthing (M.Map Integer Integer)) arising from a use of `it'; * In the first argument of `print', namely `it'; In a stmt of an interactive GHCi command: print it |
| 16:05:50 | <tomsmeding> | % onlySmallOnes (M.fromList [(1,1), (2,10), (3,5)] :: M.Map Int Int) |
| 16:05:50 | <yahb> | tomsmeding: fromList [(1,1),(3,5)] |
| 16:06:16 | <tomsmeding> | % onlySmallOnes (M.fromList [(1,S.fromList [1]), (2,S.fromList [1..10]), (3,S.fromList [1..5])] :: M.Map Int (Set Int)) |
| 16:06:16 | <yahb> | tomsmeding: ; <interactive>:73:109: error:; Not in scope: type constructor or class `Set'; Perhaps you meant one of these: `S.Set' (imported from Data.Set), `Seq.Seq' (imported from Data.Sequence) |
| 16:06:21 | <tomsmeding> | % onlySmallOnes (M.fromList [(1,S.fromList [1]), (2,S.fromList [1..10]), (3,S.fromList [1..5])] :: M.Map Int (S.Set Int)) |
| 16:06:21 | <yahb> | tomsmeding: fromList [(1,fromList [1]),(3,fromList [1,2,3,4,5])] |
| 16:06:30 | → | fendor_ joins (~fendor@91.141.1.9.wireless.dyn.drei.com) |
| 16:06:31 | <tomsmeding> | ij: okay so ignoring all the errors, something like this :) |
| 16:06:58 | <tomsmeding> | where onlySmallOnes is one of the things you want to work for both types |
| 16:07:25 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 16:07:39 | <tomsmeding> | it would be nice if most of your functionality that you want to share over both types can be expressed in terms of a few, smallish base functions that you can put in the typeclass |
| 16:07:41 | <ski> | perhaps MPTC (with FD) or associated types could be an alternative |
| 16:07:57 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 16:08:11 | tomsmeding | is somewhat confused |
| 16:08:25 | <tomsmeding> | what associated type are you thinking about? |
| 16:08:48 | × | fendor quits (~fendor@91.141.1.53.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
| 16:08:58 | <ski> | associating `Int' with `Map Int Int' and `Set a' with `Map Int (Set a)' |
| 16:09:00 | → | average joins (uid473595@gateway/web/irccloud.com/x-mlwtnyrsvtyoarjl) |
| 16:09:12 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 16:09:25 | <ski> | (iow, not having a single type that have both maps as alternatives) |
| 16:09:41 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 16:09:45 | <tomsmeding> | or even a type family |
| 16:09:55 | <tomsmeding> | I guess the usefulness of that depends on what exactly ij wants to do |
| 16:09:59 | <ski> | yea |
| 16:10:50 | <ij> | !unabbr FD |
| 16:11:09 | <geekosaur> | functional dependency |
| 16:11:16 | <tomsmeding> | MPTC = multi-parameter type classes |
| 16:11:24 | <ij> | the other one is googleable |
| 16:11:32 | <tomsmeding> | fair |
| 16:12:51 | <ij> | I think a typeclass should be enough |
| 16:13:31 | <ij> | however, if I want to put my "two datas with their instances of a typeclass", i.e. IJThing a => a inside a "data Progress", then I need existential types? |
| 16:13:59 | <ski> | do you ? |
| 16:14:26 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 240 seconds) |
| 16:14:31 | <ij> | I thought I did |
| 16:14:37 | <ski> | (also, it would be `IJThing a *> a', since `IJThing a => a' is not that useful) |
| 16:14:48 | <ski> | i dunno. i don't know your requirements, what you have in mind |
| 16:14:58 | <tomsmeding> | ij: would that 'a' type variable also be a type parameter of 'Progress'? |
| 16:15:15 | <tomsmeding> | as in: data Progress a = Progress Something (IJThing a) SomethingElse |
| 16:15:19 | <ski> | presumably not (in case it's going to encode an existential) |
| 16:15:42 | <ij> | I realized I probably don't need that, I just need the typeclass functions |
| 16:16:18 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 16:16:28 | <tomsmeding> | ski: where is (*>) from? |
| 16:16:35 | <ij> | I was also wondering |
| 16:16:45 | <ski> | do you (a) ever need to be able to accept both alternatives in the same place, and determine which of the alternatives that you got; (b) perhaps only need to accept both in the same place, without needing to do a case distinction ? |
| 16:16:49 | <ski> | tomsmeding : no |
| 16:17:14 | <geekosaur> | @index (*>) |
| 16:17:15 | <lambdabot> | Control.Applicative, Prelude |
| 16:17:18 | <ski> | `*>' is to `=>' as `(,)' is to `(->)' as `exists' is to `forall' |
| 16:17:28 | <geekosaur> | oh, ski'sspecial syntax again |
| 16:17:53 | <tomsmeding> | can you even define that type operator? :p |
| 16:17:57 | <ski> | `*>' is pseudo-Haskell syntax that i'm using, usually together with `exists', in order to more efficiently communicate and elucidate about such matters |
| 16:18:00 | <ski> | ues |
| 16:18:02 | <ski> | yes |
| 16:18:13 | <tomsmeding> | with that semantic meaning |
| 16:18:15 | <ski> | data cxt *> a = cxt => Wrap a |
| 16:18:33 | <tomsmeding> | wait does that work? |
| 16:18:33 | <ski> | data cxt *> a where Wrap :: cxt => a -> (cxt *> a) |
| 16:18:50 | <tomsmeding> | that's cool |
| 16:18:51 | <ij> | ski, (a) no, only one. don't care which, as long as typeclass functions are there (b) don't need cases |
| 16:18:54 | <ski> | however, the way i'm using it, informally, it's without an explicit wrapping data constructor |
| 16:18:56 | → | vicfred joins (~vicfred@unaffiliated/vicfred) |
| 16:19:26 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: Lost terminal) |
| 16:19:27 | <tomsmeding> | I see |
| 16:19:43 | <ski> | `T -> (forall a. C a => F a)' is equivalent to `forall a. C a => (T -> F a)' |
| 16:19:48 | tomsmeding | always used existentials directly |
| 16:19:59 | <ski> | `(exists a. C a *> F a) -> T' is equivalent to `forall a. C a => (F a -> T)' |
| 16:20:20 | <ski> | existentials don't exist in Haskell (with extensions), directly |
| 16:20:20 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 16:20:33 | <ski> | you have to encode them (using one of two encodings, typically) |
| 16:20:35 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 16:20:37 | <tomsmeding> | data Progress = forall a. IJThing a => Progress Something (IJThing a) SomethingElse |
| 16:20:40 | <tomsmeding> | is what I was thinking about |
| 16:20:44 | <ski> | (sometimes you can use a recursive type, instead) |
| 16:20:52 | <tomsmeding> | you do have to wrap them |
| 16:20:53 | <ij> | tomsmeding, right |
| 16:20:58 | <ski> | that's the "existential data constructor" encoding |
| 16:21:07 | <tomsmeding> | ski: the other being CPS? |
| 16:21:12 | <ski> | yea, Church |
| 16:21:17 | <tomsmeding> | yeah I see |
| 16:21:33 | <ski> | however, note that `exists s. (s,s -> F s)' is `nu s. F s' |
| 16:22:01 | <ski> | (just like `forall o. (F o -> o) -> o' is `mu o. F o') |
| 16:22:37 | tomsmeding | knows nu and mu are greek letters |
| 16:22:42 | <ij> | (I think I'll be able to write it on the weekend now) |
| 16:22:54 | <ij> | tomsmeding, ski is light years ahead of me |
| 16:23:22 | <ski> | ij : ok, so it sounds like you don't need GADTs, then. try with type classes (probably with FD, if you need to go MPTC. or alternatively with AT. or maybe you could use a type family instead) |
| 16:23:54 | → | idhugo_ joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) |
| 16:24:04 | <ski> | tomsmeding : `mu' is least fixed-point, `nu' is greatest. `List a = mu r. 1 + a * r'. `Stream a = nu s. a * s' |
| 16:24:09 | <ij> | AT being? |
| 16:24:14 | → | conal joins (~conal@64.71.133.70) |
| 16:24:16 | <tomsmeding> | associated types |
| 16:24:18 | <ski> | Associated Types |
| 16:24:26 | <ij> | 🧐 |
| 16:24:33 | <tomsmeding> | modulo capitalisation |
| 16:24:50 | <ski> | Haskell blurs the distinction, by allowing infinite values everywhere. (e.g. `List a') |
| 16:25:39 | <ski> | tomsmeding : `cata :: Functor f => (f o -> o) -> (Mu f -> o)' and `ana :: Functor f => (s -> f s) -> (s -> Nu f)' |
| 16:25:40 | <tomsmeding> | what whould `nu r. 1 + a * r' be? |
| 16:25:55 | <ski> | type of potentially finite streams |
| 16:26:06 | <ski> | (iow, not necessarily infinite) |
| 16:26:26 | → | Neuromancer joins (~Neuromanc@unaffiliated/neuromancer) |
| 16:26:52 | → | howdoi joins (uid224@gateway/web/irccloud.com/x-uvokrbifiycmuqdg) |
| 16:26:55 | <tomsmeding> | right, so mu and nu are respectively the smallest and largest types such that the given algebraic equality holds? |
| 16:26:56 | <ski> | the idea is that with `mu', we're expecting "finite depth" (if we're talking trees, we could still e.g. have infinite width, infinite branching, but each branch would be of finite depth) |
| 16:26:58 | <tomsmeding> | sort-of |
| 16:27:08 | <ski> | yea |
| 16:27:25 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:28:10 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 16:28:30 | <ski> | e.g. `length' only terminates, for finite lists. so it's a partial function, if we're considering the type also including the infinite ones. but if we're only considering the subtype with the finite ones (which is not expressible in Haskell, so it has to be in our heads, and perhaps on paper proofs, &c.), then it's total |
| 16:28:48 | tomsmeding | nods |
| 16:29:02 | <tomsmeding> | I don't completely follow your exists<->nu and forall<->mu equivalences though |
| 16:29:14 | <ski> | @type unfoldr |
| 16:29:16 | <lambdabot> | (b -> Maybe (a, b)) -> b -> [a] |
| 16:29:19 | <maralorn> | Uniaika: Bumping hlint was only a minor headache (ghc-lib-parser compiles quite slow), but it is updated now and will be merged into master on friday. |
| 16:29:50 | <ski> | this is `(s -> Maybe (a,s)) -> (s -> nu s. Maybe (a,s))' -- generating a possibly-finite stream |
| 16:30:02 | <ij> | ski, what kind of mathematics is this? |
| 16:30:59 | <ski> | by recursively expanding each "seed"/"state" `s' (starting with the initially given one), we can eliminate all of them, getting a (possibly) infinite-depth result, a (co)recursive, coinductive data type |
| 16:31:15 | <tomsmeding> | right |
| 16:31:37 | <tomsmeding> | would 'mu r. a * r = nu r. a * r' ? |
| 16:31:39 | × | chele quits (~chele@ip5b40237d.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
| 16:32:04 | <ski> | s >---> F s >---> F (F s) >---> F (F (F s)) >---> ... >-> F (F (F (F (...))) = nu s. F s |
| 16:32:19 | <ij> | corecursion sounds like parsing |
| 16:33:13 | <ski> | mu r. F r = F (F (F (F (...))) >---> ... >---> F (F (F r)) >---> F (F r) >---> F r >---> r |
| 16:33:26 | <ski> | that's what `ana' and `cata' does |
| 16:33:43 | <peanut_> | 🤔 |
| 16:34:00 | <ski> | tomsmeding : no. `mu r. a * r' would be `0' |
| 16:34:01 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 16:34:12 | <tomsmeding> | lol |
| 16:34:13 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 16:34:19 | <tomsmeding> | I guess it satisfies the relation indeed |
| 16:34:20 | <ski> | with no starting points to generate from, you can't get off the ground |
| 16:34:48 | <ski> | ij : algebra / coalgebra |
| 16:35:16 | <siraben> | I wish Algebra of Programming went into coalgebras more |
| 16:35:23 | <siraben> | they only talked about least fixed points of functors which is Mu |
| 16:36:18 | → | son0p joins (~son0p@181.136.122.143) |
| 16:36:46 | <siraben> | IIRC there was some comprehensive overview bringing algebras, coalgebras and program calculation together |
| 16:36:54 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 16:36:55 | <siraben> | Ah yes, https://www.springer.com/gp/book/9783540436133 |
| 16:37:23 | <siraben> | ski: if Hask is not a category, what should one use to analyze Haskell programs? Does CCC suffice? |
| 16:38:05 | <sclv> | one uses Hask |
| 16:38:10 | × | kritzefitz quits (~kritzefit@2003:5b:203b:200::10:49) (Remote host closed the connection) |
| 16:38:18 | <sclv> | actual haskell doesn't correspond quite to Hask, but the total fragment does |
| 16:38:20 | ski | . o O ( "A Tutorial on (Co)Algebras and (Co)Induction" by Bart Jacobs,Jan Rutten in 1997 at <https://www.cs.ru.nl/B.Jacobs/PAPERS/JR.pdf> ) |
| 16:38:59 | <sclv> | so people do proofs in the total fragment and then make ad hoc arguments about how they extend to the language with partiality |
| 16:39:02 | <siraben> | ski: thanks for the reference. |
| 16:39:06 | → | heatsink_ joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 16:39:08 | <siraben> | Coalgebras should be given just as much weight! |
| 16:39:14 | <ski> | yes |
| 16:39:33 | <tomsmeding> | ski: I think I get the feeling, but I need to digest a bit more. Thanks for the intro :) |
| 16:39:34 | <ski> | coalgebras are related to state machines, dynamical systems, objects (in the sense of object-orientation) |
| 16:39:43 | <siraben> | sclv: something like "Fast and Loose Reasoning is Morally Correct" https://www.cs.ox.ac.uk/jeremy.gibbons/publications/fast+loose.pdf ? |
| 16:39:54 | <sclv> | people have speculated about a sort of enriched notion of a category where you might do everything directly (with partiality baked into the arrows) but its never been adequately worked out |
| 16:40:01 | <sclv> | siraben: yeah, basically |
| 16:40:02 | <siraben> | ski: how does bisimulation fit into the picture? |
| 16:40:12 | <ski> | (it's no coincidence that existentials often comes up when people are doing some kind of OO-like stuff) |
| 16:40:36 | <sclv> | bisimulation is an equality relation one can use for coinductive stuff, which can be used in some proofs |
| 16:40:36 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 16:40:47 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 16:40:53 | <ski> | siraben : behavioural equivalence of objects or processes. related to coinduction in some not totally obvious way |
| 16:40:59 | <sclv> | the other thing i'm fond of is clocked/guarded recursive type theory |
| 16:41:15 | <siraben> | I see. |
| 16:41:22 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 260 seconds) |
| 16:41:26 | <sclv> | so one can work in a language with richer typing (a guarded delay modality) and project the proofs down to a system lacking them |
| 16:41:26 | × | heatsink quits (~heatsink@2600:1700:bef1:5e10:b09b:3609:dd4b:42c9) (Ping timeout: 264 seconds) |
| 16:41:32 | <siraben> | btw sclvare you a researcher? |
| 16:41:53 | <sclv> | sporadically, i'm really more in industry, but i try to keep up |
| 16:41:55 | <ski> | anyway, above, each `F' could be thought of as a "layer" in a data structure. with `ana', you're building up layers. with `cata', you're tearing them down |
| 16:42:05 | <siraben> | oh, very nice. |
| 16:42:39 | → | Merfont joins (~Kaiepi@47.54.252.148) |
| 16:43:17 | <ski> | for termination, `cata' assumes that all paths/branches are finite (but they be of unbounded depth, e.g. in the infinitely-wide tree case). while `ana' assumes that you'll only ever inspect a path to finite depth (or else you'd not get progress) |
| 16:43:41 | <ski> | (s/they be/they could be/) |
| 16:43:56 | × | ozataman quits (~ozataman@pool-151-202-25-12.nycmny.fios.verizon.net) (Ping timeout: 240 seconds) |
| 16:44:37 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 16:44:39 | <ski> | inductive data types are associated with termination, and coinductive are associated with progress. as in a server eventually making progress, not getting stuck, while still potentially never terminating |
| 16:44:50 | <tomsmeding> | cool! |
| 16:45:25 | <ski> | (in general, in total programming, one would commonly use "termination" (or "termination and progress") as an umbrella term for both) |
| 16:45:33 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 16:45:55 | <ski> | if you have a `Stream a' (infinite depth), you can inspect it with a `Nat' (finite depth), and you'll terminate |
| 16:46:15 | <ski> | if you attempted to inspect it with an "infinite natural" (`inf = Succ inf'), you'd not terminate |
| 16:46:43 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Ping timeout: 245 seconds) |
| 16:46:45 | × | notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 264 seconds) |
| 16:47:12 | × | beardhatcode quits (robbertbea@gateway/shell/matrix.org/x-czxkutvkgyyqphjm) (Ping timeout: 260 seconds) |
| 16:47:44 | × | mrus[m] quits (mrusmatrix@gateway/shell/matrix.org/x-nyxisannhqxusqip) (Ping timeout: 268 seconds) |
| 16:47:44 | × | unclechu quits (unclechuma@gateway/shell/matrix.org/x-wfyfrzflxiiafrog) (Ping timeout: 268 seconds) |
| 16:48:21 | × | invent[m] quits (inventmatr@gateway/shell/matrix.org/x-vetnnuxstyqknlip) (Ping timeout: 268 seconds) |
| 16:48:21 | × | jkaye[m] quits (jkayematri@gateway/shell/matrix.org/x-qbldkaokruodskkg) (Ping timeout: 268 seconds) |
| 16:48:58 | × | arcontethegreat[ quits (arcontethe@gateway/shell/matrix.org/x-godgukqzijrupgty) (Ping timeout: 268 seconds) |
| 16:48:58 | × | plumenator[m] quits (plumenator@gateway/shell/matrix.org/x-ljfdmyhcpdaqbemc) (Ping timeout: 268 seconds) |
| 16:49:45 | <siraben> | How would you ensure a long lived process such as a server doesn't get stuck? |
| 16:50:21 | × | idhugo_ quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 264 seconds) |
| 16:50:49 | <monochrom> | That sounds very broad. But most causes of deadlocks are well known, so "just don't do that". |
| 16:50:57 | <ski> | there are also coalgebras in (non-CS related) math. e.g. "comonoids in a monoidal category" (confusingly, usually (it seems) called just "coalgebras", <https://en.wikipedia.org/wiki/Coalgebra>, specifically in the monoidal category of vector spaces, with tensor multiplication) |
| 16:51:53 | <davean> | siraben: my question is "How could it possibly get stuck?" |
| 16:53:15 | <ski> | (dolio recently linked to the talk "Coalgebra in Continuous Mathematics" by Larry Moss in 2020 at <https://youtu.be/XqywV-wkKSE?t=2486>) |
| 16:53:47 | <siraben> | I mean, would that entail modeling the server as a stream that is always productive? |
| 16:54:16 | <ski> | siraben : ensure that all subdivisions of its evolution, that involves at least one interaction with the environment, terminates ? |
| 16:54:34 | <ski> | yes |
| 16:54:55 | <ski> | (or perhaps in some other way, that implies such a modelling would be possible) |
| 16:56:42 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 16:57:08 | × | geekosaur quits (ac3a8f06@172.58.143.6) (Quit: Connection closed) |
| 16:57:30 | × | heatsink_ quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 16:57:53 | ski | . o O ( "Hask is not a category" by Andrej Bauer in 2016-08-06 at <http://math.andrej.com/2016/08/06/hask-is-not-a-category/> ) |
| 16:58:22 | × | andreas31 quits (~andreas@gateway/tor-sasl/andreas303) (Ping timeout: 268 seconds) |
| 16:59:00 | → | jaroslawj joins (~jaroslawj@185.234.208.208.r.toneticgroup.pl) |
| 16:59:01 | <Uniaika> | maralorn: great, thanks :) |
| 16:59:34 | → | andreas31 joins (~andreas@gateway/tor-sasl/andreas303) |
| 17:01:10 | × | jaroslawj quits (~jaroslawj@185.234.208.208.r.toneticgroup.pl) (Client Quit) |
| 17:01:34 | → | Cale joins (~cale@cpef48e38ee8583-cm0c473de9d680.cpe.net.cable.rogers.com) |
| 17:02:26 | → | beardhatcode joins (robbertbea@gateway/shell/matrix.org/x-wsgksmmgbbxtiufa) |
| 17:02:33 | → | unclechu joins (unclechuma@gateway/shell/matrix.org/x-rroohkjsifdpbejc) |
| 17:02:59 | → | mrus[m] joins (mrusmatrix@gateway/shell/matrix.org/x-yhszxvhsbugdebak) |
| 17:03:09 | × | xff0x quits (~xff0x@2001:1a81:53c9:9f00:27ac:86d9:28a4:2240) (Ping timeout: 268 seconds) |
| 17:03:48 | → | xff0x joins (~xff0x@2001:1a81:53c9:9f00:1ee:8e19:4d6b:903d) |
| 17:04:45 | × | romesrf quits (~romesrf@44.190.189.46.rev.vodafone.pt) (Quit: WeeChat 3.1) |
| 17:05:09 | → | ph88 joins (~ph88@ip5f5af71a.dynamic.kabel-deutschland.de) |
| 17:06:21 | → | jkaye[m] joins (jkayematri@gateway/shell/matrix.org/x-oneawtzvjyybiofe) |
| 17:06:35 | → | invent[m] joins (inventmatr@gateway/shell/matrix.org/x-atepmcggudcmcggg) |
| 17:07:56 | → | plumenator[m] joins (plumenator@gateway/shell/matrix.org/x-qptmeamoejhofhvo) |
| 17:08:03 | → | arcontethegreat[ joins (arcontethe@gateway/shell/matrix.org/x-yotrsdwouhpxhcjs) |
| 17:10:19 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 256 seconds) |
| 17:10:33 | → | bitmagie joins (~Thunderbi@200116b8066df900d5323f70f4278fa3.dip.versatel-1u1.de) |
| 17:11:08 | × | acidjnk_new quits (~acidjnk@p200300d0c72b958398d78e73e557de79.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 17:11:19 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 17:16:21 | × | bitmagie quits (~Thunderbi@200116b8066df900d5323f70f4278fa3.dip.versatel-1u1.de) (Quit: bitmagie) |
| 17:16:38 | → | bitmagie joins (~Thunderbi@200116b8066df900d5323f70f4278fa3.dip.versatel-1u1.de) |
| 17:17:12 | × | bitmagie quits (~Thunderbi@200116b8066df900d5323f70f4278fa3.dip.versatel-1u1.de) (Client Quit) |
| 17:17:44 | <hololeap> | class Divisible f => Decidable f where ; lose :: (a -> Void) -> f a ; choose :: (a -> Either b c) -> f b -> f c -> f a |
| 17:18:01 | <hololeap> | the intuition for choose is pretty obvious, but i don't understand the intuition for lose |
| 17:20:23 | <hololeap> | "give me a function that takes 'a' and returns Void, and i'll give you 'a -> ByteString'" (for instance) |
| 17:20:59 | → | hexfive joins (~hexfive@50.35.83.177) |
| 17:21:00 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 17:21:23 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 17:21:30 | <ski> | iirc, when you find yourself in an impossible case, in your divide-and-conquer |
| 17:21:30 | <Franciman> | (a -> Void) means like, give me something false |
| 17:21:35 | <Franciman> | and I will assert that it is false |
| 17:21:36 | <Franciman> | ? |
| 17:21:36 | <Franciman> | lol |
| 17:22:26 | <monochrom> | Looks to me f is a contravariant functor. |
| 17:22:40 | <ski> | yes |
| 17:23:20 | <monochrom> | (a->Void) -> (a->ByteString) isn't that far-fetched |
| 17:23:32 | <Franciman> | it would be |
| 17:23:35 | <Franciman> | f :: a -> Void |
| 17:23:38 | → | stree joins (~stree@68.36.8.116) |
| 17:23:39 | <Franciman> | efq :: Void -> b |
| 17:23:45 | <Franciman> | efq . f :: a -> b |
| 17:23:46 | <ski> | <https://hackage.haskell.org/package/contravariant-1.5.3/docs/Data-Functor-Contravariant-Divisible.html> |
| 17:23:54 | <hololeap> | efq? |
| 17:24:01 | <hololeap> | i thought that function was called absurd |
| 17:25:21 | <hololeap> | anyway, i suppose it makes sense in a bizarre way. there's no way to construct 'f', thus nothing that can be passed into 'lose' |
| 17:25:22 | × | juri_ quits (~juri@212.86.35.86) (Read error: Connection reset by peer) |
| 17:25:30 | × | Franciman quits (~francesco@host-79-53-62-46.retail.telecomitalia.it) (Quit: Leaving) |
| 17:25:32 | × | Merfont quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 17:25:36 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 17:25:38 | × | gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving) |
| 17:25:43 | → | Merfont joins (~Kaiepi@47.54.252.148) |
| 17:25:53 | → | neiluj joins (~jco@91-167-203-101.subs.proxad.net) |
| 17:25:54 | <hololeap> | or i suppose 'f' could be 'const undefined' |
| 17:25:57 | <monochrom> | "you have nothing to lose" |
| 17:25:58 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 17:25:59 | × | neiluj quits (~jco@91-167-203-101.subs.proxad.net) (Changing host) |
| 17:25:59 | → | neiluj joins (~jco@unaffiliated/neiluj) |
| 17:26:05 | × | graf_blutwurst quits (~user@2001:171b:226e:adc0:102c:ecb5:8d03:4f2b) (Remote host closed the connection) |
| 17:26:19 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 17:26:21 | <monochrom> | Ah but a=Void is possible |
| 17:26:46 | <monochrom> | lose (id :: Void -> Void) is possible. |
| 17:27:59 | <ski> | you might have a case-splitting where you'll later discover that one of the cases is impossible. i'm guessing that would be one main use of `lose' |
| 17:28:01 | <monochrom> | I think you keep forgetting that f is a contravariant functor. "sx :: f a" does not mean that sx produces an 'a' value or else bottoms out. |
| 17:28:23 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 17:28:28 | × | Merfont quits (~Kaiepi@47.54.252.148) (Read error: Connection reset by peer) |
| 17:29:58 | → | bahamas joins (~lucian@188.27.48.99) |
| 17:29:58 | × | bahamas quits (~lucian@188.27.48.99) (Changing host) |
| 17:29:58 | → | bahamas joins (~lucian@unaffiliated/bahamas) |
| 17:30:10 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 265 seconds) |
| 17:30:19 | <hololeap> | regardless of it being a contravariant functor, it seems to me the only possibilities for 'f' would be 'const undefined' or 'id' |
| 17:30:22 | × | Boomerang quits (~Boomerang@2a05:f6c7:2179:0:f97c:9426:ef00:f528) (Quit: Leaving) |
| 17:30:50 | <monochrom> | Is "const" a term? a type? |
| 17:31:18 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 17:31:39 | <peanut_> | :t const |
| 17:31:41 | <lambdabot> | a -> b -> a |
| 17:31:46 | <shapr> | :t Const |
| 17:31:48 | <lambdabot> | forall k a (b :: k). a -> Const a b |
| 17:31:50 | × | Garbanzo quits (~Garbanzo@2602:304:6eac:dc10::2e) (Ping timeout: 264 seconds) |
| 17:32:09 | <hololeap> | i'm talking about 'const :: a -> b -> a' from Prelude |
| 17:32:16 | <monochrom> | So, term. |
| 17:32:21 | <hololeap> | :t const undefined |
| 17:32:22 | <lambdabot> | b -> a |
| 17:32:22 | <monochrom> | Is f a term? a type? |
| 17:32:51 | <hololeap> | 'f' is a term, the function that you pass into 'lose' from Data.Functor.Contravariant.Divisible |
| 17:33:28 | <monochrom> | If f is a term, what does "(a -> Either b c) -> f b -> f c -> f a" mean? |
| 17:33:35 | × | s00pcan quits (~chris@107.181.165.217) (Ping timeout: 240 seconds) |
| 17:33:51 | <hololeap> | i'm not talking about that 'f'. different 'f' |
| 17:33:52 | <ski> | hololeap : `void :: forall a. Void -> a; void v = case v of {}' would fit the bill, no ? (no `undefined' in sight !) |
| 17:34:25 | → | augnun joins (~augnun@2804:14c:658b:41bb:9d27:655f:eef9:d872) |
| 17:34:25 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 17:34:58 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 17:34:59 | <ski> | @kind Const |
| 17:35:00 | <lambdabot> | * -> k -> * |
| 17:35:25 | <hololeap> | lose :: (a -> Void) -> f a ; lose f = ... |
| 17:36:08 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 17:36:29 | <monochrom> | Do you mind not using the same name "f" for two different things? |
| 17:37:16 | <hololeap> | ok. this is just how the documentation names things, and also how Franciman named it when i first asked |
| 17:37:34 | <monochrom> | Fine. |
| 17:38:24 | <ski> | so `lose' will only be called with an `f' like `id' or `void', assuming no bottoms. so in that case `a' must be something like `Void'. possibly `Int :~: Bool' or some other vacuous of of a GADT |
| 17:38:44 | <monochrom> | "lose" is a class method. You're now talking implementing it. So you are talking writing "instance Decidable AnActualType where ...". What do you propose for AnActualType? Or would you want me to propose one? |
| 17:38:58 | <ski> | so, when `lose' is called, you know that there are no (total) elements of `a', which you can then use to successfully build an `f a' for your `f' |
| 17:39:41 | × | kuribas quits (~user@ptr-25vy0i8r3m7ulrlbw64.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
| 17:39:49 | → | viluon joins (uid453725@gateway/web/irccloud.com/x-tsrnritnmsiiiwsr) |
| 17:40:11 | <ski> | (perhaps `f a' does contain some other useful information, apart from a component that takes in an `a', that will be trivial in this case, calling `f' (and then `void'/`absurd', possibly) |
| 17:40:15 | <ski> | ) |
| 17:40:21 | × | rajivr quits (uid269651@gateway/web/irccloud.com/x-yuttflczfhjstiup) (Quit: Connection closed for inactivity) |
| 17:40:37 | <hololeap> | monochrom: in the documentation, it uses 'newtype Serializer a = Serializer { runSerializer :: a -> ByteString }'. this is the instance of Decidable i was using conceptually |
| 17:41:48 | <monochrom> | So lose :: (a->Void) -> Serializer a. Morally, (a->Void)->(a->Bytestring). I think you know the answer now. |
| 17:41:50 | × | son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal) |
| 17:42:02 | × | borne quits (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) (Ping timeout: 264 seconds) |
| 17:43:43 | <hololeap> | i wasn't looking for an "answer", i was looking for help developing an intuition as to when 'lose' would be used and why it's included in the class. |
| 17:44:09 | hololeap | will ponder what ski said |
| 17:44:19 | <c_wraith> | you'd use it to erase a case that can't happen |
| 17:44:48 | <c_wraith> | that's what acting as an identity to choose implies |
| 17:45:11 | <ski> | @type either absurd |
| 17:45:13 | <lambdabot> | (b -> c) -> Either Void b -> c |
| 17:45:18 | <ski> | @type either absurd id |
| 17:45:20 | <lambdabot> | Either Void c -> c |
| 17:46:04 | <hololeap> | thanks everyone. i need some time to let this sink in |
| 17:46:18 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 245 seconds) |
| 17:46:48 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 17:48:26 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 17:49:26 | ski | . o O ( `onlyFromRight :: Either Void a -> a; onlyFromRight = either void id' ) |
| 17:49:29 | <ski> | @type fromRight |
| 17:49:31 | <lambdabot> | b -> Either a b -> b |
| 17:50:04 | → | ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 17:50:49 | × | peanut_ quits (~peanut_@2a02:8388:a101:2600:4b2:18d8:9396:5c4f) (Quit: Leaving) |
| 17:52:31 | × | s00pcan quits (~chris@075-133-056-178.res.spectrum.com) (Read error: Connection reset by peer) |
| 17:53:10 | ski | . o O ( `onlySnd :: ((),a) -> a; onlySnd ((),a) = a' ) |
| 17:54:33 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 17:54:38 | × | cyphase quits (~cyphase@unaffiliated/cyphase) (Ping timeout: 258 seconds) |
| 17:54:38 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 17:55:04 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 17:57:11 | → | cyphase joins (~cyphase@unaffiliated/cyphase) |
| 17:59:12 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Ping timeout: 244 seconds) |
| 17:59:38 | × | jespada quits (~jespada@90.254.243.187) (Ping timeout: 245 seconds) |
| 17:59:44 | → | borne joins (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) |
| 18:01:40 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:02:15 | × | ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 18:03:06 | → | jespada joins (~jespada@90.254.243.187) |
| 18:06:18 | × | Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Quit: WeeChat 3.0.1) |
| 18:07:00 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:00 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:07:10 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:11 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:07:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 18:07:22 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:22 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:07:23 | <hololeap> | ski: "... you know that there are no (total) elements of `a' ..." what do you mean by total elements? |
| 18:07:33 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:34 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:07:39 | → | __monty__ joins (~toonn@unaffiliated/toonn) |
| 18:07:43 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:44 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:07:55 | → | wallacer joins (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) |
| 18:07:55 | × | wallacer quits (~quassel@2001:bc8:1824:9a:cafe:babe:b00b:aa01) (Max SendQ exceeded) |
| 18:09:47 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 18:10:28 | × | malumore quits (~malumore@151.62.115.239) (Ping timeout: 245 seconds) |
| 18:10:39 | × | dandart quits (~Thunderbi@home.dandart.co.uk) (Quit: dandart) |
| 18:15:04 | <hololeap> | is this part of the idea that Hask has an extra 'bottom' element for every type? |
| 18:15:09 | → | juri_ joins (~juri@212.86.35.86) |
| 18:15:26 | <hololeap> | so Void isn't quite devoid of elements? |
| 18:17:00 | × | dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection) |
| 18:17:47 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 18:18:00 | × | juri_ quits (~juri@212.86.35.86) (Read error: Connection reset by peer) |
| 18:20:13 | → | juri_ joins (~juri@212.86.35.86) |
| 18:22:17 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 18:22:38 | <maerwald> | how do you convert ByteArray# to a ByteString? |
| 18:23:05 | × | Foritus quits (~buggery@cpc91316-watf11-2-0-cust68.15-2.cable.virginm.net) (Quit: ლ(ಠ益ಠლ) .:. <Ashley> my porn is hidden in a folder called "BBC Micro Emulator") |
| 18:23:38 | → | Tops2 joins (~Tobias@dyndsl-095-033-092-175.ewe-ip-backbone.de) |
| 18:25:35 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 18:25:54 | → | juuandyy joins (~juuandyy@90.106.228.121) |
| 18:25:57 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 18:28:03 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 18:28:27 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 18:28:27 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 18:28:31 | <ski> | hololeap : `undefined'/`_|_' and `2 : undefined'/`2 : _|_' being partial (not total) elements of `[Integer]' |
| 18:28:33 | × | borne quits (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) (Ping timeout: 272 seconds) |
| 18:28:40 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 18:28:46 | <ski> | hololeap : yes |
| 18:28:47 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 18:29:25 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 18:33:37 | → | geekosaur joins (42d52137@66.213.33.55) |
| 18:33:57 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds) |
| 18:34:34 | → | s00pcan joins (~chris@075-133-056-178.res.spectrum.com) |
| 18:34:58 | × | kmein quits (~weechat@static.173.83.99.88.clients.your-server.de) (Quit: ciao kakao) |
| 18:35:15 | → | kmein joins (~weechat@static.173.83.99.88.clients.your-server.de) |
| 18:36:03 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 18:36:52 | <monochrom> | maerwald: Looks like copying is unavoidable because ByteString uses ForeignPtr Word8. |
| 18:37:27 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 260 seconds) |
| 18:37:50 | <monochrom> | And possibly manual coding up that copying, at that. |
| 18:40:23 | → | cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) |
| 18:40:54 | × | juuandyy quits (~juuandyy@90.106.228.121) (Quit: Konversation terminated!) |
| 18:42:05 | → | juuandyy joins (~juuandyy@90.106.228.121) |
| 18:42:05 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 18:42:23 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 18:48:40 | → | malumore joins (~malumore@151.62.115.239) |
| 18:48:41 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 18:48:59 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 18:49:45 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 264 seconds) |
| 18:49:59 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 18:50:26 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 18:50:42 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 18:53:11 | → | frozenErebus joins (~frozenEre@94.128.81.87) |
| 18:53:59 | × | todda7 quits (~torstein@2a02:587:1b19:7e00:c6c7:4f08:2883:aa95) (Ping timeout: 265 seconds) |
| 18:54:38 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 18:56:09 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 18:56:45 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 19:00:21 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed) |
| 19:00:41 | → | royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) |
| 19:01:20 | → | todda7 joins (~torstein@2a02:587:1b17:de00:b1fa:5a99:4acf:bd72) |
| 19:02:14 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 19:02:35 | × | xelxebar_ quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection) |
| 19:03:00 | → | xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar) |
| 19:03:15 | × | berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 240 seconds) |
| 19:03:24 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 268 seconds) |
| 19:03:29 | → | berberman_ joins (~berberman@unaffiliated/berberman) |
| 19:03:36 | → | nuncanada joins (~dude@179.235.160.168) |
| 19:05:17 | × | royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Client Quit) |
| 19:05:20 | <maerwald> | monochrom: https://hackage.haskell.org/package/bytestring-0.11.1.0/docs/Data-ByteString-Short.html#t:ShortByteString |
| 19:05:22 | <maerwald> | ah... |
| 19:05:32 | × | juuandyy quits (~juuandyy@90.106.228.121) (Quit: Konversation terminated!) |
| 19:06:22 | × | m0rphism quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 244 seconds) |
| 19:06:57 | <maerwald> | SBS... that was easy |
| 19:07:06 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 268 seconds) |
| 19:07:19 | <monochrom> | heh |
| 19:08:27 | × | xelxebar quits (~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection) |
| 19:08:47 | → | xelxebar joins (~xelxebar@gateway/tor-sasl/xelxebar) |
| 19:08:47 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 19:09:05 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 19:10:42 | × | geekosaur quits (42d52137@66.213.33.55) (Ping timeout: 240 seconds) |
| 19:10:45 | × | Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 264 seconds) |
| 19:10:55 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 19:11:28 | → | m0rphism joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) |
| 19:12:07 | → | hyperisco joins (~hyperisco@d192-186-117-226.static.comm.cgocable.net) |
| 19:13:19 | <maerwald> | except there's no conversion from ShortByteString to Text |
| 19:14:30 | → | geekosaur joins (42d52137@66.213.33.55) |
| 19:18:24 | → | isovector joins (~isovector@172.103.216.166.cable.tpia.cipherkey.com) |
| 19:18:37 | ← | isovector parts (~isovector@172.103.216.166.cable.tpia.cipherkey.com) ("WeeChat 3.1") |
| 19:19:18 | × | hyperisco quits (~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Read error: Connection reset by peer) |
| 19:20:09 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 19:21:38 | → | Unhammer joins (~Unhammer@gateway/tor-sasl/unhammer) |
| 19:21:42 | <maerwald> | so from ByteArray to String would be copying twice afais |
| 19:22:06 | → | Lycurgus joins (~niemand@98.4.119.196) |
| 19:22:09 | × | dolio quits (~dolio@haskell/developer/dolio) (Ping timeout: 246 seconds) |
| 19:22:09 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 19:22:40 | × | dawiss quits (~dawiss@178.43.197.203.ipv4.supernova.orange.pl) (Remote host closed the connection) |
| 19:22:41 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 19:24:38 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 264 seconds) |
| 19:24:58 | × | todda7 quits (~torstein@2a02:587:1b17:de00:b1fa:5a99:4acf:bd72) (Quit: Konversation terminated!) |
| 19:25:31 | <codygman__> | This is interesting. A custom quasi quoter using TH.dataToExpQ crashes haskell-language server with `m32_allocator_init: Failed to map` on8.10.4: https://github.com/haskell/haskell-language-server/issues/1497#issuecomment-806070162 |
| 19:25:35 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 19:25:57 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 19:26:36 | → | elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) |
| 19:26:51 | <tomsmeding> | maerwald: what's your final goal? ByteArray# to Text where each byte is interpreted as Latin-1? Or the whole thing interpreted as UTF-? ? |
| 19:27:11 | → | dolio joins (~dolio@haskell/developer/dolio) |
| 19:27:15 | <maerwald> | tomsmeding: ByteArray# to String, decoded as Utf16LE |
| 19:27:26 | <maerwald> | which is two copies |
| 19:28:00 | <maerwald> | `T.pack . E.decodeUtf16LE . B.fromShort . B.SBS` |
| 19:28:13 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 19:28:15 | <maerwald> | I'm not satisfied |
| 19:28:21 | <tomsmeding> | T.unpack? |
| 19:29:04 | <maerwald> | what? |
| 19:29:05 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 19:29:15 | <geekosaur> | your T.pack seems wrong |
| 19:29:16 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 19:29:26 | <maerwald> | yeah |
| 19:29:33 | → | apeyroux joins (~alex@78.20.138.88.rev.sfr.net) |
| 19:29:38 | <geekosaur> | it's already packed after E.decode16LE |
| 19:29:39 | × | augnun quits (~augnun@2804:14c:658b:41bb:9d27:655f:eef9:d872) (Quit: WeeChat 3.1) |
| 19:31:04 | <maerwald> | yes, T.unpack is O(n) :) |
| 19:31:17 | <tomsmeding> | maerwald: if you're feeling adventurous, this function (which is the backend of E.decodeUtf16LE) looks readily convertible to something that uses SBS.index and (:) https://hackage.haskell.org/package/text-1.2.4.1/docs/src/Data.Text.Internal.Encoding.Fusion.html#streamUtf16LE |
| 19:31:46 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 268 seconds) |
| 19:33:17 | <monochrom> | If you can find a utf16 decoder that goes from ByteString to String, you will save one level of marshalling. |
| 19:33:56 | <tomsmeding> | replace 'Yield c i' with 'c : next i', replace 'Done' with '[]', remove the 'Stream next 0' prefix, replace 'B.unsafeIndex' with 'SBS.index' |
| 19:34:01 | <monochrom> | Currently you are unhappy with T.unpack because the decoder emits Text. |
| 19:34:36 | <tomsmeding> | the result would be a thing that goes directly from SBS to String, and SBS from ByteArray# is a no-op |
| 19:35:00 | <monochrom> | However, I wouldn't worry about it for now. There is some chance fusion eliminates one level of marshalling and you need do nothing. |
| 19:35:40 | → | Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362) |
| 19:35:40 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 19:35:52 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 19:37:33 | → | codygman` joins (~user@209.251.131.98) |
| 19:38:16 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 256 seconds) |
| 19:38:21 | <monochrom> | More specifically, stream fusion, which means GHC may do for you what tomsmeding just said. |
| 19:38:21 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Read error: No route to host) |
| 19:38:21 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 19:38:32 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 19:38:39 | Lord_of_Life_ | is now known as Lord_of_Life |
| 19:39:33 | × | codygman__ quits (~user@47.186.207.161) (Ping timeout: 264 seconds) |
| 19:39:49 | <tomsmeding> | yay fusion |
| 19:40:01 | <monochrom> | "Conditions apply." |
| 19:41:05 | <tomsmeding> | :( |
| 19:41:20 | <monochrom> | :) |
| 19:42:16 | <maerwald> | haskell performance: let's hope it's ok |
| 19:42:48 | <monochrom> | That holds for all code optimizations by all compilers of all languages. |
| 19:42:49 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 19:42:58 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 19:43:13 | <monochrom> | all to the same extent |
| 19:43:22 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 260 seconds) |
| 19:43:46 | <maerwald> | I'd argue rust is easier :) |
| 19:44:17 | → | yoctocell joins (~user@h87-96-130-155.cust.a3fiber.se) |
| 19:44:17 | → | stree joins (~stree@68.36.8.116) |
| 19:44:22 | <maerwald> | but then you have to deal with the verbosity all the time |
| 19:44:24 | ← | yoctocell parts (~user@h87-96-130-155.cust.a3fiber.se) ("ERC (IRC client for Emacs 28.0.50)") |
| 19:46:23 | <monochrom> | For example, in gcc and clang, myvar % 37 is optimized, myvar % anothervar is not, except when constant propagation discovers that anothervar was set to 37 and never changed so it's myvar % 37 again, except when something else confuses constant propagation so it gives up, except when something yet else enables conditional constant propagation so it's all good again, except ... etc etc infinite series of excepts and counterexcepts. |
| 19:47:03 | <monochrom> | Heuristics. All is heuristics for code optimization. You can hope or you can rabbit hole. |
| 19:48:14 | → | Franciman joins (~francesco@host-79-53-62-46.retail.telecomitalia.it) |
| 19:52:10 | <monochrom> | What you can bet on is that idiomatic code gets a lot of attention from authors of code optimizations. In the case of Haskell, one such idiom is transducer pipelines like "f . g . h" where the intermediate data structures are lists and arrays. |
| 19:55:03 | <monochrom> | Alternatively, if you're cynical (I am on prime-numbered days): Bet on academic-publishable code optimizations such as list fusion and stream fusion (Vector, Text, ByteString... so arrays). |
| 19:55:36 | <monochrom> | This cynical theory explains why GHC doesn't optimize myvar % 37. >:) |
| 19:56:21 | × | dbmikus quits (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 264 seconds) |
| 19:56:47 | geekosaur | fingers fromInteger there, and notes that there is active work to improve that so it might eventually happen |
| 19:57:03 | → | xourt joins (d4c620ea@212-198-32-234.rev.numericable.fr) |
| 19:57:34 | <geekosaur> | "might" |
| 19:57:35 | → | dbmikus joins (~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) |
| 19:58:07 | <monochrom> | Less cynically, the stream fusion paper and idea are really clever, I recommend that you read it. Part of it is leverage how GHC already knows to simplify "case x of C1 -> case x of C1 -> ..." because obviously the second check-for-C1 is unnecessary. |
| 19:59:09 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 19:59:32 | <monochrom> | I have forgotten further details, so don't quote it on me. :) |
| 19:59:39 | → | irc_user joins (uid423822@gateway/web/irccloud.com/x-unailobkgqldbboi) |
| 19:59:54 | <monochrom> | But the trick is really clever and beautiful. |
| 20:01:20 | <L29Ah> | https://hackage.haskell.org/package/bytestring-0.11.0.0/docs/Data-ByteString-Internal.html#v:fromForeignPtr |
| 20:01:21 | <L29Ah> | is the data referred by the pointer going to be free()d during the GC of the ByteString? |
| 20:02:03 | → | Sorna joins (~Sornaensi@077213203030.dynamic.telenor.dk) |
| 20:02:33 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 20:02:33 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 20:02:40 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 20:03:03 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 20:03:30 | <monochrom> | The input foreign pointer is supposed to come with its own finalizer installed before you give it to fromForeignPtr. |
| 20:03:42 | <L29Ah> | thanks! |
| 20:03:48 | × | mp___ quits (mp@hell.cx) (Ping timeout: 246 seconds) |
| 20:03:53 | L29Ah | feels he found a big chunk of memory leaks on Hackage |
| 20:04:02 | <maerwald> | tomsmeding: so you think the decoder won't break fusion? |
| 20:05:32 | × | petersen quits (~petersen@redhat/juhp) (Ping timeout: 260 seconds) |
| 20:05:57 | × | Sornaensis quits (~Sornaensi@79.142.232.102.static.router4.bolignet.dk) (Ping timeout: 264 seconds) |
| 20:06:00 | <Uniaika> | L29Ah: nice |
| 20:06:17 | × | Yumasi quits (~guillaume@static-176-175-104-214.ftth.abo.bbox.fr) (Ping timeout: 265 seconds) |
| 20:08:23 | → | petersen joins (~petersen@redhat/juhp) |
| 20:08:25 | <tomsmeding> | maerwald: which decoder? my ad-hoc modified version of streamUtf16LE? |
| 20:08:31 | <tomsmeding> | I have no idea :) |
| 20:08:55 | <tomsmeding> | monochrom seems to believe fusion has a high chance of working on your seemingly-inefficient pipeline |
| 20:08:58 | × | vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving) |
| 20:09:17 | <tomsmeding> | I'm ¯\_(ツ)_/¯ |
| 20:09:17 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 20:09:39 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 20:09:55 | × | Benzi-Junior quits (~BenziJuni@dsl-149-67-143.hive.is) (Ping timeout: 244 seconds) |
| 20:11:43 | × | knupfer quits (~Thunderbi@i59F7FF52.versanet.de) (Ping timeout: 245 seconds) |
| 20:14:44 | × | v01d4lph4 quits (~v01d4lph4@106.212.133.35) (Remote host closed the connection) |
| 20:15:04 | → | apache8080 joins (~rishi@wsip-70-168-153-252.oc.oc.cox.net) |
| 20:18:37 | × | geekosaur quits (42d52137@66.213.33.55) (Quit: Connection closed) |
| 20:19:14 | × | nuncanada quits (~dude@179.235.160.168) (Read error: Connection reset by peer) |
| 20:22:21 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:dd2c:1d97:d88b:9897) |
| 20:24:02 | × | xourt quits (d4c620ea@212-198-32-234.rev.numericable.fr) (Ping timeout: 240 seconds) |
| 20:25:12 | → | unlink2 joins (~unlink2@p200300ebcf254d00a495fbc96206c979.dip0.t-ipconnect.de) |
| 20:26:32 | × | unlink_ quits (~unlink2@p200300ebcf13b600588c7881abb1ea42.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 20:30:55 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Remote host closed the connection) |
| 20:30:59 | × | kiweun quits (~kiweun@2607:fea8:2a62:9600:dd2c:1d97:d88b:9897) (Read error: Connection reset by peer) |
| 20:31:35 | → | kiweun joins (~kiweun@2607:fea8:2a62:9600:dd2c:1d97:d88b:9897) |
| 20:33:11 | → | LKoen joins (~LKoen@194.250.88.92.rev.sfr.net) |
| 20:33:26 | × | hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:a7dd:a3bb:c8b0:2d88) (Ping timeout: 240 seconds) |
| 20:34:22 | → | tato joins (~tato@201.209.92.147) |
| 20:36:09 | tato | is now known as scaryGarry |
| 20:36:09 | <L29Ah> | https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4585 do i get it right that this changeset doesn't demand all the libs to be rebuilt to take the advantage of PINNED profiling? |
| 20:36:54 | L29Ah | gets insanely small numbers in his profiles that don't reflect the amount of memory consumed |
| 20:37:05 | <L29Ah> | maybe because i applied it on top of 9.0.1, dunno |
| 20:37:08 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 20:37:59 | × | kini quits (~kini@unaffiliated/kini) (Quit: bye) |
| 20:38:37 | <scaryGarry> | any literature suggestion for books on monad transformers or an introduction to parallelism in haskell? |
| 20:39:38 | flow | is now known as Flow |
| 20:40:11 | Flow | is now known as flow |
| 20:41:19 | <ski> | @where PCPH |
| 20:41:20 | <lambdabot> | "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013 at <http://community.haskell.org/~simonmar/pcph/>,<http://chimera.labs.oreilly.com/books/1230000000929/>,<https://web.archive. |
| 20:41:20 | <lambdabot> | org/web/20180117194842/http://chimera.labs.oreilly.com/books/1230000000929>,<https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/> |
| 20:41:37 | <ski> | @where AAM |
| 20:41:37 | <lambdabot> | http://www.haskell.org/haskellwiki/All_About_Monads |
| 20:41:40 | → | solidus-river joins (~mike@174.127.249.180) |
| 20:42:07 | <ski> | @where Typeclassopedia |
| 20:42:08 | <lambdabot> | http://www.haskell.org/haskellwiki/Typeclassopedia |
| 20:42:33 | → | kini joins (~kini@unaffiliated/kini) |
| 20:42:59 | × | landonf quits (landonf@mac68k.info) (Excess Flood) |
| 20:42:59 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 20:43:16 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 20:43:39 | → | jneira joins (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182) |
| 20:44:51 | → | landonf joins (landonf@mac68k.info) |
| 20:46:04 | → | hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:bf91:2d52:7724:8d37) |
| 20:46:50 | × | bahamas quits (~lucian@unaffiliated/bahamas) (Ping timeout: 256 seconds) |
| 20:49:26 | × | mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew) |
| 20:51:01 | L29Ah | gently pokes bgamari |
| 20:51:08 | <bgamari> | L29Ah, pong |
| 20:51:50 | <L29Ah> | bgamari: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4585 do i get it right that this changeset doesn't demand all the libs to be rebuilt to take the advantage of PINNED profiling, and can work on top of 9.0.1? |
| 20:52:29 | bgamari | tries to page this back in |
| 20:52:45 | → | __minoru__shirae joins (~shiraeesh@46.34.207.1) |
| 20:53:22 | × | apache8080 quits (~rishi@wsip-70-168-153-252.oc.oc.cox.net) (Ping timeout: 260 seconds) |
| 20:53:30 | <ephemient> | L29Ah: aren't all libraries to be rebuilt to for each GHC version anyway? |
| 20:54:40 | <L29Ah> | ephemient: i'm on the same 9.0.1, except that changeset :) |
| 20:55:10 | × | srk quits (~sorki@gateway/tor-sasl/sorki) (Ping timeout: 268 seconds) |
| 20:55:30 | <ephemient> | ah, and it's an RTS-only change so you're hoping you can "just" re-link to make use of it? |
| 20:55:41 | <L29Ah> | yes |
| 20:57:12 | <L29Ah> | and now i don't see the huge PINNED thing at all, but the data is messed up (the profile entries are misordered, sometimes carry negative time, and after cleaning-up they report much lower memory consumption than my program had when it got terminated with +RTS -M |
| 20:57:27 | → | srk joins (~sorki@gateway/tor-sasl/sorki) |
| 20:57:38 | L29Ah | now rebuilds vanilla ghc to check with vanilla rts |
| 20:57:45 | → | son0p joins (~son0p@181.136.122.143) |
| 20:59:21 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 21:02:05 | × | apeyroux quits (~alex@78.20.138.88.rev.sfr.net) (Ping timeout: 256 seconds) |
| 21:03:04 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 21:04:25 | <bgamari> | L29Ah, I am having a look |
| 21:04:55 | × | __minoru__shirae quits (~shiraeesh@46.34.207.1) (Ping timeout: 256 seconds) |
| 21:07:50 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds) |
| 21:10:06 | × | Kaiepi quits (~Kaiepi@47.54.252.148) (Read error: Connection reset by peer) |
| 21:10:06 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 21:10:20 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 21:10:44 | × | coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 21:10:50 | → | solvr joins (57e3c46d@87.227.196.109) |
| 21:11:38 | → | Kaeipi joins (~Kaiepi@47.54.252.148) |
| 21:17:29 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 21:17:36 | → | aarvar1 joins (~foewfoiew@2601:602:a080:fa0:8d5e:8b07:4f7a:6938) |
| 21:17:54 | → | apache8080 joins (~rishi@wsip-70-168-153-252.oc.oc.cox.net) |
| 21:17:56 | × | aarvar quits (~foewfoiew@2601:602:a080:fa0:49ff:dc3d:e55f:8dd) (Ping timeout: 240 seconds) |
| 21:18:01 | × | aarvar1 quits (~foewfoiew@2601:602:a080:fa0:8d5e:8b07:4f7a:6938) (Client Quit) |
| 21:18:41 | × | average quits (uid473595@gateway/web/irccloud.com/x-mlwtnyrsvtyoarjl) (Quit: Connection closed for inactivity) |
| 21:21:32 | × | frozenErebus quits (~frozenEre@94.128.81.87) (Ping timeout: 268 seconds) |
| 21:22:54 | × | hyiltiz quits (~quassel@unaffiliated/hyiltiz) (Ping timeout: 246 seconds) |
| 21:23:06 | → | conal joins (~conal@64.71.133.70) |
| 21:24:10 | × | scaryGarry quits (~tato@201.209.92.147) (Quit: leaving) |
| 21:24:10 | <bgamari> | L29Ah, I'm about to post a test which you can use to validate your patch |
| 21:24:14 | <bgamari> | it works for me on master |
| 21:24:17 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 260 seconds) |
| 21:24:56 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 21:25:35 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 21:25:58 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 21:28:13 | → | justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311) |
| 21:30:36 | → | average joins (uid473595@gateway/web/irccloud.com/x-jidrtzqhvfslyggr) |
| 21:30:37 | × | fendor_ quits (~fendor@91.141.1.9.wireless.dyn.drei.com) (Remote host closed the connection) |
| 21:32:02 | → | fendor joins (~fendor@91.141.1.9.wireless.dyn.drei.com) |
| 21:33:03 | <bgamari> | L29Ah, https://gitlab.haskell.org/ghc/ghc/-/merge_requests/5361 |
| 21:33:03 | × | conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer) |
| 21:33:23 | <bgamari> | L29Ah, try compiling T7275.hs with |
| 21:33:38 | <bgamari> | ghc testsuite/tests/profiling/should_run/T7275.hs -prof -rtsopts |
| 21:33:54 | <bgamari> | and then running the executable with `+RTS -hc -i0` |
| 21:33:59 | <bgamari> | and examine the .hp file |
| 21:34:07 | <bgamari> | you should see counts from suzanne |
| 21:35:36 | <bgamari> | they should constitute the majority of the heap |
| 21:37:50 | → | conal joins (~conal@64.71.133.70) |
| 21:38:11 | × | son0p quits (~son0p@181.136.122.143) (Quit: leaving) |
| 21:39:20 | <L29Ah> | yeah it works, thanks |
| 21:39:51 | <L29Ah> | shows PINNED w/ vanilla /usr/lib64/ghc-9.0.1/rts and suzanne/robert w/ patched |
| 21:39:55 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 21:41:31 | <L29Ah> | apparently profiling is broken in 9.0.1 or smth |
| 21:41:31 | × | conal quits (~conal@64.71.133.70) (Read error: Connection reset by peer) |
| 21:42:38 | → | conal joins (~conal@64.71.133.70) |
| 21:42:54 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 21:42:54 | × | hyiltiz quits (~quassel@31.220.5.250) (Changing host) |
| 21:42:54 | → | hyiltiz joins (~quassel@unaffiliated/hyiltiz) |
| 21:44:03 | <L29Ah> | http://0x0.st/-qVm.hp typical result, with non-monotonic time |
| 21:44:21 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 268 seconds) |
| 21:45:43 | <L29Ah> | at least the PINNED section is sensible |
| 21:45:51 | × | wonko7 quits (~wonko7@45.15.17.60) (Ping timeout: 265 seconds) |
| 21:46:04 | <solidus-river> | hmm, im in waters i'm not used to and having trouble finding good resources on. I need to specifically pack a Int value as a UInt64 in network byte order into a Bytestring |
| 21:46:38 | <L29Ah> | solidus-river: Data.Binary? |
| 21:47:02 | <L29Ah> | UInt64 is called "Word64" |
| 21:47:37 | × | hyiltiz quits (~quassel@unaffiliated/hyiltiz) (Ping timeout: 260 seconds) |
| 21:48:13 | <monochrom> | Data.Binary.Put has putWord64be and putInt64be |
| 21:48:23 | <L29Ah> | ok apparently the negative samples appear somewhat at the end of the profiling process: http://0x0.st/-qVa.hp |
| 21:48:28 | × | Kaeipi quits (~Kaiepi@47.54.252.148) (Remote host closed the connection) |
| 21:48:36 | → | hyiltiz joins (~quassel@unaffiliated/hyiltiz) |
| 21:49:13 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 21:49:35 | <L29Ah> | and some of positive ones become garbled |
| 21:49:47 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 21:49:56 | <solidus-river> | flush . putWord64be ! |
| 21:50:03 | → | Kaiepi joins (~Kaiepi@47.54.252.148) |
| 21:50:04 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 21:50:05 | <L29Ah> | https://tinystash.undef.im/il/49NPXJTB4GNbAse1cNm4KKMgCVEhnFyKzXuJTDUFyP6KUYpA2omL6fYMKftSDupRhFBuNcvbf21RkxPuXSGP3oYp |
| 21:50:09 | <solidus-river> | but all the docs for Int are signed representations |
| 21:51:09 | <solidus-river> | oh, a word is a uint |
| 21:51:13 | × | danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds) |
| 21:51:13 | <solidus-river> | huh? |
| 21:51:32 | <solidus-river> | thats a wierd naming, i associate word's with raw meaningless chunks of memory |
| 21:52:45 | × | stree quits (~stree@68.36.8.116) (Ping timeout: 264 seconds) |
| 21:53:08 | <solidus-river> | oh, sorry L29Ah i missed your second message :[ |
| 21:53:59 | → | v01d4lph4 joins (~v01d4lph4@106.212.133.35) |
| 21:55:18 | → | madjestic joins (~Android@86-88-72-244.fixed.kpn.net) |
| 21:55:50 | × | Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer) |
| 21:56:36 | → | Tops21 joins (~Tobias@dyndsl-095-033-092-175.ewe-ip-backbone.de) |
| 21:56:56 | → | Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net) |
| 21:57:40 | × | alx741 quits (~alx741@186.178.108.164) (Ping timeout: 256 seconds) |
| 21:57:46 | <monochrom> | I am surprised that DeriveFunctor works fine with "newtype M a = M (forall m. m -> (a->m) -> m)" |
| 21:58:45 | × | v01d4lph4 quits (~v01d4lph4@106.212.133.35) (Ping timeout: 256 seconds) |
| 22:00:19 | <hololeap> | ski, after letting it sink in, i think i understand now |
| 22:00:27 | <hololeap> | lose :: Decidable f => (a -> Void) -> f a ; lose toVoid = ... |
| 22:00:33 | × | Tops2 quits (~Tobias@dyndsl-095-033-092-175.ewe-ip-backbone.de) (Ping timeout: 264 seconds) |
| 22:00:37 | <hololeap> | toVoid is proof that 'a' has no elements. that is, it is proof that it is isomorphic to Void. |
| 22:00:48 | <hololeap> | 'Either Void a -> r' and 'Either a Void -> r' are isomporphic to 'a -> r', which makes 'Op r Void' the identity to 'choose @(Op r)' |
| 22:01:03 | <hololeap> | ... or something like that. it's a bit hard to explain, but i think i get it :) |
| 22:01:38 | × | ubert quits (~Thunderbi@p200300ecdf25d975e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 22:01:48 | × | hyiltiz quits (~quassel@unaffiliated/hyiltiz) (Ping timeout: 265 seconds) |
| 22:02:11 | <L29Ah> | ok, +RTS -N breaks profiling |
| 22:02:28 | → | hyiltiz joins (~quassel@unaffiliated/hyiltiz) |
| 22:02:31 | → | Rudd0 joins (~Rudd0@185.189.115.103) |
| 22:03:50 | → | borne joins (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) |
| 22:05:22 | → | knupfer joins (~Thunderbi@i59F7FF52.versanet.de) |
| 22:05:34 | → | stree joins (~stree@68.36.8.116) |
| 22:06:28 | ← | tempate parts (~tempate@unaffiliated/tempate) () |
| 22:07:15 | <bgamari> | L29Ah, sorry, had to run out or a moment |
| 22:07:16 | <bgamari> | L29Ah, oh? |
| 22:07:47 | × | Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 268 seconds) |
| 22:07:52 | <bgamari> | L29Ah, sorry, had to run out or a moment |
| 22:07:54 | <bgamari> | L29Ah, oh? |
| 22:07:56 | <bgamari> | L29Ah, I'm a tad surprised to hear that |
| 22:08:18 | <L29Ah> | bgamari: has nothing to do with the patchset tho |
| 22:08:31 | L29Ah | fills a bug report |
| 22:08:38 | <bgamari> | right, I would have been surprised if it had |
| 22:08:40 | <bgamari> | L29Ah, thanks! |
| 22:08:48 | × | codygman` quits (~user@209.251.131.98) (Ping timeout: 245 seconds) |
| 22:08:57 | × | apache8080 quits (~rishi@wsip-70-168-153-252.oc.oc.cox.net) (Ping timeout: 256 seconds) |
| 22:10:01 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds) |
| 22:10:27 | <solidus-river> | do i have to use Put with binary? i'm trying to use Builders but i'm getting type errors everywhere |
| 22:11:21 | <Uniaika> | I should explore other ways to serialise to binary without a type-class |
| 22:12:02 | Lycurgus | concludes, hastily perhaps there is no usable topoi hs thing yet |
| 22:12:08 | → | alx741 joins (~alx741@186.178.108.68) |
| 22:12:23 | × | Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection) |
| 22:12:24 | × | conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.) |
| 22:12:54 | <bgamari> | solidus-river, I'm not entirely sure what you |
| 22:13:00 | <monochrom> | Data.Binary.Builder also has putWord64be and putInt64be for Builder. |
| 22:13:02 | <bgamari> | solidus-river, IIRC Builder is a synonym for Put |
| 22:13:04 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 22:13:19 | <bgamari> | or rather, the other way around |
| 22:13:40 | <solidus-river> | this doesn't type check and I'm wifing on why, still playing around in ghci |
| 22:13:42 | <monochrom> | Neither. |
| 22:13:53 | <solidus-river> | toLazyByteString . putWord64be . fromIntegral |
| 22:14:08 | <solidus-river> | i think that should be Num a => a => ByteString |
| 22:14:13 | × | malumore quits (~malumore@151.62.115.239) (Ping timeout: 245 seconds) |
| 22:14:39 | <solidus-river> | erm: Num a => a -> ByteString |
| 22:14:46 | × | shaunm quits (~shaunm@185.204.1.185) (Remote host closed the connection) |
| 22:15:24 | <hololeap> | solidus-river: did you mean toInteger instead of fromIntegral? |
| 22:15:46 | → | son0p joins (~son0p@181.136.122.143) |
| 22:15:59 | <solidus-river> | :t toInteger |
| 22:16:00 | <lambdabot> | Integral a => a -> Integer |
| 22:16:05 | <solidus-river> | :t fromIntegral |
| 22:16:06 | <lambdabot> | (Integral a, Num b) => a -> b |
| 22:16:28 | → | conal joins (~conal@64.71.133.70) |
| 22:17:40 | × | Lycurgus quits (~niemand@98.4.119.196) (Quit: Exeunt) |
| 22:17:40 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:17:56 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:18:34 | → | usr25 joins (~usr25@unaffiliated/usr25) |
| 22:19:16 | <hololeap> | ignore that last statement of mine, but it would be: Integral a => a -> ByteString |
| 22:19:45 | × | is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 264 seconds) |
| 22:19:54 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 22:21:11 | → | kini joins (~kini@unaffiliated/kini) |
| 22:21:49 | × | son0p quits (~son0p@181.136.122.143) (Quit: leaving) |
| 22:22:02 | × | dhil quits (~dhil@80.208.56.181) (Ping timeout: 256 seconds) |
| 22:23:08 | <bgamari> | monochrom, huh, so you are right |
| 22:23:57 | <monochrom> | :) |
| 22:24:19 | <monochrom> | YEAH DOCS |
| 22:24:19 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:24:31 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:24:42 | <solidus-river> | toInteger didn't help but I'm getting closer... does ghci bot have these things imported? |
| 22:25:07 | <solidus-river> | :t toLazyByteString . putWord64be . fromIntegral |
| 22:25:09 | <lambdabot> | error: |
| 22:25:09 | <lambdabot> | Variable not in scope: toLazyByteString :: b0 -> c |
| 22:25:09 | <lambdabot> | error: |
| 22:25:16 | × | usr25 quits (~usr25@unaffiliated/usr25) (Quit: Leaving) |
| 22:25:16 | <solidus-river> | neope :P |
| 22:25:36 | × | zebrag quits (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!) |
| 22:25:45 | <solidus-river> | somethings messed up with my packages. Its claiming Data.ByteString has no toStrict |
| 22:25:53 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 22:25:57 | → | zebrag joins (~inkbottle@aaubervilliers-654-1-109-157.w86-212.abo.wanadoo.fr) |
| 22:26:01 | × | Franciman quits (~francesco@host-79-53-62-46.retail.telecomitalia.it) (Quit: Leaving) |
| 22:26:44 | <monochrom> | toStrict belongs to Data.ByteString.Lazy |
| 22:26:57 | <monochrom> | Do you have access to Hoogle? Docs? |
| 22:27:29 | → | tempate joins (~tempate@unaffiliated/tempate) |
| 22:27:42 | × | mice-user quits (7712037d@119-18-3-125.771203.syd.nbn.aussiebb.net) (Ping timeout: 240 seconds) |
| 22:28:05 | <tempate> | Can anyone recommend a good set of coding problems specifically meant to be solved in Haskell? |
| 22:28:49 | <hololeap> | it looks like PutM is basically the same as `Writer ByteString` (strict Writer), and `type Put = PutM ()` |
| 22:29:01 | <maerwald> | tempate: write a compiler |
| 22:30:00 | <Axman6> | tempate: https://wiki.haskell.org/H-99:_Ninety-Nine_Haskell_Problems https://blog.tmorris.net/posts/20-intermediate-haskell-exercises/ |
| 22:30:53 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds) |
| 22:30:53 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:30:58 | <tempate> | Thank you very much, Axman6 |
| 22:30:58 | <Axman6> | the latter is excellent, I won't say much more about it because it's intentionally a set of problems designed to make you let the types guide you |
| 22:31:07 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:31:19 | <Axman6> | Use the types Luke |
| 22:32:30 | <solidus-river> | monochrom: i'm using hackage docs but i'm not very good at navigating them i guess |
| 22:32:48 | <solidus-river> | toString is mentioned in the module documentation for Data.ByteString so i assumed it would be in there |
| 22:33:14 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 22:33:25 | <tempate> | Axman6: the second one does seem quite interesting. If you don't mind I'll get back at you once I've given it a try. |
| 22:34:02 | <Axman6> | yeah feel free to ask lots of questions here, it's likely you'll need some hints |
| 22:35:30 | <tempate> | Well, to be honest I didn't even know there were classes in Haskell |
| 22:35:49 | <Axman6> | you have much to learn then :) |
| 22:35:53 | <tempate> | tfw you learn from the question itself |
| 22:36:15 | × | Waifod quits (~Waifod@91.106.123.186) (Ping timeout: 240 seconds) |
| 22:36:26 | <Axman6> | if you haven't seen classes before, they're somewhat analogous to interfaces in, say, Java |
| 22:36:38 | <Axman6> | % :i Num |
| 22:36:38 | <yahb> | Axman6: type Num :: * -> Constraint; class Num a where; (+) :: a -> a -> a; (-) :: a -> a -> a; (*) :: a -> a -> a; negate :: a -> a; abs :: a -> a; signum :: a -> a; fromInteger :: Integer -> a; {-# MINIMAL (+), (*), abs, signum, fromInteger, (negate | (-)) #-}; -- Defined in `GHC.Num'; instance forall a. Integral a => Num (Ratio a) -- Defined in `GHC.Real'; instance Num Int8 -- Defined in `GHC.In |
| 22:36:43 | <monochrom> | solidus-river: Then consider version mismatch. bytestring-0.10.12.0 (from GHC 8.10.4) doesn't have toStrict in Data.ByteString. bytestring-0.11.* has it. Clearly, hackage always displays a version newer than what you actually use. |
| 22:36:54 | <Axman6> | hmm, that's a big class |
| 22:37:22 | <monochrom> | And Google, always 5 versions behind. |
| 22:37:41 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Read error: Connection reset by peer) |
| 22:37:42 | <tempate> | oh, right, I think a friend mentioned them once |
| 22:37:49 | <monochrom> | This is why I don't understand why serious developers don't build and read local docs. Internet docs are always the wrong version. |
| 22:38:02 | <tempate> | My only Haskell experience are days 1, 2 and 3 of Advent of Code 2020 |
| 22:38:56 | <Axman6> | right, maybe you will find other resources a better place to start. |
| 22:39:49 | <Axman6> | monochrom: I think in the haskell worls a lot of that comes from not having good integration with tools like IDEs, but that's changing with HLS, I find myself using the docs on hover a lot |
| 22:40:07 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 22:40:58 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
| 22:41:06 | → | is_null joins (~jpic@pdpc/supporter/professional/is-null) |
| 22:42:50 | <solidus-river> | monochrom: good tip, running a haddock build now :) this is my first real big haskell project so I'm still getting the ropes of the dev workflow |
| 22:43:31 | <Axman6> | tempate: not sure how useful it is for learning initially, but keep this handy, it's something that I've learned new things from again and again over the years: http://dev.stephendiehl.com/hask/ |
| 22:43:34 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 22:43:55 | <monochrom> | http://www.vex.net/~trebla/tmp/hasdoc is my shell script that guesses local doc location and pops it up in your web browser by an xdg-open call. |
| 22:44:28 | <tempate> | Axman6: well, I usually learn best by just diving right into problems and not going through endless books |
| 22:44:28 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:44:42 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:44:48 | <tempate> | (funnily enough this only happens to me with coding; I love reading) |
| 22:46:02 | → | notzmv joins (~zmv@unaffiliated/zmv) |
| 22:46:03 | <Axman6> | Many people get tripped up by doing that with Haskell, as it;s quite fundamentally different to what they already know - having taught Haskell at university, I often find people who haven't done any programming before find it easier to pick up as they don't have bad habbits ingrained already |
| 22:46:04 | → | jul1u5 joins (~julius@85.206.103.207) |
| 22:46:31 | <monochrom> | RIght, dive-in works iff there is little surprise. |
| 22:46:58 | <monochrom> | The old age of "easy to pick up another language because just syntax change" ended 20 years ago. |
| 22:47:07 | <solidus-river> | tempate: welcome :) Haskells heavy on the learning up-front but I just started 2 weeks ago and have a non-trivial 7 socketed threaded zeromq server that deals with shared state etc in ~ 300 lines of pretty darn readable code |
| 22:47:44 | <tempate> | solidus-river: nice! |
| 22:48:12 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 265 seconds) |
| 22:48:23 | <solidus-river> | i'm still cleaning up my do notation and drying things up, it'll likely be sub 200 after drying up and switching over to the monad that zmq4 provides |
| 22:48:40 | <solidus-river> | i'm not including utility functions or imports in that count though |
| 22:49:52 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 22:49:57 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Remote host closed the connection) |
| 22:51:05 | → | molehillish joins (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) |
| 22:51:05 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:51:18 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:52:10 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 22:52:48 | → | mith[m] joins (mithmatrix@gateway/shell/matrix.org/x-faoektnrbchujzvl) |
| 22:55:15 | <solidus-river> | and started working on the project 2 weeks ago, i've been hanging out in here and messing with haskell off and on for years now :X don't want to mis-represent things. I've just never tried to use it for anything "real world" till these last couple weeks |
| 22:55:46 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 22:56:27 | × | molehillish quits (~molehilli@2600:8800:8d06:1800:a4ec:e3c6:6b54:caa8) (Ping timeout: 272 seconds) |
| 22:57:08 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 22:57:48 | <tempate> | I have yet to write anything "real world", in any language |
| 22:57:48 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 22:57:52 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 22:57:59 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 22:58:23 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 22:58:25 | × | fendor quits (~fendor@91.141.1.9.wireless.dyn.drei.com) (Remote host closed the connection) |
| 22:59:00 | → | Guest84272 joins (~marienz@217.146.82.202) |
| 22:59:05 | × | aplainzetakind quits (~johndoe@captainludd.powered.by.lunarbnc.net) (Client Quit) |
| 22:59:38 | × | knupfer quits (~Thunderbi@i59F7FF52.versanet.de) (Ping timeout: 245 seconds) |
| 23:00:06 | <solidus-river> | monochrom: is there a way to hoogle against local packages? |
| 23:00:38 | → | Garbanzo joins (~Garbanzo@2602:304:6eac:dc10::2e) |
| 23:01:23 | <ephemient> | solidus-river: hoogle generate --local |
| 23:01:42 | <ephemient> | assuming you have haddocks for local packages, I guess |
| 23:03:59 | → | nuncanada joins (~dude@179.235.160.168) |
| 23:04:14 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 23:04:25 | → | heatsink joins (~heatsink@2600:1700:bef1:5e10:10c4:3f41:be04:1f78) |
| 23:05:12 | × | elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 260 seconds) |
| 23:06:06 | <solidus-river> | ephemient: thanks! |
| 23:07:33 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
| 23:08:50 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 268 seconds) |
| 23:09:12 | → | aarvar joins (~foewfoiew@2601:602:a080:fa0:8d5e:8b07:4f7a:6938) |
| 23:10:03 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 23:10:18 | → | jutep joins (5f5bdd59@ip5f5bdd59.dynamic.kabel-deutschland.de) |
| 23:10:41 | × | borne quits (~fritjof@200116b8644f8c00bc09546e2ac68572.dip.versatel-1u1.de) (Ping timeout: 268 seconds) |
| 23:11:02 | → | borne joins (~fritjof@2a06:8782:ffbb:1337:f5f9:d8dd:74d:2bc8) |
| 23:16:46 | → | jamm_ joins (~jamm@unaffiliated/jamm) |
| 23:16:47 | × | Guest39025 quits (~textual@zrcout.mskcc.org) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 23:17:55 | → | aplainzetakind joins (~johndoe@captainludd.powered.by.lunarbnc.net) |
| 23:18:04 | → | geowiesnot joins (~user@87-89-181-157.abo.bbox.fr) |
| 23:18:04 | × | emmanuel_erc quits (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) (Read error: Connection reset by peer) |
| 23:18:22 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 23:18:29 | → | emmanuel_erc joins (~user@2603-7000-9600-01c9-0000-0000-0000-0874.res6.spectrum.com) |
| 23:20:30 | → | coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) |
| 23:20:57 | × | LKoen quits (~LKoen@194.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”) |
| 23:21:32 | × | jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 260 seconds) |
| 23:22:26 | × | __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving) |
| 23:22:38 | × | Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 244 seconds) |
| 23:23:05 | × | kini quits (~kini@unaffiliated/kini) (Remote host closed the connection) |
| 23:23:21 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 264 seconds) |
| 23:24:19 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
| 23:24:23 | → | kini joins (~kini@unaffiliated/kini) |
| 23:29:34 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 23:29:58 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection) |
| 23:30:56 | → | ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net) |
| 23:34:38 | × | juri_ quits (~juri@212.86.35.86) (Ping timeout: 245 seconds) |
| 23:34:56 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:35:28 | × | ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 245 seconds) |
| 23:35:49 | → | vicfred joins (vicfred@gateway/vpn/mullvad/vicfred) |
| 23:37:08 | × | xsperry quits (~as@unaffiliated/xsperry) (Remote host closed the connection) |
| 23:38:08 | → | Alleria joins (~textual@2603-7000-3040-0000-4c26-30e6-a1ae-bc87.res6.spectrum.com) |
| 23:38:31 | × | _Alleria quits (~AllahuAkb@2603-7000-3040-0000-b174-32cd-b29a-dcb9.res6.spectrum.com) (Read error: Connection reset by peer) |
| 23:38:32 | Alleria | is now known as Guest14565 |
| 23:39:55 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 23:41:49 | → | juri_ joins (~juri@79.140.115.52) |
| 23:43:10 | × | coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot) |
| 23:43:37 | → | Alleria_ joins (~AllahuAkb@2603-7000-3040-0000-b174-32cd-b29a-dcb9.res6.spectrum.com) |
| 23:43:51 | × | vicfred quits (vicfred@gateway/vpn/mullvad/vicfred) (Quit: Leaving) |
| 23:47:44 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 23:49:13 | × | irc_user quits (uid423822@gateway/web/irccloud.com/x-unailobkgqldbboi) (Quit: Connection closed for inactivity) |
| 23:49:40 | → | LogicUpgrade joins (57e3c46d@87.227.196.109) |
| 23:49:52 | × | nrh^ quits (nrh@ip98-184-89-2.mc.at.cox.net) () |
| 23:50:28 | × | LogicUpgrade quits (57e3c46d@87.227.196.109) (Client Quit) |
| 23:52:44 | <ski> | monochrom : wouldn't the obvious generated code work for that `M' ? |
| 23:53:17 | <ski> | hololeap : mhm, ok (not sure about the `choose @(Op r)') |
| 23:53:29 | → | usr25 joins (~usr25@unaffiliated/usr25) |
| 23:55:29 | → | dsrt^ joins (dsrt@ip98-184-89-2.mc.at.cox.net) |
| 23:56:57 | <monochrom> | It was not obvious how to even hand-code it :) |
| 23:57:49 | <monochrom> | But over the past hour I worked it out. |
| 23:59:49 | <ski> | fmap f (M blah) = M (\m k -> blah m (\a -> k (f a))) -- seems rather obvious, to me ? |
All times are in UTC on 2021-03-24.