Цикл языка программирования (почему отмирают)
От: Shmj Ниоткуда  
Дата: 31.08.19 02:51
Оценка: +10 -1
Сначала создают идеологически чистый и простой для понимания ЯВУ. К примеру, таким был C# вначале нулевых.

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

А потом приходит фигня. В язык тянут все что только можно и после этого он теряет простоту. Более того — использовать язык могут только лишь те, кто сидит на нем с самого начала и для кого добавление фич выглядело постепенным.

Если же ты с нуля в 2019 году попробуешь выучить C# со всеми его linq, dynamic, Tasks и пр. — то, скорее всего, посмотрев на все это дело — выберешь Go или там Python (хотя последний тоже старый, но как то не потерял простоты).

Аналогичная ситуация с C++, только все еще более запущено.

И к чему это приводит? К обретению популярности новыми ЯВУ, которые не загажены множеством парадигм и не потеряли простоту. А старые языки, конечно, никуда не денутся, но желающих из изучать с нуля все меньше.
Отредактировано 31.08.2019 2:58 Shmj . Предыдущая версия . Еще …
Отредактировано 31.08.2019 2:54 Shmj . Предыдущая версия .
Re: Цикл языка программирования (почему отмирают)
От: СвободуАнжелеДевис СССР  
Дата: 31.08.19 06:14
Оценка: +1
S>Если же ты с нуля в 2019 году попробуешь выучить C# со всеми его linq, dynamic, Tasks и пр. — то, скорее всего, посмотрев на все это дело — выберешь Go или там Python (хотя последний тоже старый, но как то не потерял простоты).

Не нужно экстраполировать свои проблемы с изучением языков на всех.
Та же Scala отлично учится и доставляет только удовольствие.
Я очень рад что все больше ее плюшек появляется в c#. Язык становится все более выразительным и лаконичным.
Нет времени на раскачку!
Re: MS делают видео вместо статей - где разум?
От: Kolesiki  
Дата: 31.08.19 06:59
Оценка: +4 -8
Здравствуйте, Shmj, Вы писали:

Шмж, скажи на чистоту — какой класс ты только что окончил? Ну ей богу, все твои мессыджи какие-то... детские граничащие с глупостью. Будто об ИТ ты узнаёшь от папки во время завтрака, а потом бежишь на КЫВТ.

S>Сначала создают идеологически чистый и простой для понимания ЯВУ. К примеру, таким был C# вначале нулевых.


Вообще левый пример! Налицо полное незнание истории C#. Кратко: это переименованная Visual Java.


S>А потом приходит фигня. В язык тянут все что только можно и после этого он теряет простоту.


С таким успехом и токарный станок не должен появляться — он теряет простоту кремниевого топора! Чушь говоришь полнейшую. Язык ОБРЕТАЕТ МОЩЬ, а не теряет простоту. За "простотой" — это тебе в ЛИСП. Или ассемблер.

S> Более того — использовать язык могут только лишь те, кто сидит на нем с самого начала и для кого добавление фич выглядело постепенным.


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


S>Если же ты с нуля в 2019 году попробуешь выучить C# со всеми его linq, dynamic, Tasks и пр.


эээ... не надо путать библиотеку и язык. Собственно, даже linq — это библиотека, Task — аналогично. Причём тут язык??

S> — то, скорее всего, посмотрев на все это дело — выберешь Go или там Python


Ха-ха!!! Ну да. А выучив язык пестон побежишь жаловаться "какая там сложная библиотека — tasks, threads, sockets...".


S>Аналогичная ситуация с C++, только все еще более запущено.


C++ был ущербным от самого рождения, ибо был "ООП нашлёпкой над Си". С ним и так всё понятно.


S>И к чему это приводит? К обретению популярности новыми ЯВУ, которые не загажены множеством парадигм и не потеряли простоту. А старые языки, конечно, никуда не денутся, но желающих из изучать с нуля все меньше.


