0:00
31:40
31:40

Functional Programming in 40 Minutes • Russ Olsen • GOTO 2024

Education

This presentation was recorded at GOTO Copenhagen 2024. #GOTOcon #GOTOcph https://gotocph.com Russ Olsen - Author of "Getting Clojure" & "Eloquent Ruby" @russolsen3122 RESOURCES https://bsky.app/profile/russolsen.bsky.social https://hachyderm.io/@russolsen https://twitter.com/russolsen https://github.com/russolsen https://www.linkedin.com/in/russolsen http://russolsen.com Links https://tjoye20.medium.com/ruby-access-control-basics-public-vs-private-vs-protected-methods-7788b26e04a7 https://www.tutorialspoint.com/cplusplus/cpp_friend_functions.htm https://docs.oracle.com/javase/tutorial/java/generics/genTypes.html https://pedestal.io ABSTRACT Functional programming has finally escaped from academia. These days developers are building real systems in functional programming languages like Clojure, Scala, Elixir and F#. Functional techniques are also seeping into more traditional languages like Java and Ruby. Unfortunately somewhere along the way functional programming has also developed a reputation for being deep and mysterious: Good programs achieve the Zen-like state of being functional which somehow involves immutability, higher order functions and being referentially transparent. In this talk Russ Olsen will strip away the cloud of mystery to uncover the simple — and wonderful — truth about functional programming: It can make your programming life easier by letting you do simple things simply while also providing you with the sharp tools you need to tackle more complex problems. [...] TIMECODES 00:00 Intro 01:29 Agenda 01:55 What is it? 26:20 What's it like? 29:15 Does it work? 31:21 Outro Download slides and read the full abstract here: https://gotocph.com/2024/sessions/3325 RECOMMENDED BOOKS Russ Olsen • Getting Clojure • https://amzn.to/3J8zI8s Russ Olsen • Eloquent Ruby • https://amzn.to/37gOhcG Russ Olsen • Design Patterns in Ruby • https://amzn.to/3r2uBjW https://bsky.app/profile/gotocon.com https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.instagram.com/goto_con https://www.facebook.com/GOTOConferences #FunctionalProgramming #Clojure #Scala #Elixir #Fsharp #RussOlsen #Immutability #FunctionalProgrammingTutorial #FPTutorial #LearningFunctionalProgramming CHANNEL MEMBERSHIP BONUS Join this channel to get early access to videos & other perks: https://www.youtube.com/channel/UCs_tLP3AiwYKwdUHpltJPuA/join Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1

ADVERTISEMENT

Comments 10

Sign in to join the conversation

Sign in
michelle_bryan
michelle_bryan 2 months, 4 weeks ago

I knew a legacy program was a mess when I requested to change one part of it and everyone said "No, don't change that! We tried changing it once. It's working, leave it alone!". They also said "it only works on embedded platform X. We tried running it on the newer, faster hardware platform version but the program didn't work. Leave it alone!"

V
vanessa_carlson 3 months, 1 week ago

This was the best explanation of functional programming I've ever seen. Good job!

K
kevin.brown 4 months, 2 weeks ago

Good, clear, well structured intro highlighting some important concepts of FP! Thanks

J
juancarlos.rolón 9 months, 3 weeks ago

FYI: class methods are closures. A class instance is just a set of closures over the same set of data.

gabinoirizarry390
gabinoirizarry390 10 months ago

„No Side Effect“ applies within the scope where the system under development is concerned. For example: Elm-lang is a pure functional programming language — no side effects. However, the runtime transforms the output of the “no side effect” system into effects in a consistent manner. Inherently all pure FP languages are lazily evaluated. What an FP programmer does is writing specs in form of a language.

kristen_brooks
kristen_brooks 10 months, 3 weeks ago

This is a really good talk and that's why we featured in the last issue of Tech Talks Weekly newsletter 🎉

J
jayeden68 10 months, 4 weeks ago

You don't necessarily need persistent data structures to offer strong immutability guarantees. For instance, in rust a function can pretend it returns a completely new version of its argument, where in fact it consumes its argument in a mutable way, making it unavailable for the caller anymore.

B
bertrand_charpentier 11 months ago

2017 called, they want their hype back

A
ayushman.chaudry 11 months ago

When will telling the concepts of functional programming again and again end, enough 30 minute talk is too long

A
andrew_martin 1 year, 4 months ago

Looking for books & other references mentioned in this video? Check out the video description for all the links! Want early access to videos & exclusive perks? Join our channel membership today: /channel/UCs_tLP3AiwYKwdUHpltJPuA/join Question for you: What’s your greatest takeaway from this video? Let us know in the comments! ⬇