Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!tank!ncar!asuvax!cs.utexas.edu!tut.cis.ohio-state.edu!pt.cs.cmu.edu!andrew.cmu.edu!jk3t+ From: jk3t+@andrew.cmu.edu (Jonathan King) Newsgroups: comp.sys.mac.hypercard Subject: Re: Hypertalk syntax? Message-ID: Date: 3 May 90 00:37:02 GMT References: , <1256@nisca.ircc.ohio-state.edu> Distribution: comp Organization: Psychology, Carnegie Mellon, Pittsburgh, PA Lines: 42 In-Reply-To: <1256@nisca.ircc.ohio-state.edu> hmarvel@hpuxa.ircc.ohio-state.edu (Howard P. Marvel) writes: > In article kautz@allegra.att.com wr\ > ites: > >Is there a formal, complete, correct syntax for Hypertalk anywhere out > >there? > Try "HyperCard Script Language Guide: The HyperTalk Language," published > by Addison-Wesley Yes, this is the book. Full title is "*Apple* Hypercard Script Language Guide: The Hypertalk Language". Published in 1988, ISBN 0-201-17632-7. > > Edit script of first card of stack "Foobar" > doesn't work. To quote the above-cited book, "You cannot refer to an object > directly within another stack. You have to go to the stack before you can > address it objects directly" (p. 40) Actually, this isn't quite right. You *can* say: Edit script of stack "Foobar" (at least in version 1.2). But you can't say: Edit script of ("Stack Foobar") even though the description of the command "Edit script" on page 105 of the HSLG says that the object edited can be expressed as a factor, and page 49 states that a factor can be an expression enclosed in parentheses. Note that the hypertalk, um, phrase 'first card of stack "Foobar"' is not a factor, but an expression. But the obvious work-around of saying: Edit script of (first card of stack "Foobar") doesn't work. It looks like Hypercard contains an undocumented feature which disallows the use of parentheses to "factorize" the description of the object you wish to edit. This isn't too much fun. >---- Henry Kautz jking (eagerly awaiting the forthcoming caffeine manager docs)