如果你有一个依赖于其他函数的递归函数,那么实现它的首选方法是什么? 1)递归函数 let doSomething n = ...
let rec doSomethingElse x =
match x with
| yourDone -> ...
| yourNotDone -> doSomethingElse (doSomething x)
2)的递归函数 l
(define (rec base height)
(let ((product (* base height))(half 0.5))
(let ((sum (* product half)))
(display "Area is")
(display sum))))
let: expected only one expression after t
我的问题是接下来,我尝试使用let将这个瓦尔 ,如果我做ASIGN值来评估一些增值经销商列表(def a (list * 'x 'y))和(let [x 3 y 3] (eval a))我有一个 CompilerException了java.lang.RuntimeException:无法解析符号:X在这种情况下,编译:(NO_SOURCE_PATH:6) ,但如果我跑 (def x 4) (de
Java编译器似乎支持表达式com.sun.tools.javac.tree.*(查找LetExpr)。在JCTree 一个评论甚至提到了一些语法 (let int x = 3; in x+2)
这当然不是由语言的语法接受和早期编译器相拒绝。 我想知道这个构造的起源,这是我以前从未见过的。 由javac内部使用还是由其他工具合成?它可能仅仅是从Java早期的语言特征中看不到光的一个神器? 今天