[comp.sys.mac.programmer] Routines as values in Pascal

bayes@hpislx.HP.COM (Scott Bayes) (04/06/90)

I wanted to thank you for the effort you obviously put into this post. I
had known most of the techniques you explained, but many of them have grown
rusty with misuse. Sometimes they don't even pop out of the bag of tricks
when they'd be appropriate, due to nneglect.

A couple of paragraphs near the end caught my notice:

> THINK Pascal 2.0 won't let you take the address of a nested routine.
> I don't know if this restriction has been lifted in 3.0.

Do they give a reason for the restriction? Is it perhaps the dangling static
link problem? Just too hard too explain?

> The Bind routine is generating code at run-time. This *may* cause
> problems with the 68020/030(/040?) instruction cache, if you're making
> really frequent calls to Bind (which I've never done). Personally,
> I think the '020/030 cache is brain-damaged, and should be fixed
> so that it invalidates properly on data writes.

Do you mean use the f0-f2 lines as a tag, invalidating any cache cells
that show up with 2 different f-tags? Sounds like it would obviate the
need for flush-after-store for instructions.

Anyway, thank you for a fine posting.

Scott Bayes
Hewlett-Packard Company
MSO Tech Support