January 27, 2022 - 6:00 pm CET

Virtual Meetup – Andrzej Blikle

Abstract

It is a well-known fact that users of software applications have to accept disclaimers, like, e.g.:

There is no warranty for the program to the extent permitted by applicable law.  Except when otherwise stated in writing, the copyright holders and/or other parties provide the program “as is” without warranty of any kind….

In the author’s opinion, this situation results from a lack of mathematical tools that would allow programmers to take responsibility for their programs. This problem has two sources:

  • Programming languages do not have mathematical semantics since in building them, we first define their syntaxes and only later — if at all — their semantics. Additionally, semantics are usually reduced to describing a compiler’s behavior.
  • We first write a program and then test it or (rarely) prove its correctness. Has anybody seen an engineer who first builds a bridge and only later performs all necessary calculations?

In our approach, we reverse both these orders:

  • In designing a language, we first describe the meanings of programs, called denotations, and derive their syntaxes later. This method guarantees that we get the semantics of the language as a byproduct of its design process.
  • Once we are given a language with mathematical semantics, we can build program construction rules that guarantee program correctness. 

A current state-of-the-art of the project is the following:

  • A book in statu nascendi A Denotational Engineering of Programming Languages is available on: https://www.moznainaczej.com.pl/what-has-been-done/the-book. The method is illustrated by showing a development of a language Lingua (this name has been chosen to commemorate the author’s research stay in 1969 in Pisa, Italy).
  • The project’s main ideas were subject to two courses offered in 2019-2021 at the Department of Mathematics, Informatics, and Mechanics of Warsaw University.
  • Students of one of these courses have developed a simple interpreter of Lingua.

Biography

Andrzej Blikle is a Professor (Ph.D. and Dr. Sci.) in mathematics and computer science at the Polish Academy of Science. In the years 1962-1990, he was involved in research and teaching at the universities in Warsaw (Poland), Waterloo (Canada), Berkeley (USA), Lyngby and Copenhagen (Denmark), Linköping (Sweden). More than 100 scientific seminars were given in almost all European countries, the USA, Canada, and Japan. Founding member, past president, and today an honorary member of The Polish Information Processing Society, and a member of Academia Europaea.

In 1990-2010 president of the board and CEO of A.Blikle Ltd., a family company established in 1869. In that time, the company grew from one shop in Warsaw to 23 shops in Warsaw and larger cities of Poland. 

Since 2008 Andrzej Blikle has run his one-person consultancy firm specializing in teaching and implementing Total Quality Management and recently Teal Selforganization in companies and institutions. He also teaches several MBA, Executive MBA, and DBA (Doctor of Business Administration) postgraduate courses.

Since 2018 Andrzej Blikle has been back in research, launching a project Denotational Engineering of Programming Languages described and documented on his site: http://www.moznainaczej.com.pl/denotational-engineering/denotational-engineering-eng

How to join the event:

To avoid security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. Follow these steps:

  1. Register yourself to the community on the Homepage
  2. You will receive a confirmation email containing all the information about joining the meeting.
  3. Add to your calendar
  4. Enjoy the talk and, if you feel like, discuss further on the community forum