The OpenNET Project / Index page

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



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

"Выпуск языка программирования Julia 1.8"  +/
Сообщение от opennews (??), 18-Авг-22, 21:26 
Доступен релиз языка программирования Julia 1.8, сочетающего такие качества как высокая производительность, поддержка динамической типизации и встроенные средства для параллельного программирования. Синтаксис Julia близок к MATLAB с заимствованием некоторых элементов из Ruby и Lisp. Метод манипуляции строками напоминает Perl. Код проекта распространяется под лицензией MIT...

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

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

Оглавление

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

1. Сообщение от Аноним (-), 18-Авг-22, 21:26   +4 +/
Слишком много символов разрешено и используется.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #4

2. Сообщение от Урри (ok), 18-Авг-22, 21:30   +1 +/
Они будут весь юникод по три символа добавлять. И минорную версию менять.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

4. Сообщение от Аноним (4), 18-Авг-22, 21:34   +1 +/
А я вот считаю что мало половин.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #19

7. Сообщение от Аноним (7), 18-Авг-22, 21:42   –1 +/
Много интересного появилось. При запуске бинарников, если весь код откомпилирован, теперь можно съэкономить 60МБ на LLVM компиляторе.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #22

8. Сообщение от Аноньимъ (ok), 18-Авг-22, 21:48   +3 +/
Так и незашла эта жулия.
Слишком много телодвижений нужно для всего.
Пытался нагуглить что-то по типу питорча - то ли Гугл не едет то ли я не то гуглю.

Давно не интересовался но хоть на видеокарте она считать умеет из коробки?

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

9. Сообщение от Аноним (7), 18-Авг-22, 21:54   +2 +/
> Пытался нагуглить что-то по типу питорча - то ли Гугл не едет то ли я не то гуглю.

Flux.jl и ONNX.jl для запуска чужих готовых моделей

> Давно не интересовался но хоть на видеокарте она считать умеет из коробки?

конечно:

julia> using CUDA
julia> CUDA.functional()

И даже в M1/M2 умеет - Metal.jl

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

10. Сообщение от Аноньимъ (ok), 18-Авг-22, 21:59   –1 +/
Ну модели можно и на плюсах запускать и везде.
А вот учить...

Только куду кстати поддерживает?

Надо будет как-то ещё раз взглянуть, может удастся от питона сбежать.

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

11. Сообщение от Аноним (7), 18-Авг-22, 22:07   +2 +/
> Ну модели можно и на плюсах запускать и везде.

А смысл? Остальной код всё равно хочется не на плюсах делать.

> Только куду кстати поддерживает?

CUDA.jl и https://github.com/JuliaGPU в целом

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

12. Сообщение от corvuscor (ok), 18-Авг-22, 22:20   +2 +/
С прошлого выпуска - очень проникся. После обычных ООП языков очень необычно пишется, абстрагировано, удобно для научных расчетов.

Но главный косяк языка, имхо - это комьюнити, многократно меньшее, чем у того же питона. И как следствие, многие популярные пакеты заброшены и/или находятся в недописанном состоянии.

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

13. Сообщение от ptr (??), 18-Авг-22, 22:37   +2 +/
Ну Julia почти в три раза моложе Python, у которого приличное комьюнити возникло лет этак через 20 с момента его появления.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #15

14. Сообщение от Аноним (14), 18-Авг-22, 23:01   +/
'производительности близкой к программам на языке Си'
есть же Си и миллиард либ под любые нужды
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #16, #114

15. Сообщение от Аноним (7), 18-Авг-22, 23:04   +/
До 2018-го (когда Julia 1.0 вышла), ею вообще мало кто пользовался. За 4 года прирост очень значительный.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

16. Сообщение от tty0 (?), 18-Авг-22, 23:05   +/
Когда вам нужно решить конкретную задачу, думать об особенностях си без соответствующего багажа знаний проводить к серьёзным провалам
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #21, #86

17. Сообщение от Аноним (21), 18-Авг-22, 23:27   +1 +/
Поделитесь, кто на этом языке пишет в продакшене и что
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #18, #30

