отсутствие перегрузки операторов не даёт делать на яваскрипте нормальные дсл-и и вводить дополнительные типы
|
Цитата:
|
А вы уверены, что это правильный вопрос? Обойтись можно без многого, особенно без Javascript. Вопрос ведь в удобстве...
|
Цитата:
и не стали кучей абсолютно идентичных языков? а потому что удобство определяется конкретной областью применения, идеологией языка, и еще многими факторами, и не явялется константой. Вот примеры: - множественное наследование, или отсутствие его? - прототипное ООП, или же классовое. или вообще процедурное? а может функциональное?) - возможность писать быстро выполняемый код(ASM), или же удобная абстракция, позволяющая быстро писать код - и еще куча Все эти вопросы являются темой для отдельного холивара, и в каждом случае нету правильного ответа. Вы придумываете что "будет удобней" для JS, исходя из опыта изучения всего лишь одного языка. я практически уверен, что для вас составить Тьюирингову машину, или написать ASM_код нереально. или понять идеологию функциональных языков(я сам ее недостаточно понимаю, но просто не было практической необходимости) |
Цитата:
И мне всё-таки интересно, почему перегрузка операторов и пользовательские типы не кошерны в JS. |
например, хотим мы реализовать комплексные числа или вектора с матрицами..
без перегрузки операторов: val1= val1.add( val2 ).sub( val3.mult( val4 ) ) if( val1.eq( val2 ) ).. с перегрузкой: val1+= val2 - val3 * val4 if( val1 == val2 ).. |
Часовой пояс GMT +3, время: 20:09. |