IBM System/36 BASIC was an interpreter for the IBM System/36 midrange computer. System/36 BASIC was first offered in 1983, and as such, contained many of the trappings that a BASIC program would have encountered in the time period of the IBM PC, the Commodore 64, the VIC-20, the TRS-80, or many other offerings of the Seventies and early Eighties. As such, S/36 BASIC uses conventions that are no longer standard in modern BASICs, such as line numbers, and does not support newer features such as , procedures, properties, and so forth. BASIC interpreters written in the Seventies tended to "do odd things odd ways". For example, on the Apple II, a programmer could embed a command into a program via PRINT, when prefaced by the character string . and could be used in various BASICs to examine memory content or change it, or even to create an ad hoc machine language program and then run it. System/36 BASIC tends to stay away from these odd conventions; however, the programmer could call for the Alarm (a buzzing sound made by the terminal) via . BASIC statements are expected to be entered in capital letters, and while the operator can press Cmd2 to use lowercase, the BASIC interpreter will convert non-comment keywords into uppercase. So that BASIC could be useful in a midrange computing environment, IBM added extensions to the language that were specific to the hardware and software conventions of the IBM System/36 Family, such as the file, support for indexed, direct, and sequential disk files, the ability to open and close multiple printer files, and LOAD/SAVE from libraries on the fixed disk. Statements, functions, and commands These core BASIC statements, functions, and commands were used: DATA DIM END FOR...NEXT GOSUB...RETURN GOTO IF...THEN INPUT LET ON...GOTO PRINT PRINT USING READ REM STOP ASC() RND() SIN() COS() TAN() TAB() SQRT() LOG() LIST More advanced IBM-supplied statements included: ON ERROR Allows error trapping OPTION Permits program-wide properties such as Base 1 or Base 0 array indexing, long or short precision, etc. OPEN Allows a file or device (formatted workstation, printer) to be opened CLOSE Closes a file or device WRITE Outputs to a file or device REWRITE Changes a record or display format APPEND Adds to a file DELETE Deletes a record from a file IMAGE Defines the format of a record using COBOL-like syntax FORM Defines the format of a record using