Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
Programs that Play better than Us
Melvin Zhang
Building a Turing Machine emulator to explore Turing's great ideas
Melvin Zhang
Lessons from Developing an AI to Play Magic: The Gathering
Melvin Zhang
Binary Lambda Calculus and Combinatory Logic
Melvin Zhang
AMKSS Career Conference 2015: Programming
Melvin Zhang
Building a state of the art AI to play Magic: The Gathering
Melvin Zhang
Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search
Melvin Zhang
Quest for the optimal algorithm
Melvin Zhang
1
of
17
Top clipped slide
Functional programming from first principles
Apr. 17, 2015
•
0 likes
2 likes
×
Be the first to like this
Show More
•
992 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Software
Talk given at Friday Hacks #93
Melvin Zhang
Follow
Programmer at Cosmiqo · Magarena
Advertisement
Advertisement
Advertisement
Recommended
Opening The Web
jamierumbelow
300 views
•
50 slides
SXSW2013-Jenson
Scott Jenson
2.4K views
•
27 slides
How Alan Turing accidentally invented Software
Melvin Zhang
151 views
•
21 slides
Solving the TSP for warehouses
Melvin Zhang
86 views
•
31 slides
Optimize all the things with MiniZinc
Melvin Zhang
270 views
•
16 slides
AMKSS Career Conference 2018: Software Engineering
Melvin Zhang
105 views
•
35 slides
More Related Content
More from Melvin Zhang
(13)
Programs that Play better than Us
Melvin Zhang
•
246 views
Building a Turing Machine emulator to explore Turing's great ideas
Melvin Zhang
•
311 views
Lessons from Developing an AI to Play Magic: The Gathering
Melvin Zhang
•
489 views
Binary Lambda Calculus and Combinatory Logic
Melvin Zhang
•
1.2K views
AMKSS Career Conference 2015: Programming
Melvin Zhang
•
378 views
Building a state of the art AI to play Magic: The Gathering
Melvin Zhang
•
4.2K views
Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search
Melvin Zhang
•
1.1K views
Quest for the optimal algorithm
Melvin Zhang
•
736 views
Playing Games by Throwing Dice
Melvin Zhang
•
351 views
Becoming a better problem solver: a CS perspective
Melvin Zhang
•
707 views
Ortholog assignment
Melvin Zhang
•
2.4K views
Building pipelines with Make
Melvin Zhang
•
281 views
Opportunities in STEM
Melvin Zhang
•
198 views
Recently uploaded
(20)
Dare to Lead: Brave Work. Tough Conversations. Whole Hearts.
denisehawkins7
•
0 views
SE_RE-II-CH5 (3).pdf
AZKANAAZ1
•
0 views
Station Eleven
megedwards5
•
0 views
API (Application program interface)
Muhammad Jahanzaib
•
0 views
reverse engineering.pptx
alishahid244986
•
0 views
Introduction to Databases
Muhammad Jahanzaib
•
0 views
Burn After Writing (Celestial)
denisehawkins7
•
0 views
Some benefits of hiring Offshore Development Team.pdf
Go-Tech Solution
•
0 views
Woke Up This Morning: The Definitive Oral History of The Sopranos
denisehawkins7
•
0 views
Untamed
megedwards5
•
0 views
Viral: The Search for the Origin of COVID-19
denisehawkins7
•
0 views
Object Oriented Programming
Muhammad Jahanzaib
•
0 views
Sapiens: A Brief History of Humankind
denisehawkins7
•
0 views
Top 10 Unblocked Games by Ben.pptx
Ali Raza
•
0 views
Production-ready GraphQL with Caliban
Pierre Ricadat
•
0 views
It Consulting & Services - Black Basil Technologies
Black Basil Technologies
•
0 views
CS283-PublicKey.ppt
ShounakDas16
•
0 views
Conversational AI Management Simplified: Introducing E.D.D.I with Quarkus
Gregor Jarisch
•
0 views
Sakha - Corporate Profile
Sakha Global
•
0 views
The Hawthorne Legacy (The Inheritance Games, #2)
megedwards5
•
0 views
Advertisement
Functional programming from first principles
Functional Programming from First
Principles <v> := a|b|c|...|z <e> := <v>|(<v> <e>)|(<e> <e>) Presented by Melvin Zhang melvin@melvinzhang.net
http://www.cosmiqo.com
http://magarena.github.io
http://www.ioccc.org/2012/tromp/tromp.c
John Tromp, https://tromp.github.io/
http://www.quotessays.com/bio/alonzo-church.html
http://www.princeton.edu/turing/alan/photos/
The Church-Turing thesis
Demo!
Functions are values.
Functions have no
side effects.
May be lazy
or eager.
May be untyped
or typed.
Further readings • Church’s
Thesis and Functional Programming, David Turner (2006) • http://www.ioccc.org/2012/tromp/hint.html • http://github.com/melvinzhang/binary-lambda- calculus
http://www.meetup.com/Singapore-Clojure-Meetup/
Advertisement