ACELA: Interactive Books

Slides from a Presentation

Steven Pemberton

CWI, Amsterdam


ACELA

Acela is a co-operative project between mathematicians and computer-scientists.

Aims to produce:


Overview


Interactive Learning

Traditional Computer Aided Instruction:
uses directed study to replace the teacher the system decides the order
Interactive Books:
lets the reader decide uses the reader's motivation

Interactive Books

Present material in a book-like form with added advantages, such as:

Different Reading Orders

Here is an image of the table of contents of a (paper) book from the 1970's "An Informal Introuction to Algol 68" by Lindsey and van der Meulen, that offered two reading orders (row-wise was more formal, column-wise was more tutorial).


Disadvantages of I-books

Claim: 300 dpi screens will have as great an effect on electronic publications as the 300 dpi laser printer had on desk-top publishing.

The First Book

The Acela system is for all types of books: A series of mathematics books are planned, with as first example one on Lie algebras.

This requires access to external mathematics packages.


Other Properties of the System

Presentation independence:

inv(A)

A-1
__
A

External processes with transparency

Platform independence

Unified reader and authoring system


The User

Few online publications seem to have done an analysis of the user, which only compounds the problems of reading them.

Book-independent tasks and requirements include:


Example: Latex2HTML

There are many examples of bad user interfaces to online publications, but one of the worst is the default behaviour of the program Latex2HTML, which splits a document into lots of tiny pages.

Here is the structure of an example translated document:

And here a sample page from that document: you quickly lose any idea of where you are:


The User

Book-dependent tasks include:
Mathematics:
Music:
Cookery:

The Implementation

Based on Views technology:

Documents

Documents are represented internally as content-only, structured values.

For instance the date and time:

(1996, 9, 9), (11, 17, 16)
Separating the content from the presentation means you can present the same information in several ways, simultaneously:


Functionality

Functionality is supplied via linear equality invariants. Example: a clock
clock= (h, m, s) presented h, ":", m, ":", s

s= system:seconds mod 60
m= system:seconds 60 mod 60
h = system:seconds 3600 mod 24


Interaction

Interaction is done via a general-purpose editor:

Presentation

Presentation is done using the invariant mechanism:

Advantages

Some advantages of this approach are:

The architecture


The State of Play

Here is a screen-dump of a current version of the prototype: