Kurt Nørmark ©
Department of Computer Science
Aalborg University
Denmark
Abstract Index References Contents | Theses slides are intended for the IPCC/SIGDOC 2000 conference in Boston, Massachusetts. The conference took place September 24-27, 2000. |
Plan of the SIGDOC talk Slide Note Contents Index References | On this page we outline the plan of the SIGDOC talk, which includes selected pages from this collection of material |
|
Literate Programming |
An example of a literate program Slide Note Contents Index References | For those who do not have a background in literate programming we here show an example of a simple literate program. The program is in Danish, but it should nevertheless be possible to get a general understanding of the approach. |
|
|
Literate Programming and the WEB System Slide Note Contents Index References | Here we will briefly describe an important background and inspiration, namely Knuth's ideas of literate programming. |
|
|
|
Problems with WEB-like literate programming Slide Note Contents Index References | Elucidative programming is meant to be an alternative to WEB-like literate programming. Therefore it is natural to identify a number of problems with classical literate programming which we attempt to remedy in our variation of literate programming. |
|
|
Elucidative Programming |
The meaning of the word Slide Note Contents Index References | The verb 'elucidate' may not be part of the working vocabulary of many Danes. Therefore we introduce the meaning of the word on this slide |
To elucidate is |
|
|
Elucidative Programming Slide Note Contents Index References | At this place we introduce elucidative programming. We here describe a number of key properties of the documentation approach. |
|
We will return to all of these items later in the presentation |
An example of an elucidative program Slide Note Contents Index References | In order to be concrete we will here give an example of an elucidative program. This program is akin to the program which is discussed in the SIGDOC paper |
|
|
Strong and weak points Slide Note Contents Index References |
|
|
The elucidative programming model Slide Note Contents Index References | This page describes a number of important concepts behind the elucidative programming model. |
|
The source format of the documentation Slide Note Contents Index References | When the programmer works with a literate program the source format of the documentation is of particular interest. This format is important because it constitute the words and lines actually written by the programmer. In addition, the programmer will spend much time reading parts of the documentation in this format. Therefore the properties of the format matters. This page is related to the Scheme elucidator only. |
|
|
Tool Overview Slide Note Contents Index References | There are three important tools in an elucidative programming environment. Of these, a standard Internet browser counts for one. The others are the editor used for programming and documentation, and the tool which produces the underlying browser format. |
|
|
The editor tool Slide Note Contents Index References | The editor tool for the elucidator plays a major practical role. It is important that the programmer can continue working in his favorite environment. We will assume that our programmers use Emacs. Therefore we chose be augment the Emacs text editor with elucidator support. |
|
|
The elucidator tool Slide Note Contents Index References | The elucidator tool produces the HTML pages to be shown in a browser. In addition, the elucidator tool makes a number of data structures used by the editor to gain knowledge about the documentation bundle. |
|
|
|
The Java Elucidator Slide Note Contents Index References |
|
|
The Design of the Java Elucidator Slide Note Contents Index References | On this page we will illustrate the overall design of the Java Elucidator. |
Figure. The design of the Java Elucidator | ![]() |
Tool Integration Slide Note Contents Index References | Tool integration is a key issue when two or more program development tools are used together. On this page we discuss integration issues of the tools in an elucidative programming environment. |
|
|
|
Tool philosophy Slide Note Contents Index References | Here we will discuss possible and different tool organizations. We call it 'tool philosophy'. Our point is not to force the programmer into a specialized environment for authoring of program documentation. We go for documentation enabling of existing environments. In our experience, programmers are rather conservative, and most of them want to continue working in their favorite environments. There must be major advantages in a new environment in order for the programmers to shift. |
|
|
A broader perspective on the use of an elucidator Slide Note Contents Index References | Here we will list a number of potential areas which we expect can be supported by the elucidator. |
|
|
Status and Conclusions Slide Note Contents Index References | We conclude this presentation with some brief accounts on the status of our work. |
|
|
Elucidative Programming
Course home Author home About producing this web Previous lecture (top) Next lecture (top) Previous lecture (bund) Next lecture (bund)
Generated: October 8, 2000, 14:04:51