Home liberachat/#haskell: Logs Calendar

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

00:01:30 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
00:03:46 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 272 seconds)
00:05:34 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 268 seconds)
00:07:26 × juhp quits (~juhp@128.106.188.220) (Quit: juhp)
00:07:39 juhp joins (~juhp@128.106.188.220)
00:09:54 × Deide quits (~Deide@user/deide) (Quit: Seeee yaaaa)
00:10:03 × waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 255 seconds)
00:10:40 hiruji joins (~hiruji@user/hiruji)
00:12:57 × hiruji quits (~hiruji@user/hiruji) (Read error: Connection reset by peer)
00:13:37 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
00:13:51 hiruji joins (~hiruji@user/hiruji)
00:14:10 oso joins (~oso@2601:58c:c080:a950:f275:2530:b398:680b)
00:20:14 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
00:20:38 favonia joins (~favonia@user/favonia)
00:35:23 romes24 joins (~romes@44.190.189.46.rev.vodafone.pt)
00:35:31 <romes24> hey everyone :)
00:36:06 <geekosaur> ohai
00:36:08 × favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds)
00:36:34 favonia joins (~favonia@user/favonia)
00:39:25 dajoer joins (~david@user/gvx)
00:40:49 Erutuon joins (~Erutuon@user/erutuon)
00:44:50 fendor_ joins (~fendor@91.141.32.205.wireless.dyn.drei.com)
00:45:14 hololeap joins (~hololeap@user/hololeap)
00:47:30 × fendor quits (~fendor@77.119.210.38.wireless.dyn.drei.com) (Ping timeout: 258 seconds)
00:47:35 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
00:48:27 × favonia quits (~favonia@user/favonia) (Ping timeout: 245 seconds)
00:48:53 × soft-warm quits (~soft-warm@2600:8801:db01:8f0:2b46:c2bc:f21e:3c72) (Quit: Ping timeout (120 seconds))
00:49:42 favonia joins (~favonia@user/favonia)
00:50:55 soft-warm joins (~soft-warm@2600:8801:db01:8f0:2b46:c2bc:f21e:3c72)
00:56:57 hiruji` joins (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6)
00:57:03 × hiruji quits (~hiruji@user/hiruji) (Read error: Connection reset by peer)
00:57:37 <romes24> is there a way to forcefully terminate a program after x seconds ? I've seen System.Timeout however it doesn't interrupt my non terminating program :)
00:57:52 <Axman6> all exit?
00:57:56 <Axman6> call*
00:58:02 <romes24> oh im going to try -fomit-yields wait
00:58:18 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
00:58:24 <geekosaur> if your program doesn't allocate even that might not work
00:58:31 <c_wraith> you probably want -fno-omit-yields
00:58:36 favonia joins (~favonia@user/favonia)
00:58:56 <Axman6> yeah... you want to emmit yeilds, not omit them
00:59:06 × zeenk quits (~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38) (Quit: Konversation terminated!)
00:59:29 × zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving)
00:59:54 <romes24> thank you :), ahaha
01:00:24 <Axman6> ields too
01:00:41 <Axman6> argh, why isn't my first key registering
01:00:55 <Axman6> I have enough trouble typing without my keyboard betraying me
01:02:17 zaquest joins (~notzaques@5.128.210.178)
01:02:24 <romes24> it doesn't stop indeed :) the program is a lambda calculus interpreter that I want to quit after x seconds if doesn't terminate
01:03:12 <dsal> I think you just solved the halting problem.
01:03:22 <romes24> LOL :)
01:03:40 <romes24> but I don't want to know whether it halts or not, I want to timeout
01:03:53 × phma quits (phma@2001:5b0:212a:a908:914b:947b:7a62:29b3) (Read error: Connection reset by peer)
01:04:02 <Axman6> "Does it halt?" "It bloody well better!"
01:04:13 <romes24> hahahahaha
01:04:19 <dsal> I actually have a similar problem that ended up being painfully complicated because of exception handlers and stuff. I haven't looked at it in a year or so, but I was having trouble getting my watchdog to actually terminate my process.
01:04:19 cjb joins (~cjb@user/cjb)
01:04:42 <Axman6> os, if it were me, I would run the evaluation in another thread, and using something like the async library to kill that thread after n seconds
01:04:44 <dsal> I was forced to, instead, fix the bug that made me want the watchdog.
01:05:14 <romes24> Axman6 that's kind of what I was looking for here :) can you point me to some docs ?
01:05:26 <romes24> what's a watchdog
01:05:27 <Axman6> https://hackage.haskell.org/package/async-2.2.3/docs/Control-Concurrent-Async.html#v:race
01:05:36 <romes24> thank you kindly Axman6
01:05:46 <Axman6> stick timeout in the left thread, then check the result
01:05:51 mnrmnaugh is now known as BMCC
01:06:15 <Axman6> "The loser of the race is cancelled" bloody cancel culture
01:06:31 BMCC is now known as awk
01:07:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
01:07:42 × viluon quits (uid453725@id-453725.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
01:07:49 × hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 258 seconds)
01:08:39 hyiltiz joins (~quassel@31.220.5.250)
01:08:46 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
01:09:14 <romes24> ahahaha just now I got the joke. what a useful utility actually
01:09:34 <Axman6> lso, you should read parallel and concurrent programming in haskell
01:09:50 favonia joins (~favonia@user/favonia)
01:09:51 <Axman6> it
01:10:01 ukari joins (~ukari@user/ukari)
01:10:03 <Axman6> it's very approachable and explains all the nuances of concurrency in haskell
01:10:10 <romes24> yeah I haven't gotten into it at all but sounds wonderful
01:10:11 <dsal> +1 but also `race` is brilliant.
01:10:32 meinside_ joins (uid24933@id-24933.brockwell.irccloud.com)
01:10:33 <romes24> it does look like it ahah +1
01:11:09 <dsal> @hoogle timeout
01:11:09 <lambdabot> System.Timeout timeout :: Int -> IO a -> IO (Maybe a)
01:11:09 <lambdabot> System.Directory.Internal.Prelude timeout :: () => Int -> IO a -> IO (Maybe a)
01:11:09 <lambdabot> System.Timeout.Lifted timeout :: MonadBaseControl IO m => Int -> m a -> m (Maybe a)
01:11:17 <dsal> I use that in a few places
01:11:29 <dsal> (the first one, anyway)
01:13:02 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 245 seconds)
01:15:14 × soft-warm quits (~soft-warm@2600:8801:db01:8f0:2b46:c2bc:f21e:3c72) (Quit: Client closed)
01:15:46 awk is now known as mnrmnaugh
01:16:33 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
01:16:51 berberman joins (~berberman@user/berberman)
01:17:17 × berberman_ quits (~berberman@user/berberman) (Ping timeout: 255 seconds)
01:18:41 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
01:19:32 × xff0x_ quits (~xff0x@2001:1a81:5345:c200:35ab:ec93:2501:2232) (Ping timeout: 255 seconds)
01:21:10 xff0x_ joins (~xff0x@2001:1a81:5383:d200:23a4:8563:bc41:3b3e)
01:23:27 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 250 seconds)
01:24:40 phma joins (~phma@host-67-44-208-73.hnremote.net)
01:25:40 Erutuon joins (~Erutuon@user/erutuon)
01:27:58 lavaman joins (~lavaman@98.38.249.169)
01:29:41 slack1256 joins (~slack1256@191.125.175.8)
01:31:00 phma_ joins (~phma@host-67-44-208-68.hnremote.net)
01:31:02 × phma quits (~phma@host-67-44-208-73.hnremote.net) (Ping timeout: 252 seconds)
01:31:48 <slack1256> Do any of you use any haskell library to interface to the gpio pins on a RPi?
01:31:58 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
01:32:00 <slack1256> Tried `HPi` but didn't build.
01:35:19 <monochrom> I don't, someone else did, you'll have to wait for them, but they exist.
01:35:39 <monochrom> Then again, IIRC they just use FFI and write to I/O ports.
01:36:17 <slack1256> Mmm yeah, I better follow that route.
01:37:00 <zzz> when a language extension says it implies another does it mean we can ommit the latter?
01:37:08 <c_wraith> yes
01:37:22 <zzz> got it
01:37:37 <monochrom> "omit" and "emit" are easy to mix up. :)
01:38:00 <monochrom> -femit-yield and fno-omit-yield and -fno-emit-yield
01:38:06 × hegstal quits (~hegstal@2a02:c7f:7604:8a00:9af4:e021:9dca:50c4) (Remote host closed the connection)
01:44:17 × favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds)
01:44:42 favonia joins (~favonia@user/favonia)
01:47:21 × slack1256 quits (~slack1256@191.125.175.8) (Remote host closed the connection)
01:49:01 × terrorjack quits (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com) (Read error: Connection reset by peer)
01:50:11 terrorjack joins (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com)
01:55:40 stevenxl joins (~stevenlei@68.235.43.157)
01:57:24 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
02:00:53 <romes24> can't make it work even with race unfortunately
02:01:01 <romes24> I'm probably doing something about concurrency wrong in general :P
02:02:44 × favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds)
02:03:03 favonia joins (~favonia@user/favonia)
02:04:45 <Axman6> we'd love to help, but we're blind without the code ;)
02:07:03 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 268 seconds)
02:08:35 × td_ quits (~td@94.134.91.91) (Ping timeout: 255 seconds)
02:09:15 × stevenxl quits (~stevenlei@68.235.43.157) (Quit: leaving)
02:10:19 td_ joins (~td@muedsl-82-207-238-071.citykom.de)
02:11:42 × ablutor quits (~quassel@wasscher.com) (Ping timeout: 268 seconds)
02:13:23 ablutor joins (~quassel@wasscher.com)
02:16:18 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
02:16:21 × alx741_ quits (~alx741@186.178.108.210) (Quit: alx741_)
02:17:06 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
02:18:08 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
02:20:08 × romes24 quits (~romes@44.190.189.46.rev.vodafone.pt) (Quit: Ping timeout (120 seconds))
02:20:53 romes85 joins (~romes@44.190.189.46.rev.vodafone.pt)
02:21:14 <romes85> Axman6 that'd be nice, let me do a paste
02:24:06 <romes85> I've tried some different things but I'm clearly doing it wrong. it seems that if I kill the program before it enters a loop it works but as soon as the program is in an infinite loop no kill signal can stop it ahaha
02:24:07 <romes85> https://paste.tomsmeding.com/uVe1GGLk
02:24:17 <romes85> this is what i was trying now
02:24:27 <romes85> perhaps I gave up on the Async too soon
02:24:41 motle joins (~motle@cpc103048-sgyl39-2-0-cust506.18-2.cable.virginm.net)
02:27:10 <motle> Hi, i wrote a description of part of the graph API im trying to implement here; https://pastebin.com/raw/8u7g3gUP
02:27:46 <motle> and was wondering if anyone would be up for discussing it as part of a full interface
02:27:54 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
02:28:18 <romes85> (my attempt at async was like this https://paste.tomsmeding.com/SCuAwkTI)
02:28:57 favonia joins (~favonia@user/favonia)
02:29:45 × MorrowM quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 250 seconds)
02:30:10 Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net)
02:32:40 finn_elija joins (~finn_elij@user/finn-elija/x-0085643)
02:32:40 FinnElija is now known as Guest3789
02:32:40 finn_elija is now known as FinnElija
02:35:05 <slycelote_> romes85, have you tried System.Timeout?
02:35:32 <h98> is "infinite program" external or is it a haskell function?
02:35:34 × Guest3789 quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 252 seconds)
02:35:40 <romes85> it's a haskell function!
02:36:05 <romes85> that recurses infinitely
02:36:10 <motle> something liek forever $ do ?
02:36:15 <romes85> slycelote_ I've tried without results
02:36:24 <romes85> I might have screwed it up tho ^
02:36:31 × Atum_ quits (~IRC@user/atum/x-2392232) (Quit: Atum_)
02:36:36 <romes85> yea motle, in fact its a lambda-calculus interpreter
02:36:44 <motle> nice
02:37:15 <motle> could you do like; infinite (unfold stateProgram) ?
02:37:49 <romes85> im synthesising linear functional programs, but couldn't create good enough heuristics to avoid synthesising some recursive functions. so when the programs are run they loop forever lol
02:38:01 <motle> whats the functor your program terms are supported on?
02:38:14 × favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds)
02:38:33 <slycelote_> Are you sure the interpreter doesn't do any I/O behind the scenes? Can you try a simpler "infinite" program?
02:38:44 <motle> romes85: yeah, what youv done there is chosen to make "1-loop" programs from linear programs by feeding the output into the next layer
02:38:52 <motle> simple architecture
02:38:58 <motle> you can run them in parallel too..
02:39:13 <motle> like bike vs car wheels
02:39:16 favonia joins (~favonia@user/favonia)
02:39:46 <slycelote_> also, try changing between threaded and non-threaded runtimes (a shot in the dark...)
02:39:48 <motle> generally all recursive programs can be made into such a shape
02:40:22 <romes85> I'll attempt a simpler infinite program slycelote, that's a good idea.
02:40:33 <romes85> I couldn't follow motle :)
02:40:55 <motle> if you kind of think of the propegation of function calls dereferencing along a kind of "front" and placing these neatly as layers that can be treated as linear nodes
02:40:57 <motle> basically...
02:41:16 × phma_ quits (~phma@host-67-44-208-68.hnremote.net) (Read error: Connection reset by peer)
02:41:30 <romes85> oh never mind the linear, I think I might have made it more confusing , it doesn't matter :) the essence is "how do I stop an infinite program from running after x seconds"
02:42:01 <romes85> I don't think I'm doing it correctly, I just experimented the concurrency modules for the first time
02:42:10 × ablutor quits (~quassel@wasscher.com) (Ping timeout: 252 seconds)
02:42:21 <romes85> (meaning I'm new to them)
02:43:00 <motle> ah, so you want something like an open handle containing the running program that you can apply a function to to stop and maybe restart it or something like that?
02:43:24 <romes85> yeah, no need to restart, just stop the "infinity"
02:43:26 <motle> what you have seems like a good way to start with though
02:43:39 <romes85> perhaps even timeout works, if used correctly..
02:44:09 <slycelote_> timeout 1000 $ return $ fromADTBool $ evalModule $ infinite program
02:44:10 <motle> not sure how youd factor it into a "running IO variable" that you could pass and then have a way to use this as an argument to the stopping function
02:44:14 <slycelote_> should just work...
02:44:14 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
02:44:59 <motle> oh right, timeout does something like that? :: Int -> IO ValueHandleThing -> result
02:45:07 <h98> when you tried timeout, did you consume the value?
02:46:00 <romes85> what does "consuming the value mean"? thank you :)
02:46:22 <romes85> slycelote_ it didn't, but perhaps its a combination of emit omit threaded I did wrong...
02:46:23 <h98> just a shot in the dark, but binding the result to an a and printing it or something
02:46:40 <romes85> I see :)
02:46:57 <romes85> I'll put it inside a case
02:47:38 phma_ joins (phma@2001:5b0:211f:6ab8:d4bc:dc6f:9391:c76c)
02:48:14 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
02:48:17 × phma_ quits (phma@2001:5b0:211f:6ab8:d4bc:dc6f:9391:c76c) (Read error: Connection reset by peer)
02:51:06 phma_ joins (phma@2001:5b0:211f:6ab8:d4bc:dc6f:9391:c76c)
02:51:18 falafel_ joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
02:53:02 × jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 245 seconds)
02:53:06 <romes85> it worked that's genius :)
02:53:42 <romes85> h98 you shoot in the dark but you have night vision goggles :)
02:53:56 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
02:54:22 <romes85> I'm going to try it again just to see if I missed something the last time around, or if it really is from the forcing the strict evaluation with `case`
02:55:23 × favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds)
02:56:36 favonia joins (~favonia@user/favonia)
02:57:00 <romes85> ACTUALLY AMAZING :)
02:57:47 <romes85> https://paste.tomsmeding.com/3IuASlTo
02:59:23 <slycelote_> ah, well, that's lazy IO :)
02:59:51 <slycelote_> in the first example return "returns" immediately I guess
03:00:48 <romes85> :) I'm very happy, thank you for your insights
03:02:41 × Null_A quits (~null_a@2601:645:8700:2290:b5ac:63df:d679:fb5d) (Remote host closed the connection)
03:03:25 Null_A joins (~null_a@2601:645:8700:2290:b5ac:63df:d679:fb5d)
03:04:20 <Axman6> romes85: using "return !$ doo" is often a good way to force things, at least to WHNF
03:04:49 <Axman6> so you should be able to say return !$ y which would ensure that y is evaluated before being passed to return
03:05:04 × favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds)
03:05:29 favonia joins (~favonia@user/favonia)
03:06:14 <romes85> I still don't understand WHNF completely, but I'll look into it soon and remember what you said. I'll also attempt to use that operator
03:06:44 <Axman6> it's when a value is evaluated enough to know which constructor it is
03:07:44 <romes85> did you mean $! ?
03:07:46 <Axman6> in the case of Bool, that means fully evaluating it. but if you have return $! (undefined :: Either String Bool) then this will blow up right away, if you have return $! (Left undefined) this won't blow up until someone looks at that value in the Left
03:07:57 <Axman6> uh yeah
03:08:03 <romes85> oh, that's a good explanation
03:09:21 m7zs3gzw joins (~m7zs3gzw@188.170.195.101)
03:09:40 <romes85> yep, $! also works
03:09:55 <romes85> thank you everyone, it's 4AM, I'm logging off
03:10:26 <Axman6> D:
03:10:38 <romes85> ahahahah I've been at this timeout problem for hours
03:11:10 <romes85> lazy IO, who would've thought, here I was thinking that's the kind of thing "that only happens to others" hahahah
03:11:22 <Axman6> I don't think this is lazy IO
03:11:26 <romes85> oh
03:11:27 <romes85> :)
03:11:39 <romes85> it's just general lazy ? ahaha
03:11:54 <Axman6> lazy IO generally refers to things like how readFile works, where it reads from the String it produces as you demant more characters
03:12:09 <romes85> understood :)
03:12:15 <Axman6> yeah just normal laziness, in that values returned by IO may not have been evaluated when they're returned
03:12:43 <romes85> got it, good night!
03:12:49 × romes85 quits (~romes@44.190.189.46.rev.vodafone.pt) (Quit: Client closed)
03:12:51 <slycelote_> yeah, lazy in IO would be better way to put it :)
03:13:02 × m7zs3gzw quits (~m7zs3gzw@188.170.195.101) (Remote host closed the connection)
03:13:16 m7zs3gzw joins (~m7zs3gzw@188.170.195.101)
03:13:20 <h98> i'm honestly surprised that could be a thing..is it actually a thing?
03:13:37 <h98> when I do an IO (), I expect an IO action to be performed
03:14:10 <slycelote_> not when you ignore the result
03:14:44 <slycelote_> > return undefined >> return 5
03:14:45 <lambdabot> error:
03:14:45 <lambdabot> • Ambiguous type variable ‘m0’ arising from a use of ‘show_M555254866422...
03:14:46 <lambdabot> prevents the constraint ‘(Show (m0 Integer))’ from being solved.
03:14:49 <monochrom> (Sarcasm) Right, for example, the result of putStrLn "hello" is (). If you ignore the () result, hello is not printed.
03:15:04 <slycelote_> > return undefined >> return (5 :: Int)
03:15:06 <lambdabot> error:
03:15:06 <lambdabot> • Ambiguous type variable ‘m0’ arising from a use of ‘show_M288721645296...
03:15:06 <lambdabot> prevents the constraint ‘(Show (m0 Int))’ from being solved.
03:15:21 <slycelote_> > return (undefined :: Int) >> return (5 :: Int)
03:15:22 <lambdabot> error:
03:15:22 <lambdabot> • Ambiguous type variable ‘m0’ arising from a use of ‘show_M141220481975...
03:15:22 <lambdabot> prevents the constraint ‘(Show (m0 Int))’ from being solved.
03:15:35 <slycelote_> grr, why? :-D
03:15:42 <monochrom> If you have "getLine >> putStrLn "hello"", you are ignoring both the result of getLine and putStrLn, so nothing happens at all.
03:16:39 <monochrom> If that is contrary to what you actually observe, then it means the model "nothing happens when you ignore the result" is wrong.
03:17:36 <c_wraith> > let x = putStrLn "hi" in 3
03:17:37 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 245 seconds)
03:17:37 <lambdabot> 3
03:17:43 <c_wraith> I ignored the result. :)
03:17:46 <monochrom> haha
03:18:20 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
03:18:25 <monochrom> I have a student who is trying very hard to code up "newvalue = foo >>= \x -> return x" to set newvalue to that x.
03:18:41 dtman34 joins (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net)
03:19:10 <slycelote_> I mean in your examples there's actual I/O
03:19:20 × Null_A quits (~null_a@2601:645:8700:2290:b5ac:63df:d679:fb5d) (Remote host closed the connection)
03:19:27 <motle> ah, the old teaching by example...
03:19:34 Null_A joins (~null_a@2601:645:8700:2290:b5ac:63df:d679:fb5d)
03:19:50 <motle> eg. \x -> ...
03:20:33 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection)
03:21:33 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
03:24:13 <h98> I've just been using Ptrs too much lately...though malloc and free have never misled me :)
03:24:36 <motle> h98: what language?
03:24:45 <h98> haskell hah
03:24:57 <motle> no, they never misled me either!?
03:25:48 × m7zs3gzw quits (~m7zs3gzw@188.170.195.101) (Ping timeout: 272 seconds)
03:26:02 m7zs3gzw joins (~m7zs3gzw@178.155.6.203)
03:27:43 × zebrag quits (~chris@user/zebrag) (Remote host closed the connection)
03:28:29 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
03:28:53 soft-warm joins (~soft-warm@2600:8801:db01:8f0:70ab:eb3d:e48f:3a0f)
03:32:24 × falafel_ quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
03:39:01 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
03:40:39 × h98 quits (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
03:41:20 × favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds)
03:42:12 × johnw quits (~johnw@2600:1700:cf00:db0:b972:d95b:bd23:4be) (Ping timeout: 245 seconds)
03:43:47 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
03:44:19 lavaman joins (~lavaman@98.38.249.169)
03:46:08 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
03:46:22 lavaman joins (~lavaman@98.38.249.169)
03:46:31 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 258 seconds)
03:47:57 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
03:49:36 favonia joins (~favonia@user/favonia)
03:51:39 chris_ joins (~chris@81.96.113.213)
03:56:06 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
03:59:42 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
04:00:10 × soft-warm quits (~soft-warm@2600:8801:db01:8f0:70ab:eb3d:e48f:3a0f) (Ping timeout: 246 seconds)
04:00:29 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
04:01:01 lavaman joins (~lavaman@98.38.249.169)
04:05:05 × favonia quits (~favonia@user/favonia) (Ping timeout: 250 seconds)
04:05:28 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
04:05:29 favonia joins (~favonia@user/favonia)
04:09:05 P1RATEZ joins (piratez@user/p1ratez)
04:10:12 × hexfive quits (~eric@50.35.83.177) (Quit: WeeChat 3.0)
04:16:01 × terrorjack quits (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com) (Read error: Connection reset by peer)
04:17:12 terrorjack joins (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com)
04:18:49 lavaman joins (~lavaman@98.38.249.169)
04:19:18 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
04:20:15 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds)
04:21:32 × m7zs3gzw quits (~m7zs3gzw@178.155.6.203) (Ping timeout: 272 seconds)
04:22:26 m7zs3gzw joins (~m7zs3gzw@178.176.217.15)
04:31:56 × m7zs3gzw quits (~m7zs3gzw@178.176.217.15) (Quit: Quit)
04:34:12 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
04:35:02 vlatkoB joins (~vlatkoB@188.252.173.13)
04:35:46 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
04:38:51 vlatkoB_ joins (~IRC_clien@188.252.173.13)
04:39:03 × vlatkoB quits (~vlatkoB@188.252.173.13) (Client Quit)
04:40:11 favonia joins (~favonia@user/favonia)
04:40:36 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
04:41:57 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
04:45:07 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
04:45:41 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
04:46:59 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds)
04:49:46 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
04:51:25 vlatkoB_ is now known as vlatkoB
04:56:10 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
04:57:46 × juhp quits (~juhp@128.106.188.220) (Quit: juhp)
04:57:59 juhp joins (~juhp@128.106.188.220)
04:58:40 × vlatkoB quits (~IRC_clien@188.252.173.13) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
04:59:50 johnw joins (~johnw@2600:1700:cf00:db0:4d8f:94c5:5bf3:4c24)
04:59:58 × Null_A quits (~null_a@2601:645:8700:2290:b5ac:63df:d679:fb5d) (Read error: Connection reset by peer)
05:01:01 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
05:02:33 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
05:04:30 Null_A joins (~null_a@2601:645:8700:2290:b978:3dca:9084:7b5f)
05:05:19 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
05:07:30 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
05:11:42 Guest9 joins (~Guest9@2402:e280:2117:297:bcc8:41f:8b96:eaea)
05:14:29 × P1RATEZ quits (piratez@user/p1ratez) (Remote host closed the connection)
05:14:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
05:19:15 × Null_A quits (~null_a@2601:645:8700:2290:b978:3dca:9084:7b5f) ()
05:19:54 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
05:22:12 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
05:23:08 ukari joins (~ukari@user/ukari)
05:24:44 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
05:27:44 chris_ joins (~chris@81.96.113.213)
05:28:41 jneira joins (~jneira@212.8.115.226)
05:32:11 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 250 seconds)
05:33:41 × favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds)
05:34:06 favonia joins (~favonia@user/favonia)
05:42:16 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds)
05:48:48 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
05:57:52 × slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving)
06:01:26 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
06:01:46 × ozzymcduff quits (~mathieu@81-234-151-21-no94.tbcn.telia.com) (Ping timeout: 240 seconds)
06:01:51 ukari joins (~ukari@user/ukari)
06:03:14 × aman quits (~aman@user/aman) (Ping timeout: 268 seconds)
06:04:39 aman joins (~aman@user/aman)
06:05:03 × aman quits (~aman@user/aman) (Client Quit)
06:05:15 × weemadar1hur quits (weemadarth@otaku.sdf.org) (Remote host closed the connection)
06:06:02 × tput quits (~tim@s0106a84e3fe54613.ed.shawcable.net) (Ping timeout: 252 seconds)
06:06:34 michalz joins (~michalz@185.246.204.61)
06:09:59 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:11:38 anandprabhu joins (~anandprab@185.195.233.165)
06:13:52 ozzymcduff joins (~mathieu@81-234-151-21-no94.tbcn.telia.com)
06:15:52 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
06:16:11 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds)
06:17:04 Lord_of_Life_ is now known as Lord_of_Life
06:17:31 phma_ is now known as phma
06:18:01 benin03693 joins (~benin@183.82.205.33)
06:20:30 × vysn quits (~vysn@user/vysn) (Remote host closed the connection)
06:21:14 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
06:21:39 favonia joins (~favonia@user/favonia)
06:22:48 vysn joins (~vysn@user/vysn)
06:23:11 × Guest9 quits (~Guest9@2402:e280:2117:297:bcc8:41f:8b96:eaea) (Quit: Client closed)
06:27:07 × Flonk quits (~Flonk@ec2-52-40-29-25.us-west-2.compute.amazonaws.com) (Read error: Connection reset by peer)
06:27:41 × bgamari quits (~bgamari@72.65.102.182) (Remote host closed the connection)
06:27:57 yoneda joins (~mike@193.206.102.122)
06:28:25 bgamari joins (~bgamari@72.65.102.182)
06:28:40 × fradet quits (~fradet@216.252.75.247) (Ping timeout: 258 seconds)
06:29:32 Flonk joins (~Flonk@ec2-52-40-29-25.us-west-2.compute.amazonaws.com)
06:30:56 × shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 255 seconds)
06:37:06 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
06:40:55 lortabac joins (~lortabac@2a01:e0a:541:b8f0:a0c1:5216:8115:ce7d)
06:42:05 × img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
06:42:22 img joins (~img@user/img)
06:43:43 × terrorjack quits (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com) (Remote host closed the connection)
06:44:14 fradet joins (~fradet@216.252.75.247)
06:44:53 terrorjack joins (~terrorjac@ec2-54-95-39-30.ap-northeast-1.compute.amazonaws.com)
06:51:06 × dagit quits (~dagit@2601:1c2:1b7f:9fa0:9903:10ed:1152:1e02) (Ping timeout: 240 seconds)
06:51:11 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 255 seconds)
06:52:41 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
06:56:50 × favonia quits (~favonia@user/favonia) (Ping timeout: 256 seconds)
06:57:00 pesada joins (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e)
06:59:51 × jolly quits (~jolly@208.180.97.158) (Quit: Connection closed)
06:59:57 × agua quits (~agua@177.79.106.187) (Ping timeout: 265 seconds)
07:00:39 nsilv joins (~nsilv@212.103.198.210)
07:02:43 favonia joins (~favonia@user/favonia)
07:06:18 chele joins (~chele@user/chele)
07:06:54 × vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.0.1)
07:07:27 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 244 seconds)
07:07:44 chexum joins (~quassel@gateway/tor-sasl/chexum)
07:08:57 vysn joins (~vysn@user/vysn)
07:09:27 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
07:11:47 × favonia quits (~favonia@user/favonia) (Ping timeout: 245 seconds)
07:12:41 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
07:13:47 favonia joins (~favonia@user/favonia)
07:14:14 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
07:17:54 × azeem quits (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it) (Ping timeout: 252 seconds)
07:19:44 × shriekingnoise quits (~shrieking@186.137.144.80) (Quit: Quit)
07:23:39 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
07:24:29 azeem joins (~azeem@176.201.2.247)
07:26:41 × azeem quits (~azeem@176.201.2.247) (Read error: Connection reset by peer)
07:27:38 acidjnk_new joins (~acidjnk@p200300d0c72b958874b654708e10a316.dip0.t-ipconnect.de)
07:31:51 azeem joins (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it)
07:32:56 × sqrt2 quits (~ben@80-108-18-7.cable.dynamic.surfer.at) (Ping timeout: 252 seconds)
07:37:07 cfricke joins (~cfricke@user/cfricke)
07:37:13 × bgamari quits (~bgamari@72.65.102.182) (Quit: ZNC 1.8.1 - https://znc.in)
07:37:28 bgamari joins (~bgamari@2001:470:e438::1)
07:40:04 × cjb quits (~cjb@user/cjb) (Quit: rcirc on GNU Emacs 28.0.50)
07:41:17 delYsid joins (~user@84-115-55-45.cable.dynamic.surfer.at)
07:42:50 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
07:43:44 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
07:45:35 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:47:35 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
07:50:47 ubert joins (~Thunderbi@178.165.181.250.wireless.dyn.drei.com)
07:50:54 enemeth79 joins (sid309041@id-309041.tooting.irccloud.com)
07:51:48 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
07:53:30 × sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 240 seconds)
07:58:03 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
07:58:32 hmmmas joins (~fidnc@183.217.200.171)
08:03:42 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 256 seconds)
08:04:32 × hmmmas quits (~fidnc@183.217.200.171) (Quit: Leaving.)
08:06:33 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
08:07:21 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 276 seconds)
08:07:43 sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca)
08:07:57 hendursa1 joins (~weechat@user/hendursaga)
08:09:55 zeenk joins (~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38)
08:10:14 delYsid parts (~user@84-115-55-45.cable.dynamic.surfer.at) (ERC (IRC client for Emacs 27.1.50))
08:10:29 × hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds)
08:10:59 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
08:11:18 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
08:12:38 × favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds)
08:12:39 × peterhil quits (~peterhil@dsl-hkibng32-54fb52-57.dhcp.inet.fi) (Read error: Connection reset by peer)
08:15:28 ubert1 joins (~Thunderbi@77.119.196.49.wireless.dyn.drei.com)
08:17:09 × ubert quits (~Thunderbi@178.165.181.250.wireless.dyn.drei.com) (Ping timeout: 258 seconds)
08:17:09 ubert1 is now known as ubert
08:17:30 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
08:18:18 × jneira_ quits (~jneira_@28.red-80-28-169.staticip.rima-tde.net) (Quit: Connection closed)
08:18:27 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
08:22:08 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
08:24:03 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 258 seconds)
08:24:53 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
08:25:11 dhil joins (~dhil@195.213.192.47)
08:25:37 dunj3 joins (~dunj3@2001:16b8:3037:a600:fd3a:4df5:b1ce:d427)
08:27:26 × octeep quits (~octeep@42-2-220-152.static.netvigator.com) (Ping timeout: 265 seconds)
08:44:39 aegon parts (~mike@174.127.249.180) ()
08:45:46 × sim590 quits (~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 240 seconds)
08:46:03 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
08:47:44 octeep joins (~octeep@n219077208088.netvigator.com)
08:50:02 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 252 seconds)
08:51:36 delYsid joins (~user@84-115-55-45.cable.dynamic.surfer.at)
08:57:45 × shutdown_-h_now quits (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl) (Ping timeout: 268 seconds)
09:01:42 enoq joins (~enoq@194-208-179-35.lampert.tv)
09:02:09 <enoq> so I think I finally understood the reader monad yesterday and it looks like a very shitty way to do dependency injection
09:02:14 × ukari quits (~ukari@user/ukari) (Remote host closed the connection)
09:02:56 <enoq> more aking to a service locator where you need to pass around a whole context to each function
09:03:10 shutdown_-h_now joins (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
09:03:21 chris_ joins (~chris@81.96.113.213)
09:03:22 ukari joins (~ukari@user/ukari)
09:03:32 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
09:03:33 <dibblego> haha
09:03:41 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 265 seconds)
09:03:41 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
09:06:42 <enoq> also monads seem a lot less useful without do notation
09:07:20 chris_ joins (~chris@81.96.113.213)
09:07:21 <dibblego> it's all figured guys!
09:08:50 jippiedoe joins (~david@2a02-a44c-e14e-1-59d6-1288-7c50-1f49.fixed6.kpn.net)
09:10:12 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
09:10:30 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
09:14:55 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 250 seconds)
09:18:58 wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com)
09:23:04 crazazy joins (~user@2001:1c00:831:4700:4685:bf1f:d31b:ebdc)
09:23:35 × wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Ping timeout: 250 seconds)
09:23:39 × jippiedoe quits (~david@2a02-a44c-e14e-1-59d6-1288-7c50-1f49.fixed6.kpn.net) (Ping timeout: 268 seconds)
09:34:47 agua joins (~agua@2804:18:44:46ad:1:0:480e:2382)
09:39:02 × pesada quits (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e) (Ping timeout: 255 seconds)
09:39:31 jippiedoe joins (~david@2a02-a44c-e14e-1-315b-248c-f439-9989.fixed6.kpn.net)
09:39:59 aplainze1akind is now known as aplainzetakind
09:44:19 Katarushisu joins (~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
09:49:26 × econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity)
09:51:10 drd joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
09:51:11 × azeem quits (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it) (Read error: Connection reset by peer)
09:52:17 × jippiedoe quits (~david@2a02-a44c-e14e-1-315b-248c-f439-9989.fixed6.kpn.net) (Quit: Leaving)
09:58:10 viluon joins (uid453725@id-453725.brockwell.irccloud.com)
09:58:55 azeem joins (~azeem@dynamic-adsl-84-220-213-65.clienti.tiscali.it)
10:02:55 hegstal joins (~hegstal@2a02:c7f:7604:8a00:27c5:b36:8a5d:9ea3)
10:07:52 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
10:12:48 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
10:17:58 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:18:12 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.2)
10:18:48 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
10:23:26 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
10:25:27 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
10:28:10 hololeap_ joins (~hololeap@user/hololeap)
10:28:26 × hololeap quits (~hololeap@user/hololeap) (Ping timeout: 244 seconds)
10:29:29 × nsilv quits (~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
10:30:52 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
10:35:32 × mnrmnaugh quits (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Remote host closed the connection)
10:37:13 mnrmnaugh joins (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net)
10:37:34 × mnrmnaugh quits (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Client Quit)
10:38:59 × anandprabhu quits (~anandprab@185.195.233.165) (Quit: Konversation terminated!)
10:49:00 acidjnk_new3 joins (~acidjnk@p200300d0c72b9578109cf675b5466e47.dip0.t-ipconnect.de)
10:49:15 × motle quits (~motle@cpc103048-sgyl39-2-0-cust506.18-2.cable.virginm.net) (Quit: Client closed)
10:49:42 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
10:51:54 × acidjnk_new quits (~acidjnk@p200300d0c72b958874b654708e10a316.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
10:52:04 mnrmnaugh joins (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net)
10:52:47 × mnrmnaugh quits (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Remote host closed the connection)
10:56:22 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
10:56:33 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
10:58:52 × delYsid quits (~user@84-115-55-45.cable.dynamic.surfer.at) (Ping timeout: 245 seconds)
11:00:26 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
11:00:55 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
11:02:38 × hololeap_ quits (~hololeap@user/hololeap) (Remote host closed the connection)
11:03:06 hololeap_ joins (~hololeap@user/hololeap)
11:04:58 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
11:06:12 × jay_invariant quits (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Ping timeout: 258 seconds)
11:10:07 jippiedoe joins (~david@2a02-a448-48bd-1-417a-77a1-fc46-a8dc.fixed6.kpn.net)
11:10:35 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
11:18:27 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
11:20:16 anandprabhu joins (~anandprab@94.202.243.198)
11:26:18 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 244 seconds)
11:26:34 × enoq quits (~enoq@194-208-179-35.lampert.tv) (Quit: enoq)
11:26:56 chexum joins (~quassel@gateway/tor-sasl/chexum)
11:27:42 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
11:33:58 machinedgod joins (~machinedg@135-23-192-217.cpe.pppoe.ca)
11:37:10 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
11:42:26 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
11:43:17 × ski quits (~ski@ed-3358-10.studat.chalmers.se) (Ping timeout: 252 seconds)
11:45:52 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:46:02 × shutdown_-h_now quits (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl) (Ping timeout: 252 seconds)
11:47:08 oxide joins (~lambda@user/oxide)
11:50:42 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
11:51:15 Atum_ joins (~IRC@user/atum/x-2392232)
11:52:01 waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
11:53:35 shutdown_-h_now joins (~arjan@82-75-187-100.cable.dynamic.v4.ziggo.nl)
12:01:14 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 255 seconds)
12:01:59 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
12:02:58 × anandprabhu quits (~anandprab@94.202.243.198) (Quit: Konversation terminated!)
12:06:53 chris_ joins (~chris@81.96.113.213)
12:08:36 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:11:23 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 268 seconds)
12:11:35 pesada joins (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e)
12:12:11 chris_ joins (~chris@81.96.113.213)
12:14:31 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
12:14:31 × gentauro quits (~gentauro@user/gentauro) (Read error: Connection reset by peer)
12:14:49 gentauro joins (~gentauro@user/gentauro)
12:15:11 × agua quits (~agua@2804:18:44:46ad:1:0:480e:2382) (Ping timeout: 255 seconds)
12:17:09 burnside_ joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
12:17:09 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer)
12:20:32 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
12:21:44 favonia joins (~favonia@user/favonia)
12:25:10 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
12:25:42 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
12:26:12 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
12:29:31 Guest69 joins (~Guest69@120.21.237.168)
12:30:04 × burnside_ quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
12:30:31 × Guest69 quits (~Guest69@120.21.237.168) (Client Quit)
12:30:34 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
12:30:47 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 250 seconds)
12:35:32 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 272 seconds)
12:36:40 slowButPresent joins (~slowButPr@user/slowbutpresent)
12:38:16 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
12:39:20 × dunj3 quits (~dunj3@2001:16b8:3037:a600:fd3a:4df5:b1ce:d427) (Remote host closed the connection)
12:42:45 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
12:43:56 <Orbstheorem> enoq: I think there's a whole new grammar possible only with monadic types. For instance I frequently use `>>=`, `<$>` and `<=<`.
12:44:18 <Orbstheorem> TBH, I often first write my expression in do notation and the reduce it applicative-style.
12:44:28 fradet_ joins (~fradet@216.252.75.247)
12:44:36 × fradet quits (~fradet@216.252.75.247) (Ping timeout: 252 seconds)
12:45:41 hughjfchen joins (~hughjfche@vmi556545.contaboserver.net)
12:50:06 × jneira quits (~jneira@212.8.115.226) (Quit: Client closed)
12:51:51 mikoto-chan joins (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be)
12:57:28 jolly joins (~jolly@208.180.97.158)
13:01:06 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
13:01:06 alx741 joins (~alx741@186.178.108.210)
13:02:31 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
13:04:52 wei2912 joins (~wei2912@112.199.250.21)
13:05:53 jay-invariant joins (~jay@c-24-4-6-169.hsd1.ca.comcast.net)
13:08:00 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
13:09:13 × turlando quits (~turlando@user/turlando) (Ping timeout: 265 seconds)
13:12:12 × jgeerds quits (~jgeerds@55d45555.access.ecotel.net) (Ping timeout: 245 seconds)
13:12:32 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:12:42 Bayes joins (~Bayes@ics177-97.icsincorporated.com)
13:12:53 × Bayes quits (~Bayes@ics177-97.icsincorporated.com) (Changing host)
13:12:53 Bayes joins (~Bayes@user/bayes)
13:13:17 acidjnk_new joins (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de)
13:17:20 × acidjnk_new3 quits (~acidjnk@p200300d0c72b9578109cf675b5466e47.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
13:19:43 Brianmancer joins (~Neuromanc@user/briandamag)
13:22:19 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
13:23:26 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 258 seconds)
13:23:42 × hyiltiz quits (~quassel@31.220.5.250) (Remote host closed the connection)
13:24:50 hyiltiz joins (~quassel@31.220.5.250)
13:31:12 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
13:31:39 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
13:31:55 fluffyballoon joins (~fluffybal@131.93.208.196)
13:33:03 Sgeo joins (~Sgeo@user/sgeo)
13:33:57 ph88 joins (~ph88@2a02:8109:9e00:7e5c:4c3:7ef8:c703:fb12)
13:36:54 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
13:41:23 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Remote host closed the connection)
13:41:45 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
13:44:05 sqrt2 joins (~ben@tunnel330957-pt.tunnel.tserv6.fra1.ipv6.he.net)
13:44:30 × Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 265 seconds)
13:44:44 × berberman quits (~berberman@user/berberman) (Ping timeout: 255 seconds)
13:44:54 berberman_ joins (~berberman@user/berberman)
13:48:41 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
13:49:23 × vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.0.1)
13:49:58 vysn joins (~vysn@user/vysn)
13:52:00 × vysn quits (~vysn@user/vysn) (Client Quit)
13:52:40 vysn joins (~vysn@user/vysn)
13:54:16 × yoneda quits (~mike@193.206.102.122) (Quit: leaving)
13:55:12 fluffyballoon12 joins (~fluffybal@2620:72:0:6480::81d)
13:55:36 × ph88 quits (~ph88@2a02:8109:9e00:7e5c:4c3:7ef8:c703:fb12) (Ping timeout: 268 seconds)
13:57:34 agua joins (~agua@2804:18:44:46ad:1:0:480e:2382)
13:58:19 × fluffyballoon quits (~fluffybal@131.93.208.196) (Ping timeout: 246 seconds)
13:58:43 fluffyballoon12 is now known as fluffyballoon
13:59:35 × pesada quits (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e) (Ping timeout: 255 seconds)
14:03:45 pesada joins (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e)
14:06:11 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
14:06:17 × agua quits (~agua@2804:18:44:46ad:1:0:480e:2382) (Ping timeout: 252 seconds)
14:06:56 zebrag joins (~chris@user/zebrag)
14:08:58 × jippiedoe quits (~david@2a02-a448-48bd-1-417a-77a1-fc46-a8dc.fixed6.kpn.net) (Ping timeout: 240 seconds)
14:11:21 × mikoto-chan quits (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be) (Ping timeout: 258 seconds)
14:12:06 jippiedoe joins (~david@2a02-a448-48bd-1-5039-ff83-4f57-27cd.fixed6.kpn.net)
14:17:35 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 255 seconds)
14:18:50 × MidAutumnMoon90 quits (~MidAutumn@user/midautumnmoon) (Quit: Ping timeout (120 seconds))
14:19:13 MidAutumnMoon90 joins (~MidAutumn@user/midautumnmoon)
14:19:47 shriekingnoise joins (~shrieking@186.137.144.80)
14:22:00 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
14:23:57 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
14:26:33 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
14:28:27 × acidjnk_new quits (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
14:32:07 × lbseale quits (~lbseale@user/ep1ctetus) (Quit: Leaving)
14:32:37 × jippiedoe quits (~david@2a02-a448-48bd-1-5039-ff83-4f57-27cd.fixed6.kpn.net) (Ping timeout: 245 seconds)
14:37:21 lavaman joins (~lavaman@98.38.249.169)
14:40:58 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
14:41:48 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
14:41:53 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 255 seconds)
14:44:50 sedeki joins (~textual@user/sedeki)
14:44:58 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
14:46:56 acidjnk_new joins (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de)
14:49:06 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
14:49:42 × jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
14:51:54 Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de)
14:55:14 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
14:56:32 <maerwald> do notation is proof that even in functional languages, we think imperatively :p
14:56:58 × hendursa1 quits (~weechat@user/hendursaga) (Remote host closed the connection)
14:57:24 hendursa1 joins (~weechat@user/hendursaga)
14:57:38 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
14:57:45 euandreh joins (~euandreh@2804:14c:33:9fe5:90c5:c42d:2338:33d7)
14:58:10 <DigitalKiwi> haskell is the best imperative language ;p
15:00:33 <c_wraith> I don't really think of do-notation as more imperative than (>>=), but that's just because I've internalized the desugaring
15:00:44 MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com)
15:00:48 × drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Quit: ZNC 1.8.2 - https://znc.in)
15:02:06 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
15:02:40 ahri joins (~ahri@185.108.168.17.default.telcom.network)
15:02:52 <ahri> I have a Haskell webserver and something is going horribly wrong - it clearly has a massive memory leak and ends up being killed by the OS. I've recompiled via "stack build --profile" and I tried some RTS config (via the env var) - these do produce .hp files, and I have converted them to pretty graphs via hp2ps and hp2pretty. All good except that
15:02:53 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
15:02:53 <ahri> they only capture the first 10-15 seconds of the run
15:02:58 peterhil joins (~peterhil@mobile-access-b04801-219.dhcp.inet.fi)
15:03:04 <ahri> unfortunately my massive memory leak is happening later than that (it depends on some interaction from me). what's going on and how can I capture the data I need? is it because it's a multi-threaded server? or because the OS is killing it?
15:03:45 <c_wraith> I've definitely had .hp files contain data from much more time than that, so it's not some sort of internal limit.
15:03:58 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
15:04:24 <c_wraith> it's probably due to IO buffering
15:04:46 × sedeki quits (~textual@user/sedeki) (Quit: Textual IRC Client: www.textualapp.com)
15:05:14 <maerwald> ahri: StrictData
15:05:19 <maerwald> thank me later
15:05:29 <ahri> I'm not familiar with profiling in GHC, is it possible to force a flush on a regular basis?
15:06:05 <ahri> maerwald: yeah, I suspect that'll fix it, but I was trying to use this as an opportunity to learn about profiling too :)
15:06:07 <c_wraith> ugh, StrictData is a band-aid that rarely fixes actual problems but does create a bunch of new ones
15:06:11 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Ping timeout: 255 seconds)
15:06:14 <c_wraith> why do people like it?
15:06:30 <maerwald> huh?
15:06:41 <maerwald> it fixes a lot of problem in production *all the time*
15:06:52 <maerwald> to the point that many projects enable it unconditinally
15:06:58 <maerwald> including network packages
15:07:00 <c_wraith> I've never had it do anything except create problems
15:07:25 <maerwald> even Snoyman agrees on it
15:07:37 <maerwald> it is the better default
15:07:37 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
15:07:41 <c_wraith> that's a weird use of "even"
15:07:51 <maerwald> if you need laziness in your data, you can still annotate it
15:08:00 <c_wraith> That's the problem
15:08:17 <c_wraith> What if you don't know your users need laziness?
15:08:19 delYsid joins (~user@84-115-55-45.cable.dynamic.surfer.at)
15:08:27 <c_wraith> They can't fix your mistake
15:08:50 <maerwald> provide two APIs?
15:08:52 <maerwald> easy
15:08:57 <maerwald> see bytestring etc :)
15:09:00 <c_wraith> or provide one correct API
15:09:11 <maerwald> this isn't about correctness
15:09:30 <DigitalKiwi> clearly not if snoyman agrees on it
15:09:49 <c_wraith> almost every function has one correct laziness
15:10:05 <Clint> how do you annotate for laziness?
15:10:13 <c_wraith> throw a ~ on the field
15:10:31 <Clint> ah
15:11:46 lavaman joins (~lavaman@98.38.249.169)
15:11:49 <c_wraith> and yeah... Ever since bytestring added unnecessary strictness and broke one of my programs, I've been rather against making things strict just in case.
15:12:06 <ahri> so ummm, are we saying that I don't have a good way to get a useful .hp file?
15:12:18 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:13:26 <EvanR> specifically which bytestring thing did that?
15:13:27 <maerwald> c_wraith: what?
15:14:22 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
15:14:34 lavaman joins (~lavaman@98.38.249.169)
15:14:41 <c_wraith> Data.Bytestring.Lazy.foldr was changed to be strict in all 3 arguments somewhere around 2009, and that broke some knot-tying I was doing
15:14:42 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
15:15:42 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
15:15:44 <maerwald> haha
15:15:48 <EvanR> seems like an odd decision on their part
15:15:51 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:16:06 <maerwald> well, that's haskell... not everything is in the types
15:16:42 <maerwald> with inlining it's even harder
15:16:45 × michalz quits (~michalz@185.246.204.61) (Remote host closed the connection)
15:16:51 <maerwald> if your library depends on inlining semantics
15:18:02 <maerwald> I am still missing a comprehensive blog post that clearly explains all the cases that can break inlining and how to get around it
15:18:42 <maerwald> it seems you end up reading GHC source code etc in order to figure that out
15:18:58 <maerwald> quite inaccessible
15:20:20 <c_wraith> But that's what I was getting at. Most functions have exactly one correct amount of strictness that allows users full control over resulting evaluation dependencies. And it's never "force everything"
15:20:43 <maerwald> that's a very weird use of "correct"
15:20:54 <c_wraith> It shouldn't be
15:21:04 <maerwald> well, it seems rather arbitrary
15:21:10 <maerwald> unless you can formalise it
15:21:44 agua joins (~agua@2804:18:44:46ad:1:0:480e:2382)
15:23:05 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:a0c1:5216:8115:ce7d) (Quit: WeeChat 2.8)
15:23:32 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
15:24:19 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
15:24:56 × pesada quits (~agua@2804:14c:8793:8e2f:6091:e445:c3bf:d39e) (Ping timeout: 252 seconds)
15:33:38 ub joins (~Thunderbi@77.119.196.49.wireless.dyn.drei.com)
15:36:20 jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
15:39:34 samhh joins (~samhh@90.252.70.102)
15:41:35 pesada joins (~agua@191.177.175.57)
15:42:04 Guest64 joins (~Guest64@2a02:a31c:8542:9480:4a4:55e:5e5e:5356)
15:44:13 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer)
15:44:34 Vajb joins (~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01)
15:45:21 × agua quits (~agua@2804:18:44:46ad:1:0:480e:2382) (Ping timeout: 250 seconds)
15:45:26 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
15:46:53 pfurla_ joins (~pfurla@ool-182ed2e2.dyn.optonline.net)
15:48:06 <arkanoid> how can I take element 0,2,4,6,... of a list?
15:49:01 <glguy> arkanoid: just write a little recursive function to do it with pattern matching
15:49:18 <arkanoid> well, I've rolled my own, but isn't it better to use existing functions?
15:49:24 × pfurla quits (~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 252 seconds)
15:49:27 <arkanoid> I mean, I feel like there should be one
15:49:44 × ahri quits (~ahri@185.108.168.17.default.telcom.network) (Quit: Client closed)
15:49:59 <glguy> I wouldn't expect it to exist anywhere common. I'm sure it's been written before.
15:50:17 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds)
15:50:29 ph88 joins (~ph88@2a02:8109:9e00:7e5c:4c3:7ef8:c703:fb12)
15:50:52 × hendursa1 quits (~weechat@user/hendursaga) (Remote host closed the connection)
15:51:15 hendursa1 joins (~weechat@user/hendursaga)
15:52:01 <arkanoid> ok
15:54:24 × hyiltiz quits (~quassel@31.220.5.250) (Remote host closed the connection)
15:55:30 × ph88 quits (~ph88@2a02:8109:9e00:7e5c:4c3:7ef8:c703:fb12) (Ping timeout: 240 seconds)
15:55:32 hyiltiz joins (~quassel@31.220.5.250)
15:55:48 aerona joins (~aerona@2600:6c54:4600:f300:8c49:c590:8f74:ccf2)
15:56:07 <EvanR> even splitting a list into chunks requires pulling in a library
15:56:44 <EvanR> or writing your own, but it seems to come up a lot.
15:57:23 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
15:57:47 <xsperry> > let f = map snd . filter (even . fst) . zip [0..] in f "abcdef"
15:57:48 <lambdabot> "ace"
15:58:38 <delYsid> :t fmap head . chunksOf 2
15:58:39 <lambdabot> [b] -> [b]
15:59:12 <delYsid> > (fmap head . chunksOf 2) [0,1,2,3,4,5]
15:59:13 <lambdabot> [0,2,4]
15:59:34 <EvanR> i feel more fuzzy writing the recursion
16:00:38 × ub quits (~Thunderbi@77.119.196.49.wireless.dyn.drei.com) (Ping timeout: 255 seconds)
16:01:20 <xerox> > takeWhile (not . null) . unfoldr (Just . splitAt 3) $ ['a'..'z']
16:01:22 <lambdabot> ["abc","def","ghi","jkl","mno","pqr","stu","vwx","yz"]
16:03:55 × wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal)
16:04:18 × justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 240 seconds)
16:05:39 × Guest64 quits (~Guest64@2a02:a31c:8542:9480:4a4:55e:5e5e:5356) (Quit: Client closed)
16:06:09 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
16:06:25 gensyst joins (gensyst@user/gensyst)
16:07:41 <gensyst> I see 0.8.0 as latest for streamly on Hackage, however after "cabal update" my index still only has 0.7.3 in it. I.e. the ~/.cabal/packages/hackage.haskell.org/streamly dir only contains the 0.7.3 dir. Why?
16:09:25 <maerwald> gensyst: are you in a project dir?
16:10:00 <gensyst> maerwald, i was, but i just tried again outside a project dir. still no 0.8.0 dir
16:10:28 × slycelote_ quits (~slycelote@user/slycelote) (Ping timeout: 265 seconds)
16:10:32 <c_wraith> uh. those directories only exist if you install the package. Have you done anything that would install version 0.8.0.0
16:11:02 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
16:11:50 <maerwald> the index is 01-index.tar
16:12:26 <janus> what does "user target" mean in a cabal resolution error message? thinking about this one https://github.com/haskell-hvr/missingh/issues/54#issuecomment-882805817
16:12:44 <janus> sorry, not that one, but the last comment
16:12:58 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
16:13:05 slycelote joins (~slycelote@user/slycelote)
16:13:31 <c_wraith> "user goal" means the thing you asked it to install, rather than an inferred (transitive) dependency
16:14:28 <janus> but hackage doesn't show the constraint random==1.2 for MissingH, so how can that person get that error message?
16:14:31 <gensyst> maerwald, c_wraith ok, i didn't realize this
16:14:35 <gensyst> thanks
16:14:48 <janus> @package MissingH
16:14:48 <lambdabot> https://hackage.haskell.org/package/MissingH
16:15:45 haskl joins (~haskl@98.37.78.63)
16:15:48 <c_wraith> wow. That's an odd kitchen sink
16:16:51 × chele quits (~chele@user/chele) (Remote host closed the connection)
16:17:02 <janus> it's required for ftphs, i am trying to get Goerzen hand ftphs over to me. https://en.wikipedia.org/wiki/John_Goerzen
16:17:51 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 258 seconds)
16:17:53 <c_wraith> oh, that's cabal install --lib
16:18:02 <janus> i was wondering whether stuart-little (person with the error message) may have an existing package that makes MissingH not be installable? but if global packages don't exist anymore surely that wouldn't be the case
16:18:05 <Boarders> in lens are their variants on <=+ but which return the previous result?
16:18:07 <c_wraith> So it's also treating things you already have installed
16:18:16 <Boarders> ah found it just as I asked
16:18:17 <Boarders> <<
16:18:19 ub joins (~Thunderbi@77.119.196.49.wireless.dyn.drei.com)
16:18:20 <Boarders> <<+=
16:18:20 <sclv> with --lib you have "global packages" with regards to everything specified in an existing file
16:18:26 <sclv> er an existing ghc environment file
16:18:44 <c_wraith> err. treating things already in the env file as user goals
16:18:57 <janus> oh :O so they'd have to remove their existing random==1.2.0 first. and the "user target" is including the global package set implied by --lib ?
16:19:13 <c_wraith> sad conclusion: cabal install --lib can never be used twice without deleting the env file in between :)
16:19:34 <dminuoso> c_wraith: yeah :)
16:19:39 <sclv> there's a big ongoing discussion on how to fix --lib or supplant it
16:19:54 <sclv> i commented on the ticket for now at least
16:20:11 <janus> thanks a lot sclv
16:20:37 <sclv> goerzen hasn't been around foreverish
16:20:59 <sclv> if you can't reach him in a reasonable amount of time i'd suggest you initiate a package takeover request
16:22:00 <janus> yes. i'll give him a few more weeks, he already kinda agreed to it
16:22:04 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
16:25:02 lbseale joins (~lbseale@user/ep1ctetus)
16:25:08 × acidjnk_new quits (~acidjnk@p200300d0c72b95789cf50085fa6ab0cf.dip0.t-ipconnect.de) (Read error: Connection reset by peer)
16:27:03 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds)
16:32:08 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
16:33:42 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
16:34:52 Guest81 joins (~Guest81@2804:431:c7c1:12be:dc7f:2993:1218:94ce)
16:35:36 × peterhil quits (~peterhil@mobile-access-b04801-219.dhcp.inet.fi) (Ping timeout: 265 seconds)
16:36:00 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
16:37:21 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds)
16:37:21 × Vajb quits (~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01) (Read error: Connection reset by peer)
16:37:27 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
16:37:58 × viluon quits (uid453725@id-453725.brockwell.irccloud.com) (Quit: Connection closed for inactivity)
16:38:32 justsomeguy joins (~justsomeg@user/justsomeguy)
16:41:49 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Quit: ZNC 1.8.2 - https://znc.in)
16:42:35 drd joins (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4)
16:43:07 <maerwald> "kinda" as in "didn't reply"? :p
16:44:02 × drd quits (~drd@2001:b07:a70:9f1f:1562:34de:f50f:77d4) (Client Quit)
16:44:16 econo joins (uid147250@user/econo)
16:44:48 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
16:45:22 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
16:47:00 lavaman joins (~lavaman@98.38.249.169)
16:47:32 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
16:47:45 lavaman joins (~lavaman@98.38.249.169)
16:47:53 × lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection)
16:48:27 lavaman joins (~lavaman@98.38.249.169)
16:48:31 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
16:51:00 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
16:52:19 Kaipi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
16:52:20 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
16:52:50 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
16:53:21 tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
16:53:26 chris_ joins (~chris@81.96.113.213)
16:54:27 × finsternis quits (~X@23.226.237.192) (Remote host closed the connection)
16:54:34 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 272 seconds)
16:57:53 × xff0x_ quits (~xff0x@2001:1a81:5383:d200:23a4:8563:bc41:3b3e) (Ping timeout: 252 seconds)
16:57:57 × Kaipi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
16:58:10 Kaipi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
16:58:43 xff0x_ joins (~xff0x@2001:1a81:5383:d200:bac2:bd91:37ec:a1e3)
16:59:40 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
17:01:57 × Kaipi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Remote host closed the connection)
17:02:00 Merfont joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:02:07 × samhh quits (~samhh@90.252.70.102) (Quit: samhh)
17:02:57 × Merfont quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
17:03:15 Merfont joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:08:37 × Merfont quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
17:09:24 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
17:11:38 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:12:03 <janus> maerwald: maybe he thought i was the author of the PR and then when he found out i wasn't, he had his doubts https://github.com/jgoerzen/ftphs/pull/23
17:12:42 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
17:14:18 Kaipi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:16:34 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 240 seconds)
17:18:33 × Kaipi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
17:18:45 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
17:23:44 × hendursa1 quits (~weechat@user/hendursaga) (Quit: hendursa1)
17:24:21 hendursaga joins (~weechat@user/hendursaga)
17:24:59 pavonia joins (~user@user/siracusa)
17:25:31 shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net)
17:28:41 × drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Quit: ZNC 1.8.2 - https://znc.in)
17:30:26 drd joins (~drd@93-39-151-19.ip76.fastwebnet.it)
17:32:20 × neightchan quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
17:33:03 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
17:33:40 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
17:34:45 neightchan joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
17:35:00 × gensyst quits (gensyst@user/gensyst) (Quit: Leaving)
17:37:29 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 252 seconds)
17:38:26 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
17:39:50 × mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
17:41:15 mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
17:43:10 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
17:43:41 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds)
17:46:13 sim590 joins (~simon@modemcable090.207-203-24.mc.videotron.ca)
17:48:01 × justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
17:50:02 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 265 seconds)
17:50:52 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
17:52:15 mnrmnaugh joins (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net)
18:00:29 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
18:01:27 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 276 seconds)
18:03:54 doyougnu joins (~user@c-73-25-202-122.hsd1.or.comcast.net)
18:05:03 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Remote host closed the connection)
18:05:08 h98 joins (~h98@187.83.249.216.dyn.smithville.net)
18:05:25 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
18:10:07 <zzz> I'm using FlexibleInstances for the first time and have a question. i'm {-# OVERLAPPING #-} Ord (Int,Int) and then doing M.elems on a M.Map (Int,Int) a. Should I expect M.elems to respect my overlapping Ord?
18:10:44 <c_wraith> :t M.elems
18:10:45 <lambdabot> M.Map k a -> [a]
18:10:54 <c_wraith> You see the total lack of Ord requirement?
18:11:01 <c_wraith> elems doesn't care how things are ordered
18:11:10 <c_wraith> It just does an in-order traversal of the binary tree
18:11:14 <zzz> O(n). Return all elements of the map in the ascending order of their keys. Subject to list fusion.
18:11:17 <zzz> ^from the docs
18:11:26 <c_wraith> Types are docs, too
18:11:39 <c_wraith> The lack of an Ord constraint in the type tells you something
18:11:44 fendor_ is now known as fendor
18:12:06 <zzz> right...
18:12:09 <c_wraith> what matters is the Ord instance used when inserting values
18:12:28 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
18:12:38 <c_wraith> elems just does the trivial in-order tree traversal you'd expect. No order comparisons at all
18:13:09 <zzz> so the answer is "no"
18:13:32 <zzz> because I'm using M.insert
18:13:39 <EvanR> the implementation happens to be able to deliver the documented order without using Ord (at that point) heh
18:13:52 <EvanR> *magic hands*
18:14:37 <zzz> how can i achieve the order i intend?
18:14:39 chris_ joins (~chris@81.96.113.213)
18:14:40 <c_wraith> In general you probably shouldn't use OverlappingInstances. It just doesn't do what you think it does
18:14:53 <c_wraith> You should create your own data type with an Ord instance that does what you want
18:15:29 platz joins (~platz@40.122.118.113)
18:15:30 <EvanR> which could just be a newtype over another type for the purposes of changing 1 instance
18:15:54 <EvanR> and then you can newtype wrap, operate, and unwrap
18:15:59 <platz> Just upgraded Esqueleto to use the latest syntax, works well
18:17:10 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:18:05 <h98> zzz read https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/instances.html carefully
18:18:25 <h98> it's actually very clear and takes out a lot of guesswork with overlapping/overlappable etc once you understand how instance resolution works
18:19:55 <zzz> i think my misundertanding here has more to do with Data.Map
18:20:59 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
18:20:59 <zzz> no?
18:21:20 <zzz> :t M.insert
18:21:21 <lambdabot> Ord k => k -> a -> M.Map k a -> M.Map k a
18:21:43 <zzz> oh i see
18:21:56 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 245 seconds)
18:22:03 <zzz> nevermind
18:22:08 <davean> zzz: Don't use overlapping instances, create the nominal type you want
18:22:44 Matthias1 joins (~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
18:22:48 dunkeln joins (~dunkeln@94.129.69.87)
18:23:19 bitmapper joins (uid464869@id-464869.tooting.irccloud.com)
18:23:47 favonia joins (~favonia@user/favonia)
18:25:18 <EvanR> having at most 1 instance of a given class for a given type is really nice for logic reasons
18:25:50 chris_ joins (~chris@81.96.113.213)
18:26:36 <EvanR> and since that relationship is global, it really simplifies a lot of stuf
18:26:53 <monochrom> I do best of both worlds: Create both the nominal class and the nominal type I want. https://mail.haskell.org/pipermail/haskell-cafe/2017-May/127147.html >:)
18:27:18 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
18:28:27 <EvanR> this post seems short enough for me to determine if it's a joke before I have to get on this plane!
18:28:28 × dajoer quits (~david@user/gvx) (Quit: leaving)
18:28:58 <monochrom> Hell, even I, the author, can't determine whether it's a joke or not.
18:29:20 <monochrom> I would love to use that system, and at the same time it is funny.
18:29:33 <EvanR> where does p come from in the MyOrd class
18:29:54 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 240 seconds)
18:29:54 <monochrom> Usually you would use Proxy. I would.
18:30:20 <monochrom> mycmp (Proxy :: Proxy Rev) "ab" "xy"
18:30:32 × favonia quits (~favonia@user/favonia) (Ping timeout: 245 seconds)
18:31:11 <monochrom> It's a "forall p".
18:31:31 <EvanR> i see
18:31:59 favonia joins (~favonia@user/favonia)
18:32:13 <EvanR> this goes against typeclasses vs the world, in a way that makes me sympathetic to 'the world'
18:34:08 agua joins (~agua@2804:18:44:46ad:1:0:480e:2382)
18:34:09 <davean> EvanR: hum? How so? This keeps the properties
18:36:07 <EvanR> i was under the impression that the desire to mix and match instances on the same type was 'the problem'
18:36:40 <EvanR> how can i do this, you can't do this, you shouldn't even want to do this, sort of thing
18:37:08 <davean> EvanR: Except it doesn't mix them here - that "solution" keeps them seperate
18:37:13 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
18:37:22 <EvanR> yeah i see that
18:37:42 <EvanR> so i don't understand the original issue now xD
18:37:53 × pesada quits (~agua@191.177.175.57) (Ping timeout: 265 seconds)
18:37:57 <davean> EvanR: you never get the "Wrong" instance with this
18:38:32 pesada joins (~agua@2804:14c:8793:8e2f:8013:a595:bc17:299d)
18:38:47 × pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer)
18:39:02 <monochrom> The desire is that sometimes you want one hash function for String, sometimes you want a different hash function. You can do newtyping, but it becomes annoying.
18:39:07 pavonia joins (~user@user/siracusa)
18:39:36 <davean> Right, this creates an index on the type class, and assigns instances to types inside said index
18:39:46 <davean> this is a way of producing a matrix of type classes
18:41:20 <davean> EvanR: Efectively this is a higher kinded type class
18:41:20 <monochrom> And the same time, once you have chosen one hash function for a hash table, you don't want accidental switching to a different hash function.
18:41:20 <davean> just like Maybe is a higher kinded type
18:41:20 <davean> the actual "realish" instance is after you plug in a parameter
18:41:20 × agua quits (~agua@2804:18:44:46ad:1:0:480e:2382) (Ping timeout: 256 seconds)
18:41:20 <EvanR> and if you didn't use type classes at all, nothing stops you from having the wrong hash function at the wrong place
18:41:20 <monochrom> So I said, if I don't newtype, then I need a type marker to mark which hash function my table is using.
18:41:20 × Kaiepi quits (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net) (Read error: Connection reset by peer)
18:41:20 <davean> EvanR: Whats good about type classes is coherence - this doesn't sacrifice that at all
18:41:20 Kaiepi joins (~Kaiepi@nwcsnbsc03w-47-54-173-93.dhcp-dynamic.fibreop.nb.bellaliant.net)
18:41:22 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds)
18:41:55 <EvanR> yeah
18:42:18 <davean> This is basicly a way to introduce type classes "on the fly" sorta, while knowing their laws still
18:42:20 <davean> for example
18:42:35 <davean> the same way we have higher kinded laws for Maybe
18:43:48 <EvanR> i want this to be an instance of generally stating whatever you want in type classes
18:43:55 <monochrom> You can still sympathize with the world because the world uses OOP in which a hash table object comes with its own insert and delete methods and those two methods have already linked to one hash function at table creation time, not switchable, the problem doesn't even exist in the first place.
18:43:58 <EvanR> and having it be checked
18:46:50 <EvanR> encoding what you want directly, hinging on this one resolver, seems better than hoping you wrote to abstract data type correctly... but also requires a different mentality
18:47:01 <EvanR> wrote the*
18:50:45 × ralu quits (~ralu@static.211.245.203.116.clients.your-server.de) (Quit: Ping timeout (120 seconds))
18:50:54 × p3n quits (~p3n@217.198.124.246) (Ping timeout: 252 seconds)
18:50:59 ralu joins (~ralu@static.211.245.203.116.clients.your-server.de)
18:50:59 × fendor quits (~fendor@91.141.32.205.wireless.dyn.drei.com) (Read error: Connection reset by peer)
18:51:18 fendor joins (~fendor@91.141.32.205.wireless.dyn.drei.com)
18:51:52 p3n joins (~p3n@217.198.124.246)
18:52:07 <davean> EvanR: I think they both have their place
18:53:05 <monochrom> :)
18:53:36 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
18:56:42 × notzmv quits (~zmv@user/notzmv) (Ping timeout: 276 seconds)
18:57:51 <EvanR> yeah... important to see 'the world' for it's virtues or no one hires you! xD
18:59:06 <davean> Being hired sounds like one of the world's virtues
19:00:37 <davean> Bit of circular logic there.
19:00:37 thmprover joins (~user@047-042-215-236.res.spectrum.com)
19:00:37 × Matthias1 quits (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Remote host closed the connection)
19:01:23 Matthias1 joins (~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
19:01:44 Lycurgus pities a wage slave
19:02:26 × zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!)
19:02:26 dsf_ joins (~dsf@cpe-66-75-56-205.san.res.rr.com)
19:02:26 × dsf quits (~dsf@cpe-66-75-56-205.san.res.rr.com) (Ping timeout: 252 seconds)
19:02:37 × ec quits (~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
19:03:22 ec joins (~ec@gateway/tor-sasl/ec)
19:04:54 tput joins (~tim@S0106a84e3fe54613.ed.shawcable.net)
19:06:46 chris_ joins (~chris@81.96.113.213)
19:06:47 × favonia quits (~favonia@user/favonia) (Ping timeout: 245 seconds)
19:07:12 favonia joins (~favonia@user/favonia)
19:11:47 × Bayes quits (~Bayes@user/bayes) (Ping timeout: 245 seconds)
19:15:32 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Remote host closed the connection)
19:15:32 × dextaa quits (~DV@aftr-37-201-214-197.unity-media.net) (Read error: Connection reset by peer)
19:15:32 dextaa7 joins (~DV@aftr-37-201-214-197.unity-media.net)
19:15:32 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
19:15:48 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
19:16:13 favonia joins (~favonia@user/favonia)
19:20:13 × Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
19:20:18 × xff0x_ quits (~xff0x@2001:1a81:5383:d200:bac2:bd91:37ec:a1e3) (Ping timeout: 240 seconds)
19:20:34 × ubert quits (~Thunderbi@77.119.196.49.wireless.dyn.drei.com) (Ping timeout: 240 seconds)
19:20:34 ub is now known as ubert
19:21:16 xff0x_ joins (~xff0x@2001:1a81:5383:d200:4cd0:4864:f48c:7375)
19:23:34 × chris_ quits (~chris@81.96.113.213) (Remote host closed the connection)
19:24:56 × stefan-_ quits (~cri@42dots.de) (Ping timeout: 255 seconds)
19:25:17 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 252 seconds)
19:28:25 chris_ joins (~chris@81.96.113.213)
19:28:31 × dunkeln quits (~dunkeln@94.129.69.87) (Ping timeout: 250 seconds)
19:28:43 stefan-_ joins (~cri@42dots.de)
19:29:06 <arkanoid> is Char a byte? Is "FOO" 24 bytes long?
19:30:40 <swistak> do you mean 24 bits?
19:30:47 <arkanoid> yeah, sorry
19:31:05 <monochrom> Char is not a byte. "FOO" is 24*(length "FOO") bytes.
19:31:13 <ixlun> Hi all, I'm trying to use ghc 8.10.5 on arm64 darwin and I keep getting errors from clang that it can't assemble the file. Interestingly, it's trying to assemble X86 code. I don't unserstand why it's not generating arm64 code. Any ideas?
19:31:54 <monochrom> Or let's be more candid. 'F' : ('O' : ('O' : []) has three (:) nodes, each note is 24 bytes.
19:32:42 × chris_ quits (~chris@81.96.113.213) (Ping timeout: 240 seconds)
19:32:57 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
19:33:18 <arkanoid> monochrom: ok, but if each node is 24 bytes, how many of these bytes are for the value (Char) and which for the linked list?
19:33:38 <monochrom> All 3*24 bytes are for the linked list.
19:33:47 <davean> monochrom: uh, I think you have you "FOO" calculations wrong. Theres pointers, etc
19:34:00 <monochrom> GHC provides a flyweight table for the individual Chars, so no extra cost.
19:34:06 <davean> oh, you said bytes, not bits
19:34:39 <monochrom> well, for the ascii ones or a small subset, but it covers 'F" and 'O'.
19:35:18 <monochrom> But if you're interested in the cost of that flyweight table, it's 8 bytes per Char.
19:35:32 zebrag joins (~chris@user/zebrag)
19:35:50 <monochrom> or rather if a character is not in the table and must be made at run time.
19:36:25 × oxide quits (~lambda@user/oxide) (Ping timeout: 258 seconds)
19:37:09 arthurxavierx joins (~arthurxav@201.17.157.69)
19:37:14 <arkanoid> ah ok, so a String is a linked list of Char that are pointers to a flyweight table of 1 Byte Unicode characters or possibly a runtime multibyte Unicode rune
19:37:26 <monochrom> 8 byte
19:37:31 <monochrom> I.e., s/1/8/
19:37:58 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:38:24 oxide joins (~lambda@user/oxide)
19:38:50 <arkanoid> 8 Bytes for each character? There unicode runes are 143859
19:39:06 × alx741 quits (~alx741@186.178.108.210) (Ping timeout: 240 seconds)
19:39:40 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
19:39:41 <monochrom> Welcome to lazy evaluation, which necessitates more bytes for marking "I am a value" vs "I am a piece of code, run me!"
19:39:53 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
19:40:00 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:40:08 <arkanoid> :D now it makes sense. I was missing that point
19:40:10 <arkanoid> thanks a lot
19:40:52 arthurxavierx joins (~arthurxav@201.17.157.69)
19:41:06 <monochrom> In fact welcome to the STG machine, which nicely unifies those two cases by "if it takes k bytes to store a code pointer, let's also use the same 8 bytes space to say I'm a value".
19:41:07 __monty__ joins (~toonn@user/toonn)
19:41:24 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
19:41:32 × Guest81 quits (~Guest81@2804:431:c7c1:12be:dc7f:2993:1218:94ce) (Quit: Client closed)
19:41:37 burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk)
19:42:38 <monochrom> And I still made a mistake. Char is 16 bytes. 8 bytes for "I am a value, not a code pointer, but I use the same 8 bytes anyway", followed by 8 bytes for the actual value.
19:42:54 <monochrom> Unicode doesn't need 8 bytes but alignment does.
19:43:22 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
19:43:41 <arkanoid> I need to read about STG now, actually I know nothing about how haskell managed lazyness
19:43:47 <platz> Is all that talk about "initial" and "final" encodings really just mean data constructors vs typeclasses, or is there value in using the former terms beyond that
19:43:58 <monochrom> This is the weight of the simplistic code "data Char = C# Char#"
19:44:28 <arkanoid> STG = "spineless, tagless, G-machine", really? :D
19:44:40 <monochrom> yes
19:44:54 <monochrom> G for graph but meh
19:44:54 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
19:45:02 <Rembane> platz: I would use the initial encodings and final encodings names because they carry more information.
19:45:15 <Rembane> platz: And if you google them you find at least one only slightly confusing paper. :)
19:45:54 <platz> Rembane: well that's the issue, the terms seem to confuse more than what they actually signify in haskell code
19:47:33 <Rembane> platz: What main sources of confusion have you encountered so far?
19:47:35 <platz> "tagless" seems like historical baggage.
19:47:53 <platz> the term i mean
19:48:40 aegon joins (~mike@174.127.249.180)
19:48:46 lavaman joins (~lavaman@98.38.249.169)
19:49:22 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
19:50:06 <arkanoid> what's the general use of haskell in real-world? Is it used more as a standalone system or to build system libraries to be called by FFI? I mean, when a large imperative program requires refactor to get back some control over complexity, is porting pure logic to haskell and calling back it from original project a viable (I mean applied in production) solution?
19:50:11 × thmprover quits (~user@047-042-215-236.res.spectrum.com) (Quit: And Let's Away, to Part the Glories of This Happy Day)
19:50:36 arthurxavierx joins (~arthurxav@201.17.157.69)
19:50:50 favonia joins (~favonia@user/favonia)
19:51:13 <monochrom> standalone system
19:51:23 <davean> I only see the second in a few cases
19:51:28 <davean> It occures, but its rare
19:51:47 <davean> platz: whats historical about it?
19:51:58 <adamse> platz: intial vs final have meaning beyond data constructors and tc's. i got a lot from attending http://www.cs.nott.ac.uk/~psznhn/MGS2018/MGS2018-courses.html#COA, perhaps the lecture notes are useful
19:52:27 <arkanoid> thanks
19:53:13 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 250 seconds)
19:53:13 <davean> platz: Many current designs are tagged
19:53:31 <dminuoso> arkanoid: "standalone systems" rarely exist. Most of the time systems are an integrated part of some larger architecture.
19:53:37 alx741 joins (~alx741@186.178.108.59)
19:54:40 <adamse> arkanoid: i use haskell for both parts at $work, final application and various libraries called from other (non-haskell) apps
19:55:21 <janus> does making a web server count as "being called by FFI" ?
19:55:49 <monochrom> I think people call that "called by API".
19:56:17 <dminuoso> Arguably, calling into a C library from Haskell is calling by API too.
19:56:22 <arkanoid> dminuoso: if you put it down like that, like janus says, you can consider every IPC or API
19:56:31 <monochrom> I would not be unhappy if they at least clarified that to "web API".
19:56:45 <dminuoso> arkanoid: My point is, we're incrementally replacing parts of a larger architecture here by Haskell parts.
19:57:01 <dminuoso> But none of that is through what one would ordinarily call FFI.
19:57:26 <davean> dminuoso: no, thats via ABI :-p
19:57:42 <arkanoid> so you're integrating haskell by replacing services
19:57:45 <dminuoso> Perhaps part of why FFI is unsuitable in general, is that the common denominator here is C, and that's a fairly ugly low level where mapping your high level parts might be really cumbersome.
19:57:50 Guest70 joins (~Guest70@192.75.101.164)
19:58:06 <platz> davean: i'll take a look, thanks
19:58:27 × favonia quits (~favonia@user/favonia) (Ping timeout: 245 seconds)
19:58:59 × m4lvin quits (~m4lvin@w4eg.de) (Quit: m4lvin)
19:59:22 m4lvin joins (~m4lvin@w4eg.de)
19:59:57 favonia joins (~favonia@user/favonia)
20:00:06 <arkanoid> the haskell wiki on the FFI page says "Note that to call a Haskell function, the runtime system must have been initialized with a call to "hs_init". It must be released with a call to "hs_exit" when it is no longer required. See the user guide for more details" but the link is broken https://wiki.haskell.org/Foreign_Function_Interface
20:00:33 <janus> arkanoid: the link at the top works, i'll fix the other
20:00:37 <dminuoso> And worse, if the other language is not C, you will end up needing C wrappers - which makes for very annoying semantics. If either of those languages has things like memory management, lifetime tracking, non-trivial concepts of threads/processes, signal management, you get into a whole world of pain.
20:02:05 <janus> fixed now
20:02:25 <arkanoid> woa, that was quick! thanks
20:04:05 <arkanoid> dminuoso: ccall would be perfect in my case. I wonder what will be the memory footprint, I intend to do experiments on low-end devices
20:04:46 <dsal> I read that as call/cc
20:05:33 × juhp quits (~juhp@128.106.188.220) (Ping timeout: 258 seconds)
20:05:34 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
20:05:39 <dminuoso> arkanoid: So one of my first worries would be, what effects does calling into hs_init have exactly? What signal handlers does it install?
20:06:14 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
20:06:44 juhp joins (~juhp@128.106.188.220)
20:06:46 <arkanoid> exactly, but I wonder why they should be installed
20:09:37 × Guest70 quits (~Guest70@192.75.101.164) (Quit: Client closed)
20:10:25 Deide joins (~Deide@217.155.19.23)
20:10:25 × Deide quits (~Deide@217.155.19.23) (Changing host)
20:10:25 Deide joins (~Deide@user/deide)
20:11:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
20:11:54 favonia joins (~favonia@user/favonia)
20:13:48 arthurxavierx joins (~arthurxav@201.17.157.69)
20:14:01 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds)
20:15:13 <janus> arkanoid: phadej recommended using capi over ccall
20:17:08 <adamse> i've proposed a change to the ghc users guide: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6234, but i'm not sure if someone other than me would find it better. any thoughts?
20:17:19 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:18:57 dagit joins (~dagit@2601:1c2:1b7f:9fa0:445:559:1c8d:e5d1)
20:19:48 <arkanoid> janus: isn't capi to call C code from haskell?
20:19:50 <dminuoso> adamse: To keep the form correct, perhaps just "Runtime System Options" (such that the abbreviation (RTS) is introduced in the text below). Alternatively, I'd write it as "Runtime System (RTS) Options", and then not introduce the abbreviation in the text below.
20:20:11 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
20:20:11 <arkanoid> I plan to do the other way arount (but actually unsure, actually)
20:21:23 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 252 seconds)
20:21:37 <janus> ooh i dunno if capi can do exports, sorry, i missed that
20:24:10 pera joins (~pera@user/pera)
20:25:14 × favonia quits (~favonia@user/favonia) (Ping timeout: 252 seconds)
20:25:34 favonia joins (~favonia@user/favonia)
20:25:51 arthurxavierx joins (~arthurxav@201.17.157.69)
20:27:52 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
20:27:58 <adamse> dminuoso: thanks, i like your second suggestion (i want to put RTS in the title to simplify searching and scanning the toc)
20:30:10 × fendor quits (~fendor@91.141.32.205.wireless.dyn.drei.com) (Remote host closed the connection)
20:33:10 fendor joins (~fendor@91.141.32.205.wireless.dyn.drei.com)
20:34:16 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
20:34:51 acidjnk joins (~acidjnk@p200300d0c72b9578b0632702c8b77fa8.dip0.t-ipconnect.de)
20:37:22 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 256 seconds)
20:40:50 × Matthias1 quits (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Remote host closed the connection)
20:42:12 Matthias1 joins (~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
20:42:58 <maerwald> janus: yes use capi
20:43:23 <maerwald> ccall often breaks on darwin, where you have lots of dark header CPP magic
20:44:17 <maerwald> example https://github.com/biegunka/terminal-size/pull/16
20:44:45 <maerwald> (that bug took an entire day to find)
20:45:07 dagit_ joins (~dagit@2601:1c2:1b7f:9fa0:445:559:1c8d:e5d1)
20:45:13 × favonia quits (~favonia@user/favonia) (Ping timeout: 250 seconds)
20:45:13 × dagit_ quits (~dagit@2601:1c2:1b7f:9fa0:445:559:1c8d:e5d1) (Client Quit)
20:46:09 finsternis joins (~X@23.226.237.192)
20:46:32 arthurxavierx joins (~arthurxav@201.17.157.69)
20:47:03 favonia joins (~favonia@user/favonia)
20:51:18 × Matthias1 quits (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) (Remote host closed the connection)
20:52:58 jmorris joins (uid433911@id-433911.stonehaven.irccloud.com)
20:54:27 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
20:54:57 notzmv joins (~zmv@user/notzmv)
20:58:00 Matthias1 joins (~Matthias1@cpe-76-170-236-166.socal.res.rr.com)
20:58:00 tzh_ joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net)
20:58:20 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
20:58:56 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Quit: WeeChat 2.8)
20:59:36 × tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 252 seconds)
21:00:06 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
21:01:20 mikoto-chan joins (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be)
21:02:58 <monochrom> capi is close to being a case of "those who have learned from history are doomed to helplessly watch people repeat it" :)
21:04:00 <monochrom> A long long time ago if you wrote "foreign import ccall "header.h" ..." the idea was that the compiler may read and care about header.h for sanity checks.
21:04:44 <monochrom> The operative word here is "may" because it is also OK if the compiler doesn't. Indeed when GHC switched to native codegen it stopped doing that.
21:05:03 <monochrom> Now we have capi which restored that old tradition.
21:10:31 × Matthias1 quits (~Matthias1@cpe-76-170-236-166.socal.res.rr.com) ()
21:13:02 × burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection)
21:13:10 × dtman34 quits (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
21:15:22 × ircbrowse_tom quits (~ircbrowse@static.162.49.55.162.clients.your-server.de) (ZNC 1.7.5+deb4 - https://znc.in)
21:15:36 ircbrowse_tom_ joins (~ircbrowse@2a01:4f8:1c1c:9319::1)
21:15:40 Server sets mode +Cnt
21:15:44 × mcfrdy quits (~mcfrdy@user/mcfrdy) (Ping timeout: 252 seconds)
21:16:27 × forell quits (~forell@user/forell) (Read error: Connection reset by peer)
21:16:31 mcfrdy joins (~mcfrdy@user/mcfrdy)
21:16:33 jrm2 joins (~jrm@156.34.187.65)
21:16:39 × nshepperd2 quits (~nshepperd@li364-218.members.linode.com) (Read error: Connection reset by peer)
21:16:39 nshepperd23 is now known as nshepperd2
21:16:50 × ft quits (~ft@shell.chaostreff-dortmund.de) (Ping timeout: 252 seconds)
21:16:50 × ishutin_ quits (~ishutin@193-110-63-61.cable-modem.hdsnet.hu) (Ping timeout: 252 seconds)
21:16:50 × pbrisbin quits (~patrick@pool-108-52-124-197.phlapa.fios.verizon.net) (Ping timeout: 252 seconds)
21:16:57 forell joins (~forell@user/forell)
21:16:57 ishutin joins (~ishutin@193-110-63-61.cable-modem.hdsnet.hu)
21:17:01 ft joins (~ft@shell.chaostreff-dortmund.de)
21:17:12 × gentauro quits (~gentauro@user/gentauro) (Ping timeout: 252 seconds)
21:17:12 × jrm quits (~jrm@156.34.187.65) (Ping timeout: 252 seconds)
21:17:12 × ent quits (entgod@kapsi.fi) (Ping timeout: 252 seconds)
21:17:12 × raoul quits (~raoul@nom4.xyz) (Ping timeout: 252 seconds)
21:17:12 raoul1 is now known as raoul
21:17:13 jrm2 is now known as jrm
21:17:19 ent joins (entgod@kapsi.fi)
21:17:25 gentauro joins (~gentauro@user/gentauro)
21:17:34 × aforemny quits (~aforemny@static.248.158.34.188.clients.your-server.de) (Remote host closed the connection)
21:17:56 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 252 seconds)
21:18:18 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
21:18:25 aforemny joins (~aforemny@static.248.158.34.188.clients.your-server.de)
21:18:33 pbrisbin joins (~patrick@pool-108-52-124-197.phlapa.fios.verizon.net)
21:18:44 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
21:18:58 × ph88 quits (~ph88@2a02:8109:9e00:7e5c:8db8:987d:36eb:f1a6) (Ping timeout: 268 seconds)
21:19:09 × ubert quits (~Thunderbi@77.119.196.49.wireless.dyn.drei.com) (Ping timeout: 258 seconds)
21:20:06 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection)
21:24:17 × zeenk quits (~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38) (Quit: Konversation terminated!)
21:25:04 × pera quits (~pera@user/pera) (Ping timeout: 250 seconds)
21:25:44 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
21:26:52 pera joins (~pera@user/pera)
21:27:23 benin036931 joins (~benin@106.198.95.50)
21:29:06 × benin03693 quits (~benin@183.82.205.33) (Ping timeout: 240 seconds)
21:29:06 benin036931 is now known as benin03693
21:30:20 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
21:33:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
21:35:57 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 276 seconds)
21:36:07 favonia joins (~favonia@user/favonia)
21:38:59 jay_invariant joins (~jay@c-24-4-6-169.hsd1.ca.comcast.net)
21:39:15 × hiruji` quits (~hiruji@2606:6080:1001:18:8d41:9604:d435:36b6) (Read error: Connection reset by peer)
21:39:38 hiruji joins (~hiruji@user/hiruji)
21:39:41 ellie7 joins (~ellie@user/ellie)
21:40:39 jgeerds joins (~jgeerds@55d45555.access.ecotel.net)
21:41:14 × jay-invariant quits (~jay@c-24-4-6-169.hsd1.ca.comcast.net) (Remote host closed the connection)
21:41:15 × dy` quits (~dy@user/dy) (Quit: ZNC 1.9.x-git-124-15e2351d - https://znc.in)
21:41:15 × AlexZenon quits (~alzenon@178.34.162.117) (Ping timeout: 265 seconds)
21:41:33 × jespada quits (~jespada@90.254.247.46) (Ping timeout: 265 seconds)
21:41:33 × edr quits (~edr@user/edr) (Ping timeout: 265 seconds)
21:41:33 × ellie quits (~ellie@user/ellie) (Read error: Connection reset by peer)
21:41:34 ellie7 is now known as ellie
21:41:47 dy joins (~dy@user/dy)
21:42:02 × tureba quits (~tureba@tureba.org) (Ping timeout: 265 seconds)
21:42:14 tureba joins (~tureba@tureba.org)
21:42:22 edr joins (~edr@enlo.co)
21:42:22 × edr quits (~edr@enlo.co) (Changing host)
21:42:22 edr joins (~edr@user/edr)
21:43:36 benin036939 joins (~benin@183.82.205.33)
21:43:45 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
21:44:30 AlexZenon joins (~alzenon@178.34.162.117)
21:44:46 jneira_ joins (~jneira_@28.red-80-28-169.staticip.rima-tde.net)
21:45:38 jespada joins (~jespada@90.254.247.46)
21:46:21 × benin03693 quits (~benin@106.198.95.50) (Ping timeout: 276 seconds)
21:46:21 benin036939 is now known as benin03693
21:47:30 arthurxavierx joins (~arthurxav@201.17.157.69)
21:48:02 × favonia quits (~favonia@user/favonia) (Ping timeout: 250 seconds)
21:48:21 favonia joins (~favonia@user/favonia)
21:51:10 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
21:53:55 arthurxavierx joins (~arthurxav@201.17.157.69)
21:54:09 × euandreh quits (~euandreh@2804:14c:33:9fe5:90c5:c42d:2338:33d7) (Quit: WeeChat 3.2)
21:54:19 × arthurxavierx quits (~arthurxav@201.17.157.69) (Remote host closed the connection)
21:54:28 fluffyballoon12 joins (~fluffybal@2620:72:0:6480::81d)
21:57:07 × fluffyballoon quits (~fluffybal@2620:72:0:6480::81d) (Ping timeout: 246 seconds)
21:59:01 × benin03693 quits (~benin@183.82.205.33) (Ping timeout: 258 seconds)
21:59:30 × favonia quits (~favonia@user/favonia) (Ping timeout: 240 seconds)
21:59:50 × mikoto-chan quits (~mikoto-ch@ip-193-121-10-50.dsl.scarlet.be) (Ping timeout: 252 seconds)
21:59:50 benin03693 joins (~benin@183.82.205.33)
21:59:54 favonia joins (~favonia@user/favonia)
22:01:14 HarveyPwca joins (~HarveyPwc@2601:246:c180:a570:29df:3b00:ad0e:3a06)
22:01:57 × crazazy quits (~user@2001:1c00:831:4700:4685:bf1f:d31b:ebdc) (Remote host closed the connection)
22:04:27 mnrmnaugh is now known as BMCC
22:04:37 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Remote host closed the connection)
22:04:59 norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net)
22:07:31 × h98 quits (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
22:10:38 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
22:11:42 × fendor quits (~fendor@91.141.32.205.wireless.dyn.drei.com) (Read error: Connection reset by peer)
22:14:44 Erutuon joins (~Erutuon@user/erutuon)
22:16:40 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
22:16:50 × dhil quits (~dhil@195.213.192.47) (Ping timeout: 265 seconds)
22:16:56 × norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 272 seconds)
22:20:24 × pera quits (~pera@user/pera) (Quit: leaving)
22:23:33 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 258 seconds)
22:24:49 × hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
22:25:49 × fluffyballoon12 quits (~fluffybal@2620:72:0:6480::81d) (Ping timeout: 246 seconds)
22:25:56 delYsid parts (~user@84-115-55-45.cable.dynamic.surfer.at) (ERC (IRC client for Emacs 27.1.50))
22:34:09 curiousgay joins (~curiousga@77-120-186-48.kha.volia.net)
22:36:06 × Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection)
22:40:03 zeenk joins (~zeenk@2a02:2f04:a008:d600:18f2:3421:bac6:8f38)
22:40:11 Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi)
22:44:48 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
22:51:48 agua joins (~agua@2804:18:44:46ad:1:0:480e:2382)
22:54:18 × pesada quits (~agua@2804:14c:8793:8e2f:8013:a595:bc17:299d) (Ping timeout: 272 seconds)
22:57:35 lavaman joins (~lavaman@98.38.249.169)
23:01:53 × lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 258 seconds)
23:18:33 fef joins (~thedawn@user/thedawn)
23:19:27 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)
23:22:58 × tcard quits (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) (Remote host closed the connection)
23:23:08 tcard joins (~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp)
23:29:51 × Deide quits (~Deide@user/deide) (Quit: Seeee yaaaa)
23:30:58 × acidjnk quits (~acidjnk@p200300d0c72b9578b0632702c8b77fa8.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
23:32:52 hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com)
23:37:50 × curiousgay quits (~curiousga@77-120-186-48.kha.volia.net) (Ping timeout: 255 seconds)
23:42:26 × favonia quits (~favonia@user/favonia) (Ping timeout: 272 seconds)
23:43:26 favonia joins (~favonia@user/favonia)
23:46:40 nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
23:47:42 × cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds)
23:51:03 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
23:52:03 × nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds)
23:58:07 × gzj quits (~GZJ0X@199.193.127.138.16clouds.com) (Remote host closed the connection)
23:58:26 gzj joins (~GZJ0X@199.193.127.138.16clouds.com)

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