From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Alternate design [Was: Re: [RFC] some reworking of struct window] Date: Mon, 25 Mar 2013 15:02:45 -0400 Message-ID: References: <514AD54F.8050309@yandex.ru> <83620kzk8z.fsf@gnu.org> <514C0B07.3020307@yandex.ru> <51506D6C.5050709@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1364238173 22358 80.91.229.3 (25 Mar 2013 19:02:53 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 25 Mar 2013 19:02:53 +0000 (UTC) Cc: Eli Zaretskii , emacs-devel@gnu.org To: Dmitry Antipov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Mar 25 20:03:19 2013 Return-path: Envelope-to: ged-emacs-devel@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 1UKCfv-00086d-1l for ged-emacs-devel@m.gmane.org; Mon, 25 Mar 2013 20:03:19 +0100 Original-Received: from localhost ([::1]:50700 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UKCfW-0007Eg-VV for ged-emacs-devel@m.gmane.org; Mon, 25 Mar 2013 15:02:54 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:45835) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UKCfT-0007E7-JJ for emacs-devel@gnu.org; Mon, 25 Mar 2013 15:02:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UKCfR-0002mw-Rh for emacs-devel@gnu.org; Mon, 25 Mar 2013 15:02:51 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.182]:9317) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UKCfP-0002mC-Vg; Mon, 25 Mar 2013 15:02:48 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av4EABK/CFFFxLSu/2dsb2JhbABEvw4Xc4IeAQEEAScvIwULCw4mEhQYDSSIHgbBLZEKA6R6gV6DEw X-IPAS-Result: Av4EABK/CFFFxLSu/2dsb2JhbABEvw4Xc4IeAQEEAScvIwULCw4mEhQYDSSIHgbBLZEKA6R6gV6DEw X-IronPort-AV: E=Sophos;i="4.84,565,1355115600"; d="scan'208";a="5745479" Original-Received: from 69-196-180-174.dsl.teksavvy.com (HELO pastel.home) ([69.196.180.174]) by ironport2-out.teksavvy.com with ESMTP/TLS/ADH-AES256-SHA; 25 Mar 2013 15:02:43 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id C3CB667AC0; Mon, 25 Mar 2013 15:02:45 -0400 (EDT) In-Reply-To: <51506D6C.5050709@yandex.ru> (Dmitry Antipov's message of "Mon, 25 Mar 2013 19:29:48 +0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.182 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:158162 Archived-At: >> For me, `payload' is associated with transport (or communication), so >> it sounds a bit odd here. But I won't oppose it (whereas I do oppose >> "object"). > OK, what about neutral `contained'? That would be a boolean field (is it contained?). The closest noun would be "contents" I think. >>> +#define WINDOW_HORIZONTAL_COMBINATION(W) \ >>> + ((W)->combination && (W)->horizontal) >> I think this should be (eassert (WINDOWP ((W)->payload)), (W)->horizontal) > This will require a lot of explicit checking whether W->payload is a window, > for example in Fwindow_top_child and Fwindow_left_child. I disagree with "a lot of" and I think making those checks explicit is good. > I believe that we should treat dead windows as 'typeless' (that is, > all of WINDOW_LEAF_P and WINDOW_xxx_COMBINATION_P should return false > for them) I'm not sure it's a good idea. > and add explicit eassert where leaf or dead window can cause > serious problems. But here I do agree. Stefan