Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
[go: Go Back, main page]

Modularity and Type   (under construction)

 

Contents

Researchers

Papers:   Module TypesFirst-Class Environments,

                Higher Order Types, Subtyping, Language Design,

                Intersection Types,  Region Inference  Record Types,

Thesis , Manuals, Books, Courses and Tutorials, Languages,

PresentationsMatthias Felleisen

Resources


Researcher Home Pages


Karl Crary(CMU)
Kim Bruce (Williams Colledge)
Dominic Duggan  (Stevens Institute of Technology)
Matthias Felleisen  (Northeastern University)
Robert Harper(CMU)
Derek R. Dreyer (CMU)
Mark Jones (Oregon Univsersity)
Mark Lillibridge (former CMU, current Compaq)
Xavier Leroy  (Inria)
John Mitchell (Standford University)
Dave MacQueen (Bell Laboratory)
David MacQueen (Ecole Polytechnique)
Benjamin C. Pierce  (University of Pennsilvania)
Zhong Shao (Yale University)
Jean-Pierre Talpin (IRISA, INRIA)
Tom Hirschowitz (INRIA Rocquencourt)
Mads Tofte
Claudio Russo (Edinburg University)
Jonathan Aldrich  (University of Washinton)
Davide Ancona (Dipartimento di Informatica e Scienze dell'Informazione)
Aleksey Nogin (Cornell University)
Jason Hickey (Cornell University)
Joe Wells  (Church Project)

Note:
Researcher name -> their homepage
University -> local paper collection


Papers on Module Types

CMU

*What is a Recursive Module?
      Karl Crary, Robert Harper, and Sidd Puri.
     1999 Conference on Programming Language Design and Implementation.

*   A Type System for Higher-Order Modules
    Karl Crary Robert Harper Derek Dreyer Carnegie Mellon University , 2002, submitted.

*Toward a Practical Type Theory for Recursive Modules.
     Derek Dreyer, Robert Harper, and Karl Crary.
     Carnegie Mellon University Computer Science Department
     Technical Report CMU-CS-01-112, March, 2001.

Karl Crary, Robert Harper, and Derek Dreyer. A Type System for Higher-Order Modules. To appear, 2002
     Symposium on Principles of Programming Languages (POPL '02).

*Transparent and Opaque Interpretations of Data Types.
     Karl Crary, Robert Harper, Perry Cheng, Leaf Petersen, and Chris Stone.
     Technical Report. November, 1998.

*Robert Harper, John C. Mitchell, and Eugenio Moggi.
Higher-order modules and the phase distinction.
In Seventeenth ACM SIGACT-SIGPLAN Symposium on Principles
of Programming Languages, pages 341--354, San Francisco, January 1990. http://citeseer.nj.nec.com/harper90higherorder.html

*R. Harper and M. Lillibridge.
A type theoretic approach to higher-order modules with sharing.
In Proc. 21st ACM Symp. on Principles of Programming Languages, pages
127--137. ACM Press, 1994. http://citeseer.nj.nec.com/harper94typetheoretic.html

Mark Lillibridge. Translucent Sums: A Foundation for Higher-Order Module Systems. Ph.D. Thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, May 1997. (Also
available as CMU-CS-97-122.)
 

Harper, R. and Mitchell, J. C. (1993)
On the type structure of Standard ML. ACM Transactions on Programming Languages and Systems, 15(2):211--252.
 

Conell University

Jason Hickey.  Modules with Proofs.

Jason Hickey.  Modular Frameworks for Higher Order Logics.

Jason Hickey.  A Predicative Type-Theoretic Interpretation of Objects,

Jason Hickey.     Formal Objects in Type Theory Using Very Dependent Types, in Foundations of
     Object-Oriented Languages 3, 1996.
 Constable, Robert L. and Jason Hickey, Nuprl's Class Theory and Its Applications. Unpublished
     manuscript, 2000. [PostScript]

Nuprl Publications
Alexei Kopylov.  Dependent Intersection: A New Way of Defining Records in Type Theory.
Technical Report TR2000-1809, Computer Science Department, Cornell University, August 2000
Submited to Theoretical Computer Science.
 

Church Project


[20]J. B. Wells and René Vestergaard. Confluent equational reasoning for linking with first-class primitive modules
     (long version). A short version is [14]. Full paper, 3 appendices of proofs, August 1999. (PostScript)

[14]J. B. Wells and René Vestergaard. Equational reasoning for linking with first-class primitive modules. In
     Programming Languages & Systems, 9th European Symp. Programming, volume 1782 of LNCS, pages 412-428.
     Springer-Verlag, 2000. A long version is [20]. (PostScript) (PDF)

 University of Pennsilvania

* TinkerType: A Language for Playing with Formal Systems .
      Michael Y. Levin and Benjamin C Pierce.
 

Stevens Institute of Technology

*D. Duggan.
   Sharing in Typed Module Assembly Language (PDF).
   In Proceedings of Workshop on Types in Compilation. Montreal, Quebec, Sept 2000.
   Springer-Verlag   Lecture Notes in Computer Science 2071.

* D. Duggan.
    Type-Based Hot Swapping of Running Modules (PDF).
   Extended abstract in ACM
   International Conference on Functional Programming (ICFP), Florence, Italy, Sept 2001.
   SIGPLAN Notices.

*D. Duggan.
   A mixin-based, semantics-based approach to implementing modular reusable
domain-specific programming languages (PDF). In European Conference on Object-Oriented
Programming (ECOOP), Cannes, France, June 2000.

*D. Duggan.
   Modular type-based reverse engineering of parameterized types in Java code.
   ACM SIGPLAN Symposium on Object-Oriented Programming: Systems, Languages and Applications (OOPSLA).  Denver, Colorado, November 1999.

*D. Duggan and C. Sourelis.
 Mixin modules.
ACM SIGPLAN International Conference on Functional Programming, Philadelphia, Pennsylvania, May 1996.

*D. Duggan and C. Sourelis.  Module-based mixin-based inheritance.  Submitted for publication.

Viviana Bono, Amit Patel, and Vitaly Shmatikov
A Core Calculus of Classes and Mixins
ECOOP'99, LNCS 1628, pp 43, 1999.

Oregon Univsersity

*Mark P. Jones
    Using Parameterized Signatures to Express Modular Structure,
     In Proceedings of the Twenty Third Annual ACM SIGPLAN-SIGACT
     Symposium on Principles of Programming Languages, St. Petersburg Beach,
     Florida, January 21-24, 1996.

* Sheng Liang, Paul Hudak, andMark P. Jones
      Monad Transformers and Modular Interpreters,
      In Conference Record of POPL'95: 22nd ACM
           SIGPLAN-SIGACT Symposium on Principles of Programming Languages,
           San Francisco, CA, January 1995.

*Mark P. Jones.
     Functional Programming with Overloading and Higher-Order Polymorphism
     First International Spring School on Advanced Functional
     Programming Techniques, B{\aa}stad, Sweden, Springer-Verlag Lecture
     Notes in Computer Science 925, May 1995.

*   Mark P. Jones, A system of constructor classes,
Proceedings of the conference on Functional programming languages and computer
   architecture, p.52-61, June 09-11, 1993, Copenhagen, Denmark
 

University of Washinton

Evaluating Module Systems for Crosscutting Concerns (2000)
Jonathan Aldrich
 

Ecole Polytechnique

*
David MacQueen.
     Adaptation in HOT Languages: Comparing Polymorphism, Modules, and Objects
 

Northeastern University

M. Flatt and M. Felleisen. Units: Cool modules for HOT languages. In PLDI'98 - ACM Conf. on Programming Language Design and Implementation, pages 236--248, 1998.

R.B. Findler and M. Flatt. Modular object-oriented programming with units and mixins. In Intl. Conf. on Functional Programming 1998, September 1998.
http://citeseer.nj.nec.com/findler98modular.html

Bell Laboratory

*David B. MacQueen. An Implementation of Standard ML Modules. In ACM Conf. on Lisp and Functional Programming, pages 212--223,1988.
 

*D. MacQueen and M. Tofte. A semantics for higher-order functors. Proc. 5th European Symp. on Programming, Edinburgh. Springer LNCS 788, 409--423 (1994).
http://citeseer.nj.nec.com/33649.html
 

Cornell University

Aleksey Nogin  and Jason Hickey,  System Description MetaPRL -- A Modular Logical Environment
 

Yale University

*Zhong  Shao. Transparent modules with fully syntactic signatures (extended version). Technical Report YALEU/DCS/RR-1181, Dept. of Computer Science, Yale Univ., New Haven, CT, June 1999.

*Zhong Shao.Transparent Modules with Fully Syntactic Signatures.  In Proc. 1999 ACM
                 SIGPLAN International Conference on Functional Programming (ICFP'99), Paris, France, pages 220-232, September 1999. ©1999 ACM.

*Zhong Shao. Parameterized signatures and higher-order modules. Technical Report YALEU/DCS/TR-1161, Dept. of Computer Science, Yale University, August 1998.
http://citeseer.nj.nec.com/shao98parameterized.html

*Zhong  Shao.  Typed Cross-Module Compilation.  In Proc. 1998 ACM SIGPLAN International Conference on Functional Programming (ICFP'98), Baltimore, Maryland, pages 141-152,
                 September 1998. ©1998 ACM.

*Zhong  Shao.  Typed Cross-Module Compilation (Extended Version). Technical Report
                 YALEU/DCS/TR-1126, Department of Computer Science, Yale University, June 1998.

Inria

*Xavier Leroy. Manifest types, modules, and separate compilation. In 21st symposium Principles of Programming Languages, pages 109-122. ACM Press, 1994.
*Xavier Leroy. A syntactic theory of type generativity and sharing. Journal of Functional Programming, 1996.

*Xavier Leroy. Applicative functors and fully transparent higher-order modules. In 1995 ACM Symposium on Principles of Programming Languages, pages 142--153, San Francisco, CA, January 1995.
*Xavier Leroy. A modular module system, Journal of Functional Programming 10(3), 2000. Full source code available in the Web appendix.
*Xavier Leroy.   Objects and classes versus modules in Objective Caml, invited talk given at ICFP'99.

*Nowak, D., Talpin, J.-P., Gautier, T., Le Guernic, P.
"An ML-like module system for the synchronous language SIGNAL"  European Conference on Parallel Processing (EUROPAR'97). (c) Springer Verlag, August 1997.

J. Vouillon. Using modules as classes. In Informal Proceedings of the FOOL'5 Workshop, January 1998.

Tom Hirschowitz, Modules mixins : typage et compilation, september 2000, master's report for the DEA Programmation: Sémantique,      Preuves et Langages.

Tom Hirschowitz, Modules mixins : typage et implantation, december 2000, talk at the journées FOC.

  Tom Hirschowitz and Xavier Leroy, Mixin modules in a call-by-value setting (long version), october 2001 (preliminary version, available      as PDF, compressed postscript or compressed dvi).
 

Sylvain Boulmé, Thérèse Hardin et Renaud Rioboo, Laboratoire d'Informatique de Paris 6
 Modules, Objets et Calcul Formel, JFLA99.

Univ. of Amsterdam


 J. A. Bergstra  Module algebra
in Journal of the ACM (JACM)   Volume 37 ,  Issue 2  (April 1990)

1   E. K. Blum , H. Ehrig , F. Parisi-Presicce,
Algebraic specification of modules and their basic interconnections,
Journal of Computer and System Sciences, v.34 n.2-3, p.293-339, April/June 1987

 J. A. Bergstra , Jan Heering , Paul Klint,
Algebraic specification,
ACM Press, New York, NY, 1989
 

Stanford University

J. C. Mitchell, S. Meldal, and N. Madhav.
An extension of Standard ML modules with subtyping and inheritance.
In Eighteenth Symposium on Principles of Programming
Languages, pages 316-- 327, 1991. http://citeseer.nj.nec.com/mitchell91extension.html
 

Williams Colledge


     Modules in LOOM: Classes are not enough
     by Kim B. Bruce, Leaf Petersen, and Joseph Vanderwaart
     Extended abstract. Last revised 4/13/98.

Edinburg University

[1] Claudio V. Russo. First-Class Structures for Standard ML. An earlier version of a paper submitted to 2000 International Conference on Principles of
     Programming Languages. 1999. 21 pages.
Claudio V. Russo
First-Class Structures for Standard ML
in ESOP/ETAPS 2000. LNCS 1872, pp 336-350, 2000.
[2] Claudio V. Russo. Non-Dependent Types for Standard ML Modules . Preliminary version accepted at 1999 Int'l Conf. on Principles and Practice of Declarative
     Programming. 18 pages.
[3] Claudio V. Russo. The Definition of Non-Standard ML. Draft (available on request).
[4] Claudio V. Russo. Types For Modules. University of Edinburgh, LFCS thesis ECS-LFCS-98-389. 1998. 360 pages. (Also available from the LFCS repository.)
[5] Claudio V. Russo. An implementation of higher-order and first-class modules.
     This is the source code for a prototype interpreter that accompanies my thesis [4].
     (Available as a gzipped tar file, 28 Kbytes. For further details, see the accompanying readme file, reproduced here).
 

Dipartimento di Informatica e Scienze dell'Informazione

Others

Mark Shields and Simon Peyton Jones. First-class Modules for Haskell.  Submitted to the Ninth International Conference on Foundations of Object-Oriented Languages (FOOL 9), Portland, Oregon. 20 pages. Oct 2001. [A4 ps] [A4 pdf] [bibtex]
 

LNCS

Florian Kammuller
Modular Structures as Dependent Types in Isabelle
TYPES'98, LNCS 1657, pp. 121-133, 1999.

Davide Ancona and Elena Zucca
True Modules for Java-like Languages
ECOOP 2001, LNCS 2072, pp 354, 2001.

Others

J. H. Reppy and J. G. Riecke. Classes in Object ML via modules. In Third Workshop on Foundations of
ObjectOriented Languages, July 1996.

First Class Environments

Suresh Jagannathan Environments as First-Class Objects. ACM Conference on
                      Principles of Programming Languages. January 1987. ACM
                      Press. (with David Gelernter, Tom London).
Masahiko Sato, Takafumi Sakurai, and Yukiyoshi Kameyama, "A Simply Typed Context Calculus with First-Class Environments",     Journal of Functional and Logic Programming, to appear.

Masahiko Sato, "Theory of Judgments and Derivations", to appear in Arikawa, S. and Shinohara, A. eds., Progress in Discovery Science, Lecture Notes in
     Artificial Intelligence, State-of-the-Art Surveys, Springer, 2001. ps file.
 
 

Papers on Components

Martin Buchi and Wolfgang Weck
Generic Wrappers, ECOOP 2000,. LNCS 1850,  pp201-225, 2000.
 
 
 


Papers on Higer Order Types


*Sound and Complete Elimination of Singleton Kinds.
      Karl Crary.
      2000 Workshop on Types in Compilation.

*Foundations for the Implementation of Higher-Order Subtyping.
     Karl Crary.
     1997, International Conference on Functional Programming.
 
 

Papers on Subtyping


*Typed Compilation of Inclusive Subtyping.
     Karl Crary.
     2000 International Conference on Functional Programming.

*Foundations for the Implementation of Higher-Order Subtyping.
     Karl Crary.
     1997, International Conference on Functional Programming.

*Yong Luo , Zhaohui Luo
          Coherence and Transitivity in Coercive Subtyping
          Volume 2250, Issue , pp 0249-
          Lecture Notes in Artificial Intellingence

*Alexandre Miquel
          The Implicit Calculus of Constructions
          Volume 2044, Issue , pp 0344-
* Gilles Barthe , Femke van
      Constructor Subtyping in the Calculus of Inductive Constructions
          Volume 1784, Issue , pp 0017-
          Lecture Notes in Computer Science

*David Aspinall
      Subtyping with Power Types
          Volume 1862, Issue , pp 0156-
          Lecture Notes in Computer Science

Papers on Language Design

*Principles and a Preliminary Design for ML2000.
     The ML2000 Working Group.

*Programming Language Semantics in Foundational Type Theory.
     Karl Crary.
     1998  International Conference on Programming Concepts and Methods.

*Mark Jones.
     Typing Haskell in Haskell
     In Proceedings of the 1999 Haskell
     Workshop, Paris, France, October 1999. Published in Technical Report
     UU-CS-1999-28, Department of Computer Science, University of Utrecht.

*Type Classes with Functional Dependencies,
     Mark P. Jones,
     In Proceedings of the 9th European Symposium on Programming, ESOP 2000, Berlin, Germany,
     March 2000, Springer-Verlag LNCS 1782.
 
 

Papers on Intersection Types

Martin Büchi, Wolfgang Weck
Compound Types for Java

Papers on Region Inference


           Flemming Nielson , HanneRiis Nielson
           Type and Effect Systems
           Volume 1710, Issue , pp 0114-, Lecture Notes in Computer Science
 
 

Papers on Existential Types

[9] DejaVU Online: Principles of Object-Oriented Software Development (©)
Existential types -- hiding

Konstantin Laufer, Combining Type Classes and Existential Types, Proc. Latin American Informatics Conference (PANEL),
ITESM-CEM, Mexico, September 1994. http://citeseer.nj.nec.com/laufer94combining.html

Record Types and Modules in Proof Assistants


Gustavo Betarte
 

     PhD thesis: Dependent Record Types and Algebraic Structures in Type Theory
     Department of Computing Science, Chalmers University of Technology and University of Göteborg, Göteborg,
     Sweden, February 1998.

     Dependent Record Types, Subtyping and Proof Reutilization
     Presented at the workshop on "Subtyping, inheritance and modular development of proofs", held at Durham,
     England, 1997.

     Extension of Martin-Löf's type theory with record types and subtyping. (with Alvaro Tasistro)
     To appear in "25 Years of Constructive Type Theory", Oxford University Press, 1997.

Robert Pollack. Dependently typed records for representing mathematical structure. In Aagard and Harrison, editors, Theorem Proving in
Higher Order Logics, TPHOLs 2000, volume 1869 of Lecture Notes in Computer Science. SpringerVerlag, August 2000.
http://citeseer.nj.nec.com/pollack00dependently.html
 

J. Courant. An applicative module calculus. In M. Bidoit and M. Dauchet, editors, Proc. TAPSOFT '97: Theory and Practice of Software
Development, Lecture Notes in Computer Science, pages 622--636. Springer Verlag, April 1997.
http://citeseer.nj.nec.com/courant97applicative.html

J. Courant. A module calculus enjoying the subject-reduction property. To appear in Proc. TAPSOFT '97: Theory and Practice of
Software Development, 1997. http://citeseer.nj.nec.com/courant96module.html

Judicael Courant. A module calculus for pure type systems. In Typed Lambda Calculi and Applications 97, LNCS. Springer-Verlag,
1997. http://citeseer.nj.nec.com/article/courant96module.html   More

Thesis

* Leaf Petersen, A Module System for LOOM , 1996

*  Karl Crary.  Type-Theoretic Methodology for Practical Programming Languages.  August 1998.

* Xavier Leroy. Polymorphic typing of an algorithmic language. Research report 1778, INRIA, 1992.

*M. Lillibridge. Translucent Sums: A Foundation for Higher-Order Module Systems. PhD thesis, School of Computer Science, Carnegie Mellon University, 1997. Available as
technical report CMS-CS-97-122. http://citeseer.nj.nec.com/lillibridge97translucent.html

Honors theses guided by Professor Kim Bruce
 
 

Projects


CMU FOX Project
 
 
 

Manuals

The module system of Ocaml
 

Courses and Tutorials

Programming Languages (by Dave MacQueen)  Modularity and Abstraction,
Objects and classes versus modules in Objective Caml, (by Xavier Leroy)  invited talk given at ICFP'99.

     Adaptation in HOT Languages: Comparing Polymorphism, Modules, and Objects by David MacQueen.

     Type Systems: a tutorial on type systems by Luca Cardelli.
     Essentials of Standard ML Modules: a tutorial on the Standard ML module system. The postscript file at that page  is suspect so here is another copy derived from the dvi version.
     The Development of Type Systems for Object-Oriented Languages: a tutorial on models for the type systems for
     object-oriented languages.

Theories des types.  (by Dowek )

Concepts of Programming Languages (CS 320) (by Assaf Kfoury)
 
 

Online Books

Abelson and Sussman, with Sussman: Structure and Interpretation of Computer Programs

H.P. Barendregt .  The Lambda Calculus: Its Syntax and Semantics ,  Elsevier Science, 1984.

Constable, et alii: Implementing Mathematics with The Nuprl Proof Development System

DejaVU  Principles of Object-Oriented Software Development

Presentations and Talks

Matthias Felleisen

Next Generation Software Systems and Programming Language Research
     abstractPPT

Program Analyses: A Consumer's Perspective
     abstractPPT
     Invited Talk: Static Analysis Symposium

Contracts for Software Components (Work in Progress)
     abstractPPT

Building Extensible Software
     abstractPPT

Languages

Ocaml  Haskell

Resources

ResearchIndex
Springer Verlag  Search
Guide to Computer Science Internet Resources
Researchers in Programming Language and Compilers
Home Page Search for Computer Scientists
The Directory of Computing Science Journals
CISTI Virtual Library
ACM Digital Library

Computer Science Departments and Research Divisions (by J. Mitchell)
Professional Organizations, Archives, Conference, Journal and Publisher Pages

Home Page for Intersection Types and Related System
Church Project

World Lecture Hall