Everyone can recognize some kinds of spurious reasoning – like the following: (A) Most programmers are not great. (B) Google tries to hire only excellent
Read moreSorting and groups
I can’t find much reference to this in the literature (see Maus for some hints and an interesting paper) , but surely people have looked
Read moreC compiler developers are hostile to C programming
From the LLVM developer mailing list this remarkable exchange in which Chris Lattner of LLVM says that the compiler use of undefined behavior (UB) is
Read moreCurrent reading: July 8 2017
Principal type-schemes for functional programs∗ Luis Damas† and Robin Milner First published in POPL ’82: Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of
Read moreThe C standard versus C and the mother of all hacks.
The Kafkaesque interaction of the C standard and the main open source C compilers was concisely outlined by one of the main LLVM authors back
Read moreThe C standard committee effort to kill C continues
Consider the following code: void f(void) { unsigned char x[1]; /* intentionally uninitialized */ x[0] ^= x[0]; printf(“%d\n”, x[0]); printf(“%d\n”, x[0]); return; } In this
Read moreBasic math for basic algorithms
It’s odd that all the descriptions of basic programming operations, such as sorting, rely on pseudo code or complex formal logic. All we are doing
Read more
Computer Science as a scholarly discipline.
Google Scholar tells me that “Why Functional Programming Matters” was published in 1989 and has been cited over 1000 times. Here’s a quote. Recall that
Read moreCurrent reading
Wadler’s influential “monads” paper for Haskell. It seems like a classic case of making something simple sound profound and mysterious. And companion paper by Hughes
Read moreChang-Maxemchuk atomic broadcast
The Chang-Maxemchuk algorithm (US Patent 4,725,834 ) solves atomic broadcast (and in-order broadcast) problems for distributed networks in a far simpler and more efficient way than some
Read more