Curso Fast Track to Haskell

  • Blockchain | NFT | DeFi | Metaverse

Curso Fast Track to Haskell

24 horas
Visão Geral

Curso Fast Track to Haskell, um curso direcionado a desenvolvedores com conhecimento em qualquer linguagem de programação, mas com pouco ou nenhum conhecimento de Haskell. O curso abrange todos os conceitos básicos da linguagem Haskell, o sistema de tipos Haskell e as bibliotecas principais. O curso não mostra apenas os recursos da linguagem, mas também enfatiza a filosofia do Haskell e a programação funcional. Ele mostra como os programadores podem usar o sistema de tipos para trabalhar para eles e deixá-lo guiá-los na escrita de seus programas, e demonstra como estruturar sistematicamente o código (com e sem efeitos colaterais) em uma linguagem como Haskell.

Sendo Haskell o principal exemplo de uma linguagem de programação puramente funcional bem projetada, este curso também é excelente para pessoas que geralmente estão interessadas em programação funcional, mas desejam aplicar conceitos de programação funcional em outras linguagens, como por exemplo Scala ou F#.

Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

An Overview of Haskell

  1. A brief overview of all important Haskell concepts

Type-directed Programming

  1. Pattern matching and function definitions
  2. Basic datatypes: lists, Bool, tuples, Maybe
  3. Defining new datatypes
  4. Haskell syntax

Polymorphism and higher-order functions

  1. Parametric polymorphism
  2. Overloading and type classes
  3. Basic type classes: Eq, Ord, Show, Read
  4. Numeric types and classes
  5. Higher-order functions: filter, map, …
  6. Composing functions
  7. Abstracting from design patterns: foldr, foldl, …
  8. The Functor class
  9. Haskell module system
  10. Finite maps and sets

Input/Output

  1. How to model side effects in Haskell
  2. The IO type
  3. Composing IO actions
  4. How to separate IO code from “pure” code
  5. do notation
  6. IO-based libraries (random numbers, file IO, …)
  7. Derived high-level IO functions

Testing (if time permits)

  1. QuickCheck, a library for testing in Haskell
  2. Properties as Haskell functions
  3. Random test-case generation
  4. How to debug code using QuickCheck
  5. How QuickCheck works internally
  6. Advanced ways to define properties
  7. How to tweak test-case generation
  8. The HPC (Haskell Program Coverage) tool

Applicative functors and Monads

  1. Abstracting from common patterns
  2. How Maybe-based code can be simplified
  3. How explicit state passing can be modelled
  4. The Applicative and Monad classes
  5. More examples
  6. IO as a monad
  7. Library functions on applicatives and monads
TENHO INTERESSE

Cursos Relacionados

Curso Blockchain Visão Geral Para Negócios

16 horas

Curso Blockchain Opportunity Analysis

16 horas

Curso BIM Foundation para Engenheiros

16 horas

Curso App BIM para Engenheiros

24 Horas

Curso Blockchain with Ethereum & Solidity

16 horas

Curso Ethereum Developer Foundation

32 horas

Curso Blockchain Solution Architecture

24 horas

Curso Blockchain for Healthcare

24 horas