Vai al contenuto| Home page|

   Ti trovi in: HOME »Programmi, progetti e risultati »I progetti »PRIN - Programmi di ricerca di Rilevante Interesse Nazionale»Programma di ricerca
INIZIO_TESTO_DA_INDICIZZARE

PROGRAMMA DI RICERCA 2006

italiano - english
Programmi di ricerca simili:
Classificazione scientifico-disciplinare
Classificazione brevettuale
Classificazione geografica
Bibliografia
Rimandiamo ai Modelli B per una bibliografia più completa, in particolare per i lavori di membri delle unità.

[AB02] Z. Ariola and S. Blom. Skew confluence and the lambda calculus with letrec. Ann. Pure Appl. Logic, 117(1-3):95--168.
[ACN02] J. Aldrich, C. Chambers, and D. Notkin. Architectural reasoning in archjava. ECOOP'02, number 2374 in LNCS, pages 334--367. Springer, 2002.
[Ayc03] J. Aycock, A brief History of Just-In-Time" ACM Computing Surveys 35, 2(June 2003), pp. 97-113.
[BD04] A. Buckley and S. Drossopoulou. Flexible Dynamic Linking. In 6th Intl. Workshop on Formal Techniques for Java Programs 2004, June 2004.
[BF96] P. Di Blasio and K. Fisher. A Calculus for Concurrent Objects. Proc. of CONCUR '96. volume 1119 in LNCS,pp. 655-670. Springer, 1996.
[BR00] K. H. Bennett and V. T. Rajlich. Software Maintenance and Evolution: a Roadmap. In The Future of Software Engineering, pages 75-87. ACM Press, 2000.
[Bru02] K. Bruce. Foundations of Object-Oriented Languages, Types and Semantics. MIT Press, 2002.
[Car95] L. Cardelli. A Language with Distributed Scope. Computing Systems, 8(1). pp. 27--59, 1995.
[Cas97] G. Castagna. Object-Oriented Programming: A Unified Foundation. Progress in Theoretical Computer Science Series. Birkhauser, Boston. 1997.
[CB00] M. Bugliesi and G. Castagna. Mobile Objects. FOOL 2000.
[CS98] C. Cartwright, G. Steele. Compatible genericity with run-time types for the Java programming language. OOPSLA'98, 1998.
[Dro00] S. Drossopoulou. An abstract model of Java dynamic linking and loading. In Types in Compilation, pages 53--84, 2000.
[EA06] M. Eaddy and A. Aho. Statement Annotations for Fine-Grained Advising. ECOOP'2006 Workshop on Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'06), Nantes, France, July 2006.
[FF00] R. E. Filman and D. P. Friedman. Aspect-Oriented Programming is Quantification and Obliviousness. OOPSLA 2000 Workshop on Advanced Separation of Concerns, Minneapolis, USA, October 2000.
[FKF98] M. Flatt, S. Krishnamurthi, M. Felleisen. Classes and Mixins. POPL'98, 1998.
[Fla99] D.Flannanghan. JavaScript: The definitive guide. O'Reilly, 1999.
[FP05] N. Frohlich and G. Paul. Lightweight Generation of User Interfaces. 2nd International Scientific Conference on Computer Science, Chalkidiki, Greece, September 2005.
[[GFF04] D.S. Goldberg, R.B.Findler, M.Flatt. Super and Inner - Together at Last! OOPSLA 2004
[GH98] A. Gordon and P. Hankin. A Concurrent Object Calculus: Reduction and Typing. Proc. of HLCL '98. volume 16.3 in ENTCS. Elsevier, 1998.
[GHJV95] E. Gamma, R. Helm, R. J.son, J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.
[GJS96] J. Gosling and B. Joy and G. Steele. The Java Language Specification. Addison Wesley, 1996.
[Gou01] K. J. Gough, "Stacking them up: a Comparison of Virtual Machines," 6th Australasian Computer Systems Architecture Conference (AustCSAC'01), 2001.
[Gro98] D. P. Grove, "Effective Interprocedural Optimization of Object-Oriented Languages", Doctoral dissertation University of Washington 1998.
[HK02] J. Hannemann and G. Kiczales. Design pattern implementation in Java and AspectJ. OOPSLA'02, pages 161-173. ACM Press, November 2002.
[HNBA06] W. Havinga, I. Nagy, L. Bergmans, and M. Akssit. Detecting and Resolving Ambiguities Caused by Inter-Dependent Introductions. 5th Int'l Conf. on Aspect-Oriented Software Development (AOSD'06), pages 214-225, Bonn, Germany, March 2006. ACM Press.
[JDAO04] P. Jolly, S. Drossopoulou, C. Anderson, Klaus Ostermann. Simple dependent types: Concord. 6th ECOOP Workshop on Formal Techniques for Java-like Programs (FTfJP2004), 2004.
[Jim96] T. Jim. What are principal typings and what are they good for? 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 42--53. ACM Press, 1996.
[KGBM06] A. Kellens, K. Gybels, J. Brichau, and K. Mens. A Model-driven Pointcut Language for More Robust Pointcuts. SPLAT'06, Bonn, Germany, March 2006.
[KHH+01] G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and B. Griswold. An Overview of AspectJ. ECOOP'01, pages 327-353, Budapest, Hungary, June 2001. ACM Press.
[KHJ06] J. Klein, L. Helouet, and J. Jezequel. Semantic-based Weaving of Scenarios. 5th Int'l Conf. on Aspect-Oriented Software Development (AOSD'06), pages 27-38, Bonn, Germany, March 2006. ACM Press.
[Kic03] G. Kiczales. The Fun Has Just Begun. Keynote AOSD 2003, Boston, March 2003.
[KLM+97] G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Videira Lopes, J. Loingtier, and J. Irwin. Aspect-Oriented Programming. ECOOP'97, LNCS 1241, pages 220-242, Helsinki, Finland, June 1997. Springer.
[KS04] C. Koppen and M. Storzer. PCDiff: Attacking the Fragile Pointcut Problem. European Interactive Workshop on Aspects in Software (EIWAS'04), Berlin, Germany, September 2004.
[LC06] G. T. Leavens and Y. Cheon. Design by Contract with JML. Draft paper available at http://www.cs.iastate.edu/~leavens/JML/ January, 2006.
[Mae87] P. Maes. Concepts and Experiments in Computational Reflection. OOPSLA'87, pages 147-156, Orlando, Florida, USA, October 1987. ACM.
[MM89] O. Lehmann Madsen, B. Moller-Pedersen. Virtual classes: A powerful mechanism in object-oriented programming. OOPSLA89, 1989.
[NCM04] N. Nystrom, S. Chong, A. C. Myers. Scalable extensibility via nested inheritance. OOPSLA04, 2004.
[OCRZ03] M. Odersky et al. A nominal theory of objects with dependent types. ECOOP2003. Volume 2743 of Lecture Notes on Computer Science, 2003.
[OWBS98] M. Odersky, P. Wadler, G. Bracha, D. Stoutamire. Making the future safe for the past: Adding Genericity to the Java programming language. OOPSLA98, ACM Press, 1998.
[Phi00] M. Philippsen. A Survey of Concurrent Object-Oriented Languages. Concurrency Computat.: Prct. Exper., 12(10):917-980, 2000.
[PN06] D. J. Pearce and J. Noble. Relationship Aspects. 5th Int'l Conf. on Aspect-Oriented Software Development (AOSD'06), pages 75-86, Bonn, Germany, March 2006. ACM Press.
[PS93] B.C. Pierce and D. Sangiorgi. Typing and Subtyping for Mobile Processes. Proc. of 8th IEEE Logics in Computer Science. pp. 376-385. IEEE, 1993.
[PS96] B. Pierce and D. Sangiorgi. Typing and Subtyping for Mobile Processes Mathematical Structures in Computer Science, 6(5):409--454, 1996.
[SC00] J. Costa Seco and L. Caires. A basic model of typed components. ECOOP'00, number 1850 in LNCS, pages 108--128. Springer, 2000.
[SHU06] D. Stein, S. Hanenberg, and R. Unland. Expressing Different Conceptual Models of Join Point Selections in Aspect-Oriented Design. 5th Int'l Conf. on Aspect-Oriented Software Development (AOSD'06), pages 15-26, Bonn, Germany, March 2006. ACM Press.
[Sre02] V. C. Sreedhar. Mixin'up components. 22rd International Conference on Software Engineering, ICSE 2002, pages 198--207. ACM, 2002.
[TP01] P. Tonella and A. Potrich. Reverse Engineering of the UML Class Diagram from C++ Code in Presence of Weakly Typed Containers. 1st International Conference on Software Maintenance (ICSM'01), pages 376-385, Florence, Italy, November 2001. IEEE Press.
[TP05] P. Tonella and A. Potrich. Reverse Engineering of Object Oriented Code. Monographs in Computer Science. Springer, 2005.
[Vas04] A. Vasseur. Dynamic AOP and Runtime Weaving for Java- How Does AspectWerkz Address It? 2004 Dynamic Aspect Workshop (DAW'04), pages 135-145, Lancaster, England, March 2004.
[WR03] C. Walls and N. Richards. XDoclet in Action. Manning Publications, December 2003.
[Zen02] M. Zenger. Type-safe prototype-based component evolution. In ECOOP'02, number 2374 in LNCS, pages 470--497, Berlin, 2002. Springer.
[ZX04] J. Zhao and B. Xu. Measuring Aspect Cohesion. FASE'2004, LNCS 2984, pages 54-68, Barcelona, Spain, March 2004. Springer.
Parole Chiave
SISTEMI A OGGETTI, ADATTABILITÀ, RICONFIGURAZIONE DINAMICA, EVOLUZIONE NON PREDICIBILE DEL SOFTWARE, SISTEMI DI TIPI, ESTENSIONI LINGUISTICHE, SISTEMI AD AGENTI, LINGUAGGI JAVA-LIKE, MACCHINE VIRTUALI

Sistemi a oggetti estendibili per ambienti dinamici e impredicibili (EOS DUE)

Università degli Studi di Genova
Abstract
Nel corso di un precedente progetto (http://bart.disi.unige.it/EOS) abbiamo ottenuto notevoli risultati nell'estensione dei sistemi a oggetti con ingredienti al di là di quelli tradizionali. Tuttavia, vi sono ulteriori importanti temi da studiare come naturale prosecuzione del lavoro intrapreso: in particolare, le difficili problematiche poste dall'utilizzo dei sistemi a oggetti in ambienti dinamici e impredicibili. Questo è, quindi, lo scopo del progetto che proponiamo.
Infatti, i sistemi software diventano ogni giorno più grandi, distribuiti ed eterogenei, dovrebbero idealmente poter "girare"; indefinitamente, non vengono più creati da zero, ma sempre più sviluppati componendo e modificando sistemi preesistenti, spesso senza fermarne l'esecuzione. Di conseguenza, i programmatori devono essere in grado di progettare e sviluppare applicazioni che possano adattarsi a cambi imprevisti di requisiti o tecnologie o ambiente, operare in ambienti impredicibili ed essere composte e integrate dinamicamente anche con componenti eterogenee.
Anche se l'approccio object-oriented non è sufficiente da solo, esso appare come un candidato molto promettente per essere esteso e integrato con risposte innovative a queste grandi sfide: infatti, offre come vantaggio linguaggi di programmazione diffusi e ben stabilizzati, strumenti per assicurare la correttezza di tipo, basi per l'interoperabilità (JVM bytecode e .NET IL) e per lo sviluppo di >>>

Coordinatore Scientifico del Programma di Ricerca
Elena Zucca Università degli Studi di GENOVA
Obiettivo del Programma di Ricerca
Nel corso di un precedente progetto (http://bart.disi.unige.it/EOS) abbiamo ottenuto notevoli risultati nell'estensione dei sistemi a oggetti con ingredienti al di là di quelli tradizionali. Tuttavia, vi sono ulteriori importanti temi da studiare come naturale prosecuzione del lavoro intrapreso: in particolare, le difficili problematiche poste dall'utilizzo dei sistemi a oggetti in ambienti dinamici e impredicibili. Questo è, quindi, lo scopo del progetto che proponiamo.
Infatti, i sistemi software diventano ogni giorno più grandi, distribuiti ed eterogenei, e dovrebbero idealmente poter "girare"; indefinitamente. Inoltre, i sistemi non non vengono più creati da zero, ma sempre più sviluppati componendo e modificando sistemi preesistenti, spesso senza fermarne l'esecuzione, come risultato di un processo di evoluzione. Di conseguenza, i programmatori devono essere in grado di progettare e sviluppare applicazioni che possano adattarsi a cambi imprevisti di requisiti o tecnologie, operare in ambienti impredicibili ed essere composte e integrate dinamicamente anche con componenti eterogenee.
Anche se l'approccio object-oriented non è sufficiente da solo, esso appare come un candidato molto promettente per essere esteso e integrato con risposte innovative a queste grandi sfide: infatti, offre come vantaggio linguaggi di programmazione diffusi e ben stabilizzati, strumenti per assicurare la correttezza di tipo, basi per >>>

Durata
24 mesi
Base di partenza scientifica nazionale o internazionale
Presentiamo qui una panoramica dello stato dell'arte relativo al design e ai fondamenti di sistemi a oggetti estensibili per ambienti dinamici e impredicibili, strutturato in quattro aree corrispondenti ai quattro task del progetto. Rimandiamo ai modelli B per descrizioni più dettagliate, che includono anche il lavoro in corso che sarà il punto di partenza della ricerca.

Task 1 - Integration with the Agent Paradigm

La programmazione concorrente è un aspetto sempre più importante nello sviluppo standard di software, sia per computazione in rete che per sistemi standalone eseguiti su architetture multicore [SL05], e deve essere considerata una opportunità per meglio progettare applicazioni complesse immerse in ambienti dinamici ed impredicibili -- quali la rete, come principale esempio. Anche se l'introduzione di meccanismi e librerie specifiche su linguaggi esistenti può essere utile, come nel caso della libreria per la concorrenza in Java 5.0, un approccio più radicale e fondazionale consiste nell'estendere direttamente il linguaggio ad oggetti, introducendo astrazioni di alto livello. Questa ricerca, sviluppata negli anni nel contesto della programmazione ad oggenti concorrenti [AWY93,YK87] a portato ad approcci famosi come attori ed oggetti attivi, senza tuttavia che questi fosseroe adottati in metodologie assestate. Più recentemente, approcci come C-omega (Polyphonic C#) [BCF] ed il JR Concurrent Programming >>>