XDS Family of Products
Modula-2 / Oberon-2 development tools
Products of the XDS family facilitate software development in the Modula-2 and Oberon-2 languages. Its unique feature is seamless integration between Modula-2 and Oberon-2 modules that allows you to freely mix those languages in one project.
Since May 2005, all XDS Products are available under a freeware license. We may also help you migrate or port your legacy Modula-2 code or convert it to C/C++.
27-Dec-2011: XDS 2.6 beta is available for download
Bug fixes + IDE macros + Open Watcom support in XDS-C
06-Feb-2012: XDS 2.6 beta 2 released
- ISO 10514 compliance and language extensions
- XDS Modula-2 complies with ISO 10514 language specifications. A number of language extensions, explicitly controlled by compiler options, simplify migration of the code from "pre-ISO" Modula-2 implementations as well as interfacing with other programming languages.
- Multilanguage programming support
- The unique feature of XDS compilers is seamless integration between Modula-2 and Oberon-2 code. Modula-2 objects (types, variables and procedures) can be freely used from Oberon-2 code. There are also numerous system features that simplify interfacing with other programming languages. In your Modula-2 or Oberon-2 code, you may freely call functions residing in C DLLs or shared libraries, as well as operating system API functions, the definition modules for which are are supplied.
- Rich library set
- XDS comes with full set of ISO 10514 libraries that may be used from Oberon-2 code as well as from Modula-2. It also contains a number of extension libraries that make programming more comfortable (like C-style "printf" implementation) and efficient.
- TopSpeed Compatibility Pack (TSCP)
- Used to be a separate download in versions 2.51 and below, TSCP provides a set of language extensions and library modules that make XDS more compatible with TopSpeed Modula-2. A couple of TopSpeed sample programs adaped to XDS are also included.
- Royalty-free run-time library (RTS)
- XDS contains royalty-free RTS with compact and efficient garbage collector and meta-language facilities necessary for Oberon-2.
- Built-in make facilities
- XDS compilers automatically calculate dependencies between various source files of the project and determine the minimal set of files requiring recompilation after source change thus allowing you to build a project with complicated structure by a single run of the compiler.
The XDS family consists of the following products:
Native XDS-x86 is an
optimising ISO Modula-2 and Oberon-2 compiler targeting Intel x86
systems running Windows or Linux. The Windows version comes with a
complete tool suite including an IDE, debugger, profiler, etc.,
whereas the Linux version is a command-line compiler relying on
the standard Linux tools such as
XDS-C is a "via C" Modula-2/Oberon-2 cross-compiler. Its output is K&R C, ANSI C, or C++ source code, which may be further compiled by a third-party C/C++ compiler for any target platform. XDS-C itself runs on Windows and Linux.
TopSpeed Compatibility Pack (TSCP) is an add-on for XDS compilers making them more compatible with the TopSpeed Modula-2 compiler, thus simplifying porting of legacy TopSpeed Modula-2 sources.
"The Native XDS-x86 Win32 environment is virtually without peer as a platform for programming professional Windows applications using the elegant, strongly- protected, and very efficient ISO Modula-2 language. But we have also been impressed with Excelsior's attention to compatibility with other platforms, as exemplified by its multi-language DLL support, legacy Modula-2 Compatibility Pack, and unique C language converter. The XDS program development suite has proved to be intuitive, friendly, powerful, and reliable, with special notice due to its fine project manager, debugger, and execution profiler. In sum, we have been very pleased with the Native XDS-x86 Win32 programming environment and the excellent support which Excelsior has consistently provided us."
... from a leading U.S. marine software firm
"The XDS system is by far the most efficient and helpful that I have ever used. It enables me to develop highly complex software more rapidly and more comfortably than would be possible with a less sophisticated system."
Prof. Julian Ullmann,
King's College London