💾 Archived View for gmi.noulin.net › rfc › rfc578.gmi captured on 2022-04-28 at 22:29:59. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-12-05)
-=-=-=-=-=-=-
Network Working Group A. Bhushan Request for Comments: 578 N. Ryan NIC: 19501 MIT-PTD (DMS) October 1973 USING MIT-MATHLAB MACSYMA FROM MIT-DMS MUDDLE An Experiment in Automated Resource Sharing I. INTRODUCTION This paper describes an experiment in non-trivial automated resource sharing between dissimilar systems. The goal of the experiment was to interface the MUDDLE system at MIT-DMS (Host 70.) to the MACSYMA system at MIT-Mathlab (Host 198.), in such a manner that the MUDDLE- user at MIT-DMS is not required to know anything about the ARPANET, Mathlab, or even MACSYMA. In fact, the user need not be aware that part of the computation is performed by MACSYMA on the Mathlab computer. This experiment differs from the MATHLAB-UCSB/OLS experiment (ref. NWG/RFC 525, NIC 17161 "MIT-MATHLAB Meets UCSB-OLS" by Parrish and Pickens) in several important respects. First, the use of the remote network resource is *completely automated*. The human user does nothing more than use a function in MUDDLE such as "INTEGRATE" which requires the remote MACSYMA resource for computation. The program performs all the required tasks of connecting to Mathlab, log in, and using MACSYMA. (In the UCSB-OLS experiment, the user had to manually connect to Mathlab, login, use MACSYMA, type the input in a form suitable for MACSYMA, save the results in a file at Mathlab, disconnect from Mathlab, start a retrieval job at UCSB to retrieve the "saved" results, and finally submit the results to a local program.) Second, the use of the remote resource is *completely integrated* into the local MUDDLE system. The user can specify the computations in a form that MUDDLE understands. The resource-sharing program (whose existence the user need not be aware of) does the translation from the MUDDLE "prefix" form to the MACSYMA "infix" form on input, and vice-versa on output. This ability allows the MACSYMA resources to be completely integrated into MUDDLE to the extent that parts of the same computation can be performed by MACSYMA and others by MUDDLE. II. THE MACSYMA AND MUDDLE RESOURCES Before proceeding to describe the resource sharing facility a description of the two resources, MACSYMA and MUDDLE, is in order. The MACSYMA system at Mathlab is a powerful resource for symbolic manipulation of algebraic functions. It can, among other things, Bhushan & Ryan [Page 1] RFC 578 Using MIT-MATHLAB MACSYMA from MIT-DMS MUDDLE October 1973 perform symbolic integration and differentiation, expand series, perform Laplace and inverse-Laplace transforms, solve equations and systems of equations, and simplify rational functions. (A description of MACSYMA's capabilities is given in "The MACSYMA Users' Manual" available from the MIT-Mathlab group at Project MAC.) The MUDDLE system provides a general-purpose environment suitable for automatic programming, graphics, data management, "networking", and mathematical computations. The MUDDLE language represents a powerful extension of the list processing language LISP in the area of data types such as strings, vectors, uniform vectors, and user definable types. (MUDDLE is described in some detail in "The MUDDLE Primer" (SYS.11.01) by Greg Pfister, available from the Programming Technology Division at Project MAC.) MUDDLE has extensive graphical and numerical computation facilities. The user can display graphs on ARDS and IMLAC type consoles, and on the Evans and Sutherland (E&S) display system. The MUDDLE console graphics provide a facility to view graphical representation of functions with overlay capability and automatic scaling that can be controlled by the user. The E&S provides the user with a versatile tool for studying the dynamic characteristics of graphs, curved surfaces, and other three-dimensional objects. The combination of MACSYMA, MUDDLE, and the E&S graphics capabilities represents a very powerful resource for problem solving that is integrated and made easily usable by the resource sharing facility. III. THE AUTOMATED RESOURCE-SHARING FACILITY The resource-sharing facility described herein uses the most easily accessible communication path to MACSYMA, the TELNET connection to the logger service on socket 1. No modifications were made to MACSYMA, nor were any special programs created on the Mathlab computer. The entire task of resource sharing is performed by programs in MUDDLE. Let us say on the outset that we are not advocating this mode of usage for automated resource sharing. A resource-sharing protocol that allows convenient use of remote resources via programs is a far more reliable and efficient way, but that requires work on the part of server sites. The existing protocols and systems FTP, RJE, RSEXEC, and the Datacomputer cater to a limited subset of easily managed resources. We register here our desire for uniformity (which alas is lacking) in the current systems, and work along the direction of general-purpose resource sharing. In the absence of a general resource-sharing protocol and a MACSYMA server to go along with it at Mathlab, the TELNET connection is the best a user can do. Bhushan & Ryan [Page 2] RFC 578 Using MIT-MATHLAB MACSYMA from MIT-DMS MUDDLE October 1973 The resource sharing facility comprises of several independent but integrated parts. These are: 1) Connecting to Mathlab, login, and invoking MACSYMA. 2) Conversion of MUDDLE's prefix to MACSYMA's infix form. 3) Generation of MACSYMA input. 4) Interpreting MACSYMA's results including errors and comments. 5) MACSYMA infix to MUDDLE prefix conversion. 6) Plotting graphs for the functions. 7) Allowing human intervention if desired. 8) Disconnect from MACSYMA. The user (assuming that he has loaded the necessary programs in MUDDLE) to integrate the function "3*X" has only to type: <INTEGRATE '<* .X 3>>$ where '