Loglan'82 is the result of university research. We were not pretending to conquer the market. It happened however that the language turned out to be a good vehicle for teaching objects. Its features still make him a good candidate language for those who wish to have a reliable tool for programming quite complicated algorithms, data structures and systems.
On the other hand we believe that it is necessary to study the problems and questions which arise in the domain of object programming. We believe that the progress is done by profiting from the experience and results obtained by others and by adding someones own results. Therefore we propose to study the questions listed below. To our knowledge they are still open. We shall be happy to hear any news and comments from you.
1. Is it possible to have simultaneously in
one programming language:
REMARKS.
a) One may doubt: do we need nesting of modules in the presence of
(multiple) inheritance? I believe that YES, we really need both
ways
of module's construction.
b) From the experience of Loglan'82 we know that nesting +
multilevel
inheritance + multikind inheritance + effective managemant of
objects is possible. Similar experience is witnessed by BETA
project.
c) It is possible to simulate multiple inheritance in Loglan'82
(to some extent).
d) Still, one may doubt whether a consistent semantics of a language
that admits both multiple inheritance and nesting exists.
Another question which is strongly related to this one arise:
can we do it efficiently?
2. Is it possible to manage in a (quasi-) uniform way object of different
nature:
REMARKS.
a) The experience of Loglan'82 witnesses that usual objects and process objects
may coexist.
b) We imagine that the system created by A. Kreczmar may be easily
cloned in order to manage persistent objects.
3. Is it possible to use the mechanisms of classes, inheritance etc. in order to manage the libraries of predefined modules?
REMARKS. 4. Is it possible to conceive the virtual
Loglan computer (i.e.
its interpreter or if you prefer its running system)
as a confederation of processes?
REMARKS. 5. How to specify and implement a symbol
table for a language
(say Loglan'95) that admits both nesting and multi inheritance?
REMARKS. 6. Is it possible to use efficiently object
programming in a compiler
project?
REMARKS. We wish to advocate two theses: that the recursive
descending analysis should
gain as much attention as the ascending one, that OO programming
has to play its proper rôle in the automatic construction of parsers.
Moreover, we see the importance and multiple usage of trees of
abstract syntax of a program for various transformations of it.
7. Is it possible to construct an editor
which would aid the programmer
to develop a program within certain guidelines of "good" programming?
Remarks. We believe that it is possible to give a new shape to
the "webbing" of programs as proposed by D. Knuth.
8. Is it possible to conjuge the compiler
project for Loglan'95
together with a proof assistant project for Algorithmic Logic?
REMARKS.
We imagine that it would be much better to use inheritance etc.
instead of #INCLUDE
In fact the present system of Loglan'82 is already a pair of processes
1° an interpreter of graphic commands and 2° the running system of Loglan'82
itself.
To tell the truth we know how to implement the sumbol table. It
seems very interesting to make and publish a specification of
this subsystem of the future Loglan'95 system as it contains
plenty of interesting features and brings a new and important variant
of the notion of dictionary data structure [cf.]