Summary
FOCL/S is a single-user version of the FOCAL/69 programming language designed for 8K PDP-8/12 computer systems. It functions as a superset of FOCAL/69, maintaining syntactic compatibility while introducing several enhancements for improved performance and functionality.
Key Features and Enhancements:
- Memory Management: Text, variables, the pushdown list, and extended functions have been relocated to Field 1. This optimization frees up memory in Field 0 for user-defined functions and allows for a more efficient trade-off between text storage and variable space.
- Array Support: The language supports up to eight multiple-subscripted array variables.
- Programming Capabilities: Includes direct core accessing, execution of machine language instructions for hardware control, octal/decimal conversion, and a new "ON" command for three-branch conditional logic.
- Debugging and Usage: The system features XOD compatibility for easier debugging, support for long command lines via a continuation character (Control/K), and improved error diagnostics with specific line number references.
- Compatibility: While mostly identical to FOCAL/69, it removes the "Library Exit" command and alters the variable type-out order (displaying the most recently created variables first).
The document also provides comprehensive technical details, including a core memory map, explanations of how to implement user-defined functions, and a detailed list of error codes and their meanings to assist developers in troubleshooting.