18. Сообщение от Аноним (-), 18-Авг-22, 23:30   –1 +/
> Поделитесь, кто на этом языке пишет в продакшене и что

NLP-сервисы. Очистка, обогащение.

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

19. Сообщение от Владимир (??), 18-Авг-22, 23:52   +/
Реквестую язык Юрий ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #25, #35, #39

20. Сообщение от Аноним (21), 18-Авг-22, 23:58   –1 +/
Дайте пруфы)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #24

21. Сообщение от Аноним (21), 19-Авг-22, 00:01   +2 +/
Поэтому все начинают изучать джулию, чтобы накопить багаж знаний
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

22. Сообщение от Аноним (22), 19-Авг-22, 00:30   +3 +/
уже лет пять вижу эти -60 мб в каждой новости
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #60, #68

23. Сообщение от Аноним (22), 19-Авг-22, 00:31   +/
на видеокарте, а не на невидии
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

24. Сообщение от Аноним (-), 19-Авг-22, 00:40   –1 +/
> Дайте пруфы)

Ссылки на внутренний репозиторий и паспортные данные разработчиков?....

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

25. Сообщение от Аноним (-), 19-Авг-22, 00:54   –1 +/
> Реквестую язык Юрий ...

По опыту последних лет 50-ти, языки с женскими именами получаются куда изящнее....

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #27, #29, #31, #37, #50

26. Сообщение от Neon (??), 19-Авг-22, 00:55   –2 +/
Опять наркоманский синтаксис как у большинства новых модных молодежных язычков ?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #28

27. Сообщение от Аноним (27), 19-Авг-22, 01:23   –1 +/
Сишечка
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25 Ответы: #46

28. Сообщение от topin89 (ok), 19-Авг-22, 01:27   +/
Python, Php и Perl: ну да ну да, пошли мы нахер.

За пределами C-подобных языков вообще любой синтаксис будет казаться наркоманским. Как по мне, только у APL получилось добиться реального безумия.

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

29. Сообщение от легион (?), 19-Авг-22, 02:50   +/
Язык Ада
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

30. Сообщение от Аноним (30), 19-Авг-22, 03:15   –1 +/
У ACML тулинг для test coverage на нем пишется.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #42, #79

31. Сообщение от Бывалый смузихлёб (?), 19-Авг-22, 06:00   +2 +/
Ещё один ненавистник паскаля и фортрана :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

32. Сообщение от Бывалый смузихлёб (?), 19-Авг-22, 06:05   –1 +/
Да он и у сишки казался наркоманским на момент её изучения - тонны всевозможных скобок и прочие прелести
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #34, #53

33. Сообщение от Аноним (34), 19-Авг-22, 06:09   +1 +/
> достижение производительности близкой к программам на языке Си

Может, сразу взять С и не заморачиваться?

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

34. Сообщение от Аноним (34), 19-Авг-22, 06:11   –2 +/
Что там учить-то? Возьмите нормальные источники: Керниган-Ритчи или Уэйт-Прата.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #43

35. Сообщение от beck (??), 19-Авг-22, 07:04   +/
> Реквестую язык Юрий

Реквестирую языки "олег" и "оксана"

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

36. Сообщение от beck (??), 19-Авг-22, 07:05   –1 +/
Чем это лучше Фортрана?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #38, #41, #47

37. Сообщение от Брат Анон (ok), 19-Авг-22, 07:35   +2 +/
Паскаль и Оберон форева!
А Го вообще суслик!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

38. Сообщение от Брат Анон (ok), 19-Авг-22, 07:37   +3 +/
У желающих приторчать теперь есть наркоманский синтаксис. Рестораны нервничают.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #40

39. Сообщение от Аноним (39), 19-Авг-22, 08:06   +/
А как вам Саша? Унисекс
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #56, #83

