Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

No user-servicable parts inside. Refer to qualified service personnel.


devel / comp.lang.ada / Java and Python have just discovered "record" type finally after 40 years.

SubjectAuthor
* Java and Python have just discovered "record" type finally after 40Nasser M. Abbasi
+- Re: Java and Python have just discovered "record" type finally afterrichardthiebaud
`* Re: Java and Python have just discovered "record" type finally afterJeffrey R.Carter
 `* Re: Java and Python have just discovered "record" type finally afterNiklas Holsti
  `* Re: Java and Python have just discovered "record" type finally afterLuke A. Guest
   `* Re: Java and Python have just discovered "record" type finally afterNiklas Holsti
    `* Re: Java and Python have just discovered "record" type finally afterJ-P. Rosen
     +* Re: Java and Python have just discovered "record" type finally afterNasser M. Abbasi
     |`- Re: Java and Python have just discovered "record" type finally afterLuke A. Guest
     +- Re: Java and Python have just discovered "record" type finally afterLuke A. Guest
     +- Re: Java and Python have just discovered "record" type finally afterLuke A. Guest
     +- Re: Java and Python have just discovered "record" type finally afterNiklas Holsti
     +- Re: Java and Python have just discovered "record" type finally after 40 years.Ben Bacarisse
     +* Re: Java and Python have just discovered "record" type finally afterJeffrey R.Carter
     |+- Re: Java and Python have just discovered "record" type finally afterJ-P. Rosen
     |`* Re: Java and Python have just discovered "record" type finally after 40 years.Ben Bacarisse
     | `* Re: Java and Python have just discovered "record" type finally afterJeffrey R.Carter
     |  `* Re: Java and Python have just discovered "record" type finally after 40 years.Ben Bacarisse
     |   `* Re: Java and Python have just discovered "record" type finally afterJeffrey R.Carter
     |    `- Re: Java and Python have just discovered "record" type finally after 40 years.Ben Bacarisse
     `- Re: Java and Python have just discovered "record" type finally after 40 years.Bill Findlay

1
Java and Python have just discovered "record" type finally after 40 years.

<u3lu8o$1p3li$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9617&group=comp.lang.ada#9617

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: nma@12000.org (Nasser M. Abbasi)
Newsgroups: comp.lang.ada
Subject: Java and Python have just discovered "record" type finally after 40
years.
Date: Fri, 12 May 2023 12:50:14 -0500
Organization: A noiseless patient Spider
Lines: 19
Message-ID: <u3lu8o$1p3li$1@dont-email.me>
Reply-To: nma@12000.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 12 May 2023 17:50:16 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1b2acba1ebf21cd768ac28dd1da9a06b";
logging-data="1871538"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+EiI0xSpJw8P0xZlRzmZlv"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:pogWir/Ax1rzv7RqImfgWU2PUfg=
Content-Language: en-US
 by: Nasser M. Abbasi - Fri, 12 May 2023 17:50 UTC

Java 14 now have "Record" !

" records are meant to be data carriers"

https://www.digitalocean.com/community/tutorials/java-records-class

And Python 3.7 now has records, they call it "data class"

https://realpython.com/python-data-classes/

"One new and exciting feature coming in Python 3.7 is the data class.
A data class is a class typically containing mainly data"

What took them so long? Pascal and Ada had records
from day one, only 40 years ago or so.

--Nasser

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3m29c$1pk9l$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9619&group=comp.lang.ada#9619

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: thiebauddick2@aol.com (richardthiebaud)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Fri, 12 May 2023 14:58:52 -0400
Organization: A noiseless patient Spider
Lines: 21
Message-ID: <u3m29c$1pk9l$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 12 May 2023 18:58:52 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="ed4885d5bf8df90d6e8a1dbdb90f5dff";
logging-data="1888565"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19kYT8RZg9M6iS7YUgT1FIovzqWas4/8l4="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:D8RSaYvw+WBdkuoJw1D+0aN/IPM=
In-Reply-To: <u3lu8o$1p3li$1@dont-email.me>
Content-Language: en-US
 by: richardthiebaud - Fri, 12 May 2023 18:58 UTC

