this post was submitted on 30 Nov 2023
2 points (100.0% liked)

Emacs

311 readers
1 users here now

A community for the timeless and infinitely powerful editor. Want to see what Emacs is capable of?!

Get Emacs

Rules

  1. Posts should be emacs related
  2. Be kind please
  3. Yes, we already know: Google results for "emacs" and "vi" link to each other. We good.

Emacs Resources

Emacs Tutorials

Useful Emacs configuration files and distributions

Quick pain-saver tip

founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 11 months ago (2 children)

I don't know what is the problem with cl-lib been loaded in Emacs core. RAM is cheap nowadays. I am loading the entire cl-lib in my Emacs when I build Emacs, no problems noted (been doing this for a while):

In my loadup.el I do this:

;; This file doesn't exist when building a development version of Emacs
;; from the repository.  It is generated just after temacs is built.
(load "leim/leim-list.el" t)

(load "emacs-lisp/gv")
(load "emacs-lisp/pcase")
(load "emacs-lisp/easy-mmode")
(load "emacs-lisp/cl-lib")
(load "emacs-lisp/cl-seq")
(load "emacs-lisp/cl-macs")
(load "help-mode")
(load "emacs-lisp/cl-extra")

In conjunction with this, I have also patched cl-lib.el to remove some unnecessary loading when bootstrapping:

(provide 'cl-lib)

;; (unless (load "cl-loaddefs" 'noerror 'quiet)
;;   ;; When bootstrapping, cl-loaddefs hasn't been built yet!
;;   (require 'cl-macs)
;;   (require 'cl-seq)
;;   ;; FIXME: Arguably we should also load `cl-extra', except that this
;;   ;; currently causes more bootstrap troubles, and `cl-extra' is
;;   ;; rarely used, so instead we explicitly (require 'cl-extra) at
;;   ;; those rare places where we do need it.
;;   )

The reason is I just prefer to have it in loadup.el explicitly so I can see it and comment/uncomment if need be, instead of perhaps forgetting cl-lib.el does it on the bootstrap.

You can make those as patches and apply patches automatically when building Emacs.

[–] [email protected] 1 points 11 months ago (1 children)

RAM is cheap nowadays.

Famous last words.

Seriously, though: RAM is cheap until you find your system filling all the RAM, and the OOM killer kicks in. then you will treasure every single byte of memory you can avoid using.

[–] [email protected] 1 points 11 months ago

Treasure every single byte of memory? Who are you, Jeremiah?

I notice you often cite obscurities like the OOM killer to throw off your cross-examiners, a cheap courtroom ploy. The OOM killer code is utter garbage written during the Blandy days and never tested. Not that I mind as no non-trivial application recovers gracefully from OOM.

Interesting how you're a purist when it comes to cl-lib, and an absolute maniac when coding basic C.