6 Nov, 2015: Move to new website complete. Please report any website problems.

15 Sep, 2015: PL/I beta version 0.9.9 released.
This version adds support for displaying a source line number in run-time error messages, and adds the ROUND builtin.

15 Jun, 2015: PL/I beta version 0.9.8 released.
This version adds support for an input/output data list to contain a type-3 DO, as in:
put skip list( ((a(i,j) do j=1 to 5) do i=1 to 2) );
It adds the builtins PRECISION, ATAN, and ATAND, and fixes some problems with with handling OVERFLOW.

22 Jan, 2015: PL/I beta version 0.9.7 released.
This version adds the builtins REVERSE, AFTER, BEFORE, TRIM, LTRIM, RTRIM, and SEARCH. It also adds the ability to do array assignments of adjustable arrays, and optimizes assignments of arrays with matching attributes to a block move.

15 Dec, 2014: PL/I beta version 0.9.6 released
This version adds the builtin sort subroutine PLISRTD, and the builtin functions IAND, IEOR, INOT, IOR, ISLL, and ISRL compatible with IBM Enterprise PL/I. It also adds the capability to handle IBM "packed decimal" format FIXED DECIMAL data.

(The compiler and library show the date 5 Nov, 2014). A late breaking bug causes the incorrect handing of a floating picture character (such as $) when it is to be placed on an insertion character such as comma.

4 Oct, 2014: PL/I beta version 0.9.5 released
This version contains various fixes for STREAM INPUT, pictured data and CONTROLLED storage, as well as other bugfixes.

22 Jan, 2014: PL/I beta version 0.9.4 released.
This version fixes a number of bugs with CONTROLLED structures and others. A procedure map listing option will now print a listing of line numbers and offsets for all statements in a compile unit.

15 Aug, 2012: PL/I beta version 0.9.3 released.
This version contains a limited version of CONTROLLED storage. Modifications are included to simplify running PL/I programs interactively, including the L format-item and the environment option INTERACTIVE. The OPEN statement will now recognize title strings of the form "DD_string" as pointers to an envionment variable "DD_string" whose value will be actual name of the file. The DO statement now allows multiple iteration specifications, such as DO i=1,3,5,7 TO 15; In addition this version includes numerous fixes dealing with adjustable arrays.

5 Aug, 2011: PL/I Linux beta version 0.9.2a refresh.
This is a minor refresh of 0.9.2 fixing a problem causing the compiler and PL/I programs linked with the 0.9.2 library to trap during termination of the MAIN procedure when running on Linux kernels prior to 2.6. Linux users not experiencing these symptoms, and all OS/2 users, should disregard this refresh.

13 Jul, 2011: PL/I beta version 0.9.2 released.
This version includes multitasking support, including the TASK and EVENT and PRIORITY options of the CALL statement, the EVENT attribute, the COMPLETION and STATUS builtins and pseudovariables, and some callable procedures providing mutex semaphore support.

11 Aug, 2010: PL/I beta version 0.9.1 released.
New features in 0.9.1 include the PACKAGE statement, the CALL option of the INITIAL attribute, floating-point pictures (output only), and the CS, SINH, COSH, and TANH builtins.

23 Mar, 2010: PL/I beta version 0.9.0 released.
Linux is here! 0.9.0, besides using a new version numbering scheme, now supports Linux as both a native and a cross-compiler.
Additionally, the ERF, ERFC, and EXP builtins are supported.

17 Oct, 2009: PL/I beta version 0.8c released.
(0.8b was never publicly released). This version adds the ADD, MULTIPLY, DIVIDE, and HEXIMAGE builtins, and allows the single-argument forms of HBOUND. LBOUND, and DIM. CURRENTSTORAGE works correctly for unaligned bit strings and adjustable arrays and structures. Static unaligned bit string array and structure members can now have the INITIAL attribute.
This version fixes a bug that prevented generation of ELF output.

21 May, 2009: PL/I beta version 0.8a released.
This version adds list-directed input, the DISPLAY statement, and the condition-handling builtins ONCHAR, ONCODE, ONCOUNT, ONFILE, ONKEY, ONLOC and ONSOURCE. A cross-reference listing can now be produced, and subscripted label constants are supported.
ELF object files can now optionally be generated in addition to the standard OMF.

15 Feb, 2009: PL/I alpha version 0.7b released.
This release fixes the bug in 0.7a and includes some other cleanup and code improvements.
The following builtin functions are now available: BOOL, COS, COSD, LOG, LOG10, LOG2, SIN, SIND, SQRT, TAN, and TAND. The UNION attribute was implemented.

05 Feb, 2009: Do not use 0.7a.
A severe bug has just surfaced in PL/I version 0.7a. Floating-point divide was not working correctly with the new code generator. Unfortunately this is a "HIPER" bug affecting FIXED DECIMAL scaling, exponentiation and other functionality.

Version 0.7b will be available shortly with the fix for this problem and various other fixes and enhancements.

23 Dec, 2008: PL/I alpha version 0.7a released.
This is a major revision including a completely rewritten code generator that generates object files directly, without requiring an intermediate assembler step.

09 Jun, 2008: PL/I alpha version 0.6a released.
This version implements the %REPLACE preprocessor statement, adds the FROMALIEN procedure option to allow calls to PL/I from other languages, and packages the runtime library as a DLL and import library in addition to the previously distributed static object library.

25 Apr, 2008: PL/I alpha version 0.5e released.
Enhancements include conversion between scaled fixed binary and decimal, PUT DATA, except for arrays of structures, SKIP and COLUMN format.

30 Jan, 2008: PL/I alpha version 0.5d released.
Enhancements include allowing factored declarations including the INITIAL, BASED, and DEFINED attributes; also allow alternate characters for NOT and OR.

20 Dec, 2007: PL/I alpha version 0.5c released.
Major enhancements include E format output and the listing control statements %PAGE, %SKIP[(n)], %PRINT, and %NOPRINT.

5 Nov, 2007: Iron Spring Software announces the availability of the first alpha version of their new PL/I compiler. The alpha runs on the OS/2 operating system only. To download a free copy choose "Download" in the menu or here.

For information contact us at

[Home]  [News]  [About]  [Download]  [Links]  [Documentation]  [Frequently Asked Questions]  [Free Stuff]