Modula-2
Modula-2 is a structured, procedural programming language developed between 1977 and 1985/8 by Niklaus Wirth at ETH Zurich. It was created as the language for the operating system and application software of the Lilith personal workstation. It was later used for programming outside the context of the Lilith. Wirth viewed Modula-2 as a successor to his earlier programming languages Pascal and Modula. The main concepts are: # The module as a compiling unit for separate compiling # The coroutine as the basic building block for concurrent processes # Types and procedures that allow access to machine-specific data The language design was influenced by the Mesa language and the Xerox Alto, both from Xerox PARC, that Wirth saw during his 1976 sabbatical year there. Page 4. The computer magazine ''Byte'' devoted the August 1984 issue to the language and its surrounding environment. Wirth created the Oberon series of languages as the successor to Modula-2, while others (particularl ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Modula-2+
Modula-2+ is a programming language descended from the Modula-2 language. It was developed at DEC Systems Research Center (SRC) and Acorn Computers Ltd Research Centre in Palo Alto, California. Modula-2+ is Modula-2 with exceptions and threads. The group which developed the language was led by P. Rovner in 1984. Main differences with Modula-2: * Concurrency; different than the concept of coroutine Coroutines are computer program components that allow execution to be suspended and resumed, generalizing subroutines for cooperative multitasking. Coroutines are well-suited for implementing familiar program components such as cooperative task ..., which was already part of Modula-2 *Exception handling *Garbage collection (computer science), Garbage collection Implementations Modula-2+ was used to develop Topaz, an operating system for the SRC DEC Firefly shared memory asymmetric multiprocessing workstation. Most Topaz applications were written in Modula-2+, which grew along wi ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Lilith (computer)
The DISER Lilith is a custom built workstation computer based on the Advanced Micro Devices (AMD) 2901 bit slicing processor, created by a group led by Niklaus Wirth at ETH Zurich. Reprint. Reprint. The project began in 1977, and by 1984 several hundred workstations were in use. It has a high resolution full page portrait oriented cathode-ray tube display, a mouse, a laser printer interface, and a computer networking interface. Its software is written fully in Modula-2 and includes a relational database program named Lidas. The Lilith processor architecture is a stack machine. Citing from Sven Erik Knudsen's contribution to "The Art of Simplicity": "Lilith's clock speed was around 7 MHz and enabled Lilith to execute between 1 and 2 million instructions (called M-code) per second. (...) Initially, the main memory was planned to have 65,536 16-bit words memory, but soon after its first version, it was enlarged to twice that capacity. For regular Modula-2 programs however, only the ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
![]() |
Niklaus Wirth
Niklaus Emil Wirth ( IPA: ) (15 February 1934 – 1 January 2024) was a Swiss computer scientist. He designed several programming languages, including Pascal, and pioneered several classic topics in software engineering. In 1984, he won the Turing Award, generally recognized as the highest distinction in computer science, "for developing a sequence of innovative computer languages". Early life and education Niklaus Emil Wirth was born in Winterthur, Switzerland, on 15 February 1934. He was the son of Hedwig (née Keller) and Walter Wirth, a high school teacher. Wirth studied electronic engineering at the Federal Institute of Technology, Zürich (ETH Zürich) from 1954 to 1958, graduating with a Bachelor of Science (B.S.) degree. In 1960, he earned a Master of Science (M.Sc.) from Université Laval in Quebec. Then in 1963, he was awarded a PhD in electrical engineering and computer science (EECS) from the University of California, Berkeley, supervised by computer design pione ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
Oberon (programming Language)
Oberon is a general-purpose programming language first published in 1987 by Niklaus Wirth and the latest member of the Wirthian family of ALGOL-like languages ( Euler, ALGOL W, Pascal, Modula, and Modula-2). Oberon was the result of a concentrated effort to increase the power of Modula-2, the direct successor of Pascal, and simultaneously to reduce its complexity. Its principal new feature is the concept of data type extension of record types. It permits constructing new data types on the basis of existing ones and to relate them, deviating from the dogma of strict static typing of data. Type extension is Wirth's way of inheritance reflecting the viewpoint of the parent site. Oberon was developed as part of the implementation of an operating system, also named Oberon at ETH Zurich in Switzerland. The name was inspired both by the Voyager space probe's pictures of the moon of the planet Uranus, named Oberon, and because Oberon is famous as the king of the elves. Obero ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Modula-3
Modula-3 is a programming language conceived as a successor to an upgraded version of Modula-2 known as Modula-2+. It has been influential in research circles (influencing the designs of languages such as Java, C#, Python and Nim), but it has not been adopted widely in industry. It was designed by Luca Cardelli, James Donahue, Lucille Glassman, Mick Jordan (before at the Olivetti Software Technology Laboratory), Bill Kalsow and Greg Nelson at the Digital Equipment Corporation (DEC) Systems Research Center (SRC) and the Olivetti Research Center (ORC) in the late 1980s. Modula-3's main features are modularity, simplicity and safety while preserving the power of a systems-programming language. Modula-3 aimed to continue the Pascal tradition of type safety, while introducing new constructs for practical real-world programming. In particular Modula-3 added support for generic programming (similar to templates), multithreading, exception handling, garbage collection, o ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Mesa (programming Language)
Mesa is a programming language developed in the mid 1970s at the Xerox Palo Alto Research Center in Palo Alto, California, United States. The language name was a pun based upon the programming language catchphrases of the time, because Mesa is a "high level" programming language. Mesa is an ALGOL-like language with strong support for modular programming. Every library module has at least two source files: a ''definitions'' file specifying the library's interface plus one or more ''program'' files specifying the implementation of the procedures in the interface. To use a library, a program or higher-level library must "import" the definitions. The Mesa compiler type-checks all uses of imported entities; this combination of separate compilation with type-checking was unusual at the time. Mesa introduced several other innovations in language design and implementation, notably in the handling of software exceptions, thread synchronization, and incremental compilation. Mesa ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Pascal (programming Language)
Pascal is an imperative and procedural programming language, designed by Niklaus Wirth as a small, efficient language intended to encourage good programming practices using structured programming and data structuring. It is named after French mathematician, philosopher and physicist Blaise Pascal. Pascal was developed on the pattern of the ALGOL 60 language. Wirth was involved in the process to improve the language as part of the ALGOL X efforts and proposed a version named ALGOL W. This was not accepted, and the ALGOL X process bogged down. In 1968, Wirth decided to abandon the ALGOL X process and further improve ALGOL W, releasing this as Pascal in 1970. On top of ALGOL's scalars and arrays, Pascal enables defining complex datatypes and building dynamic and recursive data structures such as lists, trees and graphs. Pascal has strong typing on all objects, which means that one type of data cannot be converted to or interpreted as another without explicit conversions ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
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 system, used for grouping sets of related declarations into program units; hence the name ''Modula''. The language is defined in a report by Wirth called ''Modula. A language for modular multiprogramming'' published 1976. Modula was first implemented by Wirth on a PDP-11. Very soon, other implementations followed, most importantly, the compilers developed for University of York Modula, and one at Philips Laboratories named PL Modula, which generated code for the LSI-11 microprocessor A microprocessor is a computer processor (computing), processor for which the data processing logic and control is included on a single integrated circuit (IC), or a small number of ICs. The microprocessor contains the arithmetic, logic, a . ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
![]() |
Imperative Programming
In computer science, imperative programming is a programming paradigm of software that uses Statement (computer science), statements that change a program's state (computer science), state. In much the same way that the imperative mood in natural languages expresses commands, an imperative program consists of command (computing), commands for the computer to perform. Imperative programming focuses on describing ''how'' a program operates step by step (with general order of the steps being determined in source code by the placement of statements one below the other), rather than on high-level descriptions of its expected results. The term is often used in contrast to declarative programming, which focuses on ''what'' the program should accomplish without specifying all the details of ''how'' the program should achieve the result. Procedural programming Procedural programming is a type of imperative programming in which the program is built from one or more procedures (also termed s ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
Modular Programming
Modular programming is a software design technique that emphasizes separating the functionality of a program into independent, interchangeable modules, such that each contains everything necessary to execute only one aspect or "concern" of the desired functionality. A module interface expresses the elements that are provided and required by the module. The elements defined in the interface are detectable by other modules. The implementation contains the working code that corresponds to the elements declared in the interface. Modular programming is closely related to structured programming and object-oriented programming, all having the same goal of facilitating construction of large software programs and systems by decomposition into smaller pieces, and all originating around the 1960s. While the historical usage of these terms has been inconsistent, "modular programming" now refers to the high-level decomposition of the code of an entire program into pieces: structured progra ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
Zonnon
Zonnon is a general purpose programming language in the line or family of the preceding languages Pascal, Modula, and Oberon. Jürg Gutknecht 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 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) working with Gutknecht (ETH, Zürich) and Dr. Eugene Zueff (Евгений Зуев) (Moscow State University). The first book about Zonnon was published by the N. I. Lobachevsky State University of Nizhny Novgorod (a.k.a., Nizhni Novgorod State University). [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |
|
![]() |
Ada (programming Language)
Ada is a structured, statically typed, imperative, and object-oriented high-level programming language, inspired by Pascal and other languages. It has built-in language support for '' design by contract'' (DbC), extremely strong typing, explicit concurrency, tasks, synchronous message passing, protected objects, and non-determinism. Ada improves code safety and maintainability by using the compiler to find errors in favor of runtime errors. Ada is an international technical standard, jointly defined by the International Organization for Standardization (ISO), and the International Electrotechnical Commission (IEC). , the standard, ISO/IEC 8652:2023, is called Ada 2022 informally. Ada was originally designed by a team led by French computer scientist Jean Ichbiah of Honeywell under contract to the United States Department of Defense (DoD) from 1977 to 1983 to supersede over 450 programming languages then used by the DoD. Ada was named after Ada Lovelace (1815–185 ... [...More Info...] [...Related Items...] OR: [Wikipedia] [Google] [Baidu] |