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

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

Re: In defense of Customize [was: Trying to right-align my window on sta


From: Emanuel Berg
Subject: Re: In defense of Customize [was: Trying to right-align my window on startup]
Date: Thu, 30 Jan 2014 19:44:09 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Rusi <rustompmody@gmail.com> writes:

> Brings me to the next point -- elisp is too
> sequential/imperative
>
> Of late many of my elisp problems have this flavour:
> I share some parts of my init with some co-workers
> and things fall apart because of some require missing
> or some wrong misplaced loaddefs etc.

Yeah, but that's it: making it work by wrapping it in a
clever way. If you use it in an "imperative" way, and
then it breaks, surprise surprise.

> I believe that customize as it exists cannot solve
> this because the level at which it is written is too
> high.  As a result the imperative underbelly of lisp
> keeps showing through

Of course it is possible if it is possible in Elisp. If
it is possible in one way, it is possible in another
way, that does the same. That Lisp is for everything -
imperative, functional, data markup, meta
programming... - this is what makes Lisp *great*. This
"side effect"-free hysteria of Haskell etc. is an
artistic/aesthetic construction, and it has little to
do with reality.

> 1. emacs is an OS 2. elisp is an imperative language
>
> Well 1 is not true in a literal sense but its close
> enough
>
> Now one of the issues in OS management is
> startup/daemons.
>
> Even good old init had a way of ordering the startup
> scripts by prefixing numbers.

Yes, Linux has seven runlevels, 0-6 and S. 0 is
shutdown, 1 is single user minimal (maintenance) mode
(S is plain single user mode), 2-5 are multiuser modes
which is default (and those levels can be identical),
and 6 is reboot.

In /etc/inittab, the default mode is set (usually to
2).

Each runlevel executes scripts: kill scripts are first
executed to "kill" services, then the start scripts are
executed to start services. (This is a UNIX System V
thing.)

Those scripts can be inspected with 'ls -d /etc/rc*.d'.

So, for example a reference to a startup script may
look like this:

lrwxrwxrwx 1 root  14 Jan  1  2002 S19gdm3 -> ../init.d/gdm3

For a kill script, prefix with "K" instead. The digit
to the right of S (or K) denotes the order of
execution, with the lowest number first.

If gdm3 is unwanted, it is better not to muck around
with the prefixes or otherwise rename it, instead,
follow the link and remove execution rights.

-- 
underground experts united:
http://user.it.uu.se/~embe8573


reply via email to

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