Next: Bibliography(LEDA) Prev: Classes(LEDA) Up: LEDA Top: Top

3.3.4. Evaluation

The class library hierarchy is a forest, and it does not seem to provide multiple inheritance. Some exception handling is provided, but it seems to be quite raw, in the sense that it usually ends with the program abortion.

However, the user can write its own error handler, but its function prototype has to be

void handler(int, char*)

where the first parameter is an error number and the second is an error message. LEDA provides parameterized templates. It does not seem to include garbage collection.

It is not clear whether it is supported in some way by the developers. The installation of LEDA was quite simple and took a couple of hours. One problem only was found during the execution of the makefile, namely some include files needed for the creation of the graphics library for Sunview (in which we were not interested). After this the test programs were created without problems. The execution of the test programs was carried out, but no description of what they are supposed to do and/or what input they expected was found. A few of them run without problems, others issued error messages, others aborted after a core dump.

The set of classes provided is quite large, the classes themselves are easy to use, the services provided sufficient (although sometimes the set is not "rich" enough), the interface simple when the user has gone through section 1 of the User Manual [4], which explains the basics.

The extendibility has not been tested, although this seems to be one of the features of the library, on which issue a brief discussion appears in section IV of the manual (See Bibliography).

After some time spent trying to format the documentation (it is available only in TEX format), we managed to have it printed. The documentation appears to be linear, easy to read (as promised by the authors), concise. It does not contain, however, examples of the way the classes have to be used.