本帖最后由 菜卷鱼 于 2022-8-31 15:51 编辑
用法
(run
'(
(表达式1)
(表达式2)
(表达式3)
......
)
)
举例1
原表达式
(setq a 1 )
(setq b a )
(setq c d)
查错
(run '(
(setq a 1 )
(setq b a )
(setq c d)
)
)
==>
(1 1 nil)
举例2
原表达式
(setq a 1 )(seqq b a )(setq c d)
查错
命令: (run '((setq a 1 )(seqq b a )(setq c d)))
==>
共3个表达式
运行到第2个时报错
报错代码: (SEQQ B A)
报错原因: "no function definition: SEQQ"
举例3
原表达式
(setq a 2)(setq b a )(setq c d) (if a)
查错
命令: (run '((setq a 2)(setq b a )(setq c d) (if a)))
==>
共4个表达式
运行到第4个时报错
报错代码: (IF A)
报错原因: "语法错误"
- (defun prlst (lst)
- (if (not (listp lst))
- (setq lst (list lst))
- )
- (setq lst (eval (cons list lst)))
- (mapcar 'princ lst)
- (prin1)
- )
|