GeistHaus
log in · sign up

Zig And Rust

matklad.github.io

This post will be a bit all over the place. Several months ago, I wrote Hard Mode Rust, exploring an allocation-conscious style of programming. In the ensuing discussion, @jamii name-dropped TigerBeetle, a reliable, distributed, fast, and small database written in Zig in a similar style, and, well, I now find myself writing Zig full-time, after more than seven years of Rust. This post is a hand-wavy answer to the why? question. It is emphatically not a balanced and thorough comparison of the two languages. I haven't yet written my 100k lines of Zig to do that. (if you are looking for a more general what the heck is Zig, I can recommend @jamii's post). In fact, this post is going to be less about languages, and more about styles of writing software (but pre-existing knowledge of Rust and Zig would be very helpful). Without further caveats, let's get started.

4 pages link to this URL
Holy Dev Newsletter April 2023

Welcome to the Holy Dev newsletter, which brings you gems I found on the web, updates from my blog, and a few scattered thoughts. You can get the next one into your mailbox if you subscribe.What is happeningApril has been an exciting month, as I have visited the ultimite world Clojure conference, namely Conj in the US. There have been some excellent talks, some good ones, and some disappointing ones. The best part was of course meeting people, especially those I only knew online, until now. You can see all the talks at YouTube. I especially enjoyed Rich’s talk on design, and Gaining Constant time Lookup over Unorganized Data, which demonstrates the desing process in practice, and describes how Nubank arrived to a disk-based hash map as an efficient solution to a problem recurring in different contexts. State of XTDB, Clojure for Data Science in the Real World, Operating Datomic at Scale, and Joyful Cross platform Development with ClojureDart were certainly worth listening to, if you have any interest in the topics. High Performance Clojure was an exciting deep dive into lessons Chris learned optimizing his data processing and parsing libraries. I have only seen the later half of How to build a Clojure dialect, which isn’t relevant to anything I do, but was really well presented and fun, so I want to see it whole. The talk Clojure in the Fintech Ecosystem wasn’t very technical but it was anyway inspirational to me, especially in regards to Clojure for Data Science and learning how only the arrival of NumPy turned Python into the essential tool of data science it is today - and thus, how Clojure could do the same trick. Emmy: Moldable Physics and Lispy Microworlds demonstrated a library for symbolic computations in Clojure, which is far removed from what I do, but is fascinating anyway, and it proved how crucial it is to build the proper language to solve a class of problems. I cannot imagine building the demos Sam presented without the library, with just a general pu

0 inbound links article en scalabookarchitecturetestingnewsletteropiniontalklearningtoolssecurityclojurenettbutikkwebdevawsrustFulcroexperiencedesignhiringramajavalegacygroovymonitoringhaskelltroubleshootingJavaScriptproductivitydatabasekent becklanguagesmethodologyrefactoringClojureClojureScriptbabashkaapiDevOpslibraryPostgreSQLtoolclojure-vs-javapythonDockerperformanceanalysisqualityhumandatanodejs