From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 31145 invoked from network); 22 Apr 2021 20:45:49 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 22 Apr 2021 20:45:49 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1619124349; b=cG+5TL3sUHIRz6FxJyDbCgklXemJF6WzXlSuF/qr824Q2trYvQydhsxDD91Mz0Q9+ipptGOq/D N/mMrPvvJZ2GmkJMA556ibA7yL756p8PipG5RXTSl82i6nsV8oSlstKb6USzRPhgdMzEPIgwSJ wgtqw6kTdgrBFS7dqI0+UpW+zTzXZbrV3kf/MjtaVvVNUiro0IvkVEhn/Gntb6Y0WvJess286e z5eKEYrBWs9leN64wLMGerlGUMJmBDPCZ+oOiZANRxhqJL2xPPO6CMSYgrDhMWf01InI2HSkug Dybrp9uoDLaCPXTSigReJAP6GmA3j5JcjEKO1b+tNp5MdQ==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (wout4-smtp.messagingengine.com) smtp.remote-ip=64.147.123.20; dkim=pass header.d=daniel.shahaf.name header.s=fm3 header.a=rsa-sha256; dkim=pass header.d=messagingengine.com header.s=fm2 header.a=rsa-sha256; dmarc=none header.from=daniel.shahaf.name; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20200801; t=1619124349; bh=h9NiQLCs9cHBP0uY+2ads5iFS3ZngL0xiSCdSe0YGkg=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:In-Reply-To:Content-Transfer-Encoding:Content-Type: MIME-Version:References:Message-ID:Subject:To:From:Date:DKIM-Signature: DKIM-Signature:DKIM-Signature; b=JFLXtHAKW6H5DwSqfs7XEIldgDWT9qoM2T/DNXLm+4Qopkxf2BLMX6LbF6dOTDwptOfayUwGtT YYhLyjTlSYVsjUY4Pc2/bEi2SSr77xN4WRtHTzXa0zoUS5Q2SmeqSGihuPFH4N5GUWuVOZGnxP vEjb86syneoe92pd/SxV9itggrJrSm826Jv51s4ctRNpk5gAq3LVPuFjz1wXK2mrIkD1UJz1aa 9xxePHQ4qVPZrJQbxijKLLbLXOT0pfxibOpCme4eiClrvb3LufhIpaKH9ZOu/tr6D0aKsWkuLc YYY+X05MQQXMRNp2JF/h6zIs7lUkO52VYnnOhqZup3WIQQ==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:In-Reply-To:Content-Transfer-Encoding :Content-Type:MIME-Version:References:Message-ID:Subject:To:From:Date: Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=T8vVUol0MfAexq3Tlx4fj0VI8YpJ57c6d0wg85J/ERc=; b=V+Uq+wluArXP6uxvQqI3EuEigA 8GBVKRPR2HZeimD6gngJIl87eIif4WJ8GVTe+To77b/jTs/vB2plnDbRy3firZPjdXre0l3SUF8U8 oK533lvSBw7G/ihYoxVIzO66VKB6CtMUJ2JTL7E58vyLJ1Us1HrsbuOjZitsn8Zg/wefoekwjwG06 gQhG/cA1BGX7h1GZHABm0Bz39bmVvlvy3gJA7AR4POrbrq0+c4zMlWNY+csoSRq2a8q6Ufh0+Rmv0 vWWifNkWV9wuS85Dg9S50r4c+kTZtIejSL/VMOGhS+MfgrUiftIxUjKNfhSLX28zt1Rjx5tQGEWGZ KCyDdnFg==; Received: from authenticated user by zero.zsh.org with local id 1lZgCr-000Ijv-7C; Thu, 22 Apr 2021 20:45:49 +0000 Authentication-Results: zsh.org; iprev=pass (wout4-smtp.messagingengine.com) smtp.remote-ip=64.147.123.20; dkim=pass header.d=daniel.shahaf.name header.s=fm3 header.a=rsa-sha256; dkim=pass header.d=messagingengine.com header.s=fm2 header.a=rsa-sha256; dmarc=none header.from=daniel.shahaf.name; arc=none Received: from wout4-smtp.messagingengine.com ([64.147.123.20]:57641) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_256_GCM_SHA384:256) id 1lZgCd-000ITd-Sl; Thu, 22 Apr 2021 20:45:36 +0000 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.west.internal (Postfix) with ESMTP id 45094230B; Thu, 22 Apr 2021 16:45:34 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Thu, 22 Apr 2021 16:45:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= daniel.shahaf.name; h=date:from:to:subject:message-id:references :mime-version:content-type:content-transfer-encoding :in-reply-to; s=fm3; bh=T8vVUol0MfAexq3Tlx4fj0VI8YpJ57c6d0wg85J/ ERc=; b=Fe15etaPW/WnlW8AyvsIBSmrQBSSJi7IJwg7gffpGrSUqcYQqsobGPvK GHyZS+4ryfyTlAxNPCj3969Cn38YJRSP4rrxPY9NLr/xrZ+P5/IpbiYKI9IJp3kp BbAYc9cTAeyrOAYTCz1eGf6k67Fe5ri82XuZrEGRglPIOasvMEzD9a35xUgJ5nLW 5nDFF6PkYkk+Y8RbkDaINrxAgRHL5wgrCnxyFEiFPnP8IL87kfbujOGninCHNOuu FduqxS49AL1ezL2PWOjVSmedCDj773POaZM3gm/m66Hr78yQhSnxZn+s7TTRjHCi VExDeB84xqDaN/CPGOaRcra4ebIPBA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=T8vVUol0MfAexq3Tlx4fj0VI8YpJ57c6d0wg85J/E Rc=; b=Cy9ubo9nvOiabvpauMwvXEawp/IXkYY5QiIpLqvlL7pVXCG0Doi8/alJs YYwkiXFPTgq+7MKd/KYf/kYtXlVwOjfIogYrVbzFkk9rSqOiwwtMge6G8qYKyNGy klOqZOqUO5AI7ZS1VFwVxIVFfZ61b1HlBrfKq1cp1bUfklKjuIzGvMJhwnGrH5ei 4qI2DrgV6b/J22zV0z3rI20mO9W+NqT58kvAK0hfm9kVPKdxWYL2pqDU7Td9au49 e0ntnPQujv88oTogTGH2wxbVUBfOjPpjWbIMWvP/9JzJw6K6D29r4aDpx8IwcLxm MAuUL8R5neRbnXcyP8B5gTcRRFVpw== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvddutddgudehfecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvffukfhfgggtugfgjggfse htkedttddtredunecuhfhrohhmpeffrghnihgvlhcuufhhrghhrghfuceougdrshesuggr nhhivghlrdhshhgrhhgrfhdrnhgrmhgvqeenucggtffrrghtthgvrhhnpefgleehtdffue fhgeeuleefffejgedttdelhedvvdeuiefhvefgvdfghfevvdekteenucfkphepuddtledr ieeirdeifedrvdeftdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpegurdhssegurghnihgvlhdrshhhrghhrghfrdhnrghmvg X-ME-Proxy: Received: from tarpaulin.shahaf.local2 (bzq-109-66-63-230.red.bezeqint.net [109.66.63.230]) by mail.messagingengine.com (Postfix) with ESMTPA id 756CE240057 for ; Thu, 22 Apr 2021 16:45:33 -0400 (EDT) Received: by tarpaulin.shahaf.local2 (Postfix, from userid 1000) id 4FR8ZM45bkz1RL; Thu, 22 Apr 2021 20:45:31 +0000 (UTC) Date: Thu, 22 Apr 2021 20:45:31 +0000 From: Daniel Shahaf To: zsh-workers@zsh.org Subject: Re: sh emulation POSIX non-conformances ("inf"/"Inf" in arithmetic expressions) Message-ID: <20210422204531.GB13421@tarpaulin.shahaf.local2> References: <7FD930F4-37CD-402B-9A06-893818856199@dana.is> <20210411175726.hxnm33mxoska2tsm@chazelas.org> <20210411193154.zkekzvb4o6xmriwo@chazelas.org> <20210413071742.tisslgg5fdqbageg@chazelas.org> <20210422153100.GD154089@zira.vinc17.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.10.1 (2018-07-13) X-Seq: 48662 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Bart Schaefer wrote on Thu, Apr 22, 2021 at 11:55:25 -0700: > On Thu, Apr 22, 2021 at 8:31 AM Vincent Lefevre wrote: > > > > On 2021-04-13 08:17:42 +0100, Stephane Chazelas wrote: > > > I think it would be worth documenting that nan and inf are > > > recognised in arithmetic expressions (and warn against using > > > variables with the same name). > > > > IMHO, zsh should also output a warning when such variables are used. > > Exactly how would that work? > > Warning anytime the names "inf" or "nan" (and case variants) get > values assigned to them seems like overkill. > Warn only when the variable is created, e.g., upon «typeset -F inf» or «(( nan = 3.14 ))», but not subsequent assignments? > If they appear as $inf or $nan then there's no conflict. Still warn? No, I guess? No one expects «$42» and «42» to mean the same thing, nor «$0.0» and «0.0». > If "inf" and "nan" appear in math context as the bare strings they're > currently taken as constants. Always make a (usually > wasted/fruitless) check to see whether there happens to be a variable > of the same name and emit a "watch out, not used" message? No; optimize for the common case that $inf and $nan don't exist. Warning upon creation of those suffices. > Predefine $inf and $nan as readonly float variables initialized to the respective values? (Not saying this is a good idea; just mentioning it for completeness) Cheers, Daniel