[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Include leaf in Emacs distribution
From: |
Naoya Yamashita |
Subject: |
Re: Include leaf in Emacs distribution |
Date: |
Mon, 16 Nov 2020 14:29:53 +0900 (JST) |
Long time no see, sorry I was very busy recentry.
An important point was made in john's email. I want to summarize
it, but please point out if it's different than intended.
- Both use-package and leaf are declarative macros, which
translate into appropriate Lisp code
- The point is made that use-package is large and complex, but
this is only natural and universal truism if any package
addresses the issues raised by a large user base for several
years.
- According to the code count, the results of the rewrite project
is not significant, and I'm not sure if the amount of reduction
in such a small project justifies a near-but-not-quite rewrite.
- use-package is fully modular and allows users to add keywords
easily.
- use-package is used in spacemacs and has proven its modularity
to be useful.
- The emacs-devel doesn't care about the implementation, it cares
about the interface.
---
I agree with you overall, with conditions.
For example, the last point about focusing on the interface
rather than the implementation is that I think "adding keywords"
is part of the interface provided to the user, and I think the
leaf provides it in a more intuitive and direct way than the
use-package.
Also, getting back to the DSL of the use-package, I disagreed
with the following points when I created leaf.
- use-package without keywords is expanded to require
- Enabled even if :disabled is set to nil
- That :custom receives a list instead of a dot pair
- Complete a symbol name that has an incomplete :hook.
(Users won't be able to do definition jumps, and also, what
happens if there is a hook that doesn't end in -hook?)
- that :load-path only supports paths relative to .emacs.d
- In :bind, the syntax for binding to a local keymap is not well
thought out, assigning it to a local keymap is difficult to
understand, and it is incompatible with Elisp indentation.
These are difficult to solve on the use-package, because there
are literally thousands of users of the use-package, and even the
disruptive changes in use-package-3.0 will have an immeasurable
impact.
What do you think? Do you think we can fix a thought or some
grammatical discrepancy that was appropriate a long time ago with
a use-package?
(When you say yes, I'm willing to help. The question is, can the
user bear this pain?)
- Re: Include leaf in Emacs distribution,
Naoya Yamashita <=