Just came across CUE config / data validation language. I love its "types are values” concept.
Having not thought it through at all, I think a programming language that worked this way would be really cool - would simplify type definition syntax.
Introduction
Welcome! CUE is an open-source data validation language and inference engine with its roots in logic programming. Although the language is not a general-purpose programming language, it has many applications, such as data validation, data templating, configuration, querying, code generation and even scripting. The inference engine can be used to validate data in code or to include it as part of a code generation pipeline. A key thing that sets CUE apart from its peer languages is that it merges types and values into a single concept.
