Overview
ISO/IEC 9593-3:1990 specifies the Ada language binding for the Programmer’s Hierarchical Interactive Graphics System (PHIGS). PHIGS itself (defined in ISO/IEC 9592) is a language‑independent graphics system; this part defines how PHIGS is embedded and used from Ada programs. The standard defines Ada packages, type mappings, function/procedure names, error handling conventions, multi‑tasking considerations, and auxiliary utility packages to ensure consistent, portable PHIGS implementations for Ada.
Key Topics
- Language binding semantics - One‑to‑one mapping of PHIGS operations to Ada procedures (with a few overloaded functions such as INQ_TEXT_EXTENT for different text models).
- Data mapping and types - PHIGS primitive and composite types (integers, reals, strings, points, vectors, matrices, lists, sets, records) are mapped to Ada scalar types, record types, arrays or private types; specialized packages (e.g., PHIGS_TYPES, PHIGS_LIST_UTILITIES) declare these types.
- Error handling - Standardized ERROR_HANDLING/ERROR_LOGGING procedures are provided; implementations supply default and exception‑raising bodies (PHIGS_ERROR). Inquiry functions return error indicators rather than raising Ada exceptions.
- Conformance and packaging - Requirements for conformance with ISO/IEC 9592 semantics and naming; PHIGS must be available as an Ada library unit with specified names and packages.
- Implementation & host dependencies - Notes on portability issues tied to Ada compilers and runtime (storage, tasking, string/file formats); PHIGS_CONFIGURATION package allows implementation-specific adaptations.
- Multi‑tasking - Guidance on Ada tasking interactions and constraints when using PHIGS.
- Contents and utilities - Extensive function lists, tables (data types, abbreviations, error codes), utility subprograms, and annexes with compilable specification and example programs.
Applications
- Software developers and library implementers creating PHIGS implementations or bindings for Ada compilers.
- CAD, visualization and scientific graphics systems that use Ada and need a standard graphics API for structured, hierarchical modeling.
- System integrators ensuring portability of graphics applications across Ada environments by following standardized type and error semantics.
- Standards compliance and verification teams validating that an Ada PHIGS implementation meets international specifications.
Related Standards (if applicable)
- ISO/IEC 9592 - PHIGS language‑independent functional description (core semantics).
- ISO 8652:1987 - Ada programming language standard (referenced for language conformance).
- Other parts of ISO/IEC 9593 - additional language bindings and supporting documents.
Keywords: ISO/IEC 9593-3:1990, PHIGS Ada binding, PHIGS, Ada, computer graphics standard, language binding, PHIGS types, error handling, multi‑tasking, portability.