IBM Open Class

Last updated
C Set++ v2.01 for OS/2, the first release of IOC/OCL/IUICL CSet++ logo.jpg
C Set++ v2.01 for OS/2, the first release of IOC/OCL/IUICL

IBM Open Class (IOC) is an IBM C++ product originally developed by Kevin Leong and originally known under several names in the C++ industry, including ICL (IBM Class Library), UICL (User Interface Class Library), and OCL (Open Class Library).

Contents

IOC was an extensive set of C++ classes used to build CLI and GUI applications which could then be easily cross-compiled to OS/2, Microsoft Windows, and AIX. IOC also formed the basis for IBM's VisualAge for C++ graphical application builder. The non-GUI portions of IOC were available for z/OS and OS/400.

History of IOC

Promotional poster from 1993 showing parts of the class hierarchy for the IUICL v2.01 IUICL v2.01 poster.jpg
Promotional poster from 1993 showing parts of the class hierarchy for the IUICL v2.01

The IOC was included as part of IBM's C++ compiler environment. Applications developed with IOC could be distributed with a royalty-free runtime, or could be statically linked against the IOC libraries. Initially only available for OS/2, the IOC was eventually made available for Windows, AIX, z/OS, and OS/400. Support for the OS/2 and Windows VisualAge for C++ compiler—as well as the accompanying IOC—was officially withdrawn by IBM on April 27, 2001. IOC was removed from z/OS 1.9, introduced in 2007.

Examples

The most widely recognized example of a simple application that uses the IOC is hello world:

 #include <iframe.hpp>
intmain(){IFrameWindowframe("Hello, World!");frame.showModally();}

Other examples of commonly used IOC classes and methods include:

 #include <istring.hpp>
IStringsomeText("hello world");
 #include <icmdhdr.hpp>
virtualBooleanMyHandler::command(ICommandEvent&event);

Notes

  1. ^ IBM's Withdrawal Announcement #901-013 (announced on January 23, 2001, effective on April 27, 2001)


Related Research Articles

<span class="mw-page-title-main">IBM AIX</span> Series of Unix operating systems from IBM

AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms.

<span class="mw-page-title-main">Windows API</span> Microsofts core set of application programming interfaces on Windows

The Windows API, informally WinAPI, is the foundational application programming interface (API) that allows a computer program to access the features of the Microsoft Windows operating system in which the program is running.

<span class="mw-page-title-main">Swing (Java)</span> Java-based GUI toolkit

Swing is a GUI widget toolkit for Java. It is part of Oracle's Java Foundation Classes (JFC) – an API for providing a graphical user interface (GUI) for Java programs.

<span class="mw-page-title-main">Delphi (software)</span> General-purpose programming language and a software product

Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, mobile, web, and console software, currently developed and maintained by Embarcadero Technologies.

Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods.

DataFlex is an object-oriented high-level programming language and a fourth generation visual tool for developing Windows, web and mobile software applications on one framework-based platform. It was introduced and developed by Data Access Corporation beginning in 1982.

VisualAge is a family of computer integrated development environments from IBM, which supports multiple programming languages. VisualAge was first released in October 1993 and was discontinued April 30, 2007 and its web page removed in September 2011. VisualAge was also marketed as VisualAge Smalltalk, and in 2005, Instantiations, Inc. acquired the worldwide rights to this product. IBM has stated that XL C/C++ is the followup product to VisualAge.

<span class="mw-page-title-main">IBM System Object Model</span> Programming framework

The System Object Model (SOM) is an object-oriented shared library technology developed by IBM that supports defining an interface to an object so that its interface is separate from its implementation.

<span class="mw-page-title-main">Fox toolkit</span>

The FOX toolkit is an open-source, cross-platform widget toolkit, i.e. a library of basic elements for building a graphical user interface (GUI). FOX stands for Free Objects for X.

<span class="mw-page-title-main">Object REXX</span>

Object REXX is a high-level, general-purpose, interpreted, object-oriented (class-based) programming language.

Harbour is a computer programming language, primarily used to create database/business programs. It is a modernised, open source and cross-platform version of the older Clipper system, which in turn developed from the dBase database market of the 1980s and 1990s.

Borland C++ was a C and C++ IDE released by Borland for MS-DOS and Microsoft Windows. It was the successor to Turbo C++ and included a better debugger, the Turbo Debugger, which was written in protected mode DOS.

<span class="mw-page-title-main">Vala (programming language)</span> Programming language

Vala is an object-oriented programming language with a self-hosting compiler that generates C code and uses the GObject system.

<span class="mw-page-title-main">Scripting language</span> Programming language designed for scripting

In computing, a script is a relatively short and simple set of instructions that typically automate an otherwise manual process. The act of writing a script is called scripting. Scripting language or script language describes a programming language that is used for scripting.

The Java Development Kit (JDK) is a distribution of Java technology by Oracle Corporation. It implements the Java Language Specification (JLS) and the Java Virtual Machine Specification (JVMS) and provides the Standard Edition (SE) of the Java Application Programming Interface (API). It is derivative of the community driven OpenJDK which Oracle stewards. It provides software for working with Java applications. Examples of included software are the Java virtual machine, a compiler, performance monitoring tools, a debugger, and other utilities that Oracle considers useful for Java programmers.

XL C/C++ is the name of IBM's proprietary optimizing C/C++ compilers for IBM-supported environments.

Absoft Corporation was an American software company active from 1980 to 2022. They were best known for their set of Fortran compilers for Microsoft Windows, Apple Macintosh, and Linux operating sytsems. The compilers are source code compatible across platforms.