Size: a a a

2019 March 25

DR

Dmitry Russ (Aleksandrov) in pro.elixir
В общем, всегда значение полей и существующих функций можно хранить без генерации. К примеру, %{a: {String, :split, ["\n"]}, b: {CustomModule, :xyz, []}} и пишите код, который вот эти mfa-спеки может обрабатывать.
источник

DR

Dmitry Russ (Aleksandrov) in pro.elixir
Генерация кода - в данном случае это оптимизация, т.е. переход от интерпретируемого кода в компилируемый.
источник

DR

Dmitry Russ (Aleksandrov) in pro.elixir
Чтобы вместо того, чтобы делать динамическое определение структур данных и нужных функций - скомпилировать код в момент, когда вся эта информация известна. Т.е. это для понимания, что можно сделать и без генерации, потому что это можно сделать и без генерации, просто будет много динамического определения, как все должно работать. Теперь к генерации, генерировать текстовый .exs файлы - очень плохая затея, когда есть система метапрограммирования в Elixir-е, потому что вместо того, чтобы генерировать синтаксис и текст и бороться с любыми изменениями текстовой репрезентации языка, в Elixir-е достаточно выплюнуть структуру данных(AST Elixir-а, которое очень простое), а quote/unquote позволяют еще проверять определенную корректность генерируемого AST на уровне компиляции генерируемого года.
источник

DR

Dmitry Russ (Aleksandrov) in pro.elixir
Что касается JS: https://github.com/devinus/execjs - мы пользуемя вот этим, далек от идеала(в особенности что касается скорости), но работает стабильно.
источник

АН

Алексей Новоселов in pro.elixir
спасибо большое за инфу
источник

MY

Mikhail Yashkov in pro.elixir
Народ, подскажите, пожалуйста, можно ли добавить в edeliver дополнительный тип хоста? STAGING_HOSTS и PRODUCTION_HOSTS нам не хватает, требуется ещё промежуточный вариант.
источник

MY

Mikhail Yashkov in pro.elixir
источник

EP

Eugene Pirogov in pro.elixir
кто-нить пользовался httpc из эликсира?
источник

EP

Eugene Pirogov in pro.elixir
делаю запрос, получаю ответ, в хедерах есть content-disposition, в нем имя файла с юникодовским символом
источник

EP

Eugene Pirogov in pro.elixir
сервер отвечает красиво (кросс-чекаю curl-ом), attachment; filename="Chauffør U18", а httpc видит вот такую вот последовательность байт:

[97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 59, 32, 102, 105, 108, 101, 110, 97, 109, 101, 61, 34, 67, 104, 97, 117, 102, 102, 195, 184, 114, 32, 85, 49, 56, 46, 112, 100, 102, 34]
источник

EP

Eugene Pirogov in pro.elixir
List.to_string([97, 116, 116, 97, 99, 104, 109, 101, 110, 116, 59, 32, 102, 105, 108, 101, 110, 97, 109, 101, 61, 34, 67, 104, 97, 117, 102, 102, 195, 184, 114, 32, 85, 49, 56, 46, 112, 100, 102, 34])

# => attachment; filename="Chauffør U18.pdf"
источник

Δ

Δημήτρης in pro.elixir
источник

EP

Eugene Pirogov in pro.elixir
👏
источник

EP

Eugene Pirogov in pro.elixir
источник
2019 March 26

EP

Eugene Pirogov in pro.elixir
есть ли какой-то способ в эликсире / эрланге заэскейпить имя файла? на маке пытаюсь записать файл с именем

"Report (02/01/2017 - 03/02/2017).xls"

становится очевидно что / надо бы как-то во что-то превратить перед записью, иначе:

iex(1)> File.write("Report (02/01/2017 - 03/02/2017).xls", "my-contents")
{:error, :enoent}

Path.join, :filename.nativename(), :filename.join – все не то

пока обошелся заменой / на - в имени файла.

у того же руби поведение такое же. для общего развития: кто-нить знает, почему экскейпинг не решается разработчиками языка?
источник

NK

ID:382338188 in pro.elixir
File.write("Report (02\u204401\u20442017 - 03\u204402\u20442017).xls", "my-contents")
источник

EV

Eugene Vasiliev in pro.elixir
ID:382338188
File.write("Report (02\u204401\u20442017 - 03\u204402\u20442017).xls", "my-contents")
источник

NK

ID:382338188 in pro.elixir
источник

АН

Алексей Новоселов in pro.elixir
\u2215 зайдет норм, если что
источник

AF

Alexander Fyodorov in pro.elixir
хммм
источник