2023/02/23

2023-02-23 00:00:09 +0100myxokeph(~myxokeph@65.28.251.121)
2023-02-23 00:01:17 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-02-23 00:02:22 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-02-23 00:03:48 +0100hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 255 seconds)
2023-02-23 00:06:29 +0100hugo(znc@verdigris.lysator.liu.se)
2023-02-23 00:10:02 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 00:10:05 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
2023-02-23 00:10:50 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2023-02-23 00:12:25 +0100dcoutts_(~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net) (Ping timeout: 246 seconds)
2023-02-23 00:16:26 +0100dcoutts_(~duncan@82.15.57.30)
2023-02-23 00:20:28 +0100hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds)
2023-02-23 00:25:37 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2023-02-23 00:26:32 +0100Guest89(~Guest89@5-157-196-109.itvmedia.pl)
2023-02-23 00:28:38 +0100thegeekinside(~thegeekin@189.180.66.126) (Read error: Connection reset by peer)
2023-02-23 00:30:13 +0100thegeekinside(~thegeekin@189.180.66.126)
2023-02-23 00:31:52 +0100hugo(znc@verdigris.lysator.liu.se)
2023-02-23 00:33:06 +0100cross(~cross@166.84.136.80)
2023-02-23 00:42:31 +0100thegeekinside(~thegeekin@189.180.66.126) (Ping timeout: 246 seconds)
2023-02-23 00:43:01 +0100Guest89(~Guest89@5-157-196-109.itvmedia.pl) ()
2023-02-23 00:46:37 +0100raehik(~raehik@82.21.176.157) (Ping timeout: 252 seconds)
2023-02-23 00:47:37 +0100k8yun(~k8yun@user/k8yun) (Quit: Leaving)
2023-02-23 00:49:10 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2023-02-23 00:54:20 +0100 <Square> What is a good Haskell online conference to attend this year?
2023-02-23 00:58:02 +0100 <monochrom> I don't actually know any Haskell conference other than Haskell Love.
2023-02-23 01:05:32 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.)
2023-02-23 01:06:02 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-02-23 01:06:03 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-02-23 01:06:03 +0100wroathe(~wroathe@user/wroathe)
2023-02-23 01:07:38 +0100img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-02-23 01:07:55 +0100img(~img@user/img)
2023-02-23 01:08:16 +0100 <geekosaur> zurihac?
2023-02-23 01:08:34 +0100 <geekosaur> oh, online
2023-02-23 01:10:23 +0100 <jackdk> I think a lot of meetups are still online, dunno about the conferences
2023-02-23 01:11:49 +0100bitmapper(uid464869@id-464869.lymington.irccloud.com) ()
2023-02-23 01:14:55 +0100mauke_(~mauke@user/mauke)
2023-02-23 01:16:07 +0100mauke(~mauke@user/mauke) (Ping timeout: 246 seconds)
2023-02-23 01:16:07 +0100mauke_mauke
2023-02-23 01:16:15 +0100cassaundra(~cassaundr@c-73-25-18-25.hsd1.or.comcast.net) (Ping timeout: 255 seconds)
2023-02-23 01:16:43 +0100cassaundra(~cassaundr@c-73-25-18-25.hsd1.or.comcast.net)
2023-02-23 01:17:12 +0100cassaundra(~cassaundr@c-73-25-18-25.hsd1.or.comcast.net) (Client Quit)
2023-02-23 01:23:04 +0100 <carter> so are TH [d| data decl |] quotes just really fragile about how they accept syntax or am i totally wrong?
2023-02-23 01:23:39 +0100JimL(~quassel@89.162.26.217) (Ping timeout: 252 seconds)
2023-02-23 01:23:52 +0100 <hellwolf[m]> who is also going to zurihac
2023-02-23 01:23:52 +0100 <geekosaur> I don't think they're supposed to be
2023-02-23 01:25:03 +0100 <geekosaur> zürich is very much out of the question for me, sadly
2023-02-23 01:25:45 +0100 <carter> i missed zurihac last year, though i was around the following week
2023-02-23 01:28:20 +0100JimL(~quassel@89-162-26-217.fiber.signal.no)
2023-02-23 01:30:49 +0100ozkutuk53(~ozkutuk@176.240.174.60) (Quit: The Lounge - https://thelounge.chat)
2023-02-23 01:34:35 +0100acidjnk(~acidjnk@p200300d6e715c435546b3c17a2b6e065.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2023-02-23 01:34:50 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in)
2023-02-23 01:34:50 +0100jwiegley(~jwiegley@2600:1700:cf00:db0:54a5:e5fd:6f88:147e) (Quit: ZNC - http://znc.in)
2023-02-23 01:41:39 +0100zeenk(~zeenk@2a02:2f04:a214:1e00::7fe) (Quit: Konversation terminated!)
2023-02-23 01:44:23 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-02-23 01:51:19 +0100 <carter> geekosaur: like , couldn't do [d| \n ... data Foo = \n .... \n |] without a parser failure
2023-02-23 01:52:26 +0100 <geekosaur> I'd report that
2023-02-23 02:01:14 +0100stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds)
2023-02-23 02:05:07 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 252 seconds)
2023-02-23 02:05:19 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2023-02-23 02:05:19 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2023-02-23 02:05:24 +0100allbery_bgeekosaur
2023-02-23 02:08:50 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-02-23 02:10:35 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-02-23 02:10:40 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2023-02-23 02:10:40 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2023-02-23 02:10:43 +0100allbery_bgeekosaur
2023-02-23 02:16:43 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-02-23 02:22:10 +0100captnemo(~captnemo@193.32.127.226) (Quit: WeeChat 3.8)
2023-02-23 02:30:22 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2023-02-23 02:40:56 +0100thegeekinside(~thegeekin@189.180.66.126)
2023-02-23 02:44:32 +0100werneta(~werneta@137.79.215.205) (Remote host closed the connection)
2023-02-23 02:51:04 +0100razetime(~Thunderbi@117.193.4.97)
2023-02-23 02:59:27 +0100 <maerwald[m]> hellwolf: me
2023-02-23 03:03:23 +0100 <ghostbuster> why does :t "hello" print String, but :t 1 prints Num a => a
2023-02-23 03:03:33 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net)
2023-02-23 03:04:03 +0100 <hpc> numeric literals are polymorphic
2023-02-23 03:04:04 +0100jwiegley(~jwiegley@2600:1700:cf00:db0:6165:340a:b206:7d04)
2023-02-23 03:04:09 +0100 <hpc> they can be any type that's "numbery"
2023-02-23 03:04:12 +0100 <hpc> > 1 :: Int
2023-02-23 03:04:14 +0100 <lambdabot> 1
2023-02-23 03:04:15 +0100 <hpc> > 1 :: Double
2023-02-23 03:04:17 +0100 <lambdabot> 1.0
2023-02-23 03:04:46 +0100 <hpc> "a :: x => y" means "a has type y, satisfying constraints x"
2023-02-23 03:04:46 +0100 <ghostbuster> :t 1.0 prints Fractional a => a
2023-02-23 03:04:47 +0100 <lambdabot> error: parse error on input ‘=>’
2023-02-23 03:05:07 +0100 <hpc> or in this case, 1 is of type a, as long as "instance Num a" exists
2023-02-23 03:05:10 +0100 <ghostbuster> hmm what is a constraint
2023-02-23 03:05:17 +0100 <hpc> @src Num
2023-02-23 03:05:18 +0100 <lambdabot> class Num a where
2023-02-23 03:05:18 +0100 <lambdabot> (+), (-), (*) :: a -> a -> a
2023-02-23 03:05:18 +0100 <lambdabot> negate, abs, signum :: a -> a
2023-02-23 03:05:18 +0100 <lambdabot> fromInteger :: Integer -> a
2023-02-23 03:05:24 +0100 <hpc> ^ is the definition of Num
2023-02-23 03:05:41 +0100 <hpc> an easier example is Eq
2023-02-23 03:05:45 +0100 <hpc> :t (==)
2023-02-23 03:05:45 +0100 <lambdabot> Eq a => a -> a -> Bool
2023-02-23 03:05:48 +0100 <hpc> @src Eq
2023-02-23 03:05:48 +0100 <lambdabot> class Eq a where
2023-02-23 03:05:48 +0100 <lambdabot> (==), (/=) :: a -> a -> Bool
2023-02-23 03:05:57 +0100 <hpc> @let data Example = Small | Big
2023-02-23 03:05:58 +0100 <lambdabot> Defined.
2023-02-23 03:06:31 +0100 <hpc> @let instance Eq Example where Small == Big = False; Big == Small = False; _ == _ = True
2023-02-23 03:06:32 +0100 <lambdabot> /sandbox/tmp/.L.hs:161:9: error:
2023-02-23 03:06:33 +0100 <lambdabot> Ambiguous occurrence ‘Small’
2023-02-23 03:06:33 +0100 <lambdabot> It could refer to
2023-02-23 03:06:38 +0100 <hpc> ugh
2023-02-23 03:06:40 +0100 <hpc> @undefine
2023-02-23 03:06:40 +0100 <lambdabot> Undefined.
2023-02-23 03:06:44 +0100 <hpc> @let data Example = Small' | Big'
2023-02-23 03:06:45 +0100 <lambdabot> Defined.
2023-02-23 03:06:54 +0100 <hpc> @let instance Eq Example where Small' == Big' = False; Big' == Small' = False; _ == _ = True
2023-02-23 03:06:55 +0100 <lambdabot> Defined.
2023-02-23 03:07:14 +0100 <ghostbuster> my local ghci says "(==) :: Eq a => a -> a -> Bool"
2023-02-23 03:07:27 +0100 <hpc> yep
2023-02-23 03:07:44 +0100 <hpc> so basically, if you have a type that's an instance of Eq, that's saying "you can compare values of this type for equality"
2023-02-23 03:07:47 +0100 <maerwald[m]> <geekosaur> "zürich is very much out of the..." <- Why?
2023-02-23 03:07:49 +0100 <hpc> and in the instance, you define how to do that
2023-02-23 03:07:49 +0100 <ghostbuster> so that operator has type bool
2023-02-23 03:07:54 +0100 <hpc> > Big' == Big'
2023-02-23 03:07:56 +0100 <lambdabot> True
2023-02-23 03:08:01 +0100 <hpc> > Small' /= Big'
2023-02-23 03:08:03 +0100 <lambdabot> True
2023-02-23 03:08:17 +0100 <hpc> Num is similar, with some magic built in that lets you write numeric literals
2023-02-23 03:08:27 +0100 <ghostbuster> so a type can be an instance of more than one operator
2023-02-23 03:08:31 +0100 <hpc> fromInteger defines how to turn a literal into your desired type
2023-02-23 03:08:56 +0100 <ghostbuster> eg. Num can be negated, or have its absolute value taken, therefore Num is an instance of each of those operators?
2023-02-23 03:09:18 +0100 <hpc> values of type Int can be negated or added or multiplied
2023-02-23 03:09:38 +0100 <ghostbuster> is Int some sort of subclass of Num then?
2023-02-23 03:09:39 +0100 <hpc> so you can write instance Num Int where definitions-of-all-those-operations
2023-02-23 03:09:45 +0100 <hpc> Int is just a type
2023-02-23 03:10:11 +0100 <ghostbuster> what is the relationship between Int and Num?
2023-02-23 03:10:33 +0100 <hpc> an "instance Num Int" exists with definitions for all those operators
2023-02-23 03:10:48 +0100 <hpc> but there's also "instance Eq Int" and such, because integers can be equal to each other
2023-02-23 03:11:01 +0100 <hpc> there's also "instance Num Double", because sometimes you want decimal numbers
2023-02-23 03:11:10 +0100 <hpc> > 5 == 6
2023-02-23 03:11:11 +0100 <lambdabot> False
2023-02-23 03:11:11 +0100 <ghostbuster> "instance Num Int" is a type?
2023-02-23 03:11:14 +0100 <hpc> > 5.0 + 1.5
2023-02-23 03:11:15 +0100 <lambdabot> 6.5
2023-02-23 03:11:24 +0100 <hpc> "instance Num Int" is just a thing you declare
2023-02-23 03:11:43 +0100 <hpc> (Num Int) itself is a Constraint, but that's kind-level stuff
2023-02-23 03:11:48 +0100 <hpc> :k Num
2023-02-23 03:11:49 +0100 <lambdabot> * -> Constraint
2023-02-23 03:11:51 +0100 <hpc> :k Int
2023-02-23 03:11:52 +0100 <lambdabot> *
2023-02-23 03:11:54 +0100 <hpc> :k []
2023-02-23 03:11:55 +0100 <lambdabot> * -> *
2023-02-23 03:12:28 +0100 <hpc> (the parameter to [] is the type you want a list of)
2023-02-23 03:12:59 +0100 <ghostbuster> this smells like object oriented inheritance
2023-02-23 03:13:17 +0100 <hpc> it does, and it's just similar enough to really confuse people
2023-02-23 03:13:45 +0100 <hpc> it's easy to think, i'll make a parent class and some child classes
2023-02-23 03:14:03 +0100 <hpc> and then have some list of objects :: ParentClass a => [a]
2023-02-23 03:14:15 +0100 <ghostbuster> in OOP, instances and types are sort of fundamentally different things.. but it seems like maybe that's not the case here
2023-02-23 03:14:20 +0100 <hpc> but those values all have to be the same type, unlike in OOP where they can be any subclass
2023-02-23 03:16:36 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2023-02-23 03:17:41 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds)
2023-02-23 03:17:56 +0100Lord_of_Life_Lord_of_Life
2023-02-23 03:18:15 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2023-02-23 03:22:02 +0100 <monochrom> Perhaps remove the idea that every language uses the word "instance" for the same thing, or the word "class" for the same thing, or...
2023-02-23 03:22:17 +0100 <hpc> or return for the same thing :D
2023-02-23 03:22:33 +0100 <monochrom> Did you know that there are 4 languages that used the word "functor" 4 different ways, and they were completely unrelated!
2023-02-23 03:23:00 +0100 <monochrom> (Hint: Prolog, SML, Haskell, C++.)
2023-02-23 03:23:01 +0100 <hpc> what's the fourth? i know haskell, ML, and C++
2023-02-23 03:23:08 +0100 <hpc> prolog?
2023-02-23 03:23:34 +0100 <hpc> oh, interesting
2023-02-23 03:23:39 +0100 <hpc> it's just the function name, sort of
2023-02-23 03:23:40 +0100mei(~mei@user/mei) (Remote host closed the connection)
2023-02-23 03:23:45 +0100 <hpc> well, "function"
2023-02-23 03:25:00 +0100gehmehgeh(~user@user/gehmehgeh)
2023-02-23 03:26:03 +0100mei(~mei@user/mei)
2023-02-23 03:27:38 +0100gmg(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2023-02-23 03:27:54 +0100ddellacosta(~ddellacos@146.70.166.100) (Quit: WeeChat 3.8)
2023-02-23 03:28:25 +0100waleee(~waleee@h-176-10-137-138.NA.cust.bahnhof.se) (Ping timeout: 246 seconds)
2023-02-23 03:29:22 +0100ddellacosta(~ddellacos@146.70.166.100)
2023-02-23 03:42:24 +0100robobub(uid248673@id-248673.uxbridge.irccloud.com)
2023-02-23 03:44:15 +0100varoo(~varoo@117.203.246.41)
2023-02-23 03:44:16 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection)
2023-02-23 03:48:39 +0100mei(~mei@user/mei) (Remote host closed the connection)
2023-02-23 03:49:57 +0100Square(~Square4@user/square) (Ping timeout: 252 seconds)
2023-02-23 03:51:00 +0100mei(~mei@user/mei)
2023-02-23 03:51:26 +0100 <ghostbuster> ok so instance was not what i thought it was
2023-02-23 03:57:11 +0100bilegeek(~bilegeek@2600:1008:b06e:7f1:de80:d2af:626:bdf1)
2023-02-23 04:11:04 +0100pwntips_(~user@24-113-98-114.wavecable.com) (Ping timeout: 252 seconds)
2023-02-23 04:12:01 +0100pwntips(~user@24-113-98-114.wavecable.com)
2023-02-23 04:12:53 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-02-23 04:17:29 +0100varoo(~varoo@117.203.246.41) (Ping timeout: 255 seconds)
2023-02-23 04:27:57 +0100razetime(~Thunderbi@117.193.4.97) (Ping timeout: 255 seconds)
2023-02-23 04:30:11 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 255 seconds)
2023-02-23 04:31:04 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 268 seconds)
2023-02-23 04:32:04 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2023-02-23 04:32:46 +0100gastus(~gastus@185.6.123.233)
2023-02-23 04:35:49 +0100gastus_(~gastus@5.83.191.2) (Ping timeout: 252 seconds)
2023-02-23 04:44:43 +0100td_(~td@i53870915.versanet.de) (Ping timeout: 246 seconds)
2023-02-23 04:46:44 +0100td_(~td@i53870911.versanet.de)
2023-02-23 04:46:56 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-02-23 04:47:17 +0100gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2023-02-23 04:48:59 +0100falafel(~falafel@2607:fb91:143f:e47f:2486:3767:73cd:b416)
2023-02-23 04:49:14 +0100gehmehgeh(~user@user/gehmehgeh)
2023-02-23 04:52:43 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-02-23 04:52:43 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-02-23 04:52:43 +0100finn_elijaFinnElija
2023-02-23 04:52:59 +0100razetime(~Thunderbi@117.254.34.189)
2023-02-23 04:58:01 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 246 seconds)
2023-02-23 05:00:21 +0100mcglk(~mcglk@131.191.19.145) (Ping timeout: 255 seconds)
2023-02-23 05:09:24 +0100cheater_(~Username@user/cheater)
2023-02-23 05:12:25 +0100slack1256(~slack1256@186.11.53.84)
2023-02-23 05:12:47 +0100cheater(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-02-23 05:12:50 +0100cheater_cheater
2023-02-23 05:13:34 +0100freeside(~mengwong@103.6.151.67)
2023-02-23 05:16:10 +0100mcglk(~mcglk@131.191.19.145)
2023-02-23 05:18:45 +0100Everything(~Everythin@46.185.124.65) (Quit: leaving)
2023-02-23 05:18:51 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2023-02-23 05:19:35 +0100razetime(~Thunderbi@117.254.34.189) (Ping timeout: 255 seconds)
2023-02-23 05:22:34 +0100meiGuest3721
2023-02-23 05:22:34 +0100Guest3721(~mei@user/mei) (Remote host closed the connection)
2023-02-23 05:22:39 +0100mei(~mei@user/mei)
2023-02-23 05:25:52 +0100goober_(~goober@90-231-13-185-no3430.tbcn.telia.com) (Quit: Leaving)
2023-02-23 05:28:26 +0100sagax(~sagax_nb@user/sagax) (Excess Flood)
2023-02-23 05:33:49 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in)
2023-02-23 05:33:49 +0100jwiegley(~jwiegley@2600:1700:cf00:db0:6165:340a:b206:7d04) (Quit: ZNC - http://znc.in)
2023-02-23 05:33:58 +0100abhixec(~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 268 seconds)
2023-02-23 05:35:45 +0100johnw(~johnw@2600:1700:cf00:db0:bd35:2807:e193:42ca)
2023-02-23 05:36:16 +0100jwiegley(~jwiegley@2600:1700:cf00:db0:bd35:2807:e193:42ca)
2023-02-23 05:46:51 +0100jinsun__(~jinsun@user/jinsun)
2023-02-23 05:46:51 +0100jinsun(~jinsun@user/jinsun) (Killed (tantalum.libera.chat (Nickname regained by services)))
2023-02-23 05:46:51 +0100jinsun__jinsun
2023-02-23 05:47:59 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-02-23 05:47:59 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-02-23 05:47:59 +0100wroathe(~wroathe@user/wroathe)
2023-02-23 05:48:34 +0100wroathe(~wroathe@user/wroathe) (Client Quit)
2023-02-23 05:57:29 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-02-23 05:57:30 +0100Vajb(~Vajb@2001:999:230:f561:4ee8:ad7f:13ff:9959) (Read error: Connection reset by peer)
2023-02-23 05:57:57 +0100Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2023-02-23 05:58:57 +0100razetime(~Thunderbi@117.254.35.53)
2023-02-23 06:04:42 +0100Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Ping timeout: 255 seconds)
2023-02-23 06:06:03 +0100son0p(~ff@181.136.122.143) (Ping timeout: 255 seconds)
2023-02-23 06:09:28 +0100mbuf(~Shakthi@49.205.82.4)
2023-02-23 06:10:33 +0100Vajb(~Vajb@2001:999:230:f561:4ee8:ad7f:13ff:9959)
2023-02-23 06:17:42 +0100mauke(~mauke@user/mauke) (Quit: leaving)
2023-02-23 06:18:34 +0100masterbuilder(~masterbui@user/masterbuilder) (Quit: leaving)
2023-02-23 06:19:26 +0100mauke(~mauke@user/mauke)
2023-02-23 06:27:37 +0100slack1256(~slack1256@186.11.53.84) (Ping timeout: 268 seconds)
2023-02-23 06:31:57 +0100talismanick(~talismani@45-23-184-231.lightspeed.frokca.sbcglobal.net)
2023-02-23 06:34:13 +0100thegeekinside(~thegeekin@189.180.66.126) (Ping timeout: 252 seconds)
2023-02-23 06:39:47 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-02-23 06:42:26 +0100Inst(~Inst@2601:6c4:4081:54f0:f532:ca97:ac1f:c1cd)
2023-02-23 06:42:30 +0100 <Inst> how cancer is this lib?
2023-02-23 06:42:33 +0100 <Inst> https://github.com/liamzee/clearly/blob/master/src/Syntax/Clearly.hs
2023-02-23 06:43:11 +0100 <Inst> it's like TaylorFausak's "much-beloved" Flow, except with functions instead of operators
2023-02-23 06:43:47 +0100bilegeek_(~bilegeek@9.sub-174-209-35.myvzw.com)
2023-02-23 06:46:26 +0100bilegeek(~bilegeek@2600:1008:b06e:7f1:de80:d2af:626:bdf1) (Ping timeout: 255 seconds)
2023-02-23 06:47:20 +0100falafel(~falafel@2607:fb91:143f:e47f:2486:3767:73cd:b416) (Ping timeout: 255 seconds)
2023-02-23 06:53:52 +0100razetime(~Thunderbi@117.254.35.53) (Ping timeout: 252 seconds)
2023-02-23 06:53:55 +0100razetime1(~Thunderbi@117.254.34.182)
2023-02-23 06:54:50 +0100 <Axman6> I don't see any problem with it
2023-02-23 06:55:22 +0100 <Axman6> other than I would expect something like timesDo to maybe be infixr
2023-02-23 06:56:09 +0100 <Inst> why infixr?
2023-02-23 06:56:14 +0100razetime1razetime
2023-02-23 06:56:16 +0100 <Inst> it's just a toy at this stage, and thanks for review
2023-02-23 06:56:36 +0100 <Inst> yeah, it should be infixr
2023-02-23 06:58:10 +0100 <Axman6> actually I'm not sure it matters, I was wondering about how m `timesDo` \i -> n `timesDo` \j -> do ... would parse but I think it's fine with BlockArguments
2023-02-23 06:59:18 +0100 <Inst> it's baby's first hackage package, not sure how to search hackage for something equivalent
2023-02-23 07:00:49 +0100 <Inst> hoogle via typesig works
2023-02-23 07:01:10 +0100 <Inst> i dodged all the hoogle names in use, and no one else seems to have had the idea to convert most standard Haskell operators to function forms
2023-02-23 07:03:23 +0100razetime(~Thunderbi@117.254.34.182) (Ping timeout: 268 seconds)
2023-02-23 07:09:11 +0100trev(~trev@user/trev)
2023-02-23 07:12:16 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 07:12:20 +0100razetime(~Thunderbi@117.254.34.182)
2023-02-23 07:14:23 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-02-23 07:18:05 +0100razetime1(~Thunderbi@117.193.3.85)
2023-02-23 07:18:40 +0100razetime(~Thunderbi@117.254.34.182) (Ping timeout: 248 seconds)
2023-02-23 07:18:40 +0100razetime1razetime
2023-02-23 07:19:19 +0100sefidel(~sefidel@user/sefidel) (Remote host closed the connection)
2023-02-23 07:19:52 +0100sefidel(~sefidel@user/sefidel)
2023-02-23 07:20:01 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 07:32:20 +0100shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 255 seconds)
2023-02-23 07:35:22 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-02-23 07:50:15 +0100analoq(~yashi@user/dies) (Ping timeout: 268 seconds)
2023-02-23 07:50:38 +0100michalz(~michalz@185.246.207.221)
2023-02-23 07:51:50 +0100analoq(~yashi@user/dies)
2023-02-23 08:01:18 +0100kenran(~user@user/kenran)
2023-02-23 08:01:27 +0100kenran(~user@user/kenran) (Remote host closed the connection)
2023-02-23 08:10:50 +0100mbuf(~Shakthi@49.205.82.4) (Remote host closed the connection)
2023-02-23 08:11:15 +0100mbuf(~Shakthi@49.205.82.4)
2023-02-23 08:11:27 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2023-02-23 08:14:41 +0100opticblast(~Thunderbi@172.58.84.5) (Ping timeout: 252 seconds)
2023-02-23 08:23:53 +0100bilegeek_(~bilegeek@9.sub-174-209-35.myvzw.com) (Quit: Leaving)
2023-02-23 08:25:21 +0100raehik(~raehik@92.40.171.132.threembb.co.uk)
2023-02-23 08:27:58 +0100son0p(~ff@181.136.122.143)
2023-02-23 08:28:20 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 08:29:35 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-02-23 08:35:27 +0100varoo(~varoo@2401:4900:5d33:9260:3d5c:5004:293a:6d59)
2023-02-23 08:37:52 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-02-23 08:43:54 +0100raehik_(~raehik@92.40.217.52.threembb.co.uk)
2023-02-23 08:44:21 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 08:46:07 +0100raehik(~raehik@92.40.171.132.threembb.co.uk) (Ping timeout: 248 seconds)
2023-02-23 08:46:24 +0100raehik__(~raehik@92.40.219.18.threembb.co.uk)
2023-02-23 08:48:39 +0100raehik_(~raehik@92.40.217.52.threembb.co.uk) (Ping timeout: 246 seconds)
2023-02-23 08:53:54 +0100raehik_(~raehik@92.40.218.71.threembb.co.uk)
2023-02-23 08:56:22 +0100raehik__(~raehik@92.40.219.18.threembb.co.uk) (Ping timeout: 246 seconds)
2023-02-23 08:58:42 +0100 <cheater> am i being reasonable here? https://github.com/jimenezrick/nng-haskell/issues/2#issuecomment-1441316247
2023-02-23 08:58:59 +0100mbuf(~Shakthi@49.205.82.4) (Quit: Leaving)
2023-02-23 08:59:25 +0100raehik__(~raehik@92.40.184.161.threembb.co.uk)
2023-02-23 09:02:00 +0100raehik_(~raehik@92.40.218.71.threembb.co.uk) (Ping timeout: 255 seconds)
2023-02-23 09:02:21 +0100ft(~ft@62.155.196.67) (Quit: leaving)
2023-02-23 09:03:53 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:17db:85dd:46c2:dc12)
2023-02-23 09:04:46 +0100MajorBiscuit(~MajorBisc@c-001-011-016.client.tudelft.eduvpn.nl)
2023-02-23 09:05:16 +0100raehik__(~raehik@92.40.184.161.threembb.co.uk) (Ping timeout: 252 seconds)
2023-02-23 09:06:03 +0100razetime(~Thunderbi@117.193.3.85) (Ping timeout: 248 seconds)
2023-02-23 09:07:33 +0100king_gs(~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7)
2023-02-23 09:08:29 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-02-23 09:08:45 +0100coot(~coot@213.134.171.3)
2023-02-23 09:11:00 +0100AlexZenon(~alzenon@178.34.161.237) (Ping timeout: 255 seconds)
2023-02-23 09:11:03 +0100Alex_test(~al_test@178.34.161.237) (Ping timeout: 246 seconds)
2023-02-23 09:17:53 +0100Alex_test(~al_test@178.34.161.237)
2023-02-23 09:20:02 +0100AlexZenon(~alzenon@178.34.161.237)
2023-02-23 09:21:42 +0100razetime(~Thunderbi@117.193.3.85)
2023-02-23 09:26:15 +0100offtherock(~blurb@96.45.2.121)
2023-02-23 09:28:50 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-02-23 09:28:54 +0100rburkholder(~blurb@96.45.2.121) (Ping timeout: 255 seconds)
2023-02-23 09:30:20 +0100cfricke(~cfricke@user/cfricke)
2023-02-23 09:30:22 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-02-23 09:42:50 +0100varoo(~varoo@2401:4900:5d33:9260:3d5c:5004:293a:6d59) (Ping timeout: 255 seconds)
2023-02-23 09:43:58 +0100varoo(~varoo@2401:4900:5d31:debc:7069:ea2d:ca58:ad87)
2023-02-23 09:45:33 +0100talismanick(~talismani@45-23-184-231.lightspeed.frokca.sbcglobal.net) (Ping timeout: 255 seconds)
2023-02-23 09:46:11 +0100chele(~chele@user/chele)
2023-02-23 09:47:49 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-02-23 09:48:10 +0100varoo(~varoo@2401:4900:5d31:debc:7069:ea2d:ca58:ad87) (Client Quit)
2023-02-23 09:49:43 +0100 <[exa]> cheater: well mostly, but I'm usually responding to these with "patch or gtfo" :D
2023-02-23 09:55:05 +0100acidjnk(~acidjnk@p200300d6e715c448a054fd95560e1205.dip0.t-ipconnect.de)
2023-02-23 09:55:42 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-02-23 09:56:13 +0100ph88(~ph88@91.66.101.83) (Ping timeout: 246 seconds)
2023-02-23 10:02:29 +0100YoungFrog(~youngfrog@2a02:a03f:ca07:f900:98c4:f5a3:bfa9:f8ce) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
2023-02-23 10:02:49 +0100YoungFrog(~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be)
2023-02-23 10:10:04 +0100merijn(~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl)
2023-02-23 10:11:08 +0100ubert(~Thunderbi@2a02:8109:abc0:6434:348c:e1b0:cafe:8da3)
2023-02-23 10:18:28 +0100tzh(~tzh@24.21.73.154) (Quit: zzz)
2023-02-23 10:22:05 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-02-23 10:25:52 +0100CiaoSen(~Jura@p200300c9570460002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2023-02-23 10:25:59 +0100 <aforemny> cheater: as far as i understand the issue, your operating systems ships a version of nng that is too old. IMO it is reasonable for a software project to expect a recent enough versions of dependencies, seeing that they are not supporting a particular operating system. i agree, it would be nice if that dependency was sufficiently specified, but unfortunately it is the case that external dependencies more often than not just
2023-02-23 10:25:59 +0100 <aforemny> aren't
2023-02-23 10:26:50 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 10:27:35 +0100 <cheater> you're saying "recent enough" but who's to say what's recent enough?
2023-02-23 10:27:51 +0100 <cheater> nng exists in that older version, with full functionality, that should be "recent enough"
2023-02-23 10:28:19 +0100 <cheater> it's not like code that shipped out in 2021 suddenly stopped having features it had in the past
2023-02-23 10:28:39 +0100 <aforemny> cheater: haskell-nng maintainers should say what is recent enough. it is common to support the latest version or a specific version only
2023-02-23 10:29:00 +0100 <cheater> common for what?
2023-02-23 10:29:08 +0100 <aforemny> cheater: it really depends on how semantically versioned nng is, and how stable its api with respect to what is used in haskell-nng is
2023-02-23 10:29:20 +0100 <aforemny> cheater: common for open source software projects
2023-02-23 10:29:40 +0100 <cheater> firefox is open source and it will connect to 20 year old web servers
2023-02-23 10:29:55 +0100 <cheater> mysql is open source and mysql libraries will work with ancient versions of mysql
2023-02-23 10:30:12 +0100 <cheater> apache httpd is open source and even an ancient version will work with the latest version of curl
2023-02-23 10:30:14 +0100 <aforemny> cheater: you can always step up maintaining haskell-nng for nng version X that you desire :-)
2023-02-23 10:30:19 +0100 <cheater> no it's not "common"
2023-02-23 10:30:52 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f)
2023-02-23 10:31:21 +0100 <cheater> it's just the path of least resistance: expect everyone to live on git head with something breaking daily so you don't have to do 1% extra work (or however much it is to robustly support "ancient versions")
2023-02-23 10:31:40 +0100 <cheater> imo it's lazy
2023-02-23 10:33:15 +0100 <Hecate> cheater: I read the thread
2023-02-23 10:33:44 +0100 <Hecate> cheater: you should point out that 1.5.2 is the latest release of the nng project and that it's perfectly expected of people to install it
2023-02-23 10:34:17 +0100 <Hecate> cheater: tell the maintainer you'd like to volunteer a PR to the README that asks to use the latest commit of the nng git repo
2023-02-23 10:34:51 +0100 <cheater> idk, the maintainer's kind of defensive/hostile, i'm not even gonna go and code-lawyer this stuff
2023-02-23 10:35:01 +0100 <cheater> if he wants his project to be crappy he can keep it crappy. i don't have to use it
2023-02-23 10:35:03 +0100coot(~coot@213.134.171.3) (Quit: coot)
2023-02-23 10:35:39 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f) (Ping timeout: 256 seconds)
2023-02-23 10:39:57 +0100Guest92(~Guest92@2001:a61:501a:a902:d841:15f1:b5b1:259a)
2023-02-23 10:45:32 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2023-02-23 10:46:29 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2023-02-23 10:47:02 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-02-23 10:47:43 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 10:53:59 +0100ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2023-02-23 10:54:54 +0100ec(~ec@gateway/tor-sasl/ec)
2023-02-23 10:56:13 +0100varoo(~varoo@117.203.246.41)
2023-02-23 11:03:52 +0100teo(~teo@user/teo)
2023-02-23 11:13:35 +0100coot(~coot@213.134.171.3)
2023-02-23 11:16:00 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 248 seconds)
2023-02-23 11:31:30 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2023-02-23 11:37:41 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
2023-02-23 11:38:18 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2023-02-23 11:48:10 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2023-02-23 11:48:22 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2023-02-23 11:52:56 +0100KaitoDaumoto(~asdf@user/kaitodaumoto)
2023-02-23 11:53:17 +0100CiaoSen(~Jura@p200300c9570460002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2023-02-23 11:57:56 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-02-23 12:02:35 +0100polyphem(~polyphem@2a02:810d:840:8754:4d31:9178:35f:6608) (Remote host closed the connection)
2023-02-23 12:02:43 +0100polyphem(~polyphem@2a02:810d:840:8754:4d31:9178:35f:6608)
2023-02-23 12:13:09 +0100razetime(~Thunderbi@117.193.3.85) (Quit: See You Space Cowboy)
2023-02-23 12:24:17 +0100whatsupdoc(uid509081@2a03:5180:f:4::7:c499) (Quit: Connection closed for inactivity)
2023-02-23 12:27:22 +0100Square(~Square4@user/square)
2023-02-23 12:30:51 +0100haskl[error](~haskl@user/haskl) (Read error: Connection reset by peer)
2023-02-23 12:33:01 +0100haskl(~haskl@user/haskl)
2023-02-23 12:34:02 +0100 <ncf> there's got to be a middle ground between "supporting 20 year old versions" and "implicitly expecting people to use the latest git revision" :')
2023-02-23 12:34:52 +0100king_gs(~Thunderbi@2806:103e:29:1779:19a5:ca6b:2f79:45e7) (Ping timeout: 252 seconds)
2023-02-23 12:35:22 +0100 <int-e> We can have that soon (only 3 years to go): "the latest git revision is 20 years old"
2023-02-23 12:37:41 +0100Square(~Square4@user/square) (Quit: Leaving)
2023-02-23 12:38:20 +0100Square(~Square4@user/square)
2023-02-23 12:40:42 +0100 <merijn> ncf: Yes, it's called "fuck you, pay me" ;)
2023-02-23 12:41:24 +0100 <merijn> I'm very much pro "supporting whatever the hell is convenient for you and only you and if anyone wants anything else: patches and/or money welcome" :p
2023-02-23 12:42:26 +0100enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7)
2023-02-23 12:50:29 +0100 <maerwald[m]> merijn: money motivates you?
2023-02-23 12:52:36 +0100 <merijn> maerwald[m]: Money makes me care about "not my problems"
2023-02-23 12:53:29 +0100 <merijn> As long as we live in a society where I have to work to have a living instead of "working on whatever I want", then yes, if you want me to care about a problem that does not affect me, it does
2023-02-23 12:54:17 +0100 <merijn> My open source code is purely "I wrote this because it tickled my fancy and I'm giving it out, because maybe someone can use it with absolutely zero warranty, maintenance or guarantees"
2023-02-23 12:54:47 +0100 <merijn> If you want maintenance and guarantees that are more predictable than "I might do it when I feel like it", then you better be paying me
2023-02-23 12:55:08 +0100 <maerwald[m]> Would be surprised that working for even half of the maintainers. Most probably have full time jobs and employment contracts not allowing them to accept such offers
2023-02-23 12:55:53 +0100 <dminuoso_> Well, you can always hire well typed or another such company to do anything for any package.
2023-02-23 12:56:14 +0100 <dminuoso_> Then you have a contractual relationship by which you can "demand" stuff happens.
2023-02-23 12:56:16 +0100 <merijn> maerwald[m]: The point is "if you're not paying the maintainer, you get to make 0 demands"
2023-02-23 12:56:27 +0100 <merijn> You can maybe ask nicely, or make a proposal, or whatever
2023-02-23 12:56:36 +0100 <dminuoso_> merijn: Hah, I recently stumbled over this one: https://forum.proxmox.com/threads/quick-help-how-to-disable-secureboot-vm.111210/#post-479276
2023-02-23 12:56:44 +0100 <dminuoso_> How's that for demanding
2023-02-23 12:56:48 +0100 <maerwald[m]> dminuoso_: uhm
2023-02-23 12:57:09 +0100 <merijn> But entitlement wrt open source maintainers is always bad
2023-02-23 12:57:18 +0100kmein(~weechat@user/kmein) (Quit: ciao kakao)
2023-02-23 12:57:23 +0100 <maerwald[m]> merijn: asking nicely has ever worked in open source?
2023-02-23 12:57:29 +0100 <dminuoso_> Sure.
2023-02-23 12:57:35 +0100 <merijn> maerwald[m]: Don't know, don't care
2023-02-23 12:57:44 +0100 <merijn> You're not paying, you get 0 rights or guarantees
2023-02-23 12:58:41 +0100 <merijn> maerwald[m]: In some organisations (some linux distros) payment may be in the form of "maintenance on other parts of the system" or some other (implicit) quid pro quo
2023-02-23 12:58:46 +0100 <maerwald[m]> I don't think money works in open source. Only two things do: becoming a comaintainer or forking.
2023-02-23 12:59:09 +0100 <merijn> But my hard uncompromising stance = no entitlement from non-contributin users
2023-02-23 12:59:16 +0100 <dminuoso_> Money works just fine in open source.
2023-02-23 12:59:24 +0100 <dminuoso_> You can hire companies to do work on open source.
2023-02-23 12:59:29 +0100 <merijn> maerwald[m]: I think quid pro quo in the form of being a comaintainer or other form of contribution is fine
2023-02-23 12:59:33 +0100 <dminuoso_> We have done it a few times.
2023-02-23 12:59:41 +0100 <dminuoso_> And arguably, this is how much of linux work gets done.
2023-02-23 12:59:42 +0100 <maerwald[m]> Nothing else has ever worked for me
2023-02-23 13:00:03 +0100 <maerwald[m]> My latest example is: brick windows support.
2023-02-23 13:00:19 +0100 <dminuoso_> Most of new linux kernel features arent done because people have too much spare time, its because someone is getting paid to do it.
2023-02-23 13:00:26 +0100 <maerwald[m]> Maintainer won't be persuaded by donations
2023-02-23 13:00:29 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
2023-02-23 13:00:30 +0100 <merijn> maerwald[m]: Open source in the idealistic sense only works if *everyone* contributes to the ecosystem. But there's a lot of "only using, never contributing" leeches in the world
2023-02-23 13:00:34 +0100 <dminuoso_> maerwald[m]: of course not, but you can hire someone to do it.
2023-02-23 13:00:35 +0100 <maerwald[m]> And patches are not enough either
2023-02-23 13:00:53 +0100 <merijn> maerwald[m]: What is the objection the maintainer has?
2023-02-23 13:00:57 +0100 <maerwald[m]> They want someone to maintain the new code
2023-02-23 13:00:59 +0100 <maerwald[m]> dminuoso_: who?
2023-02-23 13:01:04 +0100 <merijn> maerwald[m]: Understandable
2023-02-23 13:01:09 +0100 <dminuoso_> Any haskell consultancy company.
2023-02-23 13:01:11 +0100 <maerwald[m]> merijn: they don't have time
2023-02-23 13:01:26 +0100 <merijn> maerwald[m]: I wouldn't want to maintain code on a platform I don't use either
2023-02-23 13:01:33 +0100 <maerwald[m]> dminuoso_: and pay them to maintain it forever?
2023-02-23 13:01:37 +0100 <maerwald[m]> It's not a a one off job
2023-02-23 13:02:01 +0100 <dminuoso_> Well, if the feature is crucial to your business case, why would you be entitled that someone does exactly what you want for free instead?
2023-02-23 13:02:05 +0100 <merijn> maerwald[m]: ok, but how is any of this the problem/responsibility of the maintainer of brick?
2023-02-23 13:02:29 +0100 <maerwald[m]> And WT doesn't have windows experts I believe. But I could be wrong
2023-02-23 13:02:29 +0100 <dminuoso_> Besides, often if the work is done by someone else, most maintainers are happy to merge PRs.
2023-02-23 13:02:42 +0100 <maerwald[m]> merijn: huh? I simply said throwing money at it was a failure
2023-02-23 13:03:12 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2023-02-23 13:03:13 +0100 <dminuoso_> And in the scope of maintainability, something like that can be provided via a cabal flag that you have to enable - and then its your problem to figure out whether its stable or not.
2023-02-23 13:03:18 +0100 <dminuoso_> But anyway
2023-02-23 13:03:24 +0100 <merijn> maerwald[m]: My stance isn't "money fixes it"
2023-02-23 13:03:39 +0100 <Hecate> ncf> there's got to be a middle ground between "supporting 20 year old versions" and "implicitly expecting people to use the latest git revision" :') // Just to be clear, the latest release is from 2021
2023-02-23 13:03:55 +0100 <maerwald[m]> And patches will not be accepted, unless the patch author agrees to become a maintainer
2023-02-23 13:03:56 +0100 <maerwald[m]> So again, the only things that work are forking or becoming maintainer
2023-02-23 13:03:59 +0100 <merijn> maerwald[m]: My stance is "contribution of some form (money being the most general form) is absolute bare minimal table stakes to get someone to care about your problem"
2023-02-23 13:04:39 +0100 <maerwald[m]> merijn: I think that doesn't work at all in open source
2023-02-23 13:04:54 +0100 <merijn> maerwald[m]: I'm not giving a solution to your problem of "code doesn't do what I want", I'm advocating: Anyone who has any open source code would have better mental health if they stopped caring about anyone who isn't paying
2023-02-23 13:05:06 +0100 <merijn> maerwald[m]: You're interpreting what I'm saying as something other than I'm saying
2023-02-23 13:06:00 +0100 <merijn> I'm not giving you a recipe to solve problems. I'm saying no one who isn't paid should care about similar problems, which is not the same as "people who are paid *should* care" (I mean, probably they should if they care about payment continuing, but that's a personal decision)
2023-02-23 13:06:01 +0100 <maerwald[m]> merijn: I have people paying, but I don't know wtf for
2023-02-23 13:06:16 +0100 <ncf> right, "supporting the latest release" would be such a middle ground
2023-02-23 13:08:18 +0100 <maerwald[m]> merijn: I have a Github sponsor I've never heard of or met. Don't know what they want. The opencollective of my project has accumulated 0.5k, but I also got no idea what for.
2023-02-23 13:08:19 +0100 <maerwald[m]> Most people use such general financial contributions. They don't approach you with money when they write a ticket on your issue tracker.
2023-02-23 13:09:35 +0100 <maerwald[m]> And if they would, I'd have to reject to not be subject to moonlighting and getting fired
2023-02-23 13:11:55 +0100Guest92(~Guest92@2001:a61:501a:a902:d841:15f1:b5b1:259a) (Quit: Client closed)
2023-02-23 13:12:03 +0100 <maerwald[m]> Whether I work on something is a function of motivation and impact on end user experience
2023-02-23 13:12:03 +0100 <maerwald[m]> Don't care if they contribute patches
2023-02-23 13:12:04 +0100 <maerwald[m]> No one does
2023-02-23 13:16:41 +0100 <Axman6> maerwald[m]: whether money motivates you or not, when I get a job, can I give you/HLS $100AUD? I've happily given to GHC's development, and these days HLS is becoming as essential to writing Haskell
2023-02-23 13:18:52 +0100 <maerwald[m]> Axman6: HLS is a good choice
2023-02-23 13:18:57 +0100 <Axman6> The way I view doing that is not "Here's some money so you will keep doing stuff" but more 'here's some monewy to say thanks for doing stuff". I'd hate to support someone by placing a burden on them
2023-02-23 13:19:11 +0100 <maerwald[m]> WT has wizards who can work on specific things in HLS
2023-02-23 13:19:44 +0100 <maerwald[m]> And we're working on making the governing structure and decision making more transparent
2023-02-23 13:19:51 +0100 <Axman6> Who is working on HLS these days anyway? I assumed you were a big part based on being the reddit poster for new releases
2023-02-23 13:20:55 +0100 <Axman6> Great, that's good to hear, it's certainly becoming a part of the community infrastructure, so it'd be great to see if handled similarly to GHC, at least in terms of support for development
2023-02-23 13:21:16 +0100 <maerwald[m]> Axman6: I've done a lot on the CI side. Zubin, fendor, MPJ and Pepe are more familiar with the codebase
2023-02-23 13:25:19 +0100 <fendor[m]> and a number of plugin maintainers
2023-02-23 13:25:48 +0100 <maerwald[m]> https://github.com/haskell/haskell-language-server/issues/709
2023-02-23 13:26:17 +0100 <maerwald[m]> I really want this to happen
2023-02-23 13:26:31 +0100 <Axman6> Well you're all champions in my book, thank you all
2023-02-23 13:26:32 +0100 <maerwald[m]> Afair this needs something on the GHC side first
2023-02-23 13:26:58 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-02-23 13:27:02 +0100 <stefan-_> this would also be nice: https://github.com/haskell/haskell-language-server/issues/708
2023-02-23 13:27:07 +0100 <maerwald[m]> So it's a job for WT
2023-02-23 13:27:18 +0100 <maerwald[m]> stefan-_: yep
2023-02-23 13:27:34 +0100 <maerwald[m]> There's a trick... vendor all your dependencies xD
2023-02-23 13:27:40 +0100 <maerwald[m]> Not that hard actually
2023-02-23 13:29:08 +0100 <stefan-_> maerwald[m], interesting, didnt know that
2023-02-23 13:29:52 +0100 <maerwald[m]> https://cabal.readthedocs.io/en/3.4/cabal-project.html?highlight=optional-packages#cfg-field-optio…
2023-02-23 13:30:17 +0100 <maerwald[m]> You just need to `cabal unpack` them all into a subdir anr then add that line to cabal.project
2023-02-23 13:30:27 +0100 <maerwald[m]> Prolly doesn't work for boot libraries though
2023-02-23 13:31:11 +0100 <maerwald[m]> Or maybe it does, except for non-reinstallable ones
2023-02-23 13:31:18 +0100 <maerwald[m]> Like base
2023-02-23 13:33:03 +0100 <fendor[m]> maerwald: I dont think it required well-typed necessarily, it could in theory use the same mechanism ghci is using to implement the `:type-at` feature.
2023-02-23 13:35:04 +0100 <maerwald> let's dicuss this in next HLS meeting... I feel this has been neglected for too long
2023-02-23 13:35:23 +0100 <maerwald> it used to be possible with ghc-mod, I remember
2023-02-23 13:35:34 +0100 <maerwald> and it's kind of an awesome way to read through your code
2023-02-23 13:35:58 +0100 <fendor[m]> <maerwald[m]> "There's a trick... vendor all..." <- iirc, if you compile with .hie files and put them all into a specific location, you can enable jump to definition for third party deps
2023-02-23 13:44:09 +0100jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 255 seconds)
2023-02-23 13:44:54 +0100mei(~mei@user/mei) (Quit: mei)
2023-02-23 13:45:36 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 13:46:23 +0100mei(~mei@user/mei)
2023-02-23 13:46:24 +0100akegalj(~akegalj@89-164-77-5.dsl.iskon.hr)
2023-02-23 13:46:25 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2023-02-23 13:46:49 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2023-02-23 13:47:08 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2023-02-23 13:48:06 +0100angelore(~u0_a291@223.25.71.83)
2023-02-23 13:48:55 +0100 <fendor[m]> seemingly misremembering :(
2023-02-23 13:50:10 +0100kmein(~weechat@static.173.83.99.88.clients.your-server.de)
2023-02-23 13:51:15 +0100CiaoSen(~Jura@p200300c9570460002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2023-02-23 13:54:37 +0100varoo(~varoo@117.203.246.41) (Ping timeout: 252 seconds)
2023-02-23 13:55:43 +0100mei(~mei@user/mei) (Remote host closed the connection)
2023-02-23 13:57:51 +0100mei(~mei@user/mei)
2023-02-23 14:00:26 +0100acidjnk(~acidjnk@p200300d6e715c448a054fd95560e1205.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-02-23 14:03:39 +0100acidjnk(~acidjnk@p200300d6e715c448a054fd95560e1205.dip0.t-ipconnect.de)
2023-02-23 14:04:09 +0100Guest73(~Guest73@host86-157-132-203.range86-157.btcentralplus.com)
2023-02-23 14:05:11 +0100lyle(~lyle@104.246.145.237)
2023-02-23 14:05:49 +0100 <Guest73> Why is type inference for arbitrarily ranked type quantifiers undecidable?
2023-02-23 14:14:48 +0100 <dminuoso_> Guest73: See Wells, J. B. (1993). "Typability and type checking in the second-order lambda-calculus are equivalent and undecidable"
2023-02-23 14:15:08 +0100 <c_wraith> Guest73: it's ambiguous. There's no single most-general type available for a lot of definitions.
2023-02-23 14:16:49 +0100 <dminuoso_> Guest73: Relatedly, this may be an interesting read too https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/putting.pdf
2023-02-23 14:19:03 +0100alecs(~alecs@31.188.176.146)
2023-02-23 14:23:43 +0100gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-02-23 14:26:27 +0100 <Guest73> Thanks much, I'll have a look at those.
2023-02-23 14:28:54 +0100 <merijn> maerwald[m]: It's fine if that's how you prioritise things, my problem is with the culture of entitlement around demanding issues are addressed. A lot of people (like me!) only work on their open source code in their free/spare time, and for me that time is reserved for things I find *fun*
2023-02-23 14:29:31 +0100 <maerwald> fun is getting high... not coding
2023-02-23 14:30:30 +0100 <maerwald> ah, now I know what I can use the donations for...
2023-02-23 14:30:38 +0100 <geekosaur> enh
2023-02-23 14:30:49 +0100 <geekosaur> a good coding session works for me
2023-02-23 14:31:05 +0100 <geekosaur> then again getting high doesn't; it just makes my anxiety hit the root
2023-02-23 14:31:08 +0100 <geekosaur> *roof
2023-02-23 14:31:10 +0100 <merijn> Coding can be fun, if it is for things I find fun, or work I find fun, etc.
2023-02-23 14:32:11 +0100 <gqplox[m]> hi guys, i was wondering if there was a formatter which will align stuff instead of reducing the whitespace
2023-02-23 14:32:22 +0100 <gqplox[m]> like i noticed in the ghci stuff the code is like this
2023-02-23 14:32:26 +0100 <gqplox[m]> null :: [a] -> Bool
2023-02-23 14:32:26 +0100 <gqplox[m]> null [] = True
2023-02-23 14:32:26 +0100 <gqplox[m]> null (_:_) = False
2023-02-23 14:32:59 +0100 <geekosaur> not that I've seen. (also, please use a pastebin. irc can mangle it, especially if someone has a proportional font)
2023-02-23 14:33:41 +0100 <gqplox[m]> alright
2023-02-23 14:33:42 +0100 <maerwald> merijn: For me it's stress and pain. I enjoy looking at good work, but the process is just a zone.
2023-02-23 14:33:54 +0100 <maerwald> Where I'm not exposed to my brain, so to speak.
2023-02-23 14:34:01 +0100 <gqplox[m]> oh yeah i forgot irc might not use monospace font, sorry
2023-02-23 14:34:07 +0100monochromuses a proportional font for IRC :)
2023-02-23 14:34:27 +0100 <geekosaur> even matrix dsoesn't unless you use the code markup, which you didn't
2023-02-23 14:34:28 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f)
2023-02-23 14:34:39 +0100 <maerwald> merijn: but then again, there are other ways to zone out, but those need funding xD
2023-02-23 14:37:05 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2023-02-23 14:37:10 +0100 <geekosaur> gqplox[m], someone brought up emacs align-regexp in #haskell:matrix.org a couple days ago
2023-02-23 14:37:16 +0100jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff)
2023-02-23 14:37:22 +0100 <gqplox[m]> i did use code markup
2023-02-23 14:37:40 +0100 <Profpatsch> Do we have a json pretty printing function somewhere that can colorize in the terminal?
2023-02-23 14:37:47 +0100 <gqplox[m]> wait code markup is markdown codeblock right?
2023-02-23 14:38:05 +0100 <geekosaur> hm. irc normally shows a control character in that case, and it would all be one message (and the bridge would pastebin it)
2023-02-23 14:38:32 +0100 <monochrom> Perhaps ` does and ``` doesn't.
2023-02-23 14:38:40 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f) (Ping timeout: 246 seconds)
2023-02-23 14:38:48 +0100 <geekosaur> both are supposed to work, at least matrix-side
2023-02-23 14:39:02 +0100 <gqplox[m]> hmm this is how it looks on my screen, https://imgur.com/a/7TVO8n7
2023-02-23 14:39:06 +0100 <Profpatsch> hm maybe https://hackage.haskell.org/package/aeson-pretty-0.8.9/docs/Data-Aeson-Encode-Pretty.html it doesn’t do colors, but oh well
2023-02-23 14:39:15 +0100 <geekosaur> code blocks with `` ``` `` normally get pastebinned because they end up more than one line irc-side
2023-02-23 14:39:25 +0100 <gqplox[m]> but ill refrain from doing that and use pastebin in the future
2023-02-23 14:40:07 +0100 <gqplox[m]> ah unfortunately i use vim not emacs but thank you
2023-02-23 14:40:24 +0100 <geekosaur> https://imgur.com/iK3mpmo.png here
2023-02-23 14:40:51 +0100 <geekosaur> hm, but nheko shows it as a code block
2023-02-23 14:41:09 +0100 <geekosaur> wonder if the bridge is broken again
2023-02-23 14:49:13 +0100elkcl(~elkcl@37.110.27.252) (Ping timeout: 252 seconds)
2023-02-23 14:57:04 +0100elkcl(~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru)
2023-02-23 15:00:44 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.8)
2023-02-23 15:04:23 +0100 <stefan-_> Profpatsch, not sure if that is applicable for your problem, but there is [jq](https://stedolan.github.io/jq/): `cat foo.json | jq`
2023-02-23 15:04:23 +0100cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.8)
2023-02-23 15:04:27 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2023-02-23 15:04:45 +0100cfricke(~cfricke@user/cfricke)
2023-02-23 15:06:48 +0100cfricke(~cfricke@user/cfricke) (Client Quit)
2023-02-23 15:06:50 +0100npm_i_kurbus(~npm_i_kur@user/kurbus)
2023-02-23 15:13:08 +0100 <ii8> Hello, could somebody explain to me what this error means? https://paste.tomsmeding.com/6TOrECmN
2023-02-23 15:13:53 +0100shriekingnoise(~shrieking@186.137.175.87)
2023-02-23 15:13:54 +0100 <ii8> Looking at the source code I can't even find anything called zlib
2023-02-23 15:13:59 +0100 <merijn> ii8: Something is trying to load zlib
2023-02-23 15:14:16 +0100 <merijn> ii8: zlib is a C library for zip compression
2023-02-23 15:14:36 +0100Guest11(~Guest11@c83-251-160-169.bredband.tele2.se)
2023-02-23 15:16:22 +0100 <Guest11> I just posted this question on SO, but maybe the Libera chat is more appropriate. I have heard you should avoid foldr, but I'm having a hard time figuring out how I can replace foldl with it here. Does anyone have any tips? For reference, https://stackoverflow.com/questions/75545307/how-do-i-convert-this-foldl-to-foldr-for-laziness-sake
2023-02-23 15:16:34 +0100acidjnk(~acidjnk@p200300d6e715c448a054fd95560e1205.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2023-02-23 15:16:40 +0100 <Guest11> oops, avoid foldl *
2023-02-23 15:20:05 +0100 <ii8> merijn: yes, I am aware of that library, I'm not sure what to do with that information though, it looks like it ships it's own (really old?) version of zlib, but I can't see where or why or how.
2023-02-23 15:22:07 +0100thegeekinside(~thegeekin@189.180.66.126)
2023-02-23 15:22:53 +0100 <ii8> nvm, that version number probably refers to a haskell package version, not the version of the C library
2023-02-23 15:24:02 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-02-23 15:24:40 +0100angelore(~u0_a291@223.25.71.83) (Quit: WeeChat 3.8)
2023-02-23 15:25:08 +0100 <int-e> :t \f xs -> reverse (foldl (\ys x -> f ys x : ys) [] xs)
2023-02-23 15:25:10 +0100 <lambdabot> Foldable t1 => ([a] -> t2 -> a) -> t1 t2 -> [a]
2023-02-23 15:25:23 +0100 <int-e> :t \f xs -> foldr (\x xs ys -> let z = f ys x in z : xs (z : ys)) id xs []
2023-02-23 15:25:24 +0100 <lambdabot> Foldable t1 => ([a] -> t2 -> a) -> t1 t2 -> [a]
2023-02-23 15:26:01 +0100 <int-e> Guest11: I think it would work like that, but I'd rather write it with explicit recursion instead.
2023-02-23 15:27:13 +0100 <Guest11> Oh you would? I might sound stupid, but according to this wikisite (https://wiki.haskell.org/List_traversal) a haskell "expert" would use foldr instead of manual recursion (which actually is why I changed from manual to foldl in the first place).
2023-02-23 15:28:12 +0100 <eldritchcookie[m> how do i test monadic functions?
2023-02-23 15:28:23 +0100 <int-e> the foldr might fuse but with all the computations going on fusion will not buy you very much
2023-02-23 15:28:51 +0100 <Guest11> Interesting point!
2023-02-23 15:29:40 +0100 <int-e> And the code will be more readable with explicit recursion, I think.
2023-02-23 15:30:58 +0100 <int-e> But if you want to go with foldr... the idea is that you can add an accumulator to the `foldr` computation (to keep track of the vectors produced so far) by making it a third argument to the worker function that is the first argument of foldr.
2023-02-23 15:32:18 +0100 <int-e> This is also what you do to get foldl from foldr.
2023-02-23 15:32:18 +0100 <Guest11> Yeah I just noticed your first argument to foldr is a function with three parameters. I did not know that you could add an accumulator like that?
2023-02-23 15:32:33 +0100 <Guest11> That's reaally cool.
2023-02-23 15:33:36 +0100 <int-e> :t foldr
2023-02-23 15:33:37 +0100 <lambdabot> Foldable t => (a -> b -> b) -> b -> t a -> b
2023-02-23 15:33:59 +0100 <int-e> it replaces `b` by a function `acc -> b`
2023-02-23 15:34:24 +0100 <Guest11> Oh, I see what you mean!
2023-02-23 15:34:32 +0100 <int-e> Oh I messed this up actually
2023-02-23 15:34:40 +0100 <int-e> the `id` should be `const []`
2023-02-23 15:35:00 +0100 <int-e> or `(const [])`
2023-02-23 15:35:30 +0100rogerstonks(~rogerston@2a0c:5bc0:40:11c4:3fcd:5296:71ec:609e)
2023-02-23 15:35:43 +0100 <int-e> (when we reach the end of the input list, the result has already been produced; the accumulator needs to be discarded)
2023-02-23 15:36:43 +0100 <Guest11> Alright, I'm starting to understand what needs to be done to use `foldr`, but at this point, it does seem like there are more ergonomic/readable options like you mentioned at the very beginning
2023-02-23 15:37:04 +0100 <rogerstonks> Hello. I have a question about gsoc (google summer of code). Where I can ask such questions?
2023-02-23 15:37:18 +0100 <Guest11> I'll try to implement it using `foldr` though, seems like very good practice
2023-02-23 15:41:40 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 15:42:08 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 15:42:10 +0100 <eldritchcookie[m> if it is related to haskell i don't think there would be any problem asking here
2023-02-23 15:44:33 +0100 <rogerstonks> oh ok. I want to do one of the projects over 3 months. Can I do a 350 hour project or can I only do 175 hour ones?
2023-02-23 15:45:36 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com)
2023-02-23 15:45:59 +0100acidjnk(~acidjnk@p200300d6e715c4484472a5e19ee2f2c7.dip0.t-ipconnect.de)
2023-02-23 15:47:52 +0100 <merijn> rogerstonks: You probably wanna email to ask the people in charge
2023-02-23 15:48:24 +0100 <rogerstonks> ok thanks
2023-02-23 15:49:08 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2023-02-23 15:49:27 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2023-02-23 15:53:09 +0100rogerstonks(~rogerston@2a0c:5bc0:40:11c4:3fcd:5296:71ec:609e) (Quit: Client closed)
2023-02-23 15:53:13 +0100 <eldritchcookie[m> i made a library now i want to test it however most of the functions are in a monad how can i test monadic values/functions with either quickcheck or hedgehog?
2023-02-23 15:57:19 +0100 <geekosaur[m]> QuickCheck has a module for that IIRC
2023-02-23 15:59:03 +0100 <geekosaur[m]> https://hackage.haskell.org/package/QuickCheck-2.14.2/docs/Test-QuickCheck-Monadic.html
2023-02-23 15:59:05 +0100gensyst(gensyst@user/gensyst)
2023-02-23 15:59:28 +0100 <Profpatsch> stefan-_: yeah, that’s my fallback for if the pure haskell thing is not fast enough :)
2023-02-23 15:59:32 +0100 <Profpatsch> or nice enough
2023-02-23 15:59:39 +0100 <Profpatsch> ofc shelling out jq has like 5ms overhead
2023-02-23 15:59:43 +0100 <Profpatsch> so not good for a tight loop
2023-02-23 15:59:59 +0100 <gensyst> lol :: forall n. (KnownNat n) => IO Int Is there no way to somehow get n to be *known to be even* at compile-time?
2023-02-23 16:00:04 +0100 <gensyst> (or odd)
2023-02-23 16:00:33 +0100 <gensyst> (or positive)
2023-02-23 16:01:23 +0100 <geekosaur[m]> There's some plugins for that?
2023-02-23 16:02:47 +0100 <geekosaur[m]> https://hackage.haskell.org/package/ghc-typelits-natnormalise might help
2023-02-23 16:04:11 +0100 <int-e> :t \f xs -> map head . tail . scanr (\x ys -> f ys x : ys) [] xs
2023-02-23 16:04:12 +0100 <lambdabot> error:
2023-02-23 16:04:12 +0100 <lambdabot> • Couldn't match expected type ‘a1 -> [[b]]’
2023-02-23 16:04:12 +0100 <lambdabot> with actual type ‘[[a]]’
2023-02-23 16:04:35 +0100coot(~coot@213.134.171.3) (Quit: coot)
2023-02-23 16:05:31 +0100 <int-e> :t \f -> map head . tail . scanr (\x ys -> f ys x : ys) []
2023-02-23 16:05:32 +0100 <lambdabot> ([b] -> t -> b) -> [t] -> [b]
2023-02-23 16:07:04 +0100 <int-e> Guest11: ^ another idea extracting the result from the intermediate accumulators
2023-02-23 16:08:03 +0100razetime(~Thunderbi@117.254.35.250)
2023-02-23 16:13:39 +0100enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq)
2023-02-23 16:18:47 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2023-02-23 16:19:31 +0100npm_i_kurbus(~npm_i_kur@user/kurbus) (Quit: Client closed)
2023-02-23 16:20:59 +0100 <gensyst> geekosaur[m], https://dpaste.com/HNRL7BDUZ
2023-02-23 16:21:30 +0100 <gensyst> Any ideas why that doesn't compile? If n-1 >= 0 then n should be known to be n >= 1 and so head should work right?
2023-02-23 16:21:35 +0100Guest86(~Guest86@104.28.217.149)
2023-02-23 16:21:38 +0100 <gensyst> but it can't deduce it correctly
2023-02-23 16:21:56 +0100Guest86(~Guest86@104.28.217.149) (Client Quit)
2023-02-23 16:23:49 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-02-23 16:24:14 +0100 <geekosaur[m]> Nope, sorry
2023-02-23 16:24:40 +0100 <geekosaur[m]> I know a little about type level but not much
2023-02-23 16:25:15 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-02-23 16:25:18 +0100 <gensyst> geekosaur[m], ok np
2023-02-23 16:25:22 +0100 <gensyst> geekosaur[m], https://hackage.haskell.org/package/ghc-typelits-knownnat-0.1/docs/GHC-TypeLits-KnownNat-Solver.html
2023-02-23 16:25:36 +0100 <gensyst> looks like it's a documented limitation: "it cannot derive a KnownNat (n-1) constraint..."
2023-02-23 16:26:24 +0100 <gensyst> A bit of a bummer because now I have to pass in @0 to functions even if it's actually using @(0+1) somewhere inside of the function.
2023-02-23 16:26:40 +0100 <gensyst> so I'm passing @0 sometimes and @1 other times (where the internals of the function don't require positive)
2023-02-23 16:26:42 +0100 <gensyst> a bit PITA
2023-02-23 16:28:33 +0100 <geekosaur[m]> Type level in Haskell is still very limited
2023-02-23 16:34:23 +0100CiaoSen(~Jura@p200300c9570460002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2023-02-23 16:36:19 +0100phma(phma@2001:5b0:210d:d318:8379:59cc:8734:cbbf) (Read error: Connection reset by peer)
2023-02-23 16:37:15 +0100phma(~phma@2001:5b0:210f:1b68:9877:7811:57cc:eba)
2023-02-23 16:43:51 +0100waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-02-23 16:44:08 +0100bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-02-23 16:48:00 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi)
2023-02-23 16:51:44 +0100califax(~califax@user/califx) (Remote host closed the connection)
2023-02-23 16:54:50 +0100califax(~califax@user/califx)
2023-02-23 16:56:55 +0100sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-02-23 16:57:10 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 16:58:02 +0100sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-02-23 16:59:56 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 17:02:56 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2023-02-23 17:04:52 +0100ph88(~ph88@91.66.101.83)
2023-02-23 17:08:29 +0100Lycurgus(~juan@user/Lycurgus)
2023-02-23 17:08:36 +0100razetime(~Thunderbi@117.254.35.250) (Remote host closed the connection)
2023-02-23 17:08:51 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-02-23 17:14:00 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:17db:85dd:46c2:dc12) (Quit: WeeChat 2.8)
2023-02-23 17:17:29 +0100Guest73(~Guest73@host86-157-132-203.range86-157.btcentralplus.com) (Quit: Ping timeout (120 seconds))
2023-02-23 17:19:01 +0100mcglk(~mcglk@131.191.19.145) (Read error: Connection reset by peer)
2023-02-23 17:23:07 +0100slack1256(~slack1256@186.11.53.84)
2023-02-23 17:24:40 +0100varoo(~varoo@117.203.246.41)
2023-02-23 17:29:25 +0100npm_i_kurbus(~npm_i_kur@user/kurbus)
2023-02-23 17:34:38 +0100__monty__(~toonn@user/toonn)
2023-02-23 17:37:32 +0100jakalx(~jakalx@base.jakalx.net) ()
2023-02-23 17:39:40 +0100sefidel(~sefidel@user/sefidel) (Remote host closed the connection)
2023-02-23 17:40:02 +0100chele(~chele@user/chele) (Remote host closed the connection)
2023-02-23 17:40:15 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2023-02-23 17:41:50 +0100sefidel(~sefidel@user/sefidel)
2023-02-23 17:43:19 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-02-23 17:45:37 +0100Square(~Square4@user/square) (Ping timeout: 252 seconds)
2023-02-23 17:48:38 +0100Guest11(~Guest11@c83-251-160-169.bredband.tele2.se) (Quit: Client closed)
2023-02-23 17:49:45 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-02-23 17:51:55 +0100son0p(~ff@181.136.122.143) (Ping timeout: 248 seconds)
2023-02-23 17:53:42 +0100mbuf(~Shakthi@49.205.82.4)
2023-02-23 17:58:14 +0100Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz)
2023-02-23 17:58:52 +0100Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2023-02-23 17:58:54 +0100teo(~teo@user/teo) (Ping timeout: 268 seconds)
2023-02-23 17:59:14 +0100 <eldritchcookie[m> how many tests does quickcheck do normally?
2023-02-23 18:02:00 +0100Sgeo(~Sgeo@user/sgeo)
2023-02-23 18:02:48 +0100varoo(~varoo@117.203.246.41) (Ping timeout: 252 seconds)
2023-02-23 18:05:03 +0100 <c_wraith> I believe that the default is 100 cases per test
2023-02-23 18:05:27 +0100 <c_wraith> It used to (I haven't used it in a while) tell you how many total cases it ran
2023-02-23 18:05:30 +0100Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 246 seconds)
2023-02-23 18:06:16 +0100Joao003(~Joao003@2804:840:830c:fe00:d144:3c9d:1842:5b7c)
2023-02-23 18:06:47 +0100varoo(~varoo@117.203.246.41)
2023-02-23 18:07:43 +0100 <int-e> @check \n -> (n `mod` 100 == 0) ==> True
2023-02-23 18:07:45 +0100 <lambdabot> *** Gave up! Passed only 34 tests.
2023-02-23 18:08:03 +0100 <eldritchcookie[m> does it run tests in parallel if i use tasty discover
2023-02-23 18:08:04 +0100 <eldritchcookie[m> ?
2023-02-23 18:09:12 +0100 <int-e> (QuickCheck has two bounds, one for how many tests results it wants (100 is the default) and another for how many input it tries for satisfying preconditions like that)
2023-02-23 18:09:48 +0100 <eldritchcookie[m> basically when i run my monadic test if the number is high it chokes but 10 is basically instantaneous like 100 should be fast
2023-02-23 18:10:53 +0100 <eldritchcookie[m> it does io so maybe my OS gets crazy with the number of simultaneous connections
2023-02-23 18:10:55 +0100 <Joao003> hey i just want to know the topic here
2023-02-23 18:11:35 +0100 <eldritchcookie[m> sure ask away
2023-02-23 18:12:15 +0100 <mauke> uh, it's in the topic
2023-02-23 18:12:22 +0100 <mauke> literally, /topic
2023-02-23 18:12:26 +0100 <Joao003> lol
2023-02-23 18:13:01 +0100 <Joao003> so i can ask anything here?
2023-02-23 18:13:32 +0100 <eldritchcookie[m> about haskell probably
2023-02-23 18:13:37 +0100 <mauke> is it related to haskell?
2023-02-23 18:13:53 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 18:16:46 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2023-02-23 18:17:39 +0100 <Joao003> how do i make a simple parser
2023-02-23 18:17:59 +0100 <eldritchcookie[m> Megaparsec has a nice tutorial
2023-02-23 18:18:21 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 265 seconds)
2023-02-23 18:18:38 +0100 <Joao003> link?
2023-02-23 18:18:47 +0100 <eldritchcookie[m> https://hackage.haskell.org/package/megaparsec-9.3.0#tutorials
2023-02-23 18:18:47 +0100 <eldritchcookie[m> https://markkarpov.com/tutorial/megaparsec.html
2023-02-23 18:19:34 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 18:19:38 +0100 <eldritchcookie[m> i have a quickcheck test that does IO, when i run with 10 it runs fine but it hangs forever with 100 how can i limit the number of simultaneous test to a reasonable level?
2023-02-23 18:20:16 +0100 <eldritchcookie[m> i am using tasty discover
2023-02-23 18:21:12 +0100mechap(~mechap@user/mechap)
2023-02-23 18:21:41 +0100 <davean> eldritchcookie[m: can you pastebin some code? Its unlikely simultaneousness is the problem.
2023-02-23 18:23:08 +0100 <eldritchcookie[m> sure which site do i use?
2023-02-23 18:23:20 +0100mbuf(~Shakthi@49.205.82.4) (Quit: Leaving)
2023-02-23 18:23:35 +0100 <eldritchcookie[m> https://play-haskell.tomsmeding.com/saved/uSnyxS3P
2023-02-23 18:25:11 +0100 <eldritchcookie[m> https://play-haskell.tomsmeding.com/saved/5aUCQtNz
2023-02-23 18:25:24 +0100 <eldritchcookie[m> if i run with more than 20 tests it sometimes hang
2023-02-23 18:28:48 +0100 <eldritchcookie[m> and more than 30 it always hangs
2023-02-23 18:29:02 +0100 <eldritchcookie[m> do you prefer my link to the github repo?
2023-02-23 18:29:13 +0100 <eldritchcookie[m> https://github.com/dark-ether/socket-effectful.git
2023-02-23 18:30:54 +0100 <eldritchcookie[m> when i ran strace it spewed EAGAIN errors that are catched automatically
2023-02-23 18:30:59 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Read error: Connection reset by peer)
2023-02-23 18:31:18 +0100Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2023-02-23 18:32:34 +0100 <eldritchcookie[m> now it is Spewing EInterrupted
2023-02-23 18:33:19 +0100comerijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 18:33:25 +0100 <eldritchcookie[m> hello?
2023-02-23 18:34:32 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Ping timeout: 246 seconds)
2023-02-23 18:36:11 +0100merijn(~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 264 seconds)
2023-02-23 18:36:30 +0100MajorBiscuit(~MajorBisc@c-001-011-016.client.tudelft.eduvpn.nl) (Quit: WeeChat 3.6)
2023-02-23 18:37:50 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-02-23 18:38:52 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-02-23 18:39:06 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f)
2023-02-23 18:42:50 +0100Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 255 seconds)
2023-02-23 18:47:32 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2023-02-23 18:47:57 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2023-02-23 18:48:29 +0100jakalx(~jakalx@base.jakalx.net)
2023-02-23 18:53:24 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 18:56:00 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2023-02-23 18:57:59 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 265 seconds)
2023-02-23 18:58:24 +0100econo(uid147250@user/econo)
2023-02-23 19:03:28 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 19:06:57 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-02-23 19:08:08 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 265 seconds)
2023-02-23 19:09:33 +0100mei(~mei@user/mei) (Remote host closed the connection)
2023-02-23 19:10:17 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 19:11:53 +0100mei(~mei@user/mei)
2023-02-23 19:14:27 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 246 seconds)
2023-02-23 19:15:48 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2023-02-23 19:18:31 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 19:18:39 +0100akegalj(~akegalj@89-164-77-5.dsl.iskon.hr) (Ping timeout: 246 seconds)
2023-02-23 19:19:04 +0100akegalj(~akegalj@89-164-77-5.dsl.iskon.hr)
2023-02-23 19:21:25 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f) (Remote host closed the connection)
2023-02-23 19:21:56 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-02-23 19:22:03 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-02-23 19:22:55 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 248 seconds)
2023-02-23 19:23:23 +0100 <Joao003> how do i do this
2023-02-23 19:23:42 +0100 <eldritchcookie[m> do what?
2023-02-23 19:23:55 +0100 <Joao003> `f 3` -> `\x -> (\y -> (\z -> whatever))`
2023-02-23 19:24:02 +0100 <Joao003> basically that
2023-02-23 19:24:16 +0100 <eldritchcookie[m> i think i need more context
2023-02-23 19:25:00 +0100 <Joao003> basically i have a function which takes a number and it returns a function which takes that many arguments
2023-02-23 19:25:07 +0100 <int-e> In Haskell, the starting question will be "what's the type of f?"
2023-02-23 19:25:36 +0100 <eldritchcookie[m> yeah does it have 4 -> in the type?
2023-02-23 19:26:28 +0100 <int-e> Relatedly, how would you use `f`?
2023-02-23 19:27:05 +0100 <Joao003> if a function can take variable arguments for example
2023-02-23 19:27:13 +0100 <eldritchcookie[m> now i get it you would need a typeclass
2023-02-23 19:27:18 +0100 <Joao003> ok
2023-02-23 19:27:56 +0100 <eldritchcookie[m> you want a variadic function, the only way to do that is have a function of type _ -> myTypeClass r
2023-02-23 19:28:11 +0100 <eldritchcookie[m> and then you return either a function or a value
2023-02-23 19:28:19 +0100 <Joao003> how do implement the typeclass
2023-02-23 19:29:06 +0100 <eldritchcookie[m> https://stackoverflow.com/questions/3467279/how-to-create-a-polyvariadic-haskell-function
2023-02-23 19:29:32 +0100 <eldritchcookie[m> https://okmij.org/ftp/Haskell/polyvariadic.html#polyvar-fn
2023-02-23 19:29:43 +0100 <int-e> I think the chance that you actually want any of this is very low.
2023-02-23 19:29:58 +0100 <eldritchcookie[m> yeah i agree
2023-02-23 19:30:22 +0100 <eldritchcookie[m> why not have the function take alist of the type you want to accept that is significantly easier
2023-02-23 19:30:51 +0100 <Joao003> mhmhmh
2023-02-23 19:33:29 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 19:33:42 +0100akegalj(~akegalj@89-164-77-5.dsl.iskon.hr) (Ping timeout: 246 seconds)
2023-02-23 19:37:50 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 246 seconds)
2023-02-23 19:37:59 +0100kilolympus(~kilolympu@213.144.144.24)
2023-02-23 19:39:30 +0100ubert(~Thunderbi@2a02:8109:abc0:6434:348c:e1b0:cafe:8da3) (Remote host closed the connection)
2023-02-23 19:39:30 +0100gensyst(gensyst@user/gensyst) (Quit: Leaving)
2023-02-23 19:41:37 +0100 <Joao003> oh
2023-02-23 19:41:43 +0100 <Joao003> kthxbai
2023-02-23 19:43:43 +0100comerijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds)
2023-02-23 19:52:30 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2023-02-23 20:01:53 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 20:03:21 +0100son0p(~ff@181.136.122.143)
2023-02-23 20:05:44 +0100mcglk(~mcglk@131.191.19.145)
2023-02-23 20:07:30 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2023-02-23 20:07:30 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2023-02-23 20:07:33 +0100allbery_bgeekosaur
2023-02-23 20:11:05 +0100Guest11(~Guest11@c83-251-160-169.bredband.tele2.se)
2023-02-23 20:11:23 +0100Guest11(~Guest11@c83-251-160-169.bredband.tele2.se) (Client Quit)
2023-02-23 20:16:17 +0100Joao003(~Joao003@2804:840:830c:fe00:d144:3c9d:1842:5b7c) (Quit: Leaving)
2023-02-23 20:20:44 +0100opticblast(~Thunderbi@172.58.84.5)
2023-02-23 20:21:55 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f)
2023-02-23 20:22:14 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 20:25:22 +0100Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2023-02-23 20:26:20 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f) (Ping timeout: 255 seconds)
2023-02-23 20:26:35 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 248 seconds)
2023-02-23 20:27:34 +0100mima(~mmh@ppp-212-114-180-143.dynamic.mnet-online.de)
2023-02-23 20:28:02 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-02-23 20:28:35 +0100analoq(~yashi@user/dies) (Ping timeout: 255 seconds)
2023-02-23 20:30:14 +0100analoq(~yashi@user/dies)
2023-02-23 20:31:51 +0100npm_i_kurbus(~npm_i_kur@user/kurbus) (Quit: Client closed)
2023-02-23 20:33:51 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 20:35:21 +0100dcoutts_(~duncan@82.15.57.30) (Ping timeout: 252 seconds)
2023-02-23 20:35:50 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2023-02-23 20:39:59 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f)
2023-02-23 20:40:55 +0100npm_i_kurbus(~npm_i_kur@user/kurbus)
2023-02-23 20:41:40 +0100cheater__(~Username@user/cheater)
2023-02-23 20:44:31 +0100cheater(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-02-23 20:44:35 +0100cheater__cheater
2023-02-23 20:44:53 +0100varoo_(~varoo@2a09:bac1:36e0:5f70::243:20)
2023-02-23 20:48:33 +0100varoo(~varoo@117.203.246.41) (Ping timeout: 252 seconds)
2023-02-23 20:48:48 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 20:49:29 +0100thegeekinside(~thegeekin@189.180.66.126) (Remote host closed the connection)
2023-02-23 20:51:34 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 265 seconds)
2023-02-23 20:53:52 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 246 seconds)
2023-02-23 20:54:02 +0100slack1256(~slack1256@186.11.53.84) (Ping timeout: 252 seconds)
2023-02-23 20:55:45 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2023-02-23 20:56:02 +0100trev(~trev@user/trev) (Remote host closed the connection)
2023-02-23 20:56:23 +0100trev(~trev@user/trev)
2023-02-23 20:56:34 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 20:56:36 +0100bitmapper(uid464869@id-464869.lymington.irccloud.com)
2023-02-23 21:00:20 +0100ft(~ft@p3e9bc443.dip0.t-ipconnect.de)
2023-02-23 21:00:23 +0100varoo(~varoo@2a09:bac1:3680:5f70::ca:a5)
2023-02-23 21:01:45 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-02-23 21:02:07 +0100varoo_(~varoo@2a09:bac1:36e0:5f70::243:20) (Ping timeout: 248 seconds)
2023-02-23 21:03:40 +0100azure_vermilion(~azure_ver@164.39.138.83) (Ping timeout: 246 seconds)
2023-02-23 21:04:04 +0100azure_vermilion(~azure_ver@82-132-232-3.dab.02.net)
2023-02-23 21:04:35 +0100zer0bitz_(~zer0bitz@2001:2003:f443:d600:d5ec:7b37:9a2a:efdd)
2023-02-23 21:08:13 +0100zer0bitz(~zer0bitz@2001:2003:f443:d600:74f8:d485:92d1:ab7d) (Ping timeout: 246 seconds)
2023-02-23 21:14:37 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 21:16:03 +0100captnemo(~captnemo@193.32.127.226)
2023-02-23 21:19:34 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2023-02-23 21:21:01 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 21:22:36 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:311d:9400:2604:4e0f) (Remote host closed the connection)
2023-02-23 21:23:30 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2023-02-23 21:26:18 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2023-02-23 21:26:56 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2023-02-23 21:28:26 +0100slack1256(~slack1256@186.11.53.84)
2023-02-23 21:31:18 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 246 seconds)
2023-02-23 21:31:55 +0100 <eldritchcookie[m> anyone online?
2023-02-23 21:32:32 +0100 <geekosaur> Any {getAny = True}
2023-02-23 21:32:58 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 21:34:06 +0100slack1256(~slack1256@186.11.53.84) (Ping timeout: 246 seconds)
2023-02-23 21:34:57 +0100 <anatta> I'm always online
2023-02-23 21:35:02 +0100 <anatta> except when I'm not online
2023-02-23 21:35:07 +0100 <anatta> then I'm not online
2023-02-23 21:37:01 +0100 <eldritchcookie[m> cool, does quickcheck do anything weird when having monadic tests?
2023-02-23 21:37:14 +0100 <captnemo> anatta: same
2023-02-23 21:37:20 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 248 seconds)
2023-02-23 21:38:07 +0100npm_i_kurbus(~npm_i_kur@user/kurbus) (Quit: Client closed)
2023-02-23 21:38:22 +0100captnemo(~captnemo@193.32.127.226) (Quit: WeeChat 3.8)
2023-02-23 21:43:51 +0100 <geekosaur> online as much as possible but not always at the keyboard 🙂
2023-02-23 21:53:01 +0100Square(~Square4@user/square)
2023-02-23 21:56:23 +0100pavonia(~user@user/siracusa)
2023-02-23 22:01:42 +0100phma(~phma@2001:5b0:210f:1b68:9877:7811:57cc:eba) (Read error: Connection reset by peer)
2023-02-23 22:03:23 +0100phma(~phma@host-67-44-208-35.hnremote.net)
2023-02-23 22:06:01 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 22:06:58 +0100varoo(~varoo@2a09:bac1:3680:5f70::ca:a5) (Remote host closed the connection)
2023-02-23 22:07:22 +0100varoo(~varoo@2a09:bac1:3680:5f70::ca:a5)
2023-02-23 22:08:28 +0100 <anatta> eldritchcookie[m: I'm not very good at using quickcheck, but isn't there a quickcheck.monadic or something?
2023-02-23 22:09:31 +0100 <eldritchcookie[m> basically i was testing my wrapper around the socket library and when i ran it with more than 25 successes required it just hung forever, this doesn't happenif i compile with -threaded
2023-02-23 22:09:57 +0100talismanick(~talismani@c-98-238-242-189.hsd1.ca.comcast.net)
2023-02-23 22:10:47 +0100Sciencentistguy4(~sciencent@hacksoc/ordinary-member)
2023-02-23 22:10:55 +0100 <eldritchcookie[m> i tested only the socket library alone and it seems to work even with a action that is basically the same as my quickcheck test
2023-02-23 22:12:53 +0100Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 252 seconds)
2023-02-23 22:12:53 +0100Sciencentistguy4Sciencentistguy
2023-02-23 22:17:27 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 22:20:23 +0100lyle(~lyle@104.246.145.237) (Quit: WeeChat 3.8)
2023-02-23 22:21:19 +0100 <eldritchcookie[m> ok with profiling i see that it hangs on the hSupportANSI family of functions
2023-02-23 22:21:25 +0100 <eldritchcookie[m> that make no sense
2023-02-23 22:23:06 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-02-23 22:23:55 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 248 seconds)
2023-02-23 22:26:52 +0100dcoutts_(~duncan@cpc69403-oxfd27-2-0-cust285.4-3.cable.virginm.net)
2023-02-23 22:27:30 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds)
2023-02-23 22:30:07 +0100ubert(~Thunderbi@p200300ecdf1f1efb237106c089344746.dip0.t-ipconnect.de)
2023-02-23 22:35:29 +0100varoo(~varoo@2a09:bac1:3680:5f70::ca:a5) (Ping timeout: 255 seconds)
2023-02-23 22:37:29 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 22:39:39 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds)
2023-02-23 22:46:28 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 252 seconds)
2023-02-23 22:47:17 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-02-23 22:47:52 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2023-02-23 22:48:12 +0100opticblast(~Thunderbi@172.58.84.5) (Quit: opticblast)
2023-02-23 22:48:34 +0100opticblast(~Thunderbi@172.58.82.191)
2023-02-23 22:48:56 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 22:52:51 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77)
2023-02-23 22:52:51 +0100 <ddellacosta> eldritchcookie[m: I think e.g. HUnit and HSpec both check assertions in what is essentially the IO monad so I think it's more about what you're trying to do. I'll add, testing anything that involves threading means you then have to concern yourself with how tests are run--I'm thinking of tasty in particular which will automatically try to parallelize tests if threading is on so you have to ensure
2023-02-23 22:52:53 +0100 <ddellacosta> that your code-under-test can be safely run that way
2023-02-23 22:56:47 +0100zeenk(~zeenk@2a02:2f04:a214:1e00::7fe)
2023-02-23 22:56:50 +0100 <ddellacosta> yeah I guess quickcheck is doing something similar wrt running tests in IO
2023-02-23 22:57:05 +0100Morrow(~Morrow@2a10:8012:9:53cf:4c47:864e:8181:4f77) (Ping timeout: 255 seconds)
2023-02-23 22:58:49 +0100 <eldritchcookie[m> i am using tasty, could it be trying to run too many tests at once and then running into a system limit or something similar?
2023-02-23 22:59:26 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-02-23 23:01:43 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 23:03:03 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-02-23 23:05:57 +0100 <ddellacosta> I'd be surprised if it where that, I think the number of threads is automatically pegged at cpus or something like that
2023-02-23 23:06:25 +0100 <[Leary]> eldritchcookie[m: Just compile with -threaded. The single-threaded runtime has known issues with hangs and deadlocks in concurrency---see this GHC proposal <https://github.com/ulysses4ever/ghc-proposals/blob/master/proposals/0000-threaded-by-default.rst> for some detail on that.
2023-02-23 23:08:40 +0100jarkad(~u@188.163.45.157) (Remote host closed the connection)
2023-02-23 23:09:08 +0100justsomeguy(~justsomeg@user/justsomeguy)
2023-02-23 23:09:56 +0100jarkad(~u@188.163.45.157)
2023-02-23 23:10:03 +0100WzC(~Frank@77-162-168-71.fixed.kpn.net)
2023-02-23 23:10:36 +0100talismanick(~talismani@c-98-238-242-189.hsd1.ca.comcast.net) (Ping timeout: 255 seconds)
2023-02-23 23:10:49 +0100lambdabot(~lambdabot@haskell/bot/lambdabot) (Ping timeout: 252 seconds)
2023-02-23 23:10:51 +0100mniip(mniip@libera/staff/mniip)
2023-02-23 23:12:09 +0100 <geekosaur> I pointed that out over matrix-side
2023-02-23 23:12:10 +0100Noinia(~Frank@77-162-168-71.fixed.kpn.net) (Ping timeout: 268 seconds)
2023-02-23 23:12:31 +0100lambdabot(~lambdabot@silicon.int-e.eu)
2023-02-23 23:12:31 +0100lambdabot(~lambdabot@silicon.int-e.eu) (Changing host)
2023-02-23 23:12:31 +0100lambdabot(~lambdabot@haskell/bot/lambdabot)
2023-02-23 23:12:39 +0100 <geekosaur> it works fine with -threaded, apparently, but is freezing with the single threaded runtime
2023-02-23 23:14:34 +0100michalz(~michalz@185.246.207.221) (Remote host closed the connection)
2023-02-23 23:14:44 +0100mniip_(mniip@libera/staff/mniip) (Read error: Connection reset by peer)
2023-02-23 23:19:00 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in)
2023-02-23 23:19:31 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 23:23:58 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-02-23 23:24:01 +0100mei(~mei@user/mei) (Ping timeout: 246 seconds)
2023-02-23 23:24:01 +0100dolio(~dolio@130.44.134.54) (Ping timeout: 252 seconds)
2023-02-23 23:24:04 +0100 <geekosaur> and seriously, if that happens the rts is probably the first place to look; this should be invisible to programs aside from latency
2023-02-23 23:26:33 +0100cheater_(~Username@user/cheater)
2023-02-23 23:29:08 +0100cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2023-02-23 23:29:18 +0100cheater_cheater
2023-02-23 23:34:01 +0100biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2023-02-23 23:35:53 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-02-23 23:36:56 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2023-02-23 23:36:59 +0100dolio(~dolio@130.44.134.54)
2023-02-23 23:39:51 +0100biberu(~biberu@user/biberu)
2023-02-23 23:42:40 +0100analoq(~yashi@user/dies) (Ping timeout: 265 seconds)
2023-02-23 23:43:22 +0100analoq(~yashi@user/dies)
2023-02-23 23:48:27 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Read error: Connection reset by peer)
2023-02-23 23:51:18 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-02-23 23:53:27 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-02-23 23:53:37 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-02-23 23:54:14 +0100thegeekinside(~thegeekin@189.180.66.126)
2023-02-23 23:59:30 +0100trev(~trev@user/trev) (Remote host closed the connection)