Size: a a a

2019 December 05

YZ

Yuri Zhloba in ErlangRus
Taras 🦀 Taraskin
о, как моя путаница пунктуации в первый месяц эрланга))
со временем это уходит на автоматику в подсознание, и все ок

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


с пунктуацией все логично —
окончание команды в консоли, или конец функции — .
и перед end знак не пишем

команды внутри функции разделяем ,
разветвления разделяем ;
Можно экспортировать все :) В тестах я так и делаю.
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Сергей Иванов
а что заставило перейти с elixir на erlang?
Новый работодатель )
источник

DR

Dmitry Russ (Aleksandrov) in ErlangRus
На мой взгляд - к пунктуации Erlang-а привыкаешь быстро и потом на автомате расставляешь запятые и так далее…. В чём недостаток, так это в том, что когда ты рефакторишь и меняешь что-то местами(или разделяешь expression-ы), то в Elixir-е перенёс expression и всё работает обычно, а в Erlang-е нужно пунктуацию поправить, если она в зависимости от того, куда вставил изменилась.
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Можно конечно переехать проекты из Rebar в mix и постепенно перепиливать, но к тому времени когда я получу такой уровень доверия я походу уже на эрланге писать научусь
источник

DR

Dmitry Russ (Aleksandrov) in ErlangRus
Соответственно, люди не знакомые с синтаксисом Elixir-а быстро там учаться что-то ковырять и вставлять туда всякие inspect-ы…. А в Erlang-е не зная Erlang-а будешь постоянно натыкаться на то, что не компилируется и вначале нужно пунктуацию выучить. (сужу по тому, что наш PM любит поковыряться в коде, чтобы понимать его)
источник

DR

Dmitry Russ (Aleksandrov) in ErlangRus
Źmićer Rubinštejn
Можно конечно переехать проекты из Rebar в mix и постепенно перепиливать, но к тому времени когда я получу такой уровень доверия я походу уже на эрланге писать научусь
rebar умеет modules генерировать - или сейчас о другом?
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Dmitry Russ (Aleksandrov)
rebar умеет modules генерировать - или сейчас о другом?
Я сейчас о том, что в Erlang не удобно использовать эликсир, и чтобы как-то переехать надо сперва засунуть все erl в микс проект, а потом можно будет докидывать туда Ex модули, а старые постепенно перепиливать, потому что mix как раз пофик что собирать - эрланг или эликсир
источник

PG

Pïg Grëënëst in ErlangRus
Dmitry Russ (Aleksandrov)
На мой взгляд - к пунктуации Erlang-а привыкаешь быстро и потом на автомате расставляешь запятые и так далее…. В чём недостаток, так это в том, что когда ты рефакторишь и меняешь что-то местами(или разделяешь expression-ы), то в Elixir-е перенёс expression и всё работает обычно, а в Erlang-е нужно пунктуацию поправить, если она в зависимости от того, куда вставил изменилась.
Есть один дедовский метод форматирования, надо только...
источник

PG

Pïg Grëënëst in ErlangRus
Źmićer Rubinštejn
Я сейчас о том, что в Erlang не удобно использовать эликсир, и чтобы как-то переехать надо сперва засунуть все erl в микс проект, а потом можно будет докидывать туда Ex модули, а старые постепенно перепиливать, потому что mix как раз пофик что собирать - эрланг или эликсир
А есть какой-нибудь гайд на эту тему?
источник

ŹR

Źmićer Rubinštejn in ErlangRus
Dmitry Russ (Aleksandrov)
Соответственно, люди не знакомые с синтаксисом Elixir-а быстро там учаться что-то ковырять и вставлять туда всякие inspect-ы…. А в Erlang-е не зная Erlang-а будешь постоянно натыкаться на то, что не компилируется и вначале нужно пунктуацию выучить. (сужу по тому, что наш PM любит поковыряться в коде, чтобы понимать его)
Пайпа сильно не хватает, with тоже удобная штука, но не критичная.

А пока что банальный

Data
|> Enum.filter
|> Enum.map
|> Enum.whatever

Превращается в жёсткую кашу
источник

AG

Alexey Golda in ErlangRus
Źmićer Rubinštejn
Пайпа сильно не хватает, with тоже удобная штука, но не критичная.

А пока что банальный

Data
|> Enum.filter
|> Enum.map
|> Enum.whatever

Превращается в жёсткую кашу
как по мне пайп |> не очень удобное сочетание символов для набора на клавиатуре ), и он всегда как первый аргумент работает. Мне например когда пришлось немножко Elixir потрогать, было непривычно, после Clojure, где есть прямой аналог -> - thread first, но есть еше и ->> - thread last - который работает в последнюю позицию. Причем с map, filter & reduce работает именно thread last ->>, т.к. в Clojure они получают коллекцию в последней позиции, ну например:

(->> (range)
           (map #(* % %))
           (filter even?)
           (take 10)
           (reduce +))

user => 1140
источник

ML

Maksim Lapshin in ErlangRus
А пайп получается с list foldl в разном порядке?
источник

PG

Pïg Grëënëst in ErlangRus
Вообще есть либа с аналогом ->>, но он не так часто нужен чтобы тянуть её
источник

AG

Alexey Golda in ErlangRus
в Clojure? в Clojure нет fold right, имплементирован вроде бы reduce как раз как fold left
источник
2019 December 06

v

vtm in ErlangRus
Alexey Golda
как по мне пайп |> не очень удобное сочетание символов для набора на клавиатуре ), и он всегда как первый аргумент работает. Мне например когда пришлось немножко Elixir потрогать, было непривычно, после Clojure, где есть прямой аналог -> - thread first, но есть еше и ->> - thread last - который работает в последнюю позицию. Причем с map, filter & reduce работает именно thread last ->>, т.к. в Clojure они получают коллекцию в последней позиции, ну например:

(->> (range)
           (map #(* % %))
           (filter even?)
           (take 10)
           (reduce +))

user => 1140
Сделай пропозал в еликсир о ||> pipe last
источник

PG

Pïg Grëënëst in ErlangRus
Агли
источник

AG

Alexey Golda in ErlangRus
не, так неудобность даже не в том что нет пайп ласт, а то что само сочетание этих двух символов не очень удобное для набора, а -> / ->> как в кложе не покатит для эликсира ), но как это и субъективно и не мне терпеть )
источник

RP

Roman Pushkov in ErlangRus
vtm
Сделай пропозал в еликсир о ||> pipe last
в элике в нём смысла особого нет
источник

RP

Roman Pushkov in ErlangRus
вся стдлиба построена на том, что данные на первом месте
источник

AG

Alexey Golda in ErlangRus
плюс эликсира в том, что да, там нет смысла особого. сигнатура методов так устроена что коллекция всегда первая.
источник