Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by Мальчик-Одуванчик »

Языки - те же самые инструменты, которые помогают не только программировать, но и мыслить.
В этом плане SmallTalk, Pascal, Algol68 - больше служили источником вдохновения, как например сейчас Haskel
И если появляются новые хорошие инстркменты, то я только приветствую этот процесс.
Благодаря Haskel мне удалось обогатить свой арсенал и манеру мышления функциональным программированием, а Dart помог освоить декларативное.
Благодаря питону удается быстро разгребать рутину и создавать инструменты тестирования более сложных приложений, написанных на плюсах.

Дома и новых инструментов появился трехмерный принтер, воздушная и нифракрасная паяльные станции - это тоже новые инструменты для хобби.
Скоро появится станок для автоматического сверления и выделки плат, а в рабочих планах освоить Rust
Andrey Strelnikov
Уже с Приветом
Posts: 608
Joined: 17 Dec 2009 11:27

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by Andrey Strelnikov »

Мальчик-Одуванчик wrote: 28 Sep 2021 03:33 Языки - те же самые инструменты, которые помогают не только программировать, но и мыслить.
В этом плане SmallTalk, Pascal, Algol68 - больше служили источником вдохновения, как например сейчас Haskel
И если появляются новые хорошие инстркменты, то я только приветствую этот процесс.
Благодаря Haskel мне удалось обогатить свой арсенал и манеру мышления функциональным программированием ...
Ну что такого положительного может дать хаскель ?
Если какой-то кадр, накурившись этого замечетельного языка, будет целый день запихивать функцию в одну строку - то его надо бить тапком. Потому что если не углядите, то потом прийдется вам неделю курить эту строку.

Когда в js дали arrow-функции, то один вчерашний студень устроил хоровод функций в коде. Со стороны читать и править было вообще гемморно. Даже не жалко было когда он ушел.

Я как-то раз прошел курс по Хаскелю до монад. И точно знаю что ФП зло в сколь-нибудь видимых количествах.
User avatar
Мальчик-Одуванчик
Уже с Приветом
Posts: 15526
Joined: 27 Sep 2007 22:53

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by Мальчик-Одуванчик »

Andrey Strelnikov wrote: 29 Sep 2021 13:49
Мальчик-Одуванчик wrote: 28 Sep 2021 03:33 Языки - те же самые инструменты, которые помогают не только программировать, но и мыслить.
В этом плане SmallTalk, Pascal, Algol68 - больше служили источником вдохновения, как например сейчас Haskel
И если появляются новые хорошие инстркменты, то я только приветствую этот процесс.
Благодаря Haskel мне удалось обогатить свой арсенал и манеру мышления функциональным программированием ...
Ну что такого положительного может дать хаскель ?
Хаскель мне в плюсах помогает писать код, который легче распараллеливать.
deev_a_v
Уже с Приветом
Posts: 4667
Joined: 07 Apr 2018 15:16

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by deev_a_v »

Раз уж разговор зашел о Смoлтоке просто хочу напомнить, что язык был разработан в известной лаборатории PARC, той самой, откуда в мир вышли мышь, графические дисплеи и принципы современного GUI. То есть все то, что в IBM традиционно презирали и презирают.
В 90-х они попытались влезть в эту область IT со своими VisualAge продуктами, но в итоге все просрали.

Теперь про сам Смолток. Как я уже написал, язык родился в рамках разработки новых принципов взаимодействия человек-машина. Графические обьекты на экране естественным образом отображались на программные обьекты и классы обьектов, а щелчки мыши - на сообщения, посылаемые этим обьектам.
Так родился Смолток, где все, подчеркиваю все, является обьектом, который реагирует на сообщения. В языке нет даже традиционных операторов if, for и пр. Вместо их представлены специальны встроенные обьекты, которые принимают сообщения. Синтаксис языка выглядит как то так

Code: Select all

push: item
      | save |
   top := top+1.
   top > anArray size ifTrue: 
      "anArray is about to overflow.  make a new array twice as big, and
       copy the old values into it"
      [save := anArray.
       anArray := Array new: 2*save size.
       1 to: save size do:
          [:k | anArray at: k put: (save at: k)]].
   anArray at: top put: item
Удачи в изучении! :D

Смолток по сути родился как упражнение изошренного ума разработчиков по доведению концепций ООП до абурда абсолюта. И надо сказать, это им удалось. Многие концепции, заложенные в язык потом копировались другими, более традиционными языками.
Но в практическом плане язык после появления Java шансов на успех не имел.
zVlad
Уже с Приветом
Posts: 15420
Joined: 30 Apr 2003 16:43
Has thanked: 1 time

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by zVlad »

