YoVDO

Lambda: A Peek Under the Hood - Lecture 16

Offered By: ChariotSolutions via YouTube

Tags

Java Courses Closures Courses Lambda Expressions Courses

Course Description

Overview

Explore the implementation details of lambda expressions in Java SE 8 through this in-depth conference talk. Dive into the technical aspects of closures and default methods, understanding why they were added to the language and how they differ from inner classes. Learn about the invokedynamic feature from Java SE 7 and its role in lambda implementation. Discover new bytecode tools like MethodHandle and various invocation modes. Examine the process of desugaring lambdas to methods, factories, and metafactories. Analyze performance costs, including linkage and capture costs, through practical examples. Gain insights into potential future VM support, serialization, and the broader implications for languages beyond Java. Enhance your understanding of Java's evolution and the powerful capabilities introduced by lambda expressions.

Syllabus

EMERGING TECHNOLOGIES FOR THE ENTERPRISE CONFERENCE
Lambda expressions for Java
Why lambdas for Java?
Why not "just" add function types?
Alternative: functional interfaces
Big question #2: representation
Why not "just" use inner classes?
New bytecode tool: MethodHandle
Why not "just" use MethodHandle?
Bytecode invocation modes
New bytecode tool:invokedynamic
Its not just for dynamic languages anymore
Desugaring lambdas to methods
Factories and metafactories
Translation strategies
Indy: the ultimate procrastination aid
Indy: the ultimate lazy initialization
Indy: the ultimate indirection aid
Performance costs
Performance example - linkage cost
Performance example - capture cost
Not just for the Java Language!
Future VM support (?)
Serialization
Summary


Taught by

ChariotSolutions

Related Courses

Введение в iOS-разработку
Moscow Institute of Physics and Technology via Coursera
Object-Oriented JavaScript
Udacity
Front-End Interview Prep
Udacity
Work with augmented reality (AR) and the web
Curtin University via edX
Mighty JavaScript (Advanced)
Udemy