Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Understanding Java 8 Lambdas and Streams - Par...

Understanding Java 8 Lambdas and Streams - Part 1 - Lambda Calculus, Lambda Expressions, Syntactic Sugar, First Class Functions

Quick summary of the talk:
* We start playing a bit with integer streams
* We soon come across lambda expressions
* We introduce the Lambda Calculus and show that it is Turing Complete.
* We look at how Java lambda expressions relate to lambda Calculus ones
* We look at how the two differ
* We ask ourselves: are functions 1st class citizens in Java 8?
* We look at what ‘1st class functions‘ means in Haskell and Scala
* We compare Java’s approach to ‘1st class functions’ with Scala’s
* We ask ourselves:
o are Java lambda expressions objects?
o are Java lambda expressions syntactic sugar for
anonymous instances of functional interfaces?
o Is it possible to write a recursive lambda expression in Java 8?
* We get answers to those questions

Philip Schwarz

March 11, 2015
Tweet

More Decks by Philip Schwarz

Other Decks in Programming

Transcript