鉴于以下代码,调用函数dist
的语法是什么?
(defstruct coord
x
y)
(defstruct line
(point1 :type coord)
(point2 :type coord) )
(defun dist (point1 point2)
(sqrt (+ (square (- (coord-x point1) (coord-x point2)))
(square (- (coord-y point1) (coord-y point2))))))
(defun square (x) (* x x))
答案 0 :(得分:0)
Lisp系列中语言的美妙之处在于(相对)统一的语法。就像您通过square
编写(square n)
或*
(* n1 n2 ...)
来调用函数dist
一样,您调用(dist point1 point2)
,其中带有两个参数,(let ((point1 (make-coord …))
(point2 …))
(dist point1 point2))
。在上下文中,这可能是这样的:
{{1}}