Java 编译器似乎支持(look for )中的let
表达式。com.sun.tools.javac.tree.*
LetExpr
JCTree 中的一条评论甚至提到了一些语法
(let int x = 3; in x+2)
这当然不被语言的语法所接受,并在早期的编译器阶段被拒绝。
我想知道这个结构的起源,这是我以前从未见过的。
它是由其他工具在内部使用javac
还是由其他工具合成?它是否可能只是 Java 早期的产物,来自从未见过的语言特性?
今天有什么有用的东西可以用它来做吗?
一般来说,它为什么存在?