Modern dependently typed functional programming languages like Agda allow very specific restrictions to be built into datatypes by using indices and dependent types. Properly restricted types can help programmers to write correct-by-construction software. However, code duplication will occur because the language does not recognise that similarly-structured datatypes with slightly different program-specific restrictions can be related. Some functions will be copy-pasted for lists, vectors, sorted lists and bounded lists. Ornaments specify the exact relation between of different datatypes and may be a path towards a solution. It is a first step in structuring the design space of datatypes in dependently typed languages. Literature has shown h...
The EPSRC-funded Generic and Indexed Programming project will explore the inter-action between datat...
Dependently typed programmers are encouraged to use inductive families to integrate constraints with...
Dependently typed programming uses precise variants of data structures to ensure program correctness...
Datatype-generic programming makes it possible to define a construction once and apply it to a large...
Datatype-generic programming is natural and useful in dependently typed languages such as Agda. Howe...
Datatype-generic programming is natural and useful in dependently typed languages such as Agda. Howe...
Datatype-generic programming in the dependently typed setting can be achieved using the universe con...
Programming with dependent types is a blessing and a curse. It is a blessing to be able to bake inva...
Dependently typed programming languages allow the type system to express arbitrary propositions of i...
Some programs are doubly-generic. For example, map is datatypegeneric in that many different data st...
Datatype-generic programming is a widely used technique to define functions that work regularly over...
This dissertation defends the idea of a closed dependent type theory whose inductive types are encod...
International audienceFunctional programmers from all horizons strive to use, and sometimes abuse, t...
A generic functional program is one which is parameterised by datatype. By installing specific choic...
Generic programming is about making programs more widely applicable via exotic kinds of parametrizat...
The EPSRC-funded Generic and Indexed Programming project will explore the inter-action between datat...
Dependently typed programmers are encouraged to use inductive families to integrate constraints with...
Dependently typed programming uses precise variants of data structures to ensure program correctness...
Datatype-generic programming makes it possible to define a construction once and apply it to a large...
Datatype-generic programming is natural and useful in dependently typed languages such as Agda. Howe...
Datatype-generic programming is natural and useful in dependently typed languages such as Agda. Howe...
Datatype-generic programming in the dependently typed setting can be achieved using the universe con...
Programming with dependent types is a blessing and a curse. It is a blessing to be able to bake inva...
Dependently typed programming languages allow the type system to express arbitrary propositions of i...
Some programs are doubly-generic. For example, map is datatypegeneric in that many different data st...
Datatype-generic programming is a widely used technique to define functions that work regularly over...
This dissertation defends the idea of a closed dependent type theory whose inductive types are encod...
International audienceFunctional programmers from all horizons strive to use, and sometimes abuse, t...
A generic functional program is one which is parameterised by datatype. By installing specific choic...
Generic programming is about making programs more widely applicable via exotic kinds of parametrizat...
The EPSRC-funded Generic and Indexed Programming project will explore the inter-action between datat...
Dependently typed programmers are encouraged to use inductive families to integrate constraints with...
Dependently typed programming uses precise variants of data structures to ensure program correctness...