From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Thorsten Jolitz Newsgroups: gmane.emacs.help Subject: Re: Circular dependencies between libraries - what to do? Date: Tue, 30 Sep 2014 16:38:15 +0200 Message-ID: <87iok5gomg.fsf@gmail.com> References: <87mw9ukm2b.fsf@debian.uxu> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1412088640 8362 80.91.229.3 (30 Sep 2014 14:50:40 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 30 Sep 2014 14:50:40 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue Sep 30 16:50:33 2014 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XYyl2-0001FL-7h for geh-help-gnu-emacs@m.gmane.org; Tue, 30 Sep 2014 16:50:28 +0200 Original-Received: from localhost ([::1]:43798 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XYyl1-000244-UE for geh-help-gnu-emacs@m.gmane.org; Tue, 30 Sep 2014 10:50:27 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43096) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XYykj-00022Y-AC for help-gnu-emacs@gnu.org; Tue, 30 Sep 2014 10:50:14 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XYyke-0003Jj-5Q for help-gnu-emacs@gnu.org; Tue, 30 Sep 2014 10:50:09 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:51114) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XYykd-0003J0-VH for help-gnu-emacs@gnu.org; Tue, 30 Sep 2014 10:50:04 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1XYyZQ-0003CZ-UD for help-gnu-emacs@gnu.org; Tue, 30 Sep 2014 16:38:28 +0200 Original-Received: from g231225152.adsl.alicedsl.de ([92.231.225.152]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 30 Sep 2014 16:38:28 +0200 Original-Received: from tjolitz by g231225152.adsl.alicedsl.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 30 Sep 2014 16:38:28 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 38 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: g231225152.adsl.alicedsl.de User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) Cancel-Lock: sha1:chMdAV9BW9fCe6KM56ljeU7cQ3s= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:100182 Archived-At: Christoph Wedler writes: > Thorsten Jolitz writes: > >> Emanuel Berg writes: >> >>> Thorsten Jolitz writes: >>> >>>> (1) how to use require without introducing circular >>>> dependencies? >>> >>> At the top of a file, put the require:s, e.g., >>> >>> (require 'message) >>> (require 'moggle) >>> >>> Then at the end of the file, put >>> >>> (provide 'message-my) > > You can put the `provide' also at the beginning of the file. > > circ-a.el: > (provide 'circ-a) > (require 'circ-b) > > circ-b.el: > (provide 'circ-b) > (require 'circ-a) > > works fine. Interesting. Is this considered 'acceptable' coding style in the Emacs world? -- cheers, Thorsten