The author obtained the MSc, PhD and habilitation degrees from the University of Warsaw, where he was a professor of informatics at the Faculty of Mathematics, Informatics and Mechanics. He spent some years in other universities, like Carnegie-Mellon, Oxford, Ben-Gurion, Humboldt, as visiting professor or a research fellow. Now he is a professor of the Vistula University and professor emeritus of the University of Warsaw. His work encompasses formal and programming languages, compilers, theory of computation, parallel and distributed processing.