@proelixir

Страница 894 из 1045
Alex
03.03.2018
12:30:36
там явно все до мозга костей

Evgeny
03.03.2018
12:30:42
да хотя бы тем что первый snippet выглядит читабеленее
Во-первых, это не доп информация. Во-вторых, лично для меня второй читабельнее.

Evgeny
03.03.2018
12:31:06
первый читабельнее
второй читабельнее :D

Google
Alex
03.03.2018
12:31:20
я то внешний читатель по отношению к твоему коду мне то лучше знать

Evgeny
03.03.2018
12:31:46
я то внешний читатель по отношению к твоему коду мне то лучше знать
Да ты что? А я типа чужой код никогда не читал? :)

Alex
03.03.2018
12:31:53
по любому первый читабельнее

Evgeny
03.03.2018
12:32:18
второй, я гарантирую это

Alex
03.03.2018
12:32:33
че голосование устраивать чтоле?

Evgeny
03.03.2018
12:32:36
Ну и мы отвлеклись. Какую неявность разрешил else?

че голосование устраивать чтоле?
Ага, только не здесь, а на императивном форуме :)

у плюсовиков спросить, например

особенно если функция немного сложнее выше приведенной.

Alex
03.03.2018
12:33:58
у плюсовиков спросить, например
я плюсовик с 9 летним стажем говою тебе уже битый час

Evgeny
03.03.2018
12:34:20
Ну дык и я плюсовик с 12 летним стажем :)

Ну и хер с ней с читабельностью, про неявность-то ответишь?

Читабельность вообще вещь крайне субъективная

Google
Alex
03.03.2018
12:34:52
кроме того когда я отдавал код на ревью не мене а более опытные товарищи никогда ничего против не имели

Evgeny
03.03.2018
12:35:07
Ну и я бы не имел

без разницы в таких простых случаях

Alex
03.03.2018
12:35:42
Ну и мы отвлеклись. Какую неявность разрешил else?
у if указан явно else и что в этом случае делается. это написано явно

Evgeny
03.03.2018
12:36:30
ну дык и без if явно будет указано, что будет сделано.

все что идет после if.

во многих случаях else нужен, ктож спорит.

но зачем категоричность в стиле if без else - говно и должен быть запрещен. Фанатики - лесом

Alex
03.03.2018
12:38:14
все что идет после if.
это все ты уже выводишь логически. ты думаешь ok else не указан что тогда.... и находишь что просиходит а если он указан то и выводить нечего

но зачем категоричность в стиле if без else - говно и должен быть запрещен. Фанатики - лесом
ну во первых я не фанатик, во вторых кто не фанатик то и не идет, а в третьих я сам решу какими путями мне ходить

Evgeny
03.03.2018
12:39:16
ну и фанатиком не обзывал

давай другой пример

if(cond1) throw exception;

Alex
03.03.2018
12:40:44
да вот разбирайся

if (bar is null) bar = new Bar(123); if (bar is Bar(124)) return; if (something) foo = new Foo(321); if (foo == Bar(123)) bar = Bee(234); if (isStub(bar)) foo = Bee(234);

Evgeny
03.03.2018
12:41:33
if (bar is null) bar = new Bar(123); if (bar is Bar(124)) return; if (something) foo = new Foo(321); if (foo == Bar(123)) bar = Bee(234); if (isStub(bar)) foo = Bee(234);
повторяю, я не против else, наоборот за. но бывают случаи, когда без else проще

if(cond1) throw exception; ... if(cond2) throw exception; ... if(cond3) throw exception;

Alex
03.03.2018
12:42:45
бывают еще такая же if(cond1) return;

Google
Evgeny
03.03.2018
12:42:54
и зачем тут городить портянки из вложеных if..else, или городить кучи коротких функций из одной строки?

Alex
03.03.2018
12:43:13
это уже смаивает на гарды

Evgeny
03.03.2018
12:43:14
бывают еще такая же if(cond1) return;
ага, я приводил в самом начале

короче, считаешь ли ты, что if без else (допустим в плюсах) никогда не должен быть в хорошем коде?

Alex
03.03.2018
12:47:27
)) мне напомнило это "согласен ли ты взять эту... конструкцию в... "

не ну а ты сам как считаешь?

Evgeny
03.03.2018
12:49:06
Я лично считаю, что зависит от ситуации. иногда else только затруднит чтение кода.

а вот в эликсире я заметил, что без else получается, как правило, говно.

Alex
03.03.2018
12:50:59
а вот в эликсире я заметил, что без else получается, как правило, говно.
ну ты же понимаешь что не бывает так что в одном языке говно а в другом нет

