header image


The following is a list of open source software projects that we currently provide support for.


OpenCom supports the development of component-based systems software that can perform node-local adaptation. OpenCom components are language-independent encapsulated units of functionality and deployment that interact with other components exclusively through “interfaces” (provided behaviour) and “receptacles” (interfaces that make explicit the dependencies of a component on other components). Bindings are connections between interfaces and receptacles. The OpenCom kernel can be extended with multiple types of reflective Causally Connected Self Representations each presenting a distinct Meta Object Protocol. Three examples of these are:

  • Interface; supports inspection of a component’s provided and required interfaces.
  • Architecture; accesses the software architecture of the kernel represented by a component graph.
  • Interception; enables the dynamic insertion of interceptors onto interfaces.

We currently support two open source versions of OpenCom; one in Java, and one in c.

OpenCom in Java

Available from http://sourceforge.net/projects/gridkit/

The Java version contains the full features of OpenCom: reflection, frameworks, and aspects.

OpenCom in C

Available from http://sourceforge.net/projects/opencomc/

The C version is designed as a minimal implementation for resource constrained devices.



Gridkit is a reflective middleware platform that is highly configurable and reconfigurable to support applications developed in highly heterogeneous environments. It leverages the concept of open overlays i.e. it provides a configurable network virtualisation layer that middleware services can be developed upon.

Gridkit is an open source project written in Java and is available from:




SeDiM is a middleware platform that provides interoperability between heterogeneous service discovery protocols e.g. between SLP, UPnP and Bonjour.

SeDiM is an open source project written in Java and is available from: