CSvax:Pucc-H:Pucc-I:Pucc-K:ags@pur-ee.UUCP (10/30/83)
Dave Newkirk writes of Apple Pascal: "It is a good implementation of the language, lacking only the NEW() function for memory allocation." I agree that it is a good implementation of the language, but NEW() works just fine on my Apple Pascal 1.1 system. I suspect he meant that DISPOSE() is not implemented, which is true. There are MARK() and RELEASE() procedures offered as a partial substitute. Dave Seaman ..!pur-ee!pucc-k:ags
brp@ihuxm.UUCP (11/04/83)
No-the New() procedure does not work properly in Apple Pascal. Memory must be allocated using New() and released in a particular order or disastrous results are likely to be achieved. The implementation of new should be user-transparent and it is not. Apple Pascal does not keep an available list of free memory for new-just as the they do not dynamically allocate strings-another weakness. I still like the implementation, however. Ben Priest
zben@umcp-cs.UUCP (11/05/83)
[..] I am not surprised that beginners would run into the "procedure too long" limitation. Beginners' programs typically contain long stretches of straightline "stream-of-consciousness" code... Dave Seaman We had a "dinosaur" user who got the same type of diagnostic. His program turned out to be one 4000 line procedure! (Yes, he was an EE...) I got the same diagnostic on a monster case statement later that year. No-the New() procedure does not work properly in Apple Pascal. Memory must be allocated using New() and released in a particular order or disastrous results are likely to be achieved... Ben Priest Isn't this really a problem with the release function? I had understood that standard Pascal didn't HAVE a release function. I have always programmed a free-list routine so records of each type might be reused. Ben Cranston ...seismo!umcp-cs!zben zben@umd2.ARPA