From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?UTF-8?Q?Gerd_M=c3=b6llmann?= Newsgroups: gmane.emacs.devel Subject: Re: xdisp.c in C++ (Was: Abysmal state of GTK build) Date: Thu, 25 Aug 2022 11:04:04 +0200 Message-ID: <63b631a0-9d52-cf52-3c94-34c7223c591e@gmail.com> References: <8735dm10jj.fsf@gmail.com> <8815abc5-90c3-e2cc-916c-0b71a2da9daa@gmail.com> <875yigvmq0.fsf@yahoo.com> <3b341ee7-f726-1a35-0123-083c3389f858@gmail.com> <83zgfs3ey5.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="19887"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.12.0 Cc: luangruo@yahoo.com, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Aug 25 11:09:24 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oR8ra-0004y4-Ff for ged-emacs-devel@m.gmane-mx.org; Thu, 25 Aug 2022 11:09:22 +0200 Original-Received: from localhost ([::1]:46546 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oR8rS-0003Ko-N0 for ged-emacs-devel@m.gmane-mx.org; Thu, 25 Aug 2022 05:09:15 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:48406) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oR8ma-0008W0-Pp for emacs-devel@gnu.org; Thu, 25 Aug 2022 05:04:12 -0400 Original-Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]:35516) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oR8mY-0004Hi-Q0; Thu, 25 Aug 2022 05:04:12 -0400 Original-Received: by mail-ej1-x62c.google.com with SMTP id og21so697240ejc.2; Thu, 25 Aug 2022 02:04:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to :content-language:user-agent:mime-version:date:message-id:from:to:cc; bh=Dwum+qpGsNXGty+5VgMfTt4+C9mqcx2pHWPJxyaANVw=; b=bDfdA2S4enVieJtHnr5VoCd+37AQhOEyiXVJ8d8JEV6k1KyZ9yTJuwHJ5MboTil4zq nHrg+7wsYgb8iXtKBL9wweQAZR9YOUAtWu7E2Q/ljxy2qM86U9RMrlsjL5d5UJJ6KAzJ a5E9WKGkKf4sO1tu2eH0uyCV0y+N/RO0PchBCN2g5VTrpc1UZSUdsu+CF2bQ7nJdbDIX lqfx4TKRqso9ifhAVlh1anPNwHmsP6JHkPj9C1/UiPpm/4nejc+0ZSYYZIc2ubejit1c W+W4rvcxlDuWgc5LL/KDVEv+sSV8sQWpbfXTs/po4kpMmObqj9w8K0OtgqCN6uHFVM8i IA3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:subject:from:references:cc:to :content-language:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc; bh=Dwum+qpGsNXGty+5VgMfTt4+C9mqcx2pHWPJxyaANVw=; b=cZ8ivr223p7lfnBHkiIJfDg1WFHGFiwL1GoRYLmmIY/sf1EUkdgd0+H5ahAUMW+cFG vDBZykSItjW2J8PHhkKefFAb/nc35divHwsIUy4p43x/O80MJXME+CK1iCLlwElnpnP5 RlZ7i890VgSO1ROIIIdiiEvAgD7VIeocTx2QRLW2cdloeNeHexldnKDzcv4VeRMgTqro UsqY0vZO3/I8WxsIAMaMje9f6rpkFsE6yHHAmYQjsc9rFsWGIiFEmN0VZdaC1oc5IDfL WVTpYg1LLDcqkGOjSyIxx7Ioa7fikKKZzg0+9HglACyKuIy84d28Awxx5afIa+XSPoBw /cwQ== X-Gm-Message-State: ACgBeo26ZXlHx22q3mdfF+wnafdG3dkqVJehWcgNaL5P5+cTME7EMGZW map54LD1oZZgeKz/mj5CGhZ+85A9dt4clQ== X-Google-Smtp-Source: AA6agR5OSMQ9w8uIVNUtCwwoLcQ1MA5p4fBNkZbNd1g6XpsenCz9Jw+2bCCB6wZSEB07BNuQDUlRkQ== X-Received: by 2002:a17:906:9b16:b0:73d:478c:b480 with SMTP id eo22-20020a1709069b1600b0073d478cb480mr1805533ejc.63.1661418245774; Thu, 25 Aug 2022 02:04:05 -0700 (PDT) Original-Received: from [192.168.178.21] (pd9e364d4.dip0.t-ipconnect.de. [217.227.100.212]) by smtp.gmail.com with ESMTPSA id u22-20020a05640207d600b004476c19d126sm2916656edy.38.2022.08.25.02.04.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 25 Aug 2022 02:04:05 -0700 (PDT) Content-Language: en-US In-Reply-To: <83zgfs3ey5.fsf@gnu.org> Received-SPF: pass client-ip=2a00:1450:4864:20::62c; envelope-from=gerd.moellmann@gmail.com; helo=mail-ej1-x62c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:294076 Archived-At: On 22-08-25 10:28 , Eli Zaretskii wrote: > Feel free to describe how rewriting xdisp.c in C++ could make it > significantly easier to understand and maintain. We might as well > consider doing something still in C, if any of the ideas sound > attractive. > > It is quite obvious that the various methods in > get_next_display_element and set_iterator_to_next could use > polymorphism, and the iterator object itself could be rewritten in > C++. Likewise the handle_stop handlers. But will this really make > the code simpler and easier to understand? > > And what else in xdisp.c will benefit from rewriting it in C++? > > (This is obviously a very academic discussion at this point, so I'll > understand if you don't want to invest any real time in it. I asked > those questions on the chance that you already have most of the > answers figured out and ready.) Yup, it's academic. If I had to bet, I'd say nothing will change :-). And I don't carry a design in my head. And I don't know if I would work on it anyway because Emacs doesn't play that big a role in my life nowadays, and I might as well be dead or hand shaking thin air until changing something would pay off. What I wanted to convey is that I perceive a problem, that I think it should be addressed for the long run, and that following the path of GCC and GDB would be good. One can say the problem doesn't exist, or it's not that grave. Or one can say we don't need C++ to solve the problem, which is what Po Lu thinks, I believe. Or no-one will work on this. And so on, that's all fine, I don't want to argue here ad infinitum. From my POV, the one thing that's certain is that making things impossible ensures they won't happen. A definite decision would make me happy. If it's the right one, of course :-). That should be it from my side.