Skip to content
MOCKA Modula-2 Compiler System, originally by GMD
Modula-2 Other
  1. Modula-2 99.0%
  2. Other 1.0%
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs readme added Jul 25, 2018
ver1807 moved Jul 31, 2018
ver1808 clean up in progress Jul 31, 2018
.gitattributes tell github to render .def & .mod as Modula-2 Jul 23, 2018 Create Jul 31, 2018 clarification Aug 1, 2018
COPYRIGHT added copyright Jul 15, 2018 Update Jul 31, 2018


MOCKA Modula-2 Compiler System, originally by GMD

Follows the 3rd edition of Wirth's Programming in Modula-2, aka PIM3 [1, 2]


The MOCKA Modula-2 compiler was developed between 1988 and 1992 by the former German National Research Centre for Computer Science (GMD) [3] at its former research lab at the University of Karlsruhe [4]. GMD has since been dissolved and all its research institutes were merged into the Fraunhofer Society.

The MOCKA compiler system was distributed for diverse Unix platforms and architectures as closed source commercial software and included an industrial strength optimiser. The Linux and BSD version of MOCKA with a back end for the Intel x86 architecture but without the optimiser was released open-source under GPL licensing free of charge.

The software in this repository is a derivative of the aforementioned open-source version.

Target Architecture

  • Intel x86 32-bit
  • generates AT&T syntax assembly output

Operating System Support

  • Linux and BSD with Elf executable and linkable format
  • MacOS and Darwin with Mach-O object file format (work in progress)

Language Extensions

  • Conditional compilation directives
  • Lowline _ and dollar $ in identifiers
  • | may also prefix the first case label list
  • FOREIGN DEFINITION MODULE for interfacing to C

Current Release

For version change log, see CHANGES

Upcoming Release

For scope of work for version 1808, see AAA_SCOPE_OF_WORK

Release History

  • last maintenance release 0605 from Uni Karlsruhe in May 2006
  • minor release 1208 by Chr. Maurer in August 2012, based on 0605
  • clean-up release 1807 by B.Kowarsch in July 2018, based on 1208
  • work in progress release 1808 by B.Kowarsch, based on 1807

Ongoing and Future Work

For a roadmap of ongoing and future work, see ROADMAP

Contributing to MOCKA

MOCKA is no longer supported by its creators. It needs volunteers to be maintained.

In particular, help is needed with building/testing on FreeBSD, and with porting to Windows.

For details, see CONTRIBUTING


[1] Wikipedia entry on the Modula-2 programming language

[2] Programming in Modula-2, 3rd edition, N.Wirth, Springer, 1988

[3] Google translation of Wikipedia entry on the former GMD

[4] Former MOCKA project page at University of Karlsruhe

The Modula-2 Webring

All Sites | Previous Site | Next Site | Random Site | Join the Webring


You can’t perform that action at this time.