• [Photo] Kevin OKane June 21, 2002
    The Mumps language originated in the mid-60's at the Massachusetts General Hospital. Although most implementations are proprietary, consolidated into the hands of a small number of companies, an open source version of the language has been developed which is distributed freely under the GNU GPL and LGPL licenses.

    Features:

    It supports an hierarchical data base facility. Mumps data sets are not only organized according to traditional sequential and direct access models, but also as hierarchical trees whose data nodes are addressed as multi-level path descriptions in a manner that is easy for a programmer to master in a relatively short time.

    The data base can also be viewed as string-indexed, many-dimensional matrices of effectively unlimited size.

    The underlying data base processor, the Berkeley DB, can be configured for data bases up to 256 terabytes in size.

    Mumps has flexible and powerful string manipulation facilities. Its built-in string manipulation operators and functions, which include the Perl Compatible Regular Expression Library, permit complex string manipulation and pattern matching operations.

    This version of Mumps, unlike all others, is a compiler that translates Mumps code to C. Mumps subroutines can be constructed so that they can be called by any other program that obeys the C calling conventions. Similarly, Mumps programs and subroutines can call any other system facility that uses a C calling structure. This feature is unique to this version of Mumps and makes it possible to exploit Mumps' features in non-Mumps contexts.

    The data base can operate in standalone or client-server mode. In standalone mode, multiple programs can simultaneously access the same data base files. In client-server mode, Mumps client routines can access local or remote Mumps data bases through TCP/IP or UDP connections. TCP/IP connections have the option of using OpenSSL encryption. These are compile time switch options and require no specific program modifications to use.

    Mumps programs can be used with the Gtk based Glade "drag and drop" GUI builder. This permits rapid deployment of user friendly GUI interfaces (see references below for examples).

    Mumps routines can be used to easily construct CGI scripts for data base access. Mumps programs can be called directly by the web server and have builtin facilities to parse the QUERY_STRING web server environment variable to instantiated program variables and data (see references).

    Direct SQL commands can access PostgreSQL RDBMS data bases (can be modified for MySQL) with the results archived to native tables (matrices) or trees.

    Initial testing has been done using Mumps in connection with the NCBI BLAST software (ftp.ncbi.nih.gov/blast/demo). In the test, data were moved directly from the "doblast" example output routines to a Mumps tree-structured data base and subsequently accessed without problems. There appear to be no compatibility issues involved with using Mumps with the NCBI Toolkit. The prototype code is given in the references below. It demonstrates, albeit somewhat trivially, an easy way to organize sequence matching data hierarchically.

    We would be very interested in any suggestions regarding how we might extend this work to make it more useful for bioinformatic applications as well as suggestions for demonstration projects.

    As noted, all the software is open source and GUN GPL/LGPL. The main web page for this work, which includes coding examples, manuals and so forth, is:

    http://www.cs.uni.edu/~okane

    The direct link to the documentation is:

    http://www.cs.uni.edu/~okane/source/compiler.html

    The link to the BLAST example is:

    http://www.cs.uni.edu/~okane/source/compiler.html#blast

    The source code is at:

    http://www.cs.uni.edu/~okane/source

    The main development vehicle is Linux.

Discussion forums: Mumps Language Bioinformatic Database Resources

Expanded view | Monitor forum | Save place

Start a new thread:

You have to be logged in to post a reply.

© 1998-2025 Scilico, LLC. All rights reserved.