gpt4 book ai didi

function - emacs lisp 是否支持在词法上重新定义函数?

转载 作者:行者123 更新时间:2023-12-01 23:18:15 35 4
gpt4 key购买 nike

最新版本的 Emacs 支持 elisp 代码中变量的词法绑定(bind)。是否也可以在词法上重新定义函数?换句话说,Emacs Lisp 是否有类似 lexical-flet 的内容? ?

最佳答案

在 Emacs<24.3 中,可以 (require 'cl)然后使用 labels .在 Emacs-24.3 及更高版本中,您还可以执行 (require 'cl-lib)然后使用 cl-fletcl-labels .

所有这些都是“复杂的宏”,它们生成的代码看起来像 (let ((fun (lambda (args) (body)))) ... (funcall fun my-args) ...) ,因为底层语言本身并不支持本地函数定义。

关于function - emacs lisp 是否支持在词法上重新定义函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13848788/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com