The OpenNET Project / Index page

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



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

"Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от opennews (ok) on 29-Май-17, 10:45 
Сообщается (https://nim-lang.org/blog/2017/05/17/version-0170-released.html) о выходе проекта Nim 0.17.0 (https://nim-lang.org), в рамках которого развивается язык для системного программирования, сфокусированный на производительности, переносимости и выразительности. Язык использует (https://ru.wikipedia.org/wiki/Nim) статическую типизацию и создан с оглядкой на Pascal, C++, Python и Lisp. Код проекта поставляется (https://github.com/nim-lang/Nim) под лицензией MIT.

Исходный код на языке Nim  компилируется в представление на C, C++ или JavaScript. В дальнейшем полученный C/C++ код компилируется в исполняемый файл при помощи любого доступного компилятора (clang, gcc, icc, Visual C++), что позволяет добиться производительности близкой к Си, если не учитывать затраты на выполнение сборщика мусора.
По аналогии с Python в Nim в качестве разделителей блоков применяются отступы. Регистр написания символов в идентификаторах не учитывается. Поддерживаются средства метапрограммирования (https://ru.wikipedia.org/wiki/%D0%9C%D0%...) и возможности для создания  предметно-ориентированных языков (DSL).


В новой версии устранены недоработки в системе управления памятью. Значительно расширены средства работы с концптами (https://nim-lang.org/docs/manual.html#generics-concepts) (concept, определяемые пользователем типы классов). Представлена новая утилита choosenim (https://github.com/dom96/choosenim) для одновременной установки и работы с разными версиями Nim. До версии 0.8.6 обновлён пакетный менеджер Nimble. Расширен состав стандартных библиотек.

URL: https://nim-lang.org/blog/2017/05/17/version-0170-released.html
Новость: http://www.opennet.me/opennews/art.shtml?num=46611

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

Оглавление

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


1. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от A.Stahl (ok) on 29-Май-17, 10:45 
>По аналогии с Python в Nim в качестве разделителей блоков применяются отступы.

Это эпично. Питон настолько ужасен, что даже взяв из него лучшее получаем фигню.

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

3. "Новая версия языка программирования Nim 0.17.0"  –11 +/
Сообщение от AdVv (ok) on 29-Май-17, 11:13 
Поконкретнее с этого момента, что ужасного в Пайтоне ?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Новая версия языка программирования Nim 0.17.0"  +18 +/
Сообщение от A.Stahl (ok) on 29-Май-17, 11:19 
Например "в качестве разделителей блоков применяются отступы". Они бы ещё шрифт регламентировали. А что? Хорошая идея!
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от 1 (??) on 29-Май-17, 11:51 
А чем отступы хуже любого другого разделителя?
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

11. "Новая версия языка программирования Nim 0.17.0"  +19 +/
Сообщение от Iaaa (ok) on 29-Май-17, 11:58 
> А чем отступы хуже любого другого разделителя?

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

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

14. "Новая версия языка программирования Nim 0.17.0"  –11 +/
Сообщение от yan (??) on 29-Май-17, 12:08 
>> при копипасти из, например, веба

Не надо так, пожалуйста.

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

32. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от Аноним (??) on 29-Май-17, 14:44 
> Например тем, что легко теряются при копипасти из

Ну-ну.

> И, что при этом главное,
> никаких синтаксических ошибок - проблему можно будет словить (и то, если
> повезет) только в рантайме.

Откуда вы таки "знатоки" только беретесь?
Вы новость-то хоть проглядели или вам
> Язык использует статическую типизацию

ни о чем не говорит?

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

34. "Новая версия языка программирования Nim 0.17.0"  +8 +/
Сообщение от Crazy Alex (ok) on 29-Май-17, 14:49 
И как это спасёт от поломанной структуры?
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

42. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от Аноним (??) on 29-Май-17, 16:14 
> И как это спасёт от поломанной структуры?

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

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

63. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Iaaa (ok) on 29-Май-17, 19:11 
А вам не кажется что язык программирования, который требует для себя специальную ИДЕ - гoвно?
Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

66. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от Аноним (??) on 29-Май-17, 19:28 
> А вам не кажется что язык программирования, который требует для себя специальную
> ИДЕ - гoвно?

Во-первых, с чего это уважаемый Экспертус так решил?
Напомню, выхлоп уважаемого:
>> [отступы] легко теряются при копипасти из, например, веба или кучи мессенджеров (а также в куче идешек).

и ответ:
> открыть в идеешке неподдерживаемый ЯП и копипастить или же вставлять туда код отдает выпасом сферического коня

Мысля, что использовать неподходящий инструмент не очень хорошая идея, совсем не обязательно подразумевает, что нужен очень специфичный.

Во-вторых, что это за IDE такая, произвольно жующая отступы?
В-третьих, как оно, писать в QtCreator на жабке или в турбопаскалщине/дельфях на Си? Что там требует чего и является чьим продуктом жизнедеятельности по вашей же логике?

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

77. "Новая версия языка программирования Nim 0.17.0"  –3 +/
Сообщение от angra (ok) on 29-Май-17, 22:34 
Встречный вопрос: "откуда ты взял, что отступы жрет IDE?". Про это ничего не говорилось, точно также как никто кроме тебя не говорил про пихание в IDE кода на незнакомом ей языке. Подобный настойчивый увод обсуждения в сторону приводит еще к одному вопросу: "А не демагог ли ты?"

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


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

79. "Новая версия языка программирования Nim 0.17.0"  +1 +/
Сообщение от Аноним (??) on 29-Май-17, 22:48 

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

Что за проблемы?
Конкретика будет или только трындеж в обтекаемых формулировках?

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

86. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от angra (ok) on 30-Май-17, 00:16 
Ну чтобы далеко не ходить, на этом же сайте ЕМНИП раньше в постах замены начальных пробелов на  nbsp не было, была только замена перевода строки на BR теги. В результате без обрамления тегами code код на питоне в посте превращался в нерабочий, в отличие от кода на ЯП со свободным форматированием.
Ответить | Правка | ^ к родителю #79 | Наверх | Cообщить модератору

87. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от Аноним (??) on 30-Май-17, 00:42 
>  В результате без обрамления тегами
> code код на питоне в посте превращался в нерабочий, в отличие
> от кода на ЯП со свободным форматированием.

А в куче других формумных движков, как впрочем и в IM или вебмордах почтовиков, те же :) :( ;) ;( 8) вне тегов code автоматически заменяются на смайлики, превращая код на ЯП с такими элементами в нерабочий, несмотря на свободное форматирование.
На что переходить будете, на брейнфак или все же на оок?


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

82. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от rpm on 29-Май-17, 23:20 
> А вам не кажется что язык программирования, который требует для себя специальную
> ИДЕ - гoвно?

Именно так. Нормальный язык должен быть удобен и в vi

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

47. "Новая версия языка программирования Nim 0.17.0"  +8 +/
Сообщение от Аноним (??) on 29-Май-17, 16:50 
>> А чем отступы хуже любого другого разделителя?
> Например тем, что легко теряются при копипасти
> копипастер: +15
> несогласный1: -15
> несогласный2: -15

Хорошо у копипастеров и прочих вебмакак батхертит, смачно )
> проблему можно будет словить (и то, если повезет) только в рантайме.

А теперь успокойтесь, приготовьте огнетушитель, присядте. Внимание фокус:


Audacity
V501 There are identical sub-expressions to the left and to the right of the '-' operator. Audacity voicekey.cpp 304


sampleCount VoiceKey::OnBackward (....) {
  ...
  int atrend = sgn(buffer[samplesleft - 2]-
                   buffer[samplesleft - 1]);
  int ztrend = sgn(buffer[samplesleft - WindowSizeInt-2]-
                   buffer[samplesleft - WindowSizeInt-2]);
  ...
}


>A Copy-Paste error. In the last line 1 should be subtracted instead of 2.


bool DAGCombiner::SimplifySelectOps(....) {
  ...
  LoadSDNode *LLD = cast<LoadSDNode>(LHS);
  LoadSDNode *RLD = cast<LoadSDNode>(RHS);
  ...
  if ((LLD->hasAnyUseOfValue(1) &&
       (LLD->isPredecessorOf(CondLHS) ||
        LLD->isPredecessorOf(CondRHS))) ||
      (LLD->hasAnyUseOfValue(1) &&
       (LLD->isPredecessorOf(CondLHS) ||
        LLD->isPredecessorOf(CondRHS))))
    return false;
  ...
}

> A Copy-Paste error. The programmer seems to have forgotten to replace LLD with RLD in three places.

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


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

64. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Iaaa (ok) on 29-Май-17, 19:12 
Не можешь доказать, что у тебя нет ошибок - покажи ошибки у другого. Это автоматически сделает тебя безошибочным?

То, что на любом языке программирования можно гoвнокодить не делает питон чем-то нормальным.

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

67. "Новая версия языка программирования Nim 0.17.0"  +5 +/
Сообщение от Аноним (??) on 29-Май-17, 19:32 
> Не можешь доказать, что у тебя нет ошибок - покажи ошибки у
> другого. Это автоматически сделает тебя безошибочным?

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

> То, что на любом языке программирования можно гoвнокодить не делает питон чем-то
> нормальным.

И причем тут питон? Вы новость-то хоть читали? Или увидели знакомое слово и сразу пошли в газовую атаку?


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

78. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от angra (ok) on 29-Май-17, 22:39 
Вообще-то спрыгнуть тут пытаешься как раз ты. В данном случае намеренно подменяя копипасту с внешнего источника на копипасту в пределах кода. Второе это плохо, первое - нет.
А еще тебе же возвращаю призыв почитать, только не новость, а тред, в котором ты отвечаешь и где со второго сообщения произошел переход обсуждения с nim на питон.


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

8. "Новая версия языка программирования Nim 0.17.0"  –19 +/
Сообщение от Аноним (??) on 29-Май-17, 11:52 
Явно лучше, чем фигурные скобочки из 70-ых
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

22. "Новая версия языка программирования Nim 0.17.0"  +17 +/
Сообщение от fi (ok) on 29-Май-17, 13:17 
ага, отступы из 60-х - почтим фортран-IV :)))))
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

9. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Iaaa (ok) on 29-Май-17, 11:56 
Любой язык, в котором программу нельзя записать одной строкой, изначально ущербен (с)
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

12. "Новая версия языка программирования Nim 0.17.0"  –13 +/
Сообщение от Аноним_oyc on 29-Май-17, 11:59 
А программисты, которые так делают, ущербны в квадрате.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

13. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Iaaa (ok) on 29-Май-17, 12:05 
> А программисты, которые так делают, ущербны в квадрате.

Тоже мне проблема. clang-format и радуйся.

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

85. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от fdef1f1444ac11e7ba89376bf7d9de6b on 29-Май-17, 23:25 
А можно ещё в Lisp переконвертировать, там подредактировать, а потом переконвертировать обратно. А в репозиторий заливать через обфускатор, чтоб круто смотрелось, как будто ты хакер.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

18. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от GG (ok) on 29-Май-17, 12:33 
В питоне можно писать одной строчкой. Используй вложенные функции и разделитель ";"
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

29. "Новая версия языка программирования Nim 0.17.0"  –6 +/
Сообщение от Iaaa (ok) on 29-Май-17, 14:15 
> В питоне можно писать одной строчкой. Используй вложенные функции и разделитель ";"

То есть "через жопу"?

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

35. "Новая версия языка программирования Nim 0.17.0"  +5 +/
Сообщение от Аноним (??) on 29-Май-17, 14:56 
> Любой язык, в котором программу нельзя записать одной строкой, изначально ущербен (с)

