[an error occurred while processing this directive] Objective Modula-2 · Compiler [an error occurred while processing this directive]

Objective Modula-2

Latest Update: July 24, 2010

Objective Modula-2 Compiler Sources

The Modula-2 Webring

Visitor Map

Visitor Map - Click to view visits

Objective Modula-2 Compiler

The Objective Modula-2 compiler is a cross-platform object oriented Modula-2 compiler with native support for Cocoa (Mac OS X), Cocoa Touch (iPhone) and GNUstep (*nix).

Experimental translators for translating early drafts of Objective Modula-2 to Objective-C have been under development since 2006. These translators were single pass pre-processors that produced output by expanding text-templates using a general purpose template engine. They were not intended for software development but for testing ideas and concepts for the emerging language extensions for Cocoa and GNUstep support.

As the language definition has matured, a new compiler, in part derived from an earlier translator, is being developed with the aim to produce a reference implementation for use by the general public. This compiler is written by hand in the C language in order to maximise portability. Once completed, the compiler will consist of a recursive descent parser that builds an abstract syntax tree, and two code generators, one for Objective-C source to be post-compiled by an Objective-C compiler, the other for LLVM IR assembly to be post-processed by LLVM.

Source code for the compiler is being made available under an amended BSD license. However, source files which have an impact on the syntax are currently released under a peer review license. These files will be relicensed under the amended BSD license when the grammar has been finalised and a working front end for the finalised grammar has been completed.

Aliases and build parameters

Filenames and file extensions

Memory management and key value storage

Tables of reserved words, pragmas, built-in identifiers and tokens

Lexical analysis

Syntax analysis

Code generation

Driver program


Utility to calculate hashes for the symbol table

Utility to generate FIRST and FOLLOW set initialisers for the parser



Statistics for published source files

The Modula-2 Webring

Web sites and web pages related to the Modula-2 programming language.

List all sites | Previous site | Next site | Random site | Join this webring