Показать сообщение отдельно
  #32 (permalink)  
Старый 15.12.2012, 23:43
Профессор
Отправить личное сообщение для tenshi Посмотреть профиль Найти все сообщения от tenshi
 
Регистрация: 20.03.2008
Сообщений: 1,183

> выражения, что там, что там. какая разница?

разница, как я уже сказал, в том, что создавая функцию в js мы фактически создаём объект со всеми присущими объекту свойствами в том числе и наследованием свойств от прототипа. мы не можем создать просто функцию как в том же хаскеле. мы всегда оперируем объектами. так что js от пяток до макушки - ООП.

> в хаскеле так и останется 2+2
да ладно?

> то, что в функциях JS есть побочные эффекты, это не значит, что можно писать без них (просто не трогать ничего, кроме локальных аргументов, например)

нельзя? в том то и дело, что нельзя. я не могу гарантировать что функция function(){ return 'Array:' + [] } всегда возвращает один и тот же результат. и компилятор не может. это уже не функция в терминах ФП, так как значение зависит не только от аргументов.

> это да. но посмотрим, может в будущем что-нибудь изменится

разве что введут ключевое слово pure, но это врятли, так как вместо этого изобретают всяких "воркеров".
__________________
.ня
Ответить с цитированием