Home freenode/#haskell: Logs Calendar

Logs on 2021-04-25 (freenode/#haskell)

00:00:08 × kupi quits (uid212005@gateway/web/irccloud.com/x-litwvghnkldddtab) (Quit: Connection closed for inactivity)
00:00:56 <wz1000> shapr: very clean and straightforward code. Only thing I could think of was using streaming + a bloom filter to operate in constant memory
00:01:44 <shapr> wz1000: that's a good point, I originally used Control.Parallel to fire off a bunch of reads with hashing, but that didn't work so well
00:02:06 <shapr> So the advantage of a streaming library would be that I could read until a file is found to *not* be a duplicate, right?
00:02:27 <shapr> and then new files that might be duplicates would let me go back and pick up reading where I left off?
00:02:49 shapr thinks about that
00:03:45 <shapr> ok, I'm sold. What's the most newbie friendly streaming library?
00:03:51 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
00:05:08 × Guest42533 quits (sid128301@gateway/web/irccloud.com/x-xoqbygpcvszggkhq) ()
00:05:12 × nineonine quits (~nineonine@50.216.62.2) (Remote host closed the connection)
00:05:41 × Rudd0 quits (~Rudd0@185.189.115.108) (Ping timeout: 260 seconds)
00:06:18 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
00:06:21 <wz1000> hmm, I'm not sure a bloom filter would work - it can tell you if you have duplicates, but if you want to know which are the duplicates it degenerates to O(n) memory again
00:07:02 graingert joins (sid128301@gateway/web/irccloud.com/x-icmdnzdgthpbntzi)
00:08:10 <wz1000> I like foldl, but I don't think a naive translation to streaming would buy you much
00:08:26 <wz1000> since there is the sort in the end which would need to materialize all items
00:08:30 <shapr> wz1000: count min sketch has a monoid instance
00:08:57 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
00:09:12 <shapr> That or a counting bloom filter are the closest things I know to a streaming hashed data structure
00:09:12 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
00:09:51 <shapr> Hm, good point about not being able to ask for the duplicates
00:11:22 chimera joins (~chimera@168-182-134-95.pool.ukrtel.net)
00:14:40 <shachaf> Does constant memory actually matter?
00:15:43 <shachaf> You probably won't be running this on more than, say, 10M files.
00:16:23 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
00:17:34 <wz1000> shapr: you can use `listDirectory` instead of `getDirectoryContents` and filtering out "." and ".."
00:18:06 <wz1000> a couple of `unsafeInterleaveIO`s might also be a tiny improvement in that function without the overhead of a full streaming library
00:22:31 × acidjnk_new quits (~acidjnk@p200300d0c72b958148671e179a62db06.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
00:23:06 <shapr> shachaf: I don't know, but now I have the urge to do heap profiling
00:23:17 <shapr> wz1000: ah good idea!
00:23:19 elvishjerricco joins (~elvishjer@NixOS/user/ElvishJerricco)
00:23:26 Tario joins (~Tario@201.192.165.173)
00:24:09 × stef204 quits (~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 3.1)
00:25:11 × justanotheruser quits (~justanoth@unaffiliated/justanotheruser) (Ping timeout: 260 seconds)
00:26:36 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
00:27:09 AsL joins (~asl@91.207.86.95)
00:27:17 × Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
00:28:14 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
00:31:11 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
00:32:52 × AsL quits (~asl@91.207.86.95) ()
00:34:35 <shapr> I wonder if a streaming library could work by holding a list of FilePath and hash at position? That would give you constant memory (per file) and still find duplicates?
00:35:57 × shailangsa quits (~shailangs@host86-185-58-137.range86-185.btcentralplus.com) ()
00:36:24 × DavidEichmann quits (~david@147.136.46.217.dyn.plus.net) (Ping timeout: 252 seconds)
00:39:20 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 252 seconds)
00:39:27 zmijunkie1 joins (~Adium@87.122.217.64)
00:40:17 zebrag joins (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
00:40:27 × chimera quits (~chimera@168-182-134-95.pool.ukrtel.net) (Quit: Konversation terminated!)
00:41:01 × bennofs_ quits (~quassel@dynamic-089-012-022-232.89.12.pool.telefonica.de) (Ping timeout: 252 seconds)
00:41:02 <shapr> Is there a comparison of the streaming libraries in Haskell?
00:41:19 bennofs_ joins (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de)
00:42:11 × zmijunkie quits (~Adium@87.122.222.145) (Ping timeout: 240 seconds)
00:42:21 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
00:43:34 nineonine joins (~nineonine@50.216.62.2)
00:47:05 × bitmagie quits (~Thunderbi@200116b806e24c00585f6c775438f3bb.dip.versatel-1u1.de) (Quit: bitmagie)
00:47:52 × nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 240 seconds)
00:48:42 <zebrag> Starting from the "free monoid" adjunction. The counit is on the "monoid" side: it does have the information concerning the law of the monoid, it really can do the sum `[1,2,3]=1+2+3=6`. Now I want to consider the related "comonad". But I fail on "right counitality", where I get `[1,2,3]` mapped to `[6]`, where it should be the identity. I don't understand why: starting from an adjunction I should get the comonad, not
00:48:43 <zebrag> sweat? What did I missed?
00:49:25 <zebrag> The left counitality is okay, but the right counitality is really bothering me.
00:49:37 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
00:50:52 × is_null quits (~jpic@pdpc/supporter/professional/is-null) (Ping timeout: 240 seconds)
00:51:37 <zebrag> Maybe I'll get the answer there: http://blog.higher-order.com/blog/2015/10/12/freedom-and-forgetfulness/
00:51:41 <zebrag> maybe
00:52:06 <shachaf> shapr: Of course a Haskell program will tend to use memory pretty inefficiently unless you're very careful.
00:52:23 <zebrag> (not speaking scala won't help)
00:52:25 is_null joins (~jpic@pdpc/supporter/professional/is-null)
00:52:29 olligobber joins (olligobber@gateway/vpn/privateinternetaccess/olligobber)
00:53:17 Tario joins (~Tario@201.192.165.173)
00:56:27 × thc202 quits (~thc202@unaffiliated/thc202) (Ping timeout: 258 seconds)
00:59:08 × zebrag quits (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
00:59:26 zebrag joins (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
01:00:42 <edwardk> zebrag: let's start with what the free monoid adjunction is. we have some kind of forgetful mapping U from the category of monoids with monoid homomorphisms as arrows to the category of sets where the arrows are just arbitrary functions. and a 'free' monoid' would be a functor F that is left adjoint to this. F -| U. that is to say every monoid homomorphism F a -> b is in one to one correspondence with every set homomorphism
01:00:42 <edwardk> (function) from a -> U b. in haskell U b is boring it is just 'b'.
01:00:44 × mrchampion quits (~mrchampio@38.18.109.23) (Read error: Connection reset by peer)
01:01:17 ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
01:01:24 <edwardk> now we can look at this isomorphism, and kind of prod at it to see what it must do.
01:01:40 <zebrag> (hi)
01:02:27 <edwardk> we know that monoid homomorphisms from F a -> b are in one to one correspondence with functions from a -> U b and we get to pick a and b. so what if we pick b = F a and just see where the identity arrow on "F a" goes?
01:03:08 paddymahoney joins (~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
01:03:28 <edwardk> we then get an arrow a -> U (F a)
01:03:40 <edwardk> this is the 'unit' of the adjunction or of the monad that comes from the adjunction.
01:03:49 <zebrag> yes
01:03:49 <edwardk> UF here is basically [] in haskell
01:04:00 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
01:04:05 ddellac__ joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
01:04:27 CelestiaIsTheWay joins (~sepples@sepples.xyz)
01:04:39 <edwardk> on the other hand we can look at the isomorphism the other way and pick a = U b. now we get F (U b) -> b as the counit of the adjunction or extract of the comonad.
01:05:02 <zebrag> ok
01:05:22 <edwardk> here we get a monad on Set (or Hask) and a comonad in the category of monoids
01:05:46 × ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
01:06:08 <zebrag> If I compose the lifted counit after the comultiplication, I must get the identity
01:06:37 <zebrag> but the lifted counit is executing the computation in [1,2,3]
01:06:53 <zebrag> returning 6
01:07:17 × tsaka_ quits (~torstein@athedsl-4519432.home.otenet.gr) (Ping timeout: 246 seconds)
01:07:42 mrchampion joins (~mrchampio@38.18.109.23)
01:07:50 <zebrag> lifted counit is executing the computation in [[1,2,3]]*
01:08:13 malumore_ joins (~malumore@151.62.115.131)
01:08:27 <zebrag> the right counitality law say I should manage to get [1,2,3]
01:08:31 × ddellac__ quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
01:09:26 <edwardk> let's see. the duplicate/comultiplication for the comonad is basically fmaps unit over F to turn FU -> F[UF]U
01:10:30 <zebrag> (iiuc, on the monoid side, we not only have the elements, but also the law which must be used on them, attached to them)
01:10:31 <edwardk> your 'right counitality law' is the fmap extract . duplicate = id?
01:10:49 <zebrag> thinking hard...
01:10:59 <zebrag> yes
01:11:00 <edwardk> as opposed to extract . duplicate = id on the left?
01:11:08 <zebrag> correct
01:11:24 × whataday quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
01:11:26 × malumore quits (~malumore@151.62.120.175) (Ping timeout: 240 seconds)
01:11:42 <zebrag> okay, you gave me the translation of the equation in haskell, good point
01:12:32 whataday joins (~xxx@2400:8902::f03c:92ff:fe60:98d8)
01:12:50 <edwardk> except remember, here extract and duplicate are in the category of monoids. so they must each be monoid homomorphisms
01:13:02 <zebrag> correct
01:13:29 <zebrag> so extract really knows about the natural number law
01:13:36 <zebrag> 1 + 2 = 3
01:13:50 <edwardk> natural number law being the particular monoid you want to reduce with?
01:13:57 <zebrag> yes
01:14:40 <zebrag> duplicate duplicate must go to duplicate
01:14:41 <edwardk> extract :: Monoid a => [a] -> a -- gets to be 'fold' basically. knowing the target monoid.
01:14:48 <edwardk> U here is basically invisible in haskell
01:14:59 <edwardk> i can put it in for clarity if needs must
01:15:08 <zebrag> no it ok
01:16:47 <zebrag> it's*
01:16:49 <edwardk> and duplicate takes FU -> FUFU by fmapping the 'pure' over the list you gave. dup :: [a] -> [[a]] -- is also a monoid homomorphism, but which takes [1,2,3] -> [[1],[2],[3]] iirc
01:17:01 <edwardk> its been a while since i worked this through in detail.
01:17:28 <zebrag> hehe
01:17:50 <edwardk> and yes, it sounds like some anime villainess going on about fufufufu...
01:18:03 <zebrag> I think I got where I've made a mistake: in the duplicate
01:18:17 <edwardk> great
01:18:23 <edwardk> lemme know if you're still stuck
01:18:31 <zebrag> nice, thaks
01:19:15 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
01:19:41 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
01:19:56 <zebrag> Really helpful, great
01:22:51 nineonine joins (~nineonine@50.216.62.2)
01:24:47 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
01:27:23 shailangsa joins (~shailangs@host86-185-58-137.range86-185.btcentralplus.com)
01:27:41 × nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 265 seconds)
01:27:54 <shachaf> You have a function eta : a -> [a] and a a monoid homomorphism eps : [m] -> m, and the two triangle laws are that eps . F eta = id and U eps . eta = id
01:28:22 <shachaf> That is, fold (map (:[]) xs) = xs, and fold [x] = x
01:28:55 <shachaf> You can make join and duplicate out of those.
01:29:21 <shachaf> In particular, join out of eps, and duplicate out of eta. Just by fmapping.
01:29:50 <zebrag> okay
01:31:57 × CrazyPython quits (~crazypyth@98.122.164.118) (Ping timeout: 260 seconds)
01:32:36 justanotheruser joins (~justanoth@unaffiliated/justanotheruser)
01:33:06 <shachaf> Ah, now I see the original question.
01:33:16 stree joins (~stree@68.36.8.116)
01:33:18 <shachaf> I think you're right, and you just had the wrong duplicate.
01:33:28 <zebrag> I think my problem was I thought `duplicate [1,2,3]` was `[[1,2,3]]`, when it seems it really is `[[1],[2],[3]]`, and consequently everything was failing
01:33:56 <shachaf> Yes, that's right.
01:34:58 <shachaf> This notation makes a lot of things almost implicit. But when you have something like "Fη" you need to remember that the F is an fmap.
01:35:34 <shachaf> Whereas when you have "ηU" the U is not an fmap, and is completely implicit in Haskell.
01:37:43 <zebrag> One is lifted the other isn't.
01:38:06 <zebrag> definition of duplicate in terms of fmap pure?
01:38:25 <shachaf> duplicate = fmap pure
01:38:31 <zebrag> hehe
01:39:17 <shachaf> If the goal is to get a better feel for adjunctions, it might be better to take one where the right adjoint isn't quite so forgetful.
01:39:59 <zebrag> yes, but no
01:40:40 <zebrag> as comonad goes, this might not be the best one
01:40:58 <zebrag> anyway, thanks a lot
01:41:33 <shachaf> The classic one, in Haskell, is (e,) -| (e->), of course.
01:41:37 × honigkuchen quits (~honigkuch@ip5b429953.dynamic.kabel-deutschland.de) (Remote host closed the connection)
01:41:45 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
01:41:54 <shachaf> You get a good monad and a good comonad and everything is explicit.
01:42:08 <edwardk> another fun haskell one is (_ -> r) -| (_ -> r) -- which is frustrating until suddenly it is not.
01:42:23 ski . o O ( ⌜ε F ∘ F η = id⌝ and ⌜id = U ε ∘ η U⌝ )
01:42:50 <zebrag> I'll sure look into it
01:43:30 <shachaf> Yes, of course what ski said is the real deal law.
01:44:04 <ski> looking into adjunctions for products and coproducts (or limits and colimits, in general) might also be useful
01:44:19 <zebrag> I really was reading the Paolo Perrone tutorial on categories, and the free monoid comonad was nagging me
01:44:57 <shachaf> Yes, the example ski mentioned is also good.
01:44:58 <ski> (of course, i don't write those laws quite like that, in private notes)
01:45:55 <shachaf> You have the "diagonal" functor Δ : C -> CxC. It has a left and a right adjoint. Can you figure out what they are?
01:45:56 ski was idly considering the "reverse" adjunction isomorphism, for products, the other day
01:46:11 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
01:46:17 <shachaf> ski: How do you write them in private notes?
01:46:22 <zebrag> Elementary examples of adjoint functor theorem were really enlightening.
01:47:04 × xff0x quits (~xff0x@2001:1a81:5345:1000:6c4e:76aa:9183:d81d) (Ping timeout: 245 seconds)
01:47:53 <ski> (if a product is the "greatest" object "before" two given objects .. then the diagonal of an object is the "least" pair of objects "after" the given objects)
01:49:02 xff0x joins (~xff0x@2001:1a81:5378:d500:70a3:57b2:577c:e365)
01:50:14 <zebrag> before/after?
01:50:28 <zebrag> oh yes
01:50:39 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
01:50:44 <zebrag> nice
01:51:03 <ski> (er, s/the given objects/the given object/)
01:51:11 × shailangsa quits (~shailangs@host86-185-58-137.range86-185.btcentralplus.com) (Ping timeout: 240 seconds)
01:51:37 <zebrag> this sort of vernacular is very useful
01:52:38 <zebrag> and you really can say it to yourself, when the formula above can't easily be pronounced
01:53:35 <ski> reading out "adjunctiony formulae" out aloud, in terms of "greatest", and "least", is great :)
01:54:37 <zebrag> If you have a list of such "out aloud" sentences, feel free to post the link ;)
01:55:12 <zebrag> It is so helpful to be able to really say things
01:56:27 <ski> consider e.g. expressing the order ⌜n⌝ of an element ⌜g⌝, in a group :
01:56:34 <ski> ℴ g ∣ n
01:56:38 <ski> ⇔ gⁿ = 1
01:56:59 × hypercube quits (~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com) (Ping timeout: 250 seconds)
01:58:04 <ski> the order ⌜ℴ g⌝ of an element ⌜g⌝ in a group is the least (in the divisibility ordering) integer ⌜n⌝, such that the ⌜n⌝-fold product of ⌜g⌝ (⌜g⌝ raised to the power of ⌜n⌝) is the neutral element
01:59:07 <ski> (that is how i read such a statement. and i'm on the lookout for such "adjunctiony" ways of phrasing characterizations)
01:59:08 × zebrag quits (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Quit: Konversation terminated!)
01:59:26 zebrag joins (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr)
01:59:43 <zebrag> I must call it a day: I'll read the logs
01:59:47 <jollygood2> is ghc with improved records out yet?
02:00:07 × zebrag quits (~inkbottle@aaubervilliers-654-1-79-166.w86-212.abo.wanadoo.fr) (Client Quit)
02:00:37 × Neuromancer quits (~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 260 seconds)
02:01:05 <ski> note that the set of all ⌜n⌝s such that ⌜ℴ g ∣ n⌝ is an upper set (it's closed under adding multiples of elements already in the set). therefore, for there to be an equivalence here (for all ⌜n⌝), ⌜gⁿ = 1⌝ must also be increasing / order-preserving / monotone / upper, in ⌜n⌝ .. and indeed it is
02:02:37 <ski> and because it is (but isn't, if we consider the usual additive ordering ⌜≤⌝ for ⌜n⌝), that is evidence that the divisibility ordering here is the correct ordering to consider
02:03:05 rajivr joins (uid269651@gateway/web/irccloud.com/x-tixhxbhwulglbevd)
02:04:32 × kilolympus quits (~kilolympu@5.151.5.180) (Ping timeout: 268 seconds)
02:05:04 × usr25_tm quits (~usr25@unaffiliated/usr25) (Quit: Leaving)
02:05:46 <ski> you may contrast this with the situation for nilpotency index/degree ⌜n⌝ of an element ⌜a⌝ in a ring. in this case, if ⌜aⁿ = 0⌝ holds for some ⌜n⌝, then it also holds for all additively / arithmetically greater, ⌜≤⌝, (as opposed to multiplicatively / geometrically, iow considering the divisibility ordering ⌜∣⌝) ⌜n⌝
02:06:34 <ski> (it doesn't hold for the multiplicative ordering, specifically for ⌜n = 0⌝, unless we're in the trivial ring, with ⌜1 = 0⌝)
02:07:12 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
02:08:11 <ski> (is there a standard notation for nilpotency index/degree ? .. i'll write ⌜𝓃 a⌝, i guess)
02:08:23 <ski> 𝓃 a ≤ n
02:08:32 <ski> ⇔ aⁿ = 0
02:08:41 <ski> is thus the correct statement, here
02:13:17 <ski> (one could wonder if one could turn the equality into an inequality, with the goal of making these proper adjunctions, rather than just "adjunctiony", by which i mean a statement of the general form ⌜∀ x. c ≤ x ⇔ P x⌝ expressing that ⌜c⌝ is the least ⌜x⌝ satisfying ⌜P x⌝, for some preorder ⌜≤⌝, and inhabited upper ⌜P⌝. compare with ⌜∀ x. c = x ⇔ P x⌝ expressing that
02:13:23 <ski> ⌜c⌝ is the unique ⌜x⌝ satisfying ⌜P x⌝)
02:13:35 <ski> anyway ..
02:13:46 <ski> ⌜⌞ε⌟ (F A)⌝ ∘ ⌜F (⌞η⌟ A)⌝ = ⌜F A⌝
02:13:55 <ski> ⌜U M⌝ = ⌜U (⌞ε⌟ M)⌝ ∘ ⌜⌞η⌟ (U M)⌝
02:14:16 <ski> or, more pointlessly
02:14:26 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
02:14:27 <ski> ⌜⌞ε⌟ ∘ F⌝ ∘ ⌜F ∘ ⌞η⌟⌝ = ⌜F⌝
02:14:33 <ski> ⌜U⌝ = ⌜U ∘ ⌞ε⌟⌝ ∘ ⌜⌞η⌟ ∘ U⌝
02:14:35 <ski> shachaf ^
02:15:28 shailangsa joins (~shailangs@host86-186-132-95.range86-186.btcentralplus.com)
02:16:36 <ski> (one composition here is "vertical", the other is "horizontal" .. i've never been able to memorize which means which, of those terms)
02:16:46 <shachaf> Oh, that was for me?
02:16:55 <ski> last couple of lines, yes
02:17:20 <shachaf> ski: I could never remember which was which until I realized those terms come from attaching string diagrams to each other horizontally and vertically.
02:17:36 <shachaf> Or at least I assume they do. That's how I remember it, anyway.
02:18:41 <ski> string diagrams, as in the catsters <https://www.youtube.com/watch?v=USYRDDZ9yEc&list=PLlGXNwjYhXYxKVa67r0pKuYufECy713bv&index=36>, i presume ?
02:18:55 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
02:19:10 <shachaf> Yes, that style of string diagram.
02:19:38 <ski> (rewatching that, to check in which way they orient stuff)
02:19:50 <shachaf> Oh, I don't remember which way they orient things either.
02:20:06 <shachaf> The main thing I try to do is to make my string diagrams line up with my indx notation.
02:20:29 <ski> i mean, the "vertical" vs. "horizontal", would depend on whether they tend to write the arrows left-right or up-down
02:20:51 <shachaf> Oh, sure, that much I do remember.
02:21:01 <shachaf> Anyway, since I write "T_a^b" for a thing with input a and output b, I draw the outputs at the top and the inputs at the bottom.
02:21:35 <ski> (which is one reason why i don't really like such terminology. and ditto for "left/right adjoint", "left/right inverse", &c.)
02:21:51 <shachaf> Yes. Probably the Galois connection terms "lower/upper adjoint" are better.
02:22:15 <shachaf> Hmm, I mean, because of the preorder, not because of low/high as in down/up.
02:22:50 <ski> which would be which, in that terminology ?
02:23:41 <shachaf> The left adjoint would be called lower.
02:24:03 <shachaf> Looking at https://en.wikipedia.org/wiki/Galois_connection#Definitions
02:24:04 <ski> if ⌜F⌝ goes to ⌜𝒞⌝ from ⌜𝒟⌝, and ⌜U⌝ goes to ⌜𝒟⌝ from ⌜𝒞⌝, which is upper and which is lower ?
02:24:11 <ski> mhm
02:24:43 <shachaf> Am I supposed to figure out which is which because you called one of them U?
02:24:47 <ski> i guess they're focusing on the target / codomain side of the functors
02:25:19 <ski> oh, sorry, i should've said that ⌜F⌝ would traditionally be called the left adjoint of ⌜U⌝
02:25:33 <shachaf> Then F would be called the lower adjoint.
02:25:43 <ski> right, ok
02:25:56 <shachaf> Right, focusing on the codomain side, as you said.
02:26:59 <ski> (which is rather easy to reach for, with a pointful formulation)
02:28:18 <ski> hm, i suppose with antitone Galois connections, you'd get two flavors of them
02:29:55 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
02:31:02 × carlomagno quits (~cararell@148.87.23.7) (Quit: Leaving.)
02:33:33 × mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds)
02:34:52 × theDon quits (~td@94.134.91.143) (Ping timeout: 252 seconds)
02:36:50 theDon joins (~td@94.134.91.236)
02:41:22 FinnElija joins (~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
02:41:22 finn_elija is now known as Guest37713
02:41:22 FinnElija is now known as finn_elija
02:41:32 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
02:41:55 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
02:43:57 × Guest37713 quits (~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 240 seconds)
02:44:03 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
02:44:23 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
02:47:14 × urodna quits (~urodna@unaffiliated/urodna) (Quit: urodna)
02:47:35 Guest6509 joins (~laudiacay@67.176.215.84)
02:51:08 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
02:51:56 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 246 seconds)
02:54:07 × mmfood quits (~mmfood@185.176.246.69) (Ping timeout: 252 seconds)
02:55:26 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 246 seconds)
02:59:00 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-hxduuckhynlbsgsf) ()
03:03:22 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
03:03:40 seven_three parts (~user@pool-96-233-64-53.bstnma.fios.verizon.net) ("ERC (IRC client for Emacs 27.2)")
03:07:52 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
03:09:59 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:5440:6bb8:f181:7832) (Remote host closed the connection)
03:10:21 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
03:10:50 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
03:11:10 DTZUZU_ joins (~DTZUZO@207.81.119.43)
03:11:30 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
03:12:54 hexfive joins (~hexfive@50.35.83.177)
03:13:22 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 252 seconds)
03:13:55 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 252 seconds)
03:16:55 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 265 seconds)
03:20:09 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
03:20:11 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 250 seconds)
03:22:22 ddellacosta joins (~ddellacos@86.106.143.34)
03:23:43 Guest6509 joins (~laudiacay@67.176.215.84)
03:25:37 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
03:26:32 × ddellacosta quits (~ddellacos@86.106.143.34) (Ping timeout: 240 seconds)
03:28:11 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
03:31:29 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
03:33:38 drbean_ joins (~drbean@TC210-63-209-152.static.apol.com.tw)
03:35:53 Tario joins (~Tario@201.192.165.173)
03:41:12 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
03:49:14 × siraben quits (sirabenmat@gateway/shell/matrix.org/x-vprvjmvshzjzwaie) (Changing host)
03:49:14 siraben joins (sirabenmat@unaffiliated/siraben)
03:49:14 × siraben quits (sirabenmat@unaffiliated/siraben) (Changing host)
03:49:14 siraben joins (sirabenmat@gateway/shell/matrix.org/x-vprvjmvshzjzwaie)
03:49:40 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
03:52:14 anandprabhu joins (~anandprab@94.203.71.143)
03:52:57 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
03:54:07 ddellacosta joins (~ddellacos@86.106.143.216)
03:54:51 stree joins (~stree@68.36.8.116)
03:55:12 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 240 seconds)
03:59:01 × ddellacosta quits (~ddellacos@86.106.143.216) (Ping timeout: 252 seconds)
03:59:44 <zzz> i am having trouble using a package due to unresolved dependencies. the package is diagrams and the problematic dependency is base. how do we solve this?
04:04:16 Rudd0 joins (~Rudd0@185.189.115.103)
04:05:07 × erisco quits (~erisco@d24-57-249-233.home.cgocable.net) (Read error: Connection reset by peer)
04:06:39 × dpl_ quits (~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 245 seconds)
04:08:32 × jao quits (~jao@pdpc/supporter/professional/jao) (Ping timeout: 240 seconds)
04:09:15 <zzz> https://paste.jrvieira.com/1619323742808
04:13:41 <zzz> i tried removing the base version under build-depends on my .cabal file
04:16:37 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 252 seconds)
04:23:39 × elvishjerricco quits (~elvishjer@NixOS/user/ElvishJerricco) (Remote host closed the connection)
04:23:39 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
04:24:11 elvishjerricco joins (sid237756@NixOS/user/ElvishJerricco)
04:25:58 × ep1ctetus quits (~epictetus@ip72-194-54-201.sb.sd.cox.net) (Read error: Connection reset by peer)
04:28:35 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
04:28:49 × alx741 quits (~alx741@181.196.69.117) (Quit: alx741)
04:28:59 plast1k_ joins (~plast1k_@41.186.25.253)
04:29:16 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
04:33:17 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 265 seconds)
04:34:57 × bennofs_ quits (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de) (Read error: Connection reset by peer)
04:35:13 bennofs_ joins (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de)
04:35:16 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
04:35:33 Tario joins (~Tario@201.192.165.173)
04:44:24 nineonine joins (~nineonine@50.216.62.2)
04:44:24 jgt joins (~jgt@46.154.68.25)
04:45:48 <jollygood2> zzz, this is the least active time for irc. if you don't get help try again in 8 or so hours
04:47:05 × DirefulSalt quits (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt) (Remote host closed the connection)
04:47:25 DirefulSalt joins (DirefulSal@gateway/vpn/privateinternetaccess/direfulsalt)
04:50:02 <MarcelineVQ> the base you have is tied to the ghc version you have, if a package has a conflict with base you need a different version of ghc to use it
04:51:19 <MarcelineVQ> https://wiki.haskell.org/Base_package has a table of the relation
04:51:41 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
04:52:09 <MarcelineVQ> conflict: diagrams-svg => base>=4.7 && <4.14 is the part of your log that describes the base version needed
04:53:06 Ishutin_ joins (~ishutin@84-236-1-102.pool.digikabel.hu)
04:53:51 DTZUZU_ joins (~DTZUZO@207.81.119.43)
04:54:11 <MarcelineVQ> I think there's a cabal flag like --allow-newer you could try though
04:55:04 conal joins (~conal@192.145.118.178)
04:55:08 × conal_ quits (~conal@64.71.133.70) (Ping timeout: 246 seconds)
04:56:13 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Ping timeout: 252 seconds)
04:56:22 × Ishutin quits (~ishutin@94-21-174-90.pool.digikabel.hu) (Ping timeout: 252 seconds)
04:57:43 × renzhi quits (~renzhi@2607:fa49:6500:bc00::e7b) (Ping timeout: 260 seconds)
04:59:41 × Tario quits (~Tario@201.192.165.173) (Ping timeout: 240 seconds)
05:04:45 × waleee-cl quits (uid373333@gateway/web/irccloud.com/x-xxnfubjbiyrpdold) (Quit: Connection closed for inactivity)
05:05:04 ddellacosta joins (~ddellacos@86.106.143.21)
05:05:21 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
05:09:25 × ddellacosta quits (~ddellacos@86.106.143.21) (Ping timeout: 252 seconds)
05:10:46 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
05:16:02 × jgt quits (~jgt@46.154.68.25) (Remote host closed the connection)
05:17:16 jgt joins (~jgt@78.162.43.217)
05:17:27 × resolve quits (~resolve@185.204.1.185) (Remote host closed the connection)
05:19:19 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
05:21:01 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
05:29:30 × puke quits (~vroom@217.138.252.196) (Quit: puke)
05:36:33 falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net)
05:38:05 ddellacosta joins (~ddellacos@86.106.143.47)
05:42:12 × ddellacosta quits (~ddellacos@86.106.143.47) (Ping timeout: 240 seconds)
05:43:31 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 252 seconds)
05:43:39 dastomaten joins (~dastomate@0543f40b.skybroadband.com)
05:46:34 <zzz> i had to install ghc 8.8.4. thanks anyway
05:48:23 × Sarcarean quits (4582bfd4@h69-130-191-212.bendor.broadband.dynamic.tds.net) (Ping timeout: 240 seconds)
05:55:04 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
05:56:13 <lechner> Hi, is there a way to tell how many packages (disregarding different versions) are available on Hackage, please? Thanks!
05:57:37 CMCDragonkai2 joins (~Thunderbi@60-242-118-130.tpgi.com.au)
06:02:18 <shachaf> You can look at https://hackage.haskell.org/packages/ and count.
06:03:09 × CMCDragonkai2 quits (~Thunderbi@60-242-118-130.tpgi.com.au) (Remote host closed the connection)
06:03:11 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
06:05:08 <davean> lechner: like 15k?
06:05:17 × coeus quits (~coeus@p200300d0274dc6000de71f4ee41c5fb3.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
06:12:11 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 240 seconds)
06:14:47 × electricityZZZZ quits (~electrici@135-180-3-82.static.sonic.net) (Ping timeout: 265 seconds)
06:16:07 stree joins (~stree@68.36.8.116)
06:16:46 × tlgl^nix quits (~damien@S0106008ef25e98fb.su.shawcable.net) (Ping timeout: 240 seconds)
06:17:31 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
06:17:31 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Read error: Connection reset by peer)
06:17:56 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
06:18:06 × Sgeo quits (~Sgeo@ool-18b9875e.dyn.optonline.net) (Read error: Connection reset by peer)
06:18:22 Sgeo joins (~Sgeo@ool-18b9875e.dyn.optonline.net)
06:19:11 tlgl^nix joins (~damien@S0106008ef25e98fb.su.shawcable.net)
06:20:45 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
06:21:19 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
06:21:46 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
06:22:15 coeus joins (~coeus@p200300d027300600a7f01744b59f4d58.dip0.t-ipconnect.de)
06:24:40 sword865 joins (uid208942@gateway/web/irccloud.com/x-bsntjtcyytnmmdmx)
06:24:56 × falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
06:25:39 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 250 seconds)
06:29:41 dansho joins (~dansho@ec2-52-198-118-239.ap-northeast-1.compute.amazonaws.com)
06:31:51 × Sgeo quits (~Sgeo@ool-18b9875e.dyn.optonline.net) (Read error: Connection reset by peer)
06:32:01 Sgeo joins (~Sgeo@ool-18b9875e.dyn.optonline.net)
06:33:17 <[exa]> lechner: you have a package list in the cabal cache, see ~/.cabal/packages/hackage.haskell.org/01-index.tar
06:36:11 × Rudd0 quits (~Rudd0@185.189.115.103) (Remote host closed the connection)
06:37:33 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
06:37:57 Varis joins (~Tadas@unaffiliated/varis)
06:45:00 __minoru__shirae joins (~shiraeesh@77.94.25.177)
06:46:17 jgt joins (~jgt@78.162.43.217)
06:46:25 rdivyanshu joins (uid322626@gateway/web/irccloud.com/x-jvfbdyhvxestwdim)
06:50:06 coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
06:51:16 × wavemode_ quits (~wavemode@097-070-075-143.res.spectrum.com) (Ping timeout: 268 seconds)
06:56:12 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
06:56:32 × nineonine quits (~nineonine@50.216.62.2) (Ping timeout: 240 seconds)
07:02:51 wei2912 joins (~wei2912@unaffiliated/wei2912)
07:05:39 mikolaj__ joins (~mikon@duch.mimuw.edu.pl)
07:06:51 × plast1k_ quits (~plast1k_@41.186.25.253) (Quit: Leaving)
07:07:26 ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
07:09:09 × cole-h quits (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 268 seconds)
07:11:40 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
07:11:46 × ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 240 seconds)
07:13:14 × Narinas quits (~Narinas@187-178-93-112.dynamic.axtel.net) (Read error: Connection reset by peer)
07:13:22 Narinas joins (~Narinas@187-178-93-112.dynamic.axtel.net)
07:15:49 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
07:16:14 tsaka_ joins (~torstein@athedsl-4519432.home.otenet.gr)
07:17:42 × tlgl^nix quits (~damien@S0106008ef25e98fb.su.shawcable.net) (Remote host closed the connection)
07:20:00 zva joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
07:20:19 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
07:21:03 × mikolaj__ quits (~mikon@duch.mimuw.edu.pl) (Quit: leaving)
07:21:09 × mikolaj_ quits (~mikolaj@purple.well-typed.com) (Quit: leaving)
07:21:21 mikolaj_ joins (~mikon@duch.mimuw.edu.pl)
07:22:52 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 240 seconds)
07:23:48 Guest36168 joins (~alexander@2a02:587:dc0a:2700:dc6:16ac:a95:eabf)
07:23:52 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 240 seconds)
07:24:13 Guest6509 joins (~laudiacay@67.176.215.84)
07:25:15 chimera joins (~chimera@168-182-134-95.pool.ukrtel.net)
07:27:20 × mikolaj_ quits (~mikon@duch.mimuw.edu.pl) (Quit: leaving)
07:27:28 mikolaj_ joins (~mikon@duch.mimuw.edu.pl)
07:27:50 × mikolaj_ quits (~mikon@duch.mimuw.edu.pl) (Client Quit)
07:28:44 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 265 seconds)
07:30:08 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
07:31:21 mikolaj_ joins (~mikon@duch.mimuw.edu.pl)
07:32:10 × mikolaj_ quits (~mikon@duch.mimuw.edu.pl) (Client Quit)
07:32:40 __minoru__shirae joins (~shiraeesh@77.94.25.177)
07:33:28 × mikolaj quits (~mikon@duch.mimuw.edu.pl) (Quit: leaving)
07:34:02 mikolaj joins (~mikon@duch.mimuw.edu.pl)
07:34:46 mikolaj_ joins (~mikolaj@purple.well-typed.com)
07:40:26 × gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
07:40:50 wonko7 joins (~wonko7@62.115.229.50)
07:43:04 × cybai quits (~cybai@2400:4050:3122:900:f13a:fdb8:499e:2b92) (Ping timeout: 276 seconds)
07:45:04 × chimera quits (~chimera@168-182-134-95.pool.ukrtel.net) (Quit: Konversation terminated!)
07:45:31 gehmehgeh joins (~ircuser1@gateway/tor-sasl/gehmehgeh)
07:45:42 kilolympus joins (~kilolympu@5.151.5.181)
07:52:06 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
07:53:54 jgt joins (~jgt@78.162.43.217)
07:54:24 o1lo01ol1o joins (~o1lo01ol1@bl7-89-228.dsl.telepac.pt)
07:55:42 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
07:59:09 × o1lo01ol1o quits (~o1lo01ol1@bl7-89-228.dsl.telepac.pt) (Client Quit)
07:59:56 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 246 seconds)
08:01:32 acidjnk_new joins (~acidjnk@p200300d0c72b958148671e179a62db06.dip0.t-ipconnect.de)
08:02:06 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 260 seconds)
08:02:24 Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
08:07:38 hendursa1 joins (~weechat@gateway/tor-sasl/hendursaga)
08:08:07 o1lo01ol1o joins (~o1lo01ol1@bl7-89-228.dsl.telepac.pt)
08:09:57 × hendursaga quits (~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
08:12:19 berberman_ joins (~berberman@unaffiliated/berberman)
08:12:58 × berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 276 seconds)
08:13:05 __minoru__shirae joins (~shiraeesh@77.94.25.177)
08:14:13 jgt joins (~jgt@78.162.43.217)
08:15:21 × tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
08:16:44 × kilolympus quits (~kilolympu@5.151.5.181) (Read error: Connection reset by peer)
08:17:29 × o1lo01ol1o quits (~o1lo01ol1@bl7-89-228.dsl.telepac.pt) (Remote host closed the connection)
08:17:41 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
08:18:35 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
08:20:21 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
08:22:50 Gurkenglas joins (~Gurkengla@unaffiliated/gurkenglas)
08:24:30 × stree quits (~stree@68.36.8.116) (Ping timeout: 260 seconds)
08:24:49 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
08:25:50 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
08:28:27 × idnar quits (sid12240@gateway/web/irccloud.com/x-keevbfwrcfohgwht) (Changing host)
08:28:27 idnar joins (sid12240@unaffiliated/idnar)
08:28:27 × idnar quits (sid12240@unaffiliated/idnar) (Changing host)
08:28:27 idnar joins (sid12240@gateway/web/irccloud.com/x-keevbfwrcfohgwht)
08:34:05 _ht joins (~quassel@82-169-194-8.biz.kpn.net)
08:36:59 stree joins (~stree@68.36.8.116)
08:38:55 × Sgeo quits (~Sgeo@ool-18b9875e.dyn.optonline.net) (Read error: Connection reset by peer)
08:40:23 petersen joins (~petersen@redhat/juhp)
08:43:22 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
08:44:11 LKoen joins (~LKoen@92.163.9.109.rev.sfr.net)
08:52:28 tlgl^nix joins (~damien@S0106008ef25e98fb.su.shawcable.net)
08:54:13 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
08:56:42 × wonko7 quits (~wonko7@62.115.229.50) (Ping timeout: 260 seconds)
08:57:41 DavidEichmann joins (~david@147.136.46.217.dyn.plus.net)
08:58:18 × petersen quits (~petersen@redhat/juhp) (Quit: petersen)
08:58:19 × acidjnk_new quits (~acidjnk@p200300d0c72b958148671e179a62db06.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
08:59:34 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
09:00:05 × mrkajetanp quits (mrkajetanp@gateway/shell/matrix.org/x-lggypjkcuznbawfu) (Quit: Idle for 30+ days)
09:00:09 × anon1891[m] quits (anon1891ma@gateway/shell/matrix.org/x-jglqskikldhsarfq) (Quit: Idle for 30+ days)
09:09:34 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
09:10:34 × refusenick quits (~user@2601:644:8502:d700::94c9) (Remote host closed the connection)
09:10:52 refusenick joins (~user@2601:644:8502:d700::94c9)
09:15:33 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 265 seconds)
09:16:15 × SrPx quits (sid108780@gateway/web/irccloud.com/x-hvitdvhqpzdufslz) (Ping timeout: 260 seconds)
09:17:44 knupfer joins (~Thunderbi@200116b82be79e00917924033d9cda5f.dip.versatel-1u1.de)
09:18:33 × davetapley quits (sid666@gateway/web/irccloud.com/x-zjajcgkktmcxzflu) (Ping timeout: 250 seconds)
09:19:39 SrPx joins (sid108780@gateway/web/irccloud.com/x-rptzeemvcbwvtpoq)
09:21:01 davetapley joins (sid666@gateway/web/irccloud.com/x-qidbuhiulumhvzos)
09:24:12 Guest973 is now known as fgaz
09:25:20 mmfood joins (~mmfood@185.176.246.69)
09:30:38 Guest6509 joins (~laudiacay@67.176.215.84)
09:34:05 × sword865 quits (uid208942@gateway/web/irccloud.com/x-bsntjtcyytnmmdmx) (Quit: Connection closed for inactivity)
09:34:18 geowiesnot joins (~user@87-89-181-157.abo.bbox.fr)
09:34:47 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 246 seconds)
09:39:50 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
09:42:30 thblt parts (~thblt@unaffiliated/thblt) ("ERC (IRC client for Emacs 28.0.50)")
09:43:52 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
09:46:00 __monty__ joins (~toonn@unaffiliated/toonn)
09:46:19 × jollygood2 quits (~bc8134e3@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout))
09:48:12 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
09:49:18 mmfood_1 joins (~mmfood@45.91.21.58)
09:49:56 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
09:51:57 × mmfood quits (~mmfood@185.176.246.69) (Ping timeout: 268 seconds)
09:54:31 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
09:54:59 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
09:55:51 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
09:55:57 × snowflake quits (~snowflake@gateway/tor-sasl/snowflake) (Ping timeout: 240 seconds)
09:56:28 snowflake joins (~snowflake@gateway/tor-sasl/snowflake)
09:59:03 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
09:59:21 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
09:59:51 mmfood joins (~mmfood@45.91.21.59)
10:00:26 × mmfood_1 quits (~mmfood@45.91.21.58) (Ping timeout: 240 seconds)
10:00:31 Rudd0 joins (~Rudd0@185.189.115.108)
10:02:20 frozenErebus joins (~frozenEre@37.231.244.249)
10:04:47 × mmfood quits (~mmfood@45.91.21.59) (Ping timeout: 260 seconds)
10:04:51 × drbean_ quits (~drbean@TC210-63-209-152.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
10:05:26 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 240 seconds)
10:08:09 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
10:08:46 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
10:09:04 mmfood joins (~mmfood@45.91.21.59)
10:10:41 jgt joins (~jgt@78.162.43.217)
10:11:55 × dansho quits (~dansho@ec2-52-198-118-239.ap-northeast-1.compute.amazonaws.com) (Quit: Leaving)
10:12:45 shad0w_ joins (a0ca2598@160.202.37.152)
10:21:12 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 240 seconds)
10:21:34 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 268 seconds)
10:22:18 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
10:23:33 mmfood_1 joins (~mmfood@45.91.21.59)
10:24:01 × mmfood quits (~mmfood@45.91.21.59) (Ping timeout: 268 seconds)
10:25:11 dpl_ joins (~dpl@77-121-78-163.chn.volia.net)
10:26:41 __minoru__shirae joins (~shiraeesh@77.94.25.177)
10:30:34 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
10:32:52 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
10:32:59 dastomaten joins (~dastomate@0543f40b.skybroadband.com)
10:34:09 <DigitalKiwi> kiwi@mvp-nixos ~ []$ nix shell nixpkgs#jq nixpkgs#fzf nixpkgs#peco -c bash -c "nix-instantiate --eval --json -E 'builtins.attrNames (import <nixpkgs> {}).haskellPackages' | jq '.[]' -r|wc -l"
10:34:10 <DigitalKiwi> 16009
10:35:58 <DigitalKiwi> how many are broken on the other hand...
10:36:52 × bennofs_ quits (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de) (Read error: Connection reset by peer)
10:36:56 × lemmih quits (~lemmih@2406:3003:2072:44:b750:bcd2:3182:6116) (Remote host closed the connection)
10:37:13 bennofs_ joins (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de)
10:37:14 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 265 seconds)
10:39:14 chimera joins (~chimera@168-182-134-95.pool.ukrtel.net)
10:40:34 <DigitalKiwi> nix-env -f channel:nixos-unstable -qaP -A haskellPackages|wc -l
10:40:36 <DigitalKiwi> 15992
10:41:25 <DigitalKiwi> https://dpaste.com/A7WXCR9CY here's that for last 5 nixos releases
10:41:28 kuribas joins (~user@ptr-25vy0i9wzo9a9ov2el7.18120a2.ip6.access.telenet.be)
10:42:30 × oleks_ quits (~oleks@188.166.34.97) (Quit: leaving)
10:42:44 oleks joins (~oleks@188.166.34.97)
10:43:47 HannaM joins (~quassel@p54849510.dip0.t-ipconnect.de)
10:45:16 <kuribas> @hoogle (a -> a -> a) -> Maybe a -> Maybe a -> a
10:45:17 <lambdabot> Data.Functor.Adjunction zapWithAdjunction :: Adjunction f u => (a -> b -> c) -> u a -> f b -> c
10:45:17 <lambdabot> Util foldMap2 :: (Foldable t, Applicative t, Monoid z) => (a -> b -> z) -> t a -> t b -> z
10:45:17 <lambdabot> Linear.Vector liftU2 :: Additive f => (a -> a -> a) -> f a -> f a -> f a
10:45:27 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
10:48:36 ADG1089 joins (~aditya@171.76.29.233)
10:50:07 <ADG1089> any ideas how can i optimize this function for speed? https://bpa.st/7BXQ
10:50:23 <ADG1089> should i use bang patterns on r & r'?
10:50:36 <ADG1089> and case statement on q to force evaluation?
10:50:52 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 240 seconds)
10:53:52 × dpl_ quits (~dpl@77-121-78-163.chn.volia.net) (Ping timeout: 240 seconds)
10:55:52 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
10:56:44 HelplessProgramm joins (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net)
10:57:04 <HelplessProgramm> hello guys
10:57:06 × olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Remote host closed the connection)
10:57:09 <HelplessProgramm> Anyone here?
10:57:27 <HelplessProgramm> I'm really desperate with a haskell program :(
10:57:41 philderbeast joins (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca)
10:57:45 __minoru__shirae joins (~shiraeesh@77.94.25.177)
10:58:02 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
10:58:22 Deide joins (~Deide@217.155.19.23)
10:58:23 stree joins (~stree@68.36.8.116)
10:58:49 mmfood_2 joins (~mmfood@185.176.246.69)
10:59:22 <HelplessProgramm> Pleaseee
11:00:06 <HelplessProgramm> My problem is i have a tuple and a list, and i want to search the first element in the tuple in the list and replace it with the second
11:00:35 × shad0w_ quits (a0ca2598@160.202.37.152) (Quit: Connection closed)
11:01:10 aVikingTrex joins (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
11:01:15 × HelplessProgramm quits (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net) (Quit: Connection closed)
11:01:18 × mmfood_1 quits (~mmfood@45.91.21.59) (Ping timeout: 260 seconds)
11:02:24 × pavonia quits (~user@unaffiliated/siracusa) (Quit: Bye!)
11:04:55 tlaxkit joins (~konversat@185.228.155.197)
11:05:12 <ADG1089> > {f _ _ [] = [];f t@(a, _) b (x:xs)|a==x=b:xs'|True=x:xs' where xs' = f t b xs}
11:05:14 <lambdabot> <hint>:1:1: error: <hint>:1:1: error: parse error on input ‘{’
11:05:36 <ADG1089> > let {f _ _ [] = [];f t@(a, _) b (x:xs)|a==x=b:xs'|True=x:xs' where xs' = f t b xs}
11:05:38 <lambdabot> <no location info>: error:
11:05:38 <lambdabot> not an expression: ‘let {f _ _ [] = [];f t@(a, _) b (x:xs)|a==x=b:xs'|Tr...
11:06:26 <ADG1089> > let {f _ _ [] = [];f t@(a, _) b (x:xs)|a==x=b:xs'|True=x:xs' where xs' = f t b xs} in f (2,3) 5 [1..10]
11:06:28 <lambdabot> [1,5,3,4,5,6,7,8,9,10]
11:06:48 <ADG1089> HelplessProgramm: ^
11:07:50 gaff joins (~user@49.207.205.205)
11:08:45 <gaff> :t forAll (listOf1 arbitrary) $ \xs -> last (g xs) == maximum xs -- gives Property
11:08:46 <lambdabot> error:
11:08:46 <lambdabot> • No instance for (FromExpr [()]) arising from a use of ‘g’
11:08:46 <lambdabot> • In the first argument of ‘last’, namely ‘(g xs)’
11:09:29 <gaff> :t forAll (listOf1 arbitrary) $ \xs -> classify (length xs == 0) "empty" $ last (g xs) == maximum xs -- also gives Property
11:09:31 <lambdabot> error:
11:09:31 <lambdabot> Variable not in scope: classify :: Bool -> [Char] -> Bool -> prop0
11:09:52 <gaff> this stuff is from quick check
11:10:10 <gaff> how could both these expressions have same type?
11:10:50 <gaff> ignore the lamdabot for now
11:11:36 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
11:11:55 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
11:12:55 <gaff> appreciate any help
11:15:10 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 252 seconds)
11:16:47 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
11:17:12 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
11:17:21 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 265 seconds)
11:18:23 × infinity0 quits (~infinity0@freenet/developer/infinity0) (Ping timeout: 246 seconds)
11:22:40 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Ping timeout: 265 seconds)
11:22:52 <nut> Is it possible to evaluate part of an expression, similar to C-x C-e in emacs?
11:24:16 infinity0 joins (~infinity0@freenet/developer/infinity0)
11:24:58 × tlaxkit quits (~konversat@185.228.155.197) (Quit: Konversation terminated!)
11:25:57 petersen joins (~petersen@redhat/juhp)
11:28:57 <kuribas> ADG1089: to begin, add type signatures.
11:29:14 <kuribas> ADG1089: and monomorphic preferably. Otherwise specialize it.
11:35:02 acidjnk_new joins (~acidjnk@p200300d0c72b958148671e179a62db06.dip0.t-ipconnect.de)
11:35:49 tlaxkit joins (~konversat@185.228.155.197)
11:36:51 <ADG1089> kuribas: last one worked tho
11:38:06 × cheater1 quits (~user@unaffiliated/cheater) (Quit: (BitchX) It's game over, man! game over!)
11:38:11 <ADG1089> kuribas: but I would say `f :: Sel1 t, Foldable t1, Eq a => t -> t1 a -> a -> t1 a
11:38:32 cheater joins (~user@unaffiliated/cheater)
11:38:36 <ADG1089> in this case `f :: (Int, b) -> [Int] -> Int -> [Int]`
11:39:06 × geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 260 seconds)
11:43:43 × aVikingTrex quits (~aVikingTr@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 260 seconds)
11:46:08 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
11:46:11 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
11:47:08 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
11:48:25 × zaquest quits (~notzaques@5.128.210.178) (Quit: Leaving)
11:50:26 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
11:51:58 zaquest joins (~notzaques@5.128.210.178)
11:52:53 × gaff quits (~user@49.207.205.205) (Quit: ERC (IRC client for Emacs 27.1))
11:55:49 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
11:56:44 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
11:57:08 × Guest51272 quits (~textual@69.202.254.168) (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:57:52 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 240 seconds)
11:58:01 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
11:59:25 × coot quits (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
11:59:38 frozenErebus joins (~frozenEre@37.231.244.249)
12:00:07 Alleria joins (~textual@69.202.254.168)
12:00:10 dyeplexer joins (~lol@unaffiliated/terpin)
12:00:31 Alleria is now known as Guest66852
12:04:02 × ChanServ quits (ChanServ@services.) (shutting down)
12:04:34 × Guest66852 quits (~textual@69.202.254.168) (Ping timeout: 245 seconds)
12:05:10 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
12:06:18 × chimera quits (~chimera@168-182-134-95.pool.ukrtel.net) (Remote host closed the connection)
12:06:44 chimera joins (~chimera@168-182-134-95.pool.ukrtel.net)
12:07:00 sagax joins (~sagax_nb@213.138.71.146)
12:08:36 ChanServ joins (ChanServ@services.)
12:08:36 hitchcock.freenode.net sets mode +o ChanServ
12:09:37 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
12:09:43 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
12:16:12 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
12:16:12 drbean_ joins (~drbean@TC210-63-209-57.static.apol.com.tw)
12:17:25 nyd joins (~nyd@unaffiliated/elysian)
12:17:40 dastomaten joins (~dastomate@0543f40b.skybroadband.com)
12:22:04 mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan)
12:22:29 __minoru__shirae joins (~shiraeesh@77.94.25.177)
12:22:41 × l8star__ quits (~l8star@business-90-187-113-149.pool2.vodafone-ip.de) (Remote host closed the connection)
12:23:58 geowiesnot joins (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
12:24:19 geekosaur joins (930099da@rrcs-147-0-153-218.central.biz.rr.com)
12:25:49 × acidjnk_new quits (~acidjnk@p200300d0c72b958148671e179a62db06.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
12:26:55 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
12:27:18 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
12:27:20 SoF joins (~SoF@unaffiliated/skillyonfire)
12:27:53 supercoven joins (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi)
12:29:58 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 252 seconds)
12:32:02 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
12:32:49 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
12:32:55 × ChanServ quits (ChanServ@services.) (shutting down)
12:34:12 ChanServ joins (ChanServ@services.)
12:34:12 hitchcock.freenode.net sets mode +o ChanServ
12:35:39 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 265 seconds)
12:36:58 × tlaxkit quits (~konversat@185.228.155.197) (Quit: Konversation terminated!)
12:39:03 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
12:40:23 mouseghost joins (~draco@87-206-9-185.dynamic.chello.pl)
12:40:23 × mouseghost quits (~draco@87-206-9-185.dynamic.chello.pl) (Changing host)
12:40:23 mouseghost joins (~draco@wikipedia/desperek)
12:41:55 × gitgood quits (~gitgood@80-44-9-246.dynamic.dsl.as9105.com) (Remote host closed the connection)
12:47:38 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
12:47:51 nicholasbulka joins (~nicholasb@c-73-21-82-200.hsd1.ga.comcast.net)
12:48:01 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
12:51:55 × anandprabhu quits (~anandprab@94.203.71.143) (Quit: Konversation terminated!)
12:52:32 × amiri quits (~amiri@cpe-76-91-154-9.socal.res.rr.com) (Remote host closed the connection)
12:54:35 amiri joins (~amiri@cpe-76-91-154-9.socal.res.rr.com)
12:54:50 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
12:55:07 Guest6509 joins (~laudiacay@67.176.215.84)
12:55:21 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
13:00:02 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 268 seconds)
13:03:07 tlaxkit joins (~konversat@185.228.155.197)
13:06:25 × ADG1089 quits (~aditya@171.76.29.233) (Remote host closed the connection)
13:06:46 × stree quits (~stree@68.36.8.116) (Ping timeout: 260 seconds)
13:13:43 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
13:13:53 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
13:14:34 × kuribas quits (~user@ptr-25vy0i9wzo9a9ov2el7.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
13:18:22 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
13:19:41 stree joins (~stree@68.36.8.116)
13:19:44 wei2912 joins (~wei2912@unaffiliated/wei2912)
13:20:00 gitgood joins (~gitgood@80-44-9-246.dynamic.dsl.as9105.com)
13:20:43 cfricke joins (~cfricke@unaffiliated/cfricke)
13:23:35 machinedgod joins (~machinedg@24.105.81.50)
13:24:16 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 260 seconds)
13:28:20 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 265 seconds)
13:31:12 tuxian joins (3125dbbe@49.37.219.190)
13:32:33 tuxian is now known as sbaranidharan
13:33:42 sbaranidharan is now known as tuxian
13:34:21 __minoru__shirae joins (~shiraeesh@77.94.25.177)
13:36:59 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
13:41:05 dmytrish joins (~mitra@2a02:8084:a82:d900:6010:2869:d10:372c)
13:41:50 tuxian is now known as sbaranidharan
13:41:53 sbaranidharan parts (3125dbbe@49.37.219.190) ()
13:43:14 fiedlr joins (~fiedlr@83.148.33.254)
13:43:19 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
13:44:13 urodna joins (~urodna@unaffiliated/urodna)
13:45:17 × tlgl^nix quits (~damien@S0106008ef25e98fb.su.shawcable.net) (Ping timeout: 260 seconds)
13:45:52 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
13:45:53 × rdivyanshu quits (uid322626@gateway/web/irccloud.com/x-jvfbdyhvxestwdim) (Quit: Connection closed for inactivity)
13:46:20 dastomaten joins (~dastomate@0543f40b.skybroadband.com)
13:47:42 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
13:47:56 × MidAutumnHotaru quits (~MidAutumn@unaffiliated/midautumnhotaru) (Quit: Quit 啾)
13:48:12 MidAutumnHotaru joins (~MidAutumn@unaffiliated/midautumnhotaru)
13:48:54 dpl_ joins (~dpl@77-121-78-163.chn.volia.net)
13:51:52 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
13:52:37 frozenErebus joins (~frozenEre@37.231.244.249)
13:52:58 × dsrt^ quits (dsrt@ip98-184-89-2.mc.at.cox.net) (Read error: Connection reset by peer)
13:54:02 ADG1089 joins (~aditya@171.76.29.233)
13:54:14 <ADG1089> any tips to code golf this: https://bpa.st/FWBQ ?
13:56:14 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
13:57:24 × ADG1089 quits (~aditya@171.76.29.233) (Remote host closed the connection)
13:57:26 danvet joins (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
13:57:45 × berberman[T] quits (berberma4@gateway/shell/matrix.org/x-hqhnddntnfwsknwk) (Quit: authenticating)
13:58:00 berberman[T] joins (berberma4@gateway/shell/matrix.org/x-voiztqshsnrivrqj)
13:58:03 × knupfer quits (~Thunderbi@200116b82be79e00917924033d9cda5f.dip.versatel-1u1.de) (Ping timeout: 250 seconds)
13:58:14 berberman[T] is now known as berberman___
13:58:20 berberman___ is now known as berberman__
13:59:36 ADG1089 joins (~aditya@171.76.29.233)
14:01:05 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
14:01:14 <[exa]> ADG1089: what does it do?
14:01:27 frozenErebus joins (~frozenEre@37.231.244.249)
14:02:15 <ADG1089> [exa]: calculate sum of maximum idempotent element from each of the rings Z/nZ for 1<=n<=lim
14:03:00 <ADG1089> although an inefficient brute force implementation would look like print $ sum [last [y|y<-[1..x-1],mod(y*y)x==y],x<-[2..lim]]
14:03:23 × drbean_ quits (~drbean@TC210-63-209-57.static.apol.com.tw) (Quit: ZNC 1.8.2+cygwin2 - https://znc.in)
14:03:28 CrazyPython joins (~crazypyth@98.122.164.118)
14:06:38 × nicholasbulka quits (~nicholasb@c-73-21-82-200.hsd1.ga.comcast.net) (Remote host closed the connection)
14:07:15 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
14:07:52 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 268 seconds)
14:11:39 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
14:12:04 elfets joins (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
14:14:24 son0p joins (~ff@181.136.122.143)
14:15:26 <[exa]> ADG1089: that doesn't seem very compressible tbh, unless you e.g. find out how to squash the algebraic code with k, k', p and q (idea: zipwith? applicative?)
14:20:49 dsrt^ joins (dsrt@ip98-184-89-2.mc.at.cox.net)
14:20:50 Tario joins (~Tario@201.192.165.173)
14:22:32 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
14:24:37 × ADG1089 quits (~aditya@171.76.29.233) (Quit: Konversation terminated!)
14:25:51 jao joins (~jao@pdpc/supporter/professional/jao)
14:26:10 × DavidEichmann quits (~david@147.136.46.217.dyn.plus.net) (Ping timeout: 252 seconds)
14:26:41 bitmagie joins (~Thunderbi@200116b8061b36001c031659b23d9860.dip.versatel-1u1.de)
14:28:35 × chimera quits (~chimera@168-182-134-95.pool.ukrtel.net) (Quit: Konversation terminated!)
14:29:43 × zva quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 265 seconds)
14:29:52 × bitmagie quits (~Thunderbi@200116b8061b36001c031659b23d9860.dip.versatel-1u1.de) (Client Quit)
14:37:13 malumore__ joins (~malumore@151.62.115.131)
14:39:26 × malumore_ quits (~malumore@151.62.115.131) (Ping timeout: 240 seconds)
14:40:05 × philderbeast quits (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca) (Quit: My MacBook has gone to sleep. ZZZzzz…)
14:40:29 tlgl^nix joins (~damien@S0106008ef25e98fb.su.shawcable.net)
14:41:03 × hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:6312:c8ad:fc31:201b) (Ping timeout: 260 seconds)
14:46:00 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
14:46:38 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 246 seconds)
14:47:12 × malumore__ quits (~malumore@151.62.115.131) (Remote host closed the connection)
14:47:52 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
14:48:02 malumore joins (~malumore@151.62.115.131)
14:48:24 × DTZUZU_ quits (~DTZUZO@207.81.119.43) (Ping timeout: 246 seconds)
14:49:13 gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
14:51:00 hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:4e27:9f44:a2d5:c10c)
14:53:30 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 268 seconds)
14:54:01 HelplessProgramm joins (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net)
14:54:08 <HelplessProgramm> Hello
14:54:13 <HelplessProgramm> Someone there?
14:54:28 <HelplessProgramm> I have a problem i dont know how to solve
14:54:29 frozenErebus joins (~frozenEre@37.231.244.249)
14:54:58 <HelplessProgramm> I have a array of strings
14:55:06 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Ping timeout: 240 seconds)
14:55:13 <HelplessProgramm> And an array of tuples like (key, value)
14:55:23 × nyd quits (~nyd@unaffiliated/elysian) (Ping timeout: 246 seconds)
14:55:48 <HelplessProgramm> I have to replace all coincidences of "key" in the array of strings and replace it with "value"
14:56:02 <HelplessProgramm> Can someone help plox :(
14:56:32 zva joins (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de)
14:57:17 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
14:57:25 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 250 seconds)
14:58:18 <ski> what have you tried, so far ?
14:58:41 <HelplessProgramm> I tried to do it recursively
14:58:44 <HelplessProgramm> But im kinda new
14:58:47 <ski> @where paste
14:58:48 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
14:59:50 <HelplessProgramm> I did a helper function
14:59:54 <HelplessProgramm> But it doesnt help
14:59:58 Alleria joins (~textual@2603-7000-3040-0000-8d26-87d2-93d2-7b51.res6.spectrum.com)
15:00:01 lawr3nce joins (~lawr3nce@gateway/tor-sasl/lawr3nce)
15:00:02 <HelplessProgramm> I dont think im approaching it correctly
15:00:10 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
15:00:10 <ski> i think we need to see some concrete code
15:00:12 <[exa]> HelplessProgramm: pastebin what you have, we can work on it :]
15:00:21 Alleria is now known as Guest42540
15:00:26 <ski> or else you need to explain more in detail what you're struggling with
15:00:38 <HelplessProgramm> https://paste.tomsmeding.com/DbPMjrwQ
15:00:42 <HelplessProgramm> I had this
15:00:52 <HelplessProgramm> Atom is just a wrapper for a thingy
15:01:06 <ski> how're `Atom' and `Sustitucio' defined ?
15:01:08 <HelplessProgramm> And sustitucio is the list of tuples
15:01:25 <HelplessProgramm> data Atom = Atom { _nomPredicat::String, _termes::[ Term ] }
15:01:26 <HelplessProgramm>   deriving (Eq, Show)
15:01:26 <HelplessProgramm> type Sustitucio = [ (Term, Term) ] -- [(variable, constant), (variable, constant), ...]
15:02:26 <HelplessProgramm> So basically sustitucio is a list of tuples
15:02:48 <ski> ok
15:03:04 <gnumonic> You probably shouldn't be using a list of tuples?
15:03:11 <ski> i think it would be better to use `null' rather than `== []' .. and even better to use pattern-matching
15:03:15 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
15:03:32 <gnumonic> Unless this is an assignment and you have to, a Data.Map map would be better...
15:03:37 <ski> and you need to show `sustitueixCamps', i think
15:03:38 <HelplessProgramm> Im kinda new, this is for school, i didnt do the definitions
15:04:02 <HelplessProgramm> Yeah sustitueixCamps was a function i tried but i deleted it already
15:04:21 × Guest42540 quits (~textual@2603-7000-3040-0000-8d26-87d2-93d2-7b51.res6.spectrum.com) (Ping timeout: 250 seconds)
15:04:37 × wei2912 quits (~wei2912@unaffiliated/wei2912) (Remote host closed the connection)
15:04:47 <ski> it sounds like defining it would be a good start
15:05:02 <HelplessProgramm> So for each item in Sustitucio, if the tuple is (a,b) i have to search all occurrences of a in the Atom _termes and replace them with b
15:05:11 <HelplessProgramm> I dont know if it sounds confusing
15:05:21 <ski> oh, also .. you're not dealing with arrays, that i can see, but rather dealing with lists
15:05:36 <ski> that sounds like a plan, sure
15:05:37 <HelplessProgramm> yeah sorry
15:05:37 × notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 252 seconds)
15:05:39 <HelplessProgramm> Its a list
15:06:30 chimera joins (~chimera@168-182-134-95.pool.ukrtel.net)
15:06:58 <HelplessProgramm> But the language not being imperative is so frustrating to me
15:07:01 <HelplessProgramm> I cant do anything
15:07:21 <gnumonic> https://paste.tomsmeding.com/S6OXDjd3 something like that should work for you i think (hopefully i typed the url right my clipboard isn't working). also i just woke up and didn't test that soooo hopefully i did it right
15:07:40 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
15:08:13 <HelplessProgramm> omgg thank you so much
15:08:14 <ski> please forget what you know about (imperative) programming. you will have to unlearn some habits and ways of thinking. learning a new programming paradigm is always a bit like learning to program from scratch, all over again
15:09:04 <gnumonic> haskell was my first language and i'm trying to learn rust and C atm so i feel your pain, it can be hard to adapt
15:09:19 jgt joins (~jgt@78.162.43.217)
15:09:32 <ski> gnumonic :(
15:09:34 <maerwald> once you discover monads, you'll realize we just hid imperative programming behind a fancy word
15:09:49 <HelplessProgramm> I tried to understand that
15:09:52 <HelplessProgramm> And functors
15:09:56 <HelplessProgramm> But my brain breaks
15:10:14 Tops2 joins (~Tobias@dyndsl-095-033-093-085.ewe-ip-backbone.de)
15:10:18 <ski> @quote is.the.solution
15:10:18 <maerwald> brain recovers quickly
15:10:18 <lambdabot> quicksilver says: head-explosion is the solution, not the problem.
15:10:30 <maerwald> just make sure your bones are ok
15:12:56 <gnumonic> ski: if there were more haskell jobs i'd just stick with FP :-( (Unless your sad face was for giving him the solution lol)
15:13:10 <ski> (the latter)
15:13:40 xkapastel joins (uid17782@gateway/web/irccloud.com/x-ffvsvgtndmjolwtr)
15:15:45 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
15:16:32 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
15:16:34 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
15:17:20 <gnumonic> eh there's value to figuring something out yourself but there's also value in seeing examples to help you pick up on unfamiliar patterns. i think? i dunno.
15:17:39 dastomaten joins (~dastomate@0543f40b.skybroadband.com)
15:17:43 <[exa]> gnumonic: you don't want to learn C (and likely not even rust). Learn how assembly works (that's in fact easy), then you can intuitively produce rough descriptions of what you'd like the computer to do in C. :]
15:18:03 Sheilong joins (uid293653@gateway/web/irccloud.com/x-dlsyikshxdkdktlg)
15:19:19 electricityZZZZ joins (~electrici@135-180-3-82.static.sonic.net)
15:20:21 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 260 seconds)
15:20:24 <ski> learning at least one assembler is useful, yes
15:20:47 <hpc> rust is a perfectly fine almost-haskell imo
15:21:25 <gnumonic> exa: i appreciate that advice and i have no doubt that you are correct, but I need to have a job in a few months and so my reason for learning other languages is more "need to know something for which entry level positions exist" than "optimum path to mastery of the best techniques" :-(
15:22:04 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
15:24:32 <gnumonic> tho probably shouldn't be focusing on rust for that either but it has Good Types and is therefore an OK bridge to imperative stuff
15:26:11 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 268 seconds)
15:26:49 × CrazyPython quits (~crazypyth@98.122.164.118) (Read error: Connection reset by peer)
15:27:13 CrazyPython joins (~crazypyth@98.122.164.118)
15:27:37 × stree quits (~stree@68.36.8.116) (Ping timeout: 252 seconds)
15:27:42 jgt joins (~jgt@46.154.28.182)
15:28:17 <DigitalKiwi> hpc: how so? (very limited knowledge on this) seems to me it's a far cry from being even an almost-haskell
15:28:18 × son0p quits (~ff@181.136.122.143) (Remote host closed the connection)
15:28:30 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
15:29:05 <ski> sum types with pattern-matching ?
15:29:18 <hpc> it has algebraic data types, an emphasis on pattern matching, and an emphasis on expressions over statements
15:29:28 <jgt> gnumonic: I'm totally with you on that opinion. It's not fun to have to understand everything from first principles.
15:29:45 <hpc> even up to when a block has a return value, it's just that value on its own line instead of "return value"
15:29:50 <DigitalKiwi> like it's got some nice types yes but that's only a fraction of "what makes" haskell "haskell"
15:30:01 alx741 joins (~alx741@181.196.69.117)
15:30:06 son0p joins (~ff@181.136.122.143)
15:30:07 <hpc> and values are immutable by default
15:30:10 <maerwald> hpc: which is terrible for readibility
15:30:21 <maerwald> if you add ; then it has a different meaning
15:31:19 carlomagno joins (~cararell@148.87.23.10)
15:31:55 <maerwald> anyway, rust is neither lazy, nor functional. But it shows that what we really want is 1. ADTs and 2. dealing with mutability in a reasonable way
15:32:49 <maerwald> functional in its own is less significant imo
15:33:25 <gnumonic> it'd be neat if it had higher kinded types. i think it *could*? dunno
15:35:00 × supercoven quits (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi) (Read error: Connection reset by peer)
15:35:03 <hpc> rust is almost functional, it just needs to be easier to get lambdas to play nicely with ownership
15:35:16 waleee-cl joins (uid373333@gateway/web/irccloud.com/x-boxlsxrcosxlqwrv)
15:35:20 supercoven joins (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi)
15:35:25 <hpc> really the one thing i miss is purity - or rather, first-class IO
15:36:19 <SoF> I just want a compiler for English
15:36:28 <SoF> monkey's paw-like
15:36:43 <SoF> if you're not specific enough, the binary will just delete your / or something
15:37:16 <maerwald> I haven't missed monads at all when doing rust. Instead it has ad-hoc functions like `and_then`
15:37:16 <gnumonic> i legitimately do not know how people can write programs without ADTs and pattern matching. (maybe that's just cuz I wrote like 100k lines of haskell before looking at any other languages)
15:37:36 <maerwald> hpc: rust is not based on lambda calculus, so it isn't functional
15:38:08 <ammar2> that's a very purist definition...
15:38:12 <maerwald> yes
15:38:19 cole-h joins (~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
15:38:23 <SoF> gnumonic: recently wrote some Go code and I *really* missed ADTs + pattern matching...
15:38:25 <ammar2> almost to the point of being useless when talking about languages
15:38:33 <maerwald> not at all
15:38:36 <DigitalKiwi> i think hpc has one a good job of supporting my point lol
15:38:41 <__minoru__shirae> it's interesting how would you translate ownership to fp
15:39:01 <maerwald> just because you can write *pure* functions in a language, doesn't make it a pure language, for instance
15:39:20 <maerwald> just because python provides lambda syntax doesn't make it a functional programming language
15:39:34 Alleria_ joins (~textual@mskresolve-a.mskcc.org)
15:39:54 <ammar2> where would you put something like scala
15:39:57 <hpc> mostly because python's lambdas are an embarassment
15:39:58 <gnumonic> isn't there like, some kind of graph reduction calculus that you could use instead of the lambda calculus?
15:40:05 <__minoru__shirae> there is something resembling ownership going on in ST monad
15:40:05 <gnumonic> where it'd basically be functional
15:40:12 × jgt quits (~jgt@46.154.28.182) (Remote host closed the connection)
15:40:16 <maerwald> ammar2: I haven't had a look at Scala and its specification, so I don't know
15:40:19 <hpc> ruby would be a better example, and i would say it has enough emphasis on functions to count as functional
15:40:20 <DigitalKiwi> http://www.ats-lang.org/ > rust amirite
15:40:23 jgt joins (~jgt@78.162.43.217)
15:40:40 <hpc> even if it's in such a chaotic way that it makes lisp macros look normal by comparison
15:40:41 stree joins (~stree@68.36.8.116)
15:41:03 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
15:41:40 <DigitalKiwi> ammar2: the garbage bin
15:41:55 <maerwald> lol
15:42:19 <ammar2> sure but that's beyond the point
15:44:21 <gnumonic> lambdas in python are weird. i tried to learn a bit of it and... do they not capture the scope or something? i just remember them not doing what you'd expect
15:44:25 Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net)
15:44:50 <maerwald> ammar2: some sources say scala is based on lambda calculus
15:44:51 <hpc> gnumonic: scope and that you can't do "statements" with them, only simple expressions
15:45:01 × Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Client Quit)
15:45:19 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
15:45:22 <hpc> but scope's a mess in python anyway, since variables are declared implicitly
15:45:24 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
15:45:31 <DigitalKiwi> ammar2: narrowing the point; depends are you using scalaz or not
15:45:53 coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
15:46:07 <ammar2> so it's not a property of the language then?
15:46:10 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
15:46:17 <ammar2> what does it matter what it's based on?
15:46:39 × cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 245 seconds)
15:46:58 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
15:46:59 Major_Biscuit joins (~Major_Bis@82-169-100-198.biz.kpn.net)
15:46:59 <gnumonic> tbh i found python very confusing coming from a haskell background. i know it's supposed to be easy to learn but rust has been a lot smoother
15:48:24 × jathan quits (~jathan@69.61.93.38) (Quit: WeeChat 2.3)
15:48:41 jathan joins (~jathan@69.61.93.38)
15:48:45 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
15:48:53 <__minoru__shirae> DigitalKiwi: it's not clear whether you approve of scalaz or not
15:50:45 <maerwald> ammar2: what do you mean?
15:50:50 <DigitalKiwi> i love scalaz if it wasn't for scalaz i'd still be using scala and not haskell ;)
15:51:02 × HelplessProgramm quits (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net) (Quit: Connection closed)
15:51:14 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
15:51:15 <DigitalKiwi> <3 dibblego
15:51:39 <maerwald> That's the only reasonable definition. All others are about how a language feels to you. That may be important, but is hard to argue about.
15:53:14 × geekosaur quits (930099da@rrcs-147-0-153-218.central.biz.rr.com) (Quit: Connection closed)
15:53:56 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds)
15:54:18 geekosaur joins (930099da@rrcs-147-0-153-218.central.biz.rr.com)
15:55:46 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Remote host closed the connection)
15:55:59 <__minoru__shirae> so scalaz is bad? I got the impression that scalaz and cats are trying to port haskell to scala
15:56:26 <__minoru__shirae> I mean, to make it possible to write in scala like in haskell
15:56:49 fiedlr_ joins (~fiedlr@83.148.33.254)
15:57:32 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
15:58:09 <DigitalKiwi> no, scalaz is good, if you're writing scala.
15:59:26 × fiedlr quits (~fiedlr@83.148.33.254) (Ping timeout: 240 seconds)
15:59:28 <DigitalKiwi> scala as oderksy intends it is extremely anti-fp
16:00:29 <DigitalKiwi> https://twitter.com/ArchKiwi/status/1069358576551034885
16:01:31 × Major_Biscuit quits (~Major_Bis@82-169-100-198.biz.kpn.net) (Quit: WeeChat 3.0.1)
16:03:12 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
16:04:21 <__minoru__shirae> that's actually one of the reasons why I started learning haskell: I used to see occasional mentions of scalaz and cats here and there and decided to start from haskell
16:04:40 <__minoru__shirae> and now I'm too deep in haskell and don't want to come back to scala
16:07:11 <DigitalKiwi> __minoru__shirae: i used scalaz for years and when i'd ask questions about things i didn't understand dibblego would say to learn haskell which was frustrating because i was not working on a haskell codebase so this seems like it would not help me solve my immediate problem to learn a different language...turns out learning haskell made all of the things i didn't understand make sense ;) (and then ultimately meant i was able to switch to haskel
16:07:11 <DigitalKiwi> l instead of scala too so)
16:08:53 <DigitalKiwi> really it made a lot of things in other languages make more sense too. ex. python list comprehensions
16:09:25 shad0w_ joins (a0ca2598@160.202.37.152)
16:11:07 idhugo joins (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net)
16:11:32 × idhugo quits (~idhugo@80-62-116-231-mobile.dk.customer.tdc.net) (Client Quit)
16:12:54 hypercube joins (~hypercube@2603-6011-f901-9e5b-0000-0000-0000-08cf.res6.spectrum.com)
16:14:10 Mrbuck joins (~Mrbuck@gateway/tor-sasl/mrbuck)
16:15:58 Matthias1 joins (~matthias@li890-22.members.linode.com)
16:20:43 × mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Quit: mikoto-chan)
16:20:58 mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan)
16:24:06 tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
16:24:11 nineonine joins (~nineonine@2604:3d08:7785:9600:d9d9:f067:f388:4d71)
16:25:30 × nineonine quits (~nineonine@2604:3d08:7785:9600:d9d9:f067:f388:4d71) (Remote host closed the connection)
16:25:46 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
16:26:46 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
16:26:58 larsan1 joins (~larsan@195.140.213.38)
16:29:12 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Remote host closed the connection)
16:29:25 wonko7 joins (~wonko7@62.115.229.50)
16:31:08 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
16:31:39 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
16:35:49 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
16:36:32 HelplessProgramm joins (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net)
16:36:36 <HelplessProgramm> Hello again
16:36:43 <HelplessProgramm> I'm progressing better now
16:36:51 <HelplessProgramm> I have a small doubt
16:37:07 <HelplessProgramm> I have a function such as foo :: Int -> Int -> Int
16:37:10 invaser joins (~Thunderbi@31.148.23.125)
16:37:15 <HelplessProgramm> And 2 lists of ints
16:37:31 × invaser quits (~Thunderbi@31.148.23.125) (Client Quit)
16:37:48 <HelplessProgramm> How could i make it so i run all permutations of the function with the elements of the 2 lists?
16:37:50 invaser joins (~Thunderbi@31.148.23.125)
16:38:07 Thom2503 joins (~Thom2503@49-135-166-62.ftth.glasoperator.nl)
16:38:11 <HelplessProgramm> I tried map but it only takes one argument
16:38:45 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
16:39:42 <hpc> check out Applicative
16:39:49 <HelplessProgramm> Oh god
16:39:53 <HelplessProgramm> That makes my brain hurt
16:40:37 <hpc> as you learn it, remember foo <$> firstList <*> secondList
16:40:51 <HelplessProgramm> hmm
16:41:01 <hpc> > (+) <$> [1, 2, 3] <*> [10, 100, 1000]
16:41:03 <lambdabot> [11,101,1001,12,102,1002,13,103,1003]
16:41:31 <HelplessProgramm> So i could put that and thats it?
16:41:34 <HelplessProgramm> With my function
16:41:40 <hpc> yes
16:41:43 <HelplessProgramm> Rocks
16:41:46 <hpc> but still learn Applicative, it's crazy good
16:42:13 <HelplessProgramm> I try but it's still way over my head
16:42:58 <hpc> have you looked at Functor? i notice you said map instead of fmap
16:43:07 <HelplessProgramm> Yeaah
16:43:09 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
16:43:18 <HelplessProgramm> Ive looked into functor applicative and monad
16:43:25 <HelplessProgramm> It's really hard
16:43:57 × mikoto-chan quits (~anass@gateway/tor-sasl/mikoto-chan) (Ping timeout: 240 seconds)
16:44:26 <monochrom> Have you written your own recursion for this?
16:44:34 × gehmehgeh quits (~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
16:44:42 <monochrom> Do you want guidance for writing your own recursion for this?
16:44:58 <HelplessProgramm> Yeah i still struggle with it
16:45:30 <gnumonic> it's not really that bad. functors are boxes you can map functions over. fmap (+1) [1,2,3] = [2,3,4]. applicatives are containers that you can put functions into, and apply those containers full of functions to containers full of values to get back a container of the result values (more or less)
16:45:31 <monochrom> OK first you should write your own version of map for practice.
16:46:09 <HelplessProgramm> container, thats the hard keyword
16:46:13 <HelplessProgramm> ro understand i think
16:46:41 <monochrom> After that, this may or may not be obvious: note that you want f [a,b] [x,y] = [foo a x, foo a y, foo b x, foo b y] for example.
16:46:57 <monochrom> Actually let me make it longer.
16:47:11 <gnumonic> i don't think it'd be helpful to elaborate on what "container" *really* means there :P it'd probably scare you
16:47:27 <monochrom> You want foo [a,b,c] [x,y] = [foo a x, foo a y, foo b x, foo b y, foo c x, foo c y]
16:47:35 <HelplessProgramm> small doubt, what if the function is actually foo :: int -> int -> Maybe Int
16:47:48 <HelplessProgramm> Does that snippet still work? the one with applicative
16:48:11 <HelplessProgramm> > (+) <$> [1, 2, 3] <*> [10, 100, 1000] this one, if the function returns a maybe
16:48:11 <monochrom> = [foo a x, foo a y] : the rest = map (foo a) [x,y] : the reset
16:48:13 <lambdabot> <hint>:1:47: error: <hint>:1:47: error: parse error on input ‘,’
16:48:23 <hpc> it'll produce [Maybe Int]
16:48:41 <HelplessProgramm> Is that bad?
16:48:47 <hpc> depends on what you want
16:48:57 <monochrom> So this suggests using recursion and map again, map (foo a) [x,y] : recursion
16:49:03 <HelplessProgramm> well i don't want to find Nothing in some positions
16:50:02 <hpc> you can use another function to remove the Nothings
16:50:15 <monochrom> Frankly and bluntly I oppose going to Applicative or even Functor at this stage.
16:50:38 <HelplessProgramm> hmmm
16:51:10 <monochrom> this early stage
16:51:12 × petersen quits (~petersen@redhat/juhp) (Ping timeout: 240 seconds)
16:51:13 <HelplessProgramm> so if i put map (foo a)[x, y] that works?
16:51:19 × shad0w_ quits (a0ca2598@160.202.37.152) (Quit: Connection closed)
16:51:25 <HelplessProgramm> x,,y being my lists i guess
16:51:48 <HelplessProgramm> what function it is to remove the nothings?
16:51:53 <gnumonic> lists are kind of confusing because thinking of a list as a non-deterministic computation (which you sorta have to do to grok the applicative instance) is weird if you're looking at them as "basically imperative arrays", which is probably how this person is looking at them
16:51:53 <monochrom> err, map (foo a) [x, y] ++ recursion
16:52:27 cfricke joins (~cfricke@unaffiliated/cfricke)
16:52:41 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
16:52:51 <gnumonic> :t (Identity 2)
16:52:52 <lambdabot> Num a => Identity a
16:53:34 <gnumonic> Identity is a functor. If you have a function over "a", you can use fmap to apply it to the "a" inside of an "Identity"
16:53:41 <gnumonic> fmap (+1) (Identity 2)
16:54:00 <HelplessProgramm> hmm
16:54:14 <gnumonic> er that should spit out Identity 3 (i never use lambdabot)
16:54:26 <HelplessProgramm> :t (Identity 3)
16:54:28 <lambdabot> Num a => Identity a
16:54:28 <monochrom> https://chrisdone.com/posts/teaching/
16:55:27 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
16:55:45 <gnumonic> but say you have a function in a container. Like:
16:55:53 <gnumonic> :t (Identity (+1))
16:55:54 <lambdabot> Num a => Identity (a -> a)
16:56:03 Guest6509 joins (~laudiacay@67.176.215.84)
16:56:44 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
16:57:34 <gnumonic> you can't fmap that function that's inside the container over another container. if you try fmap (Identity (+1)) (Identity 3) it won't give you Identity 4
16:57:34 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
16:57:35 <HelplessProgramm> this assignment is so hard
16:58:05 <monochrom> That won't get people to give solutions to you, by the way.
16:58:25 <HelplessProgramm> lmao
16:58:28 <HelplessProgramm> Well
16:58:29 <gnumonic> but identity is also an applicative. and the <*> operator lets you smash together Identity (+1) and Identity 3
16:58:31 <HelplessProgramm> I have this statement
16:58:34 <gnumonic> :t (<*>)
16:58:36 <lambdabot> Applicative f => f (a -> b) -> f a -> f b
16:58:42 <HelplessProgramm> That one!
16:58:43 <monochrom> But I'm sure you're making it harder than necessary by heeding advice on caring about Functor and Applicative.
16:58:55 <monochrom> Pretty sure this is just a recursion assignment.
16:59:23 <gnumonic> so, Identity (+1) <*> Identity 3
16:59:28 <gnumonic> gives you Identity 4
16:59:42 <monochrom> #haskell people are famous for not caring what your current level is, and just force-feed you whatever they themselves care.
17:00:02 <HelplessProgramm> It's the hardest language i've seen by far
17:00:11 <HelplessProgramm> Too abstract
17:00:11 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 240 seconds)
17:00:35 <monochrom> If you ask so much as "how do I apply f to x" they'll answer "check out Kan extensions".
17:00:55 <HelplessProgramm> lol
17:01:01 <HelplessProgramm> I can't use libraries
17:01:05 <HelplessProgramm> For this
17:01:18 × coot quits (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
17:01:32 <gnumonic> i was just trying to explain the above example to him. i don't really think it's that hard. i mean understanding how to use all this stuff together is hard but the basics of "put function in container, smash container with function in it into container w/ value in it"
17:01:36 <gnumonic> isn't really rocket science
17:02:13 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
17:02:37 <hpc> to be fair, that question was the classic first use of Applicative
17:02:57 <HelplessProgramm> Yeah I think i had to use that
17:03:05 <HelplessProgramm> But it's still very hard for me
17:03:19 <monochrom> <*> counts as library function.
17:03:49 <HelplessProgramm> How do i remove Nothings from a list?
17:04:18 <HelplessProgramm> {-# LANGUAGE RecordWildCards #-}
17:04:18 <HelplessProgramm> import Data.Char (isUpper)
17:04:19 <HelplessProgramm> import Data.List (nub, isInfixOf)
17:04:19 <HelplessProgramm> import Data.List.Split (splitOn)
17:04:20 <HelplessProgramm> import Data.String.Utils (strip)
17:04:20 <HelplessProgramm> import Data.Maybe (mapMaybe, fromMaybe)
17:04:22 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
17:04:22 <HelplessProgramm> I just can use this stuff
17:04:31 <HelplessProgramm> And what's included by default of course
17:04:47 × sw1nn quits (~sw1nn@2a00:23c7:622f:2c00:5726:e59c:c228:d7ce) (Ping timeout: 260 seconds)
17:05:04 <gnumonic> check the first element of the list, see if it's a nothing, if it is then remove it, then do that again til you're out of list :)
17:05:57 sw1nn joins (~sw1nn@2a00:23c7:622f:2c00:b279:c6ef:9497:e6fa)
17:07:15 <monochrom> Except these are immutable lists, you can't remove anything.
17:07:32 <HelplessProgramm> aha
17:07:38 <HelplessProgramm> So sad
17:07:41 <monochrom> And no, "'remove' means you clone but selectively omit things" is not obvious to some students.
17:08:08 <monochrom> Indeed, when you write the code out, nothing in the code smells remotely like removing anything.
17:08:43 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 250 seconds)
17:09:11 × invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 240 seconds)
17:13:41 edrx joins (~Eduardo@2804:56c:d2c0:6300:d28a:a35a:c563:afab)
17:15:22 <edrx> hi! is this the right place to ask questions about stack?
17:15:44 × HelplessProgramm quits (4f911f9c@156.red-79-145-31.dynamicip.rima-tde.net) (Quit: Connection closed)
17:16:16 <hpc> this is a queue only channel :P
17:17:29 × cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 245 seconds)
17:17:29 notzmv joins (~zmv@unaffiliated/zmv)
17:17:45 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
17:19:51 × CrazyPython quits (~crazypyth@98.122.164.118) (Ping timeout: 265 seconds)
17:21:01 × lawr3nce quits (~lawr3nce@gateway/tor-sasl/lawr3nce) (Remote host closed the connection)
17:21:25 <edrx> I'll take that as a yes =) so: I'm trying to install Agda using Stack, and I'm running into several problems - and I'm using this as an excuse to learn more about Stack (and about Cabal, Cabal Hell, etc). I use Debian, and I decided to do an "apt-get remove haskell-stack" in order to use the latest version, and then I did "wget -qO- https://get.haskellstack.org/ | sh"...
17:21:52 × carbolymer quits (~carbolyme@dropacid.net) (Quit: o/)
17:21:54 CrazyPython joins (~crazypyth@98.122.164.118)
17:22:01 × notzmv quits (~zmv@unaffiliated/zmv) (Ping timeout: 252 seconds)
17:22:10 <edrx> (my full notes are here - http://angg.twu.net/e/stack.e.html - but they're messy)
17:23:38 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
17:24:18 <edrx> what do I need to do to delete the current installation of stack and its files? is this enough? 1) rm /usr/local/bin/stack 2) rm ~/.local/bin/stack 3) remove all the stack-related directories in ~/.local/ ?
17:24:46 <edrx> ~/.stack/, iirc
17:25:36 × Mrbuck quits (~Mrbuck@gateway/tor-sasl/mrbuck) (Remote host closed the connection)
17:28:27 <sclv> sounds right
17:29:10 <geekosaur> ~/.stack-work?
17:29:53 <wz1000> I don't think there is ~/.stack-work, but there is a .stack-work/ folder in any directory with a stack.yaml you have run stack build on
17:29:56 <sclv> note that if you install something with stack then remove all stack related dirs it may break due to linking
17:30:29 <edrx> sclv: I'm planning to remove everything that I installed with stack, too...
17:30:50 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
17:30:59 <wz1000> Cabal hell isn't really a thing anymore, in my experience these days cabal is much more likely to Just Work™ than stack on most things
17:32:50 <Uniaika> cabal.project is love, cabal.project is life
17:34:11 wavemode_ joins (~wavemode@097-070-075-143.res.spectrum.com)
17:35:05 desperek_ joins (~draco@87-206-9-185.dynamic.chello.pl)
17:35:20 juuandyy joins (~juuandyy@90.106.228.121)
17:35:25 <maerwald> stack has a better file format, though :>
17:36:27 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 250 seconds)
17:37:56 <Uniaika> maerwald: I loathe yaml :3
17:38:07 DavidEichmann joins (~david@147.136.46.217.dyn.plus.net)
17:38:16 <maerwald> better than cabal, where no one really knows the format
17:38:27 <maerwald> and there are a couple of funny edge cases
17:38:41 × mouseghost quits (~draco@wikipedia/desperek) (Ping timeout: 240 seconds)
17:40:06 <maerwald> so yeah... I want cabal with a reasonable format, whether it's yaml or toml, idc
17:42:17 <Uniaika> tapas: you hear that? The People™ want to write Dhall for Cabal!
17:42:30 Sgeo joins (~Sgeo@ool-18b9875e.dyn.optonline.net)
17:43:22 <maerwald> why stop there? Can we not require nix for cabal file format?
17:45:17 Guest6509 joins (~laudiacay@67.176.215.84)
17:45:22 carbolymer joins (~carbolyme@dropacid.net)
17:45:31 × desperek_ quits (~draco@87-206-9-185.dynamic.chello.pl) (Quit: mew wew)
17:48:32 × stree quits (~stree@68.36.8.116) (Ping timeout: 240 seconds)
17:49:39 × hexfive quits (~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
17:49:50 <monochrom> Why stop there? Learn from xmonad. A cabal file ought to be a haskell file.
17:50:05 × electricityZZZZ quits (~electrici@135-180-3-82.static.sonic.net) (Read error: Connection reset by peer)
17:50:08 <hpc> and we'll name it... Setup.hs
17:50:32 <geekosaur> please don't learn from xmobar where it only looks like a haskell file…
17:51:39 <monochrom> :)
17:52:02 <Uniaika> :D
17:52:03 <maerwald> purists only use Makefiles
17:52:22 <Uniaika> and that is why they lose their mind
17:53:01 <hpc> the purest purists use Makefiles in every subdirectory too
17:53:28 <maerwald> Uniaika: you basically said FreeBSD users are insane :p
17:54:00 <Uniaika> maerwald: 1) I use FreeBSD 2) I have gone to a mental hospital in the past
17:54:33 <Uniaika> is there are a causal relationship between the two? maybe not, but the correlation is strong :-P
17:56:13 <maerwald> I think the question is: does FreeBSD make you insane or do you need to be insane to use it?
17:56:47 <maerwald> so causality no question, but in what direction
17:57:04 <hpc> maybe it's if and only if, like https://arxiv.org/pdf/1002.2284.pdf
17:57:47 <__minoru__shirae> how do people use something other than ubuntu, almost all installation instructions cover ubuntu
17:57:48 <maerwald> that's a weird paper
17:58:29 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
17:59:33 <hpc> it's one of my favorites
18:00:16 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
18:01:21 × sagax quits (~sagax_nb@213.138.71.146) (Quit: Konversation terminated!)
18:01:37 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
18:02:10 stree joins (~stree@68.36.8.116)
18:02:11 <maerwald> Uniaika: https://www.unixsheikh.com/articles/why-you-should-migrate-everything-from-linux-to-bsd.html uh-oh
18:03:16 <Uniaika> maerwald: well, if this random dude says so, gotta do it!
18:03:22 <maerwald> exactly
18:07:48 Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362)
18:07:55 thblt joins (~thblt@unaffiliated/thblt)
18:08:35 <maerwald> this post is gold
18:09:00 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 268 seconds)
18:09:16 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
18:10:33 ddellacosta joins (~ddellacos@86.106.143.73)
18:10:57 Lord_of_Life_ is now known as Lord_of_Life
18:11:09 <nut> I'm using emacs to load a Haskell file without any cabal or stack project. How can I load a third party library such as lens
18:11:57 <gnumonic> anyone know a good book or resource or whatever on dependently typed programming? i've been studying singletons for a week or so and i get how the library works but i'd really like some examples more involved than the basic vector stuff
18:12:02 <nut> I can use the repl without problem
18:12:04 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
18:12:13 <nut> Just can't load any other libs such as lens
18:13:44 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
18:14:48 <Uniaika> nut: either you compile it with stack's option '--package lens'
18:14:55 <Uniaika> or you create a cabal or stack project
18:15:04 knupfer joins (~Thunderbi@200116b82be79e0055f724416be108a9.dip.versatel-1u1.de)
18:15:26 <nut> ok, so have to be inside a cabal project(I'm not using stack)
18:15:37 <Uniaika> yes, you should
18:15:46 <maerwald> I don't know anything about emacs, but in cabal you can do: cabal repl --build-depends lens
18:15:48 <ski> actual dependent types, or approximating some usages of them, via singleons, GADTs ?
18:16:25 <Uniaika> gnumonic: you *do* realise that Haskell is *not* a dependently-typed language?
18:16:39 <maerwald> gnumonic: the f* tutorial
18:16:52 × tlaxkit quits (~konversat@185.228.155.197) (Quit: Konversation terminated!)
18:16:54 <maerwald> gnumonic: https://www.fstar-lang.org/tutorial/
18:17:13 <geekosaur> hasochism :)
18:17:30 <Uniaika> hehehe
18:17:47 <gnumonic> Er, yeah, I know there are things you can't do in Haskell and that it's not dependently typed but it's kind of frustrating trying to figure out how to fake something with singletons when I have a somewhat poor understanding of the thing I'm trying to fake :p
18:18:11 <tapas> Uniaika: i'm pushing to get a BNF specified for the next or succ next major release so people can write these tools as they please.
18:19:00 <tapas> i don't care if someone wants to write dhall to specify a build. That's fine. As long as the build tool knows how to normalize it and turn it into somthing that works.
18:19:10 <gnumonic> Oh that fstar tutorial looks very good, thank you.
18:19:34 <maerwald> The language is also superior to haskell in term of verification features
18:21:05 × xff0x quits (~xff0x@2001:1a81:5378:d500:70a3:57b2:577c:e365) (Quit: xff0x)
18:22:13 × dyeplexer quits (~lol@unaffiliated/terpin) (Remote host closed the connection)
18:23:19 <zzz> does anyone know what this means? https://paste.jrvieira.com/1619374859564
18:25:07 <maerwald> WSL?
18:25:07 <geekosaur> I'm getting a cert error from that url
18:25:30 unclechu joins (unclechuma@gateway/shell/matrix.org/x-jmbbnkztqlxjmyvi)
18:25:49 <zzz> no wsl
18:26:05 <zzz> this is not the first time this happens and i fogot what i did last time
18:26:41 <zzz> geekosaur: what's the error? looks fine to me
18:27:12 <gnumonic> also, though maybe this is a dumb question, in what sense is e.g. the Sigma type in singletons an approximation of a dependent pair in "real" dependently typed language? The ergonomics are pretty bad but it's a real dependent pair, isn't it?
18:27:16 philderbeast joins (~textual@bras-base-vldvpq5901w-grc-06-184-144-244-252.dsl.bell.ca)
18:28:08 ADG1089 joins (~aditya@171.76.29.233)
18:29:10 <monochrom> fdTryLock? Is that 32-bit GHC?
18:29:13 coot joins (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl)
18:29:22 <zzz> monochrom: yes it is
18:29:56 <zzz> ghc 8.10.4
18:30:27 <zzz> linux 32bit
18:30:41 <monochrom> Actually I forgot whether it's GHC or cabal-install, but definitely either one's 32-bit linux build.
18:30:44 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
18:31:33 <ski> @where SF
18:31:33 <lambdabot> "Software Foundations" by Pierce,Casinghino,Greenberg,Sjöberg,Yorgey in 2011-06 at <http://www.cis.upenn.edu/~bcpierce/sf/> about "the mathematical theory of programming and programming languages",
18:31:34 <lambdabot> "It develops basic concepts of functional programming, logic, operational semantics, lambda-calculus, and static type systems, using the Coq proof assistant."
18:31:36 <ski> @where CPDT
18:31:36 <lambdabot> "Certified Programming with Dependent Types" by Adam Chlipala (aka Smerdyakov) (in progress) at <http://adam.chlipala.net/cpdt/>, "about practical engineering with the Coq proof assistant"
18:31:36 <monochrom> Ah, cabal-install, https://github.com/haskell/cabal/issues/7313
18:31:45 <ski> iirc, there's also one called "Coq'Art" ?
18:31:50 <ski> gnumonic ^
18:32:41 <monochrom> If you can downgrade to 3.2.0.0, that works beautifully.
18:32:56 <unclechu> hey, why if i define my own version of `$` exactly the same way as it’s defined in `base` library rankntypes get broken?
18:33:23 <unclechu> i get these: “Expected type: (SFoo α0 -> p0) -> String” “Actual type: (forall (β :: Foo). Singleton β -> String) -> String”
18:33:41 <monochrom> If not, do your own build of 3.4.0.0 but add a flag like the link says near the end.
18:33:43 <unclechu> it works perfectly fine if i use `$`
18:33:44 <zzz> monochrom: thanks. i think that's what i had done, but must have forgotten and upgraded again thanks to ghcup suggesting me. trying it now
18:33:55 <monochrom> :)
18:34:01 <maerwald> is that a known bug?
18:34:03 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
18:34:03 <monochrom> Yeah I think deja vu too.
18:34:05 <monochrom> Yes.
18:34:08 <monochrom> See the link.
18:34:08 <ski> unclechu : compiler magic
18:34:24 <unclechu> ski: do you know something about it?
18:34:35 <ski> special-casing of `$' in GHC
18:34:38 <maerwald> ok, I'll just build an unofficial bindist then
18:35:17 <ski> treating `... $ ...' as `(...) (...)', to avoid impredicativity problems
18:36:07 <unclechu> ski: i assume there is now way to make it handle my custom operator the same way without changing the compiler itself?
18:36:44 <gnumonic> ski: thanks for the links. i read through some of the upenn stuff a while ago for help with the STLC but had forgotten about it
18:37:06 <unclechu> ski: how about `(Data.Function.&)`?
18:37:26 kuribas joins (~user@ptr-25vy0i72aubpu4xq2xw.18120a2.ip6.access.telenet.be)
18:37:43 × geowiesnot quits (~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 252 seconds)
18:37:50 × DTZUZU quits (~DTZUZO@205.ip-149-56-132.net) (Read error: Connection reset by peer)
18:38:01 <unclechu> ski: i can see that `&` is also have the same problem.
18:39:46 <zva> hey I'm using WSL and neovim and would like to have a developmentenvironment that proposes functions via a hotkey like eclipse for java. I found multiple complicated approaches googling and I wonder if there is an easy way out or something that you use?
18:40:04 <zva> *template proposals in neovim
18:40:21 × hendursa1 quits (~weechat@gateway/tor-sasl/hendursaga) (Ping timeout: 240 seconds)
18:41:29 horatiohb joins (~horatiohb@159.89.43.106)
18:41:42 DTZUZU joins (~DTZUZO@205.ip-149-56-132.net)
18:41:53 <ski> unclechu : afaik, no
18:42:05 <unclechu> okay, thanks for the info
18:43:28 × pjb quits (~pjb@2a01cb04063ec500ad42b45c394adc0f.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
18:44:22 <maerwald> zva: the only option is HLS, which is a LSP server
18:44:39 <maerwald> neovim has an LSP client embedded I think
18:44:44 <geekosaur> zzz, it's saying the cert authority isn't trusted. ubuntu 13.04, which I'd expect to support all the cert authorities
18:44:46 <maerwald> otherwise there are enough options
18:44:58 <geekosaur> as usual the detail gets hidden by chrome
18:45:28 <zva> you mean as in enough options that are not neovim?
18:45:31 <monochrom> Isn't ubuntu 13.04 too old and un-updated?
18:45:42 <geekosaur> sorry 18.04
18:45:45 <geekosaur> I typoed
18:46:01 <geekosaur> should be latest, I installed this machine only a month or so ago
18:46:18 <geekosaur> wow, I misread /etc/lsb-release. 20.04
18:46:26 <hpc> yeah, i was going to say ubuntu is year.month
18:47:16 xff0x joins (~xff0x@2001:1a81:5378:d500:c8e4:3d2e:19af:2ab8)
18:47:56 <__minoru__shirae> they're going to have to change the naming policy after the year 3000
18:48:57 <Uniaika> tapas: <3
18:50:41 × mozzarella quits (~sam@unaffiliated/sam113101) (Ping timeout: 240 seconds)
18:50:54 <zzz> geekosaur: i'm using let's encrypt
18:51:01 <zzz> hum...
18:51:14 × fox[m]1 quits (foxforestf@gateway/shell/matrix.org/x-ktrnqcmqwewsriyn) (Ping timeout: 245 seconds)
18:51:14 × slycelote[m] quits (slycelotem@gateway/shell/matrix.org/x-qxwtofvhhmvbqmln) (Ping timeout: 245 seconds)
18:51:14 × pqwy[m] quits (pqwymatrix@gateway/shell/matrix.org/x-oheqkealrnytrlhs) (Ping timeout: 245 seconds)
18:51:14 × alexfmpe quits (alexfmpema@gateway/shell/matrix.org/x-trjxzqvsyvzjueef) (Ping timeout: 245 seconds)
18:51:15 × CrabMan quits (phi-matrix@gateway/shell/matrix.org/x-ivwszzyccqpifjnv) (Ping timeout: 245 seconds)
18:51:15 × psydruid[m] quits (psydruidma@gateway/shell/matrix.org/x-ijjtojxooyvwelme) (Ping timeout: 245 seconds)
18:51:33 fox[m]1 joins (foxforestf@gateway/shell/matrix.org/x-zftkphzstualrnft)
18:52:44 slycelote[m] joins (slycelotem@gateway/shell/matrix.org/x-jwwdnktlxoqqmejb)
18:52:44 pqwy[m] joins (pqwymatrix@gateway/shell/matrix.org/x-veqquvhdxxabijbc)
18:52:54 × Guest14320 quits (bitonicmat@gateway/shell/matrix.org/x-ahzjoopovnugnfrk) (Ping timeout: 245 seconds)
18:52:56 CrabMan joins (phi-matrix@gateway/shell/matrix.org/x-lcpxgjtgvabxggfm)
18:53:13 <monochrom> But I didn't get an invalid-cert error.
18:53:49 <monochrom> To be fair, I added a cert I created for myself.
18:53:55 <zva> maerwald: you mean as in enough options that are not neovim? ty I think I'll use vsc.
18:54:11 <maerwald> zva: no, I mean alternative LSP clients
18:54:23 <maerwald> coc.nvim, LanguageClient-neovim and others
18:54:46 alexfmpe joins (alexfmpema@gateway/shell/matrix.org/x-gtmdhmuxxyypwmhc)
18:55:39 <zva> maerwald: ok ty
18:56:05 psydruid[m] joins (psydruidma@gateway/shell/matrix.org/x-mrkfgejepoksviny)
18:58:12 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Read error: Connection reset by peer)
18:58:14 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
18:58:47 Guest14320 joins (bitonicmat@gateway/shell/matrix.org/x-ecvwsnanzejbrweo)
19:00:50 mozzarella joins (~sam@unaffiliated/sam113101)
19:00:51 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds)
19:01:30 Lord_of_Life joins (~Lord@unaffiliated/lord-of-life/x-0885362)
19:01:47 geowiesnot joins (~user@87-89-181-157.abo.bbox.fr)
19:02:17 petrus joins (~petrus@unaffiliated/petrus)
19:03:45 × kuribas quits (~user@ptr-25vy0i72aubpu4xq2xw.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
19:08:09 × malumore quits (~malumore@151.62.115.131) (Ping timeout: 252 seconds)
19:08:29 <petrus> Suddenly I cannot run cabal repl in any of my project directories, it always dies with this mysterious error message: libHSwatchdog-0.1.0.0-inplace-ghc8.10.4.so: cannot open shared object file
19:09:49 × geowiesnot quits (~user@87-89-181-157.abo.bbox.fr) (Ping timeout: 252 seconds)
19:11:29 <petrus> Now watchdog is one of my projects and this "missing" file is somewhere deep inside of dist-newstyle/
19:12:26 <petrus> in this project everything works fine, but the repl
19:13:02 mjlbach is now known as aterius
19:13:07 <petrus> however in any other project's directory cabal repl fails with the same error message
19:13:11 aterius is now known as mjblach
19:13:14 mjblach is now known as mjlbach
19:14:00 <sclv> check if you have a ghc env file
19:14:19 <petrus> sclv: where?
19:14:57 <maerwald> zzz: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.4.0.0/cabal-install-3.4.0.0-i386-unknown-linux.tar.xz
19:15:01 <maerwald> can you try that one?
19:15:24 <sclv> petrus: see the package env section here https://ghc.gitlab.haskell.org/ghc/doc/users_guide/packages.html
19:17:28 cfricke joins (~cfricke@unaffiliated/cfricke)
19:19:40 × xkapastel quits (uid17782@gateway/web/irccloud.com/x-ffvsvgtndmjolwtr) (Quit: Connection closed for inactivity)
19:20:17 <petrus> sclv: that doesn't really help. where these env files can be I cannot find any
19:20:59 <petrus> and why other projects know about this particular project's lib
19:21:24 <petrus> which actually do exist, but cannot be found
19:21:48 <petrus> mot even by its own project
19:21:55 <sclv> i suspect it would be in the ghc homedir
19:22:14 <sclv> you might have it if you ever cabal installed your project
19:22:22 <petrus> sclv: I use, ghcup
19:23:00 <petrus> what is the format of this env file's name? so I can search for it
19:23:25 <petrus> actually, i never installed this project
19:23:29 <sclv> its in ~/.ghc/your-ghc-arch/environments
19:24:10 <petrus> sclv: I do not have such directory
19:24:30 <sclv> no ~/.ghc at all?
19:25:18 <petrus> of course I have .ghc, i don;t have ~/.ghc/your-ghc-arch/environments
19:25:36 <sclv> its not literally your ghc arch
19:25:48 <sclv> Substitute in the ghc you’re using
19:26:07 <sclv> but if its not there, might not be the problem
19:26:27 <sclv> if raw ghci causes the problem then its likely at issue tho
19:26:33 <petrus> I did not take it literally
19:26:47 <sclv> you can also try from your homedir
19:27:00 <petrus> try what?
19:27:07 <petrus> ghci?
19:27:16 <sclv> Ya
19:27:30 <sclv> Ghc will search any superdir for an env file
19:27:32 <petrus> if I am outside of any project, the cabal repl works with fake
19:27:47 <petrus> project or whatever
19:28:24 <sclv> ok and if you try a fresh project in a fresh dir directly off your home dir?
19:29:15 <petrus> I already did that, it fails the same way, complaining about the same lib!
19:29:35 <sclv> the autodiscovered ones are prefixed .ghc.environment fwiw
19:29:46 × Thom2503 quits (~Thom2503@49-135-166-62.ftth.glasoperator.nl) (Quit: Leaving)
19:29:51 <sclv> if its not an env file i have no other guesses, sorry...
19:30:01 Guest91421 joins (~zmv@unaffiliated/zmv)
19:30:18 <int-e> is there any reference to the watchdog project in the environment variables?
19:30:19 <petrus> just figured myself too
19:30:29 × Guest6509 quits (~laudiacay@67.176.215.84) (Ping timeout: 246 seconds)
19:30:33 <petrus> int-e:no
19:31:29 minoru_shiraeesh joins (~shiraeesh@109.166.59.190)
19:31:52 × __minoru__shirae quits (~shiraeesh@77.94.25.177) (Ping timeout: 240 seconds)
19:32:26 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
19:32:44 <petrus> I have just searched ~/.cabal, .ghc, .ghcup, .local, .cache
19:33:30 <sclv> petrus: does the problem occur with ghcup or just cabal?
19:33:33 <petrus> found no .ghc.environment.x86_64-linux-8.10.4 file
19:33:42 <sclv> there may also be a cabal project file in a superdir confusing things...
19:34:09 <int-e> mysterious. maybe something like strace -eopenat -f cabal repl to figure out which interesting files are opened?
19:34:23 <petrus> the brand new test project was in my home dir top
19:34:53 <int-e> (not for the faint of heart, strace tends to be very noisy)
19:34:54 <petrus> so there is no super dir
19:35:24 <petrus> int-e: hmm I an gonna try
19:36:31 <petrus> one more thing I mirrored my whole home dir but .cache on another machine, now I get the same problem there too
19:36:57 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 260 seconds)
19:37:30 <zzz> maerwald: what is that exactly?
19:37:59 <maerwald> zzz: a static cabal-install 32 bit binary that shouldn't have that fdlock error
19:38:08 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
19:38:12 <maerwald> 3.4.0.0
19:38:17 × juuandyy quits (~juuandyy@90.106.228.121) (Quit: Konversation terminated!)
19:39:10 <maerwald> it's gpg signed and contains plan.json if you're paranoid...
19:42:49 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds)
19:43:07 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
19:44:05 <petrus> int-e: cabel repl searching for this one particular file everywhere! /etc/ /usr/lib, .ghcup .cabal/store
19:44:09 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
19:44:42 × fiedlr_ quits (~fiedlr@83.148.33.254) (Remote host closed the connection)
19:44:43 × cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 250 seconds)
19:45:26 <petrus> but I can't see where it gets the idea to search for this file at the first place
19:45:26 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
19:46:19 <petrus> I feel like banging my head to a brick wall :-(
19:46:29 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
19:46:55 <maerwald> that's usually more satisfying than debugging cabal
19:47:04 Enrico63 joins (520efe97@cpc92708-cmbg20-2-0-cust150.5-4.cable.virginm.net)
19:47:48 <sclv> does ghci search for the file, or just cabal repl?
19:47:55 <sclv> also have you tried running repl with high verbosity?
19:50:17 × sclv quits (sid39734@gateway/web/irccloud.com/x-wtovbcwumwbvxdup) (Changing host)
19:50:17 sclv joins (sid39734@haskell/developer/sclv)
19:50:49 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
19:50:49 <petrus> sclv: no. what is the flag for high verbosity?
19:51:12 <sclv> `cabal repl -v3`
19:51:29 <petrus> no -> I mean only cabal repl
19:53:30 × ddellacosta quits (~ddellacos@86.106.143.73) (Remote host closed the connection)
19:54:22 <petrus> sclv: okay, I got this verbose output it's as noisy as strace, what should I look for
19:54:41 <petrus> the file name shows up only once just before crash
19:55:15 <sclv> ok well look for anything that would indicate why its trying to load the file?
19:55:21 <sclv> maybe paste it?
19:55:50 <sclv> you can also try v1 or v2 to get less verbose output that may still help
19:56:14 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
19:56:27 <maerwald> zzz: can you confirm?
19:58:00 <petrus> actually ghci what fails finding the damn file, but cabal somehow asks it to open it.
19:58:31 <petrus> I can't paste that, dumps the whole environment
19:59:45 <petrus> by the way I am talking about the top level test project, cannot be interference but there is!
19:59:52 Lord_of_Life_ joins (~Lord@unaffiliated/lord-of-life/x-0885362)
19:59:56 × gnumonic quits (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net) (Quit: Leaving)
20:00:24 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
20:00:32 × dastomaten quits (~dastomate@0543f40b.skybroadband.com) (Ping timeout: 240 seconds)
20:00:33 <petrus> I have already ran a few "sudo ldconfig", since strace shows it is consulted several times
20:01:10 <sclv> i mean use a pastebin, not into like irc directly
20:02:26 <int-e> petrus: the thing to look for in the case of strace would be configuration files (like the ghc environment files)... it's difficult to say, probably easier to come up with files that can be safely excluded (like .so files)... in the case of -v3 it's similar, but you're at the mercy of the program to print the information.
20:02:47 × Lord_of_Life quits (~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 252 seconds)
20:02:57 Lord_of_Life_ is now known as Lord_of_Life
20:03:02 <petrus> sclv: what's the difference?
20:03:59 × _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
20:04:18 <petrus> is it possible the the name of my project "watchdog" is in collision with something in ghc system
20:04:46 <petrus> just a desperate idea
20:05:33 × Sheilong quits (uid293653@gateway/web/irccloud.com/x-dlsyikshxdkdktlg) ()
20:05:41 <monochrom> No.
20:05:57 <int-e> nah. really, no. 1) there is no such thing in ghc. 2) the file name looks too much like one generated by cabal
20:06:35 <int-e> (the -inplace- part in particular; an installed ghc would not have that)
20:06:44 <petrus> int-e: the whole strace show no environment file opened until the very end
20:06:49 <monochrom> I disbelieve the ghc-env-file theory. My understanding of cabal repl is that cabal repl ignores it.
20:07:16 <int-e> petrus: good, that pretty much confirms what monochrom just wrote
20:08:03 <petrus> once again, repl fails in watchdog project dir too, however the file is there, in this case
20:08:45 × jb55 quits (~jb55@gateway/tor-sasl/jb55) (Ping timeout: 240 seconds)
20:09:05 <petrus> here it is: ./dist-newstyle/build/x86_64-linux/ghc-8.10.4/watchdog-0.1.0.0/build/libHSwatchdog-0.1.0.0-inplace-ghc8.10.4.so
20:09:29 <sclv> petrus: so there _is_ an env file opened at the end?
20:10:11 <maerwald> http://hackage.haskell.org/package/watchdog
20:10:28 × stree quits (~stree@68.36.8.116) (Ping timeout: 265 seconds)
20:10:33 <petrus> sclv: no
20:10:52 <maerwald> note that the hackage one has a higher version
20:11:01 <sclv> "the whole strace show no environment file opened until the very end" ?
20:11:30 <int-e> sclv: english is a difficult and ambiguous language
20:11:32 <monochrom> This is why temporal logics define two "until" operators. >:)
20:11:48 <sclv> not for me it isn't. english is clear and unambiguous to me.
20:11:49 acidjnk_new joins (~acidjnk@p200300d0c72b9563253a50075d84e1af.dip0.t-ipconnect.de)
20:11:58 <sclv> but i'm different
20:12:02 <petrus> until bu the very end - but no, not at all
20:12:12 <sclv> ok, thanks for clearing that up :-)
20:12:23 <int-e> sclv: evidently not, since you read the sentence in an admittetly natural, but unintended way :P
20:12:28 <int-e> *admittedly
20:12:43 jb55 joins (~jb55@gateway/tor-sasl/jb55)
20:13:59 <petrus> does hls cache stuff somewhere?
20:14:29 <int-e> Ugh, how is hls involved?
20:14:43 <petrus> in my neovim editor
20:16:02 <int-e> (I thought you were running cabal repl from the shell. So that should make both the editor and hls irrelevant. I'd hope.)
20:16:59 × knupfer quits (~Thunderbi@200116b82be79e0055f724416be108a9.dip.versatel-1u1.de) (Remote host closed the connection)
20:17:05 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds)
20:17:09 knupfer joins (~Thunderbi@200116b82be79e00f8104d127665e968.dip.versatel-1u1.de)
20:17:58 <petrus> int-e: correct I run repl from the shell. however hls/editor/... (may) create loaded modules cche
20:18:11 <maerwald> ~/.cache/hie-bios/
20:18:30 <petrus> I have found something .cache/ghc and already wiped it
20:18:46 <petrus> maerwald: yes!
20:20:14 fiedlr joins (~fiedlr@83.148.33.254)
20:20:18 nineonine joins (~nineonine@2604:3d08:7785:9600:d9d9:f067:f388:4d71)
20:20:28 <int-e> So haskell-ide-engine? and how does that get picked up? through an environment variable or something else?
20:20:29 <petrus> maerwald: wiped it, problem persists.
20:20:59 <petrus> int-e: no, I think just the location
20:21:43 <int-e> cabal doesn't know about that location without being told I'd think.
20:21:52 <int-e> But it didn't help so never mind.
20:22:29 × knupfer quits (~Thunderbi@200116b82be79e00f8104d127665e968.dip.versatel-1u1.de) (Ping timeout: 245 seconds)
20:22:34 × maralorn quits (maralornma@gateway/shell/matrix.org/x-fpczaqijffcnrkpc) (Quit: issued !quit command)
20:22:35 letmein joins (~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1)
20:23:12 <petrus> int-e: I don't really have any specific cabal, ghc etc env vars
20:23:22 <int-e> . o O ( env | grep GHC\\\|CABAL )
20:23:32 stree joins (~stree@68.36.8.116)
20:23:40 usr25 joins (~usr25@unaffiliated/usr25)
20:23:52 <petrus> already did
20:25:16 × fiedlr quits (~fiedlr@83.148.33.254) (Ping timeout: 268 seconds)
20:25:27 × nineonine quits (~nineonine@2604:3d08:7785:9600:d9d9:f067:f388:4d71) (Ping timeout: 250 seconds)
20:27:13 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
20:29:22 <petrus> I am considering wiping the whole .ghc,.cabal,.ghcup but worried about two things 1) this lib name cached somewhere else 2) it could take ages to recompile my projects and fill up the cabal/store again
20:29:54 × ADG1089 quits (~aditya@171.76.29.233) (Quit: Konversation terminated!)
20:30:14 <maerwald> why delete? mv
20:30:55 <int-e> mirror (you did that already, didn't you?) then delete
20:31:07 int-e shrugs
20:31:29 <petrus> maerwald: ld caching uses file id-s I think not names
20:31:39 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 245 seconds)
20:32:44 <petrus> also, to test I still need to recreate my whole env
20:33:07 pavonia joins (~user@unaffiliated/siracusa)
20:33:10 <zzz> maerwald: how do i install that?
20:33:57 <maerwald> zzz: ghcup install cabal -u https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.4.0.0/cabal-install-3.4.0.0-i386-unknown-linux.tar.xz 3.4.0.0
20:35:04 gnumonic joins (~gnumonic@c-73-170-91-210.hsd1.ca.comcast.net)
20:38:22 × alx741 quits (~alx741@181.196.69.117) (Ping timeout: 252 seconds)
20:38:50 × hpc quits (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 268 seconds)
20:39:46 Pickchea joins (~private@unaffiliated/pickchea)
20:40:13 hpc joins (~juzz@ip98-169-35-13.dc.dc.cox.net)
20:42:45 <zzz> maerwald: that seems to solve it. thanks!
20:42:53 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
20:44:43 pjb joins (~pjb@2a01cb04063ec50065c90891fe55ba7a.ipv6.abo.wanadoo.fr)
20:44:59 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
20:45:00 maralorn joins (maralornma@gateway/shell/matrix.org/x-taapglyfnhcaxlmi)
20:45:14 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
20:50:24 royal_screwup21 joins (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
20:52:53 alx741 joins (~alx741@181.196.69.35)
20:56:45 plast1k_ joins (~plast1k_@41.186.25.253)
20:57:25 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
21:00:02 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
21:02:39 nut joins (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr)
21:02:49 × minoru_shiraeesh quits (~shiraeesh@109.166.59.190) (Ping timeout: 260 seconds)
21:03:06 × Varis quits (~Tadas@unaffiliated/varis) (Remote host closed the connection)
21:04:46 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
21:05:04 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:08:27 <gnumonic> i don't suppose there's any way to have a typelevel $? singletons has one for the (k ~> k) defunctionalizations but it'd be so nice to not have so many parens in signatures
21:09:34 × plast1k_ quits (~plast1k_@41.186.25.253) (Quit: Leaving)
21:10:27 <ski> i'd consider that a specious reason for wanting it ..
21:13:18 × wonko7 quits (~wonko7@62.115.229.50) (Ping timeout: 265 seconds)
21:13:59 supercoven_ joins (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi)
21:14:00 × supercoven_ quits (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi) (Max SendQ exceeded)
21:14:33 supercoven_ joins (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi)
21:15:18 × sajith quits (~sajith@fsf/member/nonzen) (Ping timeout: 240 seconds)
21:16:09 × jackhill quits (~jackhill@marsh.hcoop.net) (Ping timeout: 250 seconds)
21:16:19 × zva quits (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
21:16:46 × supercoven quits (~Supercove@dsl-hkibng31-58c384-213.dhcp.inet.fi) (Ping timeout: 240 seconds)
21:16:52 jackhill joins (~jackhill@marsh.hcoop.net)
21:17:19 aenesidemus joins (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net)
21:18:52 × elfets quits (~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de) (Ping timeout: 240 seconds)
21:19:17 × Feuermagier quits (~Feuermagi@2a02:2488:4211:3400:7285:c2ff:fe22:172e) (Remote host closed the connection)
21:20:23 × Enrico63 quits (520efe97@cpc92708-cmbg20-2-0-cust150.5-4.cable.virginm.net) (Ping timeout: 240 seconds)
21:20:31 × Alleria_ quits (~textual@mskresolve-a.mskcc.org) (Ping timeout: 252 seconds)
21:22:37 Feuermagier joins (~Feuermagi@213.178.26.41)
21:24:15 × aenesidemus quits (~aenesidem@c-73-53-247-25.hsd1.fl.comcast.net) (Quit: Leaving)
21:25:24 × coot quits (~coot@37.30.50.130.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
21:25:39 Aquazi joins (uid312403@gateway/web/irccloud.com/x-utxhkfigbhneuqmd)
21:30:22 ech joins (~user@gateway/tor-sasl/ech)
21:32:56 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
21:33:12 ddellaco_ joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
21:38:00 × LKoen quits (~LKoen@92.163.9.109.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.”)
21:38:19 <remexre> does (fromIntegral . toInteger :: Word8 -> Word16) get optimized to a zero-extend?
21:38:19 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
21:38:41 <remexre> and if not, are there primitives that do?
21:38:56 × ddellaco_ quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 246 seconds)
21:39:38 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
21:40:47 × styledash quits (~styledash@157.230.173.136) (Quit: The Lounge - https://thelounge.chat)
21:41:29 styledash joins (~styledash@157.230.173.136)
21:43:49 × frozenErebus quits (~frozenEre@37.231.244.249) (Ping timeout: 252 seconds)
21:44:14 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 265 seconds)
21:45:21 pthariensflame joins (~pthariens@2600:6c52:727f:4200:3064:6811:5d1e:8f2b)
21:46:16 <pavonia> remexre: Do you even need the fromInteger?
21:46:20 × ixian quits (~mgold@terra.bitplane.org) (Quit: leaving)
21:46:37 <remexre> oh, you're right, I don't need toInteger
21:46:54 <int-e> @src fromIntegral
21:46:55 <lambdabot> fromIntegral = fromInteger . toInteger
21:46:57 <pavonia> Erm *to, yes
21:47:11 <int-e> (a lie because of rewrite rules)
21:47:50 × Pickchea quits (~private@unaffiliated/pickchea) (Quit: Leaving)
21:49:12 × wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
21:49:30 × dsrt^ quits (dsrt@ip98-184-89-2.mc.at.cox.net) ()
21:49:40 <int-e> remexre: In the end, yes, it should be optimized to a zero-extend. Though it's not completely obvious even from the corresponding rewrite rule: https://gitlab.haskell.org/ghc/ghc/-/blob/master/libraries/base/GHC/Word.hs#L418
21:49:56 fiedlr joins (~fiedlr@83.148.33.254)
21:50:31 Alleria joins (~textual@2603-7000-3040-0000-116a-d416-07d6-69e7.res6.spectrum.com)
21:50:46 <remexre> okay, thanks!
21:50:54 Alleria is now known as Guest14500
21:51:18 ixian joins (~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269)
21:53:07 × pthariensflame quits (~pthariens@2600:6c52:727f:4200:3064:6811:5d1e:8f2b) ()
21:53:54 × fendor quits (~fendor@178.115.128.12.wireless.dyn.drei.com) (Ping timeout: 265 seconds)
21:57:00 × danso quits (~dan@23-233-111-52.cpe.pppoe.ca) (Quit: WeeChat 3.0)
21:58:36 wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
21:59:15 × danvet quits (~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 260 seconds)
21:59:35 nehsou^ joins (nehsou@ip98-184-89-2.mc.at.cox.net)
22:03:06 × pavonia quits (~user@unaffiliated/siracusa) (Read error: Connection reset by peer)
22:05:21 edrx parts (~Eduardo@2804:56c:d2c0:6300:d28a:a35a:c563:afab) ("Killed buffer")
22:05:26 × letmein quits (~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1) (Quit: letmein)
22:05:57 tempate joins (~tempate@unaffiliated/tempate)
22:06:03 letmein joins (~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1)
22:06:40 pavonia joins (~user@unaffiliated/siracusa)
22:07:31 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
22:07:37 × letmein quits (~letmein@2601:1c1:4200:938f:f8bf:6a67:4eed:b2c1) (Client Quit)
22:07:38 × heatsink quits (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
22:07:44 <tempate> Why do I keep getting "Could not find module ‘Prelude'" ?
22:07:54 <tempate> Have I missed an installation step?
22:08:41 × petrus quits (~petrus@unaffiliated/petrus) (Quit: WeeChat 3.1)
22:09:30 <tempate> oh, it's now working with "ghc -dynamic main.hs"
22:10:35 <hpc> are you on arch?
22:10:40 × HannaM quits (~quassel@p54849510.dip0.t-ipconnect.de) (Quit: https://www.oglaf.com/archive/)
22:12:25 × machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 252 seconds)
22:13:43 × xff0x quits (~xff0x@2001:1a81:5378:d500:c8e4:3d2e:19af:2ab8) (Ping timeout: 260 seconds)
22:14:01 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
22:14:29 xff0x joins (~xff0x@2001:1a81:5378:d500:f8a9:96f2:2a8b:a80a)
22:15:27 × __monty__ quits (~toonn@unaffiliated/toonn) (Quit: leaving)
22:16:03 × royal_screwup21 quits (52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
22:18:51 × Guest36168 quits (~alexander@2a02:587:dc0a:2700:dc6:16ac:a95:eabf) (Ping timeout: 260 seconds)
22:19:21 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 268 seconds)
22:25:51 × dmytrish quits (~mitra@2a02:8084:a82:d900:6010:2869:d10:372c) (Ping timeout: 260 seconds)
22:26:10 × perrier-jouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.1)
22:26:13 <Cale> tempate: If you *are* on Arch, I would generally recommend avoiding its packages for anything Haskell-related. The maintainers of the haskell packages in Arch made some really poor decisions and removed all the statically linked libraries from GHC, which breaks all kinds of stuff.
22:28:31 <tempate> Cale: I am on Arch. What would you recommend instead?
22:28:49 <yushyin> ghcup works fine
22:29:08 <Cale> Yeah, ghcup is probably a good way to start
22:29:26 <yushyin> https://gitlab.haskell.org/haskell/ghcup-hs/
22:31:26 × stree quits (~stree@68.36.8.116) (Ping timeout: 246 seconds)
22:34:33 heatsink joins (~heatsink@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
22:37:49 × tabemann quits (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Remote host closed the connection)
22:39:26 × Tops2 quits (~Tobias@dyndsl-095-033-093-085.ewe-ip-backbone.de) (Read error: Connection reset by peer)
22:41:11 × merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
22:44:56 stree joins (~stree@68.36.8.116)
22:46:03 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
22:50:21 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 252 seconds)
22:51:54 × fiedlr quits (~fiedlr@83.148.33.254) (Remote host closed the connection)
22:57:46 × nut quits (~gtk@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 240 seconds)
23:00:08 ddellacosta joins (~ddellacos@ool-44c73afa.dyn.optonline.net)
23:00:53 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Remote host closed the connection)
23:04:41 × ddellacosta quits (~ddellacos@ool-44c73afa.dyn.optonline.net) (Ping timeout: 252 seconds)
23:05:46 × jonatan quits (~nate@h77-53-70-163.cust.a3fiber.se) (Quit: leaving)
23:09:18 × jgt quits (~jgt@78.162.43.217) (Ping timeout: 268 seconds)
23:10:55 tabemann joins (~travisb@172-13-49-137.lightspeed.milwwi.sbcglobal.net)
23:14:13 <int-e> . o O ( install ghc. use it to compile your own ghc from sources. uninstall ghc. )
23:16:55 × jpds quits (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
23:17:17 jpds joins (~jpds@gateway/tor-sasl/jpds)
23:17:19 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
23:18:19 × acidjnk_new quits (~acidjnk@p200300d0c72b9563253a50075d84e1af.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
23:19:20 machinedgod joins (~machinedg@24.105.81.50)
23:20:12 × Gurkenglas quits (~Gurkengla@unaffiliated/gurkenglas) (Ping timeout: 240 seconds)
23:21:39 × nineonine quits (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8) (Ping timeout: 245 seconds)
23:21:50 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
23:22:54 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection)
23:23:24 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
23:26:39 × ddellacosta quits (ddellacost@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 245 seconds)
23:26:46 fiedlr joins (~fiedlr@83.148.33.254)
23:27:35 Guest6509 joins (~laudiacay@45.162.228.190)
23:29:24 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
23:31:32 × fiedlr quits (~fiedlr@83.148.33.254) (Ping timeout: 240 seconds)
23:32:04 × Guest6509 quits (~laudiacay@45.162.228.190) (Ping timeout: 245 seconds)
23:33:44 × nicholasbulka quits (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c) (Ping timeout: 245 seconds)
23:39:36 sajith joins (~sajith@fsf/member/nonzen)
23:39:51 × m0rphism quits (~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 252 seconds)
23:48:51 × bennofs_ quits (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de) (Read error: Connection reset by peer)
23:49:18 bennofs_ joins (~quassel@dynamic-077-013-095-012.77.13.pool.telefonica.de)
23:54:30 nicholasbulka joins (~nicholasb@2601:900:4301:da0:58e6:3a0a:96a:ca2c)
23:54:35 × Deide quits (~Deide@217.155.19.23) (Quit: Seeee yaaaa)
23:55:25 nineonine joins (~nineonine@2604:3d08:7785:9600:bde3:c459:7b57:e4c8)
23:55:57 ddellacosta joins (ddellacost@gateway/vpn/mullvad/ddellacosta)
23:56:18 guest7682358928 joins (2de85c16@gateway/web/cgi-irc/kiwiirc.com/ip.45.232.92.22)

All times are in UTC on 2021-04-25.