CONS形式化 (一般化)

本文介绍了使用Lisp语言实现的特殊数据结构操作,包括构造、取值等基本功能,并通过具体的函数定义展示了如何利用这些操作来处理抽象数据类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(defun  mycons (x y)

(lambda ( s z)

(funcall (funcall s  x  y )  z)

)

)

 

(defun wrapcar (s)

(lambda  (a b)

(lambda (z)

(funcall a s  z)

)

)

)

 

(defun  mycar (n)

(lambda (s z)

(funcall  n (wrapcar s )  z) 

)

)

 

(defun wrapcdr (s)

(lambda  (a b)

(lambda (z)

(funcall b s  z)

)

)

)

 

 

(defun  mycdr (n)

(lambda (s z)

(funcall  n  (wrapcdr s ) z) 

)

)

 

 

(setq  one  (lambda (s z) (funcall  s z) ))

(setq  two  (lambda (s z) (funcall s (funcall  s z) )))

(setq  three  (lambda (s z) (funcall s (funcall s (funcall  s z) ))))

 

(defun chenbing (value)

(list  'chenbing value)

)

 

(funcall one 'chenbing nil)

(funcall two 'chenbing nil)

(funcall three 'chenbing nil)

 

(setq  a  (mycons    two one) )

(setq  b  (mycons  three a) )

 

 

(funcall (mycar  a) 'chenbing nil)

(funcall (mycar  b) 'chenbing nil)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值