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

Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

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

Post by Palych »

OtherSide wrote: 15 Sep 2021 07:02
Flash-04 wrote: 14 Sep 2021 14:41 Тот же JavaScript - не имеет строгой типизации, однако сейчас очень популярен.
JS один из самый помоечных языков, когда либо созданных. "популярен" он по причине того, что он уже встроен в браузеры.
То что язык полное говно подтверждает то, что там так и не устроялись технологии и фреймворки плюс куча надстроек в виде TypeScript, альтернатив вроде WebAssembly и т.д.
А почему "популярен" в кавычках?
Популярный не значит лучший, или даже хороший.
Проблема JS что он стал использоваться не так как был задуман. Это неплохой язык для скриптования простых действий в ограниченном контексте.
Кстати, я думаю например PHP гораздо хуже чем JS...
OtherSide
Уже с Приветом
Posts: 15812
Joined: 01 Mar 2008 15:14
Been thanked: 1 time

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

Post by OtherSide »

Palych wrote: 15 Sep 2021 16:34
OtherSide wrote: 15 Sep 2021 07:02
Flash-04 wrote: 14 Sep 2021 14:41 Тот же JavaScript - не имеет строгой типизации, однако сейчас очень популярен.
JS один из самый помоечных языков, когда либо созданных. "популярен" он по причине того, что он уже встроен в браузеры.
То что язык полное говно подтверждает то, что там так и не устроялись технологии и фреймворки плюс куча надстроек в виде TypeScript, альтернатив вроде WebAssembly и т.д.
А почему "популярен" в кавычках?
Популярный не значит лучший, или даже хороший.
Проблема JS что он стал использоваться не так как был задуман. Это неплохой язык для скриптования простых действий в ограниченном контексте.
Кстати, я думаю например PHP гораздо хуже чем JS...

Популярен это по своей воле, а JS скорее вынуждены использовать. Ну типа как в армии популярна перловая каша
sp123
Уже с Приветом
Posts: 1962
Joined: 24 Feb 2001 10:01
Location: Челябинск -> Everett, WA

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

Post by sp123 »

Строгая типизация в Java?

double data = 11111111111.00;
int value = (int)data;
System.out.println(value);

Результат: 2147483647

Вот спасибо. Вместо того, чтобы выдать ошибку, эта сволочь тихо генерирует случайное число. И это не считается багом. Типа, читайте документацию. Сам я не джавист ни разу, но подобные приколы иной раз косвенно задевают. Года три назад половину отпуска в Мексике сидел как идиот и переливал огромную hive таблицу из-за того, что в поле bigint кто-то несколько месяцев вставлял данные, которые в исходной базе были double, и всё работало чудесно без ошибок. Пока бизнес не удивился странным результатам. Хадуп-то весь на жабе написан. Повбывав бы.


Sent from my iPhone using Tapatalk Pro
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

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

Post by Flash-04 »

OtherSide wrote: 15 Sep 2021 16:59 Популярен это по своей воле, а JS скорее вынуждены использовать. Ну типа как в армии популярна перловая каша
в браузерах было:
- JS
- Java
- SilverLight
- Adobe Flash

Остался JS. Остальное вымерло само как мамонты. Значит JS таки удобнее
Not everyone believes what I believe but my beliefs do not require them to.
Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

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

Post by Palych »

OtherSide wrote: 15 Sep 2021 16:59
Palych wrote: 15 Sep 2021 16:34
OtherSide wrote: 15 Sep 2021 07:02
Flash-04 wrote: 14 Sep 2021 14:41 Тот же JavaScript - не имеет строгой типизации, однако сейчас очень популярен.
JS один из самый помоечных языков, когда либо созданных. "популярен" он по причине того, что он уже встроен в браузеры.
То что язык полное говно подтверждает то, что там так и не устроялись технологии и фреймворки плюс куча надстроек в виде TypeScript, альтернатив вроде WebAssembly и т.д.
А почему "популярен" в кавычках?
Популярный не значит лучший, или даже хороший.
Проблема JS что он стал использоваться не так как был задуман. Это неплохой язык для скриптования простых действий в ограниченном контексте.
Кстати, я думаю например PHP гораздо хуже чем JS...

