Void safety: Getting rid of the spectre of null-pointer dereferencing






A spectre is haunting programming — the spectre of null-pointer dereferencing. All the programming languages of old Europe and the New World have entered into a holy alliance to make everyone’s programs brittle:  Java, C, Pascal, C++, C# and yes, until recently, Eiffel. The culprit is the use of references to denote objects used in calls: … Read more




Contracts written by people, contracts written by machines






What kind of contract do you write? Could these contracts, or some of them, be produced automatically? The idea of inferring contracts from programs is intriguing; it also raises serious epistemological issues. In fact, one may question whether it makes any sense at all. I will leave the question of principle to another post, in … Read more




Long AND clear?






 (Originally a Risks forum posting, 1998.) Although complaints about Microsoft Word’s eagerness to correct what it sees as mistakes are not new in the Risks forum, I think it is still useful to protest vehemently the way recent versions of Word promote the dumbing down of English writing by flagging (at least when you use … Read more




Computer technology: making mozzies out of betties






Are you a Beethoven or a Mozart? If you’ll pardon the familarity, are you more of a betty or more of a mozzy? I am a betty. I am not referring to my musical abilities but to my writing style; actually, not the style of my writings (I haven’t completed any choral fantasies yet) but … Read more