Re[8]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 10:01
Оценка:
Здравствуйте, neFormal, Вы писали:

F>а при чём здесь типизация? проблема же в отсутствии проверки количества переданных аргументов. здесь типов нет.


А как правильно? Проверять или не проверять?
Re[7]: JS - очень простой язык
От: StandAlone  
Дата: 22.03.17 10:05
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>А при чем здесь архитектура JS? динамическая типизация + особенности конкретной библиотеки

Чего-чего особенности????
Re[15]: JS - очень простой язык
От: StandAlone  
Дата: 22.03.17 10:18
Оценка:
Здравствуйте, anonymous, Вы писали:

A>Нет. Тема у нас о том, что в JS есть фатальный недостаток по сравнению с другими языками.


Нет, это у вас какой-то свой междусобойчик организовался.
А тема вообще-то о том, какой JS простой, стильный, клевый и позволяющий делать крутые штуки. Я тут уже реализацию then приводил, но ее что-то никто не заметил
Попробую еще раз.
Вот вам, например! Красота-то какая, ляпота! Где-нибудь еще такое видели? И в отладке, и в поддержке
var when = function (value, _callback, _errback) {
    var result = defer();
    var done;

    _callback = _callback || function (value) {
        return value;
    };
    _errback = _errback || function (reason) {
        return reject(reason);
    };

    // XXX
    var callback = function (value) {
        try {
            return _callback(value);
        } catch (reason) {
            return reject(reason);
        }
    };
    var errback = function (reason) {
        try {
            return _errback(reason);
        } catch (reason) {
            return reject(reason);
        }
    };

    enqueue(function () {
        ref(value).then(function (value) {
            if (done)
                return;
            done = true;
            result.resolve(ref(value).then(callback, errback));
        }, function (reason) {
            if (done)
                return;
            done = true;
            result.resolve(errback(reason));
        });
    });

    return result.promise;
};
Re[16]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 10:28
Оценка:
Здравствуйте, StandAlone, Вы писали:

SA>Вот вам, например! Красота-то какая, ляпота! Где-нибудь еще такое видели? И в отладке, и в поддержке


Что я должен там увидеть?
Re[15]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 10:36
Оценка:
Здравствуйте, anonymous, Вы писали:

A>Нет, ныть — приводить надуманные примеры и выдавать их фатальные недостатки.


рекомендую обратиться к толковому словарю. а то выдумываешь терминологию прямо на ходу.

A>Я тебе предложил уже сравнить две реализации. Как успехи?


понятно, набросил и в кусты.

A>>>Нет, их явно в интересах демагогии неправильно представили. Что в мануале написано про приседания и подпрыгивания — твои измышления.

F>>это объективный факт. потому что можно обойти эту проблему, например, через лямбду. через короткий синтаксис, а не то, что ты приводишь.
A>Я и привёл лямбду.

и не осилил дочитать строчку.

A>Нет. Тема у нас о том, что в JS есть фатальный недостаток по сравнению с другими языками.


он весь — один сплошной фатальный недостаток.
...coding for chaos...
Re[9]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 10:39
Оценка:
Здравствуйте, anonymous, Вы писали:

F>>а при чём здесь типизация? проблема же в отсутствии проверки количества переданных аргументов. здесь типов нет.

A>А как правильно? Проверять или не проверять?

зависит от целей.
с какой-то стороны язык должен ограничивать. а если этого не делать, выбирать вариант "абы как", то получается js.
так и до брейнфака недалеко.
...coding for chaos...
Re[16]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 10:40
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>Я тебе предложил уже сравнить две реализации. Как успехи?

F>понятно, набросил и в кусты.

Что-то не так с результатами эксперимента?

F>>>это объективный факт. потому что можно обойти эту проблему, например, через лямбду. через короткий синтаксис, а не то, что ты приводишь.

A>>Я и привёл лямбду.
F>и не осилил дочитать строчку.

Это несущественно.

A>>Нет. Тема у нас о том, что в JS есть фатальный недостаток по сравнению с другими языками.

F>он весь — один сплошной фатальный недостаток.

