{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,9]],"date-time":"2026-01-09T03:31:04Z","timestamp":1767929464025,"version":"3.49.0"},"reference-count":41,"publisher":"Cambridge University Press (CUP)","issue":"5","license":[{"start":{"date-parts":[[2018,4,19]],"date-time":"2018-04-19T00:00:00Z","timestamp":1524096000000},"content-version":"unspecified","delay-in-days":7870,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Math. Struct. Comp. Sci."],"published-print":{"date-parts":[[1996,10]]},"abstract":"<jats:p>We study a natural generalization of System<jats:italic>F<jats:sup>\u03c9<\/jats:sup><\/jats:italic>with intersection types, establishing basic structural properties and constructing a semantic model based on partial equivalence relations to prove the soundness of typing. As an application of this calculus, we define a simple typed model of object-oriented programming with multiple inheritance.<\/jats:p>","DOI":"10.1017\/s0960129500070043","type":"journal-article","created":{"date-parts":[[2019,5,12]],"date-time":"2019-05-12T20:14:05Z","timestamp":1557692045000},"page":"469-501","source":"Crossref","is-referenced-by-count":30,"title":["Higher-order intersection types and multiple inheritance"],"prefix":"10.1017","volume":"6","author":[{"given":"Adriana B.","family":"Compagnoni","sequence":"first","affiliation":[]},{"given":"Benjamin C.","family":"Pierce","sequence":"additional","affiliation":[]}],"member":"56","published-online":{"date-parts":[[2018,4,19]]},"reference":[{"key":"S0960129500070043_ref040","doi-asserted-by":"publisher","DOI":"10.1137\/0205037"},{"key":"S0960129500070043_ref039","volume-title":"Preliminary design of the programming language Forsythe","author":"Reynolds","year":"1988"},{"key":"S0960129500070043_ref036","unstructured":"Pierce B. C. (1991) Programming with Intersection Types and Bounded Polymorphism, Ph.D. thesis, Carnegie Mellon University. (Available as School of Computer Science technical report CMUCS- 91-205.)"},{"key":"S0960129500070043_ref035","unstructured":"Mitchell J. C. , Honsell F. and Fisher K. (1993) A lambda calculus of objects and method specialization. In: 1993 IEEE Symposium on Logic in Computer Science."},{"key":"S0960129500070043_ref034","first-page":"195","volume-title":"Logical Foundations of Functional Programming","author":"Mitchell","year":"1990"},{"key":"S0960129500070043_ref033","first-page":"109","volume-title":"Proceedings of the 17 th ACM Symposium on Principles of Programming Languages","author":"Mitchell","year":"1990"},{"key":"S0960129500070043_ref032","volume-title":"Logical Foundations of Functional Programming","author":"Huet","year":"1990"},{"key":"S0960129500070043_ref037","unstructured":"Pierce B. C. (1993) Mutable objects. (Draft report; available electronically.)"},{"key":"S0960129500070043_ref031","first-page":"251","article-title":"A unifying type-theoretic framework for objects","author":"Hofmann","year":"1995","journal-title":"Journal of Functional Programming."},{"key":"S0960129500070043_ref030","volume-title":"Introduction to Combinators and \u03bb-Calculus","author":"Hindley","year":"1986"},{"key":"S0960129500070043_ref026","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-57887-0_128"},{"key":"S0960129500070043_ref021","doi-asserted-by":"crossref","unstructured":"Compagnoni A. B. (1995) Higher-Order Subtyping with Intersection Types, Ph.D. thesis, Catholic University, Nigmegen.","DOI":"10.1007\/BFb0022246"},{"key":"S0960129500070043_ref020","unstructured":"Compagnoni A. B. (1994) Decidability of higher-order subtyping with intersection types. In: Computer Science Logic, September 1994, Kazimierz, Poland. Springer-Verlag Lecture Notes in Computer Science 933. (Also available as \u2018Subtyping in F^ \u03c9 is decidable', University of Edinburgh, LFCS technical report ECS-LFCS-94-281.)"},{"key":"S0960129500070043_ref019","doi-asserted-by":"publisher","DOI":"10.1006\/inco.1995.1033"},{"key":"S0960129500070043_ref017","first-page":"19","volume-title":"Logic and Computer Science","author":"Cardone","year":"1990"},{"key":"S0960129500070043_ref016","doi-asserted-by":"publisher","DOI":"10.1017\/S0960129500000049"},{"key":"S0960129500070043_ref015","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796800000198"},{"key":"S0960129500070043_ref011","first-page":"213\u2013272","volume-title":"Logical Foundations of Functional Programming","author":"Bruce","year":"1990"},{"key":"S0960129500070043_ref010","doi-asserted-by":"crossref","unstructured":"Bruce K. and Mitchell J. (1992) PER models of subtyping, recursive types and higher-order polymorphism. In: Proceedings of the Nineteenth ACM Symposium on Principles of Programming Languages, Albequerque, NM.","DOI":"10.1145\/143165.143230"},{"key":"S0960129500070043_ref008","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796800001039"},{"key":"S0960129500070043_ref007","doi-asserted-by":"publisher","DOI":"10.2307\/2273659"},{"key":"S0960129500070043_ref024","doi-asserted-by":"publisher","DOI":"10.1017\/S0960129500001134"},{"key":"S0960129500070043_ref004","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4419-8598-9"},{"key":"S0960129500070043_ref014","unstructured":"Cardelli L. (1990) Notes about F\u03c9 <: (unpublished manuscript)."},{"key":"S0960129500070043_ref003","doi-asserted-by":"crossref","unstructured":"Abadi M. and Cardelli L. (1994b) A theory of primitive objects: Untyped and first-order systems. In: Theoretical Aspects of Computer Software (TACS), Sendai, Japan.","DOI":"10.1007\/3-540-57887-0_101"},{"key":"S0960129500070043_ref023","doi-asserted-by":"publisher","DOI":"10.1007\/BF02011875"},{"key":"S0960129500070043_ref002","doi-asserted-by":"crossref","unstructured":"Abadi M. and Cardelli L. (1994a) A theory of primitive objects: Second-order systems. In: European Symposium on Programming (ESOP), Edinburgh, Scotland.","DOI":"10.1007\/3-540-57880-3_1"},{"key":"S0960129500070043_ref013","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-13346-1_2"},{"key":"S0960129500070043_ref001","article-title":"Baby Modula-3 and a theory of objects","volume":"4","author":"Abadi","year":"1993","journal-title":"Journal of Functional Programming"},{"key":"S0960129500070043_ref038","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796800001040"},{"key":"S0960129500070043_ref041","first-page":"227","article-title":"Self: The power of simplicity","author":"Ungar","year":"1987","journal-title":"Proceedings of the ACM Symposium on Object-Oriented Programming: Languages, Systems, and Applications (OOPSLA)"},{"key":"S0960129500070043_ref005","first-page":"396","article-title":"An interpretation of objects and object types","author":"Abadi","year":"1996","journal-title":"Principles of Programming Languages"},{"key":"S0960129500070043_ref009","doi-asserted-by":"publisher","DOI":"10.1016\/0890-5401(90)90062-M"},{"key":"S0960129500070043_ref027","doi-asserted-by":"publisher","DOI":"10.1109\/LICS.1990.113760"},{"key":"S0960129500070043_ref025","doi-asserted-by":"publisher","DOI":"10.1016\/1385-7258(72)90034-0"},{"key":"S0960129500070043_ref012","doi-asserted-by":"publisher","DOI":"10.1145\/99370.99392"},{"key":"S0960129500070043_ref028","unstructured":"Girard J.-Y. (1972) Interpr\u00e9tation fonctionelle et \u00e9limination des coupures de l'arithm\u00e9tique d'ordre sup\u00e9rieur, Ph.D. thesis, Universit\u00e9 Paris VII."},{"key":"S0960129500070043_ref018","unstructured":"Castagna G. (1992) Strong typing in object-oriented paradigms. Rapport de Recherche LIENS-92-11, Ecole Normale Superieure, Paris, May 1992."},{"key":"S0960129500070043_ref022","first-page":"125","volume-title":"Seventeenth Annual ACM Symposium on Principles of Programming Languages, San Francisco","author":"Cook","year":"1990"},{"key":"S0960129500070043_ref006","volume-title":"The Lambda Calculus","author":"Barendregt","year":"1984"},{"key":"S0960129500070043_ref029","volume-title":"Smalltalk-80: The Language and Its Implementation","author":"Goldberg","year":"1983"}],"container-title":["Mathematical Structures in Computer Science"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S0960129500070043","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,12,12]],"date-time":"2020-12-12T13:01:40Z","timestamp":1607778100000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S0960129500070043\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1996,10]]},"references-count":41,"journal-issue":{"issue":"5","published-print":{"date-parts":[[1996,10]]}},"alternative-id":["S0960129500070043"],"URL":"https:\/\/doi.org\/10.1017\/s0960129500070043","relation":{},"ISSN":["0960-1295","1469-8072"],"issn-type":[{"value":"0960-1295","type":"print"},{"value":"1469-8072","type":"electronic"}],"subject":[],"published":{"date-parts":[[1996,10]]}}}