On 5/12/23 13:50, Nasser M. Abbasi wrote:
>
> Java 14 now have "Record" !
>
> " records are meant to be data carriers"
>
> https://www.digitalocean.com/community/tutorials/java-records-class
>
> And Python 3.7 now has records, they call it "data class"
>
> https://realpython.com/python-data-classes/
>
> "One new and exciting feature coming in Python 3.7 is the data class.
> A data class is a class typically containing mainly data"
>
> What took them so long? Pascal and Ada had records
> from day one, only 40 years ago or so.
>
> --Nasser
>
And Cobol had them 63 years ago.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3mbc2$1oo9l$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9620&group=comp.lang.ada#9620

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: spam.jrcarter.not@spam.acm.org.not (Jeffrey R.Carter)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Fri, 12 May 2023 23:33:54 +0200
Organization: A noiseless patient Spider
Lines: 17
Message-ID: <u3mbc2$1oo9l$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 12 May 2023 21:33:54 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="775151371d2c19a04e53995a45be44f4";
logging-data="1859893"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18C9yUxg8M5VIMUivR7Qv1P5+miJUmcuj4="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:hjYdt5J02iRgIXRNeLQGpWJYvqY=
In-Reply-To: <u3lu8o$1p3li$1@dont-email.me>
Content-Language: en-US
 by: Jeffrey R.Carter - Fri, 12 May 2023 21:33 UTC

On 2023-05-12 19:50, Nasser M. Abbasi wrote:
>
> Java 14 now have "Record" !
>
> And Python 3.7 now has records, they call it "data class"
>
> What took them so long? Pascal and Ada had records
> from day one, only 40 years ago or so.

Pascal had them in 1970. Algol, I think, had them in 1960.

--
Jeff Carter
"Many times we're given rhymes that are quite unsingable."
Monty Python and the Holy Grail
57

Re: Java and Python have just discovered "record" type finally after 40 years.

<kc8rkiF3313U1@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9622&group=comp.lang.ada#9622

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.holsti@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sat, 13 May 2023 10:13:22 +0300
Organization: Tidorum Ltd
Lines: 34
Message-ID: <kc8rkiF3313U1@mid.individual.net>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net QVNfL7jUfwwj7GeSpY8LGwjP78+OOLHNl/PNblZ4o94WR2t1z8
Cancel-Lock: sha1:s8t8ycT6HGUGAnDCdmYS3p50LVs=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:102.0)
Gecko/20100101 Thunderbird/102.6.1
Content-Language: en-US
In-Reply-To: <u3mbc2$1oo9l$1@dont-email.me>
 by: Niklas Holsti - Sat, 13 May 2023 07:13 UTC

On 2023-05-13 0:33, Jeffrey R.Carter wrote:
> On 2023-05-12 19:50, Nasser M. Abbasi wrote:
>>
>> Java 14 now have "Record" !
>>
>> And Python 3.7 now has records, they call it "data class"
>>
>> What took them so long? Pascal and Ada had records
>> from day one, only 40 years ago or so.

Java and Python have classes, which have records as a special case, if
the term "record" is understood as in most other languages, including Ada.

But it seems that the Java 14 "record" is not quite the same as an Ada
record, because Java 14 records are meant to be immutable data carriers,
not mutable data structures. Still, Java 14 records are described as a
(very) special case of classes.

> Pascal had them in 1970. Algol, I think, had them in 1960.

Algol 60 did not have records, only arrays.

Algol W, a precursor to Pascal, had them in 1966.

Simula had them in 1967. (Wikipedia says "In 1966 C. A. R. Hoare
introduced the concept of record class construct".)

Algol 68 had them in 1968.

Pascal had them in 1970, as you say.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3nrlc$236lb$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9623&group=comp.lang.ada#9623

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: laguest@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sat, 13 May 2023 12:18:04 +0100
Organization: A noiseless patient Spider
Lines: 19
Message-ID: <u3nrlc$236lb$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 13 May 2023 11:18:04 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="69689c39088e4a926374f615b31ebeeb";
logging-data="2202283"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/aPoe/x8KGTviRImuIVndSdQv9cs3zros="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.1
Cancel-Lock: sha1:SkDylB8jrcTfWY560G1dOIr/LG4=
Content-Language: en-GB
In-Reply-To: <kc8rkiF3313U1@mid.individual.net>
 by: Luke A. Guest - Sat, 13 May 2023 11:18 UTC

On 13/05/2023 08:13, Niklas Holsti wrote:

>> Pascal had them in 1970. Algol, I think, had them in 1960.
>
>
> Algol 60 did not have records, only arrays.
>
> Algol W, a precursor to Pascal, had them in 1966.
>
> Simula had them in 1967. (Wikipedia says "In 1966 C. A. R. Hoare
> introduced the concept of record class construct".)
>
> Algol 68 had them in 1968.
>
> Pascal had them in 1970, as you say.
>

What about COBOL and LISP?

Re: Java and Python have just discovered "record" type finally after 40 years.

<kc9tkpF7hnhU1@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9624&group=comp.lang.ada#9624

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.holsti@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sat, 13 May 2023 19:53:45 +0300
Organization: Tidorum Ltd
Lines: 35
Message-ID: <kc9tkpF7hnhU1@mid.individual.net>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net bOYMTLdhUWvtD1dawNwPjAHA7LNX10LNDWd/kJ5dYNCH85DH73
Cancel-Lock: sha1:LFbYljy0xePYxi5WQul1DhJjlQA=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:102.0)
Gecko/20100101 Thunderbird/102.6.1
Content-Language: en-US
In-Reply-To: <u3nrlc$236lb$1@dont-email.me>
 by: Niklas Holsti - Sat, 13 May 2023 16:53 UTC

On 2023-05-13 14:18, Luke A. Guest wrote:
> On 13/05/2023 08:13, Niklas Holsti wrote:
>
>>> Pascal had them in 1970. Algol, I think, had them in 1960.
>>
>>
>> Algol 60 did not have records, only arrays.
>>
>> Algol W, a precursor to Pascal, had them in 1966.
>>
>> Simula had them in 1967. (Wikipedia says "In 1966 C. A. R. Hoare
>> introduced the concept of record class construct".)
>>
>> Algol 68 had them in 1968.
>>
>> Pascal had them in 1970, as you say.
>>
>
> 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.

However, Wikipedia says that the COBOL record structure inspired records
for Pascal.

Early LISP languages did not have record types, AFAIK. But you could of
course use lists to program record-like data structures.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3q03n$2iba1$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9626&group=comp.lang.ada#9626

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: rosen@adalog.fr (J-P. Rosen)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 08:46:15 +0200
Organization: Adalog
Lines: 28
Message-ID: <u3q03n$2iba1$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 14 May 2023 06:46:15 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="2ff732ee4d10ce81f4e1bd59da22715f";
logging-data="2698561"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+pWdU2Y/PGGOdV6MFBxUk3"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.0
Cancel-Lock: sha1:DJSIgH5V/PUm8+QDzJT68jfnh88=
Content-Language: en-US, fr
In-Reply-To: <kc9tkpF7hnhU1@mid.individual.net>
 by: J-P. Rosen - Sun, 14 May 2023 06:46 UTC

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.

> However, Wikipedia says that the COBOL record structure inspired records
> for Pascal.
>
> Early LISP languages did not have record types, AFAIK. But you could of
> course use lists to program record-like data structures.
Of course, in LISP there is only one structure, for data and programs
alike: the list!

--
J-P. Rosen
Adalog
2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
https://www.adalog.fr https://www.adacontrol.fr

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3q24b$2ija0$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9627&group=comp.lang.ada#9627

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: nma@12000.org (Nasser M. Abbasi)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 02:20:42 -0500
Organization: A noiseless patient Spider
Lines: 49
Message-ID: <u3q24b$2ija0$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
Reply-To: nma@12000.org
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 14 May 2023 07:20:43 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="98651a381a0976f46ab351bfb4962cf5";
logging-data="2706752"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18ZVzqKp9j+nUPUoqvE3nW0"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:7K86qX8qpQE3cybVfnDwZN5K0Gg=
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>
Content-Language: en-US
 by: Nasser M. Abbasi - Sun, 14 May 2023 07:20 UTC

On 5/14/2023 1:46 AM, J-P. Rosen wrote:
> Le 13/05/2023 à 18:53, Niklas Holsti a écrit :

>> for Pascal.
>>
>> Early LISP languages did not have record types, AFAIK. But you could of
>> course use lists to program record-like data structures.

> Of course, in LISP there is only one structure, for data and programs
> alike: the list!
>

This is similar to Mathematica. I programmed a little in lisp,
and it was kinda fun.

In Mathematica, its main data struct is also the list
and list of lists and list of list of lists and so on.

a={1,2,3};
a={{1,2,3},{4,5,6}};

Everything in Mathematica is pretty much build using lists.

Few years ago, Wolfram introduced Association, which
acts like a RECORD. It is really like a dictionary. It has
key->value pairs so one can do:

myData = <| "name"->"me","age"->99 |>

To read value of a field one uses myData["name"] or myData["age"].

It is amazing how people can program so much code
using only just a list as the main basic data structure
and be able to get away with it :)

I think RECORD is the most important data structure myself.

Without a RECORD (called struct in C), programming
is much harder. This is what Java and Python have discovered
just now. I guess the language designers of these
languages never bothered to look at Pascal or Ada before.

But better late than never I guess.

--Nasser

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3qagm$2jhge$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9628&group=comp.lang.ada#9628

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: laguest@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 10:43:50 +0100
Organization: A noiseless patient Spider
Lines: 16
Message-ID: <u3qagm$2jhge$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 14 May 2023 09:43:50 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9f5f0ffcd3b54a75a54b71a625df15a8";
logging-data="2737678"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18/cgdJC/XPQqkXfnTG9gz1jlFa0LuxxNg="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.1
Cancel-Lock: sha1:f8zokymjoWMgs7gwaHXhmQLMsRY=
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>
Content-Language: en-GB
 by: Luke A. Guest - Sun, 14 May 2023 09:43 UTC

On 14/05/2023 07:46, J-P. Rosen wrote:

> AFAIR, COBOL didn't have types, but you could define a variable LIKE
> another one.
>
>> However, Wikipedia says that the COBOL record structure inspired
>> records for Pascal.
>>
>> Early LISP languages did not have record types, AFAIK. But you could
>> of course use lists to program record-like data structures.
> Of course, in LISP there is only one structure, for data and programs
> alike: the list!
>

TBH, I don't really remember anything of COBOL apart from pictures and
columns.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3qak0$2jhge$2@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9629&group=comp.lang.ada#9629

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: laguest@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 10:45:36 +0100
Organization: A noiseless patient Spider
Lines: 8
Message-ID: <u3qak0$2jhge$2@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 14 May 2023 09:45:37 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9f5f0ffcd3b54a75a54b71a625df15a8";
logging-data="2737678"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19G5efknWSJrBXXw4pLUBe8TuoPM+IXlMM="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.1
Cancel-Lock: sha1:lGx8GUPgszwTt06GyAMkib8gjwM=
Content-Language: en-GB
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>
 by: Luke A. Guest - Sun, 14 May 2023 09:45 UTC

On 14/05/2023 07:46, J-P. Rosen wrote:

> Of course, in LISP there is only one structure, for data and programs
> alike: the list!

Well, that's not true anymore, especially not in common lisp which has a
variety of data structures including records, I was quite surprised to
see that when I was looking at it last year.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3qaqt$2jhge$3@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9630&group=comp.lang.ada#9630

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: laguest@archeia.com (Luke A. Guest)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 10:49:17 +0100
Organization: A noiseless patient Spider
Lines: 13
Message-ID: <u3qaqt$2jhge$3@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3q24b$2ija0$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 14 May 2023 09:49:17 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="9f5f0ffcd3b54a75a54b71a625df15a8";
logging-data="2737678"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+71WX/ZAhDuE3Vx8kMhLEIbGaw5pCAyoo="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.1
Cancel-Lock: sha1:jZBN4Zj0c9SodYKonMXpM5awwrg=
In-Reply-To: <u3q24b$2ija0$1@dont-email.me>
Content-Language: en-GB
 by: Luke A. Guest - Sun, 14 May 2023 09:49 UTC

On 14/05/2023 08:20, Nasser M. Abbasi wrote:

> I think RECORD is the most important data structure myself.
>
> Without a RECORD (called struct in C), programming
> is much harder.  This is what Java and Python have discovered
> just now.  I guess the language designers of these
> languages never bothered to look at Pascal or Ada before.
>
> But better late than never I guess.

I think people might finally be realising that you can't do everything
with only one programming paradigm.

Re: Java and Python have just discovered "record" type finally after 40 years.

<kcbrfrFfh96U1@mid.individual.net>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9632&group=comp.lang.ada#9632

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: niklas.holsti@tidorum.invalid (Niklas Holsti)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 13:29:15 +0300
Organization: Tidorum Ltd
Lines: 35
Message-ID: <kcbrfrFfh96U1@mid.individual.net>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: individual.net RVKUD9VZq6ZxMG4MydylkQkmtGZkM7trQTaF6SxNcQkdVKnJiR
Cancel-Lock: sha1:dVqWRU95Rf6X6zbghr89OzcC7Dk=
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:102.0)
Gecko/20100101 Thunderbird/102.6.1
Content-Language: en-US
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>
 by: Niklas Holsti - Sun, 14 May 2023 10:29 UTC

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.

