From mboxrd@z Thu Jan 1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: Philipp Stephani
Newsgroups: gmane.emacs.devel
Subject: Re: pure-fns in byte-opt.el
Date: Wed, 29 Jul 2020 16:21:41 +0200
Message-ID:
References: <20170725020650.GA12601@holos.localdomain>
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
logging-data="25852"; mail-complaints-to="usenet@ciao.gmane.io"
Cc: Richard Stallman , Emacs developers
To: Stefan Monnier
Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Jul 29 16:22:32 2020
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 1k0myW-0006cb-0f
for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Jul 2020 16:22:32 +0200
Original-Received: from localhost ([::1]:55098 helo=lists1p.gnu.org)
by lists.gnu.org with esmtp (Exim 4.90_1)
(envelope-from )
id 1k0myV-000136-1o
for ged-emacs-devel@m.gmane-mx.org; Wed, 29 Jul 2020 10:22:31 -0400
Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:57248)
by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
(Exim 4.90_1) (envelope-from )
id 1k0mxw-0000bM-Nn
for emacs-devel@gnu.org; Wed, 29 Jul 2020 10:21:56 -0400
Original-Received: from mail-oo1-xc30.google.com ([2607:f8b0:4864:20::c30]:42357)
by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
(Exim 4.90_1) (envelope-from )
id 1k0mxv-0000YS-6O; Wed, 29 Jul 2020 10:21:56 -0400
Original-Received: by mail-oo1-xc30.google.com with SMTP id k4so160005ooa.9;
Wed, 29 Jul 2020 07:21:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
h=mime-version:references:in-reply-to:from:date:message-id:subject:to
:cc; bh=MXXCeOVDbJF3Qb38Jnqqa6CXcTuqhKW69lt/p18c+CE=;
b=kokU5fcqKgX/pkDvlwVUbbdBfdlbbQRnMpIBuLSq1DdBQFESGhMwTcC1hk8MEa4WRe
rb3mIUDApR+Sesz2VEAnPYBYO+hSYpNHFjTixp95+lihbvBkJ9jv6ZGdD0eqxsAJsfya
I/eRuTUozWpJllf3ElT1Iqqxwn28PeUhyCddyBwEaIL9onqFiCT1t1oJcp9HN6v60XwD
pf6GVHNvwj8epagSMqVu/gnuYygNJ6VzUVXkMciKPiAzQPJ7ZgYybbxigfi7JbypPoAn
l0VccehT6kAeRPvFV/xyc0fmwY9CUL5H4O8GkAfBa5tDQIQ/1tVmk+yX98mEcE5kv2p2
s7EQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=1e100.net; s=20161025;
h=x-gm-message-state:mime-version:references:in-reply-to:from:date
:message-id:subject:to:cc;
bh=MXXCeOVDbJF3Qb38Jnqqa6CXcTuqhKW69lt/p18c+CE=;
b=q5MAyQ41/XFfic7XXx3buWUh5SRpjT5jA6fPWGYmEBK3Y+u5Hd+g4cIx8DynUvopGs
5rhnfIV2FfsqxQo0JKPwtMZ7y46hq4G/6bPQgEVO7oTgtStdJV4iOm2r8cQy7FIMs2HL
/2VPlCFBtPn69OWMm2+ENLcZ0CtrgIoMyLOrifBLRa8WwHW0zeIvmN/B2QdYD6D9W8cn
Z6JrHuce5Pke69gej12IPklFCCC/dDg7PzEaFAdWBnPgFvUH4AEO9ryRXqym1bNrDrye
RmlY+lKn788z92VE14fOyF5AND7DPq148cCluDfsE/zvrGTe91C25NJ4cOqKLRkHRS/I
DotA==
X-Gm-Message-State: AOAM532K/QCyZRaJb5uJkzrKlrs7HhJagPcJaWRohliAL+VN2HrMguE+
U+rCXXVBIUk0luG0RKjVpBb9pdr5thm5EXhSXgE=
X-Google-Smtp-Source: ABdhPJznKe6OxqdRqLw+csvN/rvw1xWuIh/Cy/yTux6+3DXJ3gNw+oc6V/obIA/BFUwDrCeQ5xXyMCvV7/HzewwzosU=
X-Received: by 2002:a4a:8257:: with SMTP id t23mr28371745oog.60.1596032513205;
Wed, 29 Jul 2020 07:21:53 -0700 (PDT)
In-Reply-To:
Received-SPF: pass client-ip=2607:f8b0:4864:20::c30;
envelope-from=p.stephani2@gmail.com; helo=mail-oo1-xc30.google.com
X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache.
That's all we know.
X-Spam_score_int: -17
X-Spam_score: -1.8
X-Spam_bar: -
X-Spam_report: (-1.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,
FREEMAIL_ENVFROM_END_DIGIT=0.25, 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-devel@gnu.org
X-Mailman-Version: 2.1.23
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:253324
Archived-At:
Am Sa., 25. Juli 2020 um 22:59 Uhr schrieb Stefan Monnier
:
>
> >> The above "definition" seems to allow that: based on looking at the code
> >> you should be able to assess whether it's safe to allow the compiler (or
> >> anything else for that matter) to precompute the call.
> > I wouldn't know how that should be possible without knowing how the
> > compiler operates (or what it "knows" or can know).
>
> Why would you need to know that?
> As mentioned between parentheses it's not specific to a compiler.
> Is it that you find "precompute" unclear?
Yes, but also referring to a compiler, whether the current
implementation or some abstract one. We should be able to define the
semantics of Emacs Lisp without referring to implementation details
such as byte compilation. The current manual already attempts to do
that, it's just not 100% complete and correct.
>
> > It relies on some (rather vague) terms about the compiler, such as
> > "precompute" and "know". What if we change the compiler significantly
> > so that it "knows" much more?
>
> Doesn't make a difference: it will just make it possible for the compiler
> to precompute more often, whereas what this flag says is "when the
> compiler is *able* to precompute the call, should it be *allowed* to do
> so".
>
>
> Stefan
>