Т.е. в лучших традиция анонимов, ты не знаешь, не слышал, но ценнейшее мнение имеешь?
https://github.com/nim-lang/Nim/wiki/Whitespace-FAQ
> Nim also has semicolons. They are redundant as simple statement terminators,
> but useful if you want to fit multiple statements in one line.
> Statement lists can also be used in some places where you would need
> to define a block using indentation

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

56. "Новая версия языка программирования Nim 0.17.0"  +5 +/
Сообщение от Аноним (??) on 29-Май-17, 18:19 
> Любой язык, в котором программу нельзя записать одной строкой, изначально ущербен (с)

Очередной диванный знаток опеннета?


import tables, strutils

var wordFrequencies = initCountTable[string]()

for line in stdin.lines:
  for word in line.split(", "):
    wordFrequencies.inc(word)

echo "The most frequent word is '", wordFrequencies.largest, "'"


обтекай:

import tables, strutils; var wordFrequencies = initCountTable[string]();(for line in stdin.lines:  (for word in line.split(", "):    wordFrequencies.inc(word))); echo "The most frequent word is '", wordFrequencies.largest, "'"


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

65. "Новая версия языка программирования Nim 0.17.0"  –3 +/
Сообщение от Iaaa (ok) on 29-Май-17, 19:17 
> python sample.python

  File "sample.python", line 1
    import tables, strutils; var wordFrequencies = initCountTable[string]();(for line in stdin.lines:  (for word in line.split(", "):    wordFrequencies.inc(word))); echo "The most frequent word is '", wordFrequencies.largest, "'"
                                               ^
