Sun Mar 21 12:01:13 CET 2010

The graph business.

I've been whining about it for a while now.  Time to get it over with.

What is the problem?  I'm building a full graph (pages linked
together) but I would prefer data to take the form of a tree or
directed acyclic graph.

I.e. to structure most of the data management code as a function (a
compiler) instead of a database.

What does the sweb site actually do?

     - parses ramblings files
     - creates indexes
     - wraps a tex->png/pdf renderer

What are the problems?  The graph/node implementation is too stateful.
Components can't be isolated easily.

Solution: get rid of the graph/node implementation.

Roadmap: start with ramblings parsing, and propagate the graph/node
code dependencies up the module hierarchy.

Starting point: parse-ramblings-fast.ss depends on graph.ss

Concrete strategy: create a module entry.ss that abstracts all the
concrete structure in a ramblings file.

This seems to work: I can separate function and data (parsing and
representation of content) from UI presentation (web page structure).