Die Version 1.21.0 des hochpräzisen wissenschaftlichen Taschenrechners ist erschienen numbat, geschrieben in der Programmiersprache Rust und lizenziert unter MIT und/oder Apache 2.0.
Hauptmerkmale von Numbat:
- vollständige Unterstützung physikalischer Größen und Maßeinheiten;
- eine statisch typisierte Programmiersprache für wissenschaftliche Berechnungen;
- Autovervollständigung für Funktionsnamen, Maßeinheiten und Variablen;
- Suche in der Eingabeverlauf;
- umfangreiche Sammlung integrierter Funktionen und Konstanten: Mathematik, Datum und Uhrzeit, Stringverarbeitung und mehr.
- und vieles mehr.
Wesentliche Änderungen in der Version 1.21.0:
- Funktionalität zur Berechnung von Sonnenauf- und -untergängen hinzugefügt (#818) und Mondphasen (#819);
- hinzugefügt die Funktion base_unit_of() (#821);
- mehr Formatierungsoptionen für die Ausgabe hinzugefügt (#822);
- Bereichsgrenzen bei Fehlern verbessert (#823);
- Schattenbildung (shadowing) von Funktionsargumenten und lokalen Variablen erlaubt (#824);
- Updates für die in der vorherigen Version hinzugefügte Unix-Zeitgenauigkeit in Mikrosekunden (#817).
Außerdem seit Version 1.17.0 (die hier zuletzt behandelt wurde), wurden vor der vorherigen Version 1.20.0 folgende wichtige Änderungen vorgenommen:
- Auswahl kleinerer Einheiten bei Addition/Subtraktion;
- neuer Umrechnungsmechanismus;
- hinzugefügt die Funktion parse<T: Dim>(input: String) -> T;
- Unterstützung für das Parsen von Größen hinzugefügt;
- hinzugefügt die Funktion args() für den Zugriff auf die Befehlszeilenargumente;
- Unterstützung für Genauigkeit in Millisekunden und Mikrosekunden für Unix-Zeit;
- Funktionparameter und lokale Bindungen an die entsprechenden typisierten „Löcher“ hinzugefügt (siehe Fehlerbericht) und Dokumentation dazu;
- ein Beispiel für einen Tidegraph hinzugefügt;
- die Funktion inspect hinzugefügt;
- Anzeige der Typen in den Aufrufen von inspect;
- jiff auf Version 0.2.18 aktualisiert;
- der reset-Befehl in der CLI-Version korrigiert;
- generalisierte Strukturen;
- Runge-Kutta-Verfahren;
- Generierung eines DivisionByZero-Fehlers bei der Potenzierung von Null auf negative Exponenten;
- ein Build für aarch64-unknown-linux-musl hinzugefügt;
- Bereiche zu RegistryErrors hinzugefügt;
- ein Alias KB hinzugefügt;
- Module in die Einheitliste aufgenommen;
- Unicode-Eingabe für die Web-Version;
- mehrere Aktualisierungen der Dokumentation;
- und vieles mehr.
Quelle: linux.org.ru
