VAX-11 Guide to Creating Modular Library Procedures

Order Number: AA-H500A-TE

This document serves as a comprehensive tutorial guide for advanced system and applications programmers on designing and coding modular procedures for VAX-11 systems, using languages like MACRO, BLISS-32, and FORTRAN IV-PLUS.

The guide details how to create reusable and maintainable software components that can be incorporated into general programming or included in procedure libraries (object module libraries or shareable images). Key topics covered include:

  • Modular Programming Principles: Advantages of modular design, and required, optional, and recommended programming standards.
  • Procedure Interface Design: Guidelines for naming conventions, defining explicit and implicit parameters, handling errors and conditions, and documenting procedures.
  • Storage Management: Descriptions of static, stack, and heap storage, along with recommendations for their appropriate use to maintain modularity.
  • Coding Techniques: Specific modular coding practices, including structured programming, initialization of procedures, resource allocation (e.g., identification numbers, logical unit numbers), efficient string passing, and correct usage of VAX/VMS system services.
  • Error Handling: Methods for signaling and returning error conditions using condition values, emphasizing error codes over direct message output.
  • AST-Reentrant Procedures: Techniques for developing asynchronous system trap (AST) reentrant procedures to ensure correct execution during concurrent access and interruptions.
  • Library Building: Instructions on creating and modifying object module libraries and shareable images, and the use of transfer vectors for future compatibility.

Appendices provide a summary of modular programming standards, naming conventions, and notation for describing procedure parameters. The document assumes familiarity with VAX/VMS system concepts and proficiency in a supported VAX/VMS language.

AA-H500A-TE
February 1979
136 pages
Quality

Original
6.0MB

Site structure and layout ©2025 Majenko Technologies