Blacksmithing and Lisp
A blog about computers, functional languages, Lisp, and Scheme.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,709 posts.
A blog about computers, functional languages, Lisp, and Scheme.
Trying out the Rust programming ecosystem as a 10+ years Python developer. How to do common programming tasks and how the tooling looks like.
Mike Kohn's music, software, and electronics projects.
A blog by sunfishcode
Several months ago, I introduced Gnirehtet , a reverse tethering tool for Android I wrote in Java.
One of the main use cases for the Zig Programming Language is operating system development and embedded development. So, what better way to make sure the language is suitable than to work on a project in this field?
UPDATE: Wow, this post has gotten popular! I’ve written a new post that adds new papercuts combined with concrete suggestions for how C++ could improve, if you are interested. Also, if you want to read more about C++’s deeper-than-papercut issues, I recommend specifically my post on its move semantics. Thank you for…
A deep dive into how I use types to the fullest
Effective D Programming Language.
How to Use Python in C
TL;DR: You can use Pydantic’s support for tagged unions to approximate sum types in Python; go right to Sum types in Python (and onwards) to see how it’s done.
For over twenty years the Java SE Platform and the JDK have evolved in large, irregular, and somewhat unpredictable steps. Each feature release has been driven by one or a few significant features, and so the schedule of each release has been adjusted as needed — sometimes more than once! — in order to accommodate the…
Recently I was trying some statistics on the qtbase-module (where QtCore, QtGui, QtWidgets and so on lives) and was wondering who made them. Not based on their current paid affilation, like Thiago’s graphs , but if each commit was made by a person coming from KDE.
Function order has been rearranged here and there to appease Clojure's single-pass compiler.
In the previous article we explored how Go’s memory allocator manages heap memory — grabbing large arenas from the OS, dividing them into spans and size classes, and using a three-level hierarchy (mcache, mcentral, mheap) to make most allocations lock-free. A key detail was that each P (processor) gets its own memory…
The problems with timezones and Python’s datetime object and how you would properly use them.