



                        Micro Script Language Ideas
                        ===========================
                        
                        
                                10/31/2001
                                
                                
                             Jeroen van der Zijp
                             
                             

Goals:
======

Machine Model:
 
        - Stack of objects.
        - Stack is an object, too.
        - Byte code.
        - Code is object too.
        - Environment (variables).
        - Environment is an object, too.
        - Engine = (stack, environment, code, state)
        - Formal conversions (promotion, widening, of types).
        - Type of object is described in type descriptor.
        - Type description is also an object (and can describe itself!)
        - Operations are "matched" against objects.
        - Allow introspection of itself (completely self-describing types).
        - Name spaces, classes, scoping rules?
        - Array slicing,  M[1,1:3] * v[1:3]


Object Representation:

                                           +---------+
        object a                           |         |
        +------+          type A           v         |
        | type---------->+------+      type TYPE     |
        +------+         | type------->+------+      |
        | data |         +------+      | type----->--+
        +------+         | data |      +------+
                         +------+      | data |
                                       +------+


