The Sincerest Form of Flattery - How Java & Scala are Imitating Functional Languages
Offered By: GOTO Conferences via YouTube
Course Description
Overview
Explore how Java and Scala are incorporating functional programming concepts in this 50-minute conference talk from GOTO Copenhagen 2019. Dive into the journey of imperative languages adopting functional features, comparing Java's careful integration with Scala's approach. Learn about generics, type erasure, closures, lambdas, and pattern matching in both languages. Gain insights into the advantages of functional programming and how these two popular languages are evolving to combine imperative and functional paradigms. Discover the challenges and solutions in implementing features like wildcards, partial application, and inheritance in generic types. Understand the ongoing evolution of Java and Scala as they continue to learn from and adapt functional programming principles.
Syllabus
Intro
Functional Programming: Elegant, Mathematically Sound
Object-Oriented Languages: Successful but Envious
Java Ate Pizza in Three Courses
Generics - Stating the problems
Type Erasure in Generic Java
Type Erasure: How does it work? So the compiler is doing the type checking
Type Erasure vs. Inheritance How is inheritance handled?
How about List in Java?
Wildcards to the rescue! (really?)
Closures in Pizza
Closures Lambdas in Java
Closures in Scala
Partial Application in Scala
Pattern Matching in Pizza Just a switch on types already with deconstruction
Pattern Matching in Java
Conclusion
Taught by
GOTO Conferences
Related Courses
Addressing Algorithmic BiasGOTO Conferences via YouTube Empowering Consumers - Evolution of Software in the Future
GOTO Conferences via YouTube Why Static Typing Came Back
GOTO Conferences via YouTube Higher Kinded Types in a Lower Kinded Language - Functional Programming in Kotlin
GOTO Conferences via YouTube It's Not Hard to Test Smart - Delivering Customer Value Faster
GOTO Conferences via YouTube