Undone Programming newsletter #7

Welcome to our new issue of the Undone Programming newsletter. A surprise for this month is that we don’t have any Rust articles 🙂 Still, we’re bringing you a nice variety of content, ranging from Java and Kotlin threading implementation to Zig features, scripting in Scala, and the newest features in F#. Find a comfortable seat, grab a drink, and read and learn!
Limits of Loom's performance
This is a hot article comparing the performance of Kotlin’s coroutines with an implementation using virtual threads – an impactful Java 21 feature, using a specific use-case: rendezvous channels. Dive into the world of thread cooperation and mechanisms for effective communication.
Things I like about Zig as a Go programmer
Zig is gaining more attention in the programming landscape. Let’s take a look at some of the features of the Zig language and toolchain from the perspective of a Go developer, who identifies strong typing, error handling, meta-programming and C compilation as some of its most compelling features, to name just a few.
How scala-cli shines in automation
Scripting has predominantly been a thing done with dynamic and interpreted languages like Bash or Python, mostly due to their availability and ease of use without the need for compilation or complex dependency management, etc. On the other hand, these scripts can be fragile and hard to maintain, especially in shops that use other languages and ecosystems. Well, welcome Scala-cli! Created in response to the call from the Scala community, it brings all the power of Scala to scripting without needing to bother about the heavy compile/package/run processes. Read the article to learn more and see a few examples of how it can be used to automate some real-world processes.
Announcing F# 8
A new version of F# has been released and it’s packed full of interesting features. With my bias towards Scala as my functional programming language of choice, I’m pleased to see that it copies some of the syntax there, like shorthand for lambda parameters. However, having lenses supported directly by the compiler without macros and libraries is on the next level. Check out this blog for the full list of improvements.
I am a knowledge-obsessed, life-positive software developer who approaches every day with a passion for learning and a drive to inspire others. As a natural problem solver, I excel at applying creative thinking to solve complex problems and am constantly pushing the boundaries of what is possible in software development.