Coming from another language
Every Makoto concept next to its equivalent, or its deliberate absence.
Material de estudo pra quem já programa em outra linguagem e quer aprender a Makoto no nível de conceito: cada conceito da linguagem, com o exemplo em Makoto, o equivalente (ou a ausência proposital dele) em cada linguagem e a diferença que importa.
- 184 conceitos em 24 seções — implementado: 152 · parcial: 11 · planejado: 11 · não existe (por design): 10
- Exemplos foram compilados e executados no
mkatual (fase de bug-fix, 2026-09). - planejado = está no design (
docs/english/) mas ainda não no compilador.
Arquivos
Section titled “Arquivos”| Arquivo | Conteúdo |
|---|---|
makoto-mappings.html |
Tudo num HTML interativo: busca, filtros, linguagens lado a lado, stdlib e guia C |
| makoto-vs-c.md | Makoto × C + guia prático de portar código de kernel/syscalls |
| makoto-vs-javascript.md | Makoto × JavaScript |
| makoto-vs-typescript.md | Makoto × TypeScript |
| makoto-vs-java.md | Makoto × Java |
| makoto-vs-rust.md | Makoto × Rust |
| stdlib.md | Stdlib implementada e planejada, com equivalentes |
Seções
Section titled “Seções”- Filosofia e modelo mental — 7 conceitos
- Declarações e tipos básicos — 16 conceitos
- Controle de fluxo — 10 conceitos
- Funções, lambdas, métodos e despacho — 10 conceitos
- Tipos: struct, enum, interface, union — 15 conceitos
- Coleções e Optional — 7 conceitos
- Strings e texto — 8 conceitos
- Erros: Result, conjuntos de erro, catch — 9 conceitos
- Memória: gerenciamento sem cor, ponteiros, ownership — 15 conceitos
- Concorrência: processos e canais — 9 conceitos
- Supervisão e resiliência (let it crash) — 5 conceitos
- Canais pela rede (
net) — 2 conceitos - Generics, comptime e reflexão — 10 conceitos
- Geradores (sequências preguiçosas) — 2 conceitos
- Contratos (DbC), assert/assume e unsafe — 5 conceitos
- FFI com C (e C++) — 9 conceitos
- Assembly inline — 4 conceitos
- Módulos, visibilidade e pacotes — 6 conceitos
- Observabilidade do runtime — 3 conceitos
- Testes, benchmarks, property-based e fuzzing — 5 conceitos
- Extensão UI (
.mkoui) — 7 conceitos - Camada de verificação (planejada) — 6 conceitos
- Ferramentas (
mk) — 3 conceitos - Guia prático: portar código C de kernel/syscalls pra Makoto (só em C) — 11 conceitos
Regerar
Section titled “Regerar”python3 docs/mappings/_gen/build.pyOs dados ficam em _gen/concepts_*.py (conceitos) e _gen/stdlib.py; edite lá e regere.