hg: lambda/lambda/langtools: initial lambda push; the current prototype suuports the following features:
maurizio.cimadamore at oracle.com
maurizio.cimadamore at oracle.com
Thu May 27 10:33:09 PDT 2010
Changeset: 7704dcd17e0b
Author: mcimadamore
Date: 2010-05-27 18:11 +0100
URL: http://hg.openjdk.java.net/lambda/lambda/langtools/rev/7704dcd17e0b
initial lambda push; the current prototype suuports the following features:
*) function types syntax (optionally enabled with -XDallowFunctionTypes)
*) function types subtyping
*) full support for lambda expression of type 1 and 2
*) inference of thrown types/return type in a lambda
*) lambda conversion using rules specified in v0.1.5 draft
*) support references to 'this' (both explicit and implicit)
*) translation using method handles
The modified script build of the langtools repository now generates an additional jarfile called javacrt.jar which contains an helper class to be used during SAM conversion; after the build, the generated scripts javac/java will take care of automatically setting up the required dependencies so that code containing lambda expressions can be compiled and executed.
! make/build.properties
! make/build.xml
+ src/share/bin/java.sh-template
! src/share/bin/launcher.sh-template
+ src/share/classes/com/sun/runtime/ProxyHelper.java
+ src/share/classes/com/sun/source/tree/FunctionTypeTree.java
+ src/share/classes/com/sun/source/tree/LambdaExpressionTree.java
! src/share/classes/com/sun/source/tree/Tree.java
! src/share/classes/com/sun/source/tree/TreeVisitor.java
! src/share/classes/com/sun/source/util/SimpleTreeVisitor.java
! src/share/classes/com/sun/source/util/TreeScanner.java
! src/share/classes/com/sun/tools/javac/code/Flags.java
! src/share/classes/com/sun/tools/javac/code/Printer.java
! src/share/classes/com/sun/tools/javac/code/Scope.java
! src/share/classes/com/sun/tools/javac/code/Source.java
! src/share/classes/com/sun/tools/javac/code/Symtab.java
! src/share/classes/com/sun/tools/javac/code/Type.java
! src/share/classes/com/sun/tools/javac/code/Types.java
! src/share/classes/com/sun/tools/javac/comp/Attr.java
! src/share/classes/com/sun/tools/javac/comp/Check.java
! src/share/classes/com/sun/tools/javac/comp/Flow.java
! src/share/classes/com/sun/tools/javac/comp/Lower.java
! src/share/classes/com/sun/tools/javac/comp/Resolve.java
! src/share/classes/com/sun/tools/javac/comp/TransTypes.java
! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java
! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java
! src/share/classes/com/sun/tools/javac/parser/JavacParser.java
! src/share/classes/com/sun/tools/javac/parser/Scanner.java
! src/share/classes/com/sun/tools/javac/parser/Token.java
! src/share/classes/com/sun/tools/javac/resources/compiler.properties
! src/share/classes/com/sun/tools/javac/tree/JCTree.java
! src/share/classes/com/sun/tools/javac/tree/Pretty.java
! src/share/classes/com/sun/tools/javac/tree/TreeCopier.java
! src/share/classes/com/sun/tools/javac/tree/TreeMaker.java
! src/share/classes/com/sun/tools/javac/tree/TreeScanner.java
! src/share/classes/com/sun/tools/javac/tree/TreeTranslator.java
! src/share/classes/com/sun/tools/javac/util/Names.java
! src/share/classes/com/sun/tools/javac/util/RichDiagnosticFormatter.java
+ test/tools/javac/lambda/LambdaCapture01.java
+ test/tools/javac/lambda/LambdaConv01.java
+ test/tools/javac/lambda/LambdaExpr01.java
+ test/tools/javac/lambda/LambdaExpr02.java
+ test/tools/javac/lambda/LambdaScope01.java
+ test/tools/javac/lambda/NakedThis.java
+ test/tools/javac/lambda/NakedThis.out
More information about the lambda-dev
mailing list