Obiettivo
The project will develop formalisms for dynamic assembly, reconfiguration and type-checking of complex distributed software systems, such as telephone and banking systems, that should be kept running as they evolve through patches or upgrades, and should be able to adapt to changes in the environment. Such formalisms will advance the state of the art in modelling the "temporal" dimension of Global Computing (GC), where the ability to interleave meta-programming activities, like assembly and reconfiguration, with computational activities is a must. The development of these calculi will rely on decisive progress in three areas: calculi for dynamic assembly, calculi for object evolution and adaptation, flexible and compositional type systems.
OBJECTIVES
The project aims to advance the state of the art in modelling and programming software evolution while retaining safety.
More specifically: - We will provide foundational calculi for dynamic assembly and reconfiguration which will be able to describe separate compilation, run-time code generation, dynamic linking and loading. - We will design foundational calculi supporting object capable of changing their behaviour, e.g. by changing class, as well as calculi that are environment adaptable, e.g. able to test existence of objects in the execution environment. - We will develop type systems that support "compositional analysis" through the existence of "principal typings", show how to use such type systems for separate compilation and incremental type inference, and address the issue of combining dynamic type-checking with dynamic assembly and reconfiguration.
DESCRIPTION OF WORK
The project is organized in 5 Workpackages (WPs).
The first three WPs:
1. Frameworks and Calculi for Dynamic Software Assembly;
2. Flexible and Compositional Type Systems;
3. Calculi for Object Evolution aim to develop the calculi and type systems identified as key project objectives.
The main goal will be to carry out the foundational work, which will take the form of frameworks for dynamic assembly and reasoning about properties of different assembly strategies, calculi for object evolution and adaptation, type systems with properties that will make them particularly suitable for use in a dynamic context.
The other two WPs:
4. Applications to Prevalent Languages;
5. Flexible Dynamic Type. Checking for Dynamic Software Assembly are downstream (their feasibility will be re-assessed at the first review point on month 12 of the project), their rationale is:
- to test the portability of innovative ideas expected from WPs 1 and 3, namely facilities supporting object evolution (i.e. allowing an object to change its class or the code of its methods) and environment-adaptable programming, to a major programming language. Such a language will be chosen (at the time of the first review) among the prevalent ones for GC. The emphasis on objects is motivated by the expectation that in any successful language for GC the object paradigm will play a major role;
- To test how the innovative ideas expected from WPs 1 and 2 (and developed fairly independently, but with portability in mind) can be merged in a unifying framework that will account for dynamic assembly, reconfiguration and type-checking. The combination of dynamic type checking with dynamic assembly and reconfiguration is essential, since addressing these issues separately will either fail to guarantee safety and efficiency or be significantly less useful in the GC environment.
Campo scientifico (EuroSciVoc)
CORDIS classifica i progetti con EuroSciVoc, una tassonomia multilingue dei campi scientifici, attraverso un processo semi-automatico basato su tecniche NLP. Cfr.: Il Vocabolario Scientifico Europeo.
CORDIS classifica i progetti con EuroSciVoc, una tassonomia multilingue dei campi scientifici, attraverso un processo semi-automatico basato su tecniche NLP. Cfr.: Il Vocabolario Scientifico Europeo.
- scienze naturali informatica e scienze dell'informazione software software applicativi software di sistema
È necessario effettuare l’accesso o registrarsi per utilizzare questa funzione
Programma(i)
Programmi di finanziamento pluriennali che definiscono le priorità dell’UE in materia di ricerca e innovazione.
Programmi di finanziamento pluriennali che definiscono le priorità dell’UE in materia di ricerca e innovazione.
Argomento(i)
Gli inviti a presentare proposte sono suddivisi per argomenti. Un argomento definisce un’area o un tema specifico per il quale i candidati possono presentare proposte. La descrizione di un argomento comprende il suo ambito specifico e l’impatto previsto del progetto finanziato.
Gli inviti a presentare proposte sono suddivisi per argomenti. Un argomento definisce un’area o un tema specifico per il quale i candidati possono presentare proposte. La descrizione di un argomento comprende il suo ambito specifico e l’impatto previsto del progetto finanziato.
Invito a presentare proposte
Procedura per invitare i candidati a presentare proposte di progetti, con l’obiettivo di ricevere finanziamenti dall’UE.
Dati non disponibili
Procedura per invitare i candidati a presentare proposte di progetti, con l’obiettivo di ricevere finanziamenti dall’UE.
Meccanismo di finanziamento
Meccanismo di finanziamento (o «Tipo di azione») all’interno di un programma con caratteristiche comuni. Specifica: l’ambito di ciò che viene finanziato; il tasso di rimborso; i criteri di valutazione specifici per qualificarsi per il finanziamento; l’uso di forme semplificate di costi come gli importi forfettari.
Meccanismo di finanziamento (o «Tipo di azione») all’interno di un programma con caratteristiche comuni. Specifica: l’ambito di ciò che viene finanziato; il tasso di rimborso; i criteri di valutazione specifici per qualificarsi per il finanziamento; l’uso di forme semplificate di costi come gli importi forfettari.
Coordinatore
16126 GENOVA
Italia
I costi totali sostenuti dall’organizzazione per partecipare al progetto, compresi i costi diretti e indiretti. Questo importo è un sottoinsieme del bilancio complessivo del progetto.