emacs-devel
[Top][All Lists]
Advanced

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

Re: Instead of pcase


From: Po Lu
Subject: Re: Instead of pcase
Date: Sun, 19 Nov 2023 22:29:37 +0800
User-agent: Gnus/5.13 (Gnus v5.13)

Michael Heerdegen <michael_heerdegen@web.de> writes:

> "abstruse language" - "singular experience" ...(?) - sorry, are we
> people having understood pcase in few minutes some kind of aliens,
> compared to the "normal people"?  Do we not count?  Because we are not
> loud and angry and outraged?

With all due respect, your experience is very singular.  Don't assume
that I haven't canvassed other people's experiences, both on the
Internet and off-line, methodically and anecdotally.

My organization largely comprises C programmers who use Emacs for
programming, as a means to an end rather than an end in itself.  Our two
sites centrally provision their own Emacs configurations to all users,
which incorporates a large corpus of code for editing and analyzing C
programs in accord with local practice.  Naturally, the existence of
this corpus demands that programmers be charged with its upkeep, and as
no position is set aside for such work, this responsibility devolves on
individuals almost at random.  This is a representative microcosm of the
wider Emacs userbase, I think: for most are not hobbyists, or even
employed programmers for whom programming is also an avocation, but men
working for salaries, with bills to pay and families to... you can
complete the rest of this trite description.  And it is they whom I
canvassed.

I sent a poll to 34 individuals, all in some capacity involved in the
maintenance of Emacs Lisp.  Some of the questions asked were:

  - Have you previously read the documentation for pcase and cl-loop?

  - (If you haven't, read it now.)  Is the documentation for the pcase
    feature easily grasped, from your perspective?

  - Is the documentation for cl-loop easily grasped, from your
    perspective?

  - Read the pcase form in completion-at-point at
    /usr/src/[...]/simple.el.  Do you understand the variables that are
    bound, and the circumstances in which they are?

  - Read each cl-loop form in comp.el.  Could you rewrite those you
    understand with other constructs?

  - Do you think liberal use of cl-lib and pcase hinders the
    understanding of Emacs's own source code?

  - Do you think Emacs Lisp, excluding cl-lib and pcase, is wanting in
    list iteration or destructing constructs?

"Easily" refers also to whether you can learn the construct within an
amount of time that does not impact your work, not just whether it is
possible to learn with mechanical ease.

20 of the 34 answered yes to the first question, 5 of 34 to the second,
4 of 34 to the third, 12 of 34 to the fourth, 30 of 34 to the fifth, 30
to the sixth, and 6 to the seventh.  So I'd say the results were a
resounding vindication of all that I've maintained thus far.  There were
other items on the poll, but they related to our own policy for Emacs
Lisp and are by the by.

As regards experiences on the Internet, they are laid bare for all to
see.  In this thread, for starters.

> Interesting would be to hear concrete arguments, but we heard nearly
> none.  "I'm angry" is not an argument.

No one in this thread has been presenting indignation as an argument.


reply via email to

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