首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

函数名中的双减( - )约定在Emacs Lisp中意味着什么

在Emacs Lisp中,函数名中的双减(-)约定表示该函数是一个内部函数或私有函数,它不应该被外部代码直接调用。这种约定是一种命名规范,用于指示函数的可见性和使用范围。

Emacs Lisp是一种方言化的Lisp语言,用于扩展和定制GNU Emacs编辑器。在Emacs Lisp中,函数名的命名约定非常重要,它们通常以一个或多个连字符(-)开头,以表示其特殊含义或用途。

双减(-)约定是Emacs Lisp中的一种常见约定,用于标识内部函数。这些函数通常是供其他函数调用的辅助函数,它们不应该被直接调用或依赖。双减(-)约定的目的是将这些函数隐藏起来,以避免误用或混淆。

由于Emacs Lisp是一种动态语言,没有严格的访问控制机制,所以双减(-)约定是一种约定俗成的方式,用于指示函数的可见性。开发者在编写Emacs Lisp代码时,应该遵循这种约定,以确保代码的可读性和可维护性。

需要注意的是,双减(-)约定只是一种命名约定,并没有特定的语法或语义含义。它只是作为一种约定,用于向其他开发者传达函数的用途和可见性。在实际使用中,开发者可以根据自己的需求和习惯来定义和使用函数名,但遵循约定可以提高代码的可读性和可理解性。