Re: Java and Python have just discovered "record" type finally after 40 years.

<87fs7zryfy.fsf@bsb.me.uk>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9633&group=comp.lang.ada#9633

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ben.usenet@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Sun, 14 May 2023 11:37:21 +0100
Organization: A noiseless patient Spider
Lines: 13
Message-ID: <87fs7zryfy.fsf@bsb.me.uk>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="9cb35b1af2d15e54e9a838df629b6137";
logging-data="2748002"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/+DqaITvjx7O+7KGM/C70ipW0Yi+JFhmU="
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Cancel-Lock: sha1:GohnceNPAWXJfW32QtW+i9XFgUU=
sha1:hulvVLoTeE7OZDHkerjXnYokXnM=
X-BSB-Auth: 1.d4245f31ebd2c3659e90.20230514113721BST.87fs7zryfy.fsf@bsb.me.uk
 by: Ben Bacarisse - Sun, 14 May 2023 10:37 UTC

"J-P. Rosen" <rosen@adalog.fr> writes:

> Of course, in LISP there is only one structure, for data and programs
> alike: the list!

LISP had S-expressions -- pairs of atoms or other S-expressions. A list
was just a special case. Many other structures could be built using
S-expressions. An important one was that association list -- a list of
(key . value) pairs that was often used very much like a record type
(though it's quite a different beast).

--
Ben.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3qdo6$2joho$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9634&group=comp.lang.ada#9634

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: spam.jrcarter.not@spam.acm.org.not (Jeffrey R.Carter)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 12:39:02 +0200
Organization: A noiseless patient Spider
Lines: 15
Message-ID: <u3qdo6$2joho$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 14 May 2023 10:39:02 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="3b0c081db9119c4a13278f264eb1d604";
logging-data="2744888"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+SiwOgAN6AHndyIp1nDAWxld0XmH4nYs4="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:XxS2N1QK1Q5bhbRpTFcjdyfq5qo=
In-Reply-To: <u3q03n$2iba1$1@dont-email.me>
Content-Language: en-US
 by: Jeffrey R.Carter - Sun, 14 May 2023 10:39 UTC

On 2023-05-14 08:46, J-P. Rosen wrote:
>
> Of course, in LISP there is only one structure, for data and programs alike: the
> list!

In the LISP I learned, there were only S-expressions (SEXes). A SEX is either an
atom or a list of SEXes. Another way of putting it was there were atoms and
lists of atoms or lists. Either way, there were also atoms.

--
Jeff Carter
"Don't knock masturbation. It's sex with someone I love."
Annie Hall
45

Re: Java and Python have just discovered "record" type finally after 40 years.

<0001HW.2A110FB10110801E70000936A38F@news.individual.net>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9635&group=comp.lang.ada#9635

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!lilly.ping.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: findlaybill@blueyonder.co.uk (Bill Findlay)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Sun, 14 May 2023 13:46:41 +0100
Organization: none
Lines: 22
Message-ID: <0001HW.2A110FB10110801E70000936A38F@news.individual.net>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me> <kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me> <kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
Reply-To: findlaybill@blueyonder.co.uk
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
X-Trace: individual.net 8qFt0z6VTi4aXZgMNPXvuQi5ldORCMMvH8wQx0fOp81l87lGKl
X-Orig-Path: not-for-mail
Cancel-Lock: sha1:K1E4e8ziuBzyfdvGi28QLNIy3VU=
User-Agent: Hogwasher/5.24
 by: Bill Findlay - Sun, 14 May 2023 12:46 UTC

On 14 May 2023, J-P. Rosen wrote
(in article <u3q03n$2iba1$1@dont-email.me>):

> 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.

LIKE is PL/I.

--
Bill Findlay

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3qtkt$2ljjs$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9637&group=comp.lang.ada#9637

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: rosen@adalog.fr (J-P. Rosen)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 17:10:23 +0200
Organization: Adalog
Lines: 18
Message-ID: <u3qtkt$2ljjs$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 14 May 2023 15:10:21 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="c9c19b6d886b4f1c5cec5da303f927aa";
logging-data="2805372"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18SYjd+JWtmD7lhKMToFi+Q"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.11.0
Cancel-Lock: sha1:1qlZGgLA/4MZESwMvBISIJP4Trg=
In-Reply-To: <u3qdo6$2joho$1@dont-email.me>
Content-Language: en-US, fr
 by: J-P. Rosen - Sun, 14 May 2023 15:10 UTC

Le 14/05/2023 à 12:39, Jeffrey R.Carter a écrit :
> On 2023-05-14 08:46, J-P. Rosen wrote:
>>
>> Of course, in LISP there is only one structure, for data and programs
>> alike: the list!
>
> In the LISP I learned, there were only S-expressions (SEXes). A SEX is
> either an atom or a list of SEXes. Another way of putting it was there
> were atoms and lists of atoms or lists. Either way, there were also atoms.
>
Right, but I would define atoms as the basic data, not a data
/structure/. Oh well, just a matter of definition...
--
J-P. Rosen
Adalog
2 rue du Docteur Lombard, 92441 Issy-les-Moulineaux CEDEX
https://www.adalog.fr https://www.adacontrol.fr

Re: Java and Python have just discovered "record" type finally after 40 years.

<878rdrrlly.fsf@bsb.me.uk>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9638&group=comp.lang.ada#9638

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!news.niel.me!news.gegeweb.eu!gegeweb.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ben.usenet@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Sun, 14 May 2023 16:14:33 +0100
Organization: A noiseless patient Spider
Lines: 15
Message-ID: <878rdrrlly.fsf@bsb.me.uk>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Info: dont-email.me; posting-host="9cb35b1af2d15e54e9a838df629b6137";
logging-data="2805399"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19m6AP0r9pWstUQ7Q7T5Xr4HE8Ddi2Pw3E="
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Cancel-Lock: sha1:5VUAAoTPmf9j2AG2RyRPegXYf0w=
sha1:aWpGddDLZ8MM+Mx2ZR529l8Laiw=
X-BSB-Auth: 1.8e2acda32bda57131c29.20230514161433BST.878rdrrlly.fsf@bsb.me.uk
 by: Ben Bacarisse - Sun, 14 May 2023 15:14 UTC

"Jeffrey R.Carter" <spam.jrcarter.not@spam.acm.org.not> writes:

> On 2023-05-14 08:46, J-P. Rosen wrote:
>> Of course, in LISP there is only one structure, for data and programs
>> alike: the list!
>
> In the LISP I learned, there were only S-expressions (SEXes). A SEX is
> either an atom or a list of SEXes.

I never saw a LISP S-expressions defined that way. Did this list really
no have a "dotted pair" as the basic structure with lists being simply a
special case?

--
Ben.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3r3rr$2k5j4$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9639&group=comp.lang.ada#9639

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: spam.jrcarter.not@spam.acm.org.not (Jeffrey R.Carter)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Sun, 14 May 2023 18:56:27 +0200
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <u3r3rr$2k5j4$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me> <878rdrrlly.fsf@bsb.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Sun, 14 May 2023 16:56:27 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="1ac44b328564d7e59fe17d3e4a7bf553";
logging-data="2758244"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX188aF2CCoafOKVYUUOJcW3kv7rzZ98TmP0="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:ePJy9UKX9ny0kNzPm5uAWpgOcUE=
Content-Language: en-US
In-Reply-To: <878rdrrlly.fsf@bsb.me.uk>
 by: Jeffrey R.Carter - Sun, 14 May 2023 16:56 UTC

On 2023-05-14 17:14, Ben Bacarisse wrote:
>
> I never saw a LISP S-expressions defined that way. Did this list really
> no have a "dotted pair" as the basic structure with lists being simply a
> special case?

The book I learned from (/Let's Talk LISP/ by Laurent Siklóssy, 1976) introduces
dotted pairs in chapter 10.7.1 (out of 12 chapters) on page 145 (out of 213,
excluding appendices and index). Chapter 10 deals with the internal
representation of data in LISP. The implication is that they were not considered
part of the normal use of the language.

S-expressions, on the other hand, are introduced in chapter 1.1 on page 2. The
book also presents the grammar

S-expression ::= atom | list
list ::= '(' inside ')'
inside ::= empty | S-expression | S-expression inside
empty ::=

--
Jeff Carter
"Don't knock masturbation. It's sex with someone I love."
Annie Hall
45

Re: Java and Python have just discovered "record" type finally after 40 years.

<87353ys8is.fsf@bsb.me.uk>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9641&group=comp.lang.ada#9641

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ben.usenet@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Mon, 15 May 2023 02:11:55 +0100
Organization: A noiseless patient Spider
Lines: 34
Message-ID: <87353ys8is.fsf@bsb.me.uk>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me> <878rdrrlly.fsf@bsb.me.uk>
<u3r3rr$2k5j4$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Info: dont-email.me; posting-host="57d1eb8e1efc47dede9fba8711cd5249";
logging-data="2927614"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18vyvj+vzAiLFkIxBdVWUDSlRrDvr1ZMXs="
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Cancel-Lock: sha1:sbgI7ToCES77/lnVW1clWUOXKR4=
sha1:lF9pSuN7or6M3L2b6Fw3saMUxqw=
X-BSB-Auth: 1.9e0b92eaf0301932b9e1.20230515021155BST.87353ys8is.fsf@bsb.me.uk
 by: Ben Bacarisse - Mon, 15 May 2023 01:11 UTC

"Jeffrey R.Carter" <spam.jrcarter.not@spam.acm.org.not> writes:

> On 2023-05-14 17:14, Ben Bacarisse wrote:
>> I never saw a LISP S-expressions defined that way. Did this list really
>> no have a "dotted pair" as the basic structure with lists being simply a
>> special case?
>
> The book I learned from (/Let's Talk LISP/ by Laurent Siklóssy, 1976)
> introduces dotted pairs in chapter 10.7.1 (out of 12 chapters) on page 145
> (out of 213, excluding appendices and index). Chapter 10 deals with the
> internal representation of data in LISP. The implication is that they were
> not considered part of the normal use of the language.

Do you still have it? Does is discuss association lists? I'd call them
a normal part of LISP and it would be odd to force the associations to
be lists rather than pairs. Does Siklóssy imply that an ASSOC list is a
list of lists of length 2, or does he not discuss them until the very
end?

> S-expressions, on the other hand, are introduced in chapter 1.1 on page
> 2. The book also presents the grammar
>
> S-expression ::= atom | list
> list ::= '(' inside ')'
> inside ::= empty | S-expression | S-expression inside
> empty ::=

That's an interesting way to simplify things for the leaner though I
would not have chosen to use a term that already had another meaning by
1976. The author could have used something like L-expression and
avoided any future confusion.

--
Ben.

Re: Java and Python have just discovered "record" type finally after 40 years.

<u3t2du$31frq$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9643&group=comp.lang.ada#9643

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: spam.jrcarter.not@spam.acm.org.not (Jeffrey R.Carter)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after
40 years.
Date: Mon, 15 May 2023 12:44:13 +0200
Organization: A noiseless patient Spider
Lines: 29
Message-ID: <u3t2du$31frq$1@dont-email.me>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me> <878rdrrlly.fsf@bsb.me.uk>
<u3r3rr$2k5j4$1@dont-email.me> <87353ys8is.fsf@bsb.me.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Injection-Date: Mon, 15 May 2023 10:44:14 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="cc62feb47797be3c2e3beb23a2d88995";
logging-data="3194746"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+um9htoFxixvEQMWiyneGl7eoKlUS9z50="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
Thunderbird/102.10.0
Cancel-Lock: sha1:9P96FEcORNZdu6E1rabvzjjYGgM=
Content-Language: en-US
In-Reply-To: <87353ys8is.fsf@bsb.me.uk>
 by: Jeffrey R.Carter - Mon, 15 May 2023 10:44 UTC

On 2023-05-15 03:11, Ben Bacarisse wrote:
>
> Do you still have it? Does is discuss association lists? I'd call them
> a normal part of LISP and it would be odd to force the associations to
> be lists rather than pairs. Does Siklóssy imply that an ASSOC list is a
> list of lists of length 2, or does he not discuss them until the very
> end?

The Function ASSOC is discussed in Chapter 9 as an auxiliary function used by
EVAL (Chapter 9 discusses the working of EVAL). It says

ASSOC finds the value of a variable in the ALIST. The ALIST is a list of
sublists of two SEXes each of the form (variable value-of-the-variable).

In a footnote he notes that the ALIST could be a list of dotted pairs, which are
defined in the next chapter.

I never did much with LISP after learning it, and never looked at any other
textbooks, so he might have an idiosyncratic approach. Seems rather OT for c.l.a.

--
Jeff Carter
"Mixtures of similar characters (letter O and
digit 0, letter I and digit 1, etc.) are unsafe,
as are long identifiers that differ only at the
end."
Elements of Programming Style
187

Re: Java and Python have just discovered "record" type finally after 40 years.

<87ilcreren.fsf@bsb.me.uk>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=9648&group=comp.lang.ada#9648

  copy link   Newsgroups: comp.lang.ada
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: ben.usenet@bsb.me.uk (Ben Bacarisse)
Newsgroups: comp.lang.ada
Subject: Re: Java and Python have just discovered "record" type finally after 40 years.
Date: Wed, 17 May 2023 01:24:32 +0100
Organization: A noiseless patient Spider
Lines: 26
Message-ID: <87ilcreren.fsf@bsb.me.uk>
References: <u3lu8o$1p3li$1@dont-email.me> <u3mbc2$1oo9l$1@dont-email.me>
<kc8rkiF3313U1@mid.individual.net> <u3nrlc$236lb$1@dont-email.me>
<kc9tkpF7hnhU1@mid.individual.net> <u3q03n$2iba1$1@dont-email.me>
<u3qdo6$2joho$1@dont-email.me> <878rdrrlly.fsf@bsb.me.uk>
<u3r3rr$2k5j4$1@dont-email.me> <87353ys8is.fsf@bsb.me.uk>
<u3t2du$31frq$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit
Injection-Info: dont-email.me; posting-host="3a04fef3e972cacf64a3155a19102bb1";
logging-data="3820705"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19xXhmC6pByzGQ0f6RtiFGfQnwWUk64aCw="
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)
Cancel-Lock: sha1:kNLKN4I694A9B05SxU3YACdsCXM=
sha1:mzHb4P99ioorduHmcTA0CxqJK9E=
X-BSB-Auth: 1.76709636021e2c0d7a75.20230517012432BST.87ilcreren.fsf@bsb.me.uk
 by: Ben Bacarisse - Wed, 17 May 2023 00:24 UTC

"Jeffrey R.Carter" <spam.jrcarter.not@spam.acm.org.not> writes:

> On 2023-05-15 03:11, Ben Bacarisse wrote:
>> Do you still have it? Does is discuss association lists? I'd call them
>> a normal part of LISP and it would be odd to force the associations to
>> be lists rather than pairs. Does Siklóssy imply that an ASSOC list is a
>> list of lists of length 2, or does he not discuss them until the very
>> end?
>
> The Function ASSOC is discussed in Chapter 9 as an auxiliary function used
> by EVAL (Chapter 9 discusses the working of EVAL). It says
>
> ASSOC finds the value of a variable in the ALIST. The ALIST is a list of
> sublists of two SEXes each of the form (variable
> value-of-the-variable).

Thanks. Is this a dialect made up for pedagogic purposes? I don't know
of any practical LISP that went down this route.

> Seems rather OT for c.l.a.

Yes, it is. Happy to stop. I was just curious about where your use of
terms originated and that now explained.

--
Ben.

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor