Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
An Introduction to Haskell
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Joe Wang
May 10, 2018
Programming
96
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
An Introduction to Haskell
Joe Wang
May 10, 2018
More Decks by Joe Wang
See All by Joe Wang
fastbuild-前端资源打包平台架构与设计及其他
nodew
0
230
An Introduction to Reactive Programming based on RxJS
nodew
0
67
Lazy List With Generator and Iterator
nodew
1
780
ddd.pdf
nodew
0
230
es6 proxy overview
nodew
1
77
Other Decks in Programming
See All in Programming
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
350
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
130
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
330
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
910
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.1k
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
560
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
120
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
290
Building an Out-of-Order CPU
latte72
1
800
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
190
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
490
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Faster Mobile Websites
deanohume
310
32k
Site-Speed That Sticks
csswizardry
13
1.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Agile that works and the tools we love
rasmusluckow
331
22k
WENDY [Excerpt]
tessaabrams
14
39k
Building Adaptive Systems
keathley
44
3.2k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
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