IBM System/34 BASIC was an interpreter for the IBM System/34 midrange computer. System/34 BASIC was first offered in 1978, and as such, contained many of the trappings that a BASIC program would have encountered in the time period of the TRS-80, or many other offerings of the 1970s and early 1980s. As such, S/34 BASIC uses conventions that are no longer standard in modern BASICs, such as line numbers, and does not support newer features such as WHILE/WEND, DO/ENDDO, WITH/END WITH, procedures, properties, and so forth. BASIC conventions BASIC interpreters written in the Seventies tended to "do odd things odd ways." For example, on the Apple II, a programmer could embed a DOS command into a program via PRINT, when prefaced by the character string . PEEK and POKE 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/34 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/34 Family, such as the WORKSTN 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. BASIC statements These core BASIC statements, functions, and commands were used: More advanced IBM-supplied statements included: ON ERROR is an error-trapping statement that allows BASIC to suspend an error that might otherwise stop a BASIC program from running and perform an error-handling routine instead. Variants include suffixing OFLOW, ZDIV, and other error types to a statement and immediately trap these errors. OPTION allows the BASIC program to meet special criteria. Sometimes BASIC did not have very much user space (since all S/34 programs are limited to 64K) and the area called "code space" which contains the current user program must reside within the user space. Therefore, users could choose OPTION LPREC which causes BASIC to compute with double-precision (long) numerics, or OPTION SPREC which provides more space