40. Сообщение от Аноним (34), 19-Авг-22, 08:26   +1 +/
Дело не в синтаксисе, а в перегруженности самого языка возможностями, которые к нему не нужно относить, оставив в стандартных библиотеках. Подобно тому, как в С, что делает язык простым и лаконичным.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #38 Ответы: #45

41. Сообщение от Rnd (?), 19-Авг-22, 08:32   +/
Удобно отлаживаться (так как код компилируется на лету), есть возможность интерактивной работы в стиле скриптовых языков (например, в Jupyter, Juno), приятный лаконичный синтаксис, скорость выполнения примерно как у Фортрана (во многих тестах даже обгоняет). Важно, что в сообществе разработчиков есть адекватная концепция дальнейшего развития языка, понимание существующих проблем, развитие идёт в правильном направлении, в последнее время виден хороший прогресс. Приятно удивляет сообщество: постоянно появляются какие-то новые интересные завязанные на Julia вещи, инструменты для повышения удобства работы, публикуются статьи, книжки, проходят конференции. Всё это очень заряжает. В сообществе Фортрана такой вдохновляющей активности нет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #44

42. Сообщение от Аноним (42), 19-Авг-22, 08:36   –1 +/
Поэтому ACML и не интел и не амд. Потому что занимается всякой ерундой вместо того чтобы делать бизнес.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #77

43. Сообщение от Аноним (42), 19-Авг-22, 08:37   +/
Не думал что Си нужен был просто нормальный синтаксис чтобы его все использовали?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

44. Сообщение от myhand (ok), 19-Авг-22, 08:44   +/
Для фортранчика тоже есть реализации с возможностью интерактивной работы.  Не буду показывать пальцем.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

45. Сообщение от Брат Анон (ok), 19-Авг-22, 08:51   +1 +/
> Дело не в синтаксисе, а в перегруженности самого языка возможностями, которые к
> нему не нужно относить, оставив в стандартных библиотеках. Подобно тому, как
> в С, что делает язык простым и лаконичным.

Си далеко не лаконичный. И далеко не ортогональный. Но, относительно не перегружен.

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

46. Сообщение от Аноним (46), 19-Авг-22, 09:14   +5 +/
нет, язык С, он же Си, он же Си Цзиньпин.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

47. Сообщение от Аноним (34), 19-Авг-22, 09:36   –2 +/
Имели много расчетных наработок на фортране. Нужно было использовать в новых задачах. Новые задачи сделали на С. Фортрановские библиотеки использовали в проектах. Все последующие расчетные методы уже делали на С.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36

48. Сообщение от Аноним (-), 19-Авг-22, 09:51   +2 +/
покажи хотя бы кусок кода на пейстбине. inb4 - ничего не покажешь под любыми предлогами
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #65

49. Сообщение от Аноним (-), 19-Авг-22, 09:52   +/
заткнись, питон идеален
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #52, #62, #80

50. Сообщение от Аноним (50), 19-Авг-22, 11:13   +/
Агриппина, Параша, Даздраперма - женские названия для импортозаместительнх языков
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #25

52. Сообщение от Аноним (22), 19-Авг-22, 12:49   +1 +/
загрязнение окружающей среды из-за отсутствия скорости выполнения и траты места на пробелы - это идеально?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #72

53. Сообщение от Старший аноним (?), 19-Авг-22, 13:21   +2 +/
Синтаксис С не "казался наркоманским", а так и есть наркоманский по сравнению с тем же Pascal, Ada.
Я не буду перечислять всех идиотизмов и двусмысленностей синтаксиса С, его макросов и т.д. - о них и так уже много где написано. Не зря же для программирования встраиваемых устройств на С придумали стандарт MISRA, в котором убраны некоторые идиотизмы С.

Я ничего не имею против С. Но его надо бы было маленько переработать, убрав весь исторический шлак развития компиляторов, препроцессор, но оставив по большей части синтаксис, и другие фишки С - работу с указателями, памятью и т.д. А не плодить языки типа новые наркоманские языки типа D, Rust, Julia и т.д. В конце концов весь код превращается в одни и те же инструкции процессора, и надо работать, а не изучать новые, якобы современные языки программирования, но которые требуют тонны памяти, гигабайты энергии и т.д.

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

