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.