Type-safe embedded domain-specific languages
Language is everything; it governs our lives: from our thought
processes, our communication abilities and our understanding of the
world, all the way up to law, politics, logic and programming. All of
these domains of human experience are governed by different languages
that talk to each other, and so should be your code. Haskell provides
all the means necessary—and many more—to easily and safely use
embedded small languages that are tailored to specific needs and
business domains.
In this series of lectures and workshops, we will explore the whats,
whys and hows of embedded domain-specific languages in Haskell, and
how language oriented programing can bring type-safety, composability
and simplicity to the development of complex applications.
Slides
Workshop
Videos
Sobre programas e funções: pensando em abstração
Programação funcional é uma ótima ferramenta para controle de
complexidade. Não é à toa que é um paradigma que está em crescente
evolução e uso. Nesta palestra será abordado o processo de abstração
em programação funcional e como duas abstrações (ou padrões)
específicas podem garantir complexidade sem dificuldade.
Slides
Video
Programação funcional em JavaScript: como e por quê?
Slides
Video
Introdução à programação funcional tipada
Programação funcional é um assunto pertinente que todo mundo tem
ouvido falar, principalmente se você é desenvolvedor front-end. Mas
afinal, o que é, pra que serve e como você usar pra escrever código
mais correto, mais simples e mais sustentável? Nesta parte do
workshop serão respondidas todas estas questões e veremos na prática
como utilizar conceitos de programação funcional para aprender a
escrever uma pequena aplicação em Elm, uma linguagem de programação
funcional pura para aplicações front-end com foco em simplicidade e
facilidade de aprendizado.
Slides
Workshop (incomplete)
Programação funcional no desenvolvimento de aplicações: pensando em corretude
Desenvolver aplicações não é fácil. Desenvolver aplicações corretas e
sem bugs, menos ainda. Se você é desenvolvedor, provavelmente tem
ouvido falar de programação funcional recentemente. Este paradigma de
programação profundamente declarativo tem ressurgido por permitir um
melhor entendimento dos programas, reduzir bugs e facilitar
refatorações. Nesta palestra falarei sobre minha experiência com o
uso do paradigma funcional e de linguagens funcionais, e sobre como
estes podem ajudar no desenvolvimento de aplicações mais corretas.
Video
Você provavelmente já ouviu falar de Elm e suas promessas incríveis,
mas você não quer reescrever tudo do zero, nem deixar a comunidade
React. E se você pudesse ter todos os benefícios de Elm, enquanto
ainda usa seus componentes React, misturando JavaScript e uma
linguagem mais simples e poderosa, com um excelente sistema de tipos?
Venha conhecer então PureScript e a biblioteca Pux!
Slides
Programação funcional no front end com Elm: por quê isto é importante?
Se você é desenvolvedor front end, provavelmente muito tem ouvido
falar acerca de programação funcional nos últimos tempos. Este
paradigma de programação declarativa tem estado sob os holofotes
recentemente por permitir um melhor entendimento dos programas,
reduzir bugs e facilitar refatorações. Nesta palestra vamos aprender
um pouco sobre programação funcional e sobre a linguagem Elm, uma
linguagem de programação funcional pura voltada para a construção de
interfaces web que promete "zero exceções de runtime" graças à sua
tipagem estática. A linguagem Elm, criada especificamente com o
propósito de ser uma linguagem para o desenvolvimento web front end,
possui boa reputação de ser fácil e divertida graças a seu compilador
— aclamado por possuir mensagens de erro incrivelmente úteis —,
velocidade de execução, ferramentas auxiliares e uma comunidade que
está crescendo em ritmo acelerado.
Slides