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