O racional de design
Por que a Makoto existe, e por que cada grande decisão foi tomada.
Os docs canônicos (
language-design.md,language-grammar.md,official_libraries.md,extensions.md,tooling.md) dizem o quê Makoto é. Este conjunto diz por quê: por que a linguagem existe e por que cada decisão grande foi tomada. Não é tutorial nem referência de API. É o ensaio do raciocínio, minerado das sessões de design (o vai-e-vem real, as alternativas rejeitadas, as dores, as fricções aceitas).
Makoto redefine coisas que outras linguagens dão como dadas: memória, async, erros, ausência, concorrência, strings. Cada arquivo abaixo pega um desses conceitos e mostra a reescrita. O que é no mundo geral, como Makoto se posiciona, o argumento, por que não as alternativas, a dor concreta, e o modelo mental que o programador carrega.
Os documentos
Seção intitulada “Os documentos”| # | Documento | A redefinição |
|---|---|---|
| 00 | Por que Makoto | a tese: Rust vaza, Go funde, Makoto separa |
| 01 | Filosofia | os modelos-raiz: opt-in, não-envenenamento, fronteiras, tiers |
| 02 | Memória | colorless: o objeto carrega sua estratégia, sem lifetimes |
| 03 | Async e IO | colorless: o processo suspende, sem async/await |
| 04 | Concorrência | shared-nothing: atores + channels + supervisão |
| 05 | Erros | erro é valor: Result + error-sets; sem ?, sem exceção |
| 06 | Ausência | sem null, sem zero-value; ausência é tipada |
| 07 | Tipos | largura arbitrária, decl unifica, satisfação estrutural |
| 08 | Comptime e reflexão | metaprogramação é biblioteca, não mágica |
| 09 | Strings | unidade explícita; comparar é método porque “igual” é ambíguo |
| 10 | FFI | @cimport lê o header; todo C grita sob c. |
| 11 | Ecossistema e tiers | estabilidade vem da arquitetura, e quem é dono da promessa |
| 12 | Nomes honestos | o nome diz a verdade sobre a consequência |
| 13 | Verificação | garantias como uma escada que você sobe uma obrigação por vez, nunca um modo em que você entra |
O fio que costura tudo
Seção intitulada “O fio que costura tudo”Uma frase reaparece em cada decisão: “você só paga pelo que convoca” (o teste do opt-in). E uma imagem governa a arquitetura inteira. A linguagem é feita de subsistemas que se compõem porque nunca se mancham: async não colore o tipo, memória não vaza estratégia, FFI não polui o namespace. O nome Makoto (誠, “sinceridade/verdade”) não é decoração. É a tese encarnada, a recusa de esconder o custo de qualquer coisa. Por isso o doc é honesto sobre o que cada escolha custa (cada arquivo nomeia a fricção aceita), do mesmo jeito que o §1 do design doc.