Browse Prior Art Database

Realtime Extensions to Basic

IP.com Disclosure Number: IPCOM000082090D
Original Publication Date: 1974-Oct-01
Included in the Prior Art Database: 2005-Feb-28
Document File: 5 page(s) / 22K

Publishing Venue

IBM

Related People

Arthur, AJ: AUTHOR

Abstract

Realtime extensions to BASIC are thoroughly imbedded into the syntax and semantics of BASIC as currently practiced. This avoids the need to do the functions by subroutines or intrinsic functions, which are poorly integrated into both syntax and semantics, e.g., ISA S61.1 FORTRAN Subroutines For Industrial Control.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 22% of the total text.

Page 1 of 5

Realtime Extensions to Basic

Realtime extensions to BASIC are thoroughly imbedded into the syntax and semantics of BASIC as currently practiced. This avoids the need to do the functions by subroutines or intrinsic functions, which are poorly integrated into both syntax and semantics, e.g., ISA S61.1 FORTRAN Subroutines For Industrial Control.

Sensor based applications require (a) the ability to delay execution of subsequent statements in a program by a stated time period, (b) the ability to delay execution of subsequent statements in a program until a stated event has occurred, (c) the ability to execute a named program at a given time of day, (d) the ability to execute a named program on occurrence of a stated event, (e) the ability to read/write data to/from sensor I/O devices, and (f) the ability to coordinate the activities of a suite of programs.

Points c, d and f normally are most conveniently done by centralized facilities with individual programs having minimum awareness of interactions and scheduling. To offer these capabilities to a user of BASIC in a manner which is a natural extension of current BASIC, such extensions must recognize the limitations of the underlying philosophy of BASIC.

For single-station BASIC users, these extensions allow programming of realtime experiments or dedicated realtime applications as easily as prior BASIC programming. Names are assigned to data files, sensor lists and interrupt lists. Most techniques used for data file names could readily be applied to sensor list and interrupt list names, i.e., reserved system names, default names, or implicit names, e.g., a READ SENSOR statement without a sensor list name is then legal; the system defaults to a predefined sensor list.

These extensions allow a time sharing user to design, program and execute laboratory experiments from a terminal and the experimental hardware, as long as the name assigned to the allowed shared machine resources are known. This includes names of data files, sensor lists and interrupt lists assigned, or the system might default to certain names based on, for example, user id at the terminal. The user is only limited by the fact that he is coding a realtime job in a single-thread language, BASIC. Each extension is an extension of a concept and syntax already in BASIC. The WAIT statement is an extension of the concept of the WAIT clause in the INPUT statement; the READ/WRITE SENSOR statements are analogs of the READ/WRITE FILE statements, and the ON ILT/TIM statements are extensions of the ON...GO TO and ON ERROR statements.

The syntax of the statements is displayed in a modified Backus-Naur form where {x/y} means one of x or y must be chosen, [x] means x is optional, words in capital letters must be coded exactly, and words in lower case letters represent items replaced by a programmer when coding the statements.

The WAIT statement delays execution of subsequent statements in a program, and is formatted "WAIT {e Absolute Val...