2021/02/11

2021-02-11 00:00:11 +0100Tops22(~Tobias@dyndsl-091-249-082-219.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2021-02-11 00:00:19 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber)
2021-02-11 00:00:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 00:05:38 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh) (Quit: Leaving)
2021-02-11 00:06:05 +0100carlomagno(~cararell@148.87.23.11) (Ping timeout: 240 seconds)
2021-02-11 00:08:19 +0100carlomagno(~cararell@148.87.23.11)
2021-02-11 00:12:40 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 00:14:54 +0100 <Axman6> slack1256: have you tried infinite = {-# NOINLINE infinite #-} 1 : 1 : zipWith (+) infinite (tail infinite)?
2021-02-11 00:15:11 +0100fendor(~fendor@178.165.131.10.wireless.dyn.drei.com) (Remote host closed the connection)
2021-02-11 00:15:19 +0100 <slack1256> Axman6: Give me a sec to try.
2021-02-11 00:16:58 +0100 <slack1256> I think moving that NOINLINE pragma inside the expression is illegal.
2021-02-11 00:17:16 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 00:17:52 +0100 <Axman6> uh, sorry, I misrtead and thought it was the SSC, move the SSC in there
2021-02-11 00:18:03 +0100conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-02-11 00:18:06 +0100 <slack1256> Will try.
2021-02-11 00:18:36 +0100 <dolio> Yeah, I think your `infinteRef` SCC is just surrounding the occurence of the variable, which isn't allocating anything.
2021-02-11 00:18:59 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 00:19:57 +0100 <slack1256> Axman6: I did as you said, now it really reports allocated memory. Thank you!
2021-02-11 00:22:05 +0100 <slack1256> dolio: I think you are right. But I would have thought that to evaluate `infinite` you would had to first pass through `infiniteRef` and that at least cumulative allocation would be reported.
2021-02-11 00:22:35 +0100Guest_15(adad682f@cpe-173-173-104-47.satx.res.rr.com)
2021-02-11 00:22:36 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-02-11 00:23:10 +0100 <Guest_15> I just sh into Haskell on my Mac. I am very new to Haskell. How do I create a new file ?
2021-02-11 00:24:36 +0100 <dolio> slack1256: I think it doesn't work that way. Like, if you do `\x -> f ({-# SCC "hello" #-} x)`, it's not going to wrap the value that function gets in an extra SCC.
2021-02-11 00:24:49 +0100 <jared-w> koz_: yeah I managed to fix it. Took a second to figure out everything that was wrong. The transient errors seem to have been caused by the caching being "too good" (but the cache hit wasn't breaking cabal build, it was breaking the cabal-docspec). Just a guess though
2021-02-11 00:25:03 +0100 <koz_> jared-w: Thanks so much!
2021-02-11 00:25:15 +0100 <koz_> I'll merge that once I'm done with the work I'm doing. You've saved me hours if not days of headaches.
2021-02-11 00:25:30 +0100 <__minoru__shirae> slack1256: how do you monitor memory allocation?
2021-02-11 00:25:39 +0100 <jared-w> koz_: np :)
2021-02-11 00:25:51 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-02-11 00:25:52 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:f917:edc:2196:d8f9) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 00:26:08 +0100Guest_15(adad682f@cpe-173-173-104-47.satx.res.rr.com) (Client Quit)
2021-02-11 00:26:08 +0100 <koz_> What's with the 'env' thing in the cache action?
2021-02-11 00:26:15 +0100 <slack1256> dolio: I seem to have a wrong idea on how SCC are stacked.
2021-02-11 00:26:40 +0100 <jared-w> https://github.com/kozross/text-ascii/pull/13/files#diff-c09cc8dc973415b1221308559b96942a1c4b872e6… this was a pain and a half to figure out. Best as I can figure out, there's a bug somewhere buried in cabal-docspec's handling of ghc and paths where someone commented that it only worked if they used `-w ghc` rather than `-w /path/to/ghc` so... *shrug*
2021-02-11 00:26:54 +0100Feuermagier(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6) (Read error: Connection reset by peer)
2021-02-11 00:26:57 +0100 <slack1256> __minoru__shirae: I could do a half-assed explanation, but the ghc user guide is really good in this aspect. https://ghc.gitlab.haskell.org/ghc/doc/users_guide/profiling.html
2021-02-11 00:26:58 +0100 <koz_> Wow, that's... actually hostile.
2021-02-11 00:27:00 +0100 <dolio> I mean, it could do that, but it's kind of an odd thing to do, really.
2021-02-11 00:27:21 +0100Feuermagier(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6)
2021-02-11 00:27:40 +0100 <koz_> jared-w: One of us (likely you since you understand it) should likely open an issue on the cabal-extras repo.
2021-02-11 00:27:46 +0100 <jared-w> koz_: that lets you increment the number and blow the cache without having to change the file 3 times to do so. Just in case you ever run into some obscure "macOS dylib stuff broke i guezz? lol"
2021-02-11 00:27:48 +0100 <koz_> Since that's something that ought to be yelled from the rooftops.
2021-02-11 00:27:55 +0100 <koz_> Ah, OK, useful.
2021-02-11 00:28:02 +0100conal(~conal@64.71.133.70)
2021-02-11 00:28:38 +0100 <jared-w> koz_: like this issue? https://github.com/phadej/cabal-extras/issues/19 :p
2021-02-11 00:28:39 +0100Franciman(~francesco@host-82-49-79-189.retail.telecomitalia.it) (Quit: Leaving)
2021-02-11 00:28:41 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 00:29:18 +0100 <koz_> jared-w: Interesting.
2021-02-11 00:29:32 +0100 <koz_> From a quick glance they're saying it's an issue with 'directory'?
2021-02-11 00:30:29 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2021-02-11 00:30:30 +0100Feuermagier_(~Feuermagi@213.178.26.41)
2021-02-11 00:30:40 +0100 <jared-w> I think so? Really hard to tell
2021-02-11 00:30:52 +0100 <dolio> slack1256: If you really wanted something like that, maybe `\x -> let y = {-# SCC "y" #-} x; {-# noinline y #-} in f y` would work, because the let actually builds a closure.
2021-02-11 00:31:01 +0100 <koz_> Well, anyways, thanks so much for this!
2021-02-11 00:31:18 +0100 <jared-w> np! Have a good one :)
2021-02-11 00:31:18 +0100 <dolio> As long as the let doesn't disappear for being too trivial.
2021-02-11 00:33:38 +0100Feuermagier(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6) (Ping timeout: 264 seconds)
2021-02-11 00:35:19 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 256 seconds)
2021-02-11 00:35:36 +0100finn_elija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Remote host closed the connection)
2021-02-11 00:36:33 +0100Tario(~Tario@201.192.165.173)
2021-02-11 00:39:08 +0100FinnElija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-02-11 00:39:08 +0100FinnElijafinn_elija
2021-02-11 00:39:14 +0100usr25(~usr25@unaffiliated/usr25) (Quit: Leaving)
2021-02-11 00:39:15 +0100 <slack1256> dolio: so the idea is that it has to be a closure so the SCC is stacked. That would make sense on why it didn't work the first time.
2021-02-11 00:40:16 +0100 <dolio> slack1256: Anyhow, the reason I would say your original idea shouldn't work is that a variable occurrence doesn't have a cost. So if you could just put an SCC on a variable occurrence, keeping track of that would mean that an SCC is introducing allocation.
2021-02-11 00:41:20 +0100 <slack1256> dolio: Seems reasonable. Thank you.
2021-02-11 00:41:25 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds)
2021-02-11 00:42:03 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2021-02-11 00:43:19 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Read error: Connection reset by peer)
2021-02-11 00:44:57 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2021-02-11 00:47:50 +0100 <Axman6> what's the name for functions which are defined with multiple definitions; foo Nothing = ... ; foo (Just a) = .... instead of foo a = case a of ...
2021-02-11 00:48:02 +0100 <Axman6> just multiple definiton functions?
2021-02-11 00:48:40 +0100alx741(~alx741@186.178.110.250)
2021-02-11 00:48:59 +0100 <swarmcollective> Axman6, I've not heard a name, but I've heard that referred to as pattern matched.
2021-02-11 00:49:17 +0100 <Axman6> both are using pattern matching, but the former is syntax sugar for the latter
2021-02-11 00:49:19 +0100 <swarmcollective> Though, pattern matching is, of course, used in many scenarios.
2021-02-11 00:50:57 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 264 seconds)
2021-02-11 00:51:00 +0100 <swarmcollective> In other languages, I believe the term would be "overloaded"
2021-02-11 00:51:21 +0100 <dolio> Multi-clause?
2021-02-11 00:52:34 +0100 <swarmcollective> It wouldn't be terrible if Haskell supported overloaded functions (functions with the same name accepting different quantity / order of parameters, but as with most things, someone / people would find a way to make it terrible. :D
2021-02-11 00:52:53 +0100 <swarmcollective> +) somewhere in there
2021-02-11 00:53:03 +0100 <Axman6> swarmcollective: what would the tyype of a function which does that look like though?
2021-02-11 00:53:18 +0100 <dolio> Pattern matching on the left is not the same as overloading.
2021-02-11 00:53:54 +0100 <hpc> swarmcollective: check out printf for a very limited example of this
2021-02-11 00:54:02 +0100 <Axman6> erlang has a notion of functions also having their arity as part of the identity, createUSer/2 and createUser/3 are different
2021-02-11 00:54:17 +0100 <Axman6> but who cares about types at that point
2021-02-11 00:54:27 +0100 <dibblego> Axman6 ♥ Erlang
2021-02-11 00:54:57 +0100 <__minoru__shirae> I think you can simulate overloaded functions by writing dummy entities, or maybe not
2021-02-11 00:55:07 +0100 <ephemient> what is the arity of `id`?
2021-02-11 00:55:12 +0100 <Axman6> dummy entities?
2021-02-11 00:55:23 +0100 <Axman6> ephemient: the same as all functions, 1
2021-02-11 00:55:25 +0100 <ephemient> id a, id a b, id a b c, id a b c d, etc. can all be valid
2021-02-11 00:55:29 +0100slack1256TIL: about those numbers on erlang.
2021-02-11 00:55:32 +0100Axman6beat dibblego to it
2021-02-11 00:55:42 +0100conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-02-11 00:56:03 +0100 <jle`> (id negate) 3 = negate 3 = -3
2021-02-11 00:56:08 +0100 <dolio> Logic programming languages tend to have that sort of thing, too.
2021-02-11 00:56:13 +0100 <jle`> its arity is 1 like all functions, but it can return functions
2021-02-11 00:56:38 +0100 <jle`> id negate = negate
2021-02-11 00:56:56 +0100 <__minoru__shirae> Axman6, imagine prepending function with some name, and then distinguishing overloaded functions by different names that you prepend. Not sure if it's possible in haskell.
2021-02-11 00:57:00 +0100 <jle`> (id a) b c d = a b c d
2021-02-11 00:57:07 +0100 <swarmcollective> Axman6, The chain of updateState functions in this: https://github.com/calledtoconstruct/lambdabot/blob/patches/lambdabot-dashboard-plugins/src/Lambda…
2021-02-11 00:57:22 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 00:57:28 +0100 <dolio> __minoru__shirae: Like qualified imports? :)
2021-02-11 00:57:36 +0100 <cheater> swarmcollective: haskell already has overloaded functions. if you want f to take Either an Int or a Float, then make f :: Either Int Float
2021-02-11 00:57:37 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu)
2021-02-11 00:57:53 +0100 <ephemient> I mean, GHC does keep track of how many unapplied arguments there are to a function, so in that sense there is an arity
2021-02-11 00:57:59 +0100 <__minoru__shirae> dolio, yeah, something like that
2021-02-11 00:58:02 +0100vicfred_(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-02-11 00:58:08 +0100 <swarmcollective> cheater, but does it allow for a different number of arguments?
2021-02-11 00:58:18 +0100 <ephemient> but id a = a and id = \a -> a would count differently
2021-02-11 00:58:37 +0100 <cheater> swarmcollective: sure. f :: Either (Int, Int) (Float, Float, Float)
2021-02-11 00:58:39 +0100 <Axman6> swarmcollective: look at Text.Printf
2021-02-11 00:58:43 +0100 <Axman6> :t printf
2021-02-11 00:58:44 +0100 <lambdabot> PrintfType r => String -> r
2021-02-11 00:58:48 +0100 <hpc> fun fact, they're already different with respect to the monomorphism restriction
2021-02-11 00:58:49 +0100 <cheater> well...
2021-02-11 00:58:54 +0100 <swarmcollective> Ahhh! I see now. ;)
2021-02-11 00:58:59 +0100 <cheater> someone forgot to add -> Int
2021-02-11 00:59:01 +0100 <cheater> like me
2021-02-11 00:59:07 +0100 <Axman6> > printf "%d %f %s" 1 pi "Hello"
2021-02-11 00:59:09 +0100 <lambdabot> error:
2021-02-11 00:59:09 +0100 <lambdabot> • Ambiguous type variable ‘a0’ arising from a use of ‘show_M149988900225...
2021-02-11 00:59:09 +0100 <lambdabot> prevents the constraint ‘(Show a0)’ from being solved.
2021-02-11 00:59:14 +0100 <cheater> f :: Either (Int, Int) (Float, Float, Float) -> Int
2021-02-11 00:59:22 +0100 <ephemient> > printf "%d %f %s" 1 pi "Hello" :: String
2021-02-11 00:59:23 +0100 <lambdabot> "1 3.141592653589793 Hello"
2021-02-11 00:59:27 +0100 <Axman6> > printf "%d %f %s" (1::Int) (pi::Double) "Hello" :: String
2021-02-11 00:59:29 +0100 <lambdabot> "1 3.141592653589793 Hello"
2021-02-11 00:59:34 +0100 <jle`> ephemient: it sort of depends on what level you are asking the question on then; are you talking about the semanatics of what id denotes, or about how ghc treats it implementation-wise?
2021-02-11 01:00:01 +0100 <Axman6> > printf "%d %f %s, $s" (1::Int) (pi::Double) "Hello" "world!" :: String
2021-02-11 01:00:06 +0100 <lambdabot> "1 3.141592653589793 Hello, $s*Exception: printf: formatting string ended pr...
2021-02-11 01:00:15 +0100 <Axman6> > printf "%d %f %s, %s" (1::Int) (pi::Double) "Hello" "world!" :: String
2021-02-11 01:00:17 +0100 <lambdabot> "1 3.141592653589793 Hello, world!"
2021-02-11 01:00:46 +0100 <ephemient> originally I meant semantically. there is the number of arguments that the GHC implementation counts, but IMO it shouldn't be considered
2021-02-11 01:00:52 +0100conal(~conal@64.71.133.70)
2021-02-11 01:01:05 +0100 <Axman6> that's an implementation detail
2021-02-11 01:01:08 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl)
2021-02-11 01:01:30 +0100 <ski> swarmcollective : overloading would be something different
2021-02-11 01:01:32 +0100 <jle`> yeah, semantically i'd say it's single-argument; your example of (id a) b c d is really demonstrationg how a behaves (it's equal to a b c d) less so than how id behaves
2021-02-11 01:01:42 +0100soft-warm(4408f588@ip68-8-245-136.sd.sd.cox.net) (Ping timeout: 240 seconds)
2021-02-11 01:01:43 +0100napping(~brandon@174-20-93-137.mpls.qwest.net)
2021-02-11 01:01:43 +0100 <Axman6> (though one that leaks if you know what you're doing sometimes, anw want to piss off hlint by writing foo a b = \x y -> ... if you know it's likely to be partially applied to a and b most of the time)
2021-02-11 01:02:39 +0100 <jle`> s/less so/more so
2021-02-11 01:03:17 +0100bennofs__(~quassel@dslb-188-103-038-242.188.103.pools.vodafone-ip.de)
2021-02-11 01:03:18 +0100 <jle`> which makes for some funny examples like `const id`
2021-02-11 01:03:30 +0100 <Axman6> :t zipWith id
2021-02-11 01:03:31 +0100 <lambdabot> [b -> c] -> [b] -> [c]
2021-02-11 01:03:50 +0100 <ski> Axman6 : "multi-clause function definition" ?
2021-02-11 01:04:11 +0100 <Axman6> I don't know why I find that more difficult to understand than zipWith ($)
2021-02-11 01:04:21 +0100 <dibblego> ($) is id, specialised
2021-02-11 01:04:48 +0100 <jle`> Axman6: naming is powerful
2021-02-11 01:05:05 +0100 <dibblego> ephemient: it's pretty important to accept that all Haskell functions take 1 argument. When we say "2 arguments", we really mean, takes 1 argument and returns a function — that's about the only use-case for approximating.
2021-02-11 01:05:14 +0100 <jle`> it's the reason why i'd use (.) instead of fmap
2021-02-11 01:05:25 +0100tromp(~tromp@dhcp-077-249-230-040.chello.nl) (Ping timeout: 240 seconds)
2021-02-11 01:05:33 +0100 <jle`> since the name of (.) evokes the idea of function composition in reading moreso than fmap does
2021-02-11 01:05:37 +0100 <jle`> there is power in the name
2021-02-11 01:06:13 +0100 <hpc> agreed
2021-02-11 01:06:31 +0100napping(~brandon@174-20-93-137.mpls.qwest.net) (Ping timeout: 265 seconds)
2021-02-11 01:06:34 +0100 <jle`> if i stare at `map (negate `fmap` (+2))` understand it eventually, but `map (negate . (+2))` communicates the meaning more clearly
2021-02-11 01:06:36 +0100bennofs_(~quassel@dslb-188-103-041-067.188.103.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2021-02-11 01:07:23 +0100 <jle`> i dropped a word there i think
2021-02-11 01:07:39 +0100 <hpc> the way i usually phrase it is "a function can have the right outputs for all the right inputs, and still be wrong"
2021-02-11 01:11:24 +0100mputz(~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
2021-02-11 01:11:40 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus) (Quit: ...zzzZZZ)
2021-02-11 01:14:40 +0100 <__minoru__shirae> so printf is defined as taking two arguments, but can accept any number of arguments? They coded that behavior into PrintfType I guess, but how that trick works?
2021-02-11 01:14:46 +0100Unhammer(~Unhammer@gateway/tor-sasl/unhammer) (Ping timeout: 268 seconds)
2021-02-11 01:15:07 +0100 <__minoru__shirae> looks like PrintfType is either a value, or a function that returns another PrintfType
2021-02-11 01:15:08 +0100 <monochrom> You could use a much much simpler example.
2021-02-11 01:15:43 +0100 <monochrom> id :: a->a is defind as taking 1 argument. But since you can instantiate a = b->c, suddenly it takes 2 arguments too.
2021-02-11 01:15:58 +0100conal(~conal@64.71.133.70) (Quit: Computer has gone to sleep.)
2021-02-11 01:16:18 +0100 <monochrom> And you can play this trick again on c, c = d->e, to go from 2 to 3. Ad infinitum nauseum absurdum.
2021-02-11 01:16:20 +0100Deide(~Deide@217.155.19.23) (Quit: Seeee yaaaa)
2021-02-11 01:16:30 +0100 <monochrom> @quote monochrom 17-ary
2021-02-11 01:16:30 +0100 <lambdabot> monochrom says: I am 17-ary, going on 18-ary, I can take curry of you
2021-02-11 01:16:39 +0100Unhammer(~Unhammer@gateway/tor-sasl/unhammer)
2021-02-11 01:16:47 +0100vjoki(vjoki@2a00:d880:3:1::fea1:9ae) (Quit: ...)
2021-02-11 01:16:53 +0100 <__minoru__shirae> but it seems like you pass regular values to printf, but they become functions somehow
2021-02-11 01:16:59 +0100 <ski> no
2021-02-11 01:17:09 +0100`slikts(~nelabs@wikipedia/reinis) (Quit: No Ping reply in 180 seconds.)
2021-02-11 01:17:28 +0100PtxDK(~quassel@2a01:7c8:aac3:591:5054:ff:fe3d:cac6) (Quit: No Ping reply in 180 seconds.)
2021-02-11 01:17:30 +0100vjoki(vjoki@2a00:d880:3:1::fea1:9ae)
2021-02-11 01:18:05 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 01:18:37 +0100gienah(~mwright@gentoo/developer/gienah) (Quit: Lost terminal)
2021-02-11 01:18:50 +0100`slikts(~nelabs@2a00:d880:5:395::37ca)
2021-02-11 01:18:50 +0100`slikts(~nelabs@2a00:d880:5:395::37ca) (Changing host)
2021-02-11 01:18:50 +0100`slikts(~nelabs@wikipedia/reinis)
2021-02-11 01:19:04 +0100PtxDK(~quassel@2a01:7c8:aac3:591:5054:ff:fe3d:cac6)
2021-02-11 01:19:42 +0100 <monochrom> "f x y" can be thought of as "(f x) y" so it can be thought of as "pass y to (f x), not f per se".
2021-02-11 01:20:02 +0100 <monochrom> You don't always have to think like this. But it is clearer in the case of printf.
2021-02-11 01:20:32 +0100 <monochrom> Or at least, less magical.
2021-02-11 01:21:03 +0100 <monochrom> When you are just an end-user enjoying the magic, it doesn't matter. It works, use it. :)
2021-02-11 01:21:09 +0100 <__minoru__shirae> oh, I see: printf counts placeholders in its pattern and then keeps returning functions that number of times
2021-02-11 01:21:25 +0100 <monochrom> Yeah that too.
2021-02-11 01:22:01 +0100da39a3ee5e6b4b0d(~da39a3ee5@2403:6200:8876:8dc5:1d88:1b78:e5ab:dd70)
2021-02-11 01:22:19 +0100`slikts(~nelabs@wikipedia/reinis) (Excess Flood)
2021-02-11 01:22:38 +0100PtxDK(~quassel@2a01:7c8:aac3:591:5054:ff:fe3d:cac6) (Excess Flood)
2021-02-11 01:22:53 +0100 <ski> @quote magic.of.printf
2021-02-11 01:22:53 +0100 <lambdabot> byorgey says: The magic of printf is that it is well-typed but you need not actually know what the types are.
2021-02-11 01:23:14 +0100 <__minoru__shirae> I've read in some book that this thing when functions take one argument and return other functions is called currying or shoenfinkelizing. did you hear about the second one?
2021-02-11 01:24:07 +0100 <ski> it's a convention/encoding for passing multiple parameters, when you only have a notion of single-parameter functions
2021-02-11 01:24:26 +0100`slikts(~nelabs@wikipedia/reinis)
2021-02-11 01:24:37 +0100 <ski> (in particular, Haskell doesn't "have currying". it's all in your head)
2021-02-11 01:24:44 +0100PtxDK(~quassel@2a01:7c8:aac3:591:5054:ff:fe3d:cac6)
2021-02-11 01:25:07 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-02-11 01:25:12 +0100 <hpc> __minoru__shirae: it's a half-joke about the origin of the concept
2021-02-11 01:25:35 +0100 <hpc> the only place you'll see it called schoenfinkeling is in the acme package
2021-02-11 01:25:46 +0100 <__minoru__shirae> oh, btw, it's called after Haskell Curry
2021-02-11 01:25:50 +0100 <hpc> (which incidentally also contains my favorite german joke)
2021-02-11 01:26:20 +0100matijja(~matijja@193.77.181.208) (Quit: bye)
2021-02-11 01:26:35 +0100Entertainment(~entertain@104.246.131.28) ()
2021-02-11 01:26:46 +0100 <__minoru__shirae> hpc: in that book it was presented not as a joke, but seriously
2021-02-11 01:27:00 +0100 <__minoru__shirae> don't remember what book though
2021-02-11 01:27:12 +0100 <hpc> ah
2021-02-11 01:27:29 +0100 <hpc> in any event, i have only ever heard of it as currying
2021-02-11 01:28:05 +0100 <__minoru__shirae> imagine people using both your firstname and surname as terms
2021-02-11 01:28:42 +0100 <ski> (people also tend to confuse "currying" with "partial application" (sometimes also with "partial evaluation"))
2021-02-11 01:29:44 +0100mastarija(~mastarija@188.252.197.206)
2021-02-11 01:30:51 +0100fresheyeball(~isaac@ec2-35-155-97-88.us-west-2.compute.amazonaws.com)
2021-02-11 01:31:03 +0100conal(~conal@64.71.133.70)
2021-02-11 01:31:39 +0100conal(~conal@64.71.133.70) (Client Quit)
2021-02-11 01:32:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-02-11 01:32:07 +0100thc202(~thc202@unaffiliated/thc202) (Ping timeout: 260 seconds)
2021-02-11 01:33:43 +0100MrMobius(~MrMobius@208.58.206.154)
2021-02-11 01:37:43 +0100 <Axman6> __minoru__shirae: really, printf is powered by the arguments passed to it, and it checks the string matches those arguments, rather than the string powering things, just in case you were thinking the string was the key biit of machiners
2021-02-11 01:37:52 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Quit: leaving)
2021-02-11 01:38:09 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
2021-02-11 01:38:28 +0100 <edwardk> i'm particularly inclined to note that partial application tends to omit the sort of 'over-application' that is common in haskell.
2021-02-11 01:38:59 +0100 <edwardk> > id id 4 -- passes 'id' two arguments, even though it only takes 1
2021-02-11 01:39:01 +0100 <lambdabot> 4
2021-02-11 01:39:22 +0100 <edwardk> this seems kinda academic until you realize how we use combinators like const and id, and work through how the reader monad gets used in practice
2021-02-11 01:39:29 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-02-11 01:40:09 +0100 <edwardk> http://comonad.com/reader/2009/curried-scheme/ was me encountering the issue in scheme
2021-02-11 01:40:57 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Client Quit)
2021-02-11 01:41:24 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net)
2021-02-11 01:41:45 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 01:41:55 +0100revprez_anzio(~revprez_a@pool-108-49-213-40.bstnma.fios.verizon.net) (Client Quit)
2021-02-11 01:43:56 +0100hyperisco(~hyperisco@104-195-141-253.cpe.teksavvy.com) (Ping timeout: 256 seconds)
2021-02-11 01:46:38 +0100 <__minoru__shirae> Axman6: good to know
2021-02-11 01:47:05 +0100bitmagie(~Thunderbi@200116b8066f6c007c4295e1303468a4.dip.versatel-1u1.de)
2021-02-11 01:47:14 +0100revprez_stg(~revprez_s@pool-108-49-213-40.bstnma.fios.verizon.net) (Quit: leaving)
2021-02-11 01:47:25 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-02-11 01:47:39 +0100 <__minoru__shirae> > id (+1) 4
2021-02-11 01:47:41 +0100 <lambdabot> 5
2021-02-11 01:47:46 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr)
2021-02-11 01:48:24 +0100bitmagie(~Thunderbi@200116b8066f6c007c4295e1303468a4.dip.versatel-1u1.de) (Client Quit)
2021-02-11 01:48:31 +0100 <Axman6> A relatively small change to printf could actually give you nice static types based on the format string, but it's currently a bit gross to do because type level Symbols aren't actually [Char]. Ideally we'd write printf @"%i %f %s, %s" and get back (Integral i, Floating f) => i -> f -> String -> String String
2021-02-11 01:48:47 +0100 <Axman6> uh, String -> String*
2021-02-11 01:48:48 +0100tremon(~aschuring@217-63-61-89.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in)
2021-02-11 01:49:07 +0100forgottenone(~forgotten@176.42.19.18) (Ping timeout: 272 seconds)
2021-02-11 01:49:45 +0100 <Axman6> a la https://hackage.haskell.org/package/typelits-printf
2021-02-11 01:50:22 +0100 <monochrom> format strings are overrated anyway
2021-02-11 01:50:53 +0100 <Axman6> I do appreciate their conciseness. alternatives are often clunky
2021-02-11 01:51:39 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 01:51:43 +0100 <Axman6> I'm also a biug fan of the formatting library (which wrunt has made some great contributions to in the last few months)
2021-02-11 01:51:47 +0100 <Axman6> big*
2021-02-11 01:51:57 +0100 <Axman6> https://hackage.haskell.org/package/formatting-7.1.1/docs/Formatting-Combinators.html
2021-02-11 01:52:10 +0100 <monochrom> I think you are thinking of the other extreme, an algebraic data type.
2021-02-11 01:52:28 +0100Axman6is responsible for the nagging which lead to a lot of the functios in that module
2021-02-11 01:52:44 +0100 <monochrom> But there is a sweet spot with quotations and its corresponding unquotation.
2021-02-11 01:54:51 +0100 <monochrom> tl;dr unquotation is what interpolation dreams of but fails to.
2021-02-11 01:55:30 +0100 <Axman6> I'm not sure what you're talking about now
2021-02-11 01:55:33 +0100vicfred(~vicfred@unaffiliated/vicfred)
2021-02-11 01:55:41 +0100 <monochrom> Sure. Here is an example.
2021-02-11 01:56:24 +0100 <monochrom> Instead of printf("hello %d %c %f world", x, y, z)
2021-02-11 01:56:39 +0100 <monochrom> you write instead "hello ^x ^y ^z world"
2021-02-11 01:57:10 +0100 <Axman6> oh right
2021-02-11 01:57:43 +0100mastarija(~mastarija@188.252.197.206) (Quit: Leaving)
2021-02-11 01:57:44 +0100 <Axman6> often "hello %{x} %{y} %{z} world" in many languages to allow arbitrary expressions right?
2021-02-11 01:57:55 +0100 <Axman6> or some similar syntax
2021-02-11 01:57:57 +0100 <monochrom> Yes.
2021-02-11 01:58:41 +0100 <Axman6> In unrelated news, the acceptance of this is somewhat surprising: https://github.com/golang/go/issues/43651
2021-02-11 01:59:36 +0100mputz(~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2021-02-11 01:59:48 +0100 <monochrom> I am less surprised. Because Pike did say he was not against this, he was just taking time to look for a simple design.
2021-02-11 01:59:55 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-02-11 02:00:15 +0100 <Axman6> yeah, I seem to remember hearing it would almost certainly going to be a feature of Go 2.0
2021-02-11 02:00:16 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 02:00:20 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com)
2021-02-11 02:00:31 +0100 <monochrom> Now, I don't know whether this one is simple enough, but Pike was always open to polymorphism, just cautiously.
2021-02-11 02:01:01 +0100 <Axman6> surprised not to see any reference to Wedler et al's work on Featherweight Go
2021-02-11 02:01:35 +0100 <monochrom> heh
2021-02-11 02:02:16 +0100 <monochrom> von Neumann's paper/report describing the von Neumann model did not refer to Turing's report either (where Turing described that model first)
2021-02-11 02:02:24 +0100jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-02-11 02:02:52 +0100 <monochrom> and historical evidence says that von Neumann already had Turing's report by then.
2021-02-11 02:05:21 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds)
2021-02-11 02:05:46 +0100alx741(~alx741@186.178.110.250) (Quit: alx741)
2021-02-11 02:07:57 +0100_linker_(~linker@2a02:a31a:a045:3500:e120:4743:5ef2:908d) (Remote host closed the connection)
2021-02-11 02:08:29 +0100 <Axman6> Wouldn't want to infect Go with any ivory
2021-02-11 02:10:34 +0100darjeeling_(~darjeelin@122.245.209.191) (Ping timeout: 256 seconds)
2021-02-11 02:11:13 +0100whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-02-11 02:12:20 +0100whataday(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-02-11 02:14:28 +0100fresheyeball(~isaac@ec2-35-155-97-88.us-west-2.compute.amazonaws.com) (Ping timeout: 272 seconds)
2021-02-11 02:16:08 +0100fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net)
2021-02-11 02:16:23 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net) (Quit: leaving)
2021-02-11 02:18:27 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 02:18:50 +0100Feuermagier_(~Feuermagi@213.178.26.41) (Remote host closed the connection)
2021-02-11 02:19:05 +0100Feuermagier_(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6)
2021-02-11 02:19:30 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Ping timeout: 265 seconds)
2021-02-11 02:19:44 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:b594:a67f:9ce6:a63b)
2021-02-11 02:20:52 +0100Feuermagier_(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6) (Client Quit)
2021-02-11 02:21:06 +0100Feuermagier(~Feuermagi@2a02:2488:4211:3400:246e:bf09:8453:9d6)
2021-02-11 02:23:26 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 264 seconds)
2021-02-11 02:27:00 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 02:30:49 +0100ukari(~ukari@unaffiliated/ukari) (Remote host closed the connection)
2021-02-11 02:31:03 +0100 <ep1ctetus> Hi, I'm getting an error when using cassava to parse a CSV file, I cannot understand what it means
2021-02-11 02:31:15 +0100 <ep1ctetus> parse error (Failed reading: satisfy) at "Date","Time","TimeZone","Name","Type","Status","Currency","Amount","Receipt ID","Balance"
2021-02-11 02:31:25 +0100ukari(~ukari@unaffiliated/ukari)
2021-02-11 02:32:03 +0100 <ep1ctetus> It's being read into a record in which all the fields are type Text, which derives Generic and FromRecord
2021-02-11 02:32:05 +0100 <ep1ctetus> anyone have thoughts?
2021-02-11 02:32:11 +0100Jd007(~Jd007@162.156.11.151) (Quit: Jd007)
2021-02-11 02:32:52 +0100 <Axman6> not without seeing the code :)
2021-02-11 02:33:28 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 02:34:08 +0100 <ep1ctetus> https://pastebin.com/hgKUDzdw
2021-02-11 02:35:48 +0100 <Axman6> should the CSV columns not all have pe prefixed to them? or does cassava automatically remove those (I didn't think it did without you telling it to)
2021-02-11 02:35:55 +0100 <sm[m]> I forgot.. is there any way to find out, eg from the RTS, if an executable was compiled with or without optimisation ?
2021-02-11 02:36:26 +0100 <ep1ctetus> Axman6: by making it an instance of FromRecord, it just matches the column positions with the record fields
2021-02-11 02:36:37 +0100 <ep1ctetus> it ignores the headers
2021-02-11 02:37:00 +0100 <ep1ctetus> Here is the first 3 lines of the CSV file: https://pastebin.com/mcAPyiLp
2021-02-11 02:37:40 +0100 <ep1ctetus> I have this working with the exact same setup on a differently-formatted CSV file
2021-02-11 02:38:06 +0100 <Axman6> ah right, I forgot about FromNamedRecord
2021-02-11 02:38:48 +0100 <glguy> sm[m], it doesn't that I know of
2021-02-11 02:39:55 +0100 <Axman6> ep1ctetus: what happens when you try to parse it as a `Csv`, change readPaypal :: String -> IO (Vector PaypalEntry) to readPaypal :: String -> IO (Vector Csv)
2021-02-11 02:40:08 +0100 <Axman6> uh, readPaypal :: String -> IO Csv
2021-02-11 02:41:23 +0100 <ep1ctetus> Axman6: same error
2021-02-11 02:44:33 +0100viluon(uid453725@gateway/web/irccloud.com/x-ggbctwutbiutwlfs) (Quit: Connection closed for inactivity)
2021-02-11 02:45:06 +0100bitmagie(~Thunderbi@200116b8066f6c007c4295e1303468a4.dip.versatel-1u1.de)
2021-02-11 02:45:12 +0100 <ep1ctetus> ok, I got it to work
2021-02-11 02:45:24 +0100 <Axman6> how?
2021-02-11 02:45:30 +0100 <ep1ctetus> I find a find-replace of all the " in the csv file, and it read in fine
2021-02-11 02:45:47 +0100 <Axman6> ah, right, fancy quotes?
2021-02-11 02:45:48 +0100bitmagie(~Thunderbi@200116b8066f6c007c4295e1303468a4.dip.versatel-1u1.de) (Client Quit)
2021-02-11 02:46:12 +0100 <ep1ctetus> I don't know, but the file I have that works doesn't have quotes in every filed like this file
2021-02-11 02:46:15 +0100 <Axman6> are you on macOS? TextEdit et al have a habit of being "helpful" like that
2021-02-11 02:46:31 +0100 <ep1ctetus> no I downloaded this file straight from PayPal's website
2021-02-11 02:46:58 +0100 <ep1ctetus> so perhaps I can find/replace them in the ByteString that's read in before parsing it
2021-02-11 02:47:07 +0100 <Axman6> hmm, weird
2021-02-11 02:47:25 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-02-11 02:47:47 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr)
2021-02-11 02:51:08 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com) (Quit: Computer has gone to sleep.)
2021-02-11 02:53:57 +0100m0rphism1(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de) (Ping timeout: 264 seconds)
2021-02-11 02:54:44 +0100funkatron(~funkatron@185.204.1.185) (Remote host closed the connection)
2021-02-11 03:00:07 +0100rajivr(uid269651@gateway/web/irccloud.com/x-lahbxsmpijdsyxwl)
2021-02-11 03:00:35 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 03:01:23 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 03:01:51 +0100 <ep1ctetus> Axman6: I found out more -- there are non-printable characters at the beginning of the file that are confusing it
2021-02-11 03:01:53 +0100sakirious(~sakirious@c-71-197-191-137.hsd1.wa.comcast.net) (Quit: The Lounge - https://thelounge.chat)
2021-02-11 03:02:19 +0100da39a3ee5e6b4b0d(~da39a3ee5@2403:6200:8876:8dc5:1d88:1b78:e5ab:dd70) (Quit: Textual IRC Client: www.textualapp.com)
2021-02-11 03:02:23 +0100 <ep1ctetus> hmmm, or it could be the encoding
2021-02-11 03:02:33 +0100napping(~brandon@174-20-93-137.mpls.qwest.net)
2021-02-11 03:03:01 +0100sakirious(~sakirious@c-71-197-191-137.hsd1.wa.comcast.net)
2021-02-11 03:04:10 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 03:05:15 +0100 <ep1ctetus> lol yeah, that's what it was, there are non-printable characters at the beginning. Whatever corresponds to 239, 187, 191
2021-02-11 03:06:56 +0100napping(~brandon@174-20-93-137.mpls.qwest.net) (Ping timeout: 240 seconds)
2021-02-11 03:08:53 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 256 seconds)
2021-02-11 03:09:02 +0100 <Axman6> utf-8 with BOM?
2021-02-11 03:09:09 +0100 <Axman6> what does `file` say for the original file?
2021-02-11 03:09:18 +0100 <ep1ctetus> yes, it said UTF-8-BOM, what does that mean?
2021-02-11 03:09:39 +0100 <Axman6> byte order mark
2021-02-11 03:09:56 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 03:10:03 +0100 <c_wraith> which is weird - UTF8 doesn't have ambiguous byte orders
2021-02-11 03:10:13 +0100 <Axman6> so there's some cbytes at the beginning which tell you ... something. seems weird to have in utf-8. utf-16 and 32 I could understand
2021-02-11 03:10:40 +0100 <ep1ctetus> well I'm not surprised that PayPal would produce a stupidly-formatted CSV file
2021-02-11 03:10:54 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 03:11:05 +0100jneira(501ca940@gateway/web/cgi-irc/kiwiirc.com/ip.80.28.169.64) (Quit: Connection closed)
2021-02-11 03:11:40 +0100 <ep1ctetus> My solution was to drop those characters ... then it worked
2021-02-11 03:11:44 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 03:12:02 +0100 <Axman6> yeah should be fine
2021-02-11 03:12:22 +0100 <ephemient> the only thing an initial UTF-8 BOM tells you is that the file starts with a UTF-8 BOM
2021-02-11 03:12:56 +0100 <Axman6> https://en.wikipedia.org/wiki/Byte_order_mark
2021-02-11 03:12:58 +0100 <ephemient> it's not data so go ahead, ignore it and treat the rest of the file as UTF-8
2021-02-11 03:13:59 +0100 <monochrom> I wrote my code to detect and drop BOM too :)
2021-02-11 03:14:05 +0100 <Axman6> somewhat annoying it's not dropped automatically
2021-02-11 03:14:34 +0100 <ephemient> at which layer?
2021-02-11 03:14:42 +0100 <Axman6> readFile
2021-02-11 03:14:55 +0100 <Axman6> but I guess readFile for ByteString shouldn't do anything
2021-02-11 03:15:03 +0100 <monochrom> stripBOM bytes = case BL.stripPrefix (BL.pack "\xef\xbb\xbf") bytes of { Just suffix -> suffix; Nothing -> bytes }
2021-02-11 03:15:14 +0100 <monochrom> (BL = Data.ByteString.Lazy)
2021-02-11 03:15:21 +0100 <Axman6> if it were Text.readFile I would expect it to check for it and use it for decoding to Text
2021-02-11 03:15:33 +0100 <ephemient> it would be worse if `readFile f >>= writeFile f` stripped the BOM, IMO
2021-02-11 03:15:46 +0100 <monochrom> err, Data.ByteString.Lazy.Char8
2021-02-11 03:17:09 +0100Ariakenom(~Ariakenom@2001:9b1:efb:fc00:c4ad:290a:c4c0:717b) (Quit: Leaving)
2021-02-11 03:17:45 +0100 <monochrom> It is a Microsoft convention to add BOM. It is not so much byte order disambiguation as 8-vs-16 disambiguation.
2021-02-11 03:17:52 +0100 <ep1ctetus> monochrom: thanks, this is nicer than what I wrote
2021-02-11 03:18:07 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 03:18:50 +0100 <Axman6> feels like a very un-unixy thing to do, since it would break cat *.txt > out.txt
2021-02-11 03:19:11 +0100 <Axman6> (that may itself be a bad idea depending on when out.txt is created...)
2021-02-11 03:19:55 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 03:20:32 +0100 <ephemient> redirections happen before exec, so yeah that is somewhat problematic
2021-02-11 03:20:42 +0100 <ephemient> cat *.txt | sponge out.txt # https://joeyh.name/code/moreutils/ to the rescue
2021-02-11 03:20:54 +0100conal(~conal@64.71.133.70)
2021-02-11 03:21:29 +0100 <ephemient> but the cat thing only works if every file is the same encoding... and the encoding doesn't have state like SJIS...
2021-02-11 03:22:50 +0100xff0x(~xff0x@2001:1a81:5205:c800:4c19:a4e4:1bf7:864b) (Ping timeout: 264 seconds)
2021-02-11 03:24:40 +0100xff0x(~xff0x@2001:1a81:5241:ba00:c40a:8abf:b18c:462)
2021-02-11 03:25:00 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 03:25:56 +0100hiptobecubic(~john@unaffiliated/hiptobecubic) (Ping timeout: 256 seconds)
2021-02-11 03:28:11 +0100Lord_of_Life_(~Lord@unaffiliated/lord-of-life/x-0885362)
2021-02-11 03:28:34 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Remote host closed the connection)
2021-02-11 03:29:05 +0100Lord_of_Life(~Lord@unaffiliated/lord-of-life/x-0885362) (Ping timeout: 240 seconds)
2021-02-11 03:29:35 +0100Lord_of_Life_Lord_of_Life
2021-02-11 03:32:16 +0100 <koala_man> if anyone's interested, I was able to build x86_64 macos binaries on Linux using osxcross and a custom built GHC cross-compiler
2021-02-11 03:33:36 +0100 <koala_man> the binaries are absolutely huge for some reason, but it works
2021-02-11 03:33:38 +0100yahb(xsbot@haskell/bot/yahb) (Ping timeout: 264 seconds)
2021-02-11 03:35:00 +0100 <slack1256> What is the resulting size for the stage2 compiler?
2021-02-11 03:35:57 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 03:36:04 +0100 <dsal> koala_man: Oh cool. How easy is it to reproduce that?
2021-02-11 03:37:03 +0100 <koala_man> slack1256: I think I built stage1only
2021-02-11 03:38:14 +0100yahb(xsbot@haskell/bot/yahb)
2021-02-11 03:38:56 +0100toorevitimirp(~tooreviti@117.182.180.8)
2021-02-11 03:39:21 +0100m4v1(~m4v@139.28.218.148)
2021-02-11 03:39:37 +0100 <koala_man> dsal: fairly easy, actually. Much easier than last time I cross-compiled to aarch64. however, I did depend on some random janky Docker image with osxcross already built. This is my current Dockerfile: https://gist.github.com/koalaman/5d88b5bdc9316b055ead9e9aa7ff74cb
2021-02-11 03:40:45 +0100 <koala_man> it doesn't support TemplateHaskell, but other than that it appears to work
2021-02-11 03:45:33 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-02-11 03:45:48 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu)
2021-02-11 03:47:25 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-02-11 03:47:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 03:47:46 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr)
2021-02-11 03:47:57 +0100Jd007(~Jd007@162.156.11.151)
2021-02-11 03:48:35 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:b594:a67f:9ce6:a63b) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 03:51:16 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 03:55:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 03:56:06 +0100Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 246 seconds)
2021-02-11 04:00:32 +0100urodna(~urodna@unaffiliated/urodna) (Quit: urodna)
2021-02-11 04:02:57 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 04:04:45 +0100theDon(~td@muedsl-82-207-238-226.citykom.de) (Ping timeout: 264 seconds)
2021-02-11 04:06:16 +0100theDon(~td@muedsl-82-207-238-223.citykom.de)
2021-02-11 04:07:50 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds)
2021-02-11 04:09:48 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 04:11:34 +0100Sonderblade(~helloman@94.191.137.213.mobile.tre.se)
2021-02-11 04:14:03 +0100e2(e2@sponsored.by.bnc4you.xyz) (Ping timeout: 265 seconds)
2021-02-11 04:14:25 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 04:16:11 +0100alx741(~alx741@186.178.110.250)
2021-02-11 04:18:28 +0100Sheilong(uid293653@gateway/web/irccloud.com/x-odqnhcrgjojhorzq) ()
2021-02-11 04:19:22 +0100e2(e2@sponsored.by.bnc4you.xyz)
2021-02-11 04:21:43 +0100fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
2021-02-11 04:22:00 +0100fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net)
2021-02-11 04:23:04 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 04:27:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 04:29:15 +0100 <koz_> yay ci goes brrr
2021-02-11 04:29:22 +0100 <koz_> (sorry, still really happy about that)
2021-02-11 04:31:51 +0100jedws(~jedws@101.184.202.248)
2021-02-11 04:32:22 +0100FinnElija(~finn_elij@gateway/tor-sasl/finnelija/x-67402716)
2021-02-11 04:32:22 +0100finn_elijaGuest40745
2021-02-11 04:32:22 +0100FinnElijafinn_elija
2021-02-11 04:33:49 +0100jedws(~jedws@101.184.202.248) (Client Quit)
2021-02-11 04:34:36 +0100fresheyeball(~isaac@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
2021-02-11 04:36:25 +0100Guest40745(~finn_elij@gateway/tor-sasl/finnelija/x-67402716) (Ping timeout: 268 seconds)
2021-02-11 04:41:16 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 04:41:19 +0100deviantfero(~deviantfe@190.150.27.58)
2021-02-11 04:43:13 +0100pavonia(~user@unaffiliated/siracusa)
2021-02-11 04:44:33 +0100napping(~brandon@174-20-93-137.mpls.qwest.net)
2021-02-11 04:45:18 +0100napping(~brandon@174-20-93-137.mpls.qwest.net) ()
2021-02-11 04:45:22 +0100_vaibhavingale_(~Adium@203.188.228.9)
2021-02-11 04:47:25 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-02-11 04:47:47 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr)
2021-02-11 04:48:29 +0100raym(~ray@45.64.220.157) (Quit: leaving)
2021-02-11 04:48:45 +0100raym(~ray@45.64.220.53)
2021-02-11 04:50:09 +0100_vaibhavingale_(~Adium@203.188.228.9) (Ping timeout: 272 seconds)
2021-02-11 04:50:59 +0100soft-warm(4408f588@ip68-8-245-136.sd.sd.cox.net)
2021-02-11 04:57:26 +0100Wuzzy(~Wuzzy@p5790e290.dip0.t-ipconnect.de) (Quit: Wuzzy)
2021-02-11 04:57:33 +0100__minoru__shirae(~shiraeesh@109.166.59.8) (Ping timeout: 264 seconds)
2021-02-11 05:00:25 +0100Rudd0(~Rudd0@185.189.115.108)
2021-02-11 05:00:34 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 05:02:26 +0100jedws(~jedws@101.184.202.248)
2021-02-11 05:02:47 +0100theDon(~td@muedsl-82-207-238-223.citykom.de) (Ping timeout: 256 seconds)
2021-02-11 05:04:19 +0100theDon(~td@muedsl-82-207-238-072.citykom.de)
2021-02-11 05:04:37 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 05:07:50 +0100sw1nn(~sw1nn@2a00:23c6:2385:3a00:8481:383e:48dd:21f5) (Ping timeout: 264 seconds)
2021-02-11 05:09:24 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Remote host closed the connection)
2021-02-11 05:09:25 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-02-11 05:10:17 +0100alx741(~alx741@186.178.110.250) (Quit: alx741)
2021-02-11 05:10:45 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 264 seconds)
2021-02-11 05:12:53 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 05:15:04 +0100 <slack1256> References to files on template haskell splices don't need to be declared as `data-files` on cabal?
2021-02-11 05:15:29 +0100conal(~conal@64.71.133.70) (Ping timeout: 272 seconds)
2021-02-11 05:15:58 +0100 <slack1256> This is for a yesod site I am making, so the template shakespeare files live on another folder. I want to use `whamletFile` on them.
2021-02-11 05:16:08 +0100 <glguy> I wouldn't think so; data files are for runtime data
2021-02-11 05:16:19 +0100toorevitimirp(~tooreviti@117.182.180.8) (Remote host closed the connection)
2021-02-11 05:16:30 +0100 <glguy> and splices are compile time things
2021-02-11 05:16:45 +0100toorevitimirp(~tooreviti@117.182.180.8)
2021-02-11 05:16:57 +0100conal(~conal@198.8.81.92)
2021-02-11 05:17:52 +0100 <slack1256> Neat
2021-02-11 05:17:57 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 05:18:21 +0100 <slack1256> I still need to be careful if I decide to ship this code, as the templates won't be included on the .tar.gz
2021-02-11 05:18:46 +0100 <glguy> unless the splices are defining runtime file references?
2021-02-11 05:18:57 +0100 <glguy> really just depends on what's going on there
2021-02-11 05:19:25 +0100 <slack1256> No, they are not runtime file references.
2021-02-11 05:20:49 +0100sw1nn(~sw1nn@2a00:23c6:2385:3a00:1cd1:f5cc:82b1:ebaa)
2021-02-11 05:21:38 +0100perrier-jouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.0)
2021-02-11 05:21:39 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-02-11 05:22:04 +0100Tario(~Tario@201.192.165.173)
2021-02-11 05:22:36 +0100 <glguy> You'll need to list them as extra-source-files, I think it was, so that they get bundled in the sdist
2021-02-11 05:22:55 +0100 <slack1256> Ooooh that makes sense.
2021-02-11 05:23:09 +0100 <slack1256> Thank you glguy.
2021-02-11 05:25:45 +0100conal(~conal@198.8.81.92) (Quit: Computer has gone to sleep.)
2021-02-11 05:26:54 +0100conal(~conal@198.8.81.92)
2021-02-11 05:28:39 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 05:29:22 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:b965:836a:181f:a4ea)
2021-02-11 05:32:59 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 05:33:05 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 05:36:47 +0100electricityZZZZ(~electrici@108-216-157-17.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2021-02-11 05:37:54 +0100Sonderblade(~helloman@94.191.137.213.mobile.tre.se) (Quit: Konversation terminated!)
2021-02-11 05:38:59 +0100slack1256(~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection)
2021-02-11 05:40:14 +0100Tario(~Tario@201.192.165.173) (Ping timeout: 256 seconds)
2021-02-11 05:41:05 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr) (Quit: Konversation terminated!)
2021-02-11 05:41:31 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 05:42:30 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 05:44:30 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 05:46:35 +0100elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
2021-02-11 05:49:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 05:49:48 +0100hekkaidekapus[(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds)
2021-02-11 05:51:03 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-02-11 05:51:40 +0100puke(~vroom@217.138.252.187) (Quit: puke)
2021-02-11 05:52:45 +0100machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 240 seconds)
2021-02-11 05:53:37 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:b965:836a:181f:a4ea) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 05:54:22 +0100soft-warm(4408f588@ip68-8-245-136.sd.sd.cox.net) (Ping timeout: 240 seconds)
2021-02-11 05:55:36 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 05:59:11 +0100polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889) (Ping timeout: 272 seconds)
2021-02-11 06:00:13 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 06:01:27 +0100_vaibhavingale_(~Adium@203.188.228.9)
2021-02-11 06:04:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 06:09:54 +0100puke(~vroom@217.138.252.222)
2021-02-11 06:15:56 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-02-11 06:16:44 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 06:18:45 +0100kfollstad(~kfollstad@23.90.89.3) (Ping timeout: 240 seconds)
2021-02-11 06:21:39 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 06:24:49 +0100ixaxaar(~ixaxaar@49.207.210.215)
2021-02-11 06:26:18 +0100kfollstad(~kfollstad@23.90.89.3)
2021-02-11 06:31:22 +0100vicfred(~vicfred@unaffiliated/vicfred) (Quit: Leaving)
2021-02-11 06:32:55 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 06:34:16 +0100jedws(~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 06:34:29 +0100hexfive(~hexfive@50.35.83.177)
2021-02-11 06:37:49 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 06:40:25 +0100toorevitimirp(~tooreviti@117.182.180.8) (Ping timeout: 240 seconds)
2021-02-11 06:42:57 +0100toorevitimirp(~tooreviti@117.182.180.8)
2021-02-11 06:48:36 +0100kfollstad(~kfollstad@23.90.89.3) (Quit: WeeChat 3.0)
2021-02-11 06:50:36 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 06:53:05 +0100toorevitimirp(~tooreviti@117.182.180.8) (Ping timeout: 240 seconds)
2021-02-11 06:54:30 +0100toorevitimirp(~tooreviti@117.182.180.8)
2021-02-11 06:55:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 06:57:39 +0100DTZUZU(~DTZUZU@205.ip-149-56-132.net) (Read error: Connection reset by peer)
2021-02-11 06:58:23 +0100elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 265 seconds)
2021-02-11 06:58:30 +0100DTZUZU(~DTZUZU@205.ip-149-56-132.net)
2021-02-11 06:59:09 +0100toorevitimirp(~tooreviti@117.182.180.8) (Ping timeout: 246 seconds)
2021-02-11 07:02:53 +0100darjeeling_(~darjeelin@39.185.119.195)
2021-02-11 07:03:12 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-02-11 07:04:07 +0100petersen(~petersen@redhat/juhp) (Quit: petersen)
2021-02-11 07:05:28 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 07:06:55 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 07:07:52 +0100poscat1(~poscat@123.116.95.228) (Remote host closed the connection)
2021-02-11 07:08:10 +0100poscat(~poscat@123.116.95.228)
2021-02-11 07:10:45 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 264 seconds)
2021-02-11 07:11:24 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
2021-02-11 07:11:29 +0100carlomagno(~cararell@148.87.23.11) (Ping timeout: 272 seconds)
2021-02-11 07:12:44 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu)
2021-02-11 07:12:57 +0100ukari(~ukari@unaffiliated/ukari) (Remote host closed the connection)
2021-02-11 07:13:27 +0100ukari(~ukari@unaffiliated/ukari)
2021-02-11 07:14:03 +0100acidjnk_new2(~acidjnk@p200300d0c724a28468193f3bf077429d.dip0.t-ipconnect.de)
2021-02-11 07:22:03 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2021-02-11 07:23:08 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 07:24:01 +0100lemmih(~lemmih@2406:3003:2072:44:f7a7:6ac6:bdf9:4d40) (Remote host closed the connection)
2021-02-11 07:27:52 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 07:31:56 +0100hexfive(~hexfive@50.35.83.177) (Quit: i must go. my people need me.)
2021-02-11 07:32:45 +0100 <koala_man> I just did `cabal install --lib Diff-0.4.0` (arbitrary choice). When I later do `cabal build`, it still downloads and builds Diff-0.4.0. Is it supposed to do that?
2021-02-11 07:32:49 +0100Jd007(~Jd007@162.156.11.151) (Quit: Jd007)
2021-02-11 07:33:59 +0100 <sclv> yes. Installing with —lib just puts it in the global env for ghci etc outside of projects
2021-02-11 07:34:14 +0100 <sclv> projects each have a local env
2021-02-11 07:34:34 +0100 <koala_man> is there any kind of shared package cache?
2021-02-11 07:34:56 +0100 <c_wraith> sure, it shares packages - but only if their package ids are identical
2021-02-11 07:35:05 +0100 <c_wraith> same version, same flags, same dependency package ids
2021-02-11 07:35:43 +0100 <c_wraith> If they didn't come out the same, it's likely that solving the dependencies in one of the packages required an older version of one of those dependencies than the other was required to use
2021-02-11 07:35:47 +0100 <koala_man> what does it share them with? other projects that have been built, but not anything you 'cabal install'?
2021-02-11 07:36:02 +0100 <c_wraith> anything in the package cache
2021-02-11 07:36:21 +0100revtintin(~revtintin@42.61.242.247)
2021-02-11 07:37:28 +0100 <c_wraith> see ~/.cabal/store
2021-02-11 07:40:11 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 07:41:09 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2021-02-11 07:42:46 +0100 <koala_man> c_wraith: how do I debug why the IDs are different? In the diff between the two, only the hashes are different: https://gist.github.com/koalaman/ccafff70cefea932c9b4f416a8b89eaf
2021-02-11 07:43:06 +0100 <c_wraith> dependencies and flags
2021-02-11 07:43:29 +0100 <koala_man> the dependencies are the same, and I didn't add any flags in either case
2021-02-11 07:43:36 +0100 <koala_man> unless --lib counts
2021-02-11 07:44:01 +0100 <c_wraith> I think it does. it seems to count *every* flag, whether it makes sense or not.
2021-02-11 07:44:48 +0100 <koala_man> it fails without --lib, but it shows the same ID
2021-02-11 07:44:54 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 07:45:08 +0100hekkaidekapus[(~tchouri@gateway/tor-sasl/hekkaidekapus)
2021-02-11 07:46:36 +0100ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net) (Read error: Connection reset by peer)
2021-02-11 07:46:47 +0100jedws(~jedws@101.184.202.248)
2021-02-11 07:47:03 +0100dhil(~dhil@80.208.56.181)
2021-02-11 07:48:25 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
2021-02-11 07:52:34 +0100 <koala_man> I'm trying to pre-build some dependencies, which used to work fine, but which now fails to reuse the cache and I don't know why
2021-02-11 07:52:49 +0100Aquazi(uid312403@gateway/web/irccloud.com/x-ckjmnhqmmmkvuhmm)
2021-02-11 07:54:12 +0100xff0x(~xff0x@2001:1a81:5241:ba00:c40a:8abf:b18c:462) (Ping timeout: 260 seconds)
2021-02-11 07:54:53 +0100xff0x(~xff0x@2001:1a81:5241:ba00:9669:dedb:a2c3:d63)
2021-02-11 07:58:08 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 07:58:12 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 07:59:35 +0100sord937(~sord937@gateway/tor-sasl/sord937)
2021-02-11 08:00:15 +0100lili50(~androirc@77.243.30.35)
2021-02-11 08:01:36 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-02-11 08:02:32 +0100lili50(~androirc@77.243.30.35) (Client Quit)
2021-02-11 08:02:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 08:02:48 +0100 <koala_man> huh, it only happens when I use a ~/.cabal/config. when I specify the same options directly on the command line, it works
2021-02-11 08:05:19 +0100jedws(~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 08:06:37 +0100 <koala_man> well, at least I have a workaround
2021-02-11 08:09:16 +0100forgottenone(~forgotten@176.42.19.18)
2021-02-11 08:11:16 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
2021-02-11 08:12:11 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 08:13:35 +0100_ht(~quassel@82.169.194.8)
2021-02-11 08:14:05 +0100deviantfero(~deviantfe@190.150.27.58) (Ping timeout: 272 seconds)
2021-02-11 08:14:55 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 08:19:00 +0100 <koala_man> I had "ghc-options: -optc-Os" in there and when I comment it out, it caches as expected even though it should be used by both
2021-02-11 08:19:34 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 08:19:39 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
2021-02-11 08:20:39 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 08:23:21 +0100gioyik(~gioyik@gateway/tor-sasl/gioyik) (Ping timeout: 268 seconds)
2021-02-11 08:26:27 +0100michalz(~user@185.246.204.49)
2021-02-11 08:29:26 +0100tylerjl(~leothrix@elastic/staff/leothrix) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-11 08:32:27 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2021-02-11 08:32:47 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2021-02-11 08:32:59 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 08:35:39 +0100leothrix(~leothrix@elastic/staff/leothrix)
2021-02-11 08:36:50 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-02-11 08:37:33 +0100sim590(~sim590@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 256 seconds)
2021-02-11 08:39:05 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 08:40:29 +0100sim590(~sim590@modemcable090.207-203-24.mc.videotron.ca)
2021-02-11 08:44:22 +0100_xor(~xor@74.215.46.133) (Ping timeout: 260 seconds)
2021-02-11 08:45:00 +0100__minoru__shirae(~shiraeesh@109.166.59.8)
2021-02-11 08:46:01 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa)
2021-02-11 08:46:13 +0100edge563(~edge563@gateway/tor-sasl/edge563)
2021-02-11 08:46:29 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 272 seconds)
2021-02-11 08:48:18 +0100jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-02-11 08:48:18 +0100clmg(~clmg@2601:1c2:200:720:ffc:c4da:a960:d019) (Remote host closed the connection)
2021-02-11 08:49:27 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 256 seconds)
2021-02-11 08:51:22 +0100acidjnk_new2(~acidjnk@p200300d0c724a28468193f3bf077429d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-02-11 08:52:12 +0100star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com) (Ping timeout: 272 seconds)
2021-02-11 08:52:52 +0100kuribas(~user@ptr-25vy0i9m2qfbjp4f8l6.18120a2.ip6.access.telenet.be)
2021-02-11 08:53:01 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 08:57:01 +0100dhouthoo(~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be)
2021-02-11 08:58:30 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
2021-02-11 08:59:47 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 09:04:14 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 264 seconds)
2021-02-11 09:06:33 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
2021-02-11 09:06:35 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 09:09:33 +0100darjeeling_(~darjeelin@39.185.119.195) (Ping timeout: 264 seconds)
2021-02-11 09:09:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 09:11:47 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 265 seconds)
2021-02-11 09:13:57 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 09:14:27 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 09:17:56 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 09:18:30 +0100Yumasi(~guillaume@2a01:e0a:5cb:4430:1d1c:6484:7983:42aa)
2021-02-11 09:20:25 +0100ixaxaar(~ixaxaar@49.207.210.215) (Ping timeout: 240 seconds)
2021-02-11 09:22:53 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 09:23:52 +0100__minoru__shirae(~shiraeesh@109.166.59.8) (Ping timeout: 265 seconds)
2021-02-11 09:25:49 +0100_xor(~xor@74.215.46.133)
2021-02-11 09:28:09 +0100Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net)
2021-02-11 09:30:08 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de)
2021-02-11 09:30:41 +0100ixaxaar(~ixaxaar@49.207.210.215)
2021-02-11 09:32:28 +0100sucre(bab7277b@186.183.39.123)
2021-02-11 09:34:35 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 09:34:50 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 09:37:34 +0100_noblegas(uid91066@gateway/web/irccloud.com/x-xbarswtqtvvrgsrx)
2021-02-11 09:39:12 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 260 seconds)
2021-02-11 09:39:34 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-02-11 09:39:35 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 09:40:01 +0100Yumasi(~guillaume@2a01:e0a:5cb:4430:1d1c:6484:7983:42aa) (Ping timeout: 265 seconds)
2021-02-11 09:40:43 +0100Yumasi(~guillaume@2a01:e0a:5cb:4430:8da1:7ed2:2494:cea)
2021-02-11 09:41:48 +0100Varis(~Tadas@unaffiliated/varis)
2021-02-11 09:44:17 +0100sucre(bab7277b@186.183.39.123) ()
2021-02-11 09:45:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 09:46:28 +0100frobnicator(~frobnicat@185-227-75-147.dsl.cambrium.nl)
2021-02-11 09:47:03 +0100 <frobnicator> experimenting with haskell's generics I run into the problem that NoSelector type constructor cannot be found. I have imported GHC.Generics
2021-02-11 09:47:26 +0100 <frobnicator> the general case works: instance (GPrint a, Selector c) => GPrint (S1 c a) where ...
2021-02-11 09:48:23 +0100 <frobnicator> but this instance gives the error: instance GPrint a => GPrint (S1 NoSelector a) where
2021-02-11 09:48:51 +0100kritzefitz(~kritzefit@fw-front.credativ.com)
2021-02-11 09:49:19 +0100borne(~fritjof@200116b864f7290069fc6bd724c60777.dip.versatel-1u1.de)
2021-02-11 09:51:14 +0100 <[exa]> frobnicator: can you pastebin the code snippet and the error?
2021-02-11 09:51:29 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 09:52:49 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 09:53:45 +0100Franciman(~francesco@host-82-49-79-189.retail.telecomitalia.it)
2021-02-11 09:54:22 +0100xff0x(~xff0x@2001:1a81:5241:ba00:9669:dedb:a2c3:d63) (Ping timeout: 260 seconds)
2021-02-11 09:54:30 +0100shachaf_(~shachaf@unaffiliated/shachaf)
2021-02-11 09:54:50 +0100shachaf(~shachaf@unaffiliated/shachaf) (Disconnected by services)
2021-02-11 09:54:57 +0100shachaf_shachaf
2021-02-11 09:55:08 +0100xff0x(~xff0x@2001:1a81:5241:ba00:8e3f:649f:1f66:7cc2)
2021-02-11 09:55:20 +0100waskell(~quassel@d66-183-230-153.bchsia.telus.net)
2021-02-11 09:55:25 +0100c-rog(~c-rog@traffic.simst.im) (Ping timeout: 240 seconds)
2021-02-11 09:55:54 +0100 <frobnicator> [exa]: https://termbin.com/64jt
2021-02-11 09:56:22 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 09:56:34 +0100 <frobnicator> that is a MWE, don't bother with the language extensions, they are mostly for other stuff not included in the mwe
2021-02-11 09:57:18 +0100waskell_(~quassel@d66-183-230-153.bchsia.telus.net) (Ping timeout: 260 seconds)
2021-02-11 09:57:55 +0100c-rog(~c-rog@traffic.simst.im)
2021-02-11 10:00:03 +0100Vanilla[m](danielm14@gateway/shell/matrix.org/x-djofesfrpiyljgri) (Quit: Idle for 30+ days)
2021-02-11 10:00:06 +0100pedrorubster[m](pedrorubst@gateway/shell/matrix.org/x-pfrtranwguapeuuo) (Quit: Idle for 30+ days)
2021-02-11 10:00:09 +0100 <tomsmeding> frobnicator: what makes you think NoSelector should be in scope?
2021-02-11 10:00:29 +0100 <frobnicator> https://hackage.haskell.org/package/base-4.8.1.0/docs/GHC-Generics.html#t:NoSelector
2021-02-11 10:01:07 +0100 <tomsmeding> that's for base-4.8.1.0, which is for ghc 7.10.2
2021-02-11 10:01:13 +0100 <tomsmeding> I'm assuming you're not _that_ outdated?
2021-02-11 10:01:38 +0100 <tomsmeding> i.e. NoSelector may have existed in the past, but it does not anymore :p
2021-02-11 10:02:01 +0100jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2021-02-11 10:02:02 +0100 <frobnicator> I used boilerplate from here: https://wiki.haskell.org/GHC.Generics and got inspired by: https://hackage.haskell.org/package/generic-pretty-0.1.0
2021-02-11 10:02:06 +0100 <frobnicator> I see, thanks
2021-02-11 10:02:36 +0100 <frobnicator> so now I just check whether selName is empty to know whether it actually has a record selector?
2021-02-11 10:02:52 +0100 <tomsmeding> seems it disappeared with ghc 8.0
2021-02-11 10:02:56 +0100 <merijn> tomsmeding: 7.10 is only a decade old!
2021-02-11 10:03:08 +0100 <tomsmeding> fair
2021-02-11 10:03:14 +0100 <merijn> oh, wait, it's newer
2021-02-11 10:03:33 +0100 <merijn> A mere 5 years
2021-02-11 10:03:55 +0100mankyKitty(sid31287@gateway/web/irccloud.com/x-grqpmbvetqwtlmpr) (Quit: Connection closed for inactivity)
2021-02-11 10:04:09 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-malrnayvmzxcgqzv) (Quit: Connection closed for inactivity)
2021-02-11 10:05:16 +0100 <tomsmeding> frobnicator: https://hackage.haskell.org/package/base-4.14.1.0/docs/src/GHC.Generics.html#line-1323
2021-02-11 10:05:22 +0100 <tomsmeding> see that `fromMaybe ""`
2021-02-11 10:05:49 +0100 <frobnicator> thanks
2021-02-11 10:05:57 +0100 <tomsmeding> elsewhere on the GHC.Generics docs page (search for "record field" -- that has one hit) it says that that type field indicates whether there is a record selector
2021-02-11 10:05:59 +0100jonathanx(~jonathan@h-176-109.A357.priv.bahnhof.se)
2021-02-11 10:06:15 +0100 <tomsmeding> so yes, if the return value from selName is empty, it's not a record field :)
2021-02-11 10:06:26 +0100 <frobnicator> thanks
2021-02-11 10:08:01 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 10:08:03 +0100 <frobnicator> it seems to work now so I'm happy. Generics in Haskell are quite different from Clean
2021-02-11 10:08:18 +0100sim590(~sim590@modemcable090.207-203-24.mc.videotron.ca) (Quit: ZNC - http://znc.in)
2021-02-11 10:09:23 +0100Boomerang(~Boomerang@2a05:f6c7:2179:0:50ad:ccb:148c:6cba)
2021-02-11 10:10:09 +0100sim590(~sim590@modemcable090.207-203-24.mc.videotron.ca)
2021-02-11 10:11:23 +0100 <frobnicator> strictness is not included for example, but constructors and records do include information about arity, type and index
2021-02-11 10:12:53 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 10:18:35 +0100fendor(~fendor@178.165.131.10.wireless.dyn.drei.com)
2021-02-11 10:22:08 +0100acidjnk_new2(~acidjnk@p200300d0c724a28468193f3bf077429d.dip0.t-ipconnect.de)
2021-02-11 10:22:38 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-02-11 10:24:17 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 10:26:40 +0100ubert(~Thunderbi@p200300ecdf25d901ca5b76fffe29f233.dip0.t-ipconnect.de)
2021-02-11 10:26:55 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 10:29:22 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 260 seconds)
2021-02-11 10:29:29 +0100polux200137(~polux@51.15.169.172) (Quit: Ping timeout (120 seconds))
2021-02-11 10:29:34 +0100gehmehgeh(~ircuser1@gateway/tor-sasl/gehmehgeh)
2021-02-11 10:29:41 +0100polux200137(~polux@51.15.169.172)
2021-02-11 10:30:21 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de) (Ping timeout: 272 seconds)
2021-02-11 10:30:28 +0100knupfer1(~Thunderbi@200116b82cd759003d2b154ff303e8ba.dip.versatel-1u1.de)
2021-02-11 10:30:52 +0100janne(~janne@punainen.org) (Quit: puf)
2021-02-11 10:31:06 +0100janne(~janne@punainen.org)
2021-02-11 10:31:09 +0100jmsx_(~jordan@li1158-85.members.linode.com)
2021-02-11 10:31:37 +0100ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 268 seconds)
2021-02-11 10:31:38 +0100[df](~ben@51.15.198.140) (Ping timeout: 272 seconds)
2021-02-11 10:32:01 +0100Clint(~Clint@libre.fm/hacker/clint) (Ping timeout: 256 seconds)
2021-02-11 10:32:16 +0100jluttine(~jluttine@85-23-95-149.bb.dnainternet.fi) (Ping timeout: 272 seconds)
2021-02-11 10:32:16 +0100jmsx(~jordan@li1158-85.members.linode.com) (Ping timeout: 272 seconds)
2021-02-11 10:32:51 +0100knupfer1knupfer
2021-02-11 10:32:54 +0100swater(bouhier200@perso.iiens.net) (Ping timeout: 272 seconds)
2021-02-11 10:33:03 +0100[df](~ben@51.15.198.140)
2021-02-11 10:33:30 +0100ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2021-02-11 10:33:32 +0100b4er(~b4er@193.27.14.109) (Ping timeout: 272 seconds)
2021-02-11 10:33:44 +0100Clint(~Clint@libre.fm/hacker/clint)
2021-02-11 10:33:53 +0100b4er(~b4er@193.27.14.109)
2021-02-11 10:33:55 +0100swater(bouhier200@perso.iiens.net)
2021-02-11 10:34:57 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 10:36:41 +0100rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45) (Ping timeout: 246 seconds)
2021-02-11 10:42:57 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 10:42:59 +0100__monty__(~toonn@unaffiliated/toonn)
2021-02-11 10:43:15 +0100m4v1(~m4v@139.28.218.148) (Remote host closed the connection)
2021-02-11 10:44:40 +0100jluttine(~jluttine@85-23-95-149.bb.dnainternet.fi)
2021-02-11 10:49:45 +0100mimi_vx(mimi@nat/suse/x-wthbpapyzzblydgr)
2021-02-11 10:50:03 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 10:54:04 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds)
2021-02-11 10:54:25 +0100todda7(~torstein@athedsl-258913.home.otenet.gr) (Ping timeout: 240 seconds)
2021-02-11 10:54:26 +0100ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex) (Ping timeout: 268 seconds)
2021-02-11 10:55:49 +0100ChaiTRex(~ChaiTRex@gateway/tor-sasl/chaitrex)
2021-02-11 10:57:45 +0100p8m(p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 240 seconds)
2021-02-11 11:01:01 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 11:01:10 +0100chele(~chele@ip5b40237d.dynamic.kabel-deutschland.de)
2021-02-11 11:02:20 +0100m0rphism1(~m0rphism@HSI-KBW-085-216-104-059.hsi.kabelbw.de)
2021-02-11 11:03:24 +0100neiluj(~jco@unaffiliated/neiluj) (Remote host closed the connection)
2021-02-11 11:04:48 +0100bahamas(~lucian@188.27.48.99)
2021-02-11 11:04:48 +0100bahamas(~lucian@188.27.48.99) (Changing host)
2021-02-11 11:04:48 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 11:05:30 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 11:06:26 +0100star_cloud(~star_clou@ec2-34-220-44-120.us-west-2.compute.amazonaws.com)
2021-02-11 11:06:58 +0100viluon(uid453725@gateway/web/irccloud.com/x-xypldvhtsmepkmee)
2021-02-11 11:07:41 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 11:08:09 +0100rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45)
2021-02-11 11:11:54 +0100todda7(~torstein@athedsl-258913.home.otenet.gr)
2021-02-11 11:12:05 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Ping timeout: 240 seconds)
2021-02-11 11:13:07 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 11:13:53 +0100Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-02-11 11:14:09 +0100p8m(p8m@gateway/vpn/protonvpn/p8m)
2021-02-11 11:16:53 +0100rayyyy(~nanoz@gateway/tor-sasl/nanoz)
2021-02-11 11:17:55 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 256 seconds)
2021-02-11 11:24:12 +0100ubert(~Thunderbi@p200300ecdf25d901ca5b76fffe29f233.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-02-11 11:27:59 +0100Brukhar(~Brukhar@217.146.82.202)
2021-02-11 11:29:54 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 11:30:31 +0100thc202(~thc202@unaffiliated/thc202)
2021-02-11 11:31:28 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 265 seconds)
2021-02-11 11:32:11 +0100Tops2(~Tobias@dyndsl-095-033-021-211.ewe-ip-backbone.de)
2021-02-11 11:34:51 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 11:35:21 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 11:36:04 +0100bahamas(~lucian@188.27.48.99)
2021-02-11 11:36:04 +0100bahamas(~lucian@188.27.48.99) (Changing host)
2021-02-11 11:36:04 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 11:40:26 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 240 seconds)
2021-02-11 11:41:11 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 272 seconds)
2021-02-11 11:42:52 +0100sMuNiX(~sMuNiX@204.48.76.179)
2021-02-11 11:47:00 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 11:48:17 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 11:49:06 +0100 <ij> can lambdabot do those @ type annotations? (id @Double) :: Double -> Double
2021-02-11 11:49:29 +0100 <ij> I want to force a Num a into a Double in the fewest characters possible
2021-02-11 11:50:05 +0100 <ij> nope, not enabled. only now did I get the syntax right
2021-02-11 11:50:09 +0100 <tomsmeding> ij: yahb does
2021-02-11 11:50:17 +0100 <tomsmeding> % :t (id @Double)
2021-02-11 11:50:17 +0100 <yahb> tomsmeding: Double -> Double
2021-02-11 11:50:19 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 11:51:25 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 11:52:46 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 11:57:25 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 11:57:49 +0100fendor_(~fendor@91.141.3.135.wireless.dyn.drei.com)
2021-02-11 11:58:40 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 11:58:41 +0100sMuNiX(~sMuNiX@204.48.76.179) (Read error: Connection reset by peer)
2021-02-11 11:59:04 +0100rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45) (Ping timeout: 240 seconds)
2021-02-11 12:00:25 +0100fendor(~fendor@178.165.131.10.wireless.dyn.drei.com) (Ping timeout: 256 seconds)
2021-02-11 12:03:29 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 12:05:57 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 12:09:09 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 12:09:17 +0100gienah(~mwright@gentoo/developer/gienah)
2021-02-11 12:09:47 +0100hololeap(~hololeap@unaffiliated/hololeap) (Quit: KVIrc 5.0.1 Aria http://www.kvirc.net/)
2021-02-11 12:10:20 +0100jedws(~jedws@101.184.202.248)
2021-02-11 12:10:25 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 12:13:17 +0100rotaerk(rotaerk@2600:3c02::f03c:91ff:fe70:4a45)
2021-02-11 12:14:01 +0100ubert(~Thunderbi@p200300ecdf25d901ca5b76fffe29f233.dip0.t-ipconnect.de)
2021-02-11 12:14:13 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 12:14:40 +0100 <idnar> koala_man: ohhhhhh I've been scratching my head over the same issue for weeks! I have "ghc-options: -haddock" for HLS
2021-02-11 12:15:11 +0100 <ph88^> how would one have to constrain a programming language in order to prove it terminates ?
2021-02-11 12:15:38 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 264 seconds)
2021-02-11 12:16:32 +0100 <ph88^> maybe in other words: what programming language capabilities are left when made not turing complete
2021-02-11 12:18:33 +0100jedws(~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 12:19:11 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 12:20:33 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 12:20:52 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 256 seconds)
2021-02-11 12:21:00 +0100ftq(~ftq@85.255.237.66)
2021-02-11 12:21:28 +0100 <kuribas> ph88^: you need to prove recursion terminates
2021-02-11 12:21:54 +0100 <kuribas> usually by showing the recursive invocation is smaller then the current invocation.
2021-02-11 12:23:06 +0100 <ph88^> ok, any idea how i could do that ?
2021-02-11 12:23:52 +0100 <kuribas> so if you have a function f :: a -> b, you need another (total) function "measure :: a -> Integer", such that if f takes an argument x1 and recurses on x2, measure x1 > measure x2
2021-02-11 12:24:25 +0100 <kuribas> it also implies proof capabilities of your language.
2021-02-11 12:24:41 +0100 <kuribas> Or you keep the language simple enough that it can never recurse unboundedly.
2021-02-11 12:25:17 +0100 <ph88^> how could i do it without proof capabilities but instead keep the language simple enough that it can never recurse unboundly ?
2021-02-11 12:25:34 +0100 <kuribas> don't allow recursion
2021-02-11 12:25:48 +0100 <ph88^> no middle ground ?
2021-02-11 12:26:13 +0100 <kuribas> middle ground between allowing or not allowing recursion?
2021-02-11 12:26:28 +0100 <ph88^> yes
2021-02-11 12:26:56 +0100 <kuribas> I see some contradiction there...
2021-02-11 12:27:03 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 12:27:09 +0100 <ftq> Is Programming in Haskell up-to-date?
2021-02-11 12:27:22 +0100 <kuribas> ph88^: what problem do you want to solve?
2021-02-11 12:27:29 +0100 <byorgey> ph88^: you can do this by e.g. only allowing recursion with folds
2021-02-11 12:27:48 +0100 <ph88^> kuribas, that its guaranteed that the program outputs something
2021-02-11 12:27:48 +0100cocreature(~cocreatur@eirene.uberspace.de) (Read error: Connection reset by peer)
2021-02-11 12:28:04 +0100 <ph88^> byorgey, can you elaborate on this ?
2021-02-11 12:28:04 +0100 <kuribas> ph88^: are you designing a language?
2021-02-11 12:28:09 +0100 <ph88^> kuribas, ye
2021-02-11 12:28:35 +0100cocreature(~cocreatur@eirene.uberspace.de)
2021-02-11 12:29:06 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 12:29:28 +0100 <kuribas> a fold always terminates on finite lists.
2021-02-11 12:29:41 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 12:30:01 +0100edge563(~edge563@gateway/tor-sasl/edge563) (Ping timeout: 268 seconds)
2021-02-11 12:30:30 +0100 <kuribas> ph88^: if you want to go this route, you may want to study some total languages, like idris or agda...
2021-02-11 12:30:54 +0100 <kuribas> ph88^: or pie: https://thelittletyper.com/
2021-02-11 12:31:28 +0100 <ph88^> we are studying this ... just the thing is that we are exploring what we can already do now to make it "more stable" without making the commitment yet to integrate with agda or something
2021-02-11 12:31:36 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 12:31:36 +0100 <ph88^> so limiting the language is one option for us
2021-02-11 12:31:44 +0100edge563(~edge563@gateway/tor-sasl/edge563)
2021-02-11 12:31:46 +0100 <ph88^> that thing with only allowing recursion in folds sound good
2021-02-11 12:32:09 +0100 <byorgey> ph88^: every algebraic data type has a corresponding fold aka catamorphism. If you bake them into the language, you can disallow writing recursive functions and only allow calling the built-in folds.
2021-02-11 12:32:25 +0100 <byorgey> ph88^: for example, imagine if you could not write any explicitly recursive functions on lists, but you could call foldr.
2021-02-11 12:32:52 +0100 <byorgey> (well, this wouldn't work in Haskell because of laziness, lists can be infinite =)
2021-02-11 12:33:06 +0100rayyyy(~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 268 seconds)
2021-02-11 12:33:54 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 12:35:32 +0100 <ph88^> our language is strict
2021-02-11 12:36:10 +0100 <ph88^> thanks for your input kuribas & byorgey
2021-02-11 12:36:40 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 12:37:43 +0100 <swarmcollective> What if you only allow recursion in pure functions, verify that there exists conditional logic at the point the function calls itself, and verify that the arg or args involved in the conditional logic involve some "mutation" (x + 1). You could at least provide a warning that infinite recursion is likely if one of those conditions are not met?
2021-02-11 12:38:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-02-11 12:39:32 +0100 <ph88^> Ya maybe .. we like to know more certain than "likely" though
2021-02-11 12:39:34 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 256 seconds)
2021-02-11 12:39:38 +0100 <[exa]> swarmcollective: this kindof forces you to actually have for-cycle-like conditions in the code, and then it's cleaner to do without recursion.
2021-02-11 12:39:40 +0100 <ph88^> like 100% certain
2021-02-11 12:39:41 +0100 <swarmcollective> The complexity would increase when multiple functions are involved, but the same principle would apply.
2021-02-11 12:40:16 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 12:40:21 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-02-11 12:40:25 +0100 <byorgey> swarmcollective: this is actually done (e.g. Agda), the idea is that you check that the arguments are getting "smaller". Under certain conditions you can prove that the function is certainly terminating.
2021-02-11 12:42:45 +0100 <swarmcollective> At the same time, it seems that non-provable loops may be necessary where IO is involved. "loop forever until the user enters :q" which may never happen.
2021-02-11 12:43:08 +0100 <swarmcollective> s/loops/infinite recursion
2021-02-11 12:43:51 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 12:44:24 +0100Sheilong(uid293653@gateway/web/irccloud.com/x-xvjuaqpzyyceggep)
2021-02-11 12:45:45 +0100pera(~pera@unaffiliated/pera)
2021-02-11 12:45:48 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-02-11 12:45:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 12:46:09 +0100 <kuribas> you can have a non-total language on top of the total language to handle event loops.
2021-02-11 12:48:25 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 12:49:19 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 12:50:47 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 12:51:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-02-11 12:51:39 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 12:52:45 +0100aramend(~aramend@195.249.119.77)
2021-02-11 12:56:45 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 12:56:49 +0100neiluj(~jco@static.15.144.181.135.clients.your-server.de)
2021-02-11 12:56:49 +0100neiluj(~jco@static.15.144.181.135.clients.your-server.de) (Changing host)
2021-02-11 12:56:49 +0100neiluj(~jco@unaffiliated/neiluj)
2021-02-11 12:57:01 +0100MidAutumnHotaru(~MidAutumn@unaffiliated/midautumnhotaru) (Quit: Quit 啾)
2021-02-11 12:57:07 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 12:57:15 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 12:57:33 +0100neiluj(~jco@unaffiliated/neiluj) (Client Quit)
2021-02-11 12:57:51 +0100neiluj(~jco@static.15.144.181.135.clients.your-server.de)
2021-02-11 12:57:51 +0100neiluj(~jco@static.15.144.181.135.clients.your-server.de) (Changing host)
2021-02-11 12:57:51 +0100neiluj(~jco@unaffiliated/neiluj)
2021-02-11 12:58:14 +0100ftq(~ftq@85.255.237.66) (Ping timeout: 264 seconds)
2021-02-11 12:58:45 +0100MidAutumnHotaru(~MidAutumn@unaffiliated/midautumnhotaru)
2021-02-11 13:02:27 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 246 seconds)
2021-02-11 13:03:03 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 13:03:27 +0100 <carbolymer> I have emoji in one of the strings in the test case and it breaks tasty-discover, why is that?
2021-02-11 13:03:39 +0100 <carbolymer> also I'm the only person in the team with the problem
2021-02-11 13:03:51 +0100 <carbolymer> so I suspect I have incorrectly configured locale or sth?
2021-02-11 13:03:59 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 13:04:11 +0100 <__monty__> Sounds like a locale issue, yeah.
2021-02-11 13:04:20 +0100 <__monty__> Do you and your team all use UTF-8 locales?
2021-02-11 13:05:39 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 13:06:25 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 13:07:37 +0100 <carbolymer> yes
2021-02-11 13:08:05 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 13:08:51 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 13:11:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 13:12:05 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
2021-02-11 13:13:14 +0100knupfer(~Thunderbi@200116b82cd759003d2b154ff303e8ba.dip.versatel-1u1.de) (Remote host closed the connection)
2021-02-11 13:13:22 +0100knupfer(~Thunderbi@200116b82cd759001808a70bb290b517.dip.versatel-1u1.de)
2021-02-11 13:13:56 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 13:14:39 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 13:15:01 +0100rdivyanshu(uid322626@gateway/web/irccloud.com/x-gmicpttmmehoione)
2021-02-11 13:17:36 +0100__minoru__shirae(~shiraeesh@109.166.59.163)
2021-02-11 13:18:20 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
2021-02-11 13:18:51 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 13:21:13 +0100 <cheater> byorgey: i hope someone called that the "zeno algorithm"
2021-02-11 13:21:35 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 13:21:43 +0100ubert(~Thunderbi@p200300ecdf25d901ca5b76fffe29f233.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-02-11 13:24:21 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 13:25:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-02-11 13:26:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 13:26:11 +0100mouseghost(~draco@87-206-9-185.dynamic.chello.pl)
2021-02-11 13:26:11 +0100mouseghost(~draco@87-206-9-185.dynamic.chello.pl) (Changing host)
2021-02-11 13:26:11 +0100mouseghost(~draco@wikipedia/desperek)
2021-02-11 13:26:19 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br) (Quit: ZNC 1.7.5 - https://znc.in)
2021-02-11 13:26:38 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br)
2021-02-11 13:29:24 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 13:30:26 +0100revtintin(~revtintin@42.61.242.247) (Quit: WeeChat 1.9.1)
2021-02-11 13:31:42 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-02-11 13:31:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 13:32:29 +0100dhouthoo(~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) (Quit: WeeChat 3.0)
2021-02-11 13:32:48 +0100dhouthoo(~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be)
2021-02-11 13:33:20 +0100dh(dh@bsd.ee) (Quit: Lost terminal)
2021-02-11 13:33:50 +0100dh(dh@bsd.ee)
2021-02-11 13:34:15 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 13:35:24 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 13:35:29 +0100 <merijn> carbolymer: emoji + only broken on some systems = first suspect is broken locale configuration
2021-02-11 13:36:06 +0100m1dnight_(~m1dnight@188.ip-51-91-158.eu) (Quit: WeeChat 2.4)
2021-02-11 13:37:24 +0100m1dnight_(~m1dnight@188.ip-51-91-158.eu)
2021-02-11 13:37:57 +0100cmcma20(~cmcma20@l37-192-2-125.novotelecom.ru)
2021-02-11 13:37:59 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 13:41:09 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 13:43:10 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com)
2021-02-11 13:43:14 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 264 seconds)
2021-02-11 13:44:05 +0100timCF(~i.tkachuk@m91-129-101-103.cust.tele2.ee)
2021-02-11 13:45:36 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 13:46:23 +0100noctux(~noctux@unaffiliated/noctux) (Read error: Connection reset by peer)
2021-02-11 13:47:02 +0100noctux(~noctux@unaffiliated/noctux)
2021-02-11 13:47:45 +0100 <timCF> Hello! Do you know know any libraries/DSLs for definitions of state machines with some formal type-level (or term level) rules for state transitions? It seems like pretty difficult task to generalize, and usually people are building such things from scratch according domain tasks. But maybe there is something generic around?
2021-02-11 13:48:51 +0100m1dnight_(~m1dnight@188.ip-51-91-158.eu) (Read error: Connection reset by peer)
2021-02-11 13:49:14 +0100jamm_(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-02-11 13:49:40 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 13:50:01 +0100m1dnight_(~m1dnight@188.ip-51-91-158.eu)
2021-02-11 13:50:42 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 13:50:43 +0100Tario(~Tario@201.192.165.173)
2021-02-11 13:51:24 +0100 <merijn> I doubt it, tbh
2021-02-11 13:51:38 +0100ericsagn1(~ericsagne@2405:6580:0:5100:5542:a02b:6ef4:719e) (Ping timeout: 246 seconds)
2021-02-11 13:51:45 +0100jmsx(~jordan@li1158-85.members.linode.com)
2021-02-11 13:52:50 +0100Clint(~Clint@libre.fm/hacker/clint) (Ping timeout: 264 seconds)
2021-02-11 13:52:50 +0100jmsx_(~jordan@li1158-85.members.linode.com) (Ping timeout: 264 seconds)
2021-02-11 13:52:50 +0100Forkk(forkk@2600:3c00::f03c:91ff:fe84:de4d) (Ping timeout: 264 seconds)
2021-02-11 13:52:59 +0100Forkk_(forkk@2600:3c00::f03c:91ff:fe84:de4d)
2021-02-11 13:53:26 +0100cheers(user@unaffiliated/cheers) (Ping timeout: 264 seconds)
2021-02-11 13:54:01 +0100Clint(~Clint@libre.fm/hacker/clint)
2021-02-11 13:54:14 +0100machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-02-11 13:55:41 +0100cheers(user@unaffiliated/cheers)
2021-02-11 13:55:46 +0100boxscape(4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243)
2021-02-11 13:56:19 +0100 <boxscape> Am I right in thinking that Core doesn't have type inference? If so, does that make let expressions redundant, given lambda expressions?
2021-02-11 13:57:38 +0100__minoru__shirae(~shiraeesh@109.166.59.163) (Read error: No route to host)
2021-02-11 13:57:48 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 13:59:23 +0100zebrag(~inkbottle@aaubervilliers-654-1-112-148.w86-198.abo.wanadoo.fr)
2021-02-11 14:01:15 +0100 <lortabac> boxscape: maybe let's are needed for recursion?
2021-02-11 14:01:28 +0100 <boxscape> lortabac ah, good point
2021-02-11 14:02:57 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 14:04:12 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 14:04:21 +0100ericsagn1(~ericsagne@2405:6580:0:5100:b04a:c81a:c281:6323)
2021-02-11 14:05:52 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 14:08:10 +0100aramend(~aramend@195.249.119.77) (Quit: aramend)
2021-02-11 14:08:17 +0100aramend(~aramend@195.249.119.77)
2021-02-11 14:08:46 +0100geekosaur(82650c7a@130.101.12.122)
2021-02-11 14:09:12 +0100ukari(~ukari@unaffiliated/ukari) (Remote host closed the connection)
2021-02-11 14:11:13 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 14:14:42 +0100__minoru__shirae(~shiraeesh@109.166.59.163)
2021-02-11 14:15:23 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 14:15:51 +0100carlomagno(~cararell@148.87.23.4)
2021-02-11 14:17:27 +0100son0p(~son0p@181.58.39.182)
2021-02-11 14:18:36 +0100urodna(~urodna@unaffiliated/urodna)
2021-02-11 14:19:16 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 14:20:38 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 14:22:01 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd)
2021-02-11 14:26:03 +0100puffnfresh(~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net) (Ping timeout: 256 seconds)
2021-02-11 14:27:43 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com) (Quit: Computer has gone to sleep.)
2021-02-11 14:27:49 +0100puffnfresh(~puffnfres@119-17-138-164.77118a.mel.static.aussiebb.net)
2021-02-11 14:30:31 +0100Brukhar(~Brukhar@217.146.82.202) (Remote host closed the connection)
2021-02-11 14:32:11 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 14:32:56 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 272 seconds)
2021-02-11 14:34:20 +0100olligobber(olligobber@gateway/vpn/privateinternetaccess/olligobber) (Read error: Connection reset by peer)
2021-02-11 14:37:04 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 14:37:39 +0100 <merijn> boxscape: Core has explicit type arguments, yeah
2021-02-11 14:37:55 +0100 <boxscape> okay
2021-02-11 14:39:07 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 14:39:22 +0100pera(~pera@unaffiliated/pera)
2021-02-11 14:41:26 +0100shridhar123(~shridhar9@183.83.38.71)
2021-02-11 14:42:09 +0100elfets(~elfets@ip-37-201-23-96.hsi13.unitymediagroup.de)
2021-02-11 14:43:50 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 264 seconds)
2021-02-11 14:45:37 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 14:47:04 +0100ixlun(~user@213.205.241.221)
2021-02-11 14:47:30 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 14:47:35 +0100 <carbolymer> merijn: yeah, I had export LANG=C.UTF-8 in my Makefile which was breaking emoji
2021-02-11 14:47:46 +0100 <merijn> carbolymer: Hah
2021-02-11 14:47:46 +0100 <carbolymer> strangely, I've added that to fix build previously
2021-02-11 14:47:53 +0100 <ixlun> Hi all, I was just wondering if anyone knew how native support for the Apple M1 chip was doing?
2021-02-11 14:48:00 +0100 <merijn> ixlun: In progress
2021-02-11 14:49:22 +0100 <merijn> ixlun: You can already run the x64 version of GHC on M1, but I think proper 1st class support will probably only be in 9.2? But I'm not sure, you'd have to check GHC gitlab to see how things are going
2021-02-11 14:49:37 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 14:50:25 +0100 <merijn> Which goes for pretty much all ARM support, I think, not just M1
2021-02-11 14:51:21 +0100iqubic`(~user@c-67-171-38-72.hsd1.wa.comcast.net)
2021-02-11 14:51:42 +0100 <ixlun> Indeed, I was thinking that hopefully the M1 chip will help drive support for ARM platforms.
2021-02-11 14:52:53 +0100 <merijn> ixlun: angerman (and a few others?) have been slogging away at ARM support for a while now
2021-02-11 14:53:26 +0100iqubic(~user@2601:602:9500:4870:2469:bd3:184e:687f) (Ping timeout: 264 seconds)
2021-02-11 14:53:33 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com)
2021-02-11 14:53:51 +0100 <angerman> we'll likely have a native M1 8.10.5 release sometime soon, a 9.0.2 release sometime after that, and 9.2 should ship with a native codegen
2021-02-11 14:54:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 14:54:54 +0100 <ixlun> That's cool! I presume 8.10.5 and 9.0.2 will use the LLVM backend?
2021-02-11 14:55:14 +0100 <angerman> https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4795
2021-02-11 14:55:14 +0100 <angerman> https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3641
2021-02-11 14:55:26 +0100 <angerman> yes, 8.10.5 and 9.0.2 will have to rely on the llvm backend.
2021-02-11 14:55:46 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-02-11 14:56:21 +0100jedws(~jedws@101.184.202.248)
2021-02-11 14:56:22 +0100 <angerman> if apple hadn't gone with a custom c calling conv, we'd have had releases a few month ago.
2021-02-11 14:57:33 +0100 <angerman> the combination of apple deciding to build a custom c calling convention for aarch64 on darwin, and ghc cutting corners wrt to sized types in the backend meant we needed to (a) fix this properly in 9.2, and (b) find alternative fixes for legacy releases.
2021-02-11 14:58:12 +0100 <angerman> I don't think having 9.2 being the first aarch64-darwin compiler would be agood idea, especially as there will be plenty of library fallout, which would mean that the first likely useable version could be as far out as 9.6 or 9.8
2021-02-11 14:59:06 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Remote host closed the connection)
2021-02-11 14:59:07 +0100ClaudiusMaximus(~claude@191.123.199.146.dyn.plus.net)
2021-02-11 14:59:12 +0100ClaudiusMaximus(~claude@191.123.199.146.dyn.plus.net) (Changing host)
2021-02-11 14:59:12 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus)
2021-02-11 14:59:50 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-02-11 15:00:12 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9)
2021-02-11 15:02:11 +0100 <ixlun> Huh, I didn't know that Apple used a custom calling convention, I assumed they would have just used the standard aarch64 PCS. Have they published the call standard that they use?
2021-02-11 15:04:02 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd)
2021-02-11 15:04:15 +0100danza(~francesco@151.53.74.130) (Ping timeout: 246 seconds)
2021-02-11 15:04:26 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 15:04:35 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd) (Client Quit)
2021-02-11 15:05:38 +0100alx741(~alx741@186.178.110.250)
2021-02-11 15:06:51 +0100shridhar123(~shridhar9@183.83.38.71) (Quit: Leaving)
2021-02-11 15:07:56 +0100hyperisco(~hyperisco@104-195-141-253.cpe.teksavvy.com)
2021-02-11 15:09:09 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 246 seconds)
2021-02-11 15:09:36 +0100danza(~francesco@151.53.65.193)
2021-02-11 15:10:03 +0100zangi(~azure@103.154.230.250)
2021-02-11 15:10:11 +0100pjb(~t@2a01cb04063ec500ac61b0739aec887b.ipv6.abo.wanadoo.fr) (Ping timeout: 272 seconds)
2021-02-11 15:10:12 +0100hseg(~gesh@185.120.124.95)
2021-02-11 15:10:15 +0100neiluj(~jco@unaffiliated/neiluj) (Quit: leaving)
2021-02-11 15:12:40 +0100forgottenone(~forgotten@176.42.19.18) (Quit: Konversation terminated!)
2021-02-11 15:12:42 +0100geekosaur(82650c7a@130.101.12.122) (Ping timeout: 240 seconds)
2021-02-11 15:12:54 +0100 <zangi> let's say I have a source file called Foo.hs, it has `import Foo; import Bar; import Baz` you name it, and it uses a function called `foo` from one of the imported modules, how do I find out which module `foo` function came from?
2021-02-11 15:13:37 +0100 <carbolymer> well, in such case only one of those modules can contain foo
2021-02-11 15:13:46 +0100 <carbolymer> otherwise you'll get compilation error
2021-02-11 15:14:14 +0100 <zangi> using hoogle seems inefficient, I have to `hoogle Foo` `hoogle Bar` `hoogle Baz` to find out where foo is located
2021-02-11 15:14:14 +0100 <carbolymer> zangi: and to find that out you need some additional tool, like HLS
2021-02-11 15:16:09 +0100polyphem(~p0lyph3m@2a02:810d:640:776c:76d7:55f6:f85b:c889)
2021-02-11 15:16:31 +0100absence(torgeihe@hildring.pvv.ntnu.no)
2021-02-11 15:16:45 +0100 <Cale> zangi: You can use hoogle to search for foo instead
2021-02-11 15:16:52 +0100aramend(~aramend@195.249.119.77) (Quit: aramend)
2021-02-11 15:18:10 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 15:19:23 +0100deviantfero(~deviantfe@190.150.27.58)
2021-02-11 15:20:19 +0100 <absence> are there other ways to pattern match using variables than with guards, e.g. "Just a | a == myvar"? i realise that "Just myvar" introduces a new myvar that shadows the other one
2021-02-11 15:20:39 +0100geekosaur(82650c7a@130.101.12.122)
2021-02-11 15:21:16 +0100 <zangi> Cale: but then I have to see whether the resulted modules exist in Foo.hs, since it's not just one module that has `foo` function
2021-02-11 15:22:28 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 15:22:48 +0100 <angerman> ixlun: yes, they pack excess arguments on the stack (instead of assining each one an 64bit slot). Similarly extension is expected at the receiver.
2021-02-11 15:24:42 +0100 <zangi> carbolymer: that seems good, but I'm not a big fan of IDE,
2021-02-11 15:25:13 +0100 <zangi> I think I have to write simple script for this, i.e. `sed -n '/import\s\+\(qualified\s\+\)\?/s///p' Foo.hs | sed 's/\s.*//; s/(.*//'`
2021-02-11 15:25:31 +0100 <geekosaur> absence, no
2021-02-11 15:25:46 +0100 <geekosaur> you cannot use pattern matching to test equality except in the case of constructors
2021-02-11 15:27:24 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 15:29:33 +0100RusAlex(~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
2021-02-11 15:29:48 +0100cads(~cads@ip-64-72-99-232.lasvegas.net)
2021-02-11 15:30:22 +0100acidjnk_new2(~acidjnk@p200300d0c724a28468193f3bf077429d.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2021-02-11 15:31:01 +0100 <absence> geekosaur: right, that makes sense. i don't suppose there are any extensions that could be (ab)used to make the syntax "nicer"?
2021-02-11 15:31:12 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 15:31:23 +0100 <geekosaur> not so far as I am aware
2021-02-11 15:31:33 +0100RusAlex(~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
2021-02-11 15:31:48 +0100 <geekosaur> pattern synonyms handle certain specific cases though
2021-02-11 15:32:35 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 15:33:25 +0100rayyyy(~nanoz@gateway/tor-sasl/nanoz)
2021-02-11 15:33:42 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
2021-02-11 15:35:20 +0100 <absence> geekosaur: with viewpatterns i guess i could write something like "Just ((== myvar) -> True)", but it's hardly an improvement. :) pattern synonyms seem daunting, which specific cases do you mean?
2021-02-11 15:35:21 +0100_vaibhavingale_(~Adium@203.188.228.9) (Ping timeout: 264 seconds)
2021-02-11 15:36:18 +0100 <geekosaur> you can't capture existing bindings for use in the definition of the synonym, only literals
2021-02-11 15:36:25 +0100hseg(~gesh@185.120.124.95) (Ping timeout: 240 seconds)
2021-02-11 15:36:27 +0100 <geekosaur> which again means it's not helpful
2021-02-11 15:36:49 +0100__monty__(~toonn@unaffiliated/toonn) (Quit: leaving)
2021-02-11 15:37:25 +0100 <merijn> absence: What's the type of 'a'?
2021-02-11 15:37:59 +0100 <absence> merijn: hm, i guess bytestring
2021-02-11 15:39:20 +0100 <merijn> absence: Why both with the pattern match, you could just do something like "maybe False (==myvar)"?
2021-02-11 15:39:30 +0100 <merijn> (assuming Nothing should be False)
2021-02-11 15:39:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 15:39:46 +0100 <merijn> :t \x -> maybe False (==x)
2021-02-11 15:39:47 +0100 <lambdabot> Eq a => a -> Maybe a -> Bool
2021-02-11 15:39:50 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 15:40:18 +0100 <absence> merijn: ah right, the Maybe was just an excuse to pattern match in a small example, the real type is a nested monstrosity
2021-02-11 15:40:46 +0100 <merijn> In that case "abstract out as much of the monstrosity as possible :p
2021-02-11 15:41:04 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd)
2021-02-11 15:42:49 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:c072:d296:b02a:1fd) (Client Quit)
2021-02-11 15:43:06 +0100 <absence> merijn: i could certainly make it into a Maybe that way. i'll keep that in mind for when/if i have to match it against multiple values, thanks!
2021-02-11 15:44:22 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 260 seconds)
2021-02-11 15:44:30 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 15:45:35 +0100hseg(~gesh@185.120.124.95)
2021-02-11 15:46:41 +0100lemmih(~lemmih@2406:3003:2072:44:d7ba:3597:c07a:fe3d)
2021-02-11 15:47:24 +0100cads(~cads@ip-64-72-99-232.lasvegas.net) (Read error: Connection reset by peer)
2021-02-11 15:50:05 +0100seveg(~gabriel@188-167-252-202.dynamic.chello.sk) (Ping timeout: 240 seconds)
2021-02-11 15:51:01 +0100zangi(~azure@103.154.230.250) (Ping timeout: 265 seconds)
2021-02-11 15:51:44 +0100zangi(~azure@103.154.230.250)
2021-02-11 15:54:13 +0100dandart(~Thunderbi@home.dandart.co.uk)
2021-02-11 15:54:47 +0100dandart(~Thunderbi@home.dandart.co.uk) (Client Quit)
2021-02-11 15:56:58 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 15:57:11 +0100geekosaur(82650c7a@130.101.12.122) (Quit: Connection closed)
2021-02-11 15:57:28 +0100_vaibhavingale_(~Adium@42.106.216.206)
2021-02-11 16:02:07 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 16:02:41 +0100RusAlex(~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
2021-02-11 16:03:18 +0100Franciman(~francesco@host-82-49-79-189.retail.telecomitalia.it) (Quit: Leaving)
2021-02-11 16:04:14 +0100darjeeling_(~darjeelin@39.185.119.195)
2021-02-11 16:07:41 +0100ulidtko(~ulidtko@194.54.80.38)
2021-02-11 16:09:43 +0100whald(~trem@2a02:810a:8100:11a6:49d8:fc82:15f5:ecec)
2021-02-11 16:10:39 +0100jedws(~jedws@101.184.202.248) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 16:10:58 +0100cmcma20(~cmcma20@l37-192-2-125.novotelecom.ru) (Remote host closed the connection)
2021-02-11 16:11:11 +0100son0p(~son0p@181.58.39.182) (Quit: leaving)
2021-02-11 16:12:07 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 16:12:32 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 16:12:33 +0100dandart(~Thunderbi@home.dandart.co.uk)
2021-02-11 16:12:56 +0100Moyst_Moyst
2021-02-11 16:12:58 +0100zangi(~azure@103.154.230.250) (Quit: WeeChat 2.9)
2021-02-11 16:14:15 +0100Stuk(~Stuk@139.28.218.148)
2021-02-11 16:15:20 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 16:16:45 +0100tsrt^(tsrt@ip98-184-89-2.mc.at.cox.net) ()
2021-02-11 16:19:23 +0100raym(~ray@45.64.220.53) (Quit: leaving)
2021-02-11 16:19:40 +0100raym(~ray@115.187.32.9)
2021-02-11 16:20:30 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 265 seconds)
2021-02-11 16:21:20 +0100ep1ctetus(~epictetus@ip72-194-215-136.sb.sd.cox.net)
2021-02-11 16:21:48 +0100cr3(~cr3@192-222-143-195.qc.cable.ebox.net)
2021-02-11 16:22:41 +0100dandart(~Thunderbi@home.dandart.co.uk) (Quit: dandart)
2021-02-11 16:23:25 +0100Neuromancer(~Neuromanc@unaffiliated/neuromancer) (Ping timeout: 240 seconds)
2021-02-11 16:24:31 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-02-11 16:25:27 +0100RusAlex(~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
2021-02-11 16:26:08 +0100Jd007(~Jd007@162.156.11.151)
2021-02-11 16:29:53 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 16:31:35 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 16:32:35 +0100ixlun(~user@213.205.241.221) (Ping timeout: 265 seconds)
2021-02-11 16:33:33 +0100_vaibhavingale_(~Adium@42.106.216.206) (Ping timeout: 264 seconds)
2021-02-11 16:34:12 +0100 <merijn> Anyone happen to know what the timeline for cabal-install 3.4 is now that GHC 9 is finally out?
2021-02-11 16:34:27 +0100rdivyanshu(uid322626@gateway/web/irccloud.com/x-gmicpttmmehoione) (Quit: Connection closed for inactivity)
2021-02-11 16:35:39 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-02-11 16:36:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 16:36:50 +0100_vaibhavingale_(~Adium@203.188.228.9)
2021-02-11 16:37:50 +0100srk(~sorki@gateway/tor-sasl/sorki) (Remote host closed the connection)
2021-02-11 16:37:50 +0100hexo(~hexo@gateway/tor-sasl/hexo) (Remote host closed the connection)
2021-02-11 16:37:50 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu)
2021-02-11 16:38:07 +0100srk(~sorki@gateway/tor-sasl/sorki)
2021-02-11 16:38:09 +0100hexo(~hexo@gateway/tor-sasl/hexo)
2021-02-11 16:39:28 +0100 <merijn> And, unrelatedly, can I simply mv ~/.cabal/store somewhere else and update ~/.cabal/config and expect everything to "Just Work (TM)"?
2021-02-11 16:39:37 +0100fredcy(~fredcy@mail.yankowski.com) (Ping timeout: 268 seconds)
2021-02-11 16:40:33 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 16:41:08 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-02-11 16:41:36 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-02-11 16:42:21 +0100fredcy(~fredcy@mail.yankowski.com)
2021-02-11 16:42:41 +0100seveg(~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk)
2021-02-11 16:43:32 +0100jedws(~jedws@101.184.202.248)
2021-02-11 16:43:46 +0100elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net)
2021-02-11 16:44:43 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 16:44:50 +0100jedws(~jedws@101.184.202.248) (Client Quit)
2021-02-11 16:45:19 +0100zaquest(~notzaques@5.128.210.178) (Remote host closed the connection)
2021-02-11 16:45:38 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Ping timeout: 264 seconds)
2021-02-11 16:49:43 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 16:50:02 +0100cuz(~user@2601:182:cc02:8b0:cc62:3a06:1cda:4f46)
2021-02-11 16:50:04 +0100berberman_(~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-11 16:50:23 +0100berberman(~berberman@unaffiliated/berberman)
2021-02-11 16:50:50 +0100 <merijn> Not all at once ;)
2021-02-11 16:51:29 +0100hekkaidekapus[(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds)
2021-02-11 16:51:31 +0100Boomerang(~Boomerang@2a05:f6c7:2179:0:50ad:ccb:148c:6cba) (Ping timeout: 272 seconds)
2021-02-11 16:51:45 +0100slack1256(~slack1256@dvc-186-186-101-190.movil.vtr.net)
2021-02-11 16:51:53 +0100 <cuz> does anyone know what you would call a type that can be either a single value of type a or a list of values (all of which are type a)?
2021-02-11 16:51:58 +0100 <merijn> But I've got another question: I know how to make a hierarchy using the Exception class, but there's no real way to "adopt" an existing exception to add it to my hierarchy, right?
2021-02-11 16:52:16 +0100 <merijn> cuz: NonEmpty? :p
2021-02-11 16:52:48 +0100 <merijn> cuz: What you describe basically sounds like "a list that's never empty" (1 value just be a single element list)
2021-02-11 16:53:34 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com) (Quit: ["Textual IRC Client: www.textualapp.com"])
2021-02-11 16:53:39 +0100hiptobecubic(~john@unaffiliated/hiptobecubic)
2021-02-11 16:56:53 +0100 <lortabac> to me it sounds like a normal list
2021-02-11 16:57:25 +0100 <lortabac> unless there is some semantic distinction between 'Only x' and '[x]'
2021-02-11 16:57:35 +0100forgottenone(~forgotten@176.42.17.164)
2021-02-11 16:58:06 +0100ixlun(~user@213.205.241.221)
2021-02-11 17:00:03 +0100 <merijn> lortabac: Ah, I had assumed the list to not be empty, but you're right
2021-02-11 17:00:48 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 17:01:08 +0100hekkaidekapus[(~tchouri@gateway/tor-sasl/hekkaidekapus)
2021-02-11 17:02:19 +0100 <lortabac> merijn: btw, resuming a discussion from yesterday... it still isn't clear to me how '(\_ -> x) y' is optimized to 'x'
2021-02-11 17:02:42 +0100pjb(~t@2a01cb04063ec500fd9a528e1ab44688.ipv6.abo.wanadoo.fr)
2021-02-11 17:02:47 +0100 <merijn> lortabac: That seems trivial
2021-02-11 17:03:21 +0100 <merijn> lortabac: lambda + argument is trivial to rewrite into "just subtitute argument in the lambda body"
2021-02-11 17:03:34 +0100 <merijn> And if the lambda binding is a wildcard _, you don't even have to do anything
2021-02-11 17:03:58 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 17:04:06 +0100hnOsmium0001(uid453710@gateway/web/irccloud.com/x-wvvgdsbomferygig)
2021-02-11 17:04:26 +0100 <c_wraith> is that the process ghc calls simplification?
2021-02-11 17:05:13 +0100 <slack1256> Is there any downside on having `row types` on a language/ecosystem? This is apart of implementation details on the compiler.
2021-02-11 17:05:21 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 246 seconds)
2021-02-11 17:05:24 +0100 <slack1256> I`ve only heard nice things about them.
2021-02-11 17:06:12 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 17:07:32 +0100prinned(~vvkrip0@103.206.114.67)
2021-02-11 17:11:09 +0100RusAlex(~Chel@unaffiliated/rusalex) (Ping timeout: 272 seconds)
2021-02-11 17:11:56 +0100prinned(~vvkrip0@103.206.114.67) (Quit: WeeChat 2.9)
2021-02-11 17:12:50 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2021-02-11 17:13:32 +0100dyeplexer(~lol@unaffiliated/terpin)
2021-02-11 17:14:54 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-02-11 17:15:51 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 17:16:27 +0100Deide(~Deide@217.155.19.23)
2021-02-11 17:17:18 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 17:17:40 +0100liyang(~liyang@90.253.54.54) (Quit: leaving)
2021-02-11 17:18:33 +0100royal_screwup21(52254809@gateway/web/cgi-irc/kiwiirc.com/ip.82.37.72.9) (Quit: Connection closed)
2021-02-11 17:18:37 +0100RusAlex(~Chel@unaffiliated/rusalex) (Read error: Connection reset by peer)
2021-02-11 17:22:28 +0100geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr)
2021-02-11 17:24:59 +0100zaquest(~notzaques@5.128.210.178)
2021-02-11 17:25:56 +0100mimi_vx(mimi@nat/suse/x-wthbpapyzzblydgr) (Ping timeout: 240 seconds)
2021-02-11 17:26:16 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 17:26:35 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 17:27:23 +0100alx741(~alx741@186.178.110.250) (Ping timeout: 256 seconds)
2021-02-11 17:28:54 +0100Boomerang(~Boomerang@2a05:f6c7:2179:0:50ad:ccb:148c:6cba)
2021-02-11 17:29:14 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 17:32:42 +0100mirrorbird(~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f)
2021-02-11 17:32:51 +0100electricityZZZZ(~electrici@108-216-157-17.lightspeed.sntcca.sbcglobal.net)
2021-02-11 17:35:42 +0100RusAlex(~Chel@unaffiliated/rusalex)
2021-02-11 17:39:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 17:40:10 +0100alx741(~alx741@186.178.110.40)
2021-02-11 17:45:10 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 17:46:43 +0100berberman(~berberman@unaffiliated/berberman) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-11 17:47:13 +0100berberman(~berberman@unaffiliated/berberman)
2021-02-11 17:47:16 +0100forell(~forell@unaffiliated/forell) (Ping timeout: 256 seconds)
2021-02-11 17:48:27 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 17:48:44 +0100nnm(~nnm@109-252-35-129.nat.spd-mgts.ru)
2021-02-11 17:53:24 +0100ukari(~ukari@unaffiliated/ukari)
2021-02-11 17:54:20 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 272 seconds)
2021-02-11 17:55:21 +0100danvet_(~danvet@212-51-149-181.fiber7.init7.net)
2021-02-11 17:58:17 +0100nbloomf(~nbloomf@2600:1700:ad14:3020:ccf7:ea8d:5b43:dead)
2021-02-11 18:01:05 +0100boxscape(4ff0baf3@gateway/web/cgi-irc/kiwiirc.com/ip.79.240.186.243) (Ping timeout: 240 seconds)
2021-02-11 18:03:13 +0100 <ph88^> is it possible to initialize a git repository as part of stack new project my-template ?
2021-02-11 18:03:46 +0100 <c_wraith> I don't see why not. It's just a matter of creating a .git directory with a few files inside it
2021-02-11 18:04:13 +0100 <c_wraith> when you have no commits and no remotes, there isn't much present
2021-02-11 18:05:23 +0100hseg(~gesh@185.120.124.95) (Ping timeout: 265 seconds)
2021-02-11 18:05:39 +0100geekosaur(82650c7a@130.101.12.122)
2021-02-11 18:06:05 +0100supercoven(~Supercove@196.244.192.57)
2021-02-11 18:06:06 +0100supercoven(~Supercove@196.244.192.57) (Max SendQ exceeded)
2021-02-11 18:06:12 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 18:06:20 +0100supercoven(~Supercove@196.244.192.57)
2021-02-11 18:06:21 +0100supercoven(~Supercove@196.244.192.57) (Max SendQ exceeded)
2021-02-11 18:06:35 +0100supercoven(~Supercove@196.244.192.57)
2021-02-11 18:06:36 +0100supercoven(~Supercove@196.244.192.57) (Max SendQ exceeded)
2021-02-11 18:06:50 +0100supercoven(~Supercove@196.244.192.57)
2021-02-11 18:07:50 +0100ericsagn1(~ericsagne@2405:6580:0:5100:b04a:c81a:c281:6323) (Ping timeout: 246 seconds)
2021-02-11 18:07:54 +0100nnm(~nnm@109-252-35-129.nat.spd-mgts.ru) (Quit: nnm)
2021-02-11 18:08:42 +0100 <c_wraith> ph88^: checkout out /usr/share/git-core/templates to see what directories and files git init creates by default
2021-02-11 18:08:42 +0100vchlup(~vchlup@nat.brnet.cz) (Read error: Connection reset by peer)
2021-02-11 18:09:04 +0100 <ph88^> thanks c_wraith :)
2021-02-11 18:09:26 +0100vchlup(~vchlup@nat.brnet.cz)
2021-02-11 18:10:40 +0100 <c_wraith> It creates a couple more files by default. check on the results of running `git init` in an empty directory
2021-02-11 18:15:45 +0100danvet_(~danvet@212-51-149-181.fiber7.init7.net) (Ping timeout: 240 seconds)
2021-02-11 18:18:21 +0100cuz(~user@2601:182:cc02:8b0:cc62:3a06:1cda:4f46) ("ERC (IRC client for Emacs 27.1)")
2021-02-11 18:20:17 +0100ericsagn1(~ericsagne@2405:6580:0:5100:f37e:89b0:6afc:b223)
2021-02-11 18:20:55 +0100juuandyy(~juuandyy@90.106.228.121)
2021-02-11 18:22:21 +0100elliott_(~elliott@pool-108-51-101-42.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
2021-02-11 18:22:27 +0100whald(~trem@2a02:810a:8100:11a6:49d8:fc82:15f5:ecec) (Remote host closed the connection)
2021-02-11 18:22:36 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 18:28:56 +0100geowiesnot(~user@i15-les02-ix2-87-89-181-157.sfr.lns.abo.bbox.fr) (Ping timeout: 240 seconds)
2021-02-11 18:30:40 +0100hiroaki(~hiroaki@2a02:908:4b18:8c40::e69c)
2021-02-11 18:33:41 +0100chele(~chele@ip5b40237d.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2021-02-11 18:36:05 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus) (Ping timeout: 240 seconds)
2021-02-11 18:36:10 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk)
2021-02-11 18:37:03 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 18:37:33 +0100vicfred(~vicfred@unaffiliated/vicfred)
2021-02-11 18:42:26 +0100fendor_fendor
2021-02-11 18:44:18 +0100charukiewicz(~charukiew@irouteince04.i.subnet.rcn.com)
2021-02-11 18:44:21 +0100hseg(~gesh@185.120.124.95)
2021-02-11 18:46:05 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 18:47:06 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 18:48:26 +0100bitmagie(~Thunderbi@200116b806be210060ed087e803904ac.dip.versatel-1u1.de)
2021-02-11 18:50:22 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 18:53:28 +0100sagry(bab727b4@186.183.39.180)
2021-02-11 18:54:05 +0100ambidextrose(~fut-learn@107.72.97.52)
2021-02-11 18:56:37 +0100ambidextrose(~fut-learn@107.72.97.52) ()
2021-02-11 18:56:54 +0100haritz(~hrtz@unaffiliated/haritz) (Read error: Connection reset by peer)
2021-02-11 18:57:00 +0100juuandyy(~juuandyy@90.106.228.121) (Ping timeout: 246 seconds)
2021-02-11 18:58:02 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2021-02-11 18:58:03 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net) (Ping timeout: 256 seconds)
2021-02-11 18:59:09 +0100sz0(uid110435@gateway/web/irccloud.com/x-ooxwbbjjmicufxrr) (Quit: Connection closed for inactivity)
2021-02-11 18:59:18 +0100justsomeguy(~justsomeg@unaffiliated/--/x-3805311)
2021-02-11 18:59:49 +0100kritzefitz(~kritzefit@fw-front.credativ.com) (Remote host closed the connection)
2021-02-11 19:00:01 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-02-11 19:00:44 +0100pfurla(~pfurla@ool-182ed2e2.dyn.optonline.net)
2021-02-11 19:01:17 +0100haritz(~hrtz@62.3.70.206)
2021-02-11 19:01:17 +0100haritz(~hrtz@62.3.70.206) (Changing host)
2021-02-11 19:01:17 +0100haritz(~hrtz@unaffiliated/haritz)
2021-02-11 19:02:44 +0100sagry(bab727b4@186.183.39.180) ()
2021-02-11 19:03:12 +0100rajivr(uid269651@gateway/web/irccloud.com/x-lahbxsmpijdsyxwl) (Quit: Connection closed for inactivity)
2021-02-11 19:03:47 +0100 <hseg> hey, trying to set a breakpoint in a where clause, ghci complains that "no breakpoint found" when i try by-line syntax and "parse error" when i try qualification syntax
2021-02-11 19:03:48 +0100 <hseg> (i.e. :break line and :break top.clause, resp)
2021-02-11 19:03:56 +0100Major_Biscuit(~Major_Bis@82-169-100-198.biz.kpn.net) (Ping timeout: 240 seconds)
2021-02-11 19:05:16 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 240 seconds)
2021-02-11 19:05:36 +0100jakob_(~textual@p200300f49f0a5500b1781738d6a5e868.dip0.t-ipconnect.de)
2021-02-11 19:06:50 +0100Saukk(~Saukk@83-148-239-3.dynamic.lounea.fi)
2021-02-11 19:06:59 +0100_noblegas(uid91066@gateway/web/irccloud.com/x-xbarswtqtvvrgsrx) (Quit: Connection closed for inactivity)
2021-02-11 19:07:43 +0100juuandyy(~juuandyy@90.106.228.121)
2021-02-11 19:08:56 +0100Franciman(~francesco@host-82-49-79-189.retail.telecomitalia.it)
2021-02-11 19:10:51 +0100frozenErebus(~frozenEre@94.128.81.133)
2021-02-11 19:11:04 +0100 <monochrom> works for me. Perhaps pay attention to two points.
2021-02-11 19:11:29 +0100 <monochrom> 1. "Specifically, it picks the leftmost complete subexpression on that line"
2021-02-11 19:12:05 +0100 <monochrom> So if you have no expression on that line, that's a problem
2021-02-11 19:12:25 +0100 <monochrom> 2. "of the most recently-loaded module"
2021-02-11 19:12:57 +0100 <hseg> http://ix.io/2P4k -- can't set a breakpoint at inductive.subs
2021-02-11 19:13:07 +0100 <hseg> <interactive>:1:12: error: parse error on input ‘.’
2021-02-11 19:13:27 +0100Saukk(~Saukk@83-148-239-3.dynamic.lounea.fi) (Remote host closed the connection)
2021-02-11 19:14:00 +0100 <monochrom> Well there you go, "subs n l =" no expression on this line
2021-02-11 19:14:25 +0100dwt(~dwt@c-98-200-58-177.hsd1.tx.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 19:14:43 +0100mirrorbird(~psutcliff@2a00:801:44d:603d:d116:d5a1:4a2f:a08f) (Quit: Leaving)
2021-02-11 19:15:20 +0100 <monochrom> I really tested it. I had " n = length s * 4 + 1" and ":break <that line number>" means the "length s * 4 + 1", not the "n".
2021-02-11 19:15:37 +0100 <monochrom> err nevermind
2021-02-11 19:18:52 +0100hekkaidekapus](~tchouri@gateway/tor-sasl/hekkaidekapus)
2021-02-11 19:19:09 +0100dyeplexer(~lol@unaffiliated/terpin) (Remote host closed the connection)
2021-02-11 19:19:47 +0100 <monochrom> Still works for me. I have:
2021-02-11 19:19:49 +0100 <monochrom> n =
2021-02-11 19:19:59 +0100 <monochrom> (+ 1) . (* 4) . length $
2021-02-11 19:20:01 +0100 <monochrom> s
2021-02-11 19:20:30 +0100 <monochrom> I did ":break <line number of (+ 1) . (* 4) . length $>" and it was a success.
2021-02-11 19:20:33 +0100 <hseg> Prelude Main> :break Main 109
2021-02-11 19:20:35 +0100 <hseg> No breakpoints found at that location.
2021-02-11 19:21:15 +0100 <monochrom> Well that would be when I tried ":break <line number of n =>"
2021-02-11 19:21:20 +0100hekkaidekapus[(~tchouri@gateway/tor-sasl/hekkaidekapus) (Ping timeout: 268 seconds)
2021-02-11 19:21:25 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl)
2021-02-11 19:21:37 +0100 <monochrom> You also realize that the magic number "109" means nothing to me, don't you?
2021-02-11 19:21:38 +0100 <hseg> cabal.project: http://ix.io/2P4o
2021-02-11 19:21:45 +0100 <hseg> 109 is the line number
2021-02-11 19:21:56 +0100knupfer(~Thunderbi@200116b82cd759001808a70bb290b517.dip.versatel-1u1.de) (Ping timeout: 240 seconds)
2021-02-11 19:22:00 +0100 <monochrom> OK I'm done.
2021-02-11 19:22:28 +0100tzlil(~tzlil@unaffiliated/tzlil) (Ping timeout: 256 seconds)
2021-02-11 19:22:36 +0100 <hseg> ok, thanks then
2021-02-11 19:22:53 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de)
2021-02-11 19:23:09 +0100tzlil(~tzlil@unaffiliated/tzlil)
2021-02-11 19:23:34 +0100cole-h(~cole-h@c-73-48-197-220.hsd1.ca.comcast.net)
2021-02-11 19:23:44 +0100 <geekosaur> how does this 109 relate to the 10-line paste you showed earlier?
2021-02-11 19:23:55 +0100 <geekosaur> to be more specific
2021-02-11 19:24:26 +0100vchlup_(~vchlup@nat.brnet.cz)
2021-02-11 19:24:30 +0100 <hseg> 10-line paste is excerpt from actual code, starting at line 104
2021-02-11 19:24:36 +0100timCF(~i.tkachuk@m91-129-101-103.cust.tele2.ee) (Quit: leaving)
2021-02-11 19:24:40 +0100 <hseg> so in that snipped, should've been :break 5
2021-02-11 19:25:01 +0100 <hseg> :facepalm
2021-02-11 19:25:09 +0100vchlup(~vchlup@nat.brnet.cz) (Ping timeout: 264 seconds)
2021-02-11 19:25:13 +0100 <geekosaur> hm, you said you wanted subs
2021-02-11 19:25:19 +0100 <geekosaur> which would be line 8 of that paste
2021-02-11 19:25:50 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com)
2021-02-11 19:25:57 +0100 <hseg> yeah just realized i missed monochrom's warning re putting the breakpoint at rhs, not lhs of bindings
2021-02-11 19:26:00 +0100 <hseg> it works
2021-02-11 19:26:30 +0100howdoi(uid224@gateway/web/irccloud.com/x-mpkeicsrzhkjjmag)
2021-02-11 19:26:41 +0100 <hseg> though qualification syntax doesn't, for some reason
2021-02-11 19:26:46 +0100 <hseg> but this is good enough for me
2021-02-11 19:26:46 +0100 <geekosaur> it wouldn't
2021-02-11 19:26:51 +0100 <hseg> why not?
2021-02-11 19:27:03 +0100 <monochrom> There is no "qualification syntax".
2021-02-11 19:27:07 +0100 <geekosaur> afaik the only thing that actually "qualifies" that way is profiling output
2021-02-11 19:27:51 +0100 <monochrom> If you're looking at ":break <qualified name/identifier> also works", that's for module.name
2021-02-11 19:28:01 +0100 <monochrom> Clearly, "inductive" is not a module
2021-02-11 19:28:32 +0100 <monochrom> ":break <qualified name/identifier>" would mean for example "Prelude.id"
2021-02-11 19:29:50 +0100 <monochrom> But generally, fundamentally break points are set for expressions, not for definitions. Even though there is a shortcut that lets you talk about a definition.
2021-02-11 19:29:52 +0100 <hseg> :break [ModQual.]topLevelIdent[.nestedIdent]...[.nestedIdent] ?
2021-02-11 19:30:13 +0100 <monochrom> There is no "nestedIdent".
2021-02-11 19:30:26 +0100 <hseg> https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/ghci.html says otherwise
2021-02-11 19:30:34 +0100 <hseg> though that might be new
2021-02-11 19:31:04 +0100 <hseg> yeah, was looking at the wrong docs
2021-02-11 19:31:05 +0100 <monochrom> And which version of GHC is that?
2021-02-11 19:31:06 +0100 <hseg> sorry
2021-02-11 19:31:34 +0100 <hseg> somehow reading comprehension flies out the window when there're people around to help
2021-02-11 19:32:15 +0100 <monochrom> Generally you should develop the habit of downloading and using local docs that match your versions, and don't trust Google.
2021-02-11 19:32:48 +0100 <hseg> k
2021-02-11 19:33:43 +0100johnw(~johnw@haskell/developer/johnw)
2021-02-11 19:34:50 +0100 <monochrom> https://www.tweag.io/blog/2021-02-10-linear-base/ interesting. (by way of Haskell Weekly News)
2021-02-11 19:35:31 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 19:36:35 +0100dwt(~dwt@c-98-200-58-177.hsd1.tx.comcast.net)
2021-02-11 19:36:36 +0100 <monochrom> tldr a library of linear variants of base things
2021-02-11 19:37:15 +0100jamm_(~jamm@unaffiliated/jamm) (Read error: No route to host)
2021-02-11 19:37:18 +0100jamm__(~jamm@unaffiliated/jamm)
2021-02-11 19:37:58 +0100 <geekosaur> actually that's what it says it isn't, it's more a core of basic linear-types programming utilities
2021-02-11 19:38:34 +0100 <monochrom> Ah ok oops
2021-02-11 19:38:35 +0100 <geekosaur> with relatively few replacements for things in base
2021-02-11 19:39:47 +0100 <monochrom> Still, it helps a lot.
2021-02-11 19:40:31 +0100 <geekosaur> one suspects it'd also help answer the question someone raised a few weeks ago about why someone would want linear types
2021-02-11 19:40:49 +0100 <monochrom> :)
2021-02-11 19:40:58 +0100 <monochrom> Naw I don't think it answers that.
2021-02-11 19:41:28 +0100 <geekosaur> well, if it has some basic linear-typed tools, presumably those show what you gain from them
2021-02-11 19:41:28 +0100 <monochrom> A real answer would need a real benefit, which is at least one of {safety, efficiency}.
2021-02-11 19:41:39 +0100mputz(~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de)
2021-02-11 19:42:12 +0100ClaudiusMaximus(~claude@191.123.199.146.dyn.plus.net)
2021-02-11 19:42:27 +0100 <monochrom> For now, neither actually happens. The safety side has a gaping loophole via the exception system. The efficiency side simply hasn't happened and has no reason to happen for the next two years.
2021-02-11 19:42:33 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 19:42:40 +0100ClaudiusMaximus(~claude@191.123.199.146.dyn.plus.net) (Changing host)
2021-02-11 19:42:40 +0100ClaudiusMaximus(~claude@unaffiliated/claudiusmaximus)
2021-02-11 19:43:04 +0100 <monochrom> What a library does, the only thing it can do, is to alleviate the chore of reinventing utility functions.
2021-02-11 19:43:14 +0100 <merijn> monochrom: oh, maybe they'll hire me as naive optimist to work out the exception side, because I have opinions :p
2021-02-11 19:45:22 +0100 <monochrom> OK, I concede, sometimes people write code for the asethetic of the code, even when the code means garbage in terms of semantics.
2021-02-11 19:45:43 +0100 <hseg> code as art?
2021-02-11 19:46:09 +0100 <geekosaur> "perl poetry", sounds like :)
2021-02-11 19:46:49 +0100 <geekosaur> that, or Piet (or Mondrian)
2021-02-11 19:46:59 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 19:47:38 +0100 <monochrom> linear haskell poems and dependent haskell satires
2021-02-11 19:47:59 +0100kw(d4662d5d@212.102.45.93)
2021-02-11 19:48:10 +0100tremon(~aschuring@217-63-61-89.cable.dynamic.v4.ziggo.nl)
2021-02-11 19:48:27 +0100frozenErebus(~frozenEre@94.128.81.133) (Ping timeout: 246 seconds)
2021-02-11 19:48:31 +0100 <monochrom> https://dev.to/soriyeak/extensible-record-in-haskell-using-vinyl-for-noob-1l65
2021-02-11 19:48:39 +0100 <monochrom> "Warning: vinyl record field takes order into the matter, so if you put the wrong order, it will causes the type error."
2021-02-11 19:49:30 +0100 <monochrom> The cause is that vinyl uses a type-level list, not set, to state the field names and field types of your record.
2021-02-11 19:50:04 +0100 <kw> If I run with `blockSignals` (from System.Posix.Signals) and a signal gets blocked, is it re-thrown as soon as I unblock that signal, or is it gone forever?
2021-02-11 19:50:06 +0100 <monochrom> Clearly, list is too specific for stating record content.
2021-02-11 19:50:22 +0100 <geekosaur> kw, it's on hold until unblocked
2021-02-11 19:50:25 +0100 <monochrom> Ideally you would want a type-level set so that order doesn't quite matter.
2021-02-11 19:50:36 +0100 <merijn> kw: Oh, easy answer: There is absolutely zero hope of sensibly handling signals in the current RTS
2021-02-11 19:50:46 +0100 <kw> geekosaur: Thanks!
2021-02-11 19:50:47 +0100 <geekosaur> but note that signal handling in Haskell is harum-scarum
2021-02-11 19:50:47 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 19:50:48 +0100 <merijn> Any hopes/dreams of doing so is hopeless lies
2021-02-11 19:50:55 +0100 <monochrom> kw, with signals, there is no re-thrown, only pending and delivered.
2021-02-11 19:51:10 +0100 <merijn> geekosaur: Making it not stupid is at the top of my post-thesis todo list, so there's hope!
2021-02-11 19:51:14 +0100 <kw> Right, so it's stuck pending and then once I unblock it's delivered?
2021-02-11 19:51:20 +0100 <geekosaur> yes
2021-02-11 19:51:46 +0100 <merijn> geekosaur: I don't think that question is possible to answer without consulting the unix package source, tbh
2021-02-11 19:52:02 +0100 <merijn> kw: I recommend healthy skepticism to the above answers
2021-02-11 19:52:04 +0100 <monochrom> where "pending" is very simply "waiting to be delivered", and the reasons of waiting are simply either getting blocked (so wait until unblocking) or the OS is being slow.
2021-02-11 19:52:05 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 19:52:14 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128)
2021-02-11 19:52:46 +0100 <electricityZZZZ> sorry to mention cryptocurrency here, but this is sort-of relevant to haskell: if anyone here operates a cardano stake pool or knows much about them please pm me? i have a few questions
2021-02-11 19:52:47 +0100 <monochrom> merijn, I had a post-thesis todo list too.
2021-02-11 19:52:49 +0100 <merijn> monochrom: Well, whether all that is true would depend on how unix implements masking per thread or process wide, etc.
2021-02-11 19:53:15 +0100 <monochrom> Guess what, it has been waiting for 9 years and I still haven't touched it :)
2021-02-11 19:53:26 +0100mimi_vx(~mimi@2a01:490:16:1026:54d:93e0:a239:fb65)
2021-02-11 19:53:32 +0100 <kw> Awsome. Was wondering why `Xmobar` installs a bunch of signal handlers (that each stash a specific signal in an `MVar` )  over each other  in a `for_` loop, then runs an action, and then resets the signal handler to default. Looks like the answer is 'no reason at all'.
2021-02-11 19:54:01 +0100 <merijn> monochrom: Well, it's stuff I need for my own things
2021-02-11 19:54:15 +0100 <merijn> kw: Wow, that's cursed
2021-02-11 19:54:25 +0100 <slack1256> monochrom: How big of a problem is that row types are modeled as an `HList` in practice?
2021-02-11 19:54:28 +0100 <merijn> RIP your sanity trying to touch this
2021-02-11 19:54:34 +0100 <geekosaur> the original author of xmobar didn't know what he was doing even without the Haskell runtime
2021-02-11 19:54:38 +0100 <merijn> slack1256: Well, for one, they're not row types
2021-02-11 19:55:05 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net) (Read error: Connection reset by peer)
2021-02-11 19:55:30 +0100Sgeo(~Sgeo@ool-18b98aa4.dyn.optonline.net)
2021-02-11 19:55:51 +0100 <merijn> slack1256: Row types generally function on something more set like and allow you to work with arbitrary size "rows", which becomes impossible if you have a fixed order
2021-02-11 19:56:51 +0100 <slack1256> I thought the problem was the `union` function which seems to be doable with `HList`s.
2021-02-11 19:56:59 +0100 <merijn> geekosaur: Personally, I feel it's safe to assume that *all* signal code was written by people who didn't know what they were doing, unless it's commented with references to either 1) POSIX spec or 2) APUE
2021-02-11 19:57:12 +0100 <monochrom> slack1256: I think some people just put up with "order matters" (to be fair it is usually OK), some other people add a ton of HasNameString, HasAgeInt boilerplate classes to alleviate it.
2021-02-11 19:57:21 +0100mizu_no_oto(~textual@cpe-66-66-222-11.rochester.res.rr.com) (Quit: Computer has gone to sleep.)
2021-02-11 19:57:36 +0100 <geekosaur> merijn, arossato was something of a special case. I think we're still cleaning up messes they made
2021-02-11 19:57:42 +0100 <monochrom> (so in the latter case put up with having boilerplates and invoking TH for no reason)
2021-02-11 19:57:55 +0100 <slack1256> merijn: I don't see how having arbitrary size "rows" is impossible with a fixed order.
2021-02-11 19:58:04 +0100 <merijn> geekosaur: Well, in that case I recommend nuking all signal related code from orbit and starting from scratch
2021-02-11 19:58:14 +0100mimi_vx(~mimi@2a01:490:16:1026:54d:93e0:a239:fb65) (Ping timeout: 264 seconds)
2021-02-11 19:58:21 +0100 <slack1256> I've seen how people construct type classes instances to search on the order for the row they want. Seems like a non problem from the outside.
2021-02-11 19:58:36 +0100 <monochrom> IMO it is a big problem but human brains are "great" at becoming oblivious to pain.
2021-02-11 19:58:49 +0100 <monochrom> Just look at C programmers.
2021-02-11 19:58:59 +0100 <merijn> Actually, my first recommendation is "Don't use signals" and if that's not avoidable, my alternate recommendation is "buy a copy of APUE"
2021-02-11 19:58:59 +0100 <slack1256> hedonistic treadmill, haha.
2021-02-11 19:59:11 +0100 <kw> I don't know what I'm doing either, which is why I ask here...
2021-02-11 19:59:57 +0100 <merijn> kw: See recommendation two: Buy a copy of APUE ;)
2021-02-11 20:00:09 +0100 <kw> Ugh. So as far as doing the best you can in Haskell, would you just use something like RIO's `bracket` ?
2021-02-11 20:00:30 +0100 <merijn> In fact, I'll make a blanket statement and say that anyone writing a non-trivial amount of unix/posix code should buy a copy of APUE :p
2021-02-11 20:00:57 +0100 <kw> In this case it's just making a strange, nonfunctional version of `bracket` for signals.
2021-02-11 20:01:04 +0100 <merijn> kw: Do you have a semi-concise description what the current issue is, because I only got half of the forM_ stuff
2021-02-11 20:01:37 +0100CrazyPython(~crazypyth@71-135-5-88.lightspeed.rlghnc.sbcglobal.net)
2021-02-11 20:01:58 +0100 <kw> I'll get back to you...
2021-02-11 20:02:08 +0100mputz(~Thunderbi@dslb-088-064-063-125.088.064.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
2021-02-11 20:02:55 +0100 <monochrom> OK I guess HasAgeInt etc are not required, you just need one type family for membership, and it works for all records, all fields.
2021-02-11 20:03:31 +0100berberman_(~berberman@unaffiliated/berberman)
2021-02-11 20:04:32 +0100berberman(~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds)
2021-02-11 20:06:51 +0100 <merijn> hmm
2021-02-11 20:07:45 +0100 <merijn> "cabal build packagename" seems to only build the library, but not the executables, but there doesn't seem to be a wildcard target that builds everything in a package...
2021-02-11 20:08:12 +0100slack1256(~slack1256@dvc-186-186-101-190.movil.vtr.net) (Remote host closed the connection)
2021-02-11 20:08:12 +0100jamm__(~jamm@unaffiliated/jamm) (Remote host closed the connection)
2021-02-11 20:08:28 +0100 <monochrom> Right, use "cabal build exe:<name of exe section>"
2021-02-11 20:08:46 +0100 <merijn> monochrom: I want to build all components of the package
2021-02-11 20:08:52 +0100 <monochrom> I think there is no "build all" but don't quote on me
2021-02-11 20:09:07 +0100 <merijn> monochrom: "build all" builds *all* components of *all* packages
2021-02-11 20:09:16 +0100 <merijn> I wanna build all components of *one* package
2021-02-11 20:09:24 +0100vgtw(~vgtw@gateway/tor-sasl/vgtw) (Remote host closed the connection)
2021-02-11 20:09:41 +0100mimi_vx(~mimi@2a01:490:16:1026:54d:93e0:a239:fb65)
2021-02-11 20:09:50 +0100jamm_(~jamm@unaffiliated/jamm)
2021-02-11 20:10:18 +0100rdivyanshu(uid322626@gateway/web/irccloud.com/x-lurzujvpyewgarwd)
2021-02-11 20:10:36 +0100Rudd0(~Rudd0@185.189.115.108) (Ping timeout: 240 seconds)
2021-02-11 20:11:45 +0100forell(~forell@unaffiliated/forell)
2021-02-11 20:13:06 +0100 <monochrom> Yeah it covers everything except the one case you need :)
2021-02-11 20:13:22 +0100 <monochrom> It even has "all:exes" = all exes of all packages
2021-02-11 20:13:44 +0100mimi_vx(~mimi@2a01:490:16:1026:54d:93e0:a239:fb65) (Ping timeout: 240 seconds)
2021-02-11 20:13:46 +0100 <merijn> Well, the docs say "packagename" is supposed to build all enabled components, so that *should* include the exes
2021-02-11 20:14:04 +0100jamm_(~jamm@unaffiliated/jamm) (Ping timeout: 240 seconds)
2021-02-11 20:14:22 +0100 <merijn> So it's either 1) a bug or 2) exes are somehow disabled, but the latter seems unlikely, as they do get build with "build all"
2021-02-11 20:15:22 +0100geekosaur(82650c7a@130.101.12.122) (Ping timeout: 240 seconds)
2021-02-11 20:16:02 +0100 <merijn> There doesn't seem to be a flag for enabling exes either, just "enable-executable-{dynamic,static}"
2021-02-11 20:16:15 +0100juuandyy(~juuandyy@90.106.228.121) (Quit: Konversation terminated!)
2021-02-11 20:22:20 +0100ixaxaar(~ixaxaar@49.207.210.215) (Read error: Connection reset by peer)
2021-02-11 20:23:21 +0100 <monochrom> I think it works for me...
2021-02-11 20:23:56 +0100 <monochrom> I have cabal.project saying "packages: csv-db". csv-db is a directory that has my csv-db package source
2021-02-11 20:23:57 +0100 <merijn> monochrom: *facepalm* I messed up something in the makefile and got the wrong cabal.project copied over the one that worked previously >.>
2021-02-11 20:24:16 +0100 <monochrom> "cabal build csv-db" builds it, it has one lib and one exe, both built.
2021-02-11 20:24:23 +0100 <monochrom> :)
2021-02-11 20:24:37 +0100 <merijn> Ah, no, it still doesn't work
2021-02-11 20:24:54 +0100 <merijn> Ooooh
2021-02-11 20:25:04 +0100dhouthoo(~dhouthoo@ptr-eitgbj2w0uu6delkbrh.18120a2.ip6.access.telenet.be) (Quit: WeeChat 3.0)
2021-02-11 20:25:17 +0100ixaxaar(~ixaxaar@49.207.210.215)
2021-02-11 20:25:21 +0100 <merijn> I think I found a *super* niche edge case where cabal-install recompilation thing-a-majig screws up
2021-02-11 20:29:25 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 240 seconds)
2021-02-11 20:31:20 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk) (Quit: aramend)
2021-02-11 20:31:30 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk)
2021-02-11 20:35:08 +0100bahamas(~lucian@unaffiliated/bahamas)
2021-02-11 20:35:56 +0100geekosaur(82650c7a@130.101.12.122)
2021-02-11 20:37:05 +0100_vaibhavingale_(~Adium@203.188.228.9) (Quit: Leaving.)
2021-02-11 20:37:22 +0100_vaibhavingale_(~Adium@203.188.228.9)
2021-02-11 20:38:21 +0100 <geekosaur> was gonna say, building all components works for me
2021-02-11 20:38:56 +0100 <geekosaur> I kinda wouldn't be here otherwise, would still be debugging it and without ready access to much of anything until I got my wm back :)
2021-02-11 20:39:33 +0100 <merijn> hmmm, nope, still hopelessly broken
2021-02-11 20:39:54 +0100jb551jb55
2021-02-11 20:40:09 +0100bahamas(~lucian@unaffiliated/bahamas) (Ping timeout: 264 seconds)
2021-02-11 20:40:45 +0100Unhammer(~Unhammer@gateway/tor-sasl/unhammer) (Remote host closed the connection)
2021-02-11 20:40:47 +0100vchlup_(~vchlup@nat.brnet.cz) (Remote host closed the connection)
2021-02-11 20:41:08 +0100vchlup_(~vchlup@nat.brnet.cz)
2021-02-11 20:41:28 +0100Unhammer(~Unhammer@gateway/tor-sasl/unhammer)
2021-02-11 20:41:48 +0100_vaibhavingale_(~Adium@203.188.228.9) (Ping timeout: 256 seconds)
2021-02-11 20:41:59 +0100 <merijn> I need to expliticly do package:exes to get it to build them, annoyingly
2021-02-11 20:43:02 +0100 <merijn> monochrom, geekosaur: Aha!
2021-02-11 20:43:16 +0100bitmagie(~Thunderbi@200116b806be210060ed087e803904ac.dip.versatel-1u1.de) (Quit: bitmagie)
2021-02-11 20:43:23 +0100 <merijn> I know what I'm doing that you guys almost certainly aren't
2021-02-11 20:43:29 +0100 <merijn> Having multiple libraries
2021-02-11 20:43:37 +0100 <geekosaur> oh, hm. possible
2021-02-11 20:43:55 +0100pera(~pera@unaffiliated/pera) (Ping timeout: 265 seconds)
2021-02-11 20:44:06 +0100sMuNiX(~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca)
2021-02-11 20:44:33 +0100 <merijn> fgaz said it might be interpreting "foo" as "lib:foo" rather than the package, which would directly contradict the docs, but never trust the docs >.>
2021-02-11 20:46:42 +0100spoonm(~spoonm@gunma.spoonm.org) (Quit: Don't look behind you!)
2021-02-11 20:46:50 +0100borne(~fritjof@200116b864f7290069fc6bd724c60777.dip.versatel-1u1.de) (Ping timeout: 264 seconds)
2021-02-11 20:47:23 +0100Lycurgus(~niemand@cpe-45-46-139-165.buffalo.res.rr.com)
2021-02-11 20:47:47 +0100cheater(~user@unaffiliated/cheater) (Remote host closed the connection)
2021-02-11 20:48:38 +0100danza(~francesco@151.53.65.193) (Quit: Leaving)
2021-02-11 20:48:45 +0100DavidEichmann(~david@234.109.45.217.dyn.plus.net) (Remote host closed the connection)
2021-02-11 20:49:24 +0100spoonm(~spoonm@2602:ffd5:1:119::1)
2021-02-11 20:49:28 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk) (Quit: aramend)
2021-02-11 20:49:44 +0100sMuNiX(~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) (Ping timeout: 256 seconds)
2021-02-11 20:49:58 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 20:50:03 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk)
2021-02-11 20:50:07 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk) (Remote host closed the connection)
2021-02-11 20:50:09 +0100conal(~conal@198.8.81.92) (Quit: Computer has gone to sleep.)
2021-02-11 20:50:15 +0100cheater(~user@unaffiliated/cheater)
2021-02-11 20:50:15 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk)
2021-02-11 20:51:03 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de) (Quit: knupfer)
2021-02-11 20:51:10 +0100knupfer1(~Thunderbi@200116b82cd759004078c211865fdd0b.dip.versatel-1u1.de)
2021-02-11 20:51:28 +0100sMuNiX(~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca)
2021-02-11 20:52:03 +0100conal(~conal@64.71.133.70)
2021-02-11 20:52:46 +0100rosterok(uid236576@gateway/web/irccloud.com/x-gfpdynghxywfzzxv)
2021-02-11 20:53:13 +0100rayyyy(~nanoz@gateway/tor-sasl/nanoz) (Ping timeout: 268 seconds)
2021-02-11 20:53:33 +0100knupfer1knupfer
2021-02-11 20:54:13 +0100CrazyPython(~crazypyth@71-135-5-88.lightspeed.rlghnc.sbcglobal.net) (Ping timeout: 256 seconds)
2021-02-11 20:54:38 +0100Lycurgus(~niemand@cpe-45-46-139-165.buffalo.res.rr.com) (Quit: Exeunt)
2021-02-11 20:54:48 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 20:54:55 +0100charukiewicz[m](charukiewi@gateway/shell/matrix.org/x-oommeswbtsisshqm)
2021-02-11 20:55:21 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2021-02-11 20:55:49 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-02-11 20:56:16 +0100minoru_shiraeesh(~shiraeesh@77.94.25.210)
2021-02-11 20:56:29 +0100cheater(~user@unaffiliated/cheater) (Ping timeout: 265 seconds)
2021-02-11 20:56:44 +0100__minoru__shirae(~shiraeesh@109.166.59.163) (Ping timeout: 272 seconds)
2021-02-11 20:56:44 +0100conal_(~conal@66.115.157.109)
2021-02-11 20:56:56 +0100conal(~conal@64.71.133.70) (Ping timeout: 240 seconds)
2021-02-11 21:00:04 +0100knupfer(~Thunderbi@200116b82cd759004078c211865fdd0b.dip.versatel-1u1.de) (Quit: knupfer)
2021-02-11 21:00:13 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de)
2021-02-11 21:00:53 +0100mouseghost(~draco@wikipedia/desperek) (Quit: mew wew)
2021-02-11 21:04:03 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 21:06:32 +0100kuribas(~user@ptr-25vy0i9m2qfbjp4f8l6.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2021-02-11 21:06:49 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 21:07:13 +0100 <ph88^> is there a program which can collect all haskell source code comments for further processing ?
2021-02-11 21:07:48 +0100 <Uniaika> ph88^: haddock-compliant comments?
2021-02-11 21:08:06 +0100cheater(~user@unaffiliated/cheater)
2021-02-11 21:08:32 +0100 <ph88^> optionally
2021-02-11 21:12:57 +0100 <Uniaika> haddocks are collected by GHC
2021-02-11 21:20:02 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 21:20:25 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 21:21:08 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 21:24:44 +0100Boomerang(~Boomerang@2a05:f6c7:2179:0:50ad:ccb:148c:6cba) (Remote host closed the connection)
2021-02-11 21:25:28 +0100Boomerang(~Boomerang@xd520f68c.cust.hiper.dk)
2021-02-11 21:25:49 +0100 <koz_> Is there a way to get the full dependency tree of a project?
2021-02-11 21:25:53 +0100 <koz_> (including transitives)
2021-02-11 21:26:39 +0100 <merijn> @hackage cabal-plan
2021-02-11 21:26:39 +0100 <lambdabot> https://hackage.haskell.org/package/cabal-plan
2021-02-11 21:27:07 +0100 <koz_> merijn: Sweet!
2021-02-11 21:27:09 +0100soft-warm(4408f588@ip68-8-245-136.sd.sd.cox.net)
2021-02-11 21:27:13 +0100 <koz_> I guess I just dump two cabal plans then diff?
2021-02-11 21:27:19 +0100 <koz_> (if I wanna compare them)
2021-02-11 21:27:30 +0100 <merijn> koz_: That requires you first produce a plan.json, though
2021-02-11 21:27:36 +0100 <koz_> How does one do this?
2021-02-11 21:27:39 +0100 <merijn> koz_: You could also create a freeze file and diff thos
2021-02-11 21:27:55 +0100 <merijn> koz_: If you use run "cabal build" there's one under dist-newstyle already
2021-02-11 21:28:02 +0100 <koz_> Ah, cool.
2021-02-11 21:28:05 +0100 <merijn> I think --dry-run will create one without building anything
2021-02-11 21:28:13 +0100 <koz_> Let me try that and see - thanks!
2021-02-11 21:28:45 +0100pera(~pera@unaffiliated/pera)
2021-02-11 21:28:52 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-02-11 21:29:55 +0100jb55(~jb55@gateway/tor-sasl/jb55) (Remote host closed the connection)
2021-02-11 21:30:22 +0100jb55(~jb55@gateway/tor-sasl/jb55)
2021-02-11 21:30:46 +0100clynamen_(~clynamen@net-93-66-46-121.cust.vodafonedsl.it)
2021-02-11 21:30:46 +0100Tario(~Tario@201.192.165.173) (Read error: Connection reset by peer)
2021-02-11 21:31:53 +0100clynamen(~clynamen@net-93-71-86-202.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2021-02-11 21:31:59 +0100Tario(~Tario@201.192.165.173)
2021-02-11 21:33:56 +0100coot(~coot@37.30.55.141.nat.umts.dynamic.t-mobile.pl) (Quit: coot)
2021-02-11 21:34:50 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Read error: Connection reset by peer)
2021-02-11 21:35:17 +0100seveg(~gabriel@2a02-ab04-0249-8d00-dea6-32ff-fe17-0993.dynamic.v6.chello.sk) (Quit: WeeChat 3.0)
2021-02-11 21:37:40 +0100 <monochrom> If you don't mind a flat list, "cabal freeze" produces cabal.project.freeze, it is pretty informative too.
2021-02-11 21:40:57 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net)
2021-02-11 21:41:04 +0100usr25(~usr25@unaffiliated/usr25)
2021-02-11 21:41:55 +0100ixaxaar(~ixaxaar@49.207.210.215) (Ping timeout: 265 seconds)
2021-02-11 21:42:02 +0100 <koz_> monochrom: Flat list would be OK.
2021-02-11 21:42:08 +0100 <merijn> :O
2021-02-11 21:42:24 +0100 <merijn> Achievement unlocked: Using cabal flags for their actual intended purpose!
2021-02-11 21:42:54 +0100 <monochrom> What have you done? :)
2021-02-11 21:43:30 +0100 <merijn> monochrom: I had an optional executable that depended on Chart-cairo, which rendered my package unbuildable on the cluster where cairo was unavailable
2021-02-11 21:44:01 +0100 <merijn> monochrom: So I added a flag that defaults to True and adds a Chart-cairo dependency in the True branch and sets "buildable: False" in the false branc
2021-02-11 21:44:23 +0100 <merijn> And it correctly builds the executable on my local machine while disabling it on the cluster without manual flag setting \o/
2021-02-11 21:44:28 +0100borne(~fritjof@200116b864f7290069fc6bd724c60777.dip.versatel-1u1.de)
2021-02-11 21:47:16 +0100 <monochrom> I wonder how the computer figures it out.
2021-02-11 21:47:29 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2021-02-11 21:47:37 +0100 <merijn> monochrom: Chart-cairo uses pkg-config-depends to detect cairo version
2021-02-11 21:47:51 +0100 <merijn> If pkg-config reports it as missing that triggers a build-plan failure
2021-02-11 21:47:57 +0100 <monochrom> Yeah so it still has to give Chart-cairo a try before backtracking.
2021-02-11 21:49:01 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2021-02-11 21:49:03 +0100 <merijn> monochrom: Right, which with the default value of true sees Chart-cairo, fails, causes cabal-install to toggle the flag, which marks it unbuildable (and lacks the unsolvable Chart-cairo dependency) leading the build-plan to succeed
2021-02-11 21:49:16 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-02-11 21:49:50 +0100 <monochrom> This gives me a feeling of the movie «Next». OK every logic programming backtracking mechanism does that in general.
2021-02-11 21:50:36 +0100 <merijn> monochrom: tbh, I quite lack the power of flags, I just feel that 95% of their use is people abusing them, so I'm not sure they're worth it over all
2021-02-11 21:50:40 +0100 <monochrom> But yeah whoever decided that cabal's "if-then-else" is really Prolog was a genius with so much foresight.
2021-02-11 21:50:53 +0100 <merijn> s/lack/like
2021-02-11 21:51:01 +0100 <merijn> Dear brain: WTF was that?
2021-02-11 21:51:16 +0100 <dolio> Nicolas Cage is the only one who can actually realize excluded middle?
2021-02-11 21:51:25 +0100 <monochrom> But who knows? Maybe they didn't have foresight, they tried all possible futures and backtracked and found this optimal.
2021-02-11 21:51:44 +0100 <merijn> monochrom: tbh, 80-90% of Cabal/cabal-install is "genius foresight" compared to npm/pip/gem and the likes
2021-02-11 21:52:13 +0100 <merijn> Most programmers are lazy and never package their stuff properly, so they don't realise and complain that something takes two commands instead of one >.>
2021-02-11 21:52:17 +0100 <monochrom> Also Dr. Strange "I have went through all 14.4M scenerios, this is the only one that wins"
2021-02-11 21:52:45 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net) (Ping timeout: 264 seconds)
2021-02-11 21:53:43 +0100 <dolio> That might even be good enough for the axiom of choice.
2021-02-11 21:53:52 +0100nhs(~nhs@c-24-20-87-79.hsd1.or.comcast.net)
2021-02-11 21:54:29 +0100 <monochrom> hee hee
2021-02-11 21:54:47 +0100leah2(~leah@vuxu.org) (Ping timeout: 260 seconds)
2021-02-11 21:55:12 +0100 <dolio> I guess that's why it's an "infinity" stone.
2021-02-11 21:55:22 +0100 <monochrom> haha
2021-02-11 21:55:36 +0100leah2(~leah@vuxu.org)
2021-02-11 21:55:42 +0100supercoven(~Supercove@196.244.192.57) (Read error: Connection reset by peer)
2021-02-11 21:57:31 +0100 <joel135> i wonder why this doesn't typecheck? https://pastebin.com/raw/NDzA75YR
2021-02-11 21:58:00 +0100 <merijn> joel135: It's help to pastebin the error too?
2021-02-11 21:58:02 +0100ixlun(~user@213.205.241.221) (Remote host closed the connection)
2021-02-11 21:58:38 +0100Aquazi(uid312403@gateway/web/irccloud.com/x-ckjmnhqmmmkvuhmm) (Quit: Connection closed for inactivity)
2021-02-11 21:58:56 +0100 <monochrom> No one reads error messages anyway.
2021-02-11 21:59:06 +0100 <joel135> it is basically "cannot construct the infinite type: a ~ Set a", nothing more specific than that
2021-02-11 21:59:13 +0100 <dolio> I read the line numbers.
2021-02-11 21:59:19 +0100 <merijn> monochrom: The typechecker in my brain is in the shop
2021-02-11 21:59:43 +0100 <monochrom> And all of me is going to afternoon tea.
2021-02-11 22:00:31 +0100 <merijn> joel135: I mean, unless you expect us to mentally run the typechecker in our brain and figure out which part of your code that that error refers to, it'd help to paste, you know, the full exact error, rather than extrapolating from "basically"
2021-02-11 22:00:32 +0100 <dolio> joel135: Oh, `singleton (close cp empty)` looks wrong.
2021-02-11 22:00:41 +0100 <monochrom> But hey I can just make people read my tutorials.
2021-02-11 22:00:55 +0100 <dolio> That's like a set of sets.
2021-02-11 22:00:56 +0100 <joel135> oh wait there are more type errors now
2021-02-11 22:01:51 +0100 <joel135> (https://pastebin.com/raw/dQVKBZf3)
2021-02-11 22:02:02 +0100sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2021-02-11 22:02:08 +0100 <monochrom> My http://www.vex.net/~trebla/haskell/type-inference.html explains infinite types. (Example 5)
2021-02-11 22:03:30 +0100 <joel135> oh, the return type Set a should actually be Set (Set a), maybe i can solve this now
2021-02-11 22:07:20 +0100_ht(~quassel@82.169.194.8) (Remote host closed the connection)
2021-02-11 22:08:29 +0100 <joel135> hmm, now i have this https://pastebin.com/raw/Ah2CSVC2
2021-02-11 22:09:35 +0100 <geekosaur> enumerate cp = iterate' f null (empty, singleton (close cp empty) :: Set (Set a))
2021-02-11 22:09:41 +0100 <geekosaur> this does not do what you think
2021-02-11 22:10:10 +0100 <joel135> 'enumerate cp' is supposed to be a certain set of subsets of 'bound cp'
2021-02-11 22:10:10 +0100 <geekosaur> the "a" from the type signature above it is no longer in scope, so it's using a fresh "a" that can't match anything else
2021-02-11 22:10:28 +0100 <geekosaur> you may want to look at the ScopedTypeVariables extension
2021-02-11 22:10:36 +0100sMuNiX(~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca) (Ping timeout: 240 seconds)
2021-02-11 22:11:01 +0100 <joel135> debugging my debugging
2021-02-11 22:11:31 +0100dddddd__(~dddddd@unaffiliated/dddddd)
2021-02-11 22:11:32 +0100 <joel135> oh, now it works all of a sudden, once i removed the type annotation
2021-02-11 22:12:02 +0100deviantfero(~deviantfe@190.150.27.58) (Ping timeout: 264 seconds)
2021-02-11 22:12:11 +0100 <joel135> nice, thanks!
2021-02-11 22:13:02 +0100sMuNiX(~sMuNiX@lnsm2-montreal02-142-118-236-120.internet.virginmobile.ca)
2021-02-11 22:13:10 +0100Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net) (Quit: Leaving)
2021-02-11 22:14:07 +0100dddddd_(~dddddd@unaffiliated/dddddd) (Ping timeout: 256 seconds)
2021-02-11 22:19:50 +0100rdivyanshu(uid322626@gateway/web/irccloud.com/x-lurzujvpyewgarwd) (Quit: Connection closed for inactivity)
2021-02-11 22:21:26 +0100dddddd_(~dddddd@unaffiliated/dddddd)
2021-02-11 22:21:32 +0100Boomerang(~Boomerang@xd520f68c.cust.hiper.dk) (Ping timeout: 256 seconds)
2021-02-11 22:21:35 +0100Jesin(~Jesin@pool-72-66-101-18.washdc.fios.verizon.net)
2021-02-11 22:24:12 +0100dlam(~dlam@dlam.me) (Ping timeout: 246 seconds)
2021-02-11 22:24:19 +0100dddddd__(~dddddd@unaffiliated/dddddd) (Ping timeout: 256 seconds)
2021-02-11 22:26:08 +0100cheater(~user@unaffiliated/cheater) (Remote host closed the connection)
2021-02-11 22:26:16 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 22:26:18 +0100Wuzzy(~Wuzzy@p5790e290.dip0.t-ipconnect.de)
2021-02-11 22:26:35 +0100dddddd__(~dddddd@unaffiliated/dddddd)
2021-02-11 22:27:49 +0100deviantfero(~deviantfe@190.150.27.58)
2021-02-11 22:28:11 +0100cheater(~user@unaffiliated/cheater)
2021-02-11 22:28:51 +0100dddddd_(~dddddd@unaffiliated/dddddd) (Ping timeout: 256 seconds)
2021-02-11 22:30:16 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2021-02-11 22:31:07 +0100dddddd__(~dddddd@unaffiliated/dddddd) (Ping timeout: 256 seconds)
2021-02-11 22:31:50 +0100zyeri(zyeri@tilde.team/users/zyeri) (Ping timeout: 264 seconds)
2021-02-11 22:32:11 +0100zyeri(zyeri@ip24.ip-51-222-67.net)
2021-02-11 22:32:11 +0100zyeri(zyeri@ip24.ip-51-222-67.net) (Changing host)
2021-02-11 22:32:11 +0100zyeri(zyeri@tilde.team/users/zyeri)
2021-02-11 22:32:27 +0100dddddd(~dddddd@unaffiliated/dddddd)
2021-02-11 22:35:02 +0100Yumasi(~guillaume@2a01:e0a:5cb:4430:8da1:7ed2:2494:cea) (Ping timeout: 260 seconds)
2021-02-11 22:35:25 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 22:36:03 +0100knupfer(~Thunderbi@mue-88-130-61-167.dsl.tropolys.de) (Ping timeout: 265 seconds)
2021-02-11 22:38:21 +0100michalz(~user@185.246.204.49) (Remote host closed the connection)
2021-02-11 22:44:02 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-02-11 22:46:37 +0100conal_(~conal@66.115.157.109) (Quit: Computer has gone to sleep.)
2021-02-11 22:47:09 +0100alx741(~alx741@186.178.110.40) (Quit: alx741)
2021-02-11 22:48:05 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 240 seconds)
2021-02-11 22:49:23 +0100fendor(~fendor@91.141.3.135.wireless.dyn.drei.com) (Remote host closed the connection)
2021-02-11 22:49:57 +0100xcmw(~textual@dyn-72-33-2-47.uwnet.wisc.edu)
2021-02-11 22:52:07 +0100fendor(~fendor@91.141.3.135.wireless.dyn.drei.com)
2021-02-11 22:52:37 +0100pera(~pera@unaffiliated/pera) (Quit: leaving)
2021-02-11 22:55:43 +0100dignissimus(~dignissim@host-78-146-219-61.as13285.net)
2021-02-11 22:55:55 +0100geekosaur(82650c7a@130.101.12.122) (Quit: Connection closed)
2021-02-11 22:57:34 +0100aramend(~aramend@5.186.116.118.cgn.fibianet.dk) (Quit: aramend)
2021-02-11 22:58:10 +0100Varis(~Tadas@unaffiliated/varis) (Remote host closed the connection)
2021-02-11 22:58:29 +0100alx741(~alx741@186.178.110.40)
2021-02-11 22:59:32 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-02-11 23:00:36 +0100conal(~conal@64.71.133.70)
2021-02-11 23:00:57 +0100deviantfero(~deviantfe@190.150.27.58) (Ping timeout: 246 seconds)
2021-02-11 23:01:24 +0100Rudd0(~Rudd0@185.189.115.103)
2021-02-11 23:02:01 +0100danvet(~Daniel@2a02:168:57f4:0:efd0:b9e5:5ae6:c2fa) (Ping timeout: 272 seconds)
2021-02-11 23:02:30 +0100alx741(~alx741@186.178.110.40) (Client Quit)
2021-02-11 23:03:36 +0100jakob_(~textual@p200300f49f0a5500b1781738d6a5e868.dip0.t-ipconnect.de) (Quit: My Laptop has gone to sleep. ZZZzzz…)
2021-02-11 23:04:07 +0100jakob_(~textual@p200300f49f0a5500b1781738d6a5e868.dip0.t-ipconnect.de)
2021-02-11 23:04:16 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-02-11 23:05:17 +0100 <joel135> working code :) https://pastebin.com/raw/SPfKychn
2021-02-11 23:06:14 +0100 <joel135> a little inefficient toward the end, but good enough
2021-02-11 23:07:28 +0100edge563(~edge563@gateway/tor-sasl/edge563) (Quit: edge563)
2021-02-11 23:13:45 +0100LKoen(~LKoen@252.248.88.92.rev.sfr.net) (Quit: “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way round.”)
2021-02-11 23:14:26 +0100alx741(~alx741@186.178.110.40)
2021-02-11 23:14:53 +0100ubert(~Thunderbi@p200300ecdf25d901e6b318fffe838f33.dip0.t-ipconnect.de)
2021-02-11 23:18:23 +0100mrchampion(~mrchampio@38.18.109.23) (Read error: No route to host)
2021-02-11 23:19:54 +0100deviantfero(~deviantfe@190.150.27.58)
2021-02-11 23:21:03 +0100Franciman(~francesco@host-82-49-79-189.retail.telecomitalia.it) (Quit: Leaving)
2021-02-11 23:22:04 +0100mrchampion(~mrchampio@38.18.109.23)
2021-02-11 23:24:21 +0100forgottenone(~forgotten@176.42.17.164) (Quit: Konversation terminated!)
2021-02-11 23:25:12 +0100borne(~fritjof@200116b864f7290069fc6bd724c60777.dip.versatel-1u1.de) (Ping timeout: 260 seconds)
2021-02-11 23:25:18 +0100lambda-11235(~lambda-11@2600:1700:7c70:4600:ed54:9c4b:a010:e9f)
2021-02-11 23:25:49 +0100 <raehik> I just learned that I can install packages to the global Stack project with stack --package PKGNAME
2021-02-11 23:26:08 +0100 <raehik> is it possible to configure things like default language pragmas as well?
2021-02-11 23:26:28 +0100 <raehik> (and even better, if I could place this all in a file that the global project uses)
2021-02-11 23:31:30 +0100lemmih(~lemmih@2406:3003:2072:44:d7ba:3597:c07a:fe3d) (Remote host closed the connection)
2021-02-11 23:31:48 +0100lemmih(~lemmih@2406:3003:2072:44:d219:4fa6:3f89:cc6b)
2021-02-11 23:33:41 +0100borne(~fritjof@200116b864f7290069fc6bd724c60777.dip.versatel-1u1.de)
2021-02-11 23:34:04 +0100dignissimus(~dignissim@host-78-146-219-61.as13285.net) (Quit: Quit)
2021-02-11 23:35:21 +0100ski(~ski@ed-3358-10.studat.chalmers.se) (Ping timeout: 264 seconds)
2021-02-11 23:35:29 +0100 <justsomeguy> raehik: Have you tried creating a package.yaml file in ~/.stack/global-project and adding things to that? (I don't know if this will work, but it seems worth trying.)
2021-02-11 23:35:39 +0100 <ephemient> ~/.stack/global-project/stack.yaml is the config file for the stack global project and will affect usages of stack outside of any stack project. it has no effect when inside of a stack project
2021-02-11 23:37:25 +0100 <ephemient> I guess you could put language extensions in global ghc-options
2021-02-11 23:37:39 +0100 <ephemient> but what things do you it to apply to?
2021-02-11 23:37:43 +0100 <raehik> justsomeguy: I have, it didn't appear to work (e.g. dependencies: [pkg] doesn't bring pkg in)
2021-02-11 23:38:11 +0100 <ephemient> bring it into what?
2021-02-11 23:38:11 +0100 <raehik> ephemient: it'd be handy for hacks and tests that don't have a project
2021-02-11 23:38:35 +0100 <raehik> doesn't load that pkg, sry
2021-02-11 23:39:02 +0100 <ephemient> dependencies: doesn't really add a dependency, it tells stack where to fetch a dependency from if it is needed
2021-02-11 23:40:21 +0100 <ephemient> raehik: for one-off scripts, you can use the stack shebang. https://docs.haskellstack.org/en/stable/GUIDE/#script-interpreter
2021-02-11 23:40:25 +0100gluegadget(sid22336@gateway/web/irccloud.com/x-evznraaxgeebxlfq) (Ping timeout: 240 seconds)
2021-02-11 23:40:36 +0100dmj`(sid72307@gateway/web/irccloud.com/x-daobeunxmbntdyfz) (Ping timeout: 240 seconds)
2021-02-11 23:41:12 +0100Tritlo(sid58727@gateway/web/irccloud.com/x-rusoqdxjmfhofwqb) (Ping timeout: 246 seconds)
2021-02-11 23:41:14 +0100simony(sid226116@gateway/web/irccloud.com/x-phjoyqzngtkshyaz) (Read error: Connection reset by peer)
2021-02-11 23:41:14 +0100adius(sid321344@gateway/web/irccloud.com/x-vxeeagpalrycwjvn) (Read error: Connection reset by peer)
2021-02-11 23:41:14 +0100acertain(sid470584@gateway/web/irccloud.com/x-pfvaigabdrzptrjm) (Read error: Connection reset by peer)
2021-02-11 23:41:14 +0100mpickering(sid78412@gateway/web/irccloud.com/x-bsdzbkbcztjjpkbi) (Read error: Connection reset by peer)
2021-02-11 23:41:14 +0100hamishmack(sid389057@gateway/web/irccloud.com/x-jurbicwybttzswiw) (Read error: Connection reset by peer)
2021-02-11 23:41:18 +0100nick_h(sid319833@gateway/web/irccloud.com/x-llzjpkeahelgxkum) (Read error: Connection reset by peer)
2021-02-11 23:41:19 +0100affinespaces(sid327561@gateway/web/irccloud.com/x-sxzeebbbphyfonci) (Read error: Connection reset by peer)
2021-02-11 23:41:22 +0100Tritlo(sid58727@gateway/web/irccloud.com/x-elrrgxjqxqvbsxaj)
2021-02-11 23:41:24 +0100PoliticsII______(sid193551@gateway/web/irccloud.com/x-tuajvxnrjmjfwqlj) (Read error: Connection reset by peer)
2021-02-11 23:41:25 +0100adius(sid321344@gateway/web/irccloud.com/x-arhgoqynitobsomz)
2021-02-11 23:41:30 +0100hamishmack(sid389057@gateway/web/irccloud.com/x-dlizgtlxawlnbrdn)
2021-02-11 23:41:30 +0100simony(sid226116@gateway/web/irccloud.com/x-mvwrcvroxbicmtqt)
2021-02-11 23:41:31 +0100acertain(sid470584@gateway/web/irccloud.com/x-mzgakxjiuoedovnq)
2021-02-11 23:41:31 +0100mpickering(sid78412@gateway/web/irccloud.com/x-ullosshavaeyawfg)
2021-02-11 23:41:35 +0100gluegadget(sid22336@gateway/web/irccloud.com/x-ayfbpsyhsmxzvrrv)
2021-02-11 23:41:41 +0100affinespaces(sid327561@gateway/web/irccloud.com/x-dkkclnjlpoudblgz)
2021-02-11 23:41:43 +0100nick_h(sid319833@gateway/web/irccloud.com/x-hggfmgowvmfhgqvg)
2021-02-11 23:41:49 +0100PoliticsII______(sid193551@gateway/web/irccloud.com/x-ahjdxgzhinwgmulm)
2021-02-11 23:41:55 +0100 <raehik> ephemient: ah thanks! I forgot about that. better than assuming the pkgs I want are available
2021-02-11 23:42:30 +0100dmj`(sid72307@gateway/web/irccloud.com/x-xjupgrscnctlmzgc)
2021-02-11 23:43:58 +0100 <DigitalKiwi> and if you just put a cabal/stack shebang after a nix-shell shebang you can make sure anything is installed
2021-02-11 23:45:09 +0100 <DigitalKiwi> https://gist.github.com/Kiwi/ffc08bffb15798dc4b1ec2a1c47c6191#file-program-cabal-hs
2021-02-11 23:45:34 +0100 <DigitalKiwi> i know, i know 'boo, nix bad, hisss'
2021-02-11 23:46:54 +0100 <DigitalKiwi> how else are you going to do this though https://mostlyabsurd.com/files/binance
2021-02-11 23:48:32 +0100 <raehik> you know what, that's great wtf
2021-02-11 23:48:47 +0100 <DigitalKiwi> or this https://mostlyabsurd.com/files/clone-edward
2021-02-11 23:49:49 +0100 <raehik> two ed kmetts is where i draw the line, sry
2021-02-11 23:51:23 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-02-11 23:52:18 +0100 <DigitalKiwi> i came up with the one in the gist just to see if it could be done as a challenge, turns out it's actually occasionally useful sometimes. like if something is broken in nixpkgs because it's broken or not in stackage then you can still compile it with cabal instead of using the nixpkgs cache, and if it's not broken you can use the cached version
2021-02-11 23:52:32 +0100rosterok(uid236576@gateway/web/irccloud.com/x-gfpdynghxywfzzxv) (Quit: Connection closed for inactivity)
2021-02-11 23:54:49 +0100 <raehik> I haven't done nix before, not found the need to
2021-02-11 23:55:51 +0100 <raehik> I appreciate what it does (used Guix for a bit before), but I had enough trouble learning Haskell packaging already
2021-02-11 23:56:09 +0100 <DigitalKiwi> don't start once you get hooked you need it
2021-02-11 23:56:24 +0100lambda-11235(~lambda-11@2600:1700:7c70:4600:ed54:9c4b:a010:e9f) (Ping timeout: 240 seconds)
2021-02-11 23:57:35 +0100 <DigitalKiwi> eh i'm shit at nix (the language) so it's a bit tedious sometimes but i get by fine and overall i was a lot more frustrated without it >.>
2021-02-11 23:57:35 +0100iteratee(~kyle@162.211.154.4) (Read error: Connection reset by peer)
2021-02-11 23:58:05 +0100 <DigitalKiwi> even maintain a few nixpkgs
2021-02-11 23:58:18 +0100iteratee(~kyle@162.218.222.107)
2021-02-11 23:58:39 +0100fendor(~fendor@91.141.3.135.wireless.dyn.drei.com) (Read error: Connection reset by peer)
2021-02-11 23:58:55 +0100heatsink(~heatsink@2600:1700:bef1:5e10:e95b:84e8:3635:d128) (Remote host closed the connection)
2021-02-11 23:59:09 +0100isovector(~isovector@S010650395561ee49.gv.shawcable.net)
2021-02-11 23:59:59 +0100iqubic`(~user@c-67-171-38-72.hsd1.wa.comcast.net) ("ERC (IRC client for Emacs 28.0.50)")