The Myers diff algorithm: part 1
If you enjoy this article, I have published a book explaining the internals of Git through implementation: Building Git .
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 6,985 posts.
If you enjoy this article, I have published a book explaining the internals of Git through implementation: Building Git .
Almost a year ago now, Jack Diederich gave a talk entitled “Stop Writing Classes“, in which he implores Python programmers to stop creating classes just for the hell of it, and specifically calls out the common pattern of a class with only a constructor/initializer and a single method—which should, of course, just be…
Tech is entering a period of inequality where the big winners lift the sector as a whole even as smaller companies suffer. The best example is Facebook, Google, and digital advertising.
Oftentimes when I am conversing about the design of Rust with other users - as on RFCs or the internals forum - I witness a peculiar remark about “explicitness.” It usually goes something like this: I do not like Feature Design X because it is too implicit. Magic is okay in Other Language Y, but Rust is supposed to be…
After working through “the book” on the Rust programming language and getting started with the first non-trivial, real-world application I found myself faced with a question I didn’t yet feel well-equipped to handle: “How should you structure error handling in a mature rust application?”
Most of my systems are microcomputers (and commensurately sized), though I do have some moderately larger beasts: you've met homer , my 1987...
A draft design document describing lightweight userland cooperative threads for SBCL.
I really wanted to make this article short … but I failed miserably. At least I tried to organize it well so one may get back to it after ‘some’ reading because its not a short le…
Editor’s note: For this blog entry I welcome my friend and colleague Gerben Stavengaas a guest author.
We present a prototype of a programming system called Shadama. Shadama is designed for writing programs that create, control and visualize large numbers of objects. The basic execution model follows the tradition of StarLogo and its "turtles and patches" abstraction. Turtles, Termites, and Traffic Jams: Explorations…
I read a fantastic article in Nature magazine (vol 459, pp931-939 (18 June 2009)) that summarizes not only the current state of novel H1N1 (aka Swine Flu) understanding, but also a compares H1N1 against other flu strains. In particular, it discusses in-depth how the pathogenic components — i.e., the stuff that kills…
Type inference is a major feature of several programming languages, most notably languages from the ML family like Haskell. In this post I want to provide a brief overview of type inference, along with a simple Python implementation for a toy ML-like language.
Karl Seguin's Blog - A mix of coding and creative writing
Programming language performance is something that nearly everyone cares about at some point, whether they realise it or not. If you’re a programmer, you sometimes have to make your programs run fast; if you’re a user, you might be frustrated at a program that runs slowly, without knowing that it’s caused by a poor…
Writing a book is a time consuming process, and if you’re going to dedicate a year, or more, of your life to it, it makes sense to pick the best tool for the job. If you’re technically inclined – and if you use Emacs – then the choice is obvious.
Last time we formulated the problem of isosurface extraction and discussed some general approaches at a high level. Today, we’re going to get very specific and look at meshing in particular.…
Oculus Go, like all products, is the result of a series of compromises around cost, schedule, quality, and competence. It is clearly the best standalone VR platform on the market, but anyone …
For the past ten years, I have written a lengthy year-end series, documenting some of the dominant narratives and trends in education technology. I think it is worthwhile, as the decade draws to a ...
Summary: We have released GPT-J-6B, 6B JAX-based (Mesh) Transformer LM (Github).GPT-J-6B performs nearly on par with 6.7B GPT-3 (or Curie) on various zero-shot down-streaming tasks.You can try out …
Important new study from Apple
I think turning everyday gadgets into bombs is a bad idea. However, recent news coverage has been framing the weaponization of pagers and radios in the Middle East as something we do not need to concern ourselves with because “we” are safe.
QuestDB created a minor stir in the small but active world of analytics database benchmarking with this blog article: https://questdb.io/blog/2022/05/26/query-benchmark-questdb-versus-clickhouse-timescale. This is the money quote: “QuestDB is an order of magnitude faster than both TimescaleDB and ClickHouse in this…
On April 8, 2020, John Horton Conway developed symptoms of COVID-19. On April 11, 2020, he succumbed to the disease. 1 2 3 4
For a real-life implementation, see how Racket's math/number-theory does it here .