Grapheasy(ID:8045/)Graphical extensions to Speakeasy Related languages
References: ACCURACY ACOS ACOT ADDGRAPH ADJOINT AFAM AMAT AND ANGLES ARRAY ARRAYS1 ARRAYS2 ARRAY2D ASIN ASYMMAT ATAN AUTOCORE AUTOPRIN AUTOTAB AVERAGE A1D A2D ABS BESSEL BESSELK BUGS BASE CLEAR CLEARDAT COFACTOR COLARRAY COLMAT COLMAX COLMIN COLWIDTH COMMANDS COMPILE COMPLEX CONJ CONJUGAT CONSTRAI CONTINUE CONVERT COPY CORRELAT COS COSH COT CREATE CREATEME CROSS CUMPROD CUMSUM CGAMMA DEC DEFINEA1 DEFINEA2 DELETE DERIV DEBUGGIN DATA DET DIAGELS DIAGMAT DMAT DOCUMENT DOMAIN DONTLIST DOUBLEFA DUMP DERIVATI EDIT EDITMODE EIGENSYS EIGENVAL EIGENVEC ELEMENTA ELIMCOLS ELIMELS ELIMINAT ELIMROWS ELLIPE ELLIPK END ENDAUTOP ENDLOOP EONE EQ ERF ERFC ERRORS EXECUTE EXP ECHO FLIP FOR FINDWORD FIN FRACPART FREE FRAC GE GEIGEIN GO GOTO GRAPH GRAPHICS GRID GT GAMMA HENCEFOR HIDEWORD HIERARCH HIGHWIDE HIWIDE HLABEL HSCALE HSIZE HELP IMAG IMAGPART INOUT INPUT INPUTS INSERT INTEG INTEGERS INTEGRAL INTEGRAT INTERP INTERPOL INTPART INTRPCUB INTS INT2 INT4 INVERSE IF KEEPTSO KEPT KEPTTSO KEEP LABEL LIBINDEX LIBNAMES LIBRARIE LIBRARYN LENGTH LE LINKLIB LINKULES LIST LISTHEAD LISTMEMB LISTPROG LOADDATA LOC LOCMAX LOCMIN LOCS LOG LOGGAMMA LOGIC LOWERTRI LT LINEPLOT MARGINS MAT MATH MATRICES MATRIX MATRIXDE MATRIXOP MAX MAXOFCOL MAXOFROW MEAN MELD MFAM MIN MINOFCOL MINOFROW MINOR MISCELLA MODE MODULO MONEY MOVE MYDOCS MYHELP MYKEEP MYKEPT MYLINKS MYPROCS MACHINE NE NEUMANN NEWGPAPH NEWPAGE NEWS NOCOLS NOECHO NOELS NORATION NOROOTS NOROWS NOT NOZEROS NUMBERS NAMES OBJECTS OMITCLAS ONEDIMFU ONERROR OR ORDERED ORDEPER OTHERS OUTPUT OBJECT PLOTSYMB PLOTTITL PRINTCLA PROCLIB PROD PRODCOLS PRODROWS PAUSE PROGRAM PROGRAMM PROGRAMS PUNCH PRODUCTS QUIT RANKED RANKER RATIONAL READ REAL REALPART REAL4 REAL8 RECLASS REFLECTC REFLECTR RANDOM RESUME RETURN ROLLDOWN ROLLLEFT ROLLRIGH ROLLUP ROOTS ROUNDED ROWARRAY ROWMAT ROWMAX ROWMIN RUN RESTRICT SETGAUSS SETINFIN SETJACOB SETLAGUE SETLEGEN SETLIB SETNULL SETPLOT SHIFTDOW SHIFTLEF SHIFTRIG SHIFTUP SIGN SIGNIFIC SIMEQ SIN SINGLEVA SINH SIZE SMAT SORT SPACE SPECIAL SPHBES SPHBESN SQRT STANDDEV STATISTI STOP STRUCTUR SUM SUMCOLS SUMPROD SUMROWS SUMS SUMSQ SELECT SUMSQCOL SUMSQROW SYMBOLS SYMMAT TABULATE TAN TEK TIME TOTALINT TOTINT TRACE TRANSFAM TRANSP TRANSPOS TRIG TSO TUTORIAL TWODIMFU UMAT UNITMAT UNMODULO UPPERTRI USE USEMEMBE VARIABLE VARIANCE VEC VECTOR VECTORDE VECTORS VERSIONS VFAM VLABEL VOCABULA VSCALE VSIZE WHERE WHEREVER WHOLE WRITE WHATIS ZEROS Extract: Introduction Speakeasy is a general purpose extensible language designed to provide a truly user-oriented interface to information stored in a computer complex. When operating in an interactive time-sharing environment such as TSO, Speakeasy acts as a real-time interface to large libraries of algorithmic routines. Straightforward graphical facilities combined with the existing large information base of mathematical operations enables even a novice user to quickly tailor the processor into a powerful tool for carrying out his calculations. Extract: Introduction 2 How easily and naturally the user can express his wishes; the variety and flexibility of the facilities provided to him are of course the test of the power of a particular system. The ultimate test is not how well a system performs a particular task but rather how well the system performs the tasks required by its user. Surely the most dramatic way of providing the hardware/software system for an interactive graphic environment is through a totally engineered system. In such an approach a design team creates a complete system in which a set of human-oriented tools are provided to enable users to carry out those operations that are possible and that are considered desirable. Users of such systems are taught its capabilities and by complaints and suggestions influence the design of the subsequent versions of the system. Such hard-programmed systems provide efficient utilization of hardware since each programmed option can be designed with great care. How well such a system performs is to a large extent determined by the creativity and imagination of the designers. Flexibility in such a system is generally limited since the user cannot himself easily add new capabilities without joining the design team. A creative user in an unimaginative system will therefore soon exhaust the capabilities of that system. Each piece of hardware is usually supplied with a set of driving programs that are capable of fully exploiting the capabilities of the device. In the most common approach to interactive graphics, each user of a graphics terminal is supplied with this basic information and proceeds to design an interactive system that meets his own needs. While this approach indeed provides the user with great flexibility, it obviously does so by forcing him to become the designer of the complete system. It requires that he become familiar in great detail with components of the system. For the casual computer user, or even for highly-trained specialists in many fields, this is not a satisfactory solution. Even the flexibility inherent in this apDroach suffers in that a user may not, while actually using the system, suddenly decide to make use of even a trivial extension. It is generally necessary to reconstitute the system with the new feature added. In this paper we discuss a general approach to the problem of providing sensible access to information stored in a computer complex. We show how a simple extension to an existing system provides a powerful interactive graphics facility. In this approach access to the computer is provided by a special system designed as an interface between the user and the stored information. From the user's viewpoint this interface is an interactive language processor. He communicates in a language specifically tailored to his needs. Built into the interface are a wide variety of facilities designed to address and use information stored elsewhere in the computer. This information is in the form of tables of data, documents, algorithmic techniques or even other processors. This information is made available to the user in as clear and as direct a way as possible. A clear description of how to use a particular piece of information is all that is necessary for it to be a new tool in the users' hands. As part of this large existing system, the graphics facilities described here provide a flexible and powerful tool that can be quickly and easily tailored to a wide variety of tasks. New features can be added by programming within the basic structure of the existing interactive system. Since the language processor is complete, the user may avail himself of all of the existing tools and can exploit them to his particular ends. He may, while making use of the processor, investigate approaches and ideas not planned prior to that session. In doing so, he works in a production environment that is at the same time the developmental environment. Extreme flexibility and adaptability characterizes this approach. The language processor, called Speakeasy-3 is a system that contains within the existing structure all of the mathematical tools, all of the data access methods, and all of the interactive capabilities needed to access and manipulate information in a direct and flexible way. Speakeasy is truly an extensible language. New capabilities are added to the processor by creating new modules for its libraries. This paper explores the results of adding new modules to the standard Speakeasy linkule library. In this paper the adaptation of Speakeasy to the Tektronix 4010,4011,4012 terminals will be discussed. (Interfaces to the IBM-2250terminals also exist and parallel these capabilities). The adaption required only a few hours of programming effort and is already in use in several installations. The extensions described here operate in a standard TSO environment with the standard Speakeasy processor. These additions can be described simply in terms of their usage within Speakeasy. A tutorial session describing their operation is one of many available to all users of Speakeasy. DOI |