54. Сообщение от Аноним (55), 19-Авг-22, 13:36   –2 +/
Отлаживаться как раз не удобно. Консольного отладчика как не было так и нет. А тыкать мышью занятие такое себе.
Ответить | Правка | Наверх | Cообщить модератору

55. Сообщение от Аноним (55), 19-Авг-22, 13:39   +/
Синтаксис хороший, но отсутствие полноценного отладчика, делает Джулию мало пригодной.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

56. Сообщение от YetAnotherOnanym (ok), 19-Авг-22, 13:56   +/
Валя же есть.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #39

57. Сообщение от DEF (?), 19-Авг-22, 14:33   +2 +/
Отличный язык. Перешел на его с R. Использую его для Data Science и Big Data. Строю кучу графиков, гоняю данные, в том числе из базы данных. Работает все шустро. Питон никогда не использовал и даже нет желания его изучать. Julia умеет практически все.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #58

58. Сообщение от еак13245 (?), 19-Авг-22, 14:42   +/
Как ты отлаживешь код?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #57 Ответы: #61, #93, #108

60. Сообщение от Аноним (-), 19-Авг-22, 15:14   +/
> уже лет пять вижу эти -60 мб в каждой новости

Галюцинации

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

61. Сообщение от Аноним (-), 19-Авг-22, 15:21   +/
> Как ты отлаживешь код?

Детальные модульные тесты и отладочный вывод.

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

62. Сообщение от Аноним (-), 19-Авг-22, 15:30   +2 +/
> заткнись, питон идеален

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

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

63. Сообщение от eak0981234 (?), 19-Авг-22, 16:15   +1 +/
Для своего проекта пойдет, но когда нужно разобраться в большом и сложном чужом проекте, такой метод не сработает. Поэтому для Джулии нужен отладчик, но разработчики не спешат. Всё, что есть это сторонние проекты.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61 Ответы: #64

64. Сообщение от Аноним (7), 19-Авг-22, 16:25   –1 +/
Это пошаговый отладчик вам не поможет в большом и сложном проекте. А модульные тесты для того и пишут, чтобы покрывать код по высокоуровневым функциям. И, если разработчики, которые их писали, достаточно квалифицированные, то проблем разобраться с кодом не будет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #63 Ответы: #87

65. Сообщение от Аноним (-), 19-Авг-22, 16:29   +1 +/
Вот интересно, каков процент компаний, готовых уволить разрабов за публикацию кусков рабочего кода без согласования?....
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48 Ответы: #71

68. Сообщение от kusb (?), 19-Авг-22, 18:10   +/
Круто что они не растут. Типа за пять лет они могли стать 600 мб.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

69. Сообщение от kusb (?), 19-Авг-22, 18:12   +/
Звучит как что-то нереально крутое. Скорость разработки скриптовых языков и скорость + прямота нескриптовых. Почему это не ...популярнее?
Хотя выглядит что оно для расчётов.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #70

70. Сообщение от Аноним (7), 19-Авг-22, 18:24   +1 +/
Ему всего 4 года в проде
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #69

71. Сообщение от Аноним (71), 19-Авг-22, 18:25   +/
а в чем проблема-то? судя по тому, что ты описал выше, ничего секретного, соответственно уникального там нет, для демонстрации можно выбрать кусок, не выдающий ни суть продукта. но ты ничего не выложишь не поэтому, а потому что тебе нечего показать
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #65 Ответы: #75

72. Сообщение от Аноним (71), 19-Авг-22, 18:27   –1 +/
для тех задач, на которые нацелена решать julia есть нативные библиотеки, работающие быстрей этой самой julia. что ты там под тратой места имел ввиду, я даже знать не хочу, такие как ты (не работавшие ни с чем, ни с питоном, ни с джулией) еще любят упоминать gil
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #52

75. Сообщение от Аноним (-), 19-Авг-22, 19:02   +3 +/
Когда работать начнёшь, может быть узнаешь, что такое интеллектуальная собственность и её понимание у юристов компании. А пока иди к школе готовься....
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71

76. Сообщение от Аноним (-), 19-Авг-22, 19:20   +/
Для Джулии, помимо всего прочего, модульные тесты с полным покрытием являются частью тех. процесса. Без них не соберёшь бинарники.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61

77. Сообщение от Аноним (77), 19-Авг-22, 19:56   +1 +/
Ты о чем? У ACML(221.12) капитализация больше чем у Intel(145.52) и AMD (154.26).
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #42

78. Сообщение от Аноним (21), 19-Авг-22, 21:04   +/
Хотя бы просто названия компаний и продуктов
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #84

79. Сообщение от Аноним (21), 19-Авг-22, 21:20   +/
Ну такое себе... В чем выгода от эзотерики?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30

80. Сообщение от topin89 (ok), 19-Авг-22, 21:44   +/
Конечно он идеален. Даже больше, синтаксис C-подобных языков я считаю гораздо более наркоманским. Особенно плюсов. К нему можно привыкнуть, но чтение шаблонов шаблонов шаблонов требует интересной ментальной эквилибристики.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #49 Ответы: #81

81. Сообщение от Аноним (-), 19-Авг-22, 21:58   +/
Питон идеален, поэтому пусть он лучше стоит в сторонке под бронированным колпаком. Чтобы никто своими грязными руками этот идеал в прод не тащил... Да и вообще, поменьше лапал, чтобы не испортить.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #80

82. Сообщение от Аноним (21), 19-Авг-22, 22:14   +/
Во-первых, не одни и те же инструкции. А во-вторых, батенька, вы знаете извращения с многословным паскалем
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #53

83. Сообщение от Владимир (??), 19-Авг-22, 23:07   +/
>А как вам Саша? Унисекс

Аркадий лучше ... Солиднее ... Ну, или Андрюшка хот бы.

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

84. Сообщение от Аноним (-), 20-Авг-22, 04:11   +/
https://hrtool.dotin.us/ - большая часть NLP-сервисов именно на Julia
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #78

85. Сообщение от Аноним (85), 20-Авг-22, 07:48   +/
Джулию сильно ругают. Баг-репорты висят годами. И множество других проблем  
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #90, #118

86. Сообщение от darkshvein (ok), 20-Авг-22, 10:18   +/
более того, когда нужно решать серьёзные задачи вообще лучше не думать!
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16

87. Сообщение от eak132 (?), 20-Авг-22, 11:00   +/
Совершенно согласен с тем, что пошаговый отладчик не поможет. Более того, я считаю, что пошаговые отладчики придуманы для слабаков. Настоящий программист должен уметь выполнять код в уме! Программисты Джулии видимо в совешенстве владеют этим навыком. Зачем вообще придумали все эти отладчики? Gdb и прочие? Отрасль деградирует.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #64 Ответы: #89

89. Сообщение от Аноним (7), 20-Авг-22, 16:12   +/
Просто нет у вас навыков отладки отладочной печатью. Julia далеко не единственный ЯП, у которого нет удобного пошагового отладчика (неудобный есть). В случае Julia, просто надо разбивать код на небольшие фрагменты для отладки и тестирования. Именно поэтому, надо использовать модульные тесты. Если эти тесты достаточно детальные, то проблем отладить кусок кода нет. То же в отношении Haskell, то же в отношении отладки кода на устройствах, куда просто так не подключишься. Отладка без пошагового отладчика, хоть и требует определённой привычки, но это совершенно не то же самое, что отлаживать код на листочке бумаги. И уж точно, не сложнее пошагового отладчика, хотя и требует определённой дисциплины написания кода.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #87 Ответы: #94

90. Сообщение от Аноним (-), 20-Авг-22, 17:02   +1 +/
А есть хоть какой-нибудь ЯП, про который нельзя сказать тоже самое?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85

93. Сообщение от Аноним (93), 21-Авг-22, 11:37   +/
Debugger.jl
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #97

