Home liberachat/#haskell: Logs Calendar

Logs on 2024-01-26 (liberachat/#haskell)

00:02:02 xff0x joins (~xff0x@ai085147.d.east.v6connect.net)
00:03:25 × azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
00:03:56 azimut joins (~azimut@gateway/tor-sasl/azimut)
00:07:02 × Nixkernal quits (~Nixkernal@115.16.194.178.dynamic.wline.res.cust.swisscom.ch) (Ping timeout: 256 seconds)
00:07:37 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 276 seconds)
00:09:15 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
00:15:30 × dtman34 quits (~dtman34@2601:447:d000:93c9:26e6:4184:3fb9:5726) (Ping timeout: 260 seconds)
00:17:22 × mima quits (~mmh@aftr-62-216-211-209.dynamic.mnet-online.de) (Ping timeout: 276 seconds)
00:25:47 × thegeekinside quits (~thegeekin@189.180.65.186) (Ping timeout: 264 seconds)
00:26:38 Adran joins (~adran@botters/adran)
00:26:40 thegeekinside joins (~thegeekin@189.180.65.186)
00:38:35 finsternis joins (~X@23.226.237.192)
00:47:34 × innegatives_ quits (uid621315@id-621315.tinside.irccloud.com) (Quit: Connection closed for inactivity)
00:52:39 <shapr> bgamari_: do you know of hx8k support for clash? That, I want to compile clash to the fomu? https://tomu.im/fomu.html
00:54:53 noumenon joins (~noumenon@113.51-175-156.customer.lyse.net)
01:21:44 × Tuplanolla quits (~Tuplanoll@91-159-68-95.elisa-laajakaista.fi) (Quit: Leaving.)
01:22:45 × mei quits (~mei@user/mei) (Remote host closed the connection)
01:25:10 mei joins (~mei@user/mei)
01:34:05 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
01:34:40 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
01:40:37 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
01:47:40 AWizzArd parts (~code@user/awizzard) ()
02:03:18 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
02:11:57 TonyStone joins (~TonyStone@074-076-057-186.res.spectrum.com)
02:19:23 Ackermann joins (~alex@075-139-208-209.res.spectrum.com)
02:20:32 aforemny_ joins (~aforemny@2001:9e8:6cca:7200:b659:7e3b:e0a9:bb8f)
02:21:51 × aforemny quits (~aforemny@2001:9e8:6cf9:9a00:4bfc:c9f0:6a8:dc47) (Ping timeout: 260 seconds)
02:22:01 × xff0x quits (~xff0x@ai085147.d.east.v6connect.net) (Ping timeout: 264 seconds)
02:34:19 × _________ quits (~nobody@user/noodly) (Ping timeout: 256 seconds)
02:35:53 causal joins (~eric@50.35.85.7)
02:43:10 × mobivme quits (~mobivme@112.201.111.217) (Read error: Connection reset by peer)
02:46:07 mobivme joins (~mobivme@112.201.111.217)
03:07:10 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
03:08:12 × mobivme quits (~mobivme@112.201.111.217) (Remote host closed the connection)
03:09:55 × thegeekinside quits (~thegeekin@189.180.65.186) (Ping timeout: 260 seconds)
03:16:03 mwnaylor joins (~mwnaylor@2601:5cf:837e:2bb0::68fa)
03:17:04 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb) (Remote host closed the connection)
03:17:28 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb)
03:27:52 <mwnaylor> Does anyone here have experience w/ Clojure?
03:30:11 <mwnaylor> I've only dabbled w/ Haskell, but the pure functionality helped me when delving into Scala and Clojure.
03:39:50 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
03:50:25 × td_ quits (~td@i53870927.versanet.de) (Ping timeout: 255 seconds)
03:50:37 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Quit: peterbecich)
03:51:12 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
03:52:21 td_ joins (~td@i5387091B.versanet.de)
03:59:28 ddellacosta joins (~ddellacos@ool-44c73d16.dyn.optonline.net)
04:11:06 igemnace joins (~ian@user/igemnace)
04:17:19 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
04:17:49 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
04:18:20 × igemnace quits (~ian@user/igemnace) (Quit: WeeChat 4.2.1)
04:21:09 <xacktm> anyone know if http://dev.stephendiehl.com/hask/ is temporarily down or has been down for a while? Any 2.5 version mirrors?
04:34:32 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
04:38:16 trev joins (~trev@user/trev)
04:39:11 <EvanR> down for me too, not just you!
04:39:40 <EvanR> mwnaylor, yes I can decomplect if necessary
04:42:52 <haskellbridge> 06<s​m> it has been down for years, I don't understand it, please contact him
04:54:10 <Axman6> tri: I didn't follow the whole discussion, but as for why you'd want to fold over a Maybe value, IMO it's more useful think of it as optionally doing something. So look at foldMap print, if you give that a Just it'll print it, if you give it a Nothing, it'll just return IO ()
04:54:30 <Axman6> % foldMap print (Just 10)
04:54:30 <yahb2> 10
04:54:37 <monochrom> That reminds me of a true story. A certain university's IT support once had this on their email support page: "If you still have trouble with email, send us an email at ..."
04:54:39 <Axman6> % foldMap print (Nothing :: Maybe Int)
04:54:39 <yahb2> <no output>
04:57:53 aforemny joins (~aforemny@2001:9e8:6cda:4600:7747:ed4:88dc:55a7)
04:59:05 × mwnaylor quits (~mwnaylor@2601:5cf:837e:2bb0::68fa) (Quit: Client closed)
04:59:28 × aforemny_ quits (~aforemny@2001:9e8:6cca:7200:b659:7e3b:e0a9:bb8f) (Ping timeout: 276 seconds)
05:01:24 <EvanR> to find your phone, use the find my phone app
05:02:02 <EvanR> to fix your internet, follow the guide at this URL
05:02:09 <Axman6> monochrom: it's not a certain email that you work at is it? XD
05:02:27 <Axman6> EvanR: to be fair, my watch does an a find my phoner app...
05:02:28 <EvanR> to see in the dark, first look for the flashlight
05:02:31 <Axman6> phone*
05:02:43 <monochrom> No, it was my friend's university. :)
05:03:00 <EvanR> glow in the dark sunglasses
05:09:22 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
05:15:26 michalz joins (~michalz@185.246.207.221)
05:24:34 <tri> how could i compose String -> Either String (Vector a) to Vector a -> IO () please?
05:25:27 <tri> i have toRecord :: String -> Either String (Vector a)
05:25:37 <tri> and printRecord :: Vector a -> IO ()
05:26:00 <tri> i'd like to unwrap the Vector a in the Either and feed into the printRecord function
05:26:11 <tri> of course without pattern matching
05:26:50 <tri> im looking for something like >>=, but the return of printRecord is IO, not Either so i can't use Monad
05:29:57 <tri> ... or pattern matching is the only option i have?.,.
05:32:21 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
05:42:46 <ski> @where WIWIK
05:42:46 <lambdabot> "What I Wish I Knew When Learning Haskell" by Stephen Diehl at <https://github.com/sdiehl/wiwinwlh/blob/master/tutorial.md>,<https://web.archive.org/web/20220513191346/https://dev.stephendiehl.com/
05:42:46 <lambdabot> hask/>
05:42:50 <ski> xacktm ^
05:43:18 <ski> sm ^
05:43:55 <tri> is that for me?
05:44:00 <ski> no
05:44:03 <tri> ah ok
05:44:10 <haskellbridge> 06<s​m> both broken links, right ?
05:44:23 <ski> both links work for me
05:46:36 <ski> tri : what should happen if you get `Left' ?
05:46:42 <haskellbridge> 06<s​m> Element was failing on the first, I see it now: https://github.com/sdiehl/wiwinwlh/blob/master/tutorial.md
05:46:42 <haskellbridge> 06<s​m> The second shows me: Nothing to see here, move along.
05:46:56 <haskellbridge> 06<s​m> still please contact sdiehl to update his page
05:47:04 <ski> sm : lambdabot broke it over two lines, please reassemble
05:47:11 <haskellbridge> 06<s​m> (xacktm)
05:47:28 <ski> or, here : <https://github.com/sdiehl/wiwinwlh/blob/master/tutorial.md>,<https://web.archive.org/web/20220513191346/https://dev.stephendiehl.com/hask/>
05:47:35 <EvanR> you can easily compose them with >>= to get a String -> Either String (IO ())
05:47:46 <EvanR> leading to ski's question about Left
05:47:54 <tri> haskellbridge: hmm i was not thinking about it, cause i was trying to run it in repl. So I just want to extract the Right value and feed it into the other funtion to see the result
05:48:26 <EvanR> you can issue two commands in repl... Right x <- toRecord "whatever"
05:48:28 <haskellbridge> 06<s​m> https://web.archive.org/web/20220513191346/https://dev.stephendiehl.com/hask/ works, thanks
05:48:32 <EvanR> printRecord x
05:49:03 <EvanR> shoot, the first one isn't IO. let Right x = toRecord "whatever"
05:49:03 <tri> EvanR: Right x <- toRecord "whavetever" that's a legit syntax?
05:49:06 <tri> i gotta try it out
05:49:08 <ski> yes, tri
05:49:17 <ski> it's just pattern-matching
05:49:18 <EvanR> it would be if toRecord "whatever" were an IO action
05:49:21 <haskellbridge> 06<s​m> FTR links enclosed in angle brackets don't work in Element, and angle brackets are generally superfluous here
05:51:03 <tri> ski: Right positions <- printPositions didn't work in my repl
05:51:20 <tri> positions :: Either String Position
05:51:31 <tri> printPositions :: Position -> IO ()
05:51:58 <tri> i typed Right positions <- printPositions as you said pattern matching and didn't work
05:53:53 <tri> ah i see what you meant there
05:53:58 <tri> anyway
05:54:08 <tri> given these types
05:54:14 <tri> positions :: Either String Position
05:54:19 Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
05:54:20 <tri> printPositions :: Position -> IO ()
05:54:28 <EvanR> let Right x = toRecord "whatever"
05:54:29 <ski> sm : "Appendix C. Delimiting a URI in Context", "Uniform Resource Identifier (URI): Generic Syntax" (RFC 3986) in 2005-01 at <https://www.rfc-editor.org/rfc/rfc3986#appendix-C>
05:54:42 <tri> is there a way feed positions to printPositions without pattern matching on the Right value?
05:54:57 <haskellbridge> 06<s​m> why are you quoting standards at me :)
05:55:37 <EvanR> if IO () were a Monoid you could use Foldable to do it...
05:55:37 <ski> @type fromRight
05:55:38 <lambdabot> b -> Either a b -> b
05:56:08 <EvanR> but it's not (though there is a newtype for that)
05:56:26 _________ joins (~nobody@user/noodly)
05:56:38 <tri> ski: fromRight looks like the right function for me, but it's not shown when I type :t fromRight
05:56:43 <ski> sm : "here" and "Element" being ?
05:56:51 <ski> @index fromRight
05:56:51 <lambdabot> bzzt
05:57:06 <ski> @type Data.Either.fromRight
05:57:07 <EvanR> tri, realistically, if you do this more than once, write a function for it in your source file that you are loading in the repl
05:57:08 <lambdabot> b -> Either a b -> b
05:57:33 <EvanR> good technique in general to just start appending your work to the source file
05:57:37 <EvanR> then reload
05:58:20 <ski> tri : an alternative solution would be to get `IO (Either String ())' / `ExceptT String IO ()', or just `Either String (IO ())' as EvanR suggested
05:59:20 <haskellbridge> 06<s​m> ski: ignore me. I was just letting you know that when you write links in angle brackets, they don't work for people like me connected to this channel via the Element matrix client. So in this context whitespace works better. Thanks
05:59:23 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
05:59:26 <EvanR> also since this pertains to printing out a record somehow, look into pretty printer libraries
05:59:43 <EvanR> because it's unfortunately not built in
05:59:50 <tri> how does IO (Either String ()) help me when in the context of positions and printPositions function
06:00:00 <tri> positions :: Either String Position
06:00:07 <tri> printPositions :: positions -> IO ()
06:00:14 <tri> i dont see where IO (Either String ()) fit in sorry
06:01:16 <EvanR> if you want to crash on Left, you could write a function which does that or use fromRight
06:01:33 <EvanR> and just work with Position directly
06:02:17 <tri> yea i mean i kind of understand now
06:02:24 <EvanR> ExceptT lets you always be dealing with Either and IO together
06:02:28 <EvanR> at all times
06:02:53 <ski> sm, oh, so it was related to Matrix then
06:03:07 <tri> basically i need to handle the Error case all the time, just Monad abstract that away for me, so i will only need to be worried about the actual value when using monad
06:03:11 <EvanR> which is often redundant beacuse IO has exceptions already
06:03:22 <tri> but since this is different strcutre, i can't use monad
06:03:29 <EvanR> ExceptT is a monad
06:03:43 <tri> so i either need to pattern match, or use fromString to have a default value to account for when Either is a Left
06:04:01 <EvanR> to keep it simple, just pattern match
06:04:23 <tri> oh i see ExceptT is a monad transformer
06:04:29 <tri> too bad i didn't read to that chapter yet
06:04:32 <EvanR> and if everything is IO, react to Left by throwing an IO exception
06:04:37 × mulk quits (~mulk@p5b2dc93f.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
06:04:55 <EvanR> which is basically what fromRight would do. You have an embarrassment of riches of ways to do it
06:05:09 <ski> tri : either you could handle the `Left str', by saying what it should do in that case. or you could punt the decision of what to do, to the caller/user, by either using `Either String (IO ())', or by doing `IO (Either String ())' / `ExceptT String IO ()'
06:06:15 <ski> `fromString' ?
06:06:50 <tri> gotta change my name to something other than tri. Get alerted whenever someone types string
06:07:13 <ski> maybe you could change alerting to only react to full words ?
06:07:17 <EvanR> or fix your client because tri within "string" obviously isn't trying to notify you
06:07:23 × benjaminl quits (~benjaminl@user/benjaminl) (Remote host closed the connection)
06:07:57 <EvanR> we're too far past the end of IRC to be using bad clients
06:08:11 benjaminl joins (~benjaminl@user/benjaminl)
06:08:35 <tri> can someone type string again?
06:08:40 <EvanR> string again
06:08:48 <tri> ok im good now thank you
06:09:39 <ski> tri_
06:09:42 <ski> tri:
06:09:44 <ski> tri,
06:09:49 <tri> worked
06:10:03 <ski> the latter two alerts, maybe ?
06:10:35 mulk joins (~mulk@p5b112b23.dip0.t-ipconnect.de)
06:11:28 <haskellbridge> 05<i​rregularsphere> lol imagine someone named "i"
06:12:19 <ski> -NickServ(NickServ@services.libera.chat)- Last seen : (less than two weeks ago)
06:14:20 <tri> all 3 alerted
06:14:34 <EvanR> tri
06:14:36 <ski> interesting
06:14:42 <ski> _tri
06:14:52 <EvanR> everyone
06:14:59 <ski> stalfos
06:15:04 <tri> https://paste.tomsmeding.com/WdoPcFhp
06:15:20 <EvanR> holy crap the indentation
06:15:21 <tri> could you guys do a quick code review for me on this please
06:15:36 <EvanR> I have to admit I'm a never nester
06:15:37 <tri> so that i can write more idiomatic haskell
06:15:49 <tri> really, hmm i think that's from F# habit
06:16:06 <tri> well im not sure if F# enforces that, i may be blaming it wrongly
06:17:00 <EvanR> I'd say make your parser responsible for returning valid data type and don't go through a second round of validation
06:17:01 <ski> printPositions positions = V.mapM_ print
06:17:06 <tri> anyway, my program is to read a csv file, parse it to records, and print back out
06:17:10 <ski> er
06:17:16 <ski> printPositions = V.mapM_ print
06:17:19 <ski> rather
06:17:41 <EvanR> at the point where the parser is used, you can deal with the failure case and be done with it
06:17:57 <EvanR> continuing on with the non-Either value
06:18:06 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:18:30 <EvanR> in other words "parse don't validate" :tm:
06:19:03 <ski> toPositions rawString = fmap snd (decodeByName (BL8.fromString rawString))
06:19:20 <ski> @where parse-don't-validate
06:19:20 <lambdabot> "Parse, don't validate" by lexi-lambda in 2019-11-05 at <https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-validate/>
06:19:58 <tri> EvanR: you are talking about toPositions right? which mean, I should handle the Left case there? wdym by not validate?
06:20:13 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
06:20:22 × mulk quits (~mulk@p5b112b23.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
06:20:29 <ski> EvanR : fwiw, i always nest module bodies like that
06:21:09 mulk joins (~mulk@p5b112b6b.dip0.t-ipconnect.de)
06:21:10 <EvanR> your CSV parser is doing only part of the work to extract the expected data structure
06:21:47 <EvanR> if you do that then wait until later on in the program ruby-on-rails-style to check for the rest of the validation, it's especially annoying in haskell
06:22:51 gabiruh_ joins (~gabiruh@vps19177.publiccloud.com.br)
06:23:04 bilegeek joins (~bilegeek@2600:1008:b020:6a16:a1f8:280d:2323:e2f)
06:23:07 <tri> EvanR: i don't get what you mean. So you are saying my program shouldn't worry about Left case?
06:23:07 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Ping timeout: 260 seconds)
06:23:10 <ski> hm, where's the "validate" here, though ?
06:23:17 <EvanR> not sure what decodeByName is doing or how it could fail, but parse don't validate would suggest doing that in the parser
06:23:36 <tri> decodeByName is from a library cassava
06:23:46 <tri> it returns Either. There is no way i cannot ignore it
06:23:55 <EvanR> you start with CSV and want a Vector Position
06:24:08 <EvanR> or parse failure
06:24:20 <tri> yes that's right
06:24:24 <ski> iow `Either (..) (Vector Position)'
06:24:33 <tri> so what's the problem
06:24:52 <EvanR> I guess nothing
06:24:57 <tri> the csv could be non-parsable so there is the left case
06:25:04 <EvanR> ok then
06:25:06 <tri> otherwise it will parse successfully to Haskell type
06:25:17 <tri> no im asking, im not mocking you
06:25:37 <EvanR> feel free to mock me because looks basically like you already are doing it
06:25:47 <EvanR> one parse step I mean
06:26:07 <tri> wait so what you said earlier is still valid?
06:26:31 <tri> because now you seem to agree with me what im doing, but earlier so said something about my parser shouldn't do validation
06:27:47 <EvanR> I thought the parser was elsewhere
06:28:39 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
06:28:56 <EvanR> so in the business logic, case analysis on the result of toPosition <string> solves it
06:29:27 <EvanR> in the Right section, you no longer deal with Either
06:29:41 <tri> ah i see
06:29:51 <tri> yes I agree with you about that poitn
06:30:04 <tri> keeping the parser free from other responsiblities
06:30:36 <ski> tri : you saw my other two suggestions ?
06:30:38 <tri> ski: you mentioned mapM_ instead of forM_
06:30:52 <tri> i was about to reply to you
06:30:53 <tri> sorry
06:30:55 <tri> anyway
06:30:57 <ski> and `fmap' (or `<$>' if you prefer)
06:31:08 <tri> yea i know about mapM_ and forM_
06:31:15 <tri> i just read about them yesterday
06:31:28 <tri> they are basically the same, with flip args
06:31:46 <ski> (you could still use `where', if you want to name `content'. and you could use a lambda if you want to name `header' and `v' as well)
06:31:51 <ski> yes
06:32:55 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
06:33:04 <tri> well i have a thought from forM_ and mapM_
06:33:37 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
06:33:43 <tri> i only know about them because i read the Foldable (or Traversable) chapter in a book
06:33:57 <ski> yes ?
06:33:57 <tri> and i know they are the same with flipped args
06:34:19 <tri> but without reading that book, and without you pointing out mapM_ equivalent to forM_
06:34:29 <tri> how do i know about that
06:34:44 <ski> you pick it up, after a while
06:34:58 <tri> and i think forM or mapM is from typeclass Foldable or something
06:35:01 <EvanR> mapM is listed in the Control.Monad utility docs
06:35:11 <ski> `Traversable'
06:35:11 <EvanR> or used to be before Foldable
06:35:16 <EvanR> Traverable
06:36:02 <tri> yea my thought in general is there are pieces of good stuff like these that i can't find else where, other than fortuniately someone points me to it
06:36:17 <tri> in other word, luck and experience
06:36:20 <ski> .. hanging around in this channel helps
06:36:55 <tri> yea, so that's why i worded it as thought, not a question. Because I kinda know the answer already
06:36:57 <EvanR> along with other handy monad stuff... forever, sequence, join, filterM, zipWithM, replicateM...
06:37:11 <EvanR> some of which got generalized
06:37:26 <tri> oh i think i know a better way to word it
06:37:59 <tri> if i want to do something in C#, even though idk the actual method, i can just search my idea on google and i will know what i need
06:38:10 <EvanR> it's great that documentation i haskell exists, coming from other areas which don't value it for whatever reason xD
06:38:10 <tri> but here in haskell, like that forM and mapM
06:38:29 <EvanR> compares favorably
06:38:30 <tri> i would never think about there is an equivalent flipping function like these 2
06:38:48 <EvanR> @src forM_
06:38:48 <lambdabot> forM_ = flip mapM_
06:39:00 rosco joins (~rosco@175.136.156.77)
06:39:08 <tri> in other words, in C# iam comfortable to research what i don't know
06:39:16 <tri> but haskell, i don't know what i dont know
06:39:27 <tri> anw, the asnwer is just expereince :)
06:39:39 <EvanR> haskell does have a lot of stuff on stack overflow if that's what you consider the way to learn xD
06:39:55 <EvanR> but experimentation and documentation goes a long way after you have the basics
06:39:59 <ski> how would you search for similar variants of operations, in C#, if you didn't suspect there to be variants ?
06:40:53 acidjnk_new joins (~acidjnk@p200300d6e737e7740dc421a1b52e3505.dip0.t-ipconnect.de)
06:41:49 <EvanR> there's this thing with knowing true names. Maybe you never heard of mapM_ or forM_ but if you knew Control.Monad that leads to the next level via haddocks
06:41:56 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
06:41:59 <EvanR> in some idealized setting
06:42:19 azimut joins (~azimut@gateway/tor-sasl/azimut)
06:42:58 <tri> ski: i just tried that fmap snd and that's really interseting
06:43:16 <tri> i read about it, but applying it feels really good
06:43:31 <EvanR> also Prelude docs lists everything you can say without importing anything
06:43:59 <EvanR> but you'll never know if you don't know "Prelude"
06:44:06 ski idly wonders about arithmetic on Calkin-Wilf
06:44:46 <ski> @src Either fmap
06:44:46 <lambdabot> fmap _ (Left x) = Left x
06:44:47 <lambdabot> fmap f (Right y) = Right (f y)
06:46:03 <tri> yea that fmap is really cool!
06:46:06 <tri> anyway
06:46:09 <tri> im going to bed now
06:46:12 <tri> 1:30am alrady
06:46:28 <tri> thanks for the help guys
06:48:25 <ski> good night, pleasant dreams
06:48:30 <ski> and don't forget to have fun !
07:04:41 <xacktm> ty for updated wiwik links, seems original has been down for 1.5 years, but these copies are nice alternatives
07:07:19 <ski> np
07:12:45 × mei quits (~mei@user/mei) (Ping timeout: 260 seconds)
07:13:21 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
07:14:23 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
07:16:26 mei joins (~mei@user/mei)
07:19:06 CiaoSen joins (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da)
07:19:11 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
07:23:43 oneeyedalien joins (~oneeyedal@user/oneeyedalien)
07:23:54 igemnace joins (~ian@user/igemnace)
07:23:59 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
07:24:16 euleritian joins (~euleritia@dynamic-176-006-191-038.176.6.pool.telefonica.de)
07:26:42 × h2t quits (~h2t@user/h2t) (Quit: ZNC - https://znc.in)
07:27:05 h2t joins (~h2t@user/h2t)
07:27:31 Square2 joins (~Square@user/square)
07:27:55 sord937 joins (~sord937@gateway/tor-sasl/sord937)
07:31:10 × Square quits (~Square4@user/square) (Ping timeout: 268 seconds)
07:33:26 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Remote host closed the connection)
07:34:06 sord937 joins (~sord937@gateway/tor-sasl/sord937)
07:34:52 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
07:41:58 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds)
07:43:04 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
07:47:10 × mulk quits (~mulk@p5b112b6b.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
07:47:42 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 260 seconds)
07:48:02 mulk joins (~mulk@pd9514f7f.dip0.t-ipconnect.de)
07:53:32 chele joins (~chele@user/chele)
07:54:39 vpan joins (~vpan@212.117.1.172)
08:00:02 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Quit: The Lounge - https://thelounge.chat)
08:01:27 tt1231 joins (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
08:02:01 × euleritian quits (~euleritia@dynamic-176-006-191-038.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
08:02:11 fendor joins (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c)
08:02:53 coot joins (~coot@89-69-206-216.dynamic.chello.pl)
08:03:15 euleritian joins (~euleritia@dynamic-176-006-191-038.176.6.pool.telefonica.de)
08:04:25 × euleritian quits (~euleritia@dynamic-176-006-191-038.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
08:04:43 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
08:06:46 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
08:07:56 chexum joins (~quassel@gateway/tor-sasl/chexum)
08:09:10 × Square2 quits (~Square@user/square) (Ping timeout: 255 seconds)
08:11:13 × shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 264 seconds)
08:14:31 danse-nr3 joins (~danse@151.57.0.37)
08:15:48 × oneeyedalien quits (~oneeyedal@user/oneeyedalien) (Quit: Leaving)
08:17:40 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
08:21:37 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
08:22:37 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
08:25:54 mima joins (~mmh@aftr-62-216-211-130.dynamic.mnet-online.de)
08:30:15 × Ackermann quits (~alex@075-139-208-209.res.spectrum.com) (Quit: WeeChat 4.2.1)
08:33:02 × monochrom quits (trebla@216.138.220.146) (Quit: ZNC 1.8.2+deb3.1 - https://znc.in)
08:37:28 kuribas joins (~user@2a02:1808:85:4e45:3098:6d94:6d5c:34f0)
08:38:22 monochrom joins (trebla@216.138.220.146)
08:42:39 × tolt quits (~weechat-h@li219-154.members.linode.com) (Ping timeout: 256 seconds)
08:43:07 tolt joins (~weechat-h@li219-154.members.linode.com)
08:47:49 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
08:53:58 × ft quits (~ft@p508dbda4.dip0.t-ipconnect.de) (Quit: leaving)
08:55:05 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
08:56:05 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
08:58:00 mmhat joins (~mmh@p200300f1c73bf474ee086bfffe095315.dip0.t-ipconnect.de)
08:58:12 × mmhat quits (~mmh@p200300f1c73bf474ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
09:00:02 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
09:02:42 __monty__ joins (~toonn@user/toonn)
09:04:05 × FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
09:04:32 FinnElija joins (~finn_elij@user/finn-elija/x-0085643)
09:05:41 × kuribas quits (~user@2a02:1808:85:4e45:3098:6d94:6d5c:34f0) (Ping timeout: 260 seconds)
09:08:23 × danse-nr3 quits (~danse@151.57.0.37) (Ping timeout: 264 seconds)
09:08:36 danse-nr3 joins (~danse@151.47.84.164)
09:10:32 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
09:18:01 kuribas joins (~user@2a02:1808:85:4e45:ea4a:64fd:731e:f7a3)
09:21:11 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
09:21:49 chexum joins (~quassel@gateway/tor-sasl/chexum)
09:22:49 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
09:26:49 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 264 seconds)
09:28:42 xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
09:34:33 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
09:34:48 chexum joins (~quassel@gateway/tor-sasl/chexum)
09:38:13 × Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 264 seconds)
09:38:24 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb) (Remote host closed the connection)
09:45:35 × danse-nr3 quits (~danse@151.47.84.164) (Ping timeout: 264 seconds)
09:49:35 × econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
09:54:09 danse-nr3 joins (~danse@151.47.84.164)
09:55:41 × xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
09:56:52 × tzh quits (~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz)
09:57:47 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
09:58:12 euleritian joins (~euleritia@77.22.252.56)
09:58:16 biberu\ joins (~biberu@user/biberu)
09:58:50 ham2 joins (~ham@user/ham)
10:00:02 × hamster quits (~ham@user/ham) (Read error: Connection reset by peer)
10:00:19 cheater_ joins (~Username@user/cheater)
10:01:44 × biberu quits (~biberu@user/biberu) (Ping timeout: 252 seconds)
10:01:45 × mjacob_ quits (~mjacob@adrastea.uberspace.de) (Ping timeout: 252 seconds)
10:01:45 biberu\ is now known as biberu
10:02:50 × cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds)
10:02:55 cheater_ is now known as cheater
10:03:31 mjacob joins (~mjacob@adrastea.uberspace.de)
10:04:10 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
10:15:34 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb)
10:20:42 kuribas` joins (~user@ip-188-118-57-242.reverse.destiny.be)
10:22:38 × kuribas quits (~user@2a02:1808:85:4e45:ea4a:64fd:731e:f7a3) (Ping timeout: 260 seconds)
10:23:01 szkl joins (uid110435@id-110435.uxbridge.irccloud.com)
10:24:42 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
10:27:32 Nixkernal joins (~Nixkernal@115.16.194.178.dynamic.wline.res.cust.swisscom.ch)
10:29:48 × Feuermagier quits (~Feuermagi@user/feuermagier) (Ping timeout: 256 seconds)
10:30:37 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 268 seconds)
10:31:33 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 268 seconds)
10:33:11 × rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer)
10:33:30 rvalue joins (~rvalue@user/rvalue)
10:36:12 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
10:38:13 × jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 246 seconds)
10:38:18 × bilegeek quits (~bilegeek@2600:1008:b020:6a16:a1f8:280d:2323:e2f) (Quit: Leaving)
10:39:16 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
10:45:11 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
10:46:17 pavonia joins (~user@user/siracusa)
10:50:05 mreh joins (~mreh@2a00:23c7:2803:ef01:4860:7737:fc69:542b)
10:56:49 × pointlessslippe1 quits (~pointless@212.82.82.3) (Read error: Connection reset by peer)
10:58:35 gmg joins (~user@user/gehmehgeh)
10:59:35 liyang joins (uid322268@id-322268.uxbridge.irccloud.com)
10:59:47 pointlessslippe1 joins (~pointless@212.82.82.3)
11:03:36 <albet70> could we say CPS always return a Cont r a?
11:06:09 <kuribas`> b
11:06:52 <c_wraith> if you wanted to be really loose with the definition of "return", I suppose
11:09:22 <c_wraith> If you wanted to be more precise, you could say something like "in CPS style, functions end with a tail call to an extra parameter instead of returning a value"
11:10:17 <c_wraith> Which is a bit weird of a definition, talking about tail calls.. But it turns out that's actually important.
11:13:08 × mreh quits (~mreh@2a00:23c7:2803:ef01:4860:7737:fc69:542b) (Ping timeout: 250 seconds)
11:15:59 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 252 seconds)
11:18:43 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 268 seconds)
11:19:47 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
11:22:18 nschoe joins (nschoe@gateway/vpn/protonvpn/nschoe)
11:26:27 ChaiTRex joins (~ChaiTRex@user/chaitrex)
11:31:09 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
11:32:41 × CiaoSen quits (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da) (Ping timeout: 260 seconds)
11:33:30 [_] joins (~itchyjunk@user/itchyjunk/x-7353470)
11:33:46 × Nixkernal quits (~Nixkernal@115.16.194.178.dynamic.wline.res.cust.swisscom.ch) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
11:36:35 × euleritian quits (~euleritia@77.22.252.56) (Read error: Connection reset by peer)
11:36:44 mreh joins (~mreh@host86-160-168-81.range86-160.btcentralplus.com)
11:37:01 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
11:37:37 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 264 seconds)
11:39:48 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
11:39:58 Chai-T-Rex joins (~ChaiTRex@user/chaitrex)
11:47:13 cfricke joins (~cfricke@user/cfricke)
11:48:04 × noumenon quits (~noumenon@113.51-175-156.customer.lyse.net) (Quit: Leaving)
11:49:32 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 252 seconds)
11:51:03 × Guest3894 quits (~ricardo@84.16.179.218) (Read error: Connection reset by peer)
11:55:04 crook1389 joins (uid581388@id-581388.ilkley.irccloud.com)
12:02:43 <mxs> can we do constraint polymorphism without the "constraints" package with QuantifiedConstraints? something like
12:02:45 <mxs> forall i k v (c :: Constraint). Task c k v -> Store i k v -> v
12:04:25 <[Leary]> mxs: That doesn't even need QuantifiedConstraints, only ConstraintKinds.
12:05:08 lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
12:05:59 xff0x joins (~xff0x@ai085147.d.east.v6connect.net)
12:10:25 × kuribas` quits (~user@ip-188-118-57-242.reverse.destiny.be) (Ping timeout: 276 seconds)
12:16:25 <mxs> [Leary]: it does indeed if I use the correct kind: (c :: (Type -> Type) -> Constraint) lol. thank you
12:16:25 × danse-nr3 quits (~danse@151.47.84.164) (Ping timeout: 256 seconds)
12:17:39 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
12:21:25 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
12:25:53 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 260 seconds)
12:45:51 a51 joins (a51@gateway/vpn/protonvpn/a51)
12:46:19 danse-nr3 joins (~danse@151.47.56.96)
12:46:32 × vpan quits (~vpan@212.117.1.172) (Quit: Leaving.)
12:49:22 kuribas` joins (~user@ip-188-118-57-242.reverse.destiny.be)
12:56:36 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
13:00:53 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 240 seconds)
13:05:44 × liyang quits (uid322268@id-322268.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
13:08:36 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
13:19:48 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds)
13:24:52 × mei quits (~mei@user/mei) (Remote host closed the connection)
13:27:16 mei joins (~mei@user/mei)
13:27:44 × a51 quits (a51@gateway/vpn/protonvpn/a51) (Quit: WeeChat 4.2.0)
13:28:52 × szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
13:34:25 <haskellbridge> 15<J​ade> ghci is kinda scuffed
13:34:45 <haskellbridge> 15<J​ade> ```
13:34:46 <haskellbridge> 15<J​ade> :run print$1 ) -- lol
13:34:48 <haskellbridge> 15<J​ade> 1
13:34:49 <haskellbridge> 15<J​ade> ```
13:35:37 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
13:35:54 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
13:38:09 mwnaylor joins (~mwnaylor@2601:5cf:837e:2bb0::68fa)
13:39:13 CiaoSen joins (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da)
13:41:13 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
13:47:49 × CiaoSen quits (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da) (Ping timeout: 264 seconds)
13:48:35 × haritz quits (~hrtz@user/haritz) (Remote host closed the connection)
13:48:58 haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220)
13:49:02 × haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host)
13:49:02 haritz joins (~hrtz@user/haritz)
13:54:40 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
13:58:29 alexherbo2 joins (~alexherbo@2a02-8440-3241-0e10-044d-f6a7-6278-1638.rev.sfr.net)
13:58:52 azimut joins (~azimut@gateway/tor-sasl/azimut)
14:02:18 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
14:02:23 <_________> @Jade that's because ghci does 'System.Environment.withArgs [")","--","lol"] (print$1)'; you can verify this with ':run System.Environment.getArgs>>=print ) -- lol'
14:02:23 <lambdabot> Sorry, look up one word at a time please.
14:02:29 euleritian joins (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de)
14:17:12 nschoe2 joins (~nschoe@2a01:e0a:8e:a190:b8c5:4c31:134e:a33e)
14:17:21 shriekingnoise joins (~shrieking@186.137.175.87)
14:18:14 × igemnace quits (~ian@user/igemnace) (Read error: Connection reset by peer)
14:18:47 × nschoe quits (nschoe@gateway/vpn/protonvpn/nschoe) (Ping timeout: 268 seconds)
14:19:03 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
14:24:21 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds)
14:24:49 × crook1389 quits (uid581388@id-581388.ilkley.irccloud.com) (Quit: Connection closed for inactivity)
14:25:52 thegeekinside joins (~thegeekin@189.180.65.186)
14:27:41 × ddellacosta quits (~ddellacos@ool-44c73d16.dyn.optonline.net) (Ping timeout: 240 seconds)
14:35:03 igemnace joins (~ian@user/igemnace)
14:35:11 tomsmeding wonders what command lambdabot interpreted that as
14:35:43 × mreh quits (~mreh@host86-160-168-81.range86-160.btcentralplus.com) (Quit: Client closed)
14:41:31 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
14:43:39 crook1389 joins (uid581388@id-581388.ilkley.irccloud.com)
14:43:56 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
14:44:31 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
14:45:43 × danse-nr3 quits (~danse@151.47.56.96) (Ping timeout: 260 seconds)
14:48:04 × ell quits (~ellie@user/ellie) (Quit: Leaving)
14:49:10 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
14:50:49 × nschoe2 quits (~nschoe@2a01:e0a:8e:a190:b8c5:4c31:134e:a33e) (Ping timeout: 264 seconds)
14:51:20 CiaoSen joins (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da)
14:54:15 danse-nr3 joins (~danse@151.47.56.96)
15:01:20 × mima quits (~mmh@aftr-62-216-211-130.dynamic.mnet-online.de) (Ping timeout: 268 seconds)
15:05:57 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
15:06:44 <haskellbridge> 15<J​ade> yeah I know that's why I noticed it ^^
15:06:45 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
15:06:54 <haskellbridge> 15<J​ade> I've been writing some ghci stuff
15:07:46 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
15:08:11 × euleritian quits (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
15:08:30 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:08:35 × Chai-T-Rex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
15:08:58 × lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.1.1)
15:09:16 a51 joins (a51@gateway/vpn/protonvpn/a51)
15:10:58 × mwnaylor quits (~mwnaylor@2601:5cf:837e:2bb0::68fa) (Quit: Ping timeout (120 seconds))
15:12:25 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 264 seconds)
15:14:20 szkl joins (uid110435@uxbridge.irccloud.com)
15:15:08 × alexherbo2 quits (~alexherbo@2a02-8440-3241-0e10-044d-f6a7-6278-1638.rev.sfr.net) (Remote host closed the connection)
15:16:24 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
15:24:46 × cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 4.1.2)
15:25:23 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
15:25:59 euleritian joins (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de)
15:26:16 × mei quits (~mei@user/mei) (Quit: mei)
15:27:27 × sm quits (~user@plaintextaccounting/sm) (Remote host closed the connection)
15:31:46 mei joins (~mei@user/mei)
15:33:11 × euleritian quits (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
15:33:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
15:36:49 mwnaylor joins (~mwnaylor@c-174-179-137-129.hsd1.va.comcast.net)
15:38:31 mwnaylor parts (~mwnaylor@c-174-179-137-129.hsd1.va.comcast.net) ()
15:41:37 alexherbo2 joins (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net)
15:42:40 Sgeo joins (~Sgeo@user/sgeo)
15:53:30 × a51 quits (a51@gateway/vpn/protonvpn/a51) (Quit: WeeChat 4.2.0)
15:54:01 Cale joins (~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com)
15:54:12 ft joins (~ft@p508dbda4.dip0.t-ipconnect.de)
15:58:56 a51 joins (a51@gateway/vpn/protonvpn/a51)
16:02:59 × kuribas` quits (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 27.1))
16:08:44 sawilagar joins (~sawilagar@user/sawilagar)
16:08:52 × sawilagar quits (~sawilagar@user/sawilagar) (Remote host closed the connection)
16:10:49 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
16:11:01 euleritian joins (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de)
16:11:10 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
16:11:37 tri_ joins (~tri@2607:fb90:555f:4ea1:19e3:4f62:5d64:230f)
16:13:00 × rosco quits (~rosco@175.136.156.77) (Quit: Lost terminal)
16:14:34 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
16:15:33 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 256 seconds)
16:23:12 × rvalue quits (~rvalue@user/rvalue) (Remote host closed the connection)
16:23:30 rvalue joins (~rvalue@user/rvalue)
16:30:23 × euleritian quits (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
16:30:40 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:30:51 × fendor quits (~fendor@2a02:8388:1605:d100:267b:1353:13d7:4f0c) (Remote host closed the connection)
16:35:13 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
16:35:45 euleritian joins (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de)
16:36:08 × euleritian quits (~euleritia@dynamic-176-006-183-156.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
16:36:16 × danse-nr3 quits (~danse@151.47.56.96) (Ping timeout: 246 seconds)
16:36:25 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
16:37:00 × CiaoSen quits (~Jura@2a05:5800:294:ba00:ca4b:d6ff:fec1:99da) (Ping timeout: 256 seconds)
16:38:21 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:45:25 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Ping timeout: 264 seconds)
16:45:51 Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542)
16:48:57 × chele quits (~chele@user/chele) (Remote host closed the connection)
16:54:46 × drdo quits (~drdo@bl14-14-49.dsl.telepac.pt) (Ping timeout: 255 seconds)
16:55:41 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c1cf:e14:7781:abcb) (Remote host closed the connection)
16:56:12 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5014:5b74:113d:d036)
16:56:23 × Szilva quits (~Szilva@80-95-85-12.pool.digikabel.hu) (Ping timeout: 260 seconds)
16:57:54 Szilva joins (~Szilva@87-97-12-229.pool.digikabel.hu)
16:59:26 × sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
16:59:43 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
17:03:37 × sudden quits (~cat@user/sudden) (Quit: leaving)
17:04:51 × kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
17:05:53 drdo joins (~drdo@bl14-14-49.dsl.telepac.pt)
17:06:07 × alexherbo2 quits (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net) (Remote host closed the connection)
17:06:26 alexherbo2 joins (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net)
17:09:05 ChaiTRex joins (~ChaiTRex@user/chaitrex)
17:11:20 sudden joins (~cat@user/sudden)
17:21:29 econo_ joins (uid147250@id-147250.tinside.irccloud.com)
17:22:32 × yeahitsme quits (~bob@user/yeahitsme) (Read error: Connection reset by peer)
17:22:36 bobby joins (~bob@80.158-248-1.customer.lyse.net)
17:25:15 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds)
17:25:38 rosco joins (~rosco@175.136.156.77)
17:25:39 euleritian joins (~euleritia@dynamic-176-007-014-252.176.7.pool.telefonica.de)
17:26:05 Square2 joins (~Square@user/square)
17:26:27 × euleritian quits (~euleritia@dynamic-176-007-014-252.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
17:26:45 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:30:53 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
17:31:43 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:32:39 × rosco quits (~rosco@175.136.156.77) (Quit: Lost terminal)
17:36:01 Erutuon joins (~Erutuon@user/erutuon)
17:38:38 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
17:38:47 euleritian joins (~euleritia@dynamic-176-007-014-252.176.7.pool.telefonica.de)
17:39:11 × euleritian quits (~euleritia@dynamic-176-007-014-252.176.7.pool.telefonica.de) (Read error: Connection reset by peer)
17:39:29 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:40:39 × tri_ quits (~tri@2607:fb90:555f:4ea1:19e3:4f62:5d64:230f) (Remote host closed the connection)
17:41:26 Silver_X joins (~Silver_X@182.178.217.170)
17:41:55 × alexherbo2 quits (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net) (Remote host closed the connection)
17:42:09 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
17:42:34 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
17:42:35 × Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 260 seconds)
17:43:18 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:44:17 × azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
17:44:44 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
17:46:47 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Ping timeout: 260 seconds)
17:48:50 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
17:54:01 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 256 seconds)
17:58:49 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 276 seconds)
18:00:06 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
18:01:42 mima joins (~mmh@aftr-62-216-211-173.dynamic.mnet-online.de)
18:02:09 alexherbo2 joins (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net)
18:13:23 × Silver_X quits (~Silver_X@182.178.217.170) (Ping timeout: 260 seconds)
18:19:40 HikariNee joins (~HikariNee@49.43.1.13)
18:21:03 × HikariNee quits (~HikariNee@49.43.1.13) (Remote host closed the connection)
18:22:10 × bobby quits (~bob@80.158-248-1.customer.lyse.net) (Quit: Leaving)
18:22:25 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
18:24:28 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
18:31:17 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:34:07 tzh joins (~tzh@c-71-193-181-0.hsd1.or.comcast.net)
18:35:01 azimut joins (~azimut@gateway/tor-sasl/azimut)
18:39:31 × zer0bitz quits (~zer0bitz@user/zer0bitz) (Read error: Connection reset by peer)
18:48:02 × motherfsck quits (~motherfsc@user/motherfsck) (Ping timeout: 260 seconds)
18:48:08 Sciencentistguy joins (~sciencent@hacksoc/ordinary-member)
18:48:17 × michalz quits (~michalz@185.246.207.221) (Quit: ZNC 1.8.2 - https://znc.in)
18:48:45 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5014:5b74:113d:d036) (Remote host closed the connection)
18:51:19 zer0bitz joins (~zer0bitz@user/zer0bitz)
18:53:34 × foul_owl quits (~kerry@185.219.141.160) (Ping timeout: 256 seconds)
18:58:01 Tuplanolla joins (~Tuplanoll@91-159-68-95.elisa-laajakaista.fi)
19:07:30 foul_owl joins (~kerry@174-21-148-34.tukw.qwest.net)
19:17:05 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:17:29 × mima quits (~mmh@aftr-62-216-211-173.dynamic.mnet-online.de) (Ping timeout: 260 seconds)
19:19:31 mima joins (~mmh@aftr-62-216-211-173.dynamic.mnet-online.de)
19:19:36 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5014:5b74:113d:d036)
19:24:25 × eggplantade quits (~Eggplanta@2600:1700:38c5:d800:5014:5b74:113d:d036) (Ping timeout: 264 seconds)
19:28:30 jmdaemon joins (~jmdaemon@user/jmdaemon)
19:31:20 fpstudent joins (~fpstudent@80.233.51.182)
19:33:22 <fpstudent> Hi I have to create a web proxy for my networks class, I would like to use haskell to do it but I have never used third party libraries do we have something good for that purpose or should I stick with java?
19:36:07 <Clint> there are libraries
19:41:46 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Ping timeout: 246 seconds)
19:43:05 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
19:43:19 tri joins (~tri@ool-18bc2e74.dyn.optonline.net)
19:45:47 ChaiTRex joins (~ChaiTRex@user/chaitrex)
19:48:46 L29Ah joins (~L29Ah@wikipedia/L29Ah)
19:51:26 × alexherbo2 quits (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net) (Remote host closed the connection)
19:51:45 alexherbo2 joins (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net)
19:54:49 Lycurgus joins (~georg@user/Lycurgus)
19:59:44 rosco joins (~rosco@175.136.156.77)
19:59:44 Silver_X joins (~Silver_X@182.178.217.170)
20:09:03 × rosco quits (~rosco@175.136.156.77) (Quit: Lost terminal)
20:09:16 × causal quits (~eric@50.35.85.7) (Quit: WeeChat 4.1.1)
20:10:23 eggplantade joins (~Eggplanta@2600:1700:38c5:d800:5014:5b74:113d:d036)
20:13:01 × Silver_X quits (~Silver_X@182.178.217.170) (Quit: Leaving)
20:17:37 × Lycurgus quits (~georg@user/Lycurgus) (Quit: leaving)
20:19:18 × fpstudent quits (~fpstudent@80.233.51.182) (Quit: Client closed)
20:32:31 wootehfoot joins (~wootehfoo@user/wootehfoot)
20:42:14 × trev quits (~trev@user/trev) (Quit: trev)
20:42:24 × benjaminl quits (~benjaminl@user/benjaminl) (Remote host closed the connection)
20:43:10 benjaminl joins (~benjaminl@user/benjaminl)
21:02:51 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
21:04:29 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:05:52 × vulpine quits (xfnw@tilde.team) (Quit: Connection reset by purr)
21:07:04 test11111 joins (~test11111@2001-8e0-21bb-6c00-6d9-f5ff-feac-7928.litex.ftth.ip6.as8758.net)
21:07:40 × test11111 quits (~test11111@2001-8e0-21bb-6c00-6d9-f5ff-feac-7928.litex.ftth.ip6.as8758.net) (Remote host closed the connection)
21:08:37 vulpine joins (~xfnw@tilde.team)
21:11:02 × Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving)
21:11:34 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
21:20:38 ulvarrefr joins (~user@188.124.56.153)
21:23:50 × tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
21:26:36 tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
21:33:50 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
21:35:53 <juri_> so, is hspec drunk, or am i going insane? i use a property test to find a testcase that breaks after 1 test (2 shrinks). great, i'll go the function that is throwing error, and try to make it dump in the first recursion, instead of the second. ok, success, it stops in the first recursion, rather than the second, in test case 1 (2 shrinks)... but... the random values are different. even tho i'm specifying a
21:35:59 <juri_> seed manually. when i stop on recursion 1, i get one set of random values, but when i stop on the second, i get a second set of random values. even tho both times, error is called after 1 test and 2 shrinks.
21:36:20 juri_ gives up, and writes a unit test.
21:36:43 <juri_> sooo close to being useful.
21:36:54 <juri_> missed it by ><.
21:48:44 ell joins (~ellie@user/ellie)
21:54:36 × coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
22:02:39 tremon joins (~tremon@83.80.159.219)
22:04:35 zetef joins (~quassel@5.2.182.98)
22:06:45 × zetef quits (~quassel@5.2.182.98) (Remote host closed the connection)
22:15:45 × igemnace quits (~ian@user/igemnace) (Read error: Connection reset by peer)
22:17:55 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
22:19:13 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
22:25:13 nicos joins (~nsm@2800:2131:5400:883:28f6:1624:5755:79b0)
22:25:28 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:28:52 × alexherbo2 quits (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net) (Remote host closed the connection)
22:29:11 alexherbo2 joins (~alexherbo@2a02-8440-3140-b89b-a08f-42e2-c7fb-39b2.rev.sfr.net)
22:33:07 igemnace joins (~ian@user/igemnace)
22:35:26 Lycurgus joins (~georg@user/Lycurgus)
22:36:00 lovasko joins (~lovasko@213.55.225.33)
22:37:56 <lovasko> hello - I am having trouble working out the types. I have a function that takes the MutableByteArray# as its argument, into which an FFI function is writing. To ensure non-deletion by GC, I need to wrap the FFI call with keepAlive#, presumably using the realWorld# state, or somehow extracting it from IO... my current version that does not work goes
22:37:57 <lovasko> something like this: ret <- keepAlive# array realWorld# (c_read array len)
22:38:01 <shapr> juri_: it's probably the shrinking code
22:38:05 × Lycurgus quits (~georg@user/Lycurgus) (Client Quit)
22:39:03 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
22:39:03 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
22:39:43 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
22:42:06 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
22:42:12 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
22:43:03 chiselfuse joins (~chiselfus@user/chiselfuse)
22:46:05 × nicos quits (~nsm@2800:2131:5400:883:28f6:1624:5755:79b0) (Ping timeout: 260 seconds)
22:48:18 × benjaminl quits (~benjaminl@user/benjaminl) (Remote host closed the connection)
22:49:06 benjaminl joins (~benjaminl@user/benjaminl)
22:51:28 RemiYuko is now known as AkechiShiro
22:52:10 nicos joins (~nsm@186.143.134.1)
22:57:17 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
22:58:09 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
23:05:13 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
23:15:01 × tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
23:16:47 tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
23:19:38 × nicos quits (~nsm@186.143.134.1) (Read error: Connection reset by peer)
23:22:22 nicos joins (~nsm@2800:2131:5400:883:28f6:1624:5755:79b0)
23:22:49 average joins (uid473595@user/average)
23:33:35 × remmie quits (ianremsen@tilde.team) (Ping timeout: 264 seconds)
23:34:02 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:37:37 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 264 seconds)
23:40:55 × tri quits (~tri@ool-18bc2e74.dyn.optonline.net) (Remote host closed the connection)
23:57:26 × lovasko quits (~lovasko@213.55.225.33) (Quit: Client closed)

All times are in UTC on 2024-01-26.