The OpenNET Project / Index page

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



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

"Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от opennews (??), 03-Ноя-25, 22:51 
Представлен релиз языка системного программирования Nim 2.2.6.  Обновление вышло спустя шесть месяцев после релиза версии 2.2.4 и включает 141 коммит с исправлениями ошибок и улучшениями производительности. Nim – статически типизированный компилируемый язык программирования с синтаксисом, вдохновлённым Python, и возможностями метапрограммирования на уровне Lisp. Язык компилируется в C, C++ и JavaScript, обеспечивая производительность на уровне C при выразительности высокоуровневых языков.  Код проекта поставляется под лицензией MIT...

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

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

Оглавление

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


1. "Выпуск языка программирования Nim 2.2.6"  +7 +/
Сообщение от Аноним (1), 03-Ноя-25, 22:51 
> и возможностями метапрограммирования на уровне Lisp
> Язык компилируется в C, C++ и JavaScript,

Нужно перестать стесняться и сказать вслух очевидное: нужен Common Lisp, компилируемый в представление на любом мейнстримном языке.

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

10. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от ZloySergant (ok), 03-Ноя-25, 23:51 
>...Common Lisp, компилируемый в представление на любом мейнстримном языке.

Был такой. ECL, но после самоотвода jjgarcia скатился в унылое.
До этого gcl, ccl и др.

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

19. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Кошкажена (?), 04-Ноя-25, 01:14 
> нужен Common Lisp,

У него заморожен стандарт. Как же без обновлений? На что выделять деньхи?

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

21. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (21), 04-Ноя-25, 01:35 
А что, если создавать новые библиотеки? ... Да ну на! Лучше синтаксис каждые 3 недели ломать!
Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск языка программирования Nim 2.2.6"  –2 +/
Сообщение от Аноним (29), 04-Ноя-25, 04:09 
Common Lisp слишком переусложнен и переполнен всяческой абракатаброй.

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

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

30. "Выпуск языка программирования Nim 2.2.6"  +4 +/
Сообщение от Аноним (30), 04-Ноя-25, 06:06 
Спасибо не надо, ваши не осилившие паскаль первоклашки потом вкатываются в ойти через пейтон и уже вовсю пишут калькуляторы на 30ГБ ОЗУ.
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск языка программирования Nim 2.2.6"  –1 +/
Сообщение от Аноним (47), 04-Ноя-25, 12:37 
>ваши не осилившие паскаль первоклашки

Паскаль не надо осиливать, паскаль надо закапывать. Если уж и брать компилируемые языки, то хотя-бы современные SML, Go, Ocaml, другие подставить по вкусу.

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

62. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (62), 04-Ноя-25, 16:20 
паскаль нужен не для программирования, а для освоения концепций. см. столярова.
а в одном рядоу go с ocaml, конечно, странно выглядят.
Ответить | Правка | Наверх | Cообщить модератору

36. "Выпуск языка программирования Nim 2.2.6"  +3 +/
Сообщение от Аноним (-), 04-Ноя-25, 08:18 
>Но вот Scheme - это то, что надо.

Scheme - это стандарт на бумаге, его не заюзаешь. Юзайте реализацию Guile.

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

31. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от morphe (?), 04-Ноя-25, 06:07 
> нужен Common Lisp

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

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

34. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (34), 04-Ноя-25, 07:56 
Julia?
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

58. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (-), 04-Ноя-25, 15:01 
>Нужно перестать стесняться и сказать вслух очевидное: нужен Common Lisp, компилируемый в представление на любом мейнстримном языке.

На сцену приглашается Lovesan Лоровскый.

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

2. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (2), 03-Ноя-25, 23:00 
Будучи программистом с опытом более 15 лет и комфортной зарплатой, я ничего не понял из описания. Слишком сложно, а значит, не выстрелит.
Ответить | Правка | Наверх | Cообщить модератору

3. "Выпуск языка программирования Nim 2.2.6"  +5 +/
Сообщение от bdrbt (ok), 03-Ноя-25, 23:16 
Вот если бы ты не программы там всякие 15 лет писал, а каждый раз придумывал почему убогий с/с++/c#/жаба/<ещёчегонибудь> не подходит под высокий полёт твоей мысли, вот тогда бы ты всё понял.
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (-), 04-Ноя-25, 00:05 
> Вот если бы ты не программы там всякие 15 лет писал, а каждый раз придумывал
> почему убогий с/с++/c#/жаба/<ещёчегонибудь> не подходит под высокий полёт
> твоей мысли, вот тогда бы ты всё понял.

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

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

5. "Выпуск языка программирования Nim 2.2.6"  –2 +/
Сообщение от Аноним (5), 03-Ноя-25, 23:38 
Это ок.

Тут люди с опытом по 30 лет на С, не могут понять, зачем нужен раст. Уже их ошибки на уровне ЦПУ хотят решать, а им невдомек.

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

13. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (-), 04-Ноя-25, 00:07 
> Тут люди с опытом по 30 лет на С, не могут понять, зачем нужен раст. Уже их
> ошибки на уровне ЦПУ хотят решать, а им невдомек.

Ну так отлично. Вернуть хрустикам их любимую мантру про апгрейд железа, покоцать гранты и отправить на мороз, ибо майнтенансу вдолгую софт на этом брейнфаке не подлежит.

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

23. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (23), 04-Ноя-25, 02:04 
Выбор корпораций решать си-ошибки на уровне ЦПУ является признанием того, что раст не нужен. Иначе зачем бы им решать си-ошибки на уровне ЦПУ, вместо изучения раста их сотрудниками.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

32. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (5), 04-Ноя-25, 06:27 
> Выбор корпораций решать си-ошибки на уровне ЦПУ является признанием того, что раст не нужен.

Решать в рантайме то, что должно решаться на этапе компиляции?

> Иначе зачем бы им решать си-ошибки на уровне ЦПУ, вместо изучения раста их сотрудниками

Потому, что очень много написано на С, и, в ближайшем будущем, от этого не избавится.

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

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

25. "Выпуск языка программирования Nim 2.2.6"  +3 +/
Сообщение от Аноним (-), 04-Ноя-25, 02:46 
> Тут люди с опытом по 30 лет на С, не могут понять, зачем нужен раст. Уже
> их ошибки на уровне ЦПУ хотят решать, а им невдомек.

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

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

64. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Шизгорин (-), 04-Ноя-25, 16:46 
Они думают, что вечно будут молодыми. Ага. Я тоже в свое время ржал над теми, кто сидит на третьих пентиумах, а сейчас сам завис на "коре дуба" из-за: а) привычка; б) тянет всё что мне надо.
Ответить | Правка | Наверх | Cообщить модератору

7. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от 12yoexpert (ok), 03-Ноя-25, 23:41 
это новость про патч-релиз. вопросы по изложению к автору новости
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору
Часть нити удалена модератором

33. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (33), 04-Ноя-25, 07:42 
А что, разве питон может компилироваться в js или wasm? Или может в Си код, сопоставимый с нативным? Работать на микроконтроллерах без такого сжирания ресурсов, тоже близком к Си?
Нет.
Ответить | Правка | К родителю #25 | Наверх | Cообщить модератору

51. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от минона (?), 04-Ноя-25, 12:56 
> А что, разве питон может компилироваться в js или wasm? Или может
> в Си код, сопоставимый с нативным? Работать на микроконтроллерах без такого
> сжирания ресурсов, тоже близком к Си?
> Нет.

Ну, есть транспайлер py2many, но заставить его работать на скрипте, большем чем hello_world.py, мне не удалось.

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

16. "Выпуск языка программирования Nim 2.2.6"  +3 +/
Сообщение от Уникум (?), 04-Ноя-25, 00:18 
Язык на пробелах не нужен
Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Кошкажена (?), 04-Ноя-25, 02:44 
Правильно. Нужно писать без пробелов, в одну строку желательно.
Ответить | Правка | Наверх | Cообщить модератору

44. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (44), 04-Ноя-25, 11:41 
Для человека структурирование через отступы — естественный приём. Так пишут списки, планы, вложенные элементы.

Конечно, можно так:
if (x > 0) {
    printf("Positive\n");
} else {
    printf("Non-positive\n");
}

Но я человек, и мне удобнее так:
if x > 0:
  echo "Positive"
else:
  echo "Non-positive"

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

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

45. "Выпуск языка программирования Nim 2.2.6"  +3 +/
Сообщение от Аноним (45), 04-Ноя-25, 12:26 
При вставке кода могут появиться трудно уловимые ошибки, которые будут проходить синтаксическую проверку.
Ответить | Правка | Наверх | Cообщить модератору

56. "Выпуск языка программирования Nim 2.2.6"  –1 +/
Сообщение от Аноним (56), 04-Ноя-25, 13:57 
Ну, если вставлять в MS Word, то, пожаоуй, да 🙂‍↕️
Ответить | Правка | Наверх | Cообщить модератору

60. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (-), 04-Ноя-25, 15:36 
В Nim с его чувствительным компилятором это вряд ли возможно. Для написания программ на языке Nim нужна высокая культура кодинга и чутьё при применении типов.
Ответить | Правка | К родителю #45 | Наверх | Cообщить модератору

49. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (47), 04-Ноя-25, 12:54 
>Конечно, можно так:

Не можно, а нужно. Вместо скобочек можно end использовать, но это дело вкуса.
>Но я человек, и мне удобнее так:

Если вы не заметили, то отступы уже давным давно проставляются автоматически. Вот вам в качестве примера: https://try.ocamlpro.com/ вводим какой-то код, например

