The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск Python-библиотеки для научных вычислений NumPy 1.25.0 "
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск Python-библиотеки для научных вычислений NumPy 1.25.0 "  +/
Сообщение от opennews (?), 18-Июн-23, 07:33 
Доступен релиз Python-библиотеки для научных вычислений NumPy 1.25, ориентированной на работу с многомерными массивами и матрицами, а также предоставляющей большую коллекцию функций с реализацией различных алгоритмов, связанных с использованием матриц. NumPy является одной из наиболее востребованных библиотек, применяемых для научных  расчётов. Код проекта написан на языке Python с применением оптимизаций на языке Си и распространяется под лицензией BSD...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=59312

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Иваня (?), 18-Июн-23, 07:33   +/
Непонятно, за счёт чего увеличена скорость выполнения? Интересно, что там такого сделали?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #5, #22, #32, #33, #47, #92

2. Сообщение от Аноним (2), 18-Июн-23, 07:41   –4 +/
начали транслированть код с питона на си, а потом включают оптимизацию -O2
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #3

3. Сообщение от Аноним (3), 18-Июн-23, 07:55   –5 +/
а что это за оптимизация такая ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #73

4. Сообщение от Аноним (4), 18-Июн-23, 08:00   +10 +/
> с использованием оператора "@="

Побольше нескучных операторов в стиле перла! В идеале весь код должен состоять из спец-символов. Alpha-numeric символы -- для 13-летних школьниц, код должен быть максимально непонятным.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #6, #20, #28, #60

5. Сообщение от Аноним (5), 18-Июн-23, 09:35   +1 +/
Потому что на C она написана.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

6. Сообщение от Анонимemail (6), 18-Июн-23, 09:36   +/
Не даёт покоя слава https://ru.m.wikipedia.org/wiki/Brainfuck
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #11

11. Сообщение от Анонус (?), 18-Июн-23, 10:23   +5 +/
Ну зачем так сразу, есть более приличный образец для подражанияhttps://ru.wikipedia.org/wiki/APL_(язык_программирования)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #15, #40

14. Сообщение от Аноним (33), 18-Июн-23, 11:03   –1 +/
>Обеспечено формирование wheel-пакетов на базе стандартной Си-библиотеки musl.

Лучше бы для risc-v и armv7 пакеты сформировали.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #16, #76

15. Сообщение от Аноним (15), 18-Июн-23, 12:45   +1 +/
C++ уже превратился в аналог PL/I.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #18, #48, #87

16. Сообщение от Аноним (15), 18-Июн-23, 12:45   +1 +/
Берёшь и делаешь. Думаешь, что этот софт Фиксики пишут?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

18. Сообщение от Аноним (18), 18-Июн-23, 13:30   +4 +/
Нет это раст уже давно был спроектирован как замена PL/I.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

19. Сообщение от Аноним (19), 18-Июн-23, 13:54   –1 +/
Кто-о ещё пользуется говном по имени MATLAB?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #23

20. Сообщение от Tron is Whistling (?), 18-Июн-23, 13:57   +/
@= ?
Nuke?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

21. Сообщение от Аноним (21), 18-Июн-23, 14:13   +4 +/
numpy - один из столпов, на котором держится популярность питона. Не исключено, что самый важный. С одной стороны, жаль что не входит в стандартную библиотеку питона, с другой - так он развивается независимо и может обновляться отдельно от самого питона. Многих лет и тому и другому.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #24, #26

22. Сообщение от Аноним (22), 18-Июн-23, 14:14   +1 +/
За счёт ускоренного Python 3.11 https://www.opennet.ru/opennews/art.shtml?num=57971
"Проведена значительная работа по оптимизации производительности. ... В зависимости от вида нагрузки отмечается прирост скорости выполнения кода на 10-60%. В среднем производительность при прохождении тестового набора pyperformance увеличилась на 25%."06
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

23. Сообщение от Аноним (18), 18-Июн-23, 14:23   +2 +/
Приблизительно все кому ехать, а не шашечки и у кого легаси.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #36

24. Сообщение от Аноним (18), 18-Июн-23, 14:24   –1 +/
Вызывай из раста через питон какие проблемы?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #27

26. Сообщение от Аноним (33), 18-Июн-23, 14:26   –1 +/
>жаль что не входит в стандартную библиотеку питона

Очень хорошо, что не входит. Эту стандартную библиотеку давно упразднить пора и определить просто как список предустановленных пакетов. При этом чтобы абсолютно все пакеты там можно было обновить без обновления версии питона.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #38, #53

27. Сообщение от Аноним (27), 18-Июн-23, 14:27   +/
пропущен фронтенд на js
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #88

28. Сообщение от Аноним (22), 18-Июн-23, 14:27   +/
У Перла главная нескучность - символ $ в имени всех переменных. Впрочем, у PHP тоже.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #49

29. Сообщение от Аноним (-), 18-Июн-23, 14:36   –3 +/
>>  Python-библиотеки для научных вычислений

Для научных вычислений это скорее scipy и sympy.
Numpy это скорее базовая прикладная математика.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #94

32. Сообщение от YM2608 (?), 18-Июн-23, 15:36   +/
за счёт битовых сдвигов
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

33. Сообщение от Аноним (33), 18-Июн-23, 15:53   +/
Дропнули устаревшие процессоры.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

34. Сообщение от Аноним (-), 18-Июн-23, 15:55   +/
Работники науки! Учите Питон! Фортран устарел, уже давно.
Ответить | Правка | Наверх | Cообщить модератору

36. Сообщение от Аноним (36), 18-Июн-23, 16:56   –1 +/
Те кому ехать, сейчас уже переползли на Julia. А вот legacy - это да...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23 Ответы: #37, #70

37. Сообщение от Аноним (18), 18-Июн-23, 17:37   +1 +/
Пойду скажу знакомым из НИИ что они уже переползли на Жулию, пусть похохочат.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #41, #46

38. Сообщение от Аноним (18), 18-Июн-23, 17:39   +/
Такого не может быть или они часть питона и выходят вместе с новой версий питона или никак. Если это будут просто пакеты никто не будет задерживать релиз до полной совместимости пакета и новой версий питона. И эта самая совместимость очень быстро улетучится совсем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #91

39. Сообщение от economist (?), 18-Июн-23, 17:58   +1 +/
В 95% numpy используется из pandas. Несколько сильных шагов в части ускорения связки python+numpy+pandas (например переход на apache arrow) - перечеркивают закосневшие журнализмы *выводы о тормознутости матрасчетов на Python) и требуют переосмысления.

А еще требуют pip install -U pandas numpy

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

Выход на 1-е место в DS ЯП Julia и канонизация в вечность для Matlab - опять откладываются на неопр. срок.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42, #44

40. Сообщение от pashev.ru (?), 18-Июн-23, 18:21   +/
http://git.pashev.ru/gcd/tree/gcd.apl
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #43

41. Сообщение от Аноним (36), 18-Июн-23, 18:29   +/
Ну если они на Matlab сидят, то у них есть шанс хохотать уже в следственном изоляторе. Тупо за использование нелицензионного ПО.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #52

42. Сообщение от Аноним (2), 18-Июн-23, 18:39   +/
всё что там требуется - это format c:
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39 Ответы: #54

43. Сообщение от Анонус (?), 18-Июн-23, 19:19   +2 +/
> http://git.pashev.ru/gcd/tree/gcd.apl

⍝ Символ комментария конечно шикарный

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #40

44. Сообщение от Анонус (?), 18-Июн-23, 19:24   +1 +/
> Выход на 1-е место в DS ЯП Julia и канонизация в вечность
> для Matlab - опять откладываются на неопр. срок.

Кажется Джулия поскользнулась где-то на старте и уже не взойдет на пьедестал.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39 Ответы: #45

45. Сообщение от Аноним (36), 18-Июн-23, 19:32   –1 +/
У Джулии ошибка в маркетинге. Физиков, вычислительных биологов и химиков они к себе привязали просто за счёт куда более удобной инфраструктуры вокруг языка и доступных библиотек. А вот в массовом DS - да, прозевали. То есть, Julia сейчас ушла в научную сферу, но ширпотреб - не ясно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #44 Ответы: #57, #62, #71

46. Сообщение от Бывалый смузихлёб (?), 18-Июн-23, 21:03   –2 +/
Это те которые до сих пор в латех верстают потому что не в курсе о возможности ввода формул в ворде ?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #37 Ответы: #50, #66, #69

47. Сообщение от Аноним (80), 18-Июн-23, 21:07   +1 +/
На питоне обертка, а трудяга оптимизированный Си?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #55, #63, #89

48. Сообщение от Аноним (80), 18-Июн-23, 21:21   –1 +/
Естественно ведь там есть обобщенные типы, интерфейсы, функции. Есть перегрузка операторов.
Все языки где есть "обобщенность" тем или иным образом похожи на PL. В том числе и Rust
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

49. Сообщение от Другой Анон (?), 18-Июн-23, 21:25   +1 +/
В Perl так было сделано, потому что после $ ожидается не "имя", а выражение. То есть вы можете сделать, например, так:
perl -E '${"foo" . "bar"} = 123; say $foobar;
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28

50. Сообщение от Аноним (18), 18-Июн-23, 21:27   +2 +/
Тот кто реально пишет про этот дурацкий редактор формул в ворде очевидно никогда никакой не то что научной деятельностью, но и вообще нормального образования не имеет, кроме школьного. На этом разговор окончен.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

52. Сообщение от Аноним (18), 18-Июн-23, 21:30   +/
Если ты реально веришь что эти бредни по телевизору, то желаю твоим ушам выдержать ещё больше тонн лапши. У них на этаже импортозамещенная ОС одна на весь этаж. Все остальное нормальные ОС и на лицензии им в целом наплевать, хотя есть много лицензий. Да и кто их будет проверять ты туда без спецразрешения от генерала даже не зайдешь.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41 Ответы: #56

53. Сообщение от Аноним (80), 18-Июн-23, 21:33   +/
> Эту стандартную библиотеку давно упразднить пора

А что в питоне есть core (как в Rust), где реализованы примитивы?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #26 Ответы: #90, #96

54. Сообщение от Аноним (80), 18-Июн-23, 21:37   +/
access deny
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42

55. Сообщение от Аноним (55), 18-Июн-23, 21:45   +1 +/
Да. Си настолько неудобен и отвратителен, что люди готовы даже на Питоне писать, лишь бы не связываться.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #58, #98

56. Сообщение от Аноним (55), 18-Июн-23, 21:50   +/
> без спецразрешения от генерала даже не зайдешь

Да чего там генерала, сразу генералиссимуса давай, а то генерал вон каждый через каждого уже, даже пропуска на вход в здание генералы подписывают.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52 Ответы: #68

57. Сообщение от Аноним (55), 18-Июн-23, 21:52   +/
Насколько Julia популярнее электронных таблиц в науке?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #59, #61

58. Сообщение от Аноним (80), 18-Июн-23, 22:06   +1 +/
Так и скажите - питон сам вычислять не готов. Он просто легок нравится начинающим.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

59. Сообщение от Аноним (36), 18-Июн-23, 22:18   +/
Зависит от отрасли науки. Белки секвенировать или тензоры считать для твердотельщиков - это явно не для таблиц задача.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

60. Сообщение от Аноним (80), 18-Июн-23, 22:19   +/
А почему перл присвоил себе первенство использование одноместных операторов. Наверно это всё таки был Си a+=b; @= это просто оператор одноместное умножение матриц как я понял.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4

61. Сообщение от Аноним (36), 18-Июн-23, 22:21   +/
врочем, какие-нибудь гидравлические и ядерные модели - аналогично https://github.com/orgs/lanl-ansi/repositories?language=juli...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57

62. Сообщение от Аноним (80), 18-Июн-23, 22:24   +/
Как раз с маркетинговыми приемами там всё в порядки - переименовывают что уже было до них, например мультиметод.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45 Ответы: #65

63. Сообщение от Аноним (63), 18-Июн-23, 22:24   +/
> На сишке обертка, а трудяга оптимизированный форктран?
> https://github.com/Reference-LAPACK/lapack
> Fortran 77.8%  C 20.3%

Пофиксил, не благодари.

Так и скажите - сишка сама вычислять не готова. Она просто легко нравится начинающим.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #64

64. Сообщение от Аноним (80), 18-Июн-23, 22:35   +/
LAPACK is a library of Fortran subroutines for solving the most commonly occurring problems in numerical linear algebra.

Может в библиотеке для Фортрана Си для прозрачного интерфейса с ядром linux и низкоуровневой организацией типов?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63

65. Сообщение от Аноним (65), 18-Июн-23, 22:39   +/
Вот не надо путать маркетинг и внутренние реализации известных подходов к полиморфизму. Полиморфизм на аргументах, как метод, понятно, что не они изобрели. Но Julia сейчас самый известный случай его применения.

А вот реальный маркетинг у них ограничивается статьями о DataFrames.jl в блоге https://bkamins.github.io/ и время от времени появляющимися статьями о нелинейной оптимизации на JuMP.jl. Остальные области развиваются очень тихо и незаметно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #62 Ответы: #67

66. Сообщение от Обмазанный смузиприлиз (?), 18-Июн-23, 22:42   +/
Тоже типа погреться зашел ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

67. Сообщение от Обмазанный смузиприлиз (?), 18-Июн-23, 22:49   +/
Параметрический полиморфизм это не метод, а свойство семантики системы типов.
С++ и Rust не в счёт?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #75

68. Сообщение от Аноним (22), 18-Июн-23, 22:56   +/
Да и гинеральш уже достаточно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #56

69. Сообщение от Аноним (5), 18-Июн-23, 23:00   +/
> формул в ворде

В Ворде нет своего формульного редактора - есть лицензированный модуль. Свой визуальный формульный редактор есть только у ONLYOFFICE.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

70. Сообщение от Аноним (70), 18-Июн-23, 23:06   +/
На Julia переползли те, кому матлаба бесплатнобезсмс не хватало. А кому ехать надо - те переползли на Python.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36

71. Сообщение от Аноним (2), 18-Июн-23, 23:21   +/
Тунеядцам с их моделями делать на пьедестале нечего.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #45

73. Сообщение от Аноним (73), 18-Июн-23, 23:37   +2 +/
ну быстрее всё становится
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #80

75. Сообщение от Аноним (36), 19-Июн-23, 00:00   +/
У C++ полиморфизм по схеме предок-потомок, а не параметрический. Не можете вы в C++ создать пачку методов разных классов вне классов и заставить его разбираться с тем, какой вызвать. Про Rust не знаю.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #67 Ответы: #77, #78, #79, #82

76. Сообщение от Аноним (80), 19-Июн-23, 00:09   +/
> Лучше бы для risc-v и armv7 пакеты сформировали.

Чтобы мелькали заголовки "Julia раскидывает сети" ))

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

77. Сообщение от Аноним (80), 19-Июн-23, 00:58   +/
Параметрический полиморфизм здесь был упомянут вместо полиморфизма над аргументами, упомянутого выше. Не утверждалось, что в С++ истинный параметрический полиморфизм. Семантически реализуется как ad-hoc полиморфизм. Как реализация через перегрузку функций, операторов и интерфейсы для фактических типов. В С++ это выводится из всей иерархии типов (наследование и раздувание кода), а в Rust через реализованные для типа трейты (traits). Раздувания в Rust не происходит и близко к принципу - присутствует только то что нужно.
Упоминание ПП было сторично. Первично было возражение на фразу "Полиморфизм на аргументах, как метод, понятно, что не они изобрели. Но Julia сейчас самый известный случай его применения."
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75

78. Сообщение от Аноним (80), 19-Июн-23, 01:08   +/
Опят же не понятно, что вы понимаете под "пачка методов". В С++ есть система шаблонов, где в одном месте одной обобщенной функцией с обобщенным параметром описывается реализация. Я подразумевал это под параметрическим полиморфизмом (как ad-hoc механизм).    
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75 Ответы: #81

79. Сообщение от Аноним (80), 19-Июн-23, 01:20   +/
> Не можете вы в C++ создать пачку методов разных классов вне классов и заставить его разбираться с тем, какой вызвать.

Это почему же? В С++ тип легко определяется во время выполнения. Дальше switch по фактическому типу на нужную функцию. Или через таблицу виртуальных функций. В Си кстати также можно реализовать полиморфизм через виртуальные функции.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75

80. Сообщение от Аноним (80), 19-Июн-23, 01:37   +3 +/
Раньше было Раз..Два..Три..Четыре. А сейчас РазДваРазДваРазДва.
Вот как надо объяснять )
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #73

81. Сообщение от Аноним (36), 19-Июн-23, 01:40   +/
Просто вы не понимаете что такое полиморфизм у Julia. В отличии от C++, у которого полиморфизм возможнен только через таблицу виртуальных функций и не может быть никак изменён после компиляции (средствами языка, естественно, а не перезаписью адресов виртальных таблиц).

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

Например объявленная f(x, y) = x * y означает типы Any. И будет вызван именно этот метод функции f при любых аргументах. Что f(1, 2), что f("a", "b"). В последнем случае будет выполнена конкатенация. Но я могу объявить f(x::Number, x::Number) = x / 2, тогда f(1, 2) однозначно пойдёт в этот метод. А могу спуститься по дереву абстрактных типов и определить ещё конкретнее - f(x::Integer, y::Integer) = x / y + 1, что определит путь вызова исключительно для целых. Могу ещё больше детализировать под конкретный тип Int64, Int32 и пр. А могу определить его для другой ветви Number, например на комплексные. И у меня получается функция f с кучей методов, имеющих ровно два аргумента, но разных типов. И во время исполнения я могу определить новый метод f (например подгрузил пакет) или удалить существующий (по факту не требовалось). Пример привёл под стандартные типы, но ветку типов можно сделать свою, определяя номые методы f именно под свой тип.

А вот про C++, полагаю, что имеете в виду вовсе не полиморфизм, а выбор метода по сигнатуре с разным количеством аргмунетов. Впрочем, множественной диспетчеризацией, а не полиморфизмом в Julia они назвали это, скорее всего, из-за общности вызова. Им всё равно это полиморфизм на новом типе или подбор сигнатуры под новый набор аргументов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78 Ответы: #83

82. Сообщение от Аноним (83), 19-Июн-23, 07:24   +1 +/
Вот примеры для Rust:

//Обобщенные функции Fmul и Fplus
use std::ops::Add;

fn Fmul<T>(x:T, y:T) -> T::Output
where T: std::ops::Mul  // для типов, реализующих трейт Умножение
{ x * y }

#[derive(Debug,Copy,Clone)]
struct Point {
    x:i32,
    y:i32,
}
impl Add for Point {
    type Output = Self;
    fn add(self, p2: Self) -> Self {
        Self {x: self.x + p2.x, y: self.y + p2.y}
    }
}

#[derive(Debug,Clone)]
struct WrappedString {
    s:String,
}
impl Add for WrappedString {
    type Output = Self;
    fn add(self, s2: Self) -> Self {
        Self {s: self.s + &s2.s}  
    }
}

fn Fplus<T>(x:T, y:T) -> T::Output
where T: std::ops::Add // для всех типов, реализующих трейт Сложение
{ x + y }

fn main(){
    let i1:i32 = -3;
    let i2:i32 = 4;
    println!("{:?}", Fmul(&i1,&i2));
    let u1:u32 = 30;
    let u2:u32 = 40;
    println!("{:?}", Fmul(&u1,&u2));
    let p1 = Point{x: 3, y: 4};
    let p2 = Point{x: 5, y: 6};
    let s1 = WrappedString{s:"Склей".to_string()};
    let s2 = WrappedString{s:"ка".to_string()};
    println!("{:?}", Fplus(p1,p2));
    println!("{:?}", Fplus(s1,s2).s);
    println!("{:?}", "Склей".to_string()+"ка");  
    println!("{:?}", Fplus(&u1,&u2));
}

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #75

