Home freenode/#haskell: Logs Calendar

Logs on 2021-04-02 (freenode/#haskell)

00:02:47 × elfets_ quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 252 seconds)
00:03:08 × moet quits (~moet@172.58.35.212) (Ping timeout: 252 seconds)
00:03:35 ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
00:04:00 × zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving)
00:06:19 zaquest joins (~notzaques@5.128.210.178)
00:07:46 × ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
00:09:17 <ja> can i build bytestrings fast in ST? by looking at the Builder docs, it doesn't look like it
00:13:17 <ja> or maybe i should use the cereal package. but it doesn't work with bytestring's builder, so i'd have to "build" the builder for every little piece...
00:15:06 × ania123 quits (5e89ad7c@94.137.173.124) (Quit: Connection closed)
00:16:00 × xff0x_ quits (~xff0x@2001:1a81:532d:a700:6abb:1223:9f25:3fb) (Ping timeout: 246 seconds)
00:16:27 × Sonderblade quits (~helloman@2a02:aa1:100d:fe6f:6a75:3fbc:c81a:1def) (Quit: Konversation terminated!)
00:16:55 xff0x_ joins (~xff0x@2001:1a81:532d:a700:ee65:9943:a3da:2f97)
00:22:46 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
00:24:31 ezrakilty joins (~ezrakilty@97-126-95-37.tukw.qwest.net)
00:25:07 machinedgod joins (~machinedg@24.105.81.50)
00:25:37 × zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
00:25:59 zebrag joins (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr)
00:28:58 × hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Quit: hendursa1)
00:29:50 hendursaga joins (~weechat@gateway/tor-sasl/hendursaga)
00:30:14 × Alleria__ quits (~textual@zrcout.mskcc.org) (Ping timeout: 265 seconds)
00:30:55 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
00:33:30 × hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:a90f:d52f:fbbd:96ce) (Ping timeout: 246 seconds)
00:38:59 gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
00:39:27 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
00:42:37 vicfred joins (~vicfred@unaffiliated/vicfred)
00:44:35 × elliott_ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
00:48:10 × haritz quits (~hrtz@unaffiliated/haritz) (Remote host closed the connection)
00:54:11 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
01:02:16 × gienah quits (~mwright@gentoo/developer/gienah) (Read error: Connection reset by peer)
01:05:24 × Tario quits (~Tario@200.119.184.73) (Read error: Connection reset by peer)
01:05:24 × Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
01:05:48 Tario joins (~Tario@201.192.165.173)
01:05:48 hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:d582:eb76:c23d:386d)
01:06:41 Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net)
01:07:20 stree joins (~stree@68.36.8.116)
01:07:41 haritz joins (~hrtz@62.3.70.206)
01:07:41 × haritz quits (~hrtz@62.3.70.206) (Changing host)
01:07:41 haritz joins (~hrtz@unaffiliated/haritz)
01:09:21 × notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 260 seconds)
01:10:18 gienah joins (~mwright@gentoo/developer/gienah)
01:10:47 × whataday quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:11:54 whataday joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:12:49 nbloomf joins (~nbloomf@2600:1700:ad14:3020:c8ca:5fa3:40f5:5b78)
01:14:48 × hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:d582:eb76:c23d:386d) (Ping timeout: 246 seconds)
01:18:11 × codygman__ quits (~user@47.186.207.161) (Ping timeout: 240 seconds)
01:24:01 × haritz quits (~hrtz@unaffiliated/haritz) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
01:25:11 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
01:25:38 × zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
01:25:59 zebrag joins (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr)
01:30:25 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
01:30:31 Achylles joins (~Achylles@2804:431:d724:f5e3:cb98:83b:5dd9:fd8d)
01:30:38 Tario joins (~Tario@201.192.165.173)
01:34:26 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
01:35:00 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 265 seconds)
01:35:45 slack1256 joins (~slack1256@dvc-186-186-101-190.movil.vtr.net)
01:36:13 Tario joins (~Tario@200.119.184.73)
01:38:14 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-zumirhpzvxzwijnj) ()
01:39:51 kiweun joins (~kiweun@2607:fea8:2a62:9600:1db8:f684:c910:4985)
01:39:52 × Tario quits (~Tario@200.119.184.73) (Read error: Connection reset by peer)
01:42:58 Tario joins (~Tario@201.192.165.173)
01:43:28 × xiinotulp quits (~q@node-ul9.pool-125-24.dynamic.totinternet.net) (Quit: Leaving)
01:47:25 × Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007)
01:49:41 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 240 seconds)
01:52:53 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 268 seconds)
01:54:00 × xff0x_ quits (~xff0x@2001:1a81:532d:a700:ee65:9943:a3da:2f97) (Ping timeout: 246 seconds)
01:56:09 xff0x_ joins (~xff0x@2001:1a81:534a:5f00:2279:7f9b:769c:c9e9)
01:57:36 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
02:00:08 Tario joins (~Tario@201.192.165.173)
02:02:33 FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
02:02:33 finn_elija is now known as Guest60912
02:02:33 FinnElija is now known as finn_elija
02:03:39 × urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna)
02:05:33 × Guest60912 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds)
02:05:39 × sw1nn quits (~sw1nn@host86-135-157-104.range86-135.btcentralplus.com) (Ping timeout: 248 seconds)
02:06:38 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 240 seconds)
02:08:21 <dcbdan> is there some way to get around rigid type variables? how can one provide the type signature of g in https://paste.tomsmeding.com/b17s4UG6 ?
02:08:40 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:c8ca:5fa3:40f5:5b78) (Quit: My MacBook has gone to sleep. ZZZzzz…)
02:08:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
02:10:18 <hololeap> dcbdan: you might be looking for ScopedTypeVariables
02:10:26 jophish__ joins (ca536851@202.83.104.81)
02:10:39 <c_wraith> yeah, that's the only way that makes sense
02:11:09 <hololeap> https://paste.tomsmeding.com/mjDETjku
02:12:40 <hololeap> https://downloads.haskell.org/ghc/8.10.4/docs/html/users_guide/glasgow_exts.html#extension-ScopedTypeVariables
02:14:08 <dcbdan> Ah, neat. so with the forall + extension it works
02:14:09 nbloomf joins (~nbloomf@2600:1700:ad14:3020:c8ca:5fa3:40f5:5b78)
02:14:48 <c_wraith> The reason it was failing before was that ghc treated the two type variables named a as totally separate, and it couldn't unify them because they were both required to be polymorphic
02:18:05 sw1nn joins (~sw1nn@2a00:23c7:622f:2c00:1df3:35cd:5bdc:c4d5)
02:18:17 × shutdown_-h_now quits (~arjan@2001:1c06:2d0b:2312:b9ee:34c0:cea7:8b6) (Ping timeout: 258 seconds)
02:18:24 × waleee-cl quits (uid373333@gateway/web/irccloud.com/x-mioklqbuoxhsafmf) (Quit: Connection closed for inactivity)
02:22:00 × zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
02:22:41 <dcbdan> ok, that's a good explanation
02:23:19 × shalokshalom quits (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106) (Remote host closed the connection)
02:23:45 × Sigyn quits (sigyn@freenode/utility-bot/sigyn) (Read error: Connection reset by peer)
02:25:19 shutdown_-h_now joins (~arjan@2001:1c06:2d0b:2312:b9ee:34c0:cea7:8b6)
02:26:33 × Achylles quits (~Achylles@2804:431:d724:f5e3:cb98:83b:5dd9:fd8d) (Ping timeout: 246 seconds)
02:27:01 shalokshalom joins (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106)
02:31:17 fosterite joins (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896)
02:33:17 Achylles joins (~Achylles@2804:431:d724:f5e3:cb98:83b:5dd9:fd8d)
02:34:22 Tario joins (~Tario@200.119.184.73)
02:35:46 notzmv joins (~zmv@unaffiliated/zmv)
02:35:57 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds)
02:36:15 × Aquazi quits (uid312403@gateway/web/irccloud.com/x-qtinzdfibqjwmcbv) (Quit: Connection closed for inactivity)
02:37:53 × Guest40784 quits (~laudiacay@67.176.215.84) (Quit: WeeChat 3.0)
02:38:37 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
02:38:37 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 252 seconds)
02:40:43 × martin02 quits (silas@hund.fs.lmu.de) (Ping timeout: 258 seconds)
02:42:12 × shalokshalom quits (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106) (Remote host closed the connection)
02:43:05 shalokshalom joins (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106)
02:44:09 × conal quits (~conal@192.145.118.200) (Quit: Computer has gone to sleep.)
02:44:34 martin02 joins (silas@hund.fs.lmu.de)
02:44:37 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
02:45:03 × shalokshalom quits (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106) (Client Quit)
02:45:32 danso joins (~dan@2001:1970:52e7:d000:96b8:6dff:feb3:c009)
02:45:53 joe[m]1 joins (joemonoida@gateway/shell/matrix.org/x-xmbjijvsfazciall)
02:46:58 shalokshalom joins (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106)
02:50:44 × gitgood quits (~gitgood@80-44-12-39.dynamic.dsl.as9105.com) (Ping timeout: 246 seconds)
02:51:40 × shalokshalom quits (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106) (Remote host closed the connection)
02:53:03 conal joins (~conal@192.145.118.115)
02:53:47 Jd007 joins (~Jd007@162.156.11.151)
02:56:34 machinedgod joins (~machinedg@24.105.81.50)
02:58:15 × theDon quits (~td@94.134.91.35) (Ping timeout: 268 seconds)
03:00:00 theDon joins (~td@muedsl-82-207-238-162.citykom.de)
03:11:48 × slack1256 quits (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Ping timeout: 268 seconds)
03:15:04 xaltsc joins (~xaltsc@unaffiliated/xaltsc)
03:15:11 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
03:16:41 × notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 240 seconds)
03:18:35 × Tario quits (~Tario@200.119.184.73) (Ping timeout: 252 seconds)
03:18:57 Tario joins (~Tario@200.119.186.52)
03:19:36 × kiweun quits (~kiweun@2607:fea8:2a62:9600:1db8:f684:c910:4985) (Remote host closed the connection)
03:28:41 stree joins (~stree@68.36.8.116)
03:30:49 elliott_ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
03:31:04 × Matt_P quits (~Matt_P@178.239.168.171) (Remote host closed the connection)
03:31:05 × electricityZZZZ quits (~electrici@135-180-3-82.static.sonic.net) (Quit: Leaving)
03:32:45 kiweun joins (~kiweun@2607:fea8:2a62:9600:4461:b1b3:c8a0:c4ce)
03:33:56 gzj joins (~gzj@unaffiliated/gzj)
03:34:22 jamm_ joins (~jamm@unaffiliated/jamm)
03:35:06 × elliott_ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
03:35:10 wei2912 joins (~wei2912@unaffiliated/wei2912)
03:35:19 × bitmapper quits (uid464869@gateway/web/irccloud.com/x-uvvubdxwbzbtugry) (Quit: Connection closed for inactivity)
03:37:15 × kiweun quits (~kiweun@2607:fea8:2a62:9600:4461:b1b3:c8a0:c4ce) (Ping timeout: 258 seconds)
03:37:18 elusive joins (~Jeanne-Ka@static-198-54-134-72.cust.tzulo.com)
03:37:45 solvr joins (57e3c46d@87.227.196.109)
03:38:47 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
03:41:27 × Achylles quits (~Achylles@2804:431:d724:f5e3:cb98:83b:5dd9:fd8d) (Ping timeout: 246 seconds)
03:45:13 × fosterite quits (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896) (Remote host closed the connection)
03:46:46 fosterite joins (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896)
03:46:47 × fosterite quits (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896) (Remote host closed the connection)
03:46:48 × Tario quits (~Tario@200.119.186.52) (Read error: Connection reset by peer)
03:47:24 Tario joins (~Tario@201.192.165.173)
03:48:56 fosterite joins (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896)
03:48:57 × Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007)
03:48:57 × fosterite quits (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896) (Read error: Connection reset by peer)
03:49:36 fosterite joins (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896)
03:52:23 × alx741 quits (~alx741@181.196.69.168) (Quit: alx741)
03:54:29 __minoru__shirae joins (~shiraeesh@109.166.58.127)
03:54:53 × fosterite quits (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896) (Ping timeout: 258 seconds)
03:56:43 Jd007 joins (~Jd007@162.156.11.151)
03:59:11 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
04:00:41 × conal quits (~conal@192.145.118.115) (Ping timeout: 240 seconds)
04:02:02 <hololeap> is it better to put `ghc-options: -Wall -Wcompat` in cabal.project.local, cabal.project, or the .cabal file itself?
04:03:46 moet joins (~moet@172.58.35.224)
04:03:53 <hololeap> i suppose cabal.project wouldn't be a good place
04:05:04 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:07:18 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
04:07:32 notzmv joins (~zmv@unaffiliated/zmv)
04:09:53 <edwardk> I put -Wall in the .cabal file usually
04:10:42 conal joins (~conal@192.145.118.233)
04:11:16 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Remote host closed the connection)
04:11:36 × nrh^ quits (nrh@ip98-184-89-2.mc.at.cox.net) ()
04:15:02 <hololeap> i was looking at the list here, and wondered if it made sense to ship all those extra warnings with the repo, or keep it local: https://medium.com/mercury-bank/enable-all-the-warnings-a0517bc081c3
04:15:18 <hololeap> (just in general)
04:15:20 caef^ joins (caef@ip98-184-89-2.mc.at.cox.net)
04:15:30 asdfghjkl100 joins (49336fc4@c-73-51-111-196.hsd1.il.comcast.net)
04:17:24 plakband joins (~plakband@softbank126227040096.bbtec.net)
04:20:33 × plakband quits (~plakband@softbank126227040096.bbtec.net) (Client Quit)
04:21:33 <monochrom> cabal.project.local if you want it a personal setting
04:22:07 × astroanax quits (~astroanax@cosmic.voyage) (Quit: WeeChat 3.2-dev)
04:23:40 <moet> how can i write into a repa array?
04:24:11 elliott_ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
04:29:27 fosterite joins (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896)
04:34:42 <hololeap> moet: looks like it depends on the representation
04:35:02 <hololeap> e.g. Data.Array.Repa.Unboxed.fromUnboxed
04:35:03 × fosterite quits (~fosterite@2600:6c46:7800:fecf:a922:8eee:4a67:e896) (Ping timeout: 250 seconds)
04:37:28 <moet> hololeap: I don't think that function allows me to write into a repa array, it just allows construction of an array from a shape & vector
04:38:18 <moet> thanks
04:39:09 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
04:39:29 <hololeap> moet: unsafeWriteMVec ? i've never used the library fwiw
04:39:35 <hololeap> it looks confusing
04:42:15 SLNP joins (~SLNP@195.140.213.38)
04:42:57 <moet> i think MVec isn't the right approach either. it seems to be a bespoke type for a single purpose, not related to the goal of mutating elements in an Array
04:43:10 <moet> no problem; i found some people on SO saying that it's basically not supported
04:47:36 × matryoshka quits (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809) (Ping timeout: 246 seconds)
04:48:24 hexfive joins (~hexfive@50.35.83.177)
04:51:32 × hexfive quits (~hexfive@50.35.83.177) (Client Quit)
04:54:16 fosterite joins (~fosterite@2600:6c46:7800:fecf:f009:c5a6:bc28:3e60)
04:54:38 × elliott_ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
04:58:54 × fosterite quits (~fosterite@2600:6c46:7800:fecf:f009:c5a6:bc28:3e60) (Ping timeout: 258 seconds)
04:59:12 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
05:01:38 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 246 seconds)
05:02:43 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
05:04:51 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 258 seconds)
05:06:12 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
05:07:16 × solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed)
05:10:11 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
05:12:01 × arahael quits (~arahael@121-44-10-207.tpgi.com.au) (Quit: "Rebooting tmux!")
05:13:07 arahael joins (~arahael@121-44-10-207.tpgi.com.au)
05:15:19 × ezrakilty quits (~ezrakilty@97-126-95-37.tukw.qwest.net) (Remote host closed the connection)
05:15:41 × pavonia quits (~user@unaffiliated/siracusa) (Ping timeout: 240 seconds)
05:16:58 pavonia joins (~user@unaffiliated/siracusa)
05:17:43 × eruditass quits (uid248673@gateway/web/irccloud.com/x-nzructhhtvyozyez) (Quit: Connection closed for inactivity)
05:19:33 × elusive quits (~Jeanne-Ka@static-198-54-134-72.cust.tzulo.com) (Quit: Leaving)
05:22:15 × ajc quits (~ajc@69.231.232.79) (Ping timeout: 246 seconds)
05:22:32 × ajc_ quits (~ajc@69.231.232.79) (Ping timeout: 268 seconds)
05:29:45 takuan joins (~takuan@178-116-218-225.access.telenet.be)
05:30:43 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
05:36:01 <hololeap> it seems strange to me that -Wprepositive-qualified-module exists
05:36:26 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
05:37:07 <hololeap> what makes `import M qualified` better?
05:37:15 × vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
05:39:13 plutoniix joins (~q@ppp-223-24-155-53.revip6.asianet.co.th)
05:39:19 doraemon joins (~doraemon@117.222.66.9)
05:40:37 solvr joins (57e3c46d@87.227.196.109)
05:41:15 codygman__ joins (~user@47.186.207.161)
05:44:55 × codygman__ quits (~user@47.186.207.161) (Remote host closed the connection)
05:45:17 codygman__ joins (~user@47.186.207.161)
05:45:56 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
05:46:11 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 240 seconds)
05:46:12 <remexre> I guess module names now line up?
05:46:43 <remexre> if I'm reading https://cdn.remexre.xyz/screenshots/a4a4a9a7a334e817a47280455ba906d8e6221c3c.png my eyes are going back and forth when reading module names
05:46:43 eell joins (~eell@ip68-228-88-197.oc.oc.cox.net)
05:47:19 × eell quits (~eell@ip68-228-88-197.oc.oc.cox.net) (Client Quit)
05:47:53 eell joins (~eell@ip68-228-88-197.oc.oc.cox.net)
05:48:33 eell2 joins (~eell@ip68-228-88-197.oc.oc.cox.net)
05:49:10 stree joins (~stree@68.36.8.116)
05:55:27 × SLNP quits (~SLNP@195.140.213.38) (Remote host closed the connection)
05:55:38 × codygman__ quits (~user@47.186.207.161) (Remote host closed the connection)
05:57:14 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:c8ca:5fa3:40f5:5b78) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:58:27 × plutoniix quits (~q@ppp-223-24-155-53.revip6.asianet.co.th) (Quit: Leaving)
06:00:21 × doraemon quits (~doraemon@117.222.66.9) (Ping timeout: 265 seconds)
06:09:09 × average quits (uid473595@gateway/web/irccloud.com/x-iajetmultxvekhqd) (Quit: Connection closed for inactivity)
06:11:16 × eell2 quits (~eell@ip68-228-88-197.oc.oc.cox.net) (Quit: Leaving)
06:11:16 × eell quits (~eell@ip68-228-88-197.oc.oc.cox.net) (Quit: Leaving)
06:20:06 alorente joins (~alorente@185.204.1.185)
06:30:26 DTZUZU_ joins (~DTZUZO@207.81.119.43)
06:32:44 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 265 seconds)
06:35:42 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
06:37:07 <hololeap> yeah that was the only thing i could think of. i would prefer it although adding another extension for it seems a bit overkill
06:38:31 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Remote host closed the connection)
06:39:40 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
06:40:59 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 252 seconds)
06:41:07 × gzj quits (~gzj@unaffiliated/gzj) (Remote host closed the connection)
06:41:40 erred joins (~kvirc@84.120.196.129.dyn.user.ono.com)
06:41:42 <erred> fwiptables is a script to configure a firewall
06:42:50 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Remote host closed the connection)
06:43:20 rdivyanshu joins (uid322626@gateway/web/irccloud.com/x-jjqjclcbcrjnejmg)
06:44:18 sord937 joins (~sord937@gateway/tor-sasl/sord937)
06:49:21 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
06:49:53 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
06:50:42 × asdfghjkl100 quits (49336fc4@c-73-51-111-196.hsd1.il.comcast.net) (Ping timeout: 240 seconds)
06:54:22 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
06:55:26 fosterite joins (~fosterite@2600:6c46:7800:fecf:f009:c5a6:bc28:3e60)
06:55:57 × Unhammer quits (~Unhammer@gateway/tor-sasl/unhammer) (Ping timeout: 240 seconds)
06:58:01 × solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed)
06:58:30 Lycurgus joins (~niemand@98.4.115.201)
06:59:00 Unhammer joins (~Unhammer@gateway/tor-sasl/unhammer)
07:00:02 × fosterite quits (~fosterite@2600:6c46:7800:fecf:f009:c5a6:bc28:3e60) (Ping timeout: 258 seconds)
07:00:19 × Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
07:00:49 Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net)
07:04:06 × moet quits (~moet@172.58.35.224) (Ping timeout: 240 seconds)
07:06:10 moet joins (~moet@172.58.35.224)
07:06:11 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 240 seconds)
07:10:28 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
07:10:41 × Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 240 seconds)
07:11:18 × Jd007 quits (~Jd007@162.156.11.151) (Ping timeout: 240 seconds)
07:11:44 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
07:11:55 Varis joins (~Tadas@unaffiliated/varis)
07:12:15 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
07:14:40 Aquazi joins (uid312403@gateway/web/irccloud.com/x-vlpeluuzsmhakghd)
07:15:06 elnegro joins (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy)
07:18:38 elnegro parts (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy) ()
07:18:48 elnegro joins (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy)
07:19:01 × elnegro quits (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy) ()
07:19:14 elnegro joins (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy)
07:19:20 elnegro parts (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy) ()
07:19:44 elnegro joins (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy)
07:24:11 × __minoru__shirae quits (~shiraeesh@109.166.58.127) (Ping timeout: 240 seconds)
07:27:45 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
07:33:40 × elnegro quits (elnegro@r167-61-169-237.dialup.adsl.anteldata.net.uy) ()
07:34:54 coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
07:37:05 __minoru__shirae joins (~shiraeesh@109.166.58.127)
07:43:31 × pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!)
07:45:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:45:42 dyamon joins (~dyamon@cpc69058-oxfd26-2-0-cust662.4-3.cable.virginm.net)
07:45:58 × moet quits (~moet@172.58.35.224) (Ping timeout: 240 seconds)
07:46:01 × erred quits (~kvirc@84.120.196.129.dyn.user.ono.com) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/)
07:49:51 × stree quits (~stree@68.36.8.116) (Quit: Caught exception)
07:50:15 stree joins (~stree@68.36.8.116)
07:50:39 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 252 seconds)
07:51:34 <arahael> Wrong channel?
07:51:42 Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas)
07:54:19 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
07:59:50 × xaltsc quits (~xaltsc@unaffiliated/xaltsc) (Ping timeout: 258 seconds)
08:01:45 xaltsc joins (~xaltsc@unaffiliated/xaltsc)
08:01:48 × evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Read error: Connection reset by peer)
08:03:16 evanjs joins (~evanjs@075-129-098-007.res.spectrum.com)
08:03:52 mkDoku joins (~TheMule@aftr-37-201-195-134.unity-media.net)
08:06:36 hendursa1 joins (~weechat@gateway/tor-sasl/hendursaga)
08:06:43 fosterite joins (~fosterite@071-082-136-216.res.spectrum.com)
08:08:42 × hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Remote host closed the connection)
08:09:04 hendursa1 joins (~weechat@gateway/tor-sasl/hendursaga)
08:09:24 × howdoi quits (uid224@gateway/web/irccloud.com/x-cfvhixtqrzmeskoe) (Quit: Connection closed for inactivity)
08:09:33 × hendursaga quits (~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
08:10:32 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
08:10:46 michalz joins (~user@185.246.204.43)
08:11:06 × fosterite quits (~fosterite@071-082-136-216.res.spectrum.com) (Ping timeout: 240 seconds)
08:11:43 × texasmynsted quits (~texasmyns@99.96.221.112) (Quit: ZNC - http://znc.in)
08:15:41 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
08:18:09 Feuermagier joins (~Feuermagi@213.178.26.41)
08:18:58 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
08:20:35 texasmynsted joins (~texasmyns@99.96.221.112)
08:21:04 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
08:21:06 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
08:21:23 PacoV joins (~PCoves@71.114.141.88.rev.sfr.net)
08:22:11 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 252 seconds)
08:23:52 <PacoV> Hi there. I'm having trouble compiling a project (one lib, two bins) on a previously-fine-working gitlab-ci.
08:24:12 frozenErebus joins (~frozenEre@37.231.244.249)
08:24:14 <PacoV> Here are the .cabal http://ix.io/2UNg and the gitlab-ci.yml http://ix.io/2UNh
08:24:35 <PacoV> It all build fine on my machine using `cabal build`.
08:24:54 <PacoV> But it cannot solve dependencies on the CI.
08:25:35 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 250 seconds)
08:25:42 LKoen joins (~LKoen@65.250.88.92.rev.sfr.net)
08:25:55 <PacoV> Here are the CI logs : http://ix.io/2UNj
08:26:13 <PacoV> Do you have any idea what could cause this issue and how to fix it?
08:26:29 <PacoV> The pipeline broke two or three days ago.
08:29:02 average joins (uid473595@gateway/web/irccloud.com/x-wwdbavuosvjdgwrm)
08:33:27 malumore joins (~malumore@151.62.126.67)
08:33:35 × malumore quits (~malumore@151.62.126.67) (Remote host closed the connection)
08:35:34 anandprabhu-M joins (anandprabh@gateway/shell/kde/matrix/x-bzzbuurppcsxzllt)
08:37:07 Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net)
08:38:41 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
08:39:41 fosterite joins (~fosterite@2600:6c46:7800:fecf:4142:f0f9:d998:fd13)
08:40:38 fiQ- joins (~fiQ@2a06:82c2:0:12bc::1)
08:40:46 × dexterfoo quits (dexter@2a01:7e00::f03c:91ff:fe86:59ec) (Ping timeout: 245 seconds)
08:41:10 mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan)
08:41:36 × fiQ2 quits (~fiQ@2a06:82c2:0:12bc::1) (Ping timeout: 245 seconds)
08:41:36 × holo2 quits (~holo@nikky.moe) (Ping timeout: 245 seconds)
08:41:37 × xff0x_ quits (~xff0x@2001:1a81:534a:5f00:2279:7f9b:769c:c9e9) (Ping timeout: 250 seconds)
08:41:56 holo2 joins (~holo@nikky.moe)
08:42:21 xff0x_ joins (~xff0x@2001:1a81:534a:5f00:d711:9eaf:605f:bfbf)
08:42:39 dexterfoo joins (dexter@2a01:7e00::f03c:91ff:fe86:59ec)
08:44:18 × fosterite quits (~fosterite@2600:6c46:7800:fecf:4142:f0f9:d998:fd13) (Ping timeout: 258 seconds)
08:48:02 <PacoV> Guess I found out.
08:49:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
08:52:51 × rdivyanshu quits (uid322626@gateway/web/irccloud.com/x-jjqjclcbcrjnejmg) (Quit: Connection closed for inactivity)
08:53:17 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
08:54:33 frozenErebus joins (~frozenEre@37.231.244.249)
09:00:51 × gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 268 seconds)
09:02:11 × puke quits (~vroom@217.138.252.216) (Quit: puke)
09:02:57 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
09:03:18 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
09:09:59 makabaka joins (~makabaka@154.210.255.226)
09:10:47 × makabaka quits (~makabaka@154.210.255.226) (Client Quit)
09:11:23 puke joins (~vroom@217.138.252.196)
09:18:25 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
09:18:46 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 240 seconds)
09:20:04 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
09:21:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
09:22:41 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
09:23:01 × aarvar quits (~foewfoiew@2601:602:a080:fa0:906c:b23f:e55d:e8aa) (Ping timeout: 258 seconds)
09:23:31 Varis joins (~Tadas@unaffiliated/varis)
09:24:58 × Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
09:26:01 Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net)
09:26:41 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
09:28:11 × notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 265 seconds)
09:28:28 gitgood joins (~gitgood@80-44-12-39.dynamic.dsl.as9105.com)
09:28:52 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
09:30:11 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
09:31:40 × mrchampion quits (~mrchampio@38.18.109.23) (Ping timeout: 268 seconds)
09:32:27 kodachi joins (~kodachi@161.8.125.173)
09:33:06 × kodachi quits (~kodachi@161.8.125.173) (Client Quit)
09:36:23 graf_blutwurst joins (~user@2001:171b:226e:adc0:1985:81f0:1ae0:96eb)
09:36:31 fosterite joins (~fosterite@2600:6c46:7800:fecf:dcd8:7277:dd23:c41e)
09:37:26 rajivr joins (uid269651@gateway/web/irccloud.com/x-ooidmjfwldhvhpcx)
09:39:27 kuribas joins (~user@ptr-25vy0i9ffr9vxfznwlf.18120a2.ip6.access.telenet.be)
09:39:51 × ericsagnes quits (~ericsagne@2405:6580:0:5100:7ad7:6b13:eb4:f58c) (Ping timeout: 246 seconds)
09:40:02 <kuribas> there is no safe index in base, no?
09:40:05 <kuribas> :t (!!)
09:40:06 <lambdabot> [a] -> Int -> a
09:40:09 ericsagnes joins (~ericsagne@2405:6580:0:5100:8a29:d196:d07b:3df1)
09:41:02 × fosterite quits (~fosterite@2600:6c46:7800:fecf:dcd8:7277:dd23:c41e) (Ping timeout: 258 seconds)
09:44:21 frozenErebus joins (~frozenEre@37.231.244.249)
09:44:37 × Lycurgus quits (~niemand@98.4.115.201) (Ping timeout: 268 seconds)
09:45:24 bitmagie joins (~Thunderbi@200116b806b3d300e5607f55ad4ccacb.dip.versatel-1u1.de)
09:45:27 × ericsagnes quits (~ericsagne@2405:6580:0:5100:8a29:d196:d07b:3df1) (Ping timeout: 246 seconds)
09:46:20 mrchampion joins (~mrchampio@38.18.109.23)
09:46:47 <Rembane> kuribas: You can drop and then do a listToMaybe, but that's two functions and a composition.
09:47:21 <kuribas> Rembane: now I do filter (!! 9) . filter (> 9 . length)
09:47:33 × LiaoTao quits (~LiaoTao@gateway/tor-sasl/liaotao) (Ping timeout: 240 seconds)
09:48:23 <Rembane> kuribas: That works too. :)
09:49:38 × gitgood quits (~gitgood@80-44-12-39.dynamic.dsl.as9105.com) (Remote host closed the connection)
09:49:49 <kuribas> ah, types are so nice...
09:50:01 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
09:50:04 <kuribas> after working in other languages, haskell is a blessing...
09:50:48 <kuribas> now I need ordNub...
09:51:39 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
09:53:42 notzmv joins (~zmv@unaffiliated/zmv)
09:55:13 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
09:55:23 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
09:56:18 <Rembane> I agree wholeheartedly, and the syntax is lovely.
09:57:49 LiaoTao joins (~LiaoTao@gateway/tor-sasl/liaotao)
09:57:57 ericsagnes joins (~ericsagne@2405:6580:0:5100:cd2f:1fbd:8893:b1fd)
09:58:24 <merijn> PacoV: Wrong GHC in your CI
09:58:38 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
09:58:40 <merijn> (assuming no one answered that while I was disconnected >.>)
09:58:45 × berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 250 seconds)
09:59:56 berberman joins (~berberman@unaffiliated/berberman)
10:00:35 Rudd0 joins (~Rudd0@185.189.115.103)
10:02:55 plutoniix joins (~q@ppp-223-24-155-53.revip6.asianet.co.th)
10:04:00 <PacoV> merijn: Indeed.
10:04:09 <PacoV> Looking for a way to fix this.
10:04:23 <merijn> "update your dependencies or switch back to the old GHC"?
10:04:51 <PacoV> I'll use the old GHC for now.
10:06:00 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:06:09 <PacoV> Ok, export GHC_VERSION is not enough.
10:06:43 <merijn> PacoV: Basically, only of your dependencies requires "base < 4.15", but your base version is 4.15 according to the error. base is an integral part of GHC and can't be changed without changing GHC
10:07:14 <PacoV> merijn: Yep, Hakyll requires base 4.14 at the moment.
10:07:42 <PacoV> Just looking for the clean way of changing the ghc version while still using this docker image.
10:07:46 <PacoV> If possible at all.
10:08:03 <merijn> I don't use docker, so can't help you with that
10:08:34 romesrf joins (~romesrf@44.190.189.46.rev.vodafone.pt)
10:08:38 <romesrf> hey
10:09:54 <PacoV> So, there is no such an option directly in cabal.
10:10:02 waleee-cl joins (uid373333@gateway/web/irccloud.com/x-ooczpgovlvkkxvue)
10:10:10 <PacoV> I'll spin my own docker image, that'll be fine.
10:10:43 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
10:10:44 <merijn> PacoV: If you have multiple versions installed you can use cabal's '-w' to specify which compiler to use
10:10:57 <merijn> By default it just takes the first GHC in your path
10:11:30 stree joins (~stree@68.36.8.116)
10:13:11 gitgood joins (~gitgood@80-44-12-39.dynamic.dsl.as9105.com)
10:14:49 <PacoV> I just needed to relax and take time to read. https://hub.docker.com/_/haskell There is a ghc8 version of the docker image.
10:16:09 frozenErebus joins (~frozenEre@37.231.244.249)
10:17:53 <PacoV> Welp, it works just fine.
10:18:15 × PacoV quits (~PCoves@71.114.141.88.rev.sfr.net) (Quit: leaving)
10:20:46 kozowu joins (uid44796@gateway/web/irccloud.com/x-rnmbqzfxvrvvfqjt)
10:20:55 Pickchea joins (~private@unaffiliated/pickchea)
10:22:32 fendor joins (~fendor@178.115.129.241.wireless.dyn.drei.com)
10:26:05 × graf_blutwurst quits (~user@2001:171b:226e:adc0:1985:81f0:1ae0:96eb) (Remote host closed the connection)
10:26:06 × Lowl3v3l quits (~Lowl3v3l@dslb-002-207-103-026.002.207.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
10:27:32 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
10:31:23 viluon joins (uid453725@gateway/web/irccloud.com/x-ilxbvfutmqipfhzb)
10:31:39 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 245 seconds)
10:32:05 Alleria joins (~textual@mskresolve-a.mskcc.org)
10:32:28 Alleria is now known as Guest80407
10:33:58 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
10:34:08 <romesrf> can anyone help me with Parsec? I'm writing a lambda calculus parser and im trying to fix something with chainl1 but not being able to do it
10:35:13 <Rembane> romesrf: Pastebin the smallest, non-working example and it will be easier for us to help you. :)
10:35:24 <Rembane> romesrf: https://paste.tomsmeding.com/ <- I recommend this one
10:35:36 <romesrf> :)
10:36:16 alexelcu joins (~alexelcu@142.93.180.198)
10:37:31 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:39:15 zebrag joins (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr)
10:40:34 <romesrf> perhaps this is illustrative, i wrote some short comments explaining my problem, but i can explain it better if needed :)
10:40:35 <romesrf> https://paste.tomsmeding.com/babCWSGQ
10:40:39 gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
10:41:41 anandprabhu joins (~anandprab@94.203.250.121)
10:42:11 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
10:43:26 × alexelcu quits (~alexelcu@142.93.180.198) (Remote host closed the connection)
10:43:35 xiinotulp joins (~q@ppp-27-55-65-96.revip3.asianet.co.th)
10:45:31 × LKoen quits (~LKoen@65.250.88.92.rev.sfr.net) (Remote host closed the connection)
10:45:41 × Pickchea quits (~private@unaffiliated/pickchea) (Ping timeout: 240 seconds)
10:47:01 <romesrf> im still very unexperienced with haskell :), the wording of the question might be a bit weird
10:47:02 × plutoniix quits (~q@ppp-223-24-155-53.revip6.asianet.co.th) (Ping timeout: 260 seconds)
10:49:38 <mniip> how do I use `alaf` with a custom newtype?
10:53:24 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:54:18 <mniip> % data D x = C x deriving stock (GHC.Generics.Generic) deriving anyclass (Wrapped)
10:54:18 <yahb> mniip: ; <interactive>:48:73: error:; * Could not deduce (Profunctor p0) arising from the 'deriving' clause of a data type declaration; from the context: (Profunctor p, Functor f) bound by the deriving clause for `Wrapped (D x)' at <interactive>:48:73-79; The type variable `p0' is ambiguous; These potential instances exist:; instance Monad m => Profunctor (Kleisli m) -- Defined in
10:54:27 <mniip> looks like I'm doing it wrong
10:56:04 <mniip> seems to work with _Wrapped' = coerced
10:58:00 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
10:58:26 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
10:58:47 Franciman joins (~francesco@host-87-20-23-243.retail.telecomitalia.it)
10:59:41 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
11:01:06 son0p joins (~son0p@181.58.39.182)
11:01:46 ericsagn1 joins (~ericsagne@2405:6580:0:5100:a872:2684:1e7e:5b64)
11:02:13 Guest_1 joins (50e9336c@80.233.51.108)
11:02:18 × hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Remote host closed the connection)
11:02:42 hendursa1 joins (~weechat@gateway/tor-sasl/hendursaga)
11:03:09 × ericsagnes quits (~ericsagne@2405:6580:0:5100:cd2f:1fbd:8893:b1fd) (Ping timeout: 246 seconds)
11:03:45 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
11:04:08 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
11:05:09 peanut_ joins (~peanut_@2a02:8388:a101:2600:878f:d4f3:897a:b4b0)
11:07:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
11:08:28 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:08:46 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
11:09:00 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
11:10:38 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
11:11:31 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
11:13:24 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
11:14:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
11:14:20 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:15:57 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
11:17:38 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
11:19:39 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
11:20:29 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:21:19 DavidEichmann joins (~david@47.27.93.209.dyn.plus.net)
11:22:06 hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:5243:c3c3:53a1:2d62)
11:25:04 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:25:41 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
11:26:21 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:27:25 × bitmagie quits (~Thunderbi@200116b806b3d300e5607f55ad4ccacb.dip.versatel-1u1.de) (Quit: bitmagie)
11:28:32 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 265 seconds)
11:28:38 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
11:29:03 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
11:30:10 × Franciman quits (~francesco@host-87-20-23-243.retail.telecomitalia.it) (Quit: Leaving)
11:31:11 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
11:31:26 × Rudd0 quits (~Rudd0@185.189.115.103) (Ping timeout: 265 seconds)
11:31:38 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
11:31:50 solvr joins (57e3c46d@87.227.196.109)
11:32:12 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:33:24 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:35:46 × totte quits (~totte@chakra/totte) (Ping timeout: 240 seconds)
11:37:18 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
11:37:27 totte joins (~totte@chakra/totte)
11:37:45 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:38:13 × mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Remote host closed the connection)
11:38:21 × average quits (uid473595@gateway/web/irccloud.com/x-wwdbavuosvjdgwrm) (Quit: Connection closed for inactivity)
11:39:59 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
11:40:33 ADG1089 joins (~aditya@106.214.245.108)
11:40:52 <ADG1089> Is there any tool to visualize *.prof files?
11:43:02 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
11:43:26 <Uniaika> ADG1089: the tears in your eyes make an exellent lens
11:43:28 <Uniaika> :P
11:44:02 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:44:29 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
11:46:05 <ADG1089> >:-(
11:46:08 <nut> How to pattern match on vectors? (x:x) is for list
11:46:19 <nut> I mean x:xs
11:47:05 <ADG1089> nut: probably not possible
11:53:55 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
11:54:45 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
11:55:25 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:55:49 × solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed)
11:56:59 × andreas303 quits (~andreas@gateway/tor-sasl/andreas303) (Remote host closed the connection)
11:57:33 andreas303 joins (~andreas@gateway/tor-sasl/andreas303)
11:58:47 liyang joins (~liyang@90.253.54.54)
11:59:57 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
12:00:18 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
12:00:25 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
12:01:17 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:02:45 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
12:05:11 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
12:05:16 slack1256 joins (~slack1256@dvc-186-186-101-190.movil.vtr.net)
12:05:45 geekosaur joins (82650c7a@130.101.12.122)
12:06:06 × Guest_1 quits (50e9336c@80.233.51.108) (Quit: Connection closed)
12:07:06 <siers> I have noticed this tendency for functions to become singular, i.e. traverses/folds to move out of the top level of definition of functions...
12:10:09 vilpan joins (~0@212.117.1.172)
12:10:09 Franciman joins (~francesco@host-87-20-23-243.retail.telecomitalia.it)
12:10:59 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
12:11:40 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
12:12:53 frozenErebus joins (~frozenEre@37.231.244.249)
12:13:46 × gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
12:14:04 codygman` joins (~user@209.251.131.98)
12:15:32 dincio joins (~dincio@5.170.24.21)
12:16:11 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
12:16:38 <dincio> q
12:16:41 × dincio quits (~dincio@5.170.24.21) (Client Quit)
12:16:57 dincio joins (~dincio@5.170.24.21)
12:17:19 × dincio quits (~dincio@5.170.24.21) (Client Quit)
12:17:50 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 265 seconds)
12:17:56 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
12:19:11 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
12:19:47 <peanut_> error: Variable not in scope: q
12:21:14 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 246 seconds)
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:27 <xsperry> +
12:21:28 <xsperry> +
12:22:23 <geekosaur> adding a bunch of blank lines?
12:22:58 <peanut_> error: parse error on input ‘+’
12:23:10 <peanut_> 🤔
12:23:36 solvr joins (57e3c46d@87.227.196.109)
12:23:41 Achylles joins (~Achylles@2804:431:d725:7a65:e4bb:fb4:b1ea:8d3b)
12:24:02 <[exa]> what an additive contribution
12:24:41 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
12:26:56 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
12:26:56 <peanut_> that just about sums it up
12:27:06 <ADG1089> how can I include profiling libraries to this command: `stack ghc -- -outputdir bin -o test src/test.hs -prof -fprof-auto -isrc/util -threaded -O2 -fllvm -fwarn-tabs -Wall -Wno-type-defaults -Wno-incomplete-patterns -Wno-missing-signatures -Wno-name-shadowing -main-is Test`
12:27:49 <merijn> ADG1089: Why use "stack ghc" rather than building with stack?
12:28:07 machinedgod joins (~machinedg@24.105.81.50)
12:28:35 <geekosaur> it should be automatic since you specified -prof. but it won't build profiling libraries for any dependencies because you're going behind stack's back
12:28:54 <ADG1089> stack/cabal are not suitable for my project that's why I am using ghc directly
12:29:10 <merijn> ADG1089: Then you will have to build profiling libraries manually too
12:29:12 <ADG1089> I tries installing using `cabal install --reinstall -p --enable-library-profiling xyz-1.2.3`
12:29:25 Pickchea joins (~private@unaffiliated/pickchea)
12:29:25 <ADG1089> yeah what steps to follow for that merijn?
12:29:37 <merijn> ADG1089: If you have cabal 3.x that's not going to work
12:29:44 <ADG1089> but stack wasn't able to detect those
12:29:53 <merijn> ADG1089: No clue, because that's a massive pain, so I haven't done that in 10 years
12:31:07 frozenErebus joins (~frozenEre@37.231.244.249)
12:31:36 <geekosaur> something similar but with stack install. don't need anything like --reinstall though
12:31:48 <geekosaur> I don't know what options stack uses to specify a profiling build
12:32:20 <ADG1089> tried using `stack build --profile` but `stack ghc` also couldn't detect those
12:32:45 stree joins (~stree@68.36.8.116)
12:33:48 <merijn> Because ghc just uses the global package database which will probably be empty
12:34:02 × solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed)
12:34:08 <merijn> cabal-install and stack maintain their own internal package databases that they selectively expose to GHC
12:34:32 fosterite joins (~fosterite@2600:6c46:7800:fecf:3809:4508:89fd:f03b)
12:34:38 <ADG1089> maybe i can select package-env using cabal flags
12:35:17 <merijn> Why can't you just use cabal/stack for this?
12:35:26 × Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds)
12:35:31 <geekosaur> I think there's a --package option to expose specific packages
12:35:32 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
12:35:55 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
12:36:04 <geekosaur> don';t try to mix cabal and stack, they don't play together (they're both trying to manipulate what ghc can see and will interfere with each other)
12:36:17 × slack1256 quits (~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection)
12:36:18 nbloomf joins (~nbloomf@2600:1700:ad14:3020:19ea:b9f5:eddc:3033)
12:36:48 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:19ea:b9f5:eddc:3033) (Client Quit)
12:37:35 <ADG1089> merijn: https://github.com/haskell/cabal/issues/7325 and also working with 100s of executables is a mess with cabal and stack
12:37:57 LKoen joins (~LKoen@65.250.88.92.rev.sfr.net)
12:38:09 <ADG1089> a makefile is easier to build using globbing
12:38:13 haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220)
12:38:13 × haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host)
12:38:13 haritz joins (~hrtz@unaffiliated/haritz)
12:38:18 <ADG1089> until cabal/stack start supporting this
12:38:32 <merijn> ADG1089: As commented by fgaz that's not "not working"
12:38:42 <merijn> The output is just slightly confusing for what it's doing
12:39:04 <ADG1089> but it's building all executables when I only want one.
12:39:14 × s00pcan quits (~chris@075-133-056-178.res.spectrum.com) (Remote host closed the connection)
12:39:17 × fosterite quits (~fosterite@2600:6c46:7800:fecf:3809:4508:89fd:f03b) (Ping timeout: 258 seconds)
12:39:30 <geekosaur> you can tell both to only build one
12:39:32 <ADG1089> and it's problematic to write out 100-200s of executables in either euler.cabal or stack.yaml
12:39:44 <merijn> Ah, you can't install single executables, no
12:39:46 <geekosaur> for cabal, the syntax is something like exe:foo
12:39:50 <merijn> geekosaur: You can, but he's using install
12:40:00 <merijn> And you can't install single components
12:40:01 <geekosaur> cabal install exe:foo works fine
12:40:07 <merijn> geekosaur: It does?
12:40:10 <geekosaur> I use it
12:40:13 <ADG1089> have attached the output it build both for me
12:41:08 <ADG1089> s/both/all binaries/
12:43:19 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
12:44:41 × mkDoku quits (~TheMule@aftr-37-201-195-134.unity-media.net) (Ping timeout: 240 seconds)
12:45:05 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
12:46:04 CaptainIRS joins (9d3385f2@157.51.133.242)
12:46:44 ajc joins (~ajc@69.231.232.79)
12:47:24 <geekosaur> in any case, if you're going to micromanage everything anyway, I'd recommend ditching stack and using ghcup to install ghc directly
12:47:29 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 246 seconds)
12:48:24 nbloomf joins (~nbloomf@2600:1700:ad14:3020:19ea:b9f5:eddc:3033)
12:48:26 <geekosaur> then you can micromanage how everything is built, at the price that it'll all be visible to everything and may cause conflicts, but that's the price of not using stack/cabal as designed
12:49:02 <ADG1089> was just trying to search online how to install these profiling dependencies
12:49:09 <ADG1089> without cabal/stack
12:50:04 <geekosaur> runhaskell Setup.hs configure -prof -fprof-auto; runhaskell Setup.hs build; runhaskell Setup.hs install
12:50:16 <geekosaur> (it may be Setup.lhs instead of Setup.hs)
12:50:28 × xiinotulp quits (~q@ppp-27-55-65-96.revip3.asianet.co.th) (Quit: Leaving)
12:50:52 <geekosaur> it'll still be using part of cabal but not the part that you're worried about
12:50:58 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:19ea:b9f5:eddc:3033) (Client Quit)
12:51:38 <ADG1089> Setup.hs for every dependency?
12:51:40 mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan)
12:51:47 <geekosaur> there's also cabal v1-* commands but in that case you don't want to be using stack at all, you'll need to use ghcup to install ghc
12:52:05 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 250 seconds)
12:52:43 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
12:53:09 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
12:54:00 <geekosaur> ADG1089, a (possibly custom) Setup.hs should come as part of every package, yes
12:54:18 <geekosaur> if it doesn't then you'll have no choice but cabal in v1 mode
12:56:23 frozenErebus joins (~frozenEre@37.231.244.249)
12:56:45 <fgaz> if there isn't a Setup.hs you can call a fake one by running `cabal act-as-setup`
12:57:05 <geekosaur> there you go, then
12:57:07 <fgaz> not sure how supported that is
12:57:57 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds)
12:58:18 <geekosaur> none of this is supported, I suspect, aside from falling back to v1-* commands
12:58:29 <geekosaur> and these days that's barely supported
12:59:06 <maerwald> v1 isn't supported?
12:59:07 <merijn> It's supported in "we won't break things for now" :p
12:59:18 <merijn> maerwald: Define supported
12:59:33 <maerwald> I can complain about it
12:59:40 <merijn> You can complain about anything
12:59:45 <merijn> It's a mostly free world
12:59:53 <maerwald> yeah, but ppl actually listening to my whining
13:00:15 <merijn> maerwald: Well, if it's any consolation, v1 isn't significantly less supported than v2
13:00:21 × xff0x_ quits (~xff0x@2001:1a81:534a:5f00:d711:9eaf:605f:bfbf) (Quit: xff0x_)
13:00:29 xff0x joins (~xff0x@2001:1a81:534a:5f00:d711:9eaf:605f:bfbf)
13:00:37 <merijn> maerwald: People will listen, but for anything non-trivial the answer for v1 issues will probably be "patches welcome"
13:00:41 <maerwald> only thing that got removed were sandboxes
13:00:56 <maerwald> v1 has to stay morally even
13:01:16 <merijn> maerwald: Right, there's no plan to remove v1 for now. But there are also no plans to improve it
13:01:32 <maerwald> v2 is great from a user pov, but it's also a huge hack and you may not want to interface with that for various reasons
13:01:35 <merijn> (I mean, honestly, there aren't any real plans at all, but you get what I mean)
13:01:37 urodna joins (~urodna@unaffiliated/urodna)
13:01:51 <merijn> maerwald: If your an OS packager, the correct interface is Setup.hs
13:01:56 <geekosaur> that's good to know, I assumed from removal of sandboxes that v1 was next on the chopping block
13:01:56 <maerwald> I know
13:01:59 <maerwald> but still
13:02:07 <merijn> geekosaur: It's on the chopping block
13:02:19 <merijn> geekosaur: But there's no satisfactory solutions for all v1 workflows yet
13:02:34 <merijn> geekosaur: So until there is, it'll probably limp on with minimal maintenance
13:02:51 <geekosaur> maybe I'll bring back the v1-based xmonad install workflow, then
13:02:59 <merijn> geekosaur: As soon as the environment workflow is polished I think it'll go
13:03:05 <geekosaur> v2 workflow is rather klunky tbh
13:03:29 <merijn> geekosaur: fixed environments would solve that, I think hvr has a sketched out setup for it
13:03:40 <maerwald> if he ever comes back, yeah
13:04:05 <merijn> there's other people working on that
13:04:12 <merijn> intermittently, anyway
13:04:17 <maerwald> like who?
13:04:41 matryoshka joins (~matryoshk@2606:6080:1002:8:3285:30e:de43:8809)
13:04:53 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
13:05:28 <merijn> maerwald: There was a GSoC project to hack on Oleg's prototype I think?
13:05:33 × son0p quits (~son0p@181.58.39.182) (Quit: Lost terminal)
13:06:09 <maerwald> some employers used this psychology trick on me saying "we have many ppl working on this", which equated to "you'll be the only guy working on this"... are you doing the same here? :p
13:06:42 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
13:06:55 <merijn> There definitely isn't many people working on this
13:06:58 <ADG1089> I'm now just using a local package-env and installing dependencies using cabal to that. Later using ghc installed from ghcup to do anything
13:07:07 <merijn> There aren't many people working on *anything* cabal related
13:07:20 <merijn> Pretty sure it's just fgaz and emily atm :p
13:07:52 <maerwald> merijn: the codebase isn't particularly something you like to spend saturday afternoon on and have a great mood
13:07:59 p8m_ joins (p8m@gateway/vpn/protonvpn/p8m)
13:08:08 × p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 268 seconds)
13:08:16 <maerwald> probably requires an expensice single malt to even start
13:08:21 <merijn> maerwald: Sure, which is why I encourage any company to pay me so I can do it during work hours instead :p
13:08:23 nbloomf joins (~nbloomf@2600:1700:ad14:3020:543a:a17f:f67d:8caf)
13:08:36 <maerwald> too much pressure to actually make something that works
13:08:39 <maerwald> better not get paid
13:08:56 <merijn> maerwald: Why would you bother with non-expensive single malt ;)
13:09:10 <maerwald> when I write Java I like to be cheap
13:09:35 <Franciman> it is unbelieavable the amount of old technology haskell uses
13:09:37 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
13:09:47 <Franciman> git for starters
13:09:50 <merijn> maerwald: My spare time hacking is reserved for things directly affecting me...like Lua addons in wow :p
13:09:51 <fgaz> there are plans to remove v1-
13:09:59 × Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Ping timeout: 268 seconds)
13:10:01 <merijn> Franciman: When did git become old? >.>
13:10:09 <Franciman> when fossil got created
13:10:19 <Franciman> i.e. git was old the right moment it was created
13:10:30 <merijn> Franciman: Blame github
13:10:43 <Franciman> non dependent type theories
13:10:48 ep1ctetus joins (~epictetus@ip72-194-215-136.sb.sd.cox.net)
13:10:50 <Franciman> cabal file format
13:10:55 <merijn> Franciman: dependent types are overrated imo
13:10:56 <Franciman> but this is all legacy
13:11:00 <fgaz> https://mail.haskell.org/pipermail/cabal-devel/2020-September/010488.html <- the plans
13:11:02 <Franciman> not haskell fault
13:11:14 <Franciman> merijn, you are right, it is better to use the singletons library
13:11:14 <fgaz> which may or may not be followed
13:12:16 <fgaz> merijn: "GSoC project to hack on Oleg's prototype" wait really? did someone propose it?
13:12:30 <merijn> fgaz: Might be faulty memory on my part
13:12:35 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
13:12:47 <merijn> Franciman: No, singletons is worse >.>
13:13:24 <fgaz> merijn: if not I'd add it to the ideas page... if there was someone willing to mentor
13:14:18 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
13:15:45 <maerwald> we'll have linear types, dependent types and maybe worse soon enough, so all our egos are satisfied... and we'll probably switch to a simpler language at work then, but won't tell anyone ;)
13:16:19 <merijn> maerwald: More likely, we'll just keep writing Haskell with those things disabled
13:17:10 <merijn> Dependent Haskell is a mistake, imo. Linear Haskell I'm not entirely sure about, but I lean towards "mistake" there too
13:17:42 × geekosaur quits (82650c7a@130.101.12.122) (Ping timeout: 240 seconds)
13:19:54 <maerwald> I don't even know what was the driving force for this... either it was an academic promoting their thesis through it or someone at facebook having a heart attack about not being able to do more crazy stuff
13:20:04 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
13:20:08 <merijn> Linear is Tweag, no?
13:20:37 <Uniaika> yes
13:20:58 <Uniaika> Academic Tweag to be more precise
13:21:14 <maerwald> during a heart attack
13:22:17 <maerwald> merijn: the problem is that these things propagate in APIs, so you won't be able to opt out that easily
13:22:29 <maerwald> I mean, I still have to deal with monad transformers too
13:22:34 <merijn> Dependent Haskell is the baby of Stephanie and Richard Eisenberg, right?
13:22:44 <merijn> *Stephanie Weirich
13:23:22 <merijn> maerwald: If you use things that use them, sure
13:23:23 <maerwald> Maybe the Haskell Foundation needs more conservative voices
13:23:40 <merijn> maerwald: Haskell Foundation doesn't control GHC development, though?
13:23:54 <merijn> maerwald: So that seems an irrelevant remark
13:23:56 <maerwald> not directly, but I'd say that things like these should be topics there
13:24:09 <maerwald> it changes the language, even if it's not part of the spec
13:24:24 <maerwald> impact on industry users needs to be considered
13:24:25 <merijn> maerwald: That isn't in the foundation's charter, though
13:24:31 <maerwald> that's not GHC devs job
13:24:33 hidedagger joins (~nate@unaffiliated/hidedagger)
13:24:33 <merijn> maerwald: And what are they gonna do? Fork GHC?
13:24:58 <maerwald> Swing hammers, I don't know
13:25:11 <maerwald> I'm just complaining
13:25:24 <merijn> None of the industry users seem to mind
13:25:32 <merijn> At least, not enough to pay for things
13:25:36 <merijn> So screw 'em
13:26:21 <maerwald> well, the only big industry user I know is probably more pro these changes anyway, because they're neck-deep in type-level programming
13:26:33 Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net)
13:27:38 Lycurgus joins (~niemand@98.4.115.201)
13:27:59 <nut> for vector package, how to choose read vs unsaferead
13:28:00 <merijn> Haskell was started as a research language and GHC as research compiler. Your suggestion isn't really viable without forking, because there's just no way to simply go "right, you guys immediately stop hacking your academic projects into your compiler!"
13:28:05 geekosaur joins (82650c7a@130.101.12.122)
13:28:13 ulidtko joins (~ulidtko@194.54.80.38)
13:28:18 <merijn> nut: You use read until you profile and know it's not fast enough :p
13:28:38 <nut> so unsafe version are faster
13:28:47 <merijn> nut: They skip bounds checking
13:28:51 <merijn> So "possibly"
13:28:55 <nut> i see
13:29:03 <merijn> nut: At the risk of potentially segfaulting your code :p
13:29:14 <nut> sure, it's more like c versions
13:29:21 <nut> ok
13:29:39 <maerwald> merijn: why don't they go fork :p
13:30:04 <merijn> maerwald: Well, considering most contributors are working on these things people compain about...
13:30:19 jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client")
13:30:26 <merijn> maerwald: The real question is: Why aren't all the complainers contributing to GHC in areas they keep complaining about?
13:30:49 <maerwald> well, I have a good excuse... got an arrow in the knee
13:31:22 <merijn> I'm increasingly become more aggressive of pushing the first rule of open source: patches/money or GTFO
13:31:49 <maerwald> not everything is about patches or money ;)
13:32:03 <[exa]> merijn: someone had this written as "fork or gtfo"
13:32:15 <merijn> [exa]: I mean, you don't have to fork
13:32:29 <merijn> maerwald: Well, I'm not saying either of those *guarantees* you get a say over the maintainers
13:32:39 <merijn> maerwald: It's just that without either you definitely do *not* get a say
13:32:53 <[exa]> merijn: it prevents people from just pushing patches to random repos.
13:33:00 <merijn> Programmer entitlement needs to get out of here
13:33:34 <maerwald> merijn: I recently quit a distro, because they kept telling me to send patches (which I did for quite a while), but never stopped breaking reverse dependencies. So that's a workflow (or even attitude) issue.
13:33:54 <maerwald> so I'm generally not a fan of "patches or gtfo" :)
13:35:03 <merijn> maerwald: My point was more "if you're not materially contributing, you don't get a say in what a project does". But, as all logical implications go, that doesn't mean you *do* get a say when you contribute (in which case, you fork or use something else)
13:35:41 <maerwald> merijn: sure, that's one way to handle it. The other is to give a say to users, regardless of their material contribution.
13:35:47 <merijn> maerwald: The internet is full of people demanding unpaid maintainers of open source projects "do stuff" because "my company is losing millions" and that entitlement is one of the root causes of maintainer burnout
13:36:01 <merijn> maerwald: Right, but that decision is up to...the contributors :)
13:36:05 <maerwald> sure
13:36:27 <maerwald> I'm not officially complaining about GHC maintenance here :)
13:36:34 <maerwald> I'm glad we have engaged ppl at all
13:36:46 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
13:36:46 <maerwald> it's just language bikeshedding
13:36:55 Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net)
13:37:10 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
13:37:14 <nshepperd> you can get a say in development by either being the developer or offering sufficiently convincing arguments to bring the developers around
13:37:30 <merijn> maerwald: We'll team up with Athas and we'll make our purely functional language. But designed for predictable low level interaction!
13:37:49 <nshepperd> or being someone who pays the developer i suppose
13:37:51 <merijn> nshepperd: Right, but money is usually a fairly convincing argument ;)
13:38:33 <merijn> "why are you not supporing a 5 year old GHC?!?" is a wholly different kinda issue from "I'll pay you 10k to support a 5 year old GHC" ;)
13:38:57 × LKoen quits (~LKoen@65.250.88.92.rev.sfr.net) (Remote host closed the connection)
13:39:02 <merijn> I have considerable more empathy/sympathy for the 2nd one :p
13:39:20 <maerwald> nshepperd: well, an important question to ask is: What constitutes "consensus" in the sense of language proposals? Does it include the community? If so, how?
13:39:57 <maerwald> I find it hard to figure out how consensus is reached wrt language proposals
13:40:09 <maerwald> the reddit thread about linear types didn't look like consensus at all
13:41:41 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
13:43:31 × geekosaur quits (82650c7a@130.101.12.122) (Quit: Connection closed)
13:43:59 vchlup joins (~vchlup@115.128.broadband17.iol.cz)
13:46:51 supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
13:46:52 × supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Max SendQ exceeded)
13:47:06 supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
13:47:07 × supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Max SendQ exceeded)
13:47:21 supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
13:47:22 × supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Max SendQ exceeded)
13:47:36 supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
13:47:37 × supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Max SendQ exceeded)
13:47:38 <nshepperd> i dunno
13:47:49 <nshepperd> where does consensus come in?
13:47:51 supercoven joins (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi)
13:47:52 × supercoven quits (~Supercove@dsl-hkibng31-54fabd-233.dhcp.inet.fi) (Max SendQ exceeded)
13:48:26 <maerwald> during accepting or rejecting a proposal
13:48:38 × __minoru__shirae quits (~shiraeesh@109.166.58.127) (Ping timeout: 240 seconds)
13:49:07 <maerwald> https://www.gentoo.org/glep/glep-0001.html#glep-work-flow is a good example
13:49:15 <maerwald> of a proper proposal workflow
13:49:18 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
13:49:36 <nshepperd> i guess it's defined by whoever does the accepting or rejecting then
13:50:10 <maerwald> that seems problematic
13:52:21 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
13:54:45 mkDoku joins (~TheMule@aftr-37-201-195-134.unity-media.net)
13:55:17 × SaitamaPlus quits (uid272474@gateway/web/irccloud.com/x-fidhhtxlftktthli) (Quit: Connection closed for inactivity)
13:59:44 __minoru__shirae joins (~shiraeesh@109.166.58.127)
14:05:25 × raoul90 quits (~raoulhida@nomnomnomnom.co.uk) (Quit: The Lounge - https://thelounge.github.io)
14:07:50 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
14:08:06 raoul90 joins (~raoulhida@nomnomnomnom.co.uk)
14:08:15 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
14:08:38 × justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 260 seconds)
14:08:44 × hidedagger quits (~nate@unaffiliated/hidedagger) (Quit: WeeChat 3.1)
14:09:21 fosterite joins (~fosterite@2600:6c46:7800:fecf:cd54:a389:d721:10d4)
14:10:35 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Client Quit)
14:11:01 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
14:11:15 raoul90 is now known as raoul
14:12:06 average joins (uid473595@gateway/web/irccloud.com/x-rlnzyfvyufopfriy)
14:12:32 × valdyn quits (valdyn@c6a7cb9d.vpn.njalla.net) (Remote host closed the connection)
14:12:50 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
14:13:15 son0p joins (~son0p@181.136.122.143)
14:13:58 × fosterite quits (~fosterite@2600:6c46:7800:fecf:cd54:a389:d721:10d4) (Ping timeout: 258 seconds)
14:14:06 × Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds)
14:15:38 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
14:15:52 solvr joins (57e3c46d@87.227.196.109)
14:16:33 aveltras joins (uid364989@gateway/web/irccloud.com/x-rhpcdfifjfohktda)
14:18:37 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
14:23:47 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
14:23:59 Deide joins (~Deide@217.155.19.23)
14:24:57 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 265 seconds)
14:26:59 hexfive joins (~hexfive@50.35.83.177)
14:28:04 × alorente quits (~alorente@185.204.1.185) (Remote host closed the connection)
14:28:38 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
14:28:41 × Lycurgus quits (~niemand@98.4.115.201) (Ping timeout: 240 seconds)
14:28:54 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
14:30:32 <dolio> ja: I haven't worked on bytestring-show in years, and I think it's not an idea that makes sense these days, either.
14:30:34 × vilpan quits (~0@212.117.1.172) (Ping timeout: 260 seconds)
14:31:04 <dolio> Byte strings are byte strings, not text.
14:31:29 × ADG1089 quits (~aditya@106.214.245.108) (Remote host closed the connection)
14:32:27 × Franciman quits (~francesco@host-87-20-23-243.retail.telecomitalia.it) (Quit: Leaving)
14:33:03 × CaptainIRS quits (9d3385f2@157.51.133.242) (Quit: Connection closed)
14:33:11 <dolio> That library was from when there was only bytestring.
14:33:12 Wuzzy joins (~Wuzzy@p57a2fb8a.dip0.t-ipconnect.de)
14:33:31 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 258 seconds)
14:34:23 Sheilong joins (uid293653@gateway/web/irccloud.com/x-ewczhxqgteqsbchn)
14:34:50 laco joins (5a40012d@90-64-1-45.dynamic.orange.sk)
14:35:07 laco is now known as BRUT
14:35:47 <BRUT> alooha
14:38:01 × Pickchea quits (~private@unaffiliated/pickchea) (Ping timeout: 252 seconds)
14:39:26 <romesrf> i'm using Parsec and i need a way to "stop" chainl1 if it finds a reserved word. This might not make much sense, i'm still learning. I wrote a bit about my problem here: https://paste.tomsmeding.com/babCWSGQ
14:39:50 <romesrf> ( im writing a lambda calculus parser )
14:40:54 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
14:42:04 kam1 joins (~kam1@83.123.14.174)
14:43:51 <nshepperd> romesrf: just change your parseVar to exclude reserved words?
14:44:04 pleia21 joins (~pleia2@195.140.213.38)
14:44:27 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
14:46:08 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
14:46:57 <romesrf> nshepperd: i think it shouldn't get to the point where it's parsing a var, since this would mean it's looking for something to construct the (App e1 e2) expression
14:46:57 LKoen joins (~LKoen@65.250.88.92.rev.sfr.net)
14:46:57 vilpan joins (~0@212.117.1.172)
14:47:14 × connrs quits (~connrs@runciter.connrs.uk) (Quit: ZNC 1.7.1 - https://znc.in)
14:47:14 × connrs_ quits (~connrs@runciter.connrs.uk) (Quit: ZNC 1.7.1 - https://znc.in)
14:47:20 vilpan is now known as Guest83755
14:47:36 Guest83755 is now known as vilpan
14:48:39 connrs joins (~connrs@runciter.connrs.uk)
14:48:40 connrs_ joins (~connrs@runciter.connrs.uk)
14:48:59 × coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
14:51:37 <nshepperd> well yeah that's what parseExpr does
14:52:10 howdoi joins (uid224@gateway/web/irccloud.com/x-qztqtupywnelzqgw)
14:53:13 <nshepperd> but if the first parseNonApp succeeds and the second fails, it shouldn't form any App at all, which is what you want, no?
14:53:15 <romesrf> but parseExpr upon not finding a "space" will stop "chaining" and just return parseNonApp, correct?
14:53:33 <romesrf> oh, yes, that's exactly what i want
14:54:03 kam1 joins (~kam1@83.123.14.174)
14:54:04 stree joins (~stree@68.36.8.116)
14:54:06 <romesrf> i see, i didn't understand chainl1 would fail when the second parsing failed. i thought it wouldn't attempt it when no "space" was found
14:54:12 <romesrf> let me try your suggestion, nshepperd :)
14:54:26 × kam1 quits (~kam1@83.123.14.174) (Client Quit)
14:54:28 <c_wraith> oh, parsec. it creates so many issues with the way it handles alternation
14:54:35 <nshepperd> I'm not sure the exact behaviour of chainl1, it might work either of those two ways, i can't remember which
14:54:43 kam1 joins (~kam1@83.123.14.174)
14:54:59 <nshepperd> i find it usually more intuitive to just use some/many directly
14:55:12 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
14:55:32 × BRUT quits (5a40012d@90-64-1-45.dynamic.orange.sk) (Quit: Connection closed)
14:55:33 × xff0x quits (~xff0x@2001:1a81:534a:5f00:d711:9eaf:605f:bfbf) (Ping timeout: 246 seconds)
14:55:53 <romesrf> nshepperd: i'm quite new to this, if you have some example of using some/many directly, please do share :)
14:56:02 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 268 seconds)
14:56:29 <romesrf> c_wraith: ahah, i also read about Happy, but felt it might be a bit too much for my goals
14:56:41 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
14:56:46 xff0x joins (~xff0x@port-92-195-84-124.dynamic.as20676.net)
14:56:48 <c_wraith> chainl1 is specifically for when there's ambiguity in the parser and you want it to bias to the left
14:56:54 <c_wraith> some/many bias to the right
14:57:17 × peanut_ quits (~peanut_@2a02:8388:a101:2600:878f:d4f3:897a:b4b0) (Quit: Leaving)
14:57:28 <nshepperd> eg. some (parseNonApp <* optional space) tries to parse one or more nonApps until it can't any more
14:58:23 <nshepperd> and returns a list of items which you can then turn into a sequence of 'App's yourself
14:59:03 × haritz quits (~hrtz@unaffiliated/haritz) (Ping timeout: 246 seconds)
15:00:06 × hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:5243:c3c3:53a1:2d62) (Ping timeout: 246 seconds)
15:00:20 <romesrf> interesting approach! but i do want it to be left associative. although if i make the sequence myself then it's probably still doable
15:01:08 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
15:01:58 <c_wraith> romesrf: nah, happy is an entirely different thing. Even if that design can be very fast, I don't really like working with external code generation. But there are parsing libraries that aren't build like parsec. Parsec and family sacrifice a lot of user-friendliness for performance
15:02:15 jakalx joins (~jakalx@base.jakalx.net)
15:02:24 <romesrf> oh, understood c_wraith :)
15:04:05 <romesrf> nshepperd: it didn't work. i really feel like i gotta make the chain fail somewhere in a way that it allows the space to passthrough as long as the word after is reserved
15:04:20 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 246 seconds)
15:05:39 stef204 joins (~stef204@unaffiliated/stef-204/x-384198)
15:05:42 × ericsagn1 quits (~ericsagne@2405:6580:0:5100:a872:2684:1e7e:5b64) (Ping timeout: 246 seconds)
15:08:13 Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net)
15:10:23 × LKoen quits (~LKoen@65.250.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
15:11:58 hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:2c1c:a30c:e102:6594)
15:12:15 haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220)
15:12:15 × haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host)
15:12:15 haritz joins (~hrtz@unaffiliated/haritz)
15:12:18 kritzefitz joins (~kritzefit@212.86.56.80)
15:14:34 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
15:15:48 Tario joins (~Tario@201.192.165.173)
15:17:09 coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
15:17:45 × coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Client Quit)
15:18:29 ericsagn1 joins (~ericsagne@2405:6580:0:5100:6386:3ce4:dd55:29f3)
15:21:43 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
15:22:01 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
15:23:38 × ByronJohnson quits (~bairyn@unaffiliated/bob0) (Ping timeout: 240 seconds)
15:23:46 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 260 seconds)
15:24:22 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
15:24:25 × Tene quits (~tene@poipu/supporter/slacker/tene) (Ping timeout: 268 seconds)
15:29:49 ByronJohnson joins (~bairyn@unaffiliated/bob0)
15:30:48 Tene joins (~tene@mail.digitalkingdom.org)
15:30:48 × Tene quits (~tene@mail.digitalkingdom.org) (Changing host)
15:30:48 Tene joins (~tene@poipu/supporter/slacker/tene)
15:30:49 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
15:31:10 × viluon quits (uid453725@gateway/web/irccloud.com/x-ilxbvfutmqipfhzb) (Quit: Connection closed for inactivity)
15:31:34 <romesrf> i was able to do it
15:32:04 <romesrf> the trick was placing "try" before the do block instead of in the middle, next to the "notFollowedBy".
15:32:47 Pickchea joins (~private@unaffiliated/pickchea)
15:33:01 <romesrf> in the end i have parseExpr = chainl1 parseNonApp $ try $ do {space; notFollowedBy $ string "then"; return App}
15:33:06 <romesrf> thank you everyone
15:36:17 × lep-delete quits (~lep@94.31.86.183) (Quit: bye)
15:36:36 lep-delete joins (~lep@94.31.86.183)
15:37:07 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
15:37:22 fosterite joins (~fosterite@2600:6c46:7800:fecf:5cc8:b6e6:6f3b:cc2)
15:37:25 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
15:37:51 alx741 joins (~alx741@181.196.68.6)
15:41:33 × son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal)
15:42:09 × fosterite quits (~fosterite@2600:6c46:7800:fecf:5cc8:b6e6:6f3b:cc2) (Ping timeout: 258 seconds)
15:44:49 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
15:45:03 × jophish__ quits (ca536851@202.83.104.81) (Ping timeout: 240 seconds)
15:45:56 × justsomeguy quits (~justsomeg@unaffiliated/--/x-3805311) (Quit: WeeChat 3.0.1)
15:46:01 vilpan parts (~0@212.117.1.172) ()
15:46:51 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
15:49:19 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Ping timeout: 250 seconds)
15:50:12 coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
15:51:11 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:52:11 × kritzefitz quits (~kritzefit@212.86.56.80) (Ping timeout: 240 seconds)
15:52:34 kam1 joins (~kam1@83.123.14.174)
15:52:35 × romesrf quits (~romesrf@44.190.189.46.rev.vodafone.pt) (Quit: WeeChat 3.1)
15:53:04 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
15:56:06 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds)
15:56:30 × solvr quits (57e3c46d@87.227.196.109) (Quit: Connection closed)
15:57:01 carlomagno joins (~cararell@148.87.23.7)
15:59:26 × coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
16:00:20 kam1 joins (~kam1@83.123.14.174)
16:00:27 Rudd0 joins (~Rudd0@185.189.115.108)
16:01:00 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
16:01:33 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
16:02:14 asdfghjkl100 joins (49336fc4@c-73-51-111-196.hsd1.il.comcast.net)
16:02:16 dodo13 joins (b945447b@nat-block-4.hovnet.cz)
16:04:49 coot joins (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl)
16:04:54 astroanax joins (~astroanax@cosmic.voyage)
16:04:58 vicfred joins (vicfred@gateway/vpn/mullvad/vicfred)
16:05:47 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
16:06:01 × conal quits (~conal@192.145.118.233) (Quit: Computer has gone to sleep.)
16:06:58 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
16:09:33 conal joins (~conal@192.145.118.233)
16:10:01 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
16:10:02 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 268 seconds)
16:10:32 × oats quits (~hurr@durr/im/a/sheep) (Quit: until later, my friends)
16:13:25 kam1 joins (~kam1@83.123.14.174)
16:14:05 Tario joins (~Tario@201.192.165.173)
16:14:27 × Pickchea quits (~private@unaffiliated/pickchea) (Ping timeout: 252 seconds)
16:14:46 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
16:21:06 × dodo13 quits (b945447b@nat-block-4.hovnet.cz) (Quit: Connection closed)
16:21:29 kam1 joins (~kam1@83.123.14.174)
16:22:47 geekosaur joins (42d52137@66.213.33.55)
16:25:26 × kam1 quits (~kam1@83.123.14.174) (Read error: Connection reset by peer)
16:28:32 Franciman joins (~francesco@host-87-20-23-243.retail.telecomitalia.it)
16:29:47 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 268 seconds)
16:29:50 moet joins (~moet@172.58.35.224)
16:30:03 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
16:33:03 oats joins (~oats@durr/im/a/sheep)
16:36:11 × Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Quit: WeeChat 3.0.1)
16:38:50 × oats quits (~oats@durr/im/a/sheep) (Remote host closed the connection)
16:39:15 frozenErebus joins (~frozenEre@37.231.244.249)
16:39:19 oats joins (~hurr@durr/im/a/sheep)
16:40:10 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
16:40:11 s00pcan joins (~chris@075-133-056-178.res.spectrum.com)
16:45:24 × coot quits (~coot@37.30.55.131.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
16:49:31 × zaquest quits (~notzaques@5.128.210.178) (Read error: Connection reset by peer)
16:49:59 zaquest joins (~notzaques@5.128.210.178)
16:50:38 Lycurgus joins (~niemand@98.4.115.201)
16:55:28 shatriff joins (~vitaliish@176.52.216.242)
16:57:09 justsomeguy joins (~justsomeg@unaffiliated/--/x-3805311)
17:01:46 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
17:03:23 <aveltras> does anyone know if it's possible to pass stack arguments through haskell-language-server executable ?
17:03:44 <aveltras> I have to run "stack build --system-ghc --compiler ghc-8.8.4" for my project
17:03:45 Pickchea joins (~private@unaffiliated/pickchea)
17:06:29 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Remote host closed the connection)
17:06:43 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
17:07:02 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
17:07:32 × jjhoo quits (jahakala@dsl-trebng21-b048b5-171.dhcp.inet.fi) (Remote host closed the connection)
17:08:21 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 252 seconds)
17:11:31 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
17:12:10 jumper149 joins (~jumper149@80.240.31.34)
17:13:28 × shatriff quits (~vitaliish@176.52.216.242) (Remote host closed the connection)
17:13:51 × jumper149 quits (~jumper149@80.240.31.34) (Client Quit)
17:14:02 shatriff joins (~vitaliish@176.52.216.242)
17:14:14 jumper149 joins (~jumper149@80.240.31.34)
17:14:30 stree joins (~stree@68.36.8.116)
17:15:46 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
17:16:51 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
17:18:28 × shatriff quits (~vitaliish@176.52.216.242) (Ping timeout: 265 seconds)
17:18:51 × davros quits (~davros@host86-183-29-83.range86-183.btcentralplus.com) (Ping timeout: 260 seconds)
17:22:25 Deide joins (~Deide@217.155.19.23)
17:23:10 Guest40940 is now known as mrd
17:23:19 × mrd quits (~mrd@45.61.147.211) (Changing host)
17:23:19 mrd joins (~mrd@debian/developer/mrd)
17:24:08 × hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Quit: hendursa1)
17:24:25 hendursaga joins (~weechat@gateway/tor-sasl/hendursaga)
17:25:46 × zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
17:26:07 zebrag joins (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr)
17:27:19 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
17:28:24 × rajivr quits (uid269651@gateway/web/irccloud.com/x-ooidmjfwldhvhpcx) (Quit: Connection closed for inactivity)
17:31:22 StackStackIssue joins (c634aeb5@198.52.174.181)
17:31:54 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
17:32:53 <StackStackIssue> Hello, I'm trying to solve a problem on Exercism, which makes use of Stack and Cabal for testing. In my solution, I import Data.Stack, but when running the test suite the module fails to import- I'm not sure where in the config to specify that I need this module. Could I get some help?
17:33:05 jjhoo joins (jahakala@dsl-trebng21-b048b5-171.dhcp.inet.fi)
17:34:13 <L29Ah> StackStackIssue: use a common dependency set for both your solution and your test suite in your .cabal file?
17:34:16 <sclv> in the cabal file there’s a build-depends section in the test stanza
17:34:29 <StackStackIssue> I have added - containers > 0.6 there
17:35:03 <StackStackIssue> I believe that was supposed to fix it
17:35:32 <StackStackIssue> https://paste.tomsmeding.com/WHAw9Srt
17:36:24 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
17:36:27 machinedgod joins (~machinedg@24.105.81.50)
17:36:49 × anandprabhu quits (~anandprab@94.203.250.121) (Quit: WeeChat 2.8)
17:37:14 × _ashbreeze_ quits (~mark@64.85.214.234.reverse.socket.net) (Remote host closed the connection)
17:37:25 × motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Remote host closed the connection)
17:37:54 <StackStackIssue> All other suggestions are welcome
17:38:18 fosterite joins (~fosterite@2600:6c46:7800:fecf:5cc8:b6e6:6f3b:cc2)
17:38:37 _ashbreeze_ joins (~mark@64.85.214.234.reverse.socket.net)
17:39:50 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
17:41:27 __monty__ joins (~toonn@unaffiliated/toonn)
17:43:44 × fosterite quits (~fosterite@2600:6c46:7800:fecf:5cc8:b6e6:6f3b:cc2) (Ping timeout: 245 seconds)
17:45:05 jakalx parts (~jakalx@base.jakalx.net) ("Error from remote client")
17:45:58 <tomsmeding> StackStackIssue: where do you read that containers should give you Data.Stack?
17:46:22 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
17:46:27 shalokshalom joins (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106)
17:46:32 <StackStackIssue> I extrapolated from a SO post where someone failed to import Data.Set and that was the suggested solution
17:46:42 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
17:46:49 <StackStackIssue> I'm not familiar with modules or the ecosystem, so i wouldn't be surprised if that's the wrong package
17:46:53 <StackStackIssue> @tomsme
17:46:53 <lambdabot> Unknown command, try @list
17:47:06 <StackStackIssue> @tomsmeding could you point me in the right direction?
17:47:06 <lambdabot> Unknown command, try @list
17:47:10 <tomsmeding> StackStackIssue: Data.Set is indeed from containers, but I can find no package that exports Data.Stack
17:47:23 <tomsmeding> Where did you find that module name in the first place?
17:47:35 <StackStackIssue> https://hackage.haskell.org/package/Stack-0.4.0/docs/Data-Stack.html
17:47:51 <StackStackIssue> I looked up haskell Stack since I was curious to try some libraries
17:47:53 <tomsmeding> (side note: on irc, you don't need to put @ before a name to mention them)
17:48:10 <StackStackIssue> TIL
17:48:21 <tomsmeding> StackStackIssue: ah, thats's the 'Stack' library, apparently
17:48:28 <tomsmeding> Which is not 'containers' :)
17:48:28 <StackStackIssue> So would I actually be looking at Stack-0.4.0?
17:48:29 <jumper149> StackStackIssue: On the top left it says the package name on hackage, it's "Stack"
17:48:34 <StackStackIssue> Yeah, there it is
17:48:46 <StackStackIssue> I figured Data.* was a single codebase
17:49:04 <StackStackIssue> Rather than a namespace used here and there, which it seems to be
17:49:07 <jumper149> Data.* is just a convention, just like Control.* or System.*
17:49:11 <tomsmeding> No, module names can be freely chosen by packages
17:49:22 × geekosaur quits (42d52137@66.213.33.55) (Ping timeout: 240 seconds)
17:49:33 ravi84 joins (67f9874a@103.249.135.74)
17:49:33 <tomsmeding> And _are_ freely chosen by packages :p
17:50:11 × tmciver quits (~tmciver@cpe-172-101-40-226.maine.res.rr.com) (Ping timeout: 240 seconds)
17:50:13 <tomsmeding> So add 'Stack' to your build-depends list
17:50:16 <StackStackIssue> Emphasis appreciated haha
17:50:18 <StackStackIssue> Thank you both
17:50:39 <tomsmeding> Good luck :)
17:51:58 jakalx joins (~jakalx@base.jakalx.net)
17:52:05 tmciver joins (~tmciver@cpe-172-101-40-226.maine.res.rr.com)
17:53:21 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
17:53:26 <StackStackIssue> Thanks :)
17:53:50 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
17:54:45 idhugo joins (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net)
17:57:03 × ravi84 quits (67f9874a@103.249.135.74) (Ping timeout: 240 seconds)
17:58:42 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
18:00:08 <monochrom> This is what's wrong with not starting with plain ghci in tutorials for beginners.
18:00:44 <StackStackIssue> I dabbled in haskell in pure ghci about half a year ago, left it alone, and came back rusty today
18:00:57 <StackStackIssue> Not sure if that's the issue
18:01:01 <monochrom> Start with stack or cabal, especially when extra libraries that don't come with ghc are involved, you now need to explain the package level and the module level, too.
18:01:40 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
18:01:48 <monochrom> More precisely, the problem with most tutorials that start with stack or cabal is that they neglect to explain "package" and "module".
18:02:12 <StackStackIssue> I actually have a second question. I'm trying to solve the problem of determining if a string has matching brackets with a Stack (there are other approaches, but this isn't the point). My code is at https://paste.tomsmeding.com/3E2jEZAP, and it looks like my code will fail because the Stack works with an abstract type, and at one point I compare it
18:02:13 <StackStackIssue> to a character, whichr equires it to support the char interface (IIRC). s there some way for me to specify that the stack here is a stack of chars, or otherwise work around the problem?
18:02:40 <monochrom> Oh, I leave C++ for two weeks and it's already rusty.
18:03:11 <StackStackIssue> Yeah 6 months is enough to make Python and Ruby confusing for me, let alone Haskell :p
18:03:18 <tomsmeding> StackStackIssue: what's the error that you're getting?
18:03:33 <monochrom> I left Rust for a year and it's rusty too, but Rust's got to be Rusty...
18:04:04 <StackStackIssue> tomsmeding https://paste.tomsmeding.com/lSDWHpra
18:04:09 <tomsmeding> StackStackIssue: just from looking at your code it seems to me like there should be parentheses around those stackPush and stackPop calls
18:04:25 <StackStackIssue> oh right
18:04:25 <tomsmeding> given that 'helper' seems to take two arguments :)
18:04:39 <StackStackIssue> wasn't there some sort of syntax for avoiding brackets?
18:04:48 <StackStackIssue> Vaguely remember chaining things with dots and $
18:04:49 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
18:05:06 <monochrom> I think you just need parentheses. helper xs (stackPush stack '{')
18:05:36 <tomsmeding> you _can_ avoid those parentheses, but especially if you're not yet fully up to date with all the syntax, please just write parentheses
18:05:38 <tomsmeding> :)
18:05:42 <monochrom> For example, if you're going for the square root of the sine of x, it's "sqrt (sin x)", not "sqrt sin x".
18:06:00 <StackStackIssue> Yep that's completely fair
18:06:02 <StackStackIssue> No rush
18:06:03 <tomsmeding> regarding the error that you posted: stackPeek returns Maybe Char, not Char https://hackage.haskell.org/package/Stack-0.4.0/docs/Data-Stack.html#v:stackPeek
18:06:25 <tomsmeding> you probably want to scrutinise that using a case-expression
18:06:45 <tomsmeding> i.e. 'case stackPeek stack of ...'
18:06:59 geekosaur joins (42d52137@66.213.33.55)
18:08:12 anandprabhu joins (~anand@94.203.250.121)
18:08:28 <StackStackIssue> Perfect, that was my next question
18:08:46 <StackStackIssue> We use the Maybe "wrapper" for when a function may or may not have anything to return, right?
18:08:55 <StackStackIssue> I'm not familiar with Just/Mayve
18:09:13 ezrakilty joins (~ezrakilty@97-126-95-37.tukw.qwest.net)
18:09:28 <tomsmeding> StackStackIssue: what other language(s) do you know?
18:09:49 <tomsmeding> (perhaps I can compare it with something)
18:09:49 <StackStackIssue> Python/Ruby/Java/C, basics of C++
18:10:04 <tomsmeding> Java has Optional, I believe; C++ has std::optional since C++17
18:10:21 <tomsmeding> @src Maybe
18:10:21 <lambdabot> data Maybe a = Nothing | Just a
18:10:36 <tomsmeding> if you have a 'Maybe a', e.g. a 'Maybe Char', then it's either 'Nothing' or 'Just Char'
18:11:08 <StackStackIssue> Right
18:11:13 <StackStackIssue> Either we get it or we don't
18:11:13 <tomsmeding> > case Just 123 of { Nothing -> "it was nothing" ; Just n -> "it was: " ++ show n }
18:11:15 <lambdabot> "it was: 123"
18:11:20 <tomsmeding> > case Nothing of { Nothing -> "it was nothing" ; Just n -> "it was: " ++ show n }
18:11:21 <lambdabot> "it was nothing"
18:11:29 <tomsmeding> (normally you'd write this on multiple lines instead of with the { })
18:11:32 bitmapper joins (uid464869@gateway/web/irccloud.com/x-nbhjseffckoxomyo)
18:11:33 <StackStackIssue> Yep!
18:12:01 <tomsmeding> and of course, instead of 'Just 123', you'd write e.g. a variable or a function call, something that returns a Maybe
18:12:22 <tomsmeding> case-analysis on a literal value is not particularly useful, generally :)
18:13:12 <tomsmeding> I believe none of the languages you named have native support for "sum types", as these are called
18:13:31 <StackStackIssue> so here, assuming I have a Just n I'd need to unwrap the n from the Just
18:13:33 <tomsmeding> C++ has std::variant since C++17 but that's not really native, and it's kludgey
18:13:48 sagax joins (~sagax_nb@213.138.71.146)
18:13:50 <StackStackIssue> Interesting
18:13:50 <tomsmeding> StackStackIssue: in the case branch for Just, you're automatically given the 'n'
18:14:03 <StackStackIssue> Oh I see
18:14:10 <StackStackIssue> Where can i read more on the theory?
18:14:19 <tomsmeding> there is also 'fromJust :: Maybe a -> a', which throws an exception if it happens to be Nothing -- but that's kind of ugly and you generally don't want to use that :p
18:14:25 <StackStackIssue> +1
18:14:33 <tomsmeding> 99.9% of the cases there is a case expression or something else that fits better
18:14:35 <geekosaur> there's also
18:14:37 <geekosaur> :t maybe
18:14:38 <lambdabot> b -> (a -> b) -> Maybe a -> b
18:14:52 <geekosaur> or the simpler case when there's a default value:
18:14:56 <geekosaur> :t fromMaybe
18:14:57 <lambdabot> a -> Maybe a -> a
18:15:03 <tomsmeding> > maybe "nope" (\x -> "it was: " ++ show x) (Just 123)
18:15:05 <lambdabot> "it was: 123"
18:15:27 <StackStackIssue> what is that first b from in
18:15:29 <StackStackIssue> :t maybe
18:15:30 <lambdabot> b -> (a -> b) -> Maybe a -> b
18:15:35 <StackStackIssue> for*, not from
18:15:37 <tomsmeding> default value
18:15:41 <StackStackIssue> Ah
18:15:54 <jumper149> StackStackIssue: I think this explains it ok: https://wiki.haskell.org/Algebraic_data_type
18:16:01 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 260 seconds)
18:16:05 <jumper149> It's pretty concise at least
18:16:10 <tomsmeding> scrutinising a 'Maybe a', it's either Nothing (in which case you get the default value, of some type 'b' you can choose), or it's Just x (in which case the 'a -> b' maps that x to a value of the same type 'b')
18:16:23 <tomsmeding> @src maybe
18:16:23 <lambdabot> maybe n _ Nothing = n
18:16:23 <lambdabot> maybe _ f (Just x) = f x
18:16:33 <StackStackIssue> I see
18:16:34 <tomsmeding> well that's a different way to writ it :p
18:16:36 × jonathanx quits (~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
18:16:39 <StackStackIssue> we don;t care about the default
18:16:46 <tomsmeding> you can also write: maybe def f m = case m of { Nothing -> def ; Just x -> f x }
18:16:48 <StackStackIssue> since we have maybe _ f (just x)
18:17:05 jonathanx joins (~jonathan@h-176-109.A357.priv.bahnhof.se)
18:17:17 <tomsmeding> the definition in that @src uses Haskell's definition-by-cases with pattern matching
18:17:25 <StackStackIssue> Thanks. Most of my knowledge is from OOP languages with some functional features from self-teaching and high school course, so this is all uncharted territory!
18:17:35 <tomsmeding> the line where the pattern matches the arguments is chosen
18:18:00 <tomsmeding> i.e. 'maybe d f Nothing' will take the first line and return 'd', whereas 'maybe d f (Just 42)' will take the second line and return 'f 42'
18:18:18 × andi- quits (~andi-@NixOS/user/andi-) (Ping timeout: 268 seconds)
18:18:29 <StackStackIssue> Very nice
18:18:34 <tomsmeding> % foo 1 = 42 ; foo 2 = 100 ; foo n = 0
18:18:35 <yahb> tomsmeding:
18:18:37 <tomsmeding> % foo 2
18:18:37 <yahb> tomsmeding: 100
18:18:40 <tomsmeding> % foo 3
18:18:40 <yahb> tomsmeding: 0
18:18:48 <tomsmeding> (read the ;'s as newlines)
18:18:53 <StackStackIssue> +1
18:19:15 <tomsmeding> same as: foo x = case x of { 1 -> 42 ; 2 -> 100 ; n -> 0 }
18:19:35 <tomsmeding> but writing multiple definitions allows you to simulateneously pattern-match on multiple arguments
18:19:55 timCF joins (~i.tkachuk@m91-129-99-43.cust.tele2.ee)
18:20:00 <tomsmeding> though you could do the same with a case-expression by just case'ing on both arguments in a tuple, (x, y) :)
18:20:28 × kozowu quits (uid44796@gateway/web/irccloud.com/x-rnmbqzfxvrvvfqjt) (Quit: Connection closed for inactivity)
18:20:43 <tomsmeding> the python zen says that there should be only one obvious way to do something; haskell doesn't subscribe to that philosophy :p
18:21:19 <StackStackIssue> I am liking aspects of both
18:21:46 <StackStackIssue> Beats my current highschool for loop drudgery
18:21:58 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
18:22:22 <timCF> Hello! Any nix language users here? Is there any sort of `case x of` expression with multiple possible clauses/patterns? Just to avoid nested `if x then y else z`
18:22:38 hypercube joins (~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
18:22:47 hypercube parts (~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) ()
18:23:25 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
18:23:39 pavonia joins (~user@unaffiliated/siracusa)
18:25:33 <StackStackIssue> tomsmeding does reading the syntax get noticeably easier with time? I'm having a much harder time with the language than I had expected
18:26:25 <tomsmeding> StackStackIssue: I like haskell's syntax, but then I've been programming haskell for a few years already :p
18:26:37 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 265 seconds)
18:27:14 <tomsmeding> are you talking about the syntax specifically, so the symbols necessary to write certain expressions, or are you talking about how to express certain ideas in the language?
18:27:40 <tomsmeding> the former is /shrug/, the latter is really something you have to get used to if you've previously used only imperative languages, like the ones you named
18:28:19 <tomsmeding> the functional way of thinking is nice for a lot of applications, not so nice for others, but it's certainly different
18:28:32 geekosaur was thinking things like needing to write parens around instead of inside of function calls (e.g. foo (bar x) instead of foo(bar(x)) )
18:28:35 <Clint> en/win go #linguistics
18:28:41 Clint sighs.
18:28:43 <geekosaur> "oops"
18:28:43 andi- joins (~andi-@NixOS/user/andi-)
18:28:57 molehillish joins (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72)
18:29:51 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
18:29:52 <tomsmeding> ah right geekosaur that's true
18:30:16 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
18:30:16 <tomsmeding> if that then yes that's just getting used to it :p
18:31:07 <StackStackIssue> Getting used to it it is
18:31:58 <monochrom> Did you know: In Landin's papers, he diligently wrote like "f(x)(y)" for curried functions. :)
18:32:16 <Rembane> StackStackIssue: A trick I use when GHC throws all kinds of weird errors at me is to add parentheses until I'm 100% sure that I and GHC agree what code we're looking at. Also, don't use the dollar operator.
18:32:27 <Rembane> monochrom: That looks like Javascript or Python. :D
18:33:08 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
18:33:25 <monochrom> Clearly, Javascript and Python are included by his paper title "the next 700 languages" >:)
18:33:29 × molehillish quits (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72) (Ping timeout: 258 seconds)
18:33:51 <monochrom> Or rather, this is why the paper title is that >:)
18:34:16 <Rembane> Sweet! :)
18:35:06 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 260 seconds)
18:35:14 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
18:35:35 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
18:36:14 <StackStackIssue> https://imgur.com/a/VmlVOMi
18:36:15 <StackStackIssue> bingo
18:36:17 <StackStackIssue> thanks everyone
18:36:51 natechan joins (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
18:38:11 × idhugo quits (~idhugo@87-49-147-45-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds)
18:38:55 dincio joins (~dincio@5.170.5.139)
18:39:31 × ezrakilty quits (~ezrakilty@97-126-95-37.tukw.qwest.net) (Remote host closed the connection)
18:40:01 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
18:40:54 × jumper149 quits (~jumper149@80.240.31.34) (Quit: WeeChat 3.1)
18:40:58 dincio parts (~dincio@5.170.5.139) ()
18:41:54 <infinisil> timCF: Is this a Nix question? Because if so, you should probably ask in #nixos instead :)
18:42:11 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
18:42:12 × darjeeling_ quits (~darjeelin@122.245.122.120) (Ping timeout: 252 seconds)
18:42:42 × asdfghjkl100 quits (49336fc4@c-73-51-111-196.hsd1.il.comcast.net) (Ping timeout: 240 seconds)
18:47:40 DTZUZU_ joins (~DTZUZO@207.81.119.43)
18:50:17 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 252 seconds)
18:51:20 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:52:11 × __minoru__shirae quits (~shiraeesh@109.166.58.127) (Ping timeout: 240 seconds)
18:52:20 <tomsmeding> geekosaur: I solved it! The problematic request that crashes ircbrowse is 'GET /robots.txt' with 'If-Modified-Since:' with an empty value. Firstly the empty header value gets parsed to an empty bytestring here: https://hackage.haskell.org/package/snap-server-1.1.2.0/docs/src/Snap.Internal.Http.Server.Parser.html#splitHeader ; note that this produces a bytestring based on a null pointer:
18:52:20 <tomsmeding> https://hackage.haskell.org/package/bytestring-0.10.12.0/docs/src/Data.ByteString.html#empty . Then in serveFileAs, used in ircbrowse's route for /robots.txt, parseHttpTime is used directly on the header value: https://hackage.haskell.org/package/snap-core-1.0.4.2/docs/src/Snap.Internal.Util.FileServe.html#serveFileAs -- and that gives the segfault :p
18:52:30 __minoru__shirae joins (~shiraeesh@77.94.25.220)
18:52:32 <tomsmeding> that's a bug report
18:53:02 <geekosaur> "oops"
18:53:41 × natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
18:54:02 <tomsmeding> ;)
18:54:11 × ericsagn1 quits (~ericsagne@2405:6580:0:5100:6386:3ce4:dd55:29f3) (Ping timeout: 258 seconds)
18:54:20 <tomsmeding> (that request is from some kind of strange web crawler, btw)
18:54:23 <maerwald> How good is WSL2? I'm thinking of switching to windows
18:55:08 darjeeling_ joins (~darjeelin@115.215.43.37)
18:55:17 <geekosaur> spj uses it, apparently
18:55:57 d34df00d joins (~d34df00d@104-14-27-213.lightspeed.austtx.sbcglobal.net)
18:56:01 <d34df00d> Hi!
18:56:27 <d34df00d> Some of my functions are constrained by `Alternative f`, but I noticed I'm only using pure, empty and <|>. Is there a weaker structure I could use instead?
18:56:56 fosterite joins (~fosterite@2600:6c46:7800:fecf:8b1:68fe:9103:2d9f)
18:59:37 <geekosaur> Applicative works for pure, but empty and <|> want Alternative
19:00:00 <geekosaur> you may be thinking of the fact that those ultimately derive from Applicative + Monoid
19:00:18 <geekosaur> but that's just Alternative, so keep using it
19:00:31 <d34df00d> Right, that makes sense.
19:00:47 <d34df00d> Lack of <$> or <*> in my code made me think that I could maybe make my stuff more generic.
19:00:52 <d34df00d> But looks like Alternative is indeed perfect.
19:00:53 <d34df00d> Thanks!
19:01:18 molehillish joins (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846)
19:01:28 × fosterite quits (~fosterite@2600:6c46:7800:fecf:8b1:68fe:9103:2d9f) (Ping timeout: 258 seconds)
19:02:01 × StackStackIssue quits (c634aeb5@198.52.174.181) (Quit: Connection closed)
19:06:08 ericsagn1 joins (~ericsagne@2405:6580:0:5100:8e7d:1650:be7b:bbf2)
19:06:47 kritzefitz joins (~kritzefit@212.86.56.80)
19:06:53 × moet quits (~moet@172.58.35.224) (Quit: leaving)
19:07:50 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
19:17:27 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
19:18:03 Tops2 joins (~Tobias@dyndsl-095-033-020-180.ewe-ip-backbone.de)
19:18:04 neiluj joins (~jco@91-167-203-101.subs.proxad.net)
19:18:04 × neiluj quits (~jco@91-167-203-101.subs.proxad.net) (Changing host)
19:18:04 neiluj joins (~jco@unaffiliated/neiluj)
19:19:36 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
19:19:46 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
19:22:41 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
19:26:38 × molehillish quits (~molehilli@2600:8800:8d06:1800:49e2:dd02:cb68:846) (Remote host closed the connection)
19:27:49 molehillish joins (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72)
19:31:08 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:31:33 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
19:32:31 × molehillish quits (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72) (Ping timeout: 258 seconds)
19:33:05 × cantstanya quits (~chatting@gateway/tor-sasl/cantstanya) (Remote host closed the connection)
19:33:40 × shutdown_-h_now quits (~arjan@2001:1c06:2d0b:2312:b9ee:34c0:cea7:8b6) (Ping timeout: 258 seconds)
19:35:23 × star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Remote host closed the connection)
19:35:27 cantstanya joins (~chatting@gateway/tor-sasl/cantstanya)
19:35:39 star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
19:35:50 stree joins (~stree@68.36.8.116)
19:36:07 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
19:36:15 × aveltras quits (uid364989@gateway/web/irccloud.com/x-rhpcdfifjfohktda) (Quit: Connection closed for inactivity)
19:37:26 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
19:37:27 × stef204 quits (~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 3.1)
19:39:24 shutdown_-h_now joins (~arjan@2001:1c06:2d0b:2312:585d:35b6:9fa3:9ce)
19:43:28 × pleia21 quits (~pleia2@195.140.213.38) (Remote host closed the connection)
19:44:16 Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362)
19:45:25 × star_cloud quits (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Excess Flood)
19:45:59 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
19:46:39 star_cloud joins (~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
19:47:02 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 260 seconds)
19:47:18 Lord_of_Life_ is now known as Lord_of_Life
19:49:59 <Philonous> Is there a variant of IntMap for the various Word types?
19:50:01 × vchlup quits (~vchlup@115.128.broadband17.iol.cz) (Read error: Connection reset by peer)
19:50:12 vchlup joins (~vchlup@115.128.broadband17.iol.cz)
19:50:46 <Philonous> Err, I meant IntSet
19:52:59 × kritzefitz quits (~kritzefit@212.86.56.80) (Remote host closed the connection)
19:55:23 × geekosaur quits (42d52137@66.213.33.55) (Ping timeout: 240 seconds)
19:57:55 geekosaur joins (42d52137@66.213.33.55)
19:57:56 molehillish joins (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72)
19:57:56 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:58:37 <ja> does it make sense to use Control.Concurrent.Async.concurrently with pure values?
19:59:03 <hololeap> @hackage enummapset
19:59:03 <lambdabot> https://hackage.haskell.org/package/enummapset
19:59:07 <ja> i just call pure on them and stick them in there, but i am worried that they are actually being computed synchronously
19:59:17 <hololeap> Philonous: i just did a quick search and found that
19:59:42 vglfr joins (~auiee@88.155.76.95)
20:00:04 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:00:24 <hololeap> ja, i think you might be getting concurrency confused with parallelism. if you want to compute pure functions using more cores, that's parallelism
20:01:09 <ja> hololeap: ok, so should i not use async for that? what is the easiest way to have parallelism for pure computations?
20:01:15 <hololeap> quick, somebody plug simon marlow's book :)
20:01:35 <ja> right, i could read that book, but i thought there would be a simple answer
20:01:53 <hololeap> it's not especially simple, but no, Async is concurrency
20:02:33 <ja> so i should use monad-par?
20:02:44 jajm1 joins (~jajm@185.204.1.185)
20:02:52 <kaol> Control.Parallel.Strategies is what I'd use for parallelism with pure values.
20:03:05 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
20:03:15 × molehillish quits (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72) (Ping timeout: 250 seconds)
20:04:29 <hololeap> monad-par is fine too, that's the one by marlow
20:05:11 × petersen quits (~petersen@redhat/juhp) (Ping timeout: 240 seconds)
20:07:02 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
20:08:07 petersen joins (~petersen@redhat/juhp)
20:11:31 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
20:14:43 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:15:35 × Franciman quits (~francesco@host-87-20-23-243.retail.telecomitalia.it) (Quit: Leaving)
20:19:14 psygate joins (~psygate@unaffiliated/psygate)
20:23:05 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
20:26:56 × geekosaur quits (42d52137@66.213.33.55) (Quit: Connection closed)
20:27:06 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 240 seconds)
20:28:41 × zebrag quits (~inkbottle@aaubervilliers-654-1-98-245.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
20:28:51 × vglfr quits (~auiee@88.155.76.95) (Quit: WeeChat 3.1)
20:30:24 retroid_ joins (~retro@90.214.167.201)
20:31:41 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
20:32:11 × Aquazi quits (uid312403@gateway/web/irccloud.com/x-vlpeluuzsmhakghd) (Quit: Connection closed for inactivity)
20:32:55 × fendor quits (~fendor@178.115.129.241.wireless.dyn.drei.com) (Remote host closed the connection)
20:33:26 Thunderbi is now known as nckx
20:36:00 molehillish joins (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72)
20:38:54 fendor joins (~fendor@178.115.129.241.wireless.dyn.drei.com)
20:40:23 × molehillish quits (~molehilli@2600:8800:8d06:1800:e038:3718:552f:8f72) (Ping timeout: 258 seconds)
20:43:06 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:46:05 fosterite joins (~fosterite@2600:6c46:7800:fecf:8b1:68fe:9103:2d9f)
20:47:45 <Philonous> hololeap, That actually sounds dangerous, what if I try to stick a type in there that Int can't hold?
20:47:49 × Pickchea quits (~private@unaffiliated/pickchea) (Quit: Leaving)
20:49:30 kchow joins (68251fe1@104.37.31.225)
20:52:48 × kchow quits (68251fe1@104.37.31.225) (Client Quit)
20:53:00 × urodna quits (~urodna@unaffiliated/urodna) (Read error: Connection reset by peer)
20:53:56 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
20:55:02 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Read error: Connection reset by peer)
20:56:00 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
20:56:17 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
20:57:16 × conal quits (~conal@192.145.118.233) (Quit: Computer has gone to sleep.)
20:59:13 conal joins (~conal@64.71.133.70)
21:02:21 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
21:02:29 <infinisil> hololeap: I'm fairly certain concurrency/parallelism isn't as simple as impure/pure
21:04:12 × conal quits (~conal@64.71.133.70) (Ping timeout: 268 seconds)
21:04:29 <infinisil> In university a professor explained that parallelism is when you do operations on many cores/units to speed it up. Whereas concurrency is more about dependencies between operations, and executing them in parallel according to those deps
21:05:07 <infinisil> And that also aligns with wikipedia's definition
21:05:42 <infinisil> And this idea is entirely orthogonal to impure/pure
21:05:49 <monochrom> I think hololeap knows.
21:06:19 × mkDoku quits (~TheMule@aftr-37-201-195-134.unity-media.net) (Ping timeout: 252 seconds)
21:07:11 <maerwald> "pure functions" vs "impure functions" is already wrong in haskell
21:07:32 <maerwald> but we all know what was meant
21:08:05 <monochrom> It was the question that used the "pure" wording. Maybe it was inaccurate, but it was pretty clear at the holistic level what the question meant.
21:08:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
21:08:31 auiee joins (~auiee@88.155.76.95)
21:08:35 <maerwald> but we tend to nitpick terminology often here, so
21:08:48 × auiee quits (~auiee@88.155.76.95) (Client Quit)
21:09:08 <infinisil> You can do both parallelism and concurrency with Async, and you can also do parallelism and concurrency with pseq
21:09:33 × mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds)
21:09:58 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
21:10:09 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
21:10:40 <monochrom> The irony is that the nitpickers chose the wrong wording in the first place. For example, "strict" vs "lazy". Are you kdding me?
21:10:54 × haritz quits (~hrtz@unaffiliated/haritz) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
21:11:00 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
21:11:26 <infinisil> Wait what's wrong with those?
21:11:27 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
21:11:49 <monochrom> "strict" is a denotational concern, "lazy" is an operational concern. Level mismatch.
21:12:31 <monochrom> Do people speak like "temperature vs particle momentum"?
21:13:16 <monochrom> Sorry, "temperature vs particle position".
21:13:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
21:13:49 <maerwald> pretty sure most ppl don't reason about denotational semantics much in non-trivial haskell programs, so these terms get blurry by lack of frequent exposure
21:13:58 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
21:14:17 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:15:49 <monochrom> I also have beef with "parallel vs concurrent" when a better wording is "parallel=concurrent vs communication=synchronization" but that's for another day.
21:15:59 <monochrom> or rather, that's a lost cause.
21:16:20 × ep1ctetus quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
21:17:39 haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220)
21:17:39 × haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host)
21:17:39 haritz joins (~hrtz@unaffiliated/haritz)
21:18:36 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 260 seconds)
21:19:10 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
21:19:43 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
21:20:38 × dixie_ quits (~dixie@real.wilbury.sk) (Quit: leaving)
21:21:03 dixie joins (~dixie@real.wilbury.sk)
21:25:05 × __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving)
21:25:58 son0p joins (~son0p@181.136.122.143)
21:28:06 × Lycurgus quits (~niemand@98.4.115.201) (Quit: Exeunt)
21:29:24 DTZUZU joins (~DTZUZO@207.81.119.43)
21:29:45 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:29:49 × DTZUZU quits (~DTZUZO@207.81.119.43) (Client Quit)
21:30:35 × andi- quits (~andi-@NixOS/user/andi-) (Ping timeout: 258 seconds)
21:30:53 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
21:31:37 mkDoku joins (~TheMule@aftr-37-201-195-134.unity-media.net)
21:33:50 andi- joins (~andi-@NixOS/user/andi-)
21:34:18 <hololeap> Philonous: i'm not sure what you mean. it uses the Enum class to convert to/from Int, so it should work on any Enum including Word8/16/32. the type system will keep you from doing anything "dangerous" unless you get too fancy with the intMapToEnumMap/enumMapToIntMap functions
21:34:26 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
21:34:36 × Feuermagier quits (~Feuermagi@213.178.26.41) (Quit: Leaving)
21:35:30 fendor_ joins (~fendor@77.119.130.232.wireless.dyn.drei.com)
21:35:46 <Philonous> > fromEnum (maxBound @Word64) :: Int
21:35:48 <lambdabot> error:
21:35:48 <lambdabot> Pattern syntax in expression context: maxBound@Word64
21:35:48 <lambdabot> Did you mean to enable TypeApplications?
21:36:04 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:36:05 <Philonous> > fromEnum (maxBound :: Word64) :: Int
21:36:07 <lambdabot> *Exception: Enum.fromEnum{Word64}: value (18446744073709551615) is outside o...
21:36:32 <hololeap> so you want something that works specifically with Word64
21:37:26 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
21:37:32 <Philonous> Yes, but it's not even guaranteed to work with Word32
21:38:05 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
21:38:56 <Philonous> (Int is only guaranteed to hold up to 2^29-1)
21:38:59 × fendor quits (~fendor@178.115.129.241.wireless.dyn.drei.com) (Ping timeout: 265 seconds)
21:39:58 natechan joins (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
21:40:07 <hololeap> % fromEnum (maxBound :: Word32)
21:40:07 <yahb> hololeap: 4294967295
21:40:30 <Philonous> Lambdabot happens to run on AMD64, so Int really is Int64. But you can't rely on that
21:41:02 <hololeap> i mean, in theory you could create a newtype wrapper with where `fromEnum (minBound :: Word64)` = `minBound :: Int`, but ultimately you're constrained by Int's limitations
21:41:12 <monochrom> Fortunately, the same source that says 2^29-1 for Int, it doesn't even give any guarantee about Word. For all you know, the Haskell Report doesn't even say that Word cannot be isomorphic to (). >:)
21:41:57 <Philonous> monochrom, Well, but Word64 is guaranteed to be 64 bit, which is what I care about ;)
21:42:14 <monochrom> What really defeats you realistically is that "fromEnum (maxBound :: Word)" also fails.
21:43:13 <monochrom> even under the GHC guarantee that Int and Word have the same entropy.
21:44:02 <Philonous> monochrom, Well, if Int and Word have the same size it would fail since Int has to account for the sign bit, yes.
21:44:16 <Philonous> Which is what I expect to be the case
21:44:17 × stree quits (~stree@68.36.8.116) (Ping timeout: 268 seconds)
21:44:17 <hololeap> ultimately you'll have to be creating some kind of isomorphism to Int, whether it be using Enum or Hashable or whatever, unless you just want to use Map
21:44:49 <monochrom> I would consider unordered-container's hashset.
21:45:34 <monochrom> Then again for Int and Word etc the hash function used is the identity function, which is pessimizing for some applications.
21:46:16 <Philonous> I would really like to exploit the fact that the values I care about are going to be very close together, which IntSet optimizes well for since it removes the high-bit prefixes. If I use a HashSet that won't work
21:46:41 <monochrom> Or perhaps look for a raw finger tree implementation?
21:46:44 <Philonous> I thin the answer is going to be: Use Set for now and omdify IntSet to work on Word64 later
21:47:10 <Philonous> Wait, if the hash for Word is id that would actually work in my favour
21:47:13 <Philonous> Thanks for that hint
21:47:17 <monochrom> :)
21:47:19 <hololeap> but remember, you want to do it for any architecture ;)
21:47:37 <Philonous> Word64 is Word64 on any architecture
21:48:41 <hololeap> if you want it to work with the whole set of Word64 values on any architecture, you're stuck with Map
21:49:15 <hololeap> or something fancy, like an array of IntMaps or something
21:49:22 × fosterite quits (~fosterite@2600:6c46:7800:fecf:8b1:68fe:9103:2d9f) (Ping timeout: 258 seconds)
21:49:45 <monochrom> Is there an architect that has a machine word size so big it can't move? >:)
21:51:49 molehillish joins (~molehilli@2600:8800:8d06:1800:d9c:dee3:c2e:bb78)
21:51:51 <Philonous> hololeap, Well, HashSet hashes to Ints, but worst case I get some collisions which would marginally impact performance.
21:52:55 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 268 seconds)
21:53:13 <hololeap> does HashSet/HashMap use patricia trees under the hood?
21:53:26 <monochrom> http://hackage.haskell.org/package/hashable-1.3.1.0/docs/src/Data.Hashable.Class.html#line-372 has the hash function for Word64
21:54:59 × kuribas quits (~user@ptr-25vy0i9ffr9vxfznwlf.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
21:55:00 <monochrom> "hash array mapped tries"
21:56:16 × molehillish quits (~molehilli@2600:8800:8d06:1800:d9c:dee3:c2e:bb78) (Ping timeout: 258 seconds)
21:56:55 stree joins (~stree@68.36.8.116)
21:58:45 × natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
21:58:58 <dmj`> I'm writing a haskell guide, but it uses type signature instances to show what's going on in the proofs, and will provide equational reasoning of all instances for the laws of the typeclass, I think that will increase intuition much faster.
21:59:43 × alx741 quits (~alx741@181.196.68.6) (Quit: alx741)
22:00:50 <hololeap> happy little tries
22:02:16 conal joins (~conal@64.71.133.70)
22:02:44 <hololeap> dmj`: i'd like to see it when you publish it
22:05:34 <dmj`> hololeap: here's an example of an instance
22:06:06 <dmj`> https://gist.github.com/dmjio/b834954af8ff98a1bf04242d8d5a5b8c
22:07:25 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Remote host closed the connection)
22:08:17 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
22:08:18 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Read error: Connection reset by peer)
22:08:37 × fendor_ quits (~fendor@77.119.130.232.wireless.dyn.drei.com) (Read error: Connection reset by peer)
22:14:22 <dmj`> hololeap: unless readers can point to any variable in the instance and tell its type, they might be fooling themselves into thinking they understand it
22:15:26 × gienah quits (~mwright@gentoo/developer/gienah) (Quit: leaving)
22:24:05 v01d4lph4 joins (~v01d4lph4@223.190.20.92)
22:24:15 natechan joins (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
22:25:02 crestfallen joins (~john@128.32.176.159)
22:27:17 <justsomeguy> Heh, you just gave me the idea to write a hang-man style game for type signatures.
22:28:16 <justsomeguy> ...but I'll probably never actually write it, since I'm lazy (not the good kind) and bad at programming.
22:28:29 × v01d4lph4 quits (~v01d4lph4@223.190.20.92) (Ping timeout: 246 seconds)
22:28:33 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
22:28:49 HarveyPwca joins (~HarveyPwc@c-98-220-98-201.hsd1.il.comcast.net)
22:30:35 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 246 seconds)
22:30:55 × michalz quits (~user@185.246.204.43) (Remote host closed the connection)
22:32:17 × Varis quits (~Tadas@unaffiliated/varis) (Read error: Connection reset by peer)
22:34:36 DTZUZU_ joins (~DTZUZO@207.81.119.43)
22:34:46 × natechan quits (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
22:36:11 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 240 seconds)
22:39:06 Programmosaurus is now known as vv8
22:41:55 hexreel joins (~hr@2600:1700:28e2:14d0:44cc:3377:2281:bb1d)
22:42:59 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
22:43:20 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:543a:a17f:f67d:8caf) (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:45:34 × DavidEichmann quits (~david@47.27.93.209.dyn.plus.net) (Remote host closed the connection)
22:48:27 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
22:48:41 jneira joins (501e65b6@gateway/web/cgi-irc/kiwiirc.com/ip.80.30.101.182)
22:53:18 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 246 seconds)
22:53:32 conal__ joins (~conal@64.71.133.70)
22:56:09 <sim590> Is there a pointfree notation equivalent of this: (\ x y -> return $ x + y) ? I struggle to formulate it. For example: (return . (+)).
22:56:13 <sim590> Doesn't work
22:57:05 <hololeap> sim590: `liftM2 (+)` or `liftA2 (+)`
22:57:13 <hololeap> oh, no nvm
22:58:20 <sim590> @pl (\ x y -> return $ x + y)
22:58:20 <lambdabot> (return .) . (+)
22:58:25 <sim590> hmmmm
22:58:37 <sim590> I just found out about @pl.
22:59:07 <hololeap> although, methinks you writing things awkwardly if you have a pure function that has a Monad constraint
22:59:29 ep1ctetus joins (~epictetus@ip72-194-215-136.sb.sd.cox.net)
23:01:10 <sim590> hololeap: It's complicated.
23:01:13 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
23:01:49 <hololeap> honestly (\x y -> return (x+y)) is quite readable and the pointfree version is overly obfuscating
23:02:05 <dcbdan> how about: curry (return . uncurry (+))
23:02:24 <sim590> hololeap: yeah. I agree. I was just wondering about what I was doing wrong for making it happen.
23:02:26 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
23:02:57 nighmi joins (~felix@46.183.103.8)
23:03:34 <hololeap> the rule of thumb is, don't lift things into a Monad for as long as possible
23:03:58 <hololeap> it just adds unnecessary constraints to functions that could be used elsewhere
23:04:09 <sim590> hololeap: If you're curious, I have a project which implements a Left Binary Search Tree: http://ix.io/2URe and all the functions on this data type take a BSPComputer which is a function that takes two nodes and executes inside the ChronicleT monad which takes care of logging for the sake of keeping the code easier to debug when there are wrong behaviour added to the code.
23:05:06 codygman__ joins (~user@47.186.207.161)
23:05:43 <sim590> BSPcomputer is the function which computes the parent of two nodes because in this data structure, all internal nodes are computed and not set.
23:05:58 <ja> i have a Data.Map and i call splitRoot three times to obtain 4 chunks that i operate on with monad-par, but somehow that is slower than doing it in one go
23:06:26 <ja> the map has 5000 elements and with monad-par it takes 25 sec
23:06:40 <ja> and without parallelization it takes 5 sec
23:07:01 <ja> if it takes so long, surely it cant be the overhead of setting up threads that bogs it down
23:07:26 <ja> the splitRoot should be constant time, so i really don't understand how it can take so much longer...
23:08:11 <hololeap> ja, what's the operation?
23:08:53 <ja> the operation is just filtering on ByteStrings inside the members, using ByteString.isInfixOf or the stringsearch package
23:09:11 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
23:10:11 <hololeap> well the first question is, did you compile it with --threaded and run it with `+RTS -N4` (or however many cores you have)
23:10:14 × Tops2 quits (~Tobias@dyndsl-095-033-020-180.ewe-ip-backbone.de) (Read error: Connection reset by peer)
23:10:16 <L29Ah> bgamari_: have you tested the hyborg thing on ghc master?
23:10:39 <ja> hololeap: i just use -N and not the numeral, let me look up if that is right
23:10:58 <hololeap> yeah that uses the maximum number of cores that GHC detects
23:11:13 <monochrom> -N without a number automagically uses your # of cores for the number.
23:11:14 <hololeap> or the runtime, rather
23:14:38 <hololeap> the overhead is small, and it sounds like the operation is chunky enough to work well with parallelization, so i don't know why it would slow it down so much. maybe it's a GC thing
23:15:24 × son0p quits (~son0p@181.136.122.143) (Quit: Lost terminal)
23:17:15 × codygman__ quits (~user@47.186.207.161) (Remote host closed the connection)
23:17:23 <hololeap> you could use ekg or other profiling tools to debug it. ultimately you might want to read the book that was mentioned earlier since it explains all the details and shows examples of how to profile your application
23:18:05 <L29Ah> ja: are you sure your map chunks are evaluated before you give them out to your workers?
23:18:11 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
23:19:36 <ja> L29Ah: i use Data.IntMap.Strict , but i guess that is no guarantee that the map chunks are evaluated hmmm
23:19:57 <hololeap> that's what deepseq's for
23:19:57 × srk quits (~sorki@gateway/tor-sasl/sorki) (Ping timeout: 240 seconds)
23:20:29 × crestfallen quits (~john@128.32.176.159) (Ping timeout: 265 seconds)
23:20:49 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
23:20:55 <ja> hololeap: all right, i guess i must buy that book , thanks for the tips
23:21:14 srk joins (~sorki@gateway/tor-sasl/sorki)
23:21:15 hacxman joins (~hexo@gateway/tor-sasl/hexo)
23:21:57 × Unhammer quits (~Unhammer@gateway/tor-sasl/unhammer) (Ping timeout: 240 seconds)
23:21:57 × hexo quits (~hexo@gateway/tor-sasl/hexo) (Ping timeout: 240 seconds)
23:21:57 × shalokshalom quits (~quassel@2a02:1748:dd5e:7f60:cf49:8384:7c93:3106) (Read error: Connection reset by peer)
23:21:58 hacxman is now known as hexo
23:23:33 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds)
23:23:40 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-ewczhxqgteqsbchn) (Quit: Connection closed for inactivity)
23:23:54 nut joins (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
23:24:40 × hexreel quits (~hr@2600:1700:28e2:14d0:44cc:3377:2281:bb1d) (Quit: Textual IRC Client: www.textualapp.com)
23:25:39 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
23:25:57 × Chai-T-Rex quits (~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 240 seconds)
23:28:04 Chai-T-Rex joins (~ChaiTRex@gateway/tor-sasl/chaitrex)
23:31:07 alx741 joins (~alx741@181.196.68.6)
23:33:46 × ep1ctetus quits (~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
23:33:59 natechan joins (~natechan@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
23:34:48 Unhammer joins (~Unhammer@gateway/tor-sasl/unhammer)
23:38:06 × nut quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
23:38:27 codygman__ joins (~user@47.186.207.161)
23:39:17 × neiluj quits (~jco@unaffiliated/neiluj) (Quit: leaving)
23:41:05 jpds joins (~jpds@gateway/tor-sasl/jpds)
23:43:13 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
23:44:43 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 252 seconds)
23:45:08 <bgamari_> L29Ah, not yet
23:45:10 nbloomf joins (~nbloomf@2600:1700:ad14:3020:543a:a17f:f67d:8caf)
23:45:15 <bgamari_> L29Ah, was dealing with 9.2 things today
23:45:29 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
23:46:11 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:47:41 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 240 seconds)
23:48:12 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
23:48:37 olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber)
23:48:45 gienah joins (~mwright@gentoo/developer/gienah)
23:50:11 × __minoru__shirae quits (~shiraeesh@77.94.25.220) (Ping timeout: 240 seconds)
23:52:45 × conal__ quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
23:53:10 conal joins (~conal@64.71.133.70)
23:55:48 × conal quits (~conal@64.71.133.70) (Client Quit)
23:57:03 conal joins (~conal@64.71.133.70)
23:59:38 × cheater quits (~user@unaffiliated/cheater) (Ping timeout: 265 seconds)
23:59:51 × conal quits (~conal@64.71.133.70) (Client Quit)

All times are in UTC on 2021-04-02.