Zonnon
   HOME

TheInfoList



OR:

Zonnon is a general purpose
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
in the line or family of the preceding languages
Pascal Pascal, Pascal's or PASCAL may refer to: People and fictional characters * Pascal (given name), including a list of people with the name * Pascal (surname), including a list of people and fictional characters with the name ** Blaise Pascal, Fren ...
,
Modula The Modula programming language is a descendant of the Pascal language. It was developed in Switzerland, at ETH Zurich, in the mid-1970s by Niklaus Wirth, the same person who designed Pascal. The main innovation of Modula over Pascal is a module ...
, and
Oberon Oberon () is a king of the fairies in medieval and Renaissance literature. He is best known as a character in William Shakespeare's play ''A Midsummer Night's Dream'', in which he is King of the Fairies and spouse of Titania, Queen of the Fair ...
.
Jürg Gutknecht Jürg Gutknecht (born 3 January 1949 in Bülach) is a Swiss computer scientist. He developed, with Niklaus Wirth, the programming language Oberon and the corresponding operating system Oberon. Biography Jürg Gutknecht was full professor in th ...
is the author. Its conceptual model is based on objects, definitions, implementations, and modules. Its computing model is concurrent, based on active objects which interact via syntax controlled dialogs. The language is being developed at
ETH Zürich (colloquially) , former_name = eidgenössische polytechnische Schule , image = ETHZ.JPG , image_size = , established = , type = Public , budget = CHF 1.896 billion (2021) , rector = Günther Dissertori , president = Joël Mesot , ac ...
Institute for Computer Systems by Professor Jürg Gutknecht. Zonnon introduces the concept of 'active objects' which are used to represent real world concurrent objects within computer programs. The Zonnon Language Report was written by Brian Kirk (director at Robinsons Associates), and David Lightfoot (
Oxford Brookes University Oxford Brookes University (formerly known as Oxford Polytechnic (United Kingdom), Polytechnic) is a public university, public university in Oxford, England. It is a new university, having received university status through the Further and High ...
) working with Gutknecht (ETH, Zürich) and Dr. Eugene Zueff (Евгений Зуев) (
Moscow State University M. V. Lomonosov Moscow State University (MSU; russian: Московский государственный университет имени М. В. Ломоносова) is a public research university in Moscow, Russia and the most prestigious ...
). The first book about Zonnon was published by the
N. I. Lobachevsky State University of Nizhny Novgorod The National Research State University of Nizhny Novgorod named after N.I. Lobachevsky, UNN ( Russian: Нижегородский национа́льный иссле́довательский госуда́рственный универси ...
(a.k.a., Nizhni Novgorod State University).Book about Zonnon Language (in Russian)
" ()
N. I. Lobachevsky State University of Nizhny Novgorod The National Research State University of Nizhny Novgorod named after N.I. Lobachevsky, UNN ( Russian: Нижегородский национа́льный иссле́довательский госуда́рственный универси ...
. Retrieved on May 30, 2013.


Overview

Zonnon is a member of the Pascal family of languages, which has two beneficial consequences: a) it is a general purpose language and b) it is immediately familiar to programmers who have used Pascal, Modula-2, and Oberon. Most Pascal programs from the domain of algorithms and data structures are successfully compiled by the Zonnon
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
after a few minor modifications. However, from the perspective of ''
programming in the large In software engineering, programming in the large and programming in the small refer to two different aspects of writing software, namely, designing a larger system as a composition of smaller parts, and creating those smaller parts by writing li ...
'', Zonnon is much more elaborate compared to its predecessors. Zonnon has four different kinds of program units: objects, modules, definitions, and implementations. The first two are instantiated at runtime, the third is a
compile time In computer science, compile time (or compile-time) describes the time window during which a computer program is compiled. The term is used as an adjective to describe concepts related to the context of program compilation, as opposed to concept ...
unit of abstraction, and the fourth is a unit of composition. Here is a brief characterization: *
Object Object may refer to: General meanings * Object (philosophy), a thing, being, or concept ** Object (abstract), an object which does not exist at any particular time or place ** Physical object, an identifiable collection of matter * Goal, an ...
is a self-contained run-time program component. It can be instantiated dynamically under program control in arbitrary multiplicity. *
Module Module, modular and modularity may refer to the concept of modularity. They may also refer to: Computing and engineering * Modular design, the engineering discipline of designing complex devices using separately designed sub-components * Mo ...
can be considered as a singleton object which creation is controlled by the system. In addition, a module may act as a container of logically connected
abstract data type In computer science, an abstract data type (ADT) is a mathematical model for data types. An abstract data type is defined by its behavior (Semantics (computer science), semantics) from the point of view of a ''User (computing), user'', of the dat ...
s, operators, and structural units of the runtime environment. In combination with the import relation, the module construct is a powerful system structuring tool. * Definition is an abstract view on an object (or on a module) from a certain perspective. It is a facet of the object or, in other words, an abstract presentation of one or more of its services. * Implementation typically provides a possibly partial default implementation of the corresponding definition. It is a unit of reuse and composition that is aggregated into the state space of an object (or module), either at compile time or at runtime.