Популярен это по своей воле, а JS скорее вынуждены использовать. Ну типа как в армии популярна перловая каша
В своё время можно было использовать java applets, silver light, flesh... Но JS оказался более популярным.
Вы правы, сейчас он "популярен" как система команд x86/amd64...
Но тот факт что фреймворки не устоялись говорит что на сегодняшний момент платформа весьма гибкая и удобная: сменить фреймворк гораздо проще чем переписать что-нибудь с Кобола на джаву.
Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

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

Post by Palych »

sp123 wrote: 15 Sep 2021 17:45 Строгая типизация в Java?

double data = 11111111111.00;
int value = (int)data;
System.out.println(value);

Результат: 2147483647

Вот спасибо. Вместо того, чтобы выдать ошибку, эта сволочь тихо генерирует случайное число. И это не считается багом. Типа, читайте документацию. Сам я не джавист ни разу, но подобные приколы иной раз косвенно задевают. Года три назад половину отпуска в Мексике сидел как идиот и переливал огромную hive таблицу из-за того, что в поле bigint кто-то несколько месяцев вставлял данные, которые в исходной базе были double, и всё работало чудесно без ошибок. Пока бизнес не удивился странным результатам. Хадуп-то весь на жабе написан. Повбывав бы.


Sent from my iPhone using Tapatalk Pro
У нас в приложении на плюсах при переходе с linux 2.4 на 2.6 изменялся порядок вызова деструкторов. Причём только на многопроцессорных серверах и только под нагрузкой (иными словами - в продакшн в час пик).
И это тоже не было багом формально, поскольку две переменные оборачивающие указатели были объявлены в неправильном порядке. Но на одном процессоре это долгое время работало.
После этого случая мы начали всё переписывать на Java.
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

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

Post by Komissar »

sp123 wrote: 15 Sep 2021 17:45 Строгая типизация в Java?

double data = 11111111111.00;
int value = (int)data;
System.out.println(value);

Результат: 2147483647

Вот спасибо. Вместо того, чтобы выдать ошибку, эта сволочь тихо генерирует случайное число. И это не считается багом. Типа, читайте документацию. Сам я не джавист ни разу, но подобные приколы иной раз косвенно задевают. Года три назад половину отпуска в Мексике сидел как идиот и переливал огромную hive таблицу из-за того, что в поле bigint кто-то несколько месяцев вставлял данные, которые в исходной базе были double, и всё работало чудесно без ошибок. Пока бизнес не удивился странным результатам. Хадуп-то весь на жабе написан. Повбывав бы.


Sent from my iPhone using Tapatalk Pro
в вашем коде ошибка, надо использовать не int, а long. int не работает с величинами больше 32768. Это известно и документировано.
User avatar
SVK
Уже с Приветом
Posts: 8255
Joined: 23 Jul 2003 03:53
Location: SPb - KW - NY - CT - MD

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

Post by SVK »

Komissar wrote: 15 Sep 2021 19:49 в вашем коде ошибка, надо использовать не int, а long. int не работает с величинами больше 32768. Это известно и документировано.
Много чего есть задокументированного. Только это не мешает приумножению количества ошибок во вновь создаваемом коде, с наиновейшими технологиями. В геометрической прогрессии примерно. :pain1:
А еще больше есть - незадокументированного... :umnik1:
LG - Life's good.
But good life is much better.
OtherSide
Уже с Приветом
Posts: 15812
Joined: 01 Mar 2008 15:14
Been thanked: 1 time

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

Post by OtherSide »

Flash-04 wrote: 15 Sep 2021 19:07
OtherSide wrote: 15 Sep 2021 16:59 Популярен это по своей воле, а JS скорее вынуждены использовать. Ну типа как в армии популярна перловая каша
в браузерах было:
- JS
- Java
- SilverLight
- Adobe Flash

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

Такой возможности как вставлять скрипты на любых других языках кроме как JS никогда не было

Щаз вроде появился еще WebAssembly кооторый по идее может подвинуть JS так что посмотрим
sp123
Уже с Приветом
Posts: 1962
Joined: 24 Feb 2001 10:01
Location: Челябинск -> Everett, WA

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

Post by sp123 »

Komissar wrote: в вашем коде ошибка, надо использовать не int, а long. int не работает с величинами больше 32768. Это известно и документировано.
Именно. Ошибка в коде или ошибка в данных. Мало ли, вначале циферки приходили маленькие, потом увеличились через десять лет, а девелопер уволился пять лет назад. Попытка впихнуть невпихуемое в любой базе данных выбросит ошибку. А тут просто курочит данные. Тому, кто такое придумал, надо в голову гвоздь забить. Добрый я сегодня что-то Image