SyntaxError: invalid syntax

--
Ну и?

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

69. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от Аноним (??) on 29-Май-17, 19:37 
>>>> Новая версия языка программирования Nim 0.17.0
>>> ко-ко-ко! отступы! куд-кудах!
>> код на ниме
> python sample.python
> SyntaxError: invalid syntax
> Ну и?

"Шарик, ты ... !"(с) кот Матроскин

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

84. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от rpm on 29-Май-17, 23:24 
>[оверквотинг удален]
> wordFrequencies.inc(word))); echo "The most frequent word is '", wordFrequencies.largest,
> "'"
>            
>            
>            
>            
>   ^
> SyntaxError: invalid syntax
>
> --

да уж  питонятина даже для адептов неподъемна
> Ну и?

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

24. "Новая версия языка программирования Nim 0.17.0"  +5 +/
Сообщение от Balancer (ok) on 29-Май-17, 13:34 
В Color Forth регламентирован цвет слов :)
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

57. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Аноним (??) on 29-Май-17, 18:32 
> Например "в качестве разделителей блоков применяются отступы".

Пользуйтесь на здоровье ";" и скобочками.

> Они бы ещё шрифт регламентировали.

Что уважаемый Астахал хотел этим сказать? Что применение привычных скобочек не есть подчинение правилам, а вот разрешить на выбор скобочки или отступы - есть строжайшая регламентация? Или как обычно, ляпнул не подумав?


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

59. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от A.Stahl (ok) on 29-Май-17, 18:53 
>Что применение привычных скобочек не есть подчинение правилам, а вот разрешить на выбор скобочки или отступы - есть строжайшая регламентация?

Правила бывают разные.
И питоновцы никогда не скрывали что их отступы результат вкусовщины. А возводить вкусовщину в ранг обязательных правил -- плохо. Плохо, когда регламентируются не важные вещи, а хрень собачья. Понимаешь? Ведь завтра главному Повелителю Питонов придёт в голову заставлять всех писать Комик Сансом, поскольку витиеватость этого шрифта более соответствует змеевидности названия языка. Плохо когда маразм обязателен. Маразм всегда должен быть опциональным.

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

61. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от Аноним (??) on 29-Май-17, 19:09 
>>Что применение привычных скобочек не есть подчинение правилам, а вот разрешить на выбор скобочки или отступы - есть строжайшая регламентация?
> Правила бывают разные.
> И питоновцы никогда не скрывали что их отступы результат вкусовщины.

А причем тут питон? Нет, я понимаю, у кого что болит, но питону по фичам и скорости до сабжа, как до Китая.

