Ответ 1
В Emacs нет поддержки пространств имен, пакетов, библиотек или модулей. Поэтому источники Emacs используют foo-
как префикс для библиотеки foo
, а в некоторых случаях foo--
используется для привязок, которые должны быть внутренними.
Я читал несколько пакетов Emacs Lisp и встретил соглашение о некоторых объявляемых функциях - после префикса библиотеки, например:
(defun eproject--combine-regexps (regexp-list)
Мне интересно, работает ли это соглашение для объявления "private", но до сих пор я ничего не нашел в рекомендациях Emacs Coding.
В Emacs нет поддержки пространств имен, пакетов, библиотек или модулей. Поэтому источники Emacs используют foo-
как префикс для библиотеки foo
, а в некоторых случаях foo--
используется для привязок, которые должны быть внутренними.
В Emacs действительно нет такой вещи, как "внутренняя". Но да, некоторые программисты приняли это соглашение, чтобы указать на вещи, которые являются более внутренними, - в сущности, это означает, что разработчики будут меньше (или нет) колебаний менять их. Это способ дать пользователям кода знать об этой возможной волатильности.