83. Сообщение от Аноним (83), 19-Июн-23, 07:27   +/
> Джулийный полиморфизм заключается в том, что выбран будет тот метод из существующих в данный момент, типы атрибутов которого наиболее близки к типа вызова.

Это называется неопределенная реализация. Как в питоне.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #81 Ответы: #84

84. Сообщение от Аноним (36), 19-Июн-23, 07:36   +/
У Джулии нет неопределённой реализации. Типы всегда определены, но если не указаны явно, это означает тип Any как корень дерева абстрактных типов.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #83

87. Сообщение от 1 (??), 19-Июн-23, 09:37   +/
Ну, если вспомнить историю почему язык назвали PL/1, то да. Единственный язык для всего.
Ну правда все пытаются это оспорить ;-)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15

88. Сообщение от 1 (??), 19-Июн-23, 09:38   +/
и докер
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27 Ответы: #93

89. Сообщение от Аноним (22), 19-Июн-23, 09:53   +/
Трудяга Fortran. Ага, попробуйте пособирать зависимости NumPy при отстуствующем фронтэнде Фортрана.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47 Ответы: #99

90. Сообщение от Аноним (91), 19-Июн-23, 09:55   +/
Есть built-in модули.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53

91. Сообщение от Аноним (91), 19-Июн-23, 10:07   +/
Они не должны быть частью питона. Часто ради одной функции из стандартной библиотеки длопается версия питона. При этом если скачать файл wgetом с GitHubа и заменить оный в директории стандартной библиотеки, то этот модуль прекрасно работает. То есть разрабы питона вынуждают людей дропнуть старые версии питона таким подходом.

>Если это будут просто пакеты никто не будет задерживать релиз до полной совместимости пакета и новой версий питона. И эта самая совместимость очень быстро улетучится совсем.

А не надо релиз задерживать. Когда модуль будет готов, тогда его надо релизнуть в pypi, и только после этого его можно использовать. Версии питона должны быть чисто про возможности интерпретатора и built-inы, а не про кучу модулей, написанных на питоне.

>или никак

Я же сказал, версии питона должны гарантировать небольшой список предустановленных версий модулей в виде >= спецификаторов. Для 2х целей.
1. совместимость со старой моделью, потому что старые пакеты в зависимостях такое не пишут
2. база для pip и setuptools, чтобы были зависимости, необходимые для сборки и установки пакетов.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38

92. Сообщение от nuzhnyemail (?), 19-Июн-23, 12:24   +/
- Faster np.argsort on AVX-512 enabled processors
- Faster np.sort on AVX-512 enabled processors
- __array_function__ machinery is now much faster
- ufunc.at can be much faster
- Faster membership test on NpzFile

https://numpy.org/doc/stable/release/1.25.0-notes.html#perfo...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

93. Сообщение от Аноним (93), 19-Июн-23, 12:51   +/
Докер в QEMU
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #88 Ответы: #95

94. Сообщение от Аноним (94), 19-Июн-23, 17:15   +/
За использование sympy в "научных вычислениях" надо руки отрывать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #29 Ответы: #97

95. Сообщение от Аноним (95), 20-Июн-23, 09:37   +/
На маке с M1, M2 так всё и вызывают, не шутка.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93

96. Сообщение от Аноним (95), 20-Июн-23, 09:38   +/
На упразднить пора раст.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53

97. Сообщение от Аноним (97), 20-Июн-23, 10:48   +/
То есть Wolfram Matematica можно, а за Sympy - руки отрывать? Нельзя пользоваться, АНОН ОПЕННЕТА НЕ ОДОБРИЛ!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #94

98. Сообщение от Аноним (98), 20-Июн-23, 20:01   +/
Фигня. Си с Фортраном - самое то для науки. На Си надо писать критически важные по скорости подпрограммы (чтоб не на асме), а остальное - на Фортране.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

99. Сообщение от Аноним (99), 20-Июн-23, 20:39   +/
Можно собрать его с бинарным интеловским mkl (единственная норм реализация). Но там тоже фортран, это да.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #89


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру