abstract = "This extended abstract aims at provoking a wide
discussion around code synthesis and its importance in
creating the next generation of self-improving software
systems. As a starting point for the discussion, a
machine-to-machine self-improving framework is
presented. The framework aims at improving system's
performance by integrating two modules: i) a
self-improving online module, and ii) a code
synthesiser offline module. The online module learns,
at runtime, as it handles the system's inputs, how to
best compose the system from a pallet of available
software components and a user-defined high level goal.
The offline code synthesizer generates new components
based on the perceived system's input, executing
environment and the system's goal provided by the
online module. The code synthesiser then provides
better component options for the online module to
integrate with the system to improve its performance.
This abstract describes the framework, focusing on its
main challenges.",