Compositional model

Zonnon uses a compositional inheritance model based on aggregation. Typically, an object (or module) is composed of several functional components, each of them presenting itself to clients in the form of an abstract definition. The set of definitions plus the object’s intrinsic interface (that is the set of all public elements of the object) constitutes the interface between the object and its clients.


Concurrency model

Zonnon allows adding behavior to objects (and modules). For this purpose, the notion of active object was imported from the Active Oberon language and generalized towards a unified model of hierarchic activities. Activities are encapsulated threads that come in two flavors: local activities and agent activities.


Local activities

Local activities express intrinsic object dynamics. A typical context is a block of statements representing the “launch logic” for a set of mutually independent activities, with the assumption that the end of the block acts as a barrier that cannot be passed before all activities have terminated.


Agent activities

Agent activities control the interoperability of objects in terms of formal dialogs. Each agent activity within a “callee” object serves as a template of a formal dialog between some caller and the callee. Agent activities typically implement a parser for some predefined syntax that constitutes a kind of contract between the two communication partners. Formal dialogs are a generalization of asynchronous method calls. This is reflected in the form of a syntax that is borrowed from ordinary method calls.


Notes


References

* Gutnecht, Jürg and Eugene Zueff (Computer Systems Institute,
ETH Zürich (colloquially) , former_name = eidgenössische polytechnische Schule , image = ETHZ.JPG , image_size = , established = , type = Public , budget = CHF 1.896 billion (2021) , rector = Günther Dissertori , president = Joël Mesot , ac ...
, Switzerland).
Zonnon for .NET - A Language and Compiler Experiment
"
ArchiveSpringer link
in: Böszörményi, László and Peter Schojer (editors). ''Modular Programming Languages: Joint Modular Languages Conference, JMLC 2003,
Klagenfurt Klagenfurt am WörtherseeLandesgesetzblatt 2008 vom 16. Jänner 2008, Stück 1, Nr. 1: ''Gesetz vom 25. Oktober 2007, mit dem die Kärntner Landesverfassung und das Klagenfurter Stadtrecht 1998 geändert werden.'/ref> (; ; sl, Celovec), usually ...
,
Austria Austria, , bar, Östareich officially the Republic of Austria, is a country in the southern part of Central Europe, lying in the Eastern Alps. It is a federation of nine states, one of which is the capital, Vienna, the most populous ...
, August 25–27, 2003, Proceedings''.
Springer Springer or springers may refer to: Publishers * Springer Science+Business Media, aka Springer International Publishing, a worldwide publishing group founded in 1842 in Germany formerly known as Springer-Verlag. ** Springer Nature, a multinationa ...
, September 29, 2003. , 9783540407966.


Further reading

