
Clascal Reference Manual for the Lisa (1983) [pdf] - tosh
http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/apple/lisa/toolkit_university/Clascal_Reference_Manual_Mar83.pdf
======
js2
Note: it's clas-cal, not classical, as my brain auto-corrected it to. Clascal
is a set of object-oriented ("clas") extensions to Pascal.

------
eschaton
A couple of the things that were interesting about Clascal and its successor
Object Pascal:

1\. It really didn’t add much to the version of Pascal that Apple was already
using as a systems programming language. That made it easy to teach and learn
and easy to add to their toolchain.

2\. It used relocatable, handle-based objects rather than pointer-based
objects. This was thought to be necessary for the very memory constrained
systems of the day, but it had serious performance and stability impact. (You
essentially can’t persist a dereference across a sequence point, since it
might cause the handle to move.)

~~~
mistrial9
1\. this is banal dismissal.. Object-oriented programming was current research
at the time.. and why is "easier to teach" not worth anything at a time when
there were precious-few programmers available..

2\. your Serious Performance and Stability problems environment was the home
of Microsoft Word 1.0 and Aldus PageMaker, as I recall.. not persisting a
handle means that you cant dereference that and then hold only the reference..
in practice, people coming from other code bases wanted to write a thin cover
on their own ptr-based mem management.. and that did not work ... native
programmers had far less trouble.. and the calls that may move memory were
documented, if you looked far enough..

------
rbanffy
The way the document looks made me nostalgic. When we started to be able to
edit documents like that it looked like science fiction.

------
toddh
I programmed the Lisa in college. It blew my mind. I've tried to stay away
from UI work ever since :-)

