comp.lang.ada
 help / color / mirror / Atom feed
From: Niklas Holsti <niklas.holsti@tidorum.invalid>
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Sun, 14 May 2023 13:29:15 +0300	[thread overview]
Message-ID: <kcbrfrFfh96U1@mid.individual.net> (raw)
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>

On 2023-05-14 9:46, J-P. Rosen wrote:
> Le 13/05/2023 à 18:53, Niklas Holsti a écrit :
>>> What about COBOL and LISP?
>>
>>
>> As I understand it (but I don't claim to be expert), the early COBOL 
>> languages could describe the structure of file records, and of 
>> working-storage objects, as nested sequences of components and 
>> sub-records, but each such description defined a _single_ "record" 
>> object, not a "record" data-type that could have many instances. So if 
>> you wanted to have two record objects with the same structure, you had 
>> to duplicate the whole record description.
> AFAIR, COBOL didn't have types, but you could define a variable LIKE 
> another one.


So I also remembered, but (before writing the above) I looked through 
some COBOL syntaxes on the net and could not find LIKE as part of the 
data division syntax.

However, after more searching, I see that at least current Microfocus 
RM-COBOL supports a "SAME AS" definition that has that effect. I don't 
know when that feature was introduced. I did not find it in the current 
IBM COBOL description.

In Microfocus RM-COBOL, the LIKE word can be used as a boolean relation 
that compares the content of a variable to a pattern, like a regexp 
match. I did not find this kind of relation in IBM COBOL.

Another way to clone a COBOL record structure is to put the record 
structure description in a separate source-code file, and COPY that file 
(like C "include") into the declaration of any object that should have 
that structure. But ugh. And it could make a mess of the "level 
numbers", where the RM-COBOL SAME AS definition adjusts those automatically.

  parent reply	other threads:[~2023-05-14 10:29 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-12 17:50 Java and Python have just discovered "record" type finally after 40 years Nasser M. Abbasi
2023-05-12 18:58 ` richardthiebaud
2023-05-12 21:33 ` Jeffrey R.Carter
2023-05-13  7:13   ` Niklas Holsti
2023-05-13 11:18     ` Luke A. Guest
2023-05-13 16:53       ` Niklas Holsti
2023-05-14  6:46         ` J-P. Rosen
2023-05-14  7:20           ` Nasser M. Abbasi
2023-05-14  9:49             ` Luke A. Guest
2023-05-14  9:43           ` Luke A. Guest
2023-05-14  9:45           ` Luke A. Guest
2023-05-14 10:29           ` Niklas Holsti [this message]
2023-05-14 10:37           ` Ben Bacarisse
2023-05-14 10:39           ` Jeffrey R.Carter
2023-05-14 15:10             ` J-P. Rosen
2023-05-14 15:14             ` Ben Bacarisse
2023-05-14 16:56               ` Jeffrey R.Carter
2023-05-15  1:11                 ` Ben Bacarisse
2023-05-15 10:44                   ` Jeffrey R.Carter
2023-05-17  0:24                     ` Ben Bacarisse
2023-05-14 12:46           ` Bill Findlay
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox