home *** CD-ROM | disk | FTP | other *** search
-
- Archimedes MUMPS v1.0 documentation
-
-
- INTRODUCTION
-
-
-
- What is MUMPS?
-
- MUMPS is a database programming language that supports multiple tasks and
- more than one user. It is a comprehensive, high-level language developed in
- 19xx for 'small' computers with very large 'background' memories and many
- users. The MUMPS acronym stands for:
- 'Massachusetts General Hospital Utility Multi-Programming System'.
-
-
-
- Why is it so good?
-
- Because of the high level of the language and because MUMPS is an 'ANSI
- standard' language, MUMPS routines are *VERY* portable, Any standard MUMPS
- routine will run without modification on any platform. MUMPS is very
- suitable for hiding all sorts of system specifics in just one routine,
- which means you only have to adapt a very small part of your entire
- database system for a new computer, terminal or user (only IO is affected).
- Another consequence of the high-level of the language is that all routines
- in your self-programmed database system can be very short and still perform
- a lot of tasks.
-
-
-
- The database
-
- The database(s) in a MUMPS system are built using sophisticated B-tree
- storage and retrieval algorithms that are completely invisible to the user
- (except for the fact that the user will notice that they are fast and
- efficient !) It is not necessary for MUMPS to load an entire database in
- memory before it can be used, MUMPS loads only those parts that are needed.
- Data is stored using indexes which can be built up from *ANY* string of
- characters, for example, you can have databases indexed like this:
-
- ^PHONENR("020-6385065")="VERWEIJ^1" and:
- ^PERSON("VERWEIJ",1)="Bijltjespad^22^1018KH^020^6385065" and:
- ^CITY("020")="AMSTERDAM".
-
- This way you can build multiple databases (^PHONENR,^PERSON and ^CITY)
- linked together to provide easy access for the user (and database
- programmer!). The user doesn't have to remember any difficult codes like
- '6009629452+21' and the programmer can index the data in the database with
- the input from the user. Also, databases can be treated just as if they
- consist of sets of ordinary variables! You can type: 'SET A(100)=100*100'
- (which sets the local variable A(100)) or you can type:
- 'SET ^A(100)=100*100' (which sets the *GLOBAL* variable ^A(100)). Note the
- '^' character in front of the A, it says that this variable is to be kept on
- disk (ie stored in the database)!
-
- You can see immediately from this small example that MUMPS is a very
- powerful language. And you don't have to wait ten minutes when MUMPS is
- searching for ^NAME("ZWART") in a database with 100000 names in it! The
- B-tree structure provides fast access with equal access-times for all items
- in the database.
-
-
-
- Getting started
-
- When you start MUMPS, you will be requested to 'log in' to the system. When
- requested for a 'UCI', type "SPE:SPEL" (without quotes, of course). This is
- the games UCI (User Class Identifier). Most if not all the games are in
- Dutch. You are presented with a menu, if you type "?" MUMPS will show you
- all the games you can play. Quitting from the menu is achieved by typing
- "S". At any time, typing a "S" or a <RETURN> or <ENTER> will quit what your
- doing at the moment. Choose any game by typing it's number at the menuprompt
- "Keuze:".
-
- When you quit, MUMPS will print "Goodbye". You can then login to another
- UCI, or the same again.
-
-
- Getting out!
-
- If you want to quit MUMPS completely, type "STOP" at the login prompt. It is
- very important to do this, because database corruption will result if you
- don't!
-
- If you want to program in MUMPS, login with "<UCI>:*", where <UCI> is of
- course a valid UCI name, consisting of three letters. To leave a
- programmer's shell, type "HALT" (or just "H"). More info on programming in
- MUMPS can be found in the files "ProgEnv" and "Commands".
-
-
-
- /* end of Intro */
-
-