algebraic data type (sum type) and Null safety structured concurrency as language primitive <https://vorpus.org/blog/notes-on-structured-concurrency-or-go-statement-considered-harmful/>
more toolchain(lsp) friendly (unconstrained macros makes them hard to implement)