JEF
Home PageCategories: Frameworks, Miscellaneous
Latest version: 0.4.1
Added 2005-09-22
JEF, acronym for Java Evolutionary Framework, is a project aimed to both define and implement a genetic programming framework for the Java programming language.
JEF has been conceived as divided into three subprojects, namely: Dna, Jef and JXTA-Jef :
Dna: this is the basic building block for the JEF Proj since it provides a framework for dynamically manipulating Java class files. Amongst all the possibilities, this package allows developers to obtain object oriented Java class files representations, modify them according to their own needs up to the bytecode level (thus removing, adding or modifying the bytecode of already existing methods), add brand new methods to already existing classes, or even programmatically create new classes completely from scratch, validate newly created class files according to the constraints imposed by the Official Java Class File Specification, all by means of an easy to use/understand and well defined API characterized by a rapid learning curve.
Jef: the Jef subproject is meant to define the interfaces as well as some basic implementations of all those classes involved in the process of mixing two Java class files in order to generate a potentially brand new implementation, according to a customizable logic. This subproject is aimed to provide both demonstrative Mixer implementations and implementations useful to be deployed either directly or to be used as starting point for customized Mixer implementations. In the latter case developers will be berived of the burden of taking care of how some complex functionalities should be implemented, relying upon well tested and working implementations.
JXTA-Jef: deploying the Jef-Dna framework over a number of somehow interconnected computing-capable nodes, will enable us to let heterogeneous Java class files (i.e. mobile agents, teleo-reactive agents, etc.) move from one node to another, and potentially evolve with a really low degree of human interaction. This subproject is therefore necessary for building a decentralized (P2P - peer to peer) overlay network gathering Jef-capable nodes.
Built for Java |
Free or free version available |