Skip to content

Commit 9087754

Browse files
committed
Add: Debase (and Processes section)
1 parent fb56720 commit 9087754

File tree

2 files changed

+66
-4
lines changed

2 files changed

+66
-4
lines changed

README.org

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ You can read this Org file directly on the [[https://github.com/alphapapa/emacs-
5353
- [[#networking][Networking]]
5454
- [[#packaging][Packaging]]
5555
- [[#pattern-matching][Pattern matching]]
56+
- [[#processes-incl-ipc-rpc][Processes (incl. IPC, RPC)]]
5657
- [[#profiling--optimization][Profiling / Optimization]]
5758
- [[#refactoring][Refactoring]]
5859
- [[#regular-expressions][Regular expressions]]
@@ -2209,6 +2210,24 @@ And:
22092210
(* 2 a))
22102211
#+END_SRC
22112212

2213+
** Processes (incl. IPC, RPC) :processes:
2214+
2215+
Including inter-process communication (IPC) and remote procedure calls (RPC).
2216+
2217+
*** Libraries :libraries:
2218+
2219+
**** [[https://github.com/ieure/debase][debase: D-Bus<->EIEIO bridge]] :IPC:RPC:Linux:
2220+
2221+
#+BEGIN_QUOTE
2222+
D-Bus is an IPC system which is ubiquitous on Linux, and (in this author’s opinion) not very good. Emacs has bindings for interfacing with it (see the former point), which are annoying to use (see the latter point).
2223+
2224+
These days, numerous common system management tasks are implemented as D-Bus services rather than tradidional *nix commands, and many of the command-line tools themselves are now front-ends which communicate via D-Bus. Mounting and unmounting disks, monitoring battery status, controlling display brightness, connecting to wireless networks and more are now handled with D-Bus services.
2225+
2226+
It makes no sense to shell out to the tools when one could interact with them directly via D-Bus, if only it was less annoying to do so.
2227+
2228+
Debase frees you from writing repetitive, annoying boilerplate code to drive D-Bus services by throwing another pile of abstraction at the problem, in the form of unreadably dense, macro-heavy, profoundly cursed Lisp.
2229+
#+END_QUOTE
2230+
22122231
** Profiling / Optimization :profiling:optimization:
22132232
:PROPERTIES:
22142233
:TOC: :include descendants :depth 3
@@ -2724,7 +2743,6 @@ This gives a table like:
27242743
#+BEGIN_QUOTE
27252744
This package for GNU Emacs allows latency tracing to be performed on Emacs Lisp code and the results output to files using the Chromium Catapult Trace Event Format. These trace files can then be loaded into trace analysis utilities in order to generate flame graphs and other useful visualisations and analyses.
27262745
#+END_QUOTE
2727-
27282746
** Refactoring :refactoring:
27292747

27302748
*** Tools :tools:

index.html

Lines changed: 47 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)