蠢货别忘(一)common lisp funcall
生活随笔
收集整理的這篇文章主要介紹了
蠢货别忘(一)common lisp funcall
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
自定義 cons,car,cdr
?
Scheme 示例:
(define (my_cons x y)
? (lambda (z) (z x y)))
(define (my_car m)
? (m (lambda (p q) p)))
(define (my_cdr m)
? (m (lambda (p q) p)))
?
Common Lisp:
(defun my_cons (x y)
? (lambda (z) (funcall z x y)))
(defun my_ca_dr (m flag)
? (funcall m (lambda (p q)
? ? ? ? ? ? ? ? ? ? ?(cond ((= flag 0) p)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?((= flag 1) q)))))
(defun my_car (m)?(my_ca_dr m 0))
(defun my_cdr (m)?(my_ca_dr m 1))
?
提示:
Common Lisp使用函數作為變量后,調用該變量時需要使用 funcall,(funcall 函數名 參數列表)。
?
轉載于:https://www.cnblogs.com/qq1144054302/p/10633504.html
總結
以上是生活随笔為你收集整理的蠢货别忘(一)common lisp funcall的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习基础(四)优化函数(梯度下降函数
- 下一篇: 深度学习基础(二)激活函数