
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.
So-o has 3 functions: defclass which defines a new class, sendmsg which is systematically used to send a message to a class or an instance, and supersend which runs a method inherited from a superclass. Simply object-oriented!
So-o proposes a standard implementation in several languages. The code in PHP is less than a 1000 lines. The code in C in just about 1500 lines. The code in JavaScript is not even 700 lines.
Defines the class Hello which inherits from the default class Object. Its revision number is 1. It adds no class or instance properties. It adds no class methods. It adds an instance method called hello.
The function i_hello defined in the Hello namespace implements the instance method called hello. $self is the instance which has received the hello message.
Loads the code for the Hello class. Sends the message new to the Hello class. The new method is implemented by the Object class. It returns a new instance of the class. Sends the message hello to the $hello instance.
A simple main to illustrate how the Hello class is used:
Compilation with the library libso-o.a and execution:
A few lines of code to illustrate how the Hello class is used:
Execution with Node.js:
Visit so-o.org.
Comments