Added upstream from http://ftp.icm.edu.pl/pub/loglan/
[loglan.git] / HTML / tablica3.txt
1   \r
2   A brief comparison of several object oriented languages\r
3   =======================================================\r
4 \r
5 \r
6 \r
7           Languages ->  S    o    C    M    S    E    A    L\r
8                         i    b    +    o    m    i    d    o\r
9                         m    j    +    d    a    f    a    g\r
10     Comparison          u    .         u    l    f         l\r
11   of  main features     l    P         l    l    e         a\r
12            |            a    a         a    t    l         n\r
13            |            -    s         3    a              '\r
14            V            6    c              l              8\r
15                         7    a              k              2\r
16                              l                                                                                                      \r
17                              s                                                                                                      \r
18 \r
19 \r
20 \r
21 Modularisation                                                                                                                                           \r
22    nesting of modules   +    +    -    -    -    -    +    +\r
23    inheritance          +    +    +    +    +    +    -    +\r
24      -  multilevel      -    -    -    -    -    -    -    +\r
25            inheritance\r
26      -  multiple inh.   -    -    +    -    +    +    -    + 1) \r
27     inherit in other    -    -    -    -    -    -    -    + 2)\r
28            modules \r
29    static binding       +    +    -    +    -    -    +    +\r
30       of identifiers\r
31                                                                                                                                         \r
32 Classes & Objects       +    +    +    +    +    +    -    +\r
33                                                                                                                                         \r
34 Coroutines              +    -    -    +    -    -    -    +\r
35                                                                                                                                         \r
36 Processes               -    -    -    +    -    -    +    +\r
37      alien call         -    -    -    -    -    -    -    + 3)\r
38          of methods\r
39                                                                                                                                        \r
40 Signals & Exceptions    -    -    -    -    -    -    +    + 4)\r
41                                                                                                                                         \r
42 Safety                                                                                                                                        \r
43 safe deallocation i.e. \r
44     no dangling         -    -    -    -    -    -    -    +\r
45      references\r
46 \r
47   type checking         +    +    -    -    -    -    +    + \r
48   protection of private +    -    -    +    -    -    +    +\r
49                                                                                                                                         \r
50 Genericity&Polymorphism                                                                                                                                        \r
51     types as formal     -    -    -    ?    -    -+   -+   +\r
52         parameters\r
53     overloading         -    -    +    +    ?    +    +    -\r
54       of operators                  \r
55     virtual methods     +    -    +    ?    +    +    -    +\r
56 \r
57 _______________________________________________________________________   \r
58 \r
59 \r
60 In Loglan'82:\r
61 1) - multiple inheritance may be obtained from multi-level inheritance and \r
62                                                                coroutines,\r
63 2) - it is possible to inherit a class  in a procedure, a function, a process,                  a coroutine, a block,\r
64 3) - alien call is a truly object oriented protocol of executing a method of\r
65     a callee process in cooperation between a calling and the callee processes,\r
66 4) - exceptions are handled with continuations and last will actions.\r
67 \r