The Complete Haskell Course: From Zero to Expert!

The Complete Haskell Course: From Zero to Expert!

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 97 lectures (21h 54m) | 6.79 GB

The modern Haskell course for everyone! Master Haskell with projects, challenges and theory. Many courses in one!

This course is designed to give you the Haskell skills you need to become a Haskell developer. By the end of the course, you will understand Haskell extremely well and be able to build your own Haskell apps and be productive as a computer scientist and software developer.

What makes this course a bestseller?

Like you, thousands of others were frustrated and fed up with fragmented Youtube tutorials or incomplete or outdated courses which assume you already know a bunch of stuff, as well as thick, college-like textbooks able to send even the most caffeine-fuelled coder to sleep.

Like you, they were tired of low-quality lessons, poorly explained topics, and confusing info presented in the wrong way. That’s why so many find success in this complete Haskell developer course. It’s designed with simplicity and seamless progression in mind through its content.

This course assumes no previous coding experience and takes you from absolute beginner core concepts. You will learn the core Haskell skills and master functional programming. It’s a one-stop shop to learn Haskell. If you want to go beyond the core content you can do so at any time.

Here’s just some of what you’ll learn

(It’s okay if you don’t understand all this yet, you will in the course)

All the essential Haskell keywords, facts, relations, arguments and expressions needed to fully understand exactly
what you’re coding and why – making programming easy to grasp and less frustrating.

You will learn the answers to questions like What is a Haskell database, What are rules and models and to apply them to your Haskell apps.

Functions and Main Structure of Pattern Matching Systems along with dealing with uncertainty and knowledge representation.

Complete chapters on Functional programming and many aspects of the Haskell Recursive mechanism (the protocols and tools for building applications) so you can code for all platforms and derestrict your program’s user base.

How to develop powerful Haskell applications using Advanced Tree Representations and Module-Directed Programming.

What you’ll learn

  • Become an advanced, confident, and modern Haskell developer from scratch
  • Become job-ready by understanding how Haskell really works behind the scenes
  • Haskell fundamentals: variables, if/else, operators, boolean logic, functions, arrays, objects, loops, strings, etc.
  • How to think and work like a developer: problem-solving, researching, workflows
  • Get fast and friendly support in the Q&A area
  • Complex concepts like the ‘Monad’ class, higher-order functions, etc.
  • Practice your skills with 50+ challenges and assignments (solutions included)
Table of Contents

Course Introduction
Introduction to Haskell
Basic Fundamentals
Haskell Interpreter

Basic Types
Basic Types Part 1
Basic Types Part 2

Introduction to Functions
Definition with Patterns
Definition with Guards
Local Definitions

Solved Problems Functions
Absolute Value
Prime Number

Introduction to Tuples
Access to Tuples
Decomposition of Tuples into Patterns
Empty Tuple Unit

Introduction to Lists
Construction and Implementation
Lists and Patterns
Syntax in Patterns
Common Functions

Solved Problems Lists
Problem 1 Last Element of a List
Problem 2 Penultime Object
Problem 3 Duplicate Elements
Problem 4 Average
Problem 5 Insertion in Position

Higher Order Functions
Higher Order Functions
Anonymous Functions

Solved Problems Higher Order Functions
Problem 1 Equality Problem
Problem 2 Product of Elements
Problem 3 Even Result
Problem 4 Infinite Powers of Two
Problem 5 Scalar Product
Problem 5 Scalar Product Extension
Problem 6 Flattening of Lists
Problem 7 Length
Problem 8 Reverse
Problem 9 Occurrences
Problem 10 First Word
Problem 11 Conditional Count
Problem 12 Combination of Applications
Problem 13 Consecutive Functions
Problem 14 Filter Fold

Solved Problems Infinite Lists
Problem 1 Infinite Ones
Problem 2 Natural Numbers
Problem 3 Infinite Integers
Problem 4 Triangular Numbers Part 1
Problem 4 Triangular Numbers Part 2
Problem 5 Factorial Dimension
Problem 6 Fibonacci Sequence
Problem 7 Prime Numbers
Problem 8 Hamming Numbers

Binary Trees
Fundamentals of Binary Trees

Solved Problems Binary Trees
Problem 1 Tree Size
Problem 2 Height
Problem 3 Equivalent Trees
Problem 4 Isomorphism
Problem 5 Preorder Traversal
Problem 6 Postorder Traversal
Problem 7 Inorder Traversal
Problem 8 Breadth First Search

Multiway Trees
Fundamentals of Multiway Trees

Solved Problems Multiway Trees
Problem 1 Number of Nodes
Problem 2 Construction on Information
Problem 3 Path Length
Problem 4 BottomUp

Fundamentals of Graphs

Solved Problems Graphs
Problem 1 Acyclic Paths
Problem 2 Depth First Search
Problem 3 Connected Components

Introduction to Monads
Bind Operator
Monads Operations
Monads Instances Either Maybe and Lists
Monad Laws
Do Notation
Do Notation Example

Input and Output
Introduction to Input and Output
Working with Input and Output

Solved Problems Input and Output
Problem 1 Groups
Problem 2 Cities
Problem 3 Sum of Elements
Problem 4 Conditional Sort
Problem 5 Computer Game

Final Exams
Exam 1 Problem 1
Exam 1 Problem 2
Exam 2 Problem 1
Exam 2 Problem 2
Exam 2 Problem 3