language design
A Struct Is Already a Row
The first post said records would get their own writeup once the design was further along. It is — and the design changed on the way. So this is both the promised post and a correction to it.
2 posts.
language design
The first post said records would get their own writeup once the design was further along. It is — and the design changed on the way. So this is both the promised post and a correction to it.
language design
Metel is an experimental language built around four commitments, roughly in order: compile-time safety, explicitness, expressivity, and — eventually — performance. It brings together ideas from across modern language design — ownership, capabilities, effects, structural types, and explicit allocation — to ask how they can be combined into a single coherent system.
Here is a small taste of the language:
fun main() {
let name := "Metel";
let answer: Perhaps<i64> := Some { value = 42 };
println("${name} says the answer is ${answer.yolo()}");
}
.yolo() is not a typo — more on that name below.