Base de conhecimento sobre Clojure do Caramelo Tech, com foco em programação funcional para iniciantes.
As notas deste repositório são publicadas no site do Caramelo Labs.
- Anotações sobre fundamentos de Clojure e programação funcional
- Projeto Leiningen com namespaces práticos para explorar no REPL
- Exercícios hands-on para fixação de conceitos
- Mini projetos aplicados
| Tópico | Descrição |
|---|---|
| Introdução ao Clojure | Ambiente, sintaxe, atalhos, threading e boas práticas |
| Coleções | Vetores, mapas, reduce, ordenação, lazy vs eager |
| Refs, Átomos e Concorrência | Filas persistentes, threads, átomos e retries |
| Testes | Introdução ao clojure.test |
clojure-labs/
├── notes/ → Anotações em Markdown puro (publicadas no site do Caramelo Labs)
├── sidebar.json → Seções da barra lateral no site
├── examples/ → Projeto Leiningen com exemplos, exercícios e projetos
└── .github/ → Workflows, templates e guias de contribuição
Este repositório contém apenas conteúdo - não há build, dependências ou configuração de site. A estrutura web (Astro + Starlight) vive no repositório hub labs, que busca as notas daqui a cada atualização e publica o site.
As notas em notes/ são Markdown puro, sem frontmatter:
- A primeira linha da nota deve ser o título:
# Título da Nota - Use prefixo numérico no nome do arquivo para controlar a ordem na barra lateral:
1-introducao.md,2-exemplos.md - Agrupe por tema em subpastas (
1-introducao/,2-colecoes/, ...) - Imagens ficam junto das notas (ex:
notes/secao/assets/img.png) e são referenciadas com caminho relativo: - Links para outras notas do site usam o caminho completo:
/labs/clojure/<secao>/<nota>/
Ao criar uma nova subpasta de tema, adicione a seção correspondente em sidebar.json.
- Comece pelas anotações em
notes/(ou pelo site) - Explore o projeto Leiningen em
examples/via REPL - Resolva os desafios em
examples/exercises.md - Construa os projetos em
examples/projects.md
O diretório examples/ continua sendo um projeto Leiningen funcional.
cd examples
lein repl
lein runContribuições são bem-vindas. Veja o Guia de Contribuição para detalhes.
MIT
Daniele Araujo 💻 🖋 💡 🤔 |
Samantha Kellen 💻 🖋 💡 🤔 |
