How to choose a teaching language
If you were teaching a programming course, what language would you teach it in?
If you were teaching a programming course, what language would you teach it in?
Software Engineering Interviews at Jane Street
We’re in the midst of intern hiring season, and so we get a lot of questions about what it’s like to be an intern at...
Almost every programming language uses 64-bit integers on typical modern Intel machines. OCaml uses a special 63-bit representation. How does it affect OCaml?
The Parable Of The Perfect Connection
I’m a little biased, by being on the steering committee, but this year’s ML workshop looks really interesting. Here’s a link to the program:
Often when writing a new module, I want to write the interface first and save the implementation for later. This lets me use the module...
In the once upon a time days of the First Age of Magic, the prudent sorcerer regarded his own true name as his most valued...
Sometimes it can be useful to inspect the state of a TCP endpoint. Things such as the current congestion window, the retransmission timeout (RTO), duplicate...
I just stumbled across a post from earlier this year by Graydon Hoare, of Rust fame. The post is about what he calls the “Not...
I’ve been thinking about naming recently, specifically the naming of new systems. It’s tempting to think of naming as trivial, but it really does matter....
We’ve just kicked off an internal distributed-systems seminar. Our inaugral paper was Lamport’s classic “Time, Clocks and the Ordering of Events in a Distributed System”....
This is the third in a series of posts about the design of Iron, our new code review and release management tool. The other two...
This is the second in a series of posts about the design of Iron, our new code review tool. You can read the first post...
At Jane Street, we care a lot about code review. We think that high quality code, and in particular, readable code, helps us maintain the...
This is the last in my series of posts about new features in OCaml 4.02. So far, I’ve discussed how OCaml is getting more like...
(OCaml 4.02 has branched, which makes it a good time to stop and take a look at what to expect for this release. This is...
This post is meant to be an introduction to Core_bench, our micro-benchmarking library for OCaml. Core_bench is similar to Haskell’s micro-benchmarking library, Criterion, in that...