@proelixir

Страница 45 из 1045
Dmitry
29.07.2016
10:52:20
Как скачать знаю

как в баш его?

вроде так: bash -s < <(curl ..)

ну я свой собственный)

Google
Dmitry
29.07.2016
11:33:04
вот именно. Оказывается проблема была в том, что гитхаб поменял домен для raw))

Andrey ?
29.07.2016
13:09:13
А он поменял?

Dmitry
29.07.2016
13:10:08
Раньше было raw.github теперь githubuser или чёт типо того

Vladimir
29.07.2016
14:24:41
mapset - хорошее название =)

Dmitry
29.07.2016
15:09:45
Те в эрланг медленнее?

Константин
30.07.2016
06:35:17
Грац всех, нас 90 человек

Я подсел на www.codewars.com

Aldar
30.07.2016
07:59:10
https://www.youtube.com/watch?v=2yiKUIDFc2I

Taras ?
30.07.2016
14:11:35
Э? так Go насчет памяти менее оптимизирован, или я ошибаюсь?

Dmitry
30.07.2016
14:27:08
Насчёт памяти какой?

Taras ?
30.07.2016
14:28:31
оперативной

Nick
30.07.2016
14:42:55
Господа, хочу пер рептилия

Google
Nick
30.07.2016
14:42:59
Перекатится

На еликсир, но ни с ерлангом ни с еликсиром не знаком. Чем они отличаются?

Michael
30.07.2016
14:44:04
Гугли

Can
30.07.2016
14:44:17
Найс комьюнити))

Nick
30.07.2016
14:44:31
Есть статьи какие почитать?

Vladimir
30.07.2016
14:44:40
Найс комьюнити))
А что не так?

Dmitry
30.07.2016
14:45:41
Офф сайт эликсир все туториалы

Потом Elixir in Action книга

Michael
30.07.2016
14:46:00
http://lmgtfy.com/?q=erlang+elixir+difference

Dmitry
30.07.2016
14:46:17
А потом - мои переводы на хабре)

Nick
30.07.2016
14:46:22
Спасиб

Vladimir
30.07.2016
14:46:34
http://theerlangelist.com/article/why_elixir

Nick
30.07.2016
14:46:38
Ссылку

А потом - мои переводы на хабре)

Dmitry
30.07.2016
14:48:04
https://habrahabr.ru/users/virviil/ это статьи будет больше

Книга - сам ищи потому что бесплатно "нечестно"

Can
30.07.2016
14:48:59
В двух словах отличаются примерно как Java и Scala. Т.е. Elixir компилируется в байткод, который выполняется на виртуальной машине Beam, которая изначально является виртуальной машиной Erlang. Отсюда в эликсире все плюшки эралнга в качестве процессов, супервизоров и всего такого + от эликсира рубиподнобый синтаксис и метапрограммирование (макросы, much more пиздатые макросы чем в эрланге). Метапрограммирование эликсира позволяет делать удобными такие штуки как ORM для работы с базой и веб фреймворки. Да и вообще эликсир как продолжение эрланга более динамичный с точки зрения развития языка. Для работы с web в эликсире за пару лет было сделано больше, чем в эрланге за 10, как говорили в какой-то статье. Из доп штук, в эликсире прозрачная поддержка по дефолту юникода, многие либы переписаны, добавлен вот недавно GenStage для абстракций и все такое

Если не прав правьте

Ибо я пиздежь мастер

Google
Can
30.07.2016
14:49:25
Но сам прогаю мало

Vladimir
30.07.2016
14:50:00
В двух словах отличаются примерно как Java и Scala. Т.е. Elixir компилируется в байткод, который выполняется на виртуальной машине Beam, которая изначально является виртуальной машиной Erlang. Отсюда в эликсире все плюшки эралнга в качестве процессов, супервизоров и всего такого + от эликсира рубиподнобый синтаксис и метапрограммирование (макросы, much more пиздатые макросы чем в эрланге). Метапрограммирование эликсира позволяет делать удобными такие штуки как ORM для работы с базой и веб фреймворки. Да и вообще эликсир как продолжение эрланга более динамичный с точки зрения развития языка. Для работы с web в эликсире за пару лет было сделано больше, чем в эрланге за 10, как говорили в какой-то статье. Из доп штук, в эликсире прозрачная поддержка по дефолту юникода, многие либы переписаны, добавлен вот недавно GenStage для абстракций и все такое
> ORM

