Wikipedia

Kamaelia

Kamaelia
Kamaelia-logo.png
Developer(s)BBC Research & Development
Stable release
1.0.12.0 / December 30, 2010 (2010-12-30)
Operating systemCross-platform
LicenseApache License
Websitewww.kamaelia.org

Kamaelia is a free software/open source Python-based systems-development tool and concurrency framework produced by BBC Research & Development.

Kamaelia applications are produced by linking independent components together. These components communicate entirely through "inboxes" and "outboxes" (queues) largely removing the burdens of thread-safety and IPC from the developer. This also makes components reusable in different systems, allows easy unit testing and results in parallelism (between components) by default.

Components are generally implemented as generators - a method more light-weight than allocating a thread to each (though this is also supported). As a result, switching between the execution of components in Kamaelia systems is very fast.

Applications that have been produced using Kamaelia include a Freeview digital video recorder, a network-shared whiteboard, a 3D GUI, an HTTP Server, an audio mixer, a stream multicasting system and a simple BitTorrent client.[1]

License change

Kamaelia's License changed in July 2010 [2] from the Mozilla tri-license (MPL, GPL and LGPL) to the Apache License, with a note that usage under the old licensing scheme was permitted if necessary (due to license incompatibilities), given the rationale for change was to make the codebase more usable by developers not less.

References

External links

This article is copied from an article on Wikipedia® - the free encyclopedia created and edited by its online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of Wikipedia® encyclopedia articles provide accurate and timely information, please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.

Copyright © 2003-2025 Farlex, Inc Disclaimer
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional.