Version 2.4.0
This is a production release primarily aimed at improving dc
.
- A couple of copy and paste errors in the
dc
manual were fixed. dc
startup was optimized by making sure it didn't have to set upbc
-only things.- The
bc
&&
and||
were made available todc
through theM
andm
commands, respectively. dc
macros were changed to be tail call-optimized.
The last item, tail call optimization, means that if the last thing in a macro is a call to another macro, then the old macro is popped before executing the new macro. This change was made to stop dc
from consuming more and more memory as macros are executed in a loop.
The q
and Q
commands still respect the "hidden" macros by way of recording how many macros were removed by tail call optimization.
$ sha512sum bc-2.4.0.tar.xz
43006a9f0b3acbc27fb3726536eb8723155521c3b29e187d54b350320f179454c526f5e5e66c0b3a1fca62003d1e830220d4753fd374efa3a0fa1f8a1d02e739 bc-2.4.0.tar.xz
$ sha256sum bc-2.4.0.tar.xz
95bf33fe35a80612b800bf6db5b2164f28b6147809a2f600a504e59263ba9c84 bc-2.4.0.tar.xz
$ stat -c '%s %n'
168000 bc-2.4.0.tar.xz
$ sha512sum bc-2.4.0.tar.xz.sig
e62656fe4e7b37f93bd5144fe54180d8e7b71e6445bee94604cfbd58730972c14388aaf26f9bf77cc4d0bd8ecd48f3d92642c6d827602c3e11c095f3308575c5 bc-2.4.0.tar.xz.sig
$ sha256sum bc-2.4.0.tar.xz.sig
54bd3d4e2c0f84609abfbfa0be7eab7d006ea1942bf195ba4fc6da310fb9afb3 bc-2.4.0.tar.xz.sig
$ stat -c '%s %n'
662 bc-2.4.0.tar.xz.sig