Miranda: a non-strict functional language with polymorphic types
Proc. of a conference on Functional programming languages and computer architecture
Three approaches to type structure
Proc. of the international joint conference on theory and practice of software development (TAPSOFT) Berlin, March 25-29, 1985 on Mathematical foundations of software development, Vol. 1: Colloquium on trees in algebra and programming (CAAP'85)
Basic polymorphic typechecking
Science of Computer Programming
How to make ad-hoc polymorphism less ad hoc
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The definition of Standard ML
Type-dependent parameter inference
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Commentary on standard ML
Logical foundations of functional programming
Logical foundations of functional programming
Type classes and overloading resolution via order-sorted unification
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
On the complexity of ML typeability with overloading
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
ACM SIGPLAN Notices - Haskell special issue
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
The essence of functional programming
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ESOP'92 Symposium proceedings on 4th European symposium on programming
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Implementing Haskell overloading
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Polymorphic type inference and abstract data types
Polymorphic type inference and abstract data types
Polymorphic type inference and abstract data types
ACM Transactions on Programming Languages and Systems (TOPLAS)
A parametric extension of Haskell's type classes
A parametric extension of Haskell's type classes
Towards a theory of type structure
Programming Symposium, Proceedings Colloque sur la Programmation
Implementing Haskell Type Classes
Proceedings of the 1989 Glasgow Workshop on Functional Programming
Efficient Type Inference Using Monads (Summary)
Proceedings of the 1991 Glasgow Workshop on Functional Programming
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
Encoding types in ML-like languages
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Dynamic typing for distributed programming in polymorphic languages
ACM Transactions on Programming Languages and Systems (TOPLAS)
A new approach to generic functional programming
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An interoperable calculus for external object access
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
A lightweight implementation of generics and dynamics
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
The Head Condition and Polymorphic Recursion
FLOPS '02 Proceedings of the 6th International Symposium on Functional and Logic Programming
Parallel Programming by Transformation
Euro-Par '99 Proceedings of the 5th International Euro-Par Conference on Parallel Processing
ECOOP '97 Proceedings of the Workshops on Object-Oriented Technology
Constructing Tournament Representations: An Exercise in Pointwise Relational Programming
MPC '02 Proceedings of the 6th International Conference on Mathematics of Program Construction
An Extensible Type System for Component-Based Design
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
Haskell '03 Proceedings of the 2003 ACM SIGPLAN workshop on Haskell
Type-checking multi-parameter type classes
Journal of Functional Programming
A static semantics for Haskell
Journal of Functional Programming
Journal of Functional Programming
ACM SIGPLAN Notices
Encoding types in ML-like languages
Theoretical Computer Science - Mathematical foundations of programming semantics
Constraint-set satisfiability for overloading
PPDP '04 Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming
Functional pearl: implicit configurations--or, type classes reflect the values of types
Haskell '04 Proceedings of the 2004 ACM SIGPLAN workshop on Haskell
Essential language support for generic programming
Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation
An overview of the Sloth2005 curry system: system description
Proceedings of the 2005 ACM SIGPLAN workshop on Curry and functional logic programming
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Extracting programs from type class proofs
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Compiling ML polymorphism with explicit layout bitmap
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Polymorphic typed defunctionalization and concretization
Higher-Order and Symbolic Computation
RepLib: a library for derivable type classes
Proceedings of the 2006 ACM SIGPLAN workshop on Haskell
Modular generic programming with extensible superclasses
Proceedings of the 2006 ACM SIGPLAN workshop on Generic programming
Software extension and integration with type classes
Proceedings of the 5th international conference on Generative programming and component engineering
System F with type equality coercions
TLDI '07 Proceedings of the 2007 ACM SIGPLAN international workshop on Types in languages design and implementation
Aspect-oriented programming with type classes
Proceedings of the 6th workshop on Foundations of aspect-oriented languages
Language-Based Program Verification via Expressive Types
Electronic Notes in Theoretical Computer Science (ENTCS)
Proceedings of the ACM SIGPLAN workshop on Generic programming
XHaskell --- Adding Regular Expression Types to Haskell
Implementation and Application of Functional Languages
ML Modules and Haskell Type Classes: A Constructive Comparison
APLAS '08 Proceedings of the 6th Asian Symposium on Programming Languages and Systems
Science of Computer Programming
A Haskell Hosted DSL for Writing Transformation Systems
DSL '09 Proceedings of the IFIP TC 2 Working Conference on Domain-Specific Languages
Parametric datatype-genericity
Proceedings of the 2009 ACM SIGPLAN workshop on Generic programming
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Social processes, program verification and all that
Mathematical Structures in Computer Science
Proceedings of the 5th ACM SIGPLAN workshop on Types in language design and implementation
SSDGP'06 Proceedings of the 2006 international conference on Datatype-generic programming
Using Coq to understand nested datatypes
EUROCAST'07 Proceedings of the 11th international conference on Computer aided systems theory
Constructive type classes in Isabelle
TYPES'06 Proceedings of the 2006 international conference on Types for proofs and programs
Type classes as objects and implicits
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Scala for generic programmers: Comparing haskell and scala support for generic programming
Journal of Functional Programming
Generative type abstraction and type-level computation
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type classes in functional logic programming
Proceedings of the 20th ACM SIGPLAN workshop on Partial evaluation and program manipulation
A language for generic programming in the large
Science of Computer Programming
JavaGI: The Interaction of Type Classes with Interfaces and Inheritance
ACM Transactions on Programming Languages and Systems (TOPLAS)
How to make ad hoc proof automation less ad hoc
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Making standard ML a practical database programming language
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
A simple semantics for polymorphic recursion
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Formal network packet processing with minimal fuss: invertible syntax descriptions at work
PLPV '12 Proceedings of the sixth workshop on Programming languages meets program verification
Outsidein(x) modular type inference with local assumptions
Journal of Functional Programming - Dedicated to ICFP 2009
Typing haskell with an attribute grammar
AFP'04 Proceedings of the 5th international conference on Advanced Functional Programming
“Scrap your boilerplate” revolutions
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
Principal type inference for GHC-Style multi-parameter type classes
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
Code generation via higher-order rewrite systems
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
A system for axiomatic programming
CICM'12 Proceedings of the 11th international conference on Intelligent Computer Mathematics
Typed tagless final interpreters
SSGIP'10 Proceedings of the 2010 international spring school conference on Generic and Indexed Programming
SSGIP'10 Proceedings of the 2010 international spring school conference on Generic and Indexed Programming
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
JavaGI: generalized interfaces for java
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Hi-index | 0.00 |
This article defines a set of type inference rules for resolving overloading introduced by type classes, as used in the functional programming language Haskell. Programs including type classes are transformed into ones which may be typed by standard Hindley-Milner inference rules. In contrast to other work on type classes, the rules presented here relate directly to Haskell programs. An innovative aspect of this work is the use of second-order lambda calculus to record type information in the transformed program.