Talks

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

PureScript & Pux

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