Да, и этот недостаток в том, что он тебе не нравится.
Re[10]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 10:42
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>А как правильно? Проверять или не проверять?

F>зависит от целей.

Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?

F>с какой-то стороны язык должен ограничивать.


Кому должен?
Re[7]: JS - очень простой язык
От: Somescout  
Дата: 22.03.17 10:53
Оценка:
Здравствуйте, TK, Вы писали:

TK>С чего это вдруг? Если функции нужен первый параметр, то какой смысл перечислять все остальные если оно все равно не используется?

TK>Можно считать, что в общем виде любая функция принимает на вход бесконечное число параметров. просто, не все они значимые.

Ну и получаем проблему, приведённую neFormal.

S>>
S>>array.Map( (value,index) => ParseInt(value,index) );
S>>

S>>А js ради экономии нескольких символов позволяет создать подобную ситуацию.

TK>так исходную проблему то не решили... тогда уж надо требовать точного соответствия имен аргументов у функции


Решили — мы вызываем именно ту перегрузку функции, которая нам нужна (Я в курсе, что в js синтаксически нет перегрузок).
ARI ARI ARI... Arrivederci!
Отредактировано 22.03.2017 11:40 Somescout . Предыдущая версия .
Re[17]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 11:11
Оценка:
Здравствуйте, anonymous, Вы писали:

A>>>Я тебе предложил уже сравнить две реализации. Как успехи?

F>>понятно, набросил и в кусты.
A>Что-то не так с результатами эксперимента?

ты их не привёл. хотя и сослался.
я вот привёл примеры того, чего знаю. что происходит в перле — я без понятия.

A>>>Нет. Тема у нас о том, что в JS есть фатальный недостаток по сравнению с другими языками.

F>>он весь — один сплошной фатальный недостаток.
A>Да, и этот недостаток в том, что он тебе не нравится.

сложно найти человека, которому бы он нравился.
...coding for chaos...
Re[11]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 11:16
Оценка:
Здравствуйте, anonymous, Вы писали:

A>>>А как правильно? Проверять или не проверять?

F>>зависит от целей.
A>Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?

в контексте js должен быть ещё хуже, чем они сделали. жалкоскриптеры должны страдать.

F>>с какой-то стороны язык должен ограничивать.

A>Кому должен?

программисту. иначе нет разницы от написания кода на брейнфаке, например.
...coding for chaos...
Re[18]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 11:17
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>Что-то не так с результатами эксперимента?

F>ты их не привёл. хотя и сослался.

Ты ведь утверждаешь, что map в этих экспериментах будет вести себя каким-то общепринятым способом. Значит ты проводил эксперименты и можешь ответить на мой вопрос хотя бы про Haskell.
Re[16]: JS - очень простой язык
От: std.denis Россия  
Дата: 22.03.17 11:22
Оценка:
SA>Вот вам, например! Красота-то какая, ляпота! Где-нибудь еще такое видели? И в отладке, и в поддержке

Да, в STL например
Re[12]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 11:23
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>>>А как правильно? Проверять или не проверять?

F>>>зависит от целей.
A>>Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?
F>в контексте js должен быть ещё хуже, чем они сделали. жалкоскриптеры должны страдать.

Ты не ответил на вопрос.

F>>>с какой-то стороны язык должен ограничивать.

A>>Кому должен?
F>программисту. иначе нет разницы от написания кода на брейнфаке, например.

В чего ты взял, что в Brainfuck нет ограничений? Попытка смешать в кучу эзотерический синтаксис и ограничения — демагогия. И нет, не должен тебе ничего произвольно взятый ЯП.
Re[13]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 11:54
Оценка:
Здравствуйте, anonymous, Вы писали:

A>>>Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?

F>>в контексте js должен быть ещё хуже, чем они сделали. жалкоскриптеры должны страдать.
A>Ты не ответил на вопрос.

я не знаю, как сделать ещё хуже. по работе у меня требуют обратного.

F>>>>с какой-то стороны язык должен ограничивать.

A>>>Кому должен?
F>>программисту. иначе нет разницы от написания кода на брейнфаке, например.
A>В чего ты взял, что в Brainfuck нет ограничений? Попытка смешать в кучу эзотерический синтаксис и ограничения — демагогия. И нет, не должен тебе ничего произвольно взятый ЯП.

