From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Lawrence Newsgroups: gmane.emacs.devel Subject: Re: Upstreaming org-element-ast (was: Improving Emacs' iCalendar support) Date: Sun, 29 Dec 2024 21:53:40 +0100 Message-ID: <87r05qtdm3.fsf@recursewithless.net> References: <87ed4dss2x.fsf@ohm.mail-host-address-is-not-set> <87mshq9w5c.fsf@ohm.mail-host-address-is-not-set> <86ed31j6zk.fsf@gnu.org> <87ldx9vsnb.fsf@localhost> <868qt8kj6f.fsf@gnu.org> <87ikscx5io.fsf@localhost> <867c8skhy6.fsf@gnu.org> <87frngx4fx.fsf@localhost> <864j3wkczm.fsf@gnu.org> <87cyhg0zjz.fsf@localhost> <87ttamtf7g.fsf@recursewithless.net> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="26953"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org, 74994@debbugs.gnu.org To: Ihor Radchenko Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Dec 29 21:54:16 2024 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 1tS0Ig-0006rO-O9 for ged-emacs-devel@m.gmane-mx.org; Sun, 29 Dec 2024 21:54:16 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tS0IJ-0005yH-IO; Sun, 29 Dec 2024 15:53:51 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tS0II-0005y3-9x for emacs-devel@gnu.org; Sun, 29 Dec 2024 15:53:50 -0500 Original-Received: from fhigh-b2-smtp.messagingengine.com ([202.12.124.153]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tS0IG-0001mL-Fd for emacs-devel@gnu.org; Sun, 29 Dec 2024 15:53:49 -0500 Original-Received: from phl-compute-04.internal (phl-compute-04.phl.internal [10.202.2.44]) by mailfhigh.stl.internal (Postfix) with ESMTP id 3BC402540071; Sun, 29 Dec 2024 15:53:47 -0500 (EST) Original-Received: from phl-mailfrontend-02 ([10.202.2.163]) by phl-compute-04.internal (MEProxy); Sun, 29 Dec 2024 15:53:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= recursewithless.net; h=cc:cc:content-type:content-type:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm1; t=1735505627; x=1735592027; bh=3h2QYcwK6vfTxHYHG6dpJ6s+NwHwBQLmGGsnxQq7Bp8=; b= IoKwG9D+FXnDgyB4kt6G+8UaHHBL+yxunD/FwTDRs3q41SVdirCjg3cMOhPo/lf4 QCvn+3svEtQ51AmVjHmJi/Zn3S3sjyuI/d08tWXpRUpfaMdvzNMgBI+hRuz/+FUV j56L1UPLYUe6KA+QR3oeCDdmjXMqSzelsoAN1Pvwz8c26G0YuJulPVGkosiX1iku 9cOnH4PVJ0BtJS03CApy5a3gdZ9/o5X9/Cvnk6KSRcwikpeAJHY0vR9R9k3cVqBW rlEB8xEuUWFjAHgosqxWJ+7ZkZOphjkrZS/DyrIUyyE7/Uh1i2dBd9uSbNMQlek7 CfGuS/8WRgIjXCMZi3FZWg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t= 1735505627; x=1735592027; bh=3h2QYcwK6vfTxHYHG6dpJ6s+NwHwBQLmGGs nxQq7Bp8=; b=f/0O9fUJx2IVXQzL6AOzQS4a0Wr9zKp2p7uCT53cgFv1njJNPc8 WlMjjKshAhx2NCfTSOAwWomc+YBdkoBg0+PAKI12w9m3ofnH/TLECne2G0XdcVxp iOxZvxskR11adkDRULEok465MY0DqSMKs3dUd0jMTPSnYEK3wya+55r7L8inVLEN x3TKSOXJzg66MPKns9Gl2sz0Xrou+AVSNBBJ/OyMrFFPO4PPrN8AkPctd5jY+fVA wTKccVBTGZSXYJkGVb9fW6rZiD2cl59olgD1tuyDlRP0Kp0WXy1Og+646Y4bg7gK JS7HfQELk1IWFZMJ5qT/tscRY0cOQlrhPOA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefuddruddvgedgudegiecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdp uffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhephffvve fujghffffkgggtsehttdertddttddtnecuhfhrohhmpeftihgthhgrrhguucfnrgifrhgv nhgtvgcuoehrfihlsehrvggtuhhrshgvfihithhhlhgvshhsrdhnvghtqeenucggtffrrg htthgvrhhnpeefueffvdeffeeftdeutdfgjeettdduveduudefjedtkeejgfehhedvgffg ffduhfenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe hrfihlsehrvggtuhhrshgvfihithhhlhgvshhsrdhnvghtpdhnsggprhgtphhtthhopeef pdhmohguvgepshhmthhpohhuthdprhgtphhtthhopeihrghnthgrrhelvdesphhoshhtvg hordhnvghtpdhrtghpthhtohepvghmrggtshdquggvvhgvlhesghhnuhdrohhrghdprhgt phhtthhopeejgeelleegseguvggssghughhsrdhgnhhurdhorhhg X-ME-Proxy: Feedback-ID: if7394488:Fastmail Original-Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 29 Dec 2024 15:53:46 -0500 (EST) In-Reply-To: <87ttamtf7g.fsf@recursewithless.net> Received-SPF: pass client-ip=202.12.124.153; envelope-from=rwl@recursewithless.net; helo=fhigh-b2-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:327374 Archived-At: Richard Lawrence writes: > Ihor Radchenko writes: > >> In bug#74994, Richard made a decision not to use org-element-ast and >> instead implement a custom parser generator. >> >> Richard, is there any specific reason why you had to make things from >> scratch? May org-element-ast be changed to fit your needs? >> >> If org-element-ast is not going to be useful outside Org mode, I see no >> good reason to invest time into upstreaming it, after all. > > No, it was more that, as things stood, I wanted to wait and see what > would happen with upstreaming org-element-ast. My idea was to make it > easy to switch once that happened, but not to wait to make progress in > the meantime, that's all. Ah, looking over this again, there was one thing that I felt didn't fit very well with org-element-ast: in iCalendar, "properties" can have both a "value" and a list of "parameters". These are different types of objects and it's most natural and useful not to lump them together, but in the Org element AST they would probably both just be "contents" of a property node (i.e., child nodes). Thus, in my draft icalendar-ast.el, instead of using (TYPE PROPERTIES CONTENTS) as the basic representation for a node, I used (TYPE META VALUE CHILDREN). The org-element-ast representation is obviously capable of making the distinction between values and parameters in some other way; but it's pretty much the only example I can think of where I felt the org-element-ast representation might not be the best for the needs of iCalendar. Best, Richard