Java コンパイラーは( を探してください) のlet
式をサポートしているようです。com.sun.tools.javac.tree.*
LetExpr
JCTree の 1 つのコメントには、いくつかの構文についても言及されています
(let int x = 3; in x+2)
もちろん、これは言語の文法によって受け入れられず、初期のコンパイラ段階で拒否されました。
これまでに見たことのないこの構造の起源について疑問に思っています。
内部で使用されてjavac
いますか、それとも他のツールによって合成されていますか? それはもしかしたら、Java のごく初期の時代に、光を見たことのない言語機能からの成果物にすぎないのでしょうか?
今日それを使ってできることは何かありますか?
一般的に言えば、なぜそれが存在するのですか?