94. Сообщение от eak132 (?), 21-Авг-22, 13:54   +/
Да, уж чукча не читатель, чукча писатель... Большую часть времени программисту приходится не писать, а читать код. А мне как научному сотруднику еще приходится читать кучу статей и кода к ним, который писался отнюдь не профессиональными программистами, а учеными, которые и слов-то таких как модульные тесты не знают. В общем жить без пошагового отладчика можно, но зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #89 Ответы: #95, #104

95. Сообщение от Аноним (7), 21-Авг-22, 15:17   +/
> мне как научному сотруднику

А как, по-вашему, отлаживают код во всяких Jupyter Notebook?.... Или, например, как отлаживались https://arxiv.org/abs/2207.13513 ?

Пошаговый отладчик лишь один из вариантов отладки. Но на нём всё не зациклено.

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

96. Сообщение от eak132 (?), 21-Авг-22, 15:24   +/
Юпитер ноутбук инструмент, предназначенный для обучающих и демонстрационных целей. Студент защищает диплом и показывает интерактивно результате в Юпитере. Или научный сотрудник демонстрирует возможное решение руководству с графиками и диаграммами в Юпитере. Для серьезных целей не предназначен. По ссылке, код скорее всего одноразовый, смоделировали, получили результаты, опубликовали статью, забыли. Проблемы возникнут лет через 5, когда либо авторам, либо еще кому-то понадобится разобраться в статье и коде к ней. Вот тут и понадобится отладчик. А его в Джулию не завезли...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #95 Ответы: #98

97. Сообщение от eak132 (?), 21-Авг-22, 17:17   +/
Пару лет назад пробовал использовать. Произвел впечатление грубого прототипа. До GDB явно не дотягивает.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #93

98. Сообщение от Аноним (7), 21-Авг-22, 17:29   +/
> По ссылке, код скорее всего одноразовый, смоделировали, получили результаты, опубликовали статью, забыли. Проблемы возникнут лет через 5, когда либо авторам, либо еще кому-то понадобится разобраться в статье и коде к ней. Вот тут и понадобится отладчик. А его в Джулию не завезли...

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

> Юпитер ноутбук инструмент, предназначенный для обучающих и демонстрационных целей.

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

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

99. Сообщение от eak132 (?), 21-Авг-22, 18:10   +/
Еще как приходится ковырять! Когда работал С-шником, как-то поручили переработать старый кусок крупного проекта. Документации нет, тестов нет, разработчик уволился 10 лет назад и уехал в Америку. Каким-то неведомым образом работает. Нужно провести рефакторинг и добавить новые фичи. И как тут без отладчика? С помощью GDB проходил и разбирался. Пол-года пришлось делать. Юпитер для анализа данных можно использовать, но я бы предпочел R-сдудию, или Матлаб (Октав). Юпитер был ответом Вольфраму, который и изобрел этот формат блокнота, презентация и код в одном флаконе. Но у Вольфрама если не ошибаюсь есть пошаговый отладчик (Давно не работал с Математикой)! А тут какой-то карго культ. Внешне сделали похоже, суть забыли.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98 Ответы: #100

100. Сообщение от Аноним (7), 21-Авг-22, 19:15   +/
Поймите, что каждый ЯП требует своего подхода. На Julia просто невозможен монолитный крупный проект. На C++ или Java - это нормальная практика. Сама идеология разработки на Julia - это функционально ограниченный пакет, внутри которого есть ограниченное количество модулей (не файлов). Вы собираете большой проект из автономных пакетов. И вы не сможете сделать пакет, если не разработали для него модульные тесты. А сама схема разбиения на пакеты - это функциональная декомпозиция. Если она выполнена по-человечески, то назначение пакета установить несложно.

Для разработки в Julia есть VS Code. И то, что пошаговым отладчиком пользоваться неудобно (он просто очень медленный), не исключает возможность по-строчного запуска кода с визуализацией значений переменных. Но это не пошаговая отладка, а отладка по результатам вызова функций. По произвольному коду. И без пошагового отладчика, отладка в целом выполняется без каких-либо затруднений.

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

