Introduction to the Theory of Programming Languages: full book now freely available






Short version: the full text of my Introduction to the Theory of Programming Languages book (second printing, 1991) is now available. This page has more details including the table of chapters, and a link to the PDF (3.3MB, 448 + xvi pages). The book is a survey of methods for language description, particularly semantics (operational, … Read more




Introduction to axiomatic semantics






I have released for general usage the chapter on axiomatic semantics of my book Introduction to the Theory of Programming Languages. It’s old but I think it is still a good introduction to the topic. It explains: The notion of theory (with a nice — I think — example borrowed from an article by Luca … Read more




OOSC-2 available online (officially)






My book Object-Oriented Software Construction, 2nd edition (see the Wikipedia page) has become hard to get. There are various copies floating around the Web but they often use bad typography (wrong colors) and are unauthorized. In response to numerous requests and in anticipation of the third edition I have been able to make it available … Read more




PhD and postdoc positions in verification in Switzerland






The Chair of Software Engineering, my group at the Schaffhausen Institute of Technology in Switzerland (SIT), has open positions for both PhD students and postdocs. We are looking for candidates with a passion for reliable software and a mix of theoretical knowledge and practical experience in software engineering. Candidates should have degrees in computer science … Read more




Panel on methodology and agility, this Monday (20 September)






Today (well, tomorrow as of writing, but when you see this it will probably be today for you) I am participating in a panel discussion with Ivar Jacobson, Robert Martin and Carlos Zapata on “The Future of Methods”, hosted by the SEMAT/Essence movement. It takes place at 18:30 CET (i.e. Paris/Zurich etc.), 12:30 EDT, 9:30 … Read more




A standard plan for modern requirements






Requirements documents for software projects in industry, agile or not, typically follow a plan defined in a 1998 IEEE standard (IEEE 830-1998 [1]),  “reaffirmed” in 2009. IEEE 830 has the merit of simplicity, as it fits in 37 pages of which just a few (competently) describe basic requirements concepts and less than 10 are devoted to … Read more




Publication announcement: survey on requirements techniques, formal and non-formal






There is a new paper out, several years in the making: The Role of Formalism in System Requirements Jean-Michel Bruel, Sophie Ebersold, Florian Galinier, Manuel Mazzara, Alexander Naumchev, Bertrand Meyer Computing Surveys (ACM), vol. 54, no. 5, June 2021, pages 1-36 DOI: https://doi.org/10.1145/3448975 Preprint available here. The authors are from the Schaffhausen Institute of Technology … Read more




On beauty and software (online talk on Wednesday, 17 CET / 11 EDT / 8 PDT)






This Wednesday (still “tomorrow” as I am writing this), 10 March 2021, I am giving a talk on “The Beauty of Software” on the occasion of the graduation ceremony of the first students of the Schaffhausen Institute of Technology. The event starts at 17 Schaffhausen/Zurich/Paris etc. time (11 AM New York, 8 AM San Francisco) … Read more




Tomorrow (Thursday) noon EDT: ACM talk on requirements






In the software engineering family requirements engineering is in my experience the poor cousin, lagging behind the progress of other parts (such as design). I have been devoting attention to the topic in recent months and am completing a book on the topic. Tomorrow (Thursday), I will be covering some of the material in a … Read more




Some contributions






Science progresses through people taking advantage of others’ insights and inventions. One of the conditions that makes the game possible is that you acknowledge what you take. For the originator, it is rewarding to see one’s ideas reused, but frustrating when that happens without acknowledgment, especially when you are yourself punctilious about citing your own … Read more