On 07.01.2022 17:38, Seymour J Metz wrote: > Some language purists claim that the messages are an intrinsic part of > object-oriented programming. Check the documentation for Concurrency or for > the REPLY instruction for some context. > > I always thought that object-oriented programming started with Simula 67 by > way of Smalltalk, but according to wiki some of the concepts go back toDoug > Ross's Automated Engineering Design/Algol Extended for Design. (AED). > > * <https://en.wikipedia.org/wiki/Douglas_T._Ross#Computer-aided_design> > * <https://en.wikipedia.org/wiki/Object-oriented_design> > * <https://en.wikipedia.org/wiki/Object-oriented_programming> > * <https://en.wikipedia.org/wiki/Simula> > * <https://en.wikipedia.org/wiki/Smalltalk#Messages>
Smalltalk is an interesting and important language as it has been having a tremendous impact on the proliferation of the terms such as "object" or "object orientation" (https://en.wikipedia.org/wiki/Smalltalk). You will also notice that Smalltalk is based on the message paradigm, which is a great paradigm as it helps to abstract from implementations, allowing them to be regarded as black boxes (which inner workings one does not need to know), only the protocol (the set of messages understood, i.e. the set of method routines that can be invoked) need to be known. In this context it may be interesting to read the following about Alan Kay (cf. https://en.wikipedia.org/wiki/Alan_Kay): "... Along with some colleagues at PARC, Kay is one of the fathers of the idea of object-oriented programming <https://en.wikipedia.org/wiki/Object-oriented_programming> (OOP), which he named. Some of the original object-oriented concepts, including the use of the words 'object' and 'class', had been developed for Simula <https://en.wikipedia.org/wiki/Simula> 67 at the Norwegian Computing Center <https://en.wikipedia.org/wiki/Norwegian_Computing_Center>. Later he said: I'm sorry that I long ago coined the term "objects" for this topic because it gets many people to focus on the lesser idea. The big idea is "messaging". ..." ooRexx is another language that makes the message paradigm available, easying the interaction with different systems (on different systems) considerably. ---rony > ________________________________________ > From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of > Bob Bridges [robhbrid...@gmail.com] > Sent: Friday, January 7, 2022 10:16 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Macro/script/program (Re: ... Re: Top 8 Reasons for using Python > instead of REXX for z/OS > > When I first started learning ooREXX (not that long ago, and I still don't > know it well) I read that bit about "messages" that are apparently sent to > methods and properties and was confused. My only object-oriented language at > the time was VB (the VBA and VBS varieties), and I thought of methods as > merely specialized function calls. > > Really I still do, I guess. I told myself provisionally that the tilde in > ooREXX is simply the equivalent of the period in a VBA method or property > reference, and although I'm pretty sure that isn't the whole story I was at > least able to continue on that basis. I keep reading descriptions like the > below, though, thinking that more will sink in eventually. > > --- > Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313 > > /* This sad little lizard told me that he was a brontosaurus on his mother's > side. I did not laugh; people who boast of ancestry often have little else > to sustain them. Humoring them costs nothing and adds to happiness in a > world in which happiness is always in short supply. -from the Notebooks of > Lazarus Long */ > > -----Original Message----- > From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> On Behalf Of > Rony G. Flatscher > Sent: Friday, January 7, 2022 07:57 > > * The tilde (~) is the ooRexx message operator; one can send messages to > any value/object/instance > in an ooRexx program. Left of the tilde is the receiving > value/object/instance/receiver (these > are synonyms), right of it the name of a method routine that conceptually > the receiver is > supposed to look up and invoke on behalf of the programmer. If the > invoked method routine > returns a result one can immediately send it a message too, if needed. > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN