Path: news.daimi.aau.dk!jlk From: jlk@daimi.aau.dk (J|rgen Lindskov Knudsen) Newsgroups: comp.lang.beta Subject: Re: Simula Reference Date: 22 Mar 1996 15:07:01 GMT Organization: DAIMI, Computer Science Dept. at Aarhus University Lines: 89 Message-ID: <4iufml$4fm@gjallar.daimi.aau.dk> References: <314FF89A.52BFA1D7@informatik.th-darmstadt.de> Reply-To: jlknudsen@daimi.aau.dk (Jorgen Lindskov Knudsen) NNTP-Posting-Host: lithium.daimi.aau.dk In <314FF89A.52BFA1D7@informatik.th-darmstadt.de> Thus spake Thomas Kuehne : >I have not been able to find a Simula newsgroup or a different >source of information of Simula. >As Beta inherits from Simula, I hope someone reading this newsgroup >may help me. >I would like to check, whether Simula67 had a special assignment statement ':-' for >pointers. Simula67 contains two assignment statements := and :- for value and reference assignment. >If true, why did Beta drop this concept? In BETA, assignment is a somewhat different thing. Assume you have: a: (# i,j: @integer enter (i,j) exit (i,j) #); aObj1, aObj2: @a; aRef1: ^a; than aObj1 -> aObj2; means "assign aObj1.i to aObj2.i and aObj1.j to aObj2.j" whereas aObj1[] -> aRef[]; means "assign the pointer to the object aObj1 to the variable aRef" In BETA terms, it's "assign the aObj1[] reference to the aRef[] reference" If we now extend with: b: (# enter (aObj2, aRef[]) exit (aObj2, aRef[]) #) bObj: @b; then (aObj1, aObj1[])->bObj; means "assign aObj1.i to aObj2.i and aObj1.j to aObj2.j and assign the pointer to the object aObj1 to the variable aRef" implying, that it would be impossible to have the assignment operators (which to use in this case, which involves both assignment variations). There's a lot more to say about BETA assignment, but ... >I found the following reference, but do not know how to actually get >the paper. >@TechReport{Dahl67a, > author = "O.-J. Dahl and K. Nygaard", > title = "{Simula Begin}", > institution = "Norsk Regnesentral (Norwegian Computing Center)", > year = "1967", > address = "Oslo/N", >} I would suggest, that you look into: Jørgen Lindskov Knudsen, Mats Löfgren, Ole Lehrmann Madsen, Boris Magnusson (eds.): "Object-Oriented Environments: The Mjølner Approach" Prentice-Hall, 1993 ISBN 0-13-009291-6 containing several chapters on Simula (and BETA). >I have access to the HOPL proceedings, but the contained article about Simula >does not talk about a pointer assignment statement. Regards, Jorgen Lindskov Knudsen, Computer Science Department, Aarhus University Ny Munkegade 116, DK-8000 Aarhus C, DENMARK E-mail: jlknudsen@daimi.aau.dk, Phone: +45 89 42 32 33, Fax: +45 89 42 32 55 ************ BETA information Sources ************************ * WWW: http://www.mjolner.dk * * http://www.daimi.aau.dk/~beta/info * * News: comp.lang.beta * * FAQ: http://www.daimi.aau.dk/~beta/FAQ * * E-mail: info@mjolner.dk * * Address: Mjolner Informatics, Science Park Aarhus, * * Gustav Wieds Vej 10, DK-8000, Aarhus C, DENMARK * * Tel.: +45 86 20 20 00 * * Fax.: +45 86 20 12 22 * **************************************************************