Project Lambda
JSR 335 (Lambda Expressions for the JavaTM Programming Language) aims to support programming in a multicore environment by adding closures and related features to the Java language.
JSR 335 is part of JSR 337 (Java SE 8). The Early Draft Review #2 of JSR 335 has been published.
The goal of OpenJDK Project Lambda is to host a prototype implementation of JSR 335 suitable for inclusion in JDK 8, the Reference Implementation of Java SE 8. The prototype implementation is discussed on the lambda-dev mailing list.
The prototype compiler is being implemented in OpenJDK.
- Source code is available at hg.openjdk.java.net/lambda/lambda.
- Binary snapshots of the lambda-enabled JDK prototype are available at jdk8.java.net/lambda.
This Project is sponsored by the Compiler Group.
Working documents
- Early Draft Review #2
- State of the Lambda v4 (Describes the proposed scope and features of closures)
- Defender methods v4 (PDF; describes a feature for pragmatic interface evolution)
- Formal model for extension method linkage (March 27, 2012) (PDF)
- State of the Lambda: Libraries Edition (April 2012)
- Translation of Lambda Expressions (April 2012)
Older documents
- Early Draft Review #1
- State of the Lambda v3
- Defender methods v3
- Closures for Java (Nov 2009)
- Closures for Java: The Q&A (Dec 2009)
- Straw-Man Proposal (Dec 2009)
- Java Language Specification draft, based on the Straw-Man Proposal (Jan 2010)