Home freenode/#haskell: Logs Calendar

Logs on 2021-02-06 (freenode/#haskell)

00:00:59 × finn_elija quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection)
00:01:18 finn_elija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
00:03:38 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
00:08:17 da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428)
00:10:20 × denisse quits (~spaceCat@gateway/tor-sasl/alephzer0) (Remote host closed the connection)
00:11:16 × Ranhir quits (~Ranhir@157.97.53.139) (Ping timeout: 258 seconds)
00:11:21 denisse joins (~spaceCat@gateway/tor-sasl/alephzer0)
00:13:56 × machinedgod quits (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 272 seconds)
00:14:41 blankhart joins (~blankhart@pool-100-8-71-205.nwrknj.fios.verizon.net)
00:15:38 Ranhir joins (~Ranhir@157.97.53.139)
00:17:11 <ph88^> does anyone know if it's possible to separate parts of the .stack cache ? thing is that in CI to cache this all takes a long time
00:17:43 <shiraeeshi> shapr: > shiraeeshi: you're back! found something neat you want to write?
00:18:32 <shiraeeshi> yeah, I monitor this channel (this channel is the most active one of all the channels I monitor now)
00:19:48 <shiraeeshi> I have no idea what to write, people who just write stuff without thinking much are lucky
00:20:06 <shiraeeshi> in the meantime I'm reading a book about monads
00:20:13 <johnw> a whole book about them?
00:20:14 <shiraeeshi> about to read about monad laws
00:20:24 <shiraeeshi> yeah
00:20:44 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
00:20:47 <shiraeeshi> but imho it's better then typical blog posts explaining monads
00:20:52 <johnw> if you stack two such books on top of each other, do they become one book about monads?
00:21:00 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 265 seconds)
00:21:05 <c_wraith> johnw: no, you need to stick one inside the other
00:21:19 <johnw> that's fair
00:21:38 <c_wraith> join $ Book (Book Monads)
00:22:02 <shiraeeshi> the inner book will be repeated between each pair of pages?
00:22:18 <johnw> And it makes sense: a book about a book about monads would also be a book about monads
00:22:51 × fendor_ quits (~fendor@178.165.131.204.wireless.dyn.drei.com) (Read error: Connection reset by peer)
00:22:53 <c_wraith> it's a very loose, handwavey sort of sense, but it's ok.
00:23:31 <shapr> shiraeeshi: I want to make a file duplicate finder
00:24:02 <shapr> but I specifically want to use software transactional memory and parallelism, and try out the new concurrent/parallel garbage collector.
00:24:23 <shapr> I'd enjoy that project.
00:24:35 <shapr> I always have too many project ideas.
00:24:35 <shiraeeshi> shapr: I imagine it would scan a specified directory and form an index of files and then search for duplicates in that index?
00:25:05 <shapr> yes, I think laziness could mean less work being required
00:26:00 <shapr> you only need to load file data until they're not equal, and then you can stop
00:26:12 <shiraeeshi> shapr: you're lucky, being able to come up with an idea - that's a gift, not anyone has it
00:27:01 <monochrom> haha johnw
00:28:17 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969) (Remote host closed the connection)
00:29:13 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
00:30:51 <nshepperd> if you have a procedure for turning monads into categories, can you take a book about monads and turn it into a book about categories?
00:31:18 × stef204 quits (~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 3.0)
00:31:37 <shiraeeshi> yes, if the book is a functor, right?
00:31:54 <johnw> right
00:32:09 <ph88^> shapr, what's your latest idea ?
00:32:34 × da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…)
00:35:29 heatsink joins (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969)
00:36:03 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
00:36:41 conal joins (~conal@64.71.133.70)
00:36:46 <shapr> ph88^: I want to build a visual bloom filter for process notification
00:37:17 <shapr> I have this process status LED board that turns yellow when a process is running, and red or green depending on the exit code
00:37:34 <shapr> It's 4 x 8 LEDs, it looks nice.
00:37:50 <shapr> But I don't have a way to display the state of more than one process at a time.
00:38:20 <shapr> I figured I could hash each command line into four pieces, and only change the status of those lights, bloom filter style.
00:40:05 × gabiruh quits (~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
00:42:23 gabiruh joins (~gabiruh@vps19177.publiccloud.com.br)
00:42:36 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
00:44:02 <ph88^> how does that look like a bloom filter led ?
00:44:48 <shapr> I use this to display process status: https://learn.adafruit.com/adafruit-neotrellis-m4?view=all
00:45:28 <shapr> and I use yellow for "in progress" and red for "non zero exit code" and green for "exit code zero"
00:46:09 <shapr> so I figure I could display and update the status of multiple processes by hashing the command line to get one bit of eight on each row
00:47:46 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
00:47:58 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-nfduencpjwoeibog) (Quit: Connection closed for inactivity)
00:48:35 <monochrom> This sounds like Mastermind but with process states.
00:48:45 × usr25 quits (~usr25@unaffiliated/usr25) (Ping timeout: 240 seconds)
00:48:51 <shapr> monochrom: yeh, close enough
00:49:55 <shapr> I don't see a bloom filter library on hackage that does eight bit hashes.
00:51:00 <nshepperd2> sounds fun. you could do a counting bloom filter but with a custom join lattice instead of numbers?
00:51:12 <shapr> nshepperd2: huh?
00:51:42 <shapr> oh, I'm starting to understand that
00:51:45 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
00:51:54 <shapr> but now I want more details
00:52:21 <shapr> If I used blue for "in progress" instead of yellow, then I'd have three independent outputs for each pixel
00:52:32 <dsal> I used to use my mac's caps lock light as a build failure indicator.
00:52:32 <shapr> then a counting bloom filter would work better, right?
00:52:49 <shapr> nshepperd2: can you explain the custom join lattice part?
00:53:25 <nshepperd2> you can have a lattice with four elements, like {in progress, success, failure, top}
00:53:29 × mouseghost quits (~draco@wikipedia/desperek) (Quit: mew wew)
00:53:43 <nshepperd2> with in progress -> {success, failure} -> top
00:55:02 <nshepperd2> and when you update a pixel with a new state, you update it with the join/max of its current state and the new state
00:55:48 <shapr> I think that would work
00:56:16 × nhs quits (~nhs@c-71-238-81-158.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
00:56:30 <shapr> This board also has an acceleromoter that's used as a tap sensor, so I'd be able to clear it after a bunch of pixels reached max
00:57:23 <shapr> hm, now that I think about it, I could fade the pixels over time
00:57:29 × forgottenone quits (~forgotten@176.42.26.20) (Remote host closed the connection)
00:59:16 <shapr> Writing Haskell code to make four 8 bit hashes of whatever input sounds like fun to me
00:59:19 <nshepperd2> yeah, that would work if you made it so the operation was just channelwise max
01:02:04 <shapr> I wrote some bloom filter code a few years ago, I wonder where I put it?
01:04:28 <shapr> Right now I have a shell script that scripts gnu screen to send color codes to the circuitpython script
01:05:04 <shapr> the code on the board is *really* simple https://gist.github.com/shapr/1b2c4951293d8a7521b977cbb63a4a64
01:05:20 <shapr> I wish I could fit Haskell onto a tiny ARM board
01:06:58 <monochrom> Hugs may fit.
01:07:34 <monochrom> Also, "Hugs is written in C so it is fast"
01:07:45 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
01:07:56 <shapr> Yes, of course :-)
01:08:26 <monochrom> Next time someone drivels with "C is strict therefore it is fast", remind me to reply:
01:08:36 <monochrom> "Hugs is written in C so it is strict and fast"
01:11:18 nineonin_ joins (~nineonine@50.216.62.2)
01:13:07 × aveltras quits (uid364989@gateway/web/irccloud.com/x-pjggritsgsigpqvj) (Quit: Connection closed for inactivity)
01:13:30 <shiraeeshi> I've read somewhere that foldr is preferable rather than foldl
01:13:56 <glguy> They do different things. It's best to just understand them both and pick the right one
01:14:00 <shiraeeshi> don't remember what language was concerned
01:14:14 <koz_> It depends heavily on what's being folded.
01:14:16 × nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 276 seconds)
01:14:27 <shiraeeshi> I don't get it: it sounds like foldl should be more preferred
01:14:54 <shiraeeshi> here is what I tried:
01:15:25 <shiraeeshi> foldr (+) 0 [1..1000000000000000000000000]
01:15:49 <shiraeeshi> gives "*** Exception: stack overflow" answer
01:16:03 <shiraeeshi> foldl (+) 0 [1..1000000000000000000000000]
01:16:29 <shiraeeshi> freezes and then gives "Killed" answer
01:16:43 metreo joins (~Thunderbi@unaffiliated/metreo)
01:16:47 metreo parts (~Thunderbi@unaffiliated/metreo) ()
01:16:49 × nineonin_ quits (~nineonine@50.216.62.2) (Ping timeout: 258 seconds)
01:16:52 <shiraeeshi> why did foldl freeze?
01:17:00 <glguy> Neither foldl nor foldr are good solutions to summing up 1000000000000000000000000 numbers
01:17:08 <koz_> :t sum
01:17:09 <lambdabot> (Foldable t, Num a) => t a -> a
01:17:15 <koz_> _That_ is what you should prefer.
01:17:22 da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428)
01:17:25 <shiraeeshi> but why did it freeze?
01:17:34 <shapr> I suspect it was getting to the end of the list.
01:17:45 <shapr> > sum [1..1000000000000000000000000]
01:17:51 <lambdabot> mueval-core: Time limit exceeded
01:17:54 <shapr> oh well
01:17:56 <koz_> LOL
01:18:20 <glguy> 1000000000000000000000000 is too big to worry about ever getting to the end of the list
01:18:38 × ClaudiusMaximus quits (~claude@unaffiliated/claudiusmaximus) (Quit: ...zzzZZZ)
01:18:58 <glguy> > logBase 2 1000000000000000000000000
01:19:00 <lambdabot> 79.7262742772967
01:19:02 <shiraeeshi> so the reason is just that it takes too long?
01:19:36 <shiraeeshi> my intution was that it works like a loop
01:20:14 <shapr> @src foldr
01:20:14 <lambdabot> foldr f z [] = z
01:20:14 <lambdabot> foldr f z (x:xs) = f x (foldr f z xs)
01:20:32 <shiraeeshi> but I heard in this channel that haskell doesn't use call stacks, so I don't know if my intuition is right anymore.
01:20:32 <shapr> @src foldl
01:20:32 <lambdabot> foldl f z [] = z
01:20:32 <lambdabot> foldl f z (x:xs) = foldl f (f z x) xs
01:20:58 alx741 joins (~alx741@186.178.110.176)
01:21:15 <monochrom> There is, instead, an "evaluation stack".
01:21:37 <glguy> for summing a list, foldl' is preferred over foldl or foldr, on that particular topic
01:21:50 <monochrom> But I refuse to make a big fuss about the different name because it still acts like a call stack.
01:22:46 <koz_> monochrom: Duck stack.
01:23:02 <monochrom> If you have "3 + 4 * f x" then while you dive deep to work on the "f x" part, there is a stack to remember "you still have to 4* afterwards, and then you still have to 3+ afterwards". So it is still a call stack.
01:24:27 <monochrom> Lazy evaluation doesn't change the fact that you have a stack and it can grow, it just changes what goes there. And since Haskell still has an eager part, when you hit an eager subexpression the stack becomes a call stack.
01:24:43 <shiraeeshi> sounds like foldl is preferable over foldr, because it doesn't grow the call stack then.
01:25:46 <dsal> I use foldr most of the time.
01:26:06 <glguy> shiraeeshi, it'll still be more useful to understand the difference than to guess at a general rule
01:26:25 <dolio> foldl is never preferable to anything, I think.
01:26:38 <dsal> (well, trying to avoid that detail)
01:27:00 xsperry joins (~as@unaffiliated/xsperry)
01:27:09 <dsal> But for the exact problem above, there's no appropriate loop to compute the sum of 1..1000000000000000000000000
01:27:16 <monochrom> I am actually bivalent on this, to be honest.
01:27:21 × wz1000 quits (~wz1000@static.11.113.47.78.clients.your-server.de) (Ping timeout: 246 seconds)
01:27:50 <glguy> dolio, if you were going to foldr of reverse I'd think you might as well foldl
01:27:55 <monochrom> Sometimes, I talk of a stack, and I don't care whether you prefix it with "call" or "eval".
01:28:12 <monochrom> The other times, I don't even want you to think in terms of any stack.
01:29:13 <monochrom> foldl (+) 0, as opposed to foldl' (+) 0, takes linear space because it builds up the unevaluated data structure "a+b+c+d+..." and then, only then, evaluates it.
01:29:24 <dolio> glguy: I don't know, maybe. There probably isn't a good reason to not use foldl' in that case.
01:29:51 <monochrom> This is enough to explain why it takes linear space, I don't care how that linear space is partitioned into heap and stack. No one should care.
01:29:56 <glguy> dolio, there are about as many times you'd benefit from the laziness in that case as with normal foldr
01:30:20 <shapr> I'm still running that sum on my laptop, but it's using 120GB of memory. I'm curious how this will end.
01:30:54 <dolio> > 1000000000000000000000000 :: Double
01:30:56 <lambdabot> 1.0e24
01:31:02 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969) (Remote host closed the connection)
01:31:09 <monochrom> On the other hand, foldr (&&) whatever (False : whatever) takes O(1) time (therefore O(1) space), you can hand-do lazy evaluation to see this. Again, you don't need to ask about stack.
01:31:22 <dolio> shapr: I think it might not end until after you're dead.
01:31:35 <glguy> I maintain that it's such a fundamental concept to programming in Haskell that one should expect to just understand the choice rather than guessing at rules
01:32:59 <shapr> uh oh, it's hit 200GB of memory and is now into my swapfile
01:33:00 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0)
01:33:16 <shapr> ok, I give up
01:33:16 <monochrom> shapr is the only one in #haskell that can use 120GB RAM :)
01:33:20 <dolio> Oh, it's using memory? Then it will finish.
01:33:29 <shapr> dolio: nah, it hit swap
01:33:33 <monochrom> onoes, if shapr gives up, there is no hope. :)
01:33:53 <shapr> :-P
01:34:06 <monochrom> Yeah dolio, shapr's laptop has like 128GB RAM (and I forgot how many cores, but >=64)
01:34:11 <monochrom> "laptop"
01:34:14 <shapr> Sadly, I haven't yet found a laptop that offers 256GB RAM
01:34:22 <monochrom> or more clearly, "some laptop there"
01:34:24 <shapr> I only have six Xeon cores :-P
01:34:32 <monochrom> Ah OK!
01:34:38 <shapr> and very little battery life
01:35:27 <shapr> shiraeeshi: I agree with glguy, it's best to understand the difference
01:35:46 <dsal> How do I get one of these datacenter laptops?
01:35:51 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
01:36:25 <monochrom> This is my lazy evaluation lecture notes for my students: http://www.cs.utoronto.ca/~trebla/CSCC24-2020-Summer/03-haskell-evaluation.html
01:36:47 <shapr> dsal: they don't sell the P52 anymore, but the P15 offers an 8 core Xeon and 128GB ECC memory. It's more expensive than this P52 though.
01:37:15 <shiraeeshi> shapr: what function did you use to compute the sum?
01:37:25 <monochrom> You are really better off biting the bullet and learning lazy evaluation properly than hoping for fragile "rules of thumb" "best practice".
01:37:58 <shiraeeshi> so if foldl was to reach the end of the list it would give me the "stack overflow" error?
01:38:06 <shiraeeshi> what about foldl' ?
01:38:12 × DirefulSalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection)
01:39:40 <dsal> shiraeeshi: https://en.wikipedia.org/wiki/1_%2B_2_%2B_3_%2B_4_%2B_%E2%8B%AF
01:39:50 <shiraeeshi> if you were to write a simple loop it would run without eating all the memory, is there a way to translate it to haskell? I guess it's foldl'
01:40:34 <shapr> oops: [161261.200467] Out of memory: Killed process 11887 (ghc) total-vm:1074482392kB, anon-rss:127413672kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:506432kB oom_score_adj:0
01:40:34 <dsal> I think your question is wrong.
01:41:11 <dsal> There are lots of different loops that we use for different reasons. None of them are used to solve the problem you're stating. That's not a language issue, just... computer can't do that.
01:41:27 × troydm quits (~troydm@unaffiliated/troydm) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset)
01:43:06 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
01:43:13 × hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
01:44:19 <shiraeeshi> I have a stupid question
01:44:32 <shiraeeshi> why can't computer do that?
01:44:35 <shapr> shiraeeshi: you could consume a lazy list
01:44:37 hexfive joins (~hexfive@50.35.83.177)
01:45:02 <shiraeeshi> you need to store two numbers, right?
01:45:29 <dsal> shiraeeshi: If you measure how long it takes to do one bignum addition, and then multiply that by the number of additions you're asking the computer to do, you'll understand the approach *can't* work.
01:46:07 <monochrom> At some point a mature programmer understands this: A computer won't do anything at all until someone codes up what exactly to do.
01:46:14 troydm joins (~troydm@unaffiliated/troydm)
01:46:55 nbloomf joins (~nbloomf@2600:1700:ad14:3020:c49d:6696:ab31:6d0c)
01:47:29 <shiraeeshi> I need to rephrase the question: why did the computation take all the memory on shapr's computer?
01:47:38 <monochrom> In the particular case of recognizing 1+...+n = n(n+1)/2, please refer to Mathematica.
01:48:04 <shiraeeshi> two numbers took all the memory?
01:48:06 heatsink joins (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969)
01:48:11 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
01:48:52 <dsal> I'm not sure what shapr was doing exactly. It shouldn't take much memory, but I can't promise humans won't be extinct by the time it finishes.
01:49:49 <dsal> Oh, just sum in ghci? There are a few reasons that could use a lot of memory.
01:50:18 <dsal> But there's no situation where it works, so failing unexpectedly vs. the way you expect it to fail is only mildly interesting. :)
01:50:23 jedws joins (~jedws@101.184.202.248)
01:51:22 <monochrom> A mature computer science student also understand that a short problem statement can still take arbitrarily much time and space to solve.
01:51:25 <shiraeeshi> here is an article I was talking about: https://wiki.haskell.org/Foldr_Foldl_Foldl%27
01:51:42 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
01:51:55 brainfunnel parts (~quassel@224.142.208.46.dyn.plus.net) ("thanks, bye!")
01:52:11 <shiraeeshi> I don't get this part:
01:52:13 <shiraeeshi> foldr is not only the right fold, it is also most commonly the right fold to use, in particular when transforming lists (or other foldables) into lists with related elements in the same order. Notably, foldr will be effective for transforming even infinite lists into other infinite lists. For such purposes, it should be your first and most natural choice. For example, note that foldr (:) []==id.
01:52:23 <shiraeeshi> Note that the initial element is irrelevant when foldr is applied to an infinite list. For that reason, it is may be good practice when writing a function which should only be applied to infinite lists to replace foldr f [] with foldr f undefined. This both documents that the function should only be applied to infinite lists and will result in an error when you try to apply it to a finite list.
01:53:07 <monochrom> It means you would be wise to use foldr, not foldl or foldl', for "map" for example. map f = foldr (\x r -> f x : r) [].
01:53:13 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
01:53:30 <dsal> Hmm... I tend to reach for undefined mostly when I'm mad at myself and want to cause problems in my future.
01:53:35 <monochrom> I mean look at the "transforming lists into lists"
01:53:42 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
01:54:23 × borne quits (~fritjof@2a06:8782:ffbb:1337:a53:e188:6f13:d1a) (Ping timeout: 258 seconds)
01:54:41 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
01:55:11 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
01:57:14 <shiraeeshi> but why foldr if it grows the call stack? and also I don't get the part about infinite lists. an infinite list goes from left to right, doesn't it? so going from left to right (like foldl or foldl') sounds like a right thing to do.
01:57:17 <monochrom> But it doesn't show an example that shows you the benefit of that.
01:57:38 <monochrom> E.g., how "head (map f longlonglist)" takes O(1) time.
01:57:52 <monochrom> This is why I refer people to my lecture notes instead.
01:58:06 <dolio> I kind of convinced myself the other day that "call stack" is always wrong, because it primes you to think that calls need to use stack. But you only need to use stack to return back after the call is done, which isn't always the case.
01:58:36 × thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 258 seconds)
01:59:01 <monochrom> I have accepted that "call stack" is a wrong name we're stuck with.
01:59:08 <dolio> :)
01:59:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
01:59:31 <monochrom> It belongs to the same bin as "dashboard" for example.
02:00:31 <monochrom> There is no longer a board, and dash is blocked by the windshield not the dashboard, so it is like the Ship of Theseus for etymology.
02:01:10 <shiraeeshi> I think I'm starting to understand.
02:01:31 <shiraeeshi> Let's take two expressions for example:
02:01:41 <shiraeeshi> 1 + (2 + (3 + (...)))
02:01:43 <shiraeeshi> and
02:01:44 <monochrom> But if we keep saying "dashboard" I guess we can also keep saying "call stack". May one day it is no longer about calls and it is no longer a stack.
02:01:45 <shiraeeshi> (((0 + 1) + 2) + 3) + ...
02:02:03 <monochrom> Oh, and Holy Roman Empire, clearly. :)
02:02:25 <shiraeeshi> so each opening and closing parens mean something
02:02:42 × carlomagno1 quits (~cararell@148.87.23.7) (Ping timeout: 246 seconds)
02:02:57 <dolio> Anyhow, "call stack" makes people think tail calls not using stack is an optimization, rather than tail calls using optimization an example of poorly implementing the continuation. :)
02:03:09 <monochrom> At any rate, GHC uses the name HasCallStack so you can't get rid of it now. :)
02:03:12 <dolio> Er, tail calls using stack.
02:03:19 <shiraeeshi> with an infinitite list you got infinite amount of opening parens at the beginning of your expression, so it won't run, right?
02:03:52 <nshepperd2> foldr vs foldl is not about whether it goes from left to right or right to left
02:03:58 <monochrom> "it won't run" takes zero time.
02:04:25 <monochrom> If it takes more than a minute then it runs, in fact it runs too happily to want to stop.
02:04:26 <shiraeeshi> ok, it will do something with those infinite amount of opening parens
02:04:46 <shiraeeshi> that's foldl
02:05:00 <monochrom> Unless you fire up htop and point out that the OS has put it to sleep.
02:05:01 carlomagno joins (~cararell@148.87.23.7)
02:05:26 <monochrom> in which case we look for a prince to kiss it
02:05:48 <nshepperd2> but yes, you're basically right
02:06:49 rople joins (~rople@2001:8003:d44b:300:ac2a:fb0f:6f96:d286)
02:07:13 <shiraeeshi> wait, what's the point of running fold on an infinite list again?
02:07:18 <nshepperd2> foldl of an infinite list denotes an expression like (...(((0 + 1) + 2) + 3) + ...
02:07:41 <monochrom> Oh, sum [1..] is pointless, sure, foldr or foldl
02:08:17 <nshepperd2> an infinite expression with no 'outside' to start evaluating, so it never gets anywhere useful
02:08:24 <monochrom> Unless someone needs to keep pizza warm.
02:08:45 <monochrom> But (+) is hardly the one binary operator.
02:09:17 <shiraeeshi> how do you transform an infinite list into another infinite list using foldr?
02:09:30 <monochrom> This is what's wrong with most explanations of foldr and foldl. They only talk about (+). Yes they're completely pointless. The explanations I mean.
02:09:51 <monochrom> You have seen two examples already.
02:09:52 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
02:09:53 <dsal> shiraeeshi: I probably wouldn't. What kind of transform are you performing?
02:10:01 <c_wraith> > foldr (\c xs -> if c == ' ' && null xs then [] else c:xs) [] "hello there "
02:10:04 <lambdabot> "hello there"
02:10:06 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds)
02:10:17 <c_wraith> > foldr (\c xs -> if c == ' ' && null xs then [] else c:xs) [] (cycle "hello there ")
02:10:18 <lambdabot> "hello there hello there hello there hello there hello there hello there hel...
02:10:43 <nshepperd2> shiraeeshi: foldr (:) [] is the most trivial example
02:12:46 <shiraeeshi> dsal: I'm referring to an article. it says: "Notably, foldr will be effective for transforming even infinite lists into other infinite lists."
02:13:22 <shiraeeshi> I'm trying to understand examples
02:13:55 <monochrom> > head (foldr (:) [] [1..])
02:13:57 <lambdabot> 1
02:14:04 <monochrom> This takes O(1) time.
02:14:07 <monochrom> Sleep on it.
02:14:16 conal joins (~conal@64.71.133.70)
02:14:40 <monochrom> Destroy all mental models that insist "foldr starts from the right".
02:15:05 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
02:16:17 <shiraeeshi> ok, I'm gonna experiment with this example
02:16:47 <dsal> shiraeeshi: Do you understand how something like `map` can work on infinite lists?
02:17:05 × drdo quits (~drdo@overlord0.drdo.eu) (Remote host closed the connection)
02:17:22 × qwerty2o quits (~qwerty2o@89-138-173-138.bb.netvision.net.il) (Ping timeout: 256 seconds)
02:17:28 drdo joins (~drdo@overlord0.drdo.eu)
02:17:45 × elfets_ quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 246 seconds)
02:18:26 <dsal> > let mope f = foldr (\x o -> f x : o) [] in takeWhile (<100) $ mope (*11) [2..] -- because you can write map in terms of foldr, and then use that on infinite lists, shiraeeshi
02:18:27 × elliott_ quits (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 246 seconds)
02:18:28 <lambdabot> [22,33,44,55,66,77,88,99]
02:19:12 <shiraeeshi> yes, map case I can understand and imagine
02:20:23 <monochrom> map is a foldr. I showed how.
02:20:24 <dsal> Oh. Well there's an implementation of map written using foldr. :)
02:20:37 × conal quits (~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
02:21:18 <monochrom> Hell, dsal showed it for the second time just now.
02:22:00 × chenshen quits (~chenshen@2620:10d:c090:400::5:ccd9) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
02:22:10 <dsal> I think there were like, four examples of that. heh. Just seems like an upside-down question to me.
02:25:07 <monochrom> Students also ask "I want to do && on a long list, and I want it to stop early, i.e., stop as soon as it hits the first False". That's foldr (&&)
02:25:12 <c_wraith> really, foldr captures the entire pattern of "(co-)recursively process an entire list"
02:25:19 <monochrom> This breaks a lot of mental models.
02:26:02 <shiraeeshi> I confused (:) with (,) and was expecting pairs to show up
02:26:05 <monochrom> And for those surviving mental models, most can then be broken by how liftA2 (&&) doesn't stop early (e.g., for IO)
02:26:58 × xff0x_ quits (~xff0x@2001:1a81:520c:9300:d376:a5ba:ccb8:29d) (Ping timeout: 258 seconds)
02:27:01 <monochrom> A common Schemer mistake. (All of the above.)
02:28:03 <monochrom> err, s/liftA2 (&&)/foldr (liftA2 (&&))/
02:28:59 xff0x_ joins (~xff0x@2001:1a81:5242:aa00:d06a:cbda:3c0c:5e4)
02:30:14 jamm_ joins (~jamm@unaffiliated/jamm)
02:30:20 conal joins (~conal@64.71.133.70)
02:30:52 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
02:34:50 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds)
02:37:01 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 268 seconds)
02:38:11 qwerty2o joins (~qwerty2o@89-138-173-138.bb.netvision.net.il)
02:41:22 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
02:43:41 jamm_ joins (~jamm@unaffiliated/jamm)
02:48:38 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds)
02:49:38 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
02:54:09 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds)
02:54:34 × conal quits (~conal@64.71.133.70) (Ping timeout: 258 seconds)
02:56:05 × qwerty2o quits (~qwerty2o@89-138-173-138.bb.netvision.net.il) (Ping timeout: 240 seconds)
03:02:11 conal joins (~conal@66.115.157.91)
03:04:16 × haritz quits (~hrtz@unaffiliated/haritz) (Ping timeout: 240 seconds)
03:08:33 haritz joins (~hrtz@62.3.70.206)
03:08:33 × haritz quits (~hrtz@62.3.70.206) (Changing host)
03:08:33 haritz joins (~hrtz@unaffiliated/haritz)
03:09:25 × theDon quits (~td@muedsl-82-207-238-211.citykom.de) (Ping timeout: 240 seconds)
03:11:16 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
03:11:38 theDon joins (~td@94.134.91.40)
03:14:37 elliott_ joins (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net)
03:22:16 elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
03:22:47 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
03:29:26 × Guest65369 quits (~textual@zrcout.mskcc.org) (Ping timeout: 264 seconds)
03:32:25 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
03:32:55 Alleria joins (~textual@mskresolve-a.mskcc.org)
03:33:18 Alleria is now known as Guest12658
03:35:25 × elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
03:36:33 FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
03:36:33 finn_elija is now known as Guest99275
03:36:33 FinnElija is now known as finn_elija
03:37:51 × jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:39:55 × Guest99275 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 268 seconds)
03:43:45 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
03:44:00 jedws joins (~jedws@101.184.202.248)
03:44:55 hackage box-tuples 0.2.0.4 - A hack to use GHC.Prim primitives in GHCi https://hackage.haskell.org/package/box-tuples-0.2.0.4 (mniip)
03:47:34 × Aquazi quits (uid312403@gateway/web/irccloud.com/x-vpvehxcmwssmnbeh) (Quit: Connection closed for inactivity)
03:48:02 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds)
03:50:25 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:c49d:6696:ab31:6d0c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
03:52:31 × elliott_ quits (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) (Read error: Connection reset by peer)
03:57:25 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
03:57:48 nbloomf joins (~nbloomf@2600:1700:ad14:3020:c13e:51b6:ce38:d5cb)
03:58:02 elliott_ joins (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net)
03:59:44 × guest7682358928 quits (a8c4c9de@gateway/web/cgi-irc/kiwiirc.com/ip.168.196.201.222) (Ping timeout: 258 seconds)
03:59:46 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
03:59:59 × vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
04:00:59 dyeplexer joins (~lol@unaffiliated/terpin)
04:01:05 vicfred joins (vicfred@gateway/vpn/mullvad/vicfred)
04:03:57 × m0rphism1 quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 258 seconds)
04:04:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
04:04:50 × paintcan` quits (~user@cpe-69-206-241-99.nyc.res.rr.com) (Remote host closed the connection)
04:06:28 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
04:08:48 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0)
04:11:37 loli joins (~loli@024-171-017-003.res.spectrum.com)
04:13:36 × fissureman quits (~quassel@c-73-163-84-25.hsd1.dc.comcast.net) (Ping timeout: 246 seconds)
04:14:01 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
04:14:12 fissureman joins (~quassel@c-73-163-84-25.hsd1.dc.comcast.net)
04:15:45 chenshen joins (~chenshen@2620:10d:c090:400::5:1dfb)
04:19:56 × sudden quits (~lax@unaffiliated/laxask) (Ping timeout: 240 seconds)
04:20:52 sudden joins (~lax@unaffiliated/laxask)
04:26:52 × soft-warm quits (4408f588@ip68-8-245-136.sd.sd.cox.net) (Quit: Connection closed)
04:27:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
04:30:26 × clog quits (~nef@bespin.org) (Ping timeout: 272 seconds)
04:31:05 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
04:32:36 × Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007)
04:34:53 × thongpv87 quits (~thongpv87@103.6.151.121) (Quit: Lost terminal)
04:36:26 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0)
04:37:30 loli joins (~loli@024-171-017-003.res.spectrum.com)
04:37:52 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
04:40:16 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
04:40:35 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Client Quit)
04:41:10 loli joins (~loli@024-171-017-003.res.spectrum.com)
04:42:14 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Client Quit)
04:42:55 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 276 seconds)
04:43:08 ramakrishna joins (~ramakrish@49.207.209.98)
04:44:15 loli joins (~loli@024-171-017-003.res.spectrum.com)
04:44:27 toorevitimirp joins (~tooreviti@117.182.180.8)
04:45:23 × raym quits (~ray@45.64.220.139) (Quit: leaving)
04:45:44 raym joins (~ray@45.64.220.139)
04:47:11 ark__ joins (~ark@49.207.209.98)
04:47:26 × ark__ quits (~ark@49.207.209.98) (Client Quit)
04:47:40 × ramakrishna quits (~ramakrish@49.207.209.98) (Client Quit)
04:57:26 irchaxwell joins (~IRC@2a00:23a8:4382:a900:a5ea:eb26:ed91:a1c3)
04:58:01 × chenshen quits (~chenshen@2620:10d:c090:400::5:1dfb) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
05:01:25 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
05:07:50 chenshen joins (~chenshen@2620:10d:c090:400::5:1dfb)
05:08:59 × chenshen quits (~chenshen@2620:10d:c090:400::5:1dfb) (Client Quit)
05:11:00 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
05:12:29 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
05:17:27 chenshen joins (~chenshen@2620:10d:c090:400::5:1dfb)
05:19:04 × chenshen quits (~chenshen@2620:10d:c090:400::5:1dfb) (Client Quit)
05:23:14 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
05:25:34 × hololeap quits (~hololeap@unaffiliated/hololeap) (Quit: KVIrc 5.0.1 Aria http://www.kvirc.net/)
05:25:56 unlink_ joins (~unlink2@p200300ebcf241100fcf67590445edc70.dip0.t-ipconnect.de)
05:26:33 drbean joins (~drbean@TC210-63-209-34.static.apol.com.tw)
05:26:44 MasseR5 joins (~MasseR@51.15.143.128)
05:26:45 Katarushisu7 joins (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net)
05:27:27 Saukk joins (~Saukk@83-148-239-3.dynamic.lounea.fi)
05:27:42 Athas_ joins (athas@2a01:7c8:aaac:1cf:2650:6cc9:39f1:f264)
05:27:56 evanjs- joins (~evanjs@075-129-098-007.res.spectrum.com)
05:28:08 × evanjs quits (~evanjs@075-129-098-007.res.spectrum.com) (Ping timeout: 276 seconds)
05:28:08 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 276 seconds)
05:28:08 × Athas quits (athas@sigkill.dk) (Ping timeout: 276 seconds)
05:28:08 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 276 seconds)
05:28:12 __minoru__shirae joins (~shiraeesh@109.166.56.99)
05:28:25 × xsperry quits (~as@unaffiliated/xsperry) (Ping timeout: 276 seconds)
05:28:25 × puffnfresh quits (~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net) (Ping timeout: 276 seconds)
05:28:25 × Ishutin quits (~Ishutin@92-249-182-126.pool.digikabel.hu) (Ping timeout: 276 seconds)
05:28:25 × Jesin quits (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Ping timeout: 276 seconds)
05:28:25 × voidcontext quits (~pgee@178.62.100.221) (Ping timeout: 276 seconds)
05:28:33 voidcontext joins (~pgee@178.62.100.221)
05:28:33 Ishutin joins (~Ishutin@92-249-182-126.pool.digikabel.hu)
05:28:35 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
05:28:49 puffnfresh joins (~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net)
05:28:49 Jesin joins (~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
05:28:49 Tario joins (~Tario@201.192.165.173)
05:29:04 × fissureman quits (~quassel@c-73-163-84-25.hsd1.dc.comcast.net) (Ping timeout: 276 seconds)
05:29:04 × Katarushisu quits (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Ping timeout: 276 seconds)
05:29:04 × MasseR quits (~MasseR@51.15.143.128) (Ping timeout: 276 seconds)
05:29:04 × unlink2 quits (~unlink2@p57b85146.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
05:29:04 × Natch quits (~Natch@c-b471e255.014-297-73746f25.bbcust.telenor.se) (Ping timeout: 276 seconds)
05:29:04 × okad quits (~okad@ec2-18-135-78-237.eu-west-2.compute.amazonaws.com) (Ping timeout: 276 seconds)
05:29:04 Katarushisu7 is now known as Katarushisu
05:29:05 MasseR5 is now known as MasseR
05:29:19 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
05:29:21 fissureman joins (~quassel@c-73-163-84-25.hsd1.dc.comcast.net)
05:29:28 okad joins (~okad@ec2-18-135-78-237.eu-west-2.compute.amazonaws.com)
05:29:33 Narinas joins (~Narinas@189.223.62.254.dsl.dyn.telnor.net)
05:29:59 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
05:30:13 Narinas joins (~Narinas@189.223.62.254.dsl.dyn.telnor.net)
05:30:52 chenshen joins (~chenshen@2620:10d:c090:400::5:1dfb)
05:31:02 × urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna)
05:31:18 × Alleria_ quits (~AllahuAkb@69.202.254.168) (Ping timeout: 246 seconds)
05:31:33 Natch joins (~Natch@c-b471e255.014-297-73746f25.bbcust.telenor.se)
05:31:57 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
05:32:16 × mnrmnaugh quits (~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 240 seconds)
05:32:19 × shiraeeshi quits (~shiraeesh@109.166.56.99) (Ping timeout: 276 seconds)
05:32:29 × chenshen quits (~chenshen@2620:10d:c090:400::5:1dfb) (Client Quit)
05:33:45 Alleria_ joins (~AllahuAkb@2603-7000-3040-0000-9d6c-31c0-dc2f-631d.res6.spectrum.com)
05:35:08 mnrmnaugh joins (~mnrmnaugh@unaffiliated/mnrmnaugh)
05:35:41 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0)
05:36:03 chenshen joins (~chenshen@2620:10d:c090:400::5:1dfb)
05:36:16 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
05:36:16 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
05:37:37 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:c13e:51b6:ce38:d5cb) (Quit: My MacBook has gone to sleep. ZZZzzz…)
05:38:24 loli joins (~loli@024-171-017-003.res.spectrum.com)
05:39:01 × conal quits (~conal@66.115.157.91) (Quit: Computer has gone to sleep.)
05:39:44 conal joins (~conal@66.115.157.91)
05:40:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
05:41:12 <johnw> c_wraith: why do you say "co" there?
05:42:41 × conal quits (~conal@66.115.157.91) (Client Quit)
05:43:56 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
05:45:15 ericsagn1 joins (~ericsagne@2405:6580:0:5100:6d02:546e:c760:4274)
05:45:51 × haritz quits (~hrtz@unaffiliated/haritz) (Ping timeout: 256 seconds)
05:46:21 haritz joins (~hrtz@62.3.70.206)
05:46:21 × haritz quits (~hrtz@62.3.70.206) (Changing host)
05:46:21 haritz joins (~hrtz@unaffiliated/haritz)
05:47:22 <c_wraith> johnw: technically, I said "(co-)", because foldr can work either way. As for the difference - co-recursion is just a different thing than recursion. it doesn't require a base case, but it does require a pattern of guarded access.
05:48:38 × ericsagnes quits (~ericsagne@2405:6580:0:5100:2bad:a6b1:9f59:3808) (Ping timeout: 264 seconds)
05:49:05 <johnw> when I think of corecursion, I think of unfoldr
05:49:17 <c_wraith> foldr (:) [] is co-recursive
05:49:43 <johnw> how so?
05:50:13 × __minoru__shirae quits (~shiraeesh@109.166.56.99) (Ping timeout: 272 seconds)
05:50:55 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
05:50:57 <c_wraith> well, it works with infinite inputs.
05:51:10 <johnw> per Wikipedia: "Corecursion is then a technique for recursively defining functions whose range (codomain) is a final data type, dual to the way that ordinary recursion recursively defines functions whose domain is an initial data type."
05:51:13 <c_wraith> Note: recursion is *required* to be well-founded
05:51:18 <johnw> so I think you're right, it can be used in both contexts
05:52:08 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 272 seconds)
05:52:18 <dolio> foldr is always recursion, really.
05:52:34 <c_wraith> yep. Haskell is extremely sloppy with the difference between recursion and co-recursion
05:52:44 <c_wraith> You can easily write things that work either way
05:52:55 <johnw> dolio: please say more
05:53:42 <johnw> it's always recursive because it only ever deconstructs a data type recursively, regardless of the fact that that data may be infinite?
05:53:43 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
05:53:43 <c_wraith> foldr is always recursion if [] is always data.
05:54:11 <c_wraith> but, once again - Haskell is sloppy. [] can be treated as codata
05:54:29 Narinas joins (~Narinas@189.223.62.254.dsl.dyn.telnor.net)
05:54:33 <dolio> It's a recursive definition on lists. The result type is abstract, so it's not really being defined in terms of some co-recursive structure of it.
05:55:11 <dolio> In unfoldr the result type is not abstract, hence being associated with corecursion.
05:56:30 <dolio> If you wrote a function where both the argument and result types were concrete, it would make more sense to have a choice of 'justifications'.
05:57:32 <johnw> thanks dolio
05:57:32 <c_wraith> so you'd agree foldr (:) [] is corecursive?
05:58:40 <dolio> Also, recursion may not have base cases. For instance, you can define an empty type as a W-type with no base case, and then the proof of 'absurd' or whatever you want to call it is recursion with no base case.
06:00:02 × Alleria_ quits (~AllahuAkb@2603-7000-3040-0000-9d6c-31c0-dc2f-631d.res6.spectrum.com) (Ping timeout: 264 seconds)
06:01:28 <dolio> If you wrote the identity function that rebuilt its input, I would agree you could look at the definition either recursively or corecursively. But I think foldr is a recursive definition, not corecursive. Applying the function to arguments doesn't change that.
06:02:28 × bitmapper quits (uid464869@gateway/web/irccloud.com/x-ualbkaikcrbbwtmy) (Quit: Connection closed for inactivity)
06:02:30 <c_wraith> so you are rejecting equational reasoning? :P
06:03:05 <dolio> Classifying things as recursive definitions isn't equational.
06:03:31 <c_wraith> It's the same definition, modulo some inlining
06:04:17 × Anandamide quits (49a90352@c-73-169-3-82.hsd1.co.comcast.net) (Quit: Connection closed)
06:05:11 ixaxaar joins (~ixaxaar@49.207.210.215)
06:08:07 <dolio> Agda doesn't let you write fold on infinite streams, then say it's okay if you call the function with arguments to build a new stream, even if inlining those arguments would make the definition guarded. The definition gets classified on its own.
06:08:40 <c_wraith> that's only an argument in favor of Haskell being super-sloppy
06:11:10 <dolio> It's not sloppy, though, it just uses different semantics. foldr is a recursive definition on an inductively defined domain, rather than a set.
06:11:41 <monochrom> I am more sloppy than Haskell. In front of undergrad students who don't really benefit from more words they can't use, I say "recursion" for every self-reference.
06:12:34 × glguy quits (x@freenode/staff/haskell.developer.glguy) (Quit: Quit)
06:12:58 <c_wraith> on an entirely different subject - when did ghc start requiring the libnuma headers in order to link libraries?
06:13:19 glguy joins (x@freenode/staff/haskell.developer.glguy)
06:13:30 <dolio> It's also coinductively defined, because those are the same for domains. But foldr doesn't use the coinductive character of lists.
06:13:53 <monochrom> Oh, that. If you use ghcup you're more likely to get a build that doesn't requires libnuma.
06:14:02 <c_wraith> I am indeed
06:14:22 <c_wraith> err. I misread that. But I am using ghcup
06:14:30 <c_wraith> but on wsl, so things might be treated oddly
06:15:57 × peeja quits (~peeja@s91904426.blix.com) (Remote host closed the connection)
06:16:37 <monochrom> "WSL" still depends on which linux you chose for WSL. But last year I was on WSL Ubuntu and didn't need libnuma.
06:17:42 jonathanx joins (~jonathan@h-176-109.A357.priv.bahnhof.se)
06:18:23 <monochrom> When ghcup thinks you're on Ubuntu it chooses the Fedora build, which doesn't involve libnuma up to and including 8.8.4. I once got bit by libnuma but that was before ghcup and I chose a debian build from GHC website.
06:18:25 takuan joins (~takuan@178-116-218-225.access.telenet.be)
06:18:32 × rople quits (~rople@2001:8003:d44b:300:ac2a:fb0f:6f96:d286) (Ping timeout: 260 seconds)
06:18:58 <c_wraith> Oh. I guess it thinks I'm on Debian, because... I'm on debian. Because snaps were annoying me a ton
06:19:43 <monochrom> OK, I meant libnuma-dev throughout. libnuma1 is required by a lot of other Ubuntu stuff anyway, like irqbalance.
06:21:01 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
06:25:25 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
06:26:16 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
06:26:16 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
06:26:30 acidjnk_new joins (~acidjnk@pd9e0b9a8.dip0.t-ipconnect.de)
06:26:30 Narinas joins (~Narinas@189.223.62.254.dsl.dyn.telnor.net)
06:27:36 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 272 seconds)
06:27:42 __minoru__shirae joins (~shiraeesh@46.34.207.200)
06:28:24 rayyyy joins (~nanoz@gateway/tor-sasl/nanoz)
06:30:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
06:34:56 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
06:37:06 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
06:38:00 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
06:42:51 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
06:43:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
06:47:25 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
06:52:12 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969) (Remote host closed the connection)
06:52:18 jamm_ joins (~jamm@unaffiliated/jamm)
06:52:24 EtherealStreet joins (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net)
06:54:22 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
06:55:38 <texasmynsted> Is there a "typical" place to cabal install an executable when you want it installed in the project directory rather than more global location? Like 'target' directory or something?
06:56:31 <texasmynsted> Say I have project foo. I have an executable named bar. I want bar installed inside the foo project directory, like in target.
06:58:06 × Saukk quits (~Saukk@83-148-239-3.dynamic.lounea.fi) (Remote host closed the connection)
06:59:25 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
07:01:14 valli1 joins (~valli@s91904426.blix.com)
07:02:54 nicecoats joins (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net)
07:03:14 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
07:03:32 × jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:04:09 × __minoru__shirae quits (~shiraeesh@46.34.207.200) (Ping timeout: 264 seconds)
07:04:26 × nicecoats quits (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net) (Client Quit)
07:04:38 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
07:05:05 jedws joins (~jedws@101.184.202.248)
07:06:06 × da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:07:59 nicecoats joins (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net)
07:10:03 × EtherealStreet quits (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net) (Quit: Connection closed)
07:10:26 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
07:10:36 EtherealStreet joins (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net)
07:11:17 × nicecoats quits (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net) (Client Quit)
07:11:25 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
07:11:38 nicecoats joins (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net)
07:12:18 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
07:13:36 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
07:15:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
07:18:48 Codaraxis joins (Codaraxis@gateway/vpn/mullvad/codaraxis)
07:20:24 × chenshen quits (~chenshen@2620:10d:c090:400::5:1dfb) (Ping timeout: 240 seconds)
07:20:53 × Wuzzy quits (~Wuzzy@p57a2e44e.dip0.t-ipconnect.de) (Quit: Wuzzy)
07:21:33 × Codaraxis__ quits (Codaraxis@gateway/vpn/mullvad/codaraxis) (Ping timeout: 246 seconds)
07:22:46 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0)
07:23:04 loli joins (~loli@024-171-017-003.res.spectrum.com)
07:24:14 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
07:25:25 nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313)
07:27:16 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
07:27:33 coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
07:28:53 <texasmynsted> nm target works fine
07:29:48 × nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Ping timeout: 258 seconds)
07:32:03 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
07:34:05 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
07:34:18 Narinas joins (~Narinas@189.223.62.254.dsl.dyn.telnor.net)
07:35:17 × Narinas quits (~Narinas@189.223.62.254.dsl.dyn.telnor.net) (Read error: Connection reset by peer)
07:37:47 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
07:38:21 × minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Read error: No route to host)
07:38:58 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
07:39:53 × jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection)
07:40:21 hololeap joins (~hololeap@unaffiliated/hololeap)
07:41:43 <hololeap> say i've got some sum-type called T, and i want to build up a (Set T) by parsing a string
07:42:29 <hololeap> this string has keywords separated by '-' and can be in any order. these keywords correspond to the different constructors of T.
07:42:58 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
07:43:19 <hololeap> so each constructor can have zero or one corresponding keywords in this string, and again they can be in any order
07:44:24 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
07:44:47 <hololeap> with megaparsec, would i have to use something like `ParsecT e s (State (Set T)) ()` in order to build up the set?
07:44:58 <hololeap> (that's Control.Monad.State btw)
07:45:32 × nicecoats quits (~nicecoats@h235.145.88.75.dynamic.ip.windstream.net) (Quit: Textual IRC Client: www.textualapp.com)
07:45:43 <hololeap> because i would have to check the current Set and see if a constructor has already been added, and have the parser fail if there is a duplicate
07:47:12 × jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
07:48:22 × puke quits (~vroom@217.138.252.203) (Ping timeout: 265 seconds)
07:49:23 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
07:51:38 × ixian quits (~mgold@terra.bitplane.org) (Ping timeout: 264 seconds)
07:52:34 heatsink joins (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969)
07:53:01 × pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!)
07:54:48 j2t joins (~j2t@84.122.202.215.dyn.user.ono.com)
07:57:42 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969) (Ping timeout: 260 seconds)
07:58:43 ixian joins (~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269)
07:59:57 poljar joins (~poljar@93-139-44-107.adsl.net.t-com.hr)
08:00:28 × polyphem quits (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 258 seconds)
08:00:40 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
08:00:46 Varis joins (~Tadas@unaffiliated/varis)
08:01:05 × thunderrd quits (~thunderrd@183.182.115.7) (Remote host closed the connection)
08:01:22 × toorevitimirp quits (~tooreviti@117.182.180.8) (Read error: Connection reset by peer)
08:02:41 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
08:02:59 × poljar1 quits (~poljar@93-143-136-208.adsl.net.t-com.hr) (Ping timeout: 256 seconds)
08:03:51 jedws joins (~jedws@101.184.202.248)
08:05:56 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
08:07:09 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
08:07:44 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 240 seconds)
08:09:57 ArConan joins (17613c8b@23.97.60.139)
08:16:45 × Maxdamantus quits (~Maxdamant@unaffiliated/maxdamantus) (Ping timeout: 240 seconds)
08:17:48 jamm_ joins (~jamm@unaffiliated/jamm)
08:18:50 Maxdamantus joins (~Maxdamant@unaffiliated/maxdamantus)
08:19:49 × charukiewicz quits (~charukiew@irouteince04.i.subnet.rcn.com) (Quit: charukiewicz)
08:21:22 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
08:21:57 <tomsmeding> hololeap: fmap Set.fromList (parseTvalue `sepBy` char '-')
08:22:01 <tomsmeding> or am I missing something?
08:22:29 <tomsmeding> oh if you have to fail on duplicates, make that fromList more intelligent
08:24:18 <tomsmeding> paranoidFromList l = case l of [] -> Just mempty ; x:xs -> let s = paranoidFromList xs in if x `Set.member` s then Nothing else Just (Set.insert x s)
08:24:36 <tomsmeding> where you can write that 'if' using 'guard' and '>>' I think; nice exercise
08:24:52 <tomsmeding> then use paranoidFromList instead of Set.fromList, and the resulting thing will have type Parser (Maybe (Set T))
08:25:26 <tomsmeding> The only thing I have ever even attempted to use parser state for is indentation-sensitive languages
08:25:50 <tomsmeding> but I'm convinced it's never _necessary_, possibly just convenient; monads are damn expressive
08:26:54 <tomsmeding> note that with my solution you parse the entire list, and then you go checking whether there were actually any duplicates
08:27:28 <tomsmeding> but unless you have _very_ stringent performance requirements that you _must_ stop parsing _immediately_ whenever a failure occurs, that shouldn't be a problem :p
08:29:20 _ht joins (~quassel@82.169.194.8)
08:31:36 rajivr joins (uid269651@gateway/web/irccloud.com/x-nuivuijufgkwhojx)
08:31:50 × jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:32:53 Franciman joins (~francesco@host-95-235-155-82.retail.telecomitalia.it)
08:33:48 jedws joins (~jedws@101.184.202.248)
08:34:42 × Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 246 seconds)
08:34:53 dopplergange joins (~dop@titan.pathogen.is)
08:41:54 jonathanx_ joins (~jonathan@h-176-109.A357.priv.bahnhof.se)
08:42:07 × minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Ping timeout: 276 seconds)
08:42:07 × jonathanx quits (~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
08:43:04 puke joins (~vroom@217.138.252.199)
08:43:29 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
08:43:30 rople joins (~rople@2001:8003:d44b:300:ac2a:fb0f:6f96:d286)
08:44:43 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
08:45:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
08:45:29 × jneira quits (501ca940@gateway/web/cgi-irc/kiwiirc.com/ip.80.28.169.64) (Ping timeout: 256 seconds)
08:47:27 <tomsmeding> okay paranoidFromList needs some >>= instead of a let...in
08:48:02 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds)
08:48:12 × jedws quits (~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
08:48:14 × coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
08:53:39 forgottenone joins (~forgotten@176.42.26.20)
08:54:15 heatsink joins (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969)
08:55:39 × rayyyy quits (~nanoz@gateway/tor-sasl/nanoz) (Quit: Leaving)
08:55:55 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
08:57:43 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
08:58:17 gienah joins (~mwright@gentoo/developer/gienah)
08:58:44 × heatsink quits (~heatsink@2600:1700:bef1:5e10:8513:7e38:6670:2969) (Ping timeout: 258 seconds)
09:02:16 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
09:03:24 × wildlander quits (~wildlande@unaffiliated/wildlander) (Quit: Konversation terminated!)
09:06:00 <tomsmeding> also paranoidFromList uses an O(n) callstack written this way because of the right-fold strucutre; exercise to the reader is making it a simple loop over the list that doesn't accumulate a callstack
09:07:32 × valli1 quits (~valli@s91904426.blix.com) (Remote host closed the connection)
09:07:49 × tessier_ quits (~treed@kernel-panic/copilotco) (Ping timeout: 272 seconds)
09:09:23 Limnoria1 joins (~Limnoria@139.28.218.148)
09:11:56 × drbean quits (~drbean@TC210-63-209-34.static.apol.com.tw) (Ping timeout: 240 seconds)
09:12:24 wz1000 joins (~wz1000@static.11.113.47.78.clients.your-server.de)
09:12:44 × minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Ping timeout: 256 seconds)
09:14:32 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
09:16:04 × jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection)
09:19:49 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
09:23:10 _noblegas joins (uid91066@gateway/web/irccloud.com/x-phchkfwuyeywkahg)
09:23:16 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
09:25:14 × perdent quits (~perdent@101.175.174.67) (Excess Flood)
09:27:06 jonatanb joins (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl)
09:30:26 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
09:33:54 hackage chart-svg 0.2.1 - Charting library targetting SVGs. https://hackage.haskell.org/package/chart-svg-0.2.1 (tonyday567)
09:35:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
09:38:43 EtherealStreet parts (68340092@104-52-0-146.lightspeed.sntcca.sbcglobal.net) ()
09:38:54 hackage ghc-vis 0.9.2 - Live visualization of data structures in GHCi https://hackage.haskell.org/package/ghc-vis-0.9.2 (DennisFelsing)
09:39:09 da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428)
09:42:33 Athas_ is now known as Athas
09:43:16 × jonatanb quits (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl) ()
09:43:18 tessier joins (~treed@kernel-panic/copilotco)
09:46:25 hackage Cabal 3.4.0.0 - A framework for packaging Haskell software https://hackage.haskell.org/package/Cabal-3.4.0.0 (phadej)
09:46:34 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
09:47:09 berberman joins (~berberman@unaffiliated/berberman)
09:47:57 × berberman_ quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds)
09:49:09 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
09:51:32 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
09:51:40 × dopplergange quits (~dop@titan.pathogen.is) (K-Lined)
09:52:44 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
09:54:15 × hnOsmium0001 quits (uid453710@gateway/web/irccloud.com/x-zmcemccamsqwqgax) (Quit: Connection closed for inactivity)
09:54:46 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
09:55:12 pera joins (~pera@unaffiliated/pera)
09:58:21 × NGravity quits (~uwx@gateway/shell/xshellz/x-uzosslmshxnjhegg) (Read error: Connection reset by peer)
09:59:26 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 264 seconds)
09:59:32 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
10:01:22 Rudd0 joins (~Rudd0@185.189.115.103)
10:03:10 × Varis quits (~Tadas@unaffiliated/varis) (Ping timeout: 256 seconds)
10:04:24 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
10:05:53 × average quits (uid473595@gateway/web/irccloud.com/x-skfvagfqkixoxjjm) (Quit: Connection closed for inactivity)
10:09:24 jonatanb joins (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl)
10:09:30 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
10:10:18 × howdoi quits (uid224@gateway/web/irccloud.com/x-vwnihuzeelxrmxkz) (Quit: Connection closed for inactivity)
10:13:11 × da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…)
10:15:24 × xff0x_ quits (~xff0x@2001:1a81:5242:aa00:d06a:cbda:3c0c:5e4) (Ping timeout: 258 seconds)
10:16:11 xff0x_ joins (~xff0x@2001:1a81:5242:aa00:b5d4:6c34:6b2e:660f)
10:16:33 × acidjnk_new quits (~acidjnk@pd9e0b9a8.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
10:17:19 son0p joins (~son0p@181.58.39.182)
10:21:07 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
10:24:55 bitmagie joins (~Thunderbi@200116b8067914005039182db8afbfb6.dip.versatel-1u1.de)
10:24:58 libertyprime joins (~libertypr@124.197.60.232)
10:25:19 <libertyprime> how does one find out what a cradle is? (in the context of hie-bios)
10:25:26 fendor joins (~fendor@178.165.131.204.wireless.dyn.drei.com)
10:25:47 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
10:26:01 <libertyprime> cant seem to find any related documentation or a glossary
10:29:09 × bitmagie quits (~Thunderbi@200116b8067914005039182db8afbfb6.dip.versatel-1u1.de) (Client Quit)
10:29:12 Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362)
10:30:05 × ixaxaar quits (~ixaxaar@49.207.210.215) (Ping timeout: 240 seconds)
10:30:56 xsperry joins (~as@unaffiliated/xsperry)
10:31:56 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds)
10:32:07 Lord_of_Life_ is now known as Lord_of_Life
10:33:03 <libertyprime> i feel like im doing the work of the ghc compiler (inferring the definition of 'cradle' from its usage). HIE could use a glossary, i think
10:35:46 <fendor> libertyprime, it is probably easier to ask directly what a cradle is at #haskell-language-server
10:35:55 <libertyprime> thanks fendor
10:36:05 <fendor> but yeah, hls needs a better documentation
10:36:24 × jonatanb quits (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl) ()
10:36:27 <fendor> libertyprime, hie-bios explains a bit what a cradle is: https://github.com/mpickering/hie-bios/
10:37:07 <libertyprime> yeah haha. i was just reading that. so far i know there are different types of cradles
10:37:36 <libertyprime> i know you can have a multi-cradle, for instance
10:37:38 jamm_ joins (~jamm@unaffiliated/jamm)
10:37:46 <libertyprime> funny
10:37:59 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
10:39:25 <maerwald[m]> cradles make little sense from a user perspective. It should be a hidden implementation detail
10:39:49 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
10:39:54 <fendor> maerwald[m], absolutely
10:41:01 <ph88^> does anyone have an advice how to speed up stack in gitlab ?
10:41:56 <maerwald[m]> S3 caching
10:42:56 × vchlup quits (~vchlup@nat.brnet.cz) (Quit: Leaving)
10:43:09 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
10:43:17 d3od joins (~nickmeno3@93-137-138-55.adsl.net.t-com.hr)
10:43:24 × d3od quits (~nickmeno3@93-137-138-55.adsl.net.t-com.hr) (Excess Flood)
10:43:31 vchlup joins (~vchlup@nat.brnet.cz)
10:43:36 acidjnk_new joins (~acidjnk@p200300d0c722c402a0692c439c517619.dip0.t-ipconnect.de)
10:43:39 d3od joins (~nickmeno3@93-137-138-55.adsl.net.t-com.hr)
10:44:11 jonatanb joins (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl)
10:44:11 × vchlup quits (~vchlup@nat.brnet.cz) (Client Quit)
10:44:51 × jonatanb quits (~jonatanb@83.24.201.1.ipv4.supernova.orange.pl) (Client Quit)
10:46:18 <ph88^> i have self hosted gitlab
10:46:22 <ph88^> can not use external stuff
10:52:33 <maerwald[m]> ?
10:53:07 × erh^ quits (erh@ip98-184-89-2.mc.at.cox.net) ()
10:54:17 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
10:55:40 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
10:55:55 hackage lsfrom 0.1 - List dir files starting from a specific name https://hackage.haskell.org/package/lsfrom-0.1 (JensPetersen)
10:57:05 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
10:59:16 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
10:59:44 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 240 seconds)
11:00:03 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
11:00:11 <ph88^> maerwald[m], company policy
11:02:18 <maerwald[m]> ph88^: S3 can be private
11:03:03 <ph88^> you are refering to S3 amazon aws right ?
11:03:21 <maerwald[m]> Yes
11:03:48 <ph88^> we are not amazon, amazon is external, can not use it (for storing our IP)
11:03:56 <ph88^> company policy
11:04:50 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds)
11:05:10 × quinn quits (~quinn@c-73-223-224-163.hsd1.ca.comcast.net) (Quit: ZNC 1.8.1 - https://znc.in)
11:05:27 frozenErebus joins (~frozenEre@94.128.81.133)
11:07:44 × vicfred quits (vicfred@gateway/vpn/mullvad/vicfred) (Quit: Leaving)
11:11:20 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
11:11:51 jrp joins (05501e8f@5.80.30.143)
11:12:34 Tops2 joins (~Tobias@dyndsl-095-033-091-182.ewe-ip-backbone.de)
11:14:20 noop_noob joins (31e49232@49.228.146.50)
11:16:13 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
11:16:28 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
11:16:33 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
11:17:49 <merijn> texasmynsted: The solution is to use "cabal run" for that, tbh
11:18:06 <whataday> do; a <- (+1); b <- (+2); return (a+b); why this (+1) fit here? should it be Reader (+1)?
11:18:42 <whataday> a <- return (+1)?
11:18:54 <c_wraith> :t (+1)
11:18:55 <lambdabot> Num a => a -> a
11:19:02 <c_wraith> :t (>>=)
11:19:03 <lambdabot> Monad m => m a -> (a -> m b) -> m b
11:19:23 <c_wraith> Just need to unify (a -> a) with m a'
11:19:38 <c_wraith> which turns out to work, m ~ ((->) a)
11:19:56 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
11:20:07 <c_wraith> that is the same thing as Reader, but without newtype wrappers
11:21:42 <whataday> why people say ReaderT is really useful, and Reader isn't
11:21:45 × minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Ping timeout: 240 seconds)
11:22:16 <c_wraith> because Reader r a is identical to r -> a
11:22:29 <c_wraith> Functions are great!
11:22:38 <c_wraith> But the newtype doesn't really help anything
11:23:25 hackage hls-retrie-plugin 0.1.1.0 - Retrie integration plugin for Haskell Language Server https://hackage.haskell.org/package/hls-retrie-plugin-0.1.1.0 (PepeIborra)
11:23:25 <whataday> so Reader's benefits just same as functions?
11:23:39 coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
11:23:43 <c_wraith> It's even less convenient than functions, in most cases
11:24:22 <maerwald[m]> I've never used ReaderT in 8 or so years of haskell
11:24:25 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
11:24:29 <whataday> what's the most useful ReaderT? ReaderT r m a?
11:24:55 <whataday> ReaderT r IO a?
11:25:10 <c_wraith> whatever solves your problem
11:25:54 thunderrd joins (~thunderrd@183.182.115.7)
11:26:29 <whataday> what's that Dependent Injection related to Reader?
11:26:40 <maerwald[m]> ReaderT doesn't solve any problem, it's just style and convenience
11:26:43 <merijn> maerwald[m]: It works well during exploratory stages
11:27:51 <merijn> maerwald[m]: If there's functionality that you use at the very leaves of your callstack that is likely too change considerably, plumbing it via ReaderT means not having to change hundreds of intermediate calls when you change the implementation
11:28:57 <merijn> maerwald[m]: Unless you meant *specifically* ReaderT and not "newtypes abstracting ReaderT", in which case I might agree
11:29:35 × jil quits (~user@45.86.162.6) (Read error: No route to host)
11:37:07 Saukk joins (~Saukk@83-148-239-3.dynamic.lounea.fi)
11:37:29 mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
11:37:42 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
11:38:21 <maerwald[m]> merijn: i've used MonadReader, but even that i don't find too useful.
11:39:04 <maerwald[m]> I don't do transformer newtypes, only mtl
11:39:45 <maerwald[m]> During exploratory stages, my codebases are usually fairly small
11:40:05 Aquazi joins (uid312403@gateway/web/irccloud.com/x-fliccswzueuhkous)
11:41:06 aveltras joins (uid364989@gateway/web/irccloud.com/x-bkadqbenbzjyjdyv)
11:42:36 <ocharles> Is there a way to get ghc to output absolute file paths in error messages, rather than relative?
11:42:49 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
11:44:45 <ocharles> https://gitlab.haskell.org/ghc/ghc/-/issues/15680 looks like it's not supported
11:47:46 × m4lvin_ quits (~m4lvin@w4eg.de) (Quit: m4lvin_)
11:48:08 m4lvin joins (~m4lvin@w4eg.de)
11:51:53 × jrp quits (05501e8f@5.80.30.143) (Quit: Connection closed)
11:52:26 × Limnoria1 quits (~Limnoria@139.28.218.148) (Remote host closed the connection)
11:54:11 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
11:56:25 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
11:58:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
12:01:14 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 264 seconds)
12:04:48 nfip^ joins (nfip@ip98-184-89-2.mc.at.cox.net)
12:06:07 da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428)
12:06:37 LKoen joins (~LKoen@252.248.88.92.rev.sfr.net)
12:07:37 jrp joins (05501e8f@5.80.30.143)
12:10:35 × jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection)
12:10:42 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
12:13:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
12:14:25 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:15:12 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
12:15:15 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
12:16:05 × pera quits (~pera@unaffiliated/pera) (Ping timeout: 240 seconds)
12:17:24 × noop_noob quits (31e49232@49.228.146.50) (Quit: Connection closed)
12:19:45 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
12:20:23 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:21:50 Quarl joins (~Quarl@h-155-4-128-37.NA.cust.bahnhof.se)
12:21:59 kir joins (~kir@s91904426.blix.com)
12:23:20 drbean joins (~drbean@TC210-63-209-53.static.apol.com.tw)
12:25:49 × poscat quits (~poscat@111.192.221.197) (Read error: Connection reset by peer)
12:26:36 djellemah joins (~djellemah@2601:5c2:100:96c:e008:b638:39fe:6a54)
12:27:09 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
12:27:11 jamm_ joins (~jamm@unaffiliated/jamm)
12:28:02 poscat joins (~poscat@123.116.95.228)
12:32:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
12:35:03 bitmagie joins (~Thunderbi@200116b8067914005039182db8afbfb6.dip.versatel-1u1.de)
12:36:11 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
12:37:00 × bitmagie quits (~Thunderbi@200116b8067914005039182db8afbfb6.dip.versatel-1u1.de) (Client Quit)
12:37:20 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:39:17 × o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection)
12:40:04 m0rphism1 joins (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de)
12:40:39 ClaudiusMaximus joins (~claude@191.123.199.146.dyn.plus.net)
12:40:44 × ClaudiusMaximus quits (~claude@191.123.199.146.dyn.plus.net) (Changing host)
12:40:44 ClaudiusMaximus joins (~claude@unaffiliated/claudiusmaximus)
12:42:54 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
12:43:43 × hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
12:45:49 pako joins (~pako@dynamic-077-013-017-247.77.13.pool.telefonica.de)
12:46:31 × da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…)
12:47:24 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
12:47:26 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
12:47:30 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
12:47:43 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
12:48:20 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:50:18 × poljar quits (~poljar@93-139-44-107.adsl.net.t-com.hr) (Remote host closed the connection)
12:51:07 drbean_ joins (~drbean@TC210-63-209-189.static.apol.com.tw)
12:51:39 Saukk_ joins (~Saukk@83-148-239-3.dynamic.lounea.fi)
12:52:08 poljar joins (~poljar@93-139-44-107.adsl.net.t-com.hr)
12:53:16 × drbean quits (~drbean@TC210-63-209-53.static.apol.com.tw) (Read error: Connection reset by peer)
12:53:16 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 276 seconds)
12:53:30 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
12:53:40 × puffnfresh quits (~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net) (Ping timeout: 276 seconds)
12:54:07 puffnfresh joins (~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net)
12:54:19 × Saukk quits (~Saukk@83-148-239-3.dynamic.lounea.fi) (Ping timeout: 276 seconds)
12:54:45 × mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
12:57:11 × jrp quits (05501e8f@5.80.30.143) (Quit: Ping timeout (120 seconds))
12:57:14 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
12:57:14 × ArConan quits (17613c8b@23.97.60.139) (Quit: Ping timeout (120 seconds))
12:58:26 × dftxbs3e quits (~dftxbs3e@unaffiliated/dftxbs3e) (Remote host closed the connection)
12:58:45 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
12:59:38 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:59:54 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
13:01:01 user673898 joins (02c977e6@dslb-002-201-119-230.002.201.pools.vodafone-ip.de)
13:01:46 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 258 seconds)
13:03:55 da39a3ee5e6b4b0d joins (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428)
13:04:16 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
13:04:57 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
13:05:17 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:07:34 Guest86964 joins (~niki@2804:d55:587c:a00:ccf4:5080:edb1:90f9)
13:08:33 <user673898> I'm trying to build my library with cabal but it complains that it can't find the source
13:08:38 Lorra joins (~lorenzo@2001:a61:ba6:4501:7c80:c7be:1bd4:2629)
13:08:40 <user673898> I have the line "exposed-modules: MyApp.TestModule" and TestModule.hs is in the root directory
13:08:45 <user673898> "can't find source for MyApp\TestModule in .,"
13:08:55 <user673898> why does it replace the '.' with '\'?
13:09:07 × minoru_shiraeesh quits (~shiraeesh@46.34.206.235) (Ping timeout: 272 seconds)
13:09:41 Guest86964 parts (~niki@2804:d55:587c:a00:ccf4:5080:edb1:90f9) ()
13:10:33 <Uniaika> user673898: what's weird indeed. Do you have your project somewhere?
13:10:36 <Uniaika> online
13:10:44 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
13:11:14 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:12:06 <j2t> hi, I see that I tuples of Int implement Ord class. How do a search for a place where it implements that?
13:12:47 × son0p quits (~son0p@181.58.39.182) (Quit: Lost terminal)
13:13:09 <fendor> j2t, I would go to the definition of tuple and look at the instances
13:13:12 o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
13:13:21 <user673898> @Uniaika  so you mean this should be okay? I can assemble a MWE and upload it
13:13:21 <lambdabot> Unknown command, try @list
13:13:25 × carlomagno quits (~cararell@148.87.23.7) (Ping timeout: 240 seconds)
13:13:31 <fendor> j2t, https://hackage.haskell.org/package/ghc-prim-0.6.1/docs/GHC-Tuple.html#t:-40--44--41-
13:13:34 <fendor> found via
13:13:36 <fendor> @hoogle (,)
13:13:36 <lambdabot> GHC.Tuple data (,) a b
13:13:36 <lambdabot> GHC.Tuple (,) :: a -> b -> (,) a b
13:13:56 honigkuchen joins (~honigkuch@ip5b429953.dynamic.kabel-deutschland.de)
13:13:57 <honigkuchen> how does a hashtable use a hash as an index?
13:14:14 hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
13:14:31 <j2t> fendor, thanks. I had found this https://hackage.haskell.org/package/base-4.14.1.0/docs/Data-Tuple.html
13:15:02 mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
13:15:22 <fendor> j2t, yeah it (unfortunately but reasonably) does not re-export the tuple data type
13:15:53 × hekkaidekapus] quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds)
13:16:56 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
13:18:03 × o1lo01ol1o quits (~o1lo01ol1@bl11-140-216.dsl.telepac.pt) (Remote host closed the connection)
13:18:17 o1lo01ol1o joins (~o1lo01ol1@bl11-140-216.dsl.telepac.pt)
13:19:34 <Uniaika> user673898: your error is very suspicious, I'll wait for an MWE :)
13:21:09 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
13:22:15 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
13:22:26 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
13:22:55 × _noblegas quits (uid91066@gateway/web/irccloud.com/x-phchkfwuyeywkahg) (Quit: Connection closed for inactivity)
13:23:52 <user673898> @Uniaika managed to fix it. if I put the TestModule.hs in a directory MyApp which is in the root dir then it works
13:23:52 <lambdabot> Unknown command, try @list
13:24:31 Tario joins (~Tario@201.192.165.173)
13:24:33 <user673898> I thought that every src dir is scanned and the file whose module name matches the one in the list is selected
13:26:25 <user673898> now I've got a new error..
13:26:25 <Uniaika> user673898: ok great
13:28:57 × Franciman quits (~francesco@host-95-235-155-82.retail.telecomitalia.it) (Quit: Leaving)
13:29:36 × raym quits (~ray@45.64.220.139) (Quit: leaving)
13:29:46 × mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Quit: mputz)
13:29:52 raym joins (~ray@45.64.220.139)
13:32:25 <user673898> mwe-0.1.0.0: Warning: library-dirs: C:\Program doesn't exist or isn't a
13:32:43 son0p joins (~son0p@181.136.122.143)
13:33:51 <nshepperd> spaces in file paths are always interesting times
13:33:52 × hekkaidekapus quits (~tchouri@gateway/tor-sasl/hekkaidekapus) (Remote host closed the connection)
13:34:12 hekkaidekapus joins (~tchouri@gateway/tor-sasl/hekkaidekapus)
13:34:26 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
13:35:44 <user673898> had to add double quotes in the cabal config
13:38:42 raichoo joins (~raichoo@94.31.87.253)
13:39:31 <merijn> hmm
13:39:33 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
13:40:01 <merijn> You know what I need? v2-freeze on steroids, like, something that simply grabs and archives all the Hackage tarballs too
13:40:26 <maerwald> local-freeze
13:40:47 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
13:40:50 <merijn> I don't suppose someone has made that yet?
13:41:10 <maerwald> no, because that sounds too much like nix
13:41:26 <merijn> Kinda, yes :p
13:42:20 <merijn> Although I don't think Nix really holds the dependency locally either
13:42:41 <merijn> So, that doesn't solve the *actual* problem I have anyway
13:43:19 <maerwald> would be surprised if nix doesn't have an offline mode
13:43:54 ArConan joins (17613c8b@23.97.60.139)
13:43:57 × pako quits (~pako@dynamic-077-013-017-247.77.13.pool.telefonica.de) (Ping timeout: 272 seconds)
13:44:03 <merijn> Anyway, unless someone else will do the Nix stuff for me, that's not happening anyway :p
13:44:51 pako joins (~pako@dynamic-078-054-103-037.78.54.pool.telefonica.de)
13:44:59 <maerwald> that's how nix works... someone else does it
13:44:59 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
13:46:31 <merijn> ;)
13:47:25 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
13:47:43 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
13:48:02 chem40 joins (6221f5e8@98.33.245.232)
13:49:45 × chem40 quits (6221f5e8@98.33.245.232) (Client Quit)
13:50:40 Alleria_ joins (~AllahuAkb@69.202.254.168)
13:51:01 × ClaudiusMaximus quits (~claude@unaffiliated/claudiusmaximus) (Quit: ->)
13:51:04 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
13:53:19 × da39a3ee5e6b4b0d quits (~da39a3ee5@2403:6200:8876:77eb:51a:84a8:6067:5428) (Quit: My MacBook has gone to sleep. ZZZzzz…)
13:55:16 <merijn> maerwald: Actually, isn't that how all open source works? :p
13:55:36 <merijn> maerwald: Just subsidise your global multi-billion tech company by guilt tripping free labour online!
13:56:33 <tdammers> institutionalized "do it for your resume"
13:57:04 <maerwald> and so we did...
13:57:21 <aldum> it's ridiculous how expected this is nowadays
13:57:33 × Alleria_ quits (~AllahuAkb@69.202.254.168) (Ping timeout: 264 seconds)
13:57:40 <aldum> what, you don't have years worth of work public? you must not be hiring-worthy then
13:57:59 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
13:58:33 <merijn> tdammers: Did you see google's new policy?
13:58:35 Alleria_ joins (~AllahuAkb@2603-7000-3040-0000-144a-d72e-d888-983c.res6.spectrum.com)
13:58:45 × danso quits (~dan@d67-193-121-2.home3.cgocable.net) (Ping timeout: 264 seconds)
13:58:45 × drbean_ quits (~drbean@TC210-63-209-189.static.apol.com.tw) (Ping timeout: 240 seconds)
13:59:13 <merijn> tdammers: basically "let's smear open source not released under the author's legal name" >.>
13:59:46 <merijn> maerwald: Hey, I'm doing my best! I convinced Ben to drop the 32bit windows build of GHC!
13:59:48 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
13:59:54 <maerwald> You know what they say: "If I do a job in 30 minutes, it's because I spent 10 years learning how to do that in 30 minutes. You owe me for the years, not the minutes."
14:00:19 <merijn> maerwald: Under the argument of "if some big enterprise somehow still relies on it, they're probably slow an enterprise enough to bloody well pay for it themselves"
14:01:44 × Saukk_ quits (~Saukk@83-148-239-3.dynamic.lounea.fi) (Remote host closed the connection)
14:03:02 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 264 seconds)
14:06:08 __monty__ joins (~toonn@unaffiliated/toonn)
14:06:49 × takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
14:07:48 pera joins (~pera@unaffiliated/pera)
14:08:22 danso joins (~dan@2001:1970:52e7:d000:96b8:6dff:feb3:c009)
14:11:18 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
14:11:25 hackage vulkan 3.9.1 - Bindings to the Vulkan graphics API. https://hackage.haskell.org/package/vulkan-3.9.1 (jophish)
14:12:00 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
14:13:25 hackage code-page 0.2.1 - Windows code page library for Haskell https://hackage.haskell.org/package/code-page-0.2.1 (ryanglscott)
14:13:30 × coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
14:14:12 Franciman joins (~francesco@host-95-235-155-82.retail.telecomitalia.it)
14:14:24 hackage hslua 1.3.0.1 - Bindings to Lua, an embeddable scripting language https://hackage.haskell.org/package/hslua-1.3.0.1 (tarleb)
14:17:21 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
14:18:07 × j2t quits (~j2t@84.122.202.215.dyn.user.ono.com) (Ping timeout: 256 seconds)
14:20:19 × user673898 quits (02c977e6@dslb-002-201-119-230.002.201.pools.vodafone-ip.de) (Quit: Connection closed)
14:20:33 × rople quits (~rople@2001:8003:d44b:300:ac2a:fb0f:6f96:d286) (Ping timeout: 265 seconds)
14:20:52 × aveltras quits (uid364989@gateway/web/irccloud.com/x-bkadqbenbzjyjdyv) (Quit: Connection closed for inactivity)
14:21:09 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
14:21:51 <juri_> as someone who hires software developers, i really like having a lively git(hub/lab) profile to look at.
14:21:57 knu54 joins (58823d0b@gateway/web/cgi-irc/kiwiirc.com/ip.88.130.61.11)
14:22:24 rople joins (~rople@116.206.228.203)
14:22:34 <Uniaika> juri_: do you hire haskell people? :P
14:22:45 <juri_> Yes.
14:22:51 <juri_> Hired one last week.
14:23:19 <juri_> no, not currently hiring anyone who's not a walk-on-water haskeller. :)
14:23:36 <Uniaika> juri_: you mean senior developer?
14:24:18 Deide joins (~Deide@217.155.19.23)
14:24:33 <merijn> juri_: On the one hand, yes. But on the other hand, building an industry on the expectation of people doing work stuff in their spare time is toxic as hell and it needs to die...
14:24:39 <juri_> We've been having trouble, because our profile demands medium-level haskeller / medium level operations engineer.
14:24:52 <aldum> what merijn says
14:24:58 <aldum> we get why it's great to look at
14:25:01 <merijn> Like, sure it's convenient
14:25:07 <juri_> I disagree.
14:25:16 <aldum> but also, the expectation that you do it in your spare time as well, and publish it...
14:25:32 <merijn> But the fact that it's convenient for industry is meaningless if it builds a generation of people thinking "working for free" is somehow normal
14:25:43 <knu54> Is it possible to write a function which returns the constraint of it's argument? e.g.: foo 4 = Proxy :: Proxy [Num]
14:25:54 <juri_> merijn: I've been "working for free" for 20 years now.
14:26:04 <knu54> (I guesstimate the answer is no)
14:26:05 <merijn> knu54: You want SomeNat, probably?
14:26:06 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
14:26:32 <knu54> mirijn: no, I want to access the Constraints
14:26:39 <knu54> > :t 4
14:26:41 <lambdabot> <hint>:1:1: error: <hint>:1:1: error: parse error on input ‘:’
14:26:48 × mnrmnaugh quits (~mnrmnaugh@unaffiliated/mnrmnaugh) (Ping timeout: 246 seconds)
14:27:02 <knu54> foo (Num a => a) --> Num
14:27:07 <merijn> juri_: Therefore it's normal?
14:27:09 <knu54> but on the termlevel
14:27:41 <merijn> I mean, child labour used to be normal too (and still is in many parts of the world), but we all decided *that* was toxic BS too :)
14:27:50 <aldum> okay, that's different
14:27:54 <juri_> merijn: therefore, it shows someone who is either good enough at $dayjob to publish what they do, or someone who is interested enough in tech to do it other than just at work.
14:28:07 <aldum> child labour exists because on low levels of wealth, you need it
14:28:22 <juri_> I'm in tech. it just happens that i get paid for it.
14:28:26 <aldum> it's a luxury to have people not working for the first 20 years of their life
14:29:00 <aldum> getting back to the topic: I thought the rockstar culture was out
14:29:03 <aldum> but apparently not
14:29:13 <merijn> juri_: Not every is in the luxury position of getting paid to work on open source stuff, and expecting people to write open source in their spare time is bad.
14:29:46 <juri_> merijn: believe what you want. i like people who are interested in the field.
14:29:50 <merijn> Like, after an 8 hour day of coding I got better shit to do than "more coding", despite *wanting* to program more, and I don't even have kids yet
14:29:53 <juri_> not just mercinaries.
14:30:08 <merijn> juri_: I can see why you might have trouble hiring :p
14:30:10 <juri_> after an 8 hour day of coding, i spend 4 hours coding. every day.
14:30:17 <aldum> everybody wants to hire people who have n+2 years of experience in every technology (n being the years it existed), and goes to conferences to hold talks
14:30:39 rfc08x001 joins (~rfc08x001@183.215.50.227)
14:30:47 bitmapper joins (uid464869@gateway/web/irccloud.com/x-walokhpttsredqkf)
14:30:59 <juri_> merijn: you might be right. we have a high bar. we want to see your work previously.
14:31:18 <juri_> I don't think insisting on a portfolio is insane. plenty of professions require that.
14:31:20 <merijn> juri_: I've got friends, family and hobbies. And maybe if we encouraged more of that in tech we would spend less time building creepy surveillance-capitalist dystopias >.>
14:31:41 <merijn> Anyway, drifting slightly off Haskell :p
14:31:59 <juri_> true. we can take it to offtopic if you want to yell at me. :D
14:32:04 <aldum> I am interested, but that doesn't necessarily translate to github
14:32:46 nbloomf joins (~nbloomf@2600:1700:ad14:3020:b547:11f6:98ac:60d3)
14:33:30 <aldum> I'm not saying your case is invalid, but it seems _everyone_ expects it these days
14:33:58 jollygood2 joins (~bc8134e3@217.29.117.252)
14:34:15 <aldum> and I can't be assed to do a yet another todo app just so I have it on github
14:34:19 <juri_> yeah. that's a problem.
14:35:02 <juri_> I remember the same problem at the start of my career. and it put me in a very dubious (could write a book about it) place.
14:35:08 <merijn> aldum: I mean, I fit the profile and portfolio lots of those tech companies are looking for, but increasingly I'd rather pass
14:35:09 <aldum> anyway, sorry for venting out my jobsearch frustrations here
14:35:42 mnrmnaugh joins (~mnrmnaugh@unaffiliated/mnrmnaugh)
14:36:06 <juri_> merijn: good on you. that's what we're really missing in our industry: people willing to stand for what they believe in.
14:36:16 × rfc08x001 quits (~rfc08x001@183.215.50.227) (Quit: Leaving)
14:37:39 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
14:41:25 average joins (uid473595@gateway/web/irccloud.com/x-lztdighqxgxenyad)
14:41:57 <jollygood2> is using System.IO.Temp recommended way for generating temporary files in a cross-platform way?
14:42:12 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
14:43:26 <poscat> Hi, are there any aeson maintainers here that would like to review my pull request? :)
14:43:35 <poscat> The PR: https://github.com/haskell/aeson/pull/828
14:47:25 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
14:47:43 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
14:49:06 Guest_76 joins (25e4f694@37.228.246.148)
14:49:23 nictki joins (~nictki@p5b0c7733.dip0.t-ipconnect.de)
14:49:50 × nictki quits (~nictki@p5b0c7733.dip0.t-ipconnect.de) (Client Quit)
14:50:08 Guest_76 is now known as cob123
14:53:57 Kipras_ joins (~Kipras@78-56-235-39.static.zebra.lt)
14:54:32 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
14:55:45 × frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
14:57:40 saitamaplus joins (uid272474@gateway/web/irccloud.com/x-vvqrfgmnjtrulshp)
14:58:16 × saitamaplus quits (uid272474@gateway/web/irccloud.com/x-vvqrfgmnjtrulshp) (Changing host)
14:58:16 saitamaplus joins (uid272474@unaffiliated/cheeky/x-5333603)
14:58:16 × saitamaplus quits (uid272474@unaffiliated/cheeky/x-5333603) (Changing host)
14:58:16 saitamaplus joins (uid272474@gateway/web/irccloud.com/x-vvqrfgmnjtrulshp)
14:58:52 is_null joins (~jpic@pdpc/supporter/professional/is-null)
14:59:02 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
14:59:46 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
15:00:22 j2t joins (~j2t@84.122.202.215.dyn.user.ono.com)
15:01:35 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
15:02:50 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
15:03:38 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 264 seconds)
15:04:03 × ArConan quits (17613c8b@23.97.60.139) (Quit: Connection closed)
15:05:58 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds)
15:05:58 × honigkuchen quits (~honigkuch@ip5b429953.dynamic.kabel-deutschland.de) (Remote host closed the connection)
15:06:56 × acarrico quits (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net) (Ping timeout: 272 seconds)
15:10:02 garFF joins (~garff@80.71.142.8)
15:10:31 gwern joins (~gwern@wikipedia/Gwern)
15:10:44 <gwern> so are you guys aware someone is just mass-deleting the haskell wiki https://wiki.haskell.org/Special:Contributions/Tomjaguarpaw ?
15:12:11 mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d)
15:13:25 <gwern> unless I'm missing somewhere that this was officially decreed acceptable I'm going to block this tomjaguarpaw dude and rollback all his edits because omgwtf
15:13:38 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
15:13:52 <gwern> did I miss it? was it decided somewhere to just delete anything over N years on hawiki?
15:14:40 <gwern> because on every wiki I've ever been on, 'mass blanking of pages without discussion' == vandalism
15:16:57 × acidjnk_new quits (~acidjnk@p200300d0c722c402a0692c439c517619.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
15:18:15 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
15:18:59 <merijn> I mean, the wiki has tons of stuff that arguably should be deleted, but this is overdoing it
15:19:00 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
15:19:50 <merijn> This is like the "stale bot" approach to tickets >.> Just nuke everything old and hope people recreate relevant things
15:19:59 hiroaki joins (~hiroaki@2a02:908:4b18:8c40::8d4b)
15:21:02 sayantan joins (~sayantan@103.88.218.118)
15:21:42 <gwern> yes, well, I've blocked him and rolled back all his deletions. *maybe* he can have his account back when he shows he has understood what catastrophically bad judgment he has shown
15:21:48 × sayantan quits (~sayantan@103.88.218.118) (Remote host closed the connection)
15:22:05 <gwern> just checking a few instances, he's plain wrong. a lot of the xmonad stuff he deleted is not 'outdated', because xmonad is stable
15:22:26 <gwern> and if he wants to add obsolete markers, he should be using a template, not dumping in html
15:22:49 <Athas> It is apparently intentional: https://wiki.haskell.org/User:Tomjaguarpaw
15:23:02 Sheilong joins (uid293653@gateway/web/irccloud.com/x-sqldxvxwbirnrvhg)
15:23:32 elisa70 joins (~elisa70@93-34-143-64.ip50.fastwebnet.it)
15:23:42 <gwern> yes, that's why I was asking. i'm not in the loop on wiki matters and I was wondering if it had in fact been decided somewhere. but his contributions don't include any discussion or policy pages I can see, and no one here thus far seems to have any idea about such a thing, so he's just doing it unilaterally, it looks like
15:23:54 <merijn> Athas: Except he's nuking discussions/joke page, etc. too
15:24:04 <merijn> Athas: Rather than checking if it's actually documentation
15:25:03 geekosaur joins (ae68c070@cpe-174-104-192-112.neo.res.rr.com)
15:26:12 <Athas> Tom Ellis is a pretty active Haskell community member, so this must have been discussed somewhere. It's completely out of left field...
15:26:12 <fendor> gwern, yeah Uniaika and tomjaguarpaw want to clean up the wiki
15:26:41 urodna joins (~urodna@unaffiliated/urodna)
15:26:52 <gwern> this seems to be closer to 'ethnic cleansing' than 'cleaning up'...
15:27:00 <Uniaika> hi
15:27:09 <DigitalKiwi> rm -rf Uniaika
15:27:17 <Uniaika> gwern: yes, this is official Haskell Docs Task Force for the Foundation
15:27:39 <Uniaika> gwern: I'm also surprised that it was noticed, considering the state of abandon of the wiki
15:27:55 elisa70 parts (~elisa70@93-34-143-64.ip50.fastwebnet.it) ()
15:28:07 <gwern> Uniaika: I still monitor the xmonad pages because they are still useful, so I kinda noticed
15:28:13 <Uniaika> gwern: although, some stuff should not live in the wiki, like the XMonad stuff or the CPS article which is entirely in romanian
15:28:13 <DigitalKiwi> do you got a badge to go with that alphabet soup
15:28:29 <Uniaika> gwern: My position is that the XMonad project should host their own docs
15:28:46 <Uniaika> especially since we might **very much** switch platforms on the wiki
15:28:48 <Uniaika> *fr
15:28:49 <gwern> Uniaika: that's a silly position but you are entitled to have opinions
15:28:50 <Uniaika> *for
15:28:51 <Uniaika> damnit
15:29:11 <Uniaika> gwern: The state of the Haskell wiki is extremely dire
15:29:26 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
15:29:46 <gwern> perhaps, but mass-deleting smacks more of OCD compulsiveness than any genuine thoughtful attempt to improve the wiki
15:29:59 <Uniaika> gwern: moreover, they're not thrown into oblivion, they still live in the wiki history
15:30:11 <gwern> how comforting
15:30:22 <Uniaika> gwern: the "genuine attempts to improve the wiki" have all failed for around ten years
15:30:28 <Athas> ...why is there an article on CPS in Romanian?
15:30:34 <Uniaika> Athas: no, the real question is
15:30:42 <gwern> Athas: because people speak romanian? it's a real language. romanians are human too.
15:30:45 <Uniaika> Why is the CPS article is in Romanian
15:30:47 <merijn> Athas: TAed got tired of explaining it to students? :p
15:30:55 <Uniaika> on an otherwise english-speaking wiki
15:31:11 <Uniaika> why is there no lang-ro category/namespace
15:31:16 <Uniaika> because the wiki maintainers are all burnt-out
15:31:32 <gwern> perhaps because people are spending more time deleting stuff than fixing it, and seem to have an attitude of 'and ahhh helped!'
15:32:00 × jamm_ quits (~jamm@unaffiliated/jamm) (Remote host closed the connection)
15:32:22 <Uniaika> is that really the case?
15:32:53 <gwern> I only see you defending the mass-deletions, and not fixing anything. so, seems so.
15:33:01 <Athas> Uniaika: where has this been discussed? I think I'm in favour of significant cleansing of the wiki, but now I'm curious about what other plans might exist for it (e.g. what a new platform might be).
15:33:10 jamm_ joins (~jamm@unaffiliated/jamm)
15:33:16 <merijn> I think this conversation has a...unnecessarily adversarial tone
15:33:23 <gwern> merijn: GEE I WONDER WHY
15:33:46 <Uniaika> https://wiki.haskell.org/Trabalhos
15:33:47 <geekosaur> I think unexpted mass deletion has an adversarial tone
15:33:48 <Uniaika> what the fuck
15:33:56 × knu54 quits (58823d0b@gateway/web/cgi-irc/kiwiirc.com/ip.88.130.61.11) (Quit: Connection closed)
15:34:05 <merijn> Uniaika: I do think blanking out pages without replacing them isn't great and just contributing to more internet linkrot than already exists
15:34:14 <gwern> if you don't want an adversarial tone, maybe don't start out by quietly deleting 120+ pages
15:34:31 <Uniaika> gwern: but yes I didn't think tomjaguarpaw would have started without advertising his work first
15:34:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
15:34:47 <gwern> Uniaika: the lack of advertisement is only the very beginning of the issues here
15:34:52 <merijn> Uniaika: I think "deleting romanian CPS article" vs "replacing romanian CPS article with an english version" has different optics (to use a stupid word)
15:35:18 <Uniaika> tomjaguarpaw: ping²
15:35:21 <merijn> geekosaur: Sure
15:35:36 <Uniaika> geekosaur: yup
15:35:53 <shapr> o hi gwern, long time no see
15:35:55 <merijn> geekosaur: My point is, that angry name calling isn't going to lead to a more productive approach
15:36:10 shapr reads the history
15:36:13 <merijn> well, I guess there was no name calling, but you get what I mean
15:36:16 <gwern> shapr: yeah, I usually only show up in haskell circles when something has gone seriously wrong. I have lots of other stuff to do
15:37:13 <shapr> gwern: fair enough, nice to see you in realtime again
15:37:36 <Uniaika> Athas: This has been discussed by the docs task force this morning, and I didn't think tom would start removing stuff right away, because I also wanted some input from the other members of the HF board
15:37:47 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 258 seconds)
15:38:45 <Uniaika> Alright I sent tom an email
15:38:46 <gwern> you seem to be under a misapprehension that tom's removals were just fine, and it's merely a matter of announcing it more politely
15:38:53 <Uniaika> no it's not my point
15:39:07 <Uniaika> but I'm also dealing with IRL stuff so I can't quite explain my point proplerly
15:39:42 hexagenic joins (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815)
15:39:43 <Uniaika> Tom should have talked publicly about what he wanted to do, get more feedback, discuss with stakeholders (like the XMonad people about the XMonad article), and then suggest articles for deletion
15:39:55 <gwern> I object to this from start to finish. the idea of mass purging and kicking out small projects is bad. you haven't *remotely* consulted with past and current hawiki editors (who wrote the stuff you are so cavalierly talking about purging). you haven't justified the benefits to the community. your remedy of deletion is about the worst possible, and the selection of deletions was *extremely* poor.
15:40:41 <shapr> I was hawiki maintainer for a bunch of years, but I'm not sure who was after me.
15:41:02 <tomjaguarpaw> Hey folks, I got far too carried away
15:41:24 <shapr> I think the last change from moinmoin to mediawiki involved setting the previous wiki to read only for a few months before removal.
15:41:34 <shapr> That gave people a chance to port over valued content.
15:41:41 <Uniaika> could you please restore the XMonad articles and consult with the community before proceeding to mass-deletions, tomjaguarpaw?
15:41:53 <tomjaguarpaw> gwern: Point well taken and thanks for acting as a safety net
15:41:59 <gwern> Uniaika: I've already rolled back all his edits, I said
15:42:04 <tomjaguarpaw> gwern: Thanks
15:42:10 <shapr> I'm glad to see activity on the wiki, I'm now motivated to figure out how to login to my account again.
15:42:16 <Uniaika> gwern: sorry, didn't read that bit
15:42:27 <Uniaika> shapr: I wish I had an account…
15:42:39 <gwern> ...you don't even have an account?
15:42:44 <shapr> I don't remember how to get a new account, but I'll figure it out.
15:42:46 <Uniaika> let me rephrase it
15:43:01 <DigitalKiwi> is it like hackage and you have to get a person to make it lol
15:43:02 <Uniaika> I wish someone had answered the various emails I sent because the account creation is locked due to spam
15:43:02 Solid joins (~blyat@unaffiliated/solid-)
15:43:09 <Uniaika> there
15:43:16 <Uniaika> that's closer to reality
15:43:21 <Uniaika> 🙃
15:43:42 carlomagno joins (~cararell@148.87.23.12)
15:43:48 <shapr> oh man, my user page on the wiki was last modified in 2012
15:43:54 <DigitalKiwi> wonder how many people don't fix it because they don't have account
15:44:05 <Uniaika> s/don't/can't/
15:44:26 <shapr> Sounds like that's something to fix, maybe allow existing users to send invitations to new users?
15:44:46 <sm[m]> wb gwern !
15:44:59 irchaxwell_ joins (~IRC@2a00:23a8:4382:a900:e5a6:8cfe:15f7:e24a)
15:45:20 <Uniaika> shapr: but who would be responsible for implementing that? :)
15:45:29 <texasmynsted> merijn: "The solution is to use "cabal run" for that, tbh". That is what is doing before. I tried installing to target, but I now recall there is no "uninstall". I will go back to cabal run.
15:45:42 <merijn> texasmynsted: I do have a life-hack for you
15:45:57 <texasmynsted> uh oh. What is that?
15:46:18 <merijn> texasmynsted: https://paste.tomsmeding.com/m0aAjCav
15:46:36 <merijn> Replace with path to project file as appropriate
15:47:02 <merijn> If you name that the same way as your executable you can use that shell script as if it's the real executable :)
15:47:24 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
15:47:41 <merijn> texasmynsted: It's what I use to test stuff I hack on, because typing "cabal run" is a hassle :p
15:47:44 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
15:47:50 <shapr> on the good side, I'm now logged into the wiki again
15:47:58 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
15:48:03 <sm[m]> it's easy to accidentally think the wiki is dead and useless, because most stakeholders (folks who worked on it, folks who still use it) aren't involved in the latest haskell chat. Sometimes a trial mass deletion is the only way to find out I guess.
15:48:08 <shapr> Uniaika: first step is to figure out who can approve new users
15:48:16 <merijn> texasmynsted: As a bonus, that works from anywhere on your path if the path to --project-file is absolute :)
15:48:24 × irchaxwell quits (~IRC@2a00:23a8:4382:a900:a5ea:eb26:ed91:a1c3) (Ping timeout: 240 seconds)
15:48:53 <Uniaika> shapr: gonna be honest with you, I'm not doing that kind of manhunt for a bloody wiki account
15:48:54 <texasmynsted> that is a nice idea
15:48:59 <merijn> texasmynsted: Or you can do some extra shell-scripting and look for the project file relative to the script
15:49:07 <shapr> Uniaika: fair enough, I'll see if I can figure it out
15:49:17 <Uniaika> shapr: fantastic, thanks
15:49:35 <shapr> gwern: do you happen to know who's the person responsible for the Haskell wiki these days?
15:49:44 <gwern> no
15:49:49 <shapr> ok, I'll ask around
15:50:03 <merijn> texasmynsted: Taken to it's extreme: https://github.com/merijn/Belewitte/blob/master/cabal-run.sh :p
15:50:25 hackage type-of-html 1.6.2.0 - High performance type driven html generation. https://hackage.haskell.org/package/type-of-html-1.6.2.0 (knupfer)
15:50:39 × cob123 quits (25e4f694@37.228.246.148) (Quit: Connection closed)
15:50:51 <shapr> Hm, I have wiki edits from 2006 - 2012
15:50:58 <sm[m]> shapr++, fixing management of the wiki seems like task 1
15:51:42 <Uniaika> 🙃
15:51:46 <Uniaika> why are we like this
15:51:58 <shapr> Uniaika: people get distracted by life?
15:52:06 <texasmynsted> nice
15:52:25 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
15:52:29 <texasmynsted> Could make that a shell function, and it would stay loaded in the shell all the time.
15:52:54 <Uniaika> shapr: people can be distracted by life, I totally agree, but moderating a community platform with user-generated content is very demanding work
15:53:01 <shapr> aha, people who can create accounts on the wiki include byorgey, gwern, davean, and some others.
15:53:23 <shapr> Uniaika: oh I agree, I organized the haskell wiki for some years before the current incarnation, it was a bunch of work.
15:53:46 <texasmynsted> the only way to "cabal uninstall " is to rm the installed file or symlink, right?
15:53:53 <DigitalKiwi> merijn: now this is extreme https://gist.github.com/Kiwi/ffc08bffb15798dc4b1ec2a1c47c6191#file-program-cabal-hs
15:54:09 <shapr> This info is available on https://wiki.haskell.org/index.php?title=Special%3AListUsers&username=&group=sysop&limit=50
15:54:58 <sm[m]> Uniaika: I love your work on improving docs. People put a lot of love and free time into that wiki content, so naturally deleting stuff needs to be done with some sensitivity
15:55:10 dftxbs3e joins (~dftxbs3e@unaffiliated/dftxbs3e)
15:55:18 × mceier quits (~mceier@89-68-132-187.dynamic.chello.pl) (Quit: leaving)
15:55:31 <shapr> How do I get into the docs effort? I had a bad experience with http-client this week and would like to prevent others from having that problem.
15:56:13 <DigitalKiwi> don't use http-client, got it
15:56:40 <shapr> DigitalKiwi: heh, my problem was about how to correctly pass cookies to subsequent requests, with expiration
15:56:55 minoru_shiraeesh joins (~shiraeesh@46.34.206.235)
15:57:14 <Athas> Was there a time when the Haskell wiki wasn't such a wasteland?
15:57:23 <shapr> Shouldn't have taken me as long as it did, and I'd like to update the docs to remove confusing references.
15:57:24 <Athas> I don't think I ever read it much myself.
15:57:34 <shapr> Athas: certainly, the monad reader started as a wiki-only publication
15:57:42 <tdammers> merijn: no, haven't seen that
15:57:48 <sm[m]> sure.. wikis are always work in progress, but they are usually best when actively being edited
15:57:57 <sm[m]> there is excellent content in there
15:58:12 <shapr> Maybe I should put my http-client adventures on the wiki
15:58:40 <Uniaika> shapr: See http-client's repo, check with the maintainer
15:58:53 <DigitalKiwi> shapr: i just avoid anything by snoyberg and life is better
15:58:54 <shapr> will do, thanks
15:58:56 <Uniaika> oh, it's Snoyman
15:58:57 <sm[m]> but for a wiki to continue being actively edited, it needs to be maintained in such a way that that is easy and attractive. (That got harder as spam increased)
15:59:15 <shapr> DigitalKiwi: eh, there's lots of good stuff
15:59:44 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
15:59:48 <DigitalKiwi> o
15:59:51 <DigitalKiwi> ooops
15:59:52 <shapr> I was happy to see my haddock bug reports fixed in the GHC 9
16:00:11 <Uniaika> shapr: which one was it?
16:00:30 <DigitalKiwi> i'm going to start sending snoyberg an invoice every time i waste time making a cabal file when people don't commit the cabal file from hpack
16:00:51 <Uniaika> hahaha
16:01:14 <shapr> Uniaika: big piles of invalid haddocks produced at work, here's an example https://github.com/haskell/haddock/issues/1174
16:01:43 <shapr> I reported six issues I couldn't find in the existing bug reports
16:02:44 <shapr> We have about 300k lines of proprietary Haskell in our repo, and I was running our internal hoogle until parse errors broke too many things.
16:03:11 <DigitalKiwi> https://gist.github.com/Kiwi/99db7d56d979cc60b514e417669b56ff super fun
16:03:17 <Uniaika> ah yes, nitro12 took care of it
16:03:21 <Uniaika> I recall
16:03:41 <DigitalKiwi> shapr: last time i heard about http-client here lol https://github.com/snoyberg/http-client/issues/452
16:03:55 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
16:04:12 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 260 seconds)
16:05:00 <shapr> Maybe snoyberg maintains a whole bunch of open source repos and it gets tiring?
16:05:18 <shapr> I think I have ... three users? for my software and I still don't have time to keep up with feature requests.
16:05:26 mceier joins (~mceier@89-68-132-187.dynamic.chello.pl)
16:05:53 <shapr> would be nice to have newer http features in the Haskell clients
16:05:59 <DigitalKiwi> we need more edwardk
16:06:09 <shapr> as always
16:06:17 <DigitalKiwi> let's clone him
16:07:02 <shapr> I never did nail down the right way to pass along cookies to http-client requests, but I'd like to write some tests that cover cookie expiration and updating.
16:07:15 <shapr> Actually, I'd like the http manager to handle that for me
16:09:00 Jd007 joins (~Jd007@162.156.11.151)
16:09:06 × darjeeling_ quits (~darjeelin@122.245.120.134) (Ping timeout: 265 seconds)
16:10:24 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
16:10:50 frozenErebus joins (~frozenEre@94.128.81.133)
16:12:55 × glguy quits (x@freenode/staff/haskell.developer.glguy) (Quit: Quit)
16:13:03 glguy joins (x@freenode/staff/haskell.developer.glguy)
16:16:14 <merijn> DigitalKiwi: Good news for you :p
16:16:28 <merijn> DigitalKiwi: Even Snoyman now recommends committing cabal files :p
16:17:41 × Tops2 quits (~Tobias@dyndsl-095-033-091-182.ewe-ip-backbone.de) (Read error: Connection reset by peer)
16:18:10 <Athas> I just dumped hpack entirely a year ago. I still think the .cabal format is bad for reasons that boil down to maintainer preferences, but I can live with it now that it has common stanzas.
16:18:28 × amiri quits (~amiri@cpe-76-91-154-9.socal.res.rr.com) (Remote host closed the connection)
16:18:40 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
16:19:03 <Uniaika> yeah common stanzas are a godsend
16:19:32 <Uniaika> I went back to cabal with 'index-state' and 'with-compiler' in my cabal.project, and it does the job
16:19:44 <Uniaika> doesn't support package sets yet but I don't need that for my personal stuff
16:20:31 metreo joins (~Thunderbi@unaffiliated/metreo)
16:20:40 livvy joins (~livvy@gateway/tor-sasl/livvy)
16:20:52 <Uniaika> cross-posting here: Does anyone here have a head.hackage integration for GitHub Actions?
16:21:00 amiri joins (~amiri@cpe-76-91-154-9.socal.res.rr.com)
16:21:42 <merijn> Uniaika: Improving the GitHub Actions stuff generated by haskell-CI is on my to do list and I have a bunch of half fixed stuff atm, but eh, don't hold your breath for now :p
16:22:32 darjeeling_ joins (~darjeelin@122.245.216.78)
16:22:34 <Uniaika> merijn: it's okay, since it's for Haddock, we shall get the errors when the GHC test suite is ran
16:22:42 <Uniaika> merijn: but great, thanks for letting me know that you're working on it
16:23:06 <merijn> Uniaika: I have important higher priority jobs first, like "curl up in fetal position and cry" >.>
16:23:08 <Uniaika> merijn: you should ping Taylor Fausak when it's ready, I'd love to see that kind of things in haskellweekly.news
16:23:15 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
16:23:15 Uniaika pats merijn
16:23:17 <Uniaika> there, there
16:23:34 <Uniaika> I would have taken that off your shoulders but my head can only support so many hats
16:23:47 elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
16:23:59 <merijn> Uniaika: Also, the continent can only support so many yaks :p
16:24:24 <Uniaika> :3
16:25:07 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Remote host closed the connection)
16:25:15 Jonkimi727406120 joins (~Jonkimi@111.60.233.69)
16:26:30 metro joins (~Thunderbi@unaffiliated/metreo)
16:26:54 metro parts (~Thunderbi@unaffiliated/metreo) ()
16:26:56 × metreo quits (~Thunderbi@unaffiliated/metreo) (Ping timeout: 240 seconds)
16:26:59 × frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 265 seconds)
16:27:07 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
16:27:27 × Kipras_ quits (~Kipras@78-56-235-39.static.zebra.lt) (Read error: Connection reset by peer)
16:27:48 × glguy quits (x@freenode/staff/haskell.developer.glguy) (Quit: Quit)
16:28:37 glguy joins (x@freenode/staff/haskell.developer.glguy)
16:28:40 <DigitalKiwi> https://mostlyabsurd.com/files/clone-edward
16:28:52 frozenErebus joins (~frozenEre@94.128.81.133)
16:28:57 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
16:31:40 DigitalKiwi wonders if that should do submodules...
16:32:06 <merijn> DigitalKiwi: Naah, because submodules are awful!
16:32:28 <DigitalKiwi> but then it is not a full clone of edward
16:33:58 alfianguide joins (67691c99@103.105.28.153)
16:34:10 <alfianguide> Hi there, I'm new to haskell!
16:34:39 jrp joins (05501e8f@5.80.30.143)
16:35:17 <alfianguide> How to get started with haskell?
16:35:43 <dmj`> alfianguide: www.haskell.org
16:35:51 <DigitalKiwi> first you learn agda; /s
16:35:56 livvy joins (~livvy@gateway/tor-sasl/livvy)
16:36:22 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
16:36:26 <dmj`> alfianguide: https://github.com/bitemyapp/learnhaskell
16:36:31 <alfianguide> cool.
16:36:33 <DigitalKiwi> (this would result in infinite recursion)
16:36:41 <alfianguide> ah really?
16:37:02 <DigitalKiwi> http://learnyouanagda.liamoc.net/pages/introduction.html#step-one-learn-haskell
16:37:06 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
16:37:31 <alfianguide> But? I don't want to learn agda?
16:37:45 <DigitalKiwi> thus the /s
16:37:47 <merijn> alfianguide: DigitalKiwi was making a joke
16:37:50 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
16:38:24 <DigitalKiwi> you don't want to learn agda *yet*
16:38:39 <alfianguide> I came from Rescript || Reason thought it's just like making major breaking changes on syntax, I wanna just learn haskell, which I think, stable?
16:39:01 <merijn> alfianguide: Graham Hutton's "Programming in Haskell", Richard Bird's "Thinking Functionally with Haskell", and the "Haskell from First Principles" books are decent books for getting started
16:39:04 <sm[m]> er.. yes ?
16:39:12 <DigitalKiwi> i was about to recommend PiH
16:39:17 <sm[m]> We're stabley
16:39:26 <DigitalKiwi> and richard bird books are <3
16:40:14 <DigitalKiwi> wait do i have the new algorithms one or not D:
16:40:41 <alfianguide> DigitalKiwi I found agda is scratch version of haskell
16:40:52 <sm[m]> alfianguide: also
16:40:52 <sm[m]> @where htac
16:40:52 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
16:40:58 <merijn> alfianguide: Agda is an entirely different language :)
16:41:09 <alfianguide> but it's use cabal?
16:41:23 <merijn> alfianguide: The compiler for it is written in Haskell
16:41:55 <alfianguide> ahh I see, compiler is separated with what language truly is.
16:42:13 <DigitalKiwi> turns out haskell is good at making compilers other than ghc
16:42:28 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 276 seconds)
16:42:34 <shapr> all the compilers
16:42:48 <DigitalKiwi> pandoc is a compiler, pmw
16:42:54 hackage rattletrap 9.4.0 - Parse and generate Rocket League replays. https://hackage.haskell.org/package/rattletrap-9.4.0 (fozworth)
16:43:22 <merijn> alfianguide: Most compilers aren't written in the language they compile (at least, not at first)
16:43:23 <DigitalKiwi> hakyll, compiler
16:43:36 <merijn> DigitalKiwi: Everything's a compiler if you squint >.>
16:43:41 <DigitalKiwi> :D
16:44:00 <Uniaika> I mean
16:44:03 <Uniaika> kinda-sorta
16:44:11 <DigitalKiwi> (i was thinking it)
16:44:48 <DigitalKiwi> compilers until you get to turtles
16:45:47 Solid parts (~blyat@unaffiliated/solid-) ("WeeChat 3.0")
16:45:49 <DigitalKiwi> 1980 - Alan Kay creates Smalltalk and invents the term "object oriented." When asked what that means he replies, "Smalltalk programs are just objects." When asked what objects are made of he replies, "objects." When asked again he says "look, it's all objects all the way down. Until you reach turtles."
16:46:16 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:b547:11f6:98ac:60d3) (Quit: My MacBook has gone to sleep. ZZZzzz…)
16:46:45 × glguy quits (x@freenode/staff/haskell.developer.glguy) (Quit: Quit)
16:47:17 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
16:47:30 glguy joins (x@freenode/staff/haskell.developer.glguy)
16:47:37 × irchaxwell_ quits (~IRC@2a00:23a8:4382:a900:e5a6:8cfe:15f7:e24a) (Quit: Leaving)
16:48:51 stampirl joins (~stampirl@195-154-112-77.rev.poneytelecom.eu)
16:49:25 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 256 seconds)
16:51:11 ixaxaar joins (~ixaxaar@49.207.210.215)
16:52:25 hackage ghc-lib-parser 8.10.4.20210206 - The GHC API, decoupled from GHC versions https://hackage.haskell.org/package/ghc-lib-parser-8.10.4.20210206 (shayne_fletcher)
16:53:25 hackage ghc-lib 8.10.4.20210206 - The GHC API, decoupled from GHC versions https://hackage.haskell.org/package/ghc-lib-8.10.4.20210206 (shayne_fletcher)
16:53:42 <pjb> DigitalKiwi: but a few year later, he also said that it was an error to stress the objects, that smalltalk was actually all about the messages.
16:54:25 <DigitalKiwi> so the messaging wasn't clear?
16:54:45 <sm[m]> now he tries to stay on message
16:55:21 <tomjaguarpaw> Did the community object to his message?
16:55:42 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
16:56:08 <DigitalKiwi> they looked at what the language offered and passed :(
16:56:37 <ij> I think I've written a broken Ord instance. I want to order `data XY = (Int, Int) Int' by second field for Set.deleteFindMin, but eq by both fields. I cannot Set.delete one of the values. Here's the code: http://sprunge.us/NSW3fk
16:57:12 × alfianguide quits (67691c99@103.105.28.153) (Quit: Ping timeout (120 seconds))
16:57:21 × jrp quits (05501e8f@5.80.30.143) (Quit: Ping timeout (120 seconds))
16:58:17 <tomjaguarpaw> ij: For one thing, you've written 'ax /= ax'
16:58:22 alfianguide joins (67691c99@103.105.28.153)
16:59:40 × wz1000 quits (~wz1000@static.11.113.47.78.clients.your-server.de) (Ping timeout: 272 seconds)
17:00:26 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
17:00:33 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
17:00:34 <ij> well that fixes it, but for the instance with more values in the actual code is still broken :/
17:01:03 <tomjaguarpaw> It seems unwise to write on Ord instance that's not a total order. What are you actually trying to do?
17:01:21 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
17:01:43 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
17:01:55 × Jd007 quits (~Jd007@162.156.11.151) (Quit: Jd007)
17:02:02 <ij> "The Ord class is used for totally ordered datatypes."
17:02:05 <ij> whoops
17:03:15 perdent joins (~perdent@101.175.174.67)
17:03:37 × alfianguide quits (67691c99@103.105.28.153) (Quit: Connection closed)
17:04:43 evanjs- is now known as evanjs
17:04:51 <ij> take the element with the smallest score out of the Set and solve with that
17:05:02 <ij> if I make it a total order, the priority is screwed
17:05:54 <ij> https://hackage.haskell.org/package/pomaps-0.2.0.0/docs/Data-POSet.html
17:06:42 <DigitalKiwi> unfortunate name
17:07:23 <merijn> how so?
17:07:47 × hiroaki quits (~hiroaki@2a02:908:4b18:8c40::8d4b) (Ping timeout: 265 seconds)
17:07:47 × TimWolla quits (~timwolla@2a01:4f8:150:6153:beef::6667) (Quit: Bye)
17:07:52 <merijn> poset is pretty standard terminology
17:07:55 <DigitalKiwi> i'm sure it stands for Point Of Sale and not the other P of S
17:08:54 Liskni_si joins (~liskin@ackle.nomi.cz)
17:09:05 conal joins (~conal@185.189.161.154)
17:11:23 nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313)
17:11:58 <ij> I'd heard "poset" before. "poset" also has a mention in wikipedia's "partially ordered set"
17:15:45 LKoen is now known as ElkOwen
17:16:14 × nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Ping timeout: 264 seconds)
17:17:30 × Franciman quits (~francesco@host-95-235-155-82.retail.telecomitalia.it) (Quit: Leaving)
17:18:11 j2t_ joins (~j2t@84.122.202.215.dyn.user.ono.com)
17:18:17 garFF_ joins (~garff@80.71.142.8)
17:18:21 frozenEr1bus joins (~frozenEre@94.128.81.133)
17:20:34 × ukari quits (~ukari@unaffiliated/ukari) (Ping timeout: 276 seconds)
17:20:34 × Jonkimi727406120 quits (~Jonkimi@111.60.233.69) (Ping timeout: 276 seconds)
17:20:49 × frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 276 seconds)
17:20:49 × gentauro quits (~gentauro@unaffiliated/gentauro) (Ping timeout: 276 seconds)
17:21:02 gentauro joins (~gentauro@unaffiliated/gentauro)
17:21:28 × garFF quits (~garff@80.71.142.8) (Ping timeout: 276 seconds)
17:21:28 × j2t quits (~j2t@84.122.202.215.dyn.user.ono.com) (Ping timeout: 276 seconds)
17:22:48 <maralorn> I think if you have heard a graduate level course from logic or theoretical cs, yep, that's totally standard terminology. (Although standard terminology is something completely different than good terminology.) ^^
17:24:48 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Remote host closed the connection)
17:24:54 × loli quits (~loli@024-171-017-003.res.spectrum.com) (Quit: WeeChat 3.0)
17:25:05 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
17:26:49 loli joins (~loli@024-171-017-003.res.spectrum.com)
17:27:03 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
17:28:33 TimWolla joins (~timwolla@chrono.xqk7.com)
17:29:25 <j2t_> hi, i have this snippet https://pastebin.com/vJ8rvsf6. Somewhere there must be something inefficient here. Also, line 53 prints the result of the first query almost instantly after running, however, then there are 8 seconds nothing is getting printed and suddenlly the rest of prints execute at the same time. Maybe someone can see something and could point to the right direction.
17:29:31 Jonkimi727406120 joins (~Jonkimi@111.60.233.69)
17:29:40 <Squarism> what is required to omit your function from a view pattern like : case foo of ; (-> MyPattern) -> ...
17:30:03 <merijn> Squarism: eh...
17:30:13 <merijn> Squarism: View pattern without a function is just a pattern?
17:30:36 <merijn> So, just don't have the ->? >.>
17:31:03 <Squarism> i might have gotten it wrong, they were just talking about it https://gitlab.haskell.org/ghc/ghc/-/wikis/view-patterns
17:31:20 <Squarism> never used them before so just experimenting atm
17:31:46 <merijn> gitlab isn't loading for me
17:32:07 <merijn> Squarism: Anyway "view pattern with an omitted function" sounds nonsensical to me
17:32:48 <Squarism> hehe.. i can see your point. I just need to use them to get a feel what is possible. Ommitting the function name sounded less verbose to me
17:32:51 <merijn> The entire point of view patterns is "apply a function before pattern matching" if you leave out the function you just have "pattern matching"
17:33:45 × hexagenic quits (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815) (Ping timeout: 272 seconds)
17:34:19 vicfred joins (~vicfred@unaffiliated/vicfred)
17:35:15 <Squarism> To me it sounds like the function is called you just leave out its name
17:35:39 × mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Ping timeout: 272 seconds)
17:38:25 hackage PyF 0.9.0.3 - Quasiquotations for a python like interpolated string formater https://hackage.haskell.org/package/PyF-0.9.0.3 (guibou)
17:38:52 × wowi42 quits (~wowi42@51.15.249.183) (Quit: Kowa Bunga!!!)
17:39:10 <j2t_> sorry, i think i got it, haskell's [] are list, not vectors, so accessing elements with !! is O(n), right?
17:39:20 livvy joins (~livvy@gateway/tor-sasl/livvy)
17:39:31 <hololeap> thanks tomsmeding, i had a feeling i was giving megaparsec too much responsibility :)
17:39:55 <merijn> j2t_: Correct
17:40:09 <j2t_> and (!) from DAta
17:40:15 <merijn> j2t_: If you want random access and, well, vectors you want
17:40:17 <merijn> @hackage vector
17:40:17 <lambdabot> https://hackage.haskell.org/package/vector
17:40:22 <j2t_> .Vector is O(1), right?
17:40:27 hexagenic joins (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815)
17:40:45 <j2t_> sorry, have hit enter in the middle of sentence :)
17:40:55 <j2t_> thank you merijn!
17:41:20 <tomsmeding> hololeap: cheers :)
17:41:29 <merijn> j2t_: Vector is as O(1) as C's arrays and C++'s std::vector (the actual O(1)-ness is debatable :p)
17:42:07 wz1000 joins (~wz1000@static.11.113.47.78.clients.your-server.de)
17:43:50 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Remote host closed the connection)
17:43:59 <Liskni_si> gwern: if the "xmonad people" decided to move their part of the wiki to github wiki, would you be against that? I feel like we may possibly get more contributions that way, although I'm not entirely sure
17:45:31 × Jonkimi727406120 quits (~Jonkimi@111.60.233.69) (Ping timeout: 256 seconds)
17:45:37 × Bergle_2 quits (~Bergle_4@101.165.90.119) (Remote host closed the connection)
17:47:24 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
17:47:43 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
17:47:46 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
17:48:10 Bergle_2 joins (~Bergle_4@101.165.90.119)
17:48:25 × conal quits (~conal@185.189.161.154) (Ping timeout: 272 seconds)
17:53:04 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 240 seconds)
17:53:40 conal joins (~conal@185.189.161.154)
17:54:43 livvy joins (~livvy@gateway/tor-sasl/livvy)
17:57:18 × rajivr quits (uid269651@gateway/web/irccloud.com/x-nuivuijufgkwhojx) (Quit: Connection closed for inactivity)
17:58:52 raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
17:59:50 × j2t_ quits (~j2t@84.122.202.215.dyn.user.ono.com) (Ping timeout: 272 seconds)
18:01:25 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
18:02:01 <Liskni_si> gwern: (should have said "to e.g. github wiki", as there are other options, like the reddit wiki, which is also somewhat likely to be active, as /r/xmonad is still very much alive)
18:02:03 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 246 seconds)
18:02:21 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
18:02:50 Jd007 joins (~Jd007@162.156.11.151)
18:03:07 × david__ quits (~david@234.109.45.217.dyn.plus.net) (Remote host closed the connection)
18:04:08 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
18:05:51 × Jd007 quits (~Jd007@162.156.11.151) (Client Quit)
18:06:12 DavidEichmann joins (~david@234.109.45.217.dyn.plus.net)
18:06:33 <gwern> 'Paul Krugman has a new Substack'
18:06:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
18:08:23 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Remote host closed the connection)
18:08:59 <aldum> oh bog
18:09:53 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
18:11:24 jrp joins (05501e8f@5.80.30.143)
18:11:46 <aldum> I guess NYT is not cool anymore?
18:11:49 aveltras joins (uid364989@gateway/web/irccloud.com/x-uciaeklfznlzzgxk)
18:12:48 <jrp> The Conor McBride paper Clowns to the left of me, jokers to the right (pearl): dissecting data structures says in its abstract that  "The source code for the paper is available online and compiles with recent extensions to the Glasgow Haskell Compiler."  Has anyone got a link to that, please?
18:14:30 revprez_stg joins (~revprez_s@pool-108-49-213-40.bstnma.fios.verizon.net)
18:18:02 juuandyy joins (~juuandyy@90.106.228.121)
18:19:34 × frozenEr1bus quits (~frozenEre@94.128.81.133) (Ping timeout: 256 seconds)
18:21:18 × Katarushisu quits (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Ping timeout: 246 seconds)
18:21:22 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
18:21:48 × dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection)
18:21:52 Katarushisu joins (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net)
18:22:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:23:36 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
18:23:40 livvy joins (~livvy@gateway/tor-sasl/livvy)
18:24:31 × Murasca quits (~Murasca@bcde0474.skybroadband.com) (Ping timeout: 272 seconds)
18:26:11 × conal quits (~conal@185.189.161.154) (Quit: Computer has gone to sleep.)
18:27:25 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
18:28:05 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:28:14 <hololeap> working with ByteStrings in megaparsec is a bit cumbersome. what alternatives do i have to writing `char . fromIntegral . ord` whenever i want to match an ASCII character?
18:28:41 <hololeap> (or writing the character in hex... 0x30)
18:29:47 × Quarl quits (~Quarl@h-155-4-128-37.NA.cust.bahnhof.se) (Quit: Leaving)
18:30:03 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
18:30:23 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
18:30:34 <glguy> You could define the once and then use the thing you defined
18:30:40 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
18:31:01 polyphem joins (~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
18:31:07 × geekosaur quits (ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Quit: Connection closed)
18:32:00 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
18:32:36 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
18:32:56 <hololeap> define the same helper function in every project? that makes me feel like i'm approaching something in the wrong way
18:33:00 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
18:33:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
18:33:27 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
18:33:43 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
18:33:45 <hololeap> should i be converting to/from Text if it's supposed to be text from a pipe or stdin?
18:33:46 cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt)
18:34:14 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:34:45 <cgadski> I'm trying to remember the name of a definition, but I can only remember the definition itself! I wonder if anybody has seen this
18:35:20 × poscat quits (~poscat@123.116.95.228) (Quit: ZNC 1.8.2 - https://znc.in)
18:35:39 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
18:35:39 <cgadski> definition: when X is a set, a ??? on X is a collection U of subsets of X so that whenever A and B are elements of X and A is a subset of B, A equals B
18:35:49 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
18:35:58 <cgadski> in other words, U has no non-trivial chains
18:35:59 poscat joins (~poscat@123.116.95.228)
18:36:17 <cgadski> this is, allegedly, some sort of "generalized graph-like structure"
18:36:25 nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313)
18:36:40 <cgadski> oops: s/A and B are elements of X/A and B are elements of U
18:36:49 <hololeap> almost sounds like a topology, but i'm not a math person
18:37:01 × ElkOwen quits (~LKoen@252.248.88.92.rev.sfr.net) (Remote host closed the connection)
18:37:01 kw joins (d4662d5d@212.102.45.93)
18:37:37 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
18:38:21 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
18:38:23 <kw> I'm getting a parse error on `import Codec.Binary.UTF8.Generic` right on the period before "UTF8". What stupid mistake am I making?
18:39:05 <koz_> maerwald: Is ghcup gonna have 8.10.4 available?
18:39:29 <hololeap> cgadski: or a poset? something about your definition seems off
18:39:33 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
18:39:37 × ph88^ quits (~ph88@ip5f5af71a.dynamic.kabel-deutschland.de) (Remote host closed the connection)
18:39:37 × Bergle_2 quits (~Bergle_4@101.165.90.119) (Remote host closed the connection)
18:39:47 <cgadski> I meant to ask this in ##math, sorry!
18:39:52 ph88^ joins (~ph88@ip5f5af71a.dynamic.kabel-deutschland.de)
18:39:58 Bergle_2 joins (~Bergle_4@101.165.90.119)
18:39:59 <cgadski> hololeap: yes, it's not a standard definition
18:40:05 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:40:14 <hololeap> how could A be a subset of B if they are both elements of X?
18:40:45 <cgadski> A and B are elements of U. I made a typo there
18:41:04 × nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Ping timeout: 265 seconds)
18:43:36 <hololeap> cgadski: what was the answer?
18:43:47 <cgadski> an antichain
18:43:57 <hololeap> oh, ok. haven't heard of that one
18:47:25 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
18:47:45 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
18:47:53 Anandamide joins (49a90352@c-73-169-3-82.hsd1.co.comcast.net)
18:48:09 Guest_80 joins (b0bac553@176.186.197.83)
18:48:22 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
18:48:23 × Guest_80 quits (b0bac553@176.186.197.83) (Client Quit)
18:49:27 ElkOwen joins (~LKoen@252.248.88.92.rev.sfr.net)
18:50:27 conal joins (~conal@66.115.157.37)
18:52:24 <kw> Oh, somehow CPP was choking on it.
18:52:36 <kw> Fun.
18:52:42 × kw quits (d4662d5d@212.102.45.93) (Quit: Connection closed)
18:53:10 usr25 joins (~J@43.red-83-41-28.dynamicip.rima-tde.net)
18:53:26 × RusAlex quits (~Chel@unaffiliated/rusalex) (Ping timeout: 265 seconds)
18:53:37 <merijn> That's because the universe frowns upon CPP :p
18:54:19 mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d)
18:57:07 × saitamaplus quits (uid272474@gateway/web/irccloud.com/x-vvqrfgmnjtrulshp) (Quit: Connection closed for inactivity)
18:58:19 × elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 276 seconds)
18:58:27 × ryantrinkle quits (~ryan@cpe-24-168-87-184.si.res.rr.com) (Remote host closed the connection)
19:00:25 jamm_ joins (~jamm@unaffiliated/jamm)
19:00:41 hyperisco joins (~hyperisco@104-195-141-253.cpe.teksavvy.com)
19:03:09 × raehik1 quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
19:03:30 berberman_ joins (~berberman@unaffiliated/berberman)
19:04:24 × jamm_ quits (~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds)
19:04:27 × berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds)
19:05:10 raehik1 joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
19:05:14 neiluj_ joins (~jco@91-167-203-101.subs.proxad.net)
19:06:22 × DavidEichmann quits (~david@234.109.45.217.dyn.plus.net) (Remote host closed the connection)
19:06:58 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
19:07:27 Jonkimi727406120 joins (~Jonkimi@111.60.233.69)
19:08:21 nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313)
19:09:40 × neiluj_ quits (~jco@91-167-203-101.subs.proxad.net) (Client Quit)
19:09:50 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
19:10:03 coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
19:10:12 × nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Remote host closed the connection)
19:10:51 nineonine joins (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313)
19:12:13 × Jonkimi727406120 quits (~Jonkimi@111.60.233.69) (Ping timeout: 256 seconds)
19:15:04 × nineonine quits (~nineonine@2604:3d08:7785:9600:acd4:a5be:3be2:2313) (Ping timeout: 240 seconds)
19:15:42 quinn joins (~quinn@c-73-223-224-163.hsd1.ca.comcast.net)
19:16:05 × elliott_ quits (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
19:18:31 × coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
19:19:29 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
19:19:34 mp___ joins (mp@hell.cx)
19:20:22 frozenErebus joins (~frozenEre@94.128.81.133)
19:25:28 elliott_ joins (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net)
19:25:32 × danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 246 seconds)
19:25:49 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
19:25:57 hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-tannjxvhvijjixbp)
19:26:32 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Remote host closed the connection)
19:27:08 nbloomf joins (~nbloomf@2600:1700:ad14:3020:b547:11f6:98ac:60d3)
19:31:02 elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
19:31:05 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Quit: I should configure a BNC or use tmux but I'm lazy.)
19:34:00 livvy joins (~livvy@gateway/tor-sasl/livvy)
19:34:23 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
19:37:17 Wuzzy joins (~Wuzzy@p57a2e44e.dip0.t-ipconnect.de)
19:37:23 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
19:43:26 × usr25 quits (~J@43.red-83-41-28.dynamicip.rima-tde.net) (Ping timeout: 256 seconds)
19:45:53 acidjnk_new joins (~acidjnk@p200300d0c722c402a0692c439c517619.dip0.t-ipconnect.de)
19:47:04 nhs joins (~nhs@c-24-21-240-83.hsd1.or.comcast.net)
19:47:26 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
19:47:28 coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
19:48:50 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0)
19:49:10 × Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Quit: WeeChat 3.0)
19:49:51 frankdmartinez joins (~frankdmar@138.199.52.84)
19:49:53 <frankdmartinez> 36
19:50:24 × Sgeo quits (~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
19:50:30 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:b547:11f6:98ac:60d3) (Quit: My MacBook has gone to sleep. ZZZzzz…)
19:50:45 × monochrom quits (trebla@216.138.220.146) (Remote host closed the connection)
19:51:58 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
19:51:59 locrian9 joins (~mike@99-153-255-194.lightspeed.irvnca.sbcglobal.net)
19:52:44 <frankdmartinez> The tunes.org website (host site for the IRC logs) is down; can anyone point me in the direction of to whom would I report the outage in case they don’t know yet?
19:52:55 Sgeo joins (~Sgeo@ool-18b98aa4.dyn.optonline.net)
19:53:46 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
19:54:04 <ski> frankdmartinez : in the meantime, you can try
19:54:08 <ski> @where ircbrowse
19:54:08 <lambdabot> https://ircbrowse.tomsmeding.com
19:54:25 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
19:54:49 <ski> sm[m] : heh, i mentioned HTAC two or three times, recently
19:55:39 × livvy quits (~livvy@gateway/tor-sasl/livvy) (Quit: I should configure a BNC or use tmux but I'm lazy.)
19:59:17 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 260 seconds)
20:01:17 <sm[m]> ski: high five ! For years I'm the only one pushing it
20:01:54 <sm[m]> It's really hard to break into the Haskell recommended book list :)
20:02:57 monochrom joins (trebla@216.138.220.146)
20:04:23 × jollygood2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
20:04:32 usr25 joins (~J@43.red-83-41-28.dynamicip.rima-tde.net)
20:06:23 × mirrorbird quits (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d) (Ping timeout: 272 seconds)
20:07:11 seemtav3 joins (~seemtav3@bcde0474.skybroadband.com)
20:08:10 tb15 joins (~textual@253.17.75.194.dyn.plus.net)
20:08:51 <frankdmartinez> ski: Awesome, thanks!
20:11:57 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
20:12:57 perrier-jouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
20:13:45 × frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
20:14:25 × ixaxaar quits (~ixaxaar@49.207.210.215) (Ping timeout: 240 seconds)
20:15:03 <ski> sm[m] : there was someone in #haskell-beginners, the other day, who sounded like the approach in the book would suit them. but not having read it, i couldn't really tell for sure, or recommend it especially
20:15:15 <ski> (i did mention it, though)
20:15:20 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
20:17:13 <sm[m]> I have only skimmed it but I think it's very well written and fills a hole
20:19:01 mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
20:19:44 <ski> the page said it contains a short tutorial to Haskell in the first or first two chapters. so i was wondering whether it was intended to be used in conjunction with something else, or meant to possibly be used stand-alone
20:21:21 frozenErebus joins (~frozenEre@94.128.81.133)
20:21:59 <sm[m]> HTAC ? It's a standalone short book
20:22:10 × pera quits (~pera@unaffiliated/pera) (Ping timeout: 276 seconds)
20:22:42 × juuandyy quits (~juuandyy@90.106.228.121) (Quit: Konversation terminated!)
20:22:56 <sm[m]> Fast paced, hands on, and reasonably up to date
20:23:18 × coot quits (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
20:25:14 ski nods
20:25:42 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
20:26:07 × dibblego quits (~dibblego@haskell/developer/dibblego) (Read error: Connection reset by peer)
20:26:30 RusAlex joins (~Chel@unaffiliated/rusalex)
20:26:55 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
20:27:17 × TimWolla quits (~timwolla@chrono.xqk7.com) (Quit: Bye)
20:27:51 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Remote host closed the connection)
20:27:52 <monochrom> If I write an article (web page) on understanding (or misunderstanding) monads, is it too naughty to give it the title "monad comprehension"? :)
20:28:00 heatsink joins (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04)
20:28:30 <monochrom> Actually it is more about misunderstandings and/or lack of understanding, so maybe "monad miscomprehension" or something.
20:29:42 TimWolla joins (~timwolla@chrono.xqk7.com)
20:29:57 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
20:31:07 <monochrom> It is also full of quiz questions, so how about "the IO test" which is like "the IQ test" but s/Q/O/
20:31:47 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
20:32:47 ezrakilty joins (~ezrakilty@75-172-120-225.tukw.qwest.net)
20:32:56 <ephemient> is mprehension the dual of comprehension
20:33:19 pera joins (~pera@unaffiliated/pera)
20:33:36 × _ashbreeze_ quits (~mark@64.85.214.234.reverse.socket.net) (Remote host closed the connection)
20:33:38 <minoru_shiraeesh> I think you gotta explain the joke about IO test in parentheses.
20:33:40 <monochrom> heh
20:33:42 × ericsagn1 quits (~ericsagne@2405:6580:0:5100:6d02:546e:c760:4274) (Ping timeout: 260 seconds)
20:33:48 × RusAlex quits (~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
20:33:55 <monochrom> Yeah I think "the IO test" doesn't work.
20:34:09 <minoru_shiraeesh> like, (IO like IQ but IO, you see?)
20:34:21 <sm[m]> monochromadic
20:35:00 _ashbreeze_ joins (~mark@64.85.214.234.reverse.socket.net)
20:35:38 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds)
20:36:52 nbloomf joins (~nbloomf@2600:1700:ad14:3020:65b8:f8f6:1ab5:f657)
20:40:50 ski . o O ( incomphrehension )
20:45:53 ericsagn1 joins (~ericsagne@2405:6580:0:5100:8be8:9a09:6ec5:6271)
20:46:00 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
20:46:26 mirrorbird joins (~psutcliff@2a00:801:2d5:848b:590:cf4f:5eeb:b49d)
20:46:26 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
20:46:39 dibblego joins (~dibblego@122-199-1-30.ip4.superloop.com)
20:46:39 × dibblego quits (~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
20:46:39 dibblego joins (~dibblego@haskell/developer/dibblego)
20:48:44 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
20:52:09 × jonathanx_ quits (~jonathan@h-176-109.A357.priv.bahnhof.se) (Ping timeout: 264 seconds)
20:52:14 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
20:54:13 × elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
20:56:34 × cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection)
20:57:26 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
21:00:20 elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
21:00:52 Guest34 joins (~textual@dyn1157-115.insecure.ic.ac.uk)
21:00:58 × Guest34 quits (~textual@dyn1157-115.insecure.ic.ac.uk) (Client Quit)
21:02:13 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
21:04:34 hiroaki joins (~hiroaki@2a02:908:4b18:8c40::8d4b)
21:05:28 RusAlex joins (~Chel@unaffiliated/rusalex)
21:06:14 × _ht quits (~quassel@82.169.194.8) (Remote host closed the connection)
21:11:12 <shapr> Probably a silly question, but what order are the Word8 values in a bytestring? Should I shift left or shift right if I want an Integer value from a cryptonite hash result?
21:11:34 <shapr> I think I get the most significant bytes first, so I should shift left?
21:13:19 <shapr> I'm revisiting code I wrote five years ago for http://codekata.com/kata/kata05-bloom-filters/
21:14:48 <nshepperd> -XMonadApprehensions
21:14:58 shapr is suspicious
21:15:10 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
21:15:33 <shapr> nshepperd: the next day, I realize I don't understand the custom join lattice thing you said
21:16:42 <shapr> oh maybe I do
21:16:47 <nshepperd> i think hash digests are traditionally considered to be most significant bit first when interpreted as numbers
21:17:57 <hololeap> would Data.Binary.decode work?
21:18:19 <nshepperd> not like it makes any difference though, since there shouldn't be any statistically observable differences between each byte order
21:18:21 carlomagno1 joins (~cararell@148.87.23.12)
21:18:39 <shapr> nshepperd: yeah, that's a good point
21:18:47 <shapr> hololeap: huh, that might be easier
21:19:20 × carlomagno quits (~cararell@148.87.23.12) (Ping timeout: 272 seconds)
21:19:26 <hololeap> i literally meant that as a question. i don't know if there is some standard of endianness between binary and cyrptonite
21:20:12 <shapr> right now my code is super cheesy https://github.com/shapr/bloohm/blob/main/src/Bloohm.hs#L38
21:20:17 <shapr> but hey, I get an Integer !
21:20:25 × elliott__ quits (~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
21:21:05 <shapr> next I do a quick survey of bitvector libraries, since I'll need to map this onto the 32 RGB LEDs on this board.
21:21:12 × frozenErebus quits (~frozenEre@94.128.81.133) (Ping timeout: 246 seconds)
21:21:41 <ephemient> message digests are typically emitted low-order byte first, afaik
21:22:06 <shapr> didn't know that
21:22:14 × denisse quits (~spaceCat@gateway/tor-sasl/alephzer0) (Remote host closed the connection)
21:22:15 <hololeap> shapr after reading a bit about the problem, i would think that Data.Hashable would be more suitable
21:22:36 denisse joins (~spaceCat@gateway/tor-sasl/alephzer0)
21:22:38 <monochrom> hololeap: Data.Binary.decode for Integer uses a very specific format that random bytestrings are unlikely to conform in the first place.
21:22:55 <monochrom> Generally, Data.Binary.decode for most standard types.
21:23:21 <shapr> hololeap: Hashable looks like a much better approach, thanks!
21:24:37 fendor_ joins (~fendor@91.141.3.239.wireless.dyn.drei.com)
21:26:30 <shapr> Does anyone have a recommended bit vector library? I was previously using bv, but it hasn't been updated in a while.
21:26:48 × fendor quits (~fendor@178.165.131.204.wireless.dyn.drei.com) (Ping timeout: 246 seconds)
21:28:04 hexfive joins (~hexfive@50.35.83.177)
21:30:17 <shapr> Hm, I can just use Data.Bits on an Int32 ?
21:30:20 shapr tries
21:31:10 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
21:32:22 × acidjnk_new quits (~acidjnk@p200300d0c722c402a0692c439c517619.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
21:32:25 × elliott_ quits (~elliott_@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 240 seconds)
21:33:19 × pieguy128 quits (~pieguy128@bras-base-mtrlpq5031w-grc-39-70-27-244-102.dsl.bell.ca) (Quit: ZNC 1.8.2 - https://znc.in)
21:35:27 × vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
21:35:51 × Lorra quits (~lorenzo@2001:a61:ba6:4501:7c80:c7be:1bd4:2629) (Quit: Konversation terminated!)
21:37:14 vicfred joins (~vicfred@unaffiliated/vicfred)
21:39:49 <koz_> shapr: You can do that. However, I think http://hackage.haskell.org/package/bitvec is what you want.
21:40:40 sMuNiX joins (~sMuNiX@vlnsm8-montreal02-142-122-8-233.internet.virginmobile.ca)
21:41:47 <shapr> koz_: thanks!
21:42:38 <shapr> I've been pairing on this today with a Python coder. They were really impressed with the help I get from haskell-language-server.
21:43:07 <hololeap> shapr: you also might be interested in the BinaryLiterals extension
21:43:10 cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt)
21:43:32 shapr asks the internet about BinaryLiterals
21:43:34 × salumu quits (~sMuNiX@vlnsm8-montreal02-142-122-8-233.internet.virginmobile.ca) (Ping timeout: 256 seconds)
21:43:55 pieguy128 joins (~pieguy128@bras-base-mtrlpq5031w-grc-39-70-27-244-102.dsl.bell.ca)
21:43:56 <shapr> neato!
21:43:58 elliott__ joins (~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
21:44:05 <hololeap> % :set -XBinaryLiterals
21:44:06 <yahb> hololeap:
21:44:12 <hololeap> % 0b00110011
21:44:13 <yahb> hololeap: 51
21:45:38 × carlomagno1 quits (~cararell@148.87.23.12) (Remote host closed the connection)
21:45:50 <monochrom> BinaryLiterals and Area 51...
21:47:10 carlomagno joins (~cararell@148.87.23.12)
21:48:02 <hololeap> maybe 00110011 is the code to open their hangar bay
21:48:13 × garFF_ quits (~garff@80.71.142.8) (Quit: Leaving)
21:48:36 × nhs quits (~nhs@c-24-21-240-83.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
21:48:40 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
21:49:10 garFF joins (~garff@80.71.142.8)
21:51:46 <pjb> (format nil "~B ~B" 51 42) #| --> "110011 101010" |#
21:55:29 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:65b8:f8f6:1ab5:f657) (Quit: My MacBook has gone to sleep. ZZZzzz…)
21:55:35 × hexagenic quits (~mattias@2001:2002:51e0:74c9:5098:c4b6:1b73:7815) (Quit: WeeChat 1.9.1)
21:55:41 × cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection)
21:58:52 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
22:01:21 nbloomf joins (~nbloomf@2600:1700:ad14:3020:65b8:f8f6:1ab5:f657)
22:03:45 denisse_ joins (~spaceCat@gateway/tor-sasl/alephzer0)
22:03:45 × denisse quits (~spaceCat@gateway/tor-sasl/alephzer0) (Ping timeout: 268 seconds)
22:03:52 × garFF quits (~garff@80.71.142.8) (Ping timeout: 265 seconds)
22:07:19 slack1256 joins (~slack1256@45.4.2.52)
22:07:55 cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt)
22:09:31 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
22:12:11 × alx741 quits (~alx741@186.178.110.176) (Quit: alx741)
22:12:25 × danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds)
22:14:40 fendor_ is now known as fendor
22:15:14 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
22:15:31 × __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving)
22:15:36 ADG1089__ joins (~aditya@223.235.245.154)
22:16:50 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
22:16:58 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
22:18:53 × ADG1089__ quits (~aditya@223.235.245.154) (Remote host closed the connection)
22:19:37 × dibblego quits (~dibblego@haskell/developer/dibblego) (Read error: Connection reset by peer)
22:20:52 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
22:21:25 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
22:22:03 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
22:22:14 × danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 264 seconds)
22:22:50 <ezrakilty> Does anyone know what's the state of the art for CI testing with GHC 9.0.1?
22:23:12 <ezrakilty> I've been using hvr's repository of ghc packages here, https://launchpad.net/~hvr/+archive/ubuntu/ghc/+index?batch=75 but it hasn't been updated with 9.0.1 yet.
22:27:45 × DataComputist quits (~lumeng@50.43.26.251) (Ping timeout: 240 seconds)
22:28:28 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
22:28:55 <sm[m]> FOSDEM schedule tomorrow: https://fosdem.org/2021/schedule/day/sunday/
22:29:40 DataComputist joins (~lumeng@50.43.26.251)
22:30:42 × raichoo quits (~raichoo@94.31.87.253) (Quit: Lost terminal)
22:30:53 × srk quits (~sorki@gateway/tor-sasl/sorki) (Ping timeout: 268 seconds)
22:30:53 × hexo quits (~hexo@gateway/tor-sasl/hexo) (Ping timeout: 268 seconds)
22:31:55 srk joins (~sorki@gateway/tor-sasl/sorki)
22:31:58 hexo joins (~hexo@gateway/tor-sasl/hexo)
22:32:27 mikolaj joins (~mikon@duch.mimuw.edu.pl)
22:32:50 × conal quits (~conal@66.115.157.37) (Quit: Computer has gone to sleep.)
22:33:33 mikolaj is now known as Man
22:35:11 tromp joins (~tromp@dhcp-077-249-230-040.chello.nl)
22:36:26 <sm[m]> aha, something haskell related. https://fosdem.org/2021/schedule/event/ttddatascience/
22:37:40 guest7682358928 joins (2de85cb9@gateway/web/cgi-irc/kiwiirc.com/ip.45.232.92.185)
22:38:13 <MrMuffles[m]> Hey sorry for the 101 philosophy - how do we know that the primitive recursive functions represent all non-halting functions?
22:38:34 <koz_> Nope.
22:38:46 <koz_> The Ackermann function is definitely halting, but not PR.
22:39:33 Adeon is now known as ajkshdksajhd
22:39:46 ajkshdksajhd is now known as Adeon
22:40:18 × mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Remote host closed the connection)
22:40:25 conal joins (~conal@66.115.157.109)
22:40:30 mputz joins (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
22:40:35 <sm[m]> and here's the video-with-chat link for it: https://chat.fosdem.org/#/room/#docs:fosdem.org . Holy mackerel, video embedded in matrix
22:40:37 pavonia joins (~user@unaffiliated/siracusa)
22:40:39 Man is now known as ManofLetters
22:40:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
22:41:03 × mputz quits (~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Client Quit)
22:42:08 <slack1256> koz_: Do you have at hand a quick argument on why is the ackermann function a halting function?
22:42:10 × d34df00d quits (~d34df00d@104-14-27-213.lightspeed.austtx.sbcglobal.net) (Read error: Connection reset by peer)
22:42:29 ADG1089__ joins (~aditya@223.235.245.154)
22:42:34 <koz_> slack1256: You could do it by induction I guess, but I'm lazy.
22:43:06 <koz_> Have a look here: https://en.wikipedia.org/wiki/Ackermann_function#Definition_and_properties
22:43:23 <koz_> There's a paragraph draling with its termination which could be seen as a quick argument on its haltingness.
22:43:28 <koz_> s/draling/dealing/
22:43:37 <slack1256> got it, thanks koz_
22:45:15 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
22:46:08 frozenErebus joins (~frozenEre@94.128.81.133)
22:46:39 <koz_> slack1256: No problem.
22:47:05 × Chobbes quits (~Chobbes@pool-98-115-239-235.phlapa.fios.verizon.net) (Ping timeout: 265 seconds)
22:47:24 × zebrag quits (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
22:47:24 × chirpsalot quits (~Chirps@pool-98-115-239-235.phlapa.fios.verizon.net) (Ping timeout: 240 seconds)
22:47:43 zebrag joins (~inkbottle@aaubervilliers-654-1-80-120.w86-212.abo.wanadoo.fr)
22:48:02 Chobbes joins (~Chobbes@pool-98-115-239-235.phlapa.fios.verizon.net)
22:48:38 chirpsalot joins (~Chirps@pool-98-115-239-235.phlapa.fios.verizon.net)
22:49:07 coot joins (~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
22:50:04 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Remote host closed the connection)
22:50:16 × frankdmartinez quits (~frankdmar@138.199.52.84) (Quit: frankdmartinez)
22:51:14 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
22:51:38 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
22:52:45 × nhs quits (~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
22:53:28 <koz_> Also MrMuffles[m] - I misread. Being PR means being halting. https://en.wikipedia.org/wiki/Primitive_recursive_function
22:56:05 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
22:56:25 Tario joins (~Tario@201.192.165.173)
22:56:26 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 264 seconds)
22:56:52 DavidEichmann joins (~david@234.109.45.217.dyn.plus.net)
22:57:45 × hyperisco quits (~hyperisco@104-195-141-253.cpe.teksavvy.com) (Ping timeout: 256 seconds)
22:59:05 × cgadski quits (~cgadski@a95-95-106-208.cpe.netcabo.pt) (Remote host closed the connection)
22:59:18 × ADG1089__ quits (~aditya@223.235.245.154) (Remote host closed the connection)
22:59:33 × aveltras quits (uid364989@gateway/web/irccloud.com/x-uciaeklfznlzzgxk) (Quit: Connection closed for inactivity)
22:59:48 frankdmartinez joins (~frankdmar@138.199.52.84)
23:00:26 × nbloomf quits (~nbloomf@2600:1700:ad14:3020:65b8:f8f6:1ab5:f657) (Quit: My MacBook has gone to sleep. ZZZzzz…)
23:00:57 × DataComputist quits (~lumeng@50.43.26.251) (Ping timeout: 246 seconds)
23:02:10 DataComputist joins (~lumeng@50.43.26.251)
23:03:16 × vicfred quits (~vicfred@unaffiliated/vicfred) (Quit: Leaving)
23:04:56 kupi joins (uid212005@gateway/web/irccloud.com/x-lbjfgvhzpgnvgmcj)
23:05:17 × xsperry quits (~as@unaffiliated/xsperry) (Remote host closed the connection)
23:05:33 ADG1089__ joins (~aditya@223.235.245.154)
23:05:34 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Read error: Connection reset by peer)
23:05:48 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
23:06:10 nhs joins (~nhs@c-24-20-87-79.hsd1.or.comcast.net)
23:08:19 × ElkOwen quits (~LKoen@252.248.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
23:08:21 × DavidEichmann quits (~david@234.109.45.217.dyn.plus.net) (Ping timeout: 264 seconds)
23:09:44 cgadski joins (~cgadski@a95-95-106-208.cpe.netcabo.pt)
23:10:37 heatsink_ joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3)
23:12:55 × usr25 quits (~J@43.red-83-41-28.dynamicip.rima-tde.net) (Quit: Bye)
23:13:15 acarrico joins (~acarrico@dhcp-68-142-39-249.greenmountainaccess.net)
23:13:21 × ADG1089__ quits (~aditya@223.235.245.154) (Remote host closed the connection)
23:14:26 × heatsink quits (~heatsink@2600:1700:bef1:5e10:9c1e:e551:3930:5e04) (Ping timeout: 264 seconds)
23:15:28 vicfred joins (vicfred@gateway/vpn/mullvad/vicfred)
23:17:06 dibblego joins (~dibblego@haskell/developer/dibblego)
23:22:14 earldouglas joins (~james@unaffiliated/jamestastic)
23:23:16 nineonine joins (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e)
23:23:36 × vgtw quits (~vgtw@gateway/tor-sasl/vgtw) (Remote host closed the connection)
23:23:54 vgtw joins (~vgtw@gateway/tor-sasl/vgtw)
23:23:57 × earldouglas quits (~james@unaffiliated/jamestastic) (Client Quit)
23:24:29 earldouglas joins (~james@unaffiliated/jamestastic)
23:25:49 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
23:26:18 xsperry joins (~as@unaffiliated/xsperry)
23:27:45 × nineonine quits (~nineonine@2604:3d08:7785:9600:b847:1240:2a37:515e) (Ping timeout: 258 seconds)
23:31:21 nbloomf joins (~nbloomf@2600:1700:ad14:3020:e86a:eb9:e825:c074)
23:33:37 × zfnmxt quits (~zfnmxt@unaffiliated/zfnmxt) (Quit: Bye!)
23:34:01 × heatsink_ quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection)
23:34:48 zfnmxt joins (~zfnmxt@unaffiliated/zfnmxt)
23:34:58 × ArsenArsen quits (~Arsen@fsf/member/ArsenArsen) (Quit: bye)
23:36:45 heatsink joins (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3)
23:38:11 frankdmartinez_ joins (~frankdmar@c-69-249-128-78.hsd1.pa.comcast.net)
23:38:11 × frankdmartinez_ quits (~frankdmar@c-69-249-128-78.hsd1.pa.comcast.net) (Client Quit)
23:39:33 × frankdmartinez quits (~frankdmar@138.199.52.84) (Ping timeout: 264 seconds)
23:43:40 × darjeeling_ quits (~darjeelin@122.245.216.78) (Ping timeout: 276 seconds)
23:44:06 darjeeling_ joins (~darjeelin@122.245.216.78)
23:45:02 × tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection)
23:45:55 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
23:47:03 <koz_> Are Hackage packages (Hackages?) no longer announced?
23:48:46 <monochrom> maybe the bot is just away for a bit
23:49:26 <slack1256> I will upload my package later then, I only do it for the announcement.
23:49:37 <monochrom> hahaha
23:50:02 <zebrag> There are only two possible solutions for `alpha :: Maybe a -> [a]`?
23:50:33 <zebrag> Would that be correct?
23:50:47 <slack1256> I can think of infinite implementations for that type signature.
23:51:03 <ephemient> @djinn Maybe a -> [a]
23:51:03 <lambdabot> Error: Undefined type []
23:51:12 <slack1256> Depending on how many times I repeat the `a` on the list on the `Just` case.
23:51:18 <ephemient> oh right that's not one of the builtins it recognizes :-/
23:51:18 <zebrag> (reading category theory for programmers, chapter on natural transformations)
23:51:33 <ski> koz_,slack1256 : last announcement was a little over five hours ago only
23:51:54 <zebrag> slack1256: right
23:51:55 <koz_> ski: Ah, maybe I just haven't waited long enough for the package index to update.
23:52:52 <zebrag> slack1256: that infinity would make all of them, right?
23:53:09 <ski> zebrag : however, `map f (alpha mx)' will be equal to `alpha (fmap f ma)', due to parametricity
23:53:30 × conal quits (~conal@66.115.157.109) (Quit: Textual IRC Client: www.textualapp.com)
23:53:37 <zebrag> ski: yes, i'm only trying to count them
23:53:53 <ski> there's infinitely many, as mentioned
23:54:51 × sh9 quits (~sh9@softbank060116136158.bbtec.net) (Ping timeout: 246 seconds)
23:55:16 <slack1256> zebrag: you can also produce a infinite list via the equation `Just a = repeat a`. But you also can repeat until certain length via `Just a = take n (repeat a)`.
23:56:03 <slack1256> Categorically, there are many "natural transformations" between `Maybe` and `[]`.
23:56:30 <ski> sounds like there'd be a bijection with the generic convergent sequence
23:57:33 <zebrag> slack1256, ski: thanks for the answer; I'll keep reading
23:58:00 <ski> slack1256 : aka `replicate' :)
23:58:41 <ski> at some point, people were playing around a little with the idea of a "natural transformation" type class
23:58:48 conal joins (~conal@66.115.157.112)
23:59:19 <monochrom> I can understand a natural transformation type, but not a type class.
23:59:32 <monochrom> type NT f g = forall a. f a -> g a
23:59:41 <ski> but then people realized that there'd probably not be much point to such a type class, since in general there's many natural transformations, with no obvious choice of a particular one that ought to be picked out and blessed by such a type class
23:59:42 × heatsink quits (~heatsink@2600:1700:bef1:5e10:e07b:e25d:926:c2e3) (Remote host closed the connection)
23:59:46 <monochrom> or newtype if wanted

All times are in UTC on 2021-02-06.