Ну разве что в вашем классе "желающих меньше". C# — это промышленный язык, удобный, куча либ, поддержка на самой главной платформе... сегодня капризничать по поводу C# — это дилетантство. Брось это дело и садись за учебники.
Re: Цикл бесконечных вопросов (почему не отмирают)
От: XOOIOOX  
Дата: 31.08.19 07:37
Оценка: +3
Здравствуйте, Shmj, Вы писали:

S>И к чему это приводит?


К очередной теме от Шмж на КЫВТе?
Re[2]: Цикл языка программирования (почему отмирают)
От: torvic Голландия  
Дата: 31.08.19 08:08
Оценка:
Здравствуйте, СвободуАнжелеДевис, Вы писали:
САД>Та же Scala отлично учится и доставляет только удовольствие.
САД>Я очень рад что все больше ее плюшек появляется в c#. Язык становится все более выразительным и лаконичным.
у скалы версии несовместимы
новое добавляется, старое вычищается
у с# так не получится
Re[2]: MS делают видео вместо статей - где разум?
От: Denis Ivlev  
Дата: 31.08.19 08:22
Оценка: +5
Здравствуйте, Kolesiki, Вы писали:

K>Шмж, скажи на чистоту — какой класс ты только что окончил?


Ну конкретно в этом посте Shmj написал дело, а с твоей стороны откровенное шко-ло-ло густо замешанное на фанатизме граничащем с глупостью.
Re[3]: MS делают видео вместо статей - где разум?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 31.08.19 09:51
Оценка:
Здравствуйте, Denis Ivlev, Вы писали:

K>>Шмж, скажи на чистоту — какой класс ты только что окончил?


DI>Ну конкретно в этом посте Shmj написал дело, а с твоей стороны откровенное шко-ло-ло густо замешанное на фанатизме граничащем с глупостью.


Наоборот. Даже C++ можно и сейчас учить постепенно-послойно, а для C# это тем более тривиально.
Основные проблемы возникают не в этом, а в тонкостях, которые у каждого языка свои и логика уже известных не переносится.
The God is real, unless declared integer.
Re: Цикл языка программирования (почему отмирают)
От: Mamut Швеция http://dmitriid.com
Дата: 31.08.19 09:55
Оценка: +1 -4 :))
S>Сначала создают идеологически чистый и простой для понимания ЯВУ.

Нет

S>К примеру, таким был C# вначале нулевых.


Нет

S>Потом язык чуть улучшают, как то добавляют Generics и пр. Все хлопают в ладоши.


Нет

S>А раз хлопают, значит нужно повторить...


Нет

S>А потом приходит фигня. В язык тянут все что только можно и после этого он теряет простоту.


Нет

S>Более того — использовать язык могут только лишь те, кто сидит на нем с самого начала и для кого добавление фич выглядело постепенным.


Нет

S>Если же ты с нуля в 2019 году попробуешь выучить C# со всеми его linq, dynamic, Tasks и пр. — то, скорее всего, посмотрев на все это дело — выберешь Go или там Python (хотя последний тоже старый, но как то не потерял простоты).


Нет

S>Аналогичная ситуация с C++, только все еще более запущено.


Нет

S>И к чему это приводит? К обретению популярности новыми ЯВУ, которые не загажены множеством парадигм и не потеряли простоту. А старые языки, конечно, никуда не денутся, но желающих из изучать с нуля все меньше.


Нет


dmitriid.comGitHubLinkedIn
Re[2]: MS делают видео вместо статей - где разум?
От: velkin Удмуртия http://blogs.rsdn.org/effective/
Дата: 31.08.19 10:40
Оценка: 3 (1) +1
Здравствуйте, Kolesiki, Вы писали:

S>>Аналогичная ситуация с C++, только все еще более запущено.

K>C++ был ущербным от самого рождения, ибо был "ООП нашлёпкой над Си". С ним и так всё понятно.

C++

