Functional Programming - Deepstash
Functional Programming

Functional Programming

Curated from: joshi-aparna.github.io

Ideas, facts & insights covering these topics:

7 ideas

·

1.6K reads

17

Explore the World's Best Ideas

Join today and uncover 100+ curated journeys from 50+ topics. Unlock access to our mobile app with extensive features.

What Is Functional Programming

What Is Functional Programming

Funcational Programming is a declarative way of programming.

24

547 reads

Immutability

Remember how we assign different values to a variable through out the program? How we use setters in classes to modify the value of class variables? That is not allowed in FP. A variable once set remains unchanged. Sort of like, making all variables final.We usually think of variables as vessels that hold the values. The vessel can hold different values at different times. But in FP, variables are just another name for their values. Like, PI is always 3.14..Ever imagined a different value for PI? No? In the same way, every x, y in your program can now have a single value.

24

216 reads

Functional Purity

If a function returns same value for the same argument every time, then the function is pure. That generally means that, the function cannot use any state values that could potentially change.

23

212 reads

First Class Function

In OOP we treat data and functions separately. In FP, they are all the same. We can create an array of functions, pass a function as argument, return a function from a method.

22

218 reads

Partial Application

Let's say there is a function that takes three arguments. Usually, we need to be aware of all three values to call this function, right? In partial application, the three arguments are provided at different times. I could not find a decent blog that explains this well. Here is the wikipedia page.

23

144 reads

Recursion

Recursion is when a function calls itself and an end condition exists in the function to stop the method call. We could talk about this in depth another day. For now, here is a good explanation.

22

143 reads

Composition

This is a method where we take simple functions and combine them into a more complex function. Let's say we have two methods f(x) = x * 2 //(timesTwo) and f(x) = x - 1 // (minusOne) . And we want to compute f(x) = 2x -1 . You call the timesTwo function first. With the output of timesTwo , you call the minusOne function. How would you code this?

The requirement here is that the next function takes as argument the same type that the previous function returns.

23

125 reads

IDEAS CURATED BY

CURATOR'S NOTE

Not your object oriented programming

Aparna R's ideas are part of this journey:

Machine Learning With Google

Learn more about computerscience with this collection

Understanding machine learning models

Improving data analysis and decision-making

How Google uses logic in machine learning

Related collections

Read & Learn

20x Faster

without
deepstash

with
deepstash

with

deepstash

Personalized microlearning

100+ Learning Journeys

Access to 200,000+ ideas

Access to the mobile app

Unlimited idea saving

Unlimited history

Unlimited listening to ideas

Downloading & offline access

Supercharge your mind with one idea per day

Enter your email and spend 1 minute every day to learn something new.

Email

I agree to receive email updates