Home liberachat/#haskell: Logs Calendar

Logs on 2021-05-25 (liberachat/#haskell)

00:04:58 × tsandstr quits (~user@cpe-98-5-88-45.buffalo.res.rr.com) (Read error: Connection reset by peer)
00:06:44 × Genioso quits (~hourd@151.43.76.240) (Remote host closed the connection)
00:06:52 Genioso joins (~hourd@151.43.76.240)
00:08:14 × Genioso quits (~hourd@151.43.76.240) (Read error: Connection reset by peer)
00:08:23 Genioso joins (~hourd@151.43.76.240)
00:09:44 × Genioso quits (~hourd@151.43.76.240) (Read error: Connection reset by peer)
00:09:52 Genioso joins (~hourd@151.43.76.240)
00:10:14 × Genioso quits (~hourd@151.43.76.240) (K-Lined)
00:15:18 omen joins (~omen@user/omen)
00:15:33 <omen> is this chat usually so quiet?
00:15:37 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
00:15:55 <boxscape> there are active and less active times
00:16:00 <Axman6> it's less than a week old, there's no such thing a usual. but yes, that is the nature of IRC
00:16:22 <Axman6> sometimes we go for hours without anyone talking, others it's non-stop
00:16:23 oxide joins (~lambda@user/oxide)
00:16:48 <Axman6> (until it stops, obviously)
00:17:12 <sm> traffic certainly seems way down, on both old and new channels, during the Recent Events
00:17:16 <trueboxguy> Ye
00:17:31 <sm> I miss the #haskell river :/
00:17:38 <trueboxguy> what's that?
00:17:41 <trueboxguy> also cute name
00:17:53 <sm> the stream of chat. Even if some of it was annoying :)
00:19:20 × kaychaks quits (sid236345@brockwell.irccloud.com) (Ping timeout: 264 seconds)
00:19:22 <Axman6> I hope that once we make the official decision to move and tell users to move, things will pick back up again. Need to change all the references to freenode too
00:19:28 kaychaks_ joins (sid236345@id-236345.brockwell.irccloud.com)
00:19:31 <sm> I hope so too
00:19:33 <boxscape> huh, names used for "import as" can contain dots. I don't think I ever tried that before.
00:19:53 <glguy> My favorite new import thing is ImportQualifiedPost
00:19:55 <trueboxguy> I think the decision is somewhat confirmed
00:20:08 <boxscape> glguy Yeah I've started using that
00:20:08 <Axman6> like import Data.Bytestring.Lazy as BS.Lazy?
00:20:20 <Axman6> glguy: it's like the best thing about using DAML
00:20:24 <boxscape> oh yeah I guess that one is fairly common
00:20:26 <glguy> https://www.haskell.org/irc/ points here now
00:20:27 <Axman6> so much neater
00:20:34 <Axman6> excellent
00:21:06 zzz joins (~yin@2a03:b0c0:3:d0::3095:3001)
00:21:11 ski_ joins (~ski@ed-3358-10.studat.chalmers.se)
00:21:14 ptrcmd_ joins (~ptrcmd@user/ptrcmd)
00:21:18 <boxscape> links to logs there is still broken though
00:21:18 oats is now known as hugs
00:21:28 zzz is now known as Guest1419
00:21:37 <trueboxguy> lots of stuff is broken on haskell.org
00:21:55 auri_ joins (~admin@static.46.108.40.188.clients.your-server.de)
00:22:00 <trueboxguy> lots of the links on the wiki to haskell.org are dead
00:22:05 <omen> is it not FUNCTIONAL :D
00:22:10 <omen> sorry
00:22:15 <trueboxguy> omen: you use haskell?
00:22:16 enicar joins (~enikar@user/enikar)
00:22:26 manicennui_ joins (uid349235@id-349235.tinside.irccloud.com)
00:22:32 <omen> no. I have tried to make one of my friend learn it that loves math
00:22:38 <Axman6> isn't that why we're all here?
00:22:51 <trueboxguy> nah omen was just patrolling the network
00:23:19 <Axman6> I'm getting to dislike the maths/haskell connection - it's true but not in a way that I think most people expect
00:23:35 <boxscape> do you dislike the connection itself or the way people talk about it?
00:23:37 <trueboxguy> it was true for me but i think i like maths in a different way
00:23:40 zgrep_ joins (~zgrep@user/zgrep)
00:23:41 × manicennui quits (uid349235@tinside.irccloud.com) (Ping timeout: 264 seconds)
00:23:41 × onion quits (~yang@user/yin) (Ping timeout: 264 seconds)
00:23:41 × koolazer quits (~koolazer@user/koolazer) (Ping timeout: 264 seconds)
00:23:41 × ptrcmd quits (~ptrcmd@user/ptrcmd) (Ping timeout: 264 seconds)
00:23:41 manicennui_ is now known as manicennui
00:23:43 × enikar quits (~enikar@user/enikar) (Ping timeout: 264 seconds)
00:23:43 × angerman quits (sid209936@charlton.irccloud.com) (Ping timeout: 264 seconds)
00:23:43 × ski quits (~ski@ed-3358-10.studat.chalmers.se) (Ping timeout: 264 seconds)
00:23:43 × auri quits (~admin@static.46.108.40.188.clients.your-server.de) (Ping timeout: 264 seconds)
00:23:43 × zgrep quits (~zgrep@user/zgrep) (Ping timeout: 264 seconds)
00:23:43 × remexre quits (~nathan@user/remexre) (Ping timeout: 264 seconds)
00:23:52 angerman joins (sid209936@id-209936.charlton.irccloud.com)
00:24:04 <lbseale> I was attracted to Haskell 100% because it's purely functional ... I know little math and come from engineering
00:24:05 × wrunt quits (~ajc@vmx14030.hosting24.com.au) (Ping timeout: 264 seconds)
00:24:05 Guest1419 is now known as onion
00:24:19 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
00:24:28 wrunt joins (~ajc@vmx14030.hosting24.com.au)
00:24:34 onion is now known as Guest2396
00:24:42 <lbseale> To me, the concepts are not that difficult if you don't explain them in terms of math
00:25:06 <trueboxguy> If the person isn't aware of the maths
00:25:08 <Axman6> yeah - IMO a better reason to get people into Haskell is that once it becomes practical for you, it's an excellent engineering tool. Refactoring is a joy instead of something to be dreaded
00:25:09 pe200012_ is now known as pe200012
00:25:20 remexre joins (~nathan@user/remexre)
00:25:27 <trueboxguy> Honestly like my usage of Haskell is largely for meme purposes
00:25:34 Guest2396 is now known as zzz
00:25:34 wz1000_ joins (~zubin@static.11.113.47.78.clients.your-server.de)
00:25:35 <omen> don't matter what anyone says, it's sometimes priceless feature to have real functions
00:25:37 <trueboxguy> it then just became my main language
00:25:42 × zzz quits (~yin@2a03:b0c0:3:d0::3095:3001) (Changing host)
00:25:42 zzz joins (~yin@user/yin)
00:25:53 × wz1000 quits (~zubin@static.11.113.47.78.clients.your-server.de) (Ping timeout: 264 seconds)
00:26:00 <trueboxguy> I think the fact that certain aspects of it resemble maths is a good sign
00:26:08 <trueboxguy> It shows it's easy to reason about and to represent facts
00:26:24 <lbseale> I have just worked on too much code that is state-dependent, and it's outrageously hard to understand what it's going
00:26:28 <lbseale> *doing
00:26:29 × ziman quits (~ziman@user/ziman) (Ping timeout: 264 seconds)
00:26:30 <trueboxguy> Ye
00:26:32 <trueboxguy> I use programming languages as a tool for thought / instantiating logic
00:26:38 <trueboxguy> So it's enjoyable when it's close to how I think
00:26:45 kritzefitz_ joins (~kritzefit@picard.host.weltraumschlangen.de)
00:26:48 × kritzefitz quits (~kritzefit@picard.host.weltraumschlangen.de) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
00:26:48 kritzefitz_ is now known as kritzefitz
00:26:58 <trueboxguy> Like the most important aspect of this is the type system
00:27:10 <trueboxguy> but of course the language has to be functional
00:27:20 horex539 joins (~horex539@2a02:a03f:6aa5:a00:ac6a:b00a:da1e:7b7d)
00:27:30 <boxscape> I wonder if someone has made a language with imperative type-level programming
00:27:42 <trueboxguy> Haskell already does it
00:27:43 ben_ joins (~int0x0c@72.65.101.148)
00:27:45 jrm2 joins (~jrm@156.34.187.65)
00:27:46 × pbrisbin quits (~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 264 seconds)
00:27:46 <lbseale> OCaml?
00:27:50 <trueboxguy> rofl
00:28:00 <boxscape> haskell does imperative type-level programming?
00:28:21 × jrm quits (~jrm@156.34.187.65) (Ping timeout: 264 seconds)
00:28:21 jrm2 is now known as jrm
00:28:37 <boxscape> Not too familiar with what's possible on the type level with ocaml
00:28:38 ziman joins (~ziman@c25-5.condornet.sk)
00:28:53 × nisstyre quits (~wes@user/nisstyre) (Ping timeout: 264 seconds)
00:28:59 ski_ is now known as ski
00:29:09 <trueboxguy> I mean I feel like someone could hack something together
00:29:26 <trueboxguy> There's no reason Haskell shouldn't be able to do it (except for the difficulty in doing type level programming in haskell)
00:29:32 <trueboxguy> I've done a bit of it though
00:29:37 absence_ joins (torgeihe@hildring.pvv.ntnu.no)
00:29:38 <boxscape> I suppose that's true, yeah
00:29:45 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
00:29:54 <trueboxguy> I once had the only difference for a day of AOC be the type of the output
00:30:05 × absence quits (torgeihe@hildring.pvv.ntnu.no) (Ping timeout: 264 seconds)
00:30:05 × adamse quits (sid72084@user/adamse) (Ping timeout: 264 seconds)
00:30:05 × cocreature quits (~moritz@46.101.189.229) (Ping timeout: 264 seconds)
00:30:23 × bgamari quits (~int0x0c@mobile-166-171-187-199.mycingular.net) (Ping timeout: 272 seconds)
00:30:27 adamse joins (sid72084@user/adamse)
00:31:05 <boxscape> nice
00:32:00 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:ac6a:b00a:da1e:7b7d) (Ping timeout: 265 seconds)
00:32:07 zgrep_ is now known as zgrep
00:32:12 <trueboxguy> lots of people with box in their name
00:32:22 hugs is now known as oats
00:32:28 <du> /nick dubox
00:32:51 ddellacosta joins (~ddellacos@89.46.62.117)
00:33:25 <trueboxguy> there are lots of catamorphism enjoyers at my school, if that's of interest to you
00:34:52 × pretty_dumm_guy quits (~trottel@91.207.172.188) (Quit: WeeChat 3.2-dev)
00:35:27 nisstyre joins (~wes@user/nisstyre)
00:35:43 shachaf_ joins (~shachaf@li227-219.members.linode.com)
00:36:04 ozzymcdu1f joins (~mathieu@81-234-151-21-no94.tbcn.telia.com)
00:36:08 × ozzymcduff quits (~mathieu@81.234.151.21) (Ping timeout: 264 seconds)
00:36:08 × shachaf quits (~shachaf@user/shachaf) (Ping timeout: 264 seconds)
00:36:08 × Arsen quits (~arsen@fosshost/volunteer/ArsenArsen) (Ping timeout: 264 seconds)
00:36:20 Arsen joins (~arsen@fosshost/volunteer/ArsenArsen)
00:36:41 × pounce quits (~pounce@user/pounce) (Ping timeout: 264 seconds)
00:37:12 × hpc quits (~juzz@98.169.35.13) (*.net *.split)
00:37:12 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (*.net *.split)
00:37:12 × nshepperd quits (~nshepperd@li364-218.members.linode.com) (*.net *.split)
00:37:12 × dfg quits (~dfg@user/dfg) (*.net *.split)
00:37:12 × np quits (znc@user/nerdypepper) (*.net *.split)
00:37:12 × winny quits (~winny@107.191.50.41) (*.net *.split)
00:37:12 × sajith quits (~sajith@marsh.hcoop.net) (*.net *.split)
00:37:12 × krjst quits (~krjst@134.209.38.54) (*.net *.split)
00:37:12 × canta quits (~canta@user/canta) (*.net *.split)
00:37:12 × tolt quits (~weechat-h@li219-154.members.linode.com) (*.net *.split)
00:37:12 × juri_ quits (~juri@178.63.35.222) (*.net *.split)
00:37:12 × pja quits (~pja@mail.kantaka.co.uk) (*.net *.split)
00:37:12 × leah2 quits (~leah@vuxu.org) (*.net *.split)
00:37:12 × yuglg quits (x@libera/staff/glguy) (*.net *.split)
00:37:19 × ddellacosta quits (~ddellacos@89.46.62.117) (Ping timeout: 265 seconds)
00:37:21 chkno joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
00:37:24 dfg joins (~dfg@li490-89.members.linode.com)
00:37:24 yuglg joins (x@libera/staff/glguy)
00:37:25 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
00:37:25 juri_ joins (~juri@178.63.35.222)
00:37:29 pounce joins (~pounce@user/pounce)
00:37:29 nerdy joins (znc@152.67.162.71)
00:37:30 pja joins (~pja@2a02:8010:6098:0:f2de:f1ff:fe2c:3d9)
00:37:31 <trueboxguy> Ouch
00:37:32 nshepperd joins (nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
00:37:34 canta joins (~canta@user/canta)
00:37:53 winny joins (~winny@2001:19f0:5c01:1de7:5400:1ff:fec6:4ab0)
00:38:21 leah2 joins (~leah@vuxu.org)
00:38:24 <arahael> trueboxguy: if you do everything in IO, it's pretty conventional.
00:38:28 × fart quits (~fart@user/actor) (Quit: fart)
00:38:28 krjst joins (~krjst@2604:a880:800:c1::16b:8001)
00:38:55 tolt joins (~weechat-h@li219-154.members.linode.com)
00:39:06 <trueboxguy> arahael: which message are you referring to?
00:39:11 <arahael> boxscape: it's mostly similar except haskell is lazy by default so side effects tend to have to be very strictly avoided, but if you do everything in IO it's probably similar.
00:39:25 <arahael> trueboxguy: the imperative style question.
00:40:05 <trueboxguy> arahael: but you can't do that at the type level (for now :wink:)
00:41:46 bgamari joins (~bgamari@2001:470:e438::1)
00:41:55 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
00:42:35 berberman joins (~berberman@2408:8207:256a:ab00::a44)
00:43:11 <m_shiraeeshi> isn't IO contagious? I mean, if you want to do IO then you have to base your stack on IO monad
00:43:40 <m_shiraeeshi> although you can base it on MonadBase and substitute IO in main, right?
00:43:42 × ben_ quits (~int0x0c@72.65.101.148) (Quit: Leaving)
00:43:47 × nan`_ quits (~nan`@68.235.43.165) (Quit: Computer is sleeping. ZZZzzz…)
00:44:15 × jakzale quits (uid499518@id-499518.charlton.irccloud.com) (Quit: Connection closed for inactivity)
00:44:45 <m_shiraeeshi> MonadIO doesn't count because it can be considered the same as IO
00:45:26 <wenzel> m_shiraeeshi, it depends on context, there could be MonadIO when you need it, but other monads don’t have to have MonadIO in theirs constraints. still they would be compatible
00:46:44 <m_shiraeeshi> wenzel, yeah, if you don't need to use liftIO in some action, then you can omit the MonadIO constraint, I see
00:47:27 sajith joins (~sajith@marsh.hcoop.net)
00:47:55 × kewa quits (~kewa@5.138.148.77) (Ping timeout: 272 seconds)
00:48:47 berberman_ joins (~berberman@2408:8207:256b:4ae0:584e:a9ff:fe9b:d3fe)
00:49:58 × berberman quits (~berberman@2408:8207:256a:ab00::a44) (Ping timeout: 264 seconds)
00:50:13 lbseale_ joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
00:51:48 joaobarroso joins (~joaobarro@138.186.39.244)
00:53:24 zephyz joins (~zephyz@88.98.244.170)
00:53:39 × lbseale quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 264 seconds)
00:54:43 × oxide quits (~lambda@user/oxide) (Ping timeout: 265 seconds)
01:00:04 oxide joins (~lambda@user/oxide)
01:02:31 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
01:03:22 × learner-monad quits (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com) (Quit: Textual IRC Client: www.textualapp.com)
01:04:24 × joaobarroso quits (~joaobarro@138.186.39.244) (Read error: Connection reset by peer)
01:04:27 × Gurkenglas_ quits (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de) (Ping timeout: 264 seconds)
01:05:32 × shachaf_ quits (~shachaf@li227-219.members.linode.com) (Changing host)
01:05:32 shachaf_ joins (~shachaf@user/shachaf)
01:05:35 shachaf_ is now known as shachaf
01:05:56 xff0x_ joins (~xff0x@2001:1a81:531f:9800:5685:5dfc:fd90:b20e)
01:09:10 × xff0x quits (~xff0x@92.195.37.214) (Ping timeout: 264 seconds)
01:11:44 nan` joins (~nan`@68.235.43.165)
01:12:36 cocreature joins (~moritz@2a03:b0c0:3:d0::c8:f001)
01:14:12 glguy sets mode +C
01:18:10 khumba joins (~kvirc@S01066038e0ca1250.ok.shawcable.net)
01:24:14 phanf joins (~phanf@226.148.192.35.bc.googleusercontent.com)
01:29:16 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c058:6523:2cbb:40ea) (Remote host closed the connection)
01:31:36 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c058:6523:2cbb:40ea)
01:32:26 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
01:33:18 <koz> I'm a bit confused how to use tasty's 'withResource' combinator.
01:33:56 <koz> It takes a 'IO a -> TestTree', but I have no idea how you'd 'escape' the IO here. I can easily do 'IO a -> IO TestTree', but not 'IO a -> TestTree'. Am I missing something?
01:34:41 × learner-monad quits (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com) (Client Quit)
01:35:06 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
01:36:34 × learner-monad quits (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com) (Client Quit)
01:37:08 du is now known as hrnz
01:38:15 <boxscape> koz there's an example here https://ro-che.info/articles/2013-12-29-tasty-resources-2
01:39:27 <koz> boxscape: This only works because 'Assertion' is just IO.
01:39:36 <koz> This is thus specific to tasty-hunit, which I am not using.
01:39:52 <boxscape> ah
01:41:21 <Cale> koz: Apparently if you need to access the resource, you're expected to just put it in an IORef or something, and get it from there in the tests
01:41:42 × Deide quits (~Deide@user/deide) (Quit: Seeee yaaaa)
01:41:45 <koz> Cale: OK, I'll just do it a slightly different way.
01:41:59 <Cale> (Or were you asking something else?)
01:42:06 × jneira quits (~jneira@166.red-81-39-172.dynamicip.rima-tde.net) (Quit: Connection closed)
01:42:46 <Cale> I don't really know why it wouldn't be withResource :: IO a -> (a -> IO ()) -> (a -> TestTree) -> TestTree
01:42:54 <koz> I probably was, but upon further reflection, it's not important.
01:43:06 <koz> As for why it is that way, the link boxscape posted explains.
01:44:36 <Cale> ohhh, I'm looking at ancient documentation for tasty, so there's a third source of confusion
01:44:40 × Axman6 quits (~Axman6@user/axman6) (Remote host closed the connection)
01:44:41 <Cale> Thanks Google, lol
01:44:55 Axman6 joins (~Axman6@user/axman6)
01:47:31 mnamejeff is now known as nova
01:48:27 <Cale> koz: So, yeah, you just execute the IO action it gives you from inside your individual tests to get hold of the resource that was allocated, but maybe that's no longer important for whatever reason.
01:48:51 <koz> Ah, OK. So I just use whatever their 'do IO thing' is.
01:54:08 × joeyh_ quits (joeyh@kitenet.net) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
01:54:24 joeyh joins (~joeyh@kitenet.net)
01:55:22 pavonia joins (~user@user/siracusa)
01:59:43 econo joins (uid147250@user/econo)
01:59:50 × WikiLycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
02:00:51 × zephyz quits (~zephyz@88.98.244.170) (Quit: Textual IRC Client: www.textualapp.com)
02:02:34 × oxide quits (~lambda@user/oxide) (Ping timeout: 264 seconds)
02:04:15 oxide joins (~lambda@user/oxide)
02:07:26 jaevanko joins (~jaevanko@2600:1700:1330:2bef:9b8b:fcff:47d:4c08)
02:16:15 × sszark2 quits (~sszark@h-85-24-213-180.A392.priv.bahnhof.se) (Quit: WeeChat 3.1)
02:17:57 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
02:17:57 × finn_elija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (mercury.libera.chat (Nickname regained by services)))
02:17:57 FinnElija is now known as finn_elija
02:24:51 × jaevanko quits (~jaevanko@2600:1700:1330:2bef:9b8b:fcff:47d:4c08) (Quit: Leaving)
02:25:05 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:25:27 siraben joins (~user@user/siraben)
02:25:35 <siraben> hello!
02:26:05 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds)
02:27:19 kewa joins (~kewa@5.138.211.57)
02:29:22 <boxscape> hey
02:33:54 ddellacosta joins (~ddellacos@89.46.62.31)
02:38:28 × ddellacosta quits (~ddellacos@89.46.62.31) (Ping timeout: 244 seconds)
02:38:34 × td__ quits (~td@94.134.91.149) (Ping timeout: 264 seconds)
02:40:03 td_ joins (~td@muedsl-82-207-238-005.citykom.de)
02:41:04 learner-monad joins (~eric@cpe-174-105-47-100.columbus.res.rr.com)
02:46:21 × kewa quits (~kewa@5.138.211.57) (Ping timeout: 272 seconds)
02:48:39 × learner-monad quits (~eric@cpe-174-105-47-100.columbus.res.rr.com) (Quit: WeeChat 3.1)
02:59:39 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
03:00:29 × waleee-cl quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds)
03:03:35 hnOsmium0001 is now known as hnOsmium0002
03:03:37 × hnOsmium0002 quits (uid453710@id-453710.stonehaven.irccloud.com) ()
03:04:07 hnOsmium0002 joins (uid453710@id-453710.stonehaven.irccloud.com)
03:04:16 × hnOsmium0002 quits (uid453710@id-453710.stonehaven.irccloud.com) (Client Quit)
03:04:26 × berberman_ quits (~berberman@2408:8207:256b:4ae0:584e:a9ff:fe9b:d3fe) (Changing host)
03:04:26 berberman_ joins (~berberman@user/berberman)
03:04:38 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
03:04:58 × boxscape quits (~boxscape@user/boxscape) (Ping timeout: 264 seconds)
03:05:02 × berberman_ quits (~berberman@user/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
03:05:05 gorignak joins (~gorignak@047-037-033-079.res.spectrum.com)
03:05:22 berberman joins (~berberman@user/berberman)
03:05:30 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
03:06:40 × learner-monad quits (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com) (Client Quit)
03:07:44 × smitop quits (uid328768@user/smitop) (Quit: Connection closed for inactivity)
03:17:38 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
03:18:56 Lord_of_Life_ joins (~Lord@46.217.219.90)
03:19:22 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
03:19:22 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
03:22:03 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Read error: Connection reset by peer)
03:22:09 holy_bazooka joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
03:31:15 × learner-monad quits (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com) (Quit: WeeChat 3.1)
03:33:46 × holy_bazooka quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 264 seconds)
03:36:33 holy_ joins (~h01y_b4z0@103.244.176.36)
03:37:01 × oxide quits (~lambda@user/oxide) (Ping timeout: 272 seconds)
03:37:50 oxide joins (~lambda@user/oxide)
03:40:12 × holy_ quits (~h01y_b4z0@103.244.176.36) (Read error: Connection reset by peer)
03:40:27 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
03:46:21 holy_bazooka joins (~h01y_b4z0@103.244.176.36)
03:46:49 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Read error: Connection reset by peer)
03:48:15 buggy joins (~buggy@27.6.222.224)
03:48:26 × buggy quits (~buggy@27.6.222.224) (Changing host)
03:48:26 buggy joins (~buggy@user/smorgasbord)
03:48:58 × hmmmas quits (~chenqisu1@183.217.200.8) (Quit: Leaving.)
03:55:06 ptrcmd_ is now known as ptrcmd
03:58:18 coot joins (~coot@37.30.53.67.nat.umts.dynamic.t-mobile.pl)
04:03:51 × coot quits (~coot@37.30.53.67.nat.umts.dynamic.t-mobile.pl) (Ping timeout: 264 seconds)
04:13:53 × alx741 quits (~alx741@186.178.108.78) (Quit: alx741)
04:15:02 MidAutumnMoon joins (~MidAutumn@user/midautumnmoon)
04:17:40 × m_shiraeeshi quits (~shiraeesh@46.34.207.100) (Ping timeout: 244 seconds)
04:18:59 × Chobbes_ quits (~Chobbes@user/chobbes) (Ping timeout: 252 seconds)
04:19:13 × shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 244 seconds)
04:19:15 shapr` joins (~user@pool-100-36-247-68.washdc.fios.verizon.net)
04:19:51 Chobbes_ joins (~Chobbes@user/chobbes)
04:26:54 × acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 265 seconds)
04:27:44 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
04:31:08 sm2n_ is now known as sm2n
04:32:53 <glguy> int-e, ok thanks
04:33:54 sutra joins (~sutra@208.110.111.216)
04:34:24 × sutra quits (~sutra@208.110.111.216) (Client Quit)
04:35:04 ddellacosta joins (~ddellacos@86.106.121.82)
04:38:09 Erutuon joins (~Erutuon@97-116-14-180.mpls.qwest.net)
04:39:17 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds)
04:39:43 × ddellacosta quits (~ddellacos@86.106.121.82) (Ping timeout: 272 seconds)
04:42:19 geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com)
04:48:09 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
04:51:56 doyougnu joins (~user@c-67-168-253-231.hsd1.or.comcast.net)
04:55:42 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:57:28 slice joins (~slice@user/slice)
05:01:02 SanchayanM joins (~Sanchayan@136.185.150.127)
05:10:19 × holy_bazooka quits (~h01y_b4z0@103.244.176.36) (Ping timeout: 272 seconds)
05:16:58 × abhixec quits (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 264 seconds)
05:29:39 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
05:33:13 × dminuoso quits (~dminuoso@p5795f132.dip0.t-ipconnect.de) (Changing host)
05:33:13 dminuoso joins (~dminuoso@user/dminuoso)
05:34:05 × hiruji` quits (~hiruji@72.74.190.75) (Quit: ZNC 1.8.2 - https://znc.in)
05:34:21 hiruji joins (~hiruji@72.74.190.75)
05:35:11 holy_bazooka joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
05:39:35 hiptobecubic joins (~john@c-73-55-99-95.hsd1.fl.comcast.net)
05:41:34 × holy_bazooka quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 264 seconds)
05:43:22 × hueso quits (~root@152.170.89.151) (Ping timeout: 264 seconds)
05:47:29 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
05:51:44 <fabfianda> hi everyone, is there any lib for generating OpenApi json specs for a scotty application as there is for Servant?
05:51:44 <fabfianda> I can't seem to find anything. I assume it is simpler in Servant because it requires you to create types to describe the API anyway.
05:52:07 × berberman quits (~berberman@user/berberman) (Ping timeout: 272 seconds)
05:52:45 <dminuoso> fabfianda: You can use openapi3 directly
05:53:34 <dminuoso> For something like scotty it would require some kind of free monad representation, such that you could symbolically evaluate it
05:54:08 <dminuoso> So I'm afraid you have to handroll the specs
05:55:17 <fabfianda> thanks, yes I think I'll create some helper functions to streamline the specs creation
05:55:34 berberman joins (~berberman@user/berberman)
05:55:34 <dminuoso> Be sure to use the lens/optics helpers.
05:55:45 <dminuoso> They make openapi3 much eaiser to work with :)
05:55:59 <dminuoso> Especially the classy lenses/optics
05:56:42 <dminuoso> (or wait, I meant the OverloadedLabels ones)
05:57:55 <fabfianda> sure! love lenses
05:58:24 hmmmas joins (~chenqisu1@183.217.200.8)
05:59:11 <dminuoso> swagger2/openapi3 miss one important thing though: property descriptions on objects. :(
05:59:47 <fabfianda> got it
06:01:38 × Aran quits (~Aran@port-92-194-80-170.dynamic.as20676.net) (Ping timeout: 265 seconds)
06:02:16 qbt joins (~edun@user/edun)
06:03:11 Squarism2 joins (~Squarism4@90-231-27-135-no51.tbcn.telia.com)
06:04:55 × hmmmas quits (~chenqisu1@183.217.200.8) (Quit: Leaving.)
06:05:36 × manicennui quits (uid349235@id-349235.tinside.irccloud.com) (Quit: Connection closed for inactivity)
06:06:29 × Squarism2 quits (~Squarism4@90-231-27-135-no51.tbcn.telia.com) (Client Quit)
06:08:32 jco joins (~jco@c83-248-173-38.bredband.tele2.se)
06:09:18 × qbt quits (~edun@user/edun) (Read error: Connection reset by peer)
06:11:04 qbt joins (~edun@user/edun)
06:12:43 × cheater quits (~Username@user/cheater) (Quit: (BitchX) Choosey moms choose BitchX!)
06:13:01 <fabfianda> btw, a big thank you to the whole community! . Been a dev for 20+ years but Haskell has been a game changer for me.
06:13:23 cheater joins (~Username@user/cheater)
06:14:54 imdoor joins (~imdoor@balticom-142-78-50.balticom.lv)
06:15:10 Tomurb joins (~tom@158.194.92.121)
06:15:21 wonko joins (~wjc@62.115.229.50)
06:17:33 m_shiraeeshi joins (~shiraeesh@46.34.207.100)
06:20:28 lortabac joins (~lortabac@2a01:e0a:541:b8f0:d4bd:911b:bb62:6168)
06:23:09 × Erutuon quits (~Erutuon@97-116-14-180.mpls.qwest.net) (Quit: WeeChat 2.8)
06:23:19 Erutuon joins (~Erutuon@97-116-14-180.mpls.qwest.net)
06:25:12 × Erutuon quits (~Erutuon@97-116-14-180.mpls.qwest.net) (Client Quit)
06:25:22 Erutuon joins (~Erutuon@97-116-14-180.mpls.qwest.net)
06:25:43 × nan` quits (~nan`@68.235.43.165) (Quit: Computer is sleeping. ZZZzzz…)
06:28:14 Guest6067 joins (~Guest6067@mail.haasprofile.cz)
06:32:52 × buggy quits (~buggy@user/smorgasbord) (Quit: Lost terminal)
06:35:39 × doyougnu quits (~user@c-67-168-253-231.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
06:35:46 <gonz_> fabfianda: What would you say has been the biggest change and what's been the most positive difference for you with Haskell?
06:36:11 ddellacosta joins (~ddellacos@89.46.62.111)
06:36:51 × m_shiraeeshi quits (~shiraeesh@46.34.207.100) (Ping timeout: 264 seconds)
06:38:16 epolanski joins (uid312403@id-312403.brockwell.irccloud.com)
06:40:16 × ddellacosta quits (~ddellacos@89.46.62.111) (Ping timeout: 244 seconds)
06:40:57 sondre joins (~sondrelun@cm-84.212.100.140.getinternet.no)
06:41:55 × cheater quits (~Username@user/cheater) (Remote host closed the connection)
06:43:39 Brumaire joins (~quassel@81-64-14-121.rev.numericable.fr)
06:48:25 × simmsb- quits (~ben@2a02:c7f:343a:6d00:69bb:9905:870a:6538) (Remote host closed the connection)
06:51:20 hmmmas joins (~chenqisu1@183.217.200.8)
06:51:58 michalz joins (~user@185.246.204.58)
06:54:30 cheater joins (~Username@user/cheater)
06:54:39 ixlun joins (~user@195.213.99.113)
06:54:41 Guest6067 parts (~Guest6067@mail.haasprofile.cz) ()
06:56:33 aforemny_ is now known as aforemny
06:56:53 m_shiraeeshi joins (~shiraeesh@46.34.207.100)
06:56:55 trent joins (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
06:58:49 chele joins (~chele@user/chele)
07:03:53 <fabfianda> well, type safety for sure (as web dev I was used to dynamically typed languages) but more importantly it changed my mindset about problem solving. OOP and imperative programming always felt kind of flawed, while functional programming is so natural to me. And, finally, easy refactoring Is Haskell killer feature, gives me literally peace of mind, something I had never felt before :)
07:04:18 raym joins (~raym@user/raym)
07:04:56 chele_ joins (~chele@user/chele)
07:05:06 chele is now known as Guest2488
07:05:06 × Guest2488 quits (~chele@user/chele) (Killed (platinum.libera.chat (Nickname regained by services)))
07:05:06 chele_ is now known as chele
07:05:44 <Axman6> The work I'm doing at the moment is mostly adding a field to a bunch of data types, and following the type errors until I've found everywhere I need to update it
07:10:37 <dminuoso> At times I wonder whether that kind of refactoring should receive more attention.
07:11:00 <dminuoso> Most of that work seems very repetitive, almost as if this could be automated a lot more easily.
07:11:36 <dminuoso> Didn't Sandy Maguire work on some tooling around graphical programming (with the intent to make programming on tablets a possibility)?
07:11:37 <Axman6> I really do want a tool to do it for me, 90% of this work is very mechanical, but it's syntactically not that easy to automate (if we had decent structural change tools it might be easier - I've wanted lenses over Haskell syntax for a long time)
07:12:13 <dminuoso> Ah, `wingman` is what I was thinking of
07:12:23 <dminuoso> https://haskellwingman.dev/
07:13:53 <Axman6> that wouldn't help us much here sadly
07:14:12 × Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in)
07:15:17 <Axman6> I want to be able to do things like: Given this list of fully wualified type names, add a field to these types with name foo and type Bar - then in the places where we create those types, (somehow) add a call to the function that gets a Bar and adds that field
07:16:09 Techcable joins (~Techcable@168.235.93.147)
07:16:54 × imdoor quits (~imdoor@balticom-142-78-50.balticom.lv) (Quit: imdoor)
07:17:46 <dminuoso> On emacs at the very least, with ghcide+compilation-mode or lsp/lsp-haskell/lsp-treemacs you can navigate around all error points quickly
07:17:53 wz1000_ is now known as wz1000
07:17:57 <dminuoso> So there's that
07:17:59 <Axman6> it's really mechanical if you have something type aware
07:18:08 <Axman6> yeah lsp has made this much more pleasant that's for sure
07:18:09 × wz1000 quits (~zubin@static.11.113.47.78.clients.your-server.de) (Quit: WeeChat 2.8)
07:18:11 <dminuoso> Axman6: I think wingman is already on the right approach here.
07:18:15 wz1000 joins (~zubin@static.11.113.47.78.clients.your-server.de)
07:18:24 <dminuoso> At least based on what I heard from Sandy about it on haskell weekly
07:18:28 <Axman6> HLS really, I guess
07:18:31 <dminuoso> yeah
07:18:42 <dminuoso> If only the resource requirements weren't as hefty
07:18:50 kadoban joins (~mud@user/kadoban)
07:18:52 <dminuoso> It feels like I need to quadruple my memory this year.
07:18:59 <Axman6> Our dev machines have 64GB RAM for a reason :P
07:19:18 <dminuoso> Sitting on 16GiB here.
07:19:36 <Axman6> my personal machine is 32 and that seems to work well
07:19:58 <dminuoso> Yeah, my next laptop will have 48GiB soldered in probably
07:20:07 × Techcable quits (~Techcable@168.235.93.147) (Client Quit)
07:20:13 <dminuoso> But I need that much memory to run a fleet of cumulus linux VMs anyway
07:20:14 <Axman6> ... according to iStat Menues, VS Code is using 40GB at the moment, most of that will be the lsp for DAML though
07:20:26 Techcable joins (~Techcable@168.235.93.147)
07:20:35 <dminuoso> Ouch
07:21:22 × ziman quits (~ziman@c25-5.condornet.sk) (Changing host)
07:21:22 ziman joins (~ziman@user/ziman)
07:21:44 <Axman6> heh, yeah damlc is using 27GB - I should restart it...
07:22:25 × wz1000 quits (~zubin@static.11.113.47.78.clients.your-server.de) (Client Quit)
07:22:40 taeaad joins (~taeaad@user/taeaad)
07:24:14 Axman6 quits Docker out of spite too
07:24:54 <Hecate> swet hell
07:25:21 bec joins (~bec@lfbn-idf1-1-2267-111.w92-151.abo.wanadoo.fr)
07:26:04 × bec quits (~bec@lfbn-idf1-1-2267-111.w92-151.abo.wanadoo.fr) (Changing host)
07:26:04 bec joins (~bec@user/bec)
07:26:37 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:27:07 wz1000 joins (~zubin@2a01:4f8:1c0c:40d9::1)
07:28:06 × wz1000 quits (~zubin@2a01:4f8:1c0c:40d9::1) (Client Quit)
07:28:13 wz1000 joins (~zubin@static.11.113.47.78.clients.your-server.de)
07:32:34 × jco quits (~jco@c83-248-173-38.bredband.tele2.se) (Read error: Connection reset by peer)
07:37:58 × Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 264 seconds)
07:39:16 Maxdamantus joins (~Maxdamant@user/maxdamantus)
07:39:32 cdsmithus joins (~cdsmithus@c-73-184-127-183.hsd1.ga.comcast.net)
07:39:46 × raym quits (~raym@user/raym) (Ping timeout: 264 seconds)
07:40:22 × xff0x_ quits (~xff0x@2001:1a81:531f:9800:5685:5dfc:fd90:b20e) (Ping timeout: 264 seconds)
07:41:07 xff0x_ joins (~xff0x@2001:1a81:531f:9800:4a5f:2bda:8693:c79e)
07:41:39 × kadoban quits (~mud@user/kadoban) (Ping timeout: 264 seconds)
07:42:10 × cdsmith quits (~cdsmithus@c-73-184-127-183.hsd1.ga.comcast.net) (Ping timeout: 264 seconds)
07:43:53 Franciman joins (~francesco@host-80-180-196-134.retail.telecomitalia.it)
07:44:29 tA joins (~thorn@121.220.36.168)
07:45:02 × novedevo quits (~novedevo@d154-5-30-77.bchsia.telus.net) (Read error: Connection reset by peer)
07:48:39 × sondre quits (~sondrelun@cm-84.212.100.140.getinternet.no) (Ping timeout: 272 seconds)
07:51:04 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c058:6523:2cbb:40ea) (Remote host closed the connection)
07:51:06 mud joins (~mud@ip68-3-82-79.ph.ph.cox.net)
07:51:20 × mud quits (~mud@ip68-3-82-79.ph.ph.cox.net) (Changing host)
07:51:20 mud joins (~mud@user/kadoban)
07:57:10 × slice quits (~slice@user/slice) (Ping timeout: 264 seconds)
07:58:23 FragByte joins (~christian@user/fragbyte)
08:02:08 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
08:04:39 ozzymcdu1f is now known as ozzymcduff
08:07:33 × pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer)
08:07:44 fendor joins (~fendor@178.165.131.25.wireless.dyn.drei.com)
08:07:47 × S11001001 quits (sid42510@id-42510.charlton.irccloud.com) (Ping timeout: 252 seconds)
08:08:11 × tapas quits (sid467876@charlton.irccloud.com) (Ping timeout: 272 seconds)
08:10:43 × bw quits (sid2730@user/betawaffle) (Ping timeout: 272 seconds)
08:10:55 × angerman quits (sid209936@id-209936.charlton.irccloud.com) (Read error: Connection reset by peer)
08:11:42 × SethTisue__ quits (sid14912@id-14912.charlton.irccloud.com) (Ping timeout: 264 seconds)
08:12:37 × jonrh quits (sid5185@id-5185.charlton.irccloud.com) (Ping timeout: 265 seconds)
08:12:55 tapas joins (sid467876@id-467876.charlton.irccloud.com)
08:13:00 hpc_ joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
08:13:15 × gmc quits (sid58314@charlton.irccloud.com) (Ping timeout: 272 seconds)
08:13:20 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:1197:e208:ab4e:a6de)
08:13:25 biberu\ joins (~biberu@user/biberu)
08:13:33 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 264 seconds)
08:13:33 × supersven quits (uid501114@id-501114.charlton.irccloud.com) (Read error: Connection reset by peer)
08:14:28 supersven joins (uid501114@charlton.irccloud.com)
08:14:37 × ProofTechnique quits (sid79547@charlton.irccloud.com) (Ping timeout: 272 seconds)
08:15:13 gehmehgeh joins (~user@user/gehmehgeh)
08:15:14 eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:196e:43ba:e231:a245)
08:15:24 dmwit_ joins (~dmwit@pool-173-66-86-32.washdc.fios.verizon.net)
08:15:43 × Chobbes_ quits (~Chobbes@user/chobbes) (Ping timeout: 264 seconds)
08:15:43 × dmwit quits (~dmwit@pool-173-66-86-32.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
08:15:56 Chobbes_ joins (~Chobbes@user/chobbes)
08:16:11 gmc joins (sid58314@charlton.irccloud.com)
08:16:35 × caasih quits (sid13241@id-13241.charlton.irccloud.com) (Ping timeout: 252 seconds)
08:17:37 lbseale__ joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
08:17:38 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
08:17:40 caasih joins (sid13241@id-13241.charlton.irccloud.com)
08:17:55 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:1197:e208:ab4e:a6de) (Ping timeout: 244 seconds)
08:18:20 christiaanb_ joins (sid84827@id-84827.tooting.irccloud.com)
08:18:24 shapr`` joins (~user@pool-100-36-247-68.washdc.fios.verizon.net)
08:18:28 ProofTechnique joins (sid79547@charlton.irccloud.com)
08:18:51 × tapas quits (sid467876@id-467876.charlton.irccloud.com) (Ping timeout: 272 seconds)
08:19:28 × eggplant_ quits (~Eggplanta@2600:1700:bef1:5e10:196e:43ba:e231:a245) (Ping timeout: 244 seconds)
08:20:26 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 252 seconds)
08:20:41 × dteb quits (uid501063@id-501063.charlton.irccloud.com) (Read error: Connection reset by peer)
08:20:59 × lbseale_ quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 252 seconds)
08:21:31 SethTisue__ joins (sid14912@charlton.irccloud.com)
08:21:41 dteb joins (uid501063@id-501063.charlton.irccloud.com)
08:22:00 nik0 joins (~if@libera/staff/niko)
08:22:06 pavonia joins (~user@user/siracusa)
08:22:07 × edwardk quits (sid47016@haskell/developer/edwardk) (Ping timeout: 272 seconds)
08:22:11 × niko quits (~if@libera/staff/niko) (Killed (mercury.libera.chat (Nickname regained by services)))
08:22:11 nik0 is now known as niko
08:23:04 jhill_ joins (sid1055@id-1055.tinside.irccloud.com)
08:23:22 hmmmas1 joins (~chenqisu1@183.217.200.8)
08:24:19 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (*.net *.split)
08:24:19 × tA quits (~thorn@121.220.36.168) (*.net *.split)
08:24:19 × hmmmas quits (~chenqisu1@183.217.200.8) (*.net *.split)
08:24:19 × wonko quits (~wjc@62.115.229.50) (*.net *.split)
08:24:19 × qbt quits (~edun@user/edun) (*.net *.split)
08:24:19 × berberman quits (~berberman@user/berberman) (*.net *.split)
08:24:19 × shapr` quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (*.net *.split)
08:24:19 × oxide quits (~lambda@user/oxide) (*.net *.split)
08:24:19 × Lord_of_Life_ quits (~Lord@46.217.219.90) (*.net *.split)
08:24:19 × td_ quits (~td@muedsl-82-207-238-005.citykom.de) (*.net *.split)
08:24:19 × tolt quits (~weechat-h@li219-154.members.linode.com) (*.net *.split)
08:24:19 × winny quits (~winny@2001:19f0:5c01:1de7:5400:1ff:fec6:4ab0) (*.net *.split)
08:24:19 × nshepperd quits (nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (*.net *.split)
08:24:19 × yuglg quits (x@libera/staff/glguy) (*.net *.split)
08:24:19 × juri_ quits (~juri@178.63.35.222) (*.net *.split)
08:24:19 × samebchase quits (~samebchas@51.15.68.182) (*.net *.split)
08:24:19 × skn quits (~znc@sec.nimmagadda.net) (*.net *.split)
08:24:19 × biberu quits (~biberu@user/biberu) (*.net *.split)
08:24:19 × toms quits (~foobar@pogostick.net) (*.net *.split)
08:24:19 × parseval quits (sid239098@id-239098.brockwell.irccloud.com) (*.net *.split)
08:24:19 × taktoa[c] quits (sid282096@id-282096.tinside.irccloud.com) (*.net *.split)
08:24:19 × jhill quits (sid1055@id-1055.tinside.irccloud.com) (*.net *.split)
08:24:19 × Ekho quits (~Ekho@user/ekho) (*.net *.split)
08:24:19 × felixphew quits (~felix@cssa/committee/felix) (*.net *.split)
08:24:19 × raoul quits (~raoul@nomnomnomnom.co.uk) (*.net *.split)
08:24:19 × Square quits (~a@178.62.91.8) (*.net *.split)
08:24:19 × djanatyn quits (~djanatyn@vps-7f49a6b0.vps.ovh.ca) (*.net *.split)
08:24:19 × urdh quits (~urdh@h88-129-148-132.cust.a3fiber.se) (*.net *.split)
08:24:19 × khumba quits (~kvirc@S01066038e0ca1250.ok.shawcable.net) (*.net *.split)
08:24:19 × christiaanb quits (sid84827@id-84827.tooting.irccloud.com) (*.net *.split)
08:24:19 × edwtjo quits (~edwtjo@user/edwtjo) (*.net *.split)
08:24:19 × tdammers_ quits (~tdammers@77.109.72.213) (*.net *.split)
08:24:19 × Logio quits (em@kapsi.fi) (*.net *.split)
08:24:19 biberu\ is now known as biberu
08:24:20 christiaanb_ is now known as christiaanb
08:24:22 jhill_ is now known as jhill
08:24:38 × ProofTechnique quits (sid79547@charlton.irccloud.com) (Ping timeout: 244 seconds)
08:24:42 × trent quits (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 265 seconds)
08:24:43 td_ joins (~td@muedsl-82-207-238-005.citykom.de)
08:25:32 haskman joins (~haskman@106.215.3.81)
08:25:34 tapas joins (sid467876@charlton.irccloud.com)
08:26:06 edwardk joins (sid47016@haskell/developer/edwardk)
08:26:11 × allbery_b quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 244 seconds)
08:26:12 bw joins (sid2730@user/betawaffle)
08:26:13 ProofTechnique joins (sid79547@id-79547.charlton.irccloud.com)
08:26:32 taktoa[c] joins (sid282096@id-282096.tinside.irccloud.com)
08:26:38 tolt joins (~weechat-h@li219-154.members.linode.com)
08:26:43 parseval joins (sid239098@id-239098.brockwell.irccloud.com)
08:27:21 × pe200012 quits (~pe200012@119.131.208.84) (Remote host closed the connection)
08:27:27 jonrh joins (sid5185@id-5185.charlton.irccloud.com)
08:27:35 Square joins (~a@178.62.91.8)
08:27:36 winny joins (~winny@2001:19f0:5c01:1de7:5400:1ff:fec6:4ab0)
08:27:41 imc6ristian joins (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f)
08:27:48 pe200012 joins (~pe200012@218.107.17.245)
08:27:54 tA joins (~thorn@121.220.36.168)
08:27:54 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
08:27:54 wonko joins (~wjc@62.115.229.50)
08:27:54 qbt joins (~edun@user/edun)
08:27:54 berberman joins (~berberman@user/berberman)
08:27:54 oxide joins (~lambda@user/oxide)
08:27:54 Lord_of_Life_ joins (~Lord@46.217.219.90)
08:27:54 khumba joins (~kvirc@S01066038e0ca1250.ok.shawcable.net)
08:27:54 nshepperd joins (nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
08:27:54 juri_ joins (~juri@178.63.35.222)
08:27:54 yuglg joins (x@libera/staff/glguy)
08:27:54 samebchase joins (~samebchas@51.15.68.182)
08:27:54 skn joins (~znc@sec.nimmagadda.net)
08:27:54 toms joins (~foobar@pogostick.net)
08:27:54 Ekho joins (~Ekho@user/ekho)
08:27:54 felixphew joins (~felix@cssa/committee/felix)
08:27:54 raoul joins (~raoul@nomnomnomnom.co.uk)
08:27:54 djanatyn joins (~djanatyn@vps-7f49a6b0.vps.ovh.ca)
08:27:54 urdh joins (~urdh@h88-129-148-132.cust.a3fiber.se)
08:27:54 edwtjo joins (~edwtjo@user/edwtjo)
08:27:54 tdammers_ joins (~tdammers@77.109.72.213)
08:27:54 Logio joins (em@kapsi.fi)
08:28:18 angerman joins (sid209936@id-209936.charlton.irccloud.com)
08:28:26 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
08:28:43 sondre joins (~sondrelun@eduroam-193-157-179-99.wlan.uio.no)
08:29:28 geekosaur joins (~geekosaur@069-135-003-034.biz.spectrum.com)
08:29:43 ksqsf joins (~textual@67.209.186.120.16clouds.com)
08:29:51 S11001001 joins (sid42510@id-42510.charlton.irccloud.com)
08:32:34 × skn quits (~znc@sec.nimmagadda.net) (Ping timeout: 264 seconds)
08:32:54 skn joins (~znc@sec.nimmagadda.net)
08:32:56 __monty__ joins (~toonn@user/toonn)
08:34:22 × raoul quits (~raoul@nomnomnomnom.co.uk) (Ping timeout: 264 seconds)
08:34:22 × imc6ristian quits (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f) (Quit: quit)
08:34:35 raoul joins (~raoul@nomnomnomnom.co.uk)
08:34:56 imc6ristian joins (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f)
08:35:39 × m_shiraeeshi quits (~shiraeesh@46.34.207.100) (Ping timeout: 264 seconds)
08:36:54 v01d4lph4 joins (~v01d4lph4@122.160.65.250)
08:37:13 ddellacosta joins (~ddellacos@86.106.121.117)
08:38:43 chddr joins (~Thunderbi@91.226.34.182)
08:39:19 × ystael quits (~ystael@user/ystael) (Ping timeout: 272 seconds)
08:41:51 × ddellacosta quits (~ddellacos@86.106.121.117) (Ping timeout: 272 seconds)
08:48:09 × imc6ristian quits (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f) (Quit: quit)
08:48:14 horex539 joins (~horex539@2a02:a03f:6aa5:a00:c481:4314:38df:6304)
08:48:21 imc6ristian joins (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f)
08:50:48 ystael joins (~ystael@user/ystael)
08:50:55 Flonk joins (~Flonk@ec2-52-40-29-25.us-west-2.compute.amazonaws.com)
08:51:09 L29Ah joins (~L29Ah@user/l29ah)
08:51:16 dhouthoo joins (~dhouthoo@178-117-36-167.access.telenet.be)
08:51:35 <Flonk> Did yall really migrate both offtopic channels? :D
08:52:47 felixphew parts (~felix@cssa/committee/felix) ()
08:52:47 × imc6ristian quits (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f) (Client Quit)
08:53:17 imc6ristian joins (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f)
08:53:35 × imc6ristian quits (~c6ristian@2a04:6ec0:20f:fdb0:22bd:de4c:2316:161f) (Client Quit)
08:54:05 <dminuoso> Im looking for libraries to assist in making simple request/respond CLI tools with. Something that asks for a bunch of things, receives things from STDIN, and perhaps has some simple help integration.
08:54:28 <dminuoso> Trying to be non-specific, since Im wondering what kind of options I have, short of handrolling the whole thing
08:55:34 <kritzefitz> dminuoso, so input should come from STDIN interactively, rather than providing everything on the command line beforehand?
08:55:48 <dminuoso> Right
08:57:09 <dminuoso> haskeline comes to mind, if I want to handroll the entire interaction
08:57:29 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
09:02:45 <kritzefitz> dminuoso, I didn't look into the details, but http://hackage.haskell.org/package/wizards looks like it might help you.
09:02:50 × berberman quits (~berberman@user/berberman) (Ping timeout: 264 seconds)
09:02:54 berberman_ joins (~berberman@user/berberman)
09:04:26 × haskman quits (~haskman@106.215.3.81) (Ping timeout: 252 seconds)
09:04:26 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
09:07:49 <dminuoso> kritzefitz: Oh, that looks exactly like I was looking for.
09:09:17 × tA quits (~thorn@121.220.36.168) (Ping timeout: 264 seconds)
09:13:30 samebchase1 joins (~samebchas@51.15.68.182)
09:13:36 × samebchase quits (~samebchas@51.15.68.182) (Quit: Ping timeout (120 seconds))
09:14:02 × int-e quits (~noone@int-e.eu) (Quit: Reconnecting)
09:14:09 int-e_ joins (~noone@int-e.eu)
09:14:44 × int-e_ quits (~noone@int-e.eu) (Client Quit)
09:14:52 × bjs quits (sid190364@brockwell.irccloud.com) (Changing host)
09:14:52 bjs joins (sid190364@user/bjs)
09:14:58 int-e joins (~noone@int-e.eu)
09:16:09 eal joins (~eal@customer-46-39-107-10.stosn.net)
09:19:23 Guest56 joins (~Guest56@157.45.6.211)
09:19:33 <Guest56> test
09:19:50 <Guest56> anyone here
09:20:11 <Guest56> am i doing this correctly
09:20:21 <int-e> no
09:20:34 <Guest56> hi Bertram
09:20:55 <dminuoso> Guest56: Hi, yes you are. :)
09:21:00 <int-e> it's customary to call people by their nicks
09:21:10 <int-e> (int-e in my case)
09:21:16 <Guest56> oh okay
09:21:28 <dminuoso> Nice, so Libera already has IRC first timers!
09:21:50 <Guest56> I came here from archlinux notification email
09:22:04 <Guest56> it didn't let me post
09:22:18 <Guest56> i need to be identified with a service
09:22:27 <Guest56> what does it mean?
09:22:55 <dminuoso> Type the following into your chat bar: /msg nickserv help register
09:23:13 <dminuoso> And follow the instructions
09:23:14 <mniip> how do you end up in #haskell if you were going for #archlinux
09:23:31 <dminuoso> Im guessing their client has a way of showing other channels, and Haskell likely is one of the most populated ones?
09:23:32 <Taneb> Guest56: there is a guide to registring a nickname here: https://libera.chat/guides/registration
09:23:36 <int-e> Guest56: but first pick a nick you actually want
09:23:39 <dminuoso> Presumably one of the few ones without +r
09:23:59 <Guest56> thanks dminuoso but in libera.chat page said no signup required for using kiwiirc
09:23:59 <int-e> (and that is not registered yet *shrugs*)
09:24:13 <dminuoso> Guest56: Right, but some project/channels require signup.
09:24:28 <Taneb> Guest56: some channels make you register your username as a spam prevention technique
09:24:29 <dminuoso> So while the network itself does not demand it, some chnanels might have stricter requirements
09:25:41 <Guest56> hmm, so kiwiirc is the client, libera.chat is the network and I also need to register with nickserve?
09:25:48 unautre parts (~unautre@149.91.83.63) ()
09:26:06 <dminuoso> Guest56: Right. Think of `nickserv` as a way to register an account with the network
09:26:55 <dminuoso> It's perhaps a bit odd to do this via `/msg`, Im guessing this way of registering your account through private messages was just retrofitted onto IRC.
09:27:29 <Guest56> @mniip yes haskell cam up on top on search page for channels on kiwiirc and I had heard haskell folks are nice on reddit
09:27:29 <lambdabot> Unknown command, try @list
09:27:31 <dminuoso> nickserv and chanserv are official "bots" on the network providing registration services for accounts and channels respectively
09:28:46 × curiousgay quits (~gay@178.217.208.8) (Remote host closed the connection)
09:29:15 <Guest56> dminuoso so if I have account with a network (say libera.chat), I dont need to register with others?
09:29:35 <dminuoso> No you do. The registration is only valid on that particular network.
09:29:59 <Guest56> huh, is all of this complicated or am i just not smart enough
09:30:12 simmsb joins (~ben@2a02:c7f:343a:6d00:69bb:9905:870a:6538)
09:30:33 <Guest56> I will have to find a tutorial for basics of IRC
09:30:37 <Taneb> Guest56: it does take a little getting used to
09:30:42 Gurkenglas_ joins (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de)
09:30:51 × Erutuon quits (~Erutuon@97-116-14-180.mpls.qwest.net) (Ping timeout: 264 seconds)
09:31:34 <dminuoso> Guest56: The main thing to realize, is that IRC is just a generic chat protocol, and a "network" - while in principle could be multiple physical servers - is better thought of as a single (conceptual) server perhaps.
09:32:03 × jonathanclarke quits (~jonathanc@110.44.115.239) (Ping timeout: 264 seconds)
09:32:12 <dminuoso> It's similar to say Slack, where you can connect to multiple networks - and each one requires separate registration of nicknames.
09:32:36 <Guest56> thanks dminuoso and int-e, i found a blogpost,i will read ait and comeback with basic understanding!
09:32:41 <Guest56> have a great day!
09:32:50 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:c481:4314:38df:6304) (Remote host closed the connection)
09:32:52 <dminuoso> You too.
09:33:15 × Guest56 quits (~Guest56@157.45.6.211) (Quit: Connection closed)
09:33:15 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
09:35:24 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
09:35:47 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
09:43:35 jonathanclarke joins (~jonathanc@202-51-76-36.vianet.com.np)
09:44:24 magthe joins (~magthe@c83-252-48-230.bredband.tele2.se)
09:45:33 <magthe> @pl \xs n -> take n xs
09:45:33 <lambdabot> flip take
09:45:54 <magthe> @pl \a b -> fmap (a,) b
09:45:54 <lambdabot> (line 1, column 16):
09:45:54 <lambdabot> unexpected ","
09:45:54 <lambdabot> expecting letter or digit, variable, "(", operator or ")"
09:46:23 <magthe> @pl \a b -> fmap (a +) b
09:46:23 <lambdabot> fmap . (+)
09:46:46 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
09:51:23 <kritzefitz> @pl \a b -> fmap (+ a) b
09:51:24 <lambdabot> fmap . (+)
09:51:39 <kritzefitz> Isn't that wrong, depending on the definition of (+)?
09:53:26 <chddr> @pl \a b -> fmap (`const` a) b
09:53:26 <lambdabot> fmap . const id
09:53:36 <dminuoso> Nope
09:53:38 <chddr> @pl \a b -> fmap (a `const`) b
09:53:39 <lambdabot> fmap . const
09:53:46 <dminuoso> kritzefitz: Num is expected to have commutativity on (+)
09:53:56 <dminuoso> Well. "expected"
09:54:17 <kritzefitz> dminuoso, good point. Now I'm just surprised that lambdabot knows about this.
09:54:21 <dminuoso> But if base haddock says that, I'd find it reasonable if the @pl machinery assumes it
09:55:33 <dminuoso> In hindsight, perhaps `Num` should have been called `Ring`
09:55:55 <tomsmeding> @pl \a b -> fmap (a `f`) b
09:55:55 <lambdabot> fmap . f
09:56:00 <tomsmeding> @pl \a b -> fmap (`f` a) b
09:56:00 <lambdabot> fmap . flip f
09:57:15 × sondre quits (~sondrelun@eduroam-193-157-179-99.wlan.uio.no) (Ping timeout: 264 seconds)
10:00:24 tose joins (~tose@ip-85-160-8-188.eurotel.cz)
10:01:22 × omen quits (~omen@user/omen) (Ping timeout: 264 seconds)
10:03:51 petrus_ joins (~petrus@catv-86-101-33-147.catv.broadband.hu)
10:05:00 × GIANTWORLDKEEPER quits (~pjetcetal@2.95.204.25) (Read error: Connection reset by peer)
10:06:29 sondre joins (~sondrelun@eduroam-193-157-179-99.wlan.uio.no)
10:10:58 × sondre quits (~sondrelun@eduroam-193-157-179-99.wlan.uio.no) (Ping timeout: 264 seconds)
10:12:59 zeenk joins (~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41)
10:13:35 × ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 272 seconds)
10:15:49 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:16:38 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:4d24:abb4:22ba:9c8c)
10:16:50 × Gurkenglas_ quits (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de) (Ping timeout: 265 seconds)
10:17:22 petrus_ parts (~petrus@catv-86-101-33-147.catv.broadband.hu) (WeeChat 3.1)
10:19:06 GIANTWORLDKEEPER joins (~pjetcetal@2.95.204.25)
10:19:46 sondre joins (~sondrelun@eduroam-193-157-179-99.wlan.uio.no)
10:20:01 omen joins (~omen@user/omen)
10:20:09 Aran joins (~Aran@port-92-194-80-170.dynamic.as20676.net)
10:20:39 eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
10:21:10 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:4d24:abb4:22ba:9c8c) (Ping timeout: 264 seconds)
10:21:34 ksqsf joins (~textual@67.209.186.120.16clouds.com)
10:22:27 × v01d4lph4 quits (~v01d4lph4@122.160.65.250) (Ping timeout: 264 seconds)
10:23:26 terrorjack joins (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com)
10:23:45 v01d4lph4 joins (~v01d4lph4@122.160.65.250)
10:24:15 × sondre quits (~sondrelun@eduroam-193-157-179-99.wlan.uio.no) (Ping timeout: 264 seconds)
10:25:22 × eggplant_ quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Ping timeout: 264 seconds)
10:27:08 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Remote host closed the connection)
10:27:53 holy_ joins (~h01y_b4z0@103.244.176.36)
10:30:24 × SanchayanM quits (~Sanchayan@136.185.150.127) (Quit: SanchayanM)
10:30:44 SanchayanM joins (~Sanchayan@136.185.150.127)
10:30:46 pretty_dumm_guy joins (~trottel@92.223.89.152)
10:30:51 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Ping timeout: 264 seconds)
10:31:12 sondre joins (~sondrelun@eduroam-193-157-179-99.wlan.uio.no)
10:33:45 zzz is now known as onion
10:34:35 × tose quits (~tose@ip-85-160-8-188.eurotel.cz) (Remote host closed the connection)
10:34:58 onion is now known as zzz
10:35:22 × hmmmas1 quits (~chenqisu1@183.217.200.8) (Quit: Leaving.)
10:36:14 × Brumaire quits (~quassel@81-64-14-121.rev.numericable.fr) (Remote host closed the connection)
10:36:49 petrus_ joins (~petrus@catv-86-101-33-147.catv.broadband.hu)
10:38:16 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
10:38:43 ddellacosta joins (~ddellacos@89.46.62.83)
10:39:23 holy_bazooka joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:40:02 × juhp quits (~juhp@128.106.188.199) (Ping timeout: 265 seconds)
10:40:18 × holy_ quits (~h01y_b4z0@103.244.176.36) (Read error: Connection reset by peer)
10:44:42 Arsen is now known as Arsen_
10:45:56 Arsen_ is now known as Arsen
10:47:54 holy_ joins (~h01y_b4z0@103.244.176.36)
10:48:09 × holy_bazooka quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Read error: Connection reset by peer)
10:48:15 nan` joins (~nan`@68.235.43.165)
10:48:18 × wolfshappen quits (~waff@irc.furworks.de) (Ping timeout: 264 seconds)
10:49:14 choucavalier parts (~choucaval@mail.peanutbuttervibes.com) (WeeChat 3.1)
10:52:36 holy_bazooka joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
10:52:51 × holy_ quits (~h01y_b4z0@103.244.176.36) (Read error: Connection reset by peer)
10:53:02 curiousgay joins (~curiousga@178.217.208.8)
10:53:21 Brumaire joins (~quassel@81-64-14-121.rev.numericable.fr)
10:53:41 Robin_Jadoul joins (~Robin_Jad@152.67.64.160)
10:54:15 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
10:55:28 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:55:39 wolfshappen joins (~waff@irc.furworks.de)
10:58:23 × holy_bazooka quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Read error: Connection reset by peer)
10:59:17 holy_ joins (~h01y_b4z0@103.244.176.36)
11:00:19 xwx joins (~george@user/george)
11:00:46 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
11:01:17 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:04:21 × holy_ quits (~h01y_b4z0@103.244.176.36) (Ping timeout: 272 seconds)
11:05:37 bsima1 is now known as bsima
11:06:15 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
11:06:26 × Franciman quits (~francesco@host-80-180-196-134.retail.telecomitalia.it) (Quit: Leaving)
11:06:33 holy_ joins (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665)
11:07:54 × Mark_ quits (uid14803@user/mark/x-9597255) (Quit: Connection closed for inactivity)
11:08:55 × nan` quits (~nan`@68.235.43.165) (Remote host closed the connection)
11:09:25 nan` joins (~nan`@68.235.43.165)
11:11:43 hpc_ is now known as hpc
11:12:19 kewa joins (~kewa@5.138.211.57)
11:12:38 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:12:41 tonyz joins (~tonyz@2a02:587:2805:3d8f:34c8:4ae2:aa52:cf49)
11:12:56 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:13:58 × nan` quits (~nan`@68.235.43.165) (Ping timeout: 264 seconds)
11:14:24 boxscape joins (~boxscape@user/boxscape)
11:16:45 forell joins (~forell@host-178-216-90-220.sta.tvknaszapraca.pl)
11:16:49 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:18:16 × alp quits (~alp@163.172.83.213) (Changing host)
11:18:16 alp joins (~alp@user/alp)
11:18:53 satai joins (~satai@ip-37-188-173-38.eurotel.cz)
11:19:36 ksqsf joins (~textual@67.209.186.120.16clouds.com)
11:19:58 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
11:20:16 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:21:36 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 265 seconds)
11:22:10 × SanchayanM quits (~Sanchayan@136.185.150.127) (Quit: SanchayanM)
11:22:54 SanchayanM joins (~Sanchayan@136.185.150.127)
11:23:35 coot joins (~coot@89-64-70-112.dynamic.chello.pl)
11:23:37 × SanchayanM quits (~Sanchayan@136.185.150.127) (Client Quit)
11:23:47 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: No route to host)
11:24:01 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:25:58 × kewa quits (~kewa@5.138.211.57) (Ping timeout: 264 seconds)
11:27:46 × holy_ quits (~h01y_b4z0@2400:adc1:178:c800:9e45:76a9:57f2:1665) (Ping timeout: 264 seconds)
11:28:58 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
11:34:09 pbrisbin joins (~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
11:34:48 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:37:03 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
11:37:07 holy_ joins (~h01y_b4z0@103.244.176.36)
11:39:45 × ixlun quits (~user@195.213.99.113) (Remote host closed the connection)
11:39:46 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
11:40:00 ixlun joins (~user@195.213.99.113)
11:40:05 Plazma joins (~weenis@user/plazma)
11:41:47 trent joins (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
11:43:46 Morrow joins (~Morrow@147.161.9.201)
11:45:19 samhh joins (~samhh@90.252.103.244)
11:46:20 × coot quits (~coot@89-64-70-112.dynamic.chello.pl) (Quit: coot)
11:49:22 × trent quits (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 264 seconds)
11:49:58 × holy_ quits (~h01y_b4z0@103.244.176.36) (Ping timeout: 264 seconds)
11:50:08 smitop joins (uid328768@user/smitop)
11:51:42 × Natch quits (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se) (Remote host closed the connection)
11:53:39 <boxscape> If I have to keep comparing suffixes of a bunch of short (~20 characters) Text values, would it be wise to reverse them and compare prefixes instead?
11:53:49 <boxscape> (i.e. Data.Text.Text)
11:54:39 <tomsmeding> boxscape: element indexing is O(1) on a Text, so that shouldn't matter at all -- in fact the additional reverse will likely make it a bit slower :)
11:54:53 <boxscape> tomsmeding okay, thanks
11:54:58 <tomsmeding> (due to the fact that you're calling an additional function -- namely reverse)
11:55:02 <boxscape> right
11:57:05 Natch joins (~natch@c-e070e255.014-297-73746f25.bbcust.telenor.se)
11:59:21 trent joins (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
12:03:41 bontaq joins (~user@ool-18e47f8d.dyn.optonline.net)
12:07:40 tdammers_ is now known as tdammers
12:08:30 juhp joins (~juhp@bb219-75-40-154.singnet.com.sg)
12:08:55 <merijn> tomsmeding: It's not, though :p
12:09:22 <tomsmeding> lazy/strict text you mean?
12:09:35 dminuoso waits for the O(sqrt(n)) argument
12:09:44 <merijn> No, I mean that Text does not have O(1) element indexing for any sensible notion of element
12:10:01 <dminuoso> Oh
12:10:02 <opqdonut> is Text utf-8 internally?
12:10:02 <merijn> Naah, not the silly O(sqrt(n)) argument
12:10:06 <merijn> No
12:10:11 <dminuoso> opqdonut: its utf16
12:10:14 <dminuoso> Sadly. :)
12:10:16 <opqdonut> right well yeah
12:10:19 <tomsmeding> opqdonut: a number of people are currently working very hard to make text utf-8 :p
12:10:19 <merijn> And that's mostly irrelevant, tbh
12:10:27 <opqdonut> no constant-time indexing since it's not constant-width
12:10:37 <merijn> The value of UTF-8 Text is overrated, imo
12:10:51 × xwx quits (~george@user/george) (Ping timeout: 272 seconds)
12:10:52 <dminuoso> Until you want to interface with other libraries
12:10:55 argento joins (~argent0@168.227.96.51)
12:11:02 <dminuoso> via ffi
12:11:09 <tomsmeding> merijn: okay very good point. However, for suffix equality checking, you only need the (perhaps non-sensible) notion of element that is "a two-byte unit"
12:11:11 <int-e> merijn: oh, the one about energy flow through a surface?
12:11:23 <merijn> opqdonut: Even with constant-width unicode it's no clear to me if it'd be O(1), because of weird stuff like combining characters and various weirdness of unicode
12:11:23 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
12:11:25 brandonh joins (~brandonh@51.190.236.231)
12:11:40 Plazma parts (~weenis@user/plazma) ()
12:11:45 <opqdonut> merijn: oh right, sure. O(1) to access the nth codepoint, but that's mostly not what people want
12:11:48 <tomsmeding> (which would make my conclusion correct but my argument wrong)
12:11:54 <opqdonut> but some variation of nth character
12:12:02 <dminuoso> int-e: its not about energy flow, but rather the combined argument of the speed of light and that the maximum amount of entropy of a given space is limited by its surface, not its volume.
12:12:04 <boxscape> (I'm only dealing with characters allowed in filenames fwit)
12:12:09 <boxscape> s/fwit/fwiw
12:12:19 <merijn> opqdonut: Basically, i'm increasingly convinced that any form of indexing text is just insanity :p
12:12:24 <opqdonut> boxscape: aren't filenames better modeled as ByteString in most systems?
12:12:28 <dminuoso> opqdonut: the notion of "character" is not clear, honestly,
12:12:32 <merijn> opqdonut: Define "most systems"
12:12:32 <tomsmeding> opqdonut: yeah
12:12:32 hellcp joins (~hellcp@83.24.148.243.ipv4.supernova.orange.pl)
12:12:37 <int-e> dminuoso: ah. well, close enough.
12:12:39 <dminuoso> The term is illsuited since there's no useful definition of the term "character"
12:12:42 <opqdonut> dminuoso: yeah
12:12:51 <boxscape> opqdonut quite possibly, but they are read from a file that contains english text, not just filenames
12:12:52 <tomsmeding> I don't think there exist systems where filenames are equal modulo unicode normalisation
12:12:56 <opqdonut> merijn: posix?
12:12:57 <merijn> opqdonut: Windows is unicode, macOS' old filesystem is unicode too
12:13:02 <opqdonut> ok, good to know
12:13:08 <merijn> opqdonut: AppleFS is...weird
12:13:36 <merijn> opqdonut: It's unicode, but handled at the library level, with the FS accepting any byte sequence, leading to confusing behaviour with different normalisations
12:13:38 <tomsmeding> boxscape: what function are you using to check suffix equality
12:13:48 <merijn> imo, Windows is the only one who gets this right
12:14:02 × argento quits (~argent0@168.227.96.51) (Client Quit)
12:14:23 <opqdonut> yeah the linux byte sequence filenames are a bit of a copout
12:14:24 <boxscape> tomsmeding at the moment I'm checking "a `T.isSuffixOf ` b || b `T.isSuffixOf` a", which probably does some checking twice
12:14:26 <opqdonut> leaving userland to deal with problems
12:14:27 hellcp is now known as lcp
12:14:32 argento joins (~argent0@168.227.96.51)
12:14:42 × lcp quits (~hellcp@83.24.148.243.ipv4.supernova.orange.pl) (Client Quit)
12:14:46 <merijn> Requiring a specific known unicode encoding is the only sensible way to handle files when the average user wants to name thing in their own language
12:14:49 shapr`` is now known as shapr
12:14:56 lcp joins (~hellcp@83.24.148.243.ipv4.supernova.orange.pl)
12:15:33 <tomsmeding> boxscape: what about "let len = min (T.length a) (T.length b) in T.takeEnd len a == T.takeEnd len b"
12:15:47 brandonh_ joins (~brandonh@mi-18-24-205.service.infuturo.it)
12:15:48 <boxscape> tomsmeding that sounds like a good idea
12:15:58 absence_ is now known as absence
12:16:04 × lcp quits (~hellcp@83.24.148.243.ipv4.supernova.orange.pl) (Client Quit)
12:16:13 <tomsmeding> merijn: both of these solutions don't actually need O(1) indexing in any "sensible" way, just in the straight bytes way :p
12:16:18 <dminuoso> merijn: I guess on a technical level that means filenames are just identified by a byte sequence.
12:16:19 space-shell joins (~space-she@88.98.247.38)
12:16:41 <merijn> dminuoso: Right, but that means it's impossible to reliably display filenames to users
12:17:01 × argento quits (~argent0@168.227.96.51) (Client Quit)
12:17:04 <dminuoso> Right. And it still leaves the problem of unicode equivalence
12:17:24 <dminuoso> So normalization is a real issue here
12:17:27 <merijn> dminuoso: What if one filename is in UTF-8 and the other is UTF-16 (perhaps because they're made by different users with different locales)
12:17:55 argento joins (~argent0@168.227.96.51)
12:18:09 × brandonh quits (~brandonh@51.190.236.231) (Ping timeout: 265 seconds)
12:18:46 <Maxdamantus> Bytes should always be the way to represent filenames.
12:18:46 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Remote host closed the connection)
12:18:47 <dminuoso> merijn: Easy. Just present them with mojibake.
12:19:01 <dminuoso> You know, like the rest of the text world where encoding is not stored as metadata.
12:19:19 × argento quits (~argent0@168.227.96.51) (Client Quit)
12:19:20 <Maxdamantus> On Windows, you encode the filename into WTF-8. On other systems you just copy the bytes.
12:19:22 × oxide quits (~lambda@user/oxide) (Ping timeout: 264 seconds)
12:19:57 <merijn> Maxdamantus: Windows has a specific, required UTF-16 encoding and normalisation for filenames, enforced by the filesystem it is *not* "WTF-8"
12:19:58 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:20:09 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:20:10 argento joins (~argent0@168.227.96.51)
12:20:16 <Maxdamantus> merijn: hmm.. Pretty sure it doesn't.
12:20:23 <merijn> Yes it does
12:20:28 <Maxdamantus> merijn: pretty sure you can put lone surrogates in Windows filenames.
12:20:41 Maxdamantus will try it at work tomorrow.
12:21:28 <Maxdamantus> If you can't put lone surrogates in, then that would mean some sort of incompatibility with older UCS-2 filenames.
12:21:28 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:21:37 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:21:49 <merijn> Allowing non-sensical unicode is fine, *if* it's a consistent well-specified format
12:22:01 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:22:07 <merijn> The problem with "just bytes" is that any folder can have names using any random mix of encodings
12:22:11 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
12:22:17 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:22:19 <merijn> "oh, but you shouldn't use non-ascii names..."
12:22:40 <merijn> Well, that's just a giant "fuck you" to any computer user outside of the anglophone world
12:22:47 <Maxdamantus> I'm talking about the representation within the program. If the OS doesn't like certain filenames, it can reject those when you try to interact with the OS.
12:22:53 <dminuoso> Even ASCII is not enough, because ASCII being a terminal control protocol, you probably want to limit ASCII to printable codepoints..
12:22:58 <Maxdamantus> You get that with Linux too.
12:23:03 <dminuoso> i.e. how do you print `\BEL` ?
12:23:07 <boxscape> tomsmeding I'm guessing it's faster to do "let {lenA = T.length A; lenB = T.length B; len = min lenA lenB} in lenA == lenB && T.takeEnd len a == T.takeEnd len b"
12:23:13 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:23:13 <merijn> Maxdamantus: Right, and it's one of the things that makes linux awful :p
12:23:22 <Maxdamantus> eg, '\0', '/' and ".." and "." are treated specially.
12:23:34 <tomsmeding> boxscape: what makes you think (==) on Text wouldn't do the length check first itself?
12:23:39 <Maxdamantus> Well, it's better than Windows at least.
12:23:39 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:23:46 <merijn> Maxdamantus: Hard disagree
12:23:46 <boxscape> tomsmeding not thinking it through :)
12:23:59 <merijn> Linux engineering is, in many ways, inferior to Windows
12:24:09 <boxscape> tomsmeding I also compared the wrong lengths
12:24:31 <merijn> Most programmers with "windows is bad" takes just equate "not the same interface as linux, so I can't run my code unchanged" is the same as bad engineering
12:24:31 <dminuoso> I too preferred working with the (then) Win32 API over Linux.
12:24:36 <boxscape> frankly what I wrote just doesn't make much sense :)
12:24:37 <Maxdamantus> merijn: there are lots of extra special cases in Windows, like "nul" and "con".
12:24:39 <dminuoso> It was a mostly consistent and well documented API
12:24:47 <Maxdamantus> mkdir con
12:25:20 <tomsmeding> boxscape: you awakened something in this channel
12:25:26 <boxscape> I sure did
12:25:27 <merijn> dminuoso: Most of the complaints I've read in "windows is bad" discussions are just "windows is doing something different, for totally reasonable engineering reasons, but I hate it, because it's different"
12:25:42 <dminuoso> merijn: Right.
12:25:48 <boxscape> tomsmeding that always happens when someone mentions something involving text and merijn is here :P
12:25:55 <merijn> And it just annoys me. There's plenty of valid criticism of MS/Windows, but blindly asserting their code is badly engineered isn't one of them
12:26:19 <dminuoso> I mean there's a lot of things I hate about Windows and its user interface, but the programmatic interface I found enjoyable to work against ignoring the language itself.
12:26:23 <merijn> boxscape: And time when I'm here and...
12:26:25 <Maxdamantus> I think it's difficult to argue that Windows filenames are not based on accidental technologies that are now obsolete.
12:26:26 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Ping timeout: 244 seconds)
12:26:37 × brandonh_ quits (~brandonh@mi-18-24-205.service.infuturo.it) (Quit: brandonh_)
12:26:40 <merijn> boxscape: My role is to just rant people out of bad decission making ;)
12:26:44 <boxscape> haha
12:26:53 oxide joins (~lambda@user/oxide)
12:27:24 × argento quits (~argent0@168.227.96.51) (Quit: leaving)
12:27:25 <Maxdamantus> (particularly, UCS-2 .. and I suspect it was just some architectural mistake that results in "con" and "nul" and other random things being reserved filenames)
12:27:26 <dminuoso> merijn: Perhaps there's something to be said about when your product comes out of a single shop with paid engineers and clear design goals. A lot of linux is just decades of frankenstein. :)
12:27:28 <merijn> Or at least make sure I can say "I told you so" later
12:27:45 argento joins (~argent0@168.227.96.51)
12:27:50 <merijn> dminuoso: I wonder how people get this impression linux is "well engineered"
12:27:56 <dminuoso> Heh.
12:28:14 <merijn> Like, anyone who has dug through linux kernel code *and* other kernel code will know better
12:28:27 <dminuoso> It starts with "half the interfaces used in linux" is spread across a multitude of libraries controlled by completely different parties
12:28:39 <hpc> most people don't go that far down
12:28:39 <merijn> Linux is more the triumph of "if you throw enough engineers and money at a problem, you can make it go away"
12:28:40 <dminuoso> So there's not even a clear design, because there was nobody to have any design
12:28:57 <Maxdamantus> I wouldn't say that it's "well-engineered", but I think "bytes" has proven to be more universal than "16-bit code units"
12:29:00 <hpc> to be fair, being able to read my laptop's thermometers without writing a bunch of C or running a precompiled executable from some random non-https website is a breath of fresh air
12:29:33 a6a45081-2b83 joins (~aditya@171.76.149.211)
12:29:33 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:29:36 <Maxdamantus> 16-bit code units is obviously a historical mistake. They used them because they thought 65536 characters were enough.
12:29:47 <hpc> it turns out 256 characters were enough :P
12:29:51 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:30:05 <merijn> Except that it's now UTf-16 and UCS-2 is just a subset of that
12:30:43 <Maxdamantus> when it turned out that wasn't the case and they had all this software based on 16-bit code units, they had to make some stupid multi-code-unit encoding, where the original point was to only use a single-code-unit encoding.
12:30:55 <Maxdamantus> if you wanted a multi-code-unit encoding, you should have just invented UTF-8.
12:31:15 xwx joins (~george@user/george)
12:31:15 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
12:31:19 <tomsmeding> Maxdamantus: you and merijn are talking past each other
12:31:26 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
12:31:29 <tomsmeding> merijn is saying, having a consistent encoding enforced by the FS is good
12:31:36 <tomsmeding> you're saying: windows' choice of encoding is bad
12:31:49 <tomsmeding> (I don't know what windows' encoding actually is, so I'm taking your statements on faith)
12:31:54 <tomsmeding> you're not disagreeing :p
12:32:00 <dminuoso> merijn: In my experience, I found checking how stuff works in the linux kernel is an excercise in emotional control. Poorly written C code, very fractured design (in that you get confronted with so many different styles, often inside a singular module), sometimes extremely poorly documented code
12:32:04 <Maxdamantus> I don't think he's saying that. To the extent that he's said that, he is mistaken, because Windows doesn't enforce an encoding.
12:32:14 hueso joins (~root@152.170.216.40)
12:32:40 f33f046c-a02e joins (~aditya@171.76.149.211)
12:32:49 <dminuoso> ret -= 128; /* 30 is enough */
12:32:52 <dminuoso> That was my most recent finding.
12:32:59 <Maxdamantus> Windows enforces an encoding as much as Linux enforces an encoding. There are some special code units ('/' vs '\\') and some special filenames ("." and ".." in Linux, additionally "con", "nul", etc in Windows).
12:33:03 <dminuoso> How stuff like that passes a review is beyond me
12:33:12 × a6a45081-2b83 quits (~aditya@171.76.149.211) (Client Quit)
12:33:30 <Maxdamantus> For the most part, Linux just lets you use arbitrary 8-bit code units and Windows lets you use arbitrary 16-bit code units.
12:34:06 <Maxdamantus> Windows also has various extra restrictions within the ASCII range.
12:34:22 <Maxdamantus> Neither enforces UTF-8 or UTF-16.
12:34:26 <dminuoso> And linux strict adherence to backwards compatibility keeps many APIs locked in poor ergonomics and experience. Since its more important that drivers or userland code must never change, its more worthwhile keeping ancient APIs alive.
12:34:53 <dminuoso> (Perhaps its admitting that there's a lot of stuff that would never be updated, should linux make backwards breaking changes?)
12:35:48 <merijn> I'm still angry about epoll >.>
12:35:56 <merijn> And will forever be
12:35:57 <dminuoso> heh
12:36:08 betelgeuse6 joins (~john2gb@94-225-47-8.access.telenet.be)
12:36:08 <merijn> But that's probably more a topic for -offtopic :p
12:36:45 betelgeuse6 is now known as betelgeuse
12:37:21 <Hecate> betelgeuse: I want to read the comics now…
12:39:27 × tonyz quits (~tonyz@2a02:587:2805:3d8f:34c8:4ae2:aa52:cf49) (Quit: tonyz)
12:40:48 <Maxdamantus> Hm, Googled "windows filenames lone surrogates" and the first result happened to be where WTF-8 was invented: https://github.com/rust-lang/rust/issues/12056
12:42:09 Maxdamantus thinks he recently invented an extension of WTF-8 that encodes UTF-8 errors as well as UTF-16 errors (particularly, for preserving JSON strings sourced from bytes that could be ill-formed UTF-8)
12:45:12 <merijn> That's not really WTF-8, though? That's "our API can't represent what the FS API guarantees"
12:45:42 <Maxdamantus> https://github.com/rust-lang/rust/issues/12056#issuecomment-55786546
12:46:33 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
12:46:56 <Maxdamantus> UTF-8 can't represent (in an obvious way) what the Windows FS API guarantees.
12:47:30 Franciman joins (~francesco@host-80-180-196-134.pool80180.interbusiness.it)
12:47:36 a6a45081-2b83 joins (~aditya@27.58.166.71)
12:47:36 × f33f046c-a02e quits (~aditya@171.76.149.211) (Read error: Connection reset by peer)
12:47:49 × pretty_dumm_guy quits (~trottel@92.223.89.152) (Quit: WeeChat 3.2-dev)
12:49:52 <Maxdamantus> (since UTF-8 just represents Unicode scalar values, but Windows filenames are not sequences of Unicode scalar values, but sequences of 16-bit numbers)
12:49:57 matt7340 joins (~igloo@71.34.249.43)
12:51:46 × qbt quits (~edun@user/edun) (Ping timeout: 264 seconds)
12:52:01 × matt7340 quits (~igloo@71.34.249.43) (Remote host closed the connection)
12:52:23 starlord joins (~starlord@c83-252-164-58.bredband.tele2.se)
12:52:23 × Morrow quits (~Morrow@147.161.9.201) (Read error: Connection reset by peer)
12:52:32 Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net)
12:55:37 × ddellacosta quits (~ddellacos@89.46.62.83) (Ping timeout: 272 seconds)
12:56:38 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
12:56:56 tsandstr joins (~tsandstr@cpe-98-5-88-45.buffalo.res.rr.com)
12:57:34 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
12:57:55 × magthe quits (~magthe@c83-252-48-230.bredband.tele2.se) (Quit: WeeChat 3.1)
13:00:43 × a6a45081-2b83 quits (~aditya@27.58.166.71) (Quit: Konversation terminated!)
13:02:16 × cheater quits (~Username@user/cheater) (Quit: (BitchX) Abort Retry Fail)
13:03:07 ddellacosta joins (~ddellacos@89.46.62.33)
13:05:02 <starlord> Hi! I'm trying to implement a lambda calculus interpreter with a catamorphism using the recursion-schemes package. I've managed to get everything working EXCEPT the Fix combinator. Given I have Covid I might not be the best thinker at the moment but I've spent two full days trying to figure this out and I'm completely stuck. I'd appreciate it super
13:05:02 <starlord> much if someone could eyeball my example and try to lead me in the right direction.
13:05:07 <starlord> https://gist.github.com/simonvpe/28973b45483c31fd030bfbc023178458
13:05:31 <starlord> BTW the fix combinator is confusingly called `Rec` in my example
13:05:42 × v01d4lph4 quits (~v01d4lph4@122.160.65.250) (Read error: Connection reset by peer)
13:06:10 × argento quits (~argent0@168.227.96.51) (Ping timeout: 264 seconds)
13:06:15 v01d4lph4 joins (~v01d4lph4@122.160.65.250)
13:06:47 m7340 joins (~m7340@71.34.249.43)
13:07:36 × m7340 quits (~m7340@71.34.249.43) (Remote host closed the connection)
13:08:40 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
13:10:30 cheater joins (~Username@user/cheater)
13:11:27 × v01d4lph4 quits (~v01d4lph4@122.160.65.250) (Ping timeout: 272 seconds)
13:16:39 stelleg joins (~george@c-69-254-151-147.hsd1.nm.comcast.net)
13:16:40 lbseale_ joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
13:16:53 drewr joins (~drew@2601:483:4100:4112:d91:d97:abf8:56ec)
13:16:56 × WikiLycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
13:17:13 tonyz joins (~tonyz@2a02:587:2805:3d8f:420f:42e1:ccdd:150f)
13:17:20 <boxscape> Wouldn't it make sense to provide a MonadFail (Either String) instance in base?
13:17:48 itai joins (~itai@2a0d:6fc0:7bf:3a00:41db:b036:af30:4662)
13:18:10 <merijn> That'll give some super confusing type errors, though
13:18:12 × drewr quits (~drew@2601:483:4100:4112:d91:d97:abf8:56ec) (Remote host closed the connection)
13:18:30 alx741 joins (~alx741@186.178.108.78)
13:18:30 <merijn> When you accidentally use a partial pattern in some other Either do block
13:18:44 drewr joins (~drew@2601:483:4100:4112:d91:d97:abf8:56ec)
13:19:20 × itai quits (~itai@2a0d:6fc0:7bf:3a00:41db:b036:af30:4662) (Remote host closed the connection)
13:19:21 gehmehgeh joins (~user@user/gehmehgeh)
13:19:35 × drewr quits (~drew@2601:483:4100:4112:d91:d97:abf8:56ec) (Remote host closed the connection)
13:19:58 × lbseale__ quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 264 seconds)
13:19:59 drewr joins (~drew@c-67-187-92-139.hsd1.tn.comcast.net)
13:20:22 m_shiraeeshi joins (~shiraeesh@46.34.207.100)
13:20:35 samebchase1 parts (~samebchas@51.15.68.182) (The Lounge - https://thelounge.chat)
13:21:29 toms parts (~foobar@pogostick.net) ()
13:21:41 reda joins (~reda@user/reda)
13:21:41 lbseale__ joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
13:24:46 × lbseale_ quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 264 seconds)
13:24:50 samebchase joins (~samebchas@51.15.68.182)
13:26:30 dmwit_ is now known as dmwit
13:27:09 ksqsf joins (~textual@67.209.186.120.16clouds.com)
13:28:27 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
13:29:31 × drewr quits (~drew@c-67-187-92-139.hsd1.tn.comcast.net) (Quit: ERC (IRC client for Emacs 27.1))
13:31:45 m7340 joins (~m7340@71.34.249.43)
13:32:58 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
13:33:51 × m7340 quits (~m7340@71.34.249.43) (Remote host closed the connection)
13:34:27 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
13:34:49 argento joins (~argent0@168.227.96.51)
13:35:39 xkapastel joins (uid17782@id-17782.tinside.irccloud.com)
13:36:13 <boxscape> merijn yeah that's fair
13:36:44 brandonh joins (~brandonh@mi-18-24-205.service.infuturo.it)
13:37:58 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Ping timeout: 264 seconds)
13:38:03 × sondre quits (~sondrelun@eduroam-193-157-179-99.wlan.uio.no) (Ping timeout: 272 seconds)
13:39:10 <boxscape> although then again with the couple tests I did just know error messages don't seem to change but there could well be more complex examples where they do
13:41:00 omen_ joins (~omen@user/omen)
13:41:17 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 265 seconds)
13:42:17 sondre joins (~sondrelun@eduroam-193-157-179-99.wlan.uio.no)
13:42:17 × omen quits (~omen@user/omen) (Read error: Connection reset by peer)
13:42:46 × trent quits (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 264 seconds)
13:42:57 <edmundnoble> I think the only error you can expect is actually that there is no MonadFail instance for `Either e`
13:43:34 <boxscape> yeah that's what I've been getting
13:43:43 <boxscape> s/know/now
13:43:44 <edmundnoble> However, you also cannot expect that `e` will be inferred to be `String` just because you used `fail` in the do-block
13:43:56 <edmundnoble> That may be practically annoying
13:44:18 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
13:44:53 zan joins (~zan@193.32.127.216)
13:45:08 <edmundnoble> To change both of those things, you could write it as `instance (e ~ String) => MonadFail (Either e)`, which would disallow writing `MonadFail (Either e)` for any other types `e`. I think that's probably worse because some people likely have such instances
13:45:20 <boxscape> yeah
13:49:41 × tonyz quits (~tonyz@2a02:587:2805:3d8f:420f:42e1:ccdd:150f) (Quit: tonyz)
13:50:00 qbt joins (~edun@user/edun)
13:52:22 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
13:53:57 slice joins (~slice@user/slice)
13:56:54 zan parts (~zan@193.32.127.216) (Leaving)
14:08:42 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
14:09:55 × MidAutumnMoon quits (~MidAutumn@user/midautumnmoon) (Ping timeout: 272 seconds)
14:09:55 ddellaco_ joins (~ddellacos@86.106.121.100)
14:11:19 × ddellacosta quits (~ddellacos@89.46.62.33) (Ping timeout: 244 seconds)
14:12:08 × hueso quits (~root@152.170.216.40) (Read error: Connection reset by peer)
14:13:12 ddellacosta joins (~ddellacos@86.106.121.91)
14:13:24 hueso joins (~root@152.170.216.40)
14:13:30 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Ping timeout: 264 seconds)
14:15:55 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
14:16:43 azeem joins (~azeem@dynamic-adsl-84-220-228-254.clienti.tiscali.it)
14:16:58 × ddellaco_ quits (~ddellacos@86.106.121.100) (Ping timeout: 264 seconds)
14:18:12 × azeem quits (~azeem@dynamic-adsl-84-220-228-254.clienti.tiscali.it) (Client Quit)
14:20:09 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
14:23:52 MidAutumnMoon joins (~MidAutumn@user/midautumnmoon)
14:24:28 × Lord_of_Life_ quits (~Lord@46.217.219.90) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine)
14:24:44 kewa joins (~kewa@5.138.211.57)
14:25:26 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
14:26:42 × tsandstr quits (~tsandstr@cpe-98-5-88-45.buffalo.res.rr.com) (Ping timeout: 264 seconds)
14:28:48 Gurkenglas_ joins (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de)
14:29:53 <tdammers> IMO not having a MonadFail instance for Either is by far the nicer solution
14:30:16 <tdammers> if you really feel the need to have one for Either String, then chances are you should newtype that anyway to give it more semantic oomph
14:30:29 <dminuoso> Woah. Spend nearly an hour debugging mysterious type mismatching errors for a distant missing Generic instance.
14:30:36 <tdammers> and if you're going to do that anyway, might as well spell out the 2-line instance
14:30:37 dminuoso sighs
14:31:56 × omen_ quits (~omen@user/omen) (Remote host closed the connection)
14:32:21 omen_ joins (~omen@user/omen)
14:34:38 <dminuoso> How can GHC come up with a mismatching type error if a Generic instance is missing?
14:35:12 <dminuoso> Is there an obvious way to provoke this? Asking because Im quite baffled
14:39:32 manicennui joins (uid349235@id-349235.tinside.irccloud.com)
14:41:06 mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
14:41:48 atwm joins (~andrew@19-193-28-81.ftth.cust.kwaoo.net)
14:47:38 Deide joins (~Deide@wire.desu.ga)
14:47:38 × Deide quits (~Deide@wire.desu.ga) (Changing host)
14:47:38 Deide joins (~Deide@user/deide)
14:48:03 ddellaco_ joins (~ddellacos@89.46.62.22)
14:49:50 slowButPresent joins (~slowButPr@user/slowbutpresent)
14:50:42 × ddellacosta quits (~ddellacos@86.106.121.91) (Ping timeout: 264 seconds)
14:51:10 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
14:51:23 × ksqsf quits (~textual@67.209.186.120.16clouds.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:53:13 petrus_ parts (~petrus@catv-86-101-33-147.catv.broadband.hu) (WeeChat 3.1)
14:53:30 xwx joins (~george@user/george)
14:53:56 <lyxia> it can happen because of an equality with a stuck application of the Rep type family
14:54:00 horex539 joins (~horex539@2a02:a03f:6aa5:a00:3c1a:90fc:fb6d:766e)
14:57:46 × samhh quits (~samhh@90.252.103.244) (Ping timeout: 264 seconds)
15:03:14 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
15:04:36 <raehik> I've come across some code where `pure` is used in a do block, in a StateT IO monad. Is there any difference between pure and return in cases like this?
15:04:45 <boxscape> no
15:05:01 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
15:05:05 <boxscape> I think even with -XApplicativeDo, return and pure are the same
15:05:14 <boxscape> in that context
15:05:52 <raehik> my experience agrees but I was wondering how Applicative gets "upgraded" to Monad
15:06:29 <boxscape> for common types, pure == return and <*> == ap
15:07:27 <boxscape> raehik is the "upgraded" question about how they are related or how the types work out, since you have a Monad constraint but are using Applicative methods?
15:07:39 <boxscape> s/related/related in terms of semantics
15:08:01 <raehik> ah! maybe I was misunderstanding the context
15:08:19 <raehik> I was thinking "using pure makes it an Applicative, but it ends in a Monad"
15:08:45 <raehik> But being in a Monad means we can use Applicatives. I tripped up in my head a bit
15:08:54 <boxscape> yeah since Applicative is a superclass of Monad, you can always tell ghc that something has a Monad constraint instead of Applicative
15:08:58 <raehik> boxscape: thanks for writing it out like that lol
15:09:04 <boxscape> % :t pure :: Monad f => a -> f a
15:09:04 <yahb> boxscape: Monad f => a -> f a
15:09:07 <boxscape> np
15:09:11 <raehik> right right right
15:11:27 ddellacosta joins (~ddellacos@86.106.121.79)
15:14:21 <boxscape> So, I have a Map with Text keys, and I want the lookup to match whenever I pass in something of which the key is a suffix. I think I can make this work with a custom Ord instance, but since Eq is commutative, that means it must also match if the passed in value is a suffix of the key. I don't think that should be a problem for my use case, but is
15:14:21 <boxscape> there a neat way to get around this? I'm not going to be able to use packages here that ghc doesn't ship with.
15:14:34 × ddellaco_ quits (~ddellacos@89.46.62.22) (Ping timeout: 264 seconds)
15:14:35 <boxscape> s/Eq/(==)
15:14:50 <boxscape> s/commutative/symmetric, I guess
15:15:59 <boxscape> feels Trie-y but not sure it's worth implementing that when a Map is likely to do the job
15:16:50 <c_wraith> Map is really weird there. Like, it works, but it sure isn't what someone would expect it to do
15:17:00 <boxscape> hmm
15:17:06 <boxscape> that is true
15:18:00 <opqdonut> boxscape: one "neat" way is to reverse the strings, and then use Data.Map.split
15:18:38 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:3c1a:90fc:fb6d:766e) (Remote host closed the connection)
15:19:01 <opqdonut> > Data.Map.split "ab" (Data.Map.fromList [("aa",1),("aaa",2),("aba",3),("abc",4)])
15:19:02 <lambdabot> (fromList [("aa",1),("aaa",2)],fromList [("aba",3),("abc",4)])
15:19:10 <c_wraith> couldn't you use lookupLE or lookupGE instead of split?
15:19:58 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
15:20:09 <boxscape> % Data.Map.lookupGE "ab" (Data.Map.fromList [("aa",1),("aaa",2),("aba",3),("abc",4)])
15:20:09 <yahb> boxscape: Just ("aba",3)
15:20:11 <opqdonut> c_wraith: those don't exist in my Data.Map, but sure
15:20:23 <geekosaur> ?
15:20:28 <opqdonut> oh I was browsing ancient docs
15:20:28 <boxscape> that seems like a good idea, thanks
15:20:44 <c_wraith> Yeah, I was sure those functions had been around for a while
15:21:10 <boxscape> I guess I'm going to need to make sure afterwards that it actually is a suffix
15:21:14 <opqdonut> yeah
15:24:53 × WikiLycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
15:28:43 learner-monad joins (~ehanneken@cpe-174-105-47-100.columbus.res.rr.com)
15:29:39 <boxscape> hm, actually it's not quite that because this checks if the lookup key is a suffix of the Map key, rather than vice versa. But it should lead me towards the right solution, anyway
15:30:00 Hobbyboy joins (Hobbyboy@hobbyboy.co.uk)
15:33:01 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:d4bd:911b:bb62:6168) (Quit: WeeChat 2.8)
15:34:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:39:13 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
15:39:26 × Franciman quits (~francesco@host-80-180-196-134.pool80180.interbusiness.it) (Quit: Leaving)
15:42:13 × qbt quits (~edun@user/edun) (Quit: WeeChat 3.1)
15:44:58 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
15:45:20 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
15:46:05 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:50:01 <xerox> anybody knows what "Paths_strip" is here? https://github.com/hspec/hspec-example/blob/master/strip.cabal#L40 can't find it in the cabal docs directly, only a sideways mention pops up in direct search https://cabal.readthedocs.io/en/3.4/search.html?q=Paths_&check_keywords=yes&area=default
15:50:47 <c_wraith> that's.. weird. why is it in other-modules?
15:51:10 <xerox> both in the test-suite and the library to boot
15:51:15 × chddr quits (~Thunderbi@91.226.34.182) (Ping timeout: 272 seconds)
15:51:26 <c_wraith> the Paths_* modules are created by cabal to include installation locations of data files
15:51:41 <c_wraith> Paths_strip is going to have locations for the strip package
15:51:51 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
15:52:27 <c_wraith> but... including it in the cabal file makes no sense because it should be generated on installation, not packaged up as part of the source
15:53:03 <xerox> I think it's a way to fix the problem of the spec files importing the relative files they are the spec for in an automated fashion, except it doesn't quite work for me so I wanted to dig a bit, coming up empty tho
15:53:20 <c_wraith> Oh, maybe putting it in other-modules is a weird attempt to prevent people from using it?
15:53:41 <c_wraith> I don't know *why* you would do that, but it probably would prevent people from using it
15:53:43 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
15:54:26 <c_wraith> oh, that file is generated by hpack, so hpack is going to do that with everything it touches. lovely.
15:54:55 <c_wraith> summary: don't use hpack
15:55:05 <xerox> ah that's different
15:55:07 <monochrom> :)
15:55:21 <xerox> good catch I thought it was a hand written cabal file like mine
15:56:21 notzmv is now known as loskami
15:56:30 <c_wraith> maybe hpack is doing that because there are no other-files included, so the Paths module should be empty anyway?
15:56:34 <c_wraith> It's just bizarre
15:56:43 loskami is now known as notzmv
15:56:53 <Clint> i'm pretty sure cabal yelled at me to put a Paths_ module in autogen-modules before
15:58:23 <c_wraith> see, that's a place that makes sense. other-modules does not.
15:58:43 <c_wraith> other-modules just exists to prevent modules from being imported
15:59:12 <monochrom> xerox: https://cabal.readthedocs.io/en/3.4/cabal-package.html?highlight=getsysconfdir#accessing-data-files-from-package-code explains Paths_*
16:00:20 × Tomurb quits (~tom@158.194.92.121) (Ping timeout: 244 seconds)
16:00:28 <c_wraith> Except within the package itself, I suppose. Ok, I understand what hpack was trying to do, but it did it weirdly.
16:00:36 <monochrom> Ah, it is also supposed to be listed under other-modules and autogen-modules
16:00:51 × lbseale__ quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 264 seconds)
16:01:27 × Aran quits (~Aran@port-92-194-80-170.dynamic.as20676.net) (Ping timeout: 264 seconds)
16:01:35 <c_wraith> yeah, looks like autogen-modules prevents it from being included in the sdist
16:01:35 <monochrom> Actually I don't know why it "must" be in other-modules. Then again in most use cases it is an implementation detail you don't normally export.
16:01:50 × nerdy quits (znc@152.67.162.71) (Changing host)
16:01:50 nerdy joins (znc@user/nerdypepper)
16:01:55 <trueboxguy> I use paths a lot, but I always get haddock complaining about Paths_* not being documented
16:02:06 × brandonh quits (~brandonh@mi-18-24-205.service.infuturo.it) (Read error: Connection reset by peer)
16:02:18 lbseale joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
16:02:28 <monochrom> It is not supposed to be included in sdist though. Its content is supposed to change at build time.
16:02:29 <xerox> so the Paths_<name> under library is instructing cabal to generate / expose that particular module, whereas the one under test-suite is making it possible for the test suite to access it?
16:02:32 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Remote host closed the connection)
16:03:21 <c_wraith> I don't understand why it would be in other-modules if you expect it to be used. other-modules is for things other packages can't import.
16:03:47 <c_wraith> I guess the idea is you don't expect any other package to use your data files
16:03:49 ddellaco_ joins (~ddellacos@89.46.62.112)
16:04:00 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
16:04:53 <c_wraith> but once again, the strip package has no data-files section, so it's a lot of dubious ceremony for nothing
16:06:05 <xerox> oh it's *just* data files, it has nothing to do with modules
16:06:23 × unyu quits (~pyon@user/pyon) (Quit: WeeChat 3.1)
16:06:39 brandonh joins (~brandonh@2a04:3542:1000:910:905f:f9ff:fe67:4d32)
16:06:50 × ddellacosta quits (~ddellacos@86.106.121.79) (Ping timeout: 252 seconds)
16:07:17 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:07:24 nschoe joins (~quassel@178.251.84.79)
16:09:11 × cdsmithus quits (~cdsmithus@c-73-184-127-183.hsd1.ga.comcast.net) (Ping timeout: 265 seconds)
16:09:17 cheater1__ joins (~Username@user/cheater)
16:09:25 × cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds)
16:09:28 cheater1__ is now known as cheater
16:11:24 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
16:11:42 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 244 seconds)
16:12:38 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
16:15:10 × kewa quits (~kewa@5.138.211.57) (Ping timeout: 264 seconds)
16:16:37 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Remote host closed the connection)
16:17:04 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
16:18:34 favonia joins (~favonia@user/favonia)
16:18:46 × cheater quits (~Username@user/cheater) (Ping timeout: 264 seconds)
16:18:48 cheater1__ joins (~Username@user/cheater)
16:18:50 cheater1__ is now known as cheater
16:21:13 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
16:22:40 fiddlerwoaroof_ is now known as fiddlerwoaroof
16:23:35 × cheater quits (~Username@user/cheater) (Ping timeout: 244 seconds)
16:26:35 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
16:26:41 cheater joins (~Username@user/cheater)
16:27:31 horex539 joins (~horex539@2a02:a03f:6aa5:a00:a0ab:6427:bbfe:e121)
16:28:56 pretty_dumm_guy joins (~trottel@185.244.212.222)
16:29:10 × boxscape quits (~boxscape@user/boxscape) (Quit: Connection closed)
16:34:08 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:34:56 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:35:12 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:36:12 cnr joins (~cnr@user/cnr)
16:37:08 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:37:17 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:a0ab:6427:bbfe:e121) (Ping timeout: 272 seconds)
16:37:23 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: No route to host)
16:38:13 Ariakenom joins (~Ariakenom@2001:9b1:efb:fc00:caa:2c0d:7263:2825)
16:39:35 afnan joins (~textual@104.153.228.129)
16:40:51 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:40:57 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:42:02 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:42:09 cdsmithus joins (~cdsmithus@c-73-184-127-183.hsd1.ga.comcast.net)
16:42:42 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
16:43:37 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.1)
16:43:37 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:44:00 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine)
16:44:04 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:44:34 × atwm quits (~andrew@19-193-28-81.ftth.cust.kwaoo.net) (Ping timeout: 264 seconds)
16:44:46 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:45:06 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:45:18 × space-shell quits (~space-she@88.98.247.38) (Quit: Connection closed)
16:45:31 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 272 seconds)
16:45:44 favonia joins (~favonia@user/favonia)
16:46:08 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
16:46:08 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
16:47:27 ThatsWhatIDo joins (~whateverm@pool-108-54-183-148.nycmny.fios.verizon.net)
16:49:43 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:49:49 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: No route to host)
16:50:28 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:50:34 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:51:15 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
16:51:22 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:52:32 acowley_ is now known as acowley
16:53:43 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Client Quit)
16:54:36 × ixlun quits (~user@195.213.99.113) (Remote host closed the connection)
16:57:07 × nschoe quits (~quassel@178.251.84.79) (Ping timeout: 272 seconds)
16:57:34 Guest11 joins (~textual@146.212.240.255)
16:57:41 Franciman joins (~francesco@host-80-180-196-134.pool80180.interbusiness.it)
16:58:22 Guest11 is now known as klemzi32
16:58:23 × oxide quits (~lambda@user/oxide) (Read error: Connection reset by peer)
16:59:36 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
16:59:58 <klemzi32> hi! i am looking for a place to ask beginner haskell questions. is this the right place?
17:00:50 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
17:00:50 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
17:00:55 <monochrom> Yes!
17:00:57 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:01:05 <joel135> Yes, or /join #haskell-beginners if you prefer, your choice
17:01:23 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
17:01:49 oxide joins (~lambda@user/oxide)
17:02:03 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:02:41 <klemzi32> great! i'll join beginners chat as well.
17:03:10 × favonia quits (~favonia@user/favonia) (Ping timeout: 264 seconds)
17:03:39 <klemzi32> i am following the haskell book and struggling a bit with Applicative. here is my code for the specific example https://paste.tomsmeding.com/vRuyORpg
17:04:23 favonia joins (~favonia@user/favonia)
17:05:28 rbutler joins (uid5425@id-5425.highgate.irccloud.com)
17:05:38 <klemzi32> I have updated the link with the error and code https://paste.tomsmeding.com/ZxlTBM8e
17:06:18 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: Textual IRC Client: www.textualapp.com)
17:06:19 <klemzi32> fmap works fine, also <> works, however i can't figure out why the <*> does not work
17:06:56 nan`_ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:07:34 <[exa]> klemzi32: you are combining, by types, `(Two (x->y) (z->w))` with `(Two a b)`
17:08:16 <[exa]> klemzi32: instead, you should combine `Two a (b->c)` with `Two a b` to produce `Two a c`
17:08:44 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: No route to host)
17:08:51 <joel135> i.e. f1 is not a function!
17:08:51 nan`__ joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:09:27 × nan`_ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: No route to host)
17:10:16 <[exa]> klemzi32: semi-correct visual aid to get it right: the "Functor part" of the type, which is the whole (Two a), never changes. Imagine it as the "wrap", which stays the same. Only what's "inside" of it (ie. `b`) changes.
17:11:35 <[exa]> for correct implementation just follow the types:
17:11:36 <klemzi32> got it, i think it clicked now. basically the same as fmap where only b gets modified, however a stays the same. here it's the difference that the function is also wrapped in a structure
17:11:49 <[exa]> yes
17:12:03 ddellacosta joins (~ddellacos@89.46.62.38)
17:12:07 × eal quits (~eal@customer-46-39-107-10.stosn.net) (Quit: ZNC - http://znc.in)
17:13:10 <[exa]> the obvious problem is what to do with two incoming a's when you only need to produce one, there are at least 4 sensible ways to do that. I recommend using one of the typeclasses you already have there.
17:13:19 <klemzi32> so my implementation is wrong? or I am just passing wrong params?
17:13:22 × ddellaco_ quits (~ddellacos@89.46.62.112) (Ping timeout: 264 seconds)
17:13:30 × nan`__ quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 264 seconds)
17:13:51 <klemzi32> i checked on github the solutions and mine looks the same
17:13:59 <monochrom> Passing wrong params.
17:14:00 <[exa]> I might got a bit confused by the f1 f2, looked like functions
17:14:10 <[exa]> actualy you're using f1 as the function
17:14:20 <[exa]> s/function/monoid/
17:14:20 Tomurb joins (~tom@92-17.net.optinet.cz)
17:14:22 <[exa]> which is right
17:15:37 boxscape joins (~boxscape@user/boxscape)
17:16:41 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:16:45 × ddellacosta quits (~ddellacos@89.46.62.38) (Ping timeout: 272 seconds)
17:18:17 ddellacosta joins (~ddellacos@89.46.62.125)
17:18:18 abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
17:18:57 <[exa]> klemzi32: ok I finally found the link with the actual error. the first thing in Two needs to be a Monoid for <*> to work
17:19:06 <[exa]> in your case, `4` is not a monoid
17:19:13 <klemzi32> thanks! now i have figured it out. it works with for example Two "ab" (+5) <*> Two "cd" 10. it didn't work with Two 5 (+5) <*> Two 4 10 because 4<>5 does not work, it's not a monoid
17:19:17 <[exa]> (but e.g. `Sum 4` is)
17:19:25 <monochrom> Yes that's a better example.
17:22:09 <klemzi32> thanks for the help! now it clicked
17:22:15 cheater1__ joins (~Username@user/cheater)
17:22:15 × cheater quits (~Username@user/cheater) (Ping timeout: 272 seconds)
17:22:17 cheater1__ is now known as cheater
17:23:28 × brandonh quits (~brandonh@2a04:3542:1000:910:905f:f9ff:fe67:4d32) (Quit: brandonh)
17:27:46 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
17:28:27 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Read error: Connection reset by peer)
17:28:48 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:30:40 agumonkey joins (~user@88.160.31.174)
17:31:03 eal joins (~eal@customer-46-39-107-10.stosn.net)
17:34:03 × agumonkey quits (~user@88.160.31.174) (Remote host closed the connection)
17:34:17 × argento quits (~argent0@168.227.96.51) (Ping timeout: 252 seconds)
17:35:45 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 272 seconds)
17:36:10 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
17:37:36 × pounce quits (~pounce@user/pounce) (Changing host)
17:37:36 pounce joins (~pounce@facebook/engineering/pounce)
17:39:37 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
17:39:51 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
17:47:48 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
17:48:29 × TimWolla quits (~timwolla@chrono.xqk7.com) (Quit: Bye)
17:48:32 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
17:48:45 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
17:52:13 TimWolla joins (~timwolla@2a01:4f8:150:6153:beef::6667)
17:54:48 um joins (ak84ku0ger@user/um)
17:55:11 um parts (ak84ku0ger@user/um) ()
17:55:14 × xkapastel quits (uid17782@id-17782.tinside.irccloud.com) (Quit: Connection closed for inactivity)
17:55:38 × Techcable quits (~Techcable@168.235.93.147) (Quit: ZNC - https://znc.in)
17:56:21 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
17:56:51 Techcable joins (~Techcable@168.235.93.147)
17:57:07 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
17:59:11 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds)
17:59:33 allbery_b is now known as geekosaur
18:03:26 × pretty_dumm_guy quits (~trottel@185.244.212.222) (Ping timeout: 252 seconds)
18:05:36 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
18:07:22 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
18:07:28 samhh joins (~samhh@90.252.103.244)
18:07:36 × alx741 quits (~alx741@186.178.108.78) (Quit: alx741)
18:07:50 × sondre quits (~sondrelun@eduroam-193-157-179-99.wlan.uio.no) (Ping timeout: 252 seconds)
18:11:16 <dsal> > 4 <> 5 :: Sum Int
18:11:17 <lambdabot> Sum {getSum = 9}
18:11:55 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Remote host closed the connection)
18:13:33 xwx joins (~george@user/george)
18:14:35 <boxscape> > 4 * 5 :: Sum Int
18:14:36 <lambdabot> Sum {getSum = 20}
18:14:43 <boxscape> didn't actually realize it had a Num instance
18:16:21 <dsal> > fold [1, 2, 3, 4, 5] :: Sum Int
18:16:22 <lambdabot> Sum {getSum = 15}
18:16:23 <dsal> > fold [1, 2, 3, 4, 5] :: Product Int
18:16:25 <lambdabot> Product {getProduct = 120}
18:16:28 <dsal> It's kind of helpful sometimes.
18:16:29 ikex joins (~ash@user/ikex)
18:17:16 × ryantrinkle quits (~ryan@24.229.199.25.res-cmts.sm.ptd.net) (Ping timeout: 265 seconds)
18:17:56 ryantrinkle joins (~ryan@24.229.199.25.res-cmts.sm.ptd.net)
18:21:00 <boxscape> no Enum instance though :(
18:21:08 <boxscape> > getProduct $ fold [1..5]
18:21:09 <lambdabot> error:
18:21:09 <lambdabot> • No instance for (Enum (Product Integer))
18:21:09 <lambdabot> arising from a use of ‘e_115’
18:21:34 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
18:22:22 <boxscape> at least you can do
18:22:23 <boxscape> > ala Product foldMap [1..5]
18:22:24 <lambdabot> 120
18:24:11 <tomsmeding> :t ala
18:24:12 <lambdabot> (Functor f, Rewrapped s t, Rewrapped t s) => (Unwrapped s -> s) -> ((Unwrapped t -> t) -> f s) -> f (Unwrapped s)
18:24:15 × samhh quits (~samhh@90.252.103.244) (Ping timeout: 264 seconds)
18:25:47 × ikex quits (~ash@user/ikex) (Ping timeout: 272 seconds)
18:26:04 × Franciman quits (~francesco@host-80-180-196-134.pool80180.interbusiness.it) (Quit: Leaving)
18:28:17 ru0mad joins (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8)
18:28:28 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
18:29:00 argento joins (~argent0@168.227.96.51)
18:29:04 <trueboxguy> Haha
18:29:47 ru0mad is now known as ruomad
18:31:34 <tomsmeding> that type is so deceiving
18:32:21 <tomsmeding> 1. 'class Wrapped s => Rewrapped s r' has no methods
18:33:04 <tomsmeding> and 'Wrapped s' is just an isomorphism between s and Unwrapped s, where Unwrapped (Product s) = s
18:33:27 alx741 joins (~alx741@186.178.108.78)
18:33:32 <tomsmeding> 2. the (Unwrapped s -> s) argument is ignored; instead it uses the isomorphism from the instance
18:34:17 jiribenes_ joins (~jiribenes@rosa.jiribenes.com)
18:34:33 × jiribenes quits (~jiribenes@rosa.jiribenes.com) (Ping timeout: 272 seconds)
18:36:36 fart joins (~fart@user/actor)
18:38:10 sondre joins (~sondrelun@cm-84.212.100.140.getinternet.no)
18:38:42 × ruomad quits (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8) (Ping timeout: 264 seconds)
18:40:21 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Ping timeout: 272 seconds)
18:40:31 atwm joins (~andrew@19-193-28-81.ftth.cust.kwaoo.net)
18:42:47 coot joins (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl)
18:43:18 <edwardk> tomsmeding: we use (#.) and (.#) all over lens too for much the same reason
18:43:22 × slice quits (~slice@user/slice) (Ping timeout: 264 seconds)
18:43:45 <edwardk> except there we get to exploit its just a coercion
18:43:45 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
18:45:10 × atwm quits (~andrew@19-193-28-81.ftth.cust.kwaoo.net) (Ping timeout: 264 seconds)
18:45:13 × Tomurb quits (~tom@92-17.net.optinet.cz) (Ping timeout: 272 seconds)
18:45:42 × klemzi32 quits (~textual@146.212.240.255) (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:46:21 Guest11 joins (~textual@146.212.240.255)
18:46:52 ru0mad joins (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8)
18:47:14 <boxscape> edwardk does that mean ala couldn't be implemented with Coercible instead of Re-/Unwrapped?
18:48:34 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
18:52:42 ru0mad is now known as ruomad
18:53:40 × ruomad quits (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8) (Quit: Mutter: www.mutterirc.com)
18:54:31 ru0mad joins (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8)
18:54:56 × ru0mad quits (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8) (Client Quit)
18:55:37 ruomad joins (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8)
18:55:56 <edwardk> :t au
18:55:57 <lambdabot> Functor f => AnIso s t a b -> ((b -> t) -> f s) -> f a
18:56:00 <edwardk> :t ala
18:56:01 <lambdabot> (Functor f, Rewrapped s t, Rewrapped t s) => (Unwrapped s -> s) -> ((Unwrapped t -> t) -> f s) -> f (Unwrapped s)
18:57:23 <edwardk> its currently set up to use ala Sum = au _Sum -- au/auf allow use of an arbitrary Iso. ala/alaf pick the iso via the same instances. there is a subtle problem with your proposal, which is that ala can change types. e.g. go in at Sum Int and come out at Sum Double
18:57:29 <edwardk> and i can't model that with Coercible directtly
18:57:31 × WikiLycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
18:57:54 <edwardk> er rather the current version can, and one that is based on just Coercible can't
18:58:01 <boxscape> ah, I see
18:59:07 econo joins (uid147250@user/econo)
18:59:52 berberman joins (~berberman@user/berberman)
19:01:03 × berberman_ quits (~berberman@user/berberman) (Ping timeout: 272 seconds)
19:01:04 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) ()
19:01:27 × fart quits (~fart@user/actor) (Ping timeout: 264 seconds)
19:01:27 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
19:02:08 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
19:02:40 Mark_ joins (uid14803@user/mark/x-9597255)
19:02:52 xwx joins (~george@user/george)
19:03:40 mikess joins (~sam@user/mikess)
19:04:12 fart joins (~fart@user/actor)
19:05:02 × fart quits (~fart@user/actor) (Client Quit)
19:06:58 × ruomad quits (~ruomad@2a01:e0a:98f:8270:7460:8d33:efee:e1c8) (Quit: Mutter: www.mutterirc.com)
19:09:26 ruomad joins (~ruomad@82-64-17-144.subs.proxad.net)
19:11:06 <maerwald> how do you find unused dependencies in your .cabal again?
19:12:17 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Remote host closed the connection)
19:13:08 <trueboxguy> If you had -Wunused-packages as a ghc option, would it work? I think cabal passes the packages used into ghc
19:13:42 × ruomad quits (~ruomad@82-64-17-144.subs.proxad.net) (Remote host closed the connection)
19:14:12 × favonia quits (~favonia@user/favonia) (Quit: Leaving)
19:14:54 Tomurb joins (~tom@92-17.net.optinet.cz)
19:16:27 favonia joins (~favonia@user/favonia)
19:19:48 × argento quits (~argent0@168.227.96.51) (Quit: leaving)
19:20:42 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
19:21:06 × dhouthoo quits (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1)
19:22:48 × omen_ quits (~omen@user/omen) (Quit: Leaving)
19:24:06 kmein joins (~weechat@static.173.83.99.88.clients.your-server.de)
19:25:03 mikess parts (~sam@user/mikess) ()
19:25:11 xkapastel joins (uid17782@id-17782.tinside.irccloud.com)
19:26:26 xwx joins (~george@user/george)
19:26:47 eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5)
19:28:58 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
19:31:33 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:33:33 × Tomurb quits (~tom@92-17.net.optinet.cz) (Ping timeout: 272 seconds)
19:34:30 <edwardk> trueboxguy: there's some stack driven tool that neil mitchell maintains, before that there used to be one from hvr that just used a cabal-driven workflow, but its a few ghc releases behind
19:35:23 <Hecate> heya trueboxguy :)
19:35:40 <trueboxguy> Hecate: hi, finally set up that bouncer
19:37:17 <Hecate> :)
19:39:16 Aran joins (~Aran@port-92-194-80-170.dynamic.as20676.net)
19:41:02 atwm joins (~andrew@19-193-28-81.ftth.cust.kwaoo.net)
19:41:27 <maerwald> TH compilation order seems to have changed in 9.0.1 again
19:41:33 Tomurb joins (~tom@92-17.net.optinet.cz)
19:41:38 <maerwald> my json derivings are all broken
19:45:20 Deide1 joins (~Deide@wire.desu.ga)
19:47:46 Deide2 joins (~Deide@wire.desu.ga)
19:47:55 × Deide quits (~Deide@user/deide) (Ping timeout: 272 seconds)
19:49:58 × Deide1 quits (~Deide@wire.desu.ga) (Ping timeout: 264 seconds)
19:49:59 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
19:50:43 <dminuoso> Mmm, the cabal docs dont to the target selector algorithm justice..
19:51:46 × atwm quits (~andrew@19-193-28-81.ftth.cust.kwaoo.net) (Ping timeout: 264 seconds)
19:52:57 eziotobi joins (~eziotobi@186.106.65.175)
19:53:34 × Tomurb quits (~tom@92-17.net.optinet.cz) (Ping timeout: 264 seconds)
19:54:48 Chobbes_ is now known as Chobbes
19:59:56 <dminuoso> cabal-install fails to build on a nix machine with this linker error:
19:59:58 <dminuoso> https://gist.github.com/dminuoso/fce1467405c045810438dc6425aa13b2
20:00:18 <dminuoso> Oh hold on, just as I hit enter I realized my mistake
20:01:08 × sondre quits (~sondrelun@cm-84.212.100.140.getinternet.no) (Ping timeout: 252 seconds)
20:01:59 eziotobi_ joins (~eziotobi@190.215.119.50)
20:02:29 minoru_shiraeesh joins (~shiraeesh@109.166.57.151)
20:02:39 × xwx quits (~george@user/george) (Ping timeout: 264 seconds)
20:04:35 × eziotobi quits (~eziotobi@186.106.65.175) (Ping timeout: 272 seconds)
20:04:35 × m_shiraeeshi quits (~shiraeesh@46.34.207.100) (Ping timeout: 272 seconds)
20:05:34 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
20:05:48 paolino joins (~paolo@84.33.186.150)
20:05:54 paolinoZ joins (~paolo@84.33.186.150)
20:06:11 × paolinoZ quits (~paolo@84.33.186.150) (Client Quit)
20:06:46 kubes joins (~kubes@188.120.84.109)
20:07:13 × paolino quits (~paolo@84.33.186.150) (Remote host closed the connection)
20:07:18 xwx joins (~george@user/george)
20:09:04 × kubes quits (~kubes@188.120.84.109) (Client Quit)
20:09:15 sondre joins (~sondrelun@cm-84.212.100.140.getinternet.no)
20:11:30 Wanderer joins (~wanderer@user/wanderer)
20:15:15 Erutuon joins (~Erutuon@97-116-14-180.mpls.qwest.net)
20:15:58 atwm joins (~andrew@19-193-28-81.ftth.cust.kwaoo.net)
20:18:43 Deide joins (~Deide@wire.desu.ga)
20:18:43 × Deide quits (~Deide@wire.desu.ga) (Changing host)
20:18:43 Deide joins (~Deide@user/deide)
20:20:03 <dmwit> maerwald: https://hackage.haskell.org/package/packunused ?
20:20:38 <maerwald> Cabal (==1.24.*)
20:20:44 <maerwald> the dream...
20:20:46 × bec quits (~bec@user/bec) (Quit: Connection closed)
20:21:29 × Deide2 quits (~Deide@wire.desu.ga) (Ping timeout: 252 seconds)
20:23:13 ejojo joins (~ejojo@89.107.3.51)
20:23:29 <nova> What is the preferred method for installing haskell, ghc, cabal, xmonad on arch?
20:23:46 <sclv> ghcup
20:23:52 ruomad joins (~ruomad@82-64-17-144.subs.proxad.net)
20:23:54 <Rembane> nova: ghcup is a quite good experience
20:23:55 fendor_ joins (~fendor@91.141.0.18.wireless.dyn.drei.com)
20:24:23 <dmwit> maerwald: There is also https://hackage.haskell.org/package/prune-juice, which states "packunused is unmaintained since 2014" as a reason for existing, haha.
20:24:26 <nova> I don't even know what it is, but I will spare the channel some spam and eggs and will promptly search it, and if I have any questions, I shall return.
20:24:50 <dmwit> Only seems to work with stack though? Not sure.
20:24:51 kewa joins (~kewa@5.138.211.57)
20:25:29 <nova> oh goody - it's one of those 07bash -c "$(curl http://totaly-not-hax.com)" type things. I mean, I trust it, but .. eh .. okey ..
20:26:31 <dmwit> nova: You may be able to get it from your distro's package manager.
20:26:34 × fendor quits (~fendor@178.165.131.25.wireless.dyn.drei.com) (Ping timeout: 264 seconds)
20:27:01 <nova> aur/ghcup-hs-bin as it were, but idk
20:27:27 dmwit shrugs
20:27:42 <dmwit> If you don't even trust your package manager, what proof of sanity *would* you accept?
20:28:29 <sm> nova: we love those don't we. :) Just download and review before running
20:28:48 <nova> that is what I am, indeed, doing q^u^p
20:29:00 <tomsmeding> also, you're downloading an executable anyway :)
20:29:07 <tomsmeding> but reviewing is always a good idea
20:29:38 × ruomad quits (~ruomad@82-64-17-144.subs.proxad.net) (Remote host closed the connection)
20:29:49 × Guest11 quits (~textual@146.212.240.255) (Quit: My MacBook has gone to sleep. ZZZzzz…)
20:30:23 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
20:30:54 <nova> you're an executable 05#rekt - in all seriousness, after reviewing the executables and the link trail, I think I will try this, and if you don't hear back from me, then pretend I am your standard UNIX tool and all is well, and the return code is 0. Thanks again :-)
20:31:26 <sm> the executable is hopefully coming from a more-official-totally-harder-to-hack locataion
20:31:47 <nova> I agree with this, but you can't trust the back of your hand these days
20:32:20 <sm> I'm coming in late here, but if security conscious why not build the thing
20:32:45 <nova> I am not that worried. I just like to double check
20:32:52 ham2 joins (~ham4@d8D8627D5.access.telenet.be)
20:32:53 × xwx quits (~george@user/george) (Ping timeout: 272 seconds)
20:33:15 <sm> ah, chicken and egg.. well install the most trustworthy old cabal/stack you can find from your distro I guess, then build the new one
20:33:19 <sm> nod
20:34:00 <boxscape> sm just write your own compiler in C so you can compile the compiler
20:34:14 <tomsmeding> "trivial"
20:34:31 <sm> but is that safe ? no!
20:34:37 <Hafydd> Then you need to trust the C compiler you use.
20:34:37 <sm> we're doomed
20:34:52 <tomsmeding> we were doomed anyway :p
20:35:51 <sm> work only on a strictly airgapped 80s home computer
20:36:10 × ham quits (~ham4@user/ham) (Ping timeout: 272 seconds)
20:36:12 <Rembane> Avoid compilers
20:36:41 <sm> honestly, you can see what the Butlerian Jihadists were on about
20:37:08 <tomsmeding> write an OS in haskell first
20:37:31 <tomsmeding> then realise that you're not capable of doing that without introducing gaping security holes
20:37:37 <tomsmeding> then join the Jihad
20:38:11 <sm> https://en.wikipedia.org/wiki/Dune_(franchise)#The_Butlerian_Jihad
20:38:43 Tomurb joins (~tom@92-17.net.optinet.cz)
20:38:59 <Rembane> The Butlerian Jihad makes Dune so much stranger.
20:40:29 lbseale_ joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
20:41:19 pretty_dumm_guy joins (~trottel@185.244.212.222)
20:41:20 × ejojo quits (~ejojo@89.107.3.51) (Quit: Connection closed)
20:41:32 ejojo joins (~ejojo@89.107.3.51)
20:43:33 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
20:43:58 × Tomurb quits (~tom@92-17.net.optinet.cz) (Ping timeout: 264 seconds)
20:44:17 × lbseale quits (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 272 seconds)
20:45:14 × ejojo quits (~ejojo@89.107.3.51) (Client Quit)
20:53:17 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
20:53:43 favonia joins (~favonia@user/favonia)
20:54:56 Deide1 joins (~Deide@wire.desu.ga)
20:55:58 × Deide quits (~Deide@user/deide) (Ping timeout: 264 seconds)
21:00:48 hseg joins (~gesh@185.120.126.41)
21:01:33 × coot quits (~coot@37.30.49.19.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
21:02:00 <Boarders> I am trying to run stylish-haskell but getting: stylish-haskell: dieVerbatim: user error (stylish-haskell: Failed parsing "/home/mcgill/Src/debugged/debugged.cabal".
21:02:12 <Boarders> any ideas why it would do that, I don't even know why it is reading the cabal file?
21:02:45 <hseg> hi. how do I add a git repo unavailable in stackage to my stack.yaml?
21:03:01 <sclv> Very Carefully
21:03:13 <hseg> *snort* ok...?
21:05:46 haskman joins (~haskman@171.61.140.35)
21:05:54 <hseg> ok, checking the cardano repo, it seems i want to add packages of form {location: {git:, commit:}, extra-dep: true} to packages:
21:05:59 onadplusm joins (~arnau@32.red-2-137-54.dynamicip.rima-tde.net)
21:06:14 jiribenes_ is now known as jiribenes
21:06:34 × onadplusm quits (~arnau@32.red-2-137-54.dynamicip.rima-tde.net) (Remote host closed the connection)
21:08:41 <tapas> https://github.com/kadena-io/chainweb-node/blob/master/stack.yaml
21:08:52 × Brumaire quits (~quassel@81-64-14-121.rev.numericable.fr) (Quit: ran away)
21:09:41 <tapas> you can add them in the extra-deps section. extra-deps: - { github: repo, commit: hash }
21:12:07 <hseg> ooh, that helps
21:13:02 <minoru_shiraeesh> I'm trying to play with an example from Haskell School of Expression
21:13:32 <minoru_shiraeesh> I get a weird error:
21:13:50 <minoru_shiraeesh> transformers-0.4.2.0 from stack configuration does not match >=0.3 && ==0.2.*
21:14:28 × sondre quits (~sondrelun@cm-84.212.100.140.getinternet.no) (Ping timeout: 244 seconds)
21:14:37 <minoru_shiraeesh> those constraints seem impossible
21:15:13 <minoru_shiraeesh> how can a version be greater than 0.3 and equal to 0.2.* at the same time?
21:15:14 <starlord> What do I read to understand typing rules? I've been staring at this paper for I don't know how long but I just don't get it
21:15:30 <dminuoso> starlord: Grab a copy of TaPL?
21:15:44 <dminuoso> It gives a smooth introduction into the topic in the beginning.
21:16:07 × WikiLycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
21:16:43 <hpc> minoru_shiraeesh: the set of version constraints can include both, it just becomes unresolvable - find where those are coming from and adjust things?
21:16:57 <hpc> maybe something depends on an obsolete package?
21:17:30 <starlord> dminuoso can you please expand that abbreviation? my google fu ain't that strong it seems
21:17:35 <geekosaur> or you're using it with an old resolver?
21:17:44 <geekosaur> starlord, Types and Programming Languages
21:17:58 <boxscape> by Benjamin Pierce
21:17:59 <dminuoso> starlord: At any rate, just to understand inference rules its probably overkill, but the book is a good read anyhow.
21:18:06 <minoru_shiraeesh> hpc: it says the constraints come from transformers-compat-0.6.6
21:18:11 pflanze_ joins (~pflanze@2001:1a88:19e:4500:24b7:a963:b85:697d)
21:18:17 <dminuoso> starlord: They are just inference rules similar to logic systems.
21:18:29 polux7 joins (~polux@51.15.169.172)
21:18:37 × nshepperd2 quits (~nshepperd@li364-218.members.linode.com) (Quit: Ping timeout (120 seconds))
21:18:41 agumonkey joins (~user@88.160.31.174)
21:18:48 nshepperd2 joins (~nshepperd@li364-218.members.linode.com)
21:19:04 <starlord> dminuoso I'm designing my own language so it's probably just what I need. I'm having a hard time implementing "extensible records with scoped labels" correctly because I don't understand the apaper
21:19:13 × integral quits (sid296274@user/integral) (Ping timeout: 272 seconds)
21:19:13 × grfn quits (sid449115@brockwell.irccloud.com) (Ping timeout: 272 seconds)
21:19:20 <dminuoso> starlord: See https://en.wikipedia.org/wiki/Natural_deduction
21:19:24 tomsmeding_ joins (~tomsmedin@2a03:b0c0:0:1010::767:3001)
21:19:28 <dminuoso> Ah, yes. Grab TaPL definitely then.
21:19:41 Athas_ joins (athas@2a01:7c8:aaac:1cf:f685:221c:33ac:efb6)
21:19:45 Philonous_ joins (~Philonous@user/philonous)
21:19:47 maerwald_ joins (~maerwald@mail.hasufell.de)
21:19:49 brown121407 joins (~smarton@121407.xyz)
21:20:05 <boxscape> tbf contexts and typing jugdments make typing rules slightly more confusing than vanilla natural deduction
21:20:06 <starlord> oh god, natural deduction, how I wish I had this 3 months ago :D thank you, now I'll get to reading
21:20:23 grfn joins (sid449115@id-449115.brockwell.irccloud.com)
21:20:27 integral joins (sid296274@user/integral)
21:20:30 × liskin quits (~liskin@ackle.nomi.cz) (Ping timeout: 272 seconds)
21:20:41 × piele quits (~piele@tbonesteak.creativeserver.net) (Read error: Connection reset by peer)
21:20:45 × polux quits (~polux@51.15.169.172) (Read error: Connection reset by peer)
21:20:45 × tomsmeding quits (~tomsmedin@tomsmeding.com) (Read error: Connection reset by peer)
21:20:45 × maerwald quits (~maerwald@user/maerwald) (Read error: Connection reset by peer)
21:20:47 × lambdabot quits (~lambdabot@haskell/bot/lambdabot) (Remote host closed the connection)
21:20:50 liskin joins (~liskin@ackle.nomi.cz)
21:20:55 × smarton quits (~smarton@121407.xyz) (Read error: Connection reset by peer)
21:21:07 × pflanze quits (~pflanze@5-168-208-80-pool.fiber.fcom.ch) (Ping timeout: 272 seconds)
21:21:08 × anoe quits (~anoe@delanoe.org) (Ping timeout: 272 seconds)
21:21:08 × df quits (~ben@51.15.198.140) (Ping timeout: 272 seconds)
21:21:08 × statusfailed quits (~statusfai@statusfailed.com) (Ping timeout: 272 seconds)
21:21:08 × Hecate quits (~mariposa@user/hecate) (Ping timeout: 272 seconds)
21:21:15 Hecate joins (~mariposa@163.172.211.189)
21:21:18 × Morrow quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 264 seconds)
21:21:20 df joins (~ben@51.15.198.140)
21:21:21 anoe joins (~anoe@delanoe.org)
21:21:21 statusfailed joins (~statusfai@statusfailed.com)
21:21:21 piele joins (~piele@tbonesteak.creativeserver.net)
21:21:23 illegal joins (~v@anomalous.eu)
21:22:12 lambdabot joins (~lambdabot@silicon.int-e.eu)
21:22:12 × lambdabot quits (~lambdabot@silicon.int-e.eu) (Changing host)
21:22:12 lambdabot joins (~lambdabot@haskell/bot/lambdabot)
21:22:13 × immae quits (~immae@static.233.10.9.176.clients.your-server.de) (Read error: Connection reset by peer)
21:22:14 xerox_ joins (~edi@user/edi)
21:22:17 <minoru_shiraeesh> geekosaur: yes, I tried building with the default resolver but got errors and then specified the older resolver
21:22:19 × Athas quits (athas@sigkill.dk) (Read error: Connection reset by peer)
21:22:21 immae1 joins (~immae@2a01:4f8:141:53e7::)
21:22:24 × bcoppens quits (~bartcopp@user/bcoppens) (Ping timeout: 272 seconds)
21:22:30 × xerox quits (~edi@user/edi) (Remote host closed the connection)
21:22:32 × cjay quits (cjay@nerdbox.nerd2nerd.org) (Remote host closed the connection)
21:22:42 bcoppens joins (~bartcopp@vpn2.bartcoppens.be)
21:22:43 cjay joins (cjay@nerdbox.nerd2nerd.org)
21:22:57 × ham2 quits (~ham4@d8D8627D5.access.telenet.be) (Quit: Leaving)
21:23:40 × Philonous quits (~Philonous@user/philonous) (Ping timeout: 272 seconds)
21:24:03 × Hecate quits (~mariposa@163.172.211.189) (Client Quit)
21:24:09 Hecate joins (~mariposa@163.172.211.189)
21:24:15 × mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 264 seconds)
21:24:17 × V quits (~v@anomalous.eu) (Ping timeout: 272 seconds)
21:24:47 ham joins (~ham4@user/ham)
21:25:12 × Hecate quits (~mariposa@163.172.211.189) (Changing host)
21:25:12 Hecate joins (~mariposa@user/hecate)
21:26:18 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
21:27:09 <dminuoso> boxscape: Can you explain how typing judgements make typing rules slightly more confusing?
21:27:16 × maerwald_ quits (~maerwald@mail.hasufell.de) (Changing host)
21:27:16 maerwald_ joins (~maerwald@user/maerwald)
21:27:41 maerwald_ is now known as maerwald
21:27:53 <boxscape> dminuoso it's not once your used to them, but at the beginning I think it's just one more thing to learn, and you have to grok the fixities of :, turnstile, etc
21:27:59 <boxscape> s/your/you're
21:28:43 <boxscape> s/fixities/precedences
21:29:12 boxscape71 joins (~boxscape@user/boxscape)
21:30:08 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
21:30:55 <monochrom> IMO natural deduction's |- is different enough from typing rules's |- such that natural deduction is a bad way to start reading typing rules.
21:31:24 <monochrom> Approximately the only commonality is the horzontal line and the comma.
21:31:47 <boxscape71> I wasn't aware of |- in natural deduction
21:31:59 <monochrom> OK, and the implcit closed-world assumption.
21:32:50 <boxscape71> Oh actually I take that back
21:32:52 × immae1 quits (~immae@2a01:4f8:141:53e7::) (Quit: WeeChat 2.9)
21:32:55 <monochrom> :)
21:33:15 × boxscape quits (~boxscape@user/boxscape) (Ping timeout: 264 seconds)
21:33:19 immae joins (~immae@2a01:4f8:141:53e7::)
21:34:37 × favonia quits (~favonia@user/favonia) (Ping timeout: 244 seconds)
21:34:39 boxscape71 is now known as boxscape
21:34:41 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Quit: Computer is sleeping. ZZZzzz…)
21:35:14 nan` joins (~nan`@rrcs-70-60-83-42.central.biz.rr.com)
21:36:18 × haskman quits (~haskman@171.61.140.35) (Quit: Going to sleep. ZZZzzz…)
21:37:03 favonia joins (~favonia@user/favonia)
21:37:20 Bartosz joins (~textual@50.35.220.89)
21:37:30 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
21:37:34 × zeenk quits (~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41) (Quit: Konversation terminated!)
21:49:38 × michalz quits (~user@185.246.204.58) (Remote host closed the connection)
21:55:25 aeoui joins (~aeoui@mobile-166-171-122-171.mycingular.net)
21:55:47 × aeoui quits (~aeoui@mobile-166-171-122-171.mycingular.net) (Read error: Connection reset by peer)
21:56:05 aeoui joins (~aeoui@ip72-194-54-201.sb.sd.cox.net)
21:57:54 × epolanski quits (uid312403@id-312403.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
22:00:19 Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net)
22:00:22 × ddellacosta quits (~ddellacos@89.46.62.125) (Remote host closed the connection)
22:00:51 ddellacosta joins (~ddellacos@89.46.62.125)
22:02:03 ruomad joins (~ruomad@82-64-17-144.subs.proxad.net)
22:03:27 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
22:05:34 × ddellacosta quits (~ddellacos@89.46.62.125) (Ping timeout: 264 seconds)
22:06:20 × Bartosz quits (~textual@50.35.220.89) (Quit: My MacBook has gone to sleep. ZZZzzz…)
22:06:22 × atwm quits (~andrew@19-193-28-81.ftth.cust.kwaoo.net) (Ping timeout: 265 seconds)
22:06:36 polux7 is now known as polux
22:11:01 horex539 joins (~horex539@2a02:a03f:6aa5:a00:445e:c460:a1c:1c80)
22:11:52 favonia joins (~favonia@user/favonia)
22:12:20 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
22:13:04 Bartosz joins (~textual@50.35.220.89)
22:14:35 × pretty_dumm_guy quits (~trottel@185.244.212.222) (Quit: WeeChat 3.2-dev)
22:17:15 <ski> boxscape : "vanilla natural deduction" being Prawitz-style, as opposed to Gentzen-style ?
22:18:44 × nan` quits (~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Quit: Computer is sleeping. ZZZzzz…)
22:19:10 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
22:20:27 × chele quits (~chele@user/chele) (Remote host closed the connection)
22:20:45 × aeoui quits (~aeoui@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 272 seconds)
22:21:33 × fendor_ quits (~fendor@91.141.0.18.wireless.dyn.drei.com) (Remote host closed the connection)
22:22:03 aeoui joins (~aeoui@ip72-194-54-201.sb.sd.cox.net)
22:22:13 × xlei quits (znc@pool-68-129-84-118.nycmny.fios.verizon.net) (Quit: ZNC - https://znc.in)
22:23:45 × ruomad quits (~ruomad@82-64-17-144.subs.proxad.net) (Quit: Sayonara)
22:25:58 × Ariakenom quits (~Ariakenom@2001:9b1:efb:fc00:caa:2c0d:7263:2825) (Read error: Connection reset by peer)
22:28:12 <boxscape> ski just anything not involving type theory
22:28:44 <boxscape> (I don't remember which of those is which)
22:29:25 × aeoui quits (~aeoui@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 272 seconds)
22:31:09 atwm joins (~andrew@19-193-28-81.ftth.cust.kwaoo.net)
22:31:09 ddellacosta joins (~ddellacos@86.106.121.100)
22:34:29 Guest83 joins (~Guest83@86-86-79-128.fixed.kpn.net)
22:35:02 × Guest83 quits (~Guest83@86-86-79-128.fixed.kpn.net) (Client Quit)
22:36:39 × kewa quits (~kewa@5.138.211.57) (Remote host closed the connection)
22:36:59 eggplant_ joins (~Eggplanta@2600:1700:bef1:5e10:8d52:c9d8:f104:c0f6)
22:37:01 × ddellacosta quits (~ddellacos@86.106.121.100) (Ping timeout: 272 seconds)
22:40:13 × eziotobi_ quits (~eziotobi@190.215.119.50) (Quit: Leaving)
22:40:22 × eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:c032:b754:d42c:78b5) (Ping timeout: 264 seconds)
22:45:58 <maerwald> haskell-mode is an executable or an emacs plugin?
22:46:04 <maerwald> afais it's the latter
22:53:57 lbseale_ parts (~lbseale@ip72-194-54-201.sb.sd.cox.net) (Leaving)
22:54:21 <geekosaur> emacs .el file and major mode
22:56:04 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:445e:c460:a1c:1c80) (Remote host closed the connection)
22:56:18 lbseale_m joins (~lbseale_m@ip72-194-54-201.sb.sd.cox.net)
22:56:59 horex539 joins (~horex539@2a02:a03f:6aa5:a00:445e:c460:a1c:1c80)
22:59:20 × pe200012 quits (~pe200012@218.107.17.245) (Ping timeout: 252 seconds)
22:59:20 pe200012_ joins (~pe200012@120.236.162.14)
22:59:34 × Gurkenglas_ quits (~Gurkengla@dslb-088-075-022-175.088.075.pools.vodafone-ip.de) (Ping timeout: 264 seconds)
22:59:49 × bfrk quits (~Thunderbi@200116b845d852006e2894fb093deaf7.dip.versatel-1u1.de) (Ping timeout: 272 seconds)
23:00:46 × lbseale_m quits (~lbseale_m@ip72-194-54-201.sb.sd.cox.net) (Ping timeout: 264 seconds)
23:02:59 × horex539 quits (~horex539@2a02:a03f:6aa5:a00:445e:c460:a1c:1c80) (Ping timeout: 272 seconds)
23:05:13 hololeap joins (~hololeap@71-218-232-238.hlrn.qwest.net)
23:05:39 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
23:07:29 <hololeap> I'm looking for some help with this: http://sprunge.us/K8jr3z
23:07:48 ddellacosta joins (~ddellacos@86.106.121.18)
23:12:22 <boxscape> hololeap looking at the output of -ddump-deriv might help
23:12:32 × ddellacosta quits (~ddellacos@86.106.121.18) (Ping timeout: 252 seconds)
23:12:35 tcard joins (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp)
23:12:42 <boxscape> in figuring out what's going wrong, at least
23:14:10 horex539 joins (~horex539@2a02:a03f:6aa5:a00:445e:c460:a1c:1c80)
23:14:25 lbseale joins (~lbseale@ip72-194-54-201.sb.sd.cox.net)
23:17:04 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:17:08 <hololeap> i'm not really sure how to read that: http://sprunge.us/3cvBzN
23:17:39 × cnr quits (~cnr@user/cnr) (Ping timeout: 264 seconds)
23:20:56 × TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (Quit: So long and thanks for all the fish)
23:21:48 TheCoffeMaker joins (~TheCoffeM@user/thecoffemaker)
23:22:10 <boxscape> hololeap it gets a bit more readable when you strip out the module qualifiers: https://paste.tomsmeding.com/JS9tj20q The @s are the same @s as with -XTypeApplications. In principle you should be able to replace the problematic deriving instance with that to find out where in it the error is coming from.
23:22:27 <boxscape> which might explain why the deriving instance is going wrong, hopefully
23:23:45 <boxscape> (just realized I didn't strip out all the qualifiers https://paste.tomsmeding.com/vqpwRGaY )
23:25:40 <boxscape> though strangely pasting it in the file produces a slightly different error...
23:26:14 <boxscape> https://paste.tomsmeding.com/WRwYUiLn
23:28:47 <hololeap> Couldn't match type `Identity Text' with `Text' -- it seems like i'm running into a limitation with GHCs deriving mechinism and it needs some handholding. but how...
23:29:36 <hololeap> I know that I'm out on a limb as far as 10 extensions enabled
23:29:37 × hseg quits (~gesh@185.120.126.41) (Quit: WeeChat 3.1)
23:30:24 WikiLycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
23:31:04 <boxscape> we can get back to the `Couldn't match type ‘IsTouched Text’ with ‘MyTypeT IsTouched’` error if we replace @(Identity Text) in the dumped instance with @(Tagged Identity Text)
23:34:57 <hololeap> Yes, but `IsTouched Text` and `MyTypeT IsTouched` should have the same runtime representation
23:36:02 <boxscape> yeah you would think so
23:36:23 <boxscape> (btw it was a different error message because I accidentally deleted too much when stripping the qualifiers)
23:39:46 × edwtjo quits (~edwtjo@user/edwtjo) (Ping timeout: 264 seconds)
23:43:07 <hololeap> maybe generalize newtype deriving doesn't work with multi-param typeclases... I'll test
23:48:28 <hololeap> Yeah, that seems to be the issue: http://sprunge.us/FZfY9M
23:50:05 trent joins (~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
23:51:39 edwtjo joins (~edwtjo@h-79-136-7-145.A213.priv.bahnhof.se)
23:51:39 × edwtjo quits (~edwtjo@h-79-136-7-145.A213.priv.bahnhof.se) (Changing host)
23:51:39 edwtjo joins (~edwtjo@user/edwtjo)
23:52:21 <boxscape> huh, when you try "deriving Reverse via [Char]" it says "`Reverse' is not a unary constraint, as expected by a deriving clause"
23:52:33 <boxscape> I guess it should say that for newtype deriving too
23:52:34 kewa joins (~kewa@5.138.211.57)
23:52:49 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
23:52:56 falafel parts (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Leaving)
23:53:21 <boxscape> ah except that maybe standalone deriving clauses can in some contexts work with multiple parameters, idk
23:53:38 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
23:53:57 WikiLycurgus is now known as Lycurgus
23:54:46 <geekosaur> aren't most of the things in mtl that get derived via GND multiparameter? I suspect the fundeps help
23:56:43 <geekosaur> (standalone deriving iirc isn't supposed to differ from a deriving clause)
23:56:45 <geekosaur> at least if the same things are in scope
23:57:35 <boxscape> well, there certainly are some cases in which standalone deriving works but a deriving clause doesn't; in many of those ghc will tell you to use standalone deriving if you use a clause
23:57:50 <boxscape> not sure if that ever applies to gnd though
23:58:26 MorrowM joins (~MorrowM_@bzq-110-168-31-106.red.bezeqint.net)
23:59:46 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)

All times are in UTC on 2021-05-25.