ведь кто-то же неправ из этих двух языков

Alex
03.03.2018
12:51:21
ну или более прав чем другой

Evgeny
03.03.2018
12:51:41
особенно если парадигмы в корне различаются

Alex
03.03.2018
12:52:39
ну в какой нибудь отдельно взятой функции можно написать так что и парадигму не сразу разберешь

Evgeny
03.03.2018
12:53:02
в эликсире писать аналогично if(x > 10) x = x - 10 вообще бессмысленно

только так x = if x > 10, do: x - 10, else: x

ну или через case или cond

Alex
03.03.2018
12:58:27
вот может потому код на Elixir и более стабилен, что там меньше места для "разночтений". Если ты пишешь casе то он вынуждает тебя продумывать все варианты. а это способствует тому что ты стягиваешь в одно место все необходимое для этого и оно не размазано по коду

Google
Evgeny
03.03.2018
13:03:37
в чистых функциональных языках вроде хаскеля, смысл в if ,без else вообще тотально исчезает.

давай еще обсудим goto. :D

Alister
03.03.2018
13:05:18
континьюейшены

john
03.03.2018
13:05:32
unless

Evgeny
03.03.2018
13:05:34
брейки

Alex
03.03.2018
13:05:42
а давай че еще все воскресенье впереди

john
03.03.2018
13:06:02
анлесс - это на неделю

Evgeny
03.03.2018
13:06:13
:lol:

john
03.03.2018
13:06:40
я знал чувака который знал чувака который лично видел как кто-то написал unless

Alister
03.03.2018
13:06:53
я рубист

Evgeny
03.03.2018
13:07:02
ОМФГ

Alister
03.03.2018
13:07:09
я пишу анлесы как стейтмент модифайеры каждый день

спрашивайте свои вопросы

john
03.03.2018
13:07:28
но все знают только иф, анлесс никто не вспомнил за двое суток

Alex
03.03.2018
13:07:41
что такое анлесс?

john
03.03.2018
13:08:02
пойду я нервно покурю

Alister
03.03.2018
13:08:03
это изящный способ запутывания кода

Evgeny
03.03.2018
13:08:35
спрашивайте свои вопросы
ты всегда используешь else вместе с unless?

Alex
03.03.2018
13:08:37
тогда это самое то для обсуждения

Evgeny
03.03.2018
13:09:14
что такое анлесс?
https://elixirschool.com/ru/lessons/basics/control-structures/#if-%D0%B8-unless

Google
Alex
03.03.2018
13:09:44
Evgeny
03.03.2018
13:10:02
ну мало ли

Alex
03.03.2018
13:10:17
а вообще пишите else без и if будет вам щасте

вот так

else { а = 12; }

Evgeny
03.03.2018
13:11:42
else { а = 12; }
пробавал, кампилятар выводит ашипку

надо так else a = a++ + ++a;

Aldar
03.03.2018
16:00:29
abc
03.03.2018
20:28:48
Товарищи, а есть ли быстрый способ получить все ключи из ETS ?

Vladimir
04.03.2018
07:49:38
ets:foldl/3 ?

Alex
04.03.2018
09:06:22
Быстрого нет

Vladimir
04.03.2018
10:47:16
Недавно ковырялся в кишках фреймворка Phoenix, чтобы понять как его трейсить, и вот что я вам скажу: Elixir невероятно сложный язык. Ужасно сложный. Erlang проще и понятнее раз в десять. Возможность легко писать макросы и неявно их использовать открыли врата в ад. Вот моё пророчество на следующие 5-7 лет: Эликсир ждёт повальный отказ от использования макросов, также как в C++ все отказываются от множественного наследования и исключений. Феникс скорее всего будет серьёзно переписан, либо будет создан новый фреймворк который возьмёт лидерство. Альтернатива этому — постепенная стагнация и забвение.

Dmitry
04.03.2018
10:52:19
а исследования есть, не знаю, британских ученых там или кого-либо еще

чтобы как-то подтвердить свои слова

в тех же рельсах куча магии и неявности, нормально живется

Vladimir
04.03.2018
10:56:04
подтвердить что "макросы открыли врата в ад"?

Alister
04.03.2018
10:58:09
подтвердить что "макросы открыли врата в ад"?
макросы открыли врата в ад, которые потом закрылись в рантайме из-за неучтенного бага

Dmitry
04.03.2018
11:13:59
а если писать тесты так вообще все замечательно

язык дает замечательный инструмент для метапрограммирования, и бояться его = не уметь его готовить

Страница 894 из 1045