Can
30.07.2016
14:50:26
М?

Vladimir
30.07.2016
14:50:35
Какой ещё ORM?

Тот же Ecto не ORM.

Vadim
30.07.2016
14:52:40
FRM?

Vladimir
30.07.2016
14:52:57
Карты же.

Can
30.07.2016
14:53:05
Мне не оч охота спорить за формулировки, поэтому давай назовем Ecto "библиотекой для работы с базами данных, которая помогает выполнять функции, которые ты используешь в других языках с помощью ORM"

"DSL для работы с базой"

whatever

Vladimir
30.07.2016
14:54:03
Ну типа.

https://www.amberbit.com/blog/2016/2/24/how-elixirs-ecto-differs-from-rubys-activerecord/

Andrey
30.07.2016
15:00:23
Возможно глупый вопрос, но почему в аргументах функции %{} = varriable, а не varriable = %{} ?

Dmitry
30.07.2016
15:01:09
Если в аргументах - без разницы вроде как

Если в коде - то все зависит от знака ^

Andrey
30.07.2016
15:04:05
Получается, что аргументы обрабатываются иначе

Dmitry
30.07.2016
15:04:59
Просто в аргументе ты не можешь использовать ^ так как он не имеет смысла

Vladimir
30.07.2016
15:05:02
Только наоборот скорее.

ПРАВИЛЬНЕЕ выглядит %{} = variable

Google
Andrey
30.07.2016
15:09:41
Мне не понятно, почему они отсупают от своих же правил связывания переменных и значений, как я себе это представляю func(1) -> func(a = 1), то есть когда мы в функцию передаём значение оно связывается с переменной, как если бы мы просто написал a = 1, но для Map почему-то это не так

Dmitry
30.07.2016
15:11:05
Так а разница то какая? Это же не присваивания, это сопоставление

Andrey
30.07.2016
15:11:56
%{} = a, выдаст ошибку: undefined function a/0

Dmitry
30.07.2016
15:12:54
А если вызвать func(%{}) ??

Andrey
30.07.2016
15:16:25
Небольшое отсупление от темы, как вы проверяете работоспособность своего кода, я вот хочу сейчас попробовать написать пару функций и проверить как они работают, для этого мне нужно создать проект, написать функции, для них тесты и запустить mix test, но это долго, в eix неудобно писать что-то не в одну строку, как быть?

*iex

Dmitry
30.07.2016
15:17:44
Можно создать один файл с модулем, загрузить его в iex и руками вызывать функции

Andrey
30.07.2016
15:19:31
А как-то re-complite можно сделать, что бы в случае изменения файла с модулем, iex сам его компилировал

Dmitry ?
30.07.2016
15:27:20
Из коробки кажется нельзя, только вручную r <ModuleName>

Andrey
30.07.2016
15:32:33
Ну так вот, в агрументах функции "=" работает иначе (я сейчас проверил и для списков тоже можно писать [] = a), почему?

Dmitry ?
30.07.2016
15:36:29
Типа a придёт уже определенной снаружи

Почему так парит это?) Синтаксис разрешает в аргументах в обе стороны (a = [] и [] = a)

Логично было бы разрешить только [] = a, но вот так

Andrey
30.07.2016
15:42:15
Чем меньше вот подобных штук в языке, тем он чище и приятнее)

Dmitry ?
30.07.2016
15:42:59
Согласен.

Andrey
30.07.2016
15:53:48
Кажется эта запись нормальна, потому что (%{a: 1} = a) = %{a: 1, b: 2} - работает, но вот только теперь мне не ясно почему

Если только Elixir не считает последний "=" искомым и не сопоставляет %{a: 1} = %{a: 1, b: 2}, a = %{a: 1, b: 2}

Can
30.07.2016
16:26:55
с конца вроде разворачивается

вот и получается

что ты передаешь например мапу в функцию %{a: 1}

Google
Can
30.07.2016
16:28:45
а в аргументах пишешь %{}=a

и он пишет "(%{}=a) = %{a:1})"

Andrey
30.07.2016
16:37:42
Да, выходи так и есть..

Can
30.07.2016
17:00:13
Я вроде в книге это недавно читал

Которая Elixir in Action

Vladimir
31.07.2016
06:24:04
https://habrahabr.ru/post/306782/

Никто не хочет РАСКРИТИКОВАТЬ?

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