Conversation

is there anyone working on type-level records (dependent row types?), things like this silly example, or am I just badly reinventing something list : List Nat { max = 5 } list = [1, 4, 5] here List has kind (a : Type) -> { max : a } -> Type
4
9
Replying to and
I also want named arguments too, using these rows. Where the following applications are equivalent (not sure about the syntax though): List (elem = Int) (max = 5) List (elem = Int, max = 5) List (max = 5) (elem = Int) List (max = 5, elem = Int)
2
Also I think the labels should somehow be namespaced, not like type-level strings - like, they should work well in a modular way in 'the large'. Perhaps along the lines of how Clojure does it, but I dunno.
2
isn't a general value belonging to a dependent record type of this nature "just" a bunch of records that you can get by toposorting the labels?
1
Show replies