Neste semestre, decidi experimentar algo diferente na disciplina Introdução à Programação Funcional.
Em vez de manter o foco integral em Haskell, utilizei a linguagem apenas no primeiro terço do curso, como base conceitual.
Nas etapas seguintes, os estudantes trabalharam com duas stacks funcionais amplamente utilizadas na web: Clojure/ClojureScript e Elixir/Phoenix LiveView.
O objetivo era duplo: explorar a aplicabilidade prática da programação funcional moderna e investigar o papel da Inteligência Artificial na produção de materiais didáticos e arquiteturas de software.
Duas abordagens, um mesmo problema
Ambos os tutoriais resolvem o mesmo desafio: desenvolver uma aplicação Todo List completa e persistente, mas com filosofias distintas.
| Versão | Stack | Abordagem |
|---|---|---|
| Clojure/ClojureScript | Reagent 2.0 (React 18), Ring, Reitit, next.jdbc | Reatividade explícita no frontend e API REST modular |
| Elixir/Phoenix LiveView | LiveView, Ecto, Tailwind | Reatividade integrada no backend, sem API intermediária |
Os dois tutoriais podem ser acessados aqui:
- Clojure/ClojureScript: Construindo uma Aplicação Persistente e Reativa
- Elixir/Phoenix LiveView: Criando um App Todo List do Zero
O papel da Inteligência Artificial
Os tutoriais foram produzidos em colaboração com diferentes modelos de IA — ChatGPT, Gemini e Perplexity — a partir de prompts detalhados.
As IAs conseguiram gerar código funcional e explicações coerentes, mas sem estrutura pedagógica.
Faltava a intencionalidade didática: o porquê de cada decisão, o encadeamento entre etapas e a reflexão sobre erros comuns.
As IAs entregaram aproximadamente 80% do trabalho técnico.
Os 20% restantes — os mais importantes — dependeram de engenharia humana: testar, corrigir, modularizar e transformar o material em uma narrativa de aprendizagem.
Foram cerca de seis horas de curadoria, revisão e depuração, até que o conteúdo atingisse um padrão consistente e instrutivo.
“Produzir código com IA é simples. Transformá-lo em conhecimento exige experiência, método e propósito.”
O que essa experiência revelou
O processo reforçou uma lição essencial: a IA é uma ferramenta poderosa para acelerar o desenvolvimento e inspirar soluções,
mas a mediação humana continua insubstituível.
É o professor, o pesquisador e o engenheiro que atribuem sentido, constroem contexto e transformam o código em aprendizado.
Esses tutoriais representam mais do que guias técnicos.
São um experimento sobre como ensinar programação funcional no século XXI, integrando tecnologia, pedagogia e reflexão crítica sobre o papel da inteligência artificial no processo de aprendizagem.
📚 Referências dos tutoriais
- Tutorial Clojure/ClojureScript: Construindo uma Aplicação Persistente e Reativa
- Como Criar um App Todo List com Elixir e LiveView do Zero
Publicado por Sergio Costa
#Clojure #Elixir #ProgramaçãoFuncional #Educação #InteligênciaArtificial #Des
Top comments (0)