Вышла версия 1.21.0 высокоточного консольного научного калькулятора numbat, написанного на языке Rust и распространяемого по лицензии MIT и/или Apache 2.0.
Отличительные особенности Numbat:
- полная поддержка физических размерностей и единиц измерения;
- язык программирования со статической типизацией для научных вычислений;
- автодополнение имён функций, единиц измерения и переменных;
- поиск по истории ввода;
- большой набор встроенных функций и констант: математические, дата и время, обработка строк и другие.
- и многое другое.
Основные изменения в версии 1.21.0:
- добавлена функциональность для рассчёта рассветов и закатов (#818) и фазы Луны (#819);
- добавлена функция base_unit_of() (#821);
- добавлено больше настроек для форматирования вывода (#822);
- улучшены ограничения диапазона при ошибках (#823);
- разрешено затенение (shadowing) аргументов функций и локальных переменных (#824);
- обновления для добавленной в предыдущей весрии точности времени Unix в микросекундах (#817).
Также с версии 1.17.0 (последней освещавшейся здесь), до предыдущей версии 1.20.0 были произведены следующие важные изменения:
- выбор меньшей единицы при сложении/вычитании;
- новый механизм конвертации;
- добавлена функция parse<T: Dim>(input: String) -> T;
- добавлена поддержка парсинга размерных величин;
- добавлена функция args() для доступа к аргументам командной строки;
- поддержка точности в миллисекундах и микросекундах для unix-времени;
- добавлены параметры функций и локальные привязки к соответствующим типизированным «дыркам» (см. багрепорт) и документация к ним;
- добавлен пример графика приливов;
- добавлена функция inspect;
- отображение типов в вызовах inspect;
- обновление jiff до версии 0.2.18;
- исправлена команда reset в CLI-версии;
- обобщённые структуры;
- метод Рунге—Кутты;
- генерация ошибки DivisionByZero при возведении нуля в отрицательную степень;
- добавлена сборка для aarch64-unknown-linux-musl;
- добавлены диапазоны к RegistryErrors;
- добавлен псевдоним KB;
- добавлены ссылки на модули в список единиц;
- ввод Unicode для веб-версии;
- множественные обновления документации;
- и многое другое.
Источник: linux.org.ru
