HOME

Resources

Compilers Text Editors and IDEs Tutorials Papers Libs Sources Q&A Forums Lists Groups Links Downloads Guestbook

 

Recommended Links

GNU Modula-2

Modula-2 home page

Excelsior home page

Libraries and Sources


[ top ]  Code Search

There are some sites providing lists of source code search engines. Some of the mentioned engines do not explicitly offer a search for Modula-2 code, some do. It's a pity Google closed its Code Search Service as it was the best way to search most available sites and code. Please tell me about good working alternatives!


[ top ]  Miscellaneous Sources

The Sources Store for Modula-2 and Oberon-2 Programming Languages: description from homepage: "The purpose of this site is free propagation of any source code and documents related to Modula-2 and Oberon-2." They have quite interesting material available in the download-section, I think especially the work of Victor V. Sergeyev is interesting if you are using the XDS-compiler: have a look at a complete winsock- and ODBC-interface!
Modula2.org offers a lot of packages (especially for Windows-users of XDS or StonyBrook Modula-2) including a library to write Excel files, one for using Microsoft's WinInet library and a Zip/Unzip library. An unexpected enrichment for the Modula-2 community.
There are quite a lot of interesting Sources available from Jan Verhoeven's Modula-2 Pages. There are a lot of projects for Dos (FST) and Linux (Mocka) compilers there, so just have a look. I think especially the examples for low-level interaction of Modula-2 programs with some piece of hardware teach an interesting lesson. Most of the projects are distributed under the GPL.
[?DISAPPEARED?] PMOS by Peter Moylan: description from homepage: "PMOS is a large library of Modula-2 modules, distributed in source form. Its primary purpose is to make it easy to write multitasking programs for real-time and/or embedded applications. However it also contains a number of modules of interest even if you don't want to write multitasking code: screen windows and screen graphics modules, various device drivers, and a variety of utility modules. PMOS is free for non-profit use."
Also from Peter Moylan: Modula-2 Numerical Analysis Software. Some good functionality if you need basic routines for doing e.g. statistics. The directory contains other sources like fragments written for the NetM2 project, modules for playing music via the PC-speaker (who remembers what that is?) and so on. The modules were mostly written for DOS compilers.
RAMSES (Research Aids for Modeling and Simulation of Environment Systems) "is a generic programing, modeling, and simulation environment that allows you to solve a wide range of problems easily (Fischlin 1991). You can program or model and interactively solve non-linear differential equations, difference equations, and discrete event systems in any combination; size and complexity of your model is only limited by your computer's resources. RAMSES is based on the Modula-2 programing language (Wirth 1985, 1988) that supports the writing of simple, compact, well-readable, type-safe, modular and easily reusable programs that execute at high speed". Extensive documentation is available. You will need Stonybrook (Windows), p1 (Mac OS X) or EPC Modula-2 to use RAMSES with other operating systems than classic Mac OS (For the latter there is the free MacMETH Modula-2 which you can fetch from here).
John Andrea's libraries and example code: quite a lot of reusable code, some really interesting things (for example a module for handling .bmp graphics).
MAS: The "The Modula-2 Algebra System", description from homepage: "MAS (Modula-2 Algebra System) is an experimental computer algebra system, developed at the University of Passau. MAS combines imperative programming facilities with algebraic specification capabilities for design and study of algebraic algorithms. It contains a large library of implemented Groebner basis algorithms for nearly all algebraic structures where such methods exist. MAS further includes algorithms for real quantifier elimination, parametric real root counting, and for computing in (noncommutative) polynomial rings." As the original homepage at university of Passau disappeared, I am now linking to the university of Mannheim (Download MAS).
Page Six is a service bot for IRC channels. Note from the developer: "Note that this bot isn't really meant for general distribution. However, feel free to view the source or contribute, if you feel the urge and want to play around with a Modula-2 project." In my opinion a very interesting project demonstrating the use of sockets with Modula-2. The bot is used in the Modula-2 IRC channel (a link to this channel can be found in the right column of this page).
Rosetta Code "is a programming chrestomathy site. The idea is to present solutions to the same task in as many different languages as possible, to demonstrate how languages are similar and different, and to aid a person with a grounding in one approach to a problem in learning another". A lot of classic problems and their solutions are already there. The link points to the Modula-2 section which is growing steadily. Contributions are welcome.
Modula2 Chess: A chess game for Linux written in Modula2. From the homepage: "This is an example of how you can use the Modula2 language to write more interesting programs than 'hello world'." The program was developed using the Mocka compiler. It was written by Javier Callón Álvarez.
VUB Parallel Computing Laboratory: various modula-2 sources including 3 demo-games with complete sourcecode for XDS Modula-2. Have a look at their Modula-2 technology page! Beside of other interesting projects they provide Wimdows, a library written by Wim Devesse. Using it you can write Windows applications that take advantage of the graphics capabilities of Windows in an easy way for beginning programmers. It is focused on creating simple games and is used at Vrije Universiteit Brussel by participants of Practicum Structured Programming Modula-2. The main components of Wimdows are: Graphics functions for drawing geometric figures (lines, rectangles, circles, polygons, ...), working with bitmaps, control of the mouse and keyboard, menus, buttons and text boxes. The library was written for use with the XDS Modula-2 compiler.
Imperium-PBeM 2001 "is a science-fiction based conquering pbem where up to 80 players can interact to reach their goals to rule the entire galaxy alone or with their allied forces." This is a so called "Play-by-Email" game. You may download the sources from Sourceforge.
Christian Maurer's "Murus" (short for "Modular Universe") is an impressive and well documented collection of Modula-2 sources under GPL. Dr. Maurer develops the package using the Mocka Modula-2 compiler (some components have also been ported to Go) and gives the following description: "Murus is a collection of reusable software components, constructed during the last twentyfive years within the academic context of teaching algorithms and data structures, software engineering and project management, nonsequential programming and mathematics at the Department of Mathematics and Computer Science of the Freie Universitšt Berlin." Everything is well documented but the docs are only available in German language. Please be sure to install the Modula-2 compiler version Mocka 0608m.
The Vector Board:: Modula-2 sources for different compilers and systems (Turbo Modula-2, Atari ST, CP/M), quite interesting. Here's the list of available files. They also still offer version 1.0 of FST Modula-2!
Mr. Kim Moser's site contains some older Modula-2 sources (written for the Logitech compiler) published under the GPL.
Modula-2 page that offers a few simple examples: hello world, sum, factorial. the page contains lots of dead links!
Chris Rathman wrote modula-2 code demonstrating OO Shapes. i didn't have time to take a closer look...
Gregory S. Vigneault: a short piece of code called Quine, it's a so called "self-reproducing program". See versions in other languages at the Quine Page.


