M>>Доказательства должны быть сначала с твоей стороны. Например, что JS — «дальше твое описание странного средства»
П>Это нужно доказывать? Странно, я полагал, что это изначально следует из постановки вопроса — "почему программисты не хотят мириться с необычностью джавоскрипта".
Определение необычности в студию
M>>Опять это слово привычность, агага. Я привык к Erlang'у. Давай все языки превратим в Erlang?
П>Сильно не уверен, что это возможно — Эрланг это ну о-о-очень специфическая штучка.
А мне пофиг. Я хочу, чтобы все языки были такие же, как Erlang
П>>>Проблема в том, что эти альтернативы сделали как раз те люди, которым не нравился оригинальный javascript. M>>Где тут проблема?
П>Изначально ты возмущался тому, что люди хотят (цитирую) "использовать унифицированный подход к классовому ООП" вместо православного программирования на прототипах. Теперь сам же предлагаешь для этого костыли.
Цитату, где я говорю про правсолавность прототипного ООП в студию
YKU>>>Бида-бида... Сорву покровы: те, кто full-time(или что-то в этом роде) на этом яваскрипте пишут — те и не ноют. Но таких примерно столько-же, сколько твоих Хаскелистов. M>>Тогда в чем проблема?
YKU>Ты вообще читаешь, что тебе отвечают? На Хабре твоём, я
Читаю. Итак, дано: фуллтайм программисты на JS не ноют (или ноют совсем по другим причинам), так в чем проблема-то? В индусах?
M>>Почему ты считаешь, что надо в обязхательном порядке менять язык?
YKU>Почему в обязательном? Вариантов два: поменять язык или поменять программистов. Я понимаю, что это удивительно и даже пугающе необьяснимо, но программисты за первый вариант. Можешь удивляться сколько хочешь, считать всех "дурацкими паяцами", но такова обьективаня реальность, данная нам в чём-то там.
M>>Ты так и не ответил на этот вопрос.
YKU>В словаре посмотри. Что означает "словарь" обьяснять?
Повторю:
Почему-то, когда люди переходят на другой язык, от них ожидается, что они выучат какую-то новую для себя парадигму или другой способ работы — функциональные подходы, генераторы, метапрограммирвоание, паттерн матчинги, разные подходы к типам и типизации, разные подходы к наследованию и т.п. Это из первого, что взбрело в голову. Причем вне зависимости от языка — Питон, Руби, Скала, и даже «старички» типа Java (как!!!111 в Java нет множественного наследования? Что такое интерфейсы? )
M>И только с JS ситуация прямо противоположная. Почему-то не программист должен подстраиваться под язык (в частности, понять, что такое функциональное программирование и прототипное ООП), а JS должен подстраиваться под программиста.
Ты сможешь нятно и объективно ответить на эту цитату. Как только начнешь ныть про прототипное наследование, перечитываешь выделенное.
Ну, так с этим я и не спорю
S>Я уже рассказывал про аналогичную ошибку, которую мы сделали в Java. Но там мембер был руками помечен как static, т.е. шансы допустить такую ошибку — на пару десятичных порядков ниже, чем пропустить var. S>Поймать пропущенный var тестами — крайне сложно. S>При этом мотивация так делать мне совершенно непонятна. Неужели доступ к global scope нужен так часто, что его имеет смысл делать по дефолту? S>Выглядит как ошибка дизайна языка.
S>>Скажем, так: лично я не очень себе представляю, как бы мог выглядеть язык с не-прототипным ООП, бегающий внутри браузера. S>>Очень может быть, что это от убогости лично моей фантазии. S>>Так что не могли бы вы изобразить некоторый набросок того, как был бы устроен такой язык?
П>Что мешает существовать внутри браузера чему-нибудь типа питона, например?
Ничего. Был бы Питон, началось бы нытье, «ах, что за убогое ООП с этим вашим self'ом»
A>>Но ты тоже нас аргументами не балуешь, всё про машинки рассказываешь.
П>Аргументов в топике выше крыши, и далеко не только от меня. Имеющий глаза — да увидит.
Здравствуйте, Mamut, Вы писали:
M>Читаю. Итак, дано: фуллтайм программисты на JS не ноют (или ноют совсем по другим причинам), так в чем проблема-то? В индусах?
Таки не читаешь. Проблема в том, что 99% вылазят из уютненького мирка C#/java/чё-то еще в волшебній мир javascript чиста на 5 минут. Именно что-бы отвалидировать телефон. Ну или там в грид чё-то засунуть, но это в пиковом случае(именно тут и берутся over 90K программистов javascript и "самый популярный в мире"). И тут внезапно выясняется, что то, что обычно делается негляпяпроходязаднейпяткой надо делать через ж. Т.е. оно может и не совсем, если всё через неё делать — может оно ничего, некоторым даже нравится. Но привычно(то самое сложное слово, да) — через другое место и за две минуты.
M>>>Почему ты считаешь, что надо в обязхательном порядке менять язык?
YKU>>Почему в обязательном? Вариантов два: поменять язык или поменять программистов. Я понимаю, что это удивительно и даже пугающе необьяснимо, но программисты за первый вариант. Можешь удивляться сколько хочешь, считать всех "дурацкими паяцами", но такова обьективаня реальность, данная нам в чём-то там.
M>Повторю: M>Почему-то, когда люди переходят на другой язык, от них ожидается, что они выучат какую-то новую для себя парадигму или другой способ работы — функциональные подходы, генераторы, метапрограммирвоание, паттерн матчинги, разные подходы к типам и типизации, разные подходы к наследованию и т.п.
Повторю. Ничего от них не ожидается, это твои домыслы. А мои домыслы таковы: Почему-то, когда люди переходят на другой язык, ожидается, что на этом языке они будут делать то-же самое, но проще/быстрее/производительнее(только давай без гоняния к словарю, что означают эти слова, а?). Брейнфак тоже несёт в себе новый неповторимый вкус, но чё-то как-то оно не того. И масса академиков тоже. Но брейнфак — это лирика, а яваскрипт — ж0сткая практика. И тогда выясняется, что парадигма — это хорошо, но оно же чё-то нихрена не проще, а еще более через упомянутое место. И все начинают ныть — зачем всё это, верните деньги, сволочи!
Неужели я говорю что-то неочевидное?
А рассуждения энтузиастов про то, что в гамаке и на лыжах — это круто, главное не бояться трудностей и надо только выучить разные подходы только улыбают, уж извини.
Вроде достаточно внятно и даже без наследования... Ты вообще не с того конца идёшь. Так ты корову не продашь, это не позитивистский подход. Ну ок, прекрасный язык яваскрипт, завтра куплю книгу и постигну новые парадигмы. С тебя ответ: зачем? Как только начнешь ныть про "разные подходы к типам и типизации, разные подходы к наследованию", перечитываешь абзац выше.
Здравствуйте, Mamut, Вы писали:
M>Определение необычности в студию
Значительно отличающееся от привычного. Применительно к прототипному ООП, например — от ООП классического.
M>А мне пофиг. Я хочу, чтобы все языки были такие же, как Erlang
И много вас таких хотящих? Или ты реально не видишь разницу между "я привык" и "большинство привыкло"?
M>Цитату, где я говорю про правсолавность прототипного ООП в студию
Ты не привел ни одного объективного требования, по которому js должен быть именно прототипным. Методом исключения — остаются религиозные мотивы.
Здравствуйте, Mamut, Вы писали:
П>>Что мешает существовать внутри браузера чему-нибудь типа питона, например? M>Ничего. Был бы Питон, началось бы нытье, «ах, что за убогое ООП с этим вашим self'ом»
Да вот ведь — питон есть, а оно почему-то не начинается.
Здравствуйте, Mamut, Вы писали:
M>Есть в Питоне, Руби и C#, никто не жалуется
Размечтался. Жалуются и еще как. Ладно б на ФП, некоторые даже на скромный шарповский вывод типов бочку катят.
I>>пм и тд слишком сложно для общей массы
ПМ вовсе не сложная штука, там все тривиально и на 100% соответствует простейшим ожиданиям (от ПМ в SQL, к примеру, вроде пока никто не помер). Или ты про алгебраические типы ака discriminated unions?
Даже сложность монад сильно преувеличена — в грамотно причесанном виде у вменяемых разработчиков оно никаких проблем не вызывает, особенно если в математику не лезть.
Здравствуйте, Mamut, Вы писали:
M>И? Почему я не вижу стенаний «нам не нужен Linq
Выборочная слепота? Простейший поиск по форумам:
0K>Сума все с этим Linq посходили! Он вообще не особо то нужен, имхо.
...
ВВ> Синтаксис (linq, прим. мое) сам по себе — не нужен. Его полезность даже в C# — это большой вопрос. Я как-то создавал подобную тему и где-то половина отписавшихся высказывалась, что они синтаксисом не пользуются или просто не считают его особенно полезным.
...
0> По опыту своих бесед с программистами, не знакомыми с linq, я собрал ряд стереотипных заблуждений и проблем с пониманеим linq, которые у них встречаются. В целом среди них преобладает такое мнение "это убогий SQL в С#, зачем он нужен?".
...
M>Я в промышленном программировании уже 2 года как не появлялся, так что мои представления могут быть несколько устаревшими. Но если взять "типичный" проект с SQL БД, то действительно не очень понятно зачем мне ещё и LINQ.
Здравствуйте, Mamut, Вы писали:
M>Где? Ссылки в студию. Если их выше крыши, ты наберешь хотя бы три?
1) нетипизированность (Cyberax)
2) прототипное ООП (все)
3) var (Sinclair)
От себя могу добавить еще странную модульность, реализуемую через всякие requirejs и т.п. велосипеды.
M>Если это про «неудобно и непривычно», то тут, выделено: http://rsdn.ru/forum/flame.comp/4528631.1.aspx
Дим, выделенное — это плач Ярославны. Никто не будет досконально изучать все тонкости языка, который нужен бывает на полчаса один раз в неделю. Ни js, ни эрланга, ни какого-то другого. Я понимаю, тебя это бесит, но такова уж реальность, смирись с ней. Это не значит, что сам js плохой, боже упаси — если потренироваться и хорошенько навостриться, то он очень даже хороший. Но просто не совсем понятно, нафига это нужно — городить тренировки на ровном месте и что мешало использовать в языке чуть более мейнстримовый подход.
Здравствуйте, yoriсk.kiev.ua, Вы писали:
M>>Читаю. Итак, дано: фуллтайм программисты на JS не ноют (или ноют совсем по другим причинам), так в чем проблема-то? В индусах? YKU>Таки не читаешь. Проблема в том, что 99% вылазят из уютненького мирка C#/java/чё-то еще в волшебній мир javascript чиста на 5 минут. Именно что-бы отвалидировать телефон. Ну или там в грид чё-то засунуть, но это в пиковом случае(именно тут и берутся over 90K программистов javascript и "самый популярный в мире"). И тут внезапно выясняется, что то, что обычно делается негляпяпроходязаднейпяткой надо делать через ж. Т.е. оно может и не совсем, если всё через неё делать — может оно ничего, некоторым даже нравится. Но привычно(то самое сложное слово, да) — через другое место и за две минуты.
Если ты вылазишь в этот мир на 5 минут, то ты не столкнёшься с прототипным программированием. А в последние пару лет, в связи с появлением различных фреймворков, даже не на 5 минут, а поболее. Не подходит объяснение.
Здравствуйте, Пацак, Вы писали:
П>Дим, выделенное — это плач Ярославны. Никто не будет досконально изучать все тонкости языка, который нужен бывает на полчаса один раз в неделю. Ни js, ни эрланга, ни какого-то другого. Я понимаю, тебя это бесит, но такова уж реальность, смирись с ней. Это не значит, что сам js плохой, боже упаси — если потренироваться и хорошенько навостриться, то он очень даже хороший.