;Independent sources * Kasyanov, Viktor Nikolaevich (Виктор Николаевич Касьянов). ''Язык программирования Zonnon: учебное пособие'' ("The Zonnon Programming Language. Student's Manual.").
Novosibirsk State University Novosibirsk State University is a public research university located in Novosibirsk, Russia. The university was founded in 1958, on the principles of integration of education and science, early involvement of students with research activities an ...
(НГУ), 2010. , 9785943568855
Google Books entryCatalog entry, listed on page 7ArchiveArchive
* Kasyanova, Elena Viktorovna (Елена Викторовна Касьянова).
ADAPTIVE METHODS AND TOOLS FOR SUPPORT OF DISTANCE EDUCATION IN PROGRAMMING
" ("АДАПТИВНЫЕ МЕТОДЫ И СРЕДСТВА ПОДДЕРЖКИ ДИСТАНЦИОННОГО ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ")
Archive
" ("АДАПТИВНЫЕ МЕТОДЫ И СРЕДСТВА ПОДДЕРЖКИ ДИСТАНЦИОННОГО ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ")
Archive
Siberian Division of the
Russian Academy of Sciences The Russian Academy of Sciences (RAS; russian: Росси́йская акаде́мия нау́к (РАН) ''Rossíyskaya akadémiya naúk'') consists of the national academy of Russia; a network of scientific research institutes from across t ...
A. P. Ershov Institute of Informatics Systems (Институт cистем информатики им. А.П. Ершова СО РАН). Edited by prof. V. N. Kasyanov
English summaryArchiveArchive
* Kasyanova, E.V.
The Programming Language Zonnon for .NET Framework
" ("ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon ДЛЯ ПЛАТФОРМЫ .NET" "The Zonnon Programming Language for the .NET Platform")
Archive
" ("ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon ДЛЯ ПЛАТФОРМЫ .NET" "The Zonnon Programming Language for the .NET Platform")
Archive
A. P. Ershov Institute of Informatics Systems,
Russian Academy of Sciences The Russian Academy of Sciences (RAS; russian: Росси́йская акаде́мия нау́к (РАН) ''Rossíyskaya akadémiya naúk'') consists of the national academy of Russia; a network of scientific research institutes from across t ...
, Siberian Branch
English summaryArchive
* Kasyanova, E.V.
Introductory Course of Programming Based on the Zonnon Language
" (ВВОДНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА БАЗЕ ЯЗЫКА Zonnon)
Archive
" (ВВОДНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА БАЗЕ ЯЗЫКА Zonnon)
Archive
A. P. Ershov Institute of Informatics Systems
English summaryArchive
*
От Паскаля к языку Zonnon: реализация новых идей на платформе .NET
" ("From Pascal to Zonnon: Implementation of New Ideas on the .NET Platform")
Archive
" ("From Pascal to Zonnon: Implementation of New Ideas on the .NET Platform")
Archive
''
PC World ''PC World'' (stylized as PCWorld) is a global computer magazine published monthly by IDG. Since 2013, it has been an online only publication. It offers advice on various aspects of PCs and related items, the Internet, and other personal tech ...
'' ('' Мир ПК''). 2003, No. 9. Available at Otkrytye Sistemy ( Открытые системы, "Open Systems")
Alternate linkArchiveArchive
;Sources from author and/or contributors * Gutknecht, Jürg, Vladimir Romanov, and Eugene Zueff.
The Zonnon Project: A .NET Language and Compiler Experiment
"
Archive
"
Archive
".NET Technologies 2005 conference proceedings." Copyright UNION Agency – Science Press, Plzen,
Czech Republic The Czech Republic, or simply Czechia, is a landlocked country in Central Europe. Historically known as Bohemia, it is bordered by Austria to the south, Germany to the west, Poland to the northeast, and Slovakia to the southeast. The ...
. . * Zouev, Eugene.
Project Zonnon: The Language, The Compiler, The Environment
"
Archive
"
Archive
Bergen Language Design Laboratory.
Bergen University The University of Bergen ( no, Universitetet i Bergen, ) is a research-intensive state university located in Bergen, Norway. As of 2019, the university has over 4,000 employees and 18,000 students. It was established by an act of parliament in 194 ...
. 19 May 2010. * Gutknecht, Jürg and Roman R. Mitin.
Project Zonnon: A Compositional Language for Distributed Computing
"
IEEE Computer Society The Institute of Electrical and Electronics Engineers (IEEE) is a 501(c)(3) professional association for electronic engineering and electrical engineering (and associated disciplines) with its corporate office in New York City and its operati ...
Xplore Xplore may refer to: Science and technology * IEEE Xplore, an online database of IEEE research publications * XploRe, a statistical software environment * Xplore Technologies, designer, marketer and manufacturer of rugged tablet computers * Xplore ...
. Composition-Based Software Systems, 2008. ICCBSS 2008. Seventh International Conference on Composition-Based Software Systems (ICCBSS 2008). Madrid, Spain. 25–29 February 2008. p. 148 - 153. Print . DOI 10.1109/ICCBSS.2008.10. INSPEC Accession Number 9905083. * Gutknecht, Jürg and Eugene Zueff (Editors: Brian Kirk and David Lightfoot).
Zonnon Language Report
"
Archive
"
Archive
Swiss Federal Institute of Technology Zurich (colloquially) , former_name = eidgenössische polytechnische Schule , image = ETHZ.JPG , image_size = , established = , type = Public , budget = CHF 1.896 billion (2021) , rector = Günther Dissertori , president = Joël Mesot , ac ...
. December 2005. * Gutknecht, Jürg, Roman Mitin, Nikolai Zolotykh, and Nina Gonova.
Implementing Mathematical Data Types on Top of .NET
"
Archive
"
Archive
* Gutknecht, Jürg and Eugene Zueff.
Zonnon Language Experiment, or How to Implement a Non-Conventional Object Model for .NET
"
Archive
"
Archive
* Kirk, Brian, David Lightfoot, and Jürg Gutknecht.
The Concepts of Zonnon A language for systems engineering with Modules, Objects and Concurrency
"
Archive
"
Archive
* Mitin, R. O. (Р.О. Митин)
ЯЗЫК ПРОГРАММИРОВАНИЯ Zonnon (ОСНОВЫ)
" ("The Zonnon Programming Language (Overview). Student's Manual")
Archive
" ("The Zonnon Programming Language (Overview). Student's Manual")
Archive
N. I. Lobachevsky State University, 2004. * Zueff, Eugene A
Russian-language PowerPoint slides
from the: Zonnon Compiler: Architecture, Integration, Technology. Microsoft Conference, June 15–17, 2003, Moscow.
Archive
from the: Zonnon Compiler: Architecture, Integration, Technology. Microsoft Conference, 15–17 June 2003, Moscow.
Archive


External links

* *
Введение в методы программирования на основе технологий Microsoft .NET
"
N. I. Lobachevsky State University of Nizhny Novgorod The National Research State University of Nizhny Novgorod named after N.I. Lobachevsky, UNN ( Russian: Нижегородский национа́льный иссле́довательский госуда́рственный универси ...
. {{Common Language Infrastructure Procedural programming languages Oberon programming language family Object-oriented programming languages Systems programming languages .NET programming languages