Introduction
So-o defines a functional layer which adds an object-oriented programming model to a structured programming language. Inspired by Smalltalk, So-o is complete, simple and light, easy to understand.
Implementation
So-o proposes a standard implementation in several languages. The code in PHP is less than a 1000 lines.
Example
namespace Hello;
require_once 'So-o.php';
defclass('Hello', null, 1, null, null, null, array('hello'));
function i_hello($self) {
echo 'Hello from So-o!', PHP_EOL;
return $self;
}
require_once 'So-o.php';
defclass('Hello', null, 1, null, null, null, array('hello'));
function i_hello($self) {
echo 'Hello from So-o!', PHP_EOL;
return $self;
}
$ php -a
php > require_once 'Hello.php';
php > $hello=sendmsg($Hello, 'new');
php > sendmsg($hello, 'hello');
Hello from So-o!

