Path: utzoo!attcan!uunet!mcvax!ukc!dcl-cs!aber-cs!pcg From: pcg@aber-cs.UUCP (Piercarlo Grandi) Newsgroups: comp.lang.smalltalk Subject: Re: Quest. on Smalltalk Summary: Have a look at MUST Message-ID: <461@aber-cs.UUCP> Date: 22 Dec 88 19:09:04 GMT Reply-To: pcg@cs.aber.ac.uk (Piercarlo Grandi) Distribution: eunet,world Organization: CS Dept., University College of Wales, Aberystwyth, UK (Disclaimer: my statements are purely personal) Lines: 30 In article <6037@louie.udel.EDU> new@udel.EDU (Darren New) writes: In article <80500047@p.cs.uiuc.edu> johnson@p.cs.uiuc.edu writes: >In general, however, perform: is safer and will probably do what >you want. Blocks can also often be used as the solution to problems >of this type, as Scheme programmers well know. Except that blocks are not reentrant. Also, if a block executes a return (^), then it may not be called again. Beware of this - it is very hard to debug. I suggest that if you are interested in this you get a set of pretty good papers from the Mushroom project at the U. of Manchester. They are building a timesharing system based on a cleaned up Smalltalk-80, called MUST (an imperative language! :->). This MUST is a nice evolution of the original. As to blocks, let me quote from their paper: BLOCKS: In MUST, the semantics of block activations has been "cleaned up". Blocks can have temporaries, are re-entrant, and are full continuations. I think that any of {ifor,miw,trevor}@ux.cs.man.cs.ac.uk will be happy to provide you with a copy of their relevant documents. -- Piercarlo "Peter" Grandi INET: pcg@cs.aber.ac.uk Sw.Eng. Group, Dept. of Computer Science UUCP: ...!mcvax!ukc!aber-cs!pcg UCW, Penglais, Aberystwyth, WALES SY23 3BZ (UK)