можно наивную реализацию матричного умножения (на чистом питоне!) переписать на этом новом языке (декларируют, что это суперсет питона) и ускорить в 4000 раз. Я в комментариях под тем роликом защищал Джулию, т.к. LinearAlgebra.matmul! на моём ноуте в 16к раз быстрее предложенной реализации на питоне. Да и вообще, зачем ещё один вагон к поезду хайпа ИИ, когда можно развивать существующие инструменты...
в Слаке обсуждение статьи с участием её автора - https://scientificcoder.com/how-to-solve-the-two-language-problem
https://habr.com/ru/articles/733896/
Кстатите, на волне комментариев хотел спросить у знатоков, когда в julia пофиксят неверные ответы. Проблема в чем, если я пытаюсь посчитать 2.0*10^33, то в результате это неравно 2.0e33, хотя с точки зрения математики оно равно.
с точки зрения математики и 0.1+0.1=0.2
Ну и julia выдает 0.2
Разве нету оператора ≈?) Хотя надо посмотреть, вроде это умножение на большое, ошибка накапливается быстрее, как и деление на малое)
вещественные числа нельзя хранить с полной точностью
открыл repl, проверил и поправил пример
Это да. Но на больших числах это приводит к неверным результам. И julia - язык для научных расчетов, и такие вещи надо как то исправлять
а, у вас прост перепелняется тип
Эта особенность идёт из внутренней архитектуры процессоров и машинного представления чисел с плавающей точкой. Julia тут ни при чём
(просто, на си я знаю переполнение с е^32)
зависит от взятого за основу стандарта чисел с плавающей точкой (он указан в офф. документации Джулии, навскидку не помню), ограничения этого стандарта стоит просто принять, т.к., как уже сказали, тут либо точность, либо скорость. Big не советую применять, т.к. они неоптимальны по скорости, а доп. точность такая вам навряд ли нужна.
Обсуждают сегодня