HIPPO Project Overview
Objectives
The area of investigation is the provision of programming systems able to
take advantage
of the popular use of standard transmission protocols over the internet.
The ultimate goal of the research is to provide a programming system which
supports
high-level programming over the internet. If the internet is thought of as
a distributed
heterogenous data collection, then such a system can be thought of as a
query language over
this domain. There are two major avenues of investigation within this topic:
- The development of appropriate high-level programming models, which
adequately capture
the semantics of the internet. Such issues include partial and total
failure models,
the possibility of alternative computations to determine the same result,
and the use of
semantic knowledge to ascertain the likelihood of success or failure of a
particular query.
- To develop, through the paradigms and technology of
orthogonal
persistence,
the facility to transfer typed, high-level data (including higher-order
executable
forms) within the same semantic domain and using the standard transmission
protocols.
This project has only recently started; the main objective in this phase is
to identify
the major research issues to allow the structure of a full investigation to
be determined.
Initial progress
First insight into the issues involved has been achieved by feedback
obtained from
the implementation and use of a core language which incoporates internet
semantics.
This system is called HIPPO
(High-level Internet Programming with Persistent Objects).
The HIPPO
system is a testbed for experimentation with semantic models for
programming, using
both text and higher-level objects, across the internet. The system
incorporates
a programming language with URLs
embedded in the semantic domain, along with programming models which
reflect their
use. The advantages of this approach over the use of a traditional
language with
access to internet libraries are twofold:
- Semantics appropriate for internet data retrieval may be built in to
the langauge
domain. These semantics do not fit well with those of traditional
languages. For
example most languages are deterministic and execute statements in a known
order,
whereas internet paradigms often cause retrieval to be directed according
to non-deterministic
issues such as current or local availability of resources.
- Data with higher-level types than plain text, including higher-order
function and
abstract types, may be coherently transferred using the standard protocols.
This
may be achieved through the use of orthogonal persistence, allowing values
of arbitrary
types within the language to be named globally as URLs.
The Hippo Core Language (HCL) has been implemented as a first step.
Here is some further
information
about this project.
Richard Connor
24/4/96