📜  LISP 中的 Lambda 函数

📅  最后修改于: 2022-05-13 01:55:08.372000             🧑  作者: Mango

LISP 中的 Lambda 函数

在本文中,我们将讨论 LISP 中的 lambda 函数。 Lambda函数用于评估我们程序中的数学表达式。它们也被称为匿名函数。

我们可以使用 lambda 表达式创建这些函数。

语法

(lambda (parameters) expression_code)

在哪里,

  1. 参数是表达式中操作数的数量
  2. expression_code是数学逻辑表达式

示例 1 :通过 lambda 表达式计算数学表达式的 LISP 程序

Lisp
;lambda expression to get sum of product of four numbers
;mathematical expression is (val1*val2) + (val3*val4)
  
(write ((lambda (val1 val2 val3 val4)
   (+  (* val1 val2) (+ (* val3 val4))))
   ;pass the values
   2 4 6 8)
)
(terpri)
(write ((lambda (val1 val2 val3 val4)
   (+  (* val1 val2) (+ (* val3 val4))))
   ;pass the values
   10 20 30 40)
)


Lisp
;lambda expression to get product of two numbers
;mathematical expression is (val1*val2) 
  
(write ((lambda (val1 val2 )
   (* val1 val2))
   ;pass the values
   60 4 )
)
(terpri)
(write ((lambda (val1 val2 )
   (* val1 val2))
   ;pass the values
   10 20 )
)


输出:

56
1400

示例 2:计算表达式的 LISP 程序

语言

;lambda expression to get product of two numbers
;mathematical expression is (val1*val2) 
  
(write ((lambda (val1 val2 )
   (* val1 val2))
   ;pass the values
   60 4 )
)
(terpri)
(write ((lambda (val1 val2 )
   (* val1 val2))
   ;pass the values
   10 20 )
)

输出:

240
200