Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,802,750 events total
2025-11-07 14:50:41 <Square2> nvm
2025-11-07 14:54:07 × Googulator18 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)
2025-11-07 14:54:25 × Googulator94 quits (~Googulato@team.broadbit.hu) (Client Quit)
2025-11-07 14:54:40 Googulator94 joins (~Googulato@team.broadbit.hu)
2025-11-07 14:55:32 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 14:55:33 <lortabac> there is a generalized version in witherable
2025-11-07 14:55:37 <lortabac> @hackage witherable
2025-11-07 14:55:37 <lambdabot> https://hackage.haskell.org/package/witherable
2025-11-07 14:56:42 <lortabac> which takes a different approach from mono-traversable
2025-11-07 14:56:52 <haskellbridge> <Morj> I like mono-traversable more because it doesn't require functor, so can work on bytestrings. On the other hand they both don't allow Set for different reasons
2025-11-07 14:57:11 trickard_ is now known as trickard
2025-11-07 14:57:26 <haskellbridge> <Morj> Wait, since when is Map a Functor? I thought the instance was unlawful
2025-11-07 14:57:31 Anarchos joins (~Anarchos@91-161-254-16.subs.proxad.net)
2025-11-07 14:57:34 <tomsmeding> it's a functor in the values
2025-11-07 14:57:39 <tomsmeding> Set is not a fucntor
2025-11-07 14:57:46 <haskellbridge> <Morj> Ahh you're right
2025-11-07 15:00:07 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-11-07 15:00:19 <tomsmeding> [exa]: I don't think that's going to work
2025-11-07 15:00:45 <tomsmeding> consider: run1 "returns" two things: x and the thing that you later swap
2025-11-07 15:00:50 <tomsmeding> where do they go?
2025-11-07 15:02:53 Sgeo joins (~Sgeo@user/sgeo)
2025-11-07 15:02:56 <tomsmeding> you're trying to put one of them in the normal in-monad return value of that ContT expression, and the other in the 'r' top-level return value of the ContT computation
2025-11-07 15:03:14 <tomsmeding> but the latter is constant over the entire ContT computation, so fmap'ing that must be type-preserving
2025-11-07 15:04:52 × fp quits (~Thunderbi@130.233.70.136) (Ping timeout: 260 seconds)
2025-11-07 15:07:36 × Square2 quits (~Square4@user/square) (Ping timeout: 252 seconds)
2025-11-07 15:08:21 × CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 250 seconds)
2025-11-07 15:09:42 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 15:16:07 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-11-07 15:18:49 xff0x joins (~xff0x@2405:6580:b080:900:f6a2:6697:d899:5ef3)
2025-11-07 15:27:44 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 15:32:31 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-11-07 15:32:54 Square2 joins (~Square4@user/square)
2025-11-07 15:37:23 × Square2 quits (~Square4@user/square) (Ping timeout: 244 seconds)
2025-11-07 15:40:29 × Square3 quits (~Square@user/square) (Ping timeout: 244 seconds)
2025-11-07 15:43:31 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 15:44:28 × trickard quits (~trickard@cpe-57-98-47-163.wireline.com.au) (Ping timeout: 255 seconds)
2025-11-07 15:44:48 trickard_ joins (~trickard@cpe-57-98-47-163.wireline.com.au)
2025-11-07 15:46:41 × annamalai quits (~annamalai@157.33.208.56) (Read error: Connection reset by peer)
2025-11-07 15:47:02 annamalai joins (~annamalai@157.33.208.56)
2025-11-07 15:48:13 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 250 seconds)
2025-11-07 15:52:34 ttybitnik joins (~ttybitnik@user/wolper)
2025-11-07 15:56:58 × Nachtgespenst quits (~user@user/siracusa) (Quit: Bye!)
2025-11-07 15:58:14 <dutchie> am I supposed to use vector-algorithms to sort Data.Vector.Vectors?
2025-11-07 15:59:18 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 16:04:16 fp joins (~Thunderbi@89-27-10-140.bb.dnainternet.fi)
2025-11-07 16:04:25 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-11-07 16:05:56 Googulator49 joins (~Googulato@team.broadbit.hu)
2025-11-07 16:07:42 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 16:08:17 × Inline quits (~inlinE@2a02:8071:57a1:dc0:a54f:a27d:cf25:667b) (Remote host closed the connection)
2025-11-07 16:08:36 Inline joins (~inlinE@2a02:8071:57a1:dc0:a54f:a27d:cf25:667b)
2025-11-07 16:09:05 × Googulator94 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)
2025-11-07 16:09:18 × YoungFrog quits (~youngfrog@2a02:a03f:ca07:f900:3dd:a915:d31f:6e01) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in)
2025-11-07 16:09:38 YoungFrog joins (~youngfrog@2a02:a03f:ca07:f900:9f50:13f1:779b:4aa6)
2025-11-07 16:14:25 × Anarchos quits (~Anarchos@91-161-254-16.subs.proxad.net) (Read error: Connection reset by peer)
2025-11-07 16:15:00 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-11-07 16:15:44 Googulator78 joins (~Googulato@team.broadbit.hu)
2025-11-07 16:19:03 × Googulator49 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)
2025-11-07 16:19:10 tromp joins (~textual@2001:1c00:3487:1b00:5425:82ad:9644:72ca)
2025-11-07 16:23:17 jmcantrell joins (~weechat@user/jmcantrell)
2025-11-07 16:26:12 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 16:26:44 × fp quits (~Thunderbi@89-27-10-140.bb.dnainternet.fi) (Read error: Connection reset by peer)
2025-11-07 16:26:54 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
2025-11-07 16:27:03 fp joins (~Thunderbi@89-27-10-140.bb.dnainternet.fi)
2025-11-07 16:27:19 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
2025-11-07 16:28:15 Lord_of_Life_ is now known as Lord_of_Life
2025-11-07 16:30:56 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2025-11-07 16:35:20 wootehfoot joins (~wootehfoo@user/wootehfoot)
2025-11-07 16:35:43 Googulator53 joins (~Googulato@team.broadbit.hu)
2025-11-07 16:38:59 × Googulator78 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)
2025-11-07 16:41:37 <kuribas`> Funny, but I don't find that most of the bugs in my python are due to type errors. I put a type on every function thought (even if it is Any).
2025-11-07 16:41:59 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 16:43:27 <kuribas`> I find robustness comes from good practices mostly, like avoiding side-effects is possible, using dataclasses, not doing stringly typed programming, good exception hygience (which is tricky in python), modularity, avoiding dynamic tricks, etc..
2025-11-07 16:43:51 <kuribas`> Makes me question if spending lots of time to get just that bit more type safety is worth it...
2025-11-07 16:44:07 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
2025-11-07 16:44:14 <kuribas`> Or finding the most elegant way to express this single loop, which means nothing on the scale of the project.
2025-11-07 16:45:09 <kuribas`> Of course these things haskell encourages, and python doesn't.
2025-11-07 16:45:20 <kuribas`> So easy to get code that throws exceptions all over the place.
2025-11-07 16:46:35 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-11-07 16:48:53 <kuribas`> I wonder if equivalent haskell code would be faster than python.
2025-11-07 16:49:34 <kuribas`> since haskell has overhead for GC and immutability, but is compiled vs interpreted python.
2025-11-07 16:50:42 Googulator16 joins (~Googulato@team.broadbit.hu)
2025-11-07 16:51:04 <haskellbridge> <loonycyborg> Main fragility of python comes not from dynamic typing but from dynamic execution I think
2025-11-07 16:51:37 <haskellbridge> <loonycyborg> It's a lot easier to write total nonsense in python that won't break anything until it's actually executed
2025-11-07 16:51:52 <kuribas`> Some of the stuff is crazy, like changing modules at runtime.
2025-11-07 16:52:13 <haskellbridge> <loonycyborg> So if you break something with refactoring then you won't notice it until it's actually executed
2025-11-07 16:52:23 <haskellbridge> <loonycyborg> if it's in some rarely used codepath then good luck
2025-11-07 16:53:18 <haskellbridge> <loonycyborg> This is what more complex type systems are meant to prevent.
2025-11-07 16:53:30 <haskellbridge> <loonycyborg> Basically aim is to prove your code at any codepath
2025-11-07 16:53:43 × Googulator53 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)
2025-11-07 16:53:57 <geekosaur> also code coverage, but that I think is equally impossible for python?
2025-11-07 16:54:07 <kuribas`> It helps not to do crazy stuff in Python.
2025-11-07 16:54:16 <kuribas`> But there are popular packages that do this.
2025-11-07 16:54:36 michalz joins (~michalz@185.246.207.215)
2025-11-07 16:55:10 <kuribas`> dramatiq changes the class at runtime of the actors.
2025-11-07 16:57:47 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-11-07 16:59:10 Anarchos joins (~Anarchos@91-161-254-16.subs.proxad.net)
2025-11-07 17:01:00 Googulator5 joins (~Googulato@team.broadbit.hu)
2025-11-07 17:02:18 × tromp quits (~textual@2001:1c00:3487:1b00:5425:82ad:9644:72ca) (Quit: My iMac has gone to sleep. ZZZzzz…)
2025-11-07 17:02:52 × chele quits (~chele@user/chele) (Remote host closed the connection)
2025-11-07 17:04:07 × Googulator16 quits (~Googulato@team.broadbit.hu) (Ping timeout: 250 seconds)

All times are in UTC.