在腾讯云的产品和服务中,与Emacs Lisp中的双减(-)约定相关的内容可能较少。腾讯云提供了丰富的云计算产品和解决方案,包括云服务器、云数据库、云存储、人工智能等。如果您对腾讯云的产品感兴趣,可以访问腾讯云官方网站(https://cloud.tencent.com/)获取更多详细信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Lisp语言简介_c++是什么语言

这个比较小众编程到底是什么~ ————————————————————————— LISP(全名LISt Processor,即列表处理语言),由约翰·麦卡锡在1960年左右创造一种基于λ演算函数式编程语言...LISP有很多种方言,各个实现语言不完全一样。1980年代Guy L. Steele编写了Common Lisp试图进行标准化,这个标准被大多数解释器和编译器所接受。...在Unix/Linux系统,还有一种和Emacs一起Emacs Lisp(而Emacs正是用Lisp作为扩展语言进行功能扩展)非常流行,并建立了自己标准。...LISP语言主要现代版本包括Common Lisp和Scheme。 基本介绍 LISP 是第一個數型程式語言,区别于C/Java等命令型编程语言。...正如算数表达式 1+1 有值 2 一样,Lisp 表达式也有值,如果表达式 e 得出值 v,我们说 e 返回 v。

2.3K20
  • Emacs 之光成长历程

    与大多数用户不同,嘉宾在接触 Emacs 不久即开始尝试攒写自己配置,并陆陆续续发布了几个比较实用包,比如 valign[1],嘉宾是如何做到?...更令人好奇是,嘉宾如何在短期内熟悉 Emacs 源码并为之贡献多个 patch,相信通过嘉宾学习、贡献经历,可以给听众打开 Emacs 源码神秘面纱,让更多用户参与到 Emacs 贡献,一个多小时分享...,句号后两个空格 • 注释用是 C 风格 /* */ ,而不是 C++ // • 函数名后面跟一个空格,再是括号 •读 Emacs 源码技巧 • lisp.h[12] 里面有 C 如何调用 ELisp...buffer: https://github.com/emacs-mirror/emacs/commit/7c83e605ab84e8b62254c55f347abc8aa9c6057b [12] lisp.h...: https://github.com/emacs-mirror/emacs/blob/master/src/lisp.h [13] devel: https://lists.gnu.org/archive

    40610

    Emacs Lisp2

    Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ),;; 然后在键盘上键入q 跳过系统欢迎信息,;; 先观察在Emacs屏幕底部,会给出一堆关于当前工作情况信息...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区,;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下,;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...2 2);; Elisp中表达式可以通过括号来嵌套(+ 2 (+ 1 1));; 在lisp-interaction-mode模式,我们可以直接计算一个表达式,计算方法是(+ 3 (+ 1 2));...----原文地址http://soft.dog/2018/07/23/emacs-lisp/

    98240

    Emacs Lisp

    LISP 编程语族已经演变出许多种方言,现代最著名通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs LispLisp 一个分支 Emacs Lisp...,一种直译式脚本语言,为LISP方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们功能,它直译器是以C语言来实作,它受到Maclisp影响很大,但是跟Common...; 第一步首先启动Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎信息, ;; 先观察在Emacs屏幕底部...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区, ;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果

    2.3K40

    Clojure 开发那些事

    其实也好理解,Lisp 语言诞生这么久了,为什么一直那么小众?原因就在于 Lisp 语言过于强大,不必也不可能像 Java 那么普及。你能要求每个人都能为 CTO 吗?...这一点非常重要,估计也是为什么 Clojure 较其他 Lisp 方言更流行原因。...使用比较简单,通过 Intellj 插件管理器安装后即可使用,第一次使用时需要设置下快捷键类型 Emacs + Cider 作为一门 Lisp 方言,怎么能没有一个好 Emacs mode 呢?...Emacs + Cider 组合相比 Intellj + Cursive 最大优势就是对宏支持,Cider 提供了对宏展开快捷键,但在 Cursive 我没找到,不过宏也是比较高级功能,初学者应用用不到...nrepl Clojure REPL 可以连接到远程服务器上进程,直接对进程函数或变量进行修改,这是非常便利,对于很多运行时错误可以采用这种方式解决,Emacs 与 Intellj 里面都提供了连接远程

    1.6K20

    Emacs Lisp

    LISP 编程语族已经演变出许多种方言,现代最著名通用编程语种是 Common Lisp 和 Scheme , 以上解释来自 WIKI Emacs LispLisp 一个分支 Emacs Lisp...,一种直译式脚本语言,为LISP方言之一,GNU Emacs与XEmacs文字编辑器都使用这个编程语言来扩展它们功能,它直译器是以C语言来实作,它受到Maclisp影响很大,但是跟Common...; 第一步首先启动Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎信息, ;; 先观察在Emacs屏幕底部...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区, ;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果

    2.2K30

    Emacs 28 新特性介绍

    现任 Emacs 维护者 Eli Zaretskii 在 9 月 30 号通过邮件列表[1]宣布 emacs-28 分支已经创建出,这意味着 28 版本大功能已经 ready,不会再有大改动,但距离正式发版还要一段时间...这篇文章就来介绍 Emacs 28 ,笔者个人觉得比较实用功能,完整列表可参考 NEWS[3] ( M-x view-emacs-news ),最后会介绍如何在 macOS 上编译。...与 flush-lines 命令类似,但是匹配行会作为整体加到 kill ring • 新配置 kill-transform-function 字符在添加到 kill ring 预处理函数 •.../emacs/i-basic.el#L346 [11] hierarchy.el: https://github.com/emacs-mirror/emacs/blob/emacs-28/lisp/emacs-lisp.../hierarchy.el [12] shorthands.el: https://github.com/emacs-mirror/emacs/blob/emacs-28/lisp/emacs-lisp

    96830

    Emacs 折腾记

    我工作倒并没有用得到 Lisp 地方,但是最近眼前晃过一些书,比如《计算机程序构造和解释》、《码农》杂志第 13 期,都对这门古老语言推崇备至,历数现代 Lisp 方言先进性,再者我也一直有学习一门函数式编程语言想法...在搜索网友们对此经验之谈时候,自然而然地,目光逐渐聚集到 Emacs 这个使用 Emacs Lisp 作为扩展语言编辑器上。...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...本来什么也不用配置情况下 M-x ielm 就能进入一个 Emacs Lisp REPL,但是它与 Common Lisp 毕竟还是有区别,所以还是另配置一个。...在 ~/.emacs 文件添加 这个 3 表示在距离屏幕上下边缘还有 3 行时候再移动光标即自动滚屏,方便随时能看到当前编辑行上下文,可以根据自己使用习惯调整。

    1.3K20

    Emacs 折腾记

    我工作倒并没有用得到 Lisp 地方,但是最近眼前晃过一些书,比如《计算机程序构造和解释》、《码农》杂志第 13 期,都对这门古老语言推崇备至,还有垠神也撰文《Lisp 已死,Lisp 万岁!...历数现代 Lisp 方言先进性,再者我也一直有学习一门函数式编程语言想法,看起来,Lisp 是不二之选。...在搜索网友们对此经验之谈时候,自然而然地,目光逐渐聚集到 Emacs 这个使用 Emacs Lisp 作为扩展语言编辑器上。...Common Lisp 开发环境 学习 Common Lisp 是使用 Emacs 最主要任务,配好了文本编辑,当然得先把 Common Lisp 开发环境配置好了。...本来什么也不用配置情况下 M-x ielm 就能进入一个 Emacs Lisp REPL,但是它与 Common Lisp 毕竟还是有区别,所以还是另配置一个。

    1.9K10

    一名ClojurianEmacs配置

    原因 网络上.emacs.d/init.el配置数不胜数,各路lisp大神dot file都已经放在github上了,而且前有牛人撰文推荐学习emacs配置详实方法,看似确实没有什么必要自己折腾一份配置...新事物对程序员具有极大吸引力,但是程序员不会止步于使用新事物,而且会在惊奇之余,渴望控制那股背后主导它力量本身,行使“上帝之力”。 话说回来,为什么我会从vim党摇身一变成为emacs党呢?..."http://melpa.org/packages/")点号(dot)表示法也比较奇怪,其实这是lispDotted pair表示法,用法和普通列表类似,但因为是pair缘故,你可以使用(...模块化 如果把什么东西都揉到init.el文件,这个文件一定会很快变得臃肿不堪。为了解决这个问题,需要引入模块化思想——把特定功能配置放到独立文件,然后require进来。...(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory)) 看似,接下来就可以在每个独立模块文件编写各种功能配置

    2.8K20

    Python10大集成开发环境和代码编辑器(指南)

    与集成开发环境相比,出色专用代码编辑器往往体积更小更迅捷,但同时功能更少。 优秀Python编程环境要求 因此在编程环境什么是我们真正需要呢?...而GNU Emacs就是战斗一员。伴随着狂热追随,被称作“可扩展、可定制、自动记录、实时显示编辑器”GNU Emacs几乎一直萦绕在UNIX周围。...终身免费且兼容任何平台(以某种形式),GNU Emacs使用强大Lisp编程语言进行定制,并为Python开发提供各种定制脚本。 ?...优点:了解了 Emacs,使用过 Emacs,你便会爱上 EmacsLisp作为第二语言,你清楚它给你力量可以让你为所欲为。...缺点:定制化意味着向多种多样脚本文件编写(或复制粘贴)Lisp,如果没有他人提供,那么你必须去学习Lisp并且搞懂它是如何运行

    1.7K90

    30岁文转码:我用了三年时间从哲学家变成知名软件项目核心开发

    成为 Emacs 铁粉 这里我想聊聊自己为什么会成为 Emacs 铁粉。种种高级功能和丰富软件包当然很好,但这还不足以体现 Emacs 精髓、特别是它真正价值主张。...它其实是一套可编程平台,文本编辑只是其中主要交互点之一。 Emacs 是由 Lisp 一种方言编写而成,名为“Emacs Lisp”、也叫“Elisp”。...因此,它绝大多数代码库以及用户配置也是用 Elisp 写成。这意味着对最终用户来说,Emacs 只涉及一种语言、只包含一种范式。...此外,Emacs 还是自文档化意味着它能理解变量值何时发生变化、并在对应帮助缓冲区通知用户。同理,Emacs 也能反映出各类函数新值与当前状况关联。...用户很难理解这款程序内部运作逻辑、自然看不懂它为什么会给出最终结果。结合个人经验,我觉得这就是典型名义自由——只存在于许可条款当中、在实际体验完全不见踪影“自由”,绝对不是真正自由。

    38030

    与宇宙学博士后聊 Emacs

    说起物理学,在我们一般人看来是个很遥远事情,和日常生活关系不大,更何况是千亿光年外宇宙呢。嘉宾为什么选择了这条方向?研究宇宙学意义在哪里?...image.png 时间线 •00:00:49 嘉宾自我介绍 •00:01:24 Emacs 初印象 •00:06:20 为什么喜欢 Lisp •00:12:04 Emacs 除了写代码外主要用途...•00:19:50 Emacs 在大学老师使用情况 •00:26:06 嘉宾学习物理学历程 •00:28:18 宇宙学对现实生活意义 •00:32:09 宇宙学研究方式 •00:38:32 宇宙学对嘉宾影响...•00:39:33 为什么我们还没有找到地外文明 •00:44:39 宇宙背景辐射是均匀意义 •00:49:04 读博期间有意思事 •00:52:27 推荐环节 Show Notes •嘉宾自我介绍...[1] •使用 Emacs 登录超级计算中心来进行代码编写与调试 •吸引嘉宾喜欢 Lisp 文章:How To Become A Hacker[2] •用 Lisp 方式写 Python 库:HPy

    41510

    如何提高你能力,给年轻程序员几条建议【大牛经验】

    看上去不错,但缺乏系统性目标。或者说,他制定了学什么,但对为什么要学这些并没有仔细思考。 在技术领域,有太多东西会迅速过时,如何利用有限时间,最大化你长期收益?...虽然我是Vim重度用户,但我觉得当年选择Vim时有欠考虑。如果让我重选一次,我第一选择会是Emacs,第二选择会是Atom。Emacs已存在30年,社区仍然活跃,其可扩展性在编缉器无人能出其右。...Emacs脚本语言elisp又是lisp一种dialect,我觉得对lisp学习可以提升程序员对编程核心思想理解。...另一个加分点是Emacs由于其本身高门槛及lisp特质,吸引了大批高质素程序员,其社区可谓藏龙卧虎,更诞生了像Org-mode这样神级插件。...Emacs通过Evil插件非常完整支持了Mode editing,其他主流编辑器也有类似插件,所以你一旦掌握了这个理念,在别的编辑器也可以发挥作用。

    35620

    IDE 太重了,所以迁到了 Emacs

    但我偶然发现自己在旧编辑器之战中坚定地站在 Emacs 一边,正如我们将看到那样。我想,有一天,我可能会跳到另一边去看看,但那一天并不会很快到来。 可能有人会问:为什么不是 VS Code?...这就是为什么我目前正尝试重新使用 Emacs。 可能你不了解 Emacs,这是一款与 Vim 一样具有传奇色彩文本编辑器,但是它所能做事情要多得多。...你还需要对 Lisp 有一点了解(Emacs 是基于它自己 Lisp 方言 elisp 构建),但如果你是那种甚至考虑像 Emacs 这样东西可以彻底破解的人,这实际上也是乐趣一部分。...不过,我 Emacs 设置(请随意取用其中一些片段),仍不太符合我在 IntelliJ 得到开箱即用效果。...Emacs 比任何现代 IDE 都轻得多,同时仍然具有所有重要特性。我希望 JetBrains 能听到我心声,并把它放在心上、为此做点什么!也许,Fleet 就是解决办法?!

    1.1K10

    Python10大集成开发环境和代码编辑器(指南)

    与集成开发环境相比,出色专用代码编辑器往往体积更小更迅捷,但同时功能更少。 优秀Python编程环境要求 因此在编程环境什么是我们真正需要呢?...而GNU Emacs就是战斗一员。伴随着狂热追随,被称作“可扩展、可定制、自动记录、实时显示编辑器”GNU Emacs几乎一直萦绕在UNIX周围。...终身免费且兼容任何平台(以某种形式),GNU Emacs使用强大Lisp编程语言进行定制,并为Python开发提供各种定制脚本。 ?...优点:了解了 Emacs,使用过 Emacs,你便会爱上 EmacsLisp作为第二语言,你清楚它给你力量可以让你为所欲为。...缺点:定制化意味着向多种多样脚本文件编写(或复制粘贴)Lisp,如果没有他人提供,那么你必须去学习Lisp并且搞懂它是如何运行

    1.2K60
    领券