Desktop Calculator Formac(ID:5092/des005)


System similar to Mathlab written as a subset of FORMAC


Related languages
FORMAC => Desktop Calculator Formac   Subset

References:
  • Bleiweiss, L., Bond, E., Cundall, P., Hirschkop R. "A time-shared algebraic desk calculator version of FORMAC" Tech. Rep. No. TR00.1415, IBM, System Development Division, Poughkeepsie, NY, March 1966 view details
  • Bond, Elaine R. "History, features, and commentary on FORMAC" view details Abstract: The purpose of this paper is to summarize significant characteristics and features of the FORMAC system. FORMAC (FORmula MAnipulation Compiler), an extension of IBM 7090/94 FORTRAN IV, permits algebraic manipulation of mathematical expressions. The FORMAC system provides such capabilities as symbolic differentiation, substitution, evaluation, expansion, and finding coefficients. This paper comments on the project formation, FORMAC capability and language, overall approach to implementation, application problems for which the system has proved of value, and the results of an experimental venture to develop a time-sharing FORMAC algebraic desk calculator.
    Extract: Formac Algebraic Desk Calculator
    Algebraic Desk Calculator
    For many applications an ideal situation for a system such as FORMAC is a real-time, time-sharing, remote-console environment. This is true because in analytic problem solving one often wishes to examine the results of a computation before deciding what the next step in the process should be.
    An interesting venture along this line was conducted with a subset of the FORMAC system and MIT's (Project MAC) Compatible Time-Sharing System (CTSS}; a FORMAC algebraic, desk-calculator program was developed that permits users to manipulate a class of formal expressions in a time-shared environment.
    The system works in the following way. After a normal CTSS log-in procedure, and a loading of the desk-calculator program, the user at the remote console may enter algebraic desk-calculator statements. The statements are syntactically similar to FORTRAN arithmetic statements and comprise a subset of the regular FORMAC statements. Automatic simplification is a feature of each algebraic command. The complete list of commands is given in Figure 3. The desk calculator statements are executed immediately. No provision is made for a stored program; however, results of an individual computation or manipulation are available for further manipulation, or for printing on the user's console.


          in [ACM] Proceedings of the ACM symposium on Symbolic and algebraic manipulation, 1966 view details
  • Sammet, Jean E. "Survey of formula manipulation" view details
          in [ACM] CACM 9(08) August 1966 view details
  • van Hulzen, J. A. "FORMAC today, or what can happen to an orphan", ACM SIGSAM Bulletin, 8(1), February 1974 pp5-7 view details Extract: Introduction: The simple past
    Introduction: The simple past.
    The first version of FORMAC was written for the IBM 7090/94 as an extension of FORTRAN IV running under the IBM IBSYS-IBJOB monitor.  It was an experimental programming system to assist in the symbolic manipulation of mathematical expressions and provided such capabilities as symbolic differentiation, expansion, substitution, comparison and evaluation of expressions.  The project originated in August 1962 and the system was released in November 1964.  References are given in [27].
    Comments of users initialized the design and implementation of PL/I-FORMAC, a more flexible system based on the same principles.  The first version was released in 1967, the second in September 1969, [27].  The PL/I-FORMAC interpreter, an extension of the OS/360 PL/I(F) compiler, was originally designed to run on an IBM S360 H-level model 40 and above.  It consists of two modules of assembled routines whi6h are added to a system's library:  the preprocessor and the objecttime library. In March 1970 the SHARE SMC project (now LASM project) composed a list of known errors and proposed extensions of the IBM preprocessor, [21].  In April 1970 a new preprocessor became available.  It was developed at KFA-Julich, Germany-West, by R. Schwerdt, [19].  The errors were corrected and most of the proposed extensions were implemented.
    To make the FORMAC-system again available to FORTRAN-users, a new FORTRAN-FORMAC, comparable with PL/I-FORMAC, has been written for and tested with FORTRAN IV(H) under 0S/360 in 1970 at DRZ-Darmstadt, Germany-West, by Knut A. Bahr, [1].
    At 1.1.1971 IBM stopped the FORMAC project. Information about SHARE's FORMAC maintenance and distribution is given in SIGSAM Bulletin No. 26, page 2.  The address of the FORMAC library of SEAS is: ZAM/KFA-Juelich, Postfach 365, D517 Juelich I, Germany-West.
    Extract: Desktop Calculator FORMAC
    Probably the first conversational system was on
    on-line algebraic deskcalculator version of IBM
    7090/94 FORMAC, [4]. This experimental program
    was developed by revising subparts of the 7090/94
    FORMAC system to run as a deskcalculator under the
    MIT (Project MAC) Compatible Time Sharing System. Extract: SCOPE FORMAC
    Another early system was the Scope FORMAC
    Language, [28]. When the system was operational
    it ran in a 256 K partition of an IBM 360/50 with
    an IBM 2250 graphic display unit as I/0 device.
    The system was last operational in January 1969,
    at which time IBM decided to support it no
    longer, [29]. Extract: FINSTER
    A prototype of FINSTER ran on the
    IBM 360/75 of KFA-Juelich in 1970, in a 160 K
    partition under OS/MFT and serving four 2260
    terminals. Extract: FORDECAL
    FORDECAL is running in a number of institutions
    on an IBM 360/67 under CP67-CMS and serving 2741
    terminals. The system may be used on an IBM 370
    under VM, although the testing of this FORDECAL
    version is not yet finished, [15]. A TSO-version
    will be announced in the near future, [15].
    FORDECAL is an interactive system similar to a
    desk calculator. The statements are executed as
    soon as they have been typed on the key-board of
    the terminal. Although this system does not
    allow to execute a program with the whole range
    the PL/I-FORMAC language itself offers, some
    statements may be executed repeatedly with either
    a DO or BEGIN command (compound DO-loops, DOgroups
    and blocks respectively). The system allows
    to c~ll user typed (function) procedures, which
    can be recursive. The FORDECAL statements
    resemble the PL/I-FORMAC statements, but are
    written in a syntax as nearly similar as the
    usual mathematical syntax. FORDECAL uses only
    the FORMAC-components of PL/I-FORMAC and can be
    used without any knowledge of PL/I and with only
    a vague impression of FORMAC. [ii] and [12] survey
    the system, [13] contains a description of some
    of the practised implementation techniques and
    [14], written in French, offers an accurate and
    detailed description of FORDECAL and its
    implementation, Extract: TUTOR
    TUTOR, [16], was originally implemented on an IBM
    360/65 at Calspan Corporation, Buffalo, N.Y.,
    under OS/MFT using the FORTRAN GSP package for
    the graphics facility (an IBM 2250 as I/O device)
    and an interface program to make it compatable
    with PL/I. When MVT and the PL/I GSP package
    became available the program was modified for
    these facilities. A normal run at Calspan
    allowed 250 K. Due to changes in Calspan's
    computer configuration TUTOR's future is
    uncertain, [17].
    TUTOR is a simple conversational system without
    advanced control commands as provided in FORDECAL.
    An essential difference between TUTOR and the
    other interactive systems is its capability of
    accepting two-sides equations, that is mathematical
    expressions on either or both sides of the
    equal sign. Special commands to manipulate
    equations are implemented. Extract: SYMBAS
    An experimental version of SYMBAS, a FORMAC
    orientated version of BASIC, is running under TSS
    since summer 1972 at KFA-J~lich serving 2741
    terminals. A TSO-version of SYMBAS, running
    under VS2, is in consideration, [9]. To have a
    system available which is well suited for symbolic
    as well as numerical applications the
    interactive, line-orientated BASIC system was
    chosen and its semantics were extended in the
    case of symbolic applications. This technique
    enabled the implementation of an interpreter
    which evaluates expressions numerically when ~
    ever possible. In this extension BASIC
    variables do not need to have assigned numerical
    values; they may be interpreted as atoms or
    symbolic expressions may be assigned to them. So
    assigning numerical values to all variables of a
    SYMBAS program does the program run as if it
    would have been a proper BASIC program.
    The matrix statements of BASIC are also included
    and are extended to facilitate fraction free
    elimination algorithms for symbolic matrices.
    The run-time routines of FORMAC are used to do
    symbolic computations.
    A special editor is available to create and
    change programs. A debugging system enables the
    user to stop his program at any point, to display
    and to reassign variables, and to change statements
    and program flow.
          in [ACM] CACM 9(08) August 1966 view details