Subject: Announcing Lime

From: Amy Murphy <[email-masked]>
Date: Mon, 20 Aug 2001 10:57:30 -0400 (EDT)

Announcing the release of a middleware for physical and logical mobility.

         Lime (Linda in a Mobile Environment)
         http://lime.sourceforge.net/

HIGHLIGHTS:

    - Lime supports logical mobility of agents in both wired and wireless
      environments.

    - Lime supports physical mobility of hosts.

    - Lime employs a sophisticated coordination model that

         -- hides all communication activities
         -- makes connectivity management totally transparent
         -- supports both location-aware and location-transparent
            applications

    - Lime facilitates rapid development of mobile applications by offering

         -- transparent maintenance of connectivity and computational
            contexts
         -- transparent data sharing among agents and hosts
         -- selective data sharing among agents and hosts
         -- content-based accessing of shared data
         -- transparent data migration
         -- reactive management of contextual changes
         -- agent migration

MOTIVATION: The driving force in the development of Lime has been the
observation that application design in the physical and logical mobile
environments is complicated due to the constant changes in the
availability of resources (both data and computational elements) as hosts
move through space and mobile agents move among hosts. Our goal was to
simplify programming in this constantly changing environment by providing
a middleware to handle on behalf of the programmer many of the
complexities, while still revealing enough of the interesting aspects of
the mobile environment to remain flexible and applicable to a wide variety
of projects.

BACKGROUND: With this goal, we turned toward Linda, a shared memory
computing model developed in the mid 1980's at Yale University, which
simplifies distributed computing. Our idea is to provide the simple Linda
model of coordination in the mobile environment. The result of our
investigation is Lime: Linda in a Mobile environment.

LIME MODEL: In Linda, processes communicate by writing, reading, and
removing data from a tuple space that is assumed to be persistent and
globally shared among all processes. Lime adapts this notion to a mobile
environment by breaking up the notion of a global tuple space, and
distributing its contents across multiple mobile components.  When
components are within range (i.e., mobile agents are on the same host or
communication is available between mobile hosts which contain agents), the
contents of the tuple spaces held by the individual mobile components are
transiently and transparently shared, forming a "federated tuple space".
The content accessible through such virtual tuple space, made up of the
concrete tuple spaces contributed by each component, changes from time to
time according to the current connectivity pattern. Lime also introduces
the notions of tuple location, for querying a partition of the federated
tuple space, and of reactive programming, for allowing actions to be
performed with varying degrees of atomicity upon insertion of a tuple.
More details about the model are available in research papers available
online http://lime.sourceforge.net/info/papers.html.

IMPLEMENTATION:  A prototype of Lime has been developed in Java and is
released as open source under the GNU Lesser General Public License.  It
is hosted on SourceForge (http://www.sourceforge.net).  The code,
documentation, examples, and support information are available at

         http://lime.sourceforge.net/
         http://www.sourceforge.net/projects/lime/

Early releases of Lime have been used for research and teaching by our and
other institutions. A number of examples and demo applications have been
developed with Lime, and are included with the distribution.

For questions and/or comments please feel free to contact the project
leaders directly, or make use of the discussion forums on SourceForge to
share your thoughts with the Lime community.

Lime Project Leaders

    Amy Murphy, University of Rochester, NY, USA
         [email-masked]
         http://www.cs.rochester.edu/u/murphy/

    Gian Pietro Picco, Politecnico di Milano, Italy
         [email-masked]
http://www.elet.polimi.it/Users/DEI/Sections/Compeng/GianPietro.Picco/

    Gruia-Catalin Roman, Washington University, St. Louis, MO, USA
         [email-masked]
         http://www.cs.wustl.edu/~roman/