Sent from my iPhone using Tapatalk Pro
KinDzaDza
Уже с Приветом
Posts: 2273
Joined: 29 Jul 2005 17:39
Location: Калифорнийский Мухосранск

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

Post by KinDzaDza »

sp123 wrote: 15 Sep 2021 17:45 Строгая типизация в Java?

double data = 11111111111.00;
int value = (int)data;
System.out.println(value);

Результат: 2147483647

Вот спасибо. Вместо того, чтобы выдать ошибку, эта сволочь тихо генерирует случайное число. И это не считается багом. Типа, читайте документацию. Сам я не джавист ни разу, но подобные приколы иной раз косвенно задевают. Года три назад половину отпуска в Мексике сидел как идиот и переливал огромную hive таблицу из-за того, что в поле bigint кто-то несколько месяцев вставлял данные, которые в исходной базе были double, и всё работало чудесно без ошибок. Пока бизнес не удивился странным результатам. Хадуп-то весь на жабе написан. Повбывав бы.


Sent from my iPhone using Tapatalk Pro
Я конечно же понимаю и разделяю Ваше негодование, но в приведённом коде программист сам себе злобный Буратино.
Там же явное приведение типов double к int. То, что программист не в курсе, что в Java тип int занимает 32 бита один из которых знаковый - это скорее проблемы погромиста. Там в Вашем примере на выходе не случайное число а 2^31, это максимум что может вместить int в Java. Там целая процедура конвертации примитивных типов написана и в документации описано что и почему там получается. В С/С++ все точно также бы переполнилось при явном приведении типов без метания всяких исключений.
Не зря же компилятор настойчиво предупреждает о возможном переполнении если присваивать без явного приведения типов. Ну а если погромист настаивает, то кто ж ему перечить-то станет?
sp123
Уже с Приветом
Posts: 1962
Joined: 24 Feb 2001 10:01
Location: Челябинск -> Everett, WA

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

Post by sp123 »

Хе хе. На самом деле там был insert into table … select …, который и ломал дату. То есть неприятные буратины - это те ребята, что написали утилиту hive на жабе. А страдают наивные датабазники, которые привыкли к хорошему. Тут я готов согласится, сама по себе жаба ни при чём.


Sent from my iPhone using Tapatalk Pro
User avatar
Uzito
Уже с Приветом
Posts: 8239
Joined: 06 Feb 2002 10:01
Location: NJ, USA

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

Post by Uzito »

sp123 wrote: 15 Sep 2021 17:45 double data = 11111111111.00;
int value = (int)data;
System.out.println(value);
Результат: 2147483647
Вот спасибо. Вместо того, чтобы выдать ошибку, эта сволочь тихо генерирует случайное число. И это не считается багом.
Позор на программистские седины. Во-первых не случайное число, а максимальное значение для 32-bit signed integer. Во-вторых, в этот signed integer пытаешься засунуть число в пять раз большее, ну вот и получаешь что влезло.
Komissar wrote: 15 Sep 2021 19:49 в вашем коде ошибка, надо использовать не int, а long. int не работает с величинами больше 32768. Это известно и документировано.
Тоже позор на седую голову.
User avatar
Komissar
Уже с Приветом
Posts: 64875
Joined: 12 Jul 2002 16:38
Location: г.Москва, ул. Б. Лубянка, д.2

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

Post by Komissar »

Uzito wrote: 16 Sep 2021 03:45
Komissar wrote: 15 Sep 2021 19:49 в вашем коде ошибка, надо использовать не int, а long. int не работает с величинами больше 32768. Это известно и документировано.
Тоже позор на седую голову.
Когда я изучал джаву, в периодической системе было всего 4 элемента!
Palych
Уже с Приветом
Posts: 13723
Joined: 16 Jan 2001 10:01

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

Post by Palych »

OtherSide wrote: 15 Sep 2021 20:21 Не потому что удобнее, а потому что это внешний относительно браузера плагины да плюс к тому еще и проприетарные, которые невозможно контролировать сообществом.

Такой возможности как вставлять скрипты на любых других языках кроме как JS никогда не было

Щаз вроде появился еще WebAssembly кооторый по идее может подвинуть JS так что посмотрим
Кстати, WebAssembly видит DOM?

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