@proelixir

Страница 433 из 1045
Kostetsky
17.03.2017
15:10:14
легко сказать)

Taras ?
17.03.2017
15:10:42
нет, еликсир — это ещё один язык для erlang/otp
по мне - просто много сахара, и только тот же эрланг

Alexey
17.03.2017
15:11:05
забудь что есть ооп и фп
вот кстати да. сначала тренируешься понимать рекурсию. а потом тренируешься применять стардартные либы, чтобы ее не применять.

Google
shadowjack
17.03.2017
15:11:15
Отрицать существование фп и ооп парадигм это круто

Alexey
17.03.2017
15:11:17
а потом и вообще сторонние либы, чтобы самому ничего не писать. )))

Max
17.03.2017
15:11:55
Отрицать существование фп и ооп парадигм это круто
деление на парадигмы приносит больше вреда, чем пользы

Taras ?
17.03.2017
15:12:03
Но посылать сначала учить эрланг это жестко
я после php начинал в эрланг, не сказал бы что совсем уж жесть, хотя соглашусь с тем что мосги начинают грузиться на несколько процентов больше чем обычно, хехе))

Alexey
17.03.2017
15:14:25
Тарас - если соскучился по состоянию оторвавшихся мозгов. попробуй HDL на Verilog. попрограммируй ПЛИСы. разрывы гарантированы

shadowjack
17.03.2017
15:14:32
Alexey
17.03.2017
15:14:58
Можно развить тезис?
дык. надо решать реальные задачи, а не меряться парадигмами. наверное так

Kostetsky
17.03.2017
15:15:08
ну вот например. чем отличаются кортежи и списки - это я уже понял, но вот что лучше использовать в конкретной ситуации, сложно сообразить, потому что пытаешься найти ассоциацию с чем-то из мира ооп, а ее нет)

shadowjack
17.03.2017
15:15:53
Кортежи - структуры без имён полей.

Ну а списки это списки.

Kostetsky
17.03.2017
15:16:08
))

Max
17.03.2017
15:16:56
Можно развить тезис?
приходят люди и говорят «ой-вэй, всю жизнь писал на ООП, а тут ФП, нимогу понять oče složno»

Google
Max
17.03.2017
15:17:19
читаешь туториал и пишешь программу

Taras ?
17.03.2017
15:17:24
Тарас - если соскучился по состоянию оторвавшихся мозгов. попробуй HDL на Verilog. попрограммируй ПЛИСы. разрывы гарантированы
я бы рад, да конкретная задача стоит перед/надо мной, и решить надо сначала, играться - потом

Max
17.03.2017
15:17:27
без всякой парадигмы

shadowjack
17.03.2017
15:18:05
Если нужно сгруппировать несколько значений вместе, то кортежи. Если надо итерироваться или добавлять элементы - то списки.

shadowjack
17.03.2017
15:19:01
приходят люди и говорят «ой-вэй, всю жизнь писал на ООП, а тут ФП, нимогу понять oče složno»
Ну без слов ооп и фп тебе скажут - очень сложно, переменные менять нельзя, классов нету и фора.

shadowjack
17.03.2017
15:20:26
Чтобы решать задачи нужно понимать свой инструмент, а не обязьянничать.

Max
17.03.2017
15:20:31
да

именно

берёшь инструмент, изучаешь, пишешь

shadowjack
17.03.2017
15:21:59
Вот изучить - это значит прочитать про рекурсию, паттерн мэтчинг, иммутабельные структуры данных и только потом пойти писать.

Всё это называется фп.

Kostetsky
17.03.2017
15:22:30
вобщем похоже, лучший способ - это читать гитхаб и писать свой код) нормальных академических путей изучения пока нет)

shadowjack
17.03.2017
15:22:40
Нужно не язык учить а парадигму.

А то потом получаются "программисты на php/ruby/C".

Kostetsky
17.03.2017
15:23:35
спасибо и низкий поклон за советы)

Анастасия
17.03.2017
15:24:56
https://elixirschool.com/ru/

Alexey
17.03.2017
15:25:30
кстати вот да. даже по-русски

Google
Max
17.03.2017
15:25:36
а как наиболее оптимально связать еликсир и питон?

мне надо брать данные, отдавать питон-скрипту и забирать их обратно

модифицированные

на торнадо сделать сервис наверное?

Александр
17.03.2017
15:27:51
а как наиболее оптимально связать еликсир и питон?
брокер сообщений можешь подключить

вебсокетами или по http api

зависит от задач

Rafael
17.03.2017
15:30:31
так как вы там устанавливали hex?

Alexey
17.03.2017
15:30:55
да никак. mix это команда для работы с ним

она в комплекте с эликсиром идет

Rafael
17.03.2017
15:33:46
кстати, что вы используете в качестве среды разработки? какой-нибудь атом с плагинчиками? какими?

Max
17.03.2017
15:39:03
брокер сообщений можешь подключить
по http может проще? на питоне сделать веб-сервер и дёргать

Max
17.03.2017
15:39:21
не знаю правда, насколько питон такое может

Александр
17.03.2017
15:41:37
от интенсивности общения зависит я думаю

если может понадобиться масштабирование я бы http не использовал с питоном

