LINUX.ORG.RU

Numbat 1.17.0

 , , , ,


1

2

27 декабря, после почти одиннадцати месяцев разработки, состоялся выпуск 1.17.0 высокоточного консольного научного калькулятора numbat, написанного на языке Rust и распространяемого по лицензии MIT и/или Apache 2.0.

Отличительные особенности Numbat:

  • полная поддержка физических размерностей и единиц измерения;
  • язык программирования со статической типизацией для научных вычислений;
  • автодополнение имён функций, единиц измерения и переменных;
  • поиск по истории ввода;
  • большой набор встроенных функций и констант: математические, дата и время, обработка строк и другие.
  • и многое другое.

Основные изменения:

  • добавлена опция конфигурационного файла edit-mode (emacs по умолчанию, также доступен параметр vi);
  • добавлена поддержка метрических префиксов для секунды дуги;
  • добавлены двоичные префиксы Ri и Qi для robi (2⁹⁰) и quebi (2¹⁰⁰);
  • добавлена функция quantity_cast<From: Dim, To: Dim>(f: From, t: To) -> To;
  • добавлена поддержка вычисления мультифакториалов;
  • в модуль extra::algebra добавлена функция cubic_equation для решения кубических уравнений;
  • добавлена устаревшая единица яркости нит;
  • добавлена команда info ... для вывода подробной информации об идентификаторе;
  • команда help commands выводит список доступных команд;
  • значительно улучшена производительность функции str_find;
  • точка с запятой добавлена в качестве дополнительного разделителя операторов;
  • запись вычисляемого выражения в файл истории вычислений теперь осуществляется сразу же после вычисления;
  • добавлен пример submarine_cable.nbt для вычисления задержки в подводных оптоволоконных сетях;
  • добавлено автоматическое дополнение парными скобками функций без параметров;
  • улучшено отображение всех экспонент;
  • после дискуссии, американские и метрические столовые и чайные ложки обменяны местами;
  • при наличии в выражении символа, не входящего в диапазон ASCII, при выводе сообщения об ошибке теперь также отображается его шестнадцатеричный код;
  • другие улучшения и исправления ошибок.

>>> Документация

>>> Таблица сравнения с другими научными калькуляторами и языками программирования

>>> Список изменений версии 1.17.0 на GitHub

★★★★★

Проверено: CrX ()
Последнее исправление: dataman (всего исправлений: 5)

Эксперимент: отсортированный список оригинальных изменений в первой редакции исправлений.

dataman ★★★★★
() автор топика

А вот этот промт, это он сам по себе такой кринжевик-затейник, или автор-демонстратор своеобразен?

Smacker ★★★★★
()

Для потоковых вычислений подходит? А то в таком виде как тут показано не могу представить зачем он нужен

screamager
()

вот есть раст (или питон) и есть вот это. Какие юз-кейсы покрывает это чудо, чего нельзя накодерить прямо на ЯП?

Оффлайн справочник по константам?

seiken ★★★★★
()
Ответ на: комментарий от seiken

Удобно работать с рассчётами в разных единицах измерения — numbat сам их для тебя переводит и вычисляет, в каких единицах будет результат. Это в том числе избавляет от некоторых ошибок, когда что-то забыл домножить или доделить, и получил в итоге какое-то значение, но оказалось, что на самом деле оно не в тех единицах, в которых ты ожидал.

Вот простенький пример из моего коммента в старой теме: https://0x0.st/88dv.png

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 2)
Ответ на: комментарий от CrX

это ты про британскую систему счисления? Но это же исключительно проблемы их культурной отсталости.

seiken ★★★★★
()
Ответ на: комментарий от seiken

Какую нафиг британскую систему счисления?.. Ты вообще это к чему?

Нет, я о том, что если ты делишь метры (километры, дюймы) на секунды (минуты, сутки, недели), то получаешь именно скорость, а не что-то ещё. И тебе не нужно за этим отдельно следить.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 3)
Ответ на: комментарий от screamager

Для потоковых вычислений подходит?

Типа $ echo "1+2" | numbat? Тогда да.

dataman ★★★★★
() автор топика

Выглядит годно, спасибо за новость

pihter ★★★★★
()
Ответ на: комментарий от dataman

Да, это как нельзя лучше демонстрирует одновременно всю мощь раста и широту опций кастомизации.

Smacker ★★★★★
()
Ответ на: комментарий от seiken

Какие юз-кейсы покрывает это чудо, чего нельзя накодерить прямо на ЯП?

Так про любую программу сказать можно! :)

