[implementations-list] Why can't I byte-compile (all of) Vimpulse?

Štěpán Němec stepnem at gmail.com
Tue Apr 27 20:14:05 CEST 2010


On Tue, Apr 27, 2010 at 04:34:11PM +0000, Vegard Øye wrote:
> 
> > Date: Tue, 27 Apr 2010 12:16:43 +0200
> > From: stepnem at gmail.com
> Compiling as multiple files from vanilla Emacs currently fails,
> however. The dependencies are quite entangled, and Emacs doesn't like
> self-referencing feature requirements (this feature requires that
> feature which requires this feature). Since the files are to be
> concatenated, "later" features cannot be required earlier in the code,
> or the single file complains. So the code has to be laid out in a more
> linear fashion for compilation to work in all cases.

Actually I'm not sure you should even try to make it work -- isn't the
current single-file scenario just pathological in this respect? I don't
think it makes sense to have multiple features (i.e. `provide' forms) in
a single file (this issue was mentioned before). If you want to compile
the single file version, shouldn't you instead remove all the provides
except `vimpulse' (and reorder the code so it will work, if needed)?

(And I guess you know about the

(provide 'foo)
(require 'foo)

trick mentioned in sec. 15.7 of the Elisp manual.)

> Štěpán: thanks for the tips. I spotted both quite early on, but there
> was a lot more to it.

Yeah, it was more of an attempt to save you some typing when I already
looked at the output of the compilation...


Štěpán



More information about the implementations-list mailing list