Functional Programming with Python
Shagun Sodhani
PyDelhi Conference, 2017
About Me
- Developer with Analytics and Data Science team @Adobe.
- Works in Deep Learning applied to NLP.
- Teaching Assistant for Big Data course on Edx .
- Doing a Q&A session on Deep Learning with CommonLounge.
Agenda
- Introduction to Functional Programming
- Functional Programming in Python
- Functions in Action
Functional Programming
- Functions as the fundamental building blocks for any program.
- Focus on computing results rather than on performing actions.
- Describe what is to be done and not on how it is to be done.
- Leads to concise and safe code (less OffByOne mistakes)
Talk is cheap. Show me the code.
Linus Torvalds
Why Should I care
- Big Data and Distributed Computing
-
Deep Learning
- "weight tying" - using multiple copies of a neuron in different places is the neural network equivalent of using functions
Message from our BDFL
From http://python-history.blogspot.in/2009/04/origins-of-pythons-functional-features.html
The Missing Pieces
- Immutable Data Structures
- Pattern Matching
- Lazy Evaluation
- Tail Call Optimization
- Large Collection of List functions
Python does not promote functional programming even though it works fairly well.
Thank You
Shagun Sodhani
Functional Programming with Python
By Shagun Sodhani
Functional Programming with Python
For PyDelhi Conference 2017
- 1,968