101. Сообщение от eak132 (?), 21-Авг-22, 19:51   +/
Хорошо. Как быть с интерактивностью? Джулия позиционируется как язык научных вычислений. Уже есть язык научных вычислений Матлаб. В Матлабе можно поставить точку останова, в командной строке провести эксперименты, увидеть результат, внести изменения в код. Такой подход очень продуктивен, при написании именно научного кода, не зря Матлаб и его клоны (Октав) пользуются такой популярностью. Как с этим у Джулии? Кстати я читал несколько лет назад, обсуждение разработчиков Джулии, по поводу отладчика, они писали, что из-за Джит компиляции, разработка полноценного отладчика обойдется в крупную сумму (чуть ли не миллион долларов, не помню уже точную сумму) поэтому написание отладчка не в приоритете. Видимо они понимают нужность, но из-за дефицита ресурсов другие задачи.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #100 Ответы: #102, #103

102. Сообщение от Аноним (7), 21-Авг-22, 20:24   +/
Если очень надо, точку останова в VS Code поставить можно. Но если кода много, будете долго ждать, пока туда попадёте. Но попадёте.

При этом, всегда есть отладочная печать. Если в каком-то месте надо проверить результат произведения 2-х 5-ти мерных матриц, вам пошаговая отладка ну совершенно никак не поможет. По-любому будете для этого места писать какой-то дополнительный код, которые сделает возможным оценить результат. Как и в большинстве мест научного кода. Нет смысла проверять одну строку кода. Есть некоторый частный результат, который надо валидировать. Именно поэтому, для Julia пошаговый отладчик никогда и не был приоритетом.

Поэтому, нормальный режим отладки для Julia - пишется основной код, пишутся модульные тесты. Дальше, в VS Code, построчно проходим модульные тесты в активной сессии REPL, и смотрим результат. Если надо внести изменения, вносим. Попутно, вставляем отладочный вывод в основном коде. При загруженном Revise.jl, изменения в модулях подхватываются на лету.

В Julia 1.9 сейчас акцент на статическую компиляцию в рамках нового компилятора. В рамках него, перерабатывается и отладчик.

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

103. Сообщение от Аноним (7), 21-Авг-22, 21:42   +/
https://pretalx.com/juliacon-2022/talk/JPYJS8/

Про интерактивную работу в VS Code. Запись с последнего JuliaCon, месячной давности.

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

104. Сообщение от Аноним (-), 22-Авг-22, 04:55   +/
> Большую часть времени программисту приходится не писать, а читать код.

Не читай гавнакода. Если в коде невозможно разобраться без отладчика, то пользоваться им нельзя. Надо переписывать.

> как научному сотруднику еще приходится читать кучу статей и кода к ним, который писался отнюдь не профессиональными программистами

Читай статьи, а не код к ним. Я всегда так делаю. Читаешь статью, вникаешь в написанное, воспроизводишь своими руками. В код можно заглядывать иногда, но имея очень конкретные вопросы, которые почему-то не освещены в статье.

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

> жить без пошагового отладчика можно, но зачем?

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

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

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

105. Сообщение от eok123 (?), 22-Авг-22, 08:47   +/
> Не читай гавнакода. Если в коде невозможно разобраться без отладчика, то пользоваться им нельзя. > Надо переписывать.

Хороший совет. Особенно можно рекомендовать тем, кто только устроился на новую работу. Прямо с порога заявить. Код ваш - дерьмо, читать его не буду, нужно все переписать, потому что сделано неправильно. Сразу коллектив и руководство будут уважать, поймут что новый программист силён.

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

106. Сообщение от eok123 (?), 22-Авг-22, 08:52   +/
Даже по сравнению с Октавом, выглядит как поделка. Не говоря уже о Р-студии. Опять же, сначала у них была среда Джуно, на атоме, теперь перешли на ВСкод... Не серьезно как-то, метания.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #103 Ответы: #111