deev_a_v wrote: 30 Sep 2021 12:20 Раз уж разговор зашел о Смoлтоке просто хочу напомнить, что язык был разработан в известной лаборатории PARC, той самой, откуда в мир вышли мышь, графические дисплеи и принципы современного GUI. То есть все то, что в IBM традиционно презирали и презирают.
......
1964: https://en.m.wikipedia.org/wiki/IBM_2250

1969: https://en.m.wikipedia.org/wiki/PARC_(company)

А вот я действительно презираю метод разработки чего-либо исключительно через/с GUI.
Есть много задач решение которых через GUI дает очень плохой результат.
Несоразмерное, необоснованное использование GUI, наблюдаемое повсеместно а ИТ, дает огромный негативный эффект еа пользователей. Сюда также следует добавить зуд постоянного изменения интерфэйсов, их переписывание снова и снова.
Но современные программисты научены писать только программы с GUI. Им даже в голову не приходит иное.
Тем не менее, ид своего оаыта, я хотел бы отметить продукт IBM IDR, как пример оптимального сочетания GUI и другого подхолы.
А с другой стороны, опять же из своего опыта, я бы указал на Oracle Golden Gate, как пример командной строки (тоже не пакетный режим) но написанный так же как пишут современные GUI программисты.
Поясню, для ясности, GUI ориентированное программирование это когда пользователю предоставляется как бы максимальная гибкость, но пользователь не в состоянии ей воспользоваться потому что он не знает что надо правильно плдбирать. Иначе говлря это когда пользователю дается ящик с Лего, элементы из которого пользователь далеко не все знает или мог бы знать.
С GG у нас даже опытный профессинал без помощи поддержки Оракл разобраться не может. Да, в конце концов правильное решение находится, но..

Так что дело не в GUI-ях. И не в ИБМ. Хотя именно политика ИБМ привела к печальному состоянию Смолтолк. А VisualAge это здорово было, раньше других.
deev_a_v
Уже с Приветом
Posts: 4667
Joined: 07 Apr 2018 15:16

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by deev_a_v »

zVlad wrote: 30 Sep 2021 19:37
deev_a_v wrote: 30 Sep 2021 12:20 Раз уж разговор зашел о Смoлтоке просто хочу напомнить, что язык был разработан в известной лаборатории PARC, той самой, откуда в мир вышли мышь, графические дисплеи и принципы современного GUI. То есть все то, что в IBM традиционно презирали и презирают.
......
1964: https://en.m.wikipedia.org/wiki/IBM_2250
Это не растровый(пиксельный) дисплей.
deev_a_v
Уже с Приветом
Posts: 4667
Joined: 07 Apr 2018 15:16

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by deev_a_v »

zVlad wrote: 30 Sep 2021 19:37
Несоразмерное, необоснованное использование GUI, наблюдаемое повсеместно а ИТ, дает огромный негативный эффект еа пользователей.
Надеюсь вы не lynx используете, чтобы форум читать? 8)
iDesperado
Уже с Приветом
Posts: 1349
Joined: 28 Nov 2008 17:50

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by iDesperado »

zVlad wrote: 30 Sep 2021 19:37 С GG у нас даже опытный профессинал без помощи поддержки Оракл разобраться не может.
ваши "профессионалы" репликацию в оракле настроить не могут, рассказывают что инсталяция оракла в облаке месяца занимает. мы уже осмеивали и лично ваш профессионализм и вашей канторы инвалидов в целом. кстати об инвалидах, как там та табличка, докопировалась в облако ? год прошел, инвалиды справились с этим титаническим трудом ?
User avatar
apex
Уже с Приветом
Posts: 2240
Joined: 24 May 2008 13:28
Location: Chicago

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by apex »

Помню рассказ был, как больного человека замораживают, чтобы разморозить когда научатся лечить его болезнь.
А результате размораживают его через 8 тысяч лет и говорят что лечить вашу болезнь мы не научились, но у вас в деле написано, что вы на коболе программировать умеете, а у нас Y10K надвигается.
anekdot.ru
User avatar
M. Ridcully
Уже с Приветом
Posts: 12017
Joined: 08 Sep 2006 20:07
Location: Силиконка

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by M. Ridcully »

Мальчик-Одуванчик wrote: 29 Sep 2021 21:58
Andrey Strelnikov wrote: 29 Sep 2021 13:49 Ну что такого положительного может дать хаскель ?
Хаскель мне в плюсах помогает писать код, который легче распараллеливать.
+много
И - в моем случае - дело даже не в распараллеливании. Скорее - опыты с Хаскелем делают мой код на С++ лучше.
Более конкретно - в меру сил стараюсь искоренять implicit state. Если нужен state - сделай это явно, твою мать! К сожалению, в индустрии очень много травмированных ООП, а это стиль способствует бурному росту этого сорняка (я про state).
Мир Украине. Свободу России.
User avatar
adb
Уже с Приветом
Posts: 9275
Joined: 14 Dec 2001 10:01
Location: Российская Федерация

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by adb »

