Existential Types Sijmen van Bommel & Quinten Kock

Existential Types Sijmen van Bommel & Quinten Kock
1 / 1
Existential Types Sijmen van Bommel & Quinten Kock - slide 1 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 2 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 3 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 4 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 5 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 6 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 7 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 8 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 9 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 10 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 11 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 12 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 13 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 14 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 15 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 16 of 17 Existential Types Sijmen van Bommel & Quinten Kock - slide 17 of 17
Existential Types Sijmen van Bommel Quinten Kock based on Types and Programming Languages (Pierce 2002) Recap: Universal types Polymorphism X.T: value has type TX:S for any type S type S is abstract: only known after specialization id

Related Topics

Download this presentation From Below

"Existential Types Sijmen van Bommel & Quinten Kock" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.

Presentation Transcript

01
Existential Types Sijmen van Bommel & Quinten Kock
based on Types and Programming Languages (Pierce 2002)<br>
02
Recap: Universal types Polymorphism
∀X.T: value has type T[X:=S] for any type S
type S is abstract: only known after specialization
id = λX. λx:X. x : ∀X. X->X
erases to untyped λx. x
specializes to λx:S. x : S->S<br>
03
Existential types {∃X, T}: value has type T[X:=S] for some type X
value can be seen as pair {*S, t}: a type S and a term t : T[X:=S]
type S is hidden: only visible in the definition of t<br>