Modernization Hub

HLL - High Level Language

Enhanced Definition

In the mainframe context, a High-Level Language (HLL) is a programming language that provides a strong abstraction from the underlying hardware architecture, allowing developers to write programs using human-readable syntax closer to natural language or mathematical notation. These languages require a compiler or interpreter to translate their source code into machine-executable instructions for the z/OS operating system.

Key Characteristics

    • Abstraction: HLLs abstract away low-level details like register management, memory addresses, and specific CPU instructions, making code more portable and easier to write than Assembler.
    • Readability and Maintainability: They employ structured constructs (e.g., IF-THEN-ELSE, DO-WHILE, PERFORM) and meaningful variable names, significantly improving code readability, debugging, and long-term maintenance.
    • Compiler Dependency: HLL source code must be translated into machine code by a specific compiler (e.g., IBM COBOL for z/OS, IBM PL/I for z/OS) before it can be executed by the z/OS operating system.
    • Productivity: Due to their higher level of abstraction and richer syntax, HLLs generally enable faster development cycles and require fewer lines of code to achieve complex functionalities compared to Assembler.
    • Common Mainframe HLLs: Prominent examples on z/OS include COBOL (Common Business-Oriented Language), PL/I (Programming Language One), C/C++, Java, and scripting languages like REXX.

Use Cases

    • Business Application Development: COBOL is predominantly used for developing and maintaining critical business applications, including financial systems, insurance processing, and inventory management, due to its robust data handling capabilities.
    • System Utilities and Tools: PL/I and C/C++ are often used for developing system-level utilities, performance monitors, and specialized tools that interact more closely with the z/OS operating system services.
    • Transaction Processing Systems: COBOL and PL/I programs are the backbone of online transaction processing (OLTP) systems like CICS (Customer Information Control System) and IMS TM (Information Management System Transaction Manager).
    • Batch Processing: HLLs like COBOL and PL/I are extensively used for writing batch jobs that process large volumes of data, such as daily reports, payroll runs, and end-of-month reconciliations.
    • Modernization and Integration: Java applications running on z/OS (e.g., in WebSphere Application Server for z/OS) are used for developing new web-based interfaces and integrating mainframe data and services with distributed environments.

Related Vendors

IBM

646 products

Software AG

51 products

Related Categories

Operating System

154 products

Programming Language

104 products