Home liberachat/#haskell: Logs Calendar

Logs on 2021-07-16 (liberachat/#haskell)

00:00:33 dragestil_ joins (~quassel@user/dragestil)
00:00:44 Null_A joins (~null_a@2601:645:8700:2290:187e:cdbe:3584:806)
00:01:10 dajoer joins (~david@user/gvx)
00:01:50 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
00:02:24 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
00:02:26 × Atum_ quits (IRC@user/atum/x-2392232) (Quit: Atum_)
00:02:50 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
00:02:51 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
00:02:53 <sm> takeWhileP when you want max speed perhaps
00:04:58 bitmapper joins (uid464869@id-464869.tooting.irccloud.com)
00:05:03 shutdown_-h_now joins (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
00:10:30 dragestil__ joins (~quassel@user/dragestil)
00:13:52 × dragestil_ quits (~quassel@user/dragestil) (Ping timeout: 245 seconds)
00:17:55 × shutdown_-h_now quits (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl) (Ping timeout: 246 seconds)
00:19:19 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
00:20:01 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
00:21:41 martums joins (~martums@user/martums)
00:21:54 × hexfive quits (~eric@50.35.83.177) (Ping timeout: 268 seconds)
00:22:23 × stevenxl quits (uid133530@id-133530.highgate.irccloud.com) (Quit: Connection closed for inactivity)
00:23:38 dragestil__ is now known as dragestil_
00:24:05 shutdown_-h_now joins (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
00:25:13 hexfive joins (~eric@50.35.83.177)
00:27:01 × roboto_el_gato quits (~roboto_el@2600:1700:7df0:4f30:60ad:415d:9afc:74f1) (Ping timeout: 246 seconds)
00:28:04 × chisui quits (~chisui@200116b866e14b00954b747ecb7b95bf.dip.versatel-1u1.de) (Ping timeout: 246 seconds)
00:28:17 × Null_A quits (~null_a@2601:645:8700:2290:187e:cdbe:3584:806) (Remote host closed the connection)
00:29:31 Null_A joins (~null_a@2601:645:8700:2290:187e:cdbe:3584:806)
00:30:20 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
00:32:01 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
00:32:09 oso joins (~oso@2601:58c:c080:a950:f275:2530:b398:680b)
00:33:28 _xor joins (~xor@74.215.232.67)
00:35:06 <oso> just double checking, if I use `Data.Text.toCaseFold` for conversion, I still use `Data.Char.isLower` to check for lowercase letters?
00:35:18 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
00:35:20 <oso> I feel like it's a simple and obvious yes but I want to be certain
00:37:37 × derelict quits (~derelict@user/derelict) (Ping timeout: 245 seconds)
00:38:32 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
00:41:08 lavaman joins (~lavaman@98.38.249.169)
00:42:27 × oxide quits (~lambda@user/oxide) (Ping timeout: 255 seconds)
00:43:18 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 272 seconds)
00:44:48 × TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (Ping timeout: 252 seconds)
00:47:26 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
00:49:39 × retroid_ quits (~retro@90.218.175.34) (Ping timeout: 268 seconds)
00:50:44 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
00:50:45 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds)
00:51:11 <Raugh> oso: try it out in GHCi :)
00:51:13 Vajb joins (~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01)
00:51:53 <oso> I have, I just want to be sure there aren't any edge cases with characters I'm not personally familiar with
00:54:22 TheCoffeMaker joins (~TheCoffeM@user/thecoffemaker)
00:54:31 × egoist quits (~egoist@186.235.80.249) (Quit: WeeChat 3.2)
00:55:52 <Raugh> I'm not famaliar with the utf8 / char problem space but perhasp something like quickCheck could help aleviate worries?
00:56:23 <oso> I'll take a look, thanks
00:58:02 × Null_A quits (~null_a@2601:645:8700:2290:187e:cdbe:3584:806) (Remote host closed the connection)
00:58:18 Null_A joins (~null_a@2601:645:8700:2290:187e:cdbe:3584:806)
01:00:33 derelict joins (~derelict@user/derelict)
01:01:18 × jneira_ quits (~jneira_@28.red-80-28-169.staticip.rima-tde.net) (Ping timeout: 252 seconds)
01:02:29 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
01:03:52 × Deide quits (~Deide@user/deide) (Ping timeout: 252 seconds)
01:10:06 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-51.prtc.net) (Quit: Client closed)
01:13:24 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
01:13:41 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
01:14:34 oxide joins (~lambda@user/oxide)
01:16:00 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
01:16:33 lavaman joins (~lavaman@98.38.249.169)
01:20:00 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
01:20:36 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
01:20:46 × hegstal quits (~hegstal@2a02:c7f:7604:8a00:1608:5ddb:ace2:2fb3) (Ping timeout: 268 seconds)
01:21:06 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
01:21:20 × Null_A quits (~null_a@2601:645:8700:2290:187e:cdbe:3584:806) (Remote host closed the connection)
01:22:12 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
01:26:50 Deide joins (~Deide@217.155.19.23)
01:26:50 × Deide quits (~Deide@217.155.19.23) (Changing host)
01:26:50 Deide joins (~Deide@user/deide)
01:27:00 × xff0x quits (~xff0x@2001:1a81:5396:d100:2b35:b634:3ed0:60cf) (Ping timeout: 255 seconds)
01:28:35 × Deide quits (~Deide@user/deide) (Client Quit)
01:28:52 xff0x joins (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc)
01:29:10 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
01:29:11 Guest21 joins (~Guest21@50.47.115.102)
01:29:34 lavaman joins (~lavaman@98.38.249.169)
01:30:17 Null_A joins (~null_a@2601:645:8700:2290:187e:cdbe:3584:806)
01:30:28 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
01:30:32 × silverwhitefish quits (~hidden@47.202.102.10) (Quit: One for all, all for One (2 Corinthians 5))
01:30:33 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
01:32:49 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
01:33:47 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 265 seconds)
01:34:09 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
01:34:27 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
01:37:02 machinedgod joins (~machinedg@24.105.81.50)
01:37:35 neurocyte0 joins (~neurocyte@45.136.170.21)
01:37:35 × neurocyte0 quits (~neurocyte@45.136.170.21) (Changing host)
01:37:35 neurocyte0 joins (~neurocyte@user/neurocyte)
01:38:15 × renzhi quits (~xp@2607:fa49:655f:a700::8b9f) (Ping timeout: 255 seconds)
01:41:08 × neurocyte quits (~neurocyte@user/neurocyte) (Ping timeout: 255 seconds)
01:41:08 neurocyte0 is now known as neurocyte
01:42:02 × derelict quits (~derelict@user/derelict) (Ping timeout: 255 seconds)
01:42:25 × Raugh quits (~mike@174.127.249.180) (Remote host closed the connection)
01:44:56 <dsal> :t T.toCaseFold
01:44:57 <lambdabot> T.Text -> T.Text
01:45:01 <dsal> :t T.iSlower
01:45:02 <lambdabot> error: Not in scope: ‘T.iSlower’
01:45:09 <dsal> :t Data.Char.isLower
01:45:11 <lambdabot> Char -> Bool
01:46:28 <dsal> Ah, I've never used `toCaseFold`. I understand why now. :)
01:52:49 × Null_A quits (~null_a@2601:645:8700:2290:187e:cdbe:3584:806) (Remote host closed the connection)
01:53:12 <Clint> because you have no reason to?
01:53:59 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
01:54:30 Null_A joins (~null_a@2601:645:8700:2290:187e:cdbe:3584:806)
01:54:54 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Ping timeout: 255 seconds)
01:56:21 <oso> ...should i not be using it?
01:56:22 × Vajb quits (~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01) (Read error: Connection reset by peer)
01:57:00 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
01:57:16 <geekosaur> Ideally you use the text-icu package and include locale information
01:57:29 × oxide quits (~lambda@user/oxide) (Ping timeout: 268 seconds)
01:57:31 <geekosaur> capitalization turns out to be incredibly tricky
01:57:46 × ph88^ quits (~ph88@2a02:8109:9e00:7e5c:9925:18b1:79f7:f242) (Ping timeout: 268 seconds)
01:58:18 jakalx joins (~jakalx@base.jakalx.net)
01:59:49 oxide joins (~lambda@user/oxide)
02:01:05 <oso> wow thanks, text-icu looks very useful
02:02:53 × smichel17 quits (~smichel17@c-73-68-217-18.hsd1.ma.comcast.net) (Quit: smichel17)
02:04:48 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
02:06:23 <dsal> oso: It depends on what you're doing. As Clint inferred, I've not had a reason to use it, but your use case might need it. Not sure what you're doing.
02:08:06 <Guest21> How well does GHC optimize the use of lists?
02:08:07 <Guest21> For example, if I have the code
02:08:07 <Guest21> main = forM_ [1,3..10] $ print
02:08:08 <Guest21> will GHC need to put a list in memory to use this code, or will it be optimized to the equivalent of:
02:08:08 <Guest21> int main (void){
02:08:09 <Guest21> for(int i = 1; i <= 10; i += 2)
02:08:09 <Guest21> printf("%d\n", i);
02:08:10 <Guest21> }
02:09:37 <dsal> Guest21: (please use a paste). What happens if you don't put an upper bound on that? Does it work?
02:09:53 <dsal> Also, that $ is superfluous.
02:10:58 <davean> dsal: I don't feel thats an enlightening question
02:11:47 <dsal> Why's that?
02:12:00 <davean> dsal: It'll definately work when you don't put an upper bound, even if it does create the list
02:12:17 <davean> That has nothing to do with optimization, and everything to do with Haskell being non-strict
02:12:30 <dsal> I see what you mean.
02:12:30 <davean> So the answer to it in no way addresses their question
02:13:13 <dsal> Other than "read core" what's a better way to answer that?
02:13:39 <Axman6> Guest21: you can answer that yourself by replacing 10 with 100000000 and seeing if memory usage increases. you can probably also answer it yourrself by looking at the implementation of enumFromThenTo and forM_ and seeing how fprM_ (enumFromThenT1 3 10) print evaluates
02:13:58 <Axman6> @src enumFromThenTo
02:13:58 <lambdabot> Source not found. My pet ferret can type better than you!
02:14:02 <davean> Axman6: GC will grab it as you walk the list
02:14:16 <davean> Axman6: You'd have to read the rules at best
02:14:28 <davean> and I think thats a core part of the question - different optimization levels will do different things
02:14:39 <davean> Guest21: even reifing the list, it'll be faster than I expect you think BTW
02:14:46 <davean> Guest21: because it is a bump pointer
02:14:48 <Axman6> I can pretty much guarantee no list will ever exist as each value is generated lazily
02:15:08 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
02:15:16 elf_fortrez joins (~elf_fortr@adsl-72-50-4-118.prtc.net)
02:15:29 <davean> Axman6: they're generated lazily sure, but at least at -O0 the list *will* exist, you'll just walk up the list as fast as you create it, and it'll be thrown away every nursery GC
02:15:33 <davean> which is VERY cheap
02:15:37 <davean> but that does create a list
02:15:43 <davean> I think sometimes the list will go away
02:16:02 <davean> But I'd have to read core to confirm it - thats not the structure I use for my optimization work so I'm not super familiar with how it compiles down in practice
02:16:28 × td_ quits (~td@94.134.91.92) (Ping timeout: 252 seconds)
02:16:35 <elf_fortrez> why throw away a list?
02:16:40 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
02:16:45 <davean> elf_fortrez: can you expand that question?
02:16:45 <dsal> I guess part of the problem is what is actually being asked by "will GHC need to put a list in memory to use this code" Before it starts processing? As an output of the action? Or just literally, the equivalent C code. For the last one, you have to read the core.
02:16:55 <elf_fortrez> it is a very versitele data structure
02:16:59 FinnElija is now known as Guest6659
02:16:59 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:16:59 × Guest6659 quits (~finn_elij@user/finn-elija/x-0085643) (Killed (strontium.libera.chat (Nickname regained by services)))
02:16:59 finn_elija is now known as FinnElija
02:17:21 <dsal> It's a fine data structure, but this problem doesn't need a data structure.
02:17:24 <davean> elf_fortrez: I feel you didn't follwo the conversation at all - the list is mearly control flow here
02:17:29 <elf_fortrez> is the list persistent in a functional language?
02:17:39 <elf_fortrez> beautiful
02:17:48 <dsal> Oh. I see elf_fortrez entered after the conversation started. :)
02:18:04 <davean> Ah yes they did
02:18:13 td_ joins (~td@94.134.91.148)
02:18:15 <elf_fortrez> i'm a bit beat up. i just want to wake up
02:18:45 <davean> Guest21: So, it may be a few addition instructions off of C, but it will use some constant memory amount, and it will be pretty close in performance to the C forloop
02:18:51 <elf_fortrez> the concept of a list as control flow is exciting. to good to be true?
02:18:55 <davean> Guest21: there are ways to make sure it is as efficient as the C for loop though
02:19:19 s_ joins (~s@50.34.81.185)
02:20:05 <elf_fortrez> isn't haskell about beautiful notation and not speed?
02:20:13 <davean> elf_fortrez: "forM_ [1..10] $ something here" uses a list as a very basic control flow for example, theres a general area of study of this I tihnk called co-data?
02:20:28 <davean> elf_fortrez: I've optimized Haskell to be faster than C implimentations plenty of times
02:20:54 <elf_fortrez> I guess Haskell is the bomb
02:20:54 <dsal> elf_fortrez: There's nothing wrong with speed. For some of us, Haskell is our go-to language for most problem solving, so we do both as we go.
02:21:02 <davean> Those "beautiful notions" (you said notation but I'm correcting you) can be a way to get perforamnce
02:21:16 <elf_fortrez> so it's functional
02:22:13 <davean> Yah, I'd say more people code Haskell than know how to use it in production, but I don't think thats all that unusual for a pleasant language to use.
02:22:25 <davean> We could certainly better diseminate the practical sides!
02:22:38 <davean> There are plenty of us who find it one of the most productive options for production.
02:22:50 <davean> Its just not where the excitement seems to tend to be, I guess for obvious reasons.
02:23:17 <dsal> There are fancy features I don't ever get to use because I'm just a blue collar hacker.
02:23:34 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
02:24:16 <davean> People who do production Haskell tend to shut up and do production Haskell
02:24:17 ukari joins (~ukari@user/ukari)
02:24:21 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 258 seconds)
02:25:26 <elf_fortrez> no need to boast i guess, just educate
02:28:04 <elf_fortrez> how can i write a circle graph in Haskell?
02:28:13 <davean> Haskell Foundation is actively working on trying to diseminate knowlege on that side now
02:28:15 <elf_fortrez> in polar coordinates for kicks
02:28:16 <Axman6> circle graph?
02:28:25 <elf_fortrez> unit circle
02:28:29 <davean> We *have* clearly had a problem educating people on the production side. Its not what people are excited to talk about.
02:28:37 <Axman6> oh, that type of graph
02:28:50 <davean> elf_fortrez: Is this the sort of thing you'd want Diagram for?
02:29:16 <elf_fortrez> thanks for the idea, Venn or Euler would be nice
02:29:20 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 258 seconds)
02:29:21 niHiggim joins (~niHiggim@2600:1700:3d41:8600::27)
02:30:24 <elf_fortrez> i want to learn the unit circle first so that i try to do the spiral by myself
02:30:42 <Axman6> look at the Diagrams package
02:30:50 <oso> seems reasonable
02:31:00 <elf_fortrez> or Geometry pachage
02:31:59 <elf_fortrez> I guess a lazy language attracts lazy people
02:32:22 <Axman6> All developers should be lazy, why would you want to do more work than you have to?
02:32:27 <elf_fortrez> quoting Larry Perl
02:32:32 <oso> i both identify with that and feel like i've put more work into learning haskell than anything else
02:33:01 <elf_fortrez> I guess I am too lazy right now to use a search engine
02:33:12 <elf_fortrez> i would like to see more code
02:33:19 <elf_fortrez> and learn from context
02:34:36 <elf_fortrez> i should set the example
02:34:40 <oso> i'd send you the code i'm working on but 1) it has no comments and 2) it has nothing to do with diagrams
02:34:47 retroid_ joins (~retro@97e2ba5d.skybroadband.com)
02:37:10 <elf_fortrez> why comment when the code is self explanatory
02:37:46 <davean> To misslead the gullible
02:38:02 <oso> because when you write code only you and god know what it does, and after some time away from it only god does
02:38:04 <davean> It catches the people who don't read the code :)
02:49:39 <dsal> comments are where you put excuses for not writing better code.
02:50:03 <dsal> (which sometimes is hard enough that it's easier to just write a comment describing why you didn't do something more obvious)
02:52:33 <elf_fortrez> i forgot maintaining code is the hardest pard
02:53:01 <dsal> Sometimes I write functions just to give clearer names to concepts I intend to use. e.g., I wanted `justM :: Monad m => (a -> m ()) -> Maybe a -> m ()` because I was doing something like that a few places and that seemed easier. Turns out, the implementation is just `justM = traverse_` but the signature is the important part. If I just wrote `traverse_` everywhere, it might be less clear.
02:53:51 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
02:54:05 <elf_fortrez> thanks
03:00:01 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
03:02:23 × chexum quits (~chexum@gateway/tor-sasl/chexum) (Ping timeout: 244 seconds)
03:02:57 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
03:06:55 chexum joins (~chexum@gateway/tor-sasl/chexum)
03:07:55 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
03:08:26 × Kaipi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 255 seconds)
03:09:20 × pesada quits (~agua@2804:18:43:3e21:1:0:20af:708a) (Ping timeout: 255 seconds)
03:11:35 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds)
03:12:22 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
03:16:00 Erutuon joins (~Erutuon@user/erutuon)
03:16:01 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
03:17:12 agua joins (~agua@2804:18:44:4e2:1:0:22a7:ebf6)
03:17:42 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 265 seconds)
03:18:23 geekosaur joins (~geekosaur@xmonad/geekosaur)
03:18:28 × oxide quits (~lambda@user/oxide) (Ping timeout: 272 seconds)
03:20:24 × shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
03:24:49 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
03:25:10 × Guest21 quits (~Guest21@50.47.115.102) (Quit: Client closed)
03:25:37 chexum_ joins (~chexum@gateway/tor-sasl/chexum)
03:28:44 × chexum quits (~chexum@gateway/tor-sasl/chexum) (Ping timeout: 244 seconds)
03:35:47 × MidAutumnMoon9 quits (~MidAutumn@user/midautumnmoon) (Quit: Leaving for a break - theLounge)
03:36:23 MidAutumnMoon9 joins (~MidAutumn@user/midautumnmoon)
03:40:29 × alx741 quits (~alx741@181.196.68.89) (Quit: alx741)
03:44:08 andrews joins (~andrews@user/andrews)
03:44:20 <andrews> can someone explain what this means
03:44:20 <andrews> ageOn :: Planet -> Float -> Float
03:44:41 <dibblego> ageOn has the type, given a Planet, returns a function of the type Float to Float
03:45:24 <andrews> Has the type?
03:45:31 <dibblego> yes, :: means "has the type"
03:45:47 <andrews> oh
03:46:38 <andrews> any idea what this means
03:46:39 <andrews> module SpaceAge (Planet(..), ageOn) where
03:47:03 <dibblego> module SpaceAge, exports Planet and its constructors, ageOn, and the module definition follows
03:47:20 <andrews> oh
03:50:19 <dsal> andrews: Do you have a larger thing you're trying to do? It's going to be hard to learn Haskell by asking the meaning of small bits of syntax at a time. :)
03:50:42 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 252 seconds)
03:51:54 geekosaur joins (~geekosaur@xmonad/geekosaur)
03:52:16 <andrews> https://paste.tomsmeding.com/scvB8sC2
03:52:27 <andrews> I still don't understand the function signature
03:52:47 <andrews> ageOn :: Planet -> Float -> Float
03:52:55 <dsal> Do you know any other languages?
03:53:00 <andrews> yes
03:54:04 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
03:54:06 allbery_b joins (~geekosaur@xmonad/geekosaur)
03:59:06 <Axman6> andrews: x :: y means "x has type y", in C it would be somilar to say y x; so foo :: Int says hat foo is an Int (equifalent to int foo; in C, java etc). when the type l;ooks like a -> b, that means it is a function which takes an a and returns a b. in the case of a -> b -> c, that is the same as a -> (b -> c), a.k.a, a function which takes an a and returns a function,, which takes a b and returns a c
04:00:03 <Axman6> gosh, I should learn to type
04:00:19 <dsal> Especially if you expect to write Haskell.
04:00:48 <Axman6> nah, GHC's got my back there. English is the language that lets me down
04:01:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:01:47 <andrews> No instance for (Eq Planet) arising from a use of `=='
04:02:30 <Axman6> that means there isn't an instance of the Eq class for the type Planet. this is usually fixed by adding `deriving (Eq)` to the definition of Planet
04:02:40 <dsal> Yes, Planet has no Eq instance, so you won't be able to use == on it. You probably won't need to, though.
04:04:02 <Axman6> and in haskell, class is more like an interface or protocol in other languages. it has nothing to do with the OOP ideas of a class
04:04:39 <Axman6> @src Eq
04:04:40 <lambdabot> class Eq a where
04:04:40 <lambdabot> (==), (/=) :: a -> a -> Bool
04:05:35 <andrews> can I check if a function argument is a particular instance of a custom data set?
04:06:00 <andrews> like data Planet = Mercury | Venus etc
04:06:02 <Axman6> I don't understand what that question means
04:06:13 <dsal> > let f True = "yes"; f False = "no" in f True
04:06:14 <lambdabot> "yes"
04:07:22 <dsal> You don't need Eq for that, but you can just replace the variable capture with the specific constructor in the function definition, then make a new one for the next Planet. e.g., what I did above.
04:07:39 <dsal> (I use ; here, but you'd use a newline in your code)
04:08:26 <Axman6> andrews: are you following a haskell tutorial? you seem to be missing a lot of the fundamentals of the language, and that mioght be a good place to start
04:09:34 <dibblego> looks like exorcism.io
04:12:41 <dmj`> this planet has no equal
04:13:20 <Axman6> All planets are unique
04:16:04 <dmj`> nix-shell -p exercism --run 'exercism download --exercise=space-age --track=haskell'
04:16:08 <dmj`> found the question
04:16:58 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
04:17:36 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
04:22:24 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
04:24:37 <andrews> I mean /j #haskell-beginners
04:24:42 <andrews> j #haskell-beginners
04:32:27 <dmj`> andrews: be safe in space son, https://gist.github.com/553bfca04ffb25efa893d4a4950ede6e
04:35:04 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
04:37:14 <dsal> I think that modern style of making code really tall is weird. I'm probably going to have to be doing that soon.
04:37:47 cheater1 is now known as cheater
04:41:06 <andrews> dmj`, I won't look at your code until I figure it out myself
04:41:11 <andrews> otherwise I won't learn anything
04:41:49 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-118.prtc.net) (Ping timeout: 246 seconds)
04:42:10 <dmj`> andrews: in order to understand recursion, one must first understand recursion
04:42:25 <andrews> top lel
04:43:14 <dsal> Don't like at mine, either. I personally find this easier to read, but people like ormolu which took inspiration from elm. https://www.irccloud.com/pastebin/uNkbCMRe/ageOn.hs
04:43:22 <dsal> Which suddenly reminds me of the project I wanted to work on tonight.
04:43:59 <andrews> I got a copy of Haskell programming first principles
04:44:03 <andrews> is it a good book
04:44:07 <dsal> I liked it a lot.
04:44:18 <andrews> did you read all 1000 pages?
04:44:40 <dsal> I think so. That was a while ago.
04:44:52 <andrews> are there any better books
04:46:12 <dmj`> typeclassopedia is good
04:48:10 <dmj`> not really a book, but a collection of stories about Haskell, like the Canterbury tales, it too is unfinished
04:48:25 <dmj`> Canterbury tails
04:48:37 <andrews> ok
04:48:40 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
04:49:03 × Codaraxis quits (~Codaraxis@user/codaraxis) (Ping timeout: 255 seconds)
04:49:12 <dmj`> @where typeclassopedia
04:49:12 <lambdabot> http://www.haskell.org/haskellwiki/Typeclassopedia
04:49:20 <EvanR> an encyclopedic account of haskell lore in the form of a choose your own adventure, with exercises at each stage. Should exist
04:49:32 <andrews> so I guess Haskell programming first principles is the best book
04:50:18 <sm> EvanR: +1!
04:50:30 <sm> andrews: https://www.extrema.is/articles/haskell-books
04:51:25 <EvanR> dead ends could be especially bad anti-patterns or unsolved problems in the haskell ecosystem
04:51:45 <EvanR> "the ending has not yet been written"
04:52:34 × _xor quits (~xor@74.215.232.67) (Quit: brb)
04:54:52 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
04:55:00 <dmj`> andrews: I'd focus on the types and the typeclasses, work out the instances, implement them, reason about the laws, use them in real code, your intuition will grow in time. Don't rely on mnemonics like "feels like a container", etc. know that anything that obeys the law of a class is a valid instance of that class.
04:56:02 <dsal> HPFFP walks through pretty well. Understanding all of the types probably isn't enough to understand how to write a program in Haskell.
04:56:09 amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
04:57:19 silverwhitefish joins (~hidden@47.202.102.10)
04:57:29 wei2912 joins (~wei2912@112.199.250.21)
04:57:32 <andrews> Ok, I have Haskell in Depth... seems shorter than HPFFP
04:58:33 <dmj`> exercises are good too https://wiki.haskell.org/H-99:_Ninety-Nine_Haskell_Problems, this shows a lot of different ways to write the solutions as well
04:59:57 <andrews> should I use cabal or stack
05:00:11 <andrews> for downloading the book exercises
05:00:18 <andrews> for Haskell In Depth
05:05:12 × TranquilEcho quits (~grom@user/tranquilecho) (Quit: WeeChat 2.8)
05:05:16 × martums quits (~martums@user/martums) (Ping timeout: 246 seconds)
05:06:37 chris_ joins (~chris@81.96.113.213)
05:06:58 × amahl quits (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds)
05:07:38 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:11:52 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 258 seconds)
05:12:51 <dmj`> andrews: either or
05:13:25 <andrews> I'm going to read HID since it's the newest haskell book and is shorter than HFFP
05:13:37 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
05:14:29 <andrews> does haskell come with a GUI toolkit
05:14:35 <andrews> or I have to download one
05:14:50 <andrews> Python comes bundled with TK
05:20:53 <andrews> stack build takes forever and I have a 6 core CPU
05:21:19 <andrews> and an nvME DDF
05:21:20 <andrews> SSD*
05:21:27 Codaraxis joins (~Codaraxis@user/codaraxis)
05:22:21 × Null_A quits (~null_a@2601:645:8700:2290:187e:cdbe:3584:806) (Remote host closed the connection)
05:22:40 × xff0x quits (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc) (Quit: xff0x)
05:23:35 wwalker joins (~wwalker@platinum.solid-constructs.com)
05:24:03 <wwalker> Is there a way to enable a persistent command history in hugs?
05:24:39 anandprabhu joins (~anandprab@94.202.243.198)
05:26:51 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
05:27:25 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:27:38 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
05:33:27 hgolden joins (~hgolden2@cpe-172-114-84-61.socal.res.rr.com)
05:34:37 michalz joins (~michalz@185.246.204.61)
05:35:04 × silverwhitefish quits (~hidden@47.202.102.10) (Quit: One for all, all for One (2 Corinthians 5))
05:37:55 silverwhitefish joins (~hidden@47.202.102.10)
05:39:14 elf_fortrez joins (~elf_fortr@adsl-72-50-4-118.prtc.net)
05:40:05 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-118.prtc.net) (Client Quit)
05:40:42 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds)
05:44:38 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
05:53:51 × ablutor quits (~quassel@wasscher.com) (Quit: going for vitamine d)
05:54:50 ablutor joins (~quassel@wasscher.com)
05:54:53 <janus> andrews: did you try stack build --ghc-options=-j ?
05:56:52 <janus> andrews: i think most people do webapps if they want gui. but there are gtk, qt, and fltk bindings. i think thw fltk bindings are probably best maintained
05:57:02 <janus> wwalker: you can use rlwrap
05:59:25 <janus> s/thw/the
06:06:17 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
06:07:11 <wwalker> janus: Thank you!
06:08:51 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
06:12:55 <andrews> janus, thanks
06:14:06 × zmt00 quits (~zmt00@user/zmt00) (Quit: Gone.)
06:17:53 xff0x joins (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc)
06:18:33 paolino joins (~paolo@84.33.185.158)
06:20:05 qbt joins (~edun@user/edun)
06:21:22 fef joins (~thedawn@user/thedawn)
06:21:41 awth13 joins (~user@user/awth13)
06:22:28 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
06:26:42 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds)
06:27:08 chele joins (~chele@user/chele)
06:27:41 <dsal> andrews: shorter doesn't necessarily mean it's a better book that will teach you more, but reading anything will probably help.
06:28:58 lavaman joins (~lavaman@98.38.249.169)
06:31:44 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
06:33:27 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
06:33:46 <dsal> andrews: the first build of your project might be slow. nix sometimes speeds it up a lot depending on how bleeding edge your compiler is.
06:35:41 chexum_ is now known as chexum
06:35:51 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
06:36:24 gehmehgeh joins (~user@user/gehmehgeh)
06:36:27 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
06:36:44 <sm> andrews: memory matters, some haskell packages need 2 or more G to build
06:37:13 <sm> if you have less make sure it's not swapping
06:41:10 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
06:41:28 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
06:46:03 fendor joins (~fendor@77.119.213.12.wireless.dyn.drei.com)
06:46:15 mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
06:47:43 azeem joins (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it)
06:50:58 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:51:41 aegon joins (~mike@174.127.249.180)
06:52:20 aegon parts (~mike@174.127.249.180) ()
06:53:40 aegon joins (~mike@174.127.249.180)
06:56:38 dunj3 joins (~dunj3@2001:16b8:3082:9f00:aef2:da36:561b:67d7)
06:59:47 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
07:02:58 lavaman joins (~lavaman@98.38.249.169)
07:04:11 × bitmapper quits (uid464869@id-464869.tooting.irccloud.com) (Quit: Connection closed for inactivity)
07:05:25 × shriekingnoise quits (~shrieking@186.137.144.80) (Quit: Quit)
07:05:43 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
07:07:39 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 255 seconds)
07:09:58 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:10:25 neceve joins (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f)
07:11:28 dhouthoo joins (~dhouthoo@178-117-36-167.access.telenet.be)
07:13:31 Izem joins (~rcg@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca)
07:14:42 × andrews quits (~andrews@user/andrews) (Quit: Leaving)
07:16:07 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
07:22:12 × neurocyte quits (~neurocyte@user/neurocyte) (Ping timeout: 258 seconds)
07:22:48 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
07:23:08 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
07:24:13 yoneda joins (~mike@193.206.102.122)
07:25:23 _xor joins (~xor@74.215.232.67)
07:26:04 Izem parts (~rcg@bras-base-london1483w-grc-42-65-95-172-41.dsl.bell.ca) ()
07:32:50 × hendursaga quits (~weechat@user/hendursaga) (Remote host closed the connection)
07:33:04 × peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 272 seconds)
07:33:13 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
07:33:13 hendursaga joins (~weechat@user/hendursaga)
07:33:31 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
07:35:58 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
07:42:18 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 255 seconds)
07:45:00 shriekingnoise joins (~shrieking@186.137.144.80)
07:45:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:47:52 pesada joins (~agua@2804:18:7e:a02e:1:0:239f:a7bb)
07:49:18 × dre quits (~dre@2001:8003:c932:c301:5158:163a:41f3:cc10) (Quit: Leaving)
07:49:25 × shriekingnoise quits (~shrieking@186.137.144.80) (Ping timeout: 258 seconds)
07:49:30 × agua quits (~agua@2804:18:44:4e2:1:0:22a7:ebf6) (Ping timeout: 255 seconds)
07:51:13 × fef quits (~thedawn@user/thedawn) (Remote host closed the connection)
07:51:47 fef joins (~thedawn@user/thedawn)
07:52:42 × adamCS quits (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (Ping timeout: 252 seconds)
07:52:43 × Igfoo quits (~ian@matrix.chaos.earth.li) (Ping timeout: 252 seconds)
07:52:49 Igfoo joins (~ian@matrix.chaos.earth.li)
07:53:26 adamCS joins (~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
07:53:26 × ablutor quits (~quassel@wasscher.com) (Ping timeout: 252 seconds)
07:53:26 × jackhill quits (~jackhill@kalessin.dragonsnail.net) (Ping timeout: 252 seconds)
07:53:27 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
07:53:48 × tritlo quits (sid58727@user/tritlo) (Ping timeout: 252 seconds)
07:54:00 ukari joins (~ukari@user/ukari)
07:54:00 shriekingnoise joins (~shrieking@186.137.144.80)
07:54:00 ablutor joins (~quassel@wasscher.com)
07:54:10 × Philonous quits (~Philonous@user/philonous) (Ping timeout: 252 seconds)
07:54:29 jackhill joins (~jackhill@kalessin.dragonsnail.net)
07:54:32 × jolly quits (~jolly@208.180.97.158) (Ping timeout: 252 seconds)
07:54:32 × Zorgon quits (mranderson@chaos.fi) (Ping timeout: 252 seconds)
07:55:10 tritlo joins (sid58727@user/tritlo)
07:55:21 Philonous joins (~Philonous@user/philonous)
07:59:11 × aegon quits (~mike@174.127.249.180) (Quit: leaving)
08:04:08 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
08:04:22 hegstal joins (~hegstal@2a02:c7f:7604:8a00:694c:cc5c:55d8:63b)
08:08:49 ikex1 joins (~ash@user/ikex)
08:08:58 × ikex quits (ash@user/ikex) (Ping timeout: 258 seconds)
08:09:30 ikex1 is now known as ikex
08:10:29 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
08:12:08 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
08:12:19 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Quit: WeeChat 2.8)
08:12:23 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds)
08:13:51 hendursaga joins (~weechat@user/hendursaga)
08:15:30 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
08:15:51 lavaman joins (~lavaman@98.38.249.169)
08:16:45 takuan joins (~takuan@178-116-218-225.access.telenet.be)
08:17:52 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:18:36 geekosaur joins (~geekosaur@xmonad/geekosaur)
08:19:20 acidjnk_new3 joins (~acidjnk@p200300d0c72b951301624b1129165e7b.dip0.t-ipconnect.de)
08:19:32 keutoi joins (~keutoi@157.47.18.91)
08:19:42 elf_fortrez joins (~elf_fortr@adsl-72-50-4-118.prtc.net)
08:20:06 × allbery_b quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 255 seconds)
08:20:28 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 258 seconds)
08:23:02 × xff0x quits (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc) (Ping timeout: 245 seconds)
08:25:06 xff0x joins (~xff0x@185.65.135.235)
08:25:28 × neceve quits (~quassel@2a02:c7f:607e:d600:f762:20dd:304e:4b1f) (Ping timeout: 246 seconds)
08:25:44 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
08:26:07 ubert1 joins (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
08:26:36 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 268 seconds)
08:26:42 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
08:28:23 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds)
08:28:23 Lord_of_Life_ is now known as Lord_of_Life
08:29:07 geekosaur joins (~geekosaur@xmonad/geekosaur)
08:31:33 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
08:35:44 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
08:40:22 × xff0x quits (~xff0x@185.65.135.235) (Ping timeout: 252 seconds)
08:42:18 xff0x joins (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc)
08:44:54 pfurla_ joins (~pfurla@216.131.83.59)
08:45:47 jippiedoe joins (~david@2a02-a44c-e14e-1-41ac-4f6d-ec7a-91a2.fixed6.kpn.net)
08:48:00 × pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 255 seconds)
08:49:04 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
08:52:07 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
08:53:22 × zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection)
08:56:18 zaquest joins (~notzaques@5.128.210.178)
08:56:34 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
08:59:55 hmmmas joins (~fidnc@183.217.200.171)
09:00:08 × hexfive quits (~eric@50.35.83.177) (Quit: WeeChat 3.0)
09:02:51 neurocyte joins (~neurocyte@45.136.170.21)
09:02:51 × neurocyte quits (~neurocyte@45.136.170.21) (Changing host)
09:02:51 neurocyte joins (~neurocyte@user/neurocyte)
09:04:09 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
09:04:19 × oso quits (~oso@2601:58c:c080:a950:f275:2530:b398:680b) (Ping timeout: 246 seconds)
09:04:27 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
09:09:53 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
09:10:33 KUrare joins (~KUrare@user/kurare)
09:14:27 pfurla joins (~pfurla@ool-182ed2e2.dyn.optonline.net)
09:17:21 Pickchea joins (~private@user/pickchea)
09:17:24 × pfurla_ quits (~pfurla@216.131.83.59) (Ping timeout: 252 seconds)
09:18:45 × azeem quits (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Ping timeout: 265 seconds)
09:19:04 azeem joins (~azeem@176.200.202.21)
09:19:43 laguneucl joins (~Pitsikoko@2a02:587:dc04:e00:12c3:7bff:fe6d:d374)
09:20:20 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 252 seconds)
09:20:26 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
09:23:28 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
09:23:48 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
09:28:54 __monty__ joins (~toonn@user/toonn)
09:29:06 × xsperry quits (~as@user/xsperry) ()
09:30:18 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 255 seconds)
09:30:36 azeem joins (~azeem@176.200.202.21)
09:35:42 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
09:36:17 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
09:39:43 CookE[] joins (~thedawn@user/thedawn)
09:40:00 × fef quits (~thedawn@user/thedawn) (Remote host closed the connection)
09:42:28 × laguneucl quits (~Pitsikoko@2a02:587:dc04:e00:12c3:7bff:fe6d:d374) (Ping timeout: 246 seconds)
09:43:10 × chomwitt quits (~Pitsikoko@2a02:587:dc04:e00:12c3:7bff:fe6d:d374) (Ping timeout: 246 seconds)
09:43:10 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Read error: Connection reset by peer)
09:43:27 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
09:43:44 × hmmmas quits (~fidnc@183.217.200.171) (Quit: Leaving.)
09:44:42 × lechner quits (~lechner@debian/lechner) (Quit: WeeChat 3.0)
09:46:14 × o1lo01ol1o quits (~o1lo01ol1@bl11-109-140.dsl.telepac.pt) (Remote host closed the connection)
09:46:25 lechner joins (~lechner@debian/lechner)
09:57:00 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
09:58:09 azeem joins (~azeem@176.200.202.21)
09:58:45 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-118.prtc.net) (Quit: Client closed)
10:00:11 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
10:00:29 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
10:01:08 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
10:01:27 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
10:01:39 kuribas joins (~user@ptr-25vy0iagiqui74r0v9f.18120a2.ip6.access.telenet.be)
10:02:24 xsperry joins (~as@user/xsperry)
10:03:11 elf_fortrez joins (~elf_fortr@adsl-72-50-4-118.prtc.net)
10:03:53 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
10:09:06 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
10:09:20 azeem joins (~azeem@176.200.202.21)
10:09:20 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Read error: Connection reset by peer)
10:09:33 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:10:02 burnside_ joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:10:02 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Read error: Connection reset by peer)
10:11:01 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:11:01 × burnside_ quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Write error: Connection reset by peer)
10:11:52 burnside_ joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:11:52 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Read error: Connection reset by peer)
10:12:23 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:12:23 × burnside_ quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Read error: Connection reset by peer)
10:15:42 × keutoi quits (~keutoi@157.47.18.91) (Ping timeout: 252 seconds)
10:16:38 × KUrare quits (~KUrare@user/kurare) (Remote host closed the connection)
10:17:02 KUrare joins (~KUrare@user/kurare)
10:19:02 keutoi joins (~keutoi@157.47.18.91)
10:24:30 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
10:24:52 azeem joins (~azeem@176.200.202.21)
10:25:10 × CookE[] quits (~thedawn@user/thedawn) (Ping timeout: 244 seconds)
10:26:12 × lambdap quits (~lambdap@static.167.190.119.168.clients.your-server.de) (Quit: Ping timeout (120 seconds))
10:26:29 lambdap joins (~lambdap@static.167.190.119.168.clients.your-server.de)
10:27:08 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
10:27:28 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
10:30:09 × thonkpod quits (~thonkpod@user/thonkpod) (Ping timeout: 255 seconds)
10:32:40 aravk_ is now known as aravk
10:35:47 <maerwald> Any nice way to get around the MonadReader limitation of only being able to provide one environment? I'm thinking to just ditch it altogether
10:35:56 <dminuoso> maerwald: implicit params.
10:36:11 <dminuoso> It's just as good, but composable - and no param passing when you dont need it. :)
10:36:14 <maerwald> they are unsafe no?
10:36:18 <dminuoso> unsafe in what way?
10:36:34 <maerwald> dunno, heard some claims
10:37:11 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Remote host closed the connection)
10:38:00 <dminuoso> See https://chrisdone.com/posts/whats-wrong-with-implicitparams/
10:38:08 <dminuoso> And https://old.reddit.com/r/haskell/comments/m8o88a/who_still_uses_readert/grkh17q/
10:38:33 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
10:39:58 <maerwald> so it breaks type inference
10:41:01 <maerwald> i think explicit params might be the solution :p
10:41:03 <Taneb> maerwald: if you're comfortable using lens there's Magnify in https://hackage.haskell.org/package/lens-5.0.1/docs/Control-Lens-Zoom.html
10:43:34 <maerwald> Taneb: isn't that just splitting environment into smaller parts, tree-wise? But you still need to construct the entirety of it?
10:43:59 thonkpod joins (~thonkpod@user/thonkpod)
10:43:59 <maerwald> My problem is that part of the env requires network calls to be constructed, the other doesn't
10:44:35 <maerwald> I'm able to hack around it with unsafeInterleaveIO, but that makes exception handling a horror story
10:45:16 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:46:24 <Taneb> maerwald: ah, yeah
10:50:43 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
10:57:52 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
10:58:58 azeem joins (~azeem@176.200.202.21)
11:01:46 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:01:48 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Remote host closed the connection)
11:04:59 × wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal)
11:05:50 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
11:07:16 AlexNoo_ joins (~AlexNoo@178.34.162.246)
11:07:28 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
11:09:36 × Pickchea quits (~private@user/pickchea) (Ping timeout: 252 seconds)
11:11:10 × AlexZenon quits (~alzenon@178.34.162.3) (Ping timeout: 272 seconds)
11:11:10 × Alex_test quits (~al_test@178.34.162.3) (Ping timeout: 272 seconds)
11:11:24 × AlexNoo quits (~AlexNoo@178.34.162.3) (Ping timeout: 256 seconds)
11:14:28 Alex_test joins (~al_test@178.34.162.246)
11:14:28 AlexZenon joins (~alzenon@178.34.162.246)
11:18:43 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-118.prtc.net) (Ping timeout: 246 seconds)
11:19:08 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
11:20:33 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 265 seconds)
11:22:35 × ablutor quits (~quassel@wasscher.com) (Quit: going for vitamine d)
11:23:02 azeem joins (~azeem@176.200.202.21)
11:23:05 oxide joins (~lambda@user/oxide)
11:23:27 ablutor joins (~quassel@wasscher.com)
11:27:08 × KUrare quits (~KUrare@user/kurare) (Remote host closed the connection)
11:27:26 machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca)
11:27:27 zeenk joins (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3)
11:27:32 KUrare joins (~KUrare@user/kurare)
11:29:45 Pickchea joins (~private@user/pickchea)
11:30:02 thyriaen joins (~thyriaen@45.178.73.238)
11:33:06 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
11:35:57 × thyriaen quits (~thyriaen@45.178.73.238) (Quit: Leaving)
11:37:57 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Ping timeout: 265 seconds)
11:41:51 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:42:30 anandprabhu_ joins (anandprabh@gateway/vpn/airvpn/anandprabhu)
11:45:28 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
11:45:45 × anandprabhu quits (~anandprab@94.202.243.198) (Ping timeout: 255 seconds)
11:52:43 smichel17 joins (~smichel17@c-73-68-217-18.hsd1.ma.comcast.net)
11:54:08 × kuribas quits (~user@ptr-25vy0iagiqui74r0v9f.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
12:04:31 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
12:09:00 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
12:09:03 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
12:10:25 azeem joins (~azeem@176.200.202.21)
12:11:06 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Ping timeout: 272 seconds)
12:13:58 elf_fortrez joins (~elf_fortr@adsl-72-50-6-21.prtc.net)
12:19:16 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
12:19:46 azeem joins (~azeem@176.200.202.21)
12:27:11 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
12:27:29 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
12:27:56 peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
12:28:41 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 255 seconds)
12:30:05 azeem joins (~azeem@176.200.202.21)
12:31:03 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
12:36:55 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 265 seconds)
12:38:09 azeem joins (~azeem@176.200.202.21)
12:42:22 × KUrare quits (~KUrare@user/kurare) (Ping timeout: 252 seconds)
12:44:53 <lechner> Hi, should members in data types intended for parsing JSON be annotated with an exclamation mark for strictness?
12:47:46 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
12:50:53 alx741 joins (~alx741@181.196.68.89)
12:52:19 jolly joins (~jolly@208.180.97.158)
12:52:21 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds)
12:56:19 brian_da_mage joins (~Neuromanc@user/briandamag)
12:57:20 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds)
12:58:09 euandreh joins (~euandreh@191.181.59.160)
13:04:22 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 252 seconds)
13:05:39 jumper149 joins (~jumper149@80.240.31.34)
13:05:54 × amk quits (~amk@176.61.106.150) (Ping timeout: 240 seconds)
13:06:38 <jumper149> Hi, I want to display some Haskell code with texlive. What library works well to highlight Haskell? Do they work with extensions?
13:07:59 azeem joins (~azeem@176.200.202.21)
13:09:57 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:10:13 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:10:28 bollu0 joins (~bollu@139.59.46.74)
13:10:39 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:11:21 × anandprabhu_ quits (anandprabh@gateway/vpn/airvpn/anandprabhu) (Quit: Leaving)
13:11:37 glguy_ joins (x@libera/staff/glguy)
13:11:39 GIANTWORLDKEEPR_ joins (~pjetcetal@128-71-13-182.broadband.corbina.ru)
13:11:41 gawen_ joins (~gawen@user/gawen)
13:11:56 TheCoffeMaker_ joins (~TheCoffeM@125-121-245-190.fibertel.com.ar)
13:12:06 Firedancer_ joins (sid336191@id-336191.stonehaven.irccloud.com)
13:12:08 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Read error: Connection reset by peer)
13:12:26 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:12:28 dsf joins (~dsf@cpe-66-75-56-205.san.res.rr.com)
13:12:35 exarkun_ joins (~exarkun@14.79.69.34.bc.googleusercontent.com)
13:12:38 Nahra` joins (~user@static.161.95.99.88.clients.your-server.de)
13:12:50 dustinm- joins (~dustinm@static.38.6.217.95.clients.your-server.de)
13:12:52 emergence6 joins (~emergence@vm0.max-p.me)
13:12:53 Taneb0 joins (~Taneb@runciman.hacksoc.org)
13:13:11 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:13:11 dragestil__ joins (~quassel@user/dragestil)
13:13:15 mjs2600_ joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
13:13:24 sndr joins (~sander@user/sander)
13:13:29 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:13:31 × xff0x quits (~xff0x@2001:1a81:53d5:b900:e768:175e:26b1:ffc) (Ping timeout: 246 seconds)
13:13:36 chkno_ joins (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net)
13:13:41 Ttech joins (adran@botters/adran)
13:13:46 Teacup_ joins (~teacup@user/teacup)
13:13:48 vysn joins (~vysn@user/vysn)
13:13:53 _-- joins (~ding@2001:19f0:5:14c2:5400:2ff:fee0:a42c)
13:13:58 opqdonut_ joins (opqdonut@pseudo.fixme.fi)
13:13:59 orzo_ joins (joe@lasker.childrenofmay.org)
13:14:00 aforemny_ joins (~aforemny@static.248.158.34.188.clients.your-server.de)
13:14:06 terrorjack2 joins (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com)
13:14:08 oxide_ joins (~lambda@user/oxide)
13:14:10 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:14:17 Megant_ joins (megant@user/megant)
13:14:17 jjhoo_ joins (~jahakala@dsl-trebng21-58c18f-56.dhcp.inet.fi)
13:14:21 Clint_ joins (~Clint@user/clint)
13:14:23 jakesyl_ joins (sid56879@id-56879.stonehaven.irccloud.com)
13:14:31 xff0x joins (~xff0x@2001:1a81:53d5:b900:57bd:921c:db51:18e8)
13:14:31 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:14:32 __monty_1 joins (~toonn@user/toonn)
13:14:33 DNH joins (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764)
13:14:44 × Taneb quits (~Taneb@runciman.hacksoc.org) (Killed (NickServ (GHOST command used by Taneb0)))
13:14:47 Hecate_ joins (~mariposa@163.172.211.189)
13:14:48 Taneb0 is now known as Taneb
13:14:49 dhouthoo_ joins (~dhouthoo@178-117-36-167.access.telenet.be)
13:14:56 peutri_ joins (~peutri@ns317027.ip-94-23-46.eu)
13:15:05 piele_ joins (~piele@tbonesteak.creativeserver.net)
13:15:26 Unode_ joins (~Unode@194.94.44.220)
13:15:51 edun joins (~edun@user/edun)
13:15:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:17:08 AlexNoo_ is now known as AlexNoo
13:18:11 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:18:30 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:18:49 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (*.net *.split)
13:18:49 × oxide quits (~lambda@user/oxide) (*.net *.split)
13:18:49 × __monty__ quits (~toonn@user/toonn) (*.net *.split)
13:18:49 × dhouthoo quits (~dhouthoo@178-117-36-167.access.telenet.be) (*.net *.split)
13:18:49 × qbt quits (~edun@user/edun) (*.net *.split)
13:18:49 × paolino quits (~paolo@84.33.185.158) (*.net *.split)
13:18:49 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (*.net *.split)
13:18:49 × TheCoffeMaker quits (~TheCoffeM@user/thecoffemaker) (*.net *.split)
13:18:49 × dragestil_ quits (~quassel@user/dragestil) (*.net *.split)
13:18:49 × juhp quits (~juhp@128.106.188.66) (*.net *.split)
13:18:49 × GIANTWORLDKEEPER quits (~pjetcetal@128-71-13-182.broadband.corbina.ru) (*.net *.split)
13:18:50 × glguy quits (x@libera/staff/glguy) (*.net *.split)
13:18:50 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (*.net *.split)
13:18:50 × Teacup quits (~teacup@user/teacup) (*.net *.split)
13:18:50 × jakesyl quits (sid56879@stonehaven.irccloud.com) (*.net *.split)
13:18:50 × tdammers quits (~tdammers@77.109.72.213.res.static.edpnet.net) (*.net *.split)
13:18:50 × exarkun quits (~exarkun@user/exarkun) (*.net *.split)
13:18:50 × aforemny quits (~aforemny@static.248.158.34.188.clients.your-server.de) (*.net *.split)
13:18:50 × piele quits (~piele@tbonesteak.creativeserver.net) (*.net *.split)
13:18:50 × Hecate quits (~mariposa@user/hecate) (*.net *.split)
13:18:50 × peutri quits (~peutri@ns317027.ip-94-23-46.eu) (*.net *.split)
13:18:50 × Clint quits (~Clint@user/clint) (*.net *.split)
13:18:50 × Unode quits (~Unode@194.94.44.220) (*.net *.split)
13:18:50 × sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (*.net *.split)
13:18:51 × emergence quits (~emergence@vm0.max-p.me) (*.net *.split)
13:18:51 × ding quits (~ding@commie.space) (*.net *.split)
13:18:51 × opqdonut quits (opqdonut@pseudo.fixme.fi) (*.net *.split)
13:18:51 × Megant quits (megant@user/megant) (*.net *.split)
13:18:51 × sander quits (~sander@user/sander) (*.net *.split)
13:18:51 × terrorjack quits (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com) (*.net *.split)
13:18:51 × Adran quits (~adran@botters/adran) (*.net *.split)
13:18:51 × orzo quits (joe@lasker.childrenofmay.org) (*.net *.split)
13:18:51 × chkno quits (~chkno@75-7-2-127.lightspeed.sntcca.sbcglobal.net) (*.net *.split)
13:18:51 × jjhoo quits (~jahakala@dsl-trebng21-58c18f-56.dhcp.inet.fi) (*.net *.split)
13:18:51 × dsf_ quits (~dsf@cpe-66-75-56-205.san.res.rr.com) (*.net *.split)
13:18:51 × shailangsa quits (~shailangs@host86-186-196-229.range86-186.btcentralplus.com) (*.net *.split)
13:18:51 × gawen quits (~gawen@user/gawen) (*.net *.split)
13:18:51 × Firedancer quits (sid336191@stonehaven.irccloud.com) (*.net *.split)
13:18:51 × L29Ah quits (~L29Ah@user/l29ah) (*.net *.split)
13:18:51 × bollu quits (~bollu@139.59.46.74) (*.net *.split)
13:18:52 × dustinm quits (~dustinm@static.38.6.217.95.clients.your-server.de) (*.net *.split)
13:18:52 × yahb quits (xsbot@user/mniip/bot/yahb) (*.net *.split)
13:18:52 × Nahra quits (~user@static.161.95.99.88.clients.your-server.de) (*.net *.split)
13:18:52 sndr is now known as sander
13:18:52 emergence6 is now known as emergence
13:18:52 terrorjack2 is now known as terrorjack
13:18:52 bollu0 is now known as bollu
13:18:52 Unode_ is now known as Unode
13:18:52 Firedancer_ is now known as Firedancer
13:18:52 edun is now known as qbt
13:18:55 jakesyl_ is now known as jakesyl
13:19:12 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Read error: Connection reset by peer)
13:19:28 dragestil__ is now known as dragestil_
13:19:28 yahb joins (xsbot@user/mniip/bot/yahb)
13:19:31 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:19:49 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
13:21:43 exarkun_ is now known as exarkun
13:22:14 × exarkun quits (~exarkun@14.79.69.34.bc.googleusercontent.com) (Changing host)
13:22:14 exarkun joins (~exarkun@user/exarkun)
13:22:32 exarkun is now known as exarkun_
13:22:50 exarkun_ is now known as exarkun
13:24:25 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
13:24:39 paolino joins (~paolo@84.33.185.158)
13:25:18 sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca)
13:25:45 amk joins (~amk@176.61.106.150)
13:26:14 tdammers joins (~tdammers@77.109.72.213.res.static.edpnet.net)
13:26:44 <yushyin> minted?
13:27:09 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Read error: Connection reset by peer)
13:27:28 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:28:10 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:28:24 __monty_1 is now known as __monty__
13:28:25 × elf_fortrez quits (~elf_fortr@adsl-72-50-6-21.prtc.net) (Quit: Client closed)
13:28:29 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:29:11 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
13:29:16 × acidjnk_new3 quits (~acidjnk@p200300d0c72b951301624b1129165e7b.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
13:29:31 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
13:29:34 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
13:35:32 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 252 seconds)
13:37:36 anandprabhu joins (~anandprab@94.202.243.198)
13:40:10 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 258 seconds)
13:40:28 × niHiggim quits (~niHiggim@2600:1700:3d41:8600::27) (Quit: Konversation terminated!)
13:41:22 Shailangsa_ joins (~shailangs@host86-186-196-229.range86-186.btcentralplus.com)
13:42:08 azeem joins (~azeem@176.200.202.21)
13:44:26 × xff0x quits (~xff0x@2001:1a81:53d5:b900:57bd:921c:db51:18e8) (Remote host closed the connection)
13:44:41 <jumper149> yushyin: That seems to work quite fine
13:44:43 xff0x joins (~xff0x@2001:1a81:53d5:b900:59f3:4e1e:9577:2243)
13:45:22 L29Ah joins (~L29Ah@user/l29ah)
13:46:19 × jespada quits (~jespada@90.254.247.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:46:53 jespada joins (~jespada@90.254.247.46)
13:48:03 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
13:49:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
13:56:14 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
13:57:48 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Remote host closed the connection)
13:58:05 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
13:58:41 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
13:59:04 geekosaur joins (~geekosaur@xmonad/geekosaur)
14:00:22 × zinc quits (~zdleaf@163.ip-51-254-203.eu) (Quit: )
14:00:49 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
14:14:51 × dunj3 quits (~dunj3@2001:16b8:3082:9f00:aef2:da36:561b:67d7) (Remote host closed the connection)
14:15:11 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
14:15:31 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
14:15:41 Guest34 joins (~Guest34@115.97.251.135)
14:16:51 × jumper149 quits (~jumper149@80.240.31.34) (Quit: WeeChat 3.2)
14:18:50 amanr joins (~sarcastic@122.161.66.163)
14:19:11 amanr parts (~sarcastic@122.161.66.163) (WeeChat 3.2)
14:20:44 Guest34 is now known as codelegend
14:22:07 <bollu> codelegend Hello!
14:23:14 o1lo01ol1o joins (~o1lo01ol1@83.240.236.226)
14:23:23 × jay-invariant quits (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Read error: Connection reset by peer)
14:23:57 × anandprabhu quits (~anandprab@94.202.243.198) (Quit: Leaving)
14:24:02 jay-invariant joins (~jay@c-24-4-6-169.hsd1.ca.comcast.net)
14:25:44 × o1lo01ol1o quits (~o1lo01ol1@83.240.236.226) (Remote host closed the connection)
14:26:04 o1lo01ol1o joins (~o1lo01ol1@83.240.236.226)
14:26:24 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds)
14:26:38 × o1lo01ol1o quits (~o1lo01ol1@83.240.236.226) (Read error: Connection reset by peer)
14:26:39 o1lo01ol_ joins (~o1lo01ol1@83.240.236.226)
14:27:00 × o1lo01ol_ quits (~o1lo01ol1@83.240.236.226) (Remote host closed the connection)
14:27:27 o1lo01ol1o joins (~o1lo01ol1@83.240.236.226)
14:29:00 × o1lo01ol1o quits (~o1lo01ol1@83.240.236.226) (Remote host closed the connection)
14:29:02 Sgeo joins (~Sgeo@user/sgeo)
14:29:26 o1lo01ol1o joins (~o1lo01ol1@83.240.236.226)
14:30:31 × keutoi quits (~keutoi@157.47.18.91) (Read error: Connection reset by peer)
14:30:49 × codelegend quits (~Guest34@115.97.251.135) (Quit: Client closed)
14:32:34 codelegend joins (~codelegen@115.97.251.135)
14:34:03 × o1lo01ol1o quits (~o1lo01ol1@83.240.236.226) (Ping timeout: 255 seconds)
14:34:36 × silverwhitefish quits (~hidden@47.202.102.10) (Ping timeout: 258 seconds)
14:36:47 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 245 seconds)
14:38:28 × codelegend quits (~codelegen@115.97.251.135) (Quit: Client closed)
14:39:18 × yoneda quits (~mike@193.206.102.122) (Quit: leaving)
14:40:35 × jippiedoe quits (~david@2a02-a44c-e14e-1-41ac-4f6d-ec7a-91a2.fixed6.kpn.net) (Ping timeout: 268 seconds)
14:41:34 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
14:41:36 geekosaur joins (~geekosaur@xmonad/geekosaur)
14:43:06 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
14:47:19 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 246 seconds)
14:48:19 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
14:48:25 Franciman parts (~francesco@openglass.it) (WeeChat 2.3)
14:49:16 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
14:49:38 azeem joins (~azeem@176.200.202.21)
14:53:35 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds)
14:58:03 × euandreh quits (~euandreh@191.181.59.160) (Quit: WeeChat 3.2)
14:58:18 o1lo01ol1o joins (~o1lo01ol1@83.240.236.226)
14:59:25 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 268 seconds)
15:00:55 azeem joins (~azeem@176.200.202.21)
15:01:07 brian_da_mage is now known as Brianmancer
15:02:45 bitmapper joins (uid464869@id-464869.tooting.irccloud.com)
15:02:53 × o1lo01ol1o quits (~o1lo01ol1@83.240.236.226) (Ping timeout: 265 seconds)
15:09:22 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 246 seconds)
15:09:34 azeem joins (~azeem@176.200.202.21)
15:09:46 zmt00 joins (~zmt00@user/zmt00)
15:11:53 × ubert1 quits (~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
15:13:28 ph88^ joins (~ph88@2a02:8109:9e00:7e5c:9925:18b1:79f7:f242)
15:15:24 slowButPresent joins (~slowButPr@user/slowbutpresent)
15:17:13 <lechner> Hi, is there a way to count the number of files received here? Thanks! https://salsa.debian.org/lintian/kickoff/-/blob/master/Collect.hs#L100-104
15:17:39 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
15:19:55 Hanicef joins (~gustaf@81-229-9-108-no92.tbcn.telia.com)
15:21:09 agua joins (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100)
15:21:50 zebrag joins (~chris@user/zebrag)
15:23:33 Core4007 joins (~agua@2804:18:7e:a02e:1:0:239f:a7bb)
15:24:23 × pesada quits (~agua@2804:18:7e:a02e:1:0:239f:a7bb) (Read error: Connection reset by peer)
15:25:00 Null_A joins (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4)
15:25:05 glguy_ is now known as glguy
15:25:28 × agua quits (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100) (Ping timeout: 246 seconds)
15:26:50 × Core4007 quits (~agua@2804:18:7e:a02e:1:0:239f:a7bb) (Read error: Connection reset by peer)
15:27:05 agua joins (~agua@2804:18:7e:a02e:1:0:239f:a7bb)
15:30:20 <dsal> lechner: There are a couple of ways. You could use an IORef or TVar and just increment it, or you could build something that looks like forever, but loops with a counter.
15:31:05 <dsal> monad-loops has `iterateM_ :: Monad m => (a -> m a) -> a -> m b`
15:32:06 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 255 seconds)
15:32:08 <dsal> `iterateM_ f = g where g x = f x >>= g`
15:34:33 azeem joins (~azeem@176.200.202.21)
15:38:54 roboto_el_gato joins (~roboto_el@2600:1700:7df0:4f30:50be:13e8:2b02:47f4)
15:39:11 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
15:39:43 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:40:27 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
15:40:49 zebrag joins (~chris@user/zebrag)
15:44:34 × finsternis quits (~X@23.226.237.192) (Remote host closed the connection)
15:49:19 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
15:49:37 GZJ0X_ joins (~GZJ0X@199.193.127.138.16clouds.com)
15:55:06 pesada joins (~agua@179.179.184.77)
15:56:51 × azeem quits (~azeem@176.200.202.21) (Ping timeout: 255 seconds)
15:56:58 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
15:57:20 azeem joins (~azeem@176.200.202.21)
15:58:23 × agua quits (~agua@2804:18:7e:a02e:1:0:239f:a7bb) (Ping timeout: 255 seconds)
16:00:50 lbseale joins (~lbseale@user/ep1ctetus)
16:01:14 <Cale> loop n = do message <- ...; ...; loop (n + 1) -- just make sure to actually use n in some way inside of the loop, or you'll accumulate a big unevaluated sum expression
16:03:58 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Remote host closed the connection)
16:10:01 <lechner> i was going to go with iterateM_ but straight recursion looks easier. which is preferred?
16:11:31 <wwalker> janus: I've set RLWRAP_HOME. 'rlwrap cat' works. it writes a history file. 'rlwrap hugs' starts hugs and I have readline at the hugs prompt, but no hugs_history is created. Even after I create $RLWRAP_HOME/hugs_history, it still doesn't write anything to it. Since you mentioned rlwrap (Thanks!) do you pass a special argument when using it with hugs?
16:14:01 finsternis joins (~X@23.226.237.192)
16:18:19 ph88 joins (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de)
16:20:20 <maerwald> dminuoso: https://hackage.haskell.org/package/effect-stack-0.3/docs/Control-Monad-Stack-Reader.html
16:21:08 <maerwald> it appears this just works with two Readers
16:23:48 <maerwald> not sure if I'm missing a caveat here
16:25:06 jneira[m] joins (~jneira@201.red-176-87-55.dynamicip.rima-tde.net)
16:26:02 × peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 252 seconds)
16:27:16 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
16:27:52 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
16:27:55 KUrare joins (~KUrare@user/kurare)
16:28:07 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
16:28:44 × DNH quits (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764) (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:28:59 guest61 joins (~xxx@47.245.54.240)
16:36:19 DNH joins (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764)
16:38:36 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
16:42:03 peterhil joins (~peterhil@mobile-access-bceec8-93.dhcp.inet.fi)
16:44:00 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
16:44:11 <zzz> is there a more elegant way to do something like `concatMap (concatMap concat)` ?
16:44:15 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
16:44:52 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
16:44:57 derelict joins (~derelict@user/derelict)
16:45:54 × jneira[m] quits (~jneira@201.red-176-87-55.dynamicip.rima-tde.net) (Remote host closed the connection)
16:45:58 chris_ joins (~chris@81.96.113.213)
16:45:59 guest61 joins (~xxx@47.245.54.240)
16:46:53 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
16:46:54 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
16:47:01 Clint_ is now known as Clint
16:47:45 <Clint> zzz: you mean by avoiding situation in the first place?
16:47:59 guest61 joins (~xxx@47.245.54.240)
16:49:59 × dajoer quits (~david@user/gvx) (Quit: leaving)
16:50:18 <zzz> not avoidable. i have a grid of grids that need to be arbitrarily transposed
16:51:15 <EvanR> reminds me of the old transpose = zip . zip thing
16:51:42 × Shailangsa_ quits (~shailangs@host86-186-196-229.range86-186.btcentralplus.com) (Ping timeout: 252 seconds)
16:54:29 Atum_ joins (IRC@user/atum/x-2392232)
16:58:54 <monochrom> @type concatMap (concatMap concat)
16:58:55 <lambdabot> (Foldable t1, Foldable t2, Foldable t3) => t1 (t2 (t3 [b])) -> [b]
17:01:56 <monochrom> If t1=t2=t3=[], concatMap (concatMap concat) xss = xss >>= concatMap concat = xss >>= \xs -> concatMap concat xs = xss >>= \xs -> xs >>= concat = xss >>= \xs -> xs >>= join
17:02:40 agua joins (~agua@2804:18:7e:a02e:1:0:239f:a7bb)
17:02:41 <monochrom> It is possible that infix is a bit nicer.
17:05:31 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
17:06:27 × pesada quits (~agua@179.179.184.77) (Ping timeout: 268 seconds)
17:07:23 chris_ joins (~chris@81.96.113.213)
17:08:35 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 255 seconds)
17:09:12 × hegstal quits (~hegstal@2a02:c7f:7604:8a00:694c:cc5c:55d8:63b) (Ping timeout: 268 seconds)
17:10:21 shapr joins (~user@pool-108-28-144-11.washdc.fios.verizon.net)
17:11:42 econo joins (uid147250@user/econo)
17:14:21 × Pickchea quits (~private@user/pickchea) (Ping timeout: 265 seconds)
17:14:56 × chele quits (~chele@user/chele) (Quit: Leaving)
17:15:36 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds)
17:16:20 elf_fortrez joins (~elf_fortr@adsl-72-50-4-50.prtc.net)
17:17:03 × elf_fortrez quits (~elf_fortr@adsl-72-50-4-50.prtc.net) (Client Quit)
17:17:12 × qbt quits (~edun@user/edun) (Ping timeout: 245 seconds)
17:18:10 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds)
17:19:56 shailangsa joins (~shailangs@host86-186-196-229.range86-186.btcentralplus.com)
17:24:33 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
17:26:21 <maerwald> anyone has used 'capability'?
17:26:46 <zzz> EvanR: that sound interesting. what zip . zip thing?
17:27:08 <EvanR> let's see
17:27:23 <EvanR> :t zip
17:27:24 <lambdabot> [a] -> [b] -> [(a, b)]
17:27:46 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
17:27:47 Gurkenglas_ joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
17:27:47 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Killed (NickServ (GHOST command used by Gurkenglas_)))
17:27:49 lbseale_ joins (~lbseale@user/ep1ctetus)
17:27:51 Gurkenglas_ is now known as Gurkenglas
17:27:58 <EvanR> > concat
17:28:00 <lambdabot> error:
17:28:00 <lambdabot> • No instance for (Typeable a0)
17:28:00 <lambdabot> arising from a use of ‘show_M50147428099411834637’
17:28:05 <EvanR> :t concat
17:28:06 <lambdabot> Foldable t => t [a] -> [a]
17:29:08 <EvanR> trying to remember from my early days of functional programming
17:30:56 × lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 258 seconds)
17:31:11 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
17:31:53 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
17:32:30 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:32:59 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
17:33:00 guest61 joins (~xxx@47.245.54.240)
17:33:32 <EvanR> ok, just one zip... in scheme zip appears to act like transpose if you used a certain way: https://stackoverflow.com/questions/21688944/zip-function-in-racket-scheme
17:34:37 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
17:35:09 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
17:36:52 × azeem quits (~azeem@176.200.202.21) (Read error: Connection reset by peer)
17:37:37 azeem joins (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it)
17:41:50 × ph88^ quits (~ph88@2a02:8109:9e00:7e5c:9925:18b1:79f7:f242) (Remote host closed the connection)
17:42:09 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer)
17:43:50 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
17:44:23 pesada joins (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100)
17:45:04 Guest9 joins (~Guest9@103.249.234.210)
17:45:17 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
17:45:21 × roboto_el_gato quits (~roboto_el@2600:1700:7df0:4f30:50be:13e8:2b02:47f4) (Quit: Client closed)
17:47:02 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
17:47:30 × agua quits (~agua@2804:18:7e:a02e:1:0:239f:a7bb) (Ping timeout: 240 seconds)
17:48:21 × s_ quits (~s@50.34.81.185) (Quit: Leaving)
17:51:18 <dsal> lechner: iterateM_ is "straight recursion" it just has a name.
17:52:00 <lechner> dsal: thanks!
17:52:33 × derelict quits (~derelict@user/derelict) (Ping timeout: 250 seconds)
17:52:41 justsomeguy joins (~justsomeg@user/justsomeguy)
17:52:54 <dsal> i.e., if you just needed this one thing, I wouldn't bring in monad-loops, but that implementation is trivial, so adding it and using common names is nice. `go` and `loop` and such are common mechanisms as well. There's nothing super wrong here.
17:53:06 <dsal> > iterate succ 0
17:53:08 <lambdabot> [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,2...
17:57:53 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
17:58:00 robot_el_gato joins (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622)
17:58:34 <lechner> dsal: could i use 'iterate' as well?
17:59:00 guest61 joins (~xxx@47.245.54.240)
17:59:22 <dsal> No, iterate`M` means it's monadic and iterateM`_` means it doesn't return the accumulated list.
17:59:30 chris_ joins (~chris@81.96.113.213)
17:59:43 <lechner> i see
18:00:16 <dsal> So `iterateM_` is exactly what you're asking for in the sense that you can pass in a counter and return a new counter value from your action, but doesn't accumulate all the counter values.
18:00:17 <dsal> :t iterate
18:00:18 <lambdabot> (a -> a) -> a -> [a]
18:00:41 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:01:01 <dsal> Iterate is great if you want to generate a list of generations of things where each is derived from the previous.
18:03:36 <dsal> You could make an even more specific thing such as `MonadIO m => (Int -> m ()) -> m ()` That does something like `iterateM_ (\x -> a x >> pure (x +1) 0`
18:03:53 × guest61 quits (~xxx@47.245.54.240) (Remote host closed the connection)
18:04:47 <maerwald> can you have distinct Readers via 'capability'?
18:05:00 guest61 joins (~xxx@47.245.54.240)
18:05:37 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
18:06:51 × azeem quits (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Ping timeout: 250 seconds)
18:07:27 <zzz> @hoogle iterateM
18:07:27 <lambdabot> Streaming.Prelude iterateM :: Monad m => (a -> m a) -> m a -> Stream (Of a) m r
18:07:27 <lambdabot> Util iterateM :: Monad m => Natural -> (a -> m a) -> a -> m (NonEmpty a)
18:07:27 <lambdabot> Streamly.Internal.Data.Stream.StreamD iterateM :: Monad m => (a -> m a) -> m a -> Stream m a
18:07:30 × peterhil quits (~peterhil@mobile-access-bceec8-93.dhcp.inet.fi) (Ping timeout: 268 seconds)
18:09:28 chris_ joins (~chris@81.96.113.213)
18:09:36 azeem joins (~azeem@176.200.202.21)
18:12:21 silverwhitefish joins (~hidden@47.202.102.10)
18:12:54 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:14:17 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
18:14:18 × hiruji quits (~hiruji@user/hiruji) (Read error: Connection reset by peer)
18:14:42 hiruji joins (~hiruji@user/hiruji)
18:15:25 peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
18:17:05 × azeem quits (~azeem@176.200.202.21) (Read error: Connection reset by peer)
18:17:16 × retroid_ quits (~retro@97e2ba5d.skybroadband.com) (Read error: Connection reset by peer)
18:17:59 retroid_ joins (~retro@97e2ba5d.skybroadband.com)
18:19:23 azeem joins (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it)
18:20:51 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
18:21:54 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Remote host closed the connection)
18:24:09 × cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds)
18:24:51 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:25:59 chris_ joins (~chris@81.96.113.213)
18:26:43 lavaman joins (~lavaman@98.38.249.169)
18:26:52 cheater joins (~Username@84-115-12-132.cable.dynamic.surfer.at)
18:27:35 krz3si joins (~quassel@2a02:a31c:853b:b780:96f1:ff36:4051:20c7)
18:27:47 × robot_el_gato quits (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622) (Quit: Ping timeout (120 seconds))
18:28:57 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
18:29:51 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds)
18:30:43 × Hanicef quits (~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving)
18:34:06 × shutdown_-h_now quits (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl) (Ping timeout: 265 seconds)
18:41:00 shutdown_-h_now joins (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
18:42:03 × mcglk_ quits (~mcglk@131.191.49.120) (Read error: Connection reset by peer)
18:42:30 mcglk joins (~mcglk@131.191.49.120)
18:43:08 robot_el_gato joins (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622)
18:43:17 __xor joins (~xor@74.215.232.67)
18:43:36 × _xor quits (~xor@74.215.232.67) (Read error: Connection reset by peer)
18:43:45 × Null_A quits (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4) (Remote host closed the connection)
18:44:27 Null_A joins (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4)
18:44:29 × zebrag quits (~chris@user/zebrag) (Remote host closed the connection)
18:48:20 × __xor quits (~xor@74.215.232.67) (Read error: Connection reset by peer)
18:48:53 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 250 seconds)
18:49:36 __xor joins (~xor@74.215.232.67)
18:51:54 × mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds)
18:54:46 lavaman joins (~lavaman@98.38.249.169)
18:55:29 zebrag joins (~chris@user/zebrag)
18:57:11 burnsidesLlama joins (~burnsides@dhcp168-025.wadham.ox.ac.uk)
18:57:49 × Null_A quits (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4) (Remote host closed the connection)
18:57:55 × robot_el_gato quits (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622) (Ping timeout: 246 seconds)
18:58:05 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
18:58:06 Null_A joins (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4)
19:01:07 derelict joins (~derelict@user/derelict)
19:01:46 × burnsidesLlama quits (~burnsides@dhcp168-025.wadham.ox.ac.uk) (Ping timeout: 268 seconds)
19:01:53 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
19:02:58 chris_ joins (~chris@81.96.113.213)
19:04:50 hexfive joins (~eric@50.35.83.177)
19:14:40 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:15:26 Erutuon joins (~Erutuon@user/erutuon)
19:20:08 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
19:24:09 chris_ joins (~chris@81.96.113.213)
19:24:54 robot_el_gato joins (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622)
19:24:59 × robot_el_gato quits (~robot_el_@2600:1700:7df0:4f30:19da:dcae:83bc:1622) (Client Quit)
19:27:32 × fendor quits (~fendor@77.119.213.12.wireless.dyn.drei.com) (Remote host closed the connection)
19:28:06 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
19:29:29 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
19:30:52 fendor joins (~fendor@77.119.213.12.wireless.dyn.drei.com)
19:32:46 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:35:42 <lechner> Hi, do most people here prefer Data.Text over String when appropriate?
19:36:58 <Rembane> lechner: Yes!
19:38:11 × Guest9 quits (~Guest9@103.249.234.210) (Quit: Connection closed)
19:39:25 <janus> what was typical example with a 'read' blowing up with a long string?
19:41:44 gehmehgeh joins (~user@user/gehmehgeh)
19:42:23 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Quit: Lost terminal)
19:46:10 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
19:46:56 Guest98 joins (~Guest98@187.83.249.216.dyn.smithville.net)
19:47:25 dunkeln joins (~dunkeln@94.128.224.230)
19:47:31 <sm> when appropriate being the operative phrase !
19:47:41 <Guest98> is there a way to ask ghc/ghci "why did this instance declaration not apply to this data type"?
19:47:47 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
19:48:46 <Guest98> (I could just write out an undefined function with the same signature I guess, just wondering if there's a better way)
19:48:56 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
19:49:15 × DNH quits (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:49:35 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:50:47 <zzz> Guest98: can you provide an example of what you would expect ghc to give you?
19:51:07 DNH joins (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764)
19:52:06 acidjnk joins (~acidjnk@p200300d0c72b9530b41c89c6d6c03a30.dip0.t-ipconnect.de)
19:53:20 <Guest98> so like if I have a class (Constraint) => Head where ..., and a data SomeData which it didn't apply to, I could get an informative type error by writing: testFunction :: (Constraint) => Head -> ()// testFunction = undefined// testData :: SomeData// testData = undefined and then trying to compile testFunction (testData)
19:54:18 <Guest98> the type error I'd get there explains why testData doesn't fit the input to testFunction...I just find myself doing this a lot, so I'm wondering if there's an easier way to get the same information
19:56:07 <Guest98> oh sorry typo, I meant class instance (Constraint) => Head (because I usually want to know why an instance declaration I wrote down doesn't match a data type)
19:58:35 × cheater quits (~Username@84-115-12-132.cable.dynamic.surfer.at) (Changing host)
19:58:35 cheater joins (~Username@user/cheater)
19:59:06 retro_ joins (~retro@97e2ba5d.skybroadband.com)
20:02:05 <dsal> lechner: Text or one of the many ByteString types. I still use String on occasion because it often doesn't matter, but "matter" creeps up on you.
20:02:49 × retroid_ quits (~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds)
20:02:54 <lechner> thanks!
20:03:31 retroid_ joins (~retro@97e2ba5d.skybroadband.com)
20:04:03 × retro_ quits (~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds)
20:07:05 juhp joins (~juhp@128.106.188.66)
20:10:42 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
20:11:23 <maerwald> dminuoso: so there are two solutions: 1. effect-stack (with type level index into the stack to disambiguate) and 2. 'capability' library: https://paste.tomsmeding.com/TrDVpiq9
20:11:29 <maerwald> the latter seems over-engineered
20:12:04 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 268 seconds)
20:12:41 <maerwald> wrt effect-stack I have slight concerns that it's less composable, because you have to specify the index
20:12:53 <maerwald> but for my own use case, it's probably irrelevant
20:17:14 <Boarders> is there a more natural way to write a parser like:
20:17:14 <Boarders> (try $ Just <$> p) <|> pure Nothing
20:18:42 × Guest98 quits (~Guest98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
20:20:03 <dsal> Boarders: `option Nothing (Just <$> try p)` ?
20:23:19 <Boarders> yeah I think I can use optional but not with try
20:23:25 <Boarders> I think try will always succeed
20:24:27 × mjs2600_ quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
20:25:38 × dunkeln quits (~dunkeln@94.128.224.230) (Ping timeout: 268 seconds)
20:25:41 <wwalker> anyone know if I can buy Programming in Haskell as a PDF? I bought it a couple of weeks ago and started using it last night. I'm old and the print is just too small, and the binding is already breaking, and it won't lie flat. Only thing I have found is Amazon has it, but then I'm tied to their reader, but I'll likely end up buying it again from Amazon.
20:25:48 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
20:25:56 × krz3si quits (~quassel@2a02:a31c:853b:b780:96f1:ff36:4051:20c7) (Ping timeout: 252 seconds)
20:26:07 × derelict quits (~derelict@user/derelict) (Ping timeout: 246 seconds)
20:26:17 renzhi joins (~xp@2607:fa49:655f:a700::8b9f)
20:26:28 krz3si joins (~quassel@185.217.117.220)
20:27:08 × jolly quits (~jolly@208.180.97.158) (Quit: Connection closed)
20:27:31 <myShoggoth> The Haskell Interlude podcast teaser episode is up: https://haskell.foundation/podcast/
20:30:01 <Rembane> Yay!
20:30:34 Pickchea joins (~private@user/pickchea)
20:34:26 × KUrare quits (~KUrare@user/kurare) (Remote host closed the connection)
20:34:51 <tomsmeding> Boarders: I don't think try will always succeed; it will turn later failure (which is usually fatal in parsec) into immediate failure (which allows another path to be chosen in parsec)
20:34:52 KUrare joins (~KUrare@user/kurare)
20:35:14 <tomsmeding> so I'd expect the expression by dsal to be exactly what you need
20:35:46 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Read error: Connection reset by peer)
20:35:56 × KUrare quits (~KUrare@user/kurare) (Remote host closed the connection)
20:36:20 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
20:36:20 KUrare joins (~KUrare@user/kurare)
20:38:04 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 256 seconds)
20:38:33 <tomsmeding> also yay Utrecht representation on the podcast :)
20:39:49 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Client Quit)
20:40:34 slycelote joins (~slycelote@user/slycelote)
20:40:47 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
20:41:10 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
20:42:27 RaitoBezarius joins (~Raito@wireguard/tunneler/raito-bezarius)
20:42:58 × Raito_Bezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 240 seconds)
20:45:40 Raito_Bezarius joins (~Raito@wireguard/tunneler/raito-bezarius)
20:46:56 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection)
20:47:17 × RaitoBezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (Ping timeout: 255 seconds)
20:47:27 × Raito_Bezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (Client Quit)
20:47:42 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
20:47:52 Raito_Bezarius joins (~Raito@wireguard/tunneler/raito-bezarius)
20:52:22 <Boarders> thanks! I went with just optional p which seemed to have the right semantics for what I was doing
20:53:15 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 250 seconds)
20:54:36 agua joins (~agua@177.79.106.96)
20:55:14 × azeem quits (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Read error: Connection reset by peer)
20:56:09 azeem joins (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it)
20:57:54 × pesada quits (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100) (Ping timeout: 255 seconds)
21:01:25 retro_ joins (~retro@97e2ba5d.skybroadband.com)
21:02:35 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
21:04:43 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:05:06 × retroid_ quits (~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds)
21:05:43 × KUrare quits (~KUrare@user/kurare) (Ping timeout: 268 seconds)
21:08:16 pesada joins (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100)
21:09:17 × cheater quits (~Username@user/cheater) (Quit: (BitchX) Hanson uses BitchX. Mommy, can we dress like boys again?)
21:09:44 cheater joins (~Username@user/cheater)
21:10:21 × gorignak quits (~gorignak@047-037-033-079.res.spectrum.com) (Quit: leaving)
21:10:42 × agua quits (~agua@177.79.106.96) (Ping timeout: 240 seconds)
21:10:53 chkno_ is now known as chkno
21:11:26 × neurocyte quits (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat)
21:12:13 × ft quits (~ft@shell.chaostreff-dortmund.de) (Remote host closed the connection)
21:12:14 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
21:14:17 jolly joins (~jolly@208.180.97.158)
21:15:07 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
21:15:23 neurocyte joins (~neurocyte@45.136.170.21)
21:15:23 × neurocyte quits (~neurocyte@45.136.170.21) (Changing host)
21:15:23 neurocyte joins (~neurocyte@user/neurocyte)
21:17:12 × turlando quits (~turlando@user/turlando) (Read error: Connection reset by peer)
21:17:27 chomwitt joins (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374)
21:17:29 × michalz quits (~michalz@185.246.204.61) (Remote host closed the connection)
21:17:36 turlando joins (~turlando@93-42-250-112.ip89.fastwebnet.it)
21:17:36 × turlando quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Changing host)
21:17:36 turlando joins (~turlando@user/turlando)
21:21:10 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
21:21:38 <dsal> I just noticed in stdlib that `find` is defined as `find p = getFirst . foldMap (\ x -> First (if p x then Just x else Nothing))` -- does anyone have any opinions as to why that's better than the `foldr` that seems like an obvious thing to me.
21:24:03 <c_wraith> it works better for data types that are more tree-like
21:24:10 × fendor quits (~fendor@77.119.213.12.wireless.dyn.drei.com) (Read error: Connection reset by peer)
21:24:19 <c_wraith> Hmm. Actually, I'm not sure of that.
21:24:29 <c_wraith> I can't see any case where it's obviously better
21:26:24 <hpc> :t foldMap
21:26:25 <lambdabot> (Foldable t, Monoid m) => (a -> m) -> t a -> m
21:27:52 ft joins (~ft@shell.chaostreff-dortmund.de)
21:29:24 <boxscape> % :t \p -> alaf First foldMap \x -> [x | p x ]
21:29:24 <yahb> boxscape: Foldable t => (b -> Bool) -> t b -> Maybe b
21:29:25 × chris_ quits (~chris@81.96.113.213) (Read error: Connection reset by peer)
21:30:50 × DNH quits (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:32:03 agua joins (~agua@2804:18:7e:a02e:1:0:239f:a7bb)
21:33:01 × slycelote quits (~slycelote@user/slycelote) (Read error: Connection reset by peer)
21:33:01 s_ joins (~slycelote@user/slycelote)
21:34:28 chris_ joins (~chris@81.96.113.213)
21:34:59 × pesada quits (~agua@2804:14c:8793:8e2f:a4d4:3a0b:9f6:6100) (Ping timeout: 255 seconds)
21:35:19 × paolino quits (~paolo@84.33.185.158) (Ping timeout: 268 seconds)
21:36:59 DNH joins (~DNH@2a02:8108:1100:16d8:c4df:67d7:d0ec:2764)
21:39:19 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
21:39:19 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
21:39:37 benin0369 joins (~benin@183.82.204.139)
21:39:38 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 268 seconds)
21:40:09 × shailangsa quits (~shailangs@host86-186-196-229.range86-186.btcentralplus.com) (Remote host closed the connection)
21:42:28 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
21:45:14 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
21:45:34 × ubert quits (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Quit: ubert)
21:45:54 lavaman joins (~lavaman@98.38.249.169)
21:50:27 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 258 seconds)
21:52:04 × gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving)
21:57:46 KUrare joins (~KUrare@user/kurare)
21:59:28 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
22:03:38 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 256 seconds)
22:03:44 geekosaur joins (~geekosaur@xmonad/geekosaur)
22:05:14 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
22:05:41 geekosaur joins (~geekosaur@xmonad/geekosaur)
22:09:14 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds)
22:09:14 × myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 258 seconds)
22:10:11 shailangsa joins (~shailangs@host86-186-196-229.range86-186.btcentralplus.com)
22:14:51 × KUrare quits (~KUrare@user/kurare) (Remote host closed the connection)
22:15:07 × s_ quits (~slycelote@user/slycelote) (Quit: Leaving)
22:15:16 KUrare joins (~KUrare@user/kurare)
22:15:18 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Quit: WeeChat 2.8)
22:19:21 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
22:20:08 <c_wraith> Hmm. how does one make haddock render README.md into the index file?
22:20:14 × oxide_ quits (~lambda@user/oxide) (Read error: Connection reset by peer)
22:21:34 HarveyPwca joins (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06)
22:23:25 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds)
22:23:40 geekosaur joins (~geekosaur@xmonad/geekosaur)
22:24:43 slycelote joins (~slycelote@user/slycelote)
22:27:37 h98 joins (~h98@187.83.249.216.dyn.smithville.net)
22:29:50 × chomwitt quits (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374) (Remote host closed the connection)
22:30:07 chomwitt joins (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374)
22:30:27 × bgamari quits (~bgamari@72.65.101.148) (Ping timeout: 265 seconds)
22:32:18 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
22:32:48 bgamari joins (~bgamari@72.65.101.148)
22:34:23 × acidjnk quits (~acidjnk@p200300d0c72b9530b41c89c6d6c03a30.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
22:34:50 myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net)
22:37:39 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
22:38:33 <h98> I want a type family "Unwrap a" where if I write "newtype Foo = F Bar" then "Unwrap Foo = Bar"...is this impossible without writing it out explicitly because the left side of the newtype doesn't reference the wrapped type?
22:42:02 <geekosaur> you might be interested in Coercible
22:42:18 <geekosaur> in short, it already exists
22:43:27 × Pickchea quits (~private@user/pickchea) (Quit: Leaving)
22:44:50 × vysn quits (~vysn@user/vysn) (Remote host closed the connection)
22:45:13 <sm> or Witch
22:48:18 <h98> yeah I know I can coerce (I can also just do it another way), I was just wondering if there was an easy way to write this as a type family
22:48:20 × KUrare quits (~KUrare@user/kurare) (Ping timeout: 265 seconds)
22:49:29 <h98> obviously Unwrap (f a) = a doesn't work because "Foo" doesn't match "f a" in "newtype Foo = F Bar"
22:55:33 × chomwitt quits (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374) (Remote host closed the connection)
22:55:44 bgamari_ joins (~bgamari@72.65.101.148)
22:55:45 <davean> h98: theres no information at the type level about what is in Foo, so no
22:55:50 chomwitt joins (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374)
22:56:06 × bgamari quits (~bgamari@72.65.101.148) (Ping timeout: 268 seconds)
22:56:41 <davean> coerce doesn't even do this, coerce talks about representations matching
22:57:16 <h98> okay that makes sense; thanks!
22:57:48 <davean> (This is what type role "nominal" deals with actually!)
23:01:31 × chomwitt quits (~Pitsikoko@2a02:587:dc02:3500:12c3:7bff:fe6d:d374) (Ping timeout: 246 seconds)
23:11:40 × noctux quits (~noctux@user/noctux) (Read error: Connection reset by peer)
23:12:09 noctux joins (~noctux@user/noctux)
23:15:10 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 258 seconds)
23:16:05 × noctux quits (~noctux@user/noctux) (Remote host closed the connection)
23:17:23 × Null_A quits (~null_a@2601:645:8700:2290:f84f:8a6f:2960:e8a4) (Remote host closed the connection)
23:17:27 geekosaur joins (~geekosaur@xmonad/geekosaur)
23:18:59 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection)
23:19:22 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
23:20:16 noctux joins (~noctux@user/noctux)
23:24:17 × dhouthoo_ quits (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.2)
23:26:04 allbery_b joins (~geekosaur@xmonad/geekosaur)
23:26:04 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
23:27:18 allbery_b is now known as geekosaur
23:30:19 pavonia joins (~user@user/siracusa)
23:31:32 × jol quits (~jol@jol.dev) (Quit: WeeChat 3.2)
23:35:34 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 268 seconds)
23:35:51 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
23:37:12 Guest8638 joins (~Guest86@50.47.115.102)
23:38:37 × h98 quits (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
23:38:57 notzmv joins (~zmv@user/notzmv)
23:39:27 × geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 255 seconds)
23:40:08 geekosaur joins (~geekosaur@xmonad/geekosaur)
23:41:21 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:52:57 × GZJ0X_ quits (~GZJ0X@199.193.127.138.16clouds.com) (Ping timeout: 255 seconds)
23:56:00 × MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 265 seconds)
23:56:17 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
23:56:58 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 265 seconds)

All times are in UTC on 2021-07-16.