Curso Haskell Computer Programming

  • Blockchain | NFT | DeFi | Metaverse

Curso Haskell Computer Programming

24 horas
Visão Geral

Curso Haskell Computer Programming, Haskell é uma linguagem de programação de computador. Em particular, é uma linguagem polimorficamente tipada estaticamente, preguiçosa e puramente funcional, bem diferente da maioria das outras linguagens de programação. A linguagem recebeu o nome de Haskell Brooks Curry, cujo trabalho em lógica matemática serve de base para linguagens funcionais.

Pre-Requisitos
  • Familiaridade com pelo menos uma outra linguagem de programação. Experiência em programação
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico

Introduction to Haskell

  1. Platform and tools
  2. A bit of history

Haskell syntax

  1. Functions
  2. Case distinction and pattern matching
  3. Layout
  4. Control structures (if, case, let, where)

Type system

  1. Basic types
  2. Simple function types
  3. Polymorphism
  4. Higher order functions
  5. Custom types
  6. Numbers in Haskell
  7. Type classes

Building programs

  1. IO handling
  2. Module system
  3. Packages and libraries
  4. Compiling applications

Examples and case studies

  1. Eight queens puzzle in Haskell
  2. Dynamic programming and memoization in Haskell
  3. Simplified parsing of CSV files
  4. An HTTP client

Basic Typeclassopedia

  1. Functor
  2. Applicative
  3. Foldable, Traversable
  4. Monads
  5. Other

Advanced types

  1. Algebraic data types in depth
  2. Advanced Type classes
  3. Type families
  4. GADTs

Debugging and code optimizing

  1. Strictness in data types and functions
  2. Memory and CPU profiling
  3. Efficient data structures
  4. Note on "unsafes"

Understanding the Runtime System

  1. Memory layout in GHC
  2. Unpacking strict fields
  3. Understanding and reading Core

Concurrency in Haskell

  1. Haskell threads
  2. MVars and co.
  3. STM
  4. Parallelism

Foreign Function Interface

  1. FFI basics
  2. Safe vs. unsafe
  3. Globals in Haskell

Template Haskell

  1. Splicing and quotation
  2. The Q monad
  3. Reification
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