Hi Norbert,
Not really.
First we distinguish two cases:
- essential primitives : provides features that cannot be implemented in
Smalltalk (SmallInteger>>#+ for instance, requires to use the cpu addition)
- optimisation primitives : optional, they just improve performance
Optimisation
Looking through primitive methods I can see two cases. Most methods seem to
call
self primitiveFailed
at the end of the method. But some as
Object>>#at:put:
do not. Can I assume that all primitive methods should call primitiveFailed at
the end?
Norbert