Нетипизированные языки
От: ora Россия  
Дата: 05.02.10 07:40
Оценка:
Возникла необходимость поизучать JavaScript, ранее сталкивался с другими динамическими языкам, вот что меня просто бесит:

function myFunc()
{ a = 2;
alert('Result='+a+a);
alert('Result='+(a+a));
}

Что мешает разработчикам добавить типизацию, сохранив для совместимости старый стиль? Это ведь позволит увеличить скорость, избежать многих багов. Что они уперлись, постоянно что-то добавляют, а типизацию ни-ни, странно как то...
Re: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 09:13
Оценка: 3 (3) +4
Здравствуйте, ora, Вы писали:

ora>function myFunc()

ora> { a = 2;
ora> alert('Result='+a+a);
ora> alert('Result='+(a+a));
ora> }

Ты не поверишь, во вполне типизированном C#-е результат будет ровно таким же.
Re[2]: Нетипизированные языки
От: Roman Odaisky Украина  
Дата: 05.02.10 12:52
Оценка:
Здравствуйте, Lloyd, Вы писали:

ora>>function myFunc()

ora>> { a = 2;
ora>> alert('Result='+a+a);
ora>> alert('Result='+(a+a));
ora>> }

L>Ты не поверишь, во вполне типизированном C#-е результат будет ровно таким же. ;)


А разве там можно писать "Result = " + 2? Или "2" + "2" там равняется "4"?
До последнего не верил в пирамиду Лебедева.
Re[3]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 12:58
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

L>>Ты не поверишь, во вполне типизированном C#-е результат будет ровно таким же.


RO>А разве там можно писать "Result = " + 2?


Можно.

RO>Или "2" + "2" там равняется "4"?


Я не виже такого кода в первом примере.
Re: Нетипизированные языки
От: Панда Россия  
Дата: 05.02.10 13:58
Оценка: +2 -1
Зло не в типизации, а в том, что конкатенация строк обозначена тем же символом, что и сложение. Непонятно, чем думали разработчики языка, это совершенно бредовая идея. Не бывает на практике ситуаций, когда мы пишем "x+y", при этом для числовых типов должна получиться сумма, для строк — конкатенация, причем заранее мы не знаем, что из двух должно получиться. Такой полиморфизм нафиг не нужен.
Re[2]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 14:01
Оценка:
Здравствуйте, Панда, Вы писали:

П>Зло не в типизации, а в том, что конкатенация строк обозначена тем же символом, что и сложение. Непонятно, чем думали разработчики языка, это совершенно бредовая идея. Не бывает на практике ситуаций, когда мы пишем "x+y", при этом для числовых типов должна получиться сумма, для строк — конкатенация, причем заранее мы не знаем, что из двух должно получиться. Такой полиморфизм нафиг не нужен.


Почему?

P.S. Я правильно вас понял, что для double-ов вы тоже предпочли бы ввести отдельный оператор, так же как и для float-ов, decimal-ов, long-ов, TimeSpan-ов и т.д.?
Re[3]: Нетипизированные языки
От: Панда Россия  
Дата: 05.02.10 14:12
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>P.S. Я правильно вас понял, что для double-ов вы тоже предпочли бы ввести отдельный оператор, так же как и для float-ов, decimal-ов, long-ов, TimeSpan-ов и т.д.?


Нет, неправильно.
Re[4]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 14:13
Оценка:
Здравствуйте, Панда, Вы писали:

L>>P.S. Я правильно вас понял, что для double-ов вы тоже предпочли бы ввести отдельный оператор, так же как и для float-ов, decimal-ов, long-ов, TimeSpan-ов и т.д.?


П>Нет, неправильно.


В чем принципиальное отличие?
Re[5]: Нетипизированные языки
От: anonymous Россия http://denis.ibaev.name/
Дата: 05.02.10 14:55
Оценка: 1 (1) +2 :)
Здравствуйте, Lloyd, Вы писали:

