Visualisation of programs in textbooks


Vreda Pieterse

Submitted in accordance with part of the requirements for the degree of


in the Faculty of Natural Science

University of Pretoria

August 1997


Visualisation of programs can contribute to the reader's comprehension thereof. Animation and diagrams can be used to visualise different aspacts of programs. The term visual book is used to refer to an electronic textbook which can visualise programs. To be an ideal learning environment it must be able to visualise as many aspects of a program as possible and furthermore stimulate the user to exsperiment with its contents. It can be used for computer based education and for distance education and have exiting application possibilities on the internet.

No satisfactory tool to compile quality visual books could be found. A new tool to accomplish this task needs to be created. The design of such an imaginary system, which we call VizAuthor, is discussed in this paper.

The tools of VizAuthor will support the author of a visual book to develop and maintain the contents of the book, and also will guide the reader intaractively to a better understanding of the contents.

To comply to the standards set by commercial products, it will be better to integrate third party tools into VizAuthor than to develop own tools. If the integrated tools can easily be replaced by others, it will enable the user to utilise new technology as soon as it becomes available. This will also improve the adaptability and versatality of VizAuthor.

Literate Programming, Hypermedia, Visual programming and Integrated Environments were studied because own working environments are developed within each of these fields of study. Some of these working enviroments is examined bearing an ideal design for VizAuthor in mind.

The following was done for each of these topics:

The best features of these divers environments is consolidated in VizAuthor. The most prominent features concerned are:

From Literate Programming:

From Hypermedia:

From Visual programming environments:

From integrated environments: