2024/09/28

Newest at the top

2024-09-28 13:26:13 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-09-28 13:24:23 +0200misterfish(~misterfis@84.53.85.146) (Ping timeout: 252 seconds)
2024-09-28 13:21:39 +0200vincent42(uid574193@id-574193.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2024-09-28 13:21:20 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) merijn
2024-09-28 13:15:36 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds)
2024-09-28 13:12:53 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-28 13:11:56 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 252 seconds)
2024-09-28 13:10:28 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-09-28 13:09:12 +0200gioyik(~gioyik@gateway/tor-sasl/gioyik) gioyik
2024-09-28 13:07:22 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-09-28 13:02:35 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-09-28 13:02:24 +0200 <Rembane> Exactly!
2024-09-28 13:02:20 +0200caconym(~caconym@user/caconym) caconym
2024-09-28 13:00:43 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) merijn
2024-09-28 13:00:36 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 246 seconds)
2024-09-28 13:00:33 +0200 <tomsmeding> no `do` to turn a block into an expression :p
2024-09-28 13:00:08 +0200 <Rembane> tomsmeding: That sounds like Python. :D
2024-09-28 13:00:04 +0200caconym(~caconym@user/caconym) (Quit: bye)
2024-09-28 12:58:48 +0200merijn(~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-09-28 12:58:32 +0200 <tomsmeding> still the syntactic nuisance that the right-hand sides must be expressions, instead of a block
2024-09-28 12:57:51 +0200 <Rembane> things = arguments
2024-09-28 12:57:47 +0200 <Rembane> And you can order things in any order
2024-09-28 12:57:43 +0200 <dminuoso> I do write types, but I have no faith in python type checkers, they just serve documentation purposes for me.
2024-09-28 12:57:36 +0200 <tomsmeding> oh that would improve on the readability of my dumb suggestion
2024-09-28 12:57:22 +0200 <Rembane> dminuoso: I don't know, I don't write typed Python. :)
2024-09-28 12:57:05 +0200 <dminuoso> I hope?
2024-09-28 12:57:03 +0200 <dminuoso> Rembane: The type checker should take care of that.
2024-09-28 12:56:31 +0200 <dminuoso> Yes.
2024-09-28 12:56:26 +0200 <tomsmeding> compiler meaning your thing, not GHC
2024-09-28 12:56:24 +0200 <Rembane> What happens if you use keyword arguments and write a check in the function to see that all members of the dictionary are supplied?
2024-09-28 12:56:21 +0200 <tomsmeding> oh
2024-09-28 12:56:16 +0200 <tomsmeding> s/not/just/?
2024-09-28 12:55:47 +0200 <dminuoso> Nearly 4 years and not a single production outage (caused by a compiler bug). :)
2024-09-28 12:55:05 +0200 <dminuoso> That said, Haskell stays in place for our core networking fabric SDN Compiler.
2024-09-28 12:54:23 +0200 <tomsmeding> indeed
2024-09-28 12:54:21 +0200libertyprime(~libertypr@118-92-68-68.dsl.dyn.ihug.co.nz) (Remote host closed the connection)
2024-09-28 12:54:18 +0200 <dminuoso> If only GHC had a crystal ball
2024-09-28 12:54:14 +0200 <dminuoso> Mixing up two T arguments will be silently accepted.
2024-09-28 12:54:10 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds)
2024-09-28 12:54:04 +0200 <dminuoso> To be fair Haskell has the same problem with functions too.
2024-09-28 12:53:51 +0200 <tomsmeding> but yeah, not sure how serious this suggestion is :p
2024-09-28 12:53:46 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-09-28 12:53:46 +0200 <tomsmeding> if you're fortunate and the union cases have differently-typed fields
2024-09-28 12:53:36 +0200lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 252 seconds)
2024-09-28 12:53:29 +0200 <dminuoso> Well, changing the order could be caught by a type checker
2024-09-28 12:53:10 +0200 <dminuoso> I mean for `maybe` it kind of works, but for custom unions it would be.. horrid.
2024-09-28 12:53:09 +0200 <tomsmeding> disadvantage 2: if you remove _and_ add a case, or change the order, woe you
2024-09-28 12:52:54 +0200 <tomsmeding> disadvantage: unreadable
2024-09-28 12:52:51 +0200 <dminuoso> Oh, I see.
2024-09-28 12:52:50 +0200 <tomsmeding> advantage: exhaustiveness checking is now performed by "supplying the right number of arguments to the function"