\documentstyle[11pt,alltt,psfig,fullpage]{article}

\setlength{\oddsidemargin}{0.0in}
\setlength{\evensidemargin}{0.0in}
\setlength{\textwidth}{6.6in}

\title {LINK Postdoctoral Fellowship \\ {\em Second Quarter Report}}
\author{Jonathan Berry}
\date{\today}

\begin{document}
\maketitle

\input{defines.tex}

\tableofcontents

\newpage

\listoffigures

\newpage

\section{Status of Public Domain LINK Project}

During the past four months, I have designed and implemented LINK's
command-line interface with STk (Scheme-Tk).  This process has involved
a fundamental redesign of the file hierarchy of LINK, namely the 
incorporation of tools which automatically generate C++ template 
instantiations and STk methods which call underlying C++ methods.
STk's object-oriented functionality (STKlos) has made possible a
much more beautiful interface than Tcl could have provided.

If STk becomes a widely used tool (I believe it will) then choosing
that over Tcl will have been the right choice.  Even if it does not,
the GNU project's ``Guile'' multi-language system has a Scheme-Tk 
interface that is based on STk.  LINK could be ported to that eventually. 
Note that I haven't done that yet because Guile lacks the equivalent
of STKlos.  The good news is that STk is at this moment undergoing a
port to Microsoft Windows.  Once this is complete, it should be a 
medium sized, but doable project to port LINK to the PC.

I have talked to Steve Mahaney and Joe Rosenstein (Education Director at
DIMACS) and they have encouraged me to seek funding to extend the LINK
grant and work on incorporating LINK into the K-8 teacher education program
here during the next year.  I don't know if this is even possible, but
I would be interested in exploring it.  This report should make a fairly
strong case that LINK continues on a track to success, though I anticipate
a busy upcoming six months.

The new version of LINK removes some problematic old dependencies, namely
our former dependence on Motif and ``extended'' Tcl.  The new LINK 
will be ready to port to the various sites soon, though I have been planning 
to wait until there is at least a rudimentary GUI, which is my plan for 
the upcoming quarter.  

I consider the project to be coming along well, if very slightly behind
schedule.  The current skeleton draft of the User's Manual is included
as an appendix.  {\em All example programs are automatically run and
converted into \LaTeX\ format using a Tcl extension called \verb+expect+.}

\section{Updated Timetable}

The following is the list of tasks presented in the June 1 proposal.
Updates are recorded in boldface.

\begin{itemize}
\item {\em Consolidating Public-Domain LINK} [{\bf DONE}]
This was first quarter work.

\item {\em Clearly Specifying Algorithm I/0} [1-2 months] This will involve
a lot of work on the {\em Attribute} and {\em Subgraph} features in order
to make them more useful in executing pipelines of commands.  

\item {\em Implementing a {\em Basic} Tk Interface}
[STk: revised estimate was: 4-5 months to 
complete a workable, extendible interface] {\bf This estimate was 
reasonable though perhaps a little liberal.  There is a workable 
command-line interface to the basic objects now, and the Tk window beckons.}

\item {\em Structuring to Allow LINK objects to be included as C++ library
functions} [{\bf DONE}]

\item {\em Portability Issues} [{\bf More Progress}]  
{\bf dependency on Motif and TclX removed}

\item {\em Extending the Interface} [4 months]  The document defining
a vision for the LINK GUI written by Nate's student specifies some 
features which are much more advanced than any currently existing in LINK.
Implementing the basic 3D graphics modeling system on which to build
these features may or may not involve a major design
effort in itself, depending on the contributions to Tk.  Then 
implementing the features (or a subset of them ), will take 
significant effort.  A simple animation facility will be a priority,
and LINK demos using this will be constructed.  {\bf This
step will probably be extension work on next year or beyond.  I'll keep 
the document in mind while designing the basic interface so that 
advanced features can be
incorporated.  Also, I've heard that xtango is going to be offerred in
Tk.  This good news might mean an animation facility for link without
reinventing the wheel.}

\item {\em Extending the Algorithms Library}  Many algorithms in the
LINK library do not work now.  These must be fixed and added to the 
public-domain release. 
\end{itemize}

\appendix
\part{Getting Started with Link}
\input{forward}

\section{Introduction}
\setcounter{figure}{0}
\setcounter{section}{0}
\input{introduction}

\part{Basic Objects}
\setcounter{figure}{0}
\setcounter{section}{0}
\input{basicObjects}

\part{Graph Objects}
\setcounter{figure}{0}
\setcounter{section}{0}
\input{graphObjects}

\end{document}
