Compilers Tutorials/Papers Libs/Sources Newsgroups FAQ Forums/Lists
GNU Modula-2 Modula-2 CGI Tutorial Howto Setup a Fine Modula-2 Environment Programming with Modula-2 Misc. Modula-2 Related Pages Not-English Modula-2 Pages Downloads Please Sign My Guestbook Code Search
I removed the binary builds of GNU Modula-2 which I used to offer here for some time as the compiler is now available as a binary package from the GNU Modula-2 homepage. The files available there are Debian packages which can easily be converted to other formats using e.g. Alien or other converters coming with your favorite distribution.
[DISAPPEARED?] Also have a look at Roberto Aragons pages. He offers binary builds for the x86_64 architecture!
FST 4.0 Modula-2 compiler with Mide3de2 v1.1: Installer-package for Windows bundling two freeware products. The file is about 1.5MB and offers html-docs and an uninstall-option. Also included are several libraries including an object oriented package similar to the Turbo C++ library and the alternative library for the compiler by Pat Terry. Users of Windows 2000 please read this.
M2Latex is a package to help you in translating and pretty printing Modula-2 sources to LaTex. I hope we can make a version for Linux available as the program was developed for SunOS4 and does not compile on Linux boxes at the moment (Any C-people out there willing to help?).
Also have a look at the packages for Slackware and the GNU Modula-2 binaries.
Q&D Tools. A package containing various useful utilities for the DOS-commandline which are still usable under different Microsoft Windows operating systems. Some but not all sources (Topspeed Modula-2, PowerBasic, Visual Basic) are available. The package is freeware, copyrights by PhG. Please read the enclosed license for details. The package was updated in april 2008. "A few bugs/features were fixed/added, last for the FreeDOS project."
EGEM (Embedded Graphical Environment Manager) is the result of a study conduced by Iceberg software on the feasibility of complex embedded graphical interfaces in the field of the High Integrity Systems. It could be employed in a wide range of industrial application areas such as Energy, Ground Transportation, Medial Devices and many others. Its objective is to give a safe and simple instrument that could be easly integrated to real-time systems and easly analysed by tools to provide the certification required by the major international standards. This file contains a binary library for use with Gardens Point Modula-2 (PC/DOS).
EGEM binaries for the GNAT Ada Compiler (tested with GNAT 3.10, PC/DOS) are also available.
hfilter.zip [8KB]: A high pass filter implemented in Gardens Point Modula-2 by Julian Miglio.
mouse.zip [3KB]: A simple mouse-library for Gardens Point Modula-2 written by Julian Miglio (Thanks!). Basic functions with self-explaining names are available: Show_Mouse, Hide_Mouse and Get_Mouse. Also comes with a test-program.
M2LIB [1.4MB] is a huge Modula-2 library for Atari-compilers. It uses a preprocessor so it can be used with most Modula-2 compilers available for the Atari-platform. There are packages for providing POSIX-functions, an ISO-Modula-2 library and much more. This was written by Holger Kleinschmidt who kindly contributed the package. Just in case you are curious: this replaces the package M2POSX14 as this is what evolved from M2POSX.
olsen.tar.gz [1.5MB]: Olsen & Associates Portable Modula-2 Library. Description from README: "The library's foremost feature is its portability. Applications which use the library should be portable (usually w/o modification) and the library definition and current implementation should easily port to other systems. The library was originally centered around I/O, but has been expanded to include those facilities which we found were required for Modula-2 application programming in general." I have to add: portability in this case means portability between the Sun Modula-2 compiler and the Logitech compiler for DOS systems.
TopSpeed Extended Libraries [0.5MB]: This is a package written by Marco van de Voort. XtdLib (eXTenDed LIBraries) are libraries for TopSpeed 3.1x. Description by Marco van de Voort: "The original highlights were a pulldown system on top of module window, and a helpfile system." Not only interesting for owners of TopSpeed Modula-2.
The following archives contain miscellaneous sources for FST and TopSpeed Modula-2 (All of the material was published years ago with the magazine "CHIP - Spezial Modula-2").
misc. sources (1) [100KB]: miscellaneous sources, including how to program a simple editor.
misc. sources (2) [050KB]: miscellaneous sources.
misc. sources (3) [080KB]: miscellaneous sources, including searching- and sorting-routines .
FST-debug.zip [2KB]: This document by Julian Miglio describes howto debug programs compiled with FST Modula-2 using the Turbo Debugger made by Borland. An example is contained in the archive.
MODULA-2 -- A Language For The 80's [8KB]: This is an old paper giving a short overview of Modula-2. I think the text is still usable for beginners and Pascal-programmers.
HTML documentation for FST Modula-2 [46KB]: Makes life easier, especially for beginners using Fitted Soft Modula-2. Simply converted to HTML, it's the original doc by Roger Carvalho.
Modula-2 to Oberon [12KB]: This file is a tech report from ETH Zurich and is by Nicklaus Wirth. It can be freely distributed as long as it isn't modified in any way and notice is included stating that it isn't to be modified. some interesting facts about modula-2 (what is not so good about it etc.).
Structure of Modula-2 programs [41KB]: description and introduction to modula-2 on 50 pages of text in rtf-format. found somewhere on the net. i didn't modify it, should i be violating anyones copyright, email me and i'll remove the text.
Gardens Point Modula-2 Library Reference: I don't know if anyone is going to use this - personally I do only use HTML-documentation, especially when working on Linux (This documentation is for the Linux-version but I think it's quite "portable").
M2F Modula-2 Library Reference: I simply like this compiler. As soon as possible I'll make docs available for GNU Modula-2.
Information on ISO Modula-2 is rare. That's why I offer 3 articles that are also available via FTP. The articles give a little background information on ISO Modula-2 and help to understand the differences between PIM and ISO. I also converted the original documents to pdf - the result doesn't look that good in Acrobat Reader but if you print the files the output looks good again (Seems to be a problem of Ghostscript which I used for the conversion).
(1) [pdf] [ps] ISO/IEC 10514-1, the standard for Modula-2: Process Aspects
(2) [pdf] [ps] ISO/IEC 10514-1, the standard for Modula-2: Changes, Clarifications and Additions
(3) [pdf] [ps] Standardized Extensions to Modula-2
The following are packages for Slackware, a Linux distribution I used for a long time. Being with Debian now I do not update the files offered here but they still should install without problems. All Packages available here are under GPL.
m2f-4.2: "M2F is a complete Modula-2 compiler for GNU/Linux which obeys the 2nd Edition Programming in Modula-2 by N. Wirth. It generates code for the 8086 and 80?86 families and the is32 abstract machine. In particular it can generate pipelined Pentium code with detailed timing calculations presented in comments in the assembly language. It will bootstrap itself using a modified version of p2c 1.20 (which comes with the source distribution). M2F generates GDB debugging information and error messages are emacs compatible." Home of the compiler.
m2c-0.6-10: This is the latest unstable version of m2c, "a Modula-2 translator. The translator supports Modula-2 versions described in 3rd and 4th editions of famous Wirth's book Programming in Modula-2. (...) High portability of the translator is achieved by intermediate translation into C. The translator is aimed to be used on Unixes of different flavours." This one is also available as a package for the Debian Linux distribution (link to unstable version). The package offered here installs cleanly to /usr/local.
SynEdit 2.4 is an editor written by Matthew Inman. The program has nothing to do with the "multi-line edit control for Borland Delphi and C++Builder" wich you can find at SourceForge.net (wich is common for SynEdit now). It is a complete and free editor with lots of functions wich is no longer developed. It's got problems (really slow) with really big files (0.5MB+), but it's usable for good modularized projects. The original website mkidesign.com is no longer available and it gets harder and harder to find a copy of the program - so here it is.
GPM Total: A nice IDE for the DOS-version of Gardens Point Modula-2. The package disappeared from the net so I offer it here. This is a classic Borland Turbo Vision application coming with a simple installation program.
Syntax highlighting files for Notepad++, a free editor based on Scintilla. A kind visitor sent these files in. Thanks.
ISO Modula-2 syntax-highlighting for Vim (tested v6.2). Language: 10514-1: 1996, Modula-2, Base Language.
ISO Modula-2 syntax-highlighting file for the ConText editor. Just copy the file to subdirectory 'highlighters' of your ConText installation. Language: 10514-1: 1996, Modula-2, Base Language.
ISO Modula-2 syntax highlighting for U. Meybohms Proton. Howto use the file: (1) Copy the downloaded file to subdirectory 'syntaxschemes' of your Proton-installation, (2) edit the file 'extensions.ini' in the same directory. The necessary change may vary depending on the compiler in use! Be careful to avoid double-binding a file-extension. Language: 10514-1: 1996, Modula-2, Base Language.
The growing list of editors providing Modula-2 syntax highlighting can be found here.
Here's a spinning Modula-2 logo I created for an older pagelayout. Feel free to use it for your own page. It's background is transparent, but it looks better on dark colors...

See the light?

One more: An animated button for your homepage featuring Dexter from Dexter's Lab. To be used if Modula-2 did something for your page (for example the CGI-programs are written in Modula-2 or a Modula-2 program does automatic HTML-creation for you and so on).
![]()