I’m working on a language I’m calling Braid, an ML-like language that compiles to Go. Braid’s syntax is heavily inspired by Reason, itself a more C-like syntax on top of OCaml. So really I’m writing a language that aims to be fairly similar to OCaml in what it can do, but visually a bit closer to Go. I’m not trying to reimplement OCaml or Reason 1:1 on top of Go, but build something sharing many of the same concepts.
Here’s a first pass at a mission statement:
Braid combines all the power of the Go platform with a higher-level syntax adept at both functional and imperative programming. It aims to be a modern, practical language that gives programmers the tools to write concise, elegant code that draws on the power of the Go runtime and standard library. Braid’s higher-level abstractions may result in more code and slower speeds than the representative native Go code, but this tradeoff is explicitly made.
This blog is the place where I’ll endeavour to write regular, small updates on my progress.