You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Common Lisp中修改参数的函数是否有通用命名约定?

Common Lisp命令式函数的命名约定

Common Lisp有一套自己的命名约定来区分带副作用的命令式函数,和Scheme统一用!结尾的风格不一样,主流的约定包括:

  • 以-f结尾的修改型函数:比如内置的incf(递增变量值)、decf(递减变量值)、setf(通用赋值操作),这类函数的核心是原地修改参数关联的存储位置或对象状态,名称里的f本质是强调其作为“修改型函数”的属性。
  • 直接用动作语义命名的命令式函数:像操作列表的push、pop,这类函数的语义本身就明确是修改原数据结构,不需要额外后缀来标识。
  • 针对特定场景的赋值类函数:比如setq(给变量赋值)、set(给符号赋值),名称里的set直接体现了赋值这个带副作用的动作。

自定义函数或者第三方库通常也会遵循这套内置函数的命名逻辑,很少用Scheme式的!后缀来标识命令式操作。

内容的提问来源于stack exchange,提问作者tkf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 20:52:01