We lost a titan of programming languages, programming methodology, software engineering and hardware design. Niklaus Wirth passed away on the first of January. We mourn a pioneer, colleague, mentor and friend.
I was able to reconstruct, and make available as a free PDF, my 1991 book "Introduction to the Theory of Programming Languages". Of course it would be written differently today but I think it is still useful as a presentation of program semantics. See
I have started writing an article going back to the basics and explaining what OO really is, trying (for a 2022 audience) to remove all the accumulated sediments of misunderstandings and misrepresentations.
On 9 Jan, right after I learned of Niklaus Wirth's passing away, I wrote an extensive article about him on the ACM blog. I have extended it a bit since. It is not a standard eulogy faking full agreement, but more like a candid posthumous discussion. See
(1/2) I have been overwhelmed by the response to my free-access release of "Introduction to the Theory of Programming Languages" (
https://bertrandmeyer/itpl).
I thought the book was forgotten but was wrong; it clearly has a following. Thank you so much for the fantastic feedback.
In response to numerous requests and in anticipation of a third edition, I have been able to make my book Object-Oriented Software Construction (2nd edition) available electronically.
You can find it at .
I am happy to announce the publication of my latest book, the result of many years of work on requirements: the Handbook of Requirements and Business Analysis, just published by Springer. See book page with sample chapter etc. at .
Recently when using Twitter I have seen an "X" appearing in the corner, presumably to close Twitter. That was welcome, since closing Twitter is usually what I want do do when I use it. But if I click on the "X" nothing happens. Has anyone else encountered this bug?
After "Object-Oriented Software Construction" and "Introduction to the Theory of Programming Languages" I am continuing the process of releasing earlier books for free use on the Web. I have had many requests for "Object Success" and it took some time to get permissions 1/2
2/2 Now corrected. If you downloaded the text, better re-download. Go to and follow the link (updated to the new version). Reminder: I also released "Introduction to the Theory of Programming Languages" at . 2/2
1/2 Last month I released a full PDF of "Object-Oriented Software Construction, 2nd edtion" at . Thanks for all the kind comments. A typo (from a text-processing script running wild, my fault) added the string "ee-" at some 200 seemingly random places 1/2
In free online version of "Object-Oriented Software Construction" at I fixed a recurrent typesetting issue (bad dot). Used opportunity to update obsolete syntax (!! for create, obsolete for note, unneeded "is" in feature declarations). Please re-download.
(2/2) This prompted me to do the same for my 1995 "Object Success" book. I processed the files and prettified the result a bit. It's all ready (easily -- thanks FrameMaker!) Pearson kindly agreed to revert the rights; as soon as I have their formal letter I will release the book.
Nurse to antivax patient she is treating for Covid in hospital: "You refused the vaccine because you didn't trust the contents. Now, do you have any idea of the contents of the far worse stuff I have injected into your body these past days? Do you even know *what* I injected?"
(1/2) It is much harder to teach OO programming today than it used to be because of 30 years of brainwashing: plainly wrong views of OO with grave misunderstandings that found their way into the dominant ones . You have to unteach first. Example from yesterday:
@sfeldman
Wrong understanding of OO principles, already promoted by Java. Eiffel enforces the proper methodology. I analyze the concepts in section 4 (in particular 4.4) of "Right and Wrong: Ten Choices in Language Design", .
When preparing to give a workshop on technical writing, found this really flattering article about some of my books and my writing: . Thanks,
@akosma
(Adrian Kosmaczewski)!
Top journal paper, four reviews:
- One ACCEPT.
- One MINOR REVISION
(with comment: "I find the work to be exceptionally impressive, addressing a crucial aspect of contemporary software engineering" - thanks).
- One MAJOR REVISION.
- One REJECT.
Yes, we did it!
Appalled by the lack of indignation at Trump’s ignoble — no other word —calling Jan. 6 rioters (sentenced through proper judicial processes) “hostages”. What an insult to the actual Israeli hostages going through horrors. Why aren’t people calling out his boundless depravity?
(2/2) For the templates, go to the book page at , which also links to the chapter with the Standard Plan. Click the last entry on the left, "Supplementary material". There will be more supplementary stuff in the future, including lecture slides & videos).
(1/2) My latest book, the "Handbook of Requirements and Business Analysis" (Springer), provides a new Standard Plan for requirements, made of 4 parts, the 4 PEGS (Project, Environment, Goals, System). Thanks to Jean-Michel Bruel templates are now available in various formats.
I have made available on the Web the Axiomatic Semantics chapter of my old book "Introduction to the Theory of Programming Languages". I think it remains a reasonable introduction to the topic. See the link at (also for another chapter).
One of the major developments in software engineering is Devops: continuous, integrated development/V&V/deployment, challenging SE principles.
We are organizing a workshop on the topic in March, submission deadline (2-page abstracts OK) Jan. 15. .
Like everyone else, I appreciate my contributions being cited. They not always are, so today I took some time to collect some of those I can think of, with precise and checkable bibliographic references. See here: .
I am giving a talk tomorrow (Wednesday, 17 CET, 8 AM PDT) on "The Beauty of Software". Trying to analyze this elusive notion, as important in science as in the arts. Free registration (on SIT site). Information and abstract at .
(Citation from SBF continued, ellipsis is not by me but by Washington Post.) “If you wrote a book, you f---ed up, and it should have been a six-paragraph blog post.”
I always thought there was something wrong with me, now I know what it is. Thanks! 2/2
LASER 2020 in Elba Island: DevOps, Microservices and more, first week of June-- Program released and early registration open. Speakers include Cockroft (Amazon), Casati /. Govindarajan (ServiceNow & U. Trento), , Issarny (INRIA), Meijer (Facebook), di Nitto (Milan), me.
Memory: an evening's discussion with Salman Rushdie at Chaucer's, iconic bookstore in Santa Barbara (). No visible security. Respectful, considerate audience. Affable, smiling guest, full of tolerance and humanity.
I have a Twitter feed on my personal home page at . All the right HTML, has worked for years. Not any more.
The message is misleading ("Nothing to see here -- yet"), as if I hadn't ever tweeted.
Some genius must be hard at work "improving" Twitter.
Also available on the book page at are a chapter on how to write requirements, a sample section on object-oriented requirements and the Preface summarizing the entire approach.
Other pages for the Handbook of Requirements and Business Analysis: Springer page at (with access to digital version); Amazon US ; Amazon Germany . (Also at Amazon France but almost 20 euros more, no idea why.)
Schedule posted for LASER AI + ML + SE, Elba, June. Speakers: Shai Ben-David (Waterloo), Lionel Briand (Luxembourg), Pascal Fua (EPFL), Erik Meijer (Facebook), Tim Menzies (NC State) and I. June 1-9 in magnificent Hotel del Golfo in Elba Island, Italy.
Optimizing test cases automatically generated from failed proofs: new paper presented tomorrow at IWSF, preprint available, see presentation, summary and link at . Proofs and tests are not competitors in software verification, they are partners!
Sometimes at a concert in a hall that is too flat (as it was not really meant for that), people seated two rows ahead of you can hide the show. In this case, though, they were conveniently not too tall (Saint-Louis des Invalides, 12 March 2024, ).
A new detailed survey paper: Formality in Software Requirements. The paper covers 22 different methods and notations using a running examples (Landing Gear System). A draft is available at
From our "The kind of correction we hope we'll never have to make" department: The Guardian, (home to some of the worst damage to the English language).
Too bad though -- for a few hours, the idea of a PhD in etymology sounded appealing. Ethylating even.
Publication announcement: survey on requirements techniques, formal and non-formal, just published in (ACM) Computing Surveys, June 2021, pages 1-36. Available in the ACM Digital Library, also as preprint on my page; see link, abstract & details at .
Tomorrow (Thursday) noon EDT / 18 CET, I am giving a talk for ACM on some of my current work on requirements, "The four PEGS of requirements engineering". Free registration. Abstract and link at .
1/3 Restarting workshops at the Villebrumier LASER center, with FISEE 2023, Frontiers In Software Engineering Education, 23-25 January 2023. The call for papers is out. Proceedings (post-conference) in Springer-LNCS. Keynotes by Carlo Ghezzi (Milan) and Armando Fox (Berkeley) 1/3
New video lecture: distances, invariants and recursion - exploring connections between practical algorithms, the underlying theory, programming techniques and programming principles
2/3 An excellent place to discuss issues of SE education. Theme: Education for Technology and Technology for Education. Participation by invitation; best way to get an invitation is to submit an extended abstract (2-5 pages), deadline 20 November, so there's still time. 2/3
@vardi
Sorry but -- neither funny nor helpful. Seeding general contempt for politicians only plays into the hands of populists and extremists. There are better politicians, worse politicians and terrible politicians. Lumping them all together is irresponsible, & harms the good ones.
One of the contributions of the requirements Handbook is a standard plan for requirements, a replacement for the time-honored but obsolete IEEE 1998 plan. It is described in chapter 3 of the book, which is freely usable and accessible from .
Research is tough, and we must explain sophisticated reasoning again and again to peers, students, the general public and others who struggle to follow.
I have a solution. Why don't we just decide that correlation, after all, *IS* causation? Simple, cheap, makes life easier.
Giving keynote at Acronis conference in Sofia tomorrow: . This is a security conference and I am not a security expert, but my take will be to address the software engineering aspects of security.
This Wednesday (29 Dec) at INRIA in Nice: I am giving talk on the Eiffel method. General presentation describing the unified view of software construction embodied in Eiffel, from modeling to requirements to design, implementation and verification.
Getting a program right, in nine episodes (we fumble through no less than five wrong variants and then try to take a more serious approach, getting to a program proved correct)
(2/3) (not /2) In a question-and-answer session a student asked about composition and I asked what he meant by this word. His answer: "I mean as in creating objects as instance variables in another class. This is a method that is mostly chosen over inheritance in oop". Aargh!
I have included an errata list for my *Handbook of Requirements and Business Analysis" (Springer) together with other material at . Only 3 so far-- not too bad (although embarrassingly one is in the first paragraph!). I am not naïve -- there must be more.
Talk on requirements at University of California, Santa Barbara tomorrow (Friday, 14). The title is "A Comprehensive Approach to Requirements Engineering". Abstract and details at .
« The epoch-making discovery of modern dictatorships is the invention of the loud lie, based on the psychologically correct assumption that people will believe a shout when they doubt speech. »
Joseph Roth, 1934.
From a font of wisdom, Sam Bankman-Fried, : “I would never read a book. I don’t want to say no book is ever worth reading, but I actually do believe something pretty close to that. …” 1/2