From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id gJRnJPIEG2G+uwAAgWs5BA (envelope-from ) for ; Tue, 17 Aug 2021 02:38:10 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id sLfmH/IEG2GDCgAAbx9fmQ (envelope-from ) for ; Tue, 17 Aug 2021 00:38:10 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 9F1D311B30 for ; Tue, 17 Aug 2021 02:38:08 +0200 (CEST) Received: from localhost ([::1]:59022 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mFn7H-0008Fa-Jv for larch@yhetil.org; Mon, 16 Aug 2021 20:38:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51900) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mFn6u-0008FR-67 for emacs-orgmode@gnu.org; Mon, 16 Aug 2021 20:37:44 -0400 Received: from mail-pj1-x102d.google.com ([2607:f8b0:4864:20::102d]:54824) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mFn6r-0003ea-N2 for emacs-orgmode@gnu.org; Mon, 16 Aug 2021 20:37:43 -0400 Received: by mail-pj1-x102d.google.com with SMTP id n5so8709800pjt.4 for ; Mon, 16 Aug 2021 17:37:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:subject:date:in-reply-to:message-id :mime-version; bh=lK6QfLa3KHNC83b6g/6uVM0whXGm3LAwAi9p9DJExcM=; b=t/LxG+TRgFFGBRwXNgwwvpOO0y1Anv3hYWLP7x1GyFZL1ixPQfvcHPqfxQOfCUxycB Lry1dbZmOY29O3ZliJFf0dhzktKAeC2y6ooAPI17HGFag7P7+Kntr4D2zZ3xx87b9MUM /ExY085M/p1K/S/UJPYfcR8Ofo3uMJFnkQ21nO9hHo3C3NTasTxzQDCC1WYFDLX0w8Su fQzJnMAmdE38YITwPUas2oqiAfX6HEoOwvEystTXkKc578ce4dz67CvI0Z7QgrtKZWC9 la4m+dvPeIHNQ9u+f0VAaS5qyUrb3TmO8uJZkoaFYae2E5VStbmizcynQF7JVZocxMaP ZReA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:subject:date :in-reply-to:message-id:mime-version; bh=lK6QfLa3KHNC83b6g/6uVM0whXGm3LAwAi9p9DJExcM=; b=WqUFqqR6XWwERhWzF999lgvzplnvuDHM3sy3oXR1X9MjxTOGc1uJNLCpTZhUsfrvB2 XJ5GKeyraGFonxdCElldyF2eMDrU9Tx+oZUUAaqmNVOX5O3c0iEzG2W3AeJdZmTJXNAf 1DtmBt9qaonQOYTyJquKFT3VKeJDvtj2sxZkeQT3l7g1ntkgAkFuUkH/FHcKu7HP5vEZ K/cE0fSKuK40ivpbDErY+bcKa7G36grcCWxQHGKb9FarOniNdJPGqlY8eCdA1RFsK85j dUCBhjK1gDnBCOm+CtKHScYuQoUeclN0xw8/A+xNIdY2fqRqro9BiLBHFEpvSctWiSdV FVFw== X-Gm-Message-State: AOAM530vlYHSDQZ+RUO4WNxJGdamVh3dWspZKR2fuWrNvGsDEJA8YlYh w6mhQP+OqVMSvSpAZFixhz1HkPzAqZw= X-Google-Smtp-Source: ABdhPJx1Zfzdr/Q+yAdAK9RMnp2+6GQgbXx55iJZ3uZnF5FbXisg/kA/O60tJ3m89oZ0we1k/rRffQ== X-Received: by 2002:a17:902:e803:b0:12d:7f02:f782 with SMTP id u3-20020a170902e80300b0012d7f02f782mr632098plg.19.1629160659541; Mon, 16 Aug 2021 17:37:39 -0700 (PDT) Received: from tim-desktop (106-69-131-50.dyn.iinet.net.au. [106.69.131.50]) by smtp.gmail.com with ESMTPSA id j21sm317916pfj.66.2021.08.16.17.37.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 16 Aug 2021 17:37:39 -0700 (PDT) References: User-agent: mu4e 1.6.3; emacs 28.0.50 From: Tim Cross To: emacs-orgmode@gnu.org Subject: Re: Build agenda asynchronously Date: Tue, 17 Aug 2021 09:59:46 +1000 In-reply-to: Message-ID: <874kbox5ww.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::102d; envelope-from=theophilusx@gmail.com; helo=mail-pj1-x102d.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, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1629160688; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=lK6QfLa3KHNC83b6g/6uVM0whXGm3LAwAi9p9DJExcM=; b=OeE83WFasKZYGALtUfzzaFdtL4trLKZxVnsaadaK2sc+Pl3MAVWKe1d6CT4rvBpjkrC0t7 G9DNrdywA98ND+Zg8X+bmzpRyJT0lr1kzt03Wd+SyPZfxi65h6Z43zYtX3c8oclcizhENS tsmhG2XIWj4aK5XNOyYU1/HnRne0VmQ8cWOhh/sBAmSlRxAxc8OGNTQaRV0Q4FCVxc1KY7 TnIchV8qqMMoGA6A+zh5LZUo7cndSPxBSolSWt2OKA3iL4VODXp+ItfwZYAjUwb4lXqhvm tFiSRrreEB2QjBlo4G2JhSLwwyNDCOVlLlmupb2mBAsXBKe998sPS562ESR7Yw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1629160688; a=rsa-sha256; cv=none; b=lKuaGSx8WGHRBlUX5wNaTE/cq6upqHIVAeg8FO260hDGu5t5TOeQhZQy6L3G09SysZ3cwd FWfczke5NLHh7gG+3yT9DiVPf6EVB8s76foPojdvWrJ/76S4I5WAHKT9P9pEscKheoBHg2 ttLiJHYIV+LXJUczbb7il9R540LudW5M37qeaKY0Ct44llLHY7dOyuLcoOWhRkl/C38eGg YJARVfdswJiJZr/v7PVj1f4wo/EW6HIBNrnPIh26wHuSJS/a85s3y7ZjU8gTW8je4KagiB xYEht4a3xbXjPekAzXF+8QqZkIG8kfA+jE491IvhnslWT5pF6UMdnYaHPvEFSQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20161025 header.b="t/LxG+TR"; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -3.11 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20161025 header.b="t/LxG+TR"; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 9F1D311B30 X-Spam-Score: -3.11 X-Migadu-Scanner: scn0.migadu.com X-TUID: dgKZKfIU1rKp Emacs' support for asynchronous operations is at best primitive. There is built-in support for calling processes asynchonously and there is some other development work to set the stage for adding threads, but I think general asynchronous processing inside Emacs is a long way off. A lot of how Emacs lisp works fundamentally lacks the low level control structures necessary to make data structures and operations on those structures thread safe. This means you have to work at a very low level in order to ensure code is thread safe and that simply isn't practical. Even defining the basic model for an asynchronous emacs lisp is non-trivial and once you have the model, you ahve to implement it. At this time, this is a non-starter. It would be a mistake to expect asynchronous processing within Emacs lisp any time soon. Best we can hope for now is asynchronous execution of external processes and even that falls apart as soon as user input needs to be factored in. dalanicolai writes: > There was a question on Stack-Exchange if it would be possible to build *org-agenda* asynchronously. I could not quickly find > any good answers neither in the mailing lists nor anywhere else. > > As I assume this will be a quite helpful feature for some more users, I am notifying you about it here. > > The question with its answer can be found at > https://emacs.stackexchange.com/questions/68123/async-org-agenda/68136#68136 > > Cheers, > Daniel