0:00
2:39:08
2:39:08

Haskell Programming Full Course 2024

Education

Hey friends, and welcome to yet another course. This time, we have Haskell in the house! I am going to walk with you a bit in the world of Haskell with this comprehensive 2 hours and 38 minutes course designed to take you from a complete beginner to a Haskell-aware programmer ! 📌 Course Timestamps: 0:00 - Motivating you by a pre-intro intro! 0:42 - Intro!! 2:03 - History Lesson on Haskell 3:46 - Install GHC - Haskell Compiler 6:54 - GHCI - Haskell Interpreter 7:10 - Hello, World! 8:01 - Compiling your Haskell file 8:59 - Chapter 1: Features and Syntax 37:48 - Chapter 2: Constructs 40:42 - Pattern Matching 45:06 - Guards 54:34 - Where Clause 57:42 - Recursion 1:02:40 - Higher Order Functions 1:17:00 - Lambda Expressions 1:19:15 - Chapter 3: More Functions + Function Composition 1:31:23 - Chapter 4: Modules in Haskell 1:51:45 - Chapter 5: I/O in Haskell 2:03:51 - Chapter 6: Functors in Haskell 2:14:15 - Chapter 7: Monads in Haskell 2:24:23 - Chapter 8: Monoids in Haskell 2:31:58 - Chapter 9: Zippers in Haskell 2:37:00 - Thanks guys for watching! 🔧 What You'll Learn: The rich history and evolution of Haskell Installing and setting up the GHC compiler Basics of Haskell syntax and features Constructs, pattern matching, guards, and more Advanced topics like recursion, higher-order functions, and lambda expressions Deep dive into modules, I/O, functors, monads, monoids, and zippers 📚 Resources: Official Haskell Documentation: haskell.org GHC Compiler: ghc 💡 Why Learn Haskell? Haskell is a powerful, purely functional programming language known for its expressiveness and high-level abstractions. It's widely used in academia and industry for tackling complex problems with elegant solutions. 🔔 Don't forget to Like, Share, and Subscribe for more content! 🅿️ Support the channel if you want: - Become a Patron: https://www.patreon.com/bekbrace - Become a member: Join @BekBrace - Buy me a coffee: https://ko-fi.com/bekbrace 🪙 Bitcoin address: bc1q0nk7e0mjmcjzy5c8p8kzr8smem46ug5mrnh2td #️⃣ Social Media: 𝕏: https://twitter.com/BekBrace IG: https://www.instagram.com/bek_brace/ FB: https://www.facebook.com/bekbrace Thank you for watching, and happy coding! 🎉 #Haskell #FunctionalProgramming #ProgrammingCourse #LearnHaskell #CodingTutorial #BeginnerToPro #TechEducation #CodeWithMe #HaskellModules #HaskellIOTutorial #AdvancedHaskell

ADVERTISEMENT

Comments 44

Sign in to join the conversation

Sign in
J
joe_hammond 2 months, 3 weeks ago

The man in the middle picture at 3:05 is Philip Wadler not Paul Hudak. Both men are relevant to haskell. Hudak was more involved with language's design and implementation, where Wadler was more theoretically focussed.

E
eshana.modi 3 months, 3 weeks ago

I love haskell. Im a noob programmer and can make a simple tui game with it.

B
beth_burton 4 months, 2 weeks ago

Nice course, but the description starting with monads goes too fast, even for a JavaScript developer with some basic understanding of functional theory :(

D
daniela_campos 4 months, 4 weeks ago

i would pronounce intercalate with cal as in “calendar”, but who knows

revadawn74
revadawn74 5 months ago

Hi Amir. I thank you for your great content. I looked at your other interesting YouTube channel. I would love to be able to read and speak all of those languages. Very nice. All the best to you. Большое спасибо. Хороший человек.

zinalsood865
zinalsood865 5 months ago

… again, a lot of unused space on the screen! Why not use it fully with larger fonts! Think about those following you on smartphones …

keith.mitchell
keith.mitchell 5 months, 2 weeks ago

I have quite a bit of experience in mathematical logic (I have to learn Haskell to help build a lambda calculus interpreter), and I was surprised to find quite a few category theory concepts on here.

E
eshana.modi 6 months, 1 week ago

At 36:35: It does matter whether you use single or double quotation marks! Single quotes means single character, double quotes means character array (string). In Haskell, 'c' is a single character ( Char ), and "c" is a list of characters ( [Char] ). And [Char] is the same as String. It is important because there has to be a distinction between single elements and a list of elements.

L
lauragallegos937 6 months, 1 week ago

Around 31:20: You repeatedly call something of type [Char] of type Character, which is of course not true, as it is of type *list* of Characters (aka String). Just for other viewers out there who might get confused.

A
ann_lewis 7 months, 2 weeks ago

:45 why do you not need 'let' when defining this function

S
sébastienraven35 9 months, 1 week ago

bro learn vim! Instead of going v then llllllllllll then y you can just go yy

vincent_keer
vincent_keer 9 months, 1 week ago

I will need this for My Programming Languages Class. Thanks!!

S
sherrybaker792 10 months, 2 weeks ago

I was surprised to find out that this course was made by a fellow Egyptian! :D

G
gaelhenriquedapaz405 10 months, 3 weeks ago

1:07:08 release the list.

gesine_schinke
gesine_schinke 10 months, 3 weeks ago

shoutout to that one quarter egyptian person

M
matthewjimenez802 10 months, 3 weeks ago

Scala that has suffered the most under Haskell influence, isn't mentioned but Python is ? 😅

kerry_nicholson
kerry_nicholson 10 months, 4 weeks ago

nice video for beginners with other language base

C
courtneyatlas82 1 year ago

Thanks for the crash course, very beneficial for my exam. Btw in1:15:43 you could have given a better example, it seems like takeWhile and filter has the same functionality in those examples.

matthewmist72
matthewmist72 1 year ago

For those of us who watch videos with subtitles, writing at the bottom of the screen is not the best option.

caitlin_macdonald
caitlin_macdonald 1 year, 2 months ago

why you have version 8.8.4?