Юзкейс такой: если человек не программист, а посчитать хочет

pihter ★★★★★
()
Ответ на: комментарий от dataman

Все же кодеры через одного!

С одной стороны да. С другой - минули те времена, когда каждый первый умел в консоль…

Zhbert ★★★★★
()

Кул. А как он команды исполняет, интерпретирует, или компилирует в родной код?

yvv1
()
Ответ на: комментарий от idamir

Чем лучше или хуже Qalculate!

171! уже не вычисляет.

dataman ★★★★★
() автор топика
Ответ на: комментарий от pihter

Юзкейс такой: если человек не программист, а посчитать хочет

И мы дадим ему новый язык программирования, пусть его осваивает. Только назовём его калькулятором, чтоб никто не догадался.

JaneDoe
()

/off-topic

@dataman

На днях наткнулся на любопытный новый проект. Очередной консольный текстовый редактор.
Я ещё не пробовал, есть пара «минусов»:
во-первых, слишком «навороченный» для меня, почти IDE в консоли;
во-вторых, на Rust (предупреждаю чтобы самые ярые ненавистники сразу прошли мимо).

Он сейчас есть в AUR, но там была проблемная версия (ошибки в PKGBUILD); разработчики предлагают через curl и установочный скрипт.
Так что, если ещё не попадалось, то тебе как поклоннику такого класса программ может быть интересно.
Через менеджер пакетов искать fresh-editor. За подробностями сюда.

k6
()
Ответ на: комментарий от k6

За подробностями сюда.

Спасибо, потыкаю!

Fresh is built for the developer who wants a familiar, non-modal experience out-of-the-box

Наконец-то! :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от JaneDoe

И мы дадим ему новый язык программирования, пусть его осваивает

Я сабж не смотрел но выглядит проще любого языка и заточенность под задачу. Не понимаю че вы бухтите: больше свободного софта хорошего и разного!

pihter ★★★★★
()

Хотел пожужжать, что родных эргов и килограмм-сил нет, а они там есть. По описанию и картинкам выглядит годно, хоть и раст.

Ecl
()
Ответ на: комментарий от dataman

Затем что интерпретируемый код будет гораздо медленнее нативного. Возможность написать числодробилку на расте и обернуть её в модуль для сабжа была бы весьма полезной.

yvv1
()
Ответ на: комментарий от yvv1

Тогда не знаю. В Расте я ни бум-бум, только готовое иногда компилирую. :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от pihter

я посмотрел примеры. Проще посчитать в Экселе, чем разбираться с каким-то растом…

seiken ★★★★★
()
Ответ на: комментарий от seiken

числодробилка на калькуляторе

Именно так и должно быть.

yvv1
()

На фортране надо такое писать :)

DrRulez ★★★★★
()

А со старым хозяином что случилось?

написанного на языке Rust

Почему-то всегда настораживает преподнесение подобного как фичи.

Wombat_Ichule
()
Ответ на: комментарий от JaneDoe

Ага. Пришли просто посчитать, тут лопаты дали. Он копал и я накопал оба мы копали.

UriZzz ★★
()
Ответ на: комментарий от UriZzz

Если обе лицензии, то просто «и», не?

Некоторые проекты иногда пишут «на ваш выбор». Может и в этом так было (во время написания предыдущей новости), но мне лень смотреть коммиты.

dataman ★★★★★
() автор топика
Последнее исправление: dataman (всего исправлений: 1)
Ответ на: комментарий от Wombat_Ichule

Почему-то всегда настораживает преподнесение подобного как фичи.

Оно не преподносится как фича. @dataman почти во всех своих новостях считает обязательным указание языка и лицензии, даже когда это очень известный проект вроде curl. Разве что для совсем уж основополагающих вроде ядра нет такого указания.

Я тоже считаю это хорошей идеей, если что. Как минимум для подобного софта, который не является заранее известным буквально любому читающему новость.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)

В екселе остро не хватает простой консоли вот такого типа.

Irma ★★★
()
Ответ на: комментарий от Ololo_Trololo

А когда ты раньше считал в уме, у тебя лопался сосуд к головном мозге?

Утечки памяти? В расте они безопасны, не боись!

Bfgeshka ★★★★★
()

Прикольно, но как будто не очень нужно. Даже вектор нельзя умножить или два раза повторить список:

>>> [1,2,3] * 2
error: while type checking

Но направление хорошее для будущих языков программирования, чтобы они в REPL были как минимум такими же хорошими удобными калькуляторами.

neumond ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.