Modula-2
E11139
Modula-2 is a systems programming language designed by Niklaus Wirth that extends Pascal with modules, concurrency features, and low-level facilities for structured, efficient software development.
All labels observed (12)
How this entity was disambiguated
This entity first appeared as the object of triple T95830 — resolving that mention is where its identity was fixed. The disambiguator weighed these candidate entities and picked the highlighted one (or “None”, minting a new entity). This is how homonymy is resolved: the same surface form can point to different entities.
Target entity: Modula-2 Context triple: [Pascal, influenced, Modula-2]
-
A.
Modula-3
Modula-3 is a systems programming language designed as a safer, more modern successor to Modula-2, emphasizing strong typing, modularity, and support for concurrency and garbage collection.
-
B.
Turbo Pascal
Turbo Pascal is a once-popular integrated development environment and compiler for the Pascal programming language, known for its fast compilation speed and influence on early PC software development.
-
C.
Pascal
Pascal is a high-level, strongly typed procedural programming language designed by Niklaus Wirth in the late 1960s, widely used for teaching structured programming and data structuring concepts.
-
D.
ALGOL W
ALGOL W is an early procedural programming language developed in the 1960s as a successor to ALGOL 60, notable for introducing features that strongly influenced the design of Pascal.
-
E.
GNU Pascal
GNU Pascal is a free, open-source Pascal compiler that is part of the GNU project and designed to be compatible with various Pascal standards.
- F. None of above. chosen
- G. Unsure - the case is ambiguous/there is not enough information to decide.
Target entity: Modula-2 Target entity description: Modula-2 is a systems programming language designed by Niklaus Wirth that extends Pascal with modules, concurrency features, and low-level facilities for structured, efficient software development.
-
A.
Modula-3
Modula-3 is a systems programming language designed as a safer, more modern successor to Modula-2, emphasizing strong typing, modularity, and support for concurrency and garbage collection.
-
B.
Turbo Pascal
Turbo Pascal is a once-popular integrated development environment and compiler for the Pascal programming language, known for its fast compilation speed and influence on early PC software development.
-
C.
Pascal
Pascal is a high-level, strongly typed procedural programming language designed by Niklaus Wirth in the late 1960s, widely used for teaching structured programming and data structuring concepts.
-
D.
ALGOL W
ALGOL W is an early procedural programming language developed in the 1960s as a successor to ALGOL 60, notable for introducing features that strongly influenced the design of Pascal.
-
E.
GNU Pascal
GNU Pascal is a free, open-source Pascal compiler that is part of the GNU project and designed to be compatible with various Pascal standards.
- F. None of above. chosen
Statements (65)
| Predicate | Object |
|---|---|
| instanceOf |
programming language
ⓘ
systems programming language ⓘ |
| countryOfOrigin | Switzerland ⓘ |
| designedFor |
efficient software development
ⓘ
reliable systems software ⓘ structured software development ⓘ |
| designer | Niklaus Wirth ⓘ |
| developerAffiliation | ETH Zurich ⓘ |
| executionModel | compiled language ⓘ |
| extends | Pascal ⓘ |
| fileExtension | .mod ⓘ |
| firstAppeared | early 1980s ⓘ |
| hasFeature |
WITH statement
ⓘ
concurrency support ⓘ coroutines ⓘ enumerated types ⓘ explicit import and export lists ⓘ explicit interfaces via definition modules ⓘ for loops ⓘ implementation modules ⓘ low-level facilities ⓘ modules ⓘ procedure types ⓘ range-checked array indexing (implementation-dependent) ⓘ record types ⓘ repeat-until loops ⓘ separate compilation ⓘ separate interface and implementation ⓘ set types ⓘ strong static typing ⓘ system-level programming constructs ⓘ type-safe separate compilation units ⓘ variant records ⓘ while loops ⓘ |
| hasKeyword |
BEGIN
ⓘ
DEFINITION ⓘ END ⓘ EXPORT ⓘ IMPLEMENTATION ⓘ IMPORT ⓘ MODULE ⓘ |
| hasStandard | ISO/IEC 10514 ⓘ |
| influenced |
Ada (programming language)
ⓘ
surface form:
Ada (module concepts)
Component Pascal ⓘ Modula-3 ⓘ Oberon ⓘ Oberon-2 ⓘ |
| influencedBy |
Modula-2
self-linksurface differs
ⓘ
surface form:
Modula
Pascal ⓘ |
| memoryModel | manual memory management ⓘ |
| notableImplementation |
Modula-2
self-linksurface differs
ⓘ
surface form:
ETH Zurich Modula-2 compiler
Modula-2 self-linksurface differs ⓘ
surface form:
GNU Modula-2
Mocka Modula-2 ⓘ Modula-2 self-linksurface differs ⓘ
surface form:
Stony Brook Modula-2
|
| paradigm |
imperative programming
ⓘ
modular programming ⓘ structured programming ⓘ |
| standardizedBy |
International Organization for Standardization
ⓘ
surface form:
ISO
|
| supports |
concurrent programming
ⓘ
embedded systems programming ⓘ systems programming ⓘ |
| supportsAbstraction | information hiding via modules ⓘ |
| typingDiscipline |
static typing
ⓘ
strong typing ⓘ |
| yearDesigned | late 1970s ⓘ |
How these facts were elicited
The pipeline generated the facts above by prompting gpt-5.1 with this entity's name + description and the instruction below.
You are a knowledge base construction expert. Given a subject entity and a description of it, return factual statements that you know for the subject as a JSON list of dictionaries(triples), where keys must be "subject", "predicate" and "object". The number of facts may be very high, between 25 to 50 or more, for very popular subjects. For less popular subjects, the number of facts can be very low, like 5 or 10. # Requirements - If you don't know the subject at all, return an empty list. - If the subject is not a named entity, return an empty list. - Include at least one triple where predicate is "instanceOf". - Do not get too wordy. - Separate several objects into multiple triples with one object.
Subject: Modula-2 Description of subject: Modula-2 is a systems programming language designed by Niklaus Wirth that extends Pascal with modules, concurrency features, and low-level facilities for structured, efficient software development.
Referenced by (31)
Full triples — surface form annotated when it differs from this entity's canonical label.