@inproceedings{1985:AnImplementationModelOfRendezvousCommunication, author={Luca Cardelli}, title={An Implementation Model of Rendezvous Communication}, year={1985}, pages={449--457} } @article{1985:Galileo, author={Antonio Albano, Luca Cardelli, and Renzo Orsini}, title={Galileo: A Strongly-Typed Interactive Conceptual Language}, journal={ACM Transactions on Database Systems}, volume={10}, year={1985}, pages={230-260}, number={2} } @inproceedings{1985:Squeak, author={Luca Cardelli and Robert Pike}, title={Squeak: {A} language for Communicating with Mice}, booktitle={Computer Graphics ({SIGGRAPH} '85 Proceedings)}, year={1985}, editor={B. A. Barsky}, pages={199--204}, volume={19} } @article{1985:UnderstandingTypesDataAbstractionAndPolymorphism, author={Luca Cardelli and Peter Wegner}, title={On Understanding Types, Data Abstraction, and Polymorphism}, journal={ACM Computing Surveys}, volume={17}, year={1985}, pages={471--522}, number={4} } @techreport{1986:APolymorphicLambdaCalculusWithTypeType, author={Luca Cardelli}, title={A Polymorphic Lambda Calculus with Type:Type}, year={1986}, number={10} } @article{1987:BasicPolymorphicTypechecking, author={Luca Cardelli}, title={Basic Polymorphic Typechecking}, journal={Science of Computer Programming}, volume={8}, year={1987}, pages={147-172}, number={2} } @article{1988:ASemanticsOfMultipleInheritance, author={Luca Cardelli}, title={A Semantics of Multiple Inheritance}, journal={Information and Computation}, volume= 76, year= 1988, pages={138--164}, number={2/3}, note={A revised version of the paper that appeared in the 1984 Semantics of Data Types Symposium, LNCS 173, pages 51--66. } } @inproceedings{1988:BuildingUserInterfacesByDirectManipulation, author={Luca Cardelli}, title={Building User Interfaces by Direct Manipulation}, booktitle={{ACM} Symposium on User Interface Software and Technology}, year={1988}, pages={152-166} } @incollection{1988:PersistenceAndTypeAbstraction, author={Luca Cardelli and David B. MacQueen}, title={Persistence and Type Abstraction}, booktitle={Data Types and Persistence}, publisher={Springer-Verlag}, year={1988}, editor={M. P. Atkinson and P. Buneman and R. Morrison} } @unpublished{1988:PhaseDistinctionsInTypeTheory, author={Luca Cardelli}, title={Phase Distinctions in Type Theory}, year={1988} } @inproceedings{1988:StructuralSubtypingAndTheNotionofPowerType, author={Luca Cardelli}, title={Structural Subtyping and the Notion of Power Type}, booktitle={Conference Record of the Fifteenth Annual {ACM} Symposium on Principles of Programming Languages}, year={1988}, publisher={ACM Press}, pages={70--79} } @inproceedings{1988:TypesForData-OrientedLanguages, author={Luca Cardelli}, title={Types for Data-Oriented Languages}, booktitle={Extending Database Technology}, year={1988}, publisher={Springer}, editor={M. Missikoff {J.W. Schmidt, S. Ceri}}, pages={1-15} } @techreport{1989:Modula3Report:SRC, author={Luca Cardelli and James Donahue and Lucille Glassman and Mick Jordan and Bill Kalsow and Greg Nelson}, title={Modula-3 report}, institution={Digital System Research Center}, year={1989}, number={SRC-RR-52} } @article{1989:Modula3ReportRevised:Sigplan, author={Luca Cardelli and James Donahue and Lucille Glassman and Mick Jordan and Bill Kalsow and Greg Nelson}, title={Modula-3 Report (revised)}, journal={ACM SIGPLAN Notices}, volume={27}, year={1992}, pages={15--42}, number={8} } @incollection{1989:OperationsOnRecordsSummary, author={Luca Cardelli and John C. Mitchell}, title={Operations on Records (Summary)}, booktitle={Mathematical Foundations of Programming Semantics, 5th International Conference, Tulane University}, publisher={Springer-Verlag}, year={1989}, editor={M. Main and A. Melton and M. Mislove and D. Schmidt}, pages={22--52}, volume={442}, series={Lecture Notes in Computer Science} } @inproceedings{1989:TheModula3TypeSystem, author={Luca Cardelli and Jim E. Donahue and Mick Jordan and Bill Kalsow and Greg Nelson}, title={The Modula-3 Type System}, booktitle={Conference Record of the Sixteenth Annual {ACM} Symposium on Principles of Programming Languages}, year={1989}, pages={202--212} } @techreport{1990:AbstractTypesAndTheDotNotation:SRC, author={Luca Cardelli and Xavier Leroy}, title={Abstract Types and the Dot Notation}, institution={Digital Equipment Corporation, Systems Research Center}, year={1990}, number={56} } @article{1990:ASemanticBasisForQuest:JFP, author={Luca Cardelli and Giuseppe Longo}, title={A Semantic Basis for Quest}, journal={Journal of Functional Programming}, volume={1}, year={1991}, pages={417--458}, number={4}, note={Summary in ACM Conference on Lisp and Functional Programming, pp.30--43, 1990. Also available as DEC-Compaq SRC Research Report 55, Feb. 1990}, publisher={Cambridge University Press} } @inproceedings{1990:ExplicitSubstitutions:POPL, author={Martin Abadi and Luca Cardelli and Pierre-Louis Curien and Jean-Jacques L{\`e}vy}, title={Explicit Substitutions}, booktitle={Conference Record of the Seventeenth Annual {ACM} Symposium on Principles of Programming Languages, San Francisco, California}, year={1990}, publisher={ACM}, pages={31--46} } @unpublished{1990:FOmegaSub, author={Luca Cardelli}, title={Notes about {F$^\omega_{<:}$}}, note={Unpublished manuscript}, year={1990} } @techreport{1990:SubtypingRecursiveTypes:SRC, author={Roberto M. Amadio and Luca Cardelli}, title={Subtyping Recursive Types}, abstract={We investigate the interactions of subtyping and recursive types in a simply typed \$$\backslash$lambda\$-calculus. The two fundamental questions here are whether two (recursive) types are in the subtype relation and whether a term has a type. To address the first question, we relate various definitions of type equivalence and subtyping that are induced by a model, an ordering on infinite trees, an algorithm, and a set of type rules. We show soundness and completeness between the rules, the algorithm, and the tree semantics. We also prove soundness and a restricted form of completeness for the model. To address the second question, we show that to every pair of types in the subtype relation we can associate a term whose denotation is the uniquely determined coercion map between the two types. Moreover, we derive an algorithm that, given a term with implicit coercions, can infer its least type whenever possible.}, institution={Digital Equipment Corporation, Systems Research Centre}, year={1990}, number={62}, pages={60 pages} } @techreport{1991:AnExtensionofSystemFWithSubtyping:SRC, author={Luca Cardelli and Simone Martini and John JC. Mitchell and Andre Scedrov}, title={An Extension of System F with Subtyping (SRC)}, institution={Digital Equipment Corporation, Systems Research Centre}, year={1991}, number={DEC-SRC-80} } @incollection{1991:AnExtensionofSystemFWithSubtyping:TACS, author={Luca Cardelli and John C. Mitchell and Simone Martini and Andre Scedrov}, title={An Extension of System F with Subtyping (TACS)}, booktitle={Proc.\ of 1st Int.\ Symp.\ on Theor.\ Aspects of Computer Software, {TACS}'91, Sendai, Japan, 24--27 Sept 1991}, publisher={Springer-Verlag}, year={1991}, editor={Takayasu Ito and Albert R. Meyer}, pages={750--770}, volume={526} } @inproceedings{1991:APureCalculusOfSubtypingAndApplicationsOutline, author={Luca Cardelli}, title={A Pure Calculus of Subtyping, and Applications (Outline)}, booktitle={Database Programming Languages: Bulk Types and Persistent Data. 3rd International Workshop, August 27-30, 1991, Nafplion, Greece, Proceedings}, year={1991}, publisher={Morgan Kaufmann}, editor={Paris C. Kanellakis and Joachim W. Schmidt}, pages={185--187}, isbn={1-55860-242-9} } @article{1991:ASemanticBasisForQuest, author={Luca Cardelli and Giuseppe Longo}, title={A Semantic Basis for Quest}, journal={Journal of Functional Programming}, volume={1}, year={1991}, pages={417--458}, number={4} } @article{1991:DynamicTypingInAStaticallyTypedLanguage, author={Martin Abadi and Luca Cardelli and Benjamin Pierce and Gordon Plotkin}, title={Dynamic Typing in a Statically Typed Language}, journal={ACM Transactions on Programming Languages and Systems}, volume={13}, year={1991}, pages={237--268}, number={2}, publisher={ACM Press} } @article{1991:ExplicitSubstitutions:JFP, author={M. Abadi and Luca Cardelli and P.-L. Curien and J.-J. L{\'e}vy}, title={Explicit Substitutions}, journal={Journal of Functional Programming}, volume={1}, year={1991}, pages={375--416}, number={4} } @article{1991:OperationsOnRecords:MSCS, author={Luca Cardelli and J. C. Mitchell}, title={Operations on records}, journal={Math. Structures in Computer Science}, volume={1}, year={1991}, pages={3--48}, number={1}, note={Summary in Math. Foundations of Prog. Lang. Semantics Springer LNCS 442, 1990, pp 22--52.} } @inproceedings{1991:SubtypingRecursiveTypes:POPL, author={R. M. Amadio and Luca Cardelli}, title={Subtyping recursive types}, booktitle={Proc. ACM Symp. Principles of Programming Languages}, year={1991}, pages={104--118} } @incollection{1991:TypefulProgramming, author={Luca Cardelli}, title={Typeful Programming}, booktitle={Formal Description of Programming Concepts}, publisher={Springer-Verlag}, year={1991}, editor={E. J. Neuhold and M. Paul}, pages={431--507} } @inproceedings{1992:DynamicTypingInPolymorphicLanguages, author={M. Abadi and Luca Cardelli and B. Pierce and G. Plotkin and D. R{\`e}my}, title={Dynamic Typing in Polymorphic Languages}, booktitle={Proceedings of the {ACM} {SIGPLAN} Workshop on {ML} and its Applications}, year={1992}, pages={92--103} } @article{1992:Modula3LanguageDefinition, author={Luca Cardelli and James E. Donahue and Lucille Glassman and Mick J. Jordan and Bill Kalsow and Greg Nelson}, title={Modula-3 language definition}, journal={SIGPLAN Notices}, volume={27}, year={1992}, pages={15--42}, number={8} } @unpublished{1992:TypedFoundationsOfObjectOrientedProgramming, author={Luca Cardelli}, title={Typed Foundations of Object-oriented Programming}, note={POPL '92 Tutorial}, year={1992} } @techreport{1993:AnImplementationOfFSub:SRC, author={Luca Cardelli}, title={An implementation of {F}<:}, abstract={F<: is a highly expressive typed -calculus with subtyping. This paper describes an implementation of F<: (extended with recursive types), and documents the algorithms used. Using this implementation, one can test F<: programs and examine typing deriva- tions.}, institution={Digital Equipment Corporation Systems Research Center}, year={1993}, number={97} } @incollection{1993:FormalParametricPolymorphism, author={Martin Abadi and Luca Cardelli and Pierre-Louis Curien}, title={Formal Parametric Polymorphism}, booktitle={Conf.\ Record 20th Ann.\ {ACM} {SIGPLAN}-{SIGACT} Symp.\ on Principles of Programming Languages, {POPL}'93, Charleston, {SC}, {USA}, 10--13 Jan 1993}, publisher={ACM Press}, year={1993}, pages={157--170} } @techreport{1993:FormalParametricPolymorphism:SRC, author={Martin Abadi and Luca Cardelli and Pierre-Louis Curien}, title={Formal Parametric Polymorphism}, institution={DEC SRC, Palo Alto, CA}, year={1993}, type={Research Report}, number={109} } @article{1993:SubtypingRecursiveTypes:TOPLAS, author={Roberto M. Amadio and Luca Cardelli}, title={Subtyping Recursive Types}, journal={ACM Transactions on Programming Languages and Systems}, volume={15}, year={1993}, pages={575--631}, number={4}, publisher={ACM Press} } @unpublished{1993:TypesForTheScottNumerals, author={Martin Abadi and Luca Cardelli and Gordon D. Plotkin}, title={Types for the Scott Numerals}, year={1993} } @article{1994:AnExtensionofSystemFWithSubtyping:IandC, author={Luca Cardelli and John C. Mitchell and Simone Martini and Andre Scedrov}, title={An Extension of System F with Subtyping}, journal={Information and Computation}, volume={109}, year={1994}, pages={4--56}, number={1--2} } @inproceedings{1994:ASemanticsOfObjectTypes, author={Martin Abadi and Luca Cardelli}, title={A Semantics of Object Types}, booktitle={Ninth Annual {IEEE} Symposium on Logic in Comptuer Science, Paris, France}, year={1994}, pages={332--341} } @inproceedings{1994:ATheoryOfPrimitiveObjectsSecondOrderSystems:ESOP, author={Martin Abadi and Luca Cardelli}, title={A Theory of Primitive Objects - Scond-Order Systems}, booktitle={Programming Languages and Systems - {ESOP}'94, 5th European Symposium on Programming, Edinburgh, {U}.{K}, April 11-13, 1994, Proceedings}, year={1994}, publisher={Springer}, editor={Donald Sannella}, pages={1--25}, volume={788}, isbn={3-540-57880-3}, series={Lecture Notes in Computer Science} } @incollection{1994:ATheoryOfPrimitiveObjectsUntyped, author={Martin Abadi and Luca Cardelli}, title={A Theory of Primitive Objects --- Untyped and First-Order Systems}, booktitle={Theoretical Aspects of Computer Software}, publisher={Springer-Verlag}, year={1994}, editor={Masami Hagiya and John C. Mitchell}, pages={296--320}, volume={789} } @techreport{1994:DynamicTypingInPolymorphicLanguages:SRC, author={Martin Abadi and Luca Cardelli and Benjamin Pierce and Didier Remy}, title={Dynamic Typing in Polymorphic Languages}, institution={Digital Equipment Corporation, Systems Research Centre}, year={94}, number={DEC-SRC-120} } @inproceedings{1994:ExtensibleGrammarsForLanguageSpecialization, author={Luca Cardelli and F. Matthes and M. Abadi}, title={Extensible Grammars for Language Specialization}, abstract={A basic dilemma in the design of a database programming language is the choice between a user-friendly language with a rich set of tailored notations for schema definitions, query expressions, etc., and a small, conceptually simple core language. We address this dilemma by proposing extensible grammars, a syntax-definition formalism for incremental language extensions and restrictions based on an initial core language.\\ The translation of programs written in tailored object languages into programs of a core language is defined via syntax-directed patterns. In contrast to traditional macro-expansion and program-rewriting tools, our extensible grammars respect scoping rules. Therefore, it is possible to introduce new binding constructs like quantifiers, iterators, and type declarations, while avoiding problems with variable captures and name clashes.\\ We develop extensible grammars and illustrate their use by extending the lambda calculus with let-bindings, conditionals, and SQL-style query expressions. We then give a formal description of the underlying parsing, transformation, and substitution rules. We also highlight some implementation details of a type-safe, extensible parser package based on the concept of extensible grammars developed for the Tycoon programming environment.}, booktitle={Database Programming Languages (DBPL-4)}, year={1994}, publisher={Springer-Verlag}, editor={C. Beeri and A. Ohori and D. E. Shasha}, series={Workshops in Computing} } @incollection{1994:ExtensibleRecordsInAPureCalculusOfSubtyping, author={Luca Cardelli}, title={Extensible Records in a Pure Calculus of Subtyping}, booktitle={Theoretical Aspects of Object-Oriented Programming: Types, Semantics, and Language Design}, publisher={The MIT Press}, year={1994}, editor={C. A. Gunter and J. C. Mitchell}, pages={373--425}, series={Foundations of Computing Series} } @incollection{1994:ExtensibleRecordsInAPureCalculusOfSubtyping, author={Luca Cardelli}, title={Extensible Records in a Pure Calculus of Subtyping}, booktitle={Theoretical Aspects of Object-Oriented Programming: Types, Semantics, and Language Design}, publisher={The MIT Press}, year={1994}, editor={C. A. Gunter and J. C. Mitchell}, pages={373--425} } @techreport{1994:ExtensibleSyntaxwithLexicalScoping:SRC, author={Luca Cardelli and Florian Matthes and Martin Abadi}, title={Extensible Syntax with Lexical Scoping}, abstract={A frequent dilemma in programming language design is the choice between a language with a rich set of notations and a small, simple core language. We address this dilemma by proposing extensible grammars, a syntax-definition formalism for incremental language extensions and restrictions. The translation of programs written in rich object languages into a small core language is defined via syntax-directed patterns. In contrast to macro-expansion and program-rewriting tools, our extensible grammars respect scoping rules. Therefore, we can introduce binding constructs while avoiding problems with unwanted name clashes. We develop extensible grammars and illustrate their use by extending the lambda calculus with let-bindings, conditionals, and constructs from database programming languages, such as SQL query expressions. We then give a formal description of the underlying rules for parsing, transformation, and substitution. Finally, we sketch how these rules are exploited in an implementation of a generic, extensible parser package.}, institution={DEC SRC}, year={1994}, number={121}, pages={41} } @techreport{1994:ObliqALanguageWithDistributedScope:SRC, author={Luca Cardelli}, title={{Obliq} {A} Language with Distributed Scope}, abstract={Obliq is a lexically-scoped untyped language that supports distributed object-oriented computation. Obliq objects have state and are local to a site. Obliq computations can roam over the network, while maintaining network connections. Distributed lexical scoping is the key mechanism for managing roaming computations.}, institution={Digital Equipment Corporation Systems Research Center}, year={1994}, number={122} } @incollection{1994:OperationsOnRecords:TAOOP, author={Luca Cardelli and John C. Mitchell}, title={Operations on Records}, booktitle={Theoretical Aspects of Object-Oriented Programming: Types, Semantics, and Language Design}, publisher={The MIT Press}, year={1994}, editor={C. A. Gunter and J. C. Mitchell}, pages={295--350}, series={Foundations of Computing Series} } @incollection{1994:SubtypingAndParametricity, author={Gordon Plotkin and Martin Abadi and Luca Cardelli}, title={Subtyping and Parametricity}, booktitle={Proc.\ of 9th Ann.\ {IEEE} Symp.\ on Logic in Computer Science, {LICS}'94, Paris, France, 4--7 July 1994}, publisher={IEEE Computer Society Press}, year={1994}, pages={310--319} } @inproceedings{1995:ALanguageWithDistributedScope, author={Luca Cardelli}, title={A Language with Distributed Scope}, abstract={Obliq is a lexically-scoped untyped language that supports distributed object-oriented computation. Obliq objects have state and are local to a site. Obliq computations can roam over the network, while maintaining network connections. Distributed lexical scoping is the key mechanism for managing roaming computations.}, booktitle={Conference Record of POPL '95: 22nd Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, San Francisco, Calif.}, year={1995}, pages={286--297} } @article{1995:AnImperativeObjectCalculus:TAPOS, author={Martin Abadi and Luca Cardelli}, title={An Imperative Object Calculus (Invited Paper)}, journal={Theory and Practice of Object Sytems}, volume={1}, year={1995}, pages={151--166}, number={3} } @inproceedings{1995:AnImperativeObjectCalculusBasicTypingAndSoundness, author={M. Abadi and Luca Cardelli}, title={An imperative object calculus: Basic typing and soundness}, booktitle={{SIPL} '95 - Proc. Second {ACM} {SIGPLAN} Workshop on State in Programming Languages, Technical Report UIUCDCS-R-95-1900}, year={1995}, publisher={Department of Computer Science, University of Illinois at Urbana-Champaign} } @article{1995:ATheoryOfPrimitiveObjectsSecondOrderSystems, author={Martin Abadi and Luca Cardelli}, title={A theory of primitive objects. Second-order systems}, journal={Science of Computer Programming}, volume={25}, year={1995}, pages={81--116}, number={2--3}, note={ESOP '94 (Edinburgh, 1994).}, issn={0167-6423} } @inproceedings{1995:DistributedApplicationsInAHypermediaSetting, author={K. Bharat and Luca Cardelli}, title={Distributed Applications in a Hypermedia Setting}, booktitle={Proc. First International Workshop on Hypermidia Design IWHD'95}, year={1995}, pages={185-192} } @article{1995:DynamicTypingInPolymorphicLanguages, author={M. Abadi and Luca Cardelli and B. Pierce and D. Remy}, title={Dynamic typing in polymorphic languages}, journal={Journal of Functional Programming}, volume={5}, year={1995}, pages={111--130}, number={1} } @incollection{1995:MigratoryApplications, author={K.~A. Bharat and Luca Cardelli}, title={Migratory Applications}, booktitle={Mobile Object Systems: Towards the Programmable Internet}, publisher={Springer-Verlag: Heidelberg, Germany}, year={1995}, editor={{Jan Vitek} and {Christian Tschudin}}, pages={131--148}, volume={1222} } @article{1995:ObliqALanguageWithDistributedScope, author={Luca Cardelli}, title={A Language with Distributed Scope}, journal={Computing Systems}, volume={8}, year={1995}, pages={27--59}, number={1}, note={Short version in Principles of Programming Languages January 1995}, issn={0895-6340} } @article{1995:OnBinaryMethods, author={Kim B. Bruce and Luca Cardelli and Giuseppe Castagna and The Hopkins Objects Group and Gary T. Leavens and Benjamin Pierce}, title={On Binary Methods}, journal={Theory and Practice of Object Systems}, volume={1}, year={1995}, pages={221--242}, number={3}, publisher={John, Wiley and Sons, Inc.} } @article{1995:OnSubtypingAndMatching:LNCS, author={Martin Abadi and Luca Cardelli}, title={On Subtyping and Matching}, journal={European Conference on Object-Oriented Programming (ECOOP), Lecture Notes in Computer Science}, volume={952}, year={1995}, pages={145--167} } @inproceedings{1996:AnInterpretationOfObjectsAndObjectTypes, author={Martin Abadi and Luca Cardelli and Ramesh Viswanathan}, title={An Interpretation of Objects and Object Types}, booktitle={{ACM} {S}ymposium on {P}rinciples of {P}rogramming {L}anguages ({POPL}), St.~Petersburg Beach, Florida}, year={1996}, publisher={ACM Press}, pages={396--409}, isbn={0-89791-769-3} } @book{1996:ATheoryOfObjects, author={Martin Abadi and Luca Cardelli}, title={A Theory of Objects}, publisher={Springer-Verlag}, year={1996}, isbn_issn={0-387-94775-2} } @article{1996:ATheoryOfPrimitiveObjects:UntypedAndFirstOrderSystem:IandC, author={M. Abadi and Luca Cardelli}, title={A Theory of Primitive Objects: Untyped and First Order System}, journal={Information and Computation}, volume={125}, year={1996}, pages={78--102}, number={2} } @article{1996:BadEngineeringPropertiesOfObjectOrientedLanguages, author={Luca Cardelli}, title={Bad Engineering Properties of Object-Oriented Languages}, journal={ACM Computing Surveys}, volume={28}, year={1996}, pages={150}, number={4es} } @article{1996:GlobalComputation, author={Luca Cardelli}, title={Global computation}, journal={ACM Computing Surveys}, volume={28}, year={1996}, pages={163--163}, number={4es} } @article{1996:OnSubtypingAndMatching:TOPLAS, author={Martin Abadi and Luca Cardelli}, title={On Subtyping and Matching}, abstract={A relation between recursive object types, called \emph{matching}, has been proposed as a generalization of subtyping. Unlike subtyping, matching does not support subsumption, but it does support inheritance of binary methods. We argue that matching is a good idea, but that it should not be regarded as a form of F-bounded subtyping (as was originally intended). We show that a new interpretation of matching as higher-order subtyping has better properties. Matching turns out to be a third-order construction, possibly the only one to have been proposed for general use in programming.}, journal={ACM Transactions on Programming Languages and Systems}, volume={18}, year={1996}, pages={401--423}, number={4}, publisher={ACM Press} } @inproceedings{1997:ComparingObjectEncodings, author={Kim B. Bruce and Luca Cardelli and Benjamin C. Pierce}, title={Comparing Object Encodings}, booktitle={Theoretical Aspects of Computer Software}, year={1997}, pages={415-438} } @inproceedings{1997:MigratoryApplications:UIST, author={Bharat and Krishna A. and {Cardelli, Luca}}, title={Migratory Applications}, abstract={We introduce a new genre of user interface applications that can migrate from one machine to another, taking their user interface and application contexts with them, and continue from where they left off. Such applications are not tied to one user or one machine, and can roam freely over the network, rendering service to a community of users, gathering human input and interacting with people. We envisage that this will support many new agent-based collaboration metaphors. The ability to migrate executing programs has applicability to mobile computing as well. Users can have their applications travel with them, as they move from one computing environment to another. We present an elegant programming model for creating migratory applications and describe an implementation. The biggest strength of our implementation is that the details of migration are completely hidden from the application programmer; arbitrary user interface applications can be migrated by a single migration command. We address system issues such as robustness, persistence and memory usage, and also human factors relating to application design, the interaction metaphor and safety.}, booktitle={Proceedings of the ACM Symposium on User Interface Software and Technology}, year={1995}, pages={133--142}, series={Distributed User Interfaces} } @techreport{1997:MobileAmbientSynchronization, author={Luca Cardelli}, title={Mobile Ambient Synchronization}, year={1997}, number={SRC Tech Note 1997-013} } @incollection{1997:MobileComputation, author={Luca Cardelli}, title={Mobile Computation}, booktitle={Mobile Object Systems: Towards the Programmable Internet}, publisher={Springer-Verlag: Heidelberg, Germany}, year={1997}, editor={{Jan Vitek} and {Christian Tschudin}}, pages={3--6}, volume={1222} } @inproceedings{1997:ProgramFragmentsLinkingAndModularization, author={Luca Cardelli}, title={Program Fragments, Linking, and Modularization}, booktitle={Conference Record of {POPL}\regtm{}~'97: The 24{TH} {ACM} {SIGPLAN}-{SIGACT} Symposium on Principles of Programming Languages\regtm{}}, year={1997}, publisher={ACM Press}, pages={266--277}, isbn={0-89791-853-3} } @incollection{1997:TypeSystems, author={Luca Cardelli}, title={Type Systems}, booktitle={The Computer Science and Engineering Handbook}, publisher={CRC Press}, year={1997}, editor={Allen B. Tucker}, chapter={103}, pages={2208--2236} } @inproceedings{1998:MobileAmbients, author={Luca Cardelli and Andrew D. Gordon}, title={Mobile Ambients}, booktitle={Foundations of Software Science and Computation Structures: First International Conference, {FOSSACS '98}}, year={1998}, publisher={Springer-Verlag, Berlin Germany} } @inproceedings{1998:WideAreaLanguages, author={Luca Cardelli}, title={Wide-Area Languages}, booktitle={Mobile Agents}, year={1998}, publisher={Springer}, editor={Kurt Rothermel and Fritz Hohl}, pages={208}, volume={1477}, isbn={3-540-64959-X}, series={Lecture Notes in Computer Science} } @inproceedings{1999:AbstractionsForMobileComputation, author={Luca Cardelli}, title={Abstractions for Mobile Computation}, booktitle={Secure Internet Programming}, year={1999}, editor={Jan Vitek and Christian D. Jensen}, pages={51-94} } @article{1999:ComparingObjectEncodings, author={Kim B. Bruce and Luca Cardelli and Benjamin C. Pierce}, title={Comparing Object Encodings}, journal={Inf. Comput}, volume={155}, year={1999}, pages={108--133}, number={1-2} } @inproceedings{1999:EquationalPropertiesOfMobileAmbients, author={Andrew D. Gordon and Luca Cardelli}, title={Equational Properties of Mobile Ambients}, booktitle={Foundations of Software Science and Computation Structure}, year={1999}, pages={212-226} } @inproceedings{1999:FoundationsForWideAreaSystemsTutorial, author={Luca Cardelli}, title={Foundations for Wide-Area Systems (Tutorial)}, booktitle={Formal Methods for Open Object-Based Distributed Systems, {IFIF} {TC6}/{WG6}.1 Third International Conference on Formal Methods for Open Object-Based Distributed Systems ({FMOODS}), February 15-18, 1999, Florence, Italy}, year={1999}, publisher={Kluwer}, editor={Paolo Ciancarini and Alessandro Fantechi and Roberto Gorrieri}, volume={139}, isbn={0-7923-8429-6}, series={IFIP Conference Proceedings} } @inproceedings{1999:MobilityTypesForMobileAmbients, author={Luca Cardelli and Andrew D. Gordon and Giorgio Ghelli}, title={Mobility Types for Mobile Ambients}, booktitle={Automata, Languages and Programming, 26th International Colloquium, {ICALP}'99, Prague, Czech Republic, July 11-15, 1999, Proceedings}, year={1999}, publisher={Springer}, editor={Jir{\'i} Wiedermann and Peter van Emde Boas and Mogens Nielsen}, pages={230--239}, volume={1644}, isbn={3-540-66224-3}, series={Lecture Notes in Computer Science} } @article{1999:ServiceCombinatorsForWebComputing, author={Luca Cardelli and Rowan Davies}, title={Service Combinators for Web Computing}, abstract={The World Wide Web is rich in content and services, but access to these resources must be obtained mostly through manual browsers. We would like to be able to write programs that reproduce human browsing behavior, including reactions to slow transmission-rates and failures on many simultaneous links. We thus introduce a concurrent model that directly incorporates the notions of failure and rate of communication, and then describe programming constructs based on this model.}, journal={IEEE Transactions on Software Engineering}, volume={25}, year={1999}, pages={309-316}, number={3} } @inproceedings{1999:TypesForMobileAmbients, author={Luca Cardelli and Andrew D. Gordon}, title={Types for Mobile Ambients}, booktitle={Symposium on Principles of Programming Languages}, year={1999}, pages={79-92} } @inproceedings{2000:AmbientGroupsAndMobilityTypes, author={Luca Cardelli and Giorgio Ghelli and Andrew D. Gordon}, title={Ambient Groups and Mobility Types}, booktitle={International Conference IFIP TCS 2000, Sendai, Japan, August 17-19, 2000.}, year={2000}, publisher={Springer}, editor={Jan van Leeuwen and Osamu Watanabe and Masami Hagiya and Peter D. Mosses and Takayasu Ito}, pages={333-347} } @article{2000:MobileAmbients:TCS, author={Luca Cardelli and Andrew D. Gordon}, title={Mobile Ambients}, journal={Theoretical Computer Science (TCS)}, volume={240}, year={2000}, pages={177-213}, number={1} } @inproceedings{2000:MobilityAndSecurity, author={Luca Cardelli}, title={Mobility and Security}, booktitle={Foundations of Secure Computation}, year={2000}, publisher={IOS Press}, editor={Friedrich L. Bauer and Ralf Steinbr{\"u}ggen}, pages={3--37}, series={NATO Science Series} } @article{2000:SemistructuredComputation, author={Luca Cardelli}, title={Semistructured Computation}, journal={Lecture Notes in Computer Science}, volume={1949}, year={2000}, pages={1--??}, issn={0302-9743} } @inproceedings{2000:WideAreaComputation, author={Luca Cardelli}, title={Wide Area Computation}, booktitle={{V} Jornadas Ingenier{\'i}a de Software y Bases de Datos ({JISBD} 2000), 8, 9 y 10 de noviembre, Valladolid}, year={2000}, publisher={Universidad de Valladolid, Departamento de Inform{\'a}tica}, editor={Carlos Delgado and Esperanza Marcos and Jos{\'e} Manuel Marqu{\'e}s Corral}, pages={5}, isbn={84-8448-065-8} } @inproceedings{2001:AQueryLanguageBasedOnTheAmbientLogic, author={Luca Cardelli and Giorgio Ghelli}, title={A Query Language Based on the Ambient Logic}, booktitle={SEBD}, year={2001}, pages={95--104} } @inproceedings{2001:ASpatialLogicForConcurrency, author={Lu{\'i}s Caires and Luca Cardelli}, title={A Spatial Logic for Concurrency}, booktitle={Theoretical Aspects of Computer Software, 4th International Symposium, {TACS} 2001, Sendai, Japan, October 29-31, 2001, Proceedings}, year={2001}, publisher={Springer}, editor={Naoki Kobayashi and Benjamin C. Pierce}, pages={1--37}, volume={2215}, isbn={3-540-42736-8}, series={Lecture Notes in Computer Science} } @article{2001:DescribingSemistructuredData, author={Luca Cardelli}, title={Describing Semistructured Data}, journal={SIGMOD Record}, volume={30}, year={2001}, pages={80--85}, number={4} } @inproceedings{2001:LogicalPropertiesOfNameRestriction, author={Luca Cardelli and Andrew D. Gordon}, title={Logical Properties of Name Restriction}, booktitle={TLCA}, year={2001}, pages={46--60} } @inproceedings{2002:ASpatialLogicForQueryingGraphs, author={Luca Cardelli and Philippa Gardner and Giorgio Ghelli}, title={A Spatial Logic for Querying Graphs}, booktitle={Automata, Languages and Programming, 29th International Colloquium, {ICALP} 2002, Malaga, Spain, July 8-13, 2002, Proceedings}, year={2002}, publisher={Springer}, editor={Peter Widmayer and Francisco Triguero Ruiz and Rafael Morales Bueno and Matthew Hennessy and Stephan Eidenbenz and Ricardo Conejo}, pages={597--610}, volume={2380}, isbn={3-540-43864-5}, series={Lecture Notes in Computer Science} } @article{2002:TypesForTheAmbientCalculus, author={Luca Cardelli and Giorgio Ghelli and Andrew D. Gordon}, title={Types for the Ambient Calculus}, journal={Inf. Comput}, volume={177}, year={2002}, pages={160--194}, number={2} } @article{2003:ASpatialLogicForConcurrencyPartI, author={Lu{\'i}s Caires and Luca Cardelli}, title={A spatial logic for concurrency (part {I})}, journal={Information & Computation}, volume={186}, year={2003}, pages={194--235}, number={2} } @inproceedings{2003:DecidingValidityInASpatialLogicForTrees, author={Cristiano Calcagno and Luca Cardelli and Andrew D. Gordon}, title={Deciding validity in a spatial logic for trees}, booktitle={Proceedings of {TLDI}'03: 2003 {ACM} {SIGPLAN} International Workshop on Types in Languages Design and Implementation, New Orleans, Louisiana, {USA}, January 18, 2003}, year={2003}, publisher={ACM}, editor={Zhong Shao and Peter Lee}, pages={62--73}, isbn={1-58113-649-8} } @article{2003:EquationalPropertiesOfMobileAmbients, author={Andrew D. Gordon and Luca Cardelli}, title={Equational Properties Of Mobile Ambients}, journal={Mathematical Structures in Computer Science}, volume={13}, year={2003}, pages={371--408}, number={3} } @inproceedings{2003:ManipulatingTreesWHiddenLabels, author={Luca Cardelli and Philippa Gardner and Giorgio Ghelli}, title={Manipulating Trees with Hidden Labels}, booktitle={Foundations of Software Science and Computational Structures, 6th International Conference, {FOSSACS} 2003 Held as Part of the Joint European Conference on Theory and Practice of Software, {ETAPS} 2003, Warsaw, Poland, April 7-11, 2003, Proceedings}, year={2003}, publisher={Springer}, editor={Andrew D. Gordon}, pages={216--232}, volume={2620}, isbn={3-540-00897-7}, series={Lecture Notes in Computer Science} } @article{2004:ASpatialLogicForConcurrencyPartII, author={Lu{\'i}s Caires and Luca Cardelli}, title={A spatial logic for concurrency - {II}}, journal={Theoretical Computer Science}, volume={322}, year={2004}, pages={517--565}, number={3} } @article{2004:BioAmbients:AnAbstractionForBiologicalCompartments, author={Aviv Regev, Ekaterina M. Panina, William Silverman, Luca Cardelli, Ehud Shapiro}, title={BioAmbients: An Abstraction for Biological Compartments}, journal={Theoretical Computer Science}, volume={325}, year={2004}, pages={141-167}, number={1}, publisher={Elsevier} } @inbook{2004:BiowareLanguages, author={Luca Cardelli}, title={Bioware Languages}, year={2004}, publisher={Springer}, pages={59--65}, isbn={0-387-20170-X}, booktitle={Computer Systems: Theory, Technology, and Applications - A Tribute to Roger Needham}, editor={Andrew Herbert, Karen Sp{\"a}rck Jones } } @inproceedings{2004:GreedyRegularExpressionMatching, author={Alain Frisch and Luca Cardelli}, title={Greedy Regular Expression Matching}, booktitle={Automata, Languages and Programming: 31st International Colloquium, {ICALP} 2004, Turku, Finland, July 12-16, 2004. Proceedings}, year={2004}, publisher={Springer}, editor={Josep D{\'i}az and Juhani Karhum{\"a}ki and Arto Lepist{\"o} and Donald Sannella}, pages={618--629}, volume={3142}, isbn={3-540-22849-7}, series={Lecture Notes in Computer Science} } @article{2004:ModernConcurrencyAbstractionsForCSharp, author={Nick Benton and Luca Cardelli and C{\'e}dric Fournet}, title={Modern concurrency abstractions for {C}\#}, journal={ACM Trans. Program. Lang. Syst}, volume={26}, year={2004}, pages={769--804}, number={5} } @article{2004:TQLaQueryLanguage, author={Luca Cardelli and Giorgio Ghelli}, title={{TQL}: a query language for semistructured data based on the ambient logic}, journal={Mathematical Structures in Computer Science}, volume={14}, year={2004}, pages={285--327}, number={3} } @incollection{2004:TypeSystems, author={Luca Cardelli}, title={Type Systems}, booktitle={The Computer Science and Engineering Handbook}, publisher={CRC Press}, year={2004}, editor={Allen B. Tucker}, chapter={97} } @article{2005:AbstractMachinesOfSystemsBiology, author={Luca Cardelli}, title={Abstract Machines of Systems Biology}, journal={Transactions on Computational Systems Biology}, volume={III}, year={2005}, pages={145--168}, number={3737}, publisher={Springer}, editor={Corrado Priami and Emanuela Merelli and Pedro Pablo Gonzalez and Andrea Omicini}, isbn={3-540-30883-0}, series={Lecture Notes in Computer Science} } @article{2005:ACompositionalApproachToTheStochasticDynamicsOfGeneNetworks, author={Ralf Blossey and Luca Cardelli and Andrew Phillips}, title={A Compositional Approach to the Stochastic Dynamics of Gene Networks}, journal={Transactions on Computational Systems Biology}, volume={IV}, year={2006}, pages={99--122}, number={3939}, publisher={Springer}, editor={Corrado Priami and Luca Cardelli and Stephen Emmott}, isbn={3-540-33245-6}, series={Lecture Notes in Computer Science} } @inproceedings{2005:BiologicalSystemsAsReactiveSystems, author={Luca Cardelli}, title={Biological Systems as Reactive Systems}, booktitle={Theoretical Computer Science, 9th Italian Conference, {ICTCS} 2005, Siena, Italy, October 12-14, 2005, Proceedings}, year={2005}, publisher={Springer}, editor={Mario Coppo and Elena Lodi and G. Michele Pinna}, pages={21--21}, volume={3701}, isbn={3-540-29106-7}, series={Lecture Notes in Computer Science} } @inproceedings{2005:BraneCalculi:CMSB, author={Luca Cardelli}, title={Brane Calculi}, booktitle={Proc. Computational Methods in Systems Biology}, year={2005}, publisher={Springer}, editor={Vincent Danos and Vincent Sch{\"a}chter}, pages={257--280}, volume={3082}, isbn={3-540-25375-0}, series={Lecture Notes in Computer Science} } @article{2005:SecrecyAndGroupCreation, author={Luca Cardelli and Giorgio Ghelli and Andrew D. Gordon}, title={Secrecy and group creation}, journal={Information & Computation}, volume={196}, year={2005}, pages={127--155}, number={2} } @inproceedings{2005:TransitionsInProgrammingModels, author={Luca Cardelli}, title={Transitions in programming models}, booktitle={27th International Conference on Software Engineering ({ICSE} 2005), 15-21 May 2005, St. Louis, Missouri, {USA}}, year={2005}, publisher={ACM}, editor={Gruia-Catalin Roman and William G. Griswold and Bashar Nuseibeh}, pages={2} } @article{2006:AmbientLogic, author={Luca Cardelli and Andrew D. Gordon}, title={Ambient Logic}, journal={Mathematical Structures in Computer Science}, year={2006}, note={To appear.} } @article{2006:AnUniversalityResultForAMembraneCalculus, author={Luca Cardelli and Gheorghe Paun}, title={A universality result for a (mem)brane calculus based on mate/drip operations}, journal={International Journal of Foundations of Computer Science}, volume={17}, year={2006}, pages={49--68}, number={1}, publisher={World Scientific Publishing Company} } @inproceedings{2005:AGraphicalRepresentationForTheStochasticPiCalculus, author={Andrew Phillips and Luca Cardelli}, title={A Graphical Representation for the Stochastic Pi-Calculus}, booktitle={Proceedings BioConcur 2005}, year={2005} } @article{2006:AGraphicalRepresentationForBiologicalProcesses, author={Andrew Phillips, Luca Cardelli, and Giuseppe Castagna}, title={A Graphical Representation for Biological Processes in the Stochastic Pi-Calculus}, journal={Transactions on Computational Systems Biology}, year={2006}, note={To appear} } @inproceedings{2005:WhereMembranesMeetComplexes, author={Luca Cardelli and Sylvain Pradalier}, title={Where Membranes Meet Complexes}, booktitle={Proceedings BioConcur 2005}, year={2005} } @article{2005:DecidingValidity, author={Cristiano Calcagno, Luca Cardelli, Andrew D. Gordon}, title={Deciding Validity in a Spatial Logic for Trees}, journal={Journal of Functional Programming}, volume={15}, year={2005}, pages={543--572}, publisher={Cambridge University Press} }