Reasons ZIO is awesome: retriesSometimes we ask a computer do to something, but it fails to do it. Sad, but we’re clever! We’ll just try again and hope for the best! It’s amazing (depressing?) how often this solves the problem. Industrial-strength retries But there’s not just one ...Oct 5, 2024 · 6 min readlachlan.hashnode.dev
scala-uv v0.0.2I've published v0.0.2 of scala-uv, "Artisanal, handcrafted Scala Native bindings for libuv". Documentation There's now some API docs, with links to the corresponding libuv docs for each function. The readme also now has details about how scala-uv rep...Feb 6, 2024 · 4 min readlachlan.hashnode.dev
Every Argument for Static Typing Applies to Typed ErrorsThis was originally published in February 2022 as a gist. Think of all the arguments you've heard as to why static typing is desirable — every single one of those arguments applies equally well to using types to represent error conditions. An odd th...Jan 14, 2024 · 16 min readlachlan.hashnode.dev
Using a C library from Scala NativeI've recently been experimenting with Scala Native. The goal I've been working towards is to make the libuv library usable from Scala Native. libuv is a C library for asynchronous I/O that is at the core of Node.js. There is a lot of work left to be ...Jan 7, 2024 · 14 min readlachlan.hashnode.dev