2021/07/20

2021-07-20 00:00:05 +0200bpv(~bryce@207.73.178.205) (Quit: WeeChat 3.2)
2021-07-20 00:00:18 +0200hseg(~gesh@185.120.126.10) (Quit: WeeChat 3.2)
2021-07-20 00:00:27 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18) (Ping timeout: 255 seconds)
2021-07-20 00:01:25 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-07-20 00:02:42 +0200burnsidesLlama(~burnsides@client-8-87.eduroam.oxuni.org.uk) (Ping timeout: 255 seconds)
2021-07-20 00:04:32 +0200aegon(~mike@174.127.249.180)
2021-07-20 00:05:04 +0200vemek1vemek
2021-07-20 00:07:21 +0200elf_fortrez(~elf_fortr@adsl-72-50-4-119.prtc.net)
2021-07-20 00:07:31 +0200Topsi(~Tobias@dyndsl-095-033-024-196.ewe-ip-backbone.de)
2021-07-20 00:07:41 +0200elf_fortrez(~elf_fortr@adsl-72-50-4-119.prtc.net) (Client Quit)
2021-07-20 00:08:29 +0200benin0369(~benin@183.82.177.8)
2021-07-20 00:09:31 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-07-20 00:09:43 +0200cheater(~Username@user/cheater)
2021-07-20 00:11:38 +0200aegon(~mike@174.127.249.180) (Killed (NickServ (GHOST command used by aegon_)))
2021-07-20 00:12:04 +0200Vajb(~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Ping timeout: 268 seconds)
2021-07-20 00:12:17 +0200Vajb(~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01)
2021-07-20 00:12:36 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-07-20 00:14:51 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 00:17:36 +0200favonia(~favonia@user/favonia)
2021-07-20 00:23:21 +0200dre(~dre@2001:8003:c932:c301:117d:15f9:de03:4d49)
2021-07-20 00:24:45 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 255 seconds)
2021-07-20 00:30:25 +0200favonia(~favonia@user/favonia) (Ping timeout: 246 seconds)
2021-07-20 00:31:56 +0200favonia(~favonia@user/favonia)
2021-07-20 00:33:51 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-07-20 00:34:16 +0200Ranhir(~Ranhir@157.97.53.139) (Ping timeout: 268 seconds)
2021-07-20 00:35:57 +0200argento(~argent0@168-227-96-26.ptr.westnet.com.ar) (Quit: leaving)
2021-07-20 00:43:02 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-07-20 00:45:14 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
2021-07-20 00:47:08 +0200zebrag(~chris@user/zebrag)
2021-07-20 00:48:11 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 00:48:38 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 00:49:30 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 00:49:48 +0200favonia(~favonia@user/favonia)
2021-07-20 00:52:30 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
2021-07-20 00:52:43 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
2021-07-20 00:57:29 +0200Topsi(~Tobias@dyndsl-095-033-024-196.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2021-07-20 00:58:26 +0200Vajb(~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01) (Read error: Connection reset by peer)
2021-07-20 00:58:57 +0200Vajb(~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
2021-07-20 00:59:35 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 255 seconds)
2021-07-20 00:59:38 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 01:00:34 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 01:00:37 +0200jumper149(~jumper149@80.240.31.34) (Quit: WeeChat 3.2)
2021-07-20 01:02:20 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 01:05:06 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
2021-07-20 01:08:29 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-07-20 01:11:08 +0200Jeanne-Kamikaze(~Jeanne-Ka@69.4.234.87)
2021-07-20 01:11:51 +0200cjb(~cjb@user/cjb)
2021-07-20 01:12:43 +0200phma(phma@2001:5b0:211f:1178:dd66:934e:c06f:5919) (Read error: Connection reset by peer)
2021-07-20 01:13:38 +0200phma(~phma@host-67-44-208-230.hnremote.net)
2021-07-20 01:18:02 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds)
2021-07-20 01:20:14 +0200vysn(~vysn@user/vysn) (Remote host closed the connection)
2021-07-20 01:21:29 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 01:23:27 +0200acidjnk_new(~acidjnk@p200300d0c72b9588f8c9d06c34eef88c.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-07-20 01:27:44 +0200Codaraxis_(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2021-07-20 01:28:04 +0200chris_(~chris@81.96.113.213)
2021-07-20 01:28:57 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 01:29:17 +0200chris_(~chris@81.96.113.213) (Remote host closed the connection)
2021-07-20 01:29:55 +0200chris_(~chris@81.96.113.213)
2021-07-20 01:31:37 +0200Codaraxis(~Codaraxis@user/codaraxis) (Ping timeout: 268 seconds)
2021-07-20 01:31:58 +0200nova(novasenco@user/nova)
2021-07-20 01:32:36 +0200TranquilEcho(~grom@user/tranquilecho)
2021-07-20 01:33:28 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Ping timeout: 268 seconds)
2021-07-20 01:34:03 +0200 <nova> I am currently using arch with ghcup and cabal, but cabal takes SO long to install packages that it is simply not usable. I am about to try nixos or gentoo, and I was wondering if anyone here uses their respective package managers to manager haskell packages (pandoc, pandoc-citeproc [this takes forever to recompile pandoc], xmonad, xmobar, etc). If so, does one hold an edge over the other?
2021-07-20 01:35:34 +0200chomwitt(~chomwitt@athedsl-32487.home.otenet.gr) (Remote host closed the connection)
2021-07-20 01:36:18 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
2021-07-20 01:37:24 +0200 <nova> I was using pacman, but I had to remove all of my haskell packages because it was even worse than ghcup (but at least it was fast)
2021-07-20 01:38:59 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18)
2021-07-20 01:39:30 +0200 <sclv> we’re developers here mainly. compile times are what they are
2021-07-20 01:41:16 +0200 <dsal> nova: I'm a pretty big fan of nixos. Nonetheless, first compilation can take a bit.
2021-07-20 01:41:29 +0200 <davean> You compile things once and you're done, meh?
2021-07-20 01:42:35 +0200 <nova> what about upgrades
2021-07-20 01:42:36 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04) (Ping timeout: 255 seconds)
2021-07-20 01:42:36 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds)
2021-07-20 01:42:53 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04)
2021-07-20 01:43:12 +0200 <dsal> Upgrades of what?
2021-07-20 01:43:34 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Remote host closed the connection)
2021-07-20 01:43:46 +0200 <yin[m]> any way we can avoid having to add `Show a =>` to a bunch of type signatures when "No instance for (Show a) arising from a use of ..." just for a quick Debug.trace?
2021-07-20 01:43:53 +0200 <dsal> I do nix updates all the time because I like giving my computer busy work. heh. They're reversible, though. If things go wrong, I can undo them.
2021-07-20 01:44:17 +0200 <dsal> yin[m]: You need some way to represent the values you're tracing.
2021-07-20 01:44:49 +0200 <davean> nova: uh, upgrades do the amount of work in the delta of the packages changed?
2021-07-20 01:45:19 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18) (Ping timeout: 246 seconds)
2021-07-20 01:45:22 +0200 <nova> does nix have to rebuild after downloading deltas?
2021-07-20 01:45:44 +0200 <dsal> nix can use binaries if they're available. It'll build if they're not.
2021-07-20 01:45:45 +0200 <davean> If it doesn't have the builds cached
2021-07-20 01:46:50 +0200 <yin[m]> sure, and I know they are, but ghc complains that if what I'm trying to show is an a and the funcion I'm in doesn't have the Show constraint in it, i cant see it. are my only options to comment all the relevant type signatures or add the Show constraint everywhere? isn't there something like an unsafeShow?
2021-07-20 01:47:19 +0200 <yin[m]> i just want a quick print for debugging purposes
2021-07-20 01:47:48 +0200 <yin[m]> * sure, and I know they are, but ghc complains that if what I'm trying to show is an a and the funcion I'm in doesn't have the Show a => constraint in it, i cant see it. are my only options to comment all the relevant type signatures or add the Show constraint everywhere? isn't there something like an unsafeShow?
2021-07-20 01:48:46 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18)
2021-07-20 01:49:32 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 01:51:36 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04) (Ping timeout: 255 seconds)
2021-07-20 01:51:41 +0200 <geekosaur> yin[m]: absent a Show constraint there may not even be code to do the Show
2021-07-20 01:54:02 +0200 <geekosaur> more correctly, without that constraint ghc doesn't know that the type involved has the code to do Show — and more to the point, doesn't have access to that code
2021-07-20 01:54:20 +0200 <geekosaur> (as ghc implements constraints)
2021-07-20 01:55:13 +0200favonia(~favonia@user/favonia)
2021-07-20 01:56:52 +0200 <geekosaur> a theoretical unsafeShow would still require some way to get access to the Show code for the type. in particular if it knows the type only at runtime, it would have to be passed in via a dictionary still
2021-07-20 01:59:31 +0200 <davean> geekosaur: how dirty should I be in answering how to do that?
2021-07-20 02:03:38 +0200 <geekosaur> oh brother
2021-07-20 02:03:49 +0200 <amesgen[m]> yin: you might be interested in `anythingToString`: https://hackage.haskell.org/package/recover-rtti-0.4.0.0/docs/Debug-RecoverRTTI.html
2021-07-20 02:04:03 +0200 <davean> geekosaur: ok, ok I won't break out my dirty tricks
2021-07-20 02:04:23 +0200 <geekosaur> I'm not surprised there's some kind of hack but I'm not sure handing out hacks is the best idea here
2021-07-20 02:04:38 +0200 <davean> Oh, its an actively bad idea
2021-07-20 02:04:39 +0200hololeap(~hololeap@user/hololeap)
2021-07-20 02:09:16 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04)
2021-07-20 02:12:48 +0200 <zzz> bow im curious
2021-07-20 02:12:56 +0200 <zzz> s/bow/now
2021-07-20 02:13:00 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-07-20 02:13:07 +0200 <yin[m]> inpromise I'll ignore it
2021-07-20 02:13:12 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18) (Ping timeout: 255 seconds)
2021-07-20 02:13:26 +0200 <geekosaur> there are some evil ways to manufacture dictionaries on the fly
2021-07-20 02:13:33 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18)
2021-07-20 02:15:54 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04) (Ping timeout: 255 seconds)
2021-07-20 02:20:02 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2021-07-20 02:20:17 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2021-07-20 02:21:45 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 02:22:10 +0200favonia(~favonia@user/favonia)
2021-07-20 02:29:10 +0200curiousgay(~curiousga@77-120-144-167.kha.volia.net) (Remote host closed the connection)
2021-07-20 02:29:50 +0200curiousgay(~curiousga@77-120-144-167.kha.volia.net)
2021-07-20 02:34:20 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 02:34:31 +0200Achylles(~Achylles_@2804:431:d725:166d:e1ee:92d4:ae07:dd1e)
2021-07-20 02:35:39 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-07-20 02:36:11 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 02:36:20 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
2021-07-20 02:40:12 +0200pbrisbin(~patrick@pool-173-49-147-28.phlapa.fios.verizon.net) (Ping timeout: 255 seconds)
2021-07-20 02:40:44 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-07-20 02:42:11 +0200pbrisbin(~patrick@pool-108-52-124-197.phlapa.fios.verizon.net)
2021-07-20 02:42:40 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04)
2021-07-20 02:43:25 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 02:45:09 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18) (Ping timeout: 255 seconds)
2021-07-20 02:45:41 +0200Achylles(~Achylles_@2804:431:d725:166d:e1ee:92d4:ae07:dd1e) (Quit: Leaving)
2021-07-20 02:46:53 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-07-20 02:57:01 +0200phma(~phma@host-67-44-208-230.hnremote.net) (Read error: Connection reset by peer)
2021-07-20 02:57:18 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 02:57:43 +0200favonia(~favonia@user/favonia)
2021-07-20 02:57:56 +0200phma(phma@2001:5b0:211f:e4d8:6e5e:7ad2:e1a9:776d)
2021-07-20 03:00:47 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18)
2021-07-20 03:01:24 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-07-20 03:02:42 +0200agua(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04) (Ping timeout: 255 seconds)
2021-07-20 03:08:02 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 258 seconds)
2021-07-20 03:10:29 +0200 <oso> what's this arcane error i'm getting while trying to build and how can i fix it? i've tried a few things like explicitly denoting types but can't get around it https://paste.tomsmeding.com/SIas3Dgn
2021-07-20 03:11:13 +0200 <dsal> You could use type applications.
2021-07-20 03:11:15 +0200 <dsal> Or ignore it.
2021-07-20 03:12:03 +0200 <geekosaur> and stop using -Werrorl or at least turn it off for defaulting
2021-07-20 03:12:28 +0200 <geekosaur> where it's kinda obnoxious because defaulting basically exists for this use case
2021-07-20 03:12:50 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
2021-07-20 03:12:51 +0200 <dsal> Most of the time where I've had defaulting warnings, I've not cared.
2021-07-20 03:13:07 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 03:13:41 +0200 <oso> looking into defaulting, thanks
2021-07-20 03:14:18 +0200 <geekosaur> the problem is that there are cases where you pretty much can't specify the type
2021-07-20 03:14:51 +0200nuncanada(~dude@179.235.162.215) (Read error: Connection reset by peer)
2021-07-20 03:15:50 +0200 <geekosaur> although here you could, you just have to annotate almost everything with a type
2021-07-20 03:16:10 +0200 <oso> i only had to annotate the 100 as a double, actually, that got rid of the warning
2021-07-20 03:17:39 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 03:18:08 +0200 <oso> thanks for pointing me in the right direction
2021-07-20 03:19:48 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Ping timeout: 255 seconds)
2021-07-20 03:20:20 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Ping timeout: 252 seconds)
2021-07-20 03:20:41 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 03:22:14 +0200xff0x_(~xff0x@2001:1a81:5299:ea00:2c16:bae7:eca6:fd06) (Ping timeout: 255 seconds)
2021-07-20 03:22:33 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Ping timeout: 265 seconds)
2021-07-20 03:24:01 +0200xff0x_(~xff0x@2001:1a81:52d5:1300:6dad:c8ed:ecb7:8640)
2021-07-20 03:25:44 +0200smichel17(~smichel17@c-73-68-217-18.hsd1.ma.comcast.net) (Quit: smichel17)
2021-07-20 03:26:25 +0200Maxdamantus(~Maxdamant@user/maxdamantus)
2021-07-20 03:30:58 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-07-20 03:32:58 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 03:46:03 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 268 seconds)
2021-07-20 03:47:36 +0200Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-07-20 03:52:16 +0200berberman(~berberman@user/berberman)
2021-07-20 03:52:57 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 244 seconds)
2021-07-20 03:53:17 +0200berberman_(~berberman@user/berberman) (Ping timeout: 255 seconds)
2021-07-20 03:53:30 +0200dre_(~dre@2001:8003:c932:c301:117d:15f9:de03:4d49)
2021-07-20 03:54:28 +0200dre(~dre@2001:8003:c932:c301:117d:15f9:de03:4d49) (Ping timeout: 246 seconds)
2021-07-20 03:54:33 +0200dre_(~dre@2001:8003:c932:c301:117d:15f9:de03:4d49) ()
2021-07-20 03:55:10 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2021-07-20 03:59:15 +0200 <h98> I love how GHC gets confused by numbers in instance resolution....is "1" a Word32 or a Ptr a -> Ptr b -> IO Word32? Who knows what he meant!
2021-07-20 04:00:25 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net)
2021-07-20 04:01:28 +0200slep(~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) (Quit: No Ping reply in 180 seconds.)
2021-07-20 04:01:43 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 04:04:01 +0200slep(~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net)
2021-07-20 04:04:45 +0200aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2021-07-20 04:07:38 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-07-20 04:09:45 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2021-07-20 04:10:14 +0200wagle(~wagle@quassel.wagle.io)
2021-07-20 04:11:17 +0200td_(~td@muedsl-82-207-238-108.citykom.de) (Ping timeout: 255 seconds)
2021-07-20 04:13:07 +0200td_(~td@muedsl-82-207-238-004.citykom.de)
2021-07-20 04:13:08 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-07-20 04:13:42 +0200alx741(~alx741@186.178.108.174) (Quit: alx741)
2021-07-20 04:15:28 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 246 seconds)
2021-07-20 04:16:12 +0200shailangsa(~shailangs@host86-186-191-14.range86-186.btcentralplus.com) (Ping timeout: 265 seconds)
2021-07-20 04:18:06 +0200Codaraxis__(~Codaraxis@141.98.255.148)
2021-07-20 04:18:07 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2021-07-20 04:18:08 +0200Kaiepi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2021-07-20 04:18:33 +0200Kaipi(~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
2021-07-20 04:19:25 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-07-20 04:21:34 +0200Codaraxis_(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Ping timeout: 252 seconds)
2021-07-20 04:22:36 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
2021-07-20 04:22:47 +0200dajoer(~david@user/gvx)
2021-07-20 04:23:28 +0200chris_(~chris@81.96.113.213) (Remote host closed the connection)
2021-07-20 04:30:27 +0200nuncanada(~dude@179.235.162.215)
2021-07-20 04:31:48 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
2021-07-20 04:33:19 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-07-20 04:34:05 +0200dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 265 seconds)
2021-07-20 04:35:21 +0200dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net)
2021-07-20 04:42:56 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-07-20 04:44:10 +0200favonia(~favonia@user/favonia)
2021-07-20 04:45:05 +0200nuncanada(~dude@179.235.162.215) (Read error: Connection reset by peer)
2021-07-20 04:45:17 +0200Shailangsa_(~shailangs@host86-186-142-108.range86-186.btcentralplus.com)
2021-07-20 04:47:37 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-07-20 04:51:48 +0200finsternis(~X@23.226.237.192) (Read error: Connection reset by peer)
2021-07-20 04:53:15 +0200Jeanne-Kamikaze(~Jeanne-Ka@69.4.234.87) (Quit: Leaving)
2021-07-20 04:58:30 +0200Jeanne-Kamikaze(~Jeanne-Ka@69.4.234.87)
2021-07-20 05:01:30 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 05:03:52 +0200favonia(~favonia@user/favonia)
2021-07-20 05:04:12 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
2021-07-20 05:05:46 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 05:08:24 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 258 seconds)
2021-07-20 05:10:32 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Ping timeout: 268 seconds)
2021-07-20 05:12:45 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-07-20 05:15:21 +0200Jeanne-Kamikaze(~Jeanne-Ka@69.4.234.87) (Quit: Leaving)
2021-07-20 05:17:35 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-07-20 05:17:39 +0200wei2912(~wei2912@112.199.250.21)
2021-07-20 05:19:37 +0200zebrag(~chris@user/zebrag) (Remote host closed the connection)
2021-07-20 05:21:29 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 05:24:01 +0200favonia(~favonia@user/favonia)
2021-07-20 05:26:34 +0200h98(~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2021-07-20 05:29:29 +0200guest719(~user@49.5.6.87) (Quit: ERC (IRC client for Emacs 27.1))
2021-07-20 05:34:42 +0200amk(~amk@176.61.106.150) (Ping timeout: 240 seconds)
2021-07-20 05:36:18 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 05:36:25 +0200amk(~amk@176.61.106.150)
2021-07-20 05:36:42 +0200favonia(~favonia@user/favonia)
2021-07-20 05:38:24 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-07-20 05:43:41 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-07-20 05:44:51 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2021-07-20 05:47:33 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 265 seconds)
2021-07-20 05:49:16 +0200Erutuon(~Erutuon@user/erutuon)
2021-07-20 05:49:48 +0200nate1(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
2021-07-20 05:51:19 +0200 <Boarders> does GHC have standalone kind signatures now?
2021-07-20 05:52:14 +0200 <Boarders> I can't seem to find it in the user guide so I must be looking in the wrong places
2021-07-20 05:54:36 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 05:58:24 +0200favonia(~favonia@user/favonia)
2021-07-20 05:59:17 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-07-20 06:03:54 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 06:04:22 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-07-20 06:04:28 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi)
2021-07-20 06:04:28 +0200peterhil_(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-07-20 06:05:38 +0200 <justsomeguy> In the book I'm reading, it says "Functional programming languages are all based on lambda calculus." Isn't this wrong? -- Lisp (non-scheme, older versions only), I think, was based on McCarthy's recursive function notation. I've also encountered some quotes about ALGOL 68 being described partly in lambda calculus, which leads me to ask -- what does it mean for a language to be based on lambda
2021-07-20 06:05:40 +0200 <justsomeguy> calculus in the first place?
2021-07-20 06:06:54 +0200 <Boarders> lisp was definitely based on the lambda calculus even if mccarthy made improvements to it as a programming language
2021-07-20 06:07:50 +0200 <justsomeguy> There's a quote in this article by McCarthy saying otherwise ... https://danielsz.github.io/blog/2019-08-05T21_14.html
2021-07-20 06:08:30 +0200 <justsomeguy> Or, err, a quote by McCarthy in this article by Danielsz.
2021-07-20 06:08:47 +0200 <justsomeguy> (Words are hard, sometimes.)
2021-07-20 06:09:16 +0200 <Boarders> everyone else involved in lisp seemed to think it was "based on" the lambda calculus so I wouldn't take what McCarthy's quote means too seriously
2021-07-20 06:09:33 +0200 <Boarders> especially for instance the writers of scheme
2021-07-20 06:10:05 +0200 <Boarders> who wrote a whole series of papers explaining how to encode various programming language construct in lambda calculus
2021-07-20 06:10:27 +0200 <justsomeguy> Hmm... ok.
2021-07-20 06:11:17 +0200 <Boarders> this is a relevant paper: https://dspace.mit.edu/handle/1721.1/6091
2021-07-20 06:12:05 +0200TranquilEcho(~grom@user/tranquilecho) (Quit: WeeChat 2.8)
2021-07-20 06:12:05 +0200 <justsomeguy> I'm still not sure the calculus matters. If a PL was developed that is based on SKI combinator calculus, and had functional features (referential transparency, first-class functions) would you consider that a functional language?
2021-07-20 06:12:18 +0200justsomeguyis checking out the paper now
2021-07-20 06:13:36 +0200 <justsomeguy> But I think I'm probably taking that quote from the book too literally.
2021-07-20 06:14:06 +0200 <lechner> which book?
2021-07-20 06:14:21 +0200 <justsomeguy> Haskell programming from first princpiles (haskellbook.com)
2021-07-20 06:15:21 +0200 <justsomeguy> I'm, uhh, currently over-analysing the first chapter as part of a strange procrastination ritual.
2021-07-20 06:16:21 +0200P1RATEZ(piratez@user/p1ratez)
2021-07-20 06:16:49 +0200 <lechner> sometimes it's worthwhile to get your bearings right
2021-07-20 06:16:58 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-07-20 06:17:35 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 06:17:42 +0200 <justsomeguy> Well, at least I'm still learning new things from it.
2021-07-20 06:23:50 +0200Nahra`(~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection)
2021-07-20 06:24:12 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-07-20 06:24:50 +0200Nahra`(~user@static.161.95.99.88.clients.your-server.de)
2021-07-20 06:27:27 +0200cjb(~cjb@user/cjb) (Quit: rcirc on GNU Emacs 28.0.50)
2021-07-20 06:31:36 +0200 <dsal> It's a great book. Depends on what you need to get out of it, though. I didn't care much about that particular bit of theory.
2021-07-20 06:34:51 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 06:37:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
2021-07-20 06:40:14 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Ping timeout: 265 seconds)
2021-07-20 06:40:33 +0200cjb(~cjb@user/cjb)
2021-07-20 06:45:07 +0200 <justsomeguy> I've been developing a love hate relationship with it. I like the order that it teaches things in, and also how it leaves a lot of breadcrumbs to explore further. On the other hand, I often wish it to be more explcit about what the learning objectives for each chapter are, and have better code examples of where a newly introduced abstraction will be useful. It's also just too long, and not
2021-07-20 06:45:09 +0200 <justsomeguy> structured well enough to keep track of things (section names aren't descriptive enough, no figure numbers).
2021-07-20 06:45:36 +0200 <justsomeguy> But part of that is also just me learning how to read a big book.
2021-07-20 06:46:48 +0200justsomeguyhasn't attempted to read a large non-fiction book where he can't "keep it all in his head" at once before this.
2021-07-20 06:50:12 +0200Codaraxis(~Codaraxis@user/codaraxis)
2021-07-20 06:52:48 +0200Codaraxis__(~Codaraxis@141.98.255.148) (Ping timeout: 265 seconds)
2021-07-20 06:53:09 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Remote host closed the connection)
2021-07-20 06:54:37 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 06:56:30 +0200whileone(~whileone@98.37.84.120)
2021-07-20 06:58:17 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-07-20 06:58:25 +0200progwrite(~progwrite@95.104.194.200)
2021-07-20 06:58:47 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Ping timeout: 252 seconds)
2021-07-20 06:59:31 +0200progwrite(~progwrite@95.104.194.200) ()
2021-07-20 07:01:10 +0200progwrite(progwrite@95.104.194.200)
2021-07-20 07:01:23 +0200progwrite(progwrite@95.104.194.200) ()
2021-07-20 07:04:37 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds)
2021-07-20 07:08:06 +0200P1RATEZ(piratez@user/p1ratez) (Remote host closed the connection)
2021-07-20 07:08:48 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 07:09:27 +0200 <dsal> Well, the lambda calculus thing is the first chapter, so like, I'm not sure how you got such a judgment. :)
2021-07-20 07:09:39 +0200 <dsal> But it mostly just walks you through building a lot of the fundamentals.
2021-07-20 07:10:47 +0200 <dsal> I had working haskell code I was working on when I read it, though. A lot of what it did was help me understand my code and the ideas behind it better. And dissolved some of the magic.
2021-07-20 07:11:30 +0200 <justsomeguy> As for how I came up with that opionion; I've read up to chapter 22, but am revisiting ch 1.
2021-07-20 07:11:50 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2021-07-20 07:13:29 +0200cjb(~cjb@user/cjb) (Quit: rcirc on GNU Emacs 28.0.50)
2021-07-20 07:14:13 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
2021-07-20 07:15:08 +0200 <justsomeguy> Overall, I like the book a lot. Maybe I shouldn't have said so much; I got a bit frustrated with it.
2021-07-20 07:16:20 +0200 <sm> justsomeguy: sounds quite reasonable
2021-07-20 07:19:29 +0200whileone(~whileone@98.37.84.120) (Quit: Client closed)
2021-07-20 07:20:04 +0200whileone(~jasonfout@98.37.84.120)
2021-07-20 07:22:18 +0200zmt00(~zmt00@user/zmt00) (Quit: Gone.)
2021-07-20 07:22:18 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-07-20 07:23:05 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 07:24:33 +0200zmt00(~zmt00@user/zmt00)
2021-07-20 07:25:14 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 07:25:35 +0200favonia(~favonia@user/favonia)
2021-07-20 07:28:20 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 07:28:48 +0200whileone(~jasonfout@98.37.84.120) (Quit: WeeChat 3.1)
2021-07-20 07:30:30 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-07-20 07:31:56 +0200 <dsal> Ah. It sounded like you were just on chapter one. heh.
2021-07-20 07:32:24 +0200 <dsal> It's not a *perfect* book, but I liked the pace. I can totally understand why some people wouldn't like it. I enjoyed forgetting I ever knew how to program and just hopping in.
2021-07-20 07:33:36 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
2021-07-20 07:34:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 07:34:50 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
2021-07-20 07:35:00 +0200favonia(~favonia@user/favonia)
2021-07-20 07:43:19 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-07-20 07:43:54 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 07:44:12 +0200favonia(~favonia@user/favonia)
2021-07-20 07:47:00 +0200chris_(~chris@81.96.113.213)
2021-07-20 07:47:55 +0200suszero
2021-07-20 07:48:00 +0200zerosus
2021-07-20 07:51:30 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 07:52:02 +0200Ananta-shesha(~pjetcetal@128-71-13-182.broadband.corbina.ru) (Quit: EXIT)
2021-07-20 07:55:03 +0200Ananta-shesha(~pjetcetal@128-71-13-182.broadband.corbina.ru)
2021-07-20 08:00:00 +0200favonia(~favonia@user/favonia)
2021-07-20 08:04:51 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 08:05:47 +0200shutdown_-h_now(~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl) (Ping timeout: 265 seconds)
2021-07-20 08:05:51 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-07-20 08:06:16 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds)
2021-07-20 08:07:32 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
2021-07-20 08:09:22 +0200guest720(~user@49.5.6.87)
2021-07-20 08:09:58 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 08:10:44 +0200benin0369(~benin@183.82.177.8) (Ping timeout: 252 seconds)
2021-07-20 08:11:13 +0200shutdown_-h_now(~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
2021-07-20 08:15:15 +0200benin0369(~benin@183.82.204.103)
2021-07-20 08:23:18 +0200Neunsburg(~Guest26@114.244.68.126)
2021-07-20 08:26:50 +0200 <sm> justsomeguy, maybe read some others for balance
2021-07-20 08:27:21 +0200 <sm> check this out: https://www.extrema.is/articles/haskell-books
2021-07-20 08:27:35 +0200 <sm> though if you've read 22 chapters of HPFFP maybe they have nothing to teach you :)
2021-07-20 08:30:18 +0200dunkeln(~dunkeln@188.71.231.232)
2021-07-20 08:33:49 +0200benin0369(~benin@183.82.204.103) (Ping timeout: 265 seconds)
2021-07-20 08:34:12 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 08:35:42 +0200chele(~chele@user/chele)
2021-07-20 08:42:41 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 08:43:42 +0200fendor(~fendor@91.141.52.148.wireless.dyn.drei.com)
2021-07-20 08:47:08 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Ping timeout: 255 seconds)
2021-07-20 08:48:49 +0200berberman(~berberman@user/berberman) (Ping timeout: 246 seconds)
2021-07-20 08:49:11 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es)
2021-07-20 08:49:32 +0200berberman(~berberman@user/berberman)
2021-07-20 08:50:11 +0200michalz(~michalz@185.246.204.50)
2021-07-20 08:50:41 +0200dunkeln(~dunkeln@188.71.231.232) (Ping timeout: 268 seconds)
2021-07-20 08:54:45 +0200agua(~agua@2804:18:4f:bc57:1:0:3808:8f6a)
2021-07-20 08:55:51 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 08:56:15 +0200benin0369(~benin@183.82.176.216)
2021-07-20 08:56:51 +0200pesada(~agua@2804:18:70:635e:1:0:3619:5a18) (Ping timeout: 255 seconds)
2021-07-20 08:57:43 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-07-20 08:59:30 +0200zeenk(~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38)
2021-07-20 08:59:54 +0200fef(~thedawn@user/thedawn)
2021-07-20 09:00:55 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-07-20 09:02:16 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com)
2021-07-20 09:02:21 +0200Null_A(~null_a@2601:645:8700:2290:34e6:e307:f490:7d07) (Remote host closed the connection)
2021-07-20 09:02:25 +0200derelict(~derelict@user/derelict) (Ping timeout: 250 seconds)
2021-07-20 09:03:06 +0200Null_A(~null_a@2601:645:8700:2290:34e6:e307:f490:7d07)
2021-07-20 09:03:22 +0200Null_A(~null_a@2601:645:8700:2290:34e6:e307:f490:7d07) (Remote host closed the connection)
2021-07-20 09:05:08 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 09:08:11 +0200favonia(~favonia@user/favonia)
2021-07-20 09:08:51 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
2021-07-20 09:09:08 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 258 seconds)
2021-07-20 09:09:13 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-07-20 09:09:38 +0200talismanick(~user@2601:644:8502:d700::f19d) (Ping timeout: 255 seconds)
2021-07-20 09:10:11 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 09:12:49 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2021-07-20 09:13:43 +0200sarapple(~sarapple@174.127.249.180)
2021-07-20 09:13:54 +0200sarapple(~sarapple@174.127.249.180) ()
2021-07-20 09:14:50 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-07-20 09:16:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 09:17:33 +0200favonia(~favonia@user/favonia)
2021-07-20 09:17:52 +0200Erutuon(~Erutuon@user/erutuon)
2021-07-20 09:19:55 +0200hololeap_(~hololeap@user/hololeap)
2021-07-20 09:20:00 +0200hololeap(~hololeap@user/hololeap) (Ping timeout: 244 seconds)
2021-07-20 09:29:25 +0200favonia(~favonia@user/favonia) (Ping timeout: 246 seconds)
2021-07-20 09:29:50 +0200favonia(~favonia@user/favonia)
2021-07-20 09:30:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 09:31:31 +0200oso(~oso@2601:58c:c080:a950:f275:2530:b398:680b) (Ping timeout: 246 seconds)
2021-07-20 09:37:56 +0200burnsidesLlama(~burnsides@client-8-87.eduroam.oxuni.org.uk)
2021-07-20 09:38:19 +0200Bartol(~Bartol@84-222-7-217.adsl-wholesale.clienti.tiscali.it)
2021-07-20 09:38:28 +0200burnsidesLlama(~burnsides@client-8-87.eduroam.oxuni.org.uk) (Remote host closed the connection)
2021-07-20 09:38:34 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 09:38:54 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 09:38:59 +0200favonia(~favonia@user/favonia)
2021-07-20 09:39:01 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-07-20 09:39:20 +0200Bartol(~Bartol@84-222-7-217.adsl-wholesale.clienti.tiscali.it) ()
2021-07-20 09:39:22 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
2021-07-20 09:39:51 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 09:41:48 +0200feffef_
2021-07-20 09:42:11 +0200gioyik(~gioyik@gateway/tor-sasl/gioyik) (Quit: WeeChat 3.1)
2021-07-20 09:44:10 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
2021-07-20 09:47:18 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-07-20 09:47:38 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 252 seconds)
2021-07-20 09:52:25 +0200wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-07-20 09:54:08 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 252 seconds)
2021-07-20 09:56:10 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 09:56:22 +0200favonia(~favonia@user/favonia) (Ping timeout: 245 seconds)
2021-07-20 09:56:47 +0200favonia(~favonia@user/favonia)
2021-07-20 09:58:46 +0200jneira(~jneira@212.8.115.226)
2021-07-20 09:59:45 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 268 seconds)
2021-07-20 09:59:51 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Ping timeout: 265 seconds)
2021-07-20 10:01:56 +0200gehmehgeh(~user@user/gehmehgeh)
2021-07-20 10:05:07 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 246 seconds)
2021-07-20 10:05:27 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-07-20 10:06:42 +0200hendursa1(~weechat@user/hendursaga)
2021-07-20 10:08:25 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt)
2021-07-20 10:10:07 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 244 seconds)
2021-07-20 10:11:23 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-07-20 10:12:54 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2021-07-20 10:13:47 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 10:14:47 +0200jrm(~jrm@156.34.187.65) (Quit: ciao)
2021-07-20 10:15:06 +0200jrm(~jrm@156.34.187.65)
2021-07-20 10:17:34 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-07-20 10:17:34 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-07-20 10:17:37 +0200allbery_bgeekosaur
2021-07-20 10:18:08 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 258 seconds)
2021-07-20 10:24:12 +0200MorrowM(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-07-20 10:24:20 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 255 seconds)
2021-07-20 10:24:56 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
2021-07-20 10:27:52 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 10:29:35 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-07-20 10:30:04 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
2021-07-20 10:30:48 +0200Lord_of_Life_Lord_of_Life
2021-07-20 10:31:46 +0200favonia(~favonia@user/favonia) (Ping timeout: 256 seconds)
2021-07-20 10:32:00 +0200acidjnk(~acidjnk@p200300d0c72b9588c508b842a8b97de2.dip0.t-ipconnect.de)
2021-07-20 10:32:04 +0200favonia(~favonia@user/favonia)
2021-07-20 10:36:37 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 10:38:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-07-20 10:39:25 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2021-07-20 10:41:50 +0200Axman6(~Axman6@user/axman6)
2021-07-20 10:42:15 +0200ubert(~Thunderbi@91.141.50.212.wireless.dyn.drei.com)
2021-07-20 10:43:04 +0200Neunsburg(~Guest26@114.244.68.126) (Quit: Client closed)
2021-07-20 10:49:31 +0200o1lo01ol1o(~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Remote host closed the connection)
2021-07-20 10:53:39 +0200 <smtnet3> sm, this is a great resource, currently going through hpffp and am looking for some more level up books from there
2021-07-20 10:57:56 +0200fef_(~thedawn@user/thedawn) (Remote host closed the connection)
2021-07-20 10:58:31 +0200fef_(~thedawn@user/thedawn)
2021-07-20 11:00:43 +0200delYsid(~user@84-115-55-45.cable.dynamic.surfer.at)
2021-07-20 11:01:47 +0200 <delYsid> dyre is pretty cool, took me forever to discover it.
2021-07-20 11:02:47 +0200Shailangsa_(~shailangs@host86-186-142-108.range86-186.btcentralplus.com) ()
2021-07-20 11:04:18 +0200Axman640(~Axman6@user/axman6)
2021-07-20 11:06:11 +0200ukari(~ukari@user/ukari) (Ping timeout: 255 seconds)
2021-07-20 11:07:25 +0200maxie(~IceChat95@45.100.3.196) (Ping timeout: 246 seconds)
2021-07-20 11:07:46 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 246 seconds)
2021-07-20 11:07:53 +0200Axman640Axman6
2021-07-20 11:08:08 +0200zaquest(~notzaques@5.128.210.178) (Quit: Leaving)
2021-07-20 11:11:15 +0200ij(~ij@host-92-28-191-159.as13285.net)
2021-07-20 11:19:15 +0200zaquest(~notzaques@5.128.210.178)
2021-07-20 11:22:42 +0200ukari(~ukari@user/ukari)
2021-07-20 11:23:56 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi)
2021-07-20 11:26:48 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-07-20 11:26:50 +0200 <arahael> Hmm, very much a newbie question: How do I run 'hprotoc' that is, I think, part of 'protocol-buffers'? How do I "install" it as part of my project?
2021-07-20 11:27:04 +0200 <arahael> I'm referring to this project, which is in hackage: https://github.com/k-bx/protocol-buffers
2021-07-20 11:28:47 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Ping timeout: 265 seconds)
2021-07-20 11:29:17 +0200 <dminuoso> arahael: Are you a cabal user? Stack user?
2021-07-20 11:30:23 +0200 <arahael> cabal.
2021-07-20 11:30:34 +0200gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-07-20 11:30:49 +0200 <dminuoso> In which context do you want to run this?
2021-07-20 11:30:54 +0200 <dminuoso> From inside your haskell program?
2021-07-20 11:31:09 +0200 <maerwald> nova: haskell on gentoo's PM: clear no
2021-07-20 11:31:14 +0200 <arahael> Ah, no, I think I'd ideally want it pre-generated when compiling it.
2021-07-20 11:31:40 +0200 <arahael> Either as template-haskell, or well, plain old boring code generation.
2021-07-20 11:31:45 +0200fef_(~thedawn@user/thedawn) (Ping timeout: 244 seconds)
2021-07-20 11:32:48 +0200shailangsa(~shailangs@host86-186-142-108.range86-186.btcentralplus.com)
2021-07-20 11:33:00 +0200 <dminuoso> arahael: Use a custom Setup.hs
2021-07-20 11:33:34 +0200 <arahael> dminuoso: I've never done that.
2021-07-20 11:34:11 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 11:34:26 +0200Axman682(~Axman6@user/axman6)
2021-07-20 11:34:41 +0200 <dminuoso> arahael: See https://github.com/google/proto-lens/blob/master/proto-lens-setup/src/Data/ProtoLens/Setup.hs
2021-07-20 11:35:16 +0200 <dminuoso> Also https://github.com/google/proto-lens/blob/master/proto-lens-setup/package.yaml
2021-07-20 11:35:40 +0200 <arahael> dminuoso: I'm really just looking for the hprotoc at this stage. Just did a `find .* -iname 'hprotoc'`, after ensuring that 'protocol-buffers' is in my project dependencies and having done a `cabal build` first... But... There are no results.
2021-07-20 11:35:50 +0200 <dminuoso> arahael: Yes. Look at the links I just provided.
2021-07-20 11:36:10 +0200 <dminuoso> Perhaps just the second one.
2021-07-20 11:37:11 +0200 <arahael> dminuoso: Looks like I need to use a different package? Specifically proto-lens-protoc ?
2021-07-20 11:37:35 +0200 <dminuoso> No.
2021-07-20 11:37:52 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 246 seconds)
2021-07-20 11:37:56 +0200Axman682Axman6
2021-07-20 11:38:27 +0200ij(~ij@host-92-28-191-159.as13285.net) (Quit: Connection closed)
2021-07-20 11:39:30 +0200Guest26(~Guest26@114.244.68.126)
2021-07-20 11:40:44 +0200 <arahael> dminuoso: I'm not seeing anything in there that specifically installs protoc, though... But inferring from the docstrings in the Setup.hs file you've got there... It seems to throw an exception if it's not on the path?
2021-07-20 11:41:13 +0200 <arahael> This is line 9 of the Setup.hs file you've linked: -- These functions assume that the @proto-lens-protoc@ executable is on the
2021-07-20 11:41:51 +0200 <arahael> So I'm thinking hprotoc is an external dependency?
2021-07-20 11:42:18 +0200euouae(~euouae@user/euouae)
2021-07-20 11:42:40 +0200Guest26Neunsburg
2021-07-20 11:43:17 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds)
2021-07-20 11:45:38 +0200 <dminuoso> arahael: You want to generate proto buffer definitions on the fly, fight?
2021-07-20 11:45:56 +0200MQ-17J(~MQ-17J@8.21.10.15)
2021-07-20 11:46:28 +0200 <dminuoso> See https://hackage.haskell.org/package/proto-lens-setup (which is just the hackage version of the above link)
2021-07-20 11:47:05 +0200 <arahael> dminuoso: Lets restart, I've just discovered the readme.md file in that repository. And yes, I wanted to generate the haskell code for .proto files, however, I was looking specifically at protocol-buffers - the hackage package called "protocol-buffers". I think the one you've linked in is better and I should probably use that _instead_.
2021-07-20 11:47:42 +0200 <dminuoso> arahael: If you want to do this yourself, then my first link is relevant. :)
2021-07-20 11:47:47 +0200 <dminuoso> https://github.com/google/proto-lens/blob/master/proto-lens-setup/src/Data/ProtoLens/Setup.hs
2021-07-20 11:48:26 +0200 <arahael> dminuoso: The problem with seeing a few hundred lines of haskell is that I'm assuming I have to read, understand, and write that hundred or so lines!
2021-07-20 11:52:01 +0200 <Gurkenglas> what would be the modern way to build Dasher https://www.youtube.com/watch?v=nr3s4613DX8 in Haskell? Somethign something FRP?
2021-07-20 11:52:53 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 11:53:02 +0200 <dminuoso> arahael: So I'm not experienced enough to give you an accurate description. I'm very likely to mix up terms and say wrong thing about cabal-install, Cabal-the-library, Setup.hs and the build process.
2021-07-20 11:53:08 +0200Axman69(~Axman6@user/axman6)
2021-07-20 11:53:17 +0200 <dminuoso> But I can point you towards https://cabal.readthedocs.io/en/3.4/cabal-package.html#more-complex-packages
2021-07-20 11:53:22 +0200 <arahael> dminuoso: I'm really just trying to get hprotoc (or whatever it's called).
2021-07-20 11:53:31 +0200 <Taneb> Gurkenglas: I'm not convinced there is an Accepted answer for custom GUIs like that in Haskell but FRP seems a reasonable approach
2021-07-20 11:54:06 +0200 <Gurkenglas> what library would you recommend?
2021-07-20 11:54:49 +0200 <Taneb> I don't have any recommendations for this I'm afraid
2021-07-20 11:55:56 +0200 <arahael> dminuoso: Ok, it's definitely an external dependency: "First, install the "protoc" binary somewhere in your PATH. You can get it by following these instructions."
2021-07-20 11:56:19 +0200 <dminuoso> arahael: Well. If you want this to happen during build, you have to do this inside Setup.hs
2021-07-20 11:56:46 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 246 seconds)
2021-07-20 11:56:51 +0200 <dminuoso> And the easiest way is to depend on it via setup-depends
2021-07-20 11:56:58 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2021-07-20 11:57:11 +0200 <dminuoso> That way you have the library at your disposal, and you can just call into it via Haskell directly
2021-07-20 11:57:14 +0200Axman69Axman6
2021-07-20 11:57:29 +0200 <dminuoso> Pretty much like proto-lens-setup
2021-07-20 11:58:01 +0200 <dminuoso> Id really say carefully take a look at: https://github.com/google/proto-lens/blob/master/proto-lens-setup/src/Data/ProtoLens/Setup.hs
2021-07-20 11:59:26 +0200 <arahael> dminuoso: Why does it need the `findExecutableOrDie` function there?
2021-07-20 12:00:59 +0200 <dminuoso> arahael: Ahh!
2021-07-20 12:01:10 +0200 <dminuoso> proto-lens-protoc is an executable package, not a library package
2021-07-20 12:01:16 +0200 <dminuoso> So I guess there's that./
2021-07-20 12:01:38 +0200 <arahael> dminuoso: Not only that, but I suspect it's a "plugin" for the protoc application.
2021-07-20 12:01:55 +0200 <dminuoso> No, the dependency comes in via:
2021-07-20 12:02:00 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-07-20 12:02:16 +0200 <dminuoso> https://github.com/google/proto-lens/blob/master/proto-lens-setup/package.yaml#L64
2021-07-20 12:02:37 +0200 <dminuoso> Which is an executable: https://github.com/google/proto-lens/blob/master/proto-lens-protoc/package.yaml#L28-L29
2021-07-20 12:03:53 +0200 <arahael> dminuoso: That executable is not called "protoc", though.
2021-07-20 12:04:47 +0200 <arahael> dminuoso: The readme.md of that project says, to run it manually, run: protoc --plugin=protoc-gen-haskell=`which proto-lens-protoc`--haskell_out=. foo.proto
2021-07-20 12:06:26 +0200 <Gurkenglas> Does FRP have any advantages over, say, gloss?
2021-07-20 12:07:40 +0200Tanebnvd
2021-07-20 12:07:48 +0200nvdTaneb
2021-07-20 12:08:44 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 255 seconds)
2021-07-20 12:09:00 +0200azeem(~azeem@176.201.1.101)
2021-07-20 12:09:48 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
2021-07-20 12:10:30 +0200 <arahael> I'm also getting a warning: Unknown field: "build-tool-depends"
2021-07-20 12:11:07 +0200Neunsburg(~Guest26@114.244.68.126) (Ping timeout: 246 seconds)
2021-07-20 12:11:49 +0200gustik(~gustik@2a01:c844:2416:5920:437:26a4:3a9:3895) (Quit: Leaving)
2021-07-20 12:12:31 +0200azeem(~azeem@176.201.1.101) (Read error: Connection reset by peer)
2021-07-20 12:12:35 +0200xsperry(~as@user/xsperry) (Killed (NickServ (GHOST command used by asfswdf!~as@cpe-188-129-80-184.dynamic.amis.hr)))
2021-07-20 12:12:42 +0200xsperry(~as@user/xsperry)
2021-07-20 12:12:43 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Read error: Connection reset by peer)
2021-07-20 12:13:47 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 12:14:07 +0200Hafydd(~Hafydd@user/hafydd) (Quit: WeeChat 3.2)
2021-07-20 12:20:15 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 255 seconds)
2021-07-20 12:21:20 +0200azeem(~azeem@62.19.162.48)
2021-07-20 12:25:40 +0200xff0x_(~xff0x@2001:1a81:52d5:1300:6dad:c8ed:ecb7:8640) (Ping timeout: 256 seconds)
2021-07-20 12:26:11 +0200xff0x_(~xff0x@2001:1a81:52d5:1300:367a:5587:a9ce:9c94)
2021-07-20 12:32:23 +0200euouae(~euouae@user/euouae) ()
2021-07-20 12:32:29 +0200arjun(~Srain@user/arjun)
2021-07-20 12:33:59 +0200peterhil(~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi)
2021-07-20 12:35:21 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 12:35:51 +0200 <arahael> Ok, I'm stumped on that - I think when I use this alternative package - which looks better maintained than the one I was originally trying to use... There must be something wrong with my cabal setup. Maybe my version is too old, but the cconfusing thing is... 'build-tool-depends' was introduced in Cabal 2.0, but `cabal --version` reports 3.0.0
2021-07-20 12:36:10 +0200 <arahael> 3.0.0.0, rather, and compiled using 3.0.0.0 of the Cabal library.
2021-07-20 12:36:12 +0200 <arahael> So it can't be too old.
2021-07-20 12:37:03 +0200derelict(~derelict@user/derelict)
2021-07-20 12:37:05 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 12:38:42 +0200Guest26(~Guest26@114.244.68.126)
2021-07-20 12:40:14 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 12:40:40 +0200favonia(~favonia@user/favonia)
2021-07-20 12:41:06 +0200derelict(~derelict@user/derelict) (Ping timeout: 240 seconds)
2021-07-20 12:41:20 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
2021-07-20 12:43:36 +0200uniproj(~textual@2a00:23c5:e702:3100:6917:5743:b08c:e939)
2021-07-20 12:44:35 +0200 <uniproj> Hi everyone, has anybody here studied haskell at university?
2021-07-20 12:45:07 +0200 <arjun> if only lol
2021-07-20 12:45:28 +0200drd(~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
2021-07-20 12:45:35 +0200 <Taneb> I did
2021-07-20 12:45:39 +0200 <Taneb> But I already knew it
2021-07-20 12:45:39 +0200 <arjun> my uni thought C, C++ and Java would be a good use of our time
2021-07-20 12:45:57 +0200 <arahael> Hmm, I think one of my problems is my cabal file was also specified with `cabal-version: >=1.10`, I've now changed this to `cabal-version: 2.4`, the highest version I can find that I think my cabal supports. But it's still an unknown field: "build-tool-depends".
2021-07-20 12:46:19 +0200oxide(~lambda@user/oxide)
2021-07-20 12:47:47 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 12:48:33 +0200 <uniproj> I need to come up with an idea for my final year project and I'd like to use Haskell if possible but I'm not sure where to start
2021-07-20 12:48:49 +0200 <arahael> Oh, that's curious: If I move it from the 'custom-setup' section to the executable section, build-tool-depends suddenly stops resulting in an error. (I don't know if it is ignored, though)
2021-07-20 12:49:18 +0200 <fendor> We learned Haskell in our third semester
2021-07-20 12:49:18 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-07-20 12:49:25 +0200 <arjun> where should i start? :- getting a PHD in category theory ofc (sarcasm)
2021-07-20 12:49:40 +0200 <arahael> uniproj: I think picking haskell for a final year project is a bit risky. Perhaps do a few sample projects in it first?
2021-07-20 12:50:03 +0200 <arahael> uniproj: I mean, if you've never used haskell before.
2021-07-20 12:50:35 +0200 <arjun> i remember i dropped a final year project making robots with node.js. too risky
2021-07-20 12:50:51 +0200 <uniproj> We were taught fp in 1st and 2nd year, 2nd year with Haskell
2021-07-20 12:50:55 +0200 <arjun> made a SaaS in ruby on rails instead. passed EZ
2021-07-20 12:51:54 +0200 <arjun> uniproj: that's an interesting take. how does it usually turn out for students?
2021-07-20 12:52:12 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 255 seconds)
2021-07-20 12:52:39 +0200 <arjun> like how do they manage when they invariable are faced with some python , c++, java etc?
2021-07-20 12:52:48 +0200 <arjun> invariably*
2021-07-20 12:53:10 +0200 <uniproj> fp was just one module each year, java was the main language
2021-07-20 12:53:27 +0200 <arjun> i see
2021-07-20 12:53:29 +0200 <uniproj> one thing I was surprised about with uni was how little programming we did in 1st/2nd year
2021-07-20 12:53:47 +0200 <arjun> 1st year is a high school recap
2021-07-20 12:54:02 +0200 <arjun> and to give you a little time to get adjusted to "college and stuff"
2021-07-20 12:54:25 +0200 <uniproj> yeah for sure
2021-07-20 12:54:50 +0200 <uniproj> thing is now that I've got a chance to do a lot of programming, I'd like to do it in Haskell if I can
2021-07-20 12:56:20 +0200 <arjun> since it IS tought to you in college, it should be alright given professors and mentors / supervisors should already by familiar with FP and haskell
2021-07-20 12:56:51 +0200 <arjun> at many places where FP is not tought, that's a hard sell
2021-07-20 12:57:43 +0200 <arjun> since you asked (where to start) it would first be selecting a project to make
2021-07-20 12:58:12 +0200 <arjun> and then chosing your mentor / supervisor / person you'd do the project under
2021-07-20 12:58:53 +0200 <arjun> you could see if you can also team up with other students into doing a group project (mine allowed groups of upto 4 people)
2021-07-20 12:59:01 +0200 <uniproj> I did have a supervisor who suggested a type checker for a type theory but a) that was too hard and b) he's left now
2021-07-20 12:59:30 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 12:59:56 +0200 <arjun> then you should have a new supervisor assigned i reckon?
2021-07-20 13:01:16 +0200 <uniproj> the project lead has basically said to choose a project and he'll assign a supervisor
2021-07-20 13:01:40 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 268 seconds)
2021-07-20 13:02:01 +0200 <arjun> that really is for you to choose : P
2021-07-20 13:02:50 +0200juhp(~juhp@128.106.188.66) (Quit: juhp)
2021-07-20 13:02:51 +0200jneira(~jneira@212.8.115.226) (Quit: Client closed)
2021-07-20 13:03:03 +0200juhp(~juhp@128.106.188.66)
2021-07-20 13:03:22 +0200jneira(~jneira@212.8.115.226)
2021-07-20 13:05:50 +0200favonia(~favonia@user/favonia)
2021-07-20 13:06:48 +0200 <arahael> I'm wondering if there's an error in the example foo-bar-proto.cabal file in https://github.com/google/proto-lens, because that "build-tool-depends" is absolutely an error.
2021-07-20 13:07:07 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
2021-07-20 13:07:31 +0200 <dminuoso> arahael: Im really not sure what your point was there, by the way.
2021-07-20 13:09:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-07-20 13:12:18 +0200 <arahael> dminuoso: I'm just not sure how to bootstrap my project to using all this, and I was initially confused by the direct links to specific files in proto-lens. (Which IS a completely different package).
2021-07-20 13:13:08 +0200 <arahael> dminuoso: Also, you've been contradicting the documentation of proto-lens, which says I do infact need to install protoc.
2021-07-20 13:13:37 +0200jneira(~jneira@212.8.115.226) (Quit: Client closed)
2021-07-20 13:13:39 +0200 <arahael> dminuoso: On top of that, it seems my cabal project was using an ancient cabal-version, despite using newer tools and newer libraries.
2021-07-20 13:13:54 +0200jneira(~jneira@212.8.115.226)
2021-07-20 13:14:14 +0200 <arahael> dminuoso: To give you an idea of where I am in the project: I don't have .proto files yet, nor do I have protoc installed.
2021-07-20 13:14:17 +0200favonia(~favonia@user/favonia) (Ping timeout: 245 seconds)
2021-07-20 13:15:55 +0200favonia(~favonia@user/favonia)
2021-07-20 13:16:25 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es)
2021-07-20 13:17:22 +0200 <arahael> dminuoso: My interpretation of all this so far is that you're probably right and I might not actually need protoc at all; but I've not quite yet gotten past the 'build-tool-depends' issue either. The project is not using yaml, it's just pure cabal.
2021-07-20 13:17:34 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2021-07-20 13:21:14 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-07-20 13:22:20 +0200azeem(~azeem@62.19.162.48) (Ping timeout: 256 seconds)
2021-07-20 13:22:22 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-07-20 13:23:17 +0200azeem(~azeem@62.19.162.48)
2021-07-20 13:23:33 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-07-20 13:24:05 +0200 <arahael> I've just created a new cabal project using `cabal init --cabal-version=2.4 --license=NONE -p myfirstapp`
2021-07-20 13:24:16 +0200 <arahael> And have made edits to teh cabal file as described in the readme.md file:
2021-07-20 13:24:22 +0200 <arahael> https://gist.github.com/arafangion/4649c7ddaae805ff9f906107dc89d641
2021-07-20 13:24:47 +0200 <arahael> When running `cabal build`, it shows: Warning: myfirstapp.cabal:23:3: Unknown field: "build-tool-depends"
2021-07-20 13:27:12 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat)
2021-07-20 13:28:06 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-07-20 13:29:15 +0200 <arahael> (Does that make sense yet? I'm not really doing a good job of explaining these things... :( )
2021-07-20 13:29:17 +0200favonia(~favonia@user/favonia) (Ping timeout: 245 seconds)
2021-07-20 13:30:46 +0200favonia(~favonia@user/favonia)
2021-07-20 13:32:28 +0200 <yin[m]> are arguments in lambdas irrefutable?
2021-07-20 13:39:20 +0200acidjnk(~acidjnk@p200300d0c72b9588c508b842a8b97de2.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2021-07-20 13:42:54 +0200MidAutumnMoon90(~MidAutumn@user/midautumnmoon)
2021-07-20 13:45:10 +0200argento(~argent0@168-227-96-26.ptr.westnet.com.ar)
2021-07-20 13:45:45 +0200MidAutumnMoon9(~MidAutumn@user/midautumnmoon) (Ping timeout: 255 seconds)
2021-07-20 13:45:45 +0200MidAutumnMoon90MidAutumnMoon9
2021-07-20 13:47:58 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 13:49:00 +0200MidAutumnMoon9(~MidAutumn@user/midautumnmoon) (Quit: Leaving for a break - theLounge)
2021-07-20 13:49:07 +0200newtoliberachat(~xyz@49.206.29.212)
2021-07-20 13:52:15 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 13:52:19 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-07-20 13:52:51 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net)
2021-07-20 13:53:30 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-07-20 13:54:34 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 13:55:20 +0200toms__toms
2021-07-20 13:57:32 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 13:58:52 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es) (Quit: WeeChat 2.8)
2021-07-20 13:58:56 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
2021-07-20 13:59:44 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 14:00:10 +0200MidAutumnMoon90(~MidAutumn@user/midautumnmoon)
2021-07-20 14:00:53 +0200 <mniip> yin[m], yes
2021-07-20 14:01:08 +0200 <mniip> unless LambdaCase
2021-07-20 14:03:38 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com)
2021-07-20 14:03:59 +0200wei2912(~wei2912@112.199.250.21)
2021-07-20 14:07:04 +0200 <yin[m]> hum...
2021-07-20 14:07:32 +0200newtoliberachat(~xyz@49.206.29.212) (Ping timeout: 255 seconds)
2021-07-20 14:07:35 +0200yin[m] < https://libera.ems.host/_matrix/media/r0/download/libera.chat/428d266281b63163dc12428e334abb3fe82a… >
2021-07-20 14:07:56 +0200 <yin[m]> does this this apply?
2021-07-20 14:08:47 +0200favonia(~favonia@user/favonia) (Ping timeout: 250 seconds)
2021-07-20 14:10:37 +0200 <dminuoso> arahael: So best to talk about this when you need it then.
2021-07-20 14:10:59 +0200 <boxscape> % (\(Just x) -> 4) Nothing
2021-07-20 14:10:59 +0200 <yahb> boxscape: *** Exception: <interactive>:23:2-15: Non-exhaustive patterns in lambda
2021-07-20 14:11:08 +0200 <boxscape> yin: I would say that qualifies as not irrefutable
2021-07-20 14:11:19 +0200 <dminuoso> arahael: So a custom Setup.hs lets you hook into the build process, customize it, do things at various times. One thing you can do, for example, is simply call executables in a hook.
2021-07-20 14:11:26 +0200 <dminuoso> This would then trigger each time you run `cabal build`
2021-07-20 14:11:55 +0200 <dminuoso> The library I showed you provides exactly such a hook (it exposes it as a library, btw, such that other users can just import it, and use that)
2021-07-20 14:12:00 +0200 <arahael> dminuoso: Yeah, I was just very confused to how the executables actually get downloaded and used.
2021-07-20 14:12:10 +0200 <dminuoso> arahael: A setup has a defined api, which is `main :: IO ()` and this main is expected to do certain things.
2021-07-20 14:12:24 +0200 <dminuoso> cabal brings some default things, like defaultMain
2021-07-20 14:12:33 +0200 <arahael> Which is what I usually use.
2021-07-20 14:13:08 +0200 <dminuoso> Right. https://github.com/google/proto-lens/blob/master/proto-lens-setup/src/Data/ProtoLens/Setup.hs#L149
2021-07-20 14:13:13 +0200 <boxscape> % (\~(Just 4) -> 4) Nothing -- yin compare with this
2021-07-20 14:13:13 +0200 <yahb> boxscape: ; <interactive>:25:13: error: parse error on input `->'
2021-07-20 14:13:16 +0200 <dminuoso> defaultMainWithHooks is also from Cabal
2021-07-20 14:13:24 +0200 <boxscape> erm
2021-07-20 14:13:48 +0200 <dminuoso> This is a bit more custom, since you say "dont change the build, but I want to do provide some hooks"
2021-07-20 14:14:00 +0200 <boxscape> % (\(~(Just 4)) -> 4) Nothing
2021-07-20 14:14:00 +0200 <yahb> boxscape: 4
2021-07-20 14:14:01 +0200favonia(~favonia@user/favonia)
2021-07-20 14:14:06 +0200 <dminuoso> https://hackage.haskell.org/package/Cabal-3.4.0.0/docs/Distribution-Simple.html#v:defaultMainWithH…
2021-07-20 14:14:11 +0200 <arahael> dminuoso: Yeah, that bit makes sense actually.
2021-07-20 14:14:13 +0200 <dminuoso> https://hackage.haskell.org/package/Cabal-3.4.0.0/docs/Distribution-Simple.html#t:UserHooks
2021-07-20 14:14:20 +0200 <dminuoso> So here, you can provide hooks at various phases during theb uild
2021-07-20 14:14:32 +0200 <dminuoso> And inside that hook, you just call something
2021-07-20 14:15:33 +0200 <dminuoso> setup-depends then lets you specify things that must be available during setup such as libraries or executable packages
2021-07-20 14:15:54 +0200 <arahael> dminuoso: Yeah - and I was thinking that maybe it's the build-tool-depends that actually makes the executable package available.
2021-07-20 14:16:01 +0200 <arahael> dminuoso: Which sadly doesn't appear to wokr for me.
2021-07-20 14:16:09 +0200 <arahael> *work
2021-07-20 14:16:20 +0200 <dminuoso> arahael: I dont understand the details, but build-tool doesn't quite work here :(
2021-07-20 14:16:38 +0200 <arahael> dminuoso: From what I read in the documentation, build-tool has actually been removed in cabal 3.0
2021-07-20 14:16:50 +0200 <arahael> dminuoso: Replaced by build-tool-depends, I think.
2021-07-20 14:17:19 +0200 <dminuoso> Right
2021-07-20 14:17:28 +0200 <arahael> https://cabal.readthedocs.io/en/3.4/cabal-package.html?highlight=custom-setup#pkg-field-build-tools
2021-07-20 14:17:31 +0200 <dminuoso> `Cabal tries to make sure that all specified programs are atomically built and prepended on the $PATH shell variable before building the component in question, but can only do so for Nix-style builds. Specifically:`
2021-07-20 14:17:33 +0200 <dminuoso> Mmm
2021-07-20 14:17:37 +0200 <dminuoso> arahael: Are you sure it doesnt work?
2021-07-20 14:17:42 +0200 <dminuoso> It sounds like it could, perhaps
2021-07-20 14:18:02 +0200 <dminuoso> Ah, perhaps its not available during setup phase
2021-07-20 14:18:11 +0200 <dminuoso> But you have setup-depends, which should suffice
2021-07-20 14:18:31 +0200 <arahael> dminuoso: I get a pretty clear warning that 'build-tool-depends' is an unknown field.
2021-07-20 14:19:22 +0200 <dminuoso> What cabal version have you set in your cabal file?
2021-07-20 14:19:32 +0200 <arahael> dminuoso: I've provided the gist, one moment:
2021-07-20 14:19:41 +0200 <arahael> https://gist.github.com/arafangion/4649c7ddaae805ff9f906107dc89d641
2021-07-20 14:19:50 +0200 <arahael> So that would be cabal version 2.4
2021-07-20 14:26:13 +0200azeem(~azeem@62.19.162.48) (Ping timeout: 246 seconds)
2021-07-20 14:28:10 +0200 <arahael> dminuoso: I'm afraid I need to prepare for bed - thanks for your help - and also for pointing me to proto-lens.
2021-07-20 14:28:27 +0200azeem(~azeem@62.19.162.48)
2021-07-20 14:28:27 +0200sagax(~sagax@213.138.71.146) (Ping timeout: 258 seconds)
2021-07-20 14:28:36 +0200awth13(~user@user/awth13) (Read error: Connection reset by peer)
2021-07-20 14:29:56 +0200uniproj(~textual@2a00:23c5:e702:3100:6917:5743:b08c:e939) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-07-20 14:30:18 +0200awth13(~user@user/awth13)
2021-07-20 14:32:27 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 14:34:51 +0200finsternis(~X@23.226.237.192)
2021-07-20 14:36:52 +0200Axman6(~Axman6@user/axman6) (Quit: Ping timeout (120 seconds))
2021-07-20 14:37:17 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-07-20 14:37:54 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 14:38:48 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 258 seconds)
2021-07-20 14:39:27 +0200favonia(~favonia@user/favonia)
2021-07-20 14:39:34 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-07-20 14:40:34 +0200MQ-17J(~MQ-17J@8.21.10.15) (Ping timeout: 240 seconds)
2021-07-20 14:42:46 +0200__monty__(~toonn@user/toonn)
2021-07-20 14:45:37 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 14:46:54 +0200hololeap_hololeap
2021-07-20 14:48:06 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-07-20 14:49:55 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds)
2021-07-20 14:50:12 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 14:52:43 +0200derelict(~derelict@user/derelict)
2021-07-20 14:52:50 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 14:53:11 +0200acidjnk(~acidjnk@p200300d0c72b9575c508b842a8b97de2.dip0.t-ipconnect.de)
2021-07-20 14:53:28 +0200benin03699(~benin@183.82.205.42)
2021-07-20 14:54:41 +0200azeem(~azeem@62.19.162.48) (Ping timeout: 265 seconds)
2021-07-20 14:55:22 +0200yauhsien(~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Quit: Leaving...)
2021-07-20 14:55:32 +0200benin0369(~benin@183.82.176.216) (Ping timeout: 252 seconds)
2021-07-20 14:55:32 +0200benin03699benin0369
2021-07-20 14:56:49 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds)
2021-07-20 14:57:15 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 14:57:36 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
2021-07-20 14:57:39 +0200azeem(~azeem@62.19.104.241)
2021-07-20 14:58:28 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 252 seconds)
2021-07-20 14:59:54 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 15:00:40 +0200ukari(~ukari@user/ukari) (Ping timeout: 252 seconds)
2021-07-20 15:01:07 +0200alx741(~alx741@186.178.108.174)
2021-07-20 15:01:47 +0200Sgeo(~Sgeo@user/sgeo)
2021-07-20 15:02:19 +0200favonia(~favonia@user/favonia)
2021-07-20 15:03:01 +0200jneira(~jneira@212.8.115.226) (Quit: Client closed)
2021-07-20 15:03:49 +0200xkuru(~xkuru@user/xkuru)
2021-07-20 15:04:02 +0200uniproj(~textual@2a00:23c5:e702:3100:6917:5743:b08c:e939)
2021-07-20 15:05:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 15:06:02 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-07-20 15:07:39 +0200wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-07-20 15:07:58 +0200chris_(~chris@81.96.113.213) (Remote host closed the connection)
2021-07-20 15:09:27 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 15:09:39 +0200hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-07-20 15:10:04 +0200hendursaga(~weechat@user/hendursaga)
2021-07-20 15:11:39 +0200Atum_(~IRC@user/atum/x-2392232)
2021-07-20 15:12:14 +0200favonia(~favonia@user/favonia)
2021-07-20 15:12:17 +0200Alex_test(~al_test@178.34.161.231) (Quit: ;-)
2021-07-20 15:12:24 +0200AlexZenon(~alzenon@178.34.161.231) (Quit: ;-)
2021-07-20 15:12:33 +0200AlexNoo(~AlexNoo@178.34.161.231) (Quit: Leaving)
2021-07-20 15:14:05 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-07-20 15:14:39 +0200Atum__(~IRC@user/atum/x-2392232)
2021-07-20 15:15:36 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
2021-07-20 15:17:54 +0200Atum_(~IRC@user/atum/x-2392232) (Ping timeout: 258 seconds)
2021-07-20 15:20:28 +0200Atum_(~IRC@user/atum/x-2392232)
2021-07-20 15:20:48 +0200Achylles(~Achylles_@2804:431:d725:8cf8:e8fe:55a9:bf01:59e9)
2021-07-20 15:21:07 +0200lbseale(~lbseale@user/ep1ctetus)
2021-07-20 15:21:13 +0200Guest26(~Guest26@114.244.68.126) (Quit: Client closed)
2021-07-20 15:21:40 +0200jakalx(~jakalx@base.jakalx.net)
2021-07-20 15:22:26 +0200AlexZenon(~alzenon@178.34.161.231)
2021-07-20 15:22:50 +0200AlexNoo(~AlexNoo@178.34.161.231)
2021-07-20 15:22:51 +0200AlexNoo_(~AlexNoo@178.34.161.231)
2021-07-20 15:23:41 +0200Atum__(~IRC@user/atum/x-2392232) (Ping timeout: 265 seconds)
2021-07-20 15:23:47 +0200lbseale_(~lbseale@user/ep1ctetus)
2021-07-20 15:25:13 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk)
2021-07-20 15:27:26 +0200lbseale(~lbseale@user/ep1ctetus) (Ping timeout: 252 seconds)
2021-07-20 15:27:40 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-07-20 15:28:14 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 15:28:16 +0200AlexNoo_(~AlexNoo@178.34.161.231) (Quit: Leaving)
2021-07-20 15:28:43 +0200burnsidesLlama(~burnsides@dhcp168-011.wadham.ox.ac.uk) (Client Quit)
2021-07-20 15:28:50 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 15:32:51 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 255 seconds)
2021-07-20 15:33:22 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
2021-07-20 15:35:52 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 15:36:16 +0200Alex_test(~al_test@178.34.161.231)
2021-07-20 15:37:59 +0200uniproj(~textual@2a00:23c5:e702:3100:6917:5743:b08c:e939) (Ping timeout: 255 seconds)
2021-07-20 15:38:05 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 15:40:04 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-07-20 15:40:39 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-07-20 15:40:55 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 15:41:02 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-07-20 15:42:38 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-07-20 15:42:54 +0200drd(~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 268 seconds)
2021-07-20 15:44:00 +0200arjun(~Srain@user/arjun) (Ping timeout: 256 seconds)
2021-07-20 15:46:47 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 252 seconds)
2021-07-20 15:49:01 +0200hexfive(~eric@50.35.83.177) (Quit: WeeChat 3.0)
2021-07-20 15:49:40 +0200favonia(~favonia@user/favonia) (Ping timeout: 256 seconds)
2021-07-20 15:52:00 +0200favonia(~favonia@user/favonia)
2021-07-20 15:52:06 +0200Achylles(~Achylles_@2804:431:d725:8cf8:e8fe:55a9:bf01:59e9) (Quit: Leaving)
2021-07-20 15:53:22 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es)
2021-07-20 15:54:22 +0200ub(~Thunderbi@91.141.50.212.wireless.dyn.drei.com)
2021-07-20 15:56:30 +0200shapr(~user@pool-108-28-144-11.washdc.fios.verizon.net)
2021-07-20 16:00:02 +0200ubert(~Thunderbi@91.141.50.212.wireless.dyn.drei.com) (Ping timeout: 255 seconds)
2021-07-20 16:00:02 +0200ububert
2021-07-20 16:02:33 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 16:02:51 +0200favonia(~favonia@user/favonia)
2021-07-20 16:04:39 +0200ubert1(~Thunderbi@91.141.50.212.wireless.dyn.drei.com)
2021-07-20 16:11:46 +0200drd(~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
2021-07-20 16:16:22 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-07-20 16:17:35 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 16:17:59 +0200favonia(~favonia@user/favonia)
2021-07-20 16:18:02 +0200ubert1(~Thunderbi@91.141.50.212.wireless.dyn.drei.com) (Ping timeout: 255 seconds)
2021-07-20 16:21:29 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 16:22:01 +0200smichel17(~smichel17@c-73-68-217-18.hsd1.ma.comcast.net)
2021-07-20 16:23:24 +0200jolly(~jolly@208.180.97.158) (Quit: Connection closed)
2021-07-20 16:24:23 +0200zopsi(~zopsi@irc.dir.ac) (Quit: Oops)
2021-07-20 16:26:35 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 250 seconds)
2021-07-20 16:27:36 +0200Atum_(~IRC@user/atum/x-2392232) (Quit: Atum_)
2021-07-20 16:28:06 +0200Guest26(~Guest26@114.244.68.126)
2021-07-20 16:28:20 +0200Guest26(~Guest26@114.244.68.126) ()
2021-07-20 16:31:59 +0200arjun(~Srain@user/arjun)
2021-07-20 16:33:11 +0200pesada(~agua@2804:14c:8793:8e2f:3988:44e0:45e5:bd04)
2021-07-20 16:34:22 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-07-20 16:35:51 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 16:36:00 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
2021-07-20 16:36:01 +0200jackhill(~jackhill@kalessin.dragonsnail.net)
2021-07-20 16:36:18 +0200agua(~agua@2804:18:4f:bc57:1:0:3808:8f6a) (Ping timeout: 240 seconds)
2021-07-20 16:40:37 +0200azeem(~azeem@62.19.104.241) (Ping timeout: 246 seconds)
2021-07-20 16:41:47 +0200MQ-17J(~MQ-17J@d14-69-206-129.try.wideopenwest.com)
2021-07-20 16:41:55 +0200favonia(~favonia@user/favonia)
2021-07-20 16:42:07 +0200dunkeln(~dunkeln@188.71.231.232)
2021-07-20 16:42:37 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 258 seconds)
2021-07-20 16:43:29 +0200azeem(~azeem@62.19.104.241)
2021-07-20 16:44:08 +0200acidjnk(~acidjnk@p200300d0c72b9575c508b842a8b97de2.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2021-07-20 16:48:52 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-07-20 16:49:04 +0200Bayes(~Bayes@ics177-97.icsincorporated.com)
2021-07-20 16:49:15 +0200Bayes(~Bayes@ics177-97.icsincorporated.com) (Changing host)
2021-07-20 16:49:15 +0200Bayes(~Bayes@user/bayes)
2021-07-20 16:49:29 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-07-20 16:49:53 +0200favonia(~favonia@user/favonia)
2021-07-20 16:51:07 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
2021-07-20 16:53:20 +0200dhil(~dhil@195.213.192.47)
2021-07-20 16:54:58 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 16:55:15 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 16:59:22 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2021-07-20 17:00:21 +0200azeem(~azeem@62.19.104.241) (Ping timeout: 265 seconds)
2021-07-20 17:02:03 +0200azeem(~azeem@62.19.104.241)
2021-07-20 17:06:18 +0200azeem(~azeem@62.19.104.241) (Ping timeout: 240 seconds)
2021-07-20 17:06:33 +0200azeem(~azeem@62.19.104.241)
2021-07-20 17:10:42 +0200azeem(~azeem@62.19.104.241) (Ping timeout: 240 seconds)
2021-07-20 17:13:22 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-07-20 17:13:53 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 17:15:13 +0200azeem(~azeem@62.19.104.241)
2021-07-20 17:16:29 +0200gehn(~gehn@user/gehn)
2021-07-20 17:22:23 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
2021-07-20 17:22:54 +0200ablutor(~quassel@wasscher.com) (Quit: going for vitamine d)
2021-07-20 17:23:27 +0200ablutor(~quassel@wasscher.com)
2021-07-20 17:24:00 +0200azeem(~azeem@62.19.104.241) (Ping timeout: 255 seconds)
2021-07-20 17:24:34 +0200azeem(~azeem@176.200.211.15)
2021-07-20 17:27:37 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 17:28:00 +0200zyklotomic(~ethan@2604:a880:800:10::79f:8001)
2021-07-20 17:30:53 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-07-20 17:32:31 +0200norias(~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Quit: Leaving)
2021-07-20 17:34:31 +0200argento(~argent0@168-227-96-26.ptr.westnet.com.ar) (Ping timeout: 268 seconds)
2021-07-20 17:34:49 +0200sergio812(~sergio812@lfbn-ren-1-403-102.w2-10.abo.wanadoo.fr)
2021-07-20 17:35:15 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 17:35:41 +0200favonia(~favonia@user/favonia)
2021-07-20 17:36:06 +0200chris_(~chris@81.96.113.213)
2021-07-20 17:36:26 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-07-20 17:36:36 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 17:37:26 +0200slowButPresent(~slowButPr@user/slowbutpresent)
2021-07-20 17:38:59 +0200chele(~chele@user/chele) (Remote host closed the connection)
2021-07-20 17:40:41 +0200arjun(~Srain@user/arjun) (Remote host closed the connection)
2021-07-20 17:44:15 +0200curiousgay(~curiousga@77-120-144-167.kha.volia.net) (Remote host closed the connection)
2021-07-20 17:44:38 +0200curiousgay(~curiousga@77-120-144-167.kha.volia.net)
2021-07-20 17:45:09 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 17:46:56 +0200econo(uid147250@user/econo)
2021-07-20 17:47:36 +0200favonia(~favonia@user/favonia)
2021-07-20 17:49:48 +0200dajoer(~david@user/gvx) (Quit: leaving)
2021-07-20 17:50:28 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 258 seconds)
2021-07-20 17:50:50 +0200 <sergio812> Hello there,
2021-07-20 17:50:57 +0200 <sergio812> I'm trying to link a proprietary C++-based library using FFI, and I run into some difficulties (I've never used Haskell's FFI before).
2021-07-20 17:51:05 +0200 <sergio812> I have a "C-only" small example with 3 small files (".c", ".h" and ".hs") that works fine.
2021-07-20 17:51:09 +0200gehn(~gehn@user/gehn) (Leaving)
2021-07-20 17:51:14 +0200_73(~user@pool-96-252-123-136.bstnma.fios.verizon.net) (Ping timeout: 258 seconds)
2021-07-20 17:51:17 +0200 <sergio812> But my "C++ via C" small example with 5 small files (".c", ".h", ".cpp", ".hpp" and ".hs") doesn't work (link error).
2021-07-20 17:51:23 +0200 <sergio812> Even though small (41 lines for the 5 files), I'm not sure sending this on IRC is appropriate...
2021-07-20 17:51:29 +0200 <sergio812> How/where can I do ask for help?
2021-07-20 17:51:45 +0200 <geekosaur> reddit might work better
2021-07-20 17:52:00 +0200azeem(~azeem@176.200.211.15) (Ping timeout: 258 seconds)
2021-07-20 17:52:00 +0200argento(~argent0@168-227-96-26.ptr.westnet.com.ar)
2021-07-20 17:52:19 +0200azeem(~azeem@176.200.211.15)
2021-07-20 17:53:01 +0200 <sergio812> Thanks
2021-07-20 17:53:27 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360)
2021-07-20 17:54:10 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 17:54:25 +0200notzmv(~zmv@user/notzmv)
2021-07-20 17:55:54 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 17:58:18 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2021-07-20 17:59:12 +0200azeem(~azeem@176.200.211.15) (Read error: Connection reset by peer)
2021-07-20 17:59:13 +0200lbseale__(~lbseale@user/ep1ctetus)
2021-07-20 17:59:20 +0200lbseale__lbseale
2021-07-20 17:59:25 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 18:02:33 +0200favonia(~favonia@user/favonia)
2021-07-20 18:02:44 +0200lbseale_(~lbseale@user/ep1ctetus) (Ping timeout: 258 seconds)
2021-07-20 18:03:58 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 256 seconds)
2021-07-20 18:09:02 +0200 <zzz> how can i ask for the type of a function applied to a specific type, like when we write `a ~ Bool` or whatever?
2021-07-20 18:09:26 +0200 <zzz> i think i've seen it
2021-07-20 18:09:30 +0200 <zzz> but am not sure
2021-07-20 18:10:46 +0200 <Taneb> You could give it a type signature, like ((==) :: Bool -> Bool -> Bool), or you could use the TypeApplications extension, like ((==) @Bool)
2021-07-20 18:10:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
2021-07-20 18:11:47 +0200dunkeln(~dunkeln@188.71.231.232) (Ping timeout: 245 seconds)
2021-07-20 18:14:23 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 18:14:52 +0200 <zzz> how about asking ghc for the class instance of a type?
2021-07-20 18:15:14 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 18:15:30 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 18:16:21 +0200h98(~h98@187.83.249.216.dyn.smithville.net)
2021-07-20 18:16:57 +0200 <zzz> i got it. bad memory today
2021-07-20 18:17:05 +0200 <zzz> thanks anyway
2021-07-20 18:18:55 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 18:19:34 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 18:19:58 +0200slycelote(~slycelote@user/slycelote) (Quit: Leaving)
2021-07-20 18:20:56 +0200zeenk(~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38) (Quit: Konversation terminated!)
2021-07-20 18:22:59 +0200zyklotomic(~ethan@2604:a880:800:10::79f:8001) (WeeChat 2.8)
2021-07-20 18:23:51 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-07-20 18:26:18 +0200sedeki(~textual@user/sedeki)
2021-07-20 18:30:02 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 26.3))
2021-07-20 18:31:44 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) (Ping timeout: 256 seconds)
2021-07-20 18:32:13 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-07-20 18:35:27 +0200fendor(~fendor@91.141.52.148.wireless.dyn.drei.com) (Remote host closed the connection)
2021-07-20 18:36:38 +0200berberman(~berberman@user/berberman) (Ping timeout: 255 seconds)
2021-07-20 18:38:23 +0200fendor(~fendor@91.141.52.148.wireless.dyn.drei.com)
2021-07-20 18:38:38 +0200motherfs1(~motherfsc@user/motherfsck) (Quit: quit)
2021-07-20 18:39:40 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-07-20 18:41:51 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 18:43:00 +0200ablutor(~quassel@wasscher.com) (Quit: going for vitamine d)
2021-07-20 18:43:55 +0200ablutor(~quassel@wasscher.com)
2021-07-20 18:45:02 +0200vysn(~vysn@user/vysn)
2021-07-20 18:45:08 +0200L29Ah(~L29Ah@user/l29ah) (Quit: Gateway shutdown)
2021-07-20 18:47:14 +0200sedeki(~textual@user/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
2021-07-20 18:48:23 +0200favonia(~favonia@user/favonia)
2021-07-20 18:49:00 +0200L29Ah(~L29Ah@user/l29ah)
2021-07-20 18:49:45 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 268 seconds)
2021-07-20 18:51:21 +0200 <dminuoso> zzz: f (undefined :: T) :: _
2021-07-20 18:53:06 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-07-20 18:55:22 +0200metaweta(~metaweta@166.70.31.28)
2021-07-20 18:55:50 +0200 <metaweta> A directed multigraph is a pair of sets E,V with maps s,t:E->V. I can implement that with a MultiParamTypeClass. The box product of two such graphs has vertices V1 x V2, horizontal edges V1 x E2 and vertical edges E1 x V2. How would you write the box product as a type constructor?
2021-07-20 18:56:22 +0200 <metaweta> Or is there a better way?
2021-07-20 18:57:30 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 240 seconds)
2021-07-20 18:59:35 +0200argento(~argent0@168-227-96-26.ptr.westnet.com.ar) (Ping timeout: 255 seconds)
2021-07-20 19:00:47 +0200azeem(~azeem@176.200.211.15)
2021-07-20 19:01:29 +0200 <monochrom> Are we meant to do some kind of union, perhaps disjoint union, of V1xE2 and E1xV2 for the new set of edges?
2021-07-20 19:04:02 +0200drd(~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Ping timeout: 256 seconds)
2021-07-20 19:04:41 +0200 <monochrom> I think I may define "data BoxProdV v1 v2 = MkBoxProdV v1 v2" and "data BoxProdE v1 e1 v2 e2 = ???". Then "instance (G v1 e1) (G v2 e2) => G (BoxProdV v1 v2) (BoxProdE v1 e1 v2 e2)" can make sense.
2021-07-20 19:05:06 +0200 <monochrom> err, instance (G v1 e1, G v2 e2) => G (BoxProdV v1 v2) (BoxProdE v1 e1 v2 e2)
2021-07-20 19:06:09 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 255 seconds)
2021-07-20 19:06:18 +0200 <metaweta> > disjoint union, of V1xE2 and E1xV2 for the new set of edges
2021-07-20 19:06:19 +0200 <metaweta> yes
2021-07-20 19:06:20 +0200 <lambdabot> <hint>:1:15: error: parse error on input ‘,’
2021-07-20 19:07:56 +0200 <metaweta> so I guess "data BoxProdE v1 e1 v2 e2 = Horz v1 e2 | Vert e1 v2"
2021-07-20 19:08:29 +0200 <monochrom> Yeah
2021-07-20 19:08:31 +0200 <metaweta> How do you capture the functions s and t as part of the graph?
2021-07-20 19:08:39 +0200 <monochrom> I don't know.
2021-07-20 19:09:04 +0200 <monochrom> Haven't learned box product, much less what it does to s and t.
2021-07-20 19:10:13 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-07-20 19:10:36 +0200h98(~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2021-07-20 19:11:59 +0200h98(~h98@187.83.249.216.dyn.smithville.net)
2021-07-20 19:12:22 +0200 <metaweta> s and t pick out the source and target of an edge. So given an edge e1:u1->v1 and an edge e2:u2->v2, the horizontal edges are (u1, e2):(u1,u2)->(u1,v2), (v1, e2):(v1,u2)->(v1,v2), (e1, u2): (u1,u2) -> (v1,u2) and (e1,v2):(u1,v2)->(v1,v2)
2021-07-20 19:12:37 +0200 <metaweta> sorry the last two are the vertical edges
2021-07-20 19:13:50 +0200 <metaweta> the box product of two edges is a box (as opposed to the categorical product which also has a diagonal (e1,e2):(u1,u2)->(v1,v2))
2021-07-20 19:16:04 +0200 <h98> why not just define BoxProduct e1 v1 e2 v2 as a multiparam type class and implement an instance for the constraint that E1 V1 and E2 V2 form directed multigraphs?
2021-07-20 19:16:29 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 19:17:55 +0200 <metaweta> Yeah, I was thinking "class G e v where s::e->v; t::e->v"
2021-07-20 19:20:18 +0200h98(~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2021-07-20 19:21:06 +0200zyklotomic(~ethan@2604:a880:800:10::79f:8001)
2021-07-20 19:21:12 +0200h98(~h98@187.83.249.216.dyn.smithville.net)
2021-07-20 19:21:14 +0200 <metaweta> How would I write the constraint in the instance declaration? "instance G e1 v1, G e2 v2 => BoxProduct e1 v1 e2 v2 where ..." ?
2021-07-20 19:22:06 +0200 <h98> instance (G e1 v1, G e2 v2) => BoxProduct e1 v1 e2 v2 where
2021-07-20 19:22:09 +0200__monty__(~toonn@user/toonn) (Ping timeout: 268 seconds)
2021-07-20 19:22:22 +0200 <metaweta> thx, will try
2021-07-20 19:22:59 +0200aegon(~mike@174.127.249.180)
2021-07-20 19:23:10 +0200aegon(~mike@174.127.249.180) (Quit: leaving)
2021-07-20 19:23:31 +0200aegon(~mike@174.127.249.180)
2021-07-20 19:23:34 +0200__monty__(~toonn@user/toonn)
2021-07-20 19:29:12 +0200 <metaweta> I've got "instance (G v1 e1, G v2 e2) => G (v1, v2) (BoxProduct v1 e1 v2 e2) where s Horz v e = (v, s e); t Horz v e = (v, t e); s Vert e v = (s e, v); t Vert e v = (t e, v)"
2021-07-20 19:30:11 +0200 <metaweta> I'd like to define the behavior of s,t on the new instance in terms of s,t on the given instances. What's the right way?
2021-07-20 19:33:43 +0200drd(~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
2021-07-20 19:34:12 +0200azeem(~azeem@176.200.211.15) (Read error: Connection reset by peer)
2021-07-20 19:34:44 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 258 seconds)
2021-07-20 19:35:01 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 19:36:36 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es)
2021-07-20 19:36:41 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-07-20 19:37:43 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
2021-07-20 19:39:14 +0200favonia(~favonia@user/favonia)
2021-07-20 19:40:04 +0200h98(~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2021-07-20 19:41:29 +0200h98(~h98@187.83.249.216.dyn.smithville.net)
2021-07-20 19:46:40 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 19:48:02 +0200h98(~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2021-07-20 19:50:54 +0200Gurkenglas(~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
2021-07-20 19:53:10 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 19:53:27 +0200econo(uid147250@user/econo) ()
2021-07-20 19:57:08 +0200 <zzz> dminuoso: thanks
2021-07-20 19:58:12 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-07-20 20:02:32 +0200hsiktas(uid224847@id-224847.tooting.irccloud.com)
2021-07-20 20:03:27 +0200sagax(~sagax@213.138.71.146)
2021-07-20 20:03:28 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 268 seconds)
2021-07-20 20:04:03 +0200Cajun(~Cajun@ip98-163-211-112.no.no.cox.net) (Quit: Client closed)
2021-07-20 20:06:18 +0200oxide(~lambda@user/oxide) (Ping timeout: 240 seconds)
2021-07-20 20:07:13 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 20:07:15 +0200oxide(~lambda@user/oxide)
2021-07-20 20:08:12 +0200dseven(~jere@a00007802.kortex.jyu.fi)
2021-07-20 20:08:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 20:12:01 +0200benin0369(~benin@183.82.205.42) (Ping timeout: 246 seconds)
2021-07-20 20:12:30 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Remote host closed the connection)
2021-07-20 20:12:39 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 20:13:16 +0200favonia(~favonia@user/favonia)
2021-07-20 20:13:59 +0200 <lechner> Hi, is Opaleye a good way to write typesafe and composable code to query a Postgres database? https://hackage.haskell.org/package/opaleye
2021-07-20 20:14:17 +0200benin0369(~benin@183.82.205.42)
2021-07-20 20:15:14 +0200nvmd(~nvmd@user/nvmd)
2021-07-20 20:17:40 +0200dseven(~jere@a00007802.kortex.jyu.fi) (quit)
2021-07-20 20:19:03 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 255 seconds)
2021-07-20 20:22:40 +0200metaweta(~metaweta@166.70.31.28) (Quit: Connection closed)
2021-07-20 20:22:45 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-07-20 20:22:55 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2021-07-20 20:23:26 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 20:26:37 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-07-20 20:26:42 +0200favonia(~favonia@user/favonia) (Ping timeout: 240 seconds)
2021-07-20 20:27:06 +0200favonia(~favonia@user/favonia)
2021-07-20 20:29:02 +0200jolly(~jolly@208.180.97.158)
2021-07-20 20:33:46 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-07-20 20:38:25 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es)
2021-07-20 20:38:57 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360) (Remote host closed the connection)
2021-07-20 20:39:32 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360)
2021-07-20 20:39:42 +0200gehmehgeh(~user@user/gehmehgeh)
2021-07-20 20:40:02 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360) (Remote host closed the connection)
2021-07-20 20:40:15 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360)
2021-07-20 20:41:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
2021-07-20 20:42:06 +0200oso(~oso@2601:58c:c080:a950:f275:2530:b398:680b)
2021-07-20 20:42:19 +0200benin0369(~benin@183.82.205.42) (Ping timeout: 268 seconds)
2021-07-20 20:45:42 +0200 <maerwald> ok, so I finally broke hlints parser with quasi quotes too
2021-07-20 20:47:06 +0200sergio812(~sergio812@lfbn-ren-1-403-102.w2-10.abo.wanadoo.fr) (Quit: Client closed)
2021-07-20 20:47:17 +0200 <monochrom> :)
2021-07-20 20:47:37 +0200xff0x_(~xff0x@2001:1a81:52d5:1300:367a:5587:a9ce:9c94) (Ping timeout: 245 seconds)
2021-07-20 20:48:38 +0200xff0x_(~xff0x@2001:1a81:52d5:1300:581a:587e:cc8c:4deb)
2021-07-20 20:48:50 +0200 <maerwald> #{bc}|] -- is the closing line of a quasi quote...
2021-07-20 20:48:56 +0200 <maerwald> it's probably thinking... hmm, CPP?
2021-07-20 20:49:40 +0200 <monochrom> yeah
2021-07-20 20:50:08 +0200 <monochrom> How recently was hlint updated anyway?
2021-07-20 20:50:23 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 20:50:31 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 246 seconds)
2021-07-20 20:52:11 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Ping timeout: 268 seconds)
2021-07-20 20:54:57 +0200Ariakenom(~Ariakenom@c83-255-154-140.bredband.tele2.se)
2021-07-20 20:55:14 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
2021-07-20 20:55:57 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 20:56:46 +0200benin0369(~benin@106.198.95.190)
2021-07-20 21:01:33 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-07-20 21:02:34 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 21:05:08 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-07-20 21:05:34 +0200azeem(~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it)
2021-07-20 21:06:41 +0200favonia(~favonia@user/favonia)
2021-07-20 21:08:59 +0200Deide(~Deide@user/deide)
2021-07-20 21:13:12 +0200Erutuon(~Erutuon@user/erutuon)
2021-07-20 21:13:29 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 252 seconds)
2021-07-20 21:13:41 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) (Ping timeout: 255 seconds)
2021-07-20 21:15:22 +0200aegon(~mike@174.127.249.180) (Quit: leaving)
2021-07-20 21:17:38 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Remote host closed the connection)
2021-07-20 21:18:08 +0200 <maerwald> it seems to be using ghc-lib-parser
2021-07-20 21:18:13 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 21:18:19 +0200 <maerwald> but that doesn't help
2021-07-20 21:27:53 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-07-20 21:33:45 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 21:34:36 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 21:34:46 +0200favonia(~favonia@user/favonia)
2021-07-20 21:35:08 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-07-20 21:37:50 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-07-20 21:41:51 +0200 <delYsid> Your favourite haskell talk on yt?
2021-07-20 21:42:14 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-07-20 21:42:54 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-07-20 21:50:25 +0200 <jackhill> delYsid: there's so much good stuff out there, but on the implementation side, I like "Into the Core - Squeezing Haskell into Nine Constructors by Simon Peyton Jones" https://www.youtube.com/watch?v=uR_VzYxvbxg
2021-07-20 21:50:41 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 21:55:18 +0200Null_A(~null_a@2601:645:8700:2290:f559:df0a:6e82:e360) (Read error: Connection reset by peer)
2021-07-20 21:58:43 +0200 <delYsid> jackhill: Thanks, good reminder.
2021-07-20 21:58:50 +0200Guest45(~Guest45@161.35.107.60)
2021-07-20 22:00:16 +0200argento(~argent0@168-227-96-53.ptr.westnet.com.ar)
2021-07-20 22:00:35 +0200 <sm> stack source code gives a warning if you build with trace calls like traceShowId in the code, but I don't see how. Any ideas ?
2021-07-20 22:01:08 +0200Guest45(~Guest45@161.35.107.60) ()
2021-07-20 22:01:28 +0200retro_(~retro@97e2ba5d.skybroadband.com)
2021-07-20 22:01:56 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 258 seconds)
2021-07-20 22:01:59 +0200 <maerwald> what's the warning
2021-07-20 22:02:11 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42)
2021-07-20 22:02:21 +0200h98(~h98@187.83.249.216.dyn.smithville.net)
2021-07-20 22:04:57 +0200retroid_(~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds)
2021-07-20 22:05:12 +0200 <h98> is there a way to uninstance something for a more specific type? Like say I have instance Foo a where... but want this to specifically not apply to Int
2021-07-20 22:05:15 +0200juhp(~juhp@128.106.188.66) (Ping timeout: 255 seconds)
2021-07-20 22:05:38 +0200Obo(~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 252 seconds)
2021-07-20 22:05:39 +0200retroid_(~retro@97e2ba5d.skybroadband.com)
2021-07-20 22:05:51 +0200 <h98> I know I can replace the instance with overlapping etc, but I want to really undefine it so I'd get a compile error if I tried to invoke it
2021-07-20 22:06:11 +0200retro_(~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds)
2021-07-20 22:06:44 +0200juhp(~juhp@128.106.188.66)
2021-07-20 22:08:22 +0200chris_(~chris@81.96.113.213) (Remote host closed the connection)
2021-07-20 22:08:40 +0200 <sm> maerwald: "Trace statement left in code"
2021-07-20 22:09:16 +0200 <sm> good idea.. I see it defined with WARNING pragmas in https://hackage.haskell.org/package/rio-0.1.0.0/docs/src/RIO.Prelude.Trace.html
2021-07-20 22:10:02 +0200 <maerwald> use Debug.Trace instead then
2021-07-20 22:10:20 +0200 <sm> https://downloads.haskell.org/ghc/latest/docs/html/users_guide/exts/pragmas.html?highlight=pragmas… sweet
2021-07-20 22:10:32 +0200 <sm> I was wondering how to do the same in my code
2021-07-20 22:10:35 +0200 <maerwald> ah
2021-07-20 22:10:38 +0200spoonmhayoung
2021-07-20 22:11:03 +0200 <maerwald> new stack release btw
2021-07-20 22:13:19 +0200chris_(~chris@81.96.113.213)
2021-07-20 22:13:37 +0200horatioh2(~horatiohb@161.35.107.60)
2021-07-20 22:14:33 +0200chris____(~chris@81.96.113.213)
2021-07-20 22:14:33 +0200chris_(~chris@81.96.113.213) (Read error: Connection reset by peer)
2021-07-20 22:14:53 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42) (Remote host closed the connection)
2021-07-20 22:15:05 +0200 <sm> oh nice, thanks!
2021-07-20 22:15:43 +0200hayoungspoonm
2021-07-20 22:15:51 +0200lavaman(~lavaman@98.38.249.169)
2021-07-20 22:16:36 +0200 <lechner> Hi, does it matter whether I use 'try' and 'SomeException(..)' from Control.Exception or Control.Monad.Catch, please? This code looks great but does not work. Thanks! https://dpaste.org/FdkL#L24,25
2021-07-20 22:17:01 +0200chris____(~chris@81.96.113.213) (Remote host closed the connection)
2021-07-20 22:19:13 +0200 <maerwald> lechner: evaluate might not be enough to trigger the exception
2021-07-20 22:19:18 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42)
2021-07-20 22:19:27 +0200 <maerwald> see the documentation on 'evaluate'
2021-07-20 22:19:50 +0200dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (Ping timeout: 265 seconds)
2021-07-20 22:20:03 +0200chris_(~chris@81.96.113.213)
2021-07-20 22:20:20 +0200abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-07-20 22:20:22 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-07-20 22:20:29 +0200 <maerwald> converting to strict ByteString is usually would you do in such a case
2021-07-20 22:21:47 +0200 <lechner> the key here being that the "head" of a lazy ByteString is just that?
2021-07-20 22:22:10 +0200 <maerwald> you'll probably only force the first chunk, yeah
2021-07-20 22:22:25 +0200 <maerwald> @hoogle deepseq
2021-07-20 22:22:26 +0200 <lambdabot> package deepseq
2021-07-20 22:22:26 +0200 <lambdabot> Control.DeepSeq deepseq :: NFData a => a -> b -> b
2021-07-20 22:22:26 +0200 <lambdabot> Protolude deepseq :: NFData a => a -> b -> b
2021-07-20 22:22:34 +0200 <lechner> chunk?
2021-07-20 22:22:45 +0200 <maerwald> yes
2021-07-20 22:23:48 +0200 <maerwald> data ByteString = Empty | Chunk {-# UNPACK #-} !S.ByteString ByteString
2021-07-20 22:25:14 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 22:25:35 +0200 <maerwald> lazy bytestring is sloppy streaming
2021-07-20 22:25:47 +0200 <lechner> i am starting to get it
2021-07-20 22:25:59 +0200 <maerwald> if you can, avoid it
2021-07-20 22:26:04 +0200Vajb(~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection)
2021-07-20 22:26:15 +0200 <lechner> getting it is good
2021-07-20 22:26:30 +0200 <lechner> sorry, bad pun
2021-07-20 22:26:43 +0200 <maerwald> https://hackage.haskell.org/package/lzma-conduit-1.2.1/docs/Data-Conduit-Lzma.html
2021-07-20 22:26:45 +0200Vajb(~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
2021-07-20 22:27:13 +0200 <lechner> but going strict will evalutate the whole thing, regardless of chunks, right?
2021-07-20 22:27:25 +0200 <maerwald> yeah
2021-07-20 22:27:36 +0200favonia(~favonia@user/favonia)
2021-07-20 22:27:46 +0200 <maerwald> you can use deepseq
2021-07-20 22:27:53 +0200 <maerwald> see the documentation on 'evaluate'
2021-07-20 22:28:33 +0200 <maerwald> converting to strict will also cause memory copy
2021-07-20 22:28:37 +0200 <lechner> i actally have a strict bytestring from the socket
2021-07-20 22:29:07 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42) (Remote host closed the connection)
2021-07-20 22:29:59 +0200 <sm> would anyone have thoughts on https://github.com/commercialhaskell/stack/issues/5591 ? The GHC_ENVIRONMENT file created by `stack test` is breaking doctest, only with GHC 9.0. I wonder if it could be the newer template-haskell 2.17, and how to test that
2021-07-20 22:30:10 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-07-20 22:30:28 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Ping timeout: 265 seconds)
2021-07-20 22:30:30 +0200 <lechner> maerwald: why does 'evaluate' only go to WHNF, please?
2021-07-20 22:30:50 +0200 <sm> aha I can think of a way
2021-07-20 22:30:52 +0200nvmd(~nvmd@user/nvmd) (Quit: Later, nerds.)
2021-07-20 22:31:12 +0200 <maerwald> lechner: because this is haskell?
2021-07-20 22:31:20 +0200 <maerwald> well
2021-07-20 22:31:25 +0200 <maerwald> not necessarily
2021-07-20 22:31:47 +0200 <maerwald> lazy evaluation and all
2021-07-20 22:31:49 +0200jespada(~jespada@90.254.247.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-07-20 22:31:53 +0200Matthias1(~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
2021-07-20 22:32:08 +0200 <maerwald> you *could* define other evaluation functions, sure
2021-07-20 22:32:26 +0200 <maerwald> and in a pure language they shall all be equivalent-ish
2021-07-20 22:32:38 +0200 <lechner> i always thought 'lazy evaluation' was a contradiction in terms, but here it is
2021-07-20 22:34:00 +0200dunkeln_(~dunkeln@188.71.231.232)
2021-07-20 22:34:57 +0200favonia(~favonia@user/favonia) (Ping timeout: 255 seconds)
2021-07-20 22:35:45 +0200 <lechner> does a half-lazy 'evaluate' make sense with ByteStrings, though?
2021-07-20 22:36:32 +0200 <davean> what is "half-lazy"?
2021-07-20 22:36:38 +0200 <lechner> WHNF
2021-07-20 22:36:42 +0200 <maerwald> huh?
2021-07-20 22:36:46 +0200 <davean> in what way is that half lazy?
2021-07-20 22:37:20 +0200 <lechner> well, it's apparently not doing a complete evaluation
2021-07-20 22:37:25 +0200 <maerwald> there's also HNF
2021-07-20 22:37:29 +0200 <maerwald> and NF
2021-07-20 22:37:31 +0200 <davean> Its going to *A* complete evaluation
2021-07-20 22:37:43 +0200 <maerwald> lechner: for the 3rd time: read the documentation on 'evaluate'
2021-07-20 22:37:50 +0200 <davean> just not all complete evaluations that are below that
2021-07-20 22:37:55 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-07-20 22:38:08 +0200 <lechner> i am, but they recommend force instead of deepseq
2021-07-20 22:38:41 +0200 <lechner> shallow evaluation would have been a better term
2021-07-20 22:39:11 +0200 <maerwald> lazy evaluation is an operational term anyway
2021-07-20 22:39:42 +0200 <maerwald> not sure those terms are that precise to begin with
2021-07-20 22:40:12 +0200 <lechner> deepseq only does the first chunk, while evaluate $ force does the whole string?
2021-07-20 22:40:13 +0200 <davean> Theres several well defined steps of evaluation
2021-07-20 22:40:27 +0200 <maerwald> lechner: try it
2021-07-20 22:40:34 +0200dunkeln_(~dunkeln@188.71.231.232) (Ping timeout: 240 seconds)
2021-07-20 22:40:43 +0200dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net)
2021-07-20 22:40:45 +0200 <maerwald> deepseq and force are kinda the same thing
2021-07-20 22:40:59 +0200 <maerwald> read the documentation of 'force'
2021-07-20 22:41:23 +0200 <maerwald> @src force
2021-07-20 22:41:24 +0200 <lambdabot> Source not found. My mind is going. I can feel it.
2021-07-20 22:41:46 +0200 <maerwald> no shortcut, use your browser
2021-07-20 22:41:57 +0200oxide(~lambda@user/oxide) (Ping timeout: 268 seconds)
2021-07-20 22:42:04 +0200 <lechner> What's an easy way to figure out the hackage package name from the docs, please?
2021-07-20 22:42:22 +0200 <maerwald> @hoogle force
2021-07-20 22:42:23 +0200 <lambdabot> Data.Vector force :: Vector a -> Vector a
2021-07-20 22:42:23 +0200 <lambdabot> Data.Vector.Generic force :: Vector v a => v a -> v a
2021-07-20 22:42:23 +0200 <lambdabot> Data.Vector.Primitive force :: Prim a => Vector a -> Vector a
2021-07-20 22:42:24 +0200 <lechner> at the very top, i suppose
2021-07-20 22:42:35 +0200oxide(~lambda@user/oxide)
2021-07-20 22:42:41 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-07-20 22:42:45 +0200 <maerwald> @where hoogle
2021-07-20 22:42:45 +0200 <lambdabot> https://hoogle.haskell.org
2021-07-20 22:43:44 +0200favonia(~favonia@user/favonia)
2021-07-20 22:44:07 +0200acidjnk(~acidjnk@p200300d0c72b9575c508b842a8b97de2.dip0.t-ipconnect.de)
2021-07-20 22:45:44 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
2021-07-20 22:46:21 +0200 <lechner> maerwald: you nailed it! force did it. thanks so much!
2021-07-20 22:47:00 +0200 <maerwald> here's my BTC address...
2021-07-20 22:52:34 +0200 <maerwald> lechner: also: awful API from lzma
2021-07-20 22:53:21 +0200 <maerwald> streamly might soon support things like that
2021-07-20 22:59:33 +0200dunkeln(~dunkeln@188.71.231.232)
2021-07-20 23:02:19 +0200abhixec_(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-07-20 23:05:29 +0200 <lechner> maerwald: Debian is tight on cash (and BTC) but I credited you and dsal on the website. I hope it compensates you, however inadequately, for your kind. Thanks so much to both of you! https://lintian.debian.org/
2021-07-20 23:07:09 +0200 <lechner> that was supposed to read "kind help". Anyway, thanks!
2021-07-20 23:10:17 +0200jmorris(uid433911@id-433911.stonehaven.irccloud.com)
2021-07-20 23:10:19 +0200benin0369(~benin@106.198.95.190) (Read error: Connection reset by peer)
2021-07-20 23:12:05 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
2021-07-20 23:12:14 +0200benin0369(~benin@46.244.28.118)
2021-07-20 23:12:59 +0200Feuermagier(~Feuermagi@user/feuermagier)
2021-07-20 23:18:59 +0200falafel(~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 258 seconds)
2021-07-20 23:19:26 +0200 <h98> is there a standard size function/class that will give me the length of a type of kind [*]? like "size @(Int ': Int ': String ': Float) = 4"
2021-07-20 23:19:49 +0200 <h98> (I can write one obviously, just wondering if it's in a library somewhere)
2021-07-20 23:25:25 +0200fendor(~fendor@91.141.52.148.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-07-20 23:29:36 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-07-20 23:39:39 +0200 <[exa]> h98: you might have luck with Generics
2021-07-20 23:39:48 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 23:40:13 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 23:42:30 +0200chomwitt(~chomwitt@2a02:587:dc0e:ef00:12c3:7bff:fe6d:d374)
2021-07-20 23:43:05 +0200 <[exa]> (or maybe with just gfoldl)
2021-07-20 23:44:05 +0200 <smtnet3> man... i gotta learn me some generics
2021-07-20 23:47:02 +0200x_kuru(~xkuru@user/xkuru)
2021-07-20 23:47:05 +0200vysn(~vysn@user/vysn) (Quit: WeeChat 3.0.1)
2021-07-20 23:48:12 +0200Ariakenom(~Ariakenom@c83-255-154-140.bredband.tele2.se) (Read error: Connection reset by peer)
2021-07-20 23:48:17 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42)
2021-07-20 23:49:12 +0200xkuru(~xkuru@user/xkuru) (Ping timeout: 255 seconds)
2021-07-20 23:50:25 +0200Ranhir(~Ranhir@157.97.53.139)
2021-07-20 23:50:47 +0200favonia(~favonia@user/favonia) (Ping timeout: 252 seconds)
2021-07-20 23:50:49 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2021-07-20 23:50:56 +0200vysn(~vysn@user/vysn)
2021-07-20 23:51:00 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds)
2021-07-20 23:51:01 +0200 <[exa]> % gfoldl (\(Const n) _ -> Const (n+1)) (const $ Const 0) (Just 5)
2021-07-20 23:51:01 +0200 <yahb> [exa]: Const 1
2021-07-20 23:51:12 +0200 <[exa]> % gfoldl (\(Const n) _ -> Const (n+1)) (const $ Const 0) (1:[])
2021-07-20 23:51:12 +0200 <yahb> [exa]: Const 2
2021-07-20 23:51:16 +0200 <[exa]> \o/
2021-07-20 23:51:22 +0200adinf(~adinfinit@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) (Ping timeout: 245 seconds)
2021-07-20 23:51:23 +0200favonia(~favonia@user/favonia)
2021-07-20 23:51:29 +0200zebrag(~chris@user/zebrag)
2021-07-20 23:51:37 +0200 <[exa]> h98: ^ might work
2021-07-20 23:51:46 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-07-20 23:52:28 +0200 <h98> hah I gave up and just wrote it out: https://paste.tomsmeding.com/E9c62Vka
2021-07-20 23:53:13 +0200myShoggoth(~myShoggot@97-120-70-214.ptld.qwest.net)
2021-07-20 23:53:14 +0200 <[exa]> kinda wondering how this interacts with ':
2021-07-20 23:53:40 +0200 <[exa]> (nvm I'm off for today)
2021-07-20 23:57:01 +0200vysn(~vysn@user/vysn) (Remote host closed the connection)
2021-07-20 23:57:48 +0200michalz(~michalz@185.246.204.50) (Remote host closed the connection)
2021-07-20 23:58:41 +0200vysn(~vysn@user/vysn)
2021-07-20 23:58:49 +0200Bayes(~Bayes@user/bayes) (Quit: Connection closed)
2021-07-20 23:59:21 +0200Null_A(~null_a@2601:645:8700:2290:51:7614:ed:3f42) (Remote host closed the connection)