
Vladimir
27.07.2016
09:26:13
Ну точку нельзя использовать.
Так вызываются Erlang модули же.

Константин
27.07.2016
09:26:33
но я так не предлагал же

Vladimir
27.07.2016
09:26:40
:users_get?

Google

Константин
27.07.2016
09:27:07
Вообще не понимаю о чем ты)))

Vladimir
27.07.2016
09:27:18

Константин
27.07.2016
09:27:54
:method_name содержится в VkAPI.Conn
я про него говорил
Парсер может брать его значение и на его основе парсить результаты
И возвращать уже %Vk.User{}

Dmitry
27.07.2016
09:29:43
Я ща попробую сделать пулл с авторизацией
Запуль реквевт на твой Vk.Conn, я его смержу и буду выдавать первым в цепочке

Vladimir
27.07.2016
09:36:59
Насоздавать кучу модулей ЛУЧШЕ тем, что если их все документировать, а так же тайпспек прописать (указать аргументы), то в саму документацию VK API лезть придётся гораздо реже.
Которая относительно часто попросту неактуальная.

Константин
27.07.2016
09:44:32
Может захардкодим версию апи?
И будем обновлять её сами после прогона тестов и т.д.

Vladimir
27.07.2016
09:59:58

Google

Dmitry
27.07.2016
10:00:46
https://github.com/Virviil/vkapi/commit/01161179c9ff01e5cdc97588d7462ddf18e4cffa

Vladimir
27.07.2016
10:00:57
Ну и оставить возможность указать любую версию, вернув обычную карту.

Константин
28.07.2016
08:45:32
Попер народ))

Dmitry
28.07.2016
08:48:59
эликсируем все

Dmitry
28.07.2016
08:52:41
Пишу статю - сравнение Ruby и Elixir. Основной посыл - это разные языки. Прошу покидать информацию по теме - если что-нибудь знаете

$Bogdan
28.07.2016
08:53:36

Dmitry
28.07.2016
08:55:51
Ну имеется ввиду, что elixir - это не "Ruby on Erlang Vm", а отдельный язык

Konstantin
28.07.2016
08:58:07
Чето похожее уже было вроде...
https://zeroclarkthirty.com/2015-11-01-elixir-is-not-ruby.html
совпадение?

Dmitry
28.07.2016
08:59:19
Во, ништяк! Возьму за основу, переведу -спасибо
Я тоже где то видел, толко не помню где)

Konstantin
28.07.2016
09:01:58
Пожалуйста ;)
Я тоже вот не помню где еще это слышал. Мне почему-то кажется, что на одном из выступлений Жозе Валима или кого-то из других крутых чуваков

Dmitry
28.07.2016
09:04:03
Оффициально "Elixir syntax inspired by Ruby" - вот я и хочу запилить сравнение

Evgen
28.07.2016
09:46:03
Всем привет. Как можно "нормально дебажить" в IDE (в любом) с брекпоинтами и стектрейсом? Или есть другой путь?

Dmitry
28.07.2016
09:46:30
IEx и IO.puts
Другого пути нету
Это же не императивный язык, зачем тут дебажить?

Константин
28.07.2016
09:47:37
Нет, есть метод

Google

Константин
28.07.2016
09:47:52
с брекпоинтами
5 сек

Anatoliy Kovalchuk
28.07.2016
09:48:04
есть встроенный дебагер не хуже чем в ide

Andrey
28.07.2016
09:48:23
IEx.pry

Константин
28.07.2016
09:48:32
http://blog.plataformatec.com.br/2016/04/debugging-techniques-in-elixir-lang/

Anatoliy Kovalchuk
28.07.2016
09:49:25
^ только патчить уже не нужно ничего, все уже должно работать из коробки

Dmitry
28.07.2016
09:50:27
Во блин, а я и не знал
Впрочем вопрос зачем все ещё остаётся)

Evgen
28.07.2016
09:54:54
привыкшие мы, трудно первое время все эти IEX.pry...
темболее чужой проект трудно с первого раза понять что куда к кому

Константин
28.07.2016
09:57:28
тесты выручают, iex тоже хорошо
каждую функцию можно по очереди вызывать и смотреть что будет
если это контроллер - то IEx.pry и тоже в консоли работаешь

Evgen
28.07.2016
09:59:01
кроме встроенного дебаггера я еще нашел вот это Event Tracer им кто-то пользуется?
неудобство с IEx.pry в том что не нашел нормальный live code для перекомпиляции на лету elixir проекта

Anatoliy Kovalchuk
28.07.2016
10:01:18
r Имя модуля
и модуль перекомпилируется с новых исходников и подгрузится в консоль

Evgen
28.07.2016
10:02:43
и он корректно заменит работающие процессы?

Anatoliy Kovalchuk
28.07.2016
10:02:51
меня IEx.pry выручает когда пишешь acceptance тесты и не сильно понимаешь что сейчас видит браузер, делаешь точку останова в определенном месте, открывается браузер и ты из консоли можешь легко заполнять и делать манипуляции как пользователь
работающие процессы также как и все пользуюются методами опеределленного модуля, обновился модуль, они начинуют пользоваться новыми функциями

Google

Evgen
28.07.2016
10:04:55
понял. Я тогда пересмотрю свои подходы к этому вопросу

Vladimir
28.07.2016
10:36:20

Can
28.07.2016
10:52:26
С обновлением кода не так легко все
Я приводил пример
Рекурсивная функция, которая вызывает себя же просто по имени не обновится
После перекомпиляции
А если динамически вызывать через call
То заменит
В общем хот релоадинг тонкая вещь

Dmitry
28.07.2016
11:04:35
Можно затипизировать такую функцию?
Def foo(params=[a: a, b: b])
Чтобы указать какие a и b?

Anatoliy Kovalchuk
28.07.2016
11:13:16
да вполне можно использовать guard для параметров
http://img.kr00lix.com/iFyAjbap.png
test
defmodule Foo do
def foo([a: a, b: b]=params) when is_integer(a) and is_integer(b) do
IO.puts "integer params : #{inspect params}"
params
end
def foo(params) do
IO.puts "default params: #{inspect params}"
params
end
end

Dmitry
28.07.2016
11:17:28
А как прально \@doc написать?
Так же?

Vladimir
28.07.2016
11:28:45
http://stackoverflow.com/a/23622547
С named list так сделать не выйдет, да?
Впрочем...
@type opts :: [token: String.t]
Можно затипизировать такую функцию?
Def foo(params=[a: a, b: b])
Чтобы указать какие a и b?

Google

Vladimir
28.07.2016
11:28:49
Ты об этом???

Dmitry
28.07.2016
11:30:28
Да, похоже на то
А как записать, что может быть строка и число?
Ну типа 123 и "123"
или*

Andrey
28.07.2016
11:33:21
"|" же

Vladimir
28.07.2016
11:33:35
String.t | integer

Dmitry
28.07.2016
11:33:43
блин, туплю)
binary|integer
конечно

Taras ?
28.07.2016
13:46:13
всем привет

Konstantin
28.07.2016
13:47:00
здарова