Исторический этап развития Год
Язык BCPL 1966
Язык Би (оригинальная разработка Томпсона под UNIX) 1969
Язык Си 1972
Си с классами 1980
C84 1984
Cfront (выпуск E) 1984
Cfront (выпуск 1.0) 1985
Множественное/виртуальное наследование 1988
Обобщённое программирование (шаблоны) 1991
ANSI C++ / ISO-C++ 1996
ISO/IEC 14882:1998 1998
ISO/IEC 14882:2003 2003
C++/CLI 2005
TR1 2005
C++11 2011
C++14 2014
C++17 2017

Начиная со стандарта ISO/IEC 14882:1998 это уже далеко не нашлёпка над Си.
Re[2]: MS делают видео вместо статей - где разум?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 02.09.19 09:31
Оценка:
Здравствуйте, Kolesiki, Вы писали:

K>Вообще левый пример! Налицо полное незнание истории C#. Кратко: это переименованная Visual Java.


Странное мнение. Почему то после переименования в языке вдруг обнаружились фичи, которые в джаве отсутствуют. Например — properties, foreach, event. И дальше как то странно — первым делом фичи появлялись в C#, а уже потом в Java. Пример — лямбды, генерики. Скажем, паттерн-матчинг уже появился в C#. А в джава что ?
Re[2]: Цикл языка программирования (почему отмирают)
От: TimurSPB Интернет  
Дата: 02.09.19 10:35
Оценка: +1 :))) :)
M>Нет
M>Нет
M>Нет
M>Нет
M>Нет
M>Нет
M>Нет
M>Нет
M>Нет

У тебя копипаста в ответе. Это идеологически грязно.
Make flame.politics Great Again!
Re: Цикл языка программирования (почему отмирают)
От: TimurSPB Интернет  
Дата: 02.09.19 10:36
Оценка: +2
S>И к чему это приводит? К обретению популярности новыми ЯВУ, которые не загажены множеством парадигм и не потеряли простоту. А старые языки, конечно, никуда не денутся, но желающих из изучать с нуля все меньше.
Это касается всех долгоживущих проектов. Почему ЯВУ должны стать исключением?
Make flame.politics Great Again!
Re[4]: MS делают видео вместо статей - где разум?
От: Skorodum Россия  
Дата: 02.09.19 12:34
Оценка:
Здравствуйте, netch80, Вы писали:

N>Наоборот. Даже C++ можно и сейчас учить постепенно-послойно, а для C# это тем более тривиально.

N>Основные проблемы возникают не в этом, а в тонкостях, которые у каждого языка свои и логика уже известных не переносится.

Он писал не про сложность изучения, а про типичную эволюцию языков и их превращение в кривых монстров состоящих из граблей. Грубо говоря от книги Кернигана и Ричи до стандарта С++17 (при этом не обсуждается вопрос того, какие задачи и как можно на них решать).
Re: Цикл языка программирования (почему отмирают)
От: Skorodum Россия  
Дата: 02.09.19 12:37
Оценка:
Здравствуйте, Shmj, Вы писали:

S>И к чему это приводит? К обретению популярности новыми ЯВУ, которые не загажены множеством парадигм и не потеряли простоту. А старые языки, конечно, никуда не денутся, но желающих из изучать с нуля все меньше.

Кстати, без относительно языков программирования молодеже всегда хочется учить/создавать/открывать что-то новое, что еще никто не знает. Нет большОго интереса становиться миллионым специалистом по С++, куда интереснее быть тысячным по Го или Rust. Это естественно.
Re[3]: MS делают видео вместо статей - где разум?
От: IID Россия  
Дата: 02.09.19 13:02
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


Так поэтому и переименовали

MS воодушевлённо пихала в (свою версию) Java что хотела.
Sun яростно сопротивлялась.
MS-у это надоело, переименовались в Диез, и Сану пришлось утереться.
kalsarikännit
Re[4]: MS делают видео вместо статей - где разум?
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 02.09.19 13:05
Оценка: +1 -3
Здравствуйте, IID, Вы писали:

