I present a datatype-generic treatment of recursive container types whose elements are guaranteed to be stored in increasing order, with the ordering invariant rolled out systematically. Intervals, lists and binary search trees are instances of the generic treatment. On the journey to this treatment, I report a variety of failed experiments and the transferable learning experiences they triggered. I demonstrate that a total element ordering is enough to deliver insertion and flattening algorithms, and show that (with care about the formulation of the types) the implementations remain as usual. Agda's instance arguments and pattern synonyms maximize the proof search done by the typechecker and minimize the appearance of proofs in program tex...
We introduce a new algorithm to analyze recursive, structured types. It derives information from obj...
1 Introduction Two topics of research in the area of query evaluation for recursive Datalog rules ha...
This development provides a framework for container types like sets and maps such that generated cod...
I present a datatype-generic treatment of recursive container types whose elements are guaranteed to...
AbstractDefining functions over large, possibly recursive, data structures usually involves a lot of...
A discriminator partitions values associated with keys into groups listed in ascending order. Discri...
Defining functions over large, possibly recursive, data structures usually involves a lot of boilerp...
We present a variation of Martin-L\uf6f\u27s logical framework with "beta-iota-equality", extended w...
Nested (or non-uniform, or non-regular) datatypes have recursive definitions in which the type param...
Data types may be considered as objects in any suitable category, and need not necessarily be ordere...
Efficient storage of types within a compiler is necessary to avoid large blowups in space during com...
Nested (or non-uniform, or non-regular) datatypes have recursive definitions in which the type param...
We introduce a new compile–time notion of type subsumption based on type simulation. We show how to ...
This thesis seeks to strengthen the capabilities of static polymorphic type-checking (as known from ...
Integrating sorts (types) into logic programming languages increases expressiveness and evaluation e...
We introduce a new algorithm to analyze recursive, structured types. It derives information from obj...
1 Introduction Two topics of research in the area of query evaluation for recursive Datalog rules ha...
This development provides a framework for container types like sets and maps such that generated cod...
I present a datatype-generic treatment of recursive container types whose elements are guaranteed to...
AbstractDefining functions over large, possibly recursive, data structures usually involves a lot of...
A discriminator partitions values associated with keys into groups listed in ascending order. Discri...
Defining functions over large, possibly recursive, data structures usually involves a lot of boilerp...
We present a variation of Martin-L\uf6f\u27s logical framework with "beta-iota-equality", extended w...
Nested (or non-uniform, or non-regular) datatypes have recursive definitions in which the type param...
Data types may be considered as objects in any suitable category, and need not necessarily be ordere...
Efficient storage of types within a compiler is necessary to avoid large blowups in space during com...
Nested (or non-uniform, or non-regular) datatypes have recursive definitions in which the type param...
We introduce a new compile–time notion of type subsumption based on type simulation. We show how to ...
This thesis seeks to strengthen the capabilities of static polymorphic type-checking (as known from ...
Integrating sorts (types) into logic programming languages increases expressiveness and evaluation e...
We introduce a new algorithm to analyze recursive, structured types. It derives information from obj...
1 Introduction Two topics of research in the area of query evaluation for recursive Datalog rules ha...
This development provides a framework for container types like sets and maps such that generated cod...