L>>>P.S. Я правильно вас понял, что для double-ов вы тоже предпочли бы ввести отдельный оператор, так же как и для float-ов, decimal-ов, long-ов, TimeSpan-ов и т.д.?

П>>Нет, неправильно.
L>В чем принципиальное отличие?

Вероятно, в коммутативности.
Re: Нетипизированные языки
От: anonymous Россия http://denis.ibaev.name/
Дата: 05.02.10 15:01
Оценка: +1
Здравствуйте, ora, Вы писали:

ora>Возникла необходимость поизучать JavaScript

ora>Что мешает разработчикам добавить типизацию

JavaScript — типизированный язык.
Re[6]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 15:05
Оценка:
Здравствуйте, anonymous, Вы писали:

A>Вероятно, в коммутативности.


Ну так ошибка состоит в приписывании коммутативности операции сложения строк, а не в том, что используется "+".
Re[2]: Нетипизированные языки
От: Vamp Россия  
Дата: 05.02.10 19:46
Оценка:
L>Ты не поверишь, во вполне типизированном C#-е результат будет ровно таким же.
А разве это хорошо?
Да здравствует мыло душистое и веревка пушистая.
Re[7]: Нетипизированные языки
От: Vamp Россия  
Дата: 05.02.10 19:47
Оценка:
L>Ну так ошибка состоит в приписывании коммутативности операции сложения строк, а не в том, что используется "+".
Ну вот и получается, что у тебя коммутативность + зависит от контекста.
Да здравствует мыло душистое и веревка пушистая.
Re[3]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 20:42
Оценка:
Здравствуйте, Vamp, Вы писали:

L>>Ты не поверишь, во вполне типизированном C#-е результат будет ровно таким же.

V>А разве это хорошо?

Я не знаю, что такое хорошо, зато знаю, что такое удобно.
Re[8]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 20:42
Оценка:
Здравствуйте, Vamp, Вы писали:

L>>Ну так ошибка состоит в приписывании коммутативности операции сложения строк, а не в том, что используется "+".

V>Ну вот и получается, что у тебя коммутативность + зависит от контекста.

Не, я не ассоциирую с "+" никакую коммутативность. Зачем она?
Re[9]: Нетипизированные языки
От: Vamp Россия  
Дата: 05.02.10 20:45
Оценка:
L>Не, я не ассоциирую с "+" никакую коммутативность. Зачем она?
Ну не знаю. Я вот привык, что + и * коммутативны, а "-" — операция, обратная сложению.
Да здравствует мыло душистое и веревка пушистая.
Re[4]: Нетипизированные языки
От: Vamp Россия  
Дата: 05.02.10 20:45
Оценка:
L>Я не знаю, что такое хорошо, зато знаю, что такое удобно.
Удобно — хорошо. Мне бы это было неудобно.
Да здравствует мыло душистое и веревка пушистая.
Re[5]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 20:55
Оценка:
Здравствуйте, Vamp, Вы писали:

L>>Я не знаю, что такое хорошо, зато знаю, что такое удобно.

V>Удобно — хорошо. Мне бы это было неудобно.
Ты ошибаешься. Тебе бы это было тоже удобно.
Re[6]: Нетипизированные языки
От: Vamp Россия  
Дата: 05.02.10 20:56
Оценка:
L>Ты ошибаешься. Тебе бы это было тоже удобно.
Спасибо, но я знаю, что мне удобно, а что мне неудобно. Еще раз спасибо.
Да здравствует мыло душистое и веревка пушистая.
Re[10]: Нетипизированные языки
От: Lloyd Россия  
Дата: 05.02.10 20:56
Оценка:
Здравствуйте, Vamp, Вы писали:

L>>Не, я не ассоциирую с "+" никакую коммутативность. Зачем она?

V>Ну не знаю. Я вот привык, что + и * коммутативны,

Тебе дествительно когда-либо мешала не-коммутаивность строк на практике, или ты споришь чисто из иделогогических соображение?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.