These documents outline some of my Elisp conventions and ideas. As such, I think //emacs should host them.
842 B
842 B
Elisp Conventions
Some of this aligns with existing style guides. Some of it does not.
In general, prefer functions with fixed arities instead of variadic alternatives.
- Namespace functions with
namespace/function-name - Use
ensure,assert,refutewhenever possible. - When talking about encoding and decoding, let's use the words "encoding" and
"decoding" rather than the myriad of other variants that appear like:
marshallingandunmarshallingparseanddeparse,serialize,stringifyunpickleandpickle(Python)from-stringandto-string- TODO: Add more examples of these; there should be close to a dozen.
- Annotate assertions with
!endings. - Prefer the Scheme style of
predicate? - Variadic functions should encode this by appending * onto their
name. E.g.
maybe/nil?*