Denis
17.03.2017
15:43:23
? Другой вопрос интересный. При разработке больших приложений, часто необходимо управлять конфигурацией. Например: + для develop разрешить Source Maps + для stage разрешить логирование на специальный + иметь для разных сред (develop, stage, prod) разные внешние сервисы логирования, и токены для них + отключить какие-то features для develop, но включить их для prod + иметь разные пресеты конфигураций одного приложения для разных продуктов/клиентов + разные стили / логотипы / описания + разные наборы языков (например, когда новый язык ещё в разработке, он может быть в stage, но не в production) + поддерживать только определенные языки на develop Таких настроек может быть несколько десятков в крупном приложении. Часть из них могут быть доступны для переопределения через ENV. Кто как решает это? Какие практики и подходы есть в других экосистемах (Ruby, Elixir, Python и пр)?

Александр
17.03.2017
15:43:34
опиши в общих чертах суть взаимодествия и определимся что проще, не зная задачи сложно что-то советовать

? Другой вопрос интересный. При разработке больших приложений, часто необходимо управлять конфигурацией. Например: + для develop разрешить Source Maps + для stage разрешить логирование на специальный + иметь для разных сред (develop, stage, prod) разные внешние сервисы логирования, и токены для них + отключить какие-то features для develop, но включить их для prod + иметь разные пресеты конфигураций одного приложения для разных продуктов/клиентов + разные стили / логотипы / описания + разные наборы языков (например, когда новый язык ещё в разработке, он может быть в stage, но не в production) + поддерживать только определенные языки на develop Таких настроек может быть несколько десятков в крупном приложении. Часть из них могут быть доступны для переопределения через ENV. Кто как решает это? Какие практики и подходы есть в других экосистемах (Ruby, Elixir, Python и пр)?
ну и в фениксе и в рубях отдельные конфиги (не статичные файлы, а скрипты) для разных сред, приватные данные обычно передаются переменными окружения (пароли там, секреты для продакшна)

shadowjack
17.03.2017
15:45:24
Меньше всего накладных расходов

Google
Max
17.03.2017
15:46:12
но хотелось бы, чтобы оно всё отдельно работало

shadowjack
17.03.2017
15:48:45
Ну чо городить огород, проще надо быть.

Гонять json например

Александр
17.03.2017
15:56:33
Не затруднило бы показать пример (у нас другая платформа) какой-нибудь на GitHub?
конфиги в стиле феникса: https://github.com/phoenixframework/phoenix/tree/master/installer/templates/new/config в стиле рельсов: https://github.com/rails/rails/tree/master/railties/lib/rails/generators/rails/app/templates/config/environments также в своих проектах не связанных с фреймворками использую: http://stackoverflow.com/questions/14184971/more-complex-inheritance-in-yaml и https://github.com/markbates/configatron

Alexey
17.03.2017
16:16:03
да да. тут был доклад на хайлоад. там тоже была речь, что вот сначала попробовали protobuff (я вот тоже опыт имею), потом gproc (или как там он гошный), а потом в итоге пришли к json да и все. и норм

Rafael
17.03.2017
16:48:09
почему атом :42 невозможен?

Admin
ERROR: S client not available

Dmitry
17.03.2017
16:48:28
:"42"

Такой атом невозможен потому что парсер так парсит

Rafael
17.03.2017
16:49:22
никто не скажет, почему его сделали?

Alexey
17.03.2017
16:50:10
потому что смысл всего сущего

Rafael
17.03.2017
16:50:20
не, ну серьезно

Alexey
17.03.2017
16:50:40
http://lurkmore.to/42

Rafael
17.03.2017
16:51:02
ок, почему :32 не работает, если тебе 42 не нравится

Dmitry
17.03.2017
16:51:03
Возможно планировались слайсы

Google
Dmitry
17.03.2017
16:51:20
a[1:4]

shadowjack
17.03.2017
16:51:49
Ну грамматику для парсера так написали.

Rafael
17.03.2017
16:52:34
Ну грамматику для парсера так написали.
нуда, но мы же не токинизируем, а лексируем, в этом случае мы и на окружение смотрим

Dmitry
17.03.2017
16:53:05
А возможно потому что в эрланге не надо : для создания атома

И невозможно отличить тогда число от атома

Alexey
17.03.2017
16:54:02
erl is_atom('42'). true

Rafael
17.03.2017
16:54:08


Dmitry
17.03.2017
16:54:51
Ну тык :"42" ты можешь сделать, а :42 - нет

Все очевидно же блин)

Alexey
17.03.2017
16:55:39
а в ерланге 42 просто будет числом. двоеточие - это вот первый момент, который меня ломал в эликсир

shadowjack
17.03.2017
16:55:59
Вопрос почему нельзя.

Ответ: потому что создатель так сделал.

Alexey
17.03.2017
16:56:38
потому что синтаксис эликсира дает почву для большего количества неоднозначностей

к примеру, в ерланг - атом это буквы

Dmitry
17.03.2017
16:56:52
Мне нравится :, с ним по-моему все понятно

Alexey
17.03.2017
16:56:56
но можно с пробелом. тогда надо в кавычки брать

так же и тут. просто наверняка есть правило, что если ты хочешь атом из числа 42, то ты должен его взять в кавычки. так же, как в ерланге, когда ты хочешь сделать его с пробелом

с ним вообще все непонятно

Dmitry
17.03.2017
16:57:56
В эрланге все не альфанумерикал надо в кавычки

А в элике все просто - атом либо : либо большая буква

shadowjack
17.03.2017
16:58:26
И если он с большой буквы начинается тоже

Alexey
17.03.2017
16:58:37
вот к примеру, есть в ерланге dets

и там есть дурацкий атом $end_of_table

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