> This work was done in the context of the Pegasus Project at TUD. The goal of this project is to create a fully-fledged natural language programming system, i.e. a programming system which supports writing computer programs in plain natural language, for instance, in English or German. Outgoing from this research, we hope to get deeper insights into human thinking and world perception in general in order to then being able to create new programming languages and improve contemporary programming languages with new features. In this project, we work as well on "pegasus_f" which is a full-fledged naturalistic programming language, i.e. programming language realizing a lot of the features we finde in natural language but (still) having a formal syntax.

action bring (several folders) from (an office) to (an archive){ go to (the office); enter (it), take (the folders) and leave; go to (the archive); search (the right place for (the folders)) and leave (them) (there); go back;}

> We found it essential in (written) natural language that it provides mechanisms to introduce new syntax to the language itself. This syntactic extensibility has been used extensively for a long time in mathematics already – by introducing new symbols as shortcuts for ideas defined in natural language, as well as in formal logic and recently in computer science itself. Consequently, we designed a pattern-definition feature for the pegasus_f language. In addition to that, we found the tools we used for the definition of pegasus_f unsatisfactory as we spend a lot of time on modifying the grammar in a way to make it fit to the parser and then correctly link the so specified syntax with the actual meaning we intended. Eventually, we found the idea of patterns as such so attractive that we decided to design a completely new language which would be based only on the paradigm of patterns, namely π.