What Is HOPE?
Creating Emergent Computational Spaces of Meaning
HOPE is an application development system. Similar to LEGO's, users build tailored applications from smaller, self-connecting components (called receptors) by "snapping" them onto a graphical virtual surface.
(A simple two receptor system that receives images dropped onto the surface, converts them to a thumbnail, and writes the thumbnail image back out to the file system.)
Receptors perform various operations, such as:
- data acquisition
- data analysis
- data visualizing / rendering
- data storage / retrieval
from which process chains are constructed.
However, data is not just numbers and letters. In HOPE, data is semantic: it carries meaning about itself. It is this semantic meaning that enables sophisticated applications to be built from smaller components--each receptor plugged into the HOPE surface can consume specific semantic information and produce other specific information which other receptors can process.
(A system in which RSS feed titles are acquired, and entities, extracted with AlchemyAPI Natural Language Processor, are filtered by keywords. The unfiltered feed-entity data is also persisted to a local database.)
Furthermore, borrowing from membrane computing, autonomous "islands of computation" can be easily created, sharing only specific information with other islands. Users can easily create different ways of visualizing the same information, perform different computations, and enable/disable specific computational pathways for the given task at hand.
(Here we have three different feeds being analyzed by two autonomous NLP processes and feeding into a single filter, rendered as a tabbed list and, when the user double-clicks on an item in the tab, the feed item is displayed in the browser.)
The above screenshots from actual HOPE applets illustrates the ease and flexibility in which computational analysis, data persistence, and visualizations can be configured.