2020/11/06

2020-11-06 00:02:30 +0100hackagecommonmark 0.1.1.1 - Pure Haskell commonmark parser. https://hackage.haskell.org/package/commonmark-0.1.1.1 (JohnMacFarlane)
2020-11-06 00:03:30 +0100hackagecommonmark-extensions 0.2.0.3 - Pure Haskell commonmark parser. https://hackage.haskell.org/package/commonmark-extensions-0.2.0.3 (JohnMacFarlane)
2020-11-06 00:04:42 +0100texasmynsted(~texasmyns@64.44.55.84) (Remote host closed the connection)
2020-11-06 00:05:16 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-06 00:05:41 +0100jcowan(sid325434@gateway/web/irccloud.com/x-evadozowlzlhtjmy)
2020-11-06 00:06:23 +0100 <jcowan> What is it about multi-parameter typeclasses that excluded them from Haskell 98? Do they make the type system unverifiable in some way, or was it just for lack of use cases at that time?
2020-11-06 00:08:12 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 00:08:22 +0100 <Rembane> IIRC there wasn't a lack of use cases, they show up in a paper before 1998.
2020-11-06 00:09:28 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds)
2020-11-06 00:10:42 +0100 <jcowan> Ah, here it is. "Naive use of MPTCs may result in ambiguity, so functional dependencies were developed as a method of resolving that ambiguity, declaring that some subset of the parameters is sufficient to determine the values of the others." --from the wiki
2020-11-06 00:10:48 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 258 seconds)
2020-11-06 00:10:59 +0100wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net)
2020-11-06 00:12:06 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 00:18:05 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 258 seconds)
2020-11-06 00:20:46 +0100mceier(~mceier@89-68-132-187.dynamic.chello.pl) (Ping timeout: 258 seconds)
2020-11-06 00:21:22 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-06 00:23:26 +0100jbox(~atlas@unaffiliated/jbox) (Read error: Connection reset by peer)
2020-11-06 00:24:24 +0100jbox(~atlas@unaffiliated/jbox)
2020-11-06 00:30:02 +0100conal(~conal@107.181.166.217)
2020-11-06 00:30:28 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt) (Ping timeout: 246 seconds)
2020-11-06 00:31:53 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 00:32:30 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 00:34:38 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-06 00:34:50 +0100agrif(~agrif@overviewer/dev/agrif) (Killed (e (worth a try)))
2020-11-06 00:35:17 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Remote host closed the connection)
2020-11-06 00:35:22 +0100agrif(agrif@rakeri.net)
2020-11-06 00:35:22 +0100agrif(agrif@rakeri.net) (Changing host)
2020-11-06 00:35:22 +0100agrif(agrif@overviewer/dev/agrif)
2020-11-06 00:35:29 +0100texasmyn_(~texasmyns@64.44.55.84)
2020-11-06 00:36:42 +0100mceier(~mceier@89-68-132-187.dynamic.chello.pl)
2020-11-06 00:37:08 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-11-06 00:39:20 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 256 seconds)
2020-11-06 00:40:09 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
2020-11-06 00:40:26 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br)
2020-11-06 00:41:00 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 00:42:32 +0100fendor(~fendor@178.115.129.187.wireless.dyn.drei.com) (Remote host closed the connection)
2020-11-06 00:43:10 +0100conal(~conal@107.181.166.217) (Quit: Computer has gone to sleep.)
2020-11-06 00:43:33 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
2020-11-06 00:44:35 +0100conal(~conal@107.181.166.217)
2020-11-06 00:46:34 +0100agrif(agrif@overviewer/dev/agrif) (Quit: shorah b'shemtee)
2020-11-06 00:46:56 +0100agrif(~agrif@rakeri.net)
2020-11-06 00:46:56 +0100agrif(~agrif@rakeri.net) (Changing host)
2020-11-06 00:46:56 +0100agrif(~agrif@overviewer/dev/agrif)
2020-11-06 00:47:30 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2020-11-06 00:49:55 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2020-11-06 00:49:56 +0100jbox(~atlas@unaffiliated/jbox) (Read error: Connection reset by peer)
2020-11-06 00:50:25 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 00:50:36 +0100jbox(~atlas@unaffiliated/jbox)
2020-11-06 00:50:44 +0100Tops2(~Tobias@dyndsl-095-033-088-103.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2020-11-06 00:51:04 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Remote host closed the connection)
2020-11-06 00:52:29 +0100son0p(~son0p@181.136.122.143)
2020-11-06 00:53:08 +0100borne(~fritjof@200116b8643b3600e0b7c534f6e7b66f.dip.versatel-1u1.de) (Ping timeout: 246 seconds)
2020-11-06 00:57:40 +0100borne(~fritjof@200116b8643b36005d0cb1433c5d4cbb.dip.versatel-1u1.de)
2020-11-06 00:57:43 +0100neobit(~neobit@159.65.243.9)
2020-11-06 01:00:00 +0100hackagepoke 0.0.0.1 - Discord verification bot https://hackage.haskell.org/package/poke-0.0.0.1 (HughSipiere)
2020-11-06 01:00:01 +0100mathepauker(~mathepauk@s91904426.blix.com) ()
2020-11-06 01:00:04 +0100 <neobit> when working with Servant, this compiles: type Routes = FooRoute :<|> BarRoute :<|> BazRoute :<|> QuxRoute
2020-11-06 01:00:07 +0100 <neobit> but this does not: type Routes = FooRoute :<|> (BarRoute :<|> BazRoute) :<|> QuxRoute
2020-11-06 01:00:10 +0100 <neobit> why is that?
2020-11-06 01:02:42 +0100 <Uniaika> neobit: (the #servant channel exists for this library)
2020-11-06 01:03:23 +0100 <Axman6> neobit: it'll be because there's a type class instance which expects :<|> to basically be used as a type level list
2020-11-06 01:06:08 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Quit: Leaving)
2020-11-06 01:08:02 +0100mdunnio(~mdunnio@208.59.170.5) (Remote host closed the connection)
2020-11-06 01:08:48 +0100moistoreos(~moist_ore@99-160-143-51.lightspeed.nsvltn.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 01:10:13 +0100conal(~conal@107.181.166.217) (Quit: Computer has gone to sleep.)
2020-11-06 01:13:20 +0100obihann(~jhann@156.34.160.69) (Ping timeout: 265 seconds)
2020-11-06 01:14:43 +0100obihann(~jhann@156.34.160.69)
2020-11-06 01:14:53 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0) (Remote host closed the connection)
2020-11-06 01:16:40 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0)
2020-11-06 01:18:00 +0100jbox(~atlas@unaffiliated/jbox) (Read error: Connection reset by peer)
2020-11-06 01:18:43 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 01:18:48 +0100jbox(~atlas@unaffiliated/jbox)
2020-11-06 01:19:49 +0100conal(~conal@107.181.166.217)
2020-11-06 01:20:50 +0100hekkaidekapus{(~tchouri@gateway/tor-sasl/hekkaidekapus)
2020-11-06 01:22:28 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca)
2020-11-06 01:22:51 +0100 <Squarism> Im trying to grasp how Traversals / Lenses work here. An unapplied lens has signature : Control.Monad.Reader.Class.MonadReader Foo m => m (Maybe Int)
2020-11-06 01:23:00 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 01:23:23 +0100hekkaidekapus_(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 240 seconds)
2020-11-06 01:23:55 +0100 <Axman6> Squarism: first thing to remember about MonadReader is that there is an instance for m = ((->) r), and this is one of the most common uses, so you get r -> Maybe Int
2020-11-06 01:23:57 +0100 <Squarism> I remember theres some magic with (->) and MonadReader. Does the above signature imply its equivalent to : Foo -> Maybe Int ?
2020-11-06 01:24:11 +0100 <Axman6> exactly
2020-11-06 01:24:51 +0100 <Squarism> thanks. Finally i get this wierdness =D
2020-11-06 01:27:11 +0100Entertainment(~entertain@104.246.132.210) (Quit: Leaving.)
2020-11-06 01:27:14 +0100conal(~conal@107.181.166.217) (Quit: Computer has gone to sleep.)
2020-11-06 01:28:23 +0100conal(~conal@107.181.166.217)
2020-11-06 01:31:13 +0100jbox(~atlas@unaffiliated/jbox) (Ping timeout: 260 seconds)
2020-11-06 01:33:11 +0100conal(~conal@107.181.166.217) (Quit: Computer has gone to sleep.)
2020-11-06 01:35:21 +0100bennofs1(~benno@dslb-094-222-063-208.094.222.pools.vodafone-ip.de)
2020-11-06 01:36:36 +0100luke(~luke@bitnomial/staff/luke)
2020-11-06 01:37:37 +0100conal(~conal@107.181.166.217)
2020-11-06 01:43:02 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Read error: Connection reset by peer)
2020-11-06 01:44:02 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-06 01:45:45 +0100conal(~conal@107.181.166.217) (Ping timeout: 240 seconds)
2020-11-06 01:46:18 +0100jakob_(~textual@p200300f49f162200657391ee70880d24.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2020-11-06 01:47:41 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 01:47:47 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 258 seconds)
2020-11-06 01:50:02 +0100conal(~conal@107.181.166.217)
2020-11-06 01:50:07 +0100conal(~conal@107.181.166.217) (Client Quit)
2020-11-06 01:51:48 +0100 <Axman6> Squarism: figuring out how you ncan make use of this inside a monad with a MonadReader context s quite fun, you basically get a DSL for accessing your app's configuration for free
2020-11-06 01:52:25 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 240 seconds)
2020-11-06 01:53:34 +0100 <Squarism> Axman6, i have used a bunch of monadreader for passing on context. But I find the ((->) a) construct a bit confusing.
2020-11-06 01:53:41 +0100jtk(~jtk@178.239.168.171)
2020-11-06 01:54:00 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2020-11-06 01:54:00 +0100hackagecommonmark 0.1.1.2 - Pure Haskell commonmark parser. https://hackage.haskell.org/package/commonmark-0.1.1.2 (JohnMacFarlane)
2020-11-06 01:54:06 +0100 <Squarism> Its not a type but a kind right?
2020-11-06 01:54:40 +0100 <Axman6> it's a type which isn't fully applied, it has kind * -> *
2020-11-06 01:57:06 +0100conal(~conal@107.181.166.217)
2020-11-06 01:57:11 +0100 <Squarism> oh, i see it has a data declaration.
2020-11-06 01:58:10 +0100 <Squarism> But i cannot write ":t ((->) 1)" in ghci
2020-11-06 01:58:40 +0100Chi1thangoo(~Chi1thang@87.112.60.168) (Ping timeout: 256 seconds)
2020-11-06 01:58:55 +0100renzhi(~renzhi@2607:fa49:655f:e600::28da)
2020-11-06 01:59:01 +0100hackagecommonmark-extensions 0.2.0.4 - Pure Haskell commonmark parser. https://hackage.haskell.org/package/commonmark-extensions-0.2.0.4 (JohnMacFarlane)
2020-11-06 01:59:04 +0100conal(~conal@107.181.166.217) (Client Quit)
2020-11-06 01:59:19 +0100 <Squarism> I its definition : data (->) (a :: TYPE q) (b :: TYPE r)
2020-11-06 01:59:59 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:7cc2:21a2:16c3:f6f6) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 02:00:22 +0100 <Axman6> no, only data has types, and (->) isn't data, it's a type, so it has a kind
2020-11-06 02:00:30 +0100 <Axman6> @kind (->)
2020-11-06 02:00:32 +0100 <lambdabot> * -> * -> *
2020-11-06 02:00:40 +0100 <Squarism> "I see" correction
2020-11-06 02:03:06 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:7cc2:21a2:16c3:f6f6)
2020-11-06 02:04:50 +0100joaj(~joaj@2001:818:e326:8200:5273:55b7:3a86:e6ca) (Ping timeout: 264 seconds)
2020-11-06 02:05:27 +0100joaj(~joaj@2001:818:e326:8200:9fc:6bde:c18a:1771)
2020-11-06 02:05:37 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 264 seconds)
2020-11-06 02:08:53 +0100Mela(3eb2acf9@62-178-172-249.cable.dynamic.surfer.at)
2020-11-06 02:09:08 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 260 seconds)
2020-11-06 02:09:38 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 02:10:24 +0100 <Mela> hello
2020-11-06 02:11:46 +0100 <Mela> I'm a beginner learning Haskell and I have an acute question. Am I in the right place here to ask?
2020-11-06 02:12:02 +0100 <lyxia> yes
2020-11-06 02:12:17 +0100 <lyxia> we also take cute questions.
2020-11-06 02:12:18 +0100turq(~electro@138.197.8.173) (Changing host)
2020-11-06 02:12:18 +0100turq(~electro@unaffiliated/turq)
2020-11-06 02:12:27 +0100 <Axman6> we prefer obtuse question though
2020-11-06 02:12:41 +0100 <Axman6> like "Why is Haskell so bad?"
2020-11-06 02:13:07 +0100 <Mela> you may judge whether it's cute
2020-11-06 02:14:14 +0100wroathe(~wroathe@c-73-24-27-54.hsd1.mn.comcast.net) (Ping timeout: 258 seconds)
2020-11-06 02:14:26 +0100 <Mela> so I want to have my own data type to represent an interval of numbers. I define it as "data Interval = Interval (lb, ub) | Empty | Invalid"
2020-11-06 02:14:26 +0100 <jcowan> "Acute" as in acute suffering, or as in acute intelligence?
2020-11-06 02:14:33 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2020-11-06 02:14:44 +0100guest116(~user@49.5.6.87)
2020-11-06 02:14:55 +0100 <jcowan> Both, I guess
2020-11-06 02:15:04 +0100 <aldum> acute angle
2020-11-06 02:15:24 +0100 <Mela> now I wanted to make it so that Interval(lb,ub) redirects to Empty, when ub > lb
2020-11-06 02:15:30 +0100Entertainment(~entertain@104.246.132.210)
2020-11-06 02:15:35 +0100 <Axman6> Mela: what should the type of lb and ub be? there doesn't seem to be any need for a tuple in there either
2020-11-06 02:15:44 +0100 <monochrom> I think we saw the same interval question several hours ago as an assignment question. Perhaps show us the whole assignment?
2020-11-06 02:15:51 +0100kish(~oracle@unaffiliated/oracle)
2020-11-06 02:15:55 +0100 <Mela> oh :p
2020-11-06 02:16:04 +0100 <Mela> yeah, it's indeed a uni assignment
2020-11-06 02:16:06 +0100 <Axman6> your lecturer is probably in here by the way
2020-11-06 02:16:11 +0100Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2020-11-06 02:16:28 +0100 <aldum> lol
2020-11-06 02:16:29 +0100alp(~alp@2a01:e0a:58b:4920:b090:7fae:5afc:83b5) (Ping timeout: 272 seconds)
2020-11-06 02:16:42 +0100 <Mela> thing is in another language though, so I thought I'd translate it
2020-11-06 02:16:43 +0100 <monochrom> I'm OK with homework questions. I'm just not OK with incomplete butchered misrepresented information.
2020-11-06 02:17:14 +0100 <Axman6> so be very careful what you ask, and make sure you don't use any code anyone provides to you. We are happy to help you come up with answers, but we don't do your homework for you.
2020-11-06 02:17:15 +0100 <monochrom> And last time the other student only showed two lines of code every 5 minutes.
2020-11-06 02:17:35 +0100Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.94)
2020-11-06 02:17:42 +0100 <Axman6> Mela: so what have you tried so far, and what ideas have you had?
2020-11-06 02:17:53 +0100 <Axman6> (I'm also curious what the other language is)
2020-11-06 02:18:09 +0100 <Mela> gotcha
2020-11-06 02:18:16 +0100 <Mela> (how do I properly post code in here?)
2020-11-06 02:18:22 +0100 <Axman6> @where paste
2020-11-06 02:18:22 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at eg https://paste.tomsmeding.com
2020-11-06 02:18:30 +0100 <monochrom> I don't get it. If you don't tell people that you aren't telepathic, people simply assume you're telepathic. "Hi I got an error, here is the error message but I'm not going to show you my code". What kind of logic is that.
2020-11-06 02:19:23 +0100son0p(~son0p@181.136.122.143) (Remote host closed the connection)
2020-11-06 02:19:45 +0100 <aldum> they don't assume telepathy, just have a frame of mind which is very focused on the problem, and don't take the effort to imagine what implicit knowledge they have that you don't
2020-11-06 02:19:54 +0100 <aldum> I know because I do this a lot
2020-11-06 02:20:31 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 02:24:01 +0100davl(~davl@207.154.228.18) (Read error: Connection reset by peer)
2020-11-06 02:24:01 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net) (Read error: Connection reset by peer)
2020-11-06 02:24:15 +0100dcoutts_(~duncan@33.14.75.194.dyn.plus.net)
2020-11-06 02:24:23 +0100davl(~davl@207.154.228.18)
2020-11-06 02:24:44 +0100Mela(3eb2acf9@62-178-172-249.cable.dynamic.surfer.at) (Remote host closed the connection)
2020-11-06 02:24:52 +0100Lord_of_Life_(~Lord@46.217.217.128)
2020-11-06 02:25:21 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 265 seconds)
2020-11-06 02:27:12 +0100Mela(3eb2acf9@62-178-172-249.cable.dynamic.surfer.at)
2020-11-06 02:27:24 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 02:29:03 +0100 <Mela> hi again
2020-11-06 02:29:49 +0100 <Mela> I wrote my question in more detail here now (https://paste.tomsmeding.com/kCD7VKFq). I hope this is understandable.
2020-11-06 02:30:24 +0100 <Mela> https://paste.tomsmeding.com/kCD7VKFq sorry for breaking the link above
2020-11-06 02:30:55 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-11-06 02:31:31 +0100 <monochrom> cannot be done
2020-11-06 02:32:28 +0100m0rphism(~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de) (Ping timeout: 260 seconds)
2020-11-06 02:32:45 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 02:33:03 +0100 <Mela> wow, not at all?
2020-11-06 02:33:24 +0100xff0x(~fox@2001:1a81:522f:7b00:1cd6:2f35:f89:eebf) (Ping timeout: 244 seconds)
2020-11-06 02:33:24 +0100 <Axman6> well, it of course can be done, using functions
2020-11-06 02:33:49 +0100 <monochrom> That's different from the stated question.
2020-11-06 02:33:59 +0100__xor_xor
2020-11-06 02:34:11 +0100 <Axman6> it can also be made to look like a constructor by using pattern synonyms
2020-11-06 02:34:14 +0100joaj(~joaj@2001:818:e326:8200:9fc:6bde:c18a:1771) (Ping timeout: 264 seconds)
2020-11-06 02:34:23 +0100xff0x(~fox@2001:1a81:522f:7b00:9577:da4f:61ac:7ef2)
2020-11-06 02:34:29 +0100 <monochrom> I'm pretty sure the course is not at a point ready for pattern synonyms.
2020-11-06 02:34:31 +0100 <Axman6> but that's definitely way outside the skope of your course
2020-11-06 02:34:38 +0100 <monochrom> So why bring it up?
2020-11-06 02:34:58 +0100 <Axman6> you said it can't be done, but it can
2020-11-06 02:36:12 +0100 <Mela> right, so what motivates the question is that right now I have a lot of functions where each of them makes this kind of "if m > n, then replace with Empty" check
2020-11-06 02:36:26 +0100 <Mela> I'm looking for a way to achieve that in one place, since it's repetitive
2020-11-06 02:37:14 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
2020-11-06 02:37:17 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 02:37:46 +0100 <monochrom> Write a function f such that f (IV (5,3)) = Empty, f xxx = xxx for other cases.
2020-11-06 02:37:57 +0100 <monochrom> Then you can reuse f everywhere.
2020-11-06 02:38:18 +0100 <monochrom> This is not the same as making i1 and i2 equivalent.
2020-11-06 02:39:11 +0100 <JohnnyL> What platforms would be supported by SDL2 and Haskell?
2020-11-06 02:40:45 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 02:42:31 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 256 seconds)
2020-11-06 02:44:42 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-06 02:46:18 +0100 <texasmyn_> is it possible to alter the pandoc table of contents with a filter? I can't tell from the docs in Hackage but I do not know the Pandoc module well.
2020-11-06 02:47:06 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 02:47:23 +0100texasmyn_texasmynsted
2020-11-06 02:48:58 +0100 <Mela> I'm not sure that I understand. Here's the implementation of 'show' as an example - https://paste.tomsmeding.com/BQhdNEnr
2020-11-06 02:49:56 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 02:50:25 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 02:51:22 +0100stonebrige(~stonebrig@4e69b241.skybroadband.com) (Ping timeout: 256 seconds)
2020-11-06 02:52:10 +0100 <monochrom> Do you mind writing an ordinary function showIntervalDumb outside "instance Show Intervel".
2020-11-06 02:52:31 +0100 <monochrom> showIntervalDumb :: Interval -> String.
2020-11-06 02:53:18 +0100 <Mela> what would be the advantage?
2020-11-06 02:53:18 +0100 <monochrom> It doesn't do anything smart. It always converts IV(m,n) to "<" ++ (show m) ++ "," ++ (show n) ++ ">"
2020-11-06 02:53:38 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 256 seconds)
2020-11-06 02:53:41 +0100 <monochrom> Then your instance goes "show i = showIntervalDumb (f i)"
2020-11-06 02:54:22 +0100 <monochrom> Since f already does the smart normalization, showIntervalDumb has nothing to worry about.
2020-11-06 02:54:33 +0100 <monochrom> And f can also be reused elsewhere
2020-11-06 02:55:00 +0100stonebridge(~stonebrig@4e69b241.skybroadband.com)
2020-11-06 02:55:24 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-11-06 02:56:00 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-06 02:56:01 +0100 <Mela> oh, I see
2020-11-06 02:56:17 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 265 seconds)
2020-11-06 02:57:15 +0100 <Mela> Do I need an extra function? Couldn't I just write show i = show (f i) as the top priority definition? then after that define show as I usually would?
2020-11-06 02:57:45 +0100 <monochrom> That's an infinite loop.
2020-11-06 02:58:56 +0100 <Mela> oh
2020-11-06 02:59:36 +0100 <Mela> I guess I could not define anything for the case of m > n and put show i = show (f i) as least priority to catch it?
2020-11-06 02:59:53 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr) (Ping timeout: 260 seconds)
2020-11-06 03:02:27 +0100 <Mela> alright, but I think using this sort of wrapper function to normalize the intervals is a nice enough solution :D thanks for helping!
2020-11-06 03:05:12 +0100Stanley|00(~stanley00@unaffiliated/stanley00)
2020-11-06 03:05:38 +0100 <Mela> I still wonder why my original idea doesn't work in Haskell though. a value constructor ("IV" here) is just another function (that results in a type "Interval" here), no? So why can't I pattern match and put up a rule for a specific case, as long as I assign the proper type (and Empty is an Interval type here)?
2020-11-06 03:05:39 +0100luke(~luke@bitnomial/staff/luke) (Quit: sleep)
2020-11-06 03:06:45 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 240 seconds)
2020-11-06 03:06:50 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
2020-11-06 03:08:00 +0100 <monochrom> You are confusing "a function I can write and rewrite" with "a function that the computer auto-generates for me".
2020-11-06 03:08:36 +0100 <monochrom> IV can play the role of a function, but that function came from the computer, not you. It's coding is already done, you cannot change it.
2020-11-06 03:08:49 +0100 <monochrom> s/It's/Its/
2020-11-06 03:11:21 +0100 <JohnnyL> monochrom: didn't you used to hang in #lisp?
2020-11-06 03:11:33 +0100 <monochrom> No.
2020-11-06 03:11:52 +0100slack1256(~slack1256@191.126.150.2)
2020-11-06 03:12:34 +0100 <Mela> yes, that's indeed a new concept to me. I thought I could just add to any function that exists
2020-11-06 03:13:09 +0100 <Mela> thanks for clarifying!
2020-11-06 03:13:33 +0100catchme(uid355354@gateway/web/irccloud.com/x-wmqwbwgtbuzhjsjg) (Quit: Connection closed for inactivity)
2020-11-06 03:14:49 +0100stonebridge(~stonebrig@4e69b241.skybroadband.com) (Ping timeout: 256 seconds)
2020-11-06 03:15:41 +0100Mela(3eb2acf9@62-178-172-249.cable.dynamic.surfer.at) (Remote host closed the connection)
2020-11-06 03:20:50 +0100slack1256(~slack1256@191.126.150.2) (Ping timeout: 256 seconds)
2020-11-06 03:21:18 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
2020-11-06 03:21:27 +0100slack1256(~slack1256@191.126.150.2)
2020-11-06 03:21:58 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-11-06 03:23:07 +0100howdoi(uid224@gateway/web/irccloud.com/x-pkptafzrpfqhbpar) (Quit: Connection closed for inactivity)
2020-11-06 03:23:23 +0100 <JohnnyL> What platforms does Hackage support?
2020-11-06 03:28:05 +0100slack1256(~slack1256@191.126.150.2) (Ping timeout: 240 seconds)
2020-11-06 03:29:27 +0100Entertainment(~entertain@104.246.132.210) (Quit: Leaving.)
2020-11-06 03:29:59 +0100conal(~conal@107.181.166.217)
2020-11-06 03:32:58 +0100 <sm[m]> JohnnyL: all platforms you can install cabal on
2020-11-06 03:32:59 +0100 <sm[m]> but if you're on Windows, you need to check package dependencies for certain packages that won't build easily there (like "unix")
2020-11-06 03:34:06 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (Ping timeout: 256 seconds)
2020-11-06 03:34:17 +0100Black(~Benett@unaffiliated/benett)
2020-11-06 03:34:18 +0100acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 260 seconds)
2020-11-06 03:34:24 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
2020-11-06 03:34:40 +0100fre(~freusque@104.238.190.229) (Ping timeout: 256 seconds)
2020-11-06 03:34:40 +0100dredozubov(~dredozubo@37.139.21.214) (Ping timeout: 256 seconds)
2020-11-06 03:34:40 +0100feuerbach(~feuerbach@unaffiliated/feuerbach) (Ping timeout: 256 seconds)
2020-11-06 03:34:40 +0100mr_yogurt(~mr_yogurt@5.61.211.35.bc.googleusercontent.com) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100NieDzejkob(~quassel@188.123.215.55) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100hongminhee(~dahlia@207.148.91.209) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100hive-mind(~hivemind@rrcs-67-53-148-69.west.biz.rr.com) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100AWizzArd(~code@unaffiliated/awizzard) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100laxask(~lax@unaffiliated/laxask) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100Benett(~Benett@unaffiliated/benett) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100freeside(~ubuntu@ec2-52-58-69-57.eu-central-1.compute.amazonaws.com) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100Cheery(~cheery@7-239-179-185.static.tentacle.fi) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100tureba(~tureba@tureba.org) (Ping timeout: 256 seconds)
2020-11-06 03:35:14 +0100cynick(~worm@ec2-52-206-86-1.compute-1.amazonaws.com) (Ping timeout: 256 seconds)
2020-11-06 03:35:21 +0100hongminhee(~dahlia@207.148.91.209)
2020-11-06 03:35:28 +0100fre(~freusque@104.238.190.229)
2020-11-06 03:35:34 +0100feuerbach(~feuerbach@unaffiliated/feuerbach)
2020-11-06 03:35:38 +0100NieDzejkob(~quassel@188.123.215.55)
2020-11-06 03:35:42 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl)
2020-11-06 03:35:47 +0100bob_twinkles(~quassel@ec2-52-37-66-13.us-west-2.compute.amazonaws.com) (Ping timeout: 256 seconds)
2020-11-06 03:36:33 +0100Cheery(~cheery@7-239-179-185.static.tentacle.fi)
2020-11-06 03:36:47 +0100bob_twinkles(~quassel@ec2-52-37-66-13.us-west-2.compute.amazonaws.com)
2020-11-06 03:36:49 +0100freeside(~ubuntu@ec2-52-58-69-57.eu-central-1.compute.amazonaws.com)
2020-11-06 03:36:58 +0100cynick(~worm@ec2-52-206-86-1.compute-1.amazonaws.com)
2020-11-06 03:36:59 +0100hive-mind(~hivemind@rrcs-67-53-148-69.west.biz.rr.com)
2020-11-06 03:37:13 +0100laxask(~lax@unaffiliated/laxask)
2020-11-06 03:37:16 +0100lucasb(uid333435@gateway/web/irccloud.com/x-sdppmllrnolsxyhi) (Quit: Connection closed for inactivity)
2020-11-06 03:38:02 +0100BlackBenett
2020-11-06 03:38:13 +0100mr_yogurt(~mr_yogurt@5.61.211.35.bc.googleusercontent.com)
2020-11-06 03:38:20 +0100conal(~conal@107.181.166.217) (Ping timeout: 265 seconds)
2020-11-06 03:39:28 +0100conal_(~conal@64.71.133.70)
2020-11-06 03:39:44 +0100dredozubov(~dredozubo@37.139.21.214)
2020-11-06 03:40:10 +0100tureba(~tureba@tureba.org)
2020-11-06 03:40:58 +0100 <JohnnyL> sm[m]: ok
2020-11-06 03:42:32 +0100 <JohnnyL> It seems linux heavy. I think I'll just write my game in Rust.
2020-11-06 03:42:44 +0100darjeeling_(~darjeelin@112.16.171.8)
2020-11-06 03:43:38 +0100 <DigitalKiwi> there are a few haskell game engines
2020-11-06 03:43:56 +0100 <DigitalKiwi> https://wiki.haskell.org/Game_Development
2020-11-06 03:44:05 +0100AWizzArd(~code@gehrels.uberspace.de)
2020-11-06 03:48:49 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds)
2020-11-06 03:48:50 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Read error: Connection reset by peer)
2020-11-06 03:48:54 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 03:49:29 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-06 03:50:05 +0100bjobjo(~bjobjo@2a01:79c:cebf:d688::9e6) (Ping timeout: 268 seconds)
2020-11-06 03:50:22 +0100 <JohnnyL> broken links and thesises is no real surprise in that link.
2020-11-06 03:51:06 +0100stef204(~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 2.9)
2020-11-06 03:51:45 +0100bjobjo(~bjobjo@2a01:79c:cebf:d688::9e6)
2020-11-06 03:53:25 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 240 seconds)
2020-11-06 03:54:02 +0100xff0x(~fox@2001:1a81:522f:7b00:9577:da4f:61ac:7ef2) (Ping timeout: 264 seconds)
2020-11-06 03:54:23 +0100xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
2020-11-06 03:55:46 +0100xff0x(~fox@2001:1a81:526d:d800:5758:3aa9:2010:fe62)
2020-11-06 03:55:56 +0100texasmynsted(~texasmyns@64.44.55.84) (Remote host closed the connection)
2020-11-06 03:56:02 +0100xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-11-06 03:56:24 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-06 03:56:29 +0100texasmynsted(~texasmyns@64.44.55.84) (Remote host closed the connection)
2020-11-06 03:57:08 +0100texasmynsted(~texasmyns@64.44.55.84)
2020-11-06 03:58:38 +0100mimi1vx(~mimi@tulipan.habr.nat.praha12.net) (Ping timeout: 260 seconds)
2020-11-06 04:00:01 +0100jtk(~jtk@178.239.168.171) ()
2020-11-06 04:01:16 +0100toorevitimirp(~tooreviti@117.182.183.132)
2020-11-06 04:01:37 +0100texasmynsted(~texasmyns@64.44.55.84) (Ping timeout: 272 seconds)
2020-11-06 04:02:36 +0100urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2020-11-06 04:03:36 +0100 <sm[m]> see also #haskell-game. Haskell game devs are undercover but keen!
2020-11-06 04:03:54 +0100 <sm[m]> ah, you found it
2020-11-06 04:06:26 +0100lagothrix(~lagothrix@unaffiliated/lagothrix) (Killed (adams.freenode.net (Nickname regained by services)))
2020-11-06 04:06:31 +0100lagothrix(~lagothrix@unaffiliated/lagothrix)
2020-11-06 04:07:30 +0100xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 260 seconds)
2020-11-06 04:09:20 +0100theDon(~td@94.134.91.129) (Ping timeout: 272 seconds)
2020-11-06 04:10:57 +0100theDon(~td@94.134.91.182)
2020-11-06 04:11:37 +0100 <MarcelineVQ> maybe the real haskell game was the demos we made along the way
2020-11-06 04:11:42 +0100Stanley|00(~stanley00@unaffiliated/stanley00) (Read error: Connection reset by peer)
2020-11-06 04:12:20 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 04:13:31 +0100hackagereflex-gadt-api 0.2.0.0 - Interact with a GADT API in your reflex-dom application. https://hackage.haskell.org/package/reflex-gadt-api-0.2.0.0 (abrar)
2020-11-06 04:15:18 +0100JohnnyL(~john@unaffiliated/johnnyl) (Quit: leaving)
2020-11-06 04:15:39 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
2020-11-06 04:15:59 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2020-11-06 04:17:18 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311) ()
2020-11-06 04:20:01 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 264 seconds)
2020-11-06 04:20:12 +0100 <bqv> I'm using UndecidableInstances
2020-11-06 04:20:21 +0100bqvruns
2020-11-06 04:21:02 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 260 seconds)
2020-11-06 04:22:53 +0100pfurla(~pfurla@195.15.195.173.client.static.strong-in52.as13926.net)
2020-11-06 04:23:01 +0100hackagereflex-gadt-api 0.2.0.1 - Interact with a GADT API in your reflex-dom application. https://hackage.haskell.org/package/reflex-gadt-api-0.2.0.1 (abrar)
2020-11-06 04:24:20 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
2020-11-06 04:24:29 +0100DigitalKiwishuns bqv
2020-11-06 04:24:45 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4)
2020-11-06 04:24:56 +0100drbean(~drbean@TC210-63-209-41.static.apol.com.tw)
2020-11-06 04:25:48 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
2020-11-06 04:26:05 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 04:27:40 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 04:29:30 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4)
2020-11-06 04:30:13 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 246 seconds)
2020-11-06 04:31:57 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 04:32:27 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 256 seconds)
2020-11-06 04:33:18 +0100CodeAlways(uid272474@gateway/web/irccloud.com/x-mliviwyoymdgahbo)
2020-11-06 04:34:49 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) (Quit: WeeChat 2.9)
2020-11-06 04:39:17 +0100irc_user(uid423822@gateway/web/irccloud.com/x-gyxrtaghwqegnmdw)
2020-11-06 04:47:28 +0100Katarushisu(~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net) (Quit: Ping timeout (120 seconds))
2020-11-06 04:47:49 +0100Katarushisu(~Katarushi@cpc149712-finc20-2-0-cust535.4-2.cable.virginm.net)
2020-11-06 04:51:44 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2020-11-06 04:54:07 +0100madwoota1(~madwoota@84.39.116.180)
2020-11-06 04:58:21 +0100vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-11-06 04:58:31 +0100hackagedependent-sum-aeson-orphans 0.3.0.0 - JSON instances for DSum, DMap, and Some https://hackage.haskell.org/package/dependent-sum-aeson-orphans-0.3.0.0 (abrar)
2020-11-06 04:59:17 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-06 04:59:26 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4) (Ping timeout: 264 seconds)
2020-11-06 05:00:20 +0100erisco(~erisco@d24-57-249-233.home.cgocable.net) (Read error: Connection reset by peer)
2020-11-06 05:01:26 +0100xelxebar(~xelxebar@gateway/tor-sasl/xelxebar) (Remote host closed the connection)
2020-11-06 05:01:52 +0100xelxebar(~xelxebar@gateway/tor-sasl/xelxebar)
2020-11-06 05:03:23 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 05:05:18 +0100Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 244 seconds)
2020-11-06 05:06:55 +0100Amras(~Amras@unaffiliated/amras0000)
2020-11-06 05:06:58 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-06 05:11:20 +0100pfurla(~pfurla@195.15.195.173.client.static.strong-in52.as13926.net) (Ping timeout: 256 seconds)
2020-11-06 05:11:58 +0100darjeeling_(~darjeelin@112.16.171.8) (Ping timeout: 256 seconds)
2020-11-06 05:13:20 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-06 05:14:03 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2020-11-06 05:18:02 +0100Stanley|00(~stanley00@unaffiliated/stanley00)
2020-11-06 05:21:14 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 260 seconds)
2020-11-06 05:24:13 +0100 <bqv> refactoring haskell code is honestly the most fun part of haskell
2020-11-06 05:24:59 +0100christo(~chris@81.96.113.213)
2020-11-06 05:26:46 +0100da39a3ee5e6b4b0d(~textual@cm-171-98-73-201.revip7.asianet.co.th)
2020-11-06 05:29:34 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 05:32:04 +0100conal_(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-11-06 05:32:31 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca)
2020-11-06 05:34:10 +0100conal(~conal@64.71.133.70)
2020-11-06 05:35:39 +0100watt326(~watt326@124.123.105.19)
2020-11-06 05:36:05 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 240 seconds)
2020-11-06 05:37:05 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2020-11-06 05:39:08 +0100guest116(~user@49.5.6.87) (Ping timeout: 260 seconds)
2020-11-06 05:40:08 +0100drbean(~drbean@TC210-63-209-41.static.apol.com.tw) (Read error: Connection reset by peer)
2020-11-06 05:42:41 +0100watt326(~watt326@124.123.105.19) (Remote host closed the connection)
2020-11-06 05:43:03 +0100watt766(~watt766@124.123.105.19)
2020-11-06 05:44:34 +0100jedws(~jedws@101.184.150.81)
2020-11-06 05:44:41 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 258 seconds)
2020-11-06 05:47:40 +0100L29Ah(~L29Ah@unaffiliated/l29ah) (Ping timeout: 256 seconds)
2020-11-06 05:52:13 +0100L29Ah(~L29Ah@unaffiliated/l29ah)
2020-11-06 05:53:52 +0100borne(~fritjof@200116b8643b36005d0cb1433c5d4cbb.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
2020-11-06 05:55:12 +0100watt766(~watt766@124.123.105.19) (Remote host closed the connection)
2020-11-06 05:55:31 +0100watt517(~watt517@124.123.105.19)
2020-11-06 05:56:24 +0100watt517(~watt517@124.123.105.19) (Read error: Connection reset by peer)
2020-11-06 05:56:31 +0100hackageupdate-nix-fetchgit 0.2.3 - A program to update fetchgit values in Nix expressions https://hackage.haskell.org/package/update-nix-fetchgit-0.2.3 (jophish)
2020-11-06 05:56:36 +0100watt584(~watt584@124.123.105.19)
2020-11-06 05:57:22 +0100nados(~dan@69-165-210-185.cable.teksavvy.com) (Ping timeout: 246 seconds)
2020-11-06 06:00:25 +0100guest116(~user@49.5.6.87)
2020-11-06 06:01:23 +0100alp(~alp@2a01:e0a:58b:4920:74d7:d69b:369a:35c3)
2020-11-06 06:02:41 +0100Saukk(~Saukk@2001:998:f9:2914:1c59:9bb5:b94c:4) (Remote host closed the connection)
2020-11-06 06:02:56 +0100guest116`(~user@49.5.6.87)
2020-11-06 06:03:02 +0100guest116(~user@49.5.6.87) (Read error: Connection reset by peer)
2020-11-06 06:07:00 +0100borne(~fritjof@200116b8643b36005d0cb1433c5d4cbb.dip.versatel-1u1.de)
2020-11-06 06:09:18 +0100obihann(~jhann@156.34.160.69) (Ping timeout: 260 seconds)
2020-11-06 06:09:42 +0100Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
2020-11-06 06:10:26 +0100obihann(~jhann@156.34.160.69)
2020-11-06 06:11:27 +0100Amras(~Amras@unaffiliated/amras0000) (Ping timeout: 272 seconds)
2020-11-06 06:14:06 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 06:14:26 +0100borne(~fritjof@200116b8643b36005d0cb1433c5d4cbb.dip.versatel-1u1.de) (Ping timeout: 264 seconds)
2020-11-06 06:15:53 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4)
2020-11-06 06:16:00 +0100hackageciteproc 0.1.1.1 - Generates citations and bibliography from CSL styles. https://hackage.haskell.org/package/citeproc-0.1.1.1 (JohnMacFarlane)
2020-11-06 06:16:48 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-06 06:18:48 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 260 seconds)
2020-11-06 06:20:19 +0100alp(~alp@2a01:e0a:58b:4920:74d7:d69b:369a:35c3) (Ping timeout: 272 seconds)
2020-11-06 06:21:06 +0100bennofs1(~benno@dslb-094-222-063-208.094.222.pools.vodafone-ip.de) (Quit: WeeChat 2.9)
2020-11-06 06:21:49 +0100Jeanne-Kamikaze(~Jeanne-Ka@68.235.43.94) (Quit: Leaving)
2020-11-06 06:22:17 +0100Collateral(~Collatera@4e69b241.skybroadband.com)
2020-11-06 06:26:06 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 06:28:21 +0100conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-11-06 06:28:31 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 06:30:53 +0100Rudd0(~Rudd0@185.189.115.98) (Ping timeout: 265 seconds)
2020-11-06 06:34:37 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 2.9)
2020-11-06 06:35:22 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:7cc2:21a2:16c3:f6f6) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 06:37:45 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 240 seconds)
2020-11-06 06:39:28 +0100day_(~Unknown@unaffiliated/day)
2020-11-06 06:40:31 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 06:40:45 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 06:41:17 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 06:41:30 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 06:42:03 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 06:42:22 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 06:42:52 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 06:42:57 +0100day(~Unknown@unaffiliated/day) (Ping timeout: 258 seconds)
2020-11-06 06:42:57 +0100day_day
2020-11-06 06:43:10 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 06:43:40 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 06:44:58 +0100Rudd0(~Rudd0@185.189.115.98)
2020-11-06 06:45:13 +0100jassob(~jassob@korrob.vth.sgsnet.se) (Ping timeout: 264 seconds)
2020-11-06 06:45:40 +0100jassob(~jassob@korrob.vth.sgsnet.se)
2020-11-06 06:46:26 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-06 06:46:50 +0100machinedgod(~machinedg@207.253.244.210) (Ping timeout: 265 seconds)
2020-11-06 06:47:10 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 06:49:01 +0100watt584(~watt584@124.123.105.19) (Remote host closed the connection)
2020-11-06 06:49:24 +0100watt749(~watt749@124.123.105.19)
2020-11-06 06:50:11 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4) (Ping timeout: 244 seconds)
2020-11-06 06:51:44 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 06:51:44 +0100acidjnk_new2(~acidjnk@p200300d0c718f6890d36626cfb994f1d.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 06:53:35 +0100ddellaco1(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-06 06:54:04 +0100ggole(~ggole@2001:8003:8119:7200:657b:f270:233e:7a88)
2020-11-06 06:54:05 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 265 seconds)
2020-11-06 06:55:52 +0100thunderrd(~thunderrd@183.182.115.112) (Remote host closed the connection)
2020-11-06 06:58:58 +0100renzhi(~renzhi@2607:fa49:655f:e600::28da) (Ping timeout: 244 seconds)
2020-11-06 07:00:01 +0100madwoota1(~madwoota@84.39.116.180) ()
2020-11-06 07:00:22 +0100ddellaco1(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 265 seconds)
2020-11-06 07:03:09 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: leaving)
2020-11-06 07:07:22 +0100bitmapper(uid464869@gateway/web/irccloud.com/x-yoxguegrcaybrryj) (Quit: Connection closed for inactivity)
2020-11-06 07:08:34 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2020-11-06 07:09:39 +0100pyx(~pyx@unaffiliated/pyx)
2020-11-06 07:09:53 +0100pyx(~pyx@unaffiliated/pyx) (Client Quit)
2020-11-06 07:10:20 +0100xff0x(~fox@2001:1a81:526d:d800:5758:3aa9:2010:fe62) (Ping timeout: 244 seconds)
2020-11-06 07:11:05 +0100xff0x(~fox@2001:1a81:526d:d800:f1b2:b680:1506:93c6)
2020-11-06 07:18:45 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 240 seconds)
2020-11-06 07:21:45 +0100corelax1(~corelax@185.163.110.116)
2020-11-06 07:25:09 +0100drbean(~drbean@TC210-63-209-217.static.apol.com.tw)
2020-11-06 07:25:50 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 07:27:59 +0100invaser1(~Thunderbi@178-133-201-88.mobile.vf-ua.net)
2020-11-06 07:28:01 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com) (Ping timeout: 246 seconds)
2020-11-06 07:29:00 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com)
2020-11-06 07:30:29 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 258 seconds)
2020-11-06 07:30:29 +0100invaser1invaser
2020-11-06 07:33:59 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 07:35:43 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Ping timeout: 246 seconds)
2020-11-06 07:36:38 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
2020-11-06 07:42:01 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Remote host closed the connection)
2020-11-06 07:42:40 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-06 07:43:45 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 07:46:00 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-06 07:46:51 +0100invaser(~Thunderbi@178-133-201-88.mobile.vf-ua.net) (Read error: Connection reset by peer)
2020-11-06 07:46:55 +0100invaser1(~Thunderbi@31.148.23.125)
2020-11-06 07:48:11 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 07:48:17 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 07:49:14 +0100invaser1invaser
2020-11-06 07:52:50 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-06 07:52:54 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 07:57:05 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 07:59:13 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 08:00:20 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4)
2020-11-06 08:02:00 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 08:05:24 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 08:05:51 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2020-11-06 08:06:54 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 260 seconds)
2020-11-06 08:08:12 +0100Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2020-11-06 08:08:21 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2020-11-06 08:09:38 +0100xff0x(~fox@2001:1a81:526d:d800:f1b2:b680:1506:93c6) (Ping timeout: 264 seconds)
2020-11-06 08:10:17 +0100xff0x(~fox@2001:1a81:526d:d800:33bd:cfa:492c:ea35)
2020-11-06 08:10:20 +0100cantstanya(~chatting@gateway/tor-sasl/cantstanya) (Remote host closed the connection)
2020-11-06 08:10:37 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 08:11:20 +0100britva(~britva@2a02:aa13:7240:2980:9117:32f5:aa09:6904)
2020-11-06 08:12:51 +0100cantstanya(~chatting@gateway/tor-sasl/cantstanya)
2020-11-06 08:16:19 +0100xerox_(~xerox@unaffiliated/xerox)
2020-11-06 08:16:58 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de)
2020-11-06 08:19:33 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 260 seconds)
2020-11-06 08:21:00 +0100sagax(~sagax_nb@213.138.71.146)
2020-11-06 08:21:20 +0100knupfer(~Thunderbi@200116b82c0fb10018cf41fffe5b4f4b.dip.versatel-1u1.de)
2020-11-06 08:21:21 +0100knupfer(~Thunderbi@200116b82c0fb10018cf41fffe5b4f4b.dip.versatel-1u1.de) (Client Quit)
2020-11-06 08:21:38 +0100knupfer(~Thunderbi@mue-88-130-61-134.dsl.tropolys.de)
2020-11-06 08:21:50 +0100guest116`(~user@49.5.6.87) (Ping timeout: 260 seconds)
2020-11-06 08:22:08 +0100cfricke(~cfricke@unaffiliated/cfricke)
2020-11-06 08:23:05 +0100pera(~pera@unaffiliated/pera)
2020-11-06 08:23:32 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 08:24:30 +0100thunderrd(~thunderrd@183.182.111.177)
2020-11-06 08:28:55 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 08:30:28 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 08:30:56 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 08:34:02 +0100loximann(~loximann_@2001:999:91:a2:a80c:634a:b1db:5)
2020-11-06 08:34:41 +0100thunderrd(~thunderrd@183.182.111.177) (Remote host closed the connection)
2020-11-06 08:35:35 +0100 <loximann> Hi! I need some help... I am using Fedora 33. When I run ghci, all the packages installed via the operating system are hidden. Can anyone give me a hand?
2020-11-06 08:36:45 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 240 seconds)
2020-11-06 08:36:53 +0100pera(pera@gateway/vpn/mullvad/pera)
2020-11-06 08:39:30 +0100britva(~britva@2a02:aa13:7240:2980:9117:32f5:aa09:6904) (Quit: This computer has gone to sleep)
2020-11-06 08:41:33 +0100sord937(~sord937@gateway/tor-sasl/sord937)
2020-11-06 08:42:00 +0100thunderrd(~thunderrd@183.182.111.177)
2020-11-06 08:42:55 +0100otulp(~otulp@ti0187q162-5696.bb.online.no) (Ping timeout: 246 seconds)
2020-11-06 08:43:25 +0100chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de)
2020-11-06 08:44:33 +0100christo(~chris@81.96.113.213)
2020-11-06 08:45:04 +0100dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be)
2020-11-06 08:46:00 +0100 <loximann> Uhm, is this channel active at all?
2020-11-06 08:46:29 +0100 <Uniaika> yep but it's still the morning for many europeans :)
2020-11-06 08:46:41 +0100 <Uniaika> and night for americans
2020-11-06 08:46:50 +0100 <loximann> True :-D
2020-11-06 08:47:10 +0100 <Uniaika> loximann: I am also a fedora user, btw
2020-11-06 08:47:16 +0100 <loximann> Uniaika certainly :-D (I am located in Helsinki ;-) )
2020-11-06 08:47:31 +0100 <loximann> So much in common :-D
2020-11-06 08:47:41 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a)
2020-11-06 08:48:03 +0100 <Uniaika> ei, I'm not Finnish :P
2020-11-06 08:48:07 +0100 <Uniaika> so
2020-11-06 08:48:14 +0100 <Uniaika> don't install haskell packages with dnf
2020-11-06 08:48:16 +0100 <Uniaika> just don't
2020-11-06 08:48:32 +0100 <Uniaika> you install them with cabal, stack, nix, watever
2020-11-06 08:48:33 +0100emmanuel_erc(~user@2604:2000:1382:ce03:de4:8c90:4e56:e115) (Ping timeout: 268 seconds)
2020-11-06 08:48:40 +0100 <loximann> OK? But it has worked fine. And in two other systems it has been fine
2020-11-06 08:49:31 +0100 <Uniaika> Debian is 5 years late compared to everybody and Arch has decided to do nonsensical policies with dynamic linking :P
2020-11-06 08:49:40 +0100 <Uniaika> This is not a reliable way to install libraries
2020-11-06 08:50:03 +0100 <loximann> OK, thanks
2020-11-06 08:50:23 +0100 <loximann> Still, it would be good to know why it works in a couple of my systems and it doesn't on this one
2020-11-06 08:50:25 +0100mbomba(~mbomba@bras-base-toroon2719w-grc-49-142-114-9-241.dsl.bell.ca) (Quit: WeeChat 2.9)
2020-11-06 08:50:33 +0100 <Uniaika> it's not that it *doesn't work*
2020-11-06 08:50:40 +0100 <Uniaika> it's just that it won't *reliably*
2020-11-06 08:51:04 +0100 <Uniaika> on the long term you're better off with a cabal store, even a cabal project!
2020-11-06 08:51:34 +0100 <Uniaika> with stack, you can invoque a REPL with arbitrary packages, for instance
2020-11-06 08:51:38 +0100 <Uniaika> a bit like nix
2020-11-06 08:53:04 +0100 <loximann> I don't know, I have been fine for a long long time with my old-fashioned way, so far I have been happy with ghc and ghci for my needs... I would prefer not to change that workflow
2020-11-06 08:53:35 +0100guest116`(~user@49.5.6.87)
2020-11-06 08:53:54 +0100 <loximann> I understand the rationale for using cabal/nix/whatnot, but for me coming where I am coming from, I feel more comfortable with more minimalistic tools
2020-11-06 08:55:29 +0100 <sclv> cabal _is_ the most minimalistic tool
2020-11-06 08:55:39 +0100 <sclv> using system packaging is way more fragile and complex
2020-11-06 08:55:56 +0100 <Uniaika> loximann: yes but here you are, with a broken setup :)
2020-11-06 08:56:36 +0100 <sclv> in any case your question is rather vaguee
2020-11-06 08:56:50 +0100irc_user(uid423822@gateway/web/irccloud.com/x-gyxrtaghwqegnmdw) (Quit: Connection closed for inactivity)
2020-11-06 08:56:52 +0100 <loximann> OK, I can formulate it more properly :-)
2020-11-06 08:56:58 +0100 <sclv> do the packages show up unhidden in `ghc-pkg list`?
2020-11-06 08:57:12 +0100 <loximann> Yeah, I mean not in parentheses
2020-11-06 08:57:28 +0100 <sclv> ok and how do you launch ghci?
2020-11-06 08:57:41 +0100 <loximann> Just type ghci on the console
2020-11-06 08:58:12 +0100 <sclv> that's strange
2020-11-06 08:58:19 +0100 <sclv> have you tried `ghc-pkg check`?
2020-11-06 08:58:44 +0100 <loximann> No, I run it without arguments now and nothing happened?
2020-11-06 08:58:47 +0100 <sclv> my one guess is you accidentally have a ghc environment file somewheree
2020-11-06 08:59:24 +0100 <sclv> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/packages.html
2020-11-06 08:59:40 +0100 <sclv> https://ghc.gitlab.haskell.org/ghc/doc/users_guide/packages.html#package-environments rather
2020-11-06 08:59:50 +0100Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2020-11-06 08:59:56 +0100 <loximann> Indeed renaming ~/.ghc as ~/.ghc_hide fixed that!
2020-11-06 09:00:00 +0100hackagemorloc 0.33.0 - A multi-lingual, typed, workflow language https://hackage.haskell.org/package/morloc-0.33.0 (arendsee)
2020-11-06 09:00:04 +0100pera(pera@gateway/vpn/mullvad/pera) (Ping timeout: 246 seconds)
2020-11-06 09:00:34 +0100 <sclv> w00t
2020-11-06 09:01:11 +0100alp(~alp@2a01:e0a:58b:4920:2d40:19c5:99d8:c050)
2020-11-06 09:01:47 +0100 <loximann> I guess the environment file .ghc_hide/x86_64-linux-8.8.4/environments/default was broken somehow
2020-11-06 09:01:53 +0100 <loximann> I'll look into that. Thanks :-)
2020-11-06 09:02:12 +0100 <sclv> cabal can write to it depending on the version and configuration
2020-11-06 09:02:14 +0100Varis(~Tadas@unaffiliated/varis)
2020-11-06 09:02:19 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Read error: Connection reset by peer)
2020-11-06 09:02:27 +0100codygman(codygman@gateway/vpn/privateinternetaccess/codygman)
2020-11-06 09:02:56 +0100pera(~pera@unaffiliated/pera)
2020-11-06 09:03:30 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 09:04:20 +0100 <loximann> Weird. All the packages seem to be listed in the environment file
2020-11-06 09:05:02 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 09:06:34 +0100kritzefitz(~kritzefit@fw-front.credativ.com)
2020-11-06 09:06:37 +0100pthariensflame(~pthariens@068-189-075-144.res.spectrum.com)
2020-11-06 09:06:51 +0100pthariensflame(~pthariens@068-189-075-144.res.spectrum.com) (Client Quit)
2020-11-06 09:07:11 +0100christo(~chris@81.96.113.213)
2020-11-06 09:07:57 +0100 <loximann> Alright, apparently there was a left over cache lock? I removed .ghc/x86_64-linux-8.8.4/package.conf.d/package.cache.lock and it all seems to work
2020-11-06 09:08:26 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-06 09:10:50 +0100 <loximann> Thanks a lot for your help! :-D
2020-11-06 09:12:57 +0100jedws(~jedws@101.184.150.81)
2020-11-06 09:14:01 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 09:14:49 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 09:14:54 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 09:15:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 09:16:14 +0100 <Uniaika> have a nice one, loximann :)
2020-11-06 09:16:18 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr)
2020-11-06 09:17:21 +0100christo(~chris@81.96.113.213)
2020-11-06 09:18:37 +0100m0rphism(~m0rphism@HSI-KBW-095-208-098-207.hsi5.kabel-badenwuerttemberg.de)
2020-11-06 09:18:45 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 240 seconds)
2020-11-06 09:19:27 +0100Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net) (Read error: Connection reset by peer)
2020-11-06 09:20:54 +0100jbox(~atlas@unaffiliated/jbox)
2020-11-06 09:22:01 +0100hackageyesod-auth 1.6.10.1 - Authentication for Yesod. https://hackage.haskell.org/package/yesod-auth-1.6.10.1 (MichaelSnoyman)
2020-11-06 09:22:10 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 09:23:54 +0100 <jchia> Without using temp files or writing to another file, how can I remove lines with a certain prefix from a UTF-8 text file using only memory that scales with the size of the prefix or at most the size of the longest line? I know the idea but want to know how to express it elegantly in Haskell.
2020-11-06 09:24:37 +0100 <jchia> i can even simplify the problem and say the file encoding is latin-1.
2020-11-06 09:25:11 +0100 <pjb> read line, write line or not, repeat.
2020-11-06 09:25:15 +0100 <jophish> sed '/^prefix/d'
2020-11-06 09:25:43 +0100 <jchia> jophish: I know sed can do it. I just want to do it simply in Haskell
2020-11-06 09:25:46 +0100 <pjb> The trick is that either you open the file twice, or you just between the read position and the write position.
2020-11-06 09:25:55 +0100 <jchia> pjb: If I write to the file while reading, will I get data corruption?
2020-11-06 09:26:00 +0100 <pjb> Nope.
2020-11-06 09:26:09 +0100 <pjb> Because you are only _removing_ lines.
2020-11-06 09:26:23 +0100 <jchia> pjb: open with two handles, one for read one for write?
2020-11-06 09:26:48 +0100 <pjb> Well, you have to be careful, because if you remove a small line, while copying a big following lines, indeed you would have an overlap.
2020-11-06 09:27:00 +0100 <pjb> Better to use fixed buffers.
2020-11-06 09:28:04 +0100 <pjb> The simpliest is to use a temporary file.
2020-11-06 09:28:55 +0100jff(~Thunderbi@a109-49-149-2.cpe.netcabo.pt)
2020-11-06 09:29:08 +0100 <jchia> I'll just do it the naive way. It's not a real problem I have to solve as the file is not that big. Just wondering if there is an elegant way to do it with a low memory footprint.
2020-11-06 09:29:34 +0100jedws(~jedws@101.184.150.81) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 09:29:41 +0100 <pjb> If the file can be read entirely in RAM, then indeed, read, split, delete, write.
2020-11-06 09:29:59 +0100 <pjb> In that case you may use a single file, if you have access to a truncate(2) syscall.
2020-11-06 09:30:01 +0100hackageyesod-persistent 1.6.0.5 - Some helpers for using Persistent from Yesod. https://hackage.haskell.org/package/yesod-persistent-1.6.0.5 (MichaelSnoyman)
2020-11-06 09:30:18 +0100 <pjb> It's not in POSIX, but in BSD and Linux.
2020-11-06 09:32:13 +0100watt749(~watt749@124.123.105.19) (Remote host closed the connection)
2020-11-06 09:32:36 +0100watt540(~watt540@124.123.105.19)
2020-11-06 09:32:44 +0100 <merijn> pjb: Why even bother "removing lines"?
2020-11-06 09:32:47 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de)
2020-11-06 09:32:51 +0100christo(~chris@81.96.113.213)
2020-11-06 09:33:12 +0100 <pjb> fixed-size record files are easier to work with.
2020-11-06 09:33:17 +0100 <merijn> You just gotta keep track of the end of the last "keep" line and copy the next "keep" line after there
2020-11-06 09:33:28 +0100 <merijn> You can never overlap data you care about that way
2020-11-06 09:33:40 +0100 <merijn> Since you only ever copy data "forward"
2020-11-06 09:34:17 +0100 <merijn> jchia: It can be done, whether it's worth the effort is the real question
2020-11-06 09:35:30 +0100hive-mind(~hivemind@rrcs-67-53-148-69.west.biz.rr.com) (Ping timeout: 272 seconds)
2020-11-06 09:38:32 +0100hive-mind(~hivemind@rrcs-67-53-148-69.west.biz.rr.com)
2020-11-06 09:38:57 +0100 <tomsmeding> can be a nice learning task I guess, it's not too hard to do it this way
2020-11-06 09:39:11 +0100watt540(~watt540@124.123.105.19) (Remote host closed the connection)
2020-11-06 09:39:14 +0100 <tomjaguarpaw> Is there a simple and well-maintained CI setup for Haskell packages that people recommend these days?
2020-11-06 09:39:22 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 09:39:23 +0100 <tomjaguarpaw> I have been using Travis, but the writing is on the wall.
2020-11-06 09:39:30 +0100hackageyesod-auth-oauth 1.6.0.2 - OAuth Authentication for Yesod. https://hackage.haskell.org/package/yesod-auth-oauth-1.6.0.2 (MichaelSnoyman)
2020-11-06 09:40:15 +0100watt001(~watt001@124.123.105.19)
2020-11-06 09:42:59 +0100codygman(codygman@gateway/vpn/privateinternetaccess/codygman) (Ping timeout: 256 seconds)
2020-11-06 09:43:12 +0100codygman(codygman@gateway/vpn/privateinternetaccess/codygman)
2020-11-06 09:43:46 +0100 <merijn> Github Actions? :p
2020-11-06 09:44:28 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 256 seconds)
2020-11-06 09:45:13 +0100Sanchayan(~Sanchayan@223.226.118.59) (Ping timeout: 246 seconds)
2020-11-06 09:46:14 +0100pavonia(~user@unaffiliated/siracusa) (Quit: Bye!)
2020-11-06 09:49:05 +0100mimi_vx(~mimi@tulipan.habr.nat.praha12.net)
2020-11-06 09:50:10 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 09:50:26 +0100 <Uniaika> tomjaguarpaw: GitHub Actions
2020-11-06 09:51:37 +0100jedws(~jedws@101.184.150.81)
2020-11-06 09:51:54 +0100 <tomjaguarpaw> I mean is there simple and well-maintained Haskell code to use the CI service :D
2020-11-06 09:52:14 +0100mimi1vx(~mimi@2a01:490:16:1026:2934:3235:6ae3:65f4) (Ping timeout: 264 seconds)
2020-11-06 09:53:12 +0100alexelcu(~alexelcu@142.93.180.198) (Quit: ZNC 1.8.2 - https://znc.in)
2020-11-06 09:53:22 +0100 <dminuoso> tomjaguarpaw: gitlab-ci+gitlab-runner
2020-11-06 09:53:31 +0100 <dminuoso> Jenkins
2020-11-06 09:53:39 +0100 <dminuoso> Anything that can run a single `cabal build` works for 95% of hackage.
2020-11-06 09:53:47 +0100 <dminuoso> (Or stack equivalent)
2020-11-06 09:54:01 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 09:54:02 +0100alexelcu(~alexelcu@142.93.180.198)
2020-11-06 09:54:33 +0100jedws(~jedws@101.184.150.81) (Client Quit)
2020-11-06 09:54:40 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Ping timeout: 246 seconds)
2020-11-06 09:54:51 +0100 <dminuoso> Fundamentally, my gitlab ci jobs do nothing more than `cabal build ...; cp $(cabal-plan list-bin ...) ...`
2020-11-06 09:55:14 +0100jespada(~jespada@90.254.245.49) (Ping timeout: 264 seconds)
2020-11-06 09:56:18 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
2020-11-06 09:56:54 +0100jespada(~jespada@90.254.245.49)
2020-11-06 09:57:27 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-06 09:57:30 +0100Sanchayan(~Sanchayan@223.226.118.59) (Read error: Connection reset by peer)
2020-11-06 09:57:49 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-06 10:00:01 +0100corelax1(~corelax@185.163.110.116) ()
2020-11-06 10:00:05 +0100mmynsted[m](mmynstedtc@gateway/shell/matrix.org/x-nsloajvwzkribhpr) (Quit: Idle for 30+ days)
2020-11-06 10:00:27 +0100watt213(~watt213@124.123.105.19)
2020-11-06 10:00:49 +0100jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se)
2020-11-06 10:04:30 +0100 <jophish> tomjaguarpaw: https://github.com/expipiplus1/exact-real/blob/master/.github/workflows/ci.yml#L6-L49
2020-11-06 10:04:41 +0100 <jophish> seems to work well enough for me
2020-11-06 10:04:55 +0100 <jophish> or were you asking about a CI service API in haskell?
2020-11-06 10:05:08 +0100watt213(~watt213@124.123.105.19) (Ping timeout: 260 seconds)
2020-11-06 10:05:11 +0100 <merijn> tomjaguarpaw: Or update Haskell-CI with a Github actions backend :p
2020-11-06 10:05:43 +0100 <merijn> dminuoso: The Haskell-CI travis tests are more in depth than simply checking if "cabal build" works, though
2020-11-06 10:05:55 +0100 <merijn> dminuoso: they also test sdist, different confiurations, etc.
2020-11-06 10:06:14 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:06:25 +0100 <dminuoso> merijn: all easily written into a shell script.
2020-11-06 10:06:32 +0100thc202(~thc202@unaffiliated/thc202)
2020-11-06 10:06:50 +0100 <jophish> I've been working on a couple of scripts which allow me to comment "/bump major" on a PR and have a bot push a commit updating the changelog and version number, https://github.com/expipiplus1/update-nix-fetchgit/pull/46
2020-11-06 10:06:57 +0100 <merijn> Right, but the point of haskell-ci was to not have to rewrite that shell script every time ;)
2020-11-06 10:07:06 +0100 <dminuoso> Write it once, share it across projects
2020-11-06 10:07:10 +0100 <jophish> and another script which watches master for changes to the version, and pushes a tag
2020-11-06 10:07:14 +0100 <dminuoso> Chances are, your CI needs need custom tailoring *anyhow*
2020-11-06 10:07:22 +0100 <jophish> and another script which watches tags and makes a release when a new tag comes along
2020-11-06 10:07:27 +0100 <dminuoso> The idea that there's this "general CI setup that works for all" is a bit silly
2020-11-06 10:07:33 +0100 <merijn> dminuoso: that's what haskell-ci *is* and probably why he asked for something like that for "not travis" :p
2020-11-06 10:07:38 +0100supercoven(~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi)
2020-11-06 10:07:42 +0100drbean(~drbean@TC210-63-209-217.static.apol.com.tw) (Ping timeout: 256 seconds)
2020-11-06 10:07:42 +0100 <dminuoso> ah..
2020-11-06 10:07:46 +0100 <jophish> https://github.com/expipiplus1/action-automation
2020-11-06 10:07:53 +0100 <dminuoso> I stick to my point. Just write it yourself, its not that hard...
2020-11-06 10:07:55 +0100 <dminuoso> :p
2020-11-06 10:08:37 +0100loximann(~loximann_@2001:999:91:a2:a80c:634a:b1db:5) (Quit: Leaving)
2020-11-06 10:08:41 +0100 <merijn> dminuoso: Writing a github actions version is on my (continuously growing) "post-thesis" todo list already :p
2020-11-06 10:08:51 +0100 <jophish> Is travis really going anywhere, I mean I certainly wouldn't use it for anything new over something integrated with gitlab or github, but surely it's got some life left?
2020-11-06 10:09:19 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0) (Quit: ZNC 1.7.5 - https://znc.in)
2020-11-06 10:09:44 +0100 <Taneb> jophish: I'd heard they're removing free support for open source
2020-11-06 10:09:47 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0)
2020-11-06 10:09:52 +0100 <jophish> seriously?
2020-11-06 10:09:54 +0100 <jophish> wow
2020-11-06 10:10:01 +0100 <jophish> How's things, Taneb ?
2020-11-06 10:10:13 +0100 <dminuoso> jophish: you dont read news, do you?
2020-11-06 10:10:39 +0100 <Taneb> dminuoso: it's not exactly the kind of thing that makes it into newspapers
2020-11-06 10:10:53 +0100 <dminuoso> travis CI was bought off by a company that has made a habit of "buy company, fire all senior staff, and milk the cashcow for as long as you can"
2020-11-06 10:11:06 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-06 10:11:08 +0100 <dminuoso> and as it turned out, a week later most of the senior staff was laid off..
2020-11-06 10:11:28 +0100 <jophish> dminuoso: I can't read, sorry
2020-11-06 10:11:47 +0100 <dminuoso> Taneb: oh I meant tech news I guess :)
2020-11-06 10:12:21 +0100 <jophish> I get all my news from /r/copypasta
2020-11-06 10:12:48 +0100 <dminuoso> There is such a sub?
2020-11-06 10:14:40 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:14:40 +0100 <jophish> To be fair, it was the first news outlet to call the race for Biden
2020-11-06 10:16:57 +0100DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-11-06 10:20:19 +0100 <int-e> jophish: how would you know if it's the only one you read
2020-11-06 10:20:37 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-06 10:21:13 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt)
2020-11-06 10:21:38 +0100 <int-e> (also, the name suggests that it'll at best be second, if they're quick enough to copy and paste)
2020-11-06 10:22:39 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com) (Ping timeout: 256 seconds)
2020-11-06 10:23:00 +0100CodeAlways(uid272474@gateway/web/irccloud.com/x-mliviwyoymdgahbo) (Quit: Connection closed for inactivity)
2020-11-06 10:23:16 +0100Stanley|00(~stanley00@unaffiliated/stanley00) (Read error: Connection reset by peer)
2020-11-06 10:23:26 +0100Aquazi(uid312403@gateway/web/irccloud.com/x-rydgrdgzszjcykfa)
2020-11-06 10:23:31 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com)
2020-11-06 10:23:48 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 10:24:02 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a) (Ping timeout: 264 seconds)
2020-11-06 10:25:16 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it)
2020-11-06 10:26:16 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:26:46 +0100 <merijn> dminuoso: Man, there's subs for everything :p
2020-11-06 10:26:54 +0100kuribastard(~user@ptr-25vy0i8gjp0q1mdagcc.18120a2.ip6.access.telenet.be)
2020-11-06 10:27:53 +0100 <kuribastard> applicative do looks nice for pararallelizing stuff. It should be enough to have a parallel (<*>) method, and let the desugaring handle the paralellism, right?
2020-11-06 10:28:05 +0100kmwyard(uid471732@gateway/web/irccloud.com/x-tmjuaykfgmfaiqvc) ()
2020-11-06 10:28:09 +0100watt001(~watt001@124.123.105.19) (Remote host closed the connection)
2020-11-06 10:28:23 +0100 <kuribastard> For example batching queries to a database.
2020-11-06 10:28:33 +0100 <merijn> kuribastard: Congratulations you have reinvented Facebook's Haxl :p
2020-11-06 10:29:08 +0100jbox(~atlas@unaffiliated/jbox) (Quit: WeeChat 2.9)
2020-11-06 10:29:21 +0100 <merijn> kuribastard: http://events.techcast.com/bigtechday10/Garmisch-1345/?q=Garmisch-1345
2020-11-06 10:29:33 +0100 <kuribastard> merijn: ah cool, I could use that :)
2020-11-06 10:29:48 +0100 <kuribastard> merijn: so simply relying on the desugaring isn't enough?
2020-11-06 10:30:32 +0100 <merijn> It depends on how far you wanna go
2020-11-06 10:30:34 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2020-11-06 10:30:39 +0100 <merijn> And what you mean by "desugaring"
2020-11-06 10:31:00 +0100 <merijn> But Simon's talk there is mostly about batching database queries, so... :p
2020-11-06 10:31:23 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 10:31:50 +0100 <kuribastard> nice, that could be pretty helpful
2020-11-06 10:33:19 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 2.9)
2020-11-06 10:34:02 +0100 <kuribastard> merijn: that slides is pretty nice :)
2020-11-06 10:36:25 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:36:39 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2020-11-06 10:37:30 +0100 <kuribastard> it syncronises the slide with the video
2020-11-06 10:37:39 +0100 <kuribastard> I haven't seen that before
2020-11-06 10:38:17 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Client Quit)
2020-11-06 10:40:14 +0100ubert(~Thunderbi@p200300ecdf1e53aae6b318fffe838f33.dip0.t-ipconnect.de)
2020-11-06 10:41:08 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 10:43:31 +0100hackageukrainian-phonetics-basic 0.1.10.0 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.1.10.0 (OleksandrZhabenko)
2020-11-06 10:44:11 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 10:44:11 +0100emmanuel_erc(~user@2604:2000:1382:ce03:496b:5584:4342:f627)
2020-11-06 10:44:22 +0100 <jchia> Is anyone experiencing Haskell Language Server taking >= 30GB RSS (resident set size) when editing a few files that are a few hundred lines in total long? I have a beefy machine but I wonder whether people with less RAM regularly encounter OOM problems when running HLS.
2020-11-06 10:44:42 +0100 <jchia> The RAM usage does not start up that big, but it grows.
2020-11-06 10:44:51 +0100 <merijn> Might be a leak?
2020-11-06 10:45:03 +0100 <merijn> Which version of hls? I know there were some leaks in earlier versions
2020-11-06 10:45:38 +0100 <merijn> ooh!
2020-11-06 10:45:46 +0100 <merijn> Pijul 1.0 release!
2020-11-06 10:46:02 +0100 <jchia> I'm running hls that I built from a Sep 10 commit.
2020-11-06 10:46:05 +0100 <merijn> (although, I guess they rebranded?)
2020-11-06 10:46:35 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:47:43 +0100Sanchayan(~Sanchayan@223.226.118.59) (Ping timeout: 260 seconds)
2020-11-06 10:48:38 +0100emmanuel_erc(~user@2604:2000:1382:ce03:496b:5584:4342:f627) (Ping timeout: 264 seconds)
2020-11-06 10:51:20 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 10:51:41 +0100geek00l(~geek00l@184.75.221.203)
2020-11-06 10:53:18 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-06 10:56:26 +0100watt570(~watt570@124.123.105.19)
2020-11-06 10:56:45 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 10:59:01 +0100hackagecobot-io 0.1.3.10 - Biological data file formats and IO https://hackage.haskell.org/package/cobot-io-0.1.3.10 (ozzzzz)
2020-11-06 11:00:56 +0100RusAlex(~Chel@unaffiliated/rusalex) (Quit: WeeChat 2.7.1)
2020-11-06 11:01:46 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 11:02:26 +0100RusAlex(~Chel@unaffiliated/rusalex)
2020-11-06 11:03:37 +0100Collateral(~Collatera@4e69b241.skybroadband.com) (Ping timeout: 246 seconds)
2020-11-06 11:04:43 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0) (Ping timeout: 240 seconds)
2020-11-06 11:05:51 +0100denisse(~spaceCat@gateway/tor-sasl/alephzer0)
2020-11-06 11:06:52 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 11:07:30 +0100Collateral(~Collatera@4e69b241.skybroadband.com)
2020-11-06 11:07:42 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Read error: Connection reset by peer)
2020-11-06 11:08:31 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-06 11:11:28 +0100 <tomjaguarpaw> jophish: Thanks. I will respond to your email soon.
2020-11-06 11:12:00 +0100ClaudiusMaximus(~claude@198.123.199.146.dyn.plus.net)
2020-11-06 11:12:13 +0100ClaudiusMaximus(~claude@198.123.199.146.dyn.plus.net) (Changing host)
2020-11-06 11:12:13 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus)
2020-11-06 11:12:31 +0100hackagephonetic-languages-properties 0.1.1.0 - A generalization of the uniqueness-periods-vector-properties package. https://hackage.haskell.org/package/phonetic-languages-properties-0.1.1.0 (OleksandrZhabenko)
2020-11-06 11:13:12 +0100akegalj(~akegalj@93-136-206-107.adsl.net.t-com.hr)
2020-11-06 11:13:30 +0100codygman(codygman@gateway/vpn/privateinternetaccess/codygman) (Ping timeout: 256 seconds)
2020-11-06 11:16:24 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 11:17:24 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 11:17:28 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net)
2020-11-06 11:19:36 +0100acidjnk_new2(~acidjnk@p200300d0c718f650b06a22fed16a11d3.dip0.t-ipconnect.de)
2020-11-06 11:20:15 +0100sh9(~sh9@softbank060116136158.bbtec.net)
2020-11-06 11:20:39 +0100mikevdg(73bd507b@115-189-80-123.mobile.spark.co.nz)
2020-11-06 11:22:20 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 265 seconds)
2020-11-06 11:24:35 +0100 <mikevdg> Where is the "do" notation processed? Is it something the compiler knows specially about and is built in to the grammar of Haskell, or is it done using some funky function definition foo?
2020-11-06 11:24:37 +0100__monty__(~toonn@unaffiliated/toonn)
2020-11-06 11:25:32 +0100totte(~totte@chakra/totte) (Quit: ZNC - http://znc.in)
2020-11-06 11:25:40 +0100 <merijn> mikevdg: It's syntactic sugar, so part of the syntax/grammar, yes
2020-11-06 11:26:13 +0100 <merijn> mikevdg: The desugaring is pretty straightforward: https://en.wikibooks.org/wiki/Haskell/do_notation
2020-11-06 11:26:39 +0100 <mikevdg> Does Haskell have a mechanism for letting you define your own syntactic sugar, or would that involve breaking ghc open and modifying it?
2020-11-06 11:27:00 +0100hackagephonetic-languages-examples 0.1.1.0 - A generalization of the uniqueness-periods-vector-examples functionality. https://hackage.haskell.org/package/phonetic-languages-examples-0.1.1.0 (OleksandrZhabenko)
2020-11-06 11:27:17 +0100 <merijn> mikevdg: You can either break open GHC, or you can use QuasiQuotes
2020-11-06 11:28:52 +0100 <mikevdg> Hey thanks
2020-11-06 11:28:57 +0100mikevdg(73bd507b@115-189-80-123.mobile.spark.co.nz) (Quit: mikevdg)
2020-11-06 11:29:37 +0100totte(~totte@chakra/totte)
2020-11-06 11:29:42 +0100 <jophish> int-e: ! hahah
2020-11-06 11:29:49 +0100 <jophish> you're quite right
2020-11-06 11:30:16 +0100 <jophish> micahsovereign[m: consider looking at -XRebindableSyntax too
2020-11-06 11:31:03 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-yyqyliwcbydyqmwb) (Quit: Connection closed for inactivity)
2020-11-06 11:31:51 +0100pera(~pera@unaffiliated/pera)
2020-11-06 11:33:29 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 256 seconds)
2020-11-06 11:34:40 +0100geek00l(~geek00l@184.75.221.203) (Ping timeout: 258 seconds)
2020-11-06 11:36:36 +0100guest116`(~user@49.5.6.87) (Read error: Connection reset by peer)
2020-11-06 11:45:12 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 11:45:54 +0100 <Cheery> when I define type family Trim a where Trim ...
2020-11-06 11:46:08 +0100 <Cheery> is it possible to associate functions to the items?
2020-11-06 11:46:12 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 11:46:42 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 11:46:50 +0100 <dminuoso> Cheery: use a typeclass with an associated type
2020-11-06 11:47:49 +0100 <Cheery> so I had this problem while days ago and it got back.
2020-11-06 11:47:55 +0100 <merijn> dminuoso: How does do that?
2020-11-06 11:48:01 +0100 <jophish> n
2020-11-06 11:48:20 +0100 <Cheery> https://www.reddit.com/r/haskell/comments/jmzg57/is_it_possible_to_trim_unit_types_away_from_a_type/
2020-11-06 11:48:23 +0100 <kuribastard> merijn: yes, haxl is exactly the functionality I wanted to implement. That'll save me a lot of work :)
2020-11-06 11:48:26 +0100 <merijn> associated types aren't really any different from regular type families, tbh
2020-11-06 11:49:41 +0100 <kuribastard> merijn: I already was designing a complicated system for doing dependency analysis, before it occured to me that applicative does that exactly, but for free.
2020-11-06 11:50:01 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-06 11:50:46 +0100rprije(~rprije@124.148.131.132) (Ping timeout: 258 seconds)
2020-11-06 11:51:00 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a)
2020-11-06 11:51:03 +0100 <Cheery> merijn: what do you mean? does this thing I have desugar into something else?
2020-11-06 11:51:56 +0100 <merijn> Cheery: I was refering to dminuoso's suggestion, which afaict can't actually fix your problem
2020-11-06 11:52:40 +0100 <merijn> Cheery: oh, those functions in that reddit post aren't possible
2020-11-06 11:53:05 +0100 <merijn> Cheery: Because the implementation depends on their input type which only works if you have either a typeclass or some kinda witness, like a GADT
2020-11-06 11:53:35 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Remote host closed the connection)
2020-11-06 11:54:55 +0100Leo_Verto1(~Leo_Verto@178.239.168.171)
2020-11-06 11:58:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Quit: relog)
2020-11-06 11:58:47 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 11:59:19 +0100 <Cheery> merijn: well is there some other way to remove units from a type?
2020-11-06 11:59:43 +0100 <merijn> eh "a function"?
2020-11-06 12:00:33 +0100 <Cheery> I get a type, and I'd like it to drop units deep in that type.
2020-11-06 12:00:43 +0100trafaret1(~user@178.207.230.169)
2020-11-06 12:01:10 +0100 <merijn> There's no (sane) way of doing that in general
2020-11-06 12:01:23 +0100trafaret1(~user@178.207.230.169) ()
2020-11-06 12:02:45 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Client Quit)
2020-11-06 12:02:50 +0100 <Cheery> I accept datakinds
2020-11-06 12:03:02 +0100yinfeng(~yinfeng@58.212.52.57) (Ping timeout: 260 seconds)
2020-11-06 12:03:08 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 12:03:26 +0100 <Cheery> merijn: I accept datakinds, it's ok if it's not entirely sane
2020-11-06 12:03:44 +0100 <merijn> I don't know how to do it the insane way either
2020-11-06 12:03:54 +0100 <merijn> It's probably possible, but you're on your own
2020-11-06 12:04:28 +0100 <Cheery> yeah.. well I try figure out. I think it can be done.
2020-11-06 12:04:40 +0100 <merijn> I'd recommend either: 1) "well don't return stuff you don't want/need then", or 2) accepting life
2020-11-06 12:04:50 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a) (Ping timeout: 264 seconds)
2020-11-06 12:05:38 +0100 <Cheery> https://github.com/cheery/haskell-rady
2020-11-06 12:06:33 +0100 <Cheery> for example: the aa(b|c) corresponds to ((),((),Either () ()))
2020-11-06 12:06:47 +0100 <Cheery> trim it, you get Either () ()
2020-11-06 12:08:07 +0100 <Cheery> well I'll try those datakinds.
2020-11-06 12:08:57 +0100 <Cheery> merijn: the point is, there's a good usecase
2020-11-06 12:11:45 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a)
2020-11-06 12:12:00 +0100ski. o O ( `Either (Either Void ()) (Either (Either Void Void,Either () ()) (Either () ((),()),Either () (Either () Void)))' )
2020-11-06 12:13:23 +0100shatriff(~vitaliish@176.52.219.10) (Remote host closed the connection)
2020-11-06 12:13:37 +0100shatriff(~vitaliish@176.52.219.10)
2020-11-06 12:14:52 +0100solonarv(~solonarv@astrasbourg-653-1-263-62.w92-161.abo.wanadoo.fr)
2020-11-06 12:16:58 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 12:16:59 +0100 <kuribastard> Cheery: the real question is, why do you want this?
2020-11-06 12:17:10 +0100 <kuribastard> Cheery: it sounds like an XY problem
2020-11-06 12:18:22 +0100jollygood2(~bc8165ab@217.29.117.252)
2020-11-06 12:19:10 +0100 <jollygood2> hi. what library do you recommend using for displaying graphs on a webpage?
2020-11-06 12:20:26 +0100falafel(~falafel@2601:247:c400:1390:744c:5d49:cbc1:a27a) (Ping timeout: 264 seconds)
2020-11-06 12:20:53 +0100Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
2020-11-06 12:21:38 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 12:21:56 +0100 <tomsmeding> merijn: pijul 1.0 where? also what rebrand?
2020-11-06 12:22:09 +0100 <Uniaika> it's anu.dev now, tomsmeding
2020-11-06 12:22:29 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 12:22:38 +0100 <tomsmeding> oh wow
2020-11-06 12:25:37 +0100Tops2(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de)
2020-11-06 12:27:28 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 12:29:27 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 12:30:34 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 12:31:34 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2020-11-06 12:32:58 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 12:33:21 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 12:33:42 +0100christo(~chris@81.96.113.213)
2020-11-06 12:38:13 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 12:38:44 +0100sh9(~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 2.8)
2020-11-06 12:39:38 +0100dxld(~dxld@80-109-136-248.cable.dynamic.surfer.at) (Quit: Bye)
2020-11-06 12:42:18 +0100dxld(~dxld@2a01:4f8:201:89ff:7479:df6a:7ab8:8305)
2020-11-06 12:43:43 +0100roconnor(~roconnor@host-192.252-162-14.dyn.295.ca) (Ping timeout: 246 seconds)
2020-11-06 12:46:10 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 12:48:29 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 12:50:33 +0100carlomagno1(~cararell@148.87.23.10)
2020-11-06 12:51:25 +0100carlomagno(~cararell@148.87.23.5) (Ping timeout: 240 seconds)
2020-11-06 12:56:16 +0100brisbin(~patrick@pool-173-49-158-4.phlapa.fios.verizon.net) (Ping timeout: 272 seconds)
2020-11-06 12:57:55 +0100Tops21(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de)
2020-11-06 12:57:57 +0100akegalj(~akegalj@93-136-206-107.adsl.net.t-com.hr) (Quit: leaving)
2020-11-06 12:58:41 +0100dmiles(dmiles@c-73-67-179-188.hsd1.wa.comcast.net) (Read error: Connection reset by peer)
2020-11-06 12:59:33 +0100Tops22(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de)
2020-11-06 13:00:01 +0100Leo_Verto1(~Leo_Verto@178.239.168.171) ()
2020-11-06 13:00:18 +0100dmiles(dmiles@c-73-67-179-188.hsd1.wa.comcast.net)
2020-11-06 13:01:44 +0100Tops2(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de) (Ping timeout: 256 seconds)
2020-11-06 13:03:14 +0100Tops21(~Tobias@dyndsl-095-033-022-214.ewe-ip-backbone.de) (Ping timeout: 260 seconds)
2020-11-06 13:04:46 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 13:06:18 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 13:07:51 +0100Entertainment(~entertain@104.246.132.210)
2020-11-06 13:08:17 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 13:08:54 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 13:11:40 +0100 <Cheery> kuribastard: if you have structures defined with a regex, it's nice to take the actual regex, then form a type from it.
2020-11-06 13:12:05 +0100 <Cheery> kuribastard: however, the type will have units because all parts of a regex do not carry information on match.
2020-11-06 13:12:36 +0100 <Cheery> Tool to trim all the units away from the type would be convenient.
2020-11-06 13:12:37 +0100justanotheruser(~justanoth@unaffiliated/justanotheruser) (Ping timeout: 272 seconds)
2020-11-06 13:12:45 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 240 seconds)
2020-11-06 13:13:53 +0100alp(~alp@2a01:e0a:58b:4920:2d40:19c5:99d8:c050) (Ping timeout: 272 seconds)
2020-11-06 13:14:50 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 13:15:57 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 13:16:31 +0100hackagereflex 0.7.2.0 - Higher-order Functional Reactive Programming https://hackage.haskell.org/package/reflex-0.7.2.0 (abrar)
2020-11-06 13:19:41 +0100CodeAlways(uid272474@gateway/web/irccloud.com/x-urtbqxrwhpvhyukz)
2020-11-06 13:20:19 +0100joaj(~joaj@2001:690:2100:1b:a36f:f7ab:d46c:98f0)
2020-11-06 13:20:28 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de)
2020-11-06 13:21:40 +0100drbean(~drbean@TC210-63-209-142.static.apol.com.tw)
2020-11-06 13:23:38 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
2020-11-06 13:24:00 +0100texasmynsted(~texasmyns@64.44.55.116)
2020-11-06 13:24:14 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-06 13:26:43 +0100knupfer(~Thunderbi@mue-88-130-61-134.dsl.tropolys.de) (Quit: knupfer)
2020-11-06 13:28:34 +0100texasmynsted(~texasmyns@64.44.55.116) (Ping timeout: 272 seconds)
2020-11-06 13:30:16 +0100 <lortabac> Cheery: there is a trick to avoid the problem of overlapping instances
2020-11-06 13:30:19 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 13:30:30 +0100hackagehttp2-client 0.10.0.0 - A native HTTP2 client library. https://hackage.haskell.org/package/http2-client-0.10.0.0 (LucasDiCioccio)
2020-11-06 13:30:39 +0100 <lortabac> it is verbose, but it should work, I have used it on more than one occasion
2020-11-06 13:30:45 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be)
2020-11-06 13:30:50 +0100ubert1(~Thunderbi@p200300ecdf1e53aae6b318fffe838f33.dip0.t-ipconnect.de)
2020-11-06 13:30:55 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 13:31:20 +0100 <Cheery> lortabac: what is that trick?
2020-11-06 13:31:31 +0100hackagecachix-api 0.5.0 - Servant HTTP API specification for https://cachix.org https://hackage.haskell.org/package/cachix-api-0.5.0 (domenkozar)
2020-11-06 13:31:32 +0100 <lortabac> Cheery: you define an auxiliary data type, where each constructor corresponds to one equation in the Trim type family
2020-11-06 13:31:38 +0100ubert(~Thunderbi@p200300ecdf1e53aae6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 13:31:38 +0100ubert1ubert
2020-11-06 13:32:14 +0100 <lortabac> then you define an auxiliary type family that maps from the input of Trim to this auxiliary data type
2020-11-06 13:32:51 +0100 <lortabac> and a type class with one instance for each of the constructors
2020-11-06 13:33:44 +0100 <merijn> tomsmeding: The new nest seems to be buckling under the load, though xD
2020-11-06 13:33:51 +0100 <Cheery> in this case the problem is the ((),a) etc.
2020-11-06 13:33:55 +0100 <tomsmeding> r.i.p.
2020-11-06 13:34:27 +0100 <tomsmeding> when I checked it an hour ago it was still pretty quick
2020-11-06 13:34:48 +0100 <tomsmeding> I guess populatity is a good thing :)
2020-11-06 13:34:49 +0100 <Cheery> lortabac: ok, I'm not sure if I figured what you mean, but I'll try this.
2020-11-06 13:35:15 +0100joaj(~joaj@2001:690:2100:1b:a36f:f7ab:d46c:98f0) (Ping timeout: 244 seconds)
2020-11-06 13:35:21 +0100 <merijn> Cheery: The solution is to not build ((),a) in the first place if 'a' is what you want
2020-11-06 13:35:24 +0100 <kuribastard> Cheery: I don't get why you would need types for this.
2020-11-06 13:35:39 +0100 <kuribastard> Cheery: If I need something more typed and complicated, I would use parsec.
2020-11-06 13:37:32 +0100joaj(~joaj@2001:690:2100:110:cceb:227c:edbc:592c)
2020-11-06 13:38:26 +0100 <lortabac> Cheery: if you need help you can ping me
2020-11-06 13:38:40 +0100 <kuribastard> Cheery: and if the interface provided by the regex library is not convenient, you just create your wrapper on top of it.
2020-11-06 13:39:36 +0100 <lortabac> Cheery: TBH I don't know whether this is a good idea or not, I just wanted to say that it's technically possible
2020-11-06 13:40:09 +0100christo(~chris@81.96.113.213)
2020-11-06 13:41:05 +0100 <Cheery> lortabac: well it may be easier to see that once done.. I want to try this. Ok. I start.
2020-11-06 13:41:56 +0100 <Cheery> Ok, so lets take a simpler version of Trim that produces the problem. I think it's enough to take the pair.
2020-11-06 13:42:30 +0100hackagecachix 0.5.0 - Command line client for Nix binary cache hosting https://cachix.org https://hackage.haskell.org/package/cachix-0.5.0 (domenkozar)
2020-11-06 13:43:43 +0100alp(~alp@2a01:e0a:58b:4920:9450:d534:53a8:2e84)
2020-11-06 13:43:50 +0100grimgnr(~user@94.19.246.43)
2020-11-06 13:45:17 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 13:45:53 +0100texasmynsted(~texasmyns@097-085-244-180.biz.spectrum.com)
2020-11-06 13:46:00 +0100hackagecompdoc-dhall-decoder 0.2.0.0 - Allows you to write FromDhall instances for Compdoc https://hackage.haskell.org/package/compdoc-dhall-decoder-0.2.0.0 (locallycompact)
2020-11-06 13:46:04 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 13:47:47 +0100argent0(~argent0@168.227.98.82)
2020-11-06 13:48:52 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 13:49:10 +0100 <Cheery> lortabac: now I have data Aux = DropLeft | DropRight | KeepBoth | Keep, and type family TrimAux a that maps inputs of Trim to Aux
2020-11-06 13:50:33 +0100 <lortabac> Cheery: I think you need to include the arguments as well
2020-11-06 13:50:50 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 260 seconds)
2020-11-06 13:51:05 +0100 <Cheery> you mean it needs to be a GADT?
2020-11-06 13:51:16 +0100 <lortabac> something like data Aux a b = Dropleft a | DropRight a etc.
2020-11-06 13:51:20 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 13:51:35 +0100 <lortabac> otherwise you would lose information
2020-11-06 13:51:42 +0100christo(~chris@81.96.113.213)
2020-11-06 13:52:23 +0100pera(~pera@unaffiliated/pera)
2020-11-06 13:52:54 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2020-11-06 13:53:37 +0100 <lortabac> TrimAux is identical to Trim on the LHS, but returns an Aux on the RHS
2020-11-06 13:53:46 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 13:53:51 +0100 <merijn> Cheery: Basically you can't pick "what function implementation to use" based on the type, so having a type family compute the right type doesn't let you magically specify the right logic to implement said function
2020-11-06 13:54:14 +0100 <merijn> (well, you can pick implementation based on types...when you use a typeclass)
2020-11-06 13:55:09 +0100watt570(~watt570@124.123.105.19) (Ping timeout: 256 seconds)
2020-11-06 13:55:30 +0100hackageHsOpenSSL 0.11.5.1 - Partial OpenSSL binding for Haskell https://hackage.haskell.org/package/HsOpenSSL-0.11.5.1 (VladimirShabanov)
2020-11-06 13:56:01 +0100 <lortabac> then each class instance matches one of Aux's constructors and mimic Trim's behavior at value level
2020-11-06 13:56:07 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 258 seconds)
2020-11-06 13:56:08 +0100 <merijn> Is there a way to make executables (of Haskell dependencies) available at runtime?
2020-11-06 13:56:10 +0100 <Cheery> lortabac: how about the typeclass? class Foo (a::Aux)
2020-11-06 13:56:29 +0100 <Cheery> hmm..
2020-11-06 13:56:32 +0100cinimod_(uid93893@gateway/web/irccloud.com/x-iwnddlwwokzrvwhq)
2020-11-06 13:57:14 +0100brisbin(~patrick@pool-173-49-158-4.phlapa.fios.verizon.net)
2020-11-06 13:57:53 +0100Sanchayan(~Sanchayan@223.226.118.59) (Ping timeout: 260 seconds)
2020-11-06 13:58:39 +0100 <lortabac> in general you need a very good reason to go through all this painful contorsion, I have only every needed this trick when implementing Servant extensions
2020-11-06 13:59:15 +0100cinimod_(uid93893@gateway/web/irccloud.com/x-iwnddlwwokzrvwhq) (Client Quit)
2020-11-06 13:59:43 +0100cinimod_(uid93893@gateway/web/irccloud.com/x-ohfubecfiwfffiip)
2020-11-06 14:00:51 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 14:01:24 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 14:01:45 +0100brisbin(~patrick@pool-173-49-158-4.phlapa.fios.verizon.net) (Ping timeout: 240 seconds)
2020-11-06 14:02:08 +0100 <tomsmeding> Cheery: not sure if it's relevant for you, but I was reading a paper and saw a reference, and recalled how you'd been talking here today about typed regular expressions
2020-11-06 14:02:12 +0100 <tomsmeding> https://github.com/sweirich/dth/tree/master/regexp exists
2020-11-06 14:02:44 +0100 <tomsmeding> note also the popl17 talk apparently
2020-11-06 14:04:04 +0100raichoo(~raichoo@213.240.178.58)
2020-11-06 14:04:26 +0100acarrico(~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
2020-11-06 14:05:12 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 2.9)
2020-11-06 14:05:18 +0100 <Cheery> tomsmeding: thanks. I will look in.
2020-11-06 14:05:26 +0100 <kuribastard> merijn: does haxl support mutating queries?
2020-11-06 14:06:13 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 14:06:26 +0100 <Cheery> lortabac: is there a text I can read about this one? I mean, it's data in a typeclass.
2020-11-06 14:06:48 +0100 <Cheery> Foo Nil, Foo (Cons x y) etc...
2020-11-06 14:06:55 +0100 <lortabac> the GHC user guide -- DataKinds chapter
2020-11-06 14:09:22 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2020-11-06 14:09:25 +0100 <jophish> merijn: using Nix?
2020-11-06 14:10:37 +0100 <bqv> ^
2020-11-06 14:10:57 +0100Sanchayan(~Sanchayan@223.226.118.59)
2020-11-06 14:11:05 +0100Rudd0(~Rudd0@185.189.115.98) (Ping timeout: 240 seconds)
2020-11-06 14:11:30 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection)
2020-11-06 14:11:54 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-06 14:12:37 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-11-06 14:12:46 +0100 <Cheery> lortabac: once I have what you proposed me to make, how would I use it?
2020-11-06 14:13:00 +0100hackagediscord-register 0.0.1 - Discord verification bot https://hackage.haskell.org/package/discord-register-0.0.1 (HughSipiere)
2020-11-06 14:13:03 +0100wwwww(~wwwww@unaffiliated/wwwww) (Ping timeout: 260 seconds)
2020-11-06 14:13:07 +0100 <Cheery> to implement trim :: a -> Trim a, and fill :: Trim a -> a.
2020-11-06 14:13:17 +0100christo(~chris@81.96.113.213)
2020-11-06 14:14:24 +0100 <jophish> Cheery: I haven't been paying attention, but is Trim a bijection?
2020-11-06 14:14:49 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 14:14:53 +0100wwwww(~wwwww@unaffiliated/wwwww)
2020-11-06 14:15:50 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 14:15:52 +0100AlterEgo-(~ladew@124-198-158-163.dynamic.caiway.nl)
2020-11-06 14:16:18 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 14:16:28 +0100 <Cheery> jophish: nope. The idea is to take a type built from algebraic elements, and produce a corresponding type with no units in it.
2020-11-06 14:16:42 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection)
2020-11-06 14:16:42 +0100 <lortabac> I don't know what 'fill' is supposed to do, but 'trim' should become a method of the class
2020-11-06 14:17:07 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-06 14:17:09 +0100 <Cheery> ok, lets forget about 'fill' for a moment then, and look at the trim.
2020-11-06 14:17:12 +0100 <jophish> Cheery: ok, so would fill be :: a -> ((), a) or :: a -> (a, ())
2020-11-06 14:17:18 +0100 <jophish> (or any other of the infinity options)
2020-11-06 14:17:36 +0100 <Cheery> jophish: yup.
2020-11-06 14:17:38 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 14:17:39 +0100 <lortabac> instance Trim ('DropLeft a) where trim ((), a) = a
2020-11-06 14:17:44 +0100 <lortabac> etc.
2020-11-06 14:17:53 +0100 <jophish> Ah I see
2020-11-06 14:18:13 +0100 <lortabac> maybe I got some details wrong, but I hope you get the idea
2020-11-06 14:18:21 +0100 <jophish> Yeah, I get the gist of it
2020-11-06 14:18:28 +0100 <merijn> jophish: No, not using Nix, because the goal is have this be usable by actual mortals :)
2020-11-06 14:18:43 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 14:20:20 +0100 <jophish> merijn: perhaps then you could do some custom setup stuff to call cabal install to put the dependency binaries in some install location?
2020-11-06 14:20:23 +0100 <lortabac> Cheery: upon reflection, the arguments in Aux's constructors are probably useless, because 'trim' behaves the same whatever the type
2020-11-06 14:20:55 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Remote host closed the connection)
2020-11-06 14:21:10 +0100urodna(~urodna@unaffiliated/urodna)
2020-11-06 14:21:15 +0100knupfer(~Thunderbi@200116b82c0fb10034b9f47ce3eda41d.dip.versatel-1u1.de)
2020-11-06 14:22:31 +0100hackagepatch 0.0.3.2 - Data structures for describing changes to other data structures. https://hackage.haskell.org/package/patch-0.0.3.2 (abrar)
2020-11-06 14:22:56 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 14:23:08 +0100 <lortabac> Cheery: which means you'll probably need AllowAmbiguousTypes and TypeApplications
2020-11-06 14:23:16 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 14:23:33 +0100 <lortabac> as I said, it requires a lot of boilerplate
2020-11-06 14:23:44 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com)
2020-11-06 14:24:21 +0100unfo-(~unfo-@162.219.176.3)
2020-11-06 14:24:28 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com) (Remote host closed the connection)
2020-11-06 14:24:37 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 14:25:03 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 14:25:50 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 14:26:00 +0100 <Cheery> this looks fun.
2020-11-06 14:26:38 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-06 14:27:41 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:7cc2:21a2:16c3:f6f6)
2020-11-06 14:27:43 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com)
2020-11-06 14:27:45 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 240 seconds)
2020-11-06 14:27:52 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 14:27:56 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 265 seconds)
2020-11-06 14:29:14 +0100texasmynsted(~texasmyns@097-085-244-180.biz.spectrum.com) (Remote host closed the connection)
2020-11-06 14:29:17 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-06 14:30:12 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 14:30:36 +0100 <Cheery> Right now it says that it can't deduce (x::Aux) from the method declaration
2020-11-06 14:31:08 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 14:31:32 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 14:31:59 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 14:32:27 +0100unfo-(~unfo-@162.219.176.3) (Remote host closed the connection)
2020-11-06 14:32:58 +0100 <Cheery> adding a "proxy" helped. :)
2020-11-06 14:33:10 +0100mdunnio(~mdunnio@208.59.170.5) (Ping timeout: 272 seconds)
2020-11-06 14:33:26 +0100cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9)
2020-11-06 14:34:54 +0100 <lortabac> yes, if you use proxies you don't need AllowAmbiguousTypes and TypeApplications
2020-11-06 14:40:47 +0100 <jollygood2> I need line graph on a web page, ideally the kind that lets you see arbitrary points by hovering a mouse over it. any recommendations?
2020-11-06 14:41:19 +0100 <Cheery> that kind of thing, I still didn't get it through, but I continue later: https://bpa.st/TYMQ
2020-11-06 14:42:01 +0100 <Cheery> lortabac: thanks for help, there's bit more tools to try. I think I understand the problem in the "simple" way to do this though.
2020-11-06 14:42:19 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr) (Remote host closed the connection)
2020-11-06 14:42:44 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr)
2020-11-06 14:42:51 +0100 <Cheery> when I try to create the instance (F a, F b) => F (a,b), it's unable to figure out whether to use this instance on ((),b) or not.
2020-11-06 14:43:54 +0100 <ski> they overlap
2020-11-06 14:44:16 +0100 <Cheery> the closed type family does not "figure" it out, but it waits until Trim (a,b) resolves either a or b
2020-11-06 14:44:50 +0100 <ski> try using only the former, but see if you can check if `Trim a' or `Trim b' is `()', and if so, then `Trim (a,b)' should be the other one
2020-11-06 14:45:27 +0100 <ski> hm
2020-11-06 14:45:27 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2020-11-06 14:45:34 +0100FreeBirdLjj(~freebirdl@101.228.42.108)
2020-11-06 14:47:00 +0100obihann(~jhann@156.34.160.69) (Remote host closed the connection)
2020-11-06 14:47:03 +0100texasmynsted(~texasmyns@097-085-244-180.biz.spectrum.com)
2020-11-06 14:47:21 +0100 <lortabac> Cheery: if you use my workaround, the instances are only selected on Aux, where they never overlap
2020-11-06 14:47:38 +0100 <lortabac> there are no instances (a, b) etc.
2020-11-06 14:47:44 +0100FreeBird_(~freebirdl@101.228.42.108)
2020-11-06 14:48:00 +0100 <lortabac> in fact that's the whole point of this trick
2020-11-06 14:48:02 +0100drbean(~drbean@TC210-63-209-142.static.apol.com.tw) (Ping timeout: 264 seconds)
2020-11-06 14:48:16 +0100LKoen(~LKoen@53.253.88.92.rev.sfr.net)
2020-11-06 14:48:27 +0100Tario(~Tario@201.192.165.173)
2020-11-06 14:49:22 +0100machinedgod(~machinedg@207.253.244.210)
2020-11-06 14:49:58 +0100FreeBirdLjj(~freebirdl@101.228.42.108) (Ping timeout: 256 seconds)
2020-11-06 14:50:23 +0100brisbin(~patrick@pool-173-49-158-4.phlapa.fios.verizon.net)
2020-11-06 14:50:35 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:7cc2:21a2:16c3:f6f6) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 14:53:25 +0100mmohammadi9812(~mmohammad@188.210.99.150) (Ping timeout: 240 seconds)
2020-11-06 14:54:30 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr) (Quit: Konversation terminated!)
2020-11-06 14:54:45 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr)
2020-11-06 14:55:32 +0100livvy(~livvy@gateway/tor-sasl/livvy)
2020-11-06 14:55:47 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net) (Quit: Goodbye!)
2020-11-06 14:56:24 +0100SupaYoshi(~supayoshi@213-10-140-13.fixed.kpn.net)
2020-11-06 15:02:25 +0100mmohammadi9812(~mmohammad@188.210.99.150)
2020-11-06 15:02:50 +0100hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net)
2020-11-06 15:03:41 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-06 15:09:00 +0100hackagebytebuild 0.3.7.0 - Serialize to a small byte arrays https://hackage.haskell.org/package/bytebuild-0.3.7.0 (andrewthad)
2020-11-06 15:09:01 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2020-11-06 15:09:27 +0100wkane__(~wkane@host-80-180-11-39.pool80180.interbusiness.it)
2020-11-06 15:09:50 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl) (Remote host closed the connection)
2020-11-06 15:11:10 +0100coot(~coot@37.30.49.253.nat.umts.dynamic.t-mobile.pl)
2020-11-06 15:12:11 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 15:12:57 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 15:13:50 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 15:16:05 +0100elliott_(~elliott_@pool-108-51-141-12.washdc.fios.verizon.net)
2020-11-06 15:17:26 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62)
2020-11-06 15:19:40 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 15:24:13 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 15:24:17 +0100argent0(~argent0@168.227.98.82) (Ping timeout: 258 seconds)
2020-11-06 15:27:02 +0100argent0(~argent0@168.227.98.82)
2020-11-06 15:30:07 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 15:30:30 +0100hackagereflex-vty 0.1.4.1 - Reflex FRP host and widgets for VTY applications https://hackage.haskell.org/package/reflex-vty-0.1.4.1 (abrar)
2020-11-06 15:31:14 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 15:31:40 +0100 <merijn> oooh, that sounds cool
2020-11-06 15:32:36 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Client Quit)
2020-11-06 15:35:18 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be) (Ping timeout: 260 seconds)
2020-11-06 15:36:04 +0100christo(~chris@81.96.113.213)
2020-11-06 15:37:05 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 15:37:21 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be)
2020-11-06 15:37:36 +0100mdunnio(~mdunnio@208.59.170.5)
2020-11-06 15:39:48 +0100st8less(~st8less@2603:a060:11fd:0:eda9:20b2:c735:3ae0)
2020-11-06 15:40:23 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2020-11-06 15:40:42 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 15:41:09 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 15:41:12 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 15:41:34 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-06 15:41:44 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 15:41:55 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 15:42:00 +0100hackagemiv 0.4.4 - Vim plugin manager written in Haskell https://hackage.haskell.org/package/miv-0.4.4 (itchyny)
2020-11-06 15:42:30 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 15:42:41 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 15:42:55 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds)
2020-11-06 15:43:10 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 15:43:28 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 15:44:18 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 265 seconds)
2020-11-06 15:46:00 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Client Quit)
2020-11-06 15:46:04 +0100mmohammadi9812(~mmohammad@188.210.99.150) (Ping timeout: 246 seconds)
2020-11-06 15:47:31 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 15:48:29 +0100Gurkenglas__(~Gurkengla@unaffiliated/gurkenglas)
2020-11-06 15:49:22 +0100jonatanb(~jonatanb@83.24.9.26.ipv4.supernova.orange.pl)
2020-11-06 15:49:41 +0100phaazon(~phaazon@2001:41d0:a:fe76::1) (Ping timeout: 272 seconds)
2020-11-06 15:50:57 +0100mmohammadi9812(~mmohammad@188.210.99.150)
2020-11-06 15:51:14 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Ping timeout: 260 seconds)
2020-11-06 15:51:20 +0100phaazon(~phaazon@ns378376.ip-5-196-95.eu)
2020-11-06 15:52:06 +0100britva(~britva@2a02:aa13:7240:2980:80a0:64f3:77d6:a0d0)
2020-11-06 15:52:14 +0100alx741(~alx741@181.196.69.190) (Ping timeout: 256 seconds)
2020-11-06 15:52:17 +0100Wojciech_K(~wojciechk@2001:41d0:a:5be4::449)
2020-11-06 15:53:07 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 15:54:29 +0100marble_visions(~user@68.183.79.8) (Quit: bye)
2020-11-06 15:55:05 +0100mmohammadi9812(~mmohammad@188.210.99.150) (Ping timeout: 240 seconds)
2020-11-06 15:55:21 +0100marble_visions(~user@68.183.79.8)
2020-11-06 15:56:54 +0100kritzefitz_(~kritzefit@212.86.56.80)
2020-11-06 15:59:39 +0100kritzefitz(~kritzefit@fw-front.credativ.com) (Remote host closed the connection)
2020-11-06 16:00:01 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-11-06 16:00:23 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be)
2020-11-06 16:02:18 +0100mmohammadi9812(~mmohammad@188.210.99.150)
2020-11-06 16:02:54 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd)
2020-11-06 16:03:52 +0100britva(~britva@2a02:aa13:7240:2980:80a0:64f3:77d6:a0d0) (Quit: This computer has gone to sleep)
2020-11-06 16:03:58 +0100cosimone(~cosimone@2001:b07:ae5:db26:d849:743b:370b:b3cd) (Client Quit)
2020-11-06 16:04:29 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 16:05:15 +0100alx741(~alx741@186.178.110.222)
2020-11-06 16:05:27 +0100isBEKaml(~isBEKaml@unaffiliated/isbekaml)
2020-11-06 16:05:31 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 16:05:38 +0100bqv(~bqv@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 2.9)
2020-11-06 16:05:57 +0100 <isBEKaml> Hello, I was looking for ghcup and was a little surprised to _not_ see it listed among the Downloads on haskell.org
2020-11-06 16:06:00 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2020-11-06 16:06:05 +0100 <isBEKaml> Is that not officially supported anymore?
2020-11-06 16:06:22 +0100 <isBEKaml> https://www.haskell.org/downloads/
2020-11-06 16:06:34 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 16:07:12 +0100aldessa(~hugh@host-92-21-7-179.as13285.net)
2020-11-06 16:07:12 +0100 <merijn> Define officially supported
2020-11-06 16:07:33 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 16:07:35 +0100 <merijn> I'm not sure it ever was on there?
2020-11-06 16:07:40 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2020-11-06 16:07:55 +0100 <merijn> https://www.haskell.org/ghcup/
2020-11-06 16:08:01 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 16:08:01 +0100 <isBEKaml> merijn: if it's listed on https://www.haskell.org/ghcup/ under the domain haskell.org - it is :-)
2020-11-06 16:08:04 +0100 <merijn> Probably someone should updat ethe downloads page
2020-11-06 16:08:46 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr) (Remote host closed the connection)
2020-11-06 16:09:11 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr)
2020-11-06 16:09:39 +0100 <aldessa> Hi, when programming FPGAs in Clash what would be the best way to formally verify properties of the thing you compile?
2020-11-06 16:10:02 +0100 <merijn> aldessa: Whiskey and crying are my favourite methods :>
2020-11-06 16:10:14 +0100justanotheruser(~justanoth@unaffiliated/justanotheruser)
2020-11-06 16:10:22 +0100gilbertw1_(~gilbertw1@ec2-52-91-154-1.compute-1.amazonaws.com) (Ping timeout: 256 seconds)
2020-11-06 16:10:34 +0100 <aldessa> merijn, lockdown is hitting hard I see
2020-11-06 16:10:41 +0100 <isBEKaml> also, ghcup pollutes my home dir. It doesn't respect XDG_HOME_DIR :-(
2020-11-06 16:10:51 +0100 <merijn> aldessa: You might wanna try #clash-lang
2020-11-06 16:11:03 +0100 <aldessa> thanks merijn
2020-11-06 16:11:03 +0100 <int-e> merijn: 90% proof spirit?
2020-11-06 16:11:25 +0100 <merijn> isBEKaml: If you are super pedantic about how you organise your environment you can just grab the GHC bin dists and cabal yourself and leave them wherever you want
2020-11-06 16:11:26 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-06 16:11:46 +0100 <merijn> isBEKaml: https://www.haskell.org/ghc/download_ghc_8_10_2.html#binaries
2020-11-06 16:11:55 +0100 <aldessa> ghcup auto installs haskell language server which is pretty great
2020-11-06 16:12:54 +0100 <merijn> isBEKaml: Both GHC and cabal are "good citizens" in terms of multiple versions playing nicely together
2020-11-06 16:13:38 +0100 <merijn> isBEKaml: Personally I just manually install multiple GHC bin dists in $HOME myself, because I'm a grumpy curmudgeon who dislikes tools dictating my environment :p
2020-11-06 16:14:30 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Ping timeout: 258 seconds)
2020-11-06 16:14:41 +0100toorevitimirp(~tooreviti@117.182.183.132) (Remote host closed the connection)
2020-11-06 16:14:43 +0100 <isBEKaml> merijn: I install compiled tools into ~/bin myself and don't want to go searching for tools where I don't look in
2020-11-06 16:15:52 +0100 <aldessa> why not .bin?
2020-11-06 16:16:01 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 16:16:55 +0100alp(~alp@2a01:e0a:58b:4920:9450:d534:53a8:2e84) (Ping timeout: 272 seconds)
2020-11-06 16:16:59 +0100 <isBEKaml> just my preference
2020-11-06 16:18:41 +0100Gunni1(~Gunni@154.13.1.56)
2020-11-06 16:18:53 +0100FreeBird_(~freebirdl@101.228.42.108) (Remote host closed the connection)
2020-11-06 16:19:21 +0100 <aldessa> that's fair
2020-11-06 16:20:07 +0100Bergle_2(~Bergle_4@101.165.90.119)
2020-11-06 16:20:30 +0100conal(~conal@64.71.133.70)
2020-11-06 16:22:05 +0100Bergle_3(~Bergle_4@101.165.90.119) (Ping timeout: 240 seconds)
2020-11-06 16:22:31 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net) (Remote host closed the connection)
2020-11-06 16:22:32 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 16:22:59 +0100Codaraxis(~Codaraxis@ip68-5-90-227.oc.oc.cox.net)
2020-11-06 16:23:02 +0100Sgeo(~Sgeo@ool-18b982ad.dyn.optonline.net)
2020-11-06 16:23:42 +0100 <merijn> You'd at least need a corresponding /lib directory too
2020-11-06 16:23:49 +0100 <merijn> GHC isn't just an exectuable
2020-11-06 16:24:29 +0100 <isBEKaml> I dump everything into a separate pkgs directory and symlink the bins into ~/bin
2020-11-06 16:24:50 +0100 <isBEKaml> so pkgs/ghc/bin/ghc gets symlinked into ~/bin/ghc
2020-11-06 16:25:05 +0100 <isBEKaml> no more fudging with paths
2020-11-06 16:25:39 +0100oioi6912730(~raz1828@8afbda67.st-andrews.ac.uk)
2020-11-06 16:29:02 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2020-11-06 16:29:25 +0100da39a3ee5e6b4b0d(~textual@cm-171-98-73-201.revip7.asianet.co.th) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 16:30:07 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-11-06 16:31:10 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be) (Quit: WeeChat 2.9)
2020-11-06 16:31:26 +0100oioi6912730(~raz1828@8afbda67.st-andrews.ac.uk) (Quit: Leaving)
2020-11-06 16:31:29 +0100joaj(~joaj@2001:690:2100:110:cceb:227c:edbc:592c) (Ping timeout: 272 seconds)
2020-11-06 16:31:57 +0100nados(~dan@69-165-210-185.cable.teksavvy.com)
2020-11-06 16:33:15 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl) (Remote host closed the connection)
2020-11-06 16:33:22 +0100joaj(~joaj@2001:690:2100:110:cceb:227c:edbc:592c)
2020-11-06 16:34:27 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl)
2020-11-06 16:35:26 +0100Kaivo(~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) (Ping timeout: 264 seconds)
2020-11-06 16:36:24 +0100zariuq(~zar@fw1.ciirc.cvut.cz) (Quit: Leaving)
2020-11-06 16:36:51 +0100 <merijn> Anyone know if the hackage matrix builder has an RSS feed somewhere? I suspect not?
2020-11-06 16:37:59 +0100Kaivo(~Kaivo@104-200-86-99.mc.derytele.com)
2020-11-06 16:38:37 +0100conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2020-11-06 16:38:51 +0100oioi6912730(~raz@8afbda67.st-andrews.ac.uk)
2020-11-06 16:38:55 +0100Sanchayan(~Sanchayan@223.226.118.59) (Quit: leaving)
2020-11-06 16:39:43 +0100jcowan(sid325434@gateway/web/irccloud.com/x-evadozowlzlhtjmy) ()
2020-11-06 16:39:50 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 256 seconds)
2020-11-06 16:40:30 +0100hackagereflex 0.8.0.0 - Higher-order Functional Reactive Programming https://hackage.haskell.org/package/reflex-0.8.0.0 (abrar)
2020-11-06 16:40:34 +0100vevercakveverak
2020-11-06 16:43:04 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 16:43:33 +0100 <oioi6912730> hi! small qn about mail libraries
2020-11-06 16:44:04 +0100 <oioi6912730> would anybody know of any libs to fetch with IMAP and/or interact with maildir folders
2020-11-06 16:44:45 +0100 <oioi6912730> I haven't been able to find anything still maintained for IMAP from google/hackage
2020-11-06 16:45:06 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 16:46:15 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-06 16:46:23 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 16:46:28 +0100bitmapper(uid464869@gateway/web/irccloud.com/x-ixbzhzypphotnxrx)
2020-11-06 16:48:04 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-06 16:48:14 +0100argent0(~argent0@168.227.98.82) (Ping timeout: 258 seconds)
2020-11-06 16:52:10 +0100dyeplexer(~lol@unaffiliated/terpin)
2020-11-06 16:52:15 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-06 16:52:29 +0100pavonia(~user@unaffiliated/siracusa)
2020-11-06 16:53:28 +0100 <absence> i have some code that compiles until i enable TypeFamilies. anyone knows what's wrong, and what i have to change to make it work? https://repl.it/repls/SickConstantComputergraphics
2020-11-06 16:54:03 +0100Inoperable(~PLAYER_1@fancydata.science) (Quit: All your buffer are belong to us!)
2020-11-06 16:54:04 +0100argent0(~argent0@168.227.98.82)
2020-11-06 16:54:06 +0100conal(~conal@64.71.133.70)
2020-11-06 16:54:11 +0100 <merijn> Well, what's the error?
2020-11-06 16:55:34 +0100 <merijn> Unrelatedly: also note that you can never do anything useful with SomeRecord's contents
2020-11-06 16:56:01 +0100 <absence> merijn: click the run button
2020-11-06 16:56:03 +0100 <dolio> It's because TypeFamilies turns on MonoLocalBinds, I think.
2020-11-06 16:56:19 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 265 seconds)
2020-11-06 16:56:31 +0100 <dolio> So 'test' must be monomorphic, but nothing determines its type.
2020-11-06 16:56:34 +0100 <absence> merijn: also this code is just some garbage i threw together to reproduce the error :)
2020-11-06 16:56:47 +0100 <absence> dolio: oh!
2020-11-06 16:57:13 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr) (Remote host closed the connection)
2020-11-06 16:57:23 +0100 <absence> dolio: i think i've been bitten by that before...
2020-11-06 16:57:30 +0100alp(~alp@2a01:e0a:58b:4920:3118:5dff:6f5a:9656)
2020-11-06 16:57:39 +0100todda7(~torstein@ppp-2-84-30-242.home.otenet.gr)
2020-11-06 16:58:30 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be)
2020-11-06 16:58:34 +0100 <dolio> That's not exactly what the error says, but if I put NoMonoLocalBinds in the language pragma, it works.
2020-11-06 16:58:52 +0100conal(~conal@64.71.133.70) (Ping timeout: 246 seconds)
2020-11-06 16:59:28 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 16:59:33 +0100 <absence> dolio: is there a good reason why it enables MonoLocalBinds? i.e. should i just disable it, or change the code to work when it's enabled?
2020-11-06 17:00:00 +0100joaj(~joaj@2001:690:2100:110:cceb:227c:edbc:592c) (Remote host closed the connection)
2020-11-06 17:00:02 +0100vicfred(~vicfred@unaffiliated/vicfred)
2020-11-06 17:00:23 +0100joaj(~joaj@2001:690:2100:1b:a36f:f7ab:d46c:98f0)
2020-11-06 17:00:24 +0100Kaiepi(~Kaiepi@nwcsnbsc03w-47-55-225-82.dhcp-dynamic.fibreop.nb.bellaliant.net)
2020-11-06 17:00:27 +0100 <dolio> I think it makes inference more feasible for type family related stuff.
2020-11-06 17:00:28 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 17:00:28 +0100Rudd0(~Rudd0@185.189.115.103)
2020-11-06 17:00:33 +0100conal(~conal@198.8.81.71)
2020-11-06 17:03:58 +0100ddellaco1(dd@gateway/vpn/mullvad/ddellacosta)
2020-11-06 17:04:12 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 17:04:39 +0100isBEKaml(~isBEKaml@unaffiliated/isbekaml) (Quit: leaving)
2020-11-06 17:05:08 +0100vilpan(~0@212.117.1.172)
2020-11-06 17:06:09 +0100Chi1thangoo(~Chi1thang@87.112.60.168)
2020-11-06 17:06:57 +0100 <absence> dolio: i see, thanks!
2020-11-06 17:07:06 +0100Inoperable(~PLAYER_1@fancydata.science)
2020-11-06 17:07:21 +0100jonathanx(~jonathan@dyn-8-sc.cdg.chalmers.se) (Remote host closed the connection)
2020-11-06 17:07:25 +0100Kaivo(~Kaivo@104-200-86-99.mc.derytele.com) (Ping timeout: 264 seconds)
2020-11-06 17:08:48 +0100avdb(~avdb@ip-83-134-202-202.dsl.scarlet.be) (Ping timeout: 256 seconds)
2020-11-06 17:09:42 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 17:09:45 +0100Kaivo(~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com)
2020-11-06 17:09:50 +0100bennofs1(~benno@dslb-094-222-063-208.094.222.pools.vodafone-ip.de)
2020-11-06 17:10:17 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 17:10:29 +0100Lord_of_Life_Lord_of_Life
2020-11-06 17:14:40 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-06 17:15:17 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Quit: vfaronov)
2020-11-06 17:15:33 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-06 17:15:54 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-06 17:17:00 +0100hackagereflex-fsnotify 0.2.1.2 - Reflex FRP interface for watching files https://hackage.haskell.org/package/reflex-fsnotify-0.2.1.2 (abrar)
2020-11-06 17:18:35 +0100slack1256(~slack1256@191.126.150.2)
2020-11-06 17:19:48 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit)
2020-11-06 17:19:53 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2020-11-06 17:20:02 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-06 17:21:26 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 17:21:46 +0100argent0(~argent0@168.227.98.82) (Ping timeout: 256 seconds)
2020-11-06 17:22:51 +0100tomboy64(~tomboy64@gateway/tor-sasl/tomboy64) (Remote host closed the connection)
2020-11-06 17:23:37 +0100tomboy64(~tomboy64@gateway/tor-sasl/tomboy64)
2020-11-06 17:24:07 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 17:24:13 +0100Amras(~Amras@unaffiliated/amras0000)
2020-11-06 17:24:31 +0100hackagereflex-process 0.3.1.0 - Reflex FRP interface for running system processes https://hackage.haskell.org/package/reflex-process-0.3.1.0 (abrar)
2020-11-06 17:25:34 +0100toorevitimirp(~tooreviti@117.182.183.132)
2020-11-06 17:25:41 +0100acidjnk_new2(~acidjnk@p200300d0c718f650b06a22fed16a11d3.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 17:25:57 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 17:26:12 +0100slack1256(~slack1256@191.126.150.2) (Ping timeout: 244 seconds)
2020-11-06 17:26:12 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 244 seconds)
2020-11-06 17:29:14 +0100bennofs1(~benno@dslb-094-222-063-208.094.222.pools.vodafone-ip.de) (Ping timeout: 260 seconds)
2020-11-06 17:29:21 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 17:32:04 +0100scasc(~szabi@213142096120.public.telering.at)
2020-11-06 17:32:28 +0100o1lo01ol1o(~o1lo01ol1@bl8-213-81.dsl.telepac.pt) (Remote host closed the connection)
2020-11-06 17:32:55 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 17:33:05 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-mmieyeuehrtlbhkm)
2020-11-06 17:34:10 +0100pera(~pera@unaffiliated/pera)
2020-11-06 17:36:30 +0100hackagepersistent-test 2.0.3.5 - Tests for Persistent https://hackage.haskell.org/package/persistent-test-2.0.3.5 (parsonsmatt)
2020-11-06 17:37:30 +0100hackagereflex-dom-core 0.6.1.0 - Functional Reactive Web Apps with Reflex https://hackage.haskell.org/package/reflex-dom-core-0.6.1.0 (abrar)
2020-11-06 17:37:48 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 17:38:37 +0100alp(~alp@2a01:e0a:58b:4920:3118:5dff:6f5a:9656) (Ping timeout: 272 seconds)
2020-11-06 17:38:51 +0100alp(~alp@2a01:e0a:58b:4920:3c79:643f:783c:9d58)
2020-11-06 17:39:37 +0100toorevitimirp(~tooreviti@117.182.183.132) (Remote host closed the connection)
2020-11-06 17:40:31 +0100hackagereflex-ghci 0.1.5.1 - A GHCi widget library for use in reflex applications https://hackage.haskell.org/package/reflex-ghci-0.1.5.1 (abrar)
2020-11-06 17:41:04 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 17:42:10 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 17:42:47 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-06 17:43:03 +0100jonatanb(~jonatanb@83.24.9.26.ipv4.supernova.orange.pl) (Quit: Leaving...)
2020-11-06 17:43:30 +0100hackagereflex-dom 0.6.1.0 - Functional Reactive Web Apps with Reflex https://hackage.haskell.org/package/reflex-dom-0.6.1.0 (abrar)
2020-11-06 17:44:08 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 17:44:33 +0100 <maerwald> merijn: next time someone asks about xdg: https://gitlab.haskell.org/haskell/ghcup-hs#xdg-support :p
2020-11-06 17:45:17 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Quit: vfaronov)
2020-11-06 17:45:34 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-06 17:45:39 +0100vfaronov(~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit)
2020-11-06 17:46:51 +0100Black(~Benett@unaffiliated/benett)
2020-11-06 17:47:37 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 17:48:55 +0100Benett(~Benett@unaffiliated/benett) (Ping timeout: 240 seconds)
2020-11-06 17:49:57 +0100kuribastard(~user@ptr-25vy0i8gjp0q1mdagcc.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2020-11-06 17:50:24 +0100BlackBenett
2020-11-06 17:51:49 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 17:51:52 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 17:54:35 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 17:58:27 +0100aarvar(~foewfoiew@c.24.56.239.179.static.broadstripe.net)
2020-11-06 18:01:05 +0100christo(~chris@81.96.113.213)
2020-11-06 18:01:05 +0100christo(~chris@81.96.113.213) (Remote host closed the connection)
2020-11-06 18:03:21 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 18:06:16 +0100christo(~chris@81.96.113.213)
2020-11-06 18:06:23 +0100aldessa(~hugh@host-92-21-7-179.as13285.net) (Remote host closed the connection)
2020-11-06 18:07:06 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2020-11-06 18:10:17 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 18:10:44 +0100wkane__(~wkane@host-80-180-11-39.pool80180.interbusiness.it) (Quit: Konversation terminated!)
2020-11-06 18:10:46 +0100christo(~chris@81.96.113.213) (Ping timeout: 260 seconds)
2020-11-06 18:11:09 +0100evanjs(~evanjs@075-129-188-019.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in)
2020-11-06 18:11:27 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 18:11:37 +0100scasc(~szabi@213142096120.public.telering.at) (Ping timeout: 264 seconds)
2020-11-06 18:12:21 +0100evanjs(~evanjs@075-129-188-019.res.spectrum.com)
2020-11-06 18:15:50 +0100twopoint718(~cjw@fsf/member/twopoint718) (Ping timeout: 256 seconds)
2020-11-06 18:16:23 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 18:17:44 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 18:20:18 +0100gattytto(b33e397e@179.62.57.126)
2020-11-06 18:20:23 +0100 <gattytto> hello :D
2020-11-06 18:21:27 +0100Aquazi(uid312403@gateway/web/irccloud.com/x-rydgrdgzszjcykfa) (Quit: Connection closed for inactivity)
2020-11-06 18:23:55 +0100chele(~chele@ip5b416ea2.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
2020-11-06 18:24:41 +0100 <gattytto> I'm having issues trying to build the test suite for github/haskell-servant/example-servant-minimal because of some errors in the test/AppSpec.hs file. https://gist.github.com/gattytto/a43c8ca49936c86a6f9ed68380118bf3
2020-11-06 18:25:00 +0100 <gattytto> can I get some help? I have already changed ServantError for ClientError as noted in the servant lib docs
2020-11-06 18:25:06 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 18:25:54 +0100conal(~conal@198.8.81.71)
2020-11-06 18:28:00 +0100dmwit(~dmwit@pool-108-28-166-212.washdc.fios.verizon.net) (Read error: Connection reset by peer)
2020-11-06 18:28:18 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2020-11-06 18:30:54 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 256 seconds)
2020-11-06 18:31:27 +0100ubert(~Thunderbi@p200300ecdf1e53aae6b318fffe838f33.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-11-06 18:31:48 +0100ubert(~Thunderbi@p200300ecdf1e5337e6b318fffe838f33.dip0.t-ipconnect.de)
2020-11-06 18:32:27 +0100joaj(~joaj@2001:690:2100:1b:a36f:f7ab:d46c:98f0) (Ping timeout: 272 seconds)
2020-11-06 18:33:38 +0100 <glguy> gattytto: https://hackage.haskell.org/package/servant-client-core-0.18.1/docs/Servant-Client-Core-ClientErro… says FailureResponses has two fields; you have only one in your error message snippet
2020-11-06 18:33:49 +0100 <glguy> FailureResponse (RequestF () (BaseUrl, ByteString)) Response
2020-11-06 18:33:53 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
2020-11-06 18:35:11 +0100 <gattytto> I'm trying to build the test suite that comes with the example project so I get those errors, does this mean the lib changed?
2020-11-06 18:36:13 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2020-11-06 18:36:23 +0100 <gattytto> this is the file https://gist.github.com/gattytto/5ae5f997d107d051a6a0e9875e654c82
2020-11-06 18:37:51 +0100 <glguy> gattytto: If it doesn't build then yeah the API changed and no one ran the example test suite since then
2020-11-06 18:38:32 +0100jakob_(~textual@p57b0eae0.dip0.t-ipconnect.de)
2020-11-06 18:39:08 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 18:40:01 +0100Deide(~Deide@217.155.19.23)
2020-11-06 18:40:47 +0100avdb(~avdb@ip-62-235-12-157.dsl.scarlet.be)
2020-11-06 18:41:38 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-06 18:42:26 +0100 <monochrom> Nice maerwald
2020-11-06 18:42:29 +0100howdoi(uid224@gateway/web/irccloud.com/x-zskrebdnslnraypo)
2020-11-06 18:42:31 +0100thir(~thir@pd9e1bd8a.dip0.t-ipconnect.de)
2020-11-06 18:44:21 +0100dmwit(~dmwit@pool-108-28-166-212.washdc.fios.verizon.net)
2020-11-06 18:47:13 +0100thir(~thir@pd9e1bd8a.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-11-06 18:47:36 +0100logo4poop(~logo4poop@leagueh.xyz)
2020-11-06 18:47:45 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 18:50:19 +0100 <gattytto> glguy: could you hint me on how to solve this? I'm very new to haskell so this is quite (very) advanced for me
2020-11-06 18:50:50 +0100 <glguy> afaik, servant is a pretty rough place to start if you're new to Haskell
2020-11-06 18:51:13 +0100 <maerwald> use scotty
2020-11-06 18:51:58 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 18:52:03 +0100 <gattytto> I'm trying to fix the test suite to include this project as a "demo" project for the inclusion of haskell to the Eclipse CHE web IDE
2020-11-06 18:53:23 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-06 18:53:52 +0100 <gattytto> for my personal learning curve I'm still reading books about haskell, not yet even tried writing any code outside of ghci prompt
2020-11-06 18:54:16 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 18:55:40 +0100 <monochrom> IMO servant is not for very new to Haskell.
2020-11-06 18:56:15 +0100 <monochrom> Hell, most of the web programming libraries, therefore web programming itself altogether, is not for very new to Haskell.
2020-11-06 18:57:37 +0100 <gattytto> yeah, I'm not trying to learn from it (I mean yeah but with no success), but I'm trying to add the project as a general over-look of haskell because not only newcommers to haskell will want to use this eclipse CHE ide so I thought it would be un-sufficient to add a hello world example to the ide
2020-11-06 18:58:10 +0100 <gattytto> this is the demo project you get to when you click on a "example stack" for haskell in the IDE home screen
2020-11-06 18:58:35 +0100hekkaidekapus{hekkaidekapus
2020-11-06 18:58:53 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 256 seconds)
2020-11-06 18:59:21 +0100 <geekosaur> you might do better to ask the servant folks to update their demo, telling them why
2020-11-06 18:59:26 +0100 <hekkaidekapus> gattytto: Could you provide a link to that IDE you’re talking about?
2020-11-06 19:00:01 +0100Gunni1(~Gunni@154.13.1.56) ()
2020-11-06 19:00:02 +0100 <gattytto> I have made an issue in their repo but it's been idling for more than a week so I thought to come here and maybe advanced users find it easier to fix the test suit
2020-11-06 19:00:10 +0100 <gattytto> hekkaidekapus yes che.openshift.io
2020-11-06 19:00:14 +0100nurupo(~nurupo.ga@unaffiliated/nurupo) (Quit: nurupo.ga)
2020-11-06 19:00:25 +0100nurupo(~nurupo.ga@unaffiliated/nurupo)
2020-11-06 19:00:39 +0100_xor(~xor@74.215.46.133) (Quit: WeeChat 2.9)
2020-11-06 19:00:48 +0100 <gattytto> you can make a free acount and get 7gb of ram and 2gb of disk to create projects, I'll share here now a devfile spec to get to the current workspace I'm working with
2020-11-06 19:00:48 +0100 <hekkaidekapus> Thanks. And another one for the issue report?
2020-11-06 19:00:55 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-06 19:00:58 +0100 <gattytto> https://github.com/haskell-servant/example-servant-minimal/issues/11
2020-11-06 19:00:59 +0100 <monochrom> IMO a short console application is sufficient.
2020-11-06 19:01:33 +0100 <monochrom> The purpose is to show how Haskell fits into Eclispe, not show off Haskell.
2020-11-06 19:02:35 +0100 <monochrom> If it needs to also show how to do dependencies on libraries on hackage, consider simply pulling in random and printing a few random numbers.
2020-11-06 19:02:40 +0100 <gattytto> actually my attempt is to provide a demo that uses all of the available functions that I included in the commit, like the debugging extension, code hints, peek definition and so on
2020-11-06 19:04:46 +0100 <monochrom> Printing a few random numbers can do that, too.
2020-11-06 19:05:08 +0100 <gattytto> hekkaidekapus if you create an account in che.openshift.io then you can go to this link che.openshift.io/f?url=https://raw.githubusercontent.com/gattytto/example-servant-minimal/8.8.4/devfile.yaml you get to the project
2020-11-06 19:05:12 +0100 <monochrom> Or do random permutation of a list if you need it longer and harder to debug.
2020-11-06 19:05:41 +0100 <monochrom> (and recursive)
2020-11-06 19:06:06 +0100 <hekkaidekapus> gattytto: You should follow the advice glguy and monochrom gave you. By the way, that CHE URL redirects to a login page and I gave up at that point. Also, there is a Haskell IDE community wherein people cooridnate their work at <https://github.com/haskell/haskell-language-server>.
2020-11-06 19:06:58 +0100 <monochrom> How long does it take to download servant (and its transitive dependency closure) and compile them all?
2020-11-06 19:07:00 +0100 <gattytto> yes hekkaidekaups it requires to have an account which is free
2020-11-06 19:07:09 +0100 <monochrom> I don't imagine it is any less than 30 seconds.
2020-11-06 19:07:14 +0100 <gattytto> well.. a couple minutes in openshift
2020-11-06 19:07:31 +0100 <gattytto> because the extensions work with docker image sidecars
2020-11-06 19:07:43 +0100 <monochrom> If I were to open up Eclipse for the first time and watch its Haskell demo, I am not going to wait 30 seconds for merely compiling.
2020-11-06 19:07:47 +0100 <gattytto> and I have built ghcide from source in the sidecar build process so it has the sources, it just builds them
2020-11-06 19:08:09 +0100 <hekkaidekapus> gattytto: Yeah, and I’m not going to create that account. Are you a CHE developer?
2020-11-06 19:09:02 +0100 <gattytto> che is a project of the eclipse fundation, it's an open sourced project. I'm only a committer memeber since recently. Openshift is a free (and offers paid service of course) tier provided by redhat
2020-11-06 19:10:29 +0100mirrorbird(~psutcliff@176.227.54.4)
2020-11-06 19:10:38 +0100 <gattytto> the sidecar includes both haskell-language-server and ghcide built from source, and the environment is included in 3 versions: 8.8.4, 8.10.1 and 8.10.2 and all the components are build from source for their respective version
2020-11-06 19:10:44 +0100irc_user(uid423822@gateway/web/irccloud.com/x-epbzivxsuvgflifa)
2020-11-06 19:11:31 +0100 <hekkaidekapus> gattytto: That sounds fantastic. So, why don’t you change the demo to something simpler?
2020-11-06 19:13:30 +0100 <hekkaidekapus> The demo should maybe just focus on explaining the setup. Servant is just another Haskell project. Once folks have a working setup, they will figure out how to use it with any projects of their liking.
2020-11-06 19:13:31 +0100 <gattytto> I wanted to include a more realistic demo than just hello world because I think haskell deserves it after I saw all the work made in the extensions for the linting and debugging
2020-11-06 19:13:56 +0100 <gattytto> and having a web api demo using servant worked except for the test suite
2020-11-06 19:14:12 +0100 <monochrom> So suppress the test suite.
2020-11-06 19:14:25 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 19:14:46 +0100 <monochrom> Also I am one of those conservative old-geezers who disagree with realistic=web
2020-11-06 19:14:56 +0100 <gattytto> I thought it could damage the purpose of the demo author, since I'm not the author of that code I thought it would be disrespectful to just cut off a part of it
2020-11-06 19:16:09 +0100alp(~alp@2a01:e0a:58b:4920:3c79:643f:783c:9d58) (Ping timeout: 272 seconds)
2020-11-06 19:16:23 +0100jespada(~jespada@90.254.245.49) (Quit: Leaving)
2020-11-06 19:16:38 +0100 <monochrom> It's called "workaround". It means a temporary limitation you put in now but will remove when you figure out how.
2020-11-06 19:17:23 +0100 <monochrom> An ironically in this the context of "realistic" and "debugging".
2020-11-06 19:18:03 +0100 <gattytto> that too I wanted to include debug configurations for the test suite too
2020-11-06 19:18:08 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 19:19:53 +0100jdsharp(~jdsharp@185.204.1.185)
2020-11-06 19:20:26 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-06 19:21:54 +0100dyeplexer(~lol@unaffiliated/terpin) (Read error: Connection reset by peer)
2020-11-06 19:22:48 +0100ubert(~Thunderbi@p200300ecdf1e5337e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2020-11-06 19:23:30 +0100 <hekkaidekapus> Another thing slightly unrelated: <https://github.com/haskell-servant/example-servant-minimal> does not commit the .cabal file. I’m aware of stack2cabal (kudos maerwald) and hpack, but a missing .cabal is already a blocker for further sleuthing.
2020-11-06 19:23:30 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de)
2020-11-06 19:25:02 +0100 <monochrom> Oh, that's a crime. :)
2020-11-06 19:25:07 +0100 <gattytto> yes I noticed, but doing "stack build" creates the .cabal by itself
2020-11-06 19:25:34 +0100 <koz_> gattytto: Yeah, because stack magics in hpack as well.
2020-11-06 19:25:38 +0100 <gattytto> I have added the build tasks for those packages in the sidecar Dockerfile so it's invisible to the users
2020-11-06 19:25:39 +0100 <texasmynsted> How do I import the styles from the pandoc module --> https://hackage.haskell.org/package/pandoc-2.11.1/docs/Text-Pandoc-Highlighting.html#t:Style
2020-11-06 19:25:57 +0100 <koz_> And yes, every time you don't include .cabal files, god kills a kitten, and Snoyman vociferously disagrees with you.
2020-11-06 19:26:05 +0100 <texasmynsted> oh wait
2020-11-06 19:26:20 +0100conal(~conal@198.8.81.71)
2020-11-06 19:26:20 +0100conal(~conal@198.8.81.71) (Remote host closed the connection)
2020-11-06 19:26:43 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 19:27:09 +0100conal(~conal@198.8.81.71)
2020-11-06 19:27:19 +0100 <gattytto> I hope to get some PR that fixes the test suite soon for this project, it's the only missing piece to add the demo stack to the IDE
2020-11-06 19:27:29 +0100 <texasmynsted> nm
2020-11-06 19:27:35 +0100texasmynstedfacepalm
2020-11-06 19:27:46 +0100 <texasmynsted> one of those days
2020-11-06 19:28:01 +0100 <gattytto> meanwhile I'll keep reading my haskell books for dummies so I get some idea of what's going wrong
2020-11-06 19:28:16 +0100 <geekosaur> it'll take more than that
2020-11-06 19:28:17 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-11-06 19:28:25 +0100 <hekkaidekapus> gattytto: Good luck!
2020-11-06 19:28:29 +0100 <geekosaur> but both errors are the same problem from two different directions
2020-11-06 19:29:12 +0100 <gattytto> geekosaur thank you for the hint
2020-11-06 19:29:18 +0100vilpan(~0@212.117.1.172) (Quit: Leaving.)
2020-11-06 19:29:35 +0100 <geekosaur> one thing has too many parameters, the other too few
2020-11-06 19:31:51 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 19:32:34 +0100conal(~conal@198.8.81.71)
2020-11-06 19:33:27 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 19:34:16 +0100conal(~conal@198.8.81.71) (Client Quit)
2020-11-06 19:34:59 +0100conal(~conal@198.8.81.71)
2020-11-06 19:38:30 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 19:43:57 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 19:44:46 +0100raichoo(~raichoo@213.240.178.58) (Quit: Lost terminal)
2020-11-06 19:45:29 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-06 19:45:59 +0100vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2020-11-06 19:46:22 +0100vicfred(~vicfred@unaffiliated/vicfred)
2020-11-06 19:47:27 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 19:47:59 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 19:48:27 +0100comerijn(~merijn@83-160-49-249.ip.xs4all.nl)
2020-11-06 19:48:49 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-06 19:49:19 +0100thc202(~thc202@unaffiliated/thc202) (Ping timeout: 244 seconds)
2020-11-06 19:49:19 +0100xerox_(~xerox@unaffiliated/xerox) (Ping timeout: 256 seconds)
2020-11-06 19:49:53 +0100 <comerijn> hekkaidekapus: At least nowadays we can point out that even Snoyman doesn't support "not committing .cabal files" anymore ;)
2020-11-06 19:50:23 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 19:50:55 +0100 <hekkaidekapus> koz_: heh… That’s what koz_ was talking about. And god bless kittens :)
2020-11-06 19:51:02 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-11-06 19:51:07 +0100 <koz_> hekkaidekapus: Yep, this is me doing my daily jibe. :P
2020-11-06 19:51:27 +0100comerijnmerijn
2020-11-06 19:51:38 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 19:52:33 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Ping timeout: 260 seconds)
2020-11-06 19:53:29 +0100conal(~conal@198.8.81.71)
2020-11-06 19:54:07 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 19:54:29 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 19:55:25 +0100jollygood2(~bc8165ab@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
2020-11-06 19:56:00 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 19:58:21 +0100verement(~anonymous@cpe-76-167-229-223.san.res.rr.com) (Quit: verement)
2020-11-06 19:58:56 +0100mirrorbird_(~psutcliff@141.98.255.147)
2020-11-06 19:59:02 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 20:01:25 +0100mirrorbird(~psutcliff@176.227.54.4) (Ping timeout: 240 seconds)
2020-11-06 20:02:09 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Ping timeout: 245 seconds)
2020-11-06 20:03:01 +0100berberman_(~berberman@unaffiliated/berberman) (Ping timeout: 272 seconds)
2020-11-06 20:03:25 +0100berberman(~berberman@unaffiliated/berberman)
2020-11-06 20:04:22 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 20:09:38 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-06 20:09:55 +0100mirrorb2rd(psutcliffe@gateway/vpn/mullvad/psutcliffe)
2020-11-06 20:10:18 +0100mirrorbird_(~psutcliff@141.98.255.147) (Ping timeout: 256 seconds)
2020-11-06 20:10:37 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2020-11-06 20:13:28 +0100avdb(~avdb@ip-62-235-12-157.dsl.scarlet.be) (Ping timeout: 256 seconds)
2020-11-06 20:14:28 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 20:14:33 +0100avdb(~avdb@ip-62-235-189-16.dsl.scarlet.be)
2020-11-06 20:16:42 +0100Lord_of_Life(~Lord@46.217.217.128) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine)
2020-11-06 20:18:13 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com) (Ping timeout: 256 seconds)
2020-11-06 20:18:57 +0100bliminse(~bliminse@host109-156-197-211.range109-156.btcentralplus.com)
2020-11-06 20:19:08 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 20:19:39 +0100u0_a298(~user@47.206.148.226)
2020-11-06 20:19:56 +0100jakob_(~textual@p57b0eae0.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2020-11-06 20:20:24 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 20:20:35 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch) (Quit: This computer has gone to sleep)
2020-11-06 20:20:42 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 20:21:11 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 20:21:14 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 20:21:29 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 20:21:54 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 20:22:15 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 20:22:17 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 20:22:51 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 20:23:04 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 20:23:33 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de)
2020-11-06 20:23:52 +0100jakob_(~textual@p200300f49f162200ecd950d27480ddce.dip0.t-ipconnect.de) (Client Quit)
2020-11-06 20:24:01 +0100hackagetype-of-html 1.6.0.0 - High performance type driven html generation. https://hackage.haskell.org/package/type-of-html-1.6.0.0 (knupfer)
2020-11-06 20:24:25 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 20:24:39 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 20:25:34 +0100britva(~britva@31-10-157-156.cgn.dynamic.upc.ch)
2020-11-06 20:29:20 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 20:31:26 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 20:31:50 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2020-11-06 20:31:58 +0100u0_a298(~user@47.206.148.226)
2020-11-06 20:34:00 +0100Lord_of_Life(~Lord@46.217.217.128)
2020-11-06 20:34:00 +0100Lord_of_Life(~Lord@46.217.217.128) (Changing host)
2020-11-06 20:34:00 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-11-06 20:34:00 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 20:34:15 +0100u0_a298(~user@47.206.148.226)
2020-11-06 20:34:45 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 20:36:29 +0100acidjnk_new2(~acidjnk@p200300d0c718f650b06a22fed16a11d3.dip0.t-ipconnect.de)
2020-11-06 20:39:46 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 258 seconds)
2020-11-06 20:39:55 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2020-11-06 20:43:26 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de)
2020-11-06 20:45:16 +0100hiroaki_(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
2020-11-06 20:46:10 +0100DavidEichmann(~david@43.240.198.146.dyn.plus.net) (Ping timeout: 260 seconds)
2020-11-06 20:50:51 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
2020-11-06 20:53:56 +0100verement(~anonymous@cpe-76-167-229-223.san.res.rr.com)
2020-11-06 20:55:41 +0100gattytto(b33e397e@179.62.57.126) (Remote host closed the connection)
2020-11-06 20:56:43 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-06 20:58:03 +0100_xor(~xor@74.215.46.133)
2020-11-06 20:58:35 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 21:01:22 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de)
2020-11-06 21:02:18 +0100systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net)
2020-11-06 21:03:12 +0100 <Cheery> ok. My approach was borked.
2020-11-06 21:03:43 +0100knupfer(~Thunderbi@200116b82c0fb10034b9f47ce3eda41d.dip.versatel-1u1.de) (Ping timeout: 244 seconds)
2020-11-06 21:05:50 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:06:14 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:07:09 +0100iqubic(~user@2601:602:9500:4870:a732:8bdd:eaee:5c26)
2020-11-06 21:07:12 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 21:07:39 +0100systemhalted(~aqualogic@71-129-231-253.lightspeed.rcsntx.sbcglobal.net) (Ping timeout: 265 seconds)
2020-11-06 21:08:00 +0100hackageukrainian-phonetics-basic 0.1.11.0 - A library to work with the basic Ukrainian phonetics and syllable segmentation. https://hackage.haskell.org/package/ukrainian-phonetics-basic-0.1.11.0 (OleksandrZhabenko)
2020-11-06 21:10:53 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine)
2020-11-06 21:12:12 +0100Lord_of_Life(~Lord@46.217.217.128)
2020-11-06 21:12:12 +0100Lord_of_Life(~Lord@46.217.217.128) (Changing host)
2020-11-06 21:12:12 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362)
2020-11-06 21:12:24 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
2020-11-06 21:14:25 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:14:55 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:14:58 +0100xerox_(~xerox@unaffiliated/xerox)
2020-11-06 21:15:01 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de)
2020-11-06 21:15:57 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-11-06 21:16:49 +0100heatsink(~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-06 21:16:50 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 21:18:55 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:19:08 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 272 seconds)
2020-11-06 21:19:18 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:20:19 +0100irc_user(uid423822@gateway/web/irccloud.com/x-epbzivxsuvgflifa) (Quit: Connection closed for inactivity)
2020-11-06 21:20:26 +0100Ariakenom_(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se)
2020-11-06 21:21:41 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 256 seconds)
2020-11-06 21:22:09 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de) (Ping timeout: 265 seconds)
2020-11-06 21:22:43 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it) (Quit: Leaving)
2020-11-06 21:23:57 +0100Ariakenom(~Ariakenom@h-82-196-111-76.NA.cust.bahnhof.se) (Ping timeout: 256 seconds)
2020-11-06 21:24:00 +0100hackagephonetic-languages-properties 0.1.2.0 - A generalization of the uniqueness-periods-vector-properties package. https://hackage.haskell.org/package/phonetic-languages-properties-0.1.2.0 (OleksandrZhabenko)
2020-11-06 21:24:03 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de)
2020-11-06 21:24:35 +0100 <dminuoso> merijn: cant we just get rid of hpack once and for all? :<
2020-11-06 21:24:48 +0100alp(~alp@2a01:e0a:58b:4920:45f3:99a0:fb7b:f79f)
2020-11-06 21:24:48 +0100averell(~averell@unaffiliated/averell) (Quit: .)
2020-11-06 21:26:45 +0100 <merijn> I wish
2020-11-06 21:27:33 +0100 <Cheery> if it can't decide (Foo k0) yet I intended it to be Foo (F x)
2020-11-06 21:27:45 +0100 <Cheery> is there a way I can give it that thing?
2020-11-06 21:27:59 +0100 <Cheery> Foo being a constraint there
2020-11-06 21:28:34 +0100 <Cheery> say.. foo :: (Foo k x) => x
2020-11-06 21:28:55 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11)
2020-11-06 21:29:46 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
2020-11-06 21:31:00 +0100averell(~averell@unaffiliated/averell)
2020-11-06 21:33:36 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:34:03 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:34:44 +0100mirrorb2rd(psutcliffe@gateway/vpn/mullvad/psutcliffe) (Ping timeout: 256 seconds)
2020-11-06 21:36:59 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:37:13 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:37:57 +0100dhouthoo(~dhouthoo@ptr-eiv6509pb4ifhdr9lsd.18120a2.ip6.access.telenet.be) (Quit: WeeChat 2.9)
2020-11-06 21:40:07 +0100u0_a298(~user@47.206.148.226) (Remote host closed the connection)
2020-11-06 21:40:33 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:42:40 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:43:03 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:43:25 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2020-11-06 21:43:46 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2020-11-06 21:44:59 +0100alp(~alp@2a01:e0a:58b:4920:45f3:99a0:fb7b:f79f) (Ping timeout: 272 seconds)
2020-11-06 21:45:14 +0100hiroaki(~hiroaki@ip4d168e73.dynamic.kabel-deutschland.de)
2020-11-06 21:45:30 +0100hackagephonetic-languages-examples 0.1.2.0 - A generalization of the uniqueness-periods-vector-examples functionality. https://hackage.haskell.org/package/phonetic-languages-examples-0.1.2.0 (OleksandrZhabenko)
2020-11-06 21:47:09 +0100DavidEichmann(~david@43.240.198.146.dyn.plus.net)
2020-11-06 21:48:49 +0100 <nut> Do people need to perform charset conversion in Haskell? Something similar to g_convert from glib?
2020-11-06 21:51:10 +0100u0_a298(~user@47.206.148.226) (Read error: Connection reset by peer)
2020-11-06 21:51:11 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11) (Remote host closed the connection)
2020-11-06 21:51:11 +0100mupf(~micha@v22017094964653601.ultrasrv.de) (Quit: WeeChat 2.9)
2020-11-06 21:51:38 +0100u0_a298(~user@47.206.148.226)
2020-11-06 21:52:02 +0100mupf(~micha@v22017094964653601.ultrasrv.de)
2020-11-06 21:52:03 +0100 <geekosaur> generally we go from or to unicode, so we use the text-icu ibrary
2020-11-06 21:52:32 +0100 <Cheery> oh no :D I did it and it's horrible
2020-11-06 21:53:13 +0100iqubic(~user@2601:602:9500:4870:a732:8bdd:eaee:5c26) ("ERC (IRC client for Emacs 28.0.50)")
2020-11-06 21:53:22 +0100supercoven(~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Ping timeout: 260 seconds)
2020-11-06 21:53:37 +0100alp(~alp@2a01:e0a:58b:4920:7cc6:32d7:a280:df74)
2020-11-06 21:53:57 +0100twopoint718(~cjw@fsf/member/twopoint718) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 21:55:18 +0100justsomeguy(~justsomeg@2603:9000:960a:fc00:c4d2:5b73:c7b7:3a2b)
2020-11-06 21:55:18 +0100justsomeguy(~justsomeg@2603:9000:960a:fc00:c4d2:5b73:c7b7:3a2b) (Changing host)
2020-11-06 21:55:18 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2020-11-06 21:56:22 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-06 21:57:31 +0100hackagelibarchive 3.0.1.1 - Haskell interface to libarchive https://hackage.haskell.org/package/libarchive-3.0.1.1 (vmchale)
2020-11-06 21:58:06 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu)
2020-11-06 21:59:41 +0100twopoint718(~cjw@fsf/member/twopoint718)
2020-11-06 22:00:01 +0100jdsharp(~jdsharp@185.204.1.185) ()
2020-11-06 22:00:49 +0100Collateral(~Collatera@4e69b241.skybroadband.com) (Ping timeout: 265 seconds)
2020-11-06 22:02:29 +0100avdb(~avdb@ip-62-235-189-16.dsl.scarlet.be) (Ping timeout: 256 seconds)
2020-11-06 22:02:45 +0100 <nut> When I run ghci, why do I need to add -package somepackage in order to be able to load it?
2020-11-06 22:03:02 +0100xff0x(~fox@2001:1a81:526d:d800:33bd:cfa:492c:ea35) (Ping timeout: 264 seconds)
2020-11-06 22:03:04 +0100 <nut> I just installed text-icu with cabal install text-icu
2020-11-06 22:03:30 +0100xff0x(~fox@2001:1a81:526d:d800:e0c1:ba75:a0ef:2a5b)
2020-11-06 22:03:35 +0100 <nut> and if I run ghci, and import Data.Text.ICU, it says hidden package
2020-11-06 22:04:20 +0100 <nut> Is it because when I cabal install, i didn't use --lib flag?
2020-11-06 22:04:22 +0100 <geekosaur> with new-style install it's stored in an environment, not just generally available, because that makes messes when multiple versions of packages are around
2020-11-06 22:04:28 +0100Collateral(~Collatera@4e69b241.skybroadband.com)
2020-11-06 22:04:38 +0100 <nut> ok
2020-11-06 22:04:43 +0100 <geekosaur> --lib would make it generally available and then get you in trouble if you install a different version with --lib later
2020-11-06 22:05:15 +0100 <nut> Ok so generally speaking, --lib is not recommended
2020-11-06 22:05:30 +0100 <geekosaur> in general you want to work in terms of a specific package or environment so cabal can keep straight what versions of what libraries should be visible
2020-11-06 22:05:31 +0100 <nut> cabal keeps warning me about it
2020-11-06 22:06:28 +0100 <solonarv> if you want a ghci with a specific package (or set thereof) you can run 'cabal repl -b text-icu'
2020-11-06 22:07:04 +0100 <nut> solonarv: even if i'm not in any cabal package?
2020-11-06 22:07:22 +0100 <nut> solonarv: I often use ghci outside of any package
2020-11-06 22:08:03 +0100 <nut> Is there any sanity checks for cabal to see if i've messed up the environment?
2020-11-06 22:08:37 +0100 <Uniaika> nut: yep it seems to run well outside of a cabal project
2020-11-06 22:09:27 +0100 <geekosaur> cabal itself will sanity check if you use cabal repl instead of ghci directly. there's little that can be done if you go around cabal though
2020-11-06 22:09:34 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 22:12:44 +0100 <geekosaur> ghc will grab anything it thinks it can and possibly confuse itself in the process, which is why we have tools like cabal and stack that each try to keep ghc in check in different ways
2020-11-06 22:12:45 +0100Kaivo(~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) (Ping timeout: 240 seconds)
2020-11-06 22:13:01 +0100Franciman(~francesco@host-79-36-167-172.retail.telecomitalia.it)
2020-11-06 22:14:04 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 258 seconds)
2020-11-06 22:15:00 +0100ggole(~ggole@2001:8003:8119:7200:657b:f270:233e:7a88) (Quit: Leaving)
2020-11-06 22:15:32 +0100Kaivo(~Kaivo@104-200-86-99.mc.derytele.com)
2020-11-06 22:20:37 +0100darjeeling_(~darjeelin@115.215.43.51) (Ping timeout: 256 seconds)
2020-11-06 22:21:04 +0100darjeeling_(~darjeelin@115.215.43.51)
2020-11-06 22:22:19 +0100u0_a298(~user@47.206.148.226) (Ping timeout: 256 seconds)
2020-11-06 22:26:28 +0100 <nut> i see. so better use cabal repl
2020-11-06 22:27:59 +0100StoneToad(~StoneToad@199-167-119-174.ppp.storm.ca)
2020-11-06 22:31:07 +0100Entertainment(~entertain@104.246.132.210) ()
2020-11-06 22:31:10 +0100StoneToad_(~StoneToad@199-167-119-149.ppp.storm.ca) (Ping timeout: 256 seconds)
2020-11-06 22:35:22 +0100sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2020-11-06 22:35:50 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 22:36:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2020-11-06 22:40:13 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 22:41:34 +0100chaosmasttter(~chaosmast@p200300c4a70b9f013c660c983e9b467a.dip0.t-ipconnect.de) (Quit: WeeChat 2.9)
2020-11-06 22:41:54 +0100geekosaur(82659a09@host154-009.vpn.uakron.edu) (Remote host closed the connection)
2020-11-06 22:43:53 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de) (Ping timeout: 272 seconds)
2020-11-06 22:44:03 +0100conal(~conal@198.8.81.71)
2020-11-06 22:45:58 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 256 seconds)
2020-11-06 22:47:15 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de)
2020-11-06 22:52:22 +0100feedoo1(~feedoo@178.239.168.171)
2020-11-06 22:53:29 +0100knupfer(~Thunderbi@mue-88-130-61-134.dsl.tropolys.de)
2020-11-06 22:57:49 +0100nut(~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 264 seconds)
2020-11-06 22:58:03 +0100 <cohn> how do you destructure a list containing a type?
2020-11-06 22:58:40 +0100 <cohn> so e.g. a list like: [(Foo Int String), (Foo Int String)]
2020-11-06 22:58:55 +0100joaj(~joaj@2001:818:e326:8200:5273:55b7:3a86:e6ca)
2020-11-06 22:59:07 +0100 <cohn> where foo is defined like: data Foo = Foo Int String
2020-11-06 23:03:47 +0100kritzefitz_(~kritzefit@212.86.56.80) (Remote host closed the connection)
2020-11-06 23:05:26 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 23:07:31 +0100 <ski> cohn : match on the data constructor
2020-11-06 23:07:32 +0100conal(~conal@198.8.81.71)
2020-11-06 23:07:59 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:08:16 +0100zebrag(~inkbottle@aaubervilliers-654-1-115-234.w86-198.abo.wanadoo.fr)
2020-11-06 23:08:38 +0100inkbottle(~inkbottle@aaubervilliers-654-1-110-84.w86-212.abo.wanadoo.fr) (Ping timeout: 256 seconds)
2020-11-06 23:08:49 +0100 <ski> cohn : is the list of known length ?
2020-11-06 23:08:57 +0100 <cohn> no
2020-11-06 23:09:12 +0100 <ski> so, you're doing recursion, walking the list ?
2020-11-06 23:10:20 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2020-11-06 23:10:44 +0100 <cohn> yes
2020-11-06 23:11:00 +0100 <cohn> I solved it using 2 functions but I have to imagine it could be simplified
2020-11-06 23:11:09 +0100 <ski> so, if you had something like `data Foo = MkFoo Int String', then you'd probably go something like
2020-11-06 23:11:21 +0100 <ski> processFoos :: [Foo] -> ...
2020-11-06 23:11:39 +0100 <ski> processFoos [ ] = ...
2020-11-06 23:11:42 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11)
2020-11-06 23:12:00 +0100 <ski> processFoos (MkFoo n s:foos) = ..n..s..(processFoos foos)..
2020-11-06 23:12:18 +0100 <ski> (`Foo' here is the type (constructor), `MkFoo' is the data constructor)
2020-11-06 23:12:49 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 264 seconds)
2020-11-06 23:13:10 +0100 <ski> but yea, depending on what you're doing to the `Foo's in the list, there may be a simpler ior clearer way to do it
2020-11-06 23:13:34 +0100 <cohn> I tried something similar to that pattern matching but got errors.
2020-11-06 23:13:41 +0100 <ski> type errors ?
2020-11-06 23:13:42 +0100 <cohn> I'll keep trying. Thanks ski!
2020-11-06 23:14:00 +0100 <ski> any code you'd like to show ?
2020-11-06 23:14:01 +0100 <cohn> actually no, it was a parsing error.
2020-11-06 23:14:20 +0100 <cohn> I've already overwritten it. : (
2020-11-06 23:14:23 +0100 <ski> okay
2020-11-06 23:14:25 +0100 <cohn> I can try to recreate it
2020-11-06 23:14:27 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Quit: Leaving)
2020-11-06 23:15:02 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311) (Ping timeout: 264 seconds)
2020-11-06 23:15:19 +0100 <ski> if you want to, i could take a look at your two functions. and the other version too, if you feel like trying to revive it
2020-11-06 23:15:56 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Ping timeout: 256 seconds)
2020-11-06 23:16:08 +0100fendor(~fendor@77.119.129.239.wireless.dyn.drei.com) (Remote host closed the connection)
2020-11-06 23:17:50 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:18:01 +0100 <cohn> ski: oh!!! I see exactly what you did above. The pattern (MkFoo n s:foos) matches the head of the list, then assigns the tail to "foos"
2020-11-06 23:18:01 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 23:18:08 +0100 <cohn> man, I didn't know you could do that
2020-11-06 23:19:42 +0100 <cohn> ok, that worked perfectly. Thanks so much!
2020-11-06 23:20:43 +0100 <cohn> that makes me question a lot of other code I wrote that I could probably simplify... lol
2020-11-06 23:21:40 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11) (Remote host closed the connection)
2020-11-06 23:22:22 +0100 <ski> cohn : not "assigns", but "binds". but, yes. you can nest patterns inside each other
2020-11-06 23:22:28 +0100Stanley00(~stanley00@unaffiliated/stanley00) (Ping timeout: 246 seconds)
2020-11-06 23:22:53 +0100_deepfire(~user@80.92.100.69)
2020-11-06 23:23:08 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 23:23:10 +0100 <cohn> wow, that's *really* powerful.
2020-11-06 23:23:17 +0100 <cohn> not sure why I never saw that before
2020-11-06 23:23:18 +0100 <ski> (assignment usually implies overwriting the current value in a location with some (possibly) different value. there is no overwriting here)
2020-11-06 23:23:23 +0100cohnshrugs
2020-11-06 23:23:43 +0100 <ski> if you had had `data Foo = SimpleFoo String | ComplexFoo Int String', then you could have done
2020-11-06 23:23:52 +0100 <ski> processFoos :: [Foo] -> ...
2020-11-06 23:24:12 +0100 <ski> processFoos [ ] = ...
2020-11-06 23:24:39 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 256 seconds)
2020-11-06 23:24:52 +0100 <ski> processFoos (SimpleFoo s:foos) = ..s..(processFoos foos)..
2020-11-06 23:24:53 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de)
2020-11-06 23:25:03 +0100 <ski> processFoos (ComplexFoo n s:foos) = ..n..s..(processFoos foos)..
2020-11-06 23:25:28 +0100 <ski> so, two non-empty list cases, depending on whether the current/first element is simple or complex
2020-11-06 23:25:48 +0100 <cohn> ya, that makes sense. really cool stuff
2020-11-06 23:25:49 +0100ddellaco1(dd@gateway/vpn/mullvad/ddellacosta) (Read error: Connection reset by peer)
2020-11-06 23:26:37 +0100 <ski> this is the kind of thing that makes pattern-matching a breeze to work with, as contrasted with a gnarly maze of nested `if'-`then'-`else's (and possibly also `let'-`in's)
2020-11-06 23:26:47 +0100 <cohn> exactly!
2020-11-06 23:26:58 +0100 <cohn> ditto for the `case` statement
2020-11-06 23:27:06 +0100jedws(~jedws@101.184.150.81)
2020-11-06 23:27:11 +0100 <ski> yea, but you can also nest patterns with `case'
2020-11-06 23:27:12 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11)
2020-11-06 23:27:24 +0100 <ski> processFoos foos0 = case foos0 of
2020-11-06 23:27:32 +0100 <ski> [ ] -> ...
2020-11-06 23:27:45 +0100 <ski> SimpleFoo s : foos -> ..s..(processFoos foos)..
2020-11-06 23:27:47 +0100pfurla(~pfurla@129.15.195.173.client.static.strong-in52.as13926.net)
2020-11-06 23:27:54 +0100 <ski> ComplexFoo n s : foos -> ..n..s..(processFoos foos)..
2020-11-06 23:28:00 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:28:25 +0100 <cohn> that does come in handy
2020-11-06 23:28:41 +0100 <ski> (and that `case' could be nested inside some other expression, if you wanted to. and you could have some other expression (other scrutinee) between the `case' and the `of', than just the direct formal parameter `foos0')
2020-11-06 23:29:25 +0100thir(~thir@p200300f27f0b7e00f4e9381c2bf90854.dip0.t-ipconnect.de) (Ping timeout: 244 seconds)
2020-11-06 23:29:27 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-06 23:30:00 +0100 <cohn> oh nice! that's good to know
2020-11-06 23:30:27 +0100 <cohn> fwiw, I'm coming from a Python world so having to get used to types plus FP patterns like this.
2020-11-06 23:30:40 +0100 <cohn> sorry if I sometimes ask dumb/obvious questions.
2020-11-06 23:30:42 +0100 <cohn> :D
2020-11-06 23:31:13 +0100 <ski> algebraic data types (also called sum types, variant types, discriminated/disjoint union types, variant record types), with pattern-matching, are really great
2020-11-06 23:31:23 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-06 23:31:24 +0100 <ski> no worry :)
2020-11-06 23:32:37 +0100 <ski> it's too bad that only few languages supports them. imho, you really need both them, and record types (aka product types, object types, "class types"). sometimes one is more appropriate, sometimes the other. it depends on what you're doing
2020-11-06 23:32:59 +0100 <ski> (in a formal sense, they are "duals" of each other. "opposites" in a sense)
2020-11-06 23:33:02 +0100 <cohn> ya
2020-11-06 23:33:18 +0100 <cohn> duals... man that brings back memories of linear programming
2020-11-06 23:33:24 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 272 seconds)
2020-11-06 23:33:34 +0100 <cohn> or maybe nightmares... ; )
2020-11-06 23:33:39 +0100 <ski> (but i've heard rumors that more languages will be gaining them. e.g. C#, and hopefully more)
2020-11-06 23:33:57 +0100conal(~conal@198.8.81.71) (Quit: Computer has gone to sleep.)
2020-11-06 23:34:37 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:2d48:c414:1e60:fe62) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2020-11-06 23:34:38 +0100 <ski> heh, okay :)
2020-11-06 23:36:38 +0100 <ski> (unfortunately, it's common in OO (which is all about record/product/object types), to claim that `switch' is bad. (pattern-matching can be viewed as `switch' on steroids.) it's not bad, it's just that sometimes product types are more appropriate. and sometimes, sum types are more appropriate)
2020-11-06 23:36:51 +0100rprije(~rprije@124.148.131.132)
2020-11-06 23:37:43 +0100conal(~conal@198.8.81.71)
2020-11-06 23:37:47 +0100 <cohn> agreed.
2020-11-06 23:38:12 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:38:29 +0100o1lo01ol1o(~o1lo01ol1@46.50.92.11) (Remote host closed the connection)
2020-11-06 23:38:46 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com) (Read error: Connection reset by peer)
2020-11-06 23:38:50 +0100knupfer(~Thunderbi@mue-88-130-61-134.dsl.tropolys.de) (Ping timeout: 260 seconds)
2020-11-06 23:38:55 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Read error: Connection reset by peer)
2020-11-06 23:39:04 +0100 <ski> (.. and then, when you really need sum types in OO languages, you're often left with only clumsy ways of simulating them. like either using `switch' with downcasts, or `if'-`else's with downcasts. or (more blessed), the VisitorPattern (which is basically a Continuation-Passing / Church Style encoding of sum types))
2020-11-06 23:39:22 +0100dbmikus__(~dbmikus@cpe-76-167-86-219.natsow.res.rr.com)
2020-11-06 23:40:12 +0100 <ski> let's say you want to have some type. and you want to be able to construct values of this type, of some number of different alternative forms. and you also want to be able to query values of this type for "properties"
2020-11-06 23:41:08 +0100 <ski> if the alternatives that you want to support are relatively fixed, but the properties are likely to be modified, or get extended with new ones, then you probably want sum types
2020-11-06 23:41:44 +0100invaser(~Thunderbi@31.148.23.125)
2020-11-06 23:41:45 +0100 <ski> if the properties are relatively fixed, but the alternatives you want to support are likely to be modified, or extended, then you probably want product types
2020-11-06 23:42:31 +0100 <ski> for each alternative, you need to implement the property (the "method") on that alternative. so, you can draw a table, where the rows are different alternatives, and the columns are different properties
2020-11-06 23:42:45 +0100borne(~fritjof@200116b864a45200fbd62cc7430251a2.dip.versatel-1u1.de) (Quit: WeeChat 2.9)
2020-11-06 23:42:55 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:43:15 +0100 <ski> and each cell contains the implementation of the property of that column, for the alternative that is the row
2020-11-06 23:44:31 +0100 <ski> then, if you slice this table into rows, you're grouping all the property implementations, for a single alternative, together. this is the product type road. such an alternative is called a "class", in the OO world, and the properties are called "methods" (or "member functions" or perhaps some other term as well)
2020-11-06 23:45:58 +0100 <ski> so, to add another alternative, you just define a new class, defining all the methods/properties for it. but, to add a new property, you need to add a method to all the existing alternatives/classes (all the classes/alternatives implement the same interface. or maybe they inherit from a common base class, which is likely often abstract)
2020-11-06 23:46:40 +0100 <ski> so, adding a new property is harder, more error-prone, since you need to modify existing code, and possibly take into account interactions with that code
2020-11-06 23:47:28 +0100 <ski> on the other hand .. if you instead slice the table into separate columns, then each column is the implementation of a single property, for all the different alternatives. this is called a "pattern-matching function"
2020-11-06 23:47:31 +0100 <cohn> gonna take me a minute to digest all of that... :D
2020-11-06 23:48:10 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 260 seconds)
2020-11-06 23:48:15 +0100 <ski> now, adding a new property is simple, you just add a new pattern-matching function, handling all the data constructors (the alternatives) in separate defining equations of the function
2020-11-06 23:48:57 +0100 <ski> however, adding (or modifying) a new alternative is more involved, since now you need to go and change all existing pattern-matching functions that takes an input of data type
2020-11-06 23:49:24 +0100 <ski> so .. it is a trade-off. neither is fundamentally better than the other. it depends on what you expect
2020-11-06 23:49:52 +0100 <ski> also, then there's issues like recursion in your type that complicates this picture. but the above is the basic summary of the difference
2020-11-06 23:51:33 +0100 <ski> cohn : as an example : define a type `Shape', meant to describe a simple geometric shape. and say you want to support rectangles (with width,height) and circles (with radius) as possible alternatives. as properties, you want to support circumference and area
2020-11-06 23:51:38 +0100hyperisco(~hyperisco@d192-186-117-226.static.comm.cgocable.net) (Ping timeout: 264 seconds)
2020-11-06 23:51:55 +0100 <cohn> right
2020-11-06 23:52:55 +0100pfurla(~pfurla@129.15.195.173.client.static.strong-in52.as13926.net) (Ping timeout: 246 seconds)
2020-11-06 23:52:56 +0100 <ski> exercise for you : define `Shape' as a product/record type, with circumference and area as fields/methods. and define functions ("constructors"/"classes" in OO terminology) `rectangle' and `circle', taking width & height, respectively radius, and giving you back a `Shape'
2020-11-06 23:53:13 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net)
2020-11-06 23:53:33 +0100 <cohn> ok
2020-11-06 23:54:33 +0100 <ski> then, define `Shape' again, but this time as a sum/variant type (algebraic data type), having `Rectangle' (with width & height arguments/components) and `Circle' (with radius component) as alternatives (data constructors), and then define the properties `circumference' and `area' as pattern-matching functions on `Shape'
2020-11-06 23:54:53 +0100 <cohn> afk for a sec.
2020-11-06 23:55:10 +0100invaser(~Thunderbi@31.148.23.125) (Ping timeout: 260 seconds)
2020-11-06 23:55:32 +0100Stanley00(~stanley00@unaffiliated/stanley00)
2020-11-06 23:56:34 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2020-11-06 23:57:49 +0100ensyde(~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds)
2020-11-06 23:57:49 +0100codygman(~codygman@47-184-107-46.dlls.tx.frontiernet.net) (Ping timeout: 246 seconds)
2020-11-06 23:58:40 +0100 <ski> the observe how the four implementations of circumference/area for rectangle/circle are distributed differently in these two different implementations. then you could try maybe adding a new alternative, maybe triangle (say you give the three side lengths. use Heron's formula for area), as well as adding a new property. hm, maybe the radius of the largest circle you could inscribe inside it (or of the
2020-11-06 23:58:46 +0100 <ski> smallest circle you could circumscribe around it). you'd have to think a little about how to do it for the triangle, i guess
2020-11-06 23:59:33 +0100codygman(~codygman@2600:380:f952:a05a:195d:2af8:616e:ca86)