let a = [

Нажимаем Enter и у нас автоматически появляется отступ. При этом, основное отличие данного подхода в том, что если вы в уже существующий код добавите

let a = [
  [ (* < добавили новую скобку *)
  1
]

То он автоматически приведётся к нужному виду

let a = [
  [
    1
  ]

>Языки с отступами формируют повышенную дисциплина кодирования.

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

Ну так положите файл с настройками в репозиторий. Зато, при управлении проблемами программист будет регулярно отхватывать проблем, от того, что лишние пробелы к коду приклеились. Программировать без IDE будет мучением, а копирование кода в случайные места приведёт к потере пробелов и полной поломки кода.

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

53. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от anonymousemail (??), 04-Ноя-25, 13:44 
>  Конечно, можно так:
>  if (x > 0) {
>      printf("Positive\n");
>  } else {
>      printf("Non-positive\n");
>  }

это для детей, вообще то надо так:

   printf( x>0 ? "Positive\n" : "Non-positive\n");

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

57. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от _kp (ok), 04-Ноя-25, 14:33 
Более того, вместо x может  быть и "функция" объявленная здесь же, в массив, и мало ли что.
А выше предлагают ВМЕСТО сокращения портянок исходников, те же портянки разукрасить пробелами, что бы хотя бы издали было красиво. :)

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

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

20. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от cheburnator9000 (ok), 04-Ноя-25, 01:29 
> теперь компилятор корректно применяет перемещение

Там нет компилятора. Там транспайлер. У них была и до сих пор есть возможность перейти на LLVM для полной поддержки сборки и дебага, вместо костылей.

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

38. "Выпуск языка программирования Nim 2.2.6"  –2 +/
Сообщение от Аноним (-), 04-Ноя-25, 08:22 
>У них была и до сих пор есть возможность перейти на LLVM для полной поддержки сборки и дебага, вместо костылей.

Что за бред ты несёшь?

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

43. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (44), 04-Ноя-25, 11:06 
В профессиональной литературе и документации сам Nim называют именно компилятором, а не транспилятором.

Причина в том, что конечный результат — исполняемый бинарный код. Наличие промежуточного языка (C) лишь часть внутреннего процесса компиляции и архитектурно Nim ближе к традиционным компиляторам, чем к чистым транспиляторам вроде TypeScript→JS.

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

46. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (45), 04-Ноя-25, 12:28 
так а в чём разница? Компилятор - из исходного кода в машинный код, транслятор - из исходного на одном языке в исходный на другом. А транспилятор - из исходного кода в?
Ответить | Правка | Наверх | Cообщить модератору

54. "Выпуск языка программирования Nim 2.2.6"  +1 +/
Сообщение от Аноним (56), 04-Ноя-25, 13:53 
...в самодостаточный читабельный текст программы на другом ЯП, очевидно же.

Цель компилятора Nim таки давать на выходе бинарник.

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

61. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от АнонимичныйАноним (?), 04-Ноя-25, 16:02 
По вашей логике clang - это компилятор, или же транслятор? Поскольку сборка, изначально, происходит в другой язык - IR LLVM.
Ответить | Правка | К родителю #46 | Наверх | Cообщить модератору

65. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Медведь (ok), 04-Ноя-25, 17:54 
> так а в чём разница? Компилятор - из исходного кода в машинный код, транслятор - из исходного на одном языке в исходный на другом. А транспилятор - из исходного кода в?

И компилятор, и транспилятор -- трансляторы. Компилятор: исходный код -> машкод/байткод; транспилятор: исходный код на языке A -> исходный код на языке B.

По моему мнению, Nim таки ближе к транспилятору, хотя назовите как хотите, на суть происходящего не влияет. ;)

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

63. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Шизгорин (-), 04-Ноя-25, 16:42 
Ты просто прицепился к словам. Сами они называют это компилятором, а использование промежуточного Си преподносят как фичу.
Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

66. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Анонимemail (66), 04-Ноя-25, 18:43 
clang, получается, тоже транслятор?
Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

52. "Выпуск языка программирования Nim 2.2.6"  +/
Сообщение от Аноним (47), 04-Ноя-25, 13:03 
>детерминированное управление памятью с поддержкой нескольких стратегий (ARC/ORC, refc, маркировка-и-подметание)

И получение граблей на ровном месте
>Оптимизация move-семантики для полей объектов

Но всё же, у них там ещё и сборщик мусора зачем-то нужен
>Устранена фундаментальная проблема в сборщике мусора при обработке циклических структур данных

Видимо слишком простым язык получился, перед крестами стыдно.
>Исправлена утечка сокетов в asyncnet при ошибках согласования TLS-соединения:

Ошибка в сетевых соединениях исправлена в языке, не в библиотеке, а в языке. Особенно приятно будет во всяких дебианах, ждать ещё года два.
>Устранён эффект «утечки» отключения предупреждений за пределы pragma-блоков:

Похоже, они действительно решили догнать кресты по сложности.

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

55. Скрыто модератором  +/
Сообщение от Троллль (?), 04-Ноя-25, 13:54 
Ответить | Правка | Наверх | Cообщить модератору

59. Скрыто модератором  +/
Сообщение от Троллльemail (?), 04-Ноя-25, 15:12 
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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