bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#61325: 30.0.50; Jokes in GNUS manual


From: No Wayman
Subject: bug#61325: 30.0.50; Jokes in GNUS manual
Date: Tue, 07 Mar 2023 15:02:05 -0500
User-agent: mu4e 1.9.21; emacs 30.0.50


I feel like this discussion is easily solved by a technical means.
What we need is an embedded document mark-up language in order for documentation authors to formally indicate where they are joking. We then define an alist of "harm categories" which users can register themselves with. Before documentation is printed, the "harmfulness coefficient" is determined for a particular user. If it is above their "harmfulness threshold", we display a less offensive joke (defined in a separate, localized user option).

See the attached library, joke.el, which solves 99% of the problem.
An example usage:

#+begin_src emacs-lisp
(defconst joke-test-text
"A closure is a function that also carries a record of the lexical environment that existed when the function was defined. When it is invoked, any lexical variable references within its definition use the retained lexical environment. In all other respects, closures behave much like ordinary functions; in particular, they can be called in the same way as ordinary
functions. Speaking of which:

<joke>Why did the chicken go to Hell? It wasn't braised right.</joke>")

(cl-loop for (subject . categories) in '((timmy . (agoraphobic child)) (rachel . (religious vegan))) collect (cons subject (apply #'joke-harm-by-category joke-test-text
                                     categories)))

;;((timmy (agoraphobic . 0.0)
;;        (child . 12.043010752688172))
;; (rachel (religious . 12.043010752688172)
;;         (vegan . 12.043010752688172)))
#+end_src

Here we can see 12.04% of the above documentation will offend an agoraphobic child, such as Timmy. However, it will be doubly offensive to a religious vegan, such as Rachel.

If I don't hear any convincing objections within the next couple of hours,
I'll merge to emacs-29 branch.

Thanks.

Attachment: joke.el
Description: joke


reply via email to

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