New

The latest blog posts to take off on Hacker News. 21,834 posts.

Software Engineering
Any year
13426

Nobody's just reading your code

Most programmers agree that we don't read enough code. The interviews in Peter Seibel's book, “Coders at work” highlight a comical contradiction: almost all the programmers interviewed by Seibel recommend that others read code for fun, but none of them routinely do so themselves. Seibel even asked Hal Abelson (of SICP…

13427

Reasoning with Types in Rust

Hi, I'm Ariel (she/her), a newly-minted member of the Swift team at Apple ! Previously, I helped lead the Luau team at Roblox where my efforts primarily focused on the design and implementation of Luau 's type system. I also led the creation of Lute to support using Luau both to build developer tooling, and as a…

13430

How Much Does a Compiler Cost?

The compiler tool chain is one of the largest and most complex components of any system, and increasingly will be based on open source code, either GCC or LLVM. On a Linux system only the operating system kernel and browser will have more lines of code. For a commercial system, the compiler has to be completely…

13434

An SVG that always shows today's date

For my contact page, I wanted a generic calendar icon to let people view my diary. Calendar icons are almost always a skeuomorph of a paper calendar, but I wondered if I could make it slightly more useful by creating a dynamic icon. Here it is, an SVG calendar which always display's today's date: The background image…

13435

A Crash Course on ML Modules (2015)

I was having lunch with a couple of Haskell programmers the other day and the subject of the ML family came up. I’ve been writing a lot of ML lately and mentioned that I thought *ML was well worth learning for the average Haskeller. When pressed why the best answer I could come up with was “Well.. clean language, Oh!…

13439

Versioned Go Commands

What does it mean to add versioning to the go command? The overview post gave a preview, but the followup posts focused mainly on underlying details: the import compatibility rule , minimal version selection , and defining go modules . With those better understood, this post examines the details of how versioning…