Release 0.8.6 "Daniel" - Bug fixes and optimizations
Pre-release
Pre-release
This release is mostly intended to fix a number of issues reported by users or discovered during testing.
Features
- Fancy digits are now accepted for decimal and based numbers. This means that
1.E³²
is now a valid input toStr→
, ensuring that we can parse the output of→Str
if it uses fancy characters, or that copy-paste works from the stack to the editor. - Accept array arguments for
min
andmax
, applied element-wise in the same way as addition for example. - Add
CompatibleBasedNumbers
setting to render16#AB
as#ABh
like HP calculators. - Improve protection against mismatched QSPI and PGM. Only binaries issued from the same build are now accepted. This is mostly of interest to developers, although releases that are very close to one another, like v0.8.4 and v0.8.5 were, can require this protection.
- On DM32, numbers with an explicit numerical base keep that base if it's 16, 10, 8 or 2. For example,
10#200
and#200₁₀
will display in base 10 irrespective of theBase
setting, just like#200d
. - Add
ϵ
character (Greek Lunate epsilon), which appears in some equations. - Add text alignment options to
DrawText
, making it possible to align text horizontally or vertically. See examples at end of theTexts
program inDemo.48s
- Add
UnitsSIPrefixCycle
command to set the variable with the same name to customize SI prefixes cycling for units on the command-line.
After"KMG" UnitsSIPrefixCycle
, typing theCycle
key (_×10ⁿ or EEX) with1_B
will cycle through1_KB
,1_MB
,1_GB
and back to1_B
. - Accept
u
as an alternative SI prefix for "micro-", e.g.1_us
. This is intended to allow entering of the "micro" prefix using transient alpha mode. - Add help lookup for solver variables. When in the
SolverMenu
, holding the function key for a vairable brings up the help for the corresponding variable in the equations library. - Add
SiDensity
(SIDENS
on HP) andFanning
functions to the library. These functions are used by some equations in the library. - Add
invert
alias for 1/x operation (likenegate
forneg
).
Bug fixes
- Fix unit scale cycling for multi-character units
- Fix incorrect computation of output matrix size for non-square matrices.
[[1 2]][[3 4]] +
now works. - Negation on based numbers and polynomials now works.
- Conversion of decimal values smaller than 1.0 to integer no longer crashes (this could only happen with the
RanM
command) - Render
-
for first term of polynonials if negative - On DM42, update the bases menu when cycling based numbers
- Fix parameter mixup for call to
program::run
. In theory, this could lead to programs not evaluating correctly ifNoLastArguments
setting was set, although another bug apparently made this very unlikely to be observed. - Update index footer to point to
https://48calc.org
instead of obsoletehttps://github.io
location. - Updating a
for
loop variable from within the loop now behaves like on HP calculators, and can be used to control loop exit. - Do not draw activity indicator in graphical mode. This was a regression introduced with
BusyIndicatorRefresh
. - Mark
xroot
command as implemented in thePowersMenu
- Use consistent case for variable
x
in the equations library - Do not error out comparing text values
- doc: Fix typo
latter
->letter
Improvements
- Add auto-cleaner optimizations for matrix and vector operations. This reduces the memory usage and frequency of garbage collections.
- Reduce
random
bias for integer input, e.g.-10 10 random
no longer has a +0.5 bias on average. - doc: Several updates and fixes to the documentation, notably with respect to the description of the current status, and instructions for Windows developers.
- Add
→Prg
alias for→Program
- Add the simulator minimum window size
- Add
rmdir
as an alias forpgdir
. "This is Unix". - Add
L
(uppercase) spelling for "liter" unit - doc: Avoid overlapping aliases in
Rcl/
help text by adding some
aditional text to theRcl*
help. - doc: Add documentation for
SolverMenuSolve
andSolverMenuRecall
- doc: Fix documentation for
AssignKey
- doc: Add documentation for comparisons
- doc: Remove duplicate
dup
- doc: Update documentation about
add
- doc: Refer to
CharactersMenu
andCatalog
in alpha overview - doc: Update keyboard sequences typography
- doc: Remove false claim that interactive stack is not implemented
- doc: Update implemented / unimplemented list
Signed-off-by: Christophe de Dinechin christophe@dinechin.org