A 30-minute introductory presentation on the Haskell programming language
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Peter J. Jones 1879888687 Add a dark version of the intro image 6 years ago
banners Add a dark version of the intro image 6 years ago
src Finish the 30-minute version of this presentation 6 years ago
README.md Add a dark version of the intro image 6 years ago
notes.org Add a better README file 6 years ago
slides.el Remove a few slides 6 years ago


Introduction to Haskell

Introduction to Haskell


  1. What is Haskell?

  2. Why is Haskell hard to learn for programmers?

  3. Short case study of why you should be using Haskell.

What is Haskell?

Haskell, a general purpose, purely-functional programming language.

Slides: banners/haskell.txt.

Why is Haskell Hard to Learn for Programmers?

Haskell approaches programming from a completely different perspective than most programming languages. While imperative programming languages provide abstractions over instructions executing on the CPU, Haskell provides abstractions over concepts from mathematics and computer science.

It’s the responsibility of the compiler to translate our formula-looking Haskell code into imperative instructions that run on the CPU.

Language comparisons:

Short Case Study of Why You Should Be Using Haskell

This is just one small example of where Haskell makes a big impact in the quality of the products we create.

  • Null pointers and nil objects are a huge runtime problem in many languages. Don’t believe me? Look at this and this.

  • Does it really make sense that nil can be substituted for any other type? Haskell doesn’t think so.

  • Haskell doesn’t have a null or nil type. Instead there are much more powerful user defined types that serve the same purpose but are completely safe because they don’t substitute for other types.

  • This removes an entire class of runtime errors and makes your code compile-time safe. Example code.

More Information