Discussion - What are APIs?
The application areas and solutions, whether object-oriented
or not, covered a wide range of interests and
did not suggest a canonical approach to the
definition and development of APIs.
In particular, as has been mentioned before,
the somewhat blurry demarcation between
computation models, languages and APIs seem to confuse
all of us.
Moreover, a catalogue of APIs
seemed to be beyond our reach.
An attempt to overcome the confusion by
restricting ourselves to discussing the
requirements for the (future) Java class libraries
failed, surprisingly, because the majority felt
that the restriction to a particular (!)
language was not appropriate.
So the workshop was in danger of being halted,
with a number of questions unanswered.
What actions should we take in terms of recommendations
to the W3C?
What perspectives can we (meaningfully) distinguish?
And, what (exactly) are our areas of interest?
For example, although many of the solutions
proposed were object-oriented in spirit,
only few were so in the flesh.
- Actions
- Define a distributed model of computation
that suits the Web.
- Define canonical (language-independent?)
object models for ... resources, application domains ...
- Perspectives
- servers - extensions
- browsers - clients, viewers, configuration
- agents - e.g. payment
- Interests
- distributed objects
- plug-in components
- formalization of requirements and solutions
Nevertheless, we managed to break out of this impasse,
by reconsidering what APIs are meant for,
the development of Web-aware applications,
and we made a start of listing our basic needs.