> Плохо, когда регламентируются не важные вещи, а хрень собачья. Понимаешь?

Разделитель блоков у вас значит не очень важная вещь? Ясно-понятно.
А о стилях отступов типа K&R, линукскернел, гну, страуструп и т.д. вы как, тоже ни ухом, ни рылом?

> Ведь завтра главному Повелителю Питонов
> придёт в голову заставлять всех писать Комик Сансом, поскольку витиеватость этого
> шрифта более соответствует змеевидности названия языка.

Занимательный бред. Чисто теоретически - как контроллировать собрался-то? Обязать всех распространять код в doc(x) и pdf/dvi/ps?

> Плохо когда постить везде свой маразм обязательно.
> Маразм всегда должен быть опциональным.

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

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

94. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от red (??) on 30-Май-17, 09:35 
Я раньше питон терпеть не мог из-за отступов, как элементов языка. Однако, пришлось немного на нём пописать, и теперь я отношусь к отступам совершенно спокойно, даже нравится.

Аргументы за:
1. код компактный;
2. визуально видна структура кода. Причём, эта фича заложена в язык изначально. Гoвнокод  с "for if if else for while" не скрыть;
3. также, это защищает от лапшеобразного гoвнокода: функцию длиной в пару экранов просто неудобно писать и читать.

Аргументы против:
1. не знаю почему, но иногда это таки бесит.

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

53. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Ерема on 29-Май-17, 17:46 
Все ужасно.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

26. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от kai3341 (ok) on 29-Май-17, 13:48 
> Это эпично. Питон настолько ужасен, что даже взяв из него лучшее получаем фигню.

У меня с экрана потёк жир и по колено затопил комнату. Зачем так делать?

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

62. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от A.Stahl (ok) on 29-Май-17, 19:10 
Он диетический:)
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

33. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от Аноним (??) on 29-Май-17, 14:49 
>>По аналогии с Python в Nim в качестве разделителей блоков применяются отступы.
> Это эпично. Питон настолько ужасен, что даже взяв из него лучшее получаем
> фигню.

Вообще-то, всякие «концепты» и прочее, наряду со статистической типизацией, более смахивают на заимствование из хаскеля.
В котором, внезапно, тоже используют в качесте разделителей блоков отступы.
Но вы продолжнайте с умным видом нести пургу и далее )

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

37. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Crazy Alex (ok) on 29-Май-17, 15:05 
А хаскель настолько ужасен, что "лучшего" в нём нет вообще :-)

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

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

45. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от Аноним (??) on 29-Май-17, 16:33 
> А хаскель настолько ужасен, что "лучшего" в нём нет вообще :-)

Хаскель в принципе интересен, но уж больно сферичен.

> В данном случае "концепты" совершенно очевидно пришли из идей, уже лет пятнадцать
> витающих в плюсах - достаточно на первый же пример глянуть, isComparable,
> и поддержку шаблонов.

Так оно вроде как даже в новости упоминается - "с оглядкой". И нет, это не совсем то. Как и шаблоны. Шаблоны в этом случае разновидность макросов.

> А уж статическая типизация так вообще на каждом углу.

В питоне ее нет, это раз. Табы и прочее для отступов запрещены, это два. Поэтому сравнивать с питоном, как минимум, глупо.

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

74. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Crazy Alex (ok) on 29-Май-17, 21:26 
Я бы сказал, что хаскель чудовищно далёк как от железа, на котором крутится (в отличие от C-подобных), так и от предметных областей того, что в основном пишут (в отличие от ООП-подобных). Понятно, что результат весьма сферичен.

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

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

72. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Аноним (??) on 29-Май-17, 20:11 
Хаскель — идеальный язык. Все бы на нем сидели, да неосиляторы мешают.
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

88. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 30-Май-17, 05:44 
> В котором, внезапно, тоже используют в качесте разделителей блоков отступы.

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

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

89. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Аноним (??) on 30-Май-17, 05:48 
> Сложный кода

читать как "Сложный участок кода"

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

98. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от _ (??) on 30-Май-17, 20:07 
>я сам прекрасно знаю когда и как представить код

Это пока ты один ... как возьмут в проект - готовь вазелин :-)))) ибо там таких знающих - каждый кого ТЛ не выепорол публично :)))

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

99. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 30-Май-17, 22:07 
Кто тебе сказал что я один и не пишу в проектах? Да пошел твой ТЛ и прочие недопрограммисты скопом. Даже когда я был студентом мне никто не делал замечания. Сколько был в проектах - так тоже никто никакие претензии не выдвигал. Может дело в том что я обхожу второсортные языки где смешивается структура и представление, и как бы научился сразу все структурировать нормально?
Ответить | Правка | ^ к родителю #98 | Наверх | Cообщить модератору

101. "Новая версия языка программирования Nim 0.17.0"  +3 +/
Сообщение от Аноним (??) on 30-Май-17, 22:38 
> Кто тебе сказал что я один и не пишу в проектах? Да
> пошел твой ТЛ и прочие недопрограммисты скопом.

Гну-стайл, кернел-стайл?
Куча проектов, где вам в той или иной форме намекнут на несоответствие стиля вашего кода общепроектному.
Не, не слышал.

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

Чтобы структурировать отступами, нужно все равно уметь структурировать.
Если вы не понимаете даже таких простых вещей и не сталкивались с упомянутым выше, то боюсь, у вас неверное представление о ваших возможностях.

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

103. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Аноним (??) on 01-Июн-17, 01:51 
> Гну-стайл, кернел-стайл?
> Куча проектов, где вам в той или иной форме намекнут на несоответствие стиля вашего кода общепроектному.
> Не, не слышал.

Free-style под семантику которая лучше чем топорные спецификации. Я не сильно отклоняюсь от принятых норм, поэтому нет проблем.


> Чтобы структурировать отступами, нужно все равно уметь структурировать.
> Если вы не понимаете даже таких простых вещей и не сталкивались с упомянутым выше, то боюсь, у вас неверное представление о ваших возможностях.

Эй, алё там? Субтред стартанул от какого сообщения? Ты че совсем не догоняешь что тебе пишут?

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

104. "Новая версия языка программирования Nim 0.17.0"  +2 +/
Сообщение от Аноним (??) on 01-Июн-17, 16:53 
> Я не сильно отклоняюсь
> от принятых норм, поэтому нет проблем.

Т.е. не слышали.

>> Чтобы структурировать отступами, нужно все равно уметь структурировать.
>> Если вы не понимаете даже таких простых вещей и не сталкивались с упомянутым выше, то боюсь, у вас неверное представление о ваших возможностях.
> Эй, алё там? Субтред стартанул от какого сообщения?

Вы и этого не знаете? Прочитайте тогда внимательно ветку начиная с 33 или 88.

> Ты че совсем не догоняешь что тебе пишут?

Похоже, правила русского языка и банальной вежливости вы не осилили. Логика (см. выше - структурирование отступами, скобочками, begin end и т.д. остается структурированием) - не ваш конек, с умением выражать свои мысли тоже не все в порядке.
Но, как доказано не раз на этом ресурсе, чтобы в лучших традициях опеннета, с умным видом, поэкспертничать про «зрелость инженерии», «первосортность и правильность ЯП» и диагнозы другим поустанавливать - все это совсем-совсем не нужно. Правда и цена таким откровением - куча обгоревших табуретов из под «откровителя», когда он начнет недоумевать, почему это его, такого красивого и умного, не хотят воспринимать всерьез =)

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

2. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от iZEN email(ok) on 29-Май-17, 11:07 
Надо больше языков.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Имя on 29-Май-17, 11:17 
Сразу задефайнить точку с запятой вместо отступа.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

19. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от IB on 29-Май-17, 12:47 
При чём тут ";" ?
Речь про блоки кода "{}" begin/end
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

10. "Новая версия языка программирования Nim 0.17.0"  +4 +/
Сообщение от Аноним_oyc on 29-Май-17, 11:57 
>Регистр написания символов в идентификаторах не учитывается.

