POS is a portable object system for Scheme. It offers the following features:
-
It is very portable
Only uses R5RS standard facilities including define-syntax/syntax-rules
-
Very small
Consists of only 1 constant, 1 function and 1 macro
-
Supports the following OO features
- multiple inheritance
- class and instance variables and methods
- strong instance and class variable encapsulation
- very easy instance variable access from within methods
- very simple to use
- no MOP but some reflection
- Open source and freely available