Next: Mn-Mz
Up: Linux Software Encyclopedia
Previous: Ln-Lz
  Contents
Last checked or modified: Aug. 25, 2000
[home /
linux ]
CATEGORIES |
NEW
Aa-Am |
An-Az |
Ba-Bm |
Bn-Bz |
Ca-Cm |
Cn-Cz |
Da-Dm |
Dn-Dz |
Ea-Em |
En-Ez |
Fa-Fm |
Fn-Fz |
Ga-Gm |
Gn-Gz |
Ha-Hm |
Hn-Hz |
Ia-Im |
In-Iz |
Ja-Jm |
Jn-Jz |
Ka-Km |
Kn-Kz |
La-Lm |
Ln-Lz |
Ma-Mm |
Mn-Mz |
Na-Nm |
Nn-Nz |
Oa-Om |
On-Oz |
Pa-Pm |
Pn-Pz |
Qa-Qm |
Qn-Qz |
Ra-Rm |
Rn-Rz |
Sa-Sm |
Sn-Sz |
Ta-Tm |
Tn-Tz |
Ua-Um |
Un-Uz |
Va-Vm |
Vn-Vz |
Wa-Wm |
Wn-Wz |
Xa-Xm |
Xn-Xz |
Ya-Ym |
Yn-Yz |
Za-Zm |
Zn-Zz |
- M
- See MUMPS.
- MacAnova
- An interactive program for statistical analysis and
matrix algebra. It features powerful commands for such
things as regression analysis, analysis of variance, multivariate
analysis, and time series analysis. Such features as graphical
displays and computation of summary statistics also make it
useful for more elementary analyses.
The Macanova capabilities in working with linear and generalized
linear models include:
- a linear model grammar with multiple error terms and shortcuts
for polynomial and periodic regressions;
- up to 95 variables of which 32 can be factors;
- on the fly transformations of dependent and independent variables;
- ANOVA, MANOVA and regression with optional weights;
- robust ANOVA and regression;
- logistic, probit and Poisson regression;
- iterative proportional fitting;
- branch and bound determination of best subset regression
with ability to save the model selected;
- power and sample size functions for CRD and RBD;
- residual plots and macros;
- model coefficients, standard errors, and contrasts;
- t-tests and confidence intervals;
- weighted analyses;
- expected mean squares; and
- a macro for nonlinear least squares.
The time series capabilities include:
- fast Fourier transforms;
- convolution and sums of lagged products;
- forward and backward autoregression and moving average operators;
- a Yule-Walker solver and its inverse;
- ACF to partial ACF and its inverse;
- spectrum and cross-spectrum analysis, including multi-taper estimation;
- macros for least squares and maximum likelihood estimation of ARIMA
models, including seasonal models;
- macros for Hannan-Rissanen and innovations estimation of ARIMA models;
- macros for computing approximate covariances and variances of
autocorrelations using Barlett's formula;
- macros to compute the autocovariance function and the spectrum
corresponding to an ARMA model; and
- times series and frequency function plots.
MacAnova is available in binary format for Mac and Windows
platforms and as source code that should compile on most
generic UNIX platforms. Makefiles are included for HP/UX,
DEC Ultrix and a Linux makefile is promised (3/97) for a
future release, although there is already a platform.h
file modified for Linux platforms.
An introductory document is available in PostScript format and
a manual is available in PDF format.
[http://www.stat.cmu.edu/macanova/]
[http://www.stat.umn.edu/~gary/macanova/macanova.home.html]
- Macaulay2
- A software system devoted to supporting research in algebraic
geometry and commutative algebra.
It's capabilities are extensive, and just as soon as I sift
through the documentation I'll provide them in a bit of detail.
The Macaulay system is available in source code form or as
a binary for NeXT, SGI IRIX, Windows 95, Linux Intel (ELF),
Sun SunOS, and HP-UX platforms.
It is extensively documented in a large user's manual (236 pages)
and a tutorial, both of which are available in TeX
DVI format.
[http://www.math.uiuc.edu/Macaulay2]
- MacGate
- A gateway between IP and Macintosh LocalTalk
for Linux based on ipddpd.
MacGate translates IP packets to LocalTalk and LocalTalk to IP
by creating a pseudo-ethernet interface for each Mac on the
LocalTalk segment, with these interfaces dynamically added and
deleted as Macs need TCP/IP services.
It does not require a LocalTalk router like ipddpd but rather
creates a virtual router.
It is recommended that MacGate only be used if there are no
other LocalTalk IP Gateways running on your local net, in which
case you can use ipddpd instead.
This is meant to be used to the COPS LocalTalk PC card driver
available at the same site.
See also netatalk,
hfs_fs,
hfsutils, and
CAP.
[ftp://ftp.linux.org.uk/pub/people/jschlst/MacGate/]
[http://www.debian.org/Packages/stable/net/macgate.html]
- Mach
- A operating system project started in 1985 whose goals included:
- providing interprocess communication functionality at the kernel
level and using it as a building block for the rest of the system,
- virtual memory support provided by the kernel and by user level servers,
- kernel level support for light-weight threads,
- support for closely and loosely coupled multiprocessors and a variety of
different commercially available workstations,
- micro-kernel architecture limiting the functions supported by the
micro-kernel and enabling multiple user level servers to support various
application and programming interfaces,
- maintaining at least one UNIX-style API to enable Mach to support all
the everyday uses of the project members and other researchers, and
- distributing Mach to other researchers and commercial sites to use
as the basis for further research or products.
The original research site was Carnegie-Mellon University, and
although CMU no longer (2/99) does work on the Mach kernel they
do currently do work on a couple of extensions.
Mach-related research projects include:
Freely available overview and detailed documentation includes:
Books which contain information about Mach are
Boykin et al. (1993),
Coulouris et al. (1994),
Milojicic (1994),
Silberschatz et al. (1991),
Tanenbaum (1995), and
Zimmermann (1993).
[http://www.cs.cmu.edu/afs/cs.cmu.edu/project/mach/public/www/mach.html]
- Lites
- A 4.4 BSD Lite-based server and emulation library that provides
UNIX functionality to a Mach-based system.
Lites provides binary compatibility with 4.4 BSD,
NetBSD,
FreeBSD and
Linux on the Intel platform.
It works on top of Mach 3.0 (MK83a), RTMach and Mach 4.
The documentation is contained mainly in a master's thesis available
in PostScript format.
[http://www.cs.hut.fi/~jvh/lites.html]
- Real-Time Mach
- A real-time operating system that is
microkernel-based and focuses on the subject of distributed real-time
OS mechanisms and services for developing and supporting real-time
and multimedia applications in current and future OSs.
[http://www.cs.cmu.edu/afs/cs.cmu.edu/project/art-6/www/rtmach.html]
- MACHCON
- A set of three statement functions that provide machine dependent
information.
The use of these functions in Fortran programs allow programs to
be moved from one machine or architecture to another by simply
changing the functions.
The routines are D1MACH, I1MACH, and R1MACH and
provide machine dependent information about, respectively,
double precision, integer, and real number limitations.
This is part of CMLIB.
See Fox et al. (1978).
[http://sunsite.doc.ic.ac.uk/public/computing/general/statlib/cmlib/]
- macopt
- A conjugate gradient algorithm that makes use of gradient information
and doesn't need a routine to return function values.
The features include:
the optimized parameters are all contained in a single double precision vector;
an adaptive step size used for the initial step of the line search;
gradients used in the line search;
immediate termination of the line search once the minimum has been bracketed;
internal checks to ensure consistent between line search direction
and gradient; and more.
Source code versions of macopt are available in both
C and C++.
[http://wol.ra.phy.cam.ac.uk/mackay/c/macopt.html]
- MacroCALC
- A Lotus 1-2-3 compatible character-based spreadsheat which
supports 1000 rows, 64 columns, 40 functions, 8 display
formats, file linking, macro programming and user-definable
functions.
It is fully integrated with Groff
(and its precursors), units, man, Gawk
(and its precursor), Perl, and sh.
It can act as a filter enabling users to use pipes to perform
complex transforms on streams of data, and contains a C
programming interface as well as Lotus WKS and dBASE
file support. The MacroCALC internal file format is flat
ASCII and thus easily manipulated with many tools.
This is also supposedly the only spreadsheet that manages
units as well as numbers.
Function- and cursor-keys and extended video attributes are
supported, and the menus and messages are in separate
editable files and can easily be translated into any language
(with English, French and German supported in the distribution).
MacroCALC has been sold as a professional product for various
UNIX systems and is RCS-controlled,
lint-clean ANSI C source based on yacc, lex and
ncurses. It can be used on any
terminal or emulator which has a correct terminfo entry and
has convenient user interface very similar to that of
Lotus 1-2-3.
Every command in the package has a detailed English man
page.
See also Teapot.
[http://www.freakout.de/]
- macutils
- A collection of utilities for handling Macintosh files on UNIX
systems.
The package includes:
- macunpack, a Macintosh file de-archiver which will unpack
archives created with
PackIt, StuffIt, Diamond, Compactor/Compact Pro, most
StuffItClassic/StuffItDeluxe, all Zoom and LHarc/MacLHa, and
later versions of DiskDoubler as well as decode files created by
BinHex5.0, MacBinary, UMCP, Compress It, ShrinkToFit,
MacCompress, DiskDoubler, and AutoDoubler;
- binhex, which reads a MacBinary stream or a list of files and
directories and outputs all files in binhexed (.hqx) format;
BinHex 4.0 format on standard output;
- frommac, which will receive on or more files from a Mac using
the XMODEM protocol;
- tomac, which will transmit a MacBinary stream or named files
to the Mac using the XMODEM protocol;
- macstream, which reads files from a
UNIX host and outputs a
MacBinary stream containing those files with information about the
directory structure; and
- macsave, which reads a MacBinary stream from standard input
and writes the files according to given options.
A source code distributions of macutils is available. All of
the utilities are written in C and documented in separate man
pages as well as in some ASCII files.
[http://tug2.cs.umb.edu/ctan/tex-archive/tools/macutils/]
- MAD
- The Machine Aided Deconvolution package is a
powerful image processing system which can be used to recover
images from blurred and noisy representations thereof.
It does this by solving a particular class of ill-posed inverse
problems modeled with the convolution equation.
The particular solution methods used by MAD include
Tikhonov regularization variations such as the optimal-mu
method, the discrepancy-function method, the L-curve
method, and generalized cross-validation (GCV).
Available iterative solution methods include
the Landweber-Fridman (LF) method, the Positive Landweber-Fridman
(LF+) method, the steepest descent method, the conjugate
gradient method, the the maximum entropy/Lucy-Richardson method
(ME/LR).
A source code distribution of MAD is available which has been
compiled and tested on OSF-1 Alpha and Linux Alpha and Intel
platforms. It also requires the use of the
XForms library.
A user's manual is currently (2/98) available online and
is promised in PostScript form.
[http://xtc.fisica.unige.it/mad/english.html]
- MAD
- The Methodical Accelerator Design package is
a tool for modeling charged-particle optics in alternating-gradient
accelerators and beam lines.
The features include:
- linear lattice parameter calculations;
- linear lattice and transfer matrix matching;
- survey calculations;
- error definitions;
- closed orbit corrections;
- particle tracking;
- chromatic effects and resonances;
- file services;
- intra-beam scattering;
- lie-algebraic analysis; and
- debugging services.
The MAD framework is written in object-oriented
C++ to make is easy to add
new features to existing classes or new classes.
Source and binary distributions are available, as are user and
class structure manuals.
[http://wwwslap.cern.ch/mad/]
- MAD (parallel)
- The Monitoring And Debugging environment provides
debugging support in a parallel computing environment.
The goal of MAD is to provide an environment for all activities involved
in the debugging task with a user interface that allows usage without
a lot of prior knowledge of the underlying implementation.
The components of MAD include:
- MAD, a program that provides a control structure for using the
other programs;
- ATEMPT, a tool for event manipulation that visualizes tracefiles
as a global communication graph, i.e. an event graph, a partially ordered
graph in time that shows the communication among parallel executing
processes;
- FileBrowser, an integrated file browser for the environment;
- libtrcUtil, a library of tracefile utilities;
- libGUP, a library with various GUP utilities; and
- a suite of example tracefiles.
Binary versions of all of the components are available for Linux Intel
and other platforms.
[http://www.gup.uni-linz.ac.at:8001/research/debugging/mad/]
- Madpack5
- A linear algebra package for numerically approximating the
solution to partial differential equations using
multigrid methods.
One or more levels (or grids) may be used and abstract
multilevel algorithms are implemented in an object oriented
fashion (although not using C++).
Numerous iterative and direct solvers are provided as well as
interfaces to some commonly used solvers.
The package can be used with real or complex data and a method
is provided for user-defined data types.
The solvers provided include:
- Bi-CGSTAB;
- conjugate gradients;
- point Gauss-Seidel with either natural
ordering or a parallel domain decomposition style ordering;
- sparse Gaussian elimination for matrices with a symmetric
nonzero structure; and
- symmetric Gauss-Seidel pointwise or with conjugate gradient
acceleration or with minimum residuals.
The package supports one dense and six sparse matrix storage
schemes.
Madpack5 is written in C and Fortran and is set up to compile
and install on many generic UNIX platforms.
The package is documented in a 40+ page user's manual
in PostScript format.
[http://casper.cs.yale.edu/mgnet/www/mgnet/Codes/madpack5]
[http://www.cerfacs.fr/~douglas/mgnet/Codes/madpack5/]
- MAGE
- A program to view and explore kinemages, i.e. scientific illustrations
presented as an interactive computer display.
The features include:
interactive rotating, panning and zooming to visualize objects in 3-D,
on-screen graphical editing,
selection of which graphical objects to display,
selection of various views of an object;
stereo imaging capabilities, and much more.
MAGE is available in binary format for several platforms
including Linux Intel.
Another program called Prekin which is used to create
kinemages for viewing with MAGE hasn't yet (5/97) been
ported to Linux.
MAGE is documented in an ASCII text file.
[http://kinemage.biochem.duke.edu/website/kinhome.htm]
[http://molbio.info.nih.gov/doc/mrus/mage.html]
- Magenta
- An agent
communication language (ACL) API which facilitates
communication between agents located in a heterogeneous computing
enviroment. Magenta supports communications in such ACLs as
KIF and KQML.
Various interaction paradigms such as anonymous agent interaction,
client/server, and peer-to-peer are supported.
Simple abstractions layers can be added to the API which allow
users to view the API is a specialized manner.
An example of this included in the distribution is a frame based
or object-oriented model in which all communications are
object creation, deletions, method calls, attribute set/get, or
logical queries.
Other layers can be developed to allow users to view their
communications without having to know about ACL.
Versions of Magenta are available for both C++
and Common Lisp (with two versions available
for the latter).
The distributions are documented in various text files scattered
throughout as well as on the Web site.
[http://logic.stanford.edu/software/magenta/]
- Magic
- An interactive system for creating and modifying VLSI circuit layouts.
A color graphics display and a mouse are used to design basic cells and
combine them hierarchically into larger structures.
Magic uses a sort of expert system to provide additional operations and
information as circuits are constructed, e.g. built-in knowledge of
layout rules allows it to continually check for rule violations
during editing operations.
It knows about connectivity and transistors and contains
a built-in hierarchical circuit extractor.
It also has a plow operation that can be used to stretch or compact
cells and routing tools that can be uses to make global interconnections
in circuits.
The features included in the latest version of Magic (6) include:
- routing improvements including an improved global router, a gate
array router, and an interactive maze router;
- extractor enhancements including better resister extraction and
accurate path length extraction;
- a new contact structure in which multilayer contacts are
handled better; and
- an interface to the IRSIM simulator.
Source and Linux binary distributions are available.
An extensive user's manual is included in the distribution in
PostScript format.
[http://www.research.digital.com/wrl/projects/magic/magic.html]
[http://sunsite.unc.edu/pub/Linux/apps/circuits/]
- MagicFilter
- An extensible, customizable printing filter that can enable
a wide range of printers to automatically print a wide range
of file types.
It automatically detects file types by searching for magic numbers
and then invokes appropriate conversion utilities to transform
a file into PostScript format if necessary.
The utilities required for full use of MagicFilter are
Ghostscript,
Netpbm,
nenscript or
enscript,
dvips, and
Groff.
A large number of printers are also supported, although the
appropriate files have only been thoroughly tested on a few
printer types.
A source code distribution of MagicFilter is available.
It is written in C and can be compiled and used on most
UNIX flavors including Linux.
Documentation within the code is sparse, although
a man page is generated when the distribution is compiled.
An article in the Nov. 1997 issue of the
Linux Journal gives a good
description and overview of MagicFilter.
[http://sunsite.unc.edu/pub/Linux/system/printing/]
- MagicPoint
- An X11-based presentation tool not wholly unlike
a similarly named commercial package sold by those not wholly unknown
in the darker realms.
This allows specially marked up files containing text and control
commands (i.e. MagicPoint files) to be either shown as full-screen
presentations on an X11 window or printed as PostScript slides.
Images in several formats can also be included in the presentations.
The programs in the package include:
- mgp, which converts MagicPoint files to on-screen
presentations;
- mgp2ps, which converts the MagicPoint files to
PostScript format;
- mgpembed, which converts a MagicPoint file to an embedded
MagicPoint file, i.e. one in which external references are resolved; and
- mgpnet, a small HTTP server for making
presentations on the Web.
The programs are documented in man pages.
Several example MagicPoint files are also included in the
distribution as templates for creating new presentations.
The distribution can be compiled on most UNIX/X11 platforms via
the included Imake files. A
Perl distribution is also required for
full usage.
[http://www.mew.org/mgp/]
- MagicPoint Gallery
- A collection of reusable templates for
MagicPoint, the presentation tool for
UNIX systems.
[http://puchol.com/cpg/software/mgp/]
- magnum
- A portable and extensible C++ class
library which implements various fast factorization algorithms
for univariate polynomials over finite fields or the ring
of integers.
A source code distribution is available.
It is written in C++ and can be compiled with
G++. Compilation also requires
Gawk, sed, lex, and yacc.
The documentation is all in German and available in both
PostScript and LaTeX formats.
[ftp://obelix.statistik.uni-mannheim.de/public/magnum/]
[http://www.loria.fr/~zimmerma/mupad/magnum.html]
- Magnus
- A package designed to explore infinite groups and carry out experiments
with them.
This is available either as source code or in binary format
for Linux Intel ELF platforms.
A user's manual is included in TeX format.
[http://www.grouptheory.org/]
- MagPIe
- A library of MPI collective communications
operations optimized for wide-area systems. MagPIe is a separate
library designed to be an add-on to
MPICH. No changes are needed to application
sources to use this, although two functions need to be implemented
that tell MagPIe how many clusters a wide-area system has and
which MPI porcess is located in which cluster.
A source code distribution is available.
Documentation includes a couple of technical reports.
[http://www.cs.vu.nl/albatross/]
- MagSolve
- An interactive suite of programs for the solution of 2-D
static magnetic field problems using finite elements (FE).
The MagSolve package includes utilities for geometry specification,
automatic FE mesh generation, problem solution, and solution
analysis.
It is divided into pre-processing, processing, and
post-processing modules.
The pre-processing module includes:
- the capability of importing DXF drawing files (from packages such
as AutoCad),
- a suite of drawing tools for designing models from scratch or
editing imported files,
- the automatic generation of a rough FE mesh from input
geometry specifications,
- adaptive mesh refinement to ensure the attainment of an accurate
solution from the initial rough mesh, and
- the addition of constraints (e.g. currents and material properties)
via interactive pop-up windows.
The processing module solves the governing equations on the FE
mesh for 2-D magnetostatic problems including the effects
of iron saturation.
The post-processing module allows the user to view the solution
in terms of fluxlines and flux densities as well as calculate
quantities such as force and core loss.
It can also generate PostScript
files of any interactively generated plot.
The MagSolve package is available in binary format for
Linux Intel, HP-UX, and Sun SunOS platforms.
The source code is available upon request.
A user's manual in PostScript
format is available.
[http://elecmag3.ucd.ie/e3-magsolve/e3-magsolve.html]
- Mahogany
- An Open Source cross-platform mail
and news client.
The features include:
- full support for SMTP,
POP3, IMAP,
NNTP and several different mail folder
file formats;
- full MIME support including editing
in a composition window and support for external viewers;
- support for any number of mixed types of incoming mail folders;
- FAX receiving via efax.com;
- support for X-Faces and user-defined message headers;
- an embedded Python interpreter for
full object-oriented scripting capabilities and access to the
internal structures and classes;
- a complete address and contact management database including
option auto-collection of addresses from incoming mail;
- extensive configurability with different configurations for
different mail folders;
- full I18N support;
- a GUI based on GTK;
- support for Emacs email address databases;
- tree control based hierarchical folder management in the main window; and
- a context-sensitive, HTML-based help system.
Several other features are currently (5/99) under development including
a filtering language, encryption support, message templates, and more.
A source code distribution is available.
[http://mahogany.home.dhs.org/]
- MailTools
- A collection of Perl 5 modules related to email
in some way.
The collection includes:
- Mail::Address, which extracts a person's name from an address;
- Mail::Alias, which manipulates mail alias files in various formats;
- Mail::Cap, which parses mailcap files as per RFC
1524;
- Mail::Field, a base class for packages that create and manipulate
fields from email and MIME headers;
- Mail::Filter, an interface for filtering mail through multiple
programs or subroutines;
- Mail::Header, a class object for reading, creating, manipulating
and writing RFC 822 compliant headers;
field names in headers;
- Mail::Internet, for reading, creating, manipulating and writing
messages with RFC 822 compliant headers;
- Mail::Mailer, which sends mail using any of the available
built-in methods;
- Mail::Send, a simple email interface; and
- Mail::Util, which provides several email-related utility functions.
A source code distribution is available.
[http://cpan.valueclick.com/modules/by-module/Mail/]
- mail transport agent (MTA)
- The available MTAs (i.e. mail servers) include:
- mail user agent (MUA)
- The MUAs available include:
- Arrow, a MUA with features found in such
things on Mac and Windows systems;
- BlitzMail, a client-server system;
- Elm, probably the most popular non--GUI mail reader;
- exmh, an X11 interface for
MH;
- Mahogany, a cross-platform mail and
news client
- Mew, an Emacs mail interface;
- MH, a set of programs for handling mail;
- ML, a mail program and message processing system
designed around the IMAP protocol;
- Mumail, an X11 reader with MIME
support;
- MUSH, a mail user's shell;
- Mutt, based on Elm with some
additional features;
- nmh, a drop-in replacement for MH;
- Pine, designed for novice users but with features for
more advanced users;
- POSTIE, a command-line mailer;
- Postilion, based on TkRat
with additional features to create a clone of the NeXT mail app;
- Pronto, developed using
GTK and Perl;
- QMH, a system for handling email complaints;
- SOMA, a reader based on XViews;
- ThorMail, a Web mail interface;
- TkRat, a reader built on Tcl/Tk;
- UMT, a reader with an RTF editor and viewer;
- XCmail, designed to read mail with
MIME attachments; and
- XMail, an X11 mail user interface.
- mailing lists
- Mailing list and related software for Linux systems includes:
- bestserv, can be used with
sendmail;
- eSquire, a mailing list manager designed as
a replacement for majordomo;
- JMail, a program for archiving mailing
lists and exporting the list to the Web;
- Listar, a modular mailing list package;
- ListProcessor, a system for automating
and archiving mailing lists;
- Mailman, with a Web interface for users and
administrators;
- majordomo, the most widely used package;
- minimalist, a minimal mailing list manager;
- minordomo, a mimimalistic replacement for
majordomo;
- Pandora, a Web-based management tool for
majordomo;
- Petidomo, a sort of successor to
majordomo with additional features;
- Pipermail, a Python
tool for maintaing Web-based archives of mailing lists;
- qmail, a full MTA with mailing list
capabilities;
- SmartMail, a mailing list package built on
top of procmail; and
- Sympa, a mailing list manager.
- Mailman
- A program that automates email-based mailing lists which differs from
other mailing managers in that it has a well-developed web interface
for list users and administrators. Users can change their options and
subscribe or unsubscribe via the web, and administrators can configure,
moderate, and maintain the list via the web.
The features include:
- standard mailing list features such as moderation, mail-based
commands, digests, etc.;
- an extensive web interface customizable on a per-list basis;
- a web-based list administration interface for all adminstration tasks;
- integrated mail list to newsgroup (and vice-versa) gatewaying;
- automatic web-based hypermail-style archives;
- smart bounce detection and correction;
- fast bulk mailing;
- smart spam protections;
- multiple list owners and moderators; and
- optional MIME-compliant digests.
A source code version of Mailman is available. It should run on
any platform on which Python and
either sendmail or smail
are installed.
Documentation is included in the distribution.
[http://www.list.org/]
- Maisie
- A C-based simulation language that can be used for sequential
and parallel execution of discrete-event simulation models and
that can also be used as a parallel programming language.
It can execute a discrete-event simulation model using several
different asynchronous parallel simulation protocols on a variety
of parallel architectures. It is designed to cleanly separate
the description of a simulation model from the underlying
simulation protocol used to execute it, which enables a Maisie
program to be execute, with few modifications, using the
traditional sequential simulation protocol or one of many
parallel optimistic or conservative protocols. It also
provides powerful message receiving constructs that result in
shorter and more natural simulation programs along with
debugging and message tracing facilities.
The source code for Maisie is available along with
many examples. There are special instructions for
compiling it on Linux boxes. The Maisie runtime system is implemented on
top of PVM, the Cosmic Enviroment, and
UNIX sockets. A user's guide in PostScript format is
available along with much HTML documentation online.
In the works (3/97) are a visual programming environment and
a WWW interface. This is being (2/98) superseded by
PARSEC.
[http://may.cs.ucla.edu/projects/maisie/]
- majordomo
- A program which automates the management of Internet mailing lists.
Commands are sent to Majordomo via electronic mail to handle all
aspects of list maintenance. Once a list is set up, virtually
all operations can be performed remotely, requiring no intervention
by the postmaster at the list site.
The Majordomo software does not itself perform mail delivery but
rather controls a list of addresses for some mail transport
system (e.g. sendmail or smail) to handle.
Majordomo features include:
- support for various types of lists
including moderated ones;
- list options which can be easily set
via a configuration file and remotely edited;
- archiving and remote retrieval of messages;
- digests of messages and FTPMAIL;
- confirmation of subscriptions and list filters; and
- list filters.
The package actually consists of several programs which perform
specific tasks including:
- majordomo, the main program which is invoked
each time a message arrives for it;
- resent, which checks the command
line options of a message when it arrives to appear on a list;
- wrapper, which allows other Majordomo programs to run as a trusted
user so they can set the correct envelop sender address;
- bounce, which helps handle subscribers whose mail is bouncing;
- approve, which simplifies the approval of subscriptions or
moderated messages;
- new-list, which answers mail sent to a new list; and
- request-answer, which answers mail sent to the address
listname-request and tells people how to send mail to majordomo.
The Majordomo package is written in Perl (except for the wrapper
program) and should work with Perl 4.036 or 5.002 or greater (i.e.
it will not work with Perl 5.001).
There is an article in the May 1995
Linux Journal
describing this and how to set it up, and similar information
can be found in a chapter of Peek (1994).
A Web-based front-end to Majordomo is
Pandora.
See Liu et al. (1994).
[http://www.greatcircle.com/majordomo/]
- MajorCool
- A CGI script written in
Perl that provides a Web interface to
majordomo.
MajorCool adds to the features of majordomo with several GUI
techniques such as balloon help, per-user preferences, and
mouseover cues.
It also extends the address matching capabilities of majordomo
via the use of configurable modules.
This allows the identification of list subscribers by multiple
valid addresses.
A source code distribution is available.
[http://www.conveyanced.com/MajorCool/]
- make
- A utility for maintaining groups of programs, make provides
a simple mechanism for maintaining up-to-date versions of
programs that are created by performing several operations on
a large collection of files.
See Oram and Talbott (1991).
Related software includes:
- automake, a makefile generator;
- bras, an alternative to make;
- CONS, an alternative to make;
- Cook, a software compilation system;
- dmake, a generic parallel make utility;
- GNU Make, the hopped-up GNU version of make;
- Icmake, a hybrid between a make utility and
a scripting language;
- Jam, a redone make;
- jmake, an automated alternative to
creating makefiles;
- Makefiles, a set of rules
for compiling structured
projects using other make implementations;
- makepp, a drop-in replacement for GNU
make with improved and additional features;
- MK, a software compilation and revision control
system;
- Odin, a make replacement with additional features;
- package, a skeleton framework into which
source trees can be imported to create releaseable, buildable packages;
- ppmake, a parallel make utility running on top
of PVM,
- prototype, a collection of Makefiles and
templates for easing the construction and maintenance of projects,
- SMake, a mechanism for generating
standard makefiles
out of skeleton makefiles which provide only the essential parts, and
- TMAKE, for creating plaform-independent
makefiles.
- Makefiles
- A set of rules for compiling structured projects with small
and uniformly structured makefiles. All the rules are located
in a central directory, and compiling the projects on different
platforms can be done without modifying any of the makefiles
in the individual project directories.
The structure consists of a set of small makefiles, each located
in the project's leaf directory and called leaf-makefiles.
Each of these contains no rules but simply define some macros
for the make program and include two files from a central
make rule depository. The included files and the files recursively
included define the rules needed to compile the project.
The leaf-makefiles first define two macros that define the relative
location of the project root directory and the name of the directory
containing the complete set of rules. Then the rule
file rules.top from the directory containing the central rule
depository is included.
Next, macros are defined that describe the target and the source,
with only one target per leaf-makefile. These macros describe
a unique target and contain all source files, local include files,
and all non-global compile time flags needed for that target.
Finally, each leaf-makefile includes a file from the rules directory
that contains rules for the appropriate type of target to be made.
There are rules for commands, drivers, libraries, shared libraries,
localized files, nonlocalized files, shell scripts, man pages,
diverted makefiles and directories.
There are over 60 macros and variables used in the rules.
A source code distribution of Makefiles is available. It is
written in C and can be compiled on most standard UNIX platforms.
It currently (5/98) supports Sunpro make,
GNU Make, and
SMake.
It is documented in a user's manual and a developer's manual,
both available as man pages.
[http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/makefiles.html]
- makepp
- A drop-in replacement for GNU
make with additional features that allow for
more reliable builds and simpler build files.
It is written in Perl,
supports almost all the GNU make syntax, and can be used with
makefiles produced by automake.
The improved and additional features include:
- proper checking of include files, with an automatic dependency
scanner that works even if the header files have yet to be built;
- automatic rebuilding even if the build command changes, e.g.
a change in command line options;
- only rebuilding files if they are older than their dependencies;
- better handling of recursive make invocations via reading all
the makefiles into a single process;
- optionally not recompiling source files if only comments and
whitespace have changed;
- wildcards in dependencies that can refer to files which can be
built as well as to those which already exist;
- a special wildcard that searches through all the subdirectories
of a directory;
- support for repositories, i.e. directories containing files that
may be temporarily linked into the build tree if up-to-date files
do not already exist there (for, e.g. separating source and object
directories, variant builds of the same program, and multiple
developers using the same source tree);
- more sophisticated inferences about the object files that a program
needs; and
- no confusion over multiple names for the same file, e.g. xyz.o
and ./xyz.o.
[http://LNC.usc.edu/~holt/makepp/]
- makeself
- A small shell script that generates a
self-extractable tar.gz archive from a directory, with
the resulting file appearing as an executable shell script.
This is capable of using either
gzip or bzip2.
[http://www.lokigames.com/~megastep/makeself/]
- MAME
- The Multi Arcade Machine Emulator
is a program that emulates arcade gaming machines using
the original ROM images from those same games.
A X Window version of the emulator is available in both
source code and binary versions, with the latter available for
SGI IRIX, Sun Solaris, and Linux Intel.
A SVGAlib binary version is also available for Linux platforms.
Several ROM images are available at various sites which can
be run using the various emulators that comprise the package.
[http://www.mame.net/]
- MAML
- The Multi-Agent Modeling Language
is a special purpose programming language providing high-level
constructs for describing agent-based computer models.
The goal is to make the description of complex models easier while
ensuring the simplicity and understandability of the computer program.
MAML is currently an extension to
Objective C using the
Swarm libraries, i.e. it is a macro language
for Swarm that provides easy access to all its functionality.
It adopts an agent-based modeling paradigm within a discrete
event simulation framework, i.e. models consist of a collection
of independent agents interacting via messages and events.
The MAML package incorporates both the language definition and
a MAML-to-Swarm compiler called xmc that converts MAML source
code into Swarm applications.
The documentation includes a tutorial, a reference manual, and
several technical papers.
[http://www.syslab.ceu.hu/maml/]
- MAM/VRS
- The Modeling and Animation Machine/Virtual
Rendering System is a graphics toolkit for animated,
interactive 3-D graphics (MAM) and a rendering meta-system which
encapsulates 3-D rendering libraries such as
OpenGL by a uniform object-oriented
interface (VRS). It can be used to quickly develop animated, interactive
3-D applications in an object-oriented way. It can be used like
any other C++ class library or as a graphics
scripting language embedded in
[incr Tcl], with both versions containing
full functionality.
The MAM/VRS C++ library is composed of several modules:
- BASE, basic classes specifying data containers and numerical
data types;
- VRS, classes specifying 3-D graphics objects such as 3-D
shapes and graphical attributes;
- MAM, node classes used to build geometry and behavior graphs
with the nodes linked to graphics objects in VRS so they can
be arranged in 3-D scenes or animated;
- XTMAMVRS, simple GUI classes for embedding MAM/VRS into an
Xt-based program (along with a simple application
framework);
- TKMAMVRS, a set of GUI classes for Tcl/Tk
used by iMAM, the [incr Tcl] API;
- MFCMAMVRS, a set of MFC classes for Windows NT/95; and
- OPENGL, a set of classes to adapt VRS to Open GL.
A source code distribution of MAM/VRS is available. It can be
installed and used on UNIX platforms on which Tcl/Tk and [incr Tcl]
have already been installed.
The documentation includes a tutorial as well as manuals for the
C++ classes.
[http://wwwmath.uni-muenster.de/informatik/u/mam/]
- man
- Man pages are the traditional method of choice for documenting
UNIX systems and utilities.
They are usually created using one of
the troff family packages and accessed
via a program called man.
Although quite a bit of Linux system documentation (most significantly
that related to the GNU project) is offered
in formats other than man pages, much of it is still available in
the traditional format.
Man pages have traditionally been divided into nine sections:
- man1, contains most of the commands comprising the user
environment, e.g. text editors (vi, sed),
command shell interpreters (bash, sh, tcsh), searching
and sorting tools (grep, find, sort),
file manipulation commands (cat), system status commands (top),
remote file copy commands (rcp), mail commands (elm, mail),
compilers and compiler tools (cpp, f77),
formatted output tools (troff, eqn), and
line printer commands (lpr, lpq);
- man2, system calls in the C library;
- man3, other functions in the C library;
- man4, devices and device drivers (packet, socket,
mouse, tty);
- man5, file formats and conventions fstab, hosts,
printcap, motd, termcap, term, ttytype);
- man6, games;
- man7, word processing and related programs (man, regex,
me, glob, unicode);
- man8, system maintenance and operation commands;
- man9, system kernel interfaces.
These can and do vary somewhat among the various UNIX flavors, although
most follow it reasonably well.
Programs for converting man pages from one format to another include:
Related and useful sites include:
[ftp://ftp.win.tue.nl/pub/linux/docs/manpages/]
- gnumaniak
- Up to date man pages for various
GNU packages including
fileutils,
diffutils,
sh-utils,
libtool and
textutils.
The GNU project no longer maintains up-to-date documentation for these packages
in man page format. This package does.
[http://personal.redestb.es/ragnar/]
[http://niteowl.userfriendly.net/linux/RPM/gnumaniak.html]
- MANPAK
- A package of Fortran utility programs
for computations with submanifolds which are implicitly defined
by a system of nonlinear equations. The routines establish
several types of local parameterizations (coordinate systems)
and, once available, compute points on the manifold with given
local coordinates. There are also routines for computing the
first and second derivatives of these local parameterizations
and some other quantities such as sensitivity measures and the
second fundamental tensor.
The distribution consists of four parts: the MANPAK utility
library; DAEPAK, a package of routines based on MANPAK and
MANAUX for solving various types of algebraically explicit
differential algebraic equations (DAEs); DRIVERS, a set of
sample drivers for DAEPAK; and MANUAX, a package of subroutines
for the uniform support of MANPAK and DAEPAK.
The MANPAK routines include:
- AUGM, for generating a specific augmented matrix;
- COBAS, for computing an orthonormal basis matrix of the
nullspace of a given matrix;
- CURVT, for computing approximations of the curvature and
principal normal of a path on a manifold which passes through
three consecutive points;
- DGPHI and D2GPHI, for computing the first and second
derivatives of the local parameterization, respectively;
- DTPHI, for differentiating the local parameterization;
- GCBAS, for computing an orthonormal basis matrix of a local
coordinate space consisting of a given number of basis vectors;
- GLOB, for globalizing a vector of local coordinates;
- GNBAS, for computing an orthonormal basis matrix of a local
coordinate space containing a specific basis vector;
- GPHI, for computing a point on a manifold with specified
local coordinates in a general local coordinate system;
- MOVFR, for using a moving frame algorithm for ordering a local
coordinate basis such that its orientation agrees with that of another
basis;
- ORIENT, for using a combinatorial algorithm for ordering
a local coordinate basis such that its orientation agrees with that
of another;
- PROJ, for computing the orthogonal projection of a point onto a
given local coordinate space;
- SENMAP, for computing the sensitivity map at a given point with
respect to specified natural parameters;
- SENSNR, for computing the Euclidean norm of the sensitivity map;
- TPHI, for computing a point on a manifold with specified local
coordinates in a tangential local coordinate system; and
- TSFT, for computing a componnet of the second fundamental tensor
in a tangential local coordinate system.
The solvers in DAEPAK are:
- DAEN1, a solver for nonlinear, index-1 problems;
- DAEN2, a solver for nonlinear, index-2 problems;
- DAEQ2, a solver for quasi-linear, index-2 problems;
- DAEQ3, a solver for quasi-linear, index-3 problems of second order;
- DAESQ1, a solver for quasi-linear, autonomous, index-1 problems; and
- DAEUL3, a solver for the Euler-Lagrange problem of index-3.
The MANAUX package includes ODE solvers and various linear
algebra routines.
The ODE solvers are:
DOPSTA, a Dormand-Prince order 5 RK-step routine for
autonomous ODEs using reverse communication for function calls; and
DOPSTN, a Dormand-Prince order 5 RK-step routine for non-autonomous
ODEs using reverse communcation for function calls.
The source code for this package is available.
It is written in Fortran 77.
The source code contains documentation for the routines.
See Rheinboldt (1996a) and Rheinboldt (1996b).
[http://netlib.org/contin/manpak/]
- man2html
- A C program that converts man
pages into HTML.
The features include:
- use of raw troff man pages where more
layout information is available;
- combination of proportional fonts and pre-formatted sections;
- links to other man pages including local include files, email
addresses, and FTP and WWW sites;
- correct conversion of tables as well as readable tables with
browsers that can't handle them;
- a man page index;
- nested indentation; and
- printable layout for most pages.
[http://wsinwp07.win.tue.nl:1234/index.html]
- MAP
- The Materials Algorithms Project is a library of
Fortran programs for calculating various properties and other things
concerning materials like steel, nickel and crystals.
The programs are divided into several categories including:
- Steel
- COLLAPSE, solves the problem of diffusion profile collapse during
heat treatment;
- DILAT, calculates the volume fraction of transformation from
austerite to ferrite from a measure of the length change;
- FERR, for the soft impingement problem in Fe-C-X alloys;
- FINITE, solves the problem of X enrichment during the aging
of bainitic steels;
- FINN, another method for solving the previous;
- HARDP, calculates the Vickers pyramidal diamond hardness of
martensite, bainite and ferrite/pearlite mixtures;
- MALLOY, calculates free energy of mixing, configurational entropy
of mixing, enthalpy of mixing, and structural interfacial energy in
mechanical allowing as functions of concentration, particle size and
temperature;
- MS, estimates the Ms temperature of an alloy steel as a function
of the free energy;
- MUCG46, a suite of software for modeling the thermodynamics and
kinetics of solid-state transformations in steels;
- SIMPOWER, calculates the overall transformation kinetics of phases
precipitating under diffusion controlled growth;
- SOL_BOR, calculates the soluble boron, nitrogen and boron nitride content of austenite at any temperature;
- TTT_TO_CCT, converts an input TTT curve into a CCT curve
using Scheil's additive reaction rule; and
- YSMA956, calculates the components of the yield strength of the
recrystallized and unrecrystallized mechanically alloyed ODS ferritic
stell MA956.
- Crystal
- CEMSTRUCT, calculates the relative intensities of electron
diffraction spots when forming a diffraction pattern from a region of
cementite in a transmission electron microscope;
- CORD, calculates the coordinate transformation matrix relating
two crystals of arbitrary structure;
- MET1 through MET6, which calculate the metric tensor for
cubic crystal, tetragonal, orthorhombic, hexagonal or trigonal, monoclinic,
and triclinic structures;
- PROGRAM, an interactive program for the analysis of crystal
structures;
- TENSOR1 through TENSOR6, which calculate the metric tensor
and its inverse for the same structures as with the MET programs; and
- TYPE, checks for systematic absences in various lattice types.
- General Kinetic Theory
- GRAINGROWTH, simulates grain growth kinetics using a Monte
Carlo method in two dimensions.
- Neural Network Analysis
- BAINITEPLATE_THICKNESS, estimates the bainite plate thickness
of low-alloy steels as a function of transformation temperature, the
chemical free energy available for nucleation, and the strength of
austerite at the transformation temperature;
- MA-STEEL, predicts the yield strength, ultimate tensile strength,
and elongation of mechanically alloyed oxide dispersion strengthened ferritic
stainless steels as a nonlinear function of the important processing and
service variables;
- NEURAL, predicts the Ac1 and Ac3 temperatures of steel as functions
of the chemical compositions and heating rate; and
- WELD_TOUGHNESS, estimates the Charpy toughness of steel as a
function of strength, microstructure, chemical composition and temperature.
This is just a partial listing. Many other programs are available.
[http://www.msm.cam.ac.uk/map/entry.html]
- Mapa
- Modular Accelerator Physics Analysis is a package
for designing and modeling particle accelerators.
It is an object-oriented
C++/Motif-based
package whose features include:
- parsing of MAD and SIL
files, including full support for formulas;
- on-line tracking with fully interactive phase space surface of
section (SOS) plots;
- interactive changing of beam and/or element parameters;
- plotting the footprint of the full accelerator beamline to quickly
check the physical layout;
- plotting the Twiss parameters or the linear and second-order
dispersion using interactive plots; and
- writing to SIL files.
Although this is not yet (7/00) available, the developers plan to release
the full source code.
[http://www.techxhome.com/products/mapa/]
- MAPC
- A C++ library for manipulating algebraically
defined points and curves in the plain.
It represents points and curves exactly and makes use of several
techniques for increasing the efficieny of manipulating the points.
MAPC provides classes for representing and manipulating:
- multivariate polynomials with floating piont, multiprecision
integer, or multiprecision rational coefficients;
- algebraic numbers represented as the roots of polynomials
within an interval;
- 1- or 2-D points whose coordinates are defined as either
algebraic or rational numbers;
- sections of algebraic plane curves; and
- 1- and 2-D boxes.
Algorithms are implemented which provide functions for:
- rapidly finding the sign of a determinant of arbitrary size with
entries that are arbitrary sized integers;
- isolating all intersections of two algebraic plane curves
in a region; and
- decomposing a plane algebraic curve into monotonic subsections.
A source code distribution is available. It is built on top of
the LiDIA library and also makes use of
LAPACK.
[http://www.cs.unc.edu/~geom/MAPC/]
- Mapedit
- A graphical editor for Web image maps, i.e. clickable
image maps. It can be used to create and edit both client-side
and server-side imagemaps.
Mapedit is available in binary form for
several UNIX/X11 platforms including Linux.
[http://www.boutell.com/mapedit/]
- MAPGEN/PLOTGEN
- MAPGEN is
A collection of programs to create graphical displays or maps
of data with geographic coordinates as well as legend information
and graticule plots. This is done by several programs which produce
metagraphical input (called overlay files) which are displayed
either individually or selectively on a wide variety of plotting
devices.
PLOTGEN is a part of the MAPGEN system used for creating
plots of X-Y data instead of geographic data.
MAPGEN/PLOTGEN is written in C and should install on most
generic UNIX systems with an appropriate compiler.
The use of the package also requires the installation of
the PROJ cartographic projection
system and a device independent vector graphics system,
both of which are available in separate directories at
the same site. The graphics system includes drivers for
creating PostScript output files.
[ftp://kai.er.usgs.gov/ftp/MAPGEN/mapgen.html]
- Mapil
- A Python script that interfaces with
PGP to encode or decode email messages.
It supports the P/MIME standard for
encrypting or signing MIME messages and can maintain a database
of recipients so messages can be automatically tailored to the
recipient.
The features of Mapil include
support for PGP 2.x and 5.0,
support for interactive or automatic processing,
and many configuration options.
This will run on any platform with an already installed
Python distribution.
[http://www.stanford.edu/~bescoto/mapil/]
- MapIt!
- A CGI application for navigating raster maps
via a web browser. The functionality includes zooming in and out,
moving in four directions, and selecting objects and object classes
identified on the map.
This is written in Python and should
work with most HTTP servers.
[http://www.mapit.de/index.en.html]
- Maplay
- A software-only MPEG audio player.
It can play MPEG audio layer
I or II streams and decode streams to raw 16 bit pcm format at the
frequency of the stream (32, 44.1 or 48 kHz) or to 8 bit u-law
format downsampled to 8 kHz.
The source code for Maplay, written in C++, is available and
can be compiled using g++.
[http://www.geocities.com/SiliconValley/Vista/3141/maplay.html]
- MapServer
- An open source development environment for building spatially enabled
Internet applications.
A CGI application included in the package
provides numerous capabilities including:
- support for vector formats including ESRI shapefiles, simple embedded
features, and ESRI ArcSDE;
- support for 8-bit raster formats including TIFF, GeoTIFF, GIF,
PNG, ERDAS, JPEG and EPPL7;
- quadtree spatial indexing for shapefiles;
- fully customizable template-driven output;
- feature selection by item/value, point, area or other feature;
- TrueType font support;
- support for tiled raster and vector data for display;
- automatic legend and scalebar building;
- scale-dependent feature drawing and application execution;
- thematic map building using logical or regular expression based classes;
- feature labeling including label collision mediation;
- on-the-fly configuration via URLs and projection.
In addition to the MapServer plug-in CGI script, a facility called
MapScript is available which allows access to the MapServer C API
via scripting languages such as Perl.
A PHP/MapScript module is also available.
Several utility programs are contained in the MapServer
distribution including:
- shp2img, creates a map from a mapfile;
- legend, creates a legend from a mapfile;
- scalebar, creates a scalebar from a mapfile;
- sortshp, sorts a shapefile;
- sym2img, creates a graphic dump of a symbol file; and
- shptree, creates a quadtree-based spatial index for a
shapefile.
[http://mapserver.gis.umn.edu/]
- Mariposa
- A distributed database
management system which addresses fundamental
problems in the standard approach to distributed data management.
Mariposa allows database management systems (DBMS) which are far
apart and under different administrative domains to work together
to process queries by means of an economic paradigm in which processing
sites buy and sell data and query processing services.
The design principels include scalability fo a large number of
cooperating sites, local autonomy, data mobility, no global
synchronization, and ease of local configuration.
The source code for Mariposa, written in C, is available. It
is based on an early version of
Postgres95 and requires
Tcl/Tk for installation as well as an
ANSI C compiler. It is documented in a user's manual available
in PDF and PostScript format.
[http://s2k-ftp.CS.Berkeley.EDU:8000/mariposa/]
- markup
- A Scheme system for generating
LaTeX and
HTML. The use of this requires
the scsh package.
The documentation for
this is a bit sparse.
[ftp://ftp-swiss.ai.mit.edu/pub/scsh/contrib/]
[http://www.cs.cmu.edu/~spot/markup/markup.html]
- Marlais
- An interpreter for a programming language strongly resembling
Dylan. It was created to
fill a perceived void where Dylan implementations are concerned and
as such is not intended as a final release. This is a hacker
release intended as a vehicle for education, experimentation,
and also to encourage people to port it to different architectures,
add features and fix bugs. This is alpha software. This release
is known to compile on Linux boxes.
[http://www.cis.ufl.edu/~jnw/Marlais/]
- mars
- A German full text editor.
This is available as a Linux Intel binary.
[http://sunsite.unc.edu/pub/Linux/apps/editors/X/]
- MARS (regression)
- The Multivariate Adaptive
Regression Splines package
is a collection of Fortran subroutines that implement the
multivariate adaptive regression spline strategy for data
fitting and function approximation.
The source code is available and a rudimentary ASCII user's
manual is included in the package. References to published
descriptions of the method are also given.
Note: The original Statlib MARS package seems to have gone commercial,
although similar functionality can be found in a couple of add-on
packages for R, i.e.
mda and polymars.
[http://www.stat.cmu.edu/R/CRAN/src/contrib/PACKAGES.html]
- MARS (monitor)
- The Monitoring Application for Resources
and Servers is
a Java application for monitoring the status
of Internet servers. It monitors the status of both Internet services
and operating system parameters, and displays the results in a small
window.
This uses a server written in Perl
called SPOTS (Something Placed On That System) to pass data about
OS parameters to the MARS program.
The services and parameters currently (5/99) monitored include
SMTP,
POP3,
IMAP,
HTTP,
FTP,
SSH and
load average, free disk space per filesystem, free memory.
There is also planned supported for
DNS,
Telnet,
SMB CIFS services and system uptime.
A source code distribution is available which requires
JDK 1.1.7 or later and Swing 1.1.
[http://www.altara.org/mars.html]
- Marx
- An interpreted scripting language based on a C-like syntax, i.e.
a quasi-C interpreter with some extensions and exceptions.
It provides a quick way of creating graphical user interfaces
(GUIs) in X Windows. Marx also provides simplified schemes for
UNIX process control, direct shell command/script execuction and
inter-client communication via sockets. It can be easily
incorporated into C programs via its application programming
interface (API) and a mostly transparent data exchange mechanism.
Engels is a lesser version of Marx without the GUI extensions.
It is smaller and faster and good for applications without
GUI requirements.
A source code distribution of Marx is available as are
binaries for Sun SunOS and Solaris,
Alpha OSF/1, and Linux Intel platforms.
platforms. The documentation is currently the man page, a version
of which is available in PostScript format, and the beginnings
of a programmer's manual.
[http://spock.ece.drexel.edu/marx/]
- MAS
- The Modula-2 Algebra
System is an experimental computer algebra
system which combines imperative programming facilities with
algebraic specification capabilities for the design and
study of algebraic algorithms.
The goals of the system are to provide: an interactive
computer algebra system, comprehensive algorithm libraries,
a familiar program development system with an efficient compiler,
an algebraic specification component for data structure and
algorithm design, and algorithm documention which is open to
users.
Key features of the MAS system include:
- portability (with
machine dependencies isolated in a small kernel;
- extensibility
through adding and interfacing to external algorithm libraries;
- an open system architecture and transparent low-level facilities;
- automatic garbage collection and stable error handling;
- input/output
with streams; and
- expressiveness, i.e. the capability of specifying
abstract algebraic concept like rings or fields.
Library packages include those for Gröbner bases, involutive
bases, invariant polynomials, linear algebra, basic arithmetic (complex
numbers, quaternions, octonions, and finite fields), and more.
MAS is available as source code as well as an executable for
HP-UX, AIX, Linux, OS/2, Nextstep and SunOS platforms.
Extensive documentation is available in PostScript format as
well as many examples and test files. Compilation of the
source code will of course require the acquisition and
compilation of the
Modula-2 language
package.
[http://www.fmi.uni-passau.de/algebra/projects/mas.html]
- mash
- A multimedia networking toolkit with which complex multimedia programming
tasks are decomposed into an arrangement of simple objects linked together
and configured with a
scripting language.
The mash shell is the backbone of a number of new applications for
multimedia networking and collaboration.
It subsumes existing tools like vic and vat and also supports a number
of new tools that serve as vehicles to explore scalable multicast
protocols and exercise the design framework.
The available tools include:
- rsdr, a session directory tool;
- vic, a video conferencing tool;
- vat, an audio conferencing tool;
- mb, a shared whiteboard tool;
- collaborator, a combined user interface to video, audio and
mediaboard conferencing;
- nsdr, a session directory tool;
- recorder, a recorder for RTP and SRM traffic;
- player, a player for recorded RTP and SRM sessions;
- rover, a client for interacting with the MARS archive server;
- pathfinder, a web server for live and archive interaction;
- mplug, a web browser plugin for MASH scripts; and
- mediapad, a shared electronic whiteboard application for the
PalmPilot.
The available services include:
- AS1, an active service framework with a host manager (hm),
a forwarding agent (megafor), and a monitoring tool (mgamon);
- vgw, a video gateway;
- agw, an audio gateway;
- sdgw, a session announcements gateway;
- tgmb, a reliable multicast proxy for mediapad; and
- MARS, the MASH Archive Server.
A source code distribution of mash is available as are binaries
for some platforms including Linux Intel.
Extensive documentation is available for most parts of the
mash system.
[http://www-mash.cs.berkeley.edu/mash/]
- Mason
- A Perl-based Web site development and
delivery engine that allows Perl code to be embedded in
HTML and pages to be constructed from
shared, reusable components.
The features include:
- simple embedded syntax that allows HTML
pages to access the full power of Perl;
- templating with shared components, i.e. pages are built from
Perl/HTML components that can call each other and pass values
back and forth;
- parameter handling, e.g. automatic parsing of GET/POST parameters
and making them available as local variables;
- easy use of the Perl debugger;
- flexible mechanisms for caching pieces of HTML and data;
- a built-in previewer for reviewing pages while simulating
a variety of client and request conditions; and
- staging and production modes.
Mason is available as Open Source.
[http://www.masonhq.com/]
- Mason
- A tool for interactively building a firewall using
ipfwadm or ipchains.
Mason runs on the firewall machine while desired supported
connections are made, after which it constructs a list of firewall
rules for allowing/blocking those connections.
This was designed to allow even novices to build a reasonably
good packet filtering firewall.
The features of Mason include:
- accepting an mix of
ipfwadm or ipchains
log entries as input as well as running on either and creating
output from either;
- running on the firewall machine or another machine using the
firewall's packet logs as input;
- running in real-time or after the fact using firewall logs;
- a macro for dynamic IP addresses, e.g.
a PPP link;
- support for any interface that can carry TCP/IP traffic;
- recognition of any protocol listed in /etc/services
as well as commonly used ICMP protocols;
- automatically handling setups like cable modems or satellites
where the packets leave on one interface and enter on another;
- automatically handling masquerading
on the firewall;
- automatic generalization of firewall rules in several ways;
- changing rule policies on the fly without stopping and restarting;
- setting of the TOS flag for FTP, FTP-DATA, IMAP, IRC, NNTP,
POP, SSH, SNMP and Telnet to improve interactive
performance by queuing interactive packets ahead of bulk transfer
packets; and
- an extensive manual with examples.
[http://users.dhp.com/~whisper/mason/]
- masqdialer
- A daemon that uses standard
dialing tools (e.g. pppd and chat) to
initiate and terminate dialup connections to ISPs upon a request
from an authorized member of an LAN.
This is designed to provide easily accessible control of multiple
dialout modem connections to the members of a LAN using
IP masquerade for Internet
connectivity.
It has a client/server design, so if a client is available for
a platofrm then it can use masqdialer.
The available clients include Java, Win95/NT, Tcl/Tk,
Gnome and Qt clients.
Source code distributions of the server and the clients are
available.
[http://cpwright.villagenet.com/mserver/]
- Master
- A system configuration tool intended to aid system administrators in
maintaining large numbers of machines.
Master is itself OS and architecture independent but can handle
architecture and OS dependent.
The design goals included reduction of steady-state maintenance
work, reduction of machine setup time, failure recovery, and
simplicity.
The system consists of a driver program that maintains a cache of
machine information and runs any number of other programs called
modules, with each module controlling the configuration of a specific
file or subsystem.
A central repository of configuration information called the configuration
server is periodically accessed by clients to make sure their configuration
state is up to date. The server can also force clients to check for
new configuration information on demand.
A source code distribution of Master is available. It
is written in Perl and runs under both versions
4 and 5.
The distribution contains themaster program, the libraries, and
some example modules that install files, maintain crontab files,
generate /etc/netgroup files, and generate /etc/hosts
files.
[ftp://ftp.caip.rutgers.edu/pub/master/]
- MasterGear
- A portable emulator of two SEGA game consoles: the MasterSystem
and the portable GameGear. The emulator is written in C and can
be ported to any platform that can run 32-bit applications.
A source code version is available which has been successfully
compiled on Linux Intel systems.
[http://www.komkon.org/fms/MG/]
- MAT
- A distributed management tool for Linux, SunOS, and Solaris
machines.
MAT provides an easy to use GUI interface which can be
used to administer many of the common UNIX configuration files.
It can add to, modify, or delete from Users, Hosts, Groups,
Mounts, Motd, DNS client configuration, and cron jobs.
Other features include adminstering many hosts from a single
console, the ability to delegate responsibility to others,
and easy upgrading of the agent binary from the GUI.
Future (1/98) enhancements include a DNS master, an NIS
master, and a tape tool.
[http://sunsite.unc.edu/pub/Linux/system/admin/frontends/]
[http://sunsite.unc.edu/pub/Linux/Incoming/]
- MATCALC
- NOTE: This has disappeared but since it was one of the first
things I put on this list I'm just too damned sentimental to remove
it just yet.
MATCALC is an easy-to-use interactive matrix calculator designed
for easy solution of linear algebra and matrix problems involving
either real or complex numbers, easy solution to systems of linear
equations, teaching modern computational methods of linear and
matrix algebra, and solution of matrix-related problems such as finding
zeroes of real or complex polynomials, linear least-squares fits of
multivariable models, etc. It is also specially adapted to handle
singular matrices which can be difficult to handle on other
systems.
MATCALC includes full programming capabilities with facilities for
logical relations and conditions, IF and LOOP blocks, and user-defined
functions and procedures.
Users can write their own functions in C and add them to MATCALC.
The package can be configured to meet specific user requirements,
creating custom MATCALC subsets by omitting selected predefined
functions and procedures to obtain configurations ranging from
a minimal desktop calculator to a full-blown research capable setup.
Basic commands are included for entering matrices, matrix arithmetic,
adjoining matrices, selecting matrix elements, selecting rows and
columns, and for creatin special matrices. Predefined functions
and procedures are included for such problems as polynomial
arithmetic, solving systems of linear equations, finding
triangular factorizations, analyzing row-echelon matrices, finding
eigenvalues and eigenvectors, obtaining Jordan forms, and for
obtaining singular value decompositions (SVD).
The MATCALC distribution includes the source code which is
written in C. It is designed to be portable to any system
with an ANSI C compiler.
The package is document in a 71 page manual in
TeX format.
[ftp://csi.jpl.nasa.gov/pub/matlab/matcalc/]
- MatClass
- A C++ class for numerical computation. It includes a
general purpose dense, real matrix class, a family of
decomposition classes based on LU, Cholesky, Householder QR and
SVD, a familty of OLS regression classes based on the previous
decompositions, a family of special function classes, a random
number class, and a simplified input/output structure.
The documentation is contained within a reasonably complete
manual in TeX format.
[ftp://ftp.mcc.ac.uk/pub/matclass/unix/]
- MathML
- The Mathematical Markup Language is a low-level
specification for describing mathematics as a basis for machine
communication. MathML is intended to facilitate the use and re-use
of mathematical and scientific content on the Web as well as for
other applications such as computer algebra systems, print typesetting,
and voice synthesis.
It is an application of XML and as such will
eventually allow browsers to natively render mathematical expressions.
It consists of a number of XML tags used to mark up an equation in
terms of its presentation as well as its semantics, i.e. it attempts
to capture some of the meaning behind the equations rather than
concentrating entirely how they're going to be formatted.
Packages that implement MathML include:
- Amaya, the W3C's browser and authoring tool;
[http://www.w3.org/Math/]
- WebEQ
- A Java applet for viewing Web pages with
MathML.
[http://www.webeq.com/webeq/]
- Mathomatic
- A symbolic math program that can automatically solve,
simplify, and combine algebraic equations, do calculus
operations, perform polynomial and complex arithmetic, and
much more. The C source code for this is available and
should compile on just about any UNIX box. A manual is
available separately for a price.
[http://www.netlib.no/netlib/env/]
[http://netlib2.cs.utk.edu/env/]
- Mathopd
- A very small and very fast HTTP server for
UNIX systems.
It is designed to handle a large number of connections with
minimal fuss, containing no unnecessary add-ons.
[http://mathop.diva.nl/]
- MathSpad
- A general purpose structure editor which is particularly
useful for writing articles that contain substantial amounts
of mathematical calculations.
MathSpad facilitates the creation of such documents with a
feature called a stencil which defines two views of a document, i.e.
the on-screen view and the output view. The on-screen view is
almost WYSIWYG while the output view is a file written in
a ASCII-based markup language. The system is optimized for
TeX and LaTeX but
can also be used to produce HTML or
troff documents.
The features of MathSpad include:
- the on-screen simulation of what
will be produced in the output makes this package partially WYSIWYG,
and even when an on-screen structure can't be exactly reproduced
a screen representation of some sort can be produced;
- a large collection of symbols available by either clicking on them
or using their keyboard shortcuts;
- a context sensitive help
facility which explains every part of the system (in addition to
a tutorial);
- an interface to the ispell
spelling checker;
- editing operations using the same key bindings
as Emacs;
- templates which define how something
(i.e. a notation or construction) should both be displayed on the
screen and represented in a mark-up language can be constructed
using a template definition tool and a collection of examples;
- search and replace for characters, works, and even templates;
- the flexibility to change keyboard definitions, add your own
symbols, use your own fonts, adust the encoding, or change the
mark-up output that should be produced; and
- an experimental
Maple interface.
Planned features include multiple output
formats for the same template; better keyboard definitions;
more stencils; more primitives to define templates; shortcuts for
templates; support for internationalism; document conversion; and
much more.
The MathSpad distribution includes the source code, written in
C and C++, and a PostScript format version of the manual. It
should install easily on any UNIX system with a compiler for
C and C++ (gcc will work) and X11. A configure script eases
the installation procedure.
[http://www.cs.ruu.nl/pub/tex-archive/support/mathspad/]
[http://metalab.unc.edu/pub/packages/TeX/support/mathspad/]
- Math3d
- A 3-D computer graphics math library intended to simplify notation
and produce easily maintainable code.
It is designed to seamlessly integrate with
OpenGL.
The classes include:
- M2d, M3d, M4d, 2-, 3- and 4-D vectors;
- MQuat, quaternions;
- MRot, rotation in axis/angle representation;
- M4x4, a 4x4 homogenous matrix;
- M3Frame, a Frenet 3-frame;
- MLookAt, a Frenet 3-frame plus distance;
- M2dRect, a 2-D rectangle; and
- M3dBox, an axis-aligned bounding box.
[http://math3d.sourceforge.net/]
- Matlab macros
- Freely available Matlab-related packages include:
- Air-Sea, for computing surface wind and heat
flux components from measurements;
- ARfit, for the estimation and
spectral decomposition
of multivariate autoregressive models;
- bobstuff, for performing vector correlation,
complex correlation, and other statistical tasks;
- Bode Step Toolbox, a
toolbox for the design of control
systems with maximized feedback;
- Bootstrap Toolbox, a set of functions
for resampling, hypothesis testing and confidence interval estimation;
- calibr, a CCD camera calibration toolbox;
- Clusters, for performing clustering tasks;
- Communication System Toolbox,
for working with the digital coding of waveforms and digital transmission
systems;
- Coral, for analyzing
seismic waveform data;
- CtrlLAB, for feedback system analysis and design;
- CUTE, a suite of programs and test problems for
exploring linear and nonlinear optimization;
- Data Visualization Toolbox, a
set of programs for performing various data visualization tasks;
- DBT, a toolbox
for radar array processing;
- Delta Toolbox, for control or systems
engineering;
- Differentiation Matrix Suite,
Matlab functions for solving DEs using
spectral collocation;
- DiffMan, a toolbox for solving differential
equations on manifolds;
- DMTTEQ Toolbox, a
toolbox for designing and testing various
time domain equalizer design methods;
- Econometrics Toolbox, a collection
of econometric estimation methods;
- FastICA, implements a fast fixed-point
algorithm for independent component analysis and projection pursuit
- FISMAT, for working with fuzzy systems;
- Fraclab, for fractal analysis in signal processing;
- GABLE, for learning geometric algebra;
- GAOT, for experiments in optimization using
genetic algorithms;
- Geodetic Toolbox, a
toolbox for geodetic calculations;
- GTM, the implementation of a mathematical model
for density modeling and visualization;
- GUISDAP, an incoherent scatter design and
analysis package;
- HUTear, a toolbox
for auditory modeling;
- ica, for performing independent component analysis;
- Krigeage, a
kriging toolbox;
- LIPSOL, for solving linear programs using
interior point methods;
- LMITOOL, for solving optimization problems;
- LRD, for the joint estimation of the parameters
of long-range dependence;
- LSTT, a
toolbox for performing various least squares calculations;
- lyngby, a toolbox
for analyzing fMRI times series;
- Matlab Astronomy Library, a
large collection of astronomy-related programs;
- matlabPyrTools, tools for multi-scale
image processing;
- MatSeis, a seismic toolbox;
- MAXDET, for solving determinant maximization
problems;
- MCS, a program for bound constrained global
optimization using function values only and based on a multilevel
coordinate search procedure;
- MCSSA, tools for implementing Monte Carlo
testing of singular spectrum analysis results;
- MexCDF, an interface with
NetCDF;
- Mie Scattering Toolbox, a
collection of functions for performing
scattering calculations;
- MINQ, a program for bound constrained
indefinite quadratic programming based on rank 1 modifications;
- M-Map, for creating geophysical field maps in
several projections;
- MRPSD, a set of
programs for creating pulse sequence diagrams
- MSSA, tools for implementing multichannel
singular spectrum analysis;
- MTM, for producing estimates of power
spectral density from time series using the multiple taper method;
- NBI, for solving nonlinear multicriteria
optimization problems;
- Netlab, a set of tools for the simulation
of theoretically well-founded neural network algorithms;
- NetSolve, a client/server
application for solving
computational problems over a network;
- NNSYSID, tools for neural network based
identification
of nonlinear dynamic systems;
- Numerical Integration Toolbox, a
toolbox for 1-, 2-, and n-D numerical integration;
- N-way Toolbox, a
toolbox implementing the Tucker models for N-way factor analysis;
- OCEANS, for computing
various oceanography-related
quantities;
- Octave, a Matlab-like program that can read most
Matlab scripts;
- OMP, a package
for applying optimal multiparameter analysis in oceanography;
- OPNML, a set of functions for postprocessing
results from finite element hydrodynamic simulation codes;
- Polynomial Toolbox, for performing
many types of computations with and on polynomial matrices;
- PRECISE, a Matlab
toolkit for exploring the impact of finite precision on the quality
of convergence of numerical methods;
- PSD, for spectral estimation by the maximum
entropy and Welch overlapped segment methods;
- PyrTools, for multi-scale image processing;
- QMG, for geometric modeling and mesh generation in
2- and 3-D;
- Regularization Tools, for analyzing
and experimenting with solution methods for discrete ill-posed problems;
- Rice Wavelet Toolbox, for wavelet
and filter bank design and analysis;
- RIOTS, for solving optimal control problems;
- Robotics Toolbox, a collection of
functions useful for robotics applications;
- RPSstuff, for performing various time series
manipulations and analyses;
- Schwarz-Christoffel Toolbox,
for the computation and visualization of Schwarz-Christoffel conformal maps;
- SDPpack, for semidefinite programming;
- SDPSOL, for semidefinite programming;
- SEA-MAT, a collection of Matlab tools for
the oceanographic community;
- SLS, for sparse least squares problems;
- Smoothing Toolbox, a collection
of tools for nonparametric regression and smoothing techniques;
- SOM Toolbox, a
toolbox implementing the self-organzing map (SOM) algorithm;
- SPACELIB, a library for 3-D kinematics
and the dynamics of systems of rigid bodies;
- Spatial Statistics Toolbox, a
toolbox for spatial statistics as used in econometrics;
- SP-Semi, for semidefinite programming;
- SSA, for singular spectrum analysis;
- STAPLOT, for analyzing oceanographic data
during and after a cruise;
- Statbox, a library of statistical functions;
- Source Coding Toolbox, a source
coding toolbox;
- Tela, a programming and analysis environment that
can translate Matlab programs to its own format;
- Templates, a library for numeric computation;
- Test Matrix Toolbox, a collection of
test matrices and tools for visualizing them;
- TFTB, for the analysis of non-stationary signals
using time-frequency distributions;
- Timeplt, for the Gregorian labeling of time
series and other plots;
- TMath, a Tcl/Tk interface;
- TOMLAB, a general purpose environment for
research and teaching in optimization;
- Tree-Ring Toolbox, a set
of functions for tree-ring analysis;
- VRMLplot, for creating VRML plots from
bathymetric data;
- WAT, a toolbox
for the empirical and theoretical statistical analysis of waves;
- WAVEKIT, functions for wavelets and wavelet
packet algorithms;
- Wavelet Package, for working with
compactly supported wavelets;
- ZMAP, for implementing
a broad range of traditional and novel
techniques for seismicity analysis
- Matlab (Classic)
- This is a version of Matlab from 1981. It featured an
interactive command-line interface and included various
LINPACK
and EISPACK routines.
Matrices could be defined and operated on
without using the loop structures of Fortran.
New functions could be defined and
used, and Matlab itself could be used as a subroutine to be
called from other programs. The source code, about 7000 lines
of Fortran, for this early version is available. See how Cleve
Moler first attempted to implement a matrix manipulation laboratory
in Fortran. The documentation is contained in a 300+ kb ASCII
text file and includes several examples.
[ftp://csi.jpl.nasa.gov/pub/matlab/classic/]
[http://www.izap.com/~sirlin/matlab/]
- Matlab Astronomy Library
- A collection of Matlab codes for performing various types of analyses
on astronomical data, although most are generic and have wider
application.
Currently (10/97) the routines include those for performing:
Gram-Schmidt orthonormalization,
low-pas filtering of evenly spaced data,
Haar wavelet transforms,
the complex bi-conjugate gradient method,
conjugate gradient least squares,
the complex error function,
Fourier deconvolution,
the Hankel transform using the backprojection method,
the Hilbert transform,
linear least squares,
and much more.
Some of these may also work with the mostly Matlab-compatible
package called