107. Сообщение от eok123 (?), 22-Авг-22, 08:56   +/
В целом ясно, но раздражает, что некая модель разработки навязывается. Например в ПИтоне, можно писать модульные тесты, можно не писать, можно писать в каком угодно стиле, можно проходить отладчиком, сколько угодно, благо их опенсорсных полным-полно и с хорошим функционалом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #102 Ответы: #110

108. Сообщение от DEF (?), 22-Авг-22, 09:18   +/
Логгирование, трассировка, юнит-тесты. Я даже когда на Жабе писал конкурентный код, то тоже не использовал отладчик. Нахер он нужен вообще? Тем более в Джулии, где легко можно понять, где ошибка, там одни структуры данных.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58

110. Сообщение от Аноним (7), 22-Авг-22, 14:56   +/
Нельзя писать без модульных тестов. Именно их отсутствие и приводит к тому, что через некоторое время никто не знает как работает код и как, собственно, его надо было вызывать. На Julia тоже "можно" писать в каком угодно стиле с тестами или без, но такой код никому кроме автора точно не будет нужен. И проблемы поддержки тоже не будет.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #107

111. Сообщение от Аноним (7), 22-Авг-22, 14:59   +/
С чем можно согласиться, так это с тем, что Julia Computing не уделяет должного внимания бантикам. Какой смысл сравнивать, например, Octave c Julia, если на Octave вы ничего высоконагруженного не напишите?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #106 Ответы: #112

112. Сообщение от eok123 (?), 22-Авг-22, 15:42   +/
Октав не предназначен для чего-то высоко нагруженного. Его ниша это создание прототипов и образование.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #111

113. Сообщение от Аноним (-), 22-Авг-22, 19:13   +/
> Прямо с порога заявить.

Не, зачем же так. Видишь гнокод, ищешь другую работу. И молчишь о гнокоде здесь пока зарплату платят.

Альтернативно можно попытаться объяснить менеджменту во сколько человекочасов ежемесячно им обходится гнокод и его отладка. Но это вряд ли сработает: если бы они интересовались продуктивностью, они бы сами уже это выяснили бы.

Хотя в реалистичной ситуации менеджмент будет признавать косяки, и даже возможно предпринимать какие-то усилия по исправлению. И вот тут уже смотри сам, насколько тебе интересно в этом участвовать.

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

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

114. Сообщение от том (?), 23-Авг-22, 06:08   +/
В Юле я так понял прикол в том что код очень, очень динамический, что важно для датасатанистов.

Например вы можете объявить на вашем типе операцию умножения между объектами этого типа, и все либы, которые умножали объекты одинаковых типов будут работать (ну, почти всегда). Юлия перекомпилирует весь их код под ваши типы.

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

115. Сообщение от _kp (ok), 23-Авг-22, 11:06   +/
Не может быть "популярность" и коммунити у специализированного языка быть такой же как у более массового, и тем более языка для обучения.
Был бы язык для физиков-теоретиков, так о нём бы и вовсё почти не слышали, будь язык хоть трижды классным.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

116. Сообщение от economist (?), 23-Авг-22, 16:44   +/
В JupyterLab есть пошаговый отладчик, окно переменных в т.ч. для структур, стек вызова. Т.е. это уже почти IDE. А еще в нем есть одновременная мультикурсорная правка несколькими пользователями через web и вариант работы вообще без сервера - JupyterLite. Тоже с мультикурсорной правкой. Но все это пока только для Python.  
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #98

117. Сообщение от Аноним (7), 26-Авг-22, 23:16   +/
Это называется multiple dispatch и означает не полную перекомпиляцию, а генерацию отдельных методов функций под аргументы с указанными типами. Можно писать и без указания типов, но тогда кодогенерация под новые типы будет проходить в момент первого исполнения кода.

По сути, это стандартный полиморфизм на типах аргументов функции.

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

118. Сообщение от DEF (?), 16-Сен-22, 10:08   +/
По опросам на Stackoverflow, Julia один из самых любимых языков.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #85


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

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




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

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