IBM Open Class

From Wikipedia, the free encyclopedia

C Set++ v2.01 for OS/2, the first release of IOC/OCL/IUICL
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).

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.

Contents

[edit] History of IOC

Promotional poster from 1993 showing parts of the class hierarchy for the IUICL v2.01
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 both Windows and AIX. 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.[1]

  • C/Set++ v2.01 for OS/2 (1993)
  • VisualAge C++ for OS/2, version 3.0
  • VisualAge for C++ for Windows, version 3.5
  • C and C++ Compilers for OS/2, AIX, and for Windows NT, version 3.6
  • C and C++ Compilers for OS/2 and Windows, version 3.65 (1998?)
  • VisualAge C++ Professional for OS/2 and Windows NT, version 4.0 (1998)

[edit] Examples

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

#include <iframe.hpp>
void main()
{
    IFrameWindow frame ("Hello, World!");
    frame.showModally();
}

Other examples of commonly-used IOC classes and methods include:

#include <istring.hpp>
IString someText ("hello world");
#include <icmdhdr.hpp>
virtual Boolean MyHandler::command (ICommandEvent &event);

[edit] Notes

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

[edit] External links