zVlad wrote: 30 Sep 2021 19:37 Несоразмерное, необоснованное использование GUI, наблюдаемое повсеместно а ИТ, дает огромный негативный эффект еа пользователей. Сюда также следует добавить зуд постоянного изменения интерфэйсов, их переписывание снова и снова.
Так и есть. На том же IPhone, планшете гораздо проще и понятнее через консоль все делать (iphone | igrep "zVlad" | icontacts --all). Жаль там гуй нельзя деинсталлировать.
Миру мир
Andrey Strelnikov
Уже с Приветом
Posts: 608
Joined: 17 Dec 2009 11:27

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by Andrey Strelnikov »

apex wrote: 11 Oct 2021 02:48 Помню рассказ был, как больного человека замораживают, чтобы разморозить когда научатся лечить его болезнь.
А результате размораживают его через 8 тысяч лет и говорят что лечить вашу болезнь мы не научились, но у вас в деле написано, что вы на коболе программировать умеете, а у нас Y10K надвигается.
anekdot.ru
Еще - Деннис Тейлор. Вселенная Боба. Консерваторы в Америке побеждают. В итоге доходят до религиозной диктатуры. Никого не размораживают, а сканируют личность и суют в центры управления кораблями в лучшем случае. Кого-то в экскаваторы.
Andrey Strelnikov
Уже с Приветом
Posts: 608
Joined: 17 Dec 2009 11:27

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by Andrey Strelnikov »

M. Ridcully wrote: 11 Oct 2021 05:30
Мальчик-Одуванчик wrote: 29 Sep 2021 21:58
Andrey Strelnikov wrote: 29 Sep 2021 13:49 Ну что такого положительного может дать хаскель ?
Хаскель мне в плюсах помогает писать код, который легче распараллеливать.
+много
И - в моем случае - дело даже не в распараллеливании. Скорее - опыты с Хаскелем делают мой код на С++ лучше.
Более конкретно - в меру сил стараюсь искоренять implicit state. Если нужен state - сделай это явно, твою мать! К сожалению, в индустрии очень много травмированных ООП, а это стиль способствует бурному росту этого сорняка (я про state).
Ну тогда пишите часть кода на хаскеле. Он транслируется в С--.
zVlad
Уже с Приветом
Posts: 15420
Joined: 30 Apr 2003 16:43
Has thanked: 1 time

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by zVlad »

adb wrote: 11 Oct 2021 08:59
zVlad wrote: 30 Sep 2021 19:37 Несоразмерное, необоснованное использование GUI, наблюдаемое повсеместно а ИТ, дает огромный негативный эффект еа пользователей. Сюда также следует добавить зуд постоянного изменения интерфэйсов, их переписывание снова и снова.
Так и есть. На том же IPhone, планшете гораздо проще и понятнее через консоль все делать (iphone | igrep "zVlad" | icontacts --all). Жаль там гуй нельзя деинсталлировать.
Сколькo раз касался вопрос GUI vs. command line всякий раз, если приводился пример при этом, то это был grep.
Вообще то я не про command line говорю, а про то что многие программы написанные для пользователей, которые иначе чем кликать и тайпать больше ничего делать не могут и не умеют, решение по очень многим вещам выносят на пользователя, предоставляы им, через GUI, решать так или иначе. Не всегда до этого легко докапаться в дебрях GUI-ев. Поэтому горячие линии, консультанты.
Да что там конечные пользователи. Тот же Windows со своим GUI управлением ставит в тупик IT-шников по образованию. Сколько в интернете статей с разяснениями заморочек настройки и управления Windows.
Но есть примеры и обратных проблем. Я писал выше про Oracle GoldenGate. Это командная строка и параметры в файлах. Но их столько и они так замысловато запрограммированны что без постоянных консультаций с Oracle трудно двигаться вперед.
Тем не менее идеалом GUI для меня на данный момент является IBM IhfoSphere Data Replication. Идеалом потому что в GUI IDR выведено только самое действительно необходимое и понятное пользователю - администратору в данном случае. Много вещей, которые в GoldenGate закопаны в параметрах и особенностях их использования, в IDR делаются по умолчанию и так как надо.
voyager3
Уже с Приветом
Posts: 1964
Joined: 11 Mar 2015 01:12

Re: Зачем появляются новые языки программирования? Сколько их и каких на самом деле нужно?

Post by voyager3 »

Andrey Strelnikov wrote: 29 Sep 2021 13:49 Ели какой-то кадр, накурившись этого замечетельного языка, будет целый день запихивать функцию в одну строку - то его надо бить тапком.
Это он мало выкурил. Настоящий хаскелист перепишет программу на плюсах таким образом, чтобы сначала компилировалась программа на плюсовых шаблонах, выходом которой будет код, реализующий 80% функциональности исполняемого кода.

Return to “Вопросы и новости IT”