Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Iron Spring PL/I compiler version 1.0.0

49 views
Skip to first unread message

Iron Spring Software

unread,
Jan 27, 2023, 9:46:53 AM1/27/23
to
Version 1.0.0 of the Iron Spring PL/I compiler is now available. The
major feature of this release is support for self-defining structures,
declared with the REFER option. It also includes other minor
enhancements and bug fixes. Consult the documentation for more complete
information.

http://www.iron-spring.com

wat fiv

unread,
Jan 27, 2023, 4:33:25 PM1/27/23
to
Congratulations on making version 1.0.0! And thank you for your work, its a shame that IBM doesn't do this anymore.

I've never understood the point of refer; can't one use just use HBOUND (technically, HBOUND-LBOUND+1) or MAXLENGTH to find the size of an object? Of course you included it to be compatible with IBM, but why is it necessary to begin with? It looks like it might be a foot gun.

John W Kennedy

unread,
Jan 27, 2023, 5:06:28 PM1/27/23
to
Since the variable is BASED, it has no dope vector or descriptor
associated with it. It has only the naked data contained within in the
structure, so the REFER is necessary to make HBOUND and LBOUND work in
the first place. Languages with substantial differences from PL/I (like,
say, Swift) might find a way to work around that, but READ SET
absolutely demands that the structure be entirely self-describing as it
stands.

--
John W. Kennedy
Algernon Burbage, Lord Roderick, Father Martin, Bishop Baldwin,
King Pellinore, Captain Bailey, Merlin -- A Kingdom for a Stage!

wat fiv

unread,
Jan 27, 2023, 5:14:09 PM1/27/23
to
That is an excellent explanation! Thank you!

Peter Flass

unread,
Jan 28, 2023, 9:18:06 AM1/28/23
to
John W Kennedy <john.w....@gmail.com> wrote:
> On 1/27/23 4:33 PM, wat fiv wrote:
>> On Friday, January 27, 2023 at 9:46:53 AM UTC-5, bearlyabus...@gmail.com wrote:
>>> Version 1.0.0 of the Iron Spring PL/I compiler is now available. The
>>> major feature of this release is support for self-defining structures,
>>> declared with the REFER option. It also includes other minor
>>> enhancements and bug fixes. Consult the documentation for more complete
>>> information.
>>>
>>> http://www.iron-spring.com
>>
>> Congratulations on making version 1.0.0! And thank you for your work,
>> its a shame that IBM doesn't do this anymore.
>>
>> I've never understood the point of refer; can't one use just use HBOUND
>> (technically, HBOUND-LBOUND+1) or MAXLENGTH to find the size of an
>> object? Of course you included it to be compatible with IBM, but why is
>> it necessary to begin with? It looks like it might be a foot gun.
>
> Since the variable is BASED, it has no dope vector or descriptor
> associated with it. It has only the naked data contained within in the
> structure, so the REFER is necessary to make HBOUND and LBOUND work in
> the first place. Languages with substantial differences from PL/I (like,
> say, Swift) might find a way to work around that, but READ SET
> absolutely demands that the structure be entirely self-describing as it
> stands.
>

Good explanation! I always thought of it (as far as I thought of it at all)
as a more complicated version of COBOL’s “OCCURS DEPENDING ON.”

By the way, please hold off on downloading or using this feature for a
while, since a serious bug just surfaced that I will be working on anon.

--
Pete

John W Kennedy

unread,
Jan 28, 2023, 4:45:56 PM1/28/23
to
Essentially, that’s what it is. Internally, a COBOL READ (without INTO)
is equivalent to PL/I READ SET, and a COBOL WRITE (without FROM) is
functionally equivalent to PL/I LOCATE, but the first LOCATE is executed
for free after OPEN, each WRITE is followed by a free LOCATE, and CLOSE
performs an undocumented un-LOCATE (in OS/360 and its descendants, using
an undocumented un-PUT function in QSAM, QISAM, etc.).

> By the way, please hold off on downloading or using this feature for a
> while, since a serious bug just surfaced that I will be working on anon.

Don’t mean nuttin’ to me unless you create a version for macOS (or at
least for Darwin).

Peter Flass

unread,
Jan 28, 2023, 5:40:38 PM1/28/23
to
Windoze next :-(

--
Pete

johann woeckinger

unread,
Feb 2, 2023, 3:48:14 AM2/2/23
to
linux subsystem for windows?
br johann

Peter Flass

unread,
Feb 2, 2023, 7:48:33 AM2/2/23
to
I’ve been told that WSL2 works, but I haven’t heard any details yet. WSL1
does not work. I’d like to a little better, I’m playing around with MinGW,
but haven’t had success linking with libraries yet. If I can’t get that to
work, it’s on to plan B.

--
Pete
0 new messages