Advertised and Unadvertised RA-Stack Operations
- Advertised RA-stack operations: those made available (public) to
any code that wants to use RA-stacks, for example the arithmetic
evaluation code.
- Unadvertised RA-stack operations: those made for the convenience
of the implementor only.
To get at the actual stack vector, we will use:
(define cells
(lambda (ra-stack)
(vector-ref ra-stack 1)))
Q: Advertised or unadvertised?
A: Unadvertised, because:
- It exposes details of the implementation.
- It is unnecessary to a stack user -- anything that a
user of RA-stacks wants to do can be
done with the advertised operations.