Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
An Introduction to Haskell
Search
Joe Wang
May 10, 2018
Programming
2
69
An Introduction to Haskell
Joe Wang
May 10, 2018
Tweet
Share
More Decks by Joe Wang
See All by Joe Wang
fastbuild-前端资源打包平台架构与设计及其他
nodew
0
190
An Introduction to Reactive Programming based on RxJS
nodew
0
43
Lazy List With Generator and Iterator
nodew
1
640
ddd.pdf
nodew
0
190
es6 proxy overview
nodew
1
47
Other Decks in Programming
See All in Programming
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
110
nekko cloudにおけるProxmox VE利用事例
irumaru
3
440
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
840
KubeCon + CloudNativeCon NA 2024 Overviewat Kubernetes Meetup Tokyo #68 / amsy810_k8sjp68
masayaaoyama
0
260
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
850
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
3
510
LLM Supervised Fine-tuningの理論と実践
datanalyticslabo
7
1.3k
Keeping it Ruby: Why Your Product Needs a Ruby SDK - RubyWorld 2024
envek
0
190
tidymodelsによるtidyな生存時間解析 / Japan.R2024
dropout009
1
790
命名をリントする
chiroruxx
1
420
Zoneless Testing
rainerhahnekamp
0
120
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
300
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Visualization
eitanlees
146
15k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Optimising Largest Contentful Paint
csswizardry
33
3k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
How GitHub (no longer) Works
holman
311
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Transcript
An Introduction to Haskell Joe Wang
Content History Overview Features by example
Alonzo Church(1930s) Lambda calculus Robin Milner(1973) Meta-Language(ML) John McCarthy(1958) Lisp
Simon Peyton Jones (1990) Haskell 1.0 History
September 12, 1900 – September 1, 1982, American Both `Haskell`
and `Curry` is named after his name Devoted all his life to Combinatorial Logic Haskell Brook Curry
Overview
Overview
Overview A “hello world” example
Feature Pure Function Lazy Evaluation Pattern Matching Monad Powerful Type
system More
Feature Function && Lambda
Feature Function Composition
Feature Recursion && Laziness
Feature Pattern Matching && Guard
Feature Monad What is monad? A monad is just a
monoid in the category of endofunctors
Feature Monad WTF!!!
Feature Monad
Feature Monad
Summary Haskell is an elegant Language High-level abstraction All we
care is the composition of functions and types Lack of learning resources, especially in China Hard to find a work in realworld
The End