[ top ]  Graphics

XModula: "This is a set of files that will allow you to use the X-Windows (version 11, revision 6, also known as X11R6) library calls directly with the Modula-2 programming language. It includes the full Modula-2 foreign definition modules for the most important headers of X-Windows: Xlib.h, X.h, Xutil.h and keysyms.h". These files are now also part of GNU Modula-2.
MultiGraph library: graphics library for TopSpeed or StonyBrook Modula-2. The readme contains following information on the license: "This library is a shareware, i.e. any individual may use it in any project or program on a single computer. Sources can be supplied after the registration." I think I remember this lib to be available from some ftp-servers.


[ top ]  Sources for FST Modula-2

Pat Terry wrote an alternative library for FST Modula-2 wich extends the original libs coming with the compiler. Download via ftp: definition modules and object modules.
VGA lib 3: description from homepage: "VGALIB3 is a library for the FST (Fitted Software Tools) Modula-2 compiler, to work with VGA mode 12h (640 x 480 x 16). The library has routines for plotting, drawing lines, making boxes, writing to screen of text and CARDINALs and more. It consists of a DEF file, an M2O file, and a MOD file with FULL SOURCES. All critical routines are in inline ASM. VGALIB is FREE SOFTWARE as defined in the GNU General Public License."
Taak326b.zip: developed by K.H.M. de Jonge and J.H.D. Keukelaar. A library making use of the OO-extensions of newer versions of the FST-compiler. "Modeled after the Turbo C++ Class Library Definition from Borland International (1990).

Also have a look at PMOS by Peter Moylan. Most of the package will compile with FST.


[ top ]  FTP-Archives

ftp://ftp.psg.com/pub/modula-2/: a real modula-2 treasury!
ftp://ftp.kiarchive.ru/pub/.1/msdos/language/modula-2/: graphics lib for TopSpeed Modula-2.
[DISAPPEARED?] ftp://ftp.tu-darmstadt.de/pub/programming/literate-programming/modula-2/: literate programming.

There are a lot of FTP-sites offering the freely available Modula-2 compilers, Libraries and other material. Either try one of the following sites or do a FTP-search. Try one of the search-engines at
http://www.ftpsearchengines.com/.

ftp://ftp.cs.tu-berlin.de/pub/atari/Programming/Modula-2/.
ftp://ftp.cs.tu-berlin.de/pub/mac/lang/Modula-2/.
ftp://sunsite.unc.edu/pub/Linux/devel/lang/modula-2/.



Get more information


FMP RSS Feed

IRC Modula-2 Chat

Modula-2 at Wikipedia.org

Modula-2 Webring
[ List all | Random | Join ]
[ Prev | Next ]

Google


dmoz



Contact, suggestions, submission of news items: contact information