Type inclusion constraints and type inference, Proceedings of the conference on Functional programming languages and computer architecture , FPCA '93, pp.31-41, 1993. ,
DOI : 10.1145/165180.165188
CDuce: an XML-friendly general purpose language, ICFP '03, 2003. ,
Polymorphic functions with set-theoretic types, Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL '14, 2014. ,
DOI : 10.1145/2535838.2535840
URL : https://hal.archives-ouvertes.fr/hal-00907166
Set-theoretic Foundation of Parametric Polymorphism and Subtyping, ICFP '11, 2011. ,
URL : https://hal.archives-ouvertes.fr/hal-00618839
A new type assignment for ??-terms, Archiv f??r Mathematische Logik und Grundlagenforschung, vol.5, issue.1 ,
DOI : 10.1007/BF02011875
Principal Types and Unification for Simple Intersection Type Systems, Information and Computation, vol.122, issue.1, pp.70-96, 1995. ,
DOI : 10.1006/inco.1995.1141
Fundamental properties of infinite trees, Theoretical Computer Science, vol.25, issue.2, pp.95-169, 1983. ,
DOI : 10.1016/0304-3975(83)90059-2
Principal type-schemes for functional programs, Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '82, pp.207-212, 1982. ,
DOI : 10.1145/582153.582176
Practical Refiniment-Type Checking, 2005. ,
XQuery 3.0: An XML query language (working draft, 2010. ,
Théorie, conception et réalisation d'un langage de programmation fonctionnel adapté à XML, 2004. ,
Semantic subtyping, Journal of the ACM, vol.55, issue.4, pp.1-64, 2008. ,
DOI : 10.1145/1391289.1391293
URL : https://hal.archives-ouvertes.fr/hal-00152690
What are principal typings and what are they good for?, Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '96, pp.42-53, 1996. ,
DOI : 10.1145/237721.237728
A polar type system, ICALP Satellite Workshops, pp.323-338, 2000. ,
Principality and decidable type inference for finite-rank intersection types, Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '99, pp.161-174, 1999. ,
DOI : 10.1145/292540.292556
Polymorphic type inference, Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages , POPL '83, 1983. ,
DOI : 10.1145/567067.567077
An Efficient Unification Algorithm, ACM Transactions on Programming Languages and Systems, vol.4, issue.2, pp.258-282, 1982. ,
DOI : 10.1145/357162.357169
URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.96.6119
Type inference with constrained types, Theory and Practice of Object Systems, vol.X, issue.1, pp.35-55, 1999. ,
DOI : 10.1002/(SICI)1096-9942(199901/03)5:1<35::AID-TAPO4>3.0.CO;2-4
Purely Functional Data Structures, CUP, 1998. ,
DOI : 10.1017/CBO9780511530104
Local type inference, ACM Transactions on Programming Languages and Systems, vol.22, issue.1, pp.1-44, 2000. ,
DOI : 10.1145/345099.345100
The essence of ML type inference, Advanced Topics in Types and Programming Languages, pp.389-489, 2005. ,
The design and implementation of typed scheme, POPL '08, 2008. ,
Logical types for untyped languages, ICFP '10, 2010. ,
Intersection Type Disciplines in Lambda Calculus and Applicative Term Rewriting Systems, 1993. ,
Parametric Polymorphism for XML Processing Languages, 2013. ,
URL : https://hal.archives-ouvertes.fr/tel-00858744
17 val iter2 : ('a -> 'b -> unit) -> 'a list -> 'b list -> unit 18 val map2 : ('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c list 19 val rev_map2 : ('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c list 20 val fold_left2 val for_all : ('a -> bool) -> 'a list -> bool 23 val exists : ('a -> bool) -> 'a list -> bool 24 val for_all2 : ('a -> 'b -> bool) -> 'a list -> 'b list -> bool 25 val exists2 : ('a -> 'b -> bool) -> 'a list -> 'b list -> bool 26 val mem : 'a -> 'a list -> bool 27 val memq : 'a -> 'a list -> bool 28 val find : ('a -> bool) -> 'a list -> 'a 29 val filter : ('a -> bool) -> 'a list -> 'a list 30 val find_all : ('a -> bool) -> 'a list -> 'a list 31 val partition : ('a -> bool) -> 'a list -> 'a list * 'a list 32 val assoc : 'a -> ('a * 'b) list -> 'b 33 val assq : 'a -> ('a * 'b) list -> 'b 34 val mem_assoc : 'a -> ('a * 'b) list -> bool 35 val mem_assq : 'a -> ('a * 'b) list -> bool 36 val remove_assoc, int) -> 'a list -> 'a list 42 val fast_sort : ('a -> 'a -> int) -> 'a list -> 'a list 43 val merge, pp.22-41 ,