отмазка не прокатила.
и таки язык должен. если не может, я его выкидываю. и так делают все нормальные программисты испокон веков.
...coding for chaos...
Re[19]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 11:55
Оценка:
Здравствуйте, anonymous, Вы писали:

A>>>Что-то не так с результатами эксперимента?

F>>ты их не привёл. хотя и сослался.
A>Ты ведь утверждаешь, что map в этих экспериментах будет вести себя каким-то общепринятым способом. Значит ты проводил эксперименты и можешь ответить на мой вопрос хотя бы про Haskell.

у тебя эксперимент другой. перевод темы у тебя в очередной раз не получился.
...coding for chaos...
Re[14]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 12:07
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>>>Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?

F>я не знаю, как сделать ещё хуже. по работе у меня требуют обратного.

Я спросил: какой из способов «простой, очевидный и общепринятый» — проверять количество переданных аргументов в функцию или нет?

F>>>>>с какой-то стороны язык должен ограничивать.

F>и таки язык должен. если не может, я его выкидываю. и так делают все нормальные программисты испокон веков.

То есть программисты, использующие ЯП с динамической типизацией — ненормальные. С нестрогой типизацией — ненормальные. С объявлением переменных не в начале блока инструкций — ненормальные. С возможностью выхода за пределы выделенной памяти — ненормальные. И так далее. На чём ты пишешь, кстати?
Re[20]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 12:09
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>Ты ведь утверждаешь, что map в этих экспериментах будет вести себя каким-то общепринятым способом. Значит ты проводил эксперименты и можешь ответить на мой вопрос хотя бы про Haskell.

F>у тебя эксперимент другой. перевод темы у тебя в очередной раз не получился.

Такой же, с которого началась эта ветка. Но понятно, озвучить результат ты стесняешься.
Re[15]: JS - очень простой язык
От: neFormal Россия  
Дата: 22.03.17 12:40
Оценка:
Здравствуйте, anonymous, Вы писали:

A>>>>>Нет-нет, должен быть один «простой, очевидный и общепринятый» способ. Так какой?

F>>я не знаю, как сделать ещё хуже. по работе у меня требуют обратного.
A>Я спросил: какой из способов «простой, очевидный и общепринятый» — проверять количество переданных аргументов в функцию или нет?

простой — не проверять
очевидный — проверять
общепринятый — проверять

A>То есть программисты, использующие ЯП с динамической типизацией — ненормальные. С нестрогой типизацией — ненормальные. С объявлением переменных не в начале блока инструкций — ненормальные. С возможностью выхода за пределы выделенной памяти — ненормальные. И так далее.


ты сейчас всех ненормальными назвал. ты, не я.

A>На чём ты пишешь, кстати?


на всём, что под руки попадётся.
...coding for chaos...
Re[16]: JS - очень простой язык
От: anonymous Россия http://denis.ibaev.name/
Дата: 22.03.17 12:54
Оценка:
Здравствуйте, neFormal, Вы писали:

A>>Я спросил: какой из способов «простой, очевидный и общепринятый» — проверять количество переданных аргументов в функцию или нет?

F>простой — не проверять
F>очевидный — проверять
F>общепринятый — проверять

Закроем пока глаза на спорность этих утверждений. И как это совместить?

A>>То есть программисты, использующие ЯП с динамической типизацией — ненормальные. С нестрогой типизацией — ненормальные. С объявлением переменных не в начале блока инструкций — ненормальные. С возможностью выхода за пределы выделенной памяти — ненормальные. И так далее.

F>ты сейчас всех ненормальными назвал. ты, не я.

Ты же сказал, что нормальные программисты на таком не пишут:

и таки язык должен [ограничивать]. если не может, я его выкидываю. и так делают все нормальные программисты испокон веков.

Только не говори, что «ограничивать» имеет какое-то другое значение.

A>>На чём ты пишешь, кстати?

F>на всём, что под руки попадётся.

Ну, озвучь уж, чем нормальные программисты пользуются.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.