Python 3.12
The official home of the Python Programming Language
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 217 posts.
The official home of the Python Programming Language
Most people think assembly is only to be used to write toy programs for learning purposes, or to write a highly optimized version of a specific function inside a codebase written in a high-level language.
Xe Iaso's personal website.
Join me as we take a look at common application data patterns, and how they relate to the inner-workings of databases. In this post, we discuss data caching, indexing, optimistic mutations, and recursive cache invalidation. We will see how life might be easier if we could just use a frontend optimized database like…
sourcehut is a network of useful open source tools for software project maintainers and collaborators, including git repos, bug tracking, continuous integration, and mailing lists.
YJIT, a just-in-time (JIT) implementation on top of CRuby built at Shopify, is now production-ready and delivering major improvements to performance and speed. Maxime shares the updates that have been made in this newest version of YJIT, and future plans for further optimization.
SectorC ( github ) is a C compiler written in x86-16 assembly that fits within the 512 byte boot sector of an x86 machine. It supports a subset of C that is large enough to write real and interesting programs. It is quite likely the smallest C compiler ever written.
I think the word “component” in “web components” confused a lot of people — at least it did me. “Web components” sounded like the web platform’s equivalent to…
I have been reading Doom Guy by John Romero. It is an excellent book which I highly recommend. In the ninth chapter, John describes being hit by lightning upon seeing Adaptive Tile Refresh (ATR). That made me realize I never took the time to understand how this crucial piece of tech powers the Commander Keen (CK)…
Imagine if you could auto scale simply by wrapping any existing app code in a function and have that block of code run in a temporary copy of your app
A collection of specific ways to improve your use of Rust
Update: I gave a talk on this topic at P99 CONF 2023 and at PyCon IL 2024 (Hebrew). A while ago at $work, we had a performance issue with one of our core Python …
We examine the Llama-2 models under 3 real-world use cases and show that fine-tuning yields significant accuracy improvements.
Object Pascal is a modern, readable, fast, type-safe, cross-platform OOP programming language. It is also easy to pick up.
This is an introduction to data structure flattening, a special case of arena allocation that is a good fit for programming language implementations. We build a simple interpreter twice, the normal way and the flat way, and show that some fairly mechanical code changes can give you a 2.4× speedup.
The Go 1.21 standard library includes a new structured logging package, log/slog.
Andy Pavlo - Carnegie Mellon University,
Wondering about Rust? We're addressing rumors and providing insight gained from years of early adoption of Rust here at Google.
“shouldn’t this have been published a few months ago?” yeah, probably. I even considered submitting it to the AoC contest. time is a real beast. The title is clickbait. I did not design and implement a programming language for the sole or even primary purpose of leaderboarding on Advent of Code. It just turned out…
Apple today announced iOS 17, a major release that upgrades the communications experience across Phone, FaceTime, and Messages.
You can't safely use the C setenv() or unsetenv() functions in a program that uses threads. Those functions modify global state, and can cause other threads calling getenv() to crash. This also causes crashes in other languages that use those C standard library functions, such as Go's os.Setenv ( Go issue ) and Rust's…
Nano How-To explaining how to setup a root file system with only emacs.
Reduce the size of object headers in the HotSpot JVM from between 96 and 128 bits down to 64 bits on 64-bit architectures. This will reduce heap size, improve deployment density, and increase data locality.
Since last fall, Neven has been doing an internship to develop a new aliasing model for Rust: Tree Borrows. Hang on a second, I hear you say – doesn’t Rust already have an aliasing model? I...
Developers often believe that software performance follows a Pareto distribution: 80% of the running time is spent in 20% of the code. Using this model, you can write most of your code without any care for performance and focus on the narrow pieces of code that are performance sensitive. Engineers like Casey Muratori…
I write compilers for fun. I can’t help it. Consequently, I also write a lot of parsers. In systems programming, it’s usually a good idea to try to share memory rather than reuse it, so as such my AST types tend to look like this.
In general, when working in C I avoid the standard library, libc, as much as possible. If possible I won’t even link it. For people not used to working and thinking this way, the typical response is confusion. Isn’t that like re-inventing the wheel? For me, libc is a wheel barely worth using — too many deficiencies in…
Augmenting GPT-3 with tools is a popular technique right now. But is GPT-3 really using them?
Last year I finally decided to learn some Rust. The official book by Steve Klabnik and Carol Nichols is excellent, but even after reading it and working on some small code exercises, I felt that I needed more to really understand the language. I wanted to work on a small project to get some hands-on experience, but…