IID>MS воодушевлённо пихала в (свою версию) Java что хотела.

IID>Sun яростно сопротивлялась.
IID>MS-у это надоело, переименовались в Диез, и Сану пришлось утереться.

Спустя 20 лет всё выглядит так, будто Микрософт накидал фич по самые Нидерланды и утёрся
Re: Цикл языка программирования (почему отмирают)
От: alexsmirnoff  
Дата: 02.09.19 13:23
Оценка:
Здравствуйте, Shmj, Вы писали:

S>почему отмирают


Вся живая природа так устроена.
Проще дать старому помереть и родить новое, чем пытаться приспособить старое к новым новым условиям.
Re: Цикл языка программирования (почему отмирают)
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 03.09.19 08:44
Оценка: -1
Здравствуйте, Shmj, Вы писали:

S>Сначала создают идеологически чистый и простой для понимания ЯВУ. К примеру, таким был C# вначале нулевых.


S>Потом язык чуть улучшают, как то добавляют Generics и пр. Все хлопают в ладоши. А раз хлопают, значит нужно повторить...


На самом деле во втором фреймворке основным были
1. Анонимные классы
2. Замыкания.
3. yield

За счет замыканий сразу сократилось количество кода и лишних методов
yield это вообще фича MS которая по сути использует автомат и для построения Task await.
Если раньше например рекурсивный обход дерева делался на вайберах, где состояние регистров и стека запоминалось для каждого вайбера с yield
просто создавался класс со свои состоянием и переходами.

Это позволяло значительно сократить код и облегчить его.

Так как за тебя это делает компилятор. Правда при отладке это немного напрягает.


Затем появились Expression что было очень удобно для SQL и прочих динамических компиляций
Это тоже оочень облегчило жизнь.

async await облегчила жизнь при асинхронной работе. Сейчас смотрю на всякие BeginInvoke и EndInvoke и тяжело на все это смотреть.

Динамики реально облегчили жизнь при работе с 1С. Там просто код но Invoke ах читать не возможно.
Всякие Элвис операторы тоже облегчают жизнь.

Затем появились span и прочее для упрощения работы с памятью массивами. Тоже нужная вещь для увеличения производительности.
Сейчас хотят сделать шейпы тоже нужная вещь.

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

Единственно, что может облегчить жизнь это использование разных языков в одном проекте.
Например F# многие использовали там, где он нужен а из C# там где он больше пригоден
и солнце б утром не вставало, когда бы не было меня
Re: Цикл языка программирования (почему отмирают)
От: vsb Казахстан  
Дата: 03.09.19 08:55
Оценка: +1 -1
Наблюдаю это с Java. Изначально язык был простой и изящный, сейчас какой-то монстр. Мне-то нормально, я потихонько доучивал, но если бы мне его сунули целиком, было бы плохо.

Я считаю, что правильный язык должен делаться один раз (ну или за короткий срок) и потом не меняться, разве что по мелочам. В частности поэтому C не теряет своей популярности. В нём может и нет особо кучи фич, зато он какой был 50 лет назад, такой по сути и остался.

Интересно, что у пайтона. Я не особо слежу за его развитием. Взять пайтон 2 и пайтон 3, там много добавили? Или взять пайтон 3 начальной версии и текущей — большая ли разница? В самом языке.
Отредактировано 03.09.2019 8:58 vsb . Предыдущая версия .
Re[2]: Цикл языка программирования (почему отмирают)
От: Shmj Ниоткуда  
Дата: 04.09.19 01:13
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>На самом деле во втором фреймворке основным были

S>1. Анонимные классы
S>2. Замыкания.
S>3. yield

Это классификация курильщика. Нормальные люди знают, что главное — это Generics. Вводим в google .Net framework key features per version и получаем:

  Скрытый текст
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.