2022/03/31

2022-03-31 00:01:11 +0200 <dolio> The point of the question in that regard is that there are significantly better systems to use if faithfully embedding category theory is your goal.
2022-03-31 00:01:31 +0200 <geekosaur> I suspect because Control.Category is in base now
2022-03-31 00:01:37 +0200polyphem(~rod@2a02:810d:840:8754:224e:f6ff:fe5e:bc17) (Ping timeout: 240 seconds)
2022-03-31 00:03:44 +0200polyphem(~rod@2a02:810d:840:8754:224e:f6ff:fe5e:bc17)
2022-03-31 00:04:34 +0200 <johnw> dolio: ah, yes indeed, Haskell is not a great choice; better than C++, but much worse than Agda
2022-03-31 00:04:40 +0200 <abastro[m]> Oh. I thought it at least lacks Higher order functors tho
2022-03-31 00:04:44 +0200 <geekosaur> hm, no, it doesn't have Category, just classes derived from it. nouseful info on why it's deprecated either (speaking of documentation…)
2022-03-31 00:05:04 +0200 <abastro[m]> Oh.
2022-03-31 00:05:52 +0200 <abastro[m]> Well tbh I was actually thinking about using Set as monad, but that is implemented in another package cleverly it seems.
2022-03-31 00:06:02 +0200 <geekosaur> that'd be an indexed monad
2022-03-31 00:06:14 +0200 <geekosaur> as I said earlier, there are several such packages
2022-03-31 00:06:39 +0200 <abastro[m]> Oh? Set as Indexed monad?
2022-03-31 00:06:58 +0200 <geekosaur> Set requires Ord, you need an indexed monad to support that
2022-03-31 00:07:34 +0200 <geekosaur> sadly that does not mean you can just use an indexed monad anywhere you'd use a Monad, including with `do` (except maybe in 9.2.x)
2022-03-31 00:07:49 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-03-31 00:08:15 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds)
2022-03-31 00:08:34 +0200 <abastro[m]> I mean, I do not get how indexed monad is enough to provide the Ord instance
2022-03-31 00:08:36 +0200deadmarshal_(~deadmarsh@95.38.115.112)
2022-03-31 00:09:05 +0200machinedgod(~machinedg@24.105.81.50)
2022-03-31 00:09:19 +0200hololeap(~hololeap@user/hololeap)
2022-03-31 00:10:15 +0200hololeap_(~hololeap@user/hololeap) (Ping timeout: 240 seconds)
2022-03-31 00:10:32 +0200Graham31415(~Graham@user/Graham31415) (Quit: Lost terminal)
2022-03-31 00:11:36 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-03-31 00:11:59 +0200dcoutts_(~duncan@host86-150-41-212.range86-150.btcentralplus.com) (Ping timeout: 260 seconds)
2022-03-31 00:12:11 +0200 <abastro[m]> How do you implement indexed monad instance for Set?
2022-03-31 00:12:52 +0200deadmarshal_(~deadmarsh@95.38.115.112) (Ping timeout: 246 seconds)
2022-03-31 00:16:24 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-03-31 00:16:37 +0200 <geekosaur> looks like https://hackage.haskell.org/package/category-extras is where everything has moved (note that it'sa metapackage)
2022-03-31 00:16:50 +0200 <geekosaur> including what you were looking at earlier
2022-03-31 00:17:07 +0200 <geekosaur> anyway strictly speaking you want a parameterized monad, where the parameter here is Ord
2022-03-31 00:19:02 +0200 <geekosaur> this allows it to work even though the shape of the value may change (a value may move to a different part of a tree, which in turn may cause rebalancing; this is what bites Set and Map)
2022-03-31 00:19:28 +0200 <geekosaur> that said I don't know off the top of my head how you would defined a parameterized monad instance for Set
2022-03-31 00:20:17 +0200macbethwin(~chargen@8.21.8.253) (Quit: zzz)
2022-03-31 00:24:31 +0200nate1(~nate@98.45.152.91)
2022-03-31 00:27:39 +0200shriekingnoise(~shrieking@201.231.16.156) (Quit: Quit)
2022-03-31 00:29:32 +0200nate1(~nate@98.45.152.91) (Ping timeout: 272 seconds)
2022-03-31 00:29:39 +0200shriekingnoise(~shrieking@201.231.16.156)
2022-03-31 00:32:22 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 00:32:58 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 00:37:55 +0200 <johnw> I had always thought it need a restricted monad, which parameterized monads generalize (as they also generalize indexed monads)
2022-03-31 00:38:07 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-03-31 00:43:03 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-03-31 00:45:49 +0200Tuplanolla(~Tuplanoll@91-159-69-98.elisa-laajakaista.fi) (Quit: Leaving.)
2022-03-31 00:46:47 +0200InstX1(~Liam@2601:6c4:4080:3f80:edd7:b0a0:789:3ae4) (Ping timeout: 256 seconds)
2022-03-31 00:49:03 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-03-31 00:53:52 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-03-31 00:54:09 +0200haris(~haris@69.169.3.81) (Remote host closed the connection)
2022-03-31 00:55:17 +0200InstX1(~Liam@2601:6c4:4080:3f80:49ba:58e8:9838:64ed)
2022-03-31 01:02:28 +0200InstX1(~Liam@2601:6c4:4080:3f80:49ba:58e8:9838:64ed) (Ping timeout: 260 seconds)
2022-03-31 01:04:47 +0200zeenk(~zeenk@2a02:2f04:a313:d600:8d26:ec9f:3ff6:fc94) (Quit: Konversation terminated!)
2022-03-31 01:08:07 +0200lainon(~lainon@2601:7c0:c500:4d20::2253)
2022-03-31 01:10:43 +0200alp(~alp@user/alp)
2022-03-31 01:10:56 +0200InstX1(~Liam@2601:6c4:4080:3f80:28f0:360e:9f80:acb)
2022-03-31 01:11:04 +0200lainon(~lainon@2601:7c0:c500:4d20::2253) (Client Quit)
2022-03-31 01:12:58 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-03-31 01:14:24 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-03-31 01:17:35 +0200tiferrei(~tiferrei@user/tiferrei) (Ping timeout: 240 seconds)
2022-03-31 01:19:39 +0200acidjnk(~acidjnk@p200300d0c7049f58687650f0568aa4d7.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-03-31 01:20:42 +0200tiferrei(~tiferrei@user/tiferrei)
2022-03-31 01:22:09 +0200zyklotomic(~ethan@r4-128-61-93-8.res.gatech.edu) (Ping timeout: 256 seconds)
2022-03-31 01:24:08 +0200zyklotomic(~ethan@r4-128-61-93-188.res.gatech.edu)
2022-03-31 01:27:33 +0200vicfred(~vicfred@user/vicfred) (Ping timeout: 260 seconds)
2022-03-31 01:28:56 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-03-31 01:31:00 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-03-31 01:33:01 +0200Guest27(~Guest27@2601:281:d47f:1590::6b90)
2022-03-31 01:35:23 +0200 <Guest27> I have a simple by-the-books N-queens solver. The first version has type
2022-03-31 01:35:23 +0200 <Guest27> `Integral a => a -> [[(a,a)]]`
2022-03-31 01:35:24 +0200 <Guest27> Changing this to
2022-03-31 01:35:24 +0200 <Guest27> `Int -> [(Int,Int)]`
2022-03-31 01:35:25 +0200 <Guest27> Makes it 2 orders of magnitude faster. Both versions are compiled with -O2. What exactly is going on? Is whatever concrete type satisfying the Integral constraint really that much slower than an Int?
2022-03-31 01:36:08 +0200 <Axman6> your code is probably defaulting to Integer for a if you haven't specified what type you're using
2022-03-31 01:36:26 +0200 <monochrom> Certainly a factor. It's Integer. Unlimited width.
2022-03-31 01:37:01 +0200 <Guest27> That's what I figured, but I'm curious why Integer is soooo much slower when it's dealing with numbers on the same scale as the Int
2022-03-31 01:37:26 +0200 <monochrom> Not to mention that naturally, also incurs one more layer of function calls.
2022-03-31 01:37:29 +0200 <Axman6> basically every operation needs to check if you have a small integer or a large integer
2022-03-31 01:37:40 +0200 <Axman6> @src Integer
2022-03-31 01:37:40 +0200 <lambdabot> data Integer = S# Int#
2022-03-31 01:37:40 +0200 <lambdabot> | J# Int# ByteArray#
2022-03-31 01:38:32 +0200 <Guest27> Huh, I didn't realize that would add up so much
2022-03-31 01:39:10 +0200 <Axman6> so things like plus are implemented as (S# i) + (S# j) = addIntOverFlowToIntegerIfTooBig# i j; (S# i) + (J# n arr) = addIntToBigInteger# i n arr; etc. (made up, but you should get the point)
2022-03-31 01:39:19 +0200 <monochrom> Heap allocation also adds GC pressure.
2022-03-31 01:39:42 +0200 <Axman6> when you specify it's just Int, then it can use registers for all the values
2022-03-31 01:40:26 +0200 <Guest27> Okay, that all makes sense. Thanks!
2022-03-31 01:41:02 +0200 <Guest27> Are there any situations where Int becomes boxed under your nose to watch out for?
2022-03-31 01:41:40 +0200 <abastro[m]> geekosaur: Oh, category-extras has lots of things. That said, it still lacks the categorical monad..
2022-03-31 01:41:52 +0200 <monochrom> Just wait until you suffer Int overflow->wraparound and start complaining that safety is more important than performance.
2022-03-31 01:42:23 +0200 <monochrom> Maybe Int boxes Int.
2022-03-31 01:43:24 +0200 <abastro[m]> Safety is more important than performance?
2022-03-31 01:43:44 +0200 <Guest27> monochrom On the one hand safety is important. On the other hand I'm playing code golf with friends and need to **win**
2022-03-31 01:44:04 +0200 <monochrom> I am agnostic to that debate. Just stating that other people would kill each other over it.
2022-03-31 01:44:08 +0200 <hpc> abastro[m]: when my code does the wrong thing, i always want it to do lots of wrong things in rapid succession :D
2022-03-31 01:45:10 +0200 <monochrom> In fact stating that even the same person can flip-flop upon the slightest pretext of suffering whatever issue du jour.
2022-03-31 01:46:28 +0200 <dolio> Throwing exceptions is safe?
2022-03-31 01:46:52 +0200 <monochrom> I am agnostic to that debate, too.
2022-03-31 01:46:55 +0200 <dolio> And the mathematical behavior of Z/Z(2^64) is not safe? :þ
2022-03-31 01:47:13 +0200 <Axman6> According to the type system, throwing an exception will always give you the correct answer!
2022-03-31 01:47:28 +0200 <geekosaur> 63, as I was reminded the last time this came up :þ
2022-03-31 01:47:43 +0200 <hpc> whenever you encounter an error, all you have to do is fix it
2022-03-31 01:47:44 +0200 <hpc> > fix error
2022-03-31 01:47:46 +0200 <lambdabot> "*Exception: *Exception: *Exception: *Exception: *Exception: *Exception: *Ex...
2022-03-31 01:48:07 +0200InstX1(~Liam@2601:6c4:4080:3f80:28f0:360e:9f80:acb) (Ping timeout: 260 seconds)
2022-03-31 01:48:31 +0200 <monochrom> hpc: I once compiled in C "int i = 0; while (i > 0) i *= 2;" with gcc -O2. The generated code was "label: jmp label". That is a perfect realization of your preference. >:)
2022-03-31 01:48:47 +0200 <monochrom> Although, one can argue s/wrong/right/
2022-03-31 01:49:11 +0200 <dolio> Pretty sure it's 64. Negative numbers aren't included even though people usually start with the integers for some reason.
2022-03-31 01:49:13 +0200 <monochrom> err, s/i = 0/i = 1/
2022-03-31 01:49:34 +0200 <abastro[m]> <hpc> "abastro: when my code does the..." <- That's the spirit
2022-03-31 01:49:53 +0200 <hpc> there's posts online of gcc optimizer solving the collatz conjecture
2022-03-31 01:50:10 +0200InstX1(~Liam@2601:6c4:4080:3f80:85fa:fa6d:a3c9:394a)
2022-03-31 01:50:18 +0200 <monochrom> Oh haha.
2022-03-31 01:50:52 +0200 <monochrom> I guess the conjecture is a theorem when restricted to int input.
2022-03-31 01:50:54 +0200 <geekosaur> well, it *is* demonstrated for built-in types…
2022-03-31 01:51:00 +0200 <geekosaur> yeh, that
2022-03-31 01:51:58 +0200 <monochrom> It would take a while before a platform decides that int has 1000 bits or something.
2022-03-31 01:52:42 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 01:52:45 +0200 <abastro[m]> Well if `int i = 0; while (i > 0) i *= 2;` indeed resulted in infinite loop, that would be a good meme material
2022-03-31 01:52:55 +0200 <monochrom> Now, does gcc also solve the Riemann hypothesis for double? >:)
2022-03-31 01:55:33 +0200 <monochrom> Also, 2^n = 0 for all sufficently large n, therefore Θ(2^n) = Θ(1), hence EXPTIME=P. Corollary: NP=P.
2022-03-31 01:55:45 +0200Guest27(~Guest27@2601:281:d47f:1590::6b90) (Quit: Client closed)
2022-03-31 01:57:00 +0200 <monochrom> This is now known as dolio's Lemma. >:)
2022-03-31 01:57:06 +0200 <geekosaur> so now that you scared the OP away…
2022-03-31 01:57:06 +0200 <abastro[m]> XD
2022-03-31 01:57:10 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-03-31 01:57:24 +0200 <dolio> Nice.
2022-03-31 01:57:33 +0200 <abastro[m]> Who was OP?
2022-03-31 01:57:48 +0200 <abastro[m]> :O
2022-03-31 01:58:14 +0200 <geekosaur> Guest27, with the n-queens problem
2022-03-31 01:58:15 +0200slaydr(~slaydr@173.239.197.154) (Remote host closed the connection)
2022-03-31 01:58:53 +0200 <geekosaur> #haskell, where we slide offtopic at the slightest pretext. }:>
2022-03-31 01:59:04 +0200 <abastro[m]> Ahh.. welp
2022-03-31 01:59:47 +0200 <abastro[m]> I am worried on the impression they might have gotten..
2022-03-31 02:00:49 +0200 <geekosaur> have to admit I was also wondering if they'd made any calls that perhaps had prevented the compiler from solving the Integral dictionary at compile time, but now we're into inspecting Core
2022-03-31 02:00:55 +0200 <geekosaur> speaking of scaring newcomers off
2022-03-31 02:01:22 +0200 <geekosaur> then again if you're golfing, it's nearly a requirement anyway
2022-03-31 02:01:31 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-03-31 02:01:35 +0200mvk(~mvk@2607:fea8:5cc3:7e00::7980)
2022-03-31 02:02:23 +0200 <monochrom> But the factors I listed were already optimistic in that.
2022-03-31 02:02:30 +0200califax(~califax@user/califx)
2022-03-31 02:04:09 +0200 <abastro[m]> Golfing?
2022-03-31 02:04:21 +0200 <geekosaur> [30 23:43:44] <Guest27> monochrom On the one hand safety is important. On the other hand I'm playing code golf with friends and need to **win**
2022-03-31 02:04:27 +0200 <Axman6> using a few ~hits~ characters as possible
2022-03-31 02:04:36 +0200 <geekosaur> or least time, etc.
2022-03-31 02:04:52 +0200 <geekosaur> point being it is, like golf, about getting the lowest score
2022-03-31 02:04:56 +0200 <geekosaur> by whatever metric
2022-03-31 02:05:09 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-03-31 02:05:29 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-03-31 02:06:07 +0200 <monochrom> Remember that childish children competed in length? They all wanted to boast that they had the longest whatever?
2022-03-31 02:06:29 +0200 <monochrom> Well adults do the reciprocal.
2022-03-31 02:07:25 +0200 <Axman6> it's an important thing though, it relates to information theory and compression
2022-03-31 02:07:37 +0200 <geekosaur> reminded of the old joke about cellphones, before smartphones came out and they rebounded
2022-03-31 02:07:55 +0200 <monochrom> hehe
2022-03-31 02:09:56 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 02:11:39 +0200 <monochrom> We said "water bottle phone" in Hong Kong.
2022-03-31 02:12:03 +0200 <monochrom> Naturally, toy makers henceforth made water bottles in the shape of those large cellphones.
2022-03-31 02:13:01 +0200 <geekosaur> come to think of it, I don't think I've yet seen a comic retrospective comparing the days when everyone wanted the smallest phone to now when everyone wants the largest smartphone
2022-03-31 02:13:14 +0200 <abastro[m]> Hahahaha
2022-03-31 02:13:41 +0200xff0x(~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp) (Ping timeout: 245 seconds)
2022-03-31 02:13:57 +0200 <Axman6> toy makers just need to pivot to making hip flasks instead
2022-03-31 02:14:54 +0200 <hpc> they should sell non-fungible fungus
2022-03-31 02:17:35 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2022-03-31 02:17:46 +0200Zach[m]1(~zoglesby@user/zoglesby)
2022-03-31 02:18:23 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-03-31 02:18:49 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net) (Ping timeout: 250 seconds)
2022-03-31 02:20:56 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-03-31 02:21:06 +0200zoglesby(f0f8ca1525@user/zoglesby) (Remote host closed the connection)
2022-03-31 02:21:37 +0200Zach[m]1(~zoglesby@user/zoglesby) (Client Quit)
2022-03-31 02:21:51 +0200Zach[m]1(~zoglesby@user/zoglesby)
2022-03-31 02:22:49 +0200dunj3(~dunj3@kingdread.de) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
2022-03-31 02:22:57 +0200dunj3(~dunj3@kingdread.de)
2022-03-31 02:24:51 +0200Guest27(~Guest27@2601:281:d47f:1590::6b90)
2022-03-31 02:26:22 +0200chenqisu1(~chenqisu1@183.217.200.168)
2022-03-31 02:29:11 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it) (Ping timeout: 260 seconds)
2022-03-31 02:32:06 +0200gurkenglas(~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 260 seconds)
2022-03-31 02:32:36 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 02:38:59 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
2022-03-31 02:47:13 +0200machinedgod(~machinedg@24.105.81.50) (Ping timeout: 246 seconds)
2022-03-31 02:47:25 +0200lbseale(~ep1ctetus@user/ep1ctetus) (Read error: Connection reset by peer)
2022-03-31 02:47:31 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-03-31 02:48:19 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-9a13-8636-84b9-e362.res6.spectrum.com)
2022-03-31 02:49:08 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-9a13-8636-84b9-e362.res6.spectrum.com) (Read error: Connection reset by peer)
2022-03-31 02:49:26 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-9a13-8636-84b9-e362.res6.spectrum.com)
2022-03-31 02:56:00 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-03-31 03:03:37 +0200Guest27(~Guest27@2601:281:d47f:1590::6b90) (Quit: Client closed)
2022-03-31 03:10:09 +0200the_proffesor(~theproffe@2601:282:847f:8010::7f59) (Ping timeout: 256 seconds)
2022-03-31 03:10:31 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-03-31 03:11:29 +0200vysn(~vysn@user/vysn)
2022-03-31 03:12:39 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-9a13-8636-84b9-e362.res6.spectrum.com) (Remote host closed the connection)
2022-03-31 03:13:32 +0200theproffesor(~theproffe@2601:282:847f:8010::7f59)
2022-03-31 03:16:37 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-03-31 03:18:16 +0200mvk(~mvk@2607:fea8:5cc3:7e00::7980) (Ping timeout: 245 seconds)
2022-03-31 03:18:25 +0200 <dons> morning all
2022-03-31 03:19:06 +0200 <geekosaur> o/
2022-03-31 03:20:04 +0200 <Guest|18> y
2022-03-31 03:20:28 +0200neurocyte861(~neurocyte@IP-094016065068.dynamic.medianet-world.de)
2022-03-31 03:20:29 +0200neurocyte861(~neurocyte@IP-094016065068.dynamic.medianet-world.de) (Changing host)
2022-03-31 03:20:29 +0200neurocyte861(~neurocyte@user/neurocyte)
2022-03-31 03:22:23 +0200neurocyte86(~neurocyte@user/neurocyte) (Ping timeout: 260 seconds)
2022-03-31 03:22:24 +0200neurocyte861neurocyte86
2022-03-31 03:23:19 +0200alp(~alp@user/alp) (Ping timeout: 260 seconds)
2022-03-31 03:23:35 +0200lumberjack123(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-03-31 03:28:18 +0200 <abastro[m]> Wait, morning?
2022-03-31 03:28:19 +0200 <abastro[m]> Where is it
2022-03-31 03:30:29 +0200 <Guest|18> type Maybe :: * -> *
2022-03-31 03:30:30 +0200 <Guest|18> data Maybe a = Nothing | Just a
2022-03-31 03:30:30 +0200 <Guest|18>         -- Defined in ‘GHC.Maybe’
2022-03-31 03:31:55 +0200 <abastro[m]> m
2022-03-31 03:33:09 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-03-31 03:33:09 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-03-31 03:33:09 +0200wroathe(~wroathe@user/wroathe)
2022-03-31 03:33:16 +0200 <geekosaur> australia, I believe
2022-03-31 03:35:18 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-03-31 03:40:26 +0200 <Guest|18> i guest Arctic :-|
2022-03-31 03:43:38 +0200 <hpc> haha, technically true
2022-03-31 03:47:12 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 03:47:25 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 03:49:27 +0200napping(~brandon@65.128.43.198) (Quit: leaving)
2022-03-31 03:50:27 +0200 <abastro[m]> Kek
2022-03-31 03:50:44 +0200 <abastro[m]> Btw it is morning here too
2022-03-31 03:51:41 +0200 <geekosaur> Guest|18, did you have a question related to that paste?
2022-03-31 03:55:00 +0200 <abastro[m]> I thought it was an answer to my "Where is it?"
2022-03-31 03:58:53 +0200 <Guest|18> abastro[m]: yes
2022-03-31 03:59:55 +0200 <abastro[m]> Ye
2022-03-31 04:02:58 +0200kor1(~kor1@81.19.209.58)
2022-03-31 04:03:55 +0200Dorkside6(~dorkside@208.190.197.222)
2022-03-31 04:03:55 +0200Dorkside(~dorkside@208.190.197.222) (Ping timeout: 260 seconds)
2022-03-31 04:03:56 +0200Dorkside6Dorkside
2022-03-31 04:04:20 +0200danso(~danso@danso.ca) ()
2022-03-31 04:13:49 +0200_xor(~xor@74.215.232.169)
2022-03-31 04:18:42 +0200slack1256(~slack1256@186.11.26.81)
2022-03-31 04:23:05 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 04:24:38 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-03-31 04:27:40 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 272 seconds)
2022-03-31 04:29:42 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp)
2022-03-31 04:29:55 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 04:33:44 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (Quit: Ping timeout (120 seconds))
2022-03-31 04:34:02 +0200Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
2022-03-31 04:36:49 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 04:37:13 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 04:40:48 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it)
2022-03-31 04:41:38 +0200slack1256(~slack1256@186.11.26.81) (Remote host closed the connection)
2022-03-31 04:45:59 +0200geranim0(~geranim0@modemcable242.171-178-173.mc.videotron.ca)
2022-03-31 04:49:56 +0200lumberjack123(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 04:51:53 +0200[_](~itchyjunk@user/itchyjunk/x-7353470)
2022-03-31 04:52:42 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-03-31 04:54:38 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
2022-03-31 04:56:11 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 04:56:59 +0200jbox(~jbox@user/jbox)
2022-03-31 05:00:23 +0200abastro(~abab9579@192.249.26.132) (Remote host closed the connection)
2022-03-31 05:00:37 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 05:04:32 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-03-31 05:09:00 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-03-31 05:11:30 +0200zaquest(~notzaques@5.130.79.72)
2022-03-31 05:14:15 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 256 seconds)
2022-03-31 05:15:13 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-03-31 05:15:55 +0200lumberjack123(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-03-31 05:20:25 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-03-31 05:22:18 +0200zebrag(~chris@user/zebrag)
2022-03-31 05:22:18 +0200zebrag(~chris@user/zebrag) (Client Quit)
2022-03-31 05:24:10 +0200lumberjack123(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 05:24:24 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-03-31 05:26:27 +0200kor1(~kor1@81.19.209.58) (Quit: kor1)
2022-03-31 05:28:37 +0200kor1(~kor1@81.19.209.58)
2022-03-31 05:28:50 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 05:31:33 +0200coot(~coot@213.134.190.95)
2022-03-31 05:32:23 +0200geranim0(~geranim0@modemcable242.171-178-173.mc.videotron.ca) (Remote host closed the connection)
2022-03-31 05:33:49 +0200Codaraxis(~Codaraxis@user/codaraxis) (Ping timeout: 240 seconds)
2022-03-31 05:34:11 +0200coot(~coot@213.134.190.95) (Client Quit)
2022-03-31 05:34:39 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2022-03-31 05:38:36 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-96c1-0fad-58de-6f58.res6.spectrum.com)
2022-03-31 05:39:55 +0200lumberjack123(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-03-31 05:42:32 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-96c1-0fad-58de-6f58.res6.spectrum.com) (Remote host closed the connection)
2022-03-31 05:42:39 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com)
2022-03-31 05:44:04 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 05:44:21 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection)
2022-03-31 05:46:39 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 05:49:29 +0200alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 05:52:48 +0200vicfred(~vicfred@user/vicfred)
2022-03-31 05:57:16 +0200abastro(~abab9579@192.249.26.132) (Ping timeout: 246 seconds)
2022-03-31 05:58:27 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 06:00:45 +0200yauhsien_(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 06:00:45 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Read error: Connection reset by peer)
2022-03-31 06:02:19 +0200abastro(~abab9579@192.249.26.132) (Remote host closed the connection)
2022-03-31 06:02:34 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 06:04:35 +0200Codaraxis(~Codaraxis@user/codaraxis)
2022-03-31 06:08:43 +0200zebrag(~chris@user/zebrag)
2022-03-31 06:11:43 +0200yauhsien_(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 06:12:20 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 06:14:42 +0200kor1(~kor1@81.19.209.58) (Ping timeout: 272 seconds)
2022-03-31 06:17:13 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-03-31 06:25:19 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 260 seconds)
2022-03-31 06:29:01 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2022-03-31 06:29:15 +0200 <jle`> why leak space
2022-03-31 06:29:17 +0200 <jle`> how find leak :(
2022-03-31 06:30:42 +0200jbox(~jbox@user/jbox) (Read error: Connection reset by peer)
2022-03-31 06:34:21 +0200mbuf(~Shakthi@171.61.194.140)
2022-03-31 06:34:23 +0200abastro(~abab9579@192.249.26.132) (Ping timeout: 260 seconds)
2022-03-31 06:38:33 +0200toulene(~toulene@user/toulene) (Quit: The Lounge - https://thelounge.chat)
2022-03-31 06:38:34 +0200cdman(~dcm@user/dmc/x-4369397)
2022-03-31 06:40:52 +0200Codaraxis_(~Codaraxis@user/codaraxis)
2022-03-31 06:44:31 +0200Codaraxis(~Codaraxis@user/codaraxis) (Ping timeout: 246 seconds)
2022-03-31 06:47:03 +0200alMalsamolittlebobeep
2022-03-31 06:47:56 +0200 <abastro[m]> Just as hard as memory leak
2022-03-31 06:50:24 +0200 <Guest|18> QAQ!
2022-03-31 06:50:49 +0200modnar(~modnar@shell.sonic.net) (Remote host closed the connection)
2022-03-31 06:53:06 +0200 <Andrew> Let's add malloc() to Haskell
2022-03-31 06:53:23 +0200 <abastro[m]> Great idea
2022-03-31 06:53:32 +0200 <dolio> GHC already has malloc.
2022-03-31 06:53:42 +0200 <abastro[m]> It's immutable so `free` should not exist
2022-03-31 06:54:05 +0200 <abastro[m]> `malloc :: Data a => a`
2022-03-31 06:54:25 +0200Andrewdoesn't *actually* see a use case except for irony
2022-03-31 06:55:14 +0200 <abastro[m]> Hm usecase for which?
2022-03-31 06:55:36 +0200 <abastro[m]> Ofc `malloc :: Data a => a` is a complete joke
2022-03-31 06:55:52 +0200 <Andrew> Data, lol
2022-03-31 07:01:37 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-03-31 07:04:43 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 07:06:24 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 07:09:05 +0200Guest|18(~Guest|18@116.21.1.31) (Quit: Ping timeout (120 seconds))
2022-03-31 07:09:54 +0200 <Axman6> jle`: simple, delete code until leak goes away!
2022-03-31 07:10:44 +0200Guest|18(~Guest|18@116.21.1.31)
2022-03-31 07:11:17 +0200lainon(~lainon@2601:7c0:c500:4d20:3667:2fa5:dc2b:132a)
2022-03-31 07:11:47 +0200 <jle`> eureka!
2022-03-31 07:12:08 +0200 <Axman6> if you get to main = pure (), you're all done
2022-03-31 07:14:33 +0200abastro(~abab9579@192.249.26.132) (Remote host closed the connection)
2022-03-31 07:14:40 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-03-31 07:14:47 +0200abastro(~abab9579@192.249.26.132)
2022-03-31 07:15:10 +0200 <abastro> Hahaha
2022-03-31 07:15:30 +0200 <Axman6> abastro: does your change of name mean you've got glirc working?
2022-03-31 07:15:41 +0200 <abastro> Yep, I am on glirc now
2022-03-31 07:15:47 +0200 <Axman6> congrats
2022-03-31 07:15:53 +0200 <abastro> Tho I am afraid I might be pinging smone named glirc
2022-03-31 07:16:35 +0200 <abastro> Xmonad with scratchpad made it quite easy to work with this app.
2022-03-31 07:16:46 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 07:21:47 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-03-31 07:22:52 +0200 <Axman6> there's a default highlight for the word glirc in the config, which you can remove if you don't like getting notified every time another glirc user talks about how great glirc is
2022-03-31 07:25:05 +0200 <jackdk> Axman6: Back when I was young and wasn't good at things, I tried to "fix" a sample program that came with my Pascal compiler by deleting every line it complained about. By the end, I had a very small program.
2022-03-31 07:25:26 +0200 <Axman6> Thanos would be proud
2022-03-31 07:31:54 +0200 <abastro[m]> Oh, saying glirc just lets glirc ppl notified?
2022-03-31 07:31:59 +0200 <abastro[m]> I thought it was an actual user
2022-03-31 07:32:52 +0200 <dons> yow my .cabal file is nearly 2000 lines now
2022-03-31 07:33:03 +0200 <dons> hmm. i bet parsing that is a non-trivial part of the build time
2022-03-31 07:33:25 +0200 <sclv> waht
2022-03-31 07:33:38 +0200 <sclv> parsing cabal files should be really fast unless we screwed something up
2022-03-31 07:33:48 +0200 <sclv> (that's not what the waht is referring to tho)
2022-03-31 07:33:49 +0200 <Axman6> need more packages and meta-cabal files (pun intended)
2022-03-31 07:34:03 +0200 <dons> well, checking dependencies anyway
2022-03-31 07:34:19 +0200 <sclv> solving dependencies could well be, though we've worked on that
2022-03-31 07:34:35 +0200 <sclv> the parsing should be good tho, since its pretty frequent cabal has to parse a _ton_ of files
2022-03-31 07:35:02 +0200 <sclv> you can time a fresh "configure" to mod out the cabal figuring stuff out portion of a build time
2022-03-31 07:35:36 +0200 <sclv> i'm sort of astonished that a file could hit that large though. unless it has like a lot of distinct targets inside it
2022-03-31 07:35:36 +0200dut_(~dut@user/dut)
2022-03-31 07:36:15 +0200 <dons> https://raw.githubusercontent.com/facebookincubator/Glean/main/glean.cabal
2022-03-31 07:37:09 +0200 <sclv> lmao wow really putting that sublibrary thing to work
2022-03-31 07:37:16 +0200 <dons> $ find . -type f -name '*.hs' -exec cat {} \; | wc -l
2022-03-31 07:37:20 +0200 <dons> 559,786
2022-03-31 07:37:31 +0200 <dons> fair bit of generated stuff there
2022-03-31 07:38:10 +0200 <sclv> i wonder if you can use wildcards for like cxx-sources
2022-03-31 07:38:24 +0200 <sclv> probably doesn't work for that field, and possibly for good reason?
2022-03-31 07:39:02 +0200dcoutts_(~duncan@host109-149-38-1.range109-149.btcentralplus.com)
2022-03-31 07:40:34 +0200 <dons> i'm doing this mad thing where i'm compiling rust, typescript, go, php, c++, javascript. its all running fine. today it falls over because theres a dependency on a specific 2018 version of bison at the bottom of the stack
2022-03-31 07:40:53 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
2022-03-31 07:40:59 +0200 <dons> [industry built on dude in montana maintaining a unix tool.gif]
2022-03-31 07:41:09 +0200monochrom(trebla@216.138.220.146) (Quit: NO CARRIER)
2022-03-31 07:41:32 +0200 <Axman6> Thanks Brian, the unix tool guy
2022-03-31 07:42:17 +0200 <sclv> but yeah i don't see how to factor that down much further. impressive!
2022-03-31 07:43:13 +0200 <Axman6> is that all hand written too?
2022-03-31 07:43:27 +0200 <dons> yeah
2022-03-31 07:43:36 +0200 <sclv> i learned btw that people now call the issue "the nebraska problem" since thats where the guy is in the original xkcd cartoon
2022-03-31 07:43:37 +0200 <dons> 4 years of piecewise development
2022-03-31 07:43:44 +0200 <dons> nebraska. right.
2022-03-31 07:43:46 +0200 <Axman6> dons: something about this and Australia's property market made me laugh: Glean.RTS.Foreign.Ownership
2022-03-31 07:44:07 +0200abastro(~abab9579@192.249.26.132) (Remote host closed the connection)
2022-03-31 07:44:18 +0200 <dons> we have to track who 'owns' facts in the db, so that when we add new facts that invalidate the old ones, we can work out what else got invalidated.
2022-03-31 07:44:35 +0200 <dons> incremental recomputing of DAGs . anyway yeah ownership :}
2022-03-31 07:49:27 +0200 <dons> some of these generate schema files " 401% 13.9 1:05.16 ghc"
2022-03-31 07:49:28 +0200 <dons> ghc go brrr
2022-03-31 07:50:05 +0200 <dons> i've managed to squeeze out just on 600% cpu utilisation on a few of them. pretty cool seeing ghc go down the module graph
2022-03-31 07:50:23 +0200 <dons> i suspect generating a gazillion instances i'll never use but oh well
2022-03-31 07:53:15 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 07:58:23 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-03-31 07:58:47 +0200monochrom(trebla@216.138.220.146)
2022-03-31 07:59:58 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2022-03-31 08:01:00 +0200lainon(~lainon@2601:7c0:c500:4d20:3667:2fa5:dc2b:132a) (Quit: Konversation terminated!)
2022-03-31 08:03:47 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-03-31 08:10:04 +0200Midjak(~Midjak@82.66.147.146)
2022-03-31 08:11:35 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 08:13:39 +0200coot(~coot@213.134.190.95)
2022-03-31 08:13:46 +0200mncheck(~mncheck@193.224.205.254) (Read error: Connection reset by peer)
2022-03-31 08:16:36 +0200img(~img@user/img)
2022-03-31 08:20:04 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 246 seconds)
2022-03-31 08:20:36 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 08:21:13 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 08:26:12 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-03-31 08:27:31 +0200acidjnk(~acidjnk@p200300d0c7049f56dc923130dc4d7bd3.dip0.t-ipconnect.de)
2022-03-31 08:28:33 +0200yuriy(uid548749@id-548749.hampstead.irccloud.com)
2022-03-31 08:33:23 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 256 seconds)
2022-03-31 08:35:36 +0200dsrt^(~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) (Read error: Connection reset by peer)
2022-03-31 08:35:59 +0200dsrt^(~dsrt@96-91-136-49-static.hfc.comcastbusiness.net)
2022-03-31 08:36:03 +0200haskl(~haskl@user/haskl) (Quit: Uh oh... ZNC disconnected.)
2022-03-31 08:36:15 +0200haskl(~haskl@user/haskl)
2022-03-31 08:36:21 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 08:42:41 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-03-31 08:44:37 +0200neurocyte861(~neurocyte@IP-094016065068.dynamic.medianet-world.de)
2022-03-31 08:44:37 +0200neurocyte861(~neurocyte@IP-094016065068.dynamic.medianet-world.de) (Changing host)
2022-03-31 08:44:37 +0200neurocyte861(~neurocyte@user/neurocyte)
2022-03-31 08:44:48 +0200odnes(~odnes@5-203-245-187.pat.nym.cosmote.net)
2022-03-31 08:45:19 +0200neurocyte86(~neurocyte@user/neurocyte) (Ping timeout: 260 seconds)
2022-03-31 08:49:56 +0200michalz(~michalz@185.246.204.125)
2022-03-31 08:52:37 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 08:58:56 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-03-31 08:59:19 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-03-31 08:59:52 +0200alp(~alp@user/alp)
2022-03-31 09:00:31 +0200zeenk(~zeenk@2a02:2f04:a313:d600:8d26:ec9f:3ff6:fc94)
2022-03-31 09:11:25 +0200fendor(~fendor@178.165.181.49.wireless.dyn.drei.com)
2022-03-31 09:15:27 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 09:16:41 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2022-03-31 09:17:26 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:2b26:10cb:f0bf:5e24)
2022-03-31 09:23:02 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Read error: Connection reset by peer)
2022-03-31 09:23:35 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 09:33:16 +0200gehmehgeh(~user@user/gehmehgeh)
2022-03-31 09:34:27 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-03-31 09:35:45 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-03-31 09:38:18 +0200jakalx(~jakalx@base.jakalx.net)
2022-03-31 09:38:25 +0200PHO`(~pho@akari.cielonegro.org) (Ping timeout: 250 seconds)
2022-03-31 09:39:17 +0200PHO`(~pho@akari.cielonegro.org)
2022-03-31 09:40:28 +0200MajorBiscuit(~MajorBisc@c-001-024-034.client.tudelft.eduvpn.nl)
2022-03-31 09:41:14 +0200cfricke(~cfricke@user/cfricke)
2022-03-31 09:41:51 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it)
2022-03-31 09:47:12 +0200mncheck(~mncheck@193.224.205.254)
2022-03-31 09:48:15 +0200gurkenglas(~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de)
2022-03-31 09:48:40 +0200machinedgod(~machinedg@24.105.81.50)
2022-03-31 09:48:55 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net)
2022-03-31 09:53:23 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 09:54:00 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-03-31 09:58:16 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 272 seconds)
2022-03-31 10:05:55 +0200 <merijn> sclv: Also, with v2 doesn't it just parse once and then only check hash and load the preparsed result if unchanged?
2022-03-31 10:07:12 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2022-03-31 10:07:32 +0200cfricke(~cfricke@user/cfricke)
2022-03-31 10:08:57 +0200Andrewfadsfdsafdsa
2022-03-31 10:09:41 +0200fadsfdsafdsaAndrew
2022-03-31 10:11:44 +0200mc47(~mc47@xmonad/TheMC47)
2022-03-31 10:14:34 +0200chenqisu1(~chenqisu1@183.217.200.168) (Quit: Leaving)
2022-03-31 10:15:19 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-03-31 10:15:45 +0200kuribas(~user@188.188.218.243)
2022-03-31 10:20:59 +0200zyklotomic(~ethan@r4-128-61-93-188.res.gatech.edu) (Ping timeout: 260 seconds)
2022-03-31 10:22:30 +0200tinwood(~tinwood@canonical/tinwood) (Remote host closed the connection)
2022-03-31 10:22:40 +0200zyklotomic(~ethan@res388d-128-61-91-237.res.gatech.edu)
2022-03-31 10:23:07 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca)
2022-03-31 10:23:29 +0200vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2022-03-31 10:24:35 +0200cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20)
2022-03-31 10:25:30 +0200tinwood(~tinwood@general.default.akavanagh.uk0.bigv.io)
2022-03-31 10:25:31 +0200tinwood(~tinwood@general.default.akavanagh.uk0.bigv.io) (Changing host)
2022-03-31 10:25:31 +0200tinwood(~tinwood@canonical/tinwood)
2022-03-31 10:28:48 +0200mjacob(~mjacob@adrastea.uberspace.de) (Read error: Connection reset by peer)
2022-03-31 10:29:00 +0200mjacob(~mjacob@adrastea.uberspace.de)
2022-03-31 10:35:16 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 10:35:49 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 10:37:20 +0200Pickchea(~private@user/pickchea)
2022-03-31 10:39:14 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 10:44:43 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 10:45:02 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 10:46:33 +0200theproffesor(~theproffe@2601:282:847f:8010::7f59) (Read error: Connection reset by peer)
2022-03-31 10:46:51 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 10:47:10 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 10:47:28 +0200chenqisu1(~chenqisu1@183.217.200.168)
2022-03-31 10:48:16 +0200theproffesor(~theproffe@2601:282:847f:8010::7f59)
2022-03-31 10:52:21 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 10:52:33 +0200jespada_(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 10:54:59 +0200chenqisu1(~chenqisu1@183.217.200.168) (Quit: Leaving)
2022-03-31 10:55:21 +0200jespada_(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 10:55:55 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 10:59:28 +0200kuribas(~user@188.188.218.243) (Remote host closed the connection)
2022-03-31 11:00:06 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:00:06 +0200amesgen[m](~amesgenm]@2001:470:69fc:105::82b) (Quit: You have been kicked for being idle)
2022-03-31 11:00:18 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:03:47 +0200gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2022-03-31 11:04:23 +0200zer0bitz(~zer0bitz@2001:2003:f750:a200:c06:c5f:5435:411f)
2022-03-31 11:04:25 +0200[_](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-03-31 11:04:28 +0200gehmehgeh(~user@user/gehmehgeh)
2022-03-31 11:07:00 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
2022-03-31 11:09:11 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp)
2022-03-31 11:09:13 +0200_________(~nobody@user/noodly) (Ping timeout: 256 seconds)
2022-03-31 11:09:57 +0200xsarnik(xsarnik@lounge.fi.muni.cz) (Quit: Ping timeout (120 seconds))
2022-03-31 11:10:17 +0200xsarnik(xsarnik@lounge.fi.muni.cz)
2022-03-31 11:12:08 +0200__monty__(~toonn@user/toonn)
2022-03-31 11:15:07 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:15:53 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:17:28 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:17:56 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:18:16 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2022-03-31 11:20:32 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-03-31 11:28:06 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:28:43 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:30:02 +0200dcoutts__(~duncan@host109-149-1-229.range109-149.btcentralplus.com)
2022-03-31 11:32:51 +0200dcoutts_(~duncan@host109-149-38-1.range109-149.btcentralplus.com) (Ping timeout: 260 seconds)
2022-03-31 11:35:02 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:35:25 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds)
2022-03-31 11:35:36 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:36:43 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-03-31 11:37:03 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-03-31 11:37:41 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-03-31 11:40:12 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 11:40:26 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 11:41:45 +0200Ranhir(~Ranhir@157.97.53.139) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/)
2022-03-31 11:43:25 +0200xff0x(~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
2022-03-31 11:47:49 +0200acidjnk(~acidjnk@p200300d0c7049f56dc923130dc4d7bd3.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-03-31 11:52:06 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-03-31 11:52:44 +0200Vajb(~Vajb@2001:999:62:aa00:7f5a:4f10:c894:3813)
2022-03-31 11:57:27 +0200earthy(~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) (Quit: WeeChat 2.3)
2022-03-31 11:57:33 +0200Pickchea(~private@user/pickchea) (Ping timeout: 260 seconds)
2022-03-31 12:02:29 +0200MajorBiscuit(~MajorBisc@c-001-024-034.client.tudelft.eduvpn.nl) (Quit: WeeChat 3.4)
2022-03-31 12:04:39 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.4.1)
2022-03-31 12:04:53 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds)
2022-03-31 12:04:54 +0200shriekingnoise(~shrieking@201.231.16.156) (Quit: Quit)
2022-03-31 12:05:40 +0200MajorBiscuit(~MajorBisc@c-001-024-034.client.tudelft.eduvpn.nl)
2022-03-31 12:07:07 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-03-31 12:07:15 +0200Ranhir(~Ranhir@157.97.53.139)
2022-03-31 12:08:33 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-03-31 12:09:31 +0200acidjnk(~acidjnk@p200300d0c7049f56dc923130dc4d7bd3.dip0.t-ipconnect.de)
2022-03-31 12:17:54 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-03-31 12:18:17 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 12:20:53 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-03-31 12:21:23 +0200vysn(~vysn@user/vysn) (Ping timeout: 260 seconds)
2022-03-31 12:24:46 +0200mc47(~mc47@xmonad/TheMC47) (Ping timeout: 260 seconds)
2022-03-31 12:25:55 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-03-31 12:27:13 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 12:30:35 +0200ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-03-31 12:33:23 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 12:34:36 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 12:36:57 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 12:37:31 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 12:39:29 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 12:39:46 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 12:39:53 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 12:40:02 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 12:44:45 +0200phma(~phma@host-67-44-209-94.hnremote.net) (Read error: Connection reset by peer)
2022-03-31 12:46:32 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-03-31 12:51:48 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-03-31 12:51:52 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 12:52:21 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 12:53:15 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds)
2022-03-31 12:54:22 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Quit: mikoto-chan)
2022-03-31 12:54:26 +0200phma(phma@2001:5b0:210d:9148:44c4:fa72:8ed3:4747)
2022-03-31 12:54:35 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-03-31 12:55:04 +0200phma(phma@2001:5b0:210d:9148:44c4:fa72:8ed3:4747) (Read error: Connection reset by peer)
2022-03-31 12:55:32 +0200phma(~phma@host-67-44-208-11.hnremote.net)
2022-03-31 12:56:17 +0200mncheck(~mncheck@193.224.205.254) (Read error: Connection reset by peer)
2022-03-31 12:57:45 +0200ProfSimm(~ProfSimm@87.227.196.109)
2022-03-31 12:57:46 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-03-31 12:58:50 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 12:58:52 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-03-31 12:59:52 +0200califax(~califax@user/califx)
2022-03-31 13:00:10 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-03-31 13:04:25 +0200Pickchea(~private@user/pickchea)
2022-03-31 13:06:08 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 13:07:05 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2022-03-31 13:07:22 +0200 <maerwald> tomsmeding: https://www.npmjs.com/package/monaco-editor
2022-03-31 13:07:31 +0200 <maerwald> that's what the plutus playground editor uses as well
2022-03-31 13:09:15 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 13:09:26 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 13:11:24 +0200 <tomsmeding> "Is the editor supported in mobile browsers or mobile web app frameworks?" -- "No."
2022-03-31 13:11:52 +0200 <tomsmeding> that would be a really powerful editor though
2022-03-31 13:12:33 +0200 <maerwald> well, you can detect viewport size and select editor based on that
2022-03-31 13:13:18 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-03-31 13:16:10 +0200 <tomsmeding> true
2022-03-31 13:16:52 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 13:20:22 +0200ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-03-31 13:20:34 +0200ProfSimm(~ProfSimm@87.227.196.109)
2022-03-31 13:21:08 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-03-31 13:21:55 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-03-31 13:23:37 +0200cfricke(~cfricke@user/cfricke)
2022-03-31 13:23:47 +0200mc47(~mc47@xmonad/TheMC47)
2022-03-31 13:30:02 +0200razetime(~quassel@117.193.2.164)
2022-03-31 13:37:44 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 13:38:41 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Quit: mikoto-chan)
2022-03-31 13:40:29 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 13:44:01 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 13:47:39 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 13:55:28 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 13:55:46 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 272 seconds)
2022-03-31 13:57:04 +0200ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-03-31 13:57:06 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Max SendQ exceeded)
2022-03-31 13:57:36 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-03-31 13:58:34 +0200toulene(~toulene@user/toulene)
2022-03-31 13:59:01 +0200 <abastro[m]> Honestly I am concerned if haskell might fall as cardano dies
2022-03-31 13:59:55 +0200 <merijn> Why?
2022-03-31 14:00:27 +0200 <merijn> the vast majority of people involved in Haskell predate cardano and have nothing to do with cardano
2022-03-31 14:01:37 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-03-31 14:03:24 +0200synthmeat(~synthmeat@user/synthmeat) (Quit: WeeChat 3.0)
2022-03-31 14:03:34 +0200 <maerwald> abastro[m]: rust didn't die after mozilla more or less abandoned it. Cardano is not even close to being that closely tied to the language or ecosystem as Mozilla was to rust.
2022-03-31 14:03:54 +0200 <Hecate> Rust didn't die because Amazon some big corporations gave jobs to the ex-Mozilla employees
2022-03-31 14:04:13 +0200 <Hecate> now the idea is: how many people would be jobless if IOG was to fall
2022-03-31 14:04:17 +0200 <int-e> . o O ( Cardawhat? (No, I've heard of it. It's just not relevant. )
2022-03-31 14:04:41 +0200slajdlj(~slajdlj@85.210.203.240)
2022-03-31 14:04:47 +0200slajdlj(~slajdlj@85.210.203.240) (Remote host closed the connection)
2022-03-31 14:04:59 +0200 <merijn> I know like 1-2 people being payed by Cardano and I don't think they're particularly crucial roles in the community
2022-03-31 14:05:06 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.5)
2022-03-31 14:05:06 +0200 <maerwald> merijn: duncan?
2022-03-31 14:05:21 +0200 <merijn> Duncan isn't at well-typed anymore?
2022-03-31 14:05:26 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-03-31 14:05:31 +0200 <maerwald> sure and leading cardano projecs
2022-03-31 14:05:42 +0200 <abastro[m]> Oh I did not know that rust was abandoned by mozilla
2022-03-31 14:05:45 +0200 <abastro[m]> What happened?
2022-03-31 14:05:47 +0200 <int-e> Hecate: That one got me... what is IOG?
2022-03-31 14:05:47 +0200 <merijn> Sure, but well-typed existed way before cardano
2022-03-31 14:06:06 +0200 <maerwald> merijn: yes, it will cause some disruption
2022-03-31 14:06:34 +0200 <merijn> maerwald: Someone injecting big money in the ecosystem going away will cause some disruption sure
2022-03-31 14:06:35 +0200 <maerwald> GHC darwin M1 support was mostly paid for by IOHK afair
2022-03-31 14:06:46 +0200 <merijn> Not enough to create an existential risk for Haskell, though
2022-03-31 14:06:46 +0200 <abastro[m]> Is Mozilla back at using C++ again?
2022-03-31 14:06:52 +0200 <maerwald> merijn: I agree
2022-03-31 14:07:07 +0200xsarnik(xsarnik@lounge.fi.muni.cz) (Quit: Ping timeout (120 seconds))
2022-03-31 14:07:19 +0200 <abastro[m]> I am afraid that haskell is being tied with blockchain
2022-03-31 14:07:20 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 14:07:24 +0200 <abastro[m]> Especially Cardano
2022-03-31 14:07:37 +0200 <maerwald> abastro[m]: it's not even the only blockchain written in Haskell ;)
2022-03-31 14:07:43 +0200 <int-e> abastro[m]: It's not. It may have found a use there but it is not the primary use of Haskell by any means.
2022-03-31 14:07:55 +0200 <maerwald> https://github.com/kadena-io/chainweb-node
2022-03-31 14:08:06 +0200 <abastro[m]> Like what is it really good at, tbh it is most likely that only Btc and Eth would serve well in the long run
2022-03-31 14:08:33 +0200 <maerwald> abastro[m]: blockchain is mostly about marketing and hitting the right buttons at the right time
2022-03-31 14:08:40 +0200xsarnik(xsarnik@lounge.fi.muni.cz)
2022-03-31 14:08:49 +0200 <abastro[m]> Maerwald, how do you know quite a lot in this area?
2022-03-31 14:08:50 +0200 <maerwald> but purely technical, cardano is way more interesting than etc (if you're into that sort of stuff)
2022-03-31 14:08:57 +0200 <maerwald> s/etc/eth
2022-03-31 14:09:13 +0200 <maerwald> I'm not interested in blockchain as a technology
2022-03-31 14:09:24 +0200 <abastro[m]> Yeah, but eth could indeed change its tech I think
2022-03-31 14:09:36 +0200 <int-e> it's a fascinating social phenomenon
2022-03-31 14:10:02 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 14:10:07 +0200 <maerwald> abastro[m]: I happen to work in that area (sadly, maybe)
2022-03-31 14:10:08 +0200 <abastro[m]> Guess many ppl hate govt intervention
2022-03-31 14:10:22 +0200 <abastro[m]> Which area?
2022-03-31 14:10:23 +0200 <int-e> Mostly for its frauds... https://nitter.allella.fr/Bitfinexed/status/1508618905065078785#m
2022-03-31 14:10:55 +0200 <abastro[m]> Do you work in cryptos?
2022-03-31 14:11:01 +0200 <int-e> (This is for permissionless blockchains... which /require/ a cryptocurrency to work.)
2022-03-31 14:11:19 +0200 <merijn> abastro[m]: It's more likely none of the blockchains will serve well in the future >.>
2022-03-31 14:11:24 +0200 <maerwald> abastro[m]: fintech, which blockchain is a part of
2022-03-31 14:11:24 +0200dut_(~dut@user/dut) (Quit: Leaving)
2022-03-31 14:11:29 +0200 <int-e> "crypto" means "cryptography" to me. Does that answer your question?
2022-03-31 14:11:30 +0200 <int-e> :P
2022-03-31 14:12:03 +0200 <maerwald> abastro[m]: fintech has been interested in Haskell long before blockchain
2022-03-31 14:12:48 +0200 <maerwald> and I'd argue it may in fact be one of the primary drivers of industry adoption... but these days there are all sorts of other startups doing haskell
2022-03-31 14:12:54 +0200 <maerwald> from robotics to green tech and whatever
2022-03-31 14:13:03 +0200 <abastro[m]> Oh, fintech
2022-03-31 14:13:08 +0200 <abastro[m]> That is way better tbh
2022-03-31 14:13:42 +0200 <abastro[m]> While many fintech companies are indeed looking into some investment towards cryptocurrencies, I guess
2022-03-31 14:13:55 +0200 <abastro[m]> Green tech?
2022-03-31 14:14:01 +0200 <int-e> You just need to have one look at hackage's package index to realize that Haskell is a general purpose programming language.
2022-03-31 14:14:45 +0200 <abastro[m]> I mean I know it's GP, but even GP languages often have some areas it accels at.
2022-03-31 14:15:07 +0200 <int-e> . o O ( Yeah. Haskell excels at writing compilers. )
2022-03-31 14:15:10 +0200 <int-e> :P
2022-03-31 14:15:41 +0200 <abastro[m]> Anyway thanks for reassuring me, so the concern is more strictly financial
2022-03-31 14:16:08 +0200 <maerwald> abastro[m]: https://carboncloud.com/
2022-03-31 14:16:54 +0200 <maerwald> or health care: https://www.holmusk.com/
2022-03-31 14:17:38 +0200 <maerwald> diverse enough... I guess most of these applications are backends
2022-03-31 14:17:41 +0200 <int-e> . o O ( word cloud )
2022-03-31 14:18:22 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 14:18:23 +0200 <abastro[m]> Interesting
2022-03-31 14:18:26 +0200 <int-e> Sorry, I don't speak marketing. https://carboncloud.com/ manages to say *nothing* in 30 words.
2022-03-31 14:19:01 +0200 <maerwald> abastro[m]: I also know of a company doing low-level network protocols for telephone providers in Haskell
2022-03-31 14:19:13 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net) (Ping timeout: 250 seconds)
2022-03-31 14:19:17 +0200 <int-e> The "about" link isn't better. "We distill decades of climate research in pixels to reach the responsible to halt climate change"
2022-03-31 14:19:20 +0200 <int-e> pixels?
2022-03-31 14:19:48 +0200 <maerwald> it's just that those companies don't have the funding of Cardano
2022-03-31 14:19:55 +0200 <abastro[m]> I think they mean they are sorting the climate data out
2022-03-31 14:20:01 +0200 <abastro[m]> So that it is more accessible
2022-03-31 14:20:09 +0200 <int-e> ...I should probably rant about this elsewhere. Or be reasonable and just leave it there.
2022-03-31 14:20:32 +0200ProfSimm(~ProfSimm@87.227.196.109)
2022-03-31 14:20:56 +0200 <abastro[m]> Also it is better for marketing if it gives good impression to ppl AND ppl do not know what it precise does
2022-03-31 14:21:37 +0200 <int-e> I'll say one more thing... They say they don't put up smokescreens but their whole blurb is a smokescreen.
2022-03-31 14:22:39 +0200 <abastro[m]> Haha tbh sounds like typical marketing
2022-03-31 14:23:39 +0200 <maerwald> industry bashing in haskell :p ...ppl complain about blockchain and now green tech to save the planet isn't good enough
2022-03-31 14:23:58 +0200synthmeat(~synthmeat@user/synthmeat)
2022-03-31 14:24:13 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Quit: mikoto-chan)
2022-03-31 14:25:16 +0200 <abastro[m]> Well I am still considerate that ppl will attribute cardano's fall towards its choice of language
2022-03-31 14:25:39 +0200 <abastro[m]> For choosing a language too hard for adoption
2022-03-31 14:25:44 +0200notableduck(~notabledu@ares.dbalan.in) (Quit: WeeChat 2.7.1)
2022-03-31 14:25:45 +0200 <kuribas> idris used to be written in haskell, but they rewrote it.
2022-03-31 14:26:03 +0200 <merijn> kuribas: It's written in Idris now, no?
2022-03-31 14:26:06 +0200 <kuribas> abastro[m]: tbf, I don't really think haskell has an advantage for crypto.
2022-03-31 14:26:08 +0200 <kuribas> merijn: yeah
2022-03-31 14:26:22 +0200 <merijn> kuribas: self-hosting is an obvious choice for any compiler
2022-03-31 14:26:36 +0200 <merijn> Don't think that's a strike against Haskell
2022-03-31 14:26:42 +0200 <merijn> Especially given the similarity
2022-03-31 14:26:55 +0200 <abastro[m]> Yea, personally I cannot understand why cardano picked haskell
2022-03-31 14:27:06 +0200 <kuribas> and compiles to chez scheme.
2022-03-31 14:27:29 +0200 <maerwald> abastro[m]: the had an alternative node implementation in rust
2022-03-31 14:27:32 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 14:28:08 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 14:28:09 +0200 <Hecate> yeah that was a prototype
2022-03-31 14:28:10 +0200 <abastro[m]> Yep, rust would make more sense
2022-03-31 14:28:18 +0200 <abastro[m]> Tho I guess python would suit them much better
2022-03-31 14:28:41 +0200 <abastro[m]> Much easier bar of entry
2022-03-31 14:28:43 +0200 <maerwald> Hecate: it actually works and is still developed
2022-03-31 14:28:52 +0200 <maerwald> https://github.com/input-output-hk/jormungandr
2022-03-31 14:29:16 +0200 <Hecate> ah I see
2022-03-31 14:29:28 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-03-31 14:29:36 +0200 <maerwald> there are only myths about why Haskell was chosen over it, though :p
2022-03-31 14:30:01 +0200 <maerwald> (I'm guessing that Haskell fits better into the science-first approach from the marketing perspective)
2022-03-31 14:30:55 +0200 <abastro[m]> Tho I've indeed seen many ppl opposed to it simply because haskell
2022-03-31 14:31:06 +0200 <maerwald> abastro[m]: in the non-technical blockchain community, yes
2022-03-31 14:31:10 +0200 <maerwald> that's understandable
2022-03-31 14:31:34 +0200 <abastro[m]> Indeed, and tbh I find most of the community non-technical
2022-03-31 14:31:49 +0200 <maerwald> to write smart contracts, you now need senior haskell devs with blockchain experience...
2022-03-31 14:32:00 +0200 <maerwald> instead of just some javascript trash
2022-03-31 14:32:03 +0200 <abastro[m]> Also they somehow promote their coin as "safer" just because they use haskell
2022-03-31 14:32:26 +0200 <abastro[m]> Or some random python moneky
2022-03-31 14:32:49 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-03-31 14:33:27 +0200 <abastro[m]> But I think their tone of "using haskell makes the chain bulletproof" does not make sense as well
2022-03-31 14:33:38 +0200 <maerwald> for a blockchain, adoption matters... Haskell is seen as an issue there
2022-03-31 14:34:01 +0200 <maerwald> abastro[m]: I've never actually heard that argument
2022-03-31 14:34:07 +0200 <abastro[m]> Simply adopting a language won't improve the security just because.
2022-03-31 14:34:25 +0200 <maerwald> Haskell doesn't even have strong focus on security :p
2022-03-31 14:34:50 +0200 <juri_> Haskell doesn't have a native SSL implementation worth using.
2022-03-31 14:35:02 +0200 <maerwald> it probably shouldn't
2022-03-31 14:35:29 +0200gentauro(~gentauro@user/gentauro) (Ping timeout: 256 seconds)
2022-03-31 14:35:40 +0200 <juri_> I work at a place that writes security software in haskell. sometimes, it gets painful.
2022-03-31 14:35:53 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 14:36:00 +0200 <abastro[m]> Charles Hoskinson, IOHK CEO, said that in a twitter
2022-03-31 14:36:12 +0200 <maerwald> abastro[m]: that's marketing
2022-03-31 14:36:22 +0200 <abastro[m]> Yep
2022-03-31 14:36:33 +0200 <abastro[m]> So that became one of the criticisms
2022-03-31 14:36:52 +0200 <abastro[m]> Sometimes leaking onto the haskell end as well
2022-03-31 14:37:08 +0200 <maerwald> there's some truth to it though, because the consensus protocol uses very heavy type-level programming
2022-03-31 14:37:17 +0200 <maerwald> if you consider that, maybe
2022-03-31 14:37:40 +0200 <abastro[m]> Maybe, but that doesn't make the protocol inherently safer, does it
2022-03-31 14:37:52 +0200 <maerwald> protocol correctness and types definitely correlate... but low-level security is a completely different topic
2022-03-31 14:37:55 +0200 <abastro[m]> Like there is certain limit types could get you far
2022-03-31 14:38:14 +0200 <abastro[m]> Low level security is important in crypto as well, right
2022-03-31 14:39:08 +0200 <abastro[m]> Btw, haskell is still small even in fintech area right? I was said that many ppl never heard of haskell in fintech area
2022-03-31 14:39:32 +0200 <maerwald> not sure any blockchain dev team runs proofs on their node binaries, though
2022-03-31 14:40:00 +0200feliix42(~felix@gibbs.uberspace.de) (Read error: Connection reset by peer)
2022-03-31 14:40:03 +0200phma(~phma@host-67-44-208-11.hnremote.net) (Read error: Connection reset by peer)
2022-03-31 14:41:50 +0200phma(~phma@host-67-44-208-132.hnremote.net)
2022-03-31 14:42:19 +0200gentauro(~gentauro@user/gentauro)
2022-03-31 14:42:23 +0200 <abastro[m]> How big is haskell in fintech in general
2022-03-31 14:42:42 +0200 <abastro[m]> Still minority, right?
2022-03-31 14:42:51 +0200 <maerwald> Java is more popular there for sure
2022-03-31 14:43:01 +0200 <abastro[m]> Simply because haskell is minority in the whole scene
2022-03-31 14:43:04 +0200 <abastro[m]> Yep
2022-03-31 14:43:11 +0200feliix42(~felix@gibbs.uberspace.de)
2022-03-31 14:43:14 +0200 <abastro[m]> Idk what secure Java looks like but eh
2022-03-31 14:43:34 +0200 <abastro[m]> I heard many also still use COBOL
2022-03-31 14:44:30 +0200 <maerwald> banks don't have very large APIs exposed to the public internet :p
2022-03-31 14:45:04 +0200 <abastro[m]> Yea
2022-03-31 14:45:33 +0200 <abastro[m]> Guess that is why some manage to keep COBOL in their codebase
2022-03-31 14:45:42 +0200 <maerwald> Java has excellent paid support and you can compile old programs with very new compilers. Something that's impossible in Haskell
2022-03-31 14:46:26 +0200 <abastro[m]> Ouch
2022-03-31 14:46:45 +0200 <abastro[m]> Lack of backward compatibility hits hard
2022-03-31 14:46:58 +0200 <maerwald> and even in formal methods, it's not any worse than Haskell, probably... because the type system can so easily be extended
2022-03-31 14:47:16 +0200 <maerwald> https://www.cs.cornell.edu/jif/
2022-03-31 14:47:45 +0200ph88(~ph88@ip5f5af71f.dynamic.kabel-deutschland.de)
2022-03-31 14:47:51 +0200jinsun(~jinsun@user/jinsun)
2022-03-31 14:48:03 +0200 <maerwald> haskell has a couple of papers about IFC as well (one with arrows, one with monads afair)
2022-03-31 14:48:21 +0200 <maerwald> I tried both... java was easier :p
2022-03-31 14:49:03 +0200 <maerwald> except I got eye cancer from looking at the code
2022-03-31 14:49:19 +0200jinsun__(~jinsun@user/jinsun) (Ping timeout: 260 seconds)
2022-03-31 14:49:36 +0200abastro(~abab9579@220.75.216.63)
2022-03-31 14:49:36 +0200Vajb(~Vajb@2001:999:62:aa00:7f5a:4f10:c894:3813) (Read error: Connection reset by peer)
2022-03-31 14:49:57 +0200 <abastro[m]> IFC?
2022-03-31 14:50:09 +0200 <abastro[m]> I did not know that Java could be extended
2022-03-31 14:50:13 +0200 <maerwald> information flow control
2022-03-31 14:50:45 +0200 <abastro> Now I wonder why haskell is used in fintech at all
2022-03-31 14:51:11 +0200Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-03-31 14:51:59 +0200 <maerwald> probably has to do more with what type of engineers those companies attract
2022-03-31 14:53:33 +0200 <abastro> I see, they might even be able to employ haskellers without much problem
2022-03-31 14:53:36 +0200 <merijn> abastro: It's less true now (since Haskell has been growing a lot the past decade(s)), but 10 years ago the average Haskeller was *much* more skilled than the average "anything else" programmar. So it's a good selection filter for looking for expensive, experienced engineers
2022-03-31 14:53:53 +0200 <merijn> And letting them use the tools they like is just a negotiation strategy
2022-03-31 14:54:22 +0200 <abastro> Also explains why haskell use is much uncommon in smaller countries
2022-03-31 14:54:36 +0200lainon(~lainon@c-68-46-201-40.hsd1.al.comcast.net)
2022-03-31 14:54:51 +0200 <abastro> Hm, so nowadays average haskell programmers are comparable to other average programmers?
2022-03-31 14:55:21 +0200 <merijn> I don't think so, but it's hard to judge since there's no real good way to poll. It also depends how you define "haskell programmer" :)
2022-03-31 14:55:35 +0200 <maerwald> yeah, if you get a star programmer to join your company, the last thing you want to do is tell them what tech to use
2022-03-31 14:55:45 +0200 <abastro> Aha, I se
2022-03-31 14:55:51 +0200 <abastro> s/se/see
2022-03-31 14:56:01 +0200 <abastro> Haskell had many star programmers?
2022-03-31 14:56:08 +0200 <maerwald> every language has them
2022-03-31 14:56:40 +0200 <maerwald> but I'd argue they're the ones introducing new languages to the industry
2022-03-31 14:57:15 +0200 <maerwald> because the company has enough confidence in whatever decision they make
2022-03-31 14:58:46 +0200lainon(~lainon@c-68-46-201-40.hsd1.al.comcast.net) (Client Quit)
2022-03-31 15:01:02 +0200 <abastro> This kind of star programmers would be rarer in smaller countries I guess
2022-03-31 15:01:21 +0200 <abastro> Which explains why it veers towards certain language
2022-03-31 15:01:38 +0200 <maerwald> abastro: nah, they just leave for silicon valley :p
2022-03-31 15:02:26 +0200 <abastro> !oh
2022-03-31 15:02:48 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-03-31 15:03:21 +0200 <abastro> I wonder how much talent they would have, so that they can simply go for silicon valley
2022-03-31 15:04:36 +0200 <exarkun> "Talent" is kind of a confusing idea here.
2022-03-31 15:04:53 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2022-03-31 15:04:55 +0200 <abastro> Is it?
2022-03-31 15:05:10 +0200 <exarkun> It's not like people are born as expert Haskell programmers
2022-03-31 15:05:39 +0200 <exarkun> And it's also not the case that if your only skill is being an amazing Haskell programmer you'll be a good addition to any particular team
2022-03-31 15:06:01 +0200 <exarkun> Also a lot of SV companies hire a lot of people who are not amazing programmers (for good reasons and for bad reasons).
2022-03-31 15:06:56 +0200 <abastro> Yep, I mean those haskellers who was talented enough to be hired by SV companies
2022-03-31 15:07:15 +0200 <exarkun> But did they get hired because they are "talented"?
2022-03-31 15:07:17 +0200 <Hecate> it's not just talent but also culture fit
2022-03-31 15:07:27 +0200 <abastro> If they are not talented and they prefer haskell, why would they hire them?
2022-03-31 15:07:34 +0200 <abastro> Culture fit?
2022-03-31 15:07:38 +0200 <Hecate> and some dose of nepotism
2022-03-31 15:07:41 +0200 <exarkun> You assume tech hiring is a rational process based on total knowledge.
2022-03-31 15:07:42 +0200 <Hecate> well yes
2022-03-31 15:07:51 +0200 <Hecate> abastro: have you ever been involved in recruiting?
2022-03-31 15:08:11 +0200 <maerwald> Never seen a company that cares about culture fit beyond being scared about their public image
2022-03-31 15:08:21 +0200 <exarkun> maerwald: I've seen plenty
2022-03-31 15:08:27 +0200 <Hecate> same
2022-03-31 15:08:40 +0200 <exarkun> There is quite a range of understanding about what "culture fit" actually /means/
2022-03-31 15:08:57 +0200 <maerwald> My experience is that toxic employees will always be tolerated if they're very productive.
2022-03-31 15:09:05 +0200 <exarkun> Sometimes it just means "it was easy to have an enjoyable conversation during the interview"
2022-03-31 15:09:18 +0200 <exarkun> maerwald: That sounds like a bummer, sorry to hear it.
2022-03-31 15:09:32 +0200 <abastro> Never involed in recruiting, yes
2022-03-31 15:09:43 +0200 <exarkun> I am not skeptical at all that there are companies that run that way (I worked at one for a while).
2022-03-31 15:09:53 +0200 <abastro> My english is bad enough to not understand what culture fit means.
2022-03-31 15:10:01 +0200 <exarkun> But I have also worked at companies that veer the other way ("culture fit" is priority, technical ability is a distant second).
2022-03-31 15:10:22 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-03-31 15:10:33 +0200 <abastro> Does it mean if the person is good at pleasing the higher-ups?
2022-03-31 15:10:49 +0200 <abastro> Like being great at flattery? Because that is one of the prime factors of being hired in where I live
2022-03-31 15:10:50 +0200 <maerwald> "culture fit" as in "is excited about agile"? :p
2022-03-31 15:11:05 +0200 <Hecate> abastro: it's evaluating how much the person in front of you will integrate in your organisation's culture
2022-03-31 15:11:14 +0200 <Hecate> sometimes they're looking for people with no life
2022-03-31 15:11:14 +0200 <abastro> Wait, isn't that like
2022-03-31 15:11:19 +0200 <abastro> Much, MUCH reasonable
2022-03-31 15:11:23 +0200 <Hecate> sometimes they're looking for people who are not assholes
2022-03-31 15:11:28 +0200 <shapr> yeah, that
2022-03-31 15:11:29 +0200 <abastro> Like it could be more reasonable than just technical skills
2022-03-31 15:11:45 +0200 <exarkun> abastro: Sure. On the surface, it sounds like a good thing.
2022-03-31 15:11:45 +0200 <abastro> I expected them to hire those who are just great at flattery
2022-03-31 15:12:06 +0200 <abastro> And good at hiding/covering what higher-up does
2022-03-31 15:12:20 +0200 <shapr> For example, Recurse Center entrance filter is mostly about being kind. They assume you can be trained to have more technical skills, that's easier than retraining someone to be pleasant and nice.
2022-03-31 15:12:31 +0200 <abastro> I mean, the culture fit could backfire and is bad for certain cases I guess, but that is not what I expected
2022-03-31 15:12:39 +0200 <exarkun> The downside is that it leaves a lot of room for bias in the process.
2022-03-31 15:12:46 +0200 <abastro> Indeed
2022-03-31 15:12:56 +0200 <exarkun> Maybe a recruiter didn't get along with a candidate because the /recruiter/ is the asshole...
2022-03-31 15:13:15 +0200 <shapr> exarkun: I've experienced that
2022-03-31 15:13:19 +0200 <Hecate> this is why you don't have *one* person interacting with a candidate
2022-03-31 15:13:20 +0200 <maerwald> exarkun: yeah, I've never considered "culture fit" when I interviewed. Because it's too unspecific. I look for specific things.
2022-03-31 15:13:32 +0200 <abastro> Better than hiring based on flattery ability at least
2022-03-31 15:13:38 +0200 <exarkun> maerwald: I tend to prefer to look for concrete, quantifiable traits too, yea.
2022-03-31 15:13:57 +0200 <maerwald> the main thing I look for is engagement
2022-03-31 15:14:00 +0200 <abastro> Or being employed through lines
2022-03-31 15:14:03 +0200 <exarkun> I mean, if someone acts like a total asshole in an interview, I might disqualify them.
2022-03-31 15:14:22 +0200 <maerwald> if a candidate starts babbling excitedly about some tech I have never heard of... great
2022-03-31 15:14:27 +0200 <exarkun> But if they're bad at eye contact, if they're nervous, if they have different hobbies than me, none of that stuff is relevant to whether they'll be good at the job.
2022-03-31 15:14:32 +0200 <abastro> I feel like culture fit should be minimum requirement
2022-03-31 15:14:58 +0200 <exarkun> abastro: How do you measure it in an interview?
2022-03-31 15:15:02 +0200 <abastro> Babbling excitedly about some tech never heard of, wouldn't that drop the candidte right off the bat?
2022-03-31 15:15:10 +0200 <abastro> I mean, yea, hard dto measure
2022-03-31 15:15:36 +0200 <abastro> Won't companies dismiss ppl who speak about new techs in interview
2022-03-31 15:15:45 +0200 <exarkun> Anyway there's as many hiring process philosophies as there are managers at companies, or more
2022-03-31 15:15:58 +0200 <abastro> They'd rather consider ppl who fits well with company's existing systems
2022-03-31 15:16:00 +0200 <exarkun> And as a first approximation, nobody /really/ knows how to generalize the good ones.
2022-03-31 15:16:28 +0200 <exarkun> abastro: That's a great way to build a rigid monoculture
2022-03-31 15:16:44 +0200 <abastro> Yeah, most of the companies in my country are rigid monocultures
2022-03-31 15:16:54 +0200 <abastro> Isn't it what companies are supposed to be?
2022-03-31 15:16:54 +0200 <exarkun> If everyone on the team likes and knows the same tools, you're going to have a lot of blind spots.
2022-03-31 15:16:57 +0200 <juri_> i hire a lot, and a lot of what i'm looking for is strong opinions. i'm here to hire people good at what they do, and to listen to them, so i don't sound dumb / do the wrong thing.
2022-03-31 15:17:09 +0200 <abastro> Wow
2022-03-31 15:17:10 +0200 <maerwald> exarkun: exactly, so maybe the "culture fit" angle is actually detrimental to the goal ;)
2022-03-31 15:17:15 +0200 <exarkun> In some industries, maybe that's fine. In software, probably not so much.,
2022-03-31 15:17:17 +0200 <abastro> That sounds like truly another world
2022-03-31 15:17:19 +0200 <exarkun> maerwald: right
2022-03-31 15:17:30 +0200 <abastro> I mean, that is precisely what is happening in SW scene in my country
2022-03-31 15:17:34 +0200 <exarkun> In some ways, the other popular buzzword "diversity" is the opposite of "culture fit".
2022-03-31 15:17:39 +0200 <abastro> I think it should be similar for Japan and China
2022-03-31 15:17:44 +0200 <exarkun> Culture fit - hire people just like us
2022-03-31 15:17:48 +0200 <exarkun> Diversity - hire people different from us
2022-03-31 15:17:54 +0200 <exarkun> It's fun when a company wants to do both at the same time.
2022-03-31 15:18:17 +0200 <abastro> Better be fun if you can't do it great
2022-03-31 15:18:25 +0200 <exarkun> :)
2022-03-31 15:18:31 +0200 <juri_> i don't see those as oposing positions. my team is very argumentative, so people like us can defend their positions, and more importantly, be wrong gracefully.
2022-03-31 15:18:44 +0200 <abastro> Rigid SW companies clinging to Java 5/6 is stereotypical SW tech company
2022-03-31 15:19:04 +0200 <abastro> Or with jQuery for frontend
2022-03-31 15:19:54 +0200 <raehik> Is it possible to push a package to Hackage that relies on a non-Hackage dependency (i.e. a directory in a GitHub repo, specified in cabal.project)?
2022-03-31 15:20:04 +0200 <Hecate> raehik: nope and that's by design
2022-03-31 15:20:13 +0200 <Hecate> every reasonable package repo will put this limit on you
2022-03-31 15:20:31 +0200 <maerwald> raehik: you'll have to bundle/vendor that dependency into your code
2022-03-31 15:20:31 +0200 <raehik> mm. I had kind of imagined
2022-03-31 15:20:51 +0200 <abastro> Actually you guys are mostly working in best kinds of companies right
2022-03-31 15:20:59 +0200 <raehik> cheers Hecate , maerwald !
2022-03-31 15:21:06 +0200 <Hecate> I'm working for a Swedish legaltech that uses Haskell in the backend
2022-03-31 15:21:09 +0200shaprhugs Hecate for awesome
2022-03-31 15:21:26 +0200 <Hecate> my managers are kind, competent and open to new ideas
2022-03-31 15:21:29 +0200 <abastro> Yep, sounds like one of the best
2022-03-31 15:21:34 +0200 <Hecate> I'd say I found a very good fit
2022-03-31 15:21:48 +0200 <Hecate> oh, and we're not controlled by the accountants
2022-03-31 15:21:50 +0200 <shapr> Hecate: jättekul!
2022-03-31 15:21:55 +0200 <Hecate> even though we're not a startup
2022-03-31 15:21:57 +0200 <abastro> I imagine only 1% of SW companies would be like that
2022-03-31 15:22:02 +0200 <juri_> I'm working in management at a secure messaging company with a Haskell based backend.
2022-03-31 15:22:13 +0200 <juri_> I have become the enemy.
2022-03-31 15:22:17 +0200 <Hecate> shapr: yeah it's cool :)
2022-03-31 15:22:20 +0200 <abastro> enemy?
2022-03-31 15:22:22 +0200 <Hecate> juri_: you're at Wire? :)
2022-03-31 15:22:36 +0200 <abastro> Oh. you mean manager?
2022-03-31 15:22:47 +0200 <juri_> Hecate: yeah. backend chapter lead. :)
2022-03-31 15:22:54 +0200 <Hecate> juri_: :)
2022-03-31 15:23:33 +0200 <juri_> it's very stressy, but i learn a lot, so.. :)
2022-03-31 15:23:50 +0200 <Hecate> juri_: do you get to store this knowledge somewhere outside of the company?
2022-03-31 15:23:59 +0200 <Hecate> like writing public blog posts or in open-source projects?
2022-03-31 15:24:05 +0200 <abastro> I guess if you reach higher, more advanced companies, it is harder to see troubles usual in typical companies.
2022-03-31 15:24:15 +0200 <maerwald> juri_: Berlin?
2022-03-31 15:24:15 +0200ccntrq1(~Thunderbi@dynamic-095-116-001-154.95.116.pool.telefonica.de)
2022-03-31 15:24:21 +0200 <juri_> maerwald: yep.
2022-03-31 15:24:30 +0200 <maerwald> think I've been to a talk at your company then :p
2022-03-31 15:24:30 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca) (Remote host closed the connection)
2022-03-31 15:24:30 +0200ccntrq1ccntrq
2022-03-31 15:24:35 +0200 <abastro> Like those being rigid in choices or preference towards simple obedience
2022-03-31 15:25:30 +0200 <juri_> Hecate: no, honestly, it takes up so much of my life it's hard to work on my actual passion projects. plus, i don't write well / much. landed in management due to a car accident, that took my "i grind out code all day" hands away.
2022-03-31 15:25:33 +0200 <Hecate> I don't want to live my current company but I'd love to experiment with a worker cooperative one day
2022-03-31 15:25:46 +0200 <Hecate> juri_: ow :-(
2022-03-31 15:25:50 +0200 <Hecate> I see
2022-03-31 15:26:12 +0200 <Hecate> maerwald: take care of your hands, otherwise you're going to end up in management!
2022-03-31 15:26:27 +0200 <abastro> When management position is pain
2022-03-31 15:26:33 +0200 <maerwald> Hecate: I lost a finger last year already ;) coding with 9 now
2022-03-31 15:26:50 +0200 <Hecate> maerwald: is it still attached?
2022-03-31 15:26:52 +0200 <juri_> i WAS a linux kernel hacker when that was cool. and when cool was cool. moved to haskell because thinking all day to write 50 lines is more effective than writing code for 30 minutes a day.
2022-03-31 15:26:53 +0200 <maerwald> yep
2022-03-31 15:26:57 +0200 <maerwald> just not usable
2022-03-31 15:27:03 +0200 <juri_> maerwald: emacs pinky?
2022-03-31 15:27:07 +0200 <Hecate> oki
2022-03-31 15:27:10 +0200 <raehik> quick follow up question, who's to stop me chucking this (GPL2) non-Hackage lib onto Hackage? (sorry to interrupt storytime :( )
2022-03-31 15:27:21 +0200 <maerwald> juri_: left index finger
2022-03-31 15:27:26 +0200 <maerwald> the worst to lose :p
2022-03-31 15:27:29 +0200 <raehik> do Hackage maintainers ask for proper creds or whatever, I'm unsure
2022-03-31 15:27:33 +0200 <maerwald> covers 6 keys
2022-03-31 15:27:38 +0200 <juri_> maerwald: ouch.
2022-03-31 15:28:01 +0200 <Hecate> raehik: https://hackage.haskell.org/accounts
2022-03-31 15:28:18 +0200 <Hecate> wait, is it your library, raehik ?
2022-03-31 15:28:27 +0200 <raehik> Nope
2022-03-31 15:28:45 +0200 <abastro> sorry for interrupting questions, I ranted and started this convo
2022-03-31 15:28:53 +0200 <raehik> it's keystone, they have Haskell bindings https://github.com/keystone-engine/keystone/tree/master/bindings/haskell
2022-03-31 15:29:09 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 15:29:26 +0200 <juri_> I ended up with untreatable nerve damage, due to a car accident. cracked C3. had to move to split keyboard / custom dvorakish keymap.
2022-03-31 15:29:27 +0200 <raehik> no being sorry for *discussion* on IRC! :D
2022-03-31 15:29:30 +0200 <Hecate> raehik: ask them first ;-)
2022-03-31 15:29:45 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 15:29:52 +0200 <raehik> Hecate: AGH fine but now my builds are all broken >:(
2022-03-31 15:29:56 +0200 <raehik> ty
2022-03-31 15:30:08 +0200 <Hecate> juri_: aouch, cervical? damn :/
2022-03-31 15:30:41 +0200 <juri_> the above ^-- is enough conversation i'm going to have to rest for a bit. biology sucks. need to 3d print a new me. hense, github.com/Haskell-Things/ , my 'all 3d printing tools in haskell' project.
2022-03-31 15:30:42 +0200 <abastro> Think the one commited on the repo was one of active ppl in haskell discourse
2022-03-31 15:31:00 +0200 <Hecate> juri_: rest well, see you later
2022-03-31 15:31:18 +0200juri_nods
2022-03-31 15:31:23 +0200 <maerwald> juri_: I'm also 3d printing my own keyboards ^^
2022-03-31 15:31:27 +0200 <abastro> (so it would be not hard to contact them - hardfully)
2022-03-31 15:31:32 +0200 <maerwald> but kinesis advantage 2 is still the best
2022-03-31 15:31:36 +0200 <abastro> s/hardfully/thankfully
2022-03-31 15:31:47 +0200 <Hecate> juri_: did you see the extra thumb controlled with big toe movement?
2022-03-31 15:32:04 +0200 <Hecate> https://www.youtube.com/watch?v=OmcM683JIgU
2022-03-31 15:32:26 +0200 <abastro> Hm seeing as how ppl lose fingers etc.. is SW one of the hazardous job?
2022-03-31 15:33:34 +0200 <maerwald> you should check out this if you're looking for ergonomic splits: https://www.kickstarter.com/projects/moergo/glove80-the-incredibly-comfortable-ergonomic-keyboard
2022-03-31 15:34:11 +0200 <maerwald> abastro: sitting is one of the most unhealthy things you can do, yes
2022-03-31 15:34:23 +0200 <abastro> Oh no
2022-03-31 15:34:37 +0200 <maerwald> there are studies indicating it's worse than being a chain smoker
2022-03-31 15:35:06 +0200 <abastro> I should be careful then
2022-03-31 15:35:12 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 272 seconds)
2022-03-31 15:35:43 +0200 <exarkun> get up and take a walk once in a while, or get a standing/sitting desk so you can change your position throughout the day
2022-03-31 15:36:08 +0200 <abastro> Gotta make sure to move around!
2022-03-31 15:36:30 +0200 <maerwald> exarkun: only building real muscle helped me
2022-03-31 15:36:36 +0200 <maerwald> like, back, shoulders
2022-03-31 15:36:46 +0200 <exarkun> sure, there's levels
2022-03-31 15:36:58 +0200 <exarkun> and I usually prefer to believe that most people are about the same, while they're healthy
2022-03-31 15:37:04 +0200 <exarkun> and then everybody manages to break themselves in a unique way :)
2022-03-31 15:37:27 +0200 <maerwald> at least we met the deadline
2022-03-31 15:37:38 +0200 <exarkun> for building muscle, I recommend getting a sheep farm
2022-03-31 15:38:10 +0200 <maerwald> they need attention *every* day, lol
2022-03-31 15:38:44 +0200 <maerwald> maybe there's an app for this
2022-03-31 15:38:59 +0200 <Clint> attending to sheep?
2022-03-31 15:39:57 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-03-31 15:40:37 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Ping timeout: 240 seconds)
2022-03-31 15:40:39 +0200Pickchea(~private@user/pickchea) (Ping timeout: 260 seconds)
2022-03-31 15:41:43 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-03-31 15:46:27 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-03-31 15:46:28 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-03-31 15:46:28 +0200wroathe(~wroathe@user/wroathe)
2022-03-31 15:47:03 +0200ajb_(~ajb@cupid.whatbox.ca) (Quit: bye)
2022-03-31 15:47:09 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-03-31 15:49:05 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it)
2022-03-31 15:49:18 +0200geranim0(~geranim0@modemcable242.171-178-173.mc.videotron.ca)
2022-03-31 15:52:31 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:2b26:10cb:f0bf:5e24) (Quit: WeeChat 2.8)
2022-03-31 15:56:15 +0200gurkenglas(~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Quit: Lost terminal)
2022-03-31 15:56:41 +0200gurkenglas(~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de)
2022-03-31 16:01:18 +0200cdman(~dcm@user/dmc/x-4369397) (Quit: Leaving)
2022-03-31 16:01:55 +0200raym(~raym@user/raym) (Remote host closed the connection)
2022-03-31 16:05:36 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 272 seconds)
2022-03-31 16:06:51 +0200 <juri_> Hecate: interesting, no. :)
2022-03-31 16:07:02 +0200 <maerwald> juri_: is Artyom still working there?
2022-03-31 16:07:30 +0200 <juri_> maerwald: nope, he left about 6 months after i joined. i do miss him. :)
2022-03-31 16:07:45 +0200 <juri_> his classes were nice. i attended them. :)
2022-03-31 16:09:07 +0200 <merijn> weightlifting helped a ton with removing precursor RSI symptoms and not going to the gym a lot the past 2 years has noticably made stuff worse
2022-03-31 16:09:08 +0200 <Hecate> his Aeson guide is fantastic
2022-03-31 16:09:22 +0200 <Hecate> get buffed!
2022-03-31 16:09:50 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 16:09:53 +0200 <merijn> Pretty sure my personal max halved in two years >.> I should go back to the office again so I get back into gym habit :p
2022-03-31 16:10:12 +0200 <juri_> Hecate: I haven't managed to get through that, but it's in my browser atm. my haskell is.. what haskell looks like when a hobbled C programmer moves to haskell. :)
2022-03-31 16:10:25 +0200 <Hecate> juri_: ;-D
2022-03-31 16:10:35 +0200 <Hecate> it's okay, I trust you to do C
2022-03-31 16:11:23 +0200 <juri_> I am still breaking myself of all of the internalized micro-optimizations from writing C for 20 years. it's just not needed!
2022-03-31 16:11:50 +0200 <juri_> that said, i swear i ran across a haskell compiler bug a few days back. my first!
2022-03-31 16:12:23 +0200 <maerwald> merijn: push ups (the ones with elbows close to the torso)... don't need gym :p
2022-03-31 16:12:40 +0200ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-03-31 16:13:53 +0200raym(~raym@user/raym)
2022-03-31 16:15:21 +0200 <maerwald> I'll send you a bottle of Auchentoshan if you manage to do more than 3 (twitch stream?)
2022-03-31 16:17:40 +0200shriekingnoise(~shrieking@201.231.16.156)
2022-03-31 16:18:14 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 16:18:20 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 16:18:25 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net)
2022-03-31 16:18:55 +0200ajb(~ajb@cupid.whatbox.ca)
2022-03-31 16:19:31 +0200xff0x(~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp)
2022-03-31 16:19:36 +0200ajb(~ajb@cupid.whatbox.ca) (Read error: Connection refused)
2022-03-31 16:21:36 +0200 <merijn> Pushups are *literally* the most hellish exercise
2022-03-31 16:21:39 +0200alp(~alp@user/alp) (Ping timeout: 250 seconds)
2022-03-31 16:21:46 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2022-03-31 16:22:19 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-03-31 16:22:22 +0200 <merijn> maerwald: I could do about 10 proper ones. Now probably 1-2? *Maybe* 3 if I struggle a lot
2022-03-31 16:22:34 +0200 <maerwald> start the stream :D
2022-03-31 16:22:37 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-03-31 16:22:37 +0200nate1(~nate@98.45.152.91)
2022-03-31 16:22:43 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-03-31 16:22:46 +0200 <merijn> Three Wood is the only Auchentoshan worht a damn, though :p
2022-03-31 16:23:11 +0200 <maerwald> sure, what else would I have
2022-03-31 16:23:29 +0200 <merijn> The frustration to effectiveness ratio for weightlifting is better than pushups. I quite like oly lifting
2022-03-31 16:24:25 +0200byorgeywants to know how I can get a bottle of Auchentoshan too
2022-03-31 16:24:43 +0200 <maerwald> :D
2022-03-31 16:25:41 +0200 <maerwald> merijn: IME, the main problem is weak core muscles... that leads to imbalances in sitting posture, that leads to back and neck issues, goes to shoulders and elbows and finally hits your finger. And only then you notice :D
2022-03-31 16:25:41 +0200 <merijn> byorgey: Pushups, apparently :p
2022-03-31 16:26:00 +0200 <maerwald> and then wonder why your finger hurts
2022-03-31 16:26:03 +0200 <merijn> maerwald: Sounds about right from what I know
2022-03-31 16:26:22 +0200 <maerwald> then you go to the doc, they do MRI on your finger and say "hey, that looks fine"
2022-03-31 16:26:24 +0200 <maerwald> :D
2022-03-31 16:26:28 +0200 <merijn> Weightlifting is pretty good for core
2022-03-31 16:26:45 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 16:26:46 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net) (Read error: Connection reset by peer)
2022-03-31 16:26:53 +0200 <merijn> But yeah, so are pushups
2022-03-31 16:27:03 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 16:27:16 +0200nate1(~nate@98.45.152.91) (Ping timeout: 246 seconds)
2022-03-31 16:27:17 +0200 <merijn> Pushups require quite a lot of base strength in shoulders/arms to begin, though
2022-03-31 16:27:31 +0200 <merijn> And it's easier to do bad pushups, which renders them drastically less effective
2022-03-31 16:28:49 +0200jespada(~jespada@cpc121022-nmal24-2-0-cust171.19-2.cable.virginm.net)
2022-03-31 16:28:57 +0200 <maerwald> we could start a Haskell Foundation pushup group
2022-03-31 16:29:20 +0200lispy(~lispy@82.212.115.165)
2022-03-31 16:29:39 +0200acidjnk(~acidjnk@p200300d0c7049f56dc923130dc4d7bd3.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-03-31 16:31:22 +0200 <juri_> No. i would die. :)
2022-03-31 16:32:09 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com)
2022-03-31 16:39:03 +0200ccntrq1(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca)
2022-03-31 16:40:36 +0200ccntrq(~Thunderbi@dynamic-095-116-001-154.95.116.pool.telefonica.de) (Ping timeout: 240 seconds)
2022-03-31 16:40:36 +0200ccntrq1ccntrq
2022-03-31 16:44:53 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4)
2022-03-31 16:46:48 +0200doyougnu(~doyougnu@cpe-67-249-83-190.twcny.res.rr.com)
2022-03-31 16:46:55 +0200dsrt^(~dsrt@96-91-136-49-static.hfc.comcastbusiness.net) (Remote host closed the connection)
2022-03-31 16:50:01 +0200ajb(~ajb@cupid.whatbox.ca)
2022-03-31 16:50:42 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-03-31 16:50:58 +0200dut(~dut@user/dut)
2022-03-31 16:52:32 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 16:53:49 +0200 <abastro> What's so hard with 10 pushups
2022-03-31 16:54:23 +0200 <abastro> Oh I just thought it was matter of putting my body close to the floor
2022-03-31 16:54:33 +0200ajb(~ajb@cupid.whatbox.ca) (Client Quit)
2022-03-31 16:55:39 +0200 <merijn> abastro: There's two kinds of people: People who think 10+ pushups are hard and people who are doing their pushups wrong :D
2022-03-31 16:56:00 +0200 <merijn> (technically there's also the extremely ultra-fit, but those are a negligible percentage of the population)
2022-03-31 16:56:59 +0200 <exarkun> isn't "... ultra-fit ... negligible percentage ..." a tautology
2022-03-31 16:57:10 +0200 <exarkun> if more people were fitter then you would have to be even fitter to be ultra-fit
2022-03-31 16:57:33 +0200 <exarkun> Any good / widely-used Haskell source formatters I can plug into my emacs config?
2022-03-31 16:58:00 +0200 <juri_> ormolu?
2022-03-31 16:58:35 +0200 <exarkun> > Any of several copper and zinc or tin alloys resembling gold in appearance
2022-03-31 16:58:37 +0200 <lambdabot> <hint>:1:5: error: parse error on input ‘of’
2022-03-31 16:58:42 +0200 <exarkun> sorry lambdabot
2022-03-31 16:59:01 +0200 <abastro> I have to practice more correct pushups then
2022-03-31 16:59:03 +0200 <exarkun> oh yea it's on melpa, great, ty
2022-03-31 16:59:15 +0200Sgeo(~Sgeo@user/sgeo)
2022-03-31 16:59:21 +0200 <exarkun> juri_: is the question mark that you're not sure if it is good or if you're not sure if it's widely-used or something else? :)
2022-03-31 16:59:24 +0200 <abastro> I mean, I saw many ppl who actually do 10 pushups and they looked great in posture. Though that might be illusion :P
2022-03-31 16:59:41 +0200 <juri_> exarkun: it's the only one i know. :)
2022-03-31 16:59:56 +0200 <exarkun> abastro: 10 push-ups is only about as hard as writing a nice "hello world" program
2022-03-31 16:59:56 +0200 <merijn> Good auto-formatter is a contradiction ;)
2022-03-31 17:00:06 +0200 <exarkun> looks hard to someone who never tried, otherwise pretty trivial
2022-03-31 17:00:09 +0200 <merijn> exarkun: It's really not
2022-03-31 17:00:26 +0200 <abastro> I'd say 10 pushups are not trivial at least, though.
2022-03-31 17:00:29 +0200 <merijn> Takes me a solid month of routine pushup practice to be able to properly do 10
2022-03-31 17:00:42 +0200 <abastro> I mean, who doesn't do routine pushups
2022-03-31 17:00:46 +0200 <exarkun> And there are a lot of people who would take at least that long to get to "hello world" :)
2022-03-31 17:02:31 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-03-31 17:06:20 +0200ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-03-31 17:10:48 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 17:11:34 +0200 <maerwald> exarkun: not chicken pushups
2022-03-31 17:11:47 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 17:11:49 +0200 <maerwald> elbows close to the torso and try again ;)
2022-03-31 17:11:51 +0200 <exarkun> Are these pushups that you do while a chicken is standing on you?
2022-03-31 17:12:01 +0200 <exarkun> Ah I see.
2022-03-31 17:12:17 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-03-31 17:12:29 +0200 <maerwald> no, it means you spread your elbows, which causes your chest and supraspinatus to do most of the work
2022-03-31 17:13:06 +0200 <maerwald> also increases excersice injury
2022-03-31 17:13:14 +0200 <exarkun> delightful
2022-03-31 17:13:42 +0200 <exarkun> I am a fan of taking care of the equipment
2022-03-31 17:13:46 +0200 <abastro> I thought pushup was a chest exercise
2022-03-31 17:13:53 +0200 <InstX1> exarkun -> [exa]?
2022-03-31 17:13:57 +0200 <exarkun> InstX1: nope
2022-03-31 17:14:19 +0200 <InstX1> also maerwald: if I'm reading it correctly, is the new HF director viewing Haskell in the same way I do, i.e, we need more posers, codemonkeys, kids, and randumbs?
2022-03-31 17:14:33 +0200 <maerwald> wat?
2022-03-31 17:15:06 +0200 <InstX1> https://discourse.haskell.org/t/new-executive-director-for-the-haskell-foundation/4290
2022-03-31 17:15:22 +0200 <InstX1> David has impressed upon me the importance of reaching out beyond current Haskell communities, seeking new voices and approaches. Haskell is a language that anyone can master – but we have work to do to have its perception match that reality. I know David is committed to that course of action, and of focusing on the practical aspects of Haskell use that affect the Haskell community broadly.
2022-03-31 17:15:36 +0200rawley(~rawley@142.99.241.242)
2022-03-31 17:15:48 +0200 <InstX1> my point is that you need more kids to learn haskell as a first language, you want managers to learn haskell to create toy apps for their needs that their IT department can clean up
2022-03-31 17:15:59 +0200 <maerwald> I'm not sure why you're asking me. I don't know the guy, but only heard high praises.
2022-03-31 17:16:03 +0200 <InstX1> oh okay
2022-03-31 17:16:17 +0200 <InstX1> well, you know, you're fairly high up, what the hell would we do without GHCup? :)
2022-03-31 17:16:29 +0200 <maerwald> it's a small tool -.-
2022-03-31 17:16:37 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 246 seconds)
2022-03-31 17:16:51 +0200 <InstX1> it's an important one
2022-03-31 17:17:09 +0200 <InstX1> if Haskell Platform were dead, and GHCup didn't exist, I probably wouldn't have given Haskell another shot
2022-03-31 17:17:21 +0200 <abastro> "Small tool" wow
2022-03-31 17:17:26 +0200 <InstX1> Modesty :)
2022-03-31 17:17:29 +0200 <abastro> someone better quote it
2022-03-31 17:17:41 +0200 <maerwald> Well, it is. If you compare it with HLS or cabal
2022-03-31 17:18:00 +0200 <abastro> Without ghcup it is much bigger pain to install cabal/HLS
2022-03-31 17:18:03 +0200 <InstX1> if both stack and cabal teams approached you
2022-03-31 17:18:21 +0200 <InstX1> to merge projects, i.e, better integration between stack or cabal with GHCup
2022-03-31 17:18:28 +0200 <InstX1> which team would you choose?
2022-03-31 17:19:07 +0200 <maerwald> that's an odd question
2022-03-31 17:19:18 +0200 <maerwald> let's say integration with cabal is easy, because it mostly follows unix principles
2022-03-31 17:19:28 +0200 <maerwald> with stack I tried, but https://github.com/commercialhaskell/stack/pull/5585
2022-03-31 17:19:29 +0200 <InstX1> stack i uninstalled
2022-03-31 17:19:35 +0200 <InstX1> because stack created like 20 different GHCs
2022-03-31 17:19:43 +0200 <InstX1> and kept on messing with my path variables
2022-03-31 17:19:54 +0200 <maerwald> yeah, there's a relatively simple solution to it... my patch isn't even very big
2022-03-31 17:20:35 +0200 <abastro> Wow, no convo?
2022-03-31 17:20:36 +0200 <maerwald> and I found stack codebase somewhat pleasent to work with, tbh
2022-03-31 17:21:15 +0200 <abastro> Surprising seeing no discussion in the PR
2022-03-31 17:21:40 +0200 <maerwald> I didn't try very hard (like pinging maintainers per email) though
2022-03-31 17:21:56 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 17:22:13 +0200alp(~alp@user/alp)
2022-03-31 17:22:16 +0200 <abastro> I see, still
2022-03-31 17:22:16 +0200 <maerwald> Snoyman seems to have little time for stack atm has he explained in his blog post
2022-03-31 17:22:29 +0200 <abastro> Hmm
2022-03-31 17:22:43 +0200 <abastro> <del>Cabal + Stack when</del>
2022-03-31 17:23:16 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-03-31 17:23:17 +0200 <merijn> InstX1: There is no stack team left :p
2022-03-31 17:23:22 +0200 <merijn> So that's a simple decision
2022-03-31 17:23:54 +0200 <maerwald> merijn: tbf, it's quite maintainable (module a few rather complicated libraries)
2022-03-31 17:24:02 +0200 <maerwald> *modulo
2022-03-31 17:24:07 +0200 <maerwald> (like pantry, brr)
2022-03-31 17:24:11 +0200 <InstX1> merijn: so stack is officially discontinued?
2022-03-31 17:24:15 +0200 <maerwald> no
2022-03-31 17:24:18 +0200 <InstX1> wait, is Snoyman the guy who got fed up because of Cardano?
2022-03-31 17:24:35 +0200 <merijn> InstX1: stack is "community maintenance"
2022-03-31 17:25:19 +0200 <juri_> maerwald: remind me to rant at you about 'mostly' following unix principles. spoiler: I ship/use a Makefile for all of my projects.
2022-03-31 17:25:37 +0200 <InstX1> but it's basically dead, it'll be kept maintained vs security issues, but it's not moving forward
2022-03-31 17:25:37 +0200 <exarkun> wait, what happened to stack?
2022-03-31 17:25:42 +0200 <InstX1> it feels like GHCup ate stack :)
2022-03-31 17:25:50 +0200 <abastro> Stack is relatively unmaintained?
2022-03-31 17:26:01 +0200 <abastro> Eh, ghcup and stack has different niche
2022-03-31 17:27:11 +0200 <abastro> I did not know cabal follows unix principles "mostly"
2022-03-31 17:27:16 +0200 <maerwald> I think the main issue is that it's still based on Cabal-3.2
2022-03-31 17:27:37 +0200 <abastro> Guess some noncomplliant parts are not so compatible
2022-03-31 17:27:38 +0200 <maerwald> so it's kind of at the mercy of cabal devs, in fact... wrt backwards compat
2022-03-31 17:29:04 +0200 <merijn> exarkun: Snoyman had another kid :p
2022-03-31 17:30:42 +0200 <exarkun> aha
2022-03-31 17:30:53 +0200 <maerwald> https://www.snoyman.com/blog/babies-oss-maintenance/
2022-03-31 17:31:42 +0200noctux(~noctux@user/noctux) (Read error: Connection reset by peer)
2022-03-31 17:32:02 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl)
2022-03-31 17:32:08 +0200 <maerwald> at any rate... even if stack will not survive, I'm pretty sure stackage will
2022-03-31 17:33:00 +0200dschrempf(~dominik@mobiledyn-62-240-134-128.mrsn.at)
2022-03-31 17:33:31 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 17:34:20 +0200noctux(~noctux@user/noctux)
2022-03-31 17:34:59 +0200 <maerwald> there's already a cabal branch where you can import remote stackage set in your cabal.project
2022-03-31 17:35:26 +0200 <sm> good morning all!
2022-03-31 17:35:28 +0200 <maerwald> https://github.com/haskell/cabal/pull/7783
2022-03-31 17:35:28 +0200smlearns about pushups
2022-03-31 17:35:52 +0200 <maerwald> sm: how many can you do?
2022-03-31 17:36:48 +0200 <abastro> How do you put star like that? Messages like `* {nick} foo bar`
2022-03-31 17:36:57 +0200 <maerwald> /me ...
2022-03-31 17:37:00 +0200 <sm> that is an embarassing question.. :/ I typically do 10, can reliably do 20, if I want to really suffer could probably do a little more
2022-03-31 17:37:15 +0200_________(~nobody@user/noodly)
2022-03-31 17:38:15 +0200abastrotries the command
2022-03-31 17:38:23 +0200 <abastro> Thx! Learned a lot toay
2022-03-31 17:38:29 +0200 <abastro> s/toay/today
2022-03-31 17:39:12 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 17:39:14 +0200mc47(~mc47@xmonad/TheMC47)
2022-03-31 17:42:27 +0200econo(uid147250@user/econo)
2022-03-31 17:42:40 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca) (Remote host closed the connection)
2022-03-31 17:42:58 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca)
2022-03-31 17:43:12 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 17:45:37 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 17:48:59 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 260 seconds)
2022-03-31 17:49:29 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net)
2022-03-31 17:49:56 +0200odnes(~odnes@5-203-245-187.pat.nym.cosmote.net) (Read error: Connection reset by peer)
2022-03-31 17:50:45 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-03-31 17:51:33 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-03-31 17:52:45 +0200jakalx(~jakalx@base.jakalx.net)
2022-03-31 17:53:51 +0200 <sm> maerwald: how about you ? and what's a "proper" arms-in pushup - how low do you go ?
2022-03-31 17:54:39 +0200 <maerwald> I can do 10. 3 sets, the last one usually 6 or 7
2022-03-31 17:54:54 +0200 <maerwald> slow, elbows to the torso
2022-03-31 17:55:18 +0200dschrempf(~dominik@mobiledyn-62-240-134-128.mrsn.at) (Quit: WeeChat 3.4.1)
2022-03-31 17:55:21 +0200ss-(~ss-@187.83.249.216.dyn.smithville.net)
2022-03-31 17:56:33 +0200 <sm> 3 x 10 ? how long do you reset between sets ? how low do you go ? If you don't mind me asking
2022-03-31 17:56:45 +0200smwill use "catch up with maerwald" to motivate
2022-03-31 17:57:01 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 17:57:13 +0200Papercombo(~Papercomb@194.210.221.87)
2022-03-31 17:57:16 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-03-31 17:57:34 +0200ec(~ec@gateway/tor-sasl/ec)
2022-03-31 17:57:37 +0200MajorBiscuit(~MajorBisc@c-001-024-034.client.tudelft.eduvpn.nl) (Quit: WeeChat 3.4)
2022-03-31 17:59:01 +0200 <maerwald> 1-2 minutes break
2022-03-31 17:59:20 +0200arjun(~arjun@user/arjun)
2022-03-31 18:00:14 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 18:00:41 +0200 <sm> ok, I'm going to assume "to 90 degree elbows"
2022-03-31 18:00:53 +0200CiaoSen(~Jura@p200300c95735b0002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 250 seconds)
2022-03-31 18:01:31 +0200Papercombo(~Papercomb@194.210.221.87) (Ping timeout: 250 seconds)
2022-03-31 18:01:56 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 18:02:24 +0200 <ss-> I'm trying to use `stack build --profile` to build a project with profiling, but no matter what I do I keep getting errors like "Perhaps you haven't installed the profiling libraries for package `base-4.15.1.0`" when building dependencies. I've tried rm -rf ~/.stack (and stack exec -- which ghc shows ~/.stack/...). anyone have any ideas for what I
2022-03-31 18:02:25 +0200 <ss-> might be doing wrong here?
2022-03-31 18:02:53 +0200 <geekosaur> the profiling libraries for base have to come with your ghc, stack cannot build them
2022-03-31 18:02:59 +0200 <geekosaur> (base is wired into ghc)
2022-03-31 18:03:13 +0200 <geekosaur> where did you install your ghc from?
2022-03-31 18:04:01 +0200 <ss-> I used to stack to install ghc iirc, or at least I thought I did
2022-03-31 18:04:17 +0200 <abastro> Think lower than 90 degree elbows is the way to go with pushups
2022-03-31 18:04:34 +0200 <ss-> on arch linux, I think I did...sudo pacman -S stack into stack build?
2022-03-31 18:04:34 +0200 <merijn> abastro: nose touching ground with straight back is
2022-03-31 18:04:46 +0200smgroans
2022-03-31 18:04:54 +0200 <merijn> ss-: Never trust arch pacman for haskell tooling
2022-03-31 18:05:21 +0200 <merijn> ss-: They (intentionally!) install a bunch of stuff that's non-functional for default Haskell usage
2022-03-31 18:05:25 +0200lbseale(~ep1ctetus@user/ep1ctetus)
2022-03-31 18:05:29 +0200 <sm> hahaha.. how did I guess it was arch
2022-03-31 18:05:43 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net) (Ping timeout: 256 seconds)
2022-03-31 18:05:56 +0200 <maerwald> someone should tell arch devs how much support work they caused to us
2022-03-31 18:06:00 +0200 <ss-> what's the easiest fix? uninstall stack and reinstall with ghcup or something?
2022-03-31 18:06:05 +0200fendor_(~fendor@178.115.44.149.wireless.dyn.drei.com)
2022-03-31 18:06:18 +0200 <maerwald> ss-: stack should install correct GHCs by itself unless you use --system-ghc
2022-03-31 18:08:25 +0200fendor(~fendor@178.165.181.49.wireless.dyn.drei.com) (Ping timeout: 246 seconds)
2022-03-31 18:08:33 +0200 <geekosaur> I don't think even they can break stack that badly, yeh. it should do the right thing unless, as maerwald says, you used --system-ghc in which case you got an intentionally hobbled compiler
2022-03-31 18:08:38 +0200 <ss-> that's what I'd thought, and stack exec -- which ghc shows ~/.stack/... I've also just done stack config set system-ghc false (and --global false) to be sure, but stack build --profile still fails
2022-03-31 18:08:49 +0200Cale_(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-03-31 18:08:56 +0200Cale_(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-03-31 18:09:41 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-03-31 18:09:58 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-03-31 18:10:04 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2022-03-31 18:10:07 +0200 <ss-> is it possible the specific dependencies i'm trying to use don't have profiling builds somehow? using lts-19.1, and it seems to be failing specifically on cereal-0.5.8.2, hashable-1.3.5.0 for example
2022-03-31 18:10:36 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 18:11:00 +0200 <geekosaur> stack shouldnotice that and rebuild them appropriately. base, ghc-prim, and template-haskell are the ones it can't
2022-03-31 18:12:34 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 18:14:04 +0200 <sm> I believe `cd ~/.stack; fd base-4` should show both `libHSbase-4.14.3.0.a` and `libHSbase-4.14.3.0_p.a`, eg
2022-03-31 18:15:18 +0200 <geekosaur> .p_a, I think, but yes. you may have to nuke .stack and .stack-work again after changing system-ghc though, that may confuse it
2022-03-31 18:17:17 +0200 <ss-> only see libHSbase-4.15.1.0.a, no _p.a. i did try nuking both .stack and .stack-work a few times, maybe i'll try it again with a different resolver
2022-03-31 18:17:41 +0200 <sm> what's stack --version
2022-03-31 18:17:56 +0200 <sm> and `arch`
2022-03-31 18:19:07 +0200 <ss-> Version 2.7.5, Git revision ba147e6f59b2da75b1beb98b1888cce97f7032b1 (dirty) (8407 commits) x86_64, arch is x86_64
2022-03-31 18:19:28 +0200werdnA(~andrew@114.88.181.56) (Quit: WeeChat 3.4.1)
2022-03-31 18:19:43 +0200werdnA(~andrew@114.88.181.56)
2022-03-31 18:20:48 +0200 <sm> and the ghc version / resolver ? something recent ?
2022-03-31 18:21:46 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-03-31 18:22:31 +0200 <ss-> stack exec -- which ghc shows 9.0.2, resolver 19.1
2022-03-31 18:23:34 +0200 <ss-> trying it with a different resolver now actually
2022-03-31 18:23:35 +0200 <sm> weird. Maybe `stack setup --reinstall 9.0.2` makes a difference ?
2022-03-31 18:24:43 +0200smnotes that --reinstall forces it to install ghc even when config.yaml says not to
2022-03-31 18:24:43 +0200 <glguy> Axman6: I think "glirc" is only a notification if you copy the sample config on the wiki where I showed a slimmed down copy of what I was using, but it's not in the executable's default, at least.
2022-03-31 18:24:48 +0200abastro(~abab9579@220.75.216.63) (Quit: sleep)
2022-03-31 18:27:10 +0200 <abastro[m]> It doesn't seem to notify me at least, even with default config
2022-03-31 18:29:11 +0200 <glguy> abastro[m]: there isn't a default config
2022-03-31 18:29:43 +0200 <abastro[m]> Oh, I mean one from wiki
2022-03-31 18:30:49 +0200 <abastro[m]> Btw why does glirc not generate the folder `~/.config/glirc`?
2022-03-31 18:31:34 +0200 <glguy> It never writes to your configuration file; that's something you do
2022-03-31 18:32:03 +0200 <ss-> ah so stack setup --reinstall 9.0.2 now gives me an error "gcc: error: unrecognized command-line option '--target=x86_64-unknown-linux'" (maybe this is the root of my problems?). if i change the resolver to lts-18.24, stack build --profile seems to now work
2022-03-31 18:32:37 +0200Unicorn_Princess(~Unicorn_P@93-103-228-248.dynamic.t-2.net)
2022-03-31 18:35:42 +0200 <ss-> also noticing that stack setup --reinstall 8.10.7 is a 200 MB download, stack setup --reinstall 9.0.2 is a 116 MB download for what it's worth
2022-03-31 18:36:09 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 18:36:47 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 18:38:32 +0200 <sm> I don't know the cause, but switching to a ghcup-installed ghc could be a workaround
2022-03-31 18:41:36 +0200 <sm> https://github.com/commercialhaskell/stack/issues/5652 looks relevant
2022-03-31 18:43:04 +0200Codaraxis_(~Codaraxis@user/codaraxis) (Ping timeout: 246 seconds)
2022-03-31 18:43:09 +0200 <sm> stackage nightly has 9.2.2, maybe you could use that
2022-03-31 18:43:25 +0200razetime(~quassel@117.193.2.164) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-03-31 18:45:14 +0200 <ss-> yes, i just tried switching to nightly-2022-03-31 and it seems to work! build hasn't finished yet, but fd base-4 shows the profiling libraries
2022-03-31 18:45:22 +0200 <ss-> thanks for all the help!
2022-03-31 18:45:29 +0200 <janus> ooh, one more reason to prefer 9.2.2 over 9.0.2
2022-03-31 18:45:53 +0200 <sm> great. I'd like to know if 9.2.2 is faster on linux, too
2022-03-31 18:46:25 +0200 <sm> on x86, I mean
2022-03-31 18:46:49 +0200smis hoping 9.2.2 turns out to be a good GHC
2022-03-31 18:47:03 +0200 <maerwald> you mean 9.2.3
2022-03-31 18:47:15 +0200 <sm> argh
2022-03-31 18:47:21 +0200 <janus> it sounds like https://gitlab.haskell.org/ghc/ghc/-/issues/20959 is also affecting 9.2.2
2022-03-31 18:47:54 +0200arjun(~arjun@user/arjun) (Ping timeout: 260 seconds)
2022-03-31 18:48:25 +0200 <sm> we seem to have a quality control problem
2022-03-31 18:51:09 +0200Topsi(~Tobias@dyndsl-095-033-092-148.ewe-ip-backbone.de)
2022-03-31 18:51:10 +0200 <abastro[m]> No hls for 9.2.2? :<
2022-03-31 18:52:14 +0200vicfred(~vicfred@user/vicfred)
2022-03-31 18:54:27 +0200 <sm> thanks janus, that's a nice issue. You know it's a fun one when both Simons get involved
2022-03-31 18:55:15 +0200mbuf(~Shakthi@171.61.194.140) (Quit: Leaving)
2022-03-31 18:55:32 +0200 <sm> abastro: no, I keep forgetting the reason, but you can build it yourself: https://www.reddit.com/r/haskell/comments/tqzxy1/now_that_stackage_supports_ghc_92_is_it_easy_to/i…
2022-03-31 18:57:49 +0200 <c_wraith> that is a really cool ticket. Also unfortunate that GHC sometimes produces broken code. But that debugging is great.
2022-03-31 18:59:07 +0200nishant(~nishant@2405:201:f005:c007:3ab2:bee7:6ff3:39cb)
2022-03-31 18:59:20 +0200ProfSimm(~ProfSimm@87.227.196.109)
2022-03-31 18:59:33 +0200 <sm> +1
2022-03-31 19:00:20 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca) (Remote host closed the connection)
2022-03-31 19:00:38 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca)
2022-03-31 19:03:18 +0200jinsun(~jinsun@user/jinsun) (Ping timeout: 260 seconds)
2022-03-31 19:11:46 +0200rawley(~rawley@142.99.241.242) (Ping timeout: 246 seconds)
2022-03-31 19:12:43 +0200Pickchea(~private@user/pickchea)
2022-03-31 19:13:30 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 19:13:40 +0200vysn(~vysn@user/vysn)
2022-03-31 19:14:01 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca) (Remote host closed the connection)
2022-03-31 19:14:19 +0200ccntrq(~Thunderbi@2a01:c23:94e3:d700:54f3:f8c1:9ce9:c8ca)
2022-03-31 19:16:33 +0200 <ss-> sadly got a ghc panic while building with 9.2.2 (building `vulkan-api`, something about mightEqualLater unbounded cbv), and lts-19.0 seemed to have the same profiling issue. but 9.0.1 (nightly-2022-01-06) builds and profiling works. thanks again sm!
2022-03-31 19:20:15 +0200zebrag(~chris@user/zebrag)
2022-03-31 19:21:00 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-03-31 19:21:03 +0200 <sm> yikes. np
2022-03-31 19:23:35 +0200arjun(~arjun@user/arjun)
2022-03-31 19:24:15 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 19:24:48 +0200belphegor666(~satan@ip-046-223-003-068.um13.pools.vodafone-ip.de) (Changing host)
2022-03-31 19:24:48 +0200belphegor666(~satan@user/belphegor666)
2022-03-31 19:25:33 +0200ss-(~ss-@187.83.249.216.dyn.smithville.net) (Quit: Client closed)
2022-03-31 19:26:22 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-03-31 19:26:52 +0200Codaraxis_(~Codaraxis@user/codaraxis)
2022-03-31 19:28:39 +0200hololeap_(~hololeap@user/hololeap)
2022-03-31 19:29:49 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-03-31 19:29:55 +0200hololeap(~hololeap@user/hololeap) (Ping timeout: 240 seconds)
2022-03-31 19:31:36 +0200jinsun(~jinsun@user/jinsun)
2022-03-31 19:34:09 +0200rawley(~rawley@142.99.241.242)
2022-03-31 19:34:30 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net) (Remote host closed the connection)
2022-03-31 19:35:37 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net)
2022-03-31 19:35:55 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net) (Remote host closed the connection)
2022-03-31 19:36:15 +0200dolio(~dolio@130.44.130.54) (Quit: ZNC 1.8.2 - https://znc.in)
2022-03-31 19:36:18 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net)
2022-03-31 19:38:00 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net) (Remote host closed the connection)
2022-03-31 19:38:01 +0200arjun(~arjun@user/arjun) (Quit: Leaving)
2022-03-31 19:38:19 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net)
2022-03-31 19:39:40 +0200ph88(~ph88@ip5f5af71f.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds)
2022-03-31 19:41:21 +0200dolio(~dolio@130.44.130.54)
2022-03-31 19:46:47 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-03-31 19:46:47 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-03-31 19:46:47 +0200wroathe(~wroathe@user/wroathe)
2022-03-31 19:51:39 +0200MasterK(~MK@86.127.10.135)
2022-03-31 19:53:14 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 19:58:12 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds)
2022-03-31 19:59:02 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-03-31 20:00:44 +0200jakalx(~jakalx@base.jakalx.net)
2022-03-31 20:02:27 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-03-31 20:02:40 +0200ss-(~ss-@187.83.249.216.dyn.smithville.net)
2022-03-31 20:15:40 +0200anon61924576(~anon61924@85.210.203.240)
2022-03-31 20:16:20 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.4.1)
2022-03-31 20:17:45 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-03-31 20:18:24 +0200kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 252 seconds)
2022-03-31 20:21:37 +0200dut(~dut@user/dut) (Quit: Leaving)
2022-03-31 20:30:49 +0200fendor_(~fendor@178.115.44.149.wireless.dyn.drei.com) (Quit: Leaving)
2022-03-31 20:33:14 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 252 seconds)
2022-03-31 20:35:06 +0200nishant(~nishant@2405:201:f005:c007:3ab2:bee7:6ff3:39cb) (Quit: Leaving)
2022-03-31 20:39:19 +0200deadmarshal_(~deadmarsh@5.115.35.156)
2022-03-31 20:42:22 +0200rawley(~rawley@142.99.241.242) (Ping timeout: 272 seconds)
2022-03-31 20:45:44 +0200anon61924576(~anon61924@85.210.203.240) (Ping timeout: 250 seconds)
2022-03-31 20:45:53 +0200alp(~alp@user/alp) (Ping timeout: 252 seconds)
2022-03-31 20:47:24 +0200alp(~alp@user/alp)
2022-03-31 20:48:00 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-03-31 20:50:56 +0200ss-(~ss-@187.83.249.216.dyn.smithville.net) (Ping timeout: 250 seconds)
2022-03-31 20:52:30 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 272 seconds)
2022-03-31 20:54:01 +0200mikoto-chan(~mikoto-ch@213.177.151.239)
2022-03-31 21:08:40 +0200 <maerwald> hasql has a refreshing API. Without typeclasses.
2022-03-31 21:08:59 +0200 <Rembane> maerwald: Just functions?
2022-03-31 21:09:21 +0200 <maerwald> you specify encoders and decoders
2022-03-31 21:09:31 +0200 <maerwald> or use TH-automagic quasiquoter
2022-03-31 21:10:10 +0200 <Rembane> That sounds sane for that domain.
2022-03-31 21:10:14 +0200 <maerwald> https://hackage.haskell.org/package/hasql-1.5.0.2/docs/Hasql-Statement.html
2022-03-31 21:16:47 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection)
2022-03-31 21:17:07 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 21:30:24 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl) (Quit: Leaving)
2022-03-31 21:32:24 +0200deadmarshal_(~deadmarsh@5.115.35.156) (Read error: Connection reset by peer)
2022-03-31 21:37:54 +0200ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-03-31 21:39:08 +0200cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2022-03-31 21:41:05 +0200jgeerds(~jgeerds@d5364b87.access.ecotel.net)
2022-03-31 21:42:05 +0200cheater(~Username@user/cheater)
2022-03-31 21:42:55 +0200madjestic(~madjestic@88-159-247-120.fixed.kpn.net)
2022-03-31 21:44:22 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2022-03-31 21:49:12 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 21:50:22 +0200acidjnk(~acidjnk@p200300d0c7049f56dc923130dc4d7bd3.dip0.t-ipconnect.de)
2022-03-31 21:51:37 +0200Tuplanolla(~Tuplanoll@91-159-69-98.elisa-laajakaista.fi)
2022-03-31 21:51:46 +0200Hildegunst(~luc@80.248.12.109.rev.sfr.net)
2022-03-31 21:53:01 +0200 <Boarders_> Is there a straight forward way to life a Parsec parser to a ParserT parser from megaparsec?
2022-03-31 21:53:56 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl)
2022-03-31 21:55:05 +0200Hildegunst(~luc@80.248.12.109.rev.sfr.net) (Client Quit)
2022-03-31 21:57:50 +0200jinsun__(~jinsun@user/jinsun)
2022-03-31 21:58:58 +0200jinsun(~jinsun@user/jinsun) (Ping timeout: 260 seconds)
2022-03-31 22:01:54 +0200 <geekosaur> Parsec e s is an alias for ParsecT e s Identity. I don't know what your ParserT is but it probably specifies one or both of e and s?
2022-03-31 22:02:00 +0200ProfSimm(~ProfSimm@87.227.196.109)
2022-03-31 22:02:13 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 22:02:25 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 22:02:42 +0200_ht(~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection)
2022-03-31 22:03:33 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection)
2022-03-31 22:06:21 +0200 <Boarders_> sorry, I meant like: ParsecT e s Identity a -> ParsecT e s m a
2022-03-31 22:06:26 +0200 <Boarders_> i.e. hoist
2022-03-31 22:06:42 +0200 <lyxia> probably not because ParsecT is ContT-like
2022-03-31 22:06:44 +0200 <Boarders_> (well with pure)
2022-03-31 22:06:52 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 22:07:20 +0200 <lyxia> but you should be able to generalize your definitions from Parsec e s a to forall m. ParsecT e s m a
2022-03-31 22:09:55 +0200 <Boarders_> ah very good ponit
2022-03-31 22:09:58 +0200 <Boarders_> point*
2022-03-31 22:11:23 +0200 <geekosaur> yeh, that was what I was trying to point out
2022-03-31 22:12:26 +0200anon61924576(~anon61924@85.210.203.240)
2022-03-31 22:12:37 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-03-31 22:12:55 +0200kaph(~kaph@net-93-67-57-97.cust.vodafonedsl.it)
2022-03-31 22:12:58 +0200pavonia(~user@user/siracusa)
2022-03-31 22:14:16 +0200nosewings(~ngpc@2603-8081-3e05-e2d0-96c1-0fad-58de-6f58.res6.spectrum.com)
2022-03-31 22:14:50 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-03-31 22:15:37 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
2022-03-31 22:17:01 +0200theproffesor(~theproffe@2601:282:847f:8010::7f59) (Quit: ¯\_(ツ)_/¯)
2022-03-31 22:17:37 +0200Lord_of_Life_Lord_of_Life
2022-03-31 22:17:38 +0200vysn(~vysn@user/vysn) (Ping timeout: 260 seconds)
2022-03-31 22:18:54 +0200anon61924576(~anon61924@85.210.203.240) (Ping timeout: 250 seconds)
2022-03-31 22:20:40 +0200nexeq(nexeq@user/nexeq) (Quit: WeeChat 3.4)
2022-03-31 22:21:56 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-03-31 22:22:25 +0200 <madjestic> Hey guys, is there a way to embed IO inside arrows? Here's a very contrived example of what I want to achieve (whether I really do want this is another question): https://www.paste.org/121683
2022-03-31 22:22:50 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 22:23:26 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 22:23:55 +0200alp(~alp@user/alp) (Ping timeout: 250 seconds)
2022-03-31 22:24:31 +0200 <geekosaur> have you looked at Kleisli?
2022-03-31 22:25:03 +0200RMSBachRSBach
2022-03-31 22:25:57 +0200odnes_(~odnes@5-203-245-187.pat.nym.cosmote.net) (Remote host closed the connection)
2022-03-31 22:26:08 +0200 <madjestic> geekosaur: Kleisli certainly popped up when I was googling it, is that what I need?
2022-03-31 22:26:29 +0200 <geekosaur> if you wrap a monad in Kleisli it becomes an arrow
2022-03-31 22:26:51 +0200 <geekosaur> that includes IO
2022-03-31 22:27:40 +0200 <madjestic> thanks, geekosaur , I will look into Kleisli
2022-03-31 22:27:46 +0200merijn(~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds)
2022-03-31 22:28:31 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-03-31 22:32:42 +0200anon61924576(~anon61924@85.210.203.240)
2022-03-31 22:34:07 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net)
2022-03-31 22:35:23 +0200 <energizer> anybody know of a language where you can fold over a type?
2022-03-31 22:37:06 +0200anon61924576(~anon61924@85.210.203.240) (Ping timeout: 250 seconds)
2022-03-31 22:37:15 +0200 <energizer> foldl max Int == 9223372036854775807
2022-03-31 22:37:38 +0200anon61924576(~anon61924@85.210.203.240)
2022-03-31 22:37:50 +0200 <tomsmeding> > maximum [minBound .. maxBound] :: Word8
2022-03-31 22:37:52 +0200 <lambdabot> 255
2022-03-31 22:37:57 +0200 <tomsmeding> Int would take a while
2022-03-31 22:38:25 +0200 <energizer> that's not quite the same is it
2022-03-31 22:39:45 +0200 <tomsmeding> > foldl1 max [minBound .. maxBound]
2022-03-31 22:39:47 +0200 <lambdabot> ()
2022-03-31 22:39:48 +0200 <tomsmeding> > foldl1 max [minBound .. maxBound] :: Word8
2022-03-31 22:39:50 +0200 <lambdabot> 255
2022-03-31 22:39:52 +0200 <tomsmeding> better?
2022-03-31 22:40:15 +0200 <tomsmeding> [minBound .. maxBound] is precisely the enumeration of values in every type for which that list would be finite
2022-03-31 22:40:40 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-03-31 22:42:52 +0200 <tomsmeding> I guess there would need to be another class that gives you all the values of a type even if that list would be infinite; 'enumFrom' doesn't cut it because there might be negative values
2022-03-31 22:44:14 +0200 <energizer> > foldl1 max Word8
2022-03-31 22:44:16 +0200 <lambdabot> error:
2022-03-31 22:44:16 +0200 <lambdabot> Data constructor not in scope: Word8 :: t0 a
2022-03-31 22:44:44 +0200 <energizer> is it possible to make that work?
2022-03-31 22:45:39 +0200 <tomsmeding> not in Haskell, but why would you want it to work?
2022-03-31 22:45:51 +0200 <tomsmeding> it's just syntax away from something that _could_ work
2022-03-31 22:45:56 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-03-31 22:47:08 +0200 <energizer> types are like sets but for some reason i cant iterate them
2022-03-31 22:47:30 +0200 <tomsmeding> what would 'foldr (:) [] Double' do?
2022-03-31 22:47:51 +0200 <tomsmeding> or 'foldr (:) [] Rational'
2022-03-31 22:48:04 +0200mastarija(~mastarija@2a05:4f46:e04:6000:7d90:53ef:dae4:ac6b)
2022-03-31 22:48:12 +0200 <tomsmeding> or 'foldr (:) [] (Set Rational)' :p
2022-03-31 22:48:21 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-03-31 22:48:24 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-03-31 22:48:35 +0200 <energizer> it would return a list of Rationals
2022-03-31 22:48:45 +0200 <tomsmeding> hmmm, or 'foldr (:) [] ([Double] -> [Double])'
2022-03-31 22:49:36 +0200 <energizer> what would foldr over any infinite stream do
2022-03-31 22:49:40 +0200jakalx(~jakalx@base.jakalx.net)
2022-03-31 22:49:46 +0200 <tomsmeding> produce an infinite stream
2022-03-31 22:49:50 +0200 <tomsmeding> the infinite-ness is not the issue
2022-03-31 22:50:09 +0200 <tomsmeding> the issues are 1. you have to choose an order, and 2. how do you enumerate a function type
2022-03-31 22:50:49 +0200 <energizer> i can think of at least one way to enumerate Word8
2022-03-31 22:51:00 +0200stefan-_(~cri@42dots.de) (Ping timeout: 240 seconds)
2022-03-31 22:51:15 +0200 <tomsmeding> me too, but I can think of a number of reasonable ways to enumerate Double, and even more ways to enumerate 'Set Double'
2022-03-31 22:52:05 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 250 seconds)
2022-03-31 22:52:05 +0200Macbethwin(~chargen@D964062A.static.ziggozakelijk.nl)
2022-03-31 22:52:13 +0200 <energizer> i can fold over a set like {1,2,3} even if its unordered
2022-03-31 22:52:24 +0200 <tomsmeding> no you can't, you choose an order
2022-03-31 22:52:39 +0200 <tomsmeding> if you're using Data.Set.Set, that order is explicitly sorted order
2022-03-31 22:52:59 +0200 <energizer> ok, so Double could have such an order, too
2022-03-31 22:53:06 +0200 <tomsmeding> hm, I guess you can fold over an unordered set if the folding function is statically guaranteed to be commutative & associative
2022-03-31 22:53:46 +0200 <tomsmeding> I wonder if this does something relevant https://en.wikipedia.org/wiki/SETL
2022-03-31 22:54:36 +0200mikoto-chan(~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds)
2022-03-31 22:55:25 +0200 <energizer> hey that's a list comprehension
2022-03-31 22:55:32 +0200stefan-_(~cri@42dots.de)
2022-03-31 22:56:47 +0200 <energizer> anyway yeah max over doubles is associative and commutative so order is irrelevant
2022-03-31 22:57:23 +0200 <tomsmeding> yes, but for that to make sense you'd need a language that can statically reason about commutativity/associativity of functions, which Haskell can't
2022-03-31 22:57:57 +0200 <tomsmeding> (or accept that well-definedness of your program is up to the programmer, in which case a dynamically typed language would work as well :D)
2022-03-31 22:58:19 +0200 <energizer> what does well definedness mean?
2022-03-31 22:58:26 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 22:59:03 +0200 <tomsmeding> what would the semantics of folding over any type with any, not necessarily commutative or associative, function be?
2022-03-31 22:59:17 +0200 <tomsmeding> I guess you could specify an order for all types inductively
2022-03-31 22:59:35 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-03-31 22:59:40 +0200 <tomsmeding> energizer: afraid to ask, but do you have an application for this? :p
2022-03-31 23:00:07 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net)
2022-03-31 23:00:29 +0200 <monochrom> Someone or something will pick an order. If not you, then the computer. If not planned, then unplanned.
2022-03-31 23:01:10 +0200 <energizer> just kinda working through my understanding of what types are
2022-03-31 23:01:30 +0200 <tomsmeding> well, in haskell, definitely not always sets of values
2022-03-31 23:01:34 +0200 <monochrom> If not reproducible, then irreproducible.
2022-03-31 23:01:41 +0200 <energizer> i dont really get what static typing is about
2022-03-31 23:02:07 +0200 <tomsmeding> all types of kind Type (also spelled *) are sets of values, but there are also types that are not of kind Type
2022-03-31 23:02:29 +0200 <tomsmeding> but I'm not sure if you're far enough in your haskell journey for that to be a useful thing to think about :p
2022-03-31 23:03:39 +0200 <monochrom> People do disagree over the purpose of static typing. But I side with a sentence in the Software Foundation textbook: A middle ground of catching mistakes early and staying within decidability.
2022-03-31 23:04:03 +0200tomsmedingagrees
2022-03-31 23:04:04 +0200 <energizer> presumably if * is Type then *->* is a function from one Type to another, this seems smple
2022-03-31 23:04:13 +0200 <tomsmeding> :k Maybe
2022-03-31 23:04:14 +0200 <lambdabot> * -> *
2022-03-31 23:04:32 +0200 <tomsmeding> ('k' for 'kind')
2022-03-31 23:04:39 +0200 <energizer> that sounds like a positive example for my hypothesis there
2022-03-31 23:04:52 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 246 seconds)
2022-03-31 23:05:00 +0200yauhsien(~yauhsien@61-231-60-85.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-03-31 23:05:03 +0200 <tomsmeding> indeed
2022-03-31 23:05:41 +0200 <madjestic> energizer: there's more than one answer to it, but on a basic level static typic langs weed out an important class of bugs a compile stage, rather than letting bugs manifest at runtime, if that's the kind of answer you expect.
2022-03-31 23:06:06 +0200 <energizer> i dont really know what 'static' or 'compile time' means
2022-03-31 23:06:21 +0200 <tomsmeding> what programming language(s) do you already know?
2022-03-31 23:06:30 +0200 <monochrom> There is a new one I like but I haven't fleshed it out. Types express your program's structure/architecture/organization/whatever-you-call-it.
2022-03-31 23:07:00 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-03-31 23:07:37 +0200 <energizer> i've written code in bash, lean, and a few languages in the space between those two
2022-03-31 23:07:40 +0200 <monochrom> For example modular programming and OOP can be boiled down to suitable type systems.
2022-03-31 23:08:29 +0200mastarija(~mastarija@2a05:4f46:e04:6000:7d90:53ef:dae4:ac6b) (Quit: Leaving)
2022-03-31 23:10:02 +0200 <madjestic> energizer: static types means that the types are defined and checked before your program is executed, and don't change when your software is already running (runtime), in the latter case there is a significant chance that type errors may occur, which can be bad.
2022-03-31 23:11:03 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-03-31 23:11:21 +0200 <energizer> seems like more information would be available if i just started the program and checked its properties then
2022-03-31 23:11:44 +0200 <tomsmeding> yes, but then it's already in production
2022-03-31 23:11:48 +0200 <tomsmeding> (presumably)
2022-03-31 23:11:55 +0200 <energizer> no it's still here with me
2022-03-31 23:12:00 +0200 <nosewings> it's beter to think of types in ML-style languages as algebras rather than sets
2022-03-31 23:12:20 +0200 <monochrom> There is no end to philosophizing this if you want. Doesn't mean it's a productive discussion for the rest of us.
2022-03-31 23:12:48 +0200 <monochrom> What is the point of writing code?!
2022-03-31 23:13:02 +0200lavaman(~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 260 seconds)
2022-03-31 23:13:06 +0200 <tomsmeding> energizer: if you check something at runtime, then all you can ever check is the code paths that your program follows in the execution. The point of static/compile-time checks is to get some guarantees that will hold over _all_ executions
2022-03-31 23:13:16 +0200 <madjestic> monochrom: suffering
2022-03-31 23:13:22 +0200 <monochrom> hehe
2022-03-31 23:13:26 +0200 <tomsmeding> you won't be able to get all guarantees, since, as you rightly state, at runtime there will be more info
2022-03-31 23:13:42 +0200 <energizer> tomsmeding: that's not true, i can symbolically execute other paths
2022-03-31 23:13:47 +0200 <tomsmeding> but you can prove _some_, e.g. that you're never going to call (+) with two arguments of differing types
2022-03-31 23:14:02 +0200 <nosewings> you can also do much more with a more advanced type system
2022-03-31 23:14:21 +0200 <nosewings> (though the effort required to prove invariants ramps up very quickly)
2022-03-31 23:14:24 +0200 <tomsmeding> symbolic execution is not just running your program, it's doing an analysis that a compiler can also do
2022-03-31 23:14:31 +0200 <tomsmeding> but yeah, what monochrom says
2022-03-31 23:15:49 +0200 <monochrom> Na don't hide behind the façade of dynamic run time. Admit it, the most information is in the programmer's head. The only question is whether the programmer is honest in spelling it out or being smug in not talking.
2022-03-31 23:15:51 +0200 <energizer> i suppose one can have too much philosophy in a day
2022-03-31 23:16:40 +0200 <monochrom> And whether the programmer is humble in admitting that some machine checking is helpful or snobbish in insisting "I know what I'm doing".
2022-03-31 23:17:04 +0200 <maerwald> You don't need types to prove that your program behaves well, I guess. And types don't really prove that your program behaves well. I view them more as a utility for myself to reduce intellectual complexity.
2022-03-31 23:17:28 +0200 <monochrom> Alan Kay is smart enough to reasonably work with pure dynamic typing. That doesn't mean the rest of us should.
2022-03-31 23:17:37 +0200 <nosewings> you need types to prove that your program behaves "well" (for a certain definition of "well") in all circumstances
2022-03-31 23:17:46 +0200 <monochrom> The problem with opinion leaders is that their opinions works for them but not others.
2022-03-31 23:17:51 +0200 <maerwald> nosewings: I don't think so
2022-03-31 23:18:00 +0200 <nosewings> well, you don't need types---you can do with other kinds of formal verification
2022-03-31 23:18:04 +0200 <maerwald> yes
2022-03-31 23:18:07 +0200 <nosewings> but types are convenient
2022-03-31 23:19:08 +0200 <maerwald> types that are primarily about proofs also look rather different than what you come up with during a design phase of a program
2022-03-31 23:19:24 +0200Pickchea(~private@user/pickchea)
2022-03-31 23:19:25 +0200 <maerwald> types are read by humans
2022-03-31 23:19:27 +0200 <tomsmeding> types prove _some_ stuff, but far from everything
2022-03-31 23:19:44 +0200 <monochrom> And let's face it, if you don't add an int with a function from string to bool, then you already have types in your head. Don't deny it.
2022-03-31 23:20:17 +0200 <tomsmeding> (though possibly in a richer type system than Haskell's)
2022-03-31 23:20:18 +0200 <energizer> `if (length (xs < 1)) null else (some (first xs))`
2022-03-31 23:20:46 +0200 <tomsmeding> presumably `length xs < 1` instead of `length (xs < 1)`?
2022-03-31 23:20:58 +0200 <energizer> yeah
2022-03-31 23:20:59 +0200 <maerwald> I'd say we have structure (product types) and classes in our heads. I rarely think about Int32 vs Int64, I think "something numerical, I guess"...
2022-03-31 23:21:11 +0200 <tomsmeding> :t \xs -> if length xs < 1 then Nothing else Just (head xs)
2022-03-31 23:21:12 +0200 <lambdabot> [a] -> Maybe a
2022-03-31 23:21:42 +0200 <tomsmeding> maerwald: programmers used to dynamic typing often have union types in their head, which Haskell doesn't have
2022-03-31 23:21:47 +0200 <energizer> how did it do that?
2022-03-31 23:21:55 +0200 <tomsmeding> :t length
2022-03-31 23:21:56 +0200 <lambdabot> Foldable t => t a -> Int
2022-03-31 23:21:59 +0200 <tomsmeding> meh
2022-03-31 23:22:01 +0200 <tomsmeding> :t head
2022-03-31 23:22:02 +0200 <lambdabot> [a] -> a
2022-03-31 23:22:22 +0200 <tomsmeding> energizer: it saw that I'm using `head` on `xs`, hence `xs` must be a list of stuff
2022-03-31 23:22:36 +0200 <energizer> :t last
2022-03-31 23:22:38 +0200 <lambdabot> [a] -> a
2022-03-31 23:22:48 +0200 <tomsmeding> > last []
2022-03-31 23:22:50 +0200 <lambdabot> *Exception: Prelude.last: empty list
2022-03-31 23:22:57 +0200 <energizer> :t \xs -> if length xs < 1 then Nothing else Just (last xs)
2022-03-31 23:22:58 +0200 <lambdabot> [a] -> Maybe a
2022-03-31 23:23:48 +0200 <energizer> does it know that won't fail at runtime?
2022-03-31 23:23:52 +0200 <jackdk> % :t fmap Data.List.NonEmpty.last . nonEmpty
2022-03-31 23:23:52 +0200 <tomsmeding> no
2022-03-31 23:23:52 +0200 <yahb> jackdk: ; <interactive>:1:32: error:; * Variable not in scope: nonEmpty :: a -> f (GHC.Base.NonEmpty b); * Perhaps you meant one of these: data constructor `Q.NonEmpty' (imported from Test.QuickCheck), data constructor `NonEmptyF' (imported from Data.Functor.Base)
2022-03-31 23:24:06 +0200 <jackdk> % :m + Data.List.NonEmpty
2022-03-31 23:24:06 +0200 <yahb> jackdk:
2022-03-31 23:24:09 +0200 <tomsmeding> haskell doesn't forbid partial functions, whereas Lean probably does
2022-03-31 23:24:15 +0200 <jackdk> % :t fmap Data.List.NonEmpty.last . nonEmpt
2022-03-31 23:24:15 +0200 <yahb> jackdk: ; <interactive>:1:32: error:; * Variable not in scope: nonEmpt :: a -> f (NonEmpty b); * Perhaps you meant one of these: `nonEmpty' (imported from Data.List.NonEmpty), data constructor `Q.NonEmpty' (imported from Test.QuickCheck)
2022-03-31 23:24:18 +0200 <jackdk> % :t fmap Data.List.NonEmpty.last . nonEmpty
2022-03-31 23:24:18 +0200 <yahb> jackdk: [b] -> Maybe b
2022-03-31 23:24:25 +0200 <jackdk> % :m - Data.List.NonEmpty
2022-03-31 23:24:25 +0200 <yahb> jackdk:
2022-03-31 23:25:57 +0200alp(~alp@user/alp)
2022-03-31 23:26:38 +0200 <nosewings> I have a situation where `f (g x)` typechecks but `let y = g x in f y` doesn't; does anyone know how this could happen?
2022-03-31 23:27:07 +0200 <tomsmeding> does `f` take a polymorphic type as argument?
2022-03-31 23:27:23 +0200 <tomsmeding> like, a RankNTypes type, with a forall in front
2022-03-31 23:27:30 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-03-31 23:27:33 +0200 <tomsmeding> if so, then MonomorphismRestriction
2022-03-31 23:28:45 +0200Codaraxis__(~Codaraxis@user/codaraxis)
2022-03-31 23:28:51 +0200 <nosewings> no RankNTypes, turning on NoMonomorphismRestriction doesn't help anything
2022-03-31 23:29:20 +0200 <tomsmeding> hm, what's the types involved?
2022-03-31 23:29:22 +0200 <geekosaur> MonoLocalBinds controls that one
2022-03-31 23:29:39 +0200 <geekosaur> MonomorphismRestriction is for top level definitions
2022-03-31 23:29:44 +0200 <tomsmeding> ah
2022-03-31 23:29:50 +0200 <nosewings> Still no fix there
2022-03-31 23:30:07 +0200 <nosewings> This is using generic-data-surgery, which is doing some wizardry with Generic to "edit" types
2022-03-31 23:30:44 +0200 <nosewings> So the types involved are too large to type out here
2022-03-31 23:30:49 +0200tomsmedingsuspects the issue is type inference then, i.e. adding the proper type signature to `y` would make it work
2022-03-31 23:31:27 +0200 <nosewings> Probably would do, but that's unfortunately not a realistic option
2022-03-31 23:31:28 +0200 <nosewings> Ah wel
2022-03-31 23:32:24 +0200cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Quit: ERC (IRC client for Emacs 27.1))
2022-03-31 23:32:44 +0200Codaraxis_(~Codaraxis@user/codaraxis) (Ping timeout: 272 seconds)
2022-03-31 23:35:45 +0200stewpot(~stewpot@2a02:c7e:34de:4500:c0b2:5560:8807:6081)
2022-03-31 23:43:15 +0200wyrd(~wyrd@gateway/tor-sasl/wyrd) (Ping timeout: 240 seconds)
2022-03-31 23:43:41 +0200doyougnu(~doyougnu@cpe-67-249-83-190.twcny.res.rr.com) (Ping timeout: 245 seconds)
2022-03-31 23:43:58 +0200hpc(~juzz@ip98-169-35-13.dc.dc.cox.net)
2022-03-31 23:43:58 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-25e7-2817-2baa-33e2.res6.spectrum.com) (Remote host closed the connection)
2022-03-31 23:44:08 +0200Natch(~natch@c-67bae255.014-297-73746f25.bbcust.telenor.se) (Ping timeout: 272 seconds)
2022-03-31 23:45:44 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-03-31 23:48:22 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (Remote host closed the connection)
2022-03-31 23:50:57 +0200michalz(~michalz@185.246.204.125) (Remote host closed the connection)
2022-03-31 23:51:57 +0200Natch(~natch@c-67bae255.014-297-73746f25.bbcust.telenor.se)
2022-03-31 23:55:25 +0200wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-03-31 23:56:23 +0200TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-03-31 23:59:36 +0200__monty__(~toonn@user/toonn) (Quit: leaving)