b0neless is a pseudo-language/idea I had following reading some interesting discussions on discord. The idea is to completely seperate the idea of types and data storage, and enforcing that by making those two seperate language constructs.
In b0neless, a type is a name, an optional list of type parameters, and has a bunch of properties you can query, given one instance of the type. Properties are pure, and lazily evaluated (potentially extremely so as will become clear later).
type List[T: type] {
size: Nat,
access: Nat -> T,