emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Help sought understanding shorthands wrt modules/packages


From: Richard Stallman
Subject: Re: Help sought understanding shorthands wrt modules/packages
Date: Fri, 11 Nov 2022 22:35:50 -0500

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > The magnars-string.el file is meant to supersede s.el and be a
  > well-behaved version of it.  The s.el file, as it exists today, is a
  > namespace-polluting liability, we shouldn't maintain it.

No one would be happer than I to eliminate te usual version of s.el,
but my understanding is that that would cause a big practical problem.

Lots of packages do (require 's), and they call those functions by the
names s-... defined in s.el.  If we don't have s.el, they will break.
They can't use your proposed magnars-string.el (which I would call
stris.el), since the names it would define are wrong _for them_.

To modify all those files would satisfy all our goals, but it's
not feasible.  We don't maintain them.  I suppose we don't distribute
most of them.

We could distribute both s.el and magnars-string.el (strings.el), two
files which are almost the same and should be changed in sync.  That
would do the job, but it is undesirable in terms of maintenance.

`load-with-shorthands' is a way of making strings.el use a modified
virtual copy of s.el, in a way that avoids actually duplicating the
contents of s.el.

  > If I find a bug or want to add some function to that presumed s.el that
  > your string.el is loading specially, I have to somehow remember to load
  > it with shorthands.

What is the precise scenario here?  I don't see it.  If we found a
need to modify s.el, we would modify our version of s.el.  With my
implementation, that would DTRT for programs that use s.el and for
programs that use strings.el.

If we wanted to add something to strings.el, we would add it directly
to strings.el.  The shorthands would not apply to the contents of
strings.el itself.  They would only apply to the contents of s.el
when it is loaded by strings.el.

  >   The usual commands C-M-x, M-x load-file, M-x
  > emacs-lisp-byte-compile-and-load will all produce wrong results that I
  > won't know how to fix.

I don't follow you.  I don't see why anything would produce wrong
results.  If you show me a specific scenario, I might understand.


-- 
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]