GNU bug report logs - #56641
Deprecate `lsh`

Previous Next

Package: emacs;

Reported by: Mattias Engdegård <mattiase <at> acm.org>

Date: Tue, 19 Jul 2022 13:39:01 UTC

Severity: normal

Done: Mattias Engdegård <mattiase <at> acm.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Po Lu <luangruo <at> yahoo.com>
To: Mattias Engdegård <mattiase <at> acm.org>
Cc: Eli Zaretskii <eliz <at> gnu.org>, stefankangas <at> gmail.com, 56641 <at> debbugs.gnu.org
Subject: bug#56641: Deprecate `lsh`
Date: Wed, 20 Jul 2022 20:21:59 +0800
Mattias Engdegård <mattiase <at> acm.org> writes:

> The purpose of `lsh` is not breaking old code. (It used to have a
> different purpose but it vanished when bignums were introduced.)
> There is no reasonable use for it in new code.

So you're saying there is no possible use for expecting the value of
this:

  (lsh most-negative-fixnum -1)

to become:

  #x1000000000000000

> Even in the unlikely event of code that just happens to need that sort
> of quirky behaviour, it is much better implemented explicitly where
> it's used, in terms of `ash`.

Why is that better? What business does the byte compiler, or some idea
of "platform independence" have in dictating that I should write extra
code (instead of using something built-in) to implement a network
protocol?




This bug report was last modified 2 years and 301 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.