И это ставит на нём жирный крест.

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

23. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Anonimous on 29-Май-17, 13:27 
Про регистр - брехня!
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

25. "Новая версия языка программирования Nim 0.17.0"  +1 +/
Сообщение от Аноним (??) on 29-Май-17, 13:44 
> > Регистр написания символов в идентификаторах не учитывается.
> И это ставит на нём жирный крест.

На регистре, надо полагать?

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

80. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Аноним (??) on 29-Май-17, 22:59 
На регистронечувствительном языке, который ещё после это претендует называться языком системного программирования. Хотя, человек выше сказал, что в отношении этого ЯП это брехня.
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

81. "Новая версия языка программирования Nim 0.17.0"  +4 +/
Сообщение от Аноним (??) on 29-Май-17, 23:16 
> На регистронечувствительном языке, который ещё после это претендует называться языком
> системного программирования.

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

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

95. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Ordu email(ok) on 30-Май-17, 11:23 
> Многие диалекты асма тоже не чувствительны к регистру.

Ну так асм прекратил быть системным языком сразу, как только появился регистрочувствительный C. Никто не пишет системы на регистронезависимых ассемблерах.

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

83. "Новая версия языка программирования Nim 0.17.0"  +1 +/
Сообщение от Аноним (??) on 29-Май-17, 23:22 
> На регистронечувствительном языке.

Паскальщина с диалектами, не?

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

27. "Новая версия языка программирования Nim 0.17.0"  +1 +/
Сообщение от 123 (??) on 29-Май-17, 14:12 
> производительности близкой к Си, если не учитывать затраты на выполнение сборщика мусора

Святая толстота.

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

30. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 29-Май-17, 14:17 
Я кажется понял причину эффекта "синтаксис лишь бы не как у си!!111". Если сделать синтаксис близко похоже на Cи, в остатке будет только очередной недоязычок сливающий Си по производительности.

Вот и приходится выдумывать нескучный синтаксис.

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

31. "Новая версия языка программирования Nim 0.17.0"  –2 +/
Сообщение от Iaaa (ok) on 29-Май-17, 14:32 
> в остатке будет только очередной недоязычок сливающий Си по производительности.

А еще бывают неосиляторы.

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

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

36. "Новая версия языка программирования Nim 0.17.0"  –5 +/
Сообщение от Аноним (??) on 29-Май-17, 15:04 
> Я кажется понял причину эффекта "синтаксис лишь бы не как у си!!111".
> Если сделать синтаксис близко похоже на Cи, в остатке будет только
> очередной недоязычок сливающий Си по производительности.

Если вы считаете синтаксис основной причиной производительности сишки, то у меня для вас плохие новости насчет того, что вы там себе придумали по поводу понимания =)
Хотя, можете и далее продолжать все те «нововедения» насчет алиасинга следованием молодежно-фортрановой моде.


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

38. "Новая версия языка программирования Nim 0.17.0"  +12 +/
Сообщение от A.Stahl (ok) on 29-Май-17, 15:12 
Никто не говорит "синтаксис основной причиной производительности сишки". Откуда такая странная мысль? Было сказано, что если оставить синтаксис без изменений, то кому нахрен нужен будет ещё один Си только тормознутый?
Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

50. "Новая версия языка программирования Nim 0.17.0"  –8 +/
Сообщение от Аноним (??) on 29-Май-17, 17:26 
> Никто не говорит "синтаксис основной причиной производительности сишки".

Конечно не говорит. Но пишет.
> Откуда такая странная мысль?

Может, потому что я читаю не только по диагонали, да еще и не *опой?

> Было сказано, что если оставить синтаксис без изменений, то
> кому нахрен нужен будет ещё один Си только тормознутый?

Читайте внимательно, а не пытайтесь быть в каждой бочке затычкой - все равно выходит **ровастенько.


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

51. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от A.Stahl (ok) on 29-Май-17, 17:41 
>я читаю не только по диагонали, да еще и не *опой?

Я не знаю по какой прямой или кривой ты читаешь. И меня не интересует каким органом. Главное что ты неправильно понял написанное.

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

54. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 29-Май-17, 17:54 

>  Главное что ты не так как я, а значит неправильно, понял написанное.

Яснопонятно.


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

41. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от hand email on 29-Май-17, 16:12 
вроде как ребята из кпи игрушку собственную на нем пишут и сам nim допиливают, на конфе доклад в прошлом году слушал.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

68. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от XoRe (ok) on 29-Май-17, 19:32 
> Исходный код на языке Nim компилируется в представление на C, C++ или JavaScript.

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

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

75. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Аноним (??) on 29-Май-17, 21:39 
>> Исходный код на языке Nim компилируется в представление на C, C++ или JavaScript.
> Вот на этом месте возникает вопрос - где он там компилируется, когда
> он просто разворачивается в другой высокоуровневый язык?

И в чем вопрос? Компиляция == трансляция из одного языка в другой. Какой нибудь жабко-питоно-байткод или LLVM тоже на самом деле не сильно-то низок уровнем или может быть "скормлен" ЦПУ.

ЗЫ: а, кажется понял. Это случайно не потому что в русской википедии компиляция определяется как
> трансляция программы, составленной на исходном языке высокого уровня, в эквивалентную программу на низкоуровневом языке, близком машинному код

?
Это, извините, ... википедия во всей ее красе.
В более общем смысле компилятор это переводчик.

http://www.compilers.net/paedia/compiler/index.htm
> A compiler is a compter program that translates a computer program written in one computer language (called the source language) into an equivalent program written in another computer language (called the output, object, or target language).

http://web.stanford.edu/class/archive/cs/cs143/cs143.1128/ha...
> What is a compiler?
> A compiler is a program that takes as input a program written in one language (the source
> language) and translates it into a functionally equivalent program in another language
> (the target language).  

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

76. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от XoRe (ok) on 29-Май-17, 21:47 
Да, видать в русской вики пропустили указание, что это обычно низкоуровневый язык, но не всегда.
Ответить | Правка | ^ к родителю #75 | Наверх | Cообщить модератору

71. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Аноним (??) on 29-Май-17, 19:49 
Не пишу обычно в комменты ничего, но захотелось вставить пару строк.
Просто попробуйте на Nim написать что-нибудь простейшее. На rosettacode.org сравните листинги задач на разных языках. Это реально эффективный и элегантный язык. Чужой код легко читается, стандартная библиотека приятная, по скорости выполнения реально сравним с C (смотрел и повторял у себя разные тесты). Так же исходник можно транслировать в JS встроенными средствами.
Мелкие утилиты и простые веб сервисы (через библиотеку jester) можно написать за полчаса. Я пока рассматривал этот язык из чистого любопытства - случайно написал несколько тулзов, которые внедрились на основной работе. Особенно если учесть, что я админ, а не программер.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

91. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 30-Май-17, 06:02 
> Это реально эффективный и элегантный язык.

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

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

92. "Новая версия языка программирования Nim 0.17.0"  –3 +/
Сообщение от анон on 30-Май-17, 07:21 
"машина с задним расположением двигателя не может рассматриваться серьезно"
Ответить | Правка | ^ к родителю #91 | Наверх | Cообщить модератору

93. "Новая версия языка программирования Nim 0.17.0"  +1 +/
Сообщение от Аноним (??) on 30-Май-17, 08:37 
"Гитлер тоже человек"
Ответить | Правка | ^ к родителю #92 | Наверх | Cообщить модератору

102. "Новая версия языка программирования Nim 0.17.0"  +/
Сообщение от Аноним (??) on 31-Май-17, 18:17 
> Гитлер тоже человек

А ещё художник ! Ня!

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

96. "Новая версия языка программирования Nim 0.17.0"  –1 +/
Сообщение от Аноним (??) on 30-Май-17, 12:12 
чем это лучше/отличается от Haxe?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

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

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




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

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