Niva is a Smalltalk-like language with static types:
https://github.com/gavr123456789/Niva
An implementation of Boids for Niva:
https://github.com/gavr123456789/Niva
An implementation of Boids for Niva:
Basically its Receiver key: Type = [body] or Receiver key(localName): Type