Recent posts

Fifty years of strings: Language design and the string datatype

Strings are a fundamental data type in programming languages, but their representation, functionality, and suitability for multi-lingual processing have changed over time. This article looks at the major changes in language design over the first fifty years.

Read more…

Format Specifiers

Programming languages use format specifiers to control the formatting of numbers and text. We look at their invention in FORTRAN I, adoption in BCPL, and three innovative attempts to include them in ALGOL60.

Page Ranges

In my earlier post on interviewing, I discussed aspects of a coding interview question that I thought provided better signal on the candidate than algorithmic-focused questions. In this post, I’ll provide an example fairly open-ended interview question, a solution, and a transcript between the interviewer and interviewee as an example for analyzing signal.

Read more

Infinite Race

Infinite Race is a mathematical racing game. Two players compete to move their piece the greatest distance along the number line by choosing how the dice will fall. However, the rolls must fit a distribution perfectly, so the player’s luck must revert to the mean. The strategy is to select a sequence of moves which allows one player to break free of the pack.

Read more