Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,790,349 events total
2026-03-15 19:38:08 <gentauro> wow, missed that one :o https://jupyter-xeus.github.io/xeus-haskell/lab/index.html
2026-03-15 19:39:09 emmanuelux joins (~em@user/emmanuelux)
2026-03-15 19:46:18 <haskellbridge> <ijouw> I only noticed because i read through most of the microhs github issues/discussion page
2026-03-15 19:46:26 × craunts795335385 quits (~craunts@152.32.99.2) (Ping timeout: 248 seconds)
2026-03-15 19:47:46 wootehfoot joins (~wootehfoo@user/wootehfoot)
2026-03-15 19:48:05 <gentauro> thx for sharing
2026-03-15 19:50:18 Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915)
2026-03-15 19:51:09 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds)
2026-03-15 19:53:12 Lord_of_Life_ is now known as Lord_of_Life
2026-03-15 19:56:29 × jreicher quits (~joelr@user/jreicher) (Quit: In transit)
2026-03-15 20:14:28 × humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...)
2026-03-15 20:28:26 michalz joins (~michalz@185.246.207.193)
2026-03-15 20:33:09 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-15 20:37:54 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2026-03-15 20:43:59 × wickedjargon quits (~user@S0106f89e28d5699a.vc.shawcable.net) (Remote host closed the connection)
2026-03-15 20:44:54 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Quit: Leaving)
2026-03-15 20:48:10 × karenw quits (~karenw@user/karenw) (Remote host closed the connection)
2026-03-15 20:48:30 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-15 20:51:57 <sshine> tomsmeding, I work somewhere where everyone has to use Windows. (fortunately, WSL has gotten better, and there is numtide/system-manager for Nix on Ubuntu) what I experience isn't that Windows is unmanageable, but rather that the average developer on Windows isn't the master of their own operating system, they more or less randomly use it and don't know what's under the hood, and so they can't help
2026-03-15 20:52:03 <sshine> themselves when stuff breaks.
2026-03-15 20:52:43 <tomsmeding> sshine: I see
2026-03-15 20:52:57 <tomsmeding> and then because I don't know windows either, together we get no further
2026-03-15 20:53:22 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
2026-03-15 20:53:31 <newmind> sshine: a lot of windows installation in a corporate settings are also managed, so it's not even that they are not interested in it, it's often simply not permitted
2026-03-15 20:53:33 <tomsmeding> while WSL is fine, in the course we tried to let students work on windows native instead of in the VM
2026-03-15 20:53:54 <newmind> (and with windows 11+ that more and more applies for private use too)
2026-03-15 20:54:24 <sshine> WSL + VSCode's client-server thingy, you can have the developer environment in Linux and the GUI on Windows.
2026-03-15 20:54:26 <tomsmeding> and on windows native you notice very acutely that lots of the tooling we're used to comes from the unix world, so e.g. getting a shell with ghc and git both available is a challenge
2026-03-15 20:54:49 <tomsmeding> yep that's what we did in earlier years, it worked okay
2026-03-15 20:55:13 <sshine> I didn't like devcontainers, but having the WSL VM be the server-side feels better.
2026-03-15 20:55:13 <tomsmeding> you get issues like students having Github Desktop on the windows side and git on the linux side and them not agreeing on line endings and such
2026-03-15 20:55:40 <sshine> yeah, line endings. I experience that Windows users don't know what that is.
2026-03-15 20:56:11 <tomsmeding> earlier because we had heavy dependencies (we fixed that last year) we also had a dev container inside WSL, and then SSH access with git was extremely finicky
2026-03-15 20:56:15 <sshine> for the projects I service at work, I try to stay consistent per-file.
2026-03-15 20:56:27 <tomsmeding> "I try to stay consistent per file" the horror
2026-03-15 20:58:05 <mesaoptimizer> https://hackage.haskell.org/package/time is this really the standard datetime library that Haskell users use?
2026-03-15 20:58:09 <sshine> there are so many ways to garble line endings. people use all kinds of tools configured differently. I haven't seen two setups being the same. some do most things from PowerShell, but a few switch between WSL and PowerShell, and yet fewer use only WSL; but do the files live in Windows or in Linux? do we assume case sensitive filenames?
2026-03-15 20:58:23 <tomsmeding> mesaoptimizer: generally, yes
2026-03-15 20:58:50 <newmind> sshine: then you have wsl1 vs wsl2, which function completely differently
2026-03-15 20:58:58 <tomsmeding> wsl1 shall not be used
2026-03-15 20:59:02 <mesaoptimizer> I ask because `fromGregorian` docs state: " Invalid values will be clipped to the correct range, month first, then day."
2026-03-15 20:59:16 <mesaoptimizer> which is a rather impressive silent failure
2026-03-15 20:59:26 <newmind> oh, and if you really want to add another fun layer, add in cygwin too
2026-03-15 21:00:05 <tomsmeding> mesaoptimizer: fromGregorianValid?
2026-03-15 21:00:07 <sshine> mesaoptimizer, https://web.archive.org/web/20211225193627/https://jacobstanley.io/3-packages-you-need-to-know-about-before-processing-timestamps-in-haskell/
2026-03-15 21:02:09 <sshine> newmind, my students use Cygwin via "Git Bash" which comes with when you install git on Windows.
2026-03-15 21:02:23 <tomsmeding> isn't that minGW?
2026-03-15 21:02:27 <sshine> oh, right
2026-03-15 21:02:33 <tomsmeding> a rather different beast :)
2026-03-15 21:03:14 <sshine> I like how "Git Bash" kind of works in spite of all the brokenness of trying to marry Unix tools with Windows.
2026-03-15 21:03:32 <tomsmeding> but do you have ghc in git bash?
2026-03-15 21:03:32 <newmind> didn't microsoft include some unix tools/compability with windows itself once?
2026-03-15 21:03:50 jreicher joins (~joelr@user/jreicher)
2026-03-15 21:04:01 <davean> sshine: Only one of those handles TAI, and only partially at that?
2026-03-15 21:04:14 <davean> And if you care about time, you'll be using TAI so ...
2026-03-15 21:05:27 <tomsmeding> I do not usually care about time enough to make the effort to deal with leap seconds
2026-03-15 21:05:48 × fernando-basso quits (~fernando-@2a01:4f9:c012:63d3::1) (Ping timeout: 264 seconds)
2026-03-15 21:06:31 fernando-basso joins (~fernando-@2a01:4f9:c012:63d3::1)
2026-03-15 21:08:07 <geekosaur> newmind, Windows 2000 had a POSIX subsystem. It didn't play along well with native stuff, didn't work well by itself, and was abandoned
2026-03-15 21:08:22 <geekosaur> WSL2 exists but is hasically a single-seat Hyper-V
2026-03-15 21:08:28 <geekosaur> *basically
2026-03-15 21:08:39 <newmind> yeah, i seemed to recall something like that, and also that is was mostly a flop that got dropped
2026-03-15 21:08:44 <geekosaur> (by default running Ubuntu but you can find instructions for installing other distros)
2026-03-15 21:08:45 <mesaoptimizer> sshine: thanks
2026-03-15 21:08:50 <tomsmeding> it's a VM in essentially all important ways
2026-03-15 21:09:10 <newmind> and wsl1 is basically a reverse wine, right?
2026-03-15 21:09:17 <tomsmeding> it just has a bit of polish like auto-mounting of its disk as a network drive on the windows side
2026-03-15 21:09:17 <geekosaur> yes
2026-03-15 21:09:19 <tomsmeding> yes
2026-03-15 21:09:26 francois_y joins (~Thunderbi@bras-vprn-toroon4839w-lp130-02-142-113-110-153.dsl.bell.ca)
2026-03-15 21:09:29 <geekosaur> it also worked poorly, which is why WSL2 is a Hyper-V
2026-03-15 21:09:54 <mesaoptimizer> tomsmeding: I did use `fromGregorianValid`, I was just dismayed by the existence of a function that fails silently. (and it exists in the `thyme` package with silent failure too)
2026-03-15 21:09:58 <newmind> but also comes with all virtualization costs, and running an extra kernel, etc... good that ram got so inexpensive :P
2026-03-15 21:10:31 <geekosaur> WSL1 was also a separate kernel; remember that modern Windows is a microkernel architecture
2026-03-15 21:11:02 <geekosaur> WSL1 was a heavily hacked Linux single server running alongside the Windows microkernel services
2026-03-15 21:12:02 <newmind> but the wsl1 applicaions run in the same memory space as windows executables?
2026-03-15 21:12:03 <geekosaur> it wanted its own filesystem, in particular; you could access Windows files but via Samba IIRC
2026-03-15 21:12:17 × takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Ping timeout: 244 seconds)
2026-03-15 21:12:32 <geekosaur> yes
2026-03-15 21:13:53 <newmind> so technically it might have even been the "better" approach, but comes with a whole lot of edge cases and compability to implement, while the wsl2/hypervisor approach basically fully works out of the box and you just need to implement how you interact with it
2026-03-15 21:13:56 <sshine> WSL uses 9p
2026-03-15 21:14:01 <geekosaur> compatibility was pretty poor
2026-03-15 21:14:03 <sshine> WSL2, sorry
2026-03-15 21:14:25 <sshine> which is great but slow
2026-03-15 21:15:17 × francois_y quits (~Thunderbi@bras-vprn-toroon4839w-lp130-02-142-113-110-153.dsl.bell.ca) (Quit: francois_y)
2026-03-15 21:15:32 <geekosaur> and yes, technically it couldl have been made to work better, but (a) would have been a massive effort (b) which would probably have needed to be redone every new kernel release, since rewiring a Linux standalone kernel as a single server is a massive undertaking
2026-03-15 21:16:09 somemathguy joins (~somemathg@user/somemathguy)
2026-03-15 21:16:27 <newmind> you kind of see it in wine too, always playing catch-up with any api changes or new libraries/applications that expose new edge cases
2026-03-15 21:19:17 merijn joins (~merijn@host-cl.cgnat-g.v4.dfn.nl)
2026-03-15 21:20:43 <haskellbridge> <ijouw> I only remember that using wsl git on windows filesystem failed (some while back, don't know if wsl2 was available yet).
2026-03-15 21:20:45 <haskellbridge> My windows laptop is rarely used and somehow forgot how to strip executables (i think 32/64 bit mismatch).
2026-03-15 21:24:19 × merijn quits (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-03-15 21:24:25 <jreicher> gentauro: Re teaching kids RPN; any particular reason that over PN? (I know RPN is more common, but I wonder what reasons people really have beyond popularity)
2026-03-15 21:25:01 <geekosaur> RPN leads itself to simple stack-based implementations
2026-03-15 21:25:12 <jreicher> PN does also. That's why I'm asking.
2026-03-15 21:25:40 <tomsmeding> isn't it a control stack with PN and a data stack with RPN?
2026-03-15 21:26:14 <jreicher> If you consider the operators on input to be control, then yes, but they're input...
2026-03-15 21:27:25 <tomsmeding> what is the implementation you have in mind for PN? A stack of operators, and each number you see slots into the next available argument slot of the topmost stack entry; if that operator is now full, it becomes a number and falls down?
2026-03-15 21:27:43 <tomsmeding> that's a least a _little_ more complicated than "a stack of numbers"
2026-03-15 21:28:08 × Guest62t quits (~Guest62t@p200300ca8f3baa00c0ef77f2b149c10e.dip0.t-ipconnect.de) (Quit: Client closed)

All times are in UTC.