[Ответить в тред] Ответить в тред

02/12/16 - Конкурс визуальных новелл доски /ruvn/
15/11/16 - **НОВЫЙ ФУНКЦИОНАЛ** - Стикеры
09/10/16 - Открыта доска /int/ - International, давайте расскажем о ней!

Check this out!


Новые доски: /2d/ - Аниме/Беседка • /wwe/ - WorldWide Wrestling Universe • /ch/ - Чатики и конфочки • /int/ - International • /ruvn/ - Российские визуальные новеллы • /math/ - Математика • Создай свою

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 534 | 27 | 199
Назад Вниз Каталог Обновить

-export([erlang/1, elixir/0). Аноним 21/09/16 Срд 10:58:24  845348  
(60Кб, 1600x1340)
(74Кб, 400x400)
(89Кб, 402x500)
(490Кб, 720x405)
Наблюдая определённое число адептов этих замечательных языков, зачинаем второй официальный ОБЪЕДИНЁННЫЙ ЭРЛАНГО-ЭЛИКСИРОТРЕД!

Erlang - один из немногих функциональных языков, разработанный специально для применения в реальном мире.
OTP - платформа, содержащая огромное количество библиотек для построения приложений на Erlang, рассматривают с языком как единое целое.
Изначально ориентированный на высоконагруженные распределённые отказоустойчивые системы, тем не менее имеет более широкую сферу применения.
Среди самых популярных приложений, написанных на Erlang стоит упомянуть RabbitMQ, Riak, CouchDB, Wings3D, сервер-сайд WhatsApp и Chef.
Язык поддерживает все основные концепции функционального программирования, но при этом не перегружен академичностью, писать на нём легко и приятно.
Кажущийся с первого взгляда перегруженным синтаксис очень быстро становится привычным и интуитивно понятным.

Elixir - язык созданный для виртуальной машины BEAM, соответственно имеет те же самые преимущества. При этом имеет более привычный синтаксис в духе Ruby/Python, а также унаследовал от Lisp-семейства мощную систему макросов.

1. С чего начать?
http://www.tryerlang.org/
https://github.com/patrickgombert/erlang-koans

2. Что читать?
Joe Armstrong "Programming Erlang"
Fred Hebert "Learn You Some Erlang for great good!"
+книги из шапки ньюфаготреда

3. В чём писать?
Emacs + erlang-mode
Vim + https://github.com/vim-erlang
Sublime Text
Intellij Idea + Erlang плагин

%% принимаются предложения и замечания по шапке треда
Аноним 21/09/16 Срд 11:01:31  845352
>>845348 (OP)
https://www.youtube.com/watch?v=rRbY3TMUcgQ
Аноним 21/09/16 Срд 11:04:44  845353
Erlang Factory SF Bay 2016
https://www.youtube.com/playlist?list=PLWbHc_FXPo2i4xDdRd-sGvZZiKjSABOk4
Аноним 21/09/16 Срд 11:05:24  845354
Вот о чём давеча думал: хороший оператор |> в Elixir.
Создатели языка честно сказали, что спиздили его с F#. В Erlang чего-то такого не хватает.
Аноним 21/09/16 Срд 11:11:48  845357
>>845354
Согласен, шикарная вещь.
Аноним 21/09/16 Срд 11:14:29  845358
>>845354
В Elixir неплохо было бы завести ещё и <|
А лучше |N>, где N - номер аргумента. Как Джое предложил, в коментах к этой статье http://joearms.github.io/2013/05/31/a-week-with-elixir.html когда demeshchuk доебался, что НИТАК КАК В ОКАМЛЕ И ХАЧКИЛЕ.
Аноним 21/09/16 Срд 11:31:49  845363
(2442Кб, 3264x2448)
Ждём охуительных рассказов от тех, кто пишет на работе на Эрланге!
Аноним 21/09/16 Срд 13:19:06  845388
>>845363
А они тут есть?
Аноним 21/09/16 Срд 13:43:06  845398
>>845388
Ну я пишу (хэлловорлды, пока начальник не видит).
Аноним 21/09/16 Срд 14:20:19  845407
>>845398
двачую
Аноним 21/09/16 Срд 14:22:05  845408
>>845348 (OP)
Я прям двигатель прогресса. Оп из прошлого треда.
Аноним 21/09/16 Срд 14:46:58  845415
>>845398
Похвально. Я тоже.
Аноним 21/09/16 Срд 15:04:23  845423
>>845408
Точно помню типов из анкето-треда начала этого года, которые в работе используют Erlang. Да и вакансии есть по СНГ, так что должны быть.
Аноним 21/09/16 Срд 15:05:19  845425
>>845388
>>845423
Не в тот актор отправил.
Аноним 21/09/16 Срд 16:24:40  845461
Исходники самой вм эрланга открыты?
Аноним 21/09/16 Срд 16:25:49  845463
>>845461
Да.
Аноним 21/09/16 Срд 17:22:13  845485
Эрлангил год, в итоге проект начали переводить на скалу. Язык ниче такой, но все же
Хуйня без задач
Аноним 21/09/16 Срд 17:36:05  845498
>>845485
В какой сфере проект? Какими либами/фреймворками пользовались, типа Yaws, Cowboy, N2O?
Аноним 21/09/16 Срд 17:41:29  845503
>>845485
Александр Алексеев, ты?
Аноним 21/09/16 Срд 18:13:09  845533
(222Кб, 990x167)
>>845498
Payment systems
mnesya, yaws, N20

Изучать, прогать на языке интересно, но когда хорошо придрочишься приходит суровое понимание Хуйня без задач
Не скажу за whats app и прочие варгейминги, но многие знакомые ерлангисты рассказывали что и в других фирмах потихоньку мигрируют на друге экосистемы, обычно это jvm\scala. Скалка мертва только в фантазиях борщехлебов с pr. Так что вкатывальщикам, планирующим зашибать баблину потому что язык не дрочит каждый второй школьник как это сейчас с ява, питоном, js и которые надеятся стать таким типа нестандартным спецом язык не рекоммендую.
Для фана и ментального онанизма мастхэв.
Аноним 21/09/16 Срд 18:16:25  845539
>>845533
Для ментального онанизма ирлонг слишком прост.
Аноним 21/09/16 Срд 18:16:26  845540
Эрланг - это говно, а не язык.
Скоко там игр написано на Эрланге-то?
Аноним 21/09/16 Срд 18:19:42  845545
>>845533
Реально стоит вкатиться в скалу?
Аноним 21/09/16 Срд 18:20:16  845546
ОП очень плохой человек, очень. Взял смешал говно и конфетку.

Вот зачем нужно было сюда пропихивать эликсир. Тот единственный , прочитавший шапку анон
Аноним 21/09/16 Срд 18:20:58  845551
Джо Армстронг - физик, а все физики. как известно, геи.
Аноним 21/09/16 Срд 18:22:13  845552
>>845551
Алан Т. одобряет.
Аноним 21/09/16 Срд 18:22:17  845553
>>845533
Раз вы не на эликсир переходите, то видимо с самой платформой что-то не так. Чем устроила jvm и не устроила beam? Или вам очень статической типизации захотелось?

мимо-эликсир-феникс-фуллтайм-макака
Аноним 21/09/16 Срд 18:23:37  845556
>>845545
Нет. Это говно, а не язык, ещё и на убогой кривой платформе. Знаю минимум джва крупных проекта, которые съябывают с жвм и скалы в частности.
Аноним 21/09/16 Срд 18:25:43  845559
>>845556
Лол. Куда можно со скалки перекатываться?
Аноним 21/09/16 Срд 18:30:23  845568
>>845559
Куда угодно. Язык-то объективно хуёвый, громоздкий и многословный как её отсталая старшая сестра. Олсо, жду уже полномасштабного её форса с дальнейшим вливанием зиллионов индусов в и без того блевотное скала-комьюнити с последующим скатыванием в русский джява мир.
Аноним 21/09/16 Срд 18:35:37  845574
>>845568
Ясное дело, что скалка не идеальна, однако совсем не ясно, куда может быть целесообразно валить.
На жабу? Так "валить" не требуется, жвм есть жвм.
Шарп? Те же яйца, вид сбоку.
Традиционная динамикопараша? Кложурапораша? Хаскелль? Выигрыша перед скалкой как-то не видно.
Аноним 21/09/16 Срд 18:40:06  845579
>>845539

На скалке много готовых решений для задач фирмы.
Расскажи чем сам занимаешься? тут в pr эликсир и феникс форсят как хипстера-наследника RoRНадеюсь это был не ты

>>845553
Хз, хз мне скалка куда легче зашла, хотя с функциональщиной был знаком еще до нее
Аноним 21/09/16 Срд 18:49:44  845586
>>845540
На эрланге пишут сервера для игр, а не игры.
Аноним 21/09/16 Срд 18:51:08  845589
>>845579
>тут в pr эликсир и феникс форсят как хипстера-наследника RoR
Нет, не он, это я. Но всё так и есть. Задачей Ruby/RoR было вернуть фан в программирование, Elixir/Phoenix - славные продолжатели этой традиции. Во-вторых, RoR в своё время был самой прогрессивной веб-бекенд технологией, сейчас эта эстафета перешла к Phoenix и никакие парашные Play 2 даже рядом не валялись.
Аноним 21/09/16 Срд 18:54:55  845590
>>845589
Что в нем такого прогрессивного, в чем профит? Кроме очевидных преимуществ, даваемых BEAM и совершенно нинужных в 99 случаях из ста.
Аноним 21/09/16 Срд 19:01:56  845595
>>845590
Правильный подход к флоу веб-бекенд приложения вообще, к работе с DB-сущностями, выдаче представления, работе с сокетами и очередями и много другое.
Попробуй, базарю ещё захочешь.

>совершенно нинужных в 99 случаях из ста.
А вот и нихуя. Нужно почти везде, где есть риалтайм.
Аноним 21/09/16 Срд 19:06:14  845596
>>845595
Слишком абстрактно звучит. Профиты интереснее выглядят, когда есть хоть какое-нибудь сравнение. В Koa, например, поток мне кажется идеальным: получаем запрос — передаем вниз по цепочке миддлевари — всплываем обратно по этой же цепочке — выдаем ответ. Как он выглядит в Фениксе?

>Нужно почти везде, где есть риалтайм.
Согласен, нужно, где есть реалтайм. И ненужно для 99 веб-проектов из ста.
Аноним 21/09/16 Срд 19:31:21  845603
>>845596
Проход в одну сторону по конвейеру от фронтконтрллера до вью, так же через подключаемые на разных уровнях миддлвари (плаги). Плаги подключаются почти на любом уровне, от объявления пайплайна и декларации его использования в конкретном скоупе в роутере, до использования в любом модуле или даже отдельной функции.
Это, плюс простота создания DSLей позволяет писать большую часть приложения вообще декларативно, сама логика есть только чуток в контроллерах и в командах.
Аноним 21/09/16 Срд 19:32:10  845604
>>845596
>И ненужно для 99 веб-проектов из ста.
Хуй знает, это что-то из мира пехепе и майэскюэль. Давно с таким не встречался.
Аноним 21/09/16 Срд 20:01:01  845622
https://www.youtube.com/watch?v=G0eBDWigORY
Аноним 21/09/16 Срд 22:18:55  845754
>>845579
Мы на него с RoR как раз и мигрируем. Работаю в основном с беком, хотя иногда и с фронтом, в уже довольно большом стартапе связанном с займами.
Аноним 21/09/16 Срд 22:25:21  845761
>>845754
Ах да, когда выбирали на что мигрировать я был за скалу, но тим лид пропихнул эликсир. Поначалу было обидно, что такой-то шанс поднабраться опыта в скале упустил, но сейчас мне очень даже норм.
Аноним 21/09/16 Срд 22:27:31  845764
(43Кб, 200x200)
>>845546
Хипсторы попросили.
LFE вот оказался незаслуженно обделён вниманием, в следующей шапке упомяну и его.
Аноним 21/09/16 Срд 22:49:14  845779
>>845761
Слушай Batyu. Тимлид дело знает.
Аноним 21/09/16 Срд 23:48:42  845809
А давайте кто-нибудь на мои тупые вопросы ответит:
- как создать race condition в эрланге? (я знаю что это можно сделать)
- можно ли написать программу которая попадет в дедлок?
- алсо, с чего можно начать если хочешь разобраться в моделях параллельных вычислений (акторы, пи-исчисление, cps и все такое). Знаний в CS на уровне первокура, если не меньше
Аноним 22/09/16 Чтв 00:42:34  845830
>>845388
я пишу на эликсире

>>845809
1. зачем? Обычно пытаются от них избавится.
2. программа в дедлок не попадет, можно заблочить (но это довольно сложно) пару процессов которые циклично будут ждать ответа друг от друга если ты лошпен не прописал таймауты и не юзаешь otp (otp прописывает 5 сек таймаут для всего по дефолту именно чтобы новички не стреляли себе в ногу)
3. пи исчисление и cps мне не знакомы, за акторы посмотри вот это https://www.youtube.com/watch?v=7erJ1DV_Tlo


Аноним 22/09/16 Чтв 02:55:07  845874
>>845830
> зачем? Обычно пытаются от них избавится.
Чтобы от них избавиться, надо знать где они могут возникнуть. Ладно, это я балды. Просто мысля на досуге, может возможно доказывать что в такой-то программе при таких-то условиях гарантированно не будет гонок/дедлоков.
Ну типа как в coq'е иногда доказывают корректность для safety-critical софта.
Жаль я в этом слабо пока шарю.
За видео отдельное спасибо
Аноним 22/09/16 Чтв 06:43:21  845911
>- как создать race condition в эрланге? (я знаю что это можно сделать)

Например, создать gen_server, который инкрементирует значение переменной в своем стейте по сообщению, которое посылает сам себе по таймеру, скажем, каждую миллисекунду. Так же он может вернуть значение этой переменной из стейта. И есть несколько процессов-воркеров из другого gen_server, поведение которых как-то зависит от читаемой переменной. Если при подразумевается, что они должны одновременно прочитать значение и это как-то повлияет на их поведение, то будет тебе типичное состояние гонки.
Аноним 22/09/16 Чтв 07:10:31  845916
>>845603
Это есть везде. Даже в сраных сервлетах жабовских. Все аргументы какие-то детские и пустозвонкие. Ты можешь что-то конкретное привести? Потому что вот эта вот
>простота создания DSLей
лишь пук в лужу.
Аноним 22/09/16 Чтв 10:14:16  845978
>>845603
>В Koa, например, поток мне кажется идеальным: получаем запрос — передаем вниз по цепочке миддлевари — всплываем обратно по этой же цепочке — выдаем ответ.
Django и куча других фреймворков работает так уже довольно давно. Но только завезли ЖС-дебилам, сразу начинается ИДЕАЛЬНО, О БОЖЕ 10 ИЗ 10!
Аноним 22/09/16 Чтв 10:47:58  845987
>>845916
Просто иди нахуй, даун.
При желании ты мог бы сам за 15 минут всё нагуглить и посмотреть, но тебе похуй, тебе не интересно, ты просто хочешь устроить срач ни в чём не разбираясь, потому что ты предвзятый пидарас, который всё будет подводить под то, что ЭТА УЖЕ ЕСТЬ ВИЗДЕ, будь это хоть 100 раз не так.

Тебе сказали что отличие есть, сказали в каких именно местах. Дальше, если бы ты не был пидарасом, ты мог бы поставить эликсир и феникс за 2 минуты и ещё за 10 минут развернуть прилу и посмотреть что да как. Вместо этого ты начинаешь кукарекать что тебе не объяснили, всё слишком абстрактно, что вот в коа (как будто кто-то обязан знать очередной нодопердильный недофреймворк) всё идеально, сам при этом нихуя толком не объясняя НУ ТАМ МИДЛВАРИ ЕПТА ТУДЫ-СЮДЫ. Уже на этом моменте тебя следовало бы послать к хуям, но тебе всё же ответили на том же уровне как проходит реквест, что там однопроходной конвейер, тоже мидлвари + MVC, только за счёт фениксовой метамагии декларативно описывается на eDSLке. Ты, вместо того чтобы разобраться или хотя бы прочитать одну из сотен сравнительных статей, продолжаешь чирикать что всё это детсад и дайте конкретные примеры. Просто укатывайся обратно в свой жс-тред, анальный ты клован.
Аноним 22/09/16 Чтв 10:56:33  845990
>>845987
А ну ты значит из тех которым из пустого в порожнее DSL-и из DSL-ей лепить в кайф? А тут еще шедулить шедулером DSL-и можно. И даже делать DSL шедулинга DSL-ей. Охуеть как. Люди там распределенные системы, субд, ОС пишут, программируют вещи в интернете и только руби-программисты декорируют декораторы и перекладывают с формы в базу и обратно (DSL-ями). А эликсир программисты к тому же и пошедулить DSL-ями могут. Системы автоматического управления автомобилем на эликсире не пишут, но если когда-нибудь будет предоставлен API для распределенного шедулинга, можно будет написать DSL для всего этого.

Аноним 22/09/16 Чтв 11:00:17  845991
>>845978
Ой, иди нахуй. Я не говорил, что это есть только в Koa, я лишь привел пример, с которым мне интересно было увидеть сравнение.
Аноним 22/09/16 Чтв 11:09:12  845994
>>845991
Что ты хочешь от ребенка? Он еще плохо разбирается в програмной инженерии и не способен отличить яркие фантики от серьезных вещей (судя по тексту). Может, кроме эликсира и сравнить ему не с чем.
Аноним 22/09/16 Чтв 12:03:14  846008
>>845994
>Koa, Node, JS
>Он еще плохо разбирается в програмной инженерии и не способен отличить яркие фантики от серьезных вещей.
Сходи зависимости проверь, вдруг нпм-плагин какой удалили.
Аноним 22/09/16 Чтв 12:06:11  846009
>>845994
>нодоперделка
>джиява сервлеты
>серьёзных вещей
Толсто.
Аноним 22/09/16 Чтв 12:07:36  846010
>>845990
Прими таблетки.
Аноним 22/09/16 Чтв 12:13:49  846012
Не понимаю откуда срач, а всех языках веб параша делается одинаково, будь то си или хаскель, просто на эликсире ее делать более приятно чем на эрланге (есть удобные структуры которые более компактны в коде и можно мапить всякие жисоны туда-сюда). Сам феникс весьма деревянный, экто странный. На рельсах ту же самую вебопарашу делать было много приятней. Единственный плюс эликсира в том, что под капотом эрланг с полным интеропом и это открывает перед разработчиком хуилион возможностей которых в других языках не будет никогда. Но нет блять мы будем сраться по поводу чем мидлвари коа отличаются от мидлварей феникса, пиздец, да ваще ничем не отличаются. То что должно быть важно, так это семантика джаваскрипта и семантика эрланга и что эта семантика позволяет сделать. Кто хочет писать магазины на ноде тот пусть и пишет, это его дело, что ему в этом треде делать?
Аноним 22/09/16 Чтв 12:45:24  846023
Завтра аж митап по Эликсиру в ДС:
http://tceh.com/event/elixir-lang-moscow/
Аноним 22/09/16 Чтв 12:50:03  846025
>>846023
А смузи будут подавать?
Аноним 22/09/16 Чтв 12:52:19  846026
>>846025
Да, с фалафелем.
Аноним 22/09/16 Чтв 13:11:09  846035
>>846012
Срача нет. Есть майевтика фанбоев в форме ненавязчивого троллинга.
Аноним 22/09/16 Чтв 20:30:30  846250
>>846023
хуйня стыдная, как в принципе и все митапы. Пару дней назад прошел Erlang User Conference. уже есть видосы и слайды в сети
Аноним 23/09/16 Птн 11:04:31  846565
Затянул эликсир. Но судя по эко-системе эрланга он уж слишком заточен под определенный круг задач, что в общем-то очень даже хорошо.
Но минус в том, а что можно на нём эффективно мелкое писать для себя, пользуясь его преимуществами? Подкиньте идей пожалуйста.
Аноним 23/09/16 Птн 11:32:08  846570
>>846565
Да хоть гостевухи на нем пиши.
Аноним 23/09/16 Птн 11:35:11  846571
>>846565

эликсир скорее заточен именно на одну задачу, делать веб в эрланговских проектах, например такая офигенная фича эрланга как битсинтаксис не реализована в эликсире совсем, эликсир приманивает рэилс разработчиков своим феникс фреймворком. Но потом новички знакомятся с декларативной парадигмой и эрлангом и через пол годика мы получаем нового человека. Почитай programming erlang джо армстронга, learn you some erlang for great good или Erlang/OTP in action. А лучше их все, так как они рассматривают эрланг с разных точек зрения. Если будешь знать эрланг, то будешь знать и эликсир ибо это лишь чуток другой синтаксис и веб-тулинг.
Что реализовывать в эрланге чтобы насладиться его возможностями - можешь попробовать сделать мессаджинг, стриминг, распределенную базу данных, какую-нибудь p2p сеть, какой-нибудь биддинг, сервер для ммо, tcp-text бейзед имеджборду лол или платформу по запуску вебприложений (типа хероку). Все это интересные задачи. Только не делай казино, делай полезные системы.
Аноним 23/09/16 Птн 15:24:26  846671
>>846571
>Только не делай казино, делай полезные системы.
Казино делаю на работе, лол.
А коллега посадил на эликсир, ознакомился совсем немного с эко-системой эрланга, очень впечатлен, правда после ооп головного мозга немного мозг восстанавливать надо чтобы программировать по-настоящему.
Аноним 23/09/16 Птн 15:47:51  846686
>>845754
Ненавижу вас займеров! Пидоры ебаные! Почему вас как казино всякие не запрещают?
Аноним 23/09/16 Птн 16:30:41  846725
>>846571
Что такое биддинг?

Распределенный чат хорошая идея для вката в erlang\otp или такого сейчас как говна и спмописных имиджборд?
Еще как-то думал о самописной поисковой системе для всем известной социалочки. Такая задача хорошо ложиться на философию erlang\elixir?
Аноним 23/09/16 Птн 16:50:10  846744
>>846725
>Что такое биддинг?
баннерные\рекламные сети, автоматизированные торги, хотя торги это уже ближе к трейдингу но они оба примерно одинаковые задачи решают, тут есть много маленьких асинхронных операций которые должны в софт-реалтайме отдавать ответы, эрланг для этого дизайнился.

>Казино делаю на работе, лол.
Жизнь не такая долгая. Программисты получают хорошие деньги и мы можем выбирать, чем нам заниматься. В конце жизни мне лично будет приятно вспоминать о том, что я создал что-то полезное, а не что-то что паразитировало на чужих слабостях.
Аноним 23/09/16 Птн 17:00:01  846749
>>846744
> В конце жизни мне лично будет приятно вспоминать

Тащем - то программисты занимаются автоматизацией и сокращением рабочих мест.

А вообще, вряд ли ты будешь об этом вспоминать в конце жизни.
Аноним 23/09/16 Птн 17:32:10  846772
>>846686
Платеж за микроволновку просрочил что ли? Можешь тушиться, мы займами для малого/среднего бизнеса занимаемся.
Аноним 23/09/16 Птн 17:33:58  846773
>>846749
>Тащем - то программисты занимаются автоматизацией и сокращением рабочих мест.
Тащем-то программисты снижают порог вхождения во многие профессии, и таким образом занимаются созданием новых рабочих мест.
Терпи.
Аноним 23/09/16 Птн 17:45:48  846778
>>846773
Расскажи это людям, которых уволили/не наняли после переезда на мой софт.
Аноним 23/09/16 Птн 21:39:24  846949
(51Кб, 423x578)
>>845987
Вот это хипстерка разнесло!
Аноним 23/09/16 Птн 21:42:49  846953
>>846949
битордик_палится.jpg
Аноним 23/09/16 Птн 22:13:39  846970
>>846571
>заточен именно на одну задачу, делать веб
Elixir умеет всё то же само, что Erlang.

>фича эрланга как битсинтаксис не реализована в эликсире совсем
Щито? Полностью то же самое поддерживается, тот же паттерматчинг, сайзинг, маскирование, указанием типа.
http://www.zohaib.me/binary-pattern-matching-in-elixir/

>приманивает рэилс разработчиков своим феникс фреймворком
Он пытается приманивать вообще всю прогрессивную молодёжь, а вот Erlang - язык для усатых марсиан из 80х, потому то The Cool Kids Don't Use Erlang, и это заведёт его в могилу рано или поздно. Ещё забавно, что до феникса под BEAM вообще не было нормальных вебфреймворков, всякую сцанину типа чикагобос, зотоник и цмску N2O вообще считать не будем, настолько это всё прошлый век и говно деревянное.

Олсо, в качестве критики в сторону Erlang: полное отсутствие хоть какого-то полиморфизма (ad-hoc на арности и типах функций - хуита в стиле паскаля и этого явно мало). Ну и говняный parse_transform (который ещё и выпилили с 17 версии) вместо метапрограммирования, совсем недавно только запилили более менее мощные либы под него, но все они громоздкие, сложные и видно что прикручено сбоку. Elixir же частично решает первую проблему, вводя кложуровские протоколы, и вторую, вводя нативное метапрограммирование, с квазицитированием, антицитированием и т.д. Ещё можно сказать про неймспейсы, нормальные способа импорта, которых в Erlang не было, и которые появились в лишь Elixir. Ну и прочие чисто инрфструктурные штуки, типа адекватного пакетного менеджера (rebar перестал быть говном только с 3 версии, да и в отличие от mix не имеет подключаемых к нему плагинов) и нормальная система кофигурирования. Так же появились стримы (в Erlang никакой эмуляции ленивости вообще никогда не было) и удобные конкурентные абстракции (как блять имея в Erlang такую пиздатую элементную базу не запили даже сраный async/await я не понимаю).

Короче, Elixir это именно капитальная модернизация Erlang и перевод его в это тысячелетие, а не просто какой-то там вебтулинг.
Аноним 23/09/16 Птн 22:21:01  846979
>как блять имея в Erlang такую пиздатую элементную базу не запили даже сраный async/await я не понимаю
Поясни, зачем оно нужно если есть spawn/receive? Это же другая модель конкуррентности, нет?
Аноним 23/09/16 Птн 22:40:59  847003
>>846979
В Elixir тоже есть spawn/receive, просто spawn/receive - это низкоуровневая конкурентная штука. Часто в Erlang поверх него приходится лепить свои абстракции, заворачивать в функции, реализовывать свои протоколы. Elixir вводит две конкурентные абстракции Task и Agent, которые хорошо подходят для общих случаев.
Аноним 23/09/16 Птн 22:41:45  847004
>>846970
Вот этому два параллельных процесса. Всё чётко расписал.
Аноним 24/09/16 Суб 01:53:43  847093
>>846970
Каюсь! Не видел битсинтаксиса ни разу в эликсире ваще нигде и думал что его нету. Наверное мое отношение предвзято, потому что в эликсире x = x + 1 валидное выражение и поэтому у меня от него перманентный батхерт, хотя и им сейчас и зарабатываю на жизнь. Но как-то протоколы мне никогда и не были нужны, синтаксис эликсира считаю уебищным хоть я и рубиеб в прошлом. hex и mix рили за что эликсир стоит уважать, они ахуенно повлияли на сам эрланг. Это хороший пример как надо рулиться и сейчас ребар3 будет включен в otp в 20-м мажорном релизе. Ленивость можно сделать самому в пару простых функций в исключительных случаях когда она нужна. парстрансформы говно, да, но и за quote unquote в продакшен коде тебя выебут, годится только чтобы делать дсли для библиотек. Таски и агенты удобны чтобы что-то быстро наваять но при первых же изменениях требований всеравно переписываются на генсерверы. Асинк и авейт можно написать самому в пару строчек. В общем наверное я усатый марсианин из 80, только родился в в девяностых. Согласен что некоторые вещи в эликсире сделаны приятно, веб-тулинг например лол. Но x = x + 1 это пиздец имхо. Главная претензия у меня к эликсиру в том, что все эти рюшечки погремушечки и обвесы мешают мыслить декларативно и асинхронно, я понимаю что это звучит очень субъективно. Но блять x = x + 1. Что ты можешь сказать по этому поводу? Реально надо идти на поводу у крутых детей чтобы такое завозить в язык?
Аноним 24/09/16 Суб 03:02:48  847125
>>847093
x = x+ 1 это маразм конечно
главное что не нужно, в основном я догадываюсь макаки будут пользовать когда не смогут название новой переменной придумать
т. вкатывальщик-скриптомакак
Аноним 24/09/16 Суб 05:31:12  847135
Приветствую, браться. Я руби-миддл, по совместительству ОП руби-треда. На руби пишу в основном функциональный код с иммутабельными структурами данных, так что Эликсир мне весьма по душе. Кстати, уже сейчас работу на Phoenix можно найти на https://rubyjobs.ru
Аноним 24/09/16 Суб 05:32:05  847136
>>847135
http://rubyjobs.ru
в HTTPS не смогли, суки
Аноним 24/09/16 Суб 12:16:20  847213
>>847125
>>847093

От чего у вас, обезьяны, с x = x + 1 жопу рвёт?
Вот по существу?
Аноним 24/09/16 Суб 12:58:32  847244
>>847213
Садись, два тебе по математике.
Аноним 24/09/16 Суб 13:13:51  847251
>>847244
Но ведь я вангую что это не присваивание, а та же декларация с затенением старого имени x как в sml или нет?
Аноним 24/09/16 Суб 13:21:17  847256
>>847093
Где работаешь, сколько платят? Сам рубист, хочу давно в эликсир, но никак не срастается пока.

>>847135
А ну покажи.

Аноним 24/09/16 Суб 13:34:16  847263
>>847213
Начитались статей от западных "математиков". У нас в школе информатика была с 10го класса только, и когда нам объясняли x=x+1, никто не удивлялся и не заявлял и "нематематичности". А вот один американский дурачок удивлялся, потом написал об этом статью, и теперь макаки ему подражают, чтобы казаться умнее.
Аноним 24/09/16 Суб 13:38:38  847267
>>847263
Два актора адеквату

Еще всегда проигрываю со статей о том что 90% программистов не понимают сути указателей и поэтому в принципе не могут в сишку. Почему-то в моем окружении 100% понимают концепцию, даже ваниль-тян в розовых стрингах.
Аноним 24/09/16 Суб 13:41:19  847269
>>847263
>>847251
При этом эти же макаки нахваливают data immutability в языке. Может даже в одном предложении.
Аноним 24/09/16 Суб 13:58:55  847277
>>847213>>847251
Ребайндятся переменные.
Да, я отличаю single assignment и immutability, и понимаю что в эликсире убрали только первое, и да это мне не нравится.
За sml не скажу, но в Caml есть мутабельность, о которой чаще всего надо специально просить (let mut var = 4). То есть ты явно пишешь что переменная writable.
Но Caml собственно для других задач делался, по производительности он кстати делает многие языки и даже может использоваться как числодробилка, но при этом ЕМНИП до сих пор не может в concurrency нормально.

Я кодил на питоне, жс, немного перл видел. Все императивные. За пистон скажу что в общем-то всегда, абсолютно без исключений когда видел повторный байндинг переменной вида x=f(x) вне лупа, он был там нах не нужен, ни для читаемости ни для чего-то еще.
Ты просто увеличиваешь количество потенциальных ошибок. При том что фп там вообще перпендикулярно.
Аноним 24/09/16 Суб 13:59:12  847278
Работаю на Эрланге (за деньги).

Понимаю, что экосистема Эрланга - одна из самых уебищных в индустрии (даже в Питоне лучше).
Что синтаксис неприятен императивным дебилам.
Что толковых фреймворков для веба нет (N2O-баттхерты в студию).

Вопрос: зачем нужен Эликсир? Почему бы не попытаться решить проблемы существующей технологии, не плодя N+1 стандарт?
Фред Хеберт вот пилит rebar3, можно помочь ему.
OTP-команда наконец-то перевернула календарь и смогла в нормальные багтрекинги, релизы и проч.
Аноним 24/09/16 Суб 14:03:21  847279
>>847277
Двачну.
Аноним 24/09/16 Суб 14:03:46  847280
>>847093
> Но блять x = x + 1. Что ты можешь сказать по этому поводу?
Иммутабельность означает что твои data structures не меняются. Локальный ребиндинг сам по себе не является чем-то плохим, и я понимаю в чём поинт Хосе, который он озвучил ещё в Programming Elixir. Если структуры не меняются ни локально, ни из другой точки программы, ни из другого треда - то переменные никакие не переменные, а просто лейблы, и от их реюза ничего не меняется. Баттхёртят от этого только клоузмайнды под эффектом утёнка, что ой блять как они посмели - убили нашу священную корову.

Касательно остальных аргументов НИНУЖНО и МОЖНАСДЕЛАТЬ - ну так тебе не нужно, а кому-то как раз не хватало. Удобство феникса обусловлено как раз метапрограммированием, ты можешь сам его не использовать, но используя феникс - ты уже пользуешься тем, что было сделано с его помощью. Подключая какой-нибудь JaSerializer, который позволяет описывать JSON-API вьюхи вообще декларативно, как модели - ты пользуешься тем, что кто-то запилил либу с едслькой. В Erlang этого не было, и например, авторы mochiweb пердолились с parse_transform, а могли бы сразу юзать нормальные средства, если бы они были. То же самое с протоколами, я вообще не понимаю как они могут быть нинужны, если до них не было нормальных средств делать обобщённые функции над разными типами коллекций и структурами. Всё что в Erlang было, это сраный behaviour и extends (который к счастью выпилили в 17). Наличие Enum это просто охуенно и это обязано именно протоколам. Возможность к той же Ecto Model (да и прочим высокоуровневым структурам) применять функции из стандартных протоколов - повышает органичность, чистоту и понятность кода при работе с ним.

>Не видел битсинтаксиса ни разу в эликсире ваще нигде и думал что его нету
Это, возможно, потому что в Elixir в отличие от Erlang'а есть нормальные строки, а не отмазки, что список циферок это строка. Поэтому в Erlang как правило ложат хуй на стринги и данные от инпута до аутпута протекают в бинарном виде. Это конечно норм, если у тебя там какая-то низкоуровневая штука, вроде пересылки бинарных пакетов туды-сюды по олдовому протоколу. Но когда работаешь с более высокоуровневой областью (да тот же уеб), то нужны именно строки. Поэтому в Elixir I/O тоже в бинари, но вот во всяких либах/фреймворках - опционально, и народ выбирает строки, потому что в отличие от Erlang боятся нечего и строка это просто строка.
Аноним 24/09/16 Суб 14:04:19  847281
>>847278
Эм, а почему не Эликсир, если он уже есть? Бери и пользуйся или тебе поныть?
Аноним 24/09/16 Суб 14:13:52  847285
>>847278
Может плохая аналогия, но в мире жс появился коффескрипт (тоже рубисты сделали).
Потом вышла новая версия ES, и некоторые фичи из коффескрипта засунули в жс (сам коффескрипт сейчас уже малопопулярен, но это другая тема).
То же со скалой и жавой.
Т.е. это необязтельно плохо.
Аноним 24/09/16 Суб 14:17:58  847287
>>847278
Л Е Г А С И
Е
Г
А
С
И
Аноним 24/09/16 Суб 14:22:14  847289
>x = x + 1
Но ведь это уравнение не разрешимо на области действительных чисел. Что за ерунду портвешковые байтодурачки придумали в очередной раз?
Аноним 24/09/16 Суб 14:30:30  847294
>>847289
Ты как сюда попал? На доске такое не пишут.
Аноним 24/09/16 Суб 14:34:52  847296
Смысл персистентных структур в том, что все их версии не уничтожаются до выхода из скоупа. Ребиндинг же уничтожает старую версию, заменяя новой. Десктруктивный апдейт, другими словами. Если он локальный и не содержит сайд-эффектов, то в принципе, вроде даже референс трансперти не нарушается, но если есть работа с World, то тут нужны мандады или линейные типы, чтобы проконтролировать что никто не обосрался. Но так как в Erlang/Elixir все изначально ложили хуй на тайп-сейфети, то всё похуй.
Аноним 24/09/16 Суб 14:43:19  847300
>>847289
Очередной питушок из пидорахинского унивирситета, которому с детства отождествили понятия программирования и математики, что по факту пережиток далёкого прошлого, как и местная система образования с царицей наук во главе.
Аноним 24/09/16 Суб 14:50:12  847302
Удивительно, как на одной доске соседствуют чёткие пацанчки и тотальные дебилы.

Ананас >>847296 >>847280 два чая тебе за свет в массы.
Аноним 24/09/16 Суб 14:55:06  847304
>>847296
>Ребиндинг же уничтожает старую версию, заменяя новой
Если старая версия используется, то она продолжает использоваться после ребиндинга, если нет то невозбранно уничтожается сборщиком, все логично.

Поправь еслине троль я что то недопонел.
Аноним 24/09/16 Суб 15:00:50  847307
(24Кб, 481x275)
Эти плебеи, даже не слышавшие про изоморфизм Карри-Говарда ещё и имеют наглость хамить. Представляю, какого будет их удивление, когда через несколько лет программирование наконец будет сведено математике и станет предметом нормальных людей, а не специально выведенных компьютерных аутистов с их мерзкими указателями и архаичным байтомирком. Даже не знаю что им придётся предпринять, устроиться в ближайшую закусочную официантом или же сразу наложить на себя свои грязные мазутные ручонки.
Аноним 24/09/16 Суб 15:11:37  847312
http://blog.plataformatec.com.br/2016/01/comparing-elixir-and-erlang-variables/
Ну вот собсна адекватный пост на тему от эликсироадепта.
Я конечно несогласен вообще ни разу, но свой пойнт он объясняет.
Ребятам хочется так.
x = chlen
x = f(x)
x = g(x)
x = h(x)
Но эти проблемы прекрасно решаются компоновкой функций.
Пока писал еще параллельно функцию пайп написал.
W = pipe(x, [f, g, h]). Делает то же самое абсолютно, простой фолд.
ЕМНИП, сам факт того что эликсирщики добавили в язык иероглиф ^ который гвоздями прибивает переменную, характеризует.
Аноним 24/09/16 Суб 15:14:35  847313
>>847304
Как она может продолжать использоваться? Её потёрли. Персистентные структуры, это когда ты такой
A = something:new(),
B = something:do_something(A),
C = something:do_something_else(B)

и у тебя есть все версии структуры, самая первая связана с A, связана с B, третья с C и они будут уничтожены только тогда, когда ты выйдешь из скоупа.
С ребиндингом же:
a = Something.new()
a = Something.do_something(a) %хуяк тут проебали старую версию структуры, потому что a теперь связана с её новой версией, а со старой уже ничего не связано, но при этом ты ещё не вышел из скоупа
b = Something.do_something_else(a)

Аноним 24/09/16 Суб 15:14:42  847314
>>847307
> маняфантазии борщехлеба
Аноним 24/09/16 Суб 15:15:32  847315
>>847313
>вторая связана с B

fastfix
Аноним 24/09/16 Суб 15:17:27  847316
>>847313

персистентность тащем-то не означает, что прям нужно хранить все состояния. Достаточно иметь контрольную точку и команду изменяющую состояние. Тогда полностью персистентная структура сводится к дереву команд применяемых к начальному состоянию.
Аноним 24/09/16 Суб 15:18:23  847317
>>847316

хотя если команда деструктивная, то дельту измениний надобы сохранить. да
Аноним 24/09/16 Суб 15:34:12  847326
>>847313
>хуяк тут проебали старую версию структуры, потому что a теперь связана с её новой версией, а со старой уже ничего не связано, но при этом ты ещё не вышел из скоупа
И что в этом плохого? Пусть память жрёт, что ли?
a = Something.new()
a = Something.do_something(a)
b = a
a = Something.do_something_else(a)
И пользуйся старым a через b, если тебе это надо. На тебе аналогичную претензию:
a = f (2 + 2) %хуяк, тут проебали результат выражения 2 + 2, но при этом ты ещё не вышел из скоупа
b = do_something(a);
Аноним 24/09/16 Суб 15:54:26  847332
>>847326
> Пусть память жрёт, что ли?
Вот вообще ни разу не аргумент.
Когда есть single assignment, о корректности программы проще рассуждать.
Плохо когда в один момент вычислений Х=2, в другой Х=4.
Я хочу знать что где бы в рамках одного скоупа я ни увидел Х, это именно тот же самый Х.
И еще раз, функции прекрасно пайпаются и компонуются, и получается читаемо даже с синтаксисом эрланга.
Тебе не нужно байндить переменную больше одного раза, просто собери все функции в одну.
Или в несколько функций, если хочешь сохранять промежуточные результаты.
Аноним 24/09/16 Суб 15:56:03  847334
>>847326
Ты просто не понял о чём идёт речь.
Аноним 24/09/16 Суб 16:15:47  847350
>>847280
>Локальный ребиндинг сам по себе не является чем-то плохим
Но зачем? Я, как и пара анонов сверху поддерживаю идею что надо делать композицию функций и преобразовывать структуру данных декларативно, а не дробить все на какие-то блядские шажочки и биндить все к одной переменной как какой-то императивный дебил, конечно в эликсире нету всяких точек и долларов как в хацкеле, но есть |>, так зачем надо перебиндивать переменные, какую проблему это решает когда в исходном эрланге уже был сингл асайнмент. Какую проблему этим самым решили?
Да, убили мою священную корову и я не понимаю зачем это было делать.
Аноним 24/09/16 Суб 16:53:12  847382
>>847307
Вообще то не примазывайся, сейчас макают псевдо-функциональщиков, подорвавшихся на x = x + 1. До байтоёбов очередь еще не дошла. Так что не надо тут стрелочки переводить, в очередь на порку.
Аноним 24/09/16 Суб 16:55:47  847385
>>847350
Деклартивно преобразовал тебе за щеку. Пнятнько?
Аноним 24/09/16 Суб 17:02:09  847388
>>847385
Пнятненько, ожидал какую-то нормальную дискуссию на дваче, был дураком. Исправлюсь.
В общем всех эликсирщиков прошу простить меня, я зря поебывал им голову со своей декларативностью, кому это надо когда есть новые быстрые рельсы. В любом случае эликсир это позитивное явление, я его всячески поддерживаю.
Аноним 24/09/16 Суб 17:06:27  847392
http://thisotplife.tumblr.com/post/79636930817/seeing-people-flock-to-elixir
Аноним 24/09/16 Суб 17:08:05  847394
>>847388
Спору нет, позитивное. Два чая за оптимизм.
Аноним 24/09/16 Суб 17:28:37  847401
>>847350
>и я не понимаю зачем это было делать
А почему это не делать? Убрали ненужное ограничение, которое ничего не меняет.

>что надо делать композицию функций и преобразовывать структуру данных декларативно
Ну понимаешь, имея лишь голый |> без функторов/монад ты не можешь делать чейнинг всего. Там где значение подходящие - можешь, но там есть сайд-эффекты или где нужно что-то из чего-то распаковывать - нет. Допустим у тебя есть функция a которая возвращает эрланговский вариант Maybe, то есть {ok, Result} | {error, Reason}, где Result - скажем список. А вторая функция b принимает список. Ты уже не можешь их счейнить. Были бы функторы/монады, всё в инстансе было бы определено, а так - придётся пошагово ручками распаковывать. Да и вообще есть много мест где нужно именно выстраивать порядок вычисления, и в том же Haskell зделоли do-нотацию для эмуляции императивности, чтобы не пердолится с лямбдами и их склейкой, да и просто есть let и where чтоб не подставлять всё в огромную лямбду, тут даже не в порядке вычисления дело, а в удобстве и понятности записи.
Аноним 24/09/16 Суб 17:33:29  847406
итт какие-то говнари от ФП пытаются умничать
как мило

мимо-элитарный-хаскеллист-кодачер
Аноним 24/09/16 Суб 18:20:13  847428
>>847401
>Ты уже не можешь их счейнить

http://elixir-lang.org/docs/stable/elixir/Kernel.SpecialForms.html#with/1
Аноним 24/09/16 Суб 18:22:00  847432
>>847401
это понятно что чейнинг всего пайплайн оператором сделать нельзя и что последовательные конструкции обязательно нужны. Но ребиндинг я считаю ведет в ад, имхо это ненужная и непонятно чем мотивированная штука. Сингл асайнмент это не просто ненужное ограничение, это то как ты мыслишь о своей программе. Ты привязываешь терм к переменной и строишь следующие термы основываясь на существующих термах. Пускай ты и не применяешь точки с долларами и не вяжешь все в лямбды, но ты явно видишь как данные преобразовываются в процессе. Когда ты видишь что у тебя произошла ошибка при обработке терма привязанного к переменной X1 ты можешь легко найти где этот терм был привязан ты явно видишь все этапы которые проходят с структурой данных, явно видишь как из терма X выходит терм X2. По итогу я так и не понял чем ребиндинг мотивирован, разве что X0 X X1 X2 выглядят не очень красиво, неужели это и есть причина?
Аноним 24/09/16 Суб 18:22:41  847433
>>847406
Ну конечно, куда нам до тебя.
Аноним 24/09/16 Суб 18:26:55  847434
>>847401
> ты не можешь делать чейнинг всего
Зачем тебе в цепочке больше 1 функции с сайд-эффетом?
Можешь пример привести?
> Допустим у тебя есть функция a которая возвращает эрланговский вариант Maybe, то есть {ok, Result} | {error, Reason}, где Result - скажем список. А вторая функция b принимает список.
Мы говорим про язык с исключениями, я не стану просто делать {ok, Result}.
Если что будет рантайм ошибка при чейнинге, возможно предусмотренная и пойманная (есть try/catch).
А если не предусмотренная то пускай крашится.
Аноним 24/09/16 Суб 18:53:10  847437
>>847432
> неужели это и есть причина
Ага
Аноним 24/09/16 Суб 19:27:27  847446
>>847406
Но в хаскеле же нет теории категорий
Аноним 24/09/16 Суб 19:32:52  847450
>>847432
С ребиндингом ты точно так же идёшь вверх от ошибки и смотришь, чему твоя Х равна. Мне кажется, ты просто шедовинг с мутабельностью путаешь.
Аноним 24/09/16 Суб 20:17:38  847466
>>847406
Сочувствую.
Аноним 24/09/16 Суб 20:33:18  847476
>>847466
А если без траллинга, чего плохого в хаскеле?
Я руками не трогал, но видится пока один недостаток -- слишком много способов сделать одно и тоже.
Аноним 24/09/16 Суб 20:49:37  847483
>>847476
Ничего в нем плохого нету. Прекрасный язык. просто есть много долбоебов которые зазря выебываются и зарабатывают языку хуевую репутацию у джавистов. Хаскель изучается за пару недель под пивко и несет в себе многие реально крутые концепции. Я бы советовал всем попробовать пописать на хаскеле.
Аноним 24/09/16 Суб 22:48:04  847538
>>847476
>слишком много способов сделать одно и тоже
Это скорее плюс.
Это значит, что сам язык очень простой и элегантный, а все эти заигрывания с императивным программированием - просто синтаксический сахар к уже привычным лямбдам.
Аноним 24/09/16 Суб 22:48:44  847539
>>847476
А я разве писал что - то плохое о няшном?

Сочувствовал я мимо-элитарный-хаскеллист-кодачер-у.
Аноним 24/09/16 Суб 22:54:12  847541
>>847539
>>847538
>>847483
>>847476
Хаскелисты в треде, все в империатив!
Аноним 25/09/16 Вск 14:51:02  847635
>>846970
>Олсо, в качестве критики в сторону Erlang: полное отсутствие хоть какого-то полиморфизма (ad-hoc на арности и типах функций - хуита в стиле паскаля и этого явно мало)

Чем не устраивает полиморфизм на уровне модулей?
Аноним 28/09/16 Срд 19:47:07  848129
>>847256
>А ну покажи.
Мониторить надо. Не знаю, может это и не оптимальный путь поиска вакансий. Но это первое место, из тех что я мониторю, где они начали появляться. На апворке, кстати, как с этим дела?
Аноним 04/10/16 Втр 02:28:28  850286
Pid ! {self(), bump}.
Аноним 04/10/16 Втр 10:43:08  850347
Люди поясните очень подробно за это?
x = x + 1
Зачем оно надо? Не нарушает ли это идеологию самого инструмента?
И есть ли всё-таки переменные в эликсире?
Аноним 04/10/16 Втр 13:07:56  850384
>>850347
>Зачем оно надо?
Локальные деструктивные апдейты. Т.е. реюз уже объявленных лейблов.
>Не нарушает ли это идеологию самого инструмента?
Нет.
>И есть ли всё-таки переменные в эликсире?
Нет, это просто переписываемые лейблы.

А вообще прочитай тред, выше всё разжёвано.
Аноним 04/10/16 Втр 22:36:12  850766
>>850286

self() ! bump же. А еще лучше timer:send_after(24 60 60 * 1000, self(), bump).
Аноним 10/10/16 Пнд 16:39:10  853979
Анон, я довольно часто слышу про ужасный деревянный тулинг у Erlang, расскажи как оно на самом деле?
Сам пока пользовался только rebar3.
Аноним 10/10/16 Пнд 20:06:43  854105
>>853979
>про ужасный деревянный тулинг у Erlang
Да было дело с билдингом аппов и релизов, но уже в прошлом. Теперь есть rabar3, в который, вроде, даже relx вшили, так что кроме него тебе вряд ли что-то ещё понадобится. Ну может ещё relflow от RJ'ея для упрощённого менеджмента аппапов https://github.com/RJ/relflow
Аноним 10/10/16 Пнд 21:11:11  854144
>>853979
есть такая проблема, ее все видят, она актуальна, ее решают, как отписал анон сверху rebar3 решает почти все проблемы, но там где не решает тебе помогут в мейлинг листе или в irc
Аноним 11/10/16 Втр 10:25:19  854417
>>854105
>>854144
Мэйкфайлы это прошлый век или как?
Аноним 11/10/16 Втр 13:18:34  854550
>>854417
Да, прошлый век. Встречаются только в старых проектах, написанных когда ребар ещё не был распространён. Или в проектах, где NIF'ы или ещё какая нативщина собирается.
Аноним 24/10/16 Пнд 11:30:14  862811
(74Кб, 1000x1000)
Вот смотрите. Я вообще ничего не понимаю в этом вашем ерланге. Как установить https://github.com/groupoid/exe и https://github.com/groupoid/om ?
Аноним 24/10/16 Пнд 13:09:53  862846
>>862811
это ребар проекты, читай документацию к rebar. Гугли как компилировать и загружать erlang код.
Забавно, знакомится с эрлангом из блога Максимушки, не думаю что это круто, так может сработать защитный рефлекс. Почитай первые пару глав из Programing Erlang где рассказывают про шелл и как загружать код с основными конструкциями языка.
Аноним 24/10/16 Пнд 13:33:42  862851
>>862846
Мне не эрланг как таковой интересен, а именно этот максимушкин прувер. И вот тут-то я и понял, что даже поставить его не в состоянии. Т.е. мне нужно поставить вот это http://erlang.org/download/otp_win32_19.1.exe потом ребар н-р как написано тут https://habrahabr.ru/post/112681/ правильно?
Аноним 24/10/16 Пнд 13:43:14  862860
>>862851

Тебе нужна виртуалка с прыщами (да хоть убунту). Под виндой без серьезного опыта с Эрлангом заебешься все заводить.
Аноним 24/10/16 Пнд 14:17:16  862872
>>845348 (OP)
Аноны, какая сейчас ситуация на рынке с эрлангом?
Например если я хочу вкатиться и найти работу с эрлангом/эликсиром, но опыта у меня нет и диплома специализированного тоже нет.
Смотрят ли вообще на диплом или не важно? Если я приду устраиваться с дипломом спортфака не обсмеют ли?
Аноним 24/10/16 Пнд 14:30:01  862879
>>862872
В целом диплом не так важен, но без опыта твои шансы стремятся к нулю. Все всё понимают, поэтому экспертного знания Erlang/Elixir требовать вряд ли будут, но пару лет опыта Джавы/Крестов/Питона иметь нужно.
Учитывая ~5 вакансий на весь ДС, шансы у тебя очень хуёвые.
Аноним 24/10/16 Пнд 16:27:06  862917
>>862872
есть вакансии, но их мало. Не знаю как дела в ДС, я из Минска. У нас тут только гдето в 2-3х местах пишут на эрланге и они не хайрят. Я сам работаю удаленно. Нужно чтобы у тебя было годика 2-3 успешной разработки бекенда на других технологиях. Хороший английский и 2-3 книги об эрланге за плечами, что-то сделанное на гитхабе на эрланге и понимание акторной модели, лет ит краш. То есть реально hard way, но оно того стоит. поверь мне, это стоило того чтобы хлебать борщи и уходить с насиженных мест.
Аноним 24/10/16 Пнд 17:32:38  862951
>>862917
Анон, будь добр ответить на несколько вопросов, раз уж ты пишешь на Эрланге.
1) Какой фреймворк/сервер/набор библиотек используете?
2) Приходиться ли писать NIFы?
3) Какие вообще языки нужны на работе, помимо Erlang?

Сам я пишу асинхронщину на Питоне, работу менять не собираюсь, ибо у меня и тут всё довольно интересно в плане задач и технологий. Через год, может, покатаюсь по собеседованиям на Эрланг/Эликсир ради интереса. И я другой анон, если что.
Аноним 24/10/16 Пнд 21:36:28  863089
>>862917
> Хороший английский
Есть. Читаю документацию и книги на нем без проблем, могу говорить и слушать
>2-3 книги об эрланге за плечами
Тоже есть, даже больше.
>что-то сделанное на гитхабе на эрланге
Делаю как раз проект на Фениксе
тот самый кун с дипломом спортфака
Аноним 24/10/16 Пнд 21:38:07  863091
>>862879
А вот что шансы хуевые жаль. Эрланг мне очень нравится и писать на нем в радость. Даже код читать в принципе легко и понятно.
Аноним 24/10/16 Пнд 22:01:15  863105
>>863091
Начни с чего попроще и популярнее (Нода, Руби, Пайтон, etc), дальше видно будет.
Аноним 25/10/16 Втр 00:56:06  863193
>>862951
Сейчас пишу на эликсире самую обыкновенную бизнесс логику лол, ту же, что писал и на других технологиях. Но в функциональном языке все это делать много интересней и многие вещи много гибче, с теми же объектами в функциональном языке ты рулишься, но мыслишь немного под другим углом и можно и нужно использовать в некоторых местах объектный подход в котором у тебя вместо объекта рекорд который обслуживают чистые функции из одноименного модуля. Просто надо немного мыслить под другим углом, это очень круто так как каждый день на работе что-то новое открываешь и код написанный месяц назад уже знаешь как улучшить, я сейчас можно сказать эрлангист джуниор. Работу искал лениво пару месяцев, работая на прошлой. Потом меня все заебало, я решил, что я делаю сейчас полную хуйню и от меня требуется именно такая хуйня и весь энвайронмент способствует только написанию хуйни и созданию илюзии продуктивности. И я не могу больше сидеть в этом болоте, быть тупым выебщиком, решил твердо что буду писать теперь на эрланге(или эликсире, я делал упор именно на эрланг и читал книги по эрлангу и перся именно по нему, но эликсир и эрланг в принципе одна хуйня, кроме некоторых как приятных так и неприятных моментов, я тот долбоеб сверху который залечивал за декларативность и то что я за сингл асайнмент топлю) и сыбал с работы в пустоту, дальше нашел работу через 3 месяца, сбережения позволяли в принципе год не работать и я параллельно иногда ходил на собесы на маминых сеньеров и тимлидов по старым технологиям и только больше утверждался в том что мне с этими чуваками не место и что я лучше буду джуниором эрлангистом чем тупым сеньером с выслугой в команде где вообще никто нихуя не знает что они делают. за все это время прошел около 3-х технических собесов, все удаленные. Везде меня какой-нибудь прикольный чувак долго распрашивал про OTP, асинхронность, платиновые вопросы про переполнение мейлбокса, как смоделировать в акторах решение какой-нибудь проблемы и всегда как-нибудь унижал, но все после собеса дружественно советовали что подучить и были в целом рады что кто-то стремится изучить эрланг. Было не просто нихуя, но сейчас я очень доволен тем чем я занимаюсь и то что за мной присматривает чувак с 10 годами опыта разработки, 5 из которых на эрланге. Учишься очень быстро и опытный человек может донести до тебя, как правильно надо мыслить в пару предложений. Удачи, мне помогло то что я полностью комитнул что теперь буду писать только на эрланге и мне похуй на всех этих эйчаров и рекрутеров которые меня баксом заманивают писать херню, хотя в некоторых местах было реально тяжко, вроде и знаешь что там говнокод и команда даунов, но предлагают оче дохуя, но сейчас не жалею ни о чем, напротив как будто всю эту тему заново переживаю.
Аноним 25/10/16 Втр 01:13:11  863200
>>862951
забыл на вопросы ответить лол
>>863193
1. Феникс, экто, таймекс, поизон, это то что я юзаю
2. Не приходилось
3. Мне никакие, я пишу чисто на эликсире и возможно когда-нибудь меня пустят в хардкорную часть проекта написанную на эрланге, но наверное нет лол. Но знаю еще хаскел и кложу, изучал просто чтобы прошарить функциональную парадигму поглубже.

Вообще есть типа платиновый джентельменский набор из ковбоя, рэнча, пулбоя, какой-нибудь amq, xmpp, ребар. Но это специфично для проекта. Про это будет в описании вакансии, но я изучал все это просто чтобы повысить свои шансы на найм
Аноним 25/10/16 Втр 10:23:57  863289
>>863193
>>863200
Спасибо за ответ, теперь ты мой герой.
Аноним 25/10/16 Втр 13:17:38  863330
>>862951

Я не тот анон, но тоже отвечу.

1) Никаких фреймворков, ребар для построения и компиляции, используем и cowboy и misultin, последний только для вебсокета.
2) Крайне редко, в основном в случаях, где сильно нужна производительность и никаких других вариантов не осталось. Писать нифы это охуенная ебля в жопу, без лишней надобности связываться не стоит.
3) Зависит от работы, очевидно, но точно надо уметь в какую-нибудь скриптопарашу (хотя бы баш).
Аноним 25/10/16 Втр 14:28:15  863363
>>863193

научись, хотя бы иногда нажимать кнопку 'enter', тыж программист, блядж.

>>863193

а за рассказ спасибо.
Аноним 25/10/16 Втр 15:49:49  863401
>>863330
И тебе спасибо.
Аноним 29/10/16 Суб 13:02:13  865666
Здраститя, это опять я выхожу на связь и опять по поводу максимкиного прувера. Поставил бубунту, поставил эрланг, сконпелял ребар. Что делать дальше, как поставить >>862811 это?
Аноним 29/10/16 Суб 14:11:09  865700
>>865666
Спроси у самого максимки, чего ты.
Аноним 29/10/16 Суб 16:15:57  865765
стесняшка.jpg (68Кб, 620x916)
>>865700
Засмеют, стесняюсь жи. У него в жежешечке такие умные камменты... Но видимо других вариантов нет, напишу Максимке.
Аноним 31/10/16 Пнд 10:57:50  866844
141.jpg (159Кб, 580x442)
>>865666
>>865765
В итоге окажется, что это нихуя не работает, а написанный код-просто бред максимки-шизофреника лол.
Аноним 31/10/16 Пнд 14:24:10  867065
>>866844
Зря ты на Максимку гонишь, оно реально конпеляется и даже работает. Там, правда, ошибка странная вылезает, но м.б. это я какую-то хуйню сделал. Да, если кроме меня это кому-то интересно, весь процесс установки:
erlang:
sudo apt-get update
sudo apt-get install erlang

rebar:
git clone git://github.com/rebar/rebar.git
cd rebar
./bootstrap

inotify:
sudo apt-get install inotify-tools

om:
git clone git://github.com/groupoid/om && cd om
make
./mad sh

exe:
git clone git://github.com/groupoid/exe && cd exe
make
./mad sh
Аноним 31/10/16 Пнд 16:17:49  867132
>>865666
>>867065
>Консолечка замаскирована под древний терминал
Нихуя ты эстет нет
Аноним 31/10/16 Пнд 16:40:53  867152
Если я уже хорошо знаком с ФП и хочу как следует разобраться в эрланге, то книжка Армстронга мне подойдет или нет?
Аноним 31/10/16 Пнд 17:17:06  867184
>>867152
если уже знаком с фп, то значит опыт уже есть, можно и просто референс прочитать за вечер
http://erlang.org/doc/reference_manual/users_guide.html
http://erlang.org/doc/efficiency_guide/users_guide.html
http://erlang.org/doc/design_principles/users_guide.html
Аноним 31/10/16 Пнд 17:22:36  867189
>>867184
А если я хочу именно пдф, да еще и со всякими советами от бывалого (тм), обсуждением спорных решений и всем таким прочим? Публицистичское повествование хочу, а не сухие доки. Мне нравится, как Армстронг пишет и говорит. Или в той книжке слишком много воды для меня будет?
Аноним 31/10/16 Пнд 17:43:41  867202
>>867189
вторая ссылка - не сухие доки, а именно советы.
Книга норм, воды не так много (500 страниц-то), задания всякие
Аноним 31/10/16 Пнд 21:25:36  867377
>>867202
Задания, йей! Ок, спасибо, прочитаю и то, и то.
Аноним 04/11/16 Птн 15:59:34  869722
>>867152

Лучше erlang and otp in action наверни.
Аноним 04/11/16 Птн 23:51:02  869907
В чем логика "арности", кроме другого названия количества аргументов у функции?

после амстронга Learn You Some Erlang for great good стоти читать или сразу как >>869722 этот анон советует? С фп тоже знаком
Аноним 05/11/16 Суб 00:10:43  869914
>>869907
Математическое название же.

Либо после Армстронга пиздуй практиковаться, либо читай всё, лол.

ФП в эрланге с гулькин нос.
Аноним 05/11/16 Суб 08:46:42  870056
Наткнулся на блог феерически ебанутого айтишника из России. Жалуется на быдло, которое живет в его подъезде и его избивает:
http://keinkeinkein.livejournal.com/127017.html?thread=2362665#t2362665

Считает что Россией должен управлять искусственный интеллект и технократы. Искусственный интеллект предлагает писать на Эрланге:
http://keinkeinkein.livejournal.com/110772.html

Радуется успехам своих украинских собратьев:
http://keinkeinkein.livejournal.com/122965.html

Там же в комментах призывает всех россиян и украинцев войти в айти:

http://keinkeinkein.livejournal.com/122965.html?thread=2181717#t2181717
Аноним 06/11/16 Вск 03:21:25  870676
>>870056
>призывает всех россиян и украинцев войти в айти
Вот это пидор, блеать!
Ишь, чего захотел! Из нас индусов сделать надумал?
Да ему надо в жопу паяльник раскалённый поглубже засунуть за его галерную пропаганду!
Аноним 09/11/16 Срд 09:35:54  872676
Так что все таки на эрланге для веба пизже?
Аноним 09/11/16 Срд 10:22:38  872686
>>872676

asp.net, j2ee, php, руби в конце-концов. Только не Эрланг, нахуя он там? Не, ну с вебсокетами еще можно попердолиться, но... Есть же сециально заточеные под веб платформы.

мимоэрлангоёб
Аноним 09/11/16 Срд 12:18:18  872727
>>872676
n2o
Аноним 09/11/16 Срд 12:23:19  872730
>>872727
максимка-шизик, залогинься.
Аноним 09/11/16 Срд 12:30:09  872734
>>872686
Чем тебе связка эликсир + феникс не угодила?
Аноним 09/11/16 Срд 13:50:31  872775
>>872676
Эликсир или кложа, если хочется быть в тренде.
Аноним 09/11/16 Срд 15:39:43  872847
>>872686
Для чего тогда ты используешь эрланг?
Хочу замутить веб приложение чтобы прочувствовать эрланг, но с другой стороны не хочеться садиться на точеный стул, а взять какую-нибудь ебу, которую активнее используют в продакшне

>>872775
Планирую сначала писать как диды, на эрланге, а уже потом перекатываться на эликсир
А что на джавалиспе можно писать что-то серьезное? я думал чисто игрушечный язык, для скобкоебов
Аноним 09/11/16 Срд 16:54:19  872923
>>872847
>Хочу замутить веб приложение чтобы прочувствовать эрланг, но с другой стороны не хочеться садиться на точеный стул, а взять какую-нибудь ебу, которую активнее используют в продакшне
У меня такая же болезнь, двачую вопрос этого господина
Аноним 09/11/16 Срд 17:16:44  872953
>>872847
> А что на джавалиспе можно писать что-то серьезное? я думал чисто игрушечный язык, для скобкоебов
Фронтенд более чем (имхо это даже единственный способ писать фронт, ибо js/elm/pure/прочее - говно). А вот бэк хз, ничего интересного для бэкэнда я там не нашел, разве что можно использовать edn вместо json как формат между бэком и фронтом).
Аноним 09/11/16 Срд 18:39:48  873036
>>872847
Про фронтенд уже сказали, сейчас это самая крутая штука для фронтенда ВООБЩЕ. Бэк - ну, среди эрлангеров проводили опрос, типа какой бы язык вы использовали вместо эрланга. Самым популярным вариантом была кложа, потом скала с акторами.
Аноним 09/11/16 Срд 19:55:51  873083
>>872953
>>873036

Пзц, подробнее ознакомился с вашим лиспом и возникло желание попробовать написать фронт на нем. Таким и темпами я так и останусь до старости мамкины борщи хлебать
Аноним 09/11/16 Срд 20:26:31  873094
>>873083
Чому борщи? Ты ж вместе с этим будешь осваивать реакты-хуякты и правильную архитектуру клиентсайда, вполне потом можешь взять и на жс-миддла пойти.
Аноним 09/11/16 Срд 22:26:42  873179
>>873094
Только Кложура усралась полутора конторам, если честно.
Аноним 09/11/16 Срд 22:30:56  873184
>>873179
Как и ерланг, как и хаскель, как и эфшарп, как и скала. Они все в одном эшелоне, просто кложа (и эфшарп) самые молодые из них.
Аноним 09/11/16 Срд 22:42:53  873202
>>873184
Да, всё это борщехлёбство в той или иной степени, так что всё это мы пишем для себя в стол и унылый гитхаб, только особо упорные и удачливые проталкивают в прод.
Аноним 09/11/16 Срд 22:45:02  873204
>>873202
Но это неплохо если ты работаешь конечно, ведь иначе выгоришь. Особенно когда ты JS программист.
Аноним 09/11/16 Срд 22:49:01  873208
>>873202
Ну, не скажи. На самом деле это проще, чем кажется. То есть упорные и удачливые, да, но удача тут сочтоит только в адекватной команде и подходящем проекте.

Ну и опять же, если дрочишь кложурсчкрипт, то прокачивается навык клиентсайда вообще, так что профит в любом случае. Если дрочишь ерланг, прокачивается навык дистрибьютед-хуютед и всего такого. Опять профит. Так что все не так плохо.
Аноним 09/11/16 Срд 23:45:27  873245
Хочу верить братишки, а то иногда тоска такая нападает, что кажется тщетны все эти прочитанные книги и написанные кластеры метапарадигм.
Аноним 10/11/16 Чтв 01:10:49  873279
Двачаны, а в эрлане вся эта типизация активно используется? Вроде годнота, не качкель конеш, но на уровне. При желании можно такую себе статику динамировать.
Аноним 10/11/16 Чтв 01:26:28  873290
>>873245
Не жди, пока дядя соизволит тебе выбрать нормальный язык! Открывай свой бизнес по написанию динамических оперденей сейчас!
Аноним 10/11/16 Чтв 01:26:54  873292
>>873279
Ерлонг? Типы? А?
Аноним 10/11/16 Чтв 10:37:46  873371
>>873292
Type specs + Dialyzer предоставляет что-то похожее на статический анализ кода. LYSE не читал что ли?
Аноним 10/11/16 Чтв 15:18:23  873480
>>873371
> статический анализ кода
> типы
Аноним 10/11/16 Чтв 15:31:23  873489
>>873480
Не так выразился, может, в общем проверяет функции на соответствие type/spec декларациям.
Аноним 10/11/16 Чтв 16:36:28  873529
>>873480
И чем это принципиально отличается от проверки типов компилятором?
Аноним 10/11/16 Чтв 16:41:12  873531
>>873529
Стиль написания друггй же. И интеграции типов в рантайм нет.
Аноним 16/11/16 Срд 16:06:45  876683
Если феникс такой охуенный, то почему на нем ничего не пишут?
Аноним 16/11/16 Срд 16:45:39  876696
>>876683
Да в общем те же, почему до сих пор кто-то пишет на устаревших языках: страх, закостенелость и т.д..
Аноним 16/11/16 Срд 17:02:00  876707
>>876683
Ну и проще вчерашних верстальщиков набрать на Ноде писать, ты понел.
Аноним 16/11/16 Срд 19:52:02  876804
>>876683
Что не пишут? Лендинги и визитки?
Аноним 17/11/16 Чтв 00:10:18  876960
Ну по логике если это такой охуенный фреймворк то должны появляться крутые проекты, которые теперь под силу написать без батальона манкискриптеров, но что-то я такого и близко не наблюдаю. С руби например был твитер, гитхаб и тысячи других. Я бы и рад погрузиться, но если такие хвалебные оды поют прогеры, открывшие для себя другие акценты в вычислительной модели или беам то нахуй надо. Есть ли в треде критически настроенный анон, который обмазался фениксом и по-хардкору, без сектанства пояснит за все плюсы и минусы?
Аноним 17/11/16 Чтв 01:03:57  876989
заебали, что за додики на зекаче пошли
>>876960
кому ты нахуй нужен, убеждать тебя что оно тебе нужно
если бы хотел попробовать - давно бы уже всё поставил и проверил, подходит тебе оно или нет, а ты ломаешься как барышня, ждёшь чтоб тебя накормили советами мудрыми
короче, так и быть, поясняю - эликсир/феникс - нинужон, нет там ничего интересного, это всё хипсторы тупые, задач тоже нет, проходи мимо, если кто-то утверждает обратное - это фанбой, его не слушай
Аноним 17/11/16 Чтв 01:44:26  877006
>>876989
>кому ты нахуй нужен
>ломаешься как барышня
Хуя тебя рвануло. Дедлайн проебал? Никто не ломается, только времени не анлим и когда оно будет, тогда и попробую. А возможно и нет, если окажется что есть куча минусов, о которых фанбои и создатели фреймворка часто умалчивают и все "мелочи" вылазят когда ты уже закоммитил кучу времени впустую.
Аноним 17/11/16 Чтв 23:07:03  877597
ndc-london-2014[...].jpg (48Кб, 638x479)
>>877006
если времени нету, то откуда у тебя возьмется время на изучение эрланга? Книжки надо читать, просто так взять и начать быдлить как на ноде и руби не получится.
Аноним 18/11/16 Птн 20:20:54  877983
Стикер (0Кб, 256x256)
>>877006
Дура, над тобой весь тред смеется, ты нахуя сюда приперся, клоун?
Аноним 19/11/16 Суб 19:21:57  878420
>>877983
>весь тред
Один шизик говорит за весь тред, спешите видеть.
Аноним 19/11/16 Суб 23:39:29  878569
>>878420
двачую. Посмешище - это когда кто-то говорит за всех какую-то хуйню.
Аноним 20/11/16 Вск 11:55:36  878730
Стикер (0Кб, 512x512)
>>878569
>>878420
семен плес
Аноним 20/11/16 Вск 18:09:25  878948
Я тут угорел по метапрограммированию. Расширил немного ecto своими макро которые экспандятся в макро экто, которые экспандятся в эликсир, которые экспандятся в эрланг. Зависимость есть, начал к эликсиру теперь лучше относится, система макросов крутая.
Читал сразу цикл этих статей
http://theerlangelist.com/article/macros_1
потом Metaprogramming Elixir
Ну еще вот это было полезно чтобы понять чем postwalk отличается от prewalk
https://en.wikipedia.org/wiki/Tree_traversal
Аноним 21/11/16 Пнд 17:54:39  879658
>>878948
А я нашёл-таки «Programming Phoenix» в формате PDF.
Апрельский, первая версия.
Аноним 21/11/16 Пнд 17:57:35  879661
>>879658
она же не дорогая. Но в принципе и знаний там сильно крутых сакральных нету. Если бы я знал как вытереть аннотации что книга подготовлена для меня то скинул бы последнюю.
Аноним 21/11/16 Пнд 17:59:36  879663
На доу объявление висит, мол, требуется сервер-сайд си шарп девелопер со знанием эрланг:
https://jobs.dou.ua/companies/crytek-ukraine/vacancies/35342/
Кто пойдёт?
Аноним 21/11/16 Пнд 18:52:03  879708
>>879663
Но ведь это же не эрлангерская вакансия.
Аноним 21/11/16 Пнд 19:09:06  879719
>>879708
Это я на счёт того, что на Эрланге работы нет.
Но! Он таки будет ПЛЮСОМ!
Аноним 21/11/16 Пнд 19:12:40  879722
>>879719
>
>Это я на счёт того, что на Эрланге работы нет.
>Но! Он таки будет ПЛЮСОМ!

Но ведь я работаю на эликсире фултайм и вижу постоянно новые вакансии на апворке и эрланг централе :3
Аноним 21/11/16 Пнд 19:15:13  879724
>>879722
У тебя видения.
Аноним 21/11/16 Пнд 19:20:45  879730
wellokay.jpeg (5Кб, 253x199)
>>879724

Аноним 21/11/16 Пнд 20:13:30  879771
>>879722
Что пилите?
Аноним 21/11/16 Пнд 20:41:29  879791
>>879771
Мужей своих.
Аноним 21/11/16 Пнд 22:19:02  879853
>>879791
Тебе бы стендапером работать, дружище.
Аноним 22/11/16 Втр 14:32:29  880143
>>863193

Дико хочу повторить твой путь. Подскажи, с чего начать ?

Чем можно новису набить портфолио на эрланге/эликсире?
Аноним 22/11/16 Втр 14:50:15  880147
>>880143
Любая асинхронная поебота. Можешь написать банковский аккаунтинг с всякими крутыми транзакциями чтобы много подключений тянуло без потерь бабла и написать нагрузочные тесты для этой штуки, собирать проценты с транзакций на отдельный счет и расчитывать опердени для сбора годовых со счета. Вроде прикольная задачка на пару вечеров но прикольно будет смотреться в гитхабе.
Я когда искал работу делал стриминговый сервер, как у джо армстронга, только OTP совместимы на рэнче с выводом текущих треков и списком подключений через ковбойский rest. Еще у меня была идея запилить анонимный мессаджинг полностью без хранилища, даже без очередей и шифровать трафик своими сертификатами или пользовательскими ключами. Вроде тоже на пару вечеров.
Можно сделать что-нибудь прикольное с сбором данных из многих источников. Хоть банального поискового паука запилить который будет в тыщу потоков сканить даркнет. В общем все где надо много потоков будет прикольно делать на эрланге\эликсире и обычно не долго, если тебе не надо сотня формочек или сотня интеграций с другими сервисами, это очень много времени занимает и в резюме кисло смотрится и ваще не очень понятно, зачем это писать на эрланге
Аноним 22/11/16 Втр 14:50:42  880148
сажа приклеилась
>>880147
Аноним 22/11/16 Втр 14:53:53  880150
>>880147
Спасибо!
А что по функциональным и параллельным алгоритмам лучше почитать ?
Аноним 22/11/16 Втр 15:01:01  880152
>>880150
Я думаю лучше всего почитать книги по эрлангу в первую очередь. Programming Erlang 2nd edition, Erlang and OTP in Action эти книги нацелены на то чтобы именно в прикладном стиле тебе объяснить как что делать и почему в эрланге сделанно именно так, а не по другому. В общем просто мастхев.
А если погружаться в теорию то в первую очередь надо выкупить акторную модель, но ты ее в принципе и так выкупишь когда книжки прочитаешь.
https://www.youtube.com/watch?v=7erJ1DV_Tlo

И еще есть крутая книга, я сам ее не читал, она у меня следующая к прочтению. Выглядит более чем сочно и алгебраично. Некоторыми продвинутыми эрланг пацанами считается чем-то вроде библии :)
http://usingcsp.com/cspbook.pdf

Ну и очень поможет смотреть выступления пацанов с Erlang Factory и Erlang User Conference.
https://www.youtube.com/user/ErlangSolutions
Особенно те, где чуваки рассказывают про свои проекты, хорошим тоном считается не просто рассказать как мы тут все пиздато сделали, покупайте наш продукт а именно про то как чуваки преодолевали сложности, они там на каждом проекте уникальные у челов.
Аноним 22/11/16 Втр 15:21:12  880166
>>880152
Спасибо

Пока что у меня абсолютно ебанутая идея есть точнее даже две типа для десктопного эрланг приложения. На неделе приступлю и параллельно читать буду.

Программинг эрланг уже начал
Аноним 22/11/16 Втр 15:52:41  880184
Десктопное эрланг приложение? Забавно.
Но я думаю что эрланг раскрывает себя именно при разработке сервера или распределенной системы.
Аноним 22/11/16 Втр 15:56:56  880187
>>845348 (OP)
>для применения в реальном мире
А остальные разработаны для применения в мире единорогов? Что за поебень!
Аноним 22/11/16 Втр 16:04:43  880191
>>880187
>А остальные разработаны для применения в мире единорогов? Что за поебень!
Хуево написано, имелось в виду что он дизайнился для решения конкретных проблем, а именно, написания динамических асинхронных опердений без обязательного приседания со штангой
Аноним 22/11/16 Втр 16:47:16  880225
>>880191
Спасибо, что за меня ответил.
Пальцем не будем показывать, но есть языки, которые очень долго выходят, если вообще это делают, из своих альма-матер и даже потом споры, зачем они нужны, не утихают. Здесь же изначальная ориентация на решение определённых задач + батарейки в виде OTP/Mnesia/etc.
Аноним 22/11/16 Втр 19:10:10  880333
>>880184
Ну, мне потребуются достаточно хардкорные реал-тайм вычисления и обмен данными между процессорами

Может я потом это даже в железку запихаю, хз
Аноним 22/11/16 Втр 19:10:42  880336
>>880333
процессами

fix
Аноним 22/11/16 Втр 19:16:31  880343
>>880333
>Ну, мне потребуются достаточно хардкорные реал-тайм вычисления и обмен данными между процессами

Если тебе там потребуются реально хардкорные еще и реалтайм вычисления то эрланг может там всосать, он не самый быстрый парень на деревне. Ты не смотрел на другие технологии. На эрланге вычисления будут надежными распределенными, но не быстрыми. Для того чтобы их сделать быстрыми надо сделать дофига финтов ушами. В общем я предупредил. Лучше подумай хорошенько подходит ли он под твою задачу
Аноним 22/11/16 Втр 19:24:16  880348
>>880343
А что у нас есть функциональное и более быстрое? Я на си не хочу писать, нахуй нахуй
Не то что бы там было что то совсем хардкорное, но непрерывно ведущееся преобразование фурье - как ? Достаточно хардкорно? И/или генерация звука, например
в принципе сосущие части можно и на си написать же, насколько я понимаю - механизм интеграции есть
Аноним 22/11/16 Втр 20:05:39  880379
>>880348
Преобразование фурье и генерацию звука должен вытянуть. Попробуй сразу запилить эти штуки и сделать бенчмарки.
Механизм есть, но там тысяча подводных камней. Если тебе надо 1 процесс который будет что-то генерировать и это надо будет потом распылять на много потоков то напишешь линкованный процесс средней кровью, если тебе таких процессов надо много то появится боль и кровь будет большая. OCaml посмотри наверное, я на нем не писал но вроде как он хорошо подходит именно для десктопных шустрых прилаг, свяжешь ее потом по сокету с своим эрланг сервером
Аноним 22/11/16 Втр 21:12:01  880456
>>880348
>в принципе сосущие части можно и на си написать же, насколько я понимаю - механизм интеграции есть

Если там нет чего-то, для чего НУ ВООБЩЕ ПИЗДЕЦ КАК нужна скорость, то сосущие части проще и быстрее будет написать на джаве (в математике она будет куда быстрее эрланга), джава с эрлангом интегрирована хорошо.
Аноним 23/11/16 Срд 03:57:47  880664
>>880333
Бери С++ и не выебывайся. В обработке сигналов нет ничего, что требовало функциональный язык, даже в теории.
Аноним 23/11/16 Срд 05:30:47  880674
>>880456
>>880664
Джава то интегрирована хорошо, но мне лично например бы совесть не позволила писать на джаве или плюсах, у меня это 2 самых нелюбимых ЯП, я бы все-таки постарался либо написать на языках которые заточены под десктоп или же попердолился немного с pure c. Но я диванный инженер-системотехник которого в универе целый год когда-то ебали сишечкой, так что может это для меня сишечка так проста и няшна. Но это все вкусовщина.
Одно я знаю точно, эрланг врядли себя проявит как хорошее решение для десктопного приложения. Хотя чем черт не шутит.
Аноним 23/11/16 Срд 05:32:15  880675
>>880674
>>880664
НО на плюсах есть много готовых библиотек для работы с сигналами, я когда-то интересовался как сделать свой vst синтезатор и эффекты и C++ там дефолтное решение. Но и на pure C там много готового и няшного.
Аноним 23/11/16 Срд 07:36:44  880684
>>880675
Нихуя там нет няшного, сишка очень лоулевельный язык и мысль там теряется среди кучи деталей типа ручного копирования буферов. Эрланг - ну это вообще клиника. Тебе бы подошел haskell c vector fusion, на нем будет быстро и довольно высокоуровнево, но ровно до тех пор, пока тебе не потребуется запилить какой-то сложный алгоритм.
Java, кстати, выбор тоже хуже, потому что сборка мусора здесь не нужна, перегрузки операторов нет, и вообще система типов не очень.
Аноним 23/11/16 Срд 10:16:32  880719
>>880674
Как насчёт взять GOLANG? Говорят, что на вкус как земля сишка.
Аноним 23/11/16 Срд 11:46:01  880749
>>880674
Я впервые за долгое время нашел посильную задачу, которая мне по фану, так что я почитаю по поводу синтеза звука приерно составлю схему в голове, как это делать и может даже запощу в тред какие-нибудь бенчи через некоторое время.Просто мне реально хочется примерно дохуя независимых процессов, которые можно будет добавлять - убивать в риалтайме, а писать такое на цэ мне просто страшно
Ну и плюс я очень устал от императивного говношлепства на раби в последние два года, хоть и за хорошие деньги, потому я бы лучше поработал на чем-то радикально другом

>>880675
А литературы не подскажешь ? Интересуют архитектурные моменты, как сделать максимально качественный осциллятор программно, складывать несколько волн и пихать их в аудиовывод.
Я конечно и сам уже погуглил, но вдруг ты что-то уже читал и можешь порекомендовать или отсоветовать.
Аноним 23/11/16 Срд 14:16:25  880824
>>880749
У тебя нет независимых процессов, все зависимо, у тебя есть направленный граф, в котором есть источники звука, обработки и сливы. Нужно брать слив, и раскручивать его в обратную сторону, лениво запрашивая данные. Это реактивное программирование с параллельностью, но нужная обвязка быстро делается на любом языке. Эрланг тебе тут точно не нужен, как и убивать в реалтайме какие-то там процессы.

>как сделать максимально качественный осциллятор программно
На music-dsp читай сам сайт и его список рассылки. KVR audio еще есть.
tldr; Синусоиду можно генерировать наивным образом, пилу и квадрат нельзя, будет алиасинг.
Самая простая в реализации технология их генерировать - оверсэмплинг, генерируешь на очень высокой частоте дискретизации, фильтруешь (например, sinc-фильтром), и делаешь даунсэмплинг. Там алиасинг будет, но значительно более тихий. Есть большее колдунство, менее грузящее процессор, например MinBLEP.
Более сложные формы волны и FM-синтез делаются только оверсэмплингом, поэтому в современных синтезаторах только он и есть.

>складывать несколько волн
Внезапно, с помощью операции сложения.
Аноним 23/11/16 Срд 14:21:31  880828
>>880824
Спасибо, может и не нужен, а жаль, на самом деле

я посмотрю еще, на чем можно по фану это сделать.

Убивать в реалтайме процессы придется, я хочу сделать пучок таких синтезаторов, играющих синхронно, чтобы можно было регулировать их количество прямо во время воспроизведения.
Аноним 23/11/16 Срд 14:45:45  880838
>>880749
> байтоебство
> конкуррентность
> без гц

Братан, тебе же раст нужен! И функциональщина как раз, и все остальное идеально подходит.
Аноним 23/11/16 Срд 16:05:56  880888
Внезапно сам планирую и собираю инфу как писать генератор музыки машиной.
Аноним 28/11/16 Пнд 00:11:33  883382
Какой же ублюдочный синтаксис матчинга списков.
Аноним 28/11/16 Пнд 20:19:47  883811
>>883382
[x|xs], помоему норм. как в прологе. КАК У ДИДОВ
Аноним 29/11/16 Втр 00:01:33  883969
Programming phoenix есть где-нибудь спираченая?
Аноним 29/11/16 Втр 00:13:03  883981
>>883969
https://rutracker.org/forum/viewtopic.php?t=5283272
Аноним 29/11/16 Втр 00:42:21  883996
>>883382
уж лучше чем x:xs
Аноним 29/11/16 Втр 00:43:49  883997
бля насколько же GenStage охуенная идея...
Аноним 29/11/16 Втр 01:01:16  884010
>>883996
Нет.
Аноним 29/11/16 Втр 01:01:33  884011
>>883811
>норм
Нет.
Аноним 29/11/16 Втр 01:05:12  884017
https://rambler-co-e-org.timepad.ru/event/413260/
Аноним 29/11/16 Втр 01:51:35  884037
>>884010
Да. Это рил лучше. Это не сильно важно, но у меня немного подгорало от хаскеля, что там синтаксис для списков разный для разных случаев, типа
> f []
> f [x]
> f (x:xs)
в то время как в эрлах все красиво и однообразно
> f []
> f [x]
> f [x|xs]

Аноним 29/11/16 Втр 01:54:58  884038
>>884037
>синтаксис для списков разный для разных случаев
Логично, что для разных случаев нужен разный синтаксис.

>однообразно
И нелогично.
Аноним 29/11/16 Втр 02:02:17  884042
>>884038
настолько дохуя аргументов, что я осознал, что проиграл спор
Аноним 29/11/16 Втр 02:10:04  884043
>>884042
>настолько дохуя аргументов
Приводить аргументы любителям инфиксно-циркумфиксных операторов/паттернов — себя не уважать.
Аноним 29/11/16 Втр 02:19:32  884044
Вообще говоря, я зря доебался. Я сейчас понял, что в erlang всё норм с синтаксисом и [H|T] это не матчинг списка, а матчинг cons-пары (списков в erlang в нормальном смысле нет, т.к. это язык без типизации).
[H|T] некорректно сравнивать с x:xs из Haskell, а нужно сравнивать с (h,t).
Ок, все претензии к инфиксности-хуинфиксности снимаю. Такой смешанный синтаксис для матчинга пары — норм.
Аноним 29/11/16 Втр 02:37:37  884047
Типизация есть, нету анального тайпчекера которому надо делать глубокий отсос чтобы он позволит тебе писать программы, ты хотел сказать? :3
Аноним 29/11/16 Втр 03:32:59  884053
>>884047
> нету анального тайпчекера
Анальный тайпчекер есть, вопрос лишь в том, когда он порвёт твой пердак: в компай- или рантайм.
Аноним 29/11/16 Втр 04:27:21  884057
>>884053
В эрланге не принято так мыслить. Let it crash
Если процесс не знает как использовать апи или работает не верно, то он не достоин жить. НЕ НАДО пожалуйста переносить философию хаскела в эрланг. оно тут не скомпилица :)
Аноним 29/11/16 Втр 08:32:21  884078
>>883981
Благодарствую, вчера столько говна перелопатил, а на рутрекере то и не додумался глянуть

>>884053
Dializer
И можешь пощекотать анус в compile-time

Я щитаю это охуенно, используешь тогда, когда тебе это выгодно. И не нужно постоянно думать как ублажить компилятор. А юзкейсов, где мне бы понадобилась интеграция типов в рантайм, я чет не могу придумать. Могу предположить что это бы могло пригодиться в метапрограммировании, но чет хз. Надеюсь практикующие статикоштангисты меня просветят
Аноним 29/11/16 Втр 09:22:45  884097
>>884037
Ну так икс - элемент, а иксес - список же. В этом плане все логично. У меня вот к другому претензия: я до сих пор нет-нет, да и прочитаю х:хс как "икс имеет тип хс". Символов им мало, блждад?

>>884078
Код же по-разному проектируешь. К сожалению, это только в теории "давайте сперва хуяк-хуяк и в продакшен, а как наймем еще десять человек - прикрутим типы и все будет заебись". На практике это не работает, кложурцы проверили на реальных кодобазах.
Аноним 29/11/16 Втр 11:24:19  884141
>>884097
Ну да, ты можешь мыслить от верхнего апи и реализовывать то что тебе надо чтобы апи работало (top-down). А можешь мыслить от структуры данных, которая тебе надо и писать функциональный интерфейс к этой структуре данных (bottom-up). В эрланге помоему оба подхода отлично живут друг с другом и кложуровцы, помоему, именно что доказали то, что bottom-up подход очень эффективен.
Имхо хаскел через чур защитен. Мне просто не надо на столько типобезопасный код, это приятная фича, но цена слишком высока. Типы очень многословны, требуют поддержки и тупо вообще никак не дружат с распределенными системами и недетерминизмом. Я не говорю про идрис, там зависимые типы вроде позволят тебе самого себя в жопу выебать и проверить математически что ты это сумеешь, но как по мне, то это еще более тяжелая штанга, нахуй нахуй. Проще(и быстрее в моем ковбойском стиле программирования) двигаться напрямую к цели по золомоу пути используя top-down подход и в случае какой-нибудь хуйни супервизор скинет трупец процесса в ганг. Кложур мне нравится всем, кроме того, что они не умеют в акторы, ну и соответственно у них нету своего OTP, во всем остальном наверное это самый крутой, сейчас доступный язык программирования.
Аноним 29/11/16 Втр 19:22:16  884360
>>884057
Да я кагбэ не против подхода эрланга. Просто меня проклятые писатели книжек запутали "списками" (которых нет) и я был недоволен синтаксисом матчинга. Который на самом деле матчинг пары, а не списка.
Аноним 29/11/16 Втр 20:11:47  884406
>>884360
Ну так список это концепция, а не тип "список" из хачкеля.
Аноним 29/11/16 Втр 21:59:10  884504
>>884141
Ну все-таки типы недетерминизму и распределенным системам как минимум ортогональны (если забыть на время про пи-калькулюс и линейные типы). И многословными они не являются, вывод типов же.

Но речь не об этом - мой поинт был в том, что опциональные системы типов, когда сперва пишешь на динамическом языке проект, а потом сверху нахреначиваешь туда типов, - они не работают. В кложуре как раз была инициатива запилить такую систему типов на основе typed scheme. Собрали деньги, сделали исследование (чувак там мастер'с дигри на этом защитил вроде, лол), запилили код, отрелизились, их начали использовать в продакшене чуваки из серклсиай. Ну в общем все вроде бы круто. А потом через полгода где-то те самые чуваки и говорят: не, нахуй это все, ебались мы с этими типами, ебались, и в итоге пришли к выводу, что это того не стоит: цена поддержки слишком высока.

А слишком высока она из-за того, что а) все библиотеки динамически типизированы, приходится писать к ним аннотации, если хочешь тайпчека б) уже написанный динамический код часто имеет слишком сложный тип, так что приходится переписывать уже рабочий код только ради того, чтобы написать аннотацию типа в) нет нормального вывода типов.

Так что в теории опциональная типизация - это вроде бы хорошо и удобно, как раз избавляет от этой чересчур защитности. Но на практике - ад, пизда и израиль, не работает это. Если уж брать типы, то полноценные, как в хачкеле, вот.

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

Да, кстати, насчет акторов в кложе - насколько я помню, там были отдельные бибилиотеки, которые давали обработку ошибок как в эрланге и более эрланг-стайл обертку над агентами, в том числе распределенную. Но это все отдельные библиотеки, а вот единой платформы к сожалению нет, а в этом случае целое больше суммы своих составляющих, как мне кажется. Вообще, мне больше всего жаль, что эрланг-стайл обработка ошибок там не прижилась, по-моему было бы очень в тему.
Аноним 29/11/16 Втр 22:00:04  884507
>>884360
Ну как бы изначально слово "список" и означало конс-пару, так что зря ты так, как мне кажется.
Аноним 29/11/16 Втр 22:34:10  884543
>>884504
Два актора, за развернутое пояснение
Аноним 29/11/16 Втр 23:03:16  884564
erlang-4.jpg (22Кб, 450x344)
PSHHHH ALO YOBA ETO TI?
OK
Аноним 29/11/16 Втр 23:12:23  884572
>>884564
Лол. Добавьте нижнего левого мужика в оп-пост в следующем треде.
Аноним 30/11/16 Срд 13:57:02  884923
>>884504
>
А зачем в принципе нужны были типы ребятам из circle ci? Как раз я считаю что если ты пишешь с типовой системой типа как в хаскеле то ты приседаешь со штангой долгие часы выводишь типы которые тебе надо пилить и потом пишешь код который должен матчиться в эти типы, или тайпчекер скажет "пішов нахуй". И все ради чего? Ради иллюзии защиты от крашей в рантайме. Концепция тестов мне кажется на много лучше подходит для того чтобы описать корректное поведение программы. Есть тысячи способов как программа может вести себя некорректно, все даже нельзя себе представить и всего лишь 1 способ корректен. Ты просто пишешь тест на этот 1 способ и это дает мне необходимую уверенность чтобы писать код на эрланге и применять top-down подход когда я пишу именно 1 тест на самый благоприятный путь и потом ковбойствую до победы. Но кому-то и эта уверенность не надо, он просто знает что делает и пишет код который достаточно прост, чтобы его вообще не тестировать. Мало шестеренок => нечему ломаться. Главное смириться что отказов полюбому не избежать, нельзя предугадать состояние программы на 100%. Отказы будут случаться в любом случае и никакая типовая система и жесточайший тайпчекер не спасут тебя от этого (ну кроме может какой-нибудь ебы на зависимых типах, но это для особых любителей). В эрланг системах отказы это ожидаемое поведение.
Аноним 30/11/16 Срд 15:21:18  885012
>>884923
Ты из беларуси?

Никаких подъебок, просто любопытно
Аноним 30/11/16 Срд 15:34:41  885029
>>885012
да
Аноним 30/11/16 Срд 16:33:47  885070
>>885029
У вас там што, пифон научилсо отличать пустые строки от пустых массивов?
Аноним 30/11/16 Срд 17:02:15  885095
>>885070
Я не понял вопроса
Аноним 30/11/16 Срд 17:13:06  885110
>>885095
NJHJGS;RF ,SK UJKJLYSQ
GHJUKJNBK EN.U [JKJLYSQ
F D ,JKMYBWT UJDJHZN:
C EN.UJV - BLB YFPFL!
VS NFRB[ ,JKMYS[ YT KTXBV,
VS NFRB[ ,JKMYS[ - RFKTXBV.
WO.
Аноним 30/11/16 Срд 17:32:33  885124
>>885070
>>885110
Ты бот? Как капчу проходишь?
Аноним 30/11/16 Срд 18:03:50  885148
>>884923
> Зачем нужны были типы
Чтобы повысить качество кодобазы, чтобы была документация, чтобы было больше уверенности при внесении изменений. Все как обычно же. Кодобаза растет - вот и думали, как ее эффективнее поддерживать в хорошем состоянии.

Типы - это не про "иллюзию защиты", это про корректное проектирование. Слушай, эта тема уже тыщу раз разжевана, мне лень сейчас опять тут расписывать.

Тесты не могут описать поведение программы, они только дают примеры. Нет никакого одного корректного способа, ты чего? Для того, чтобы описать тестами хотя бы целочисленную функцию инкремента (только корректные ее вызовы!), тебе нужно по одному примеру на каждое возможное значение целочисленной переменной в твоем языке. Короче, извини, но твой подход попросту некорректный и ничего не дает (кроме той самой иллюзии защиты) - по-моему в любой книге про тдд написано, что тестировать нужно в первую очередь corner cases, а не самый благоприятный путь.

Я уж молчу про то, что тестирование by example потихоньку устаревает в пользу тестирования by specification - которое, кстати, Джо Армстронг и придумал, хе.

Наконец, ты путаешь отказы и некорректное поведение. Лет ит краш не имеет никакого отношения к корректности. Лет ит краш - это способ обработки исключений. Корректность (ради которой пишутся тесты) - это другое, совершенно ортогональная вещь.

>>885110
>>885070
Я тоже не уловил, что ты хотел сказать.
Аноним 30/11/16 Срд 18:54:28  885171
>>885110
>ТОРОПЫжКА бЫЛ ГОЛОДНЫЙ
>ПРОГЛОТИЛ УТюГ хОЛОДНЫЙ
>А В бОЛЬНИЦЕ ГОВОРЯТЖ
>С УТюГОМ - ИДИ НАЗАД!
>МЫ ТАКИх бОЛЬНЫх НЕ ЛЕЧИМб
>МЫ ТАКИх бОЛЬНЫх - КАЛЕЧИМю
>ЦЩю

Реально похож на бота. На эраланге хоть?
Аноним 30/11/16 Срд 20:00:22  885198
>>885148
Ну я не согласен, командир. Корнер кейсы ты не знаешь, ты знаешь только то, что от тебя требуется. И лет ит краш это не просто способ обработки ошибок, эта тема немного глубже.

>чтобы была документация
тайпспеки, а вообще нормально функции называть в первую очередь.
>чтобы было больше уверенности при внесении изменений
Для меня так работают зелененькие тесты и я им доверяю больше чем типам, там у меня конкретно список того, что мне надо, для того, чтобы моя система считалась рабочей, не больше и не меньше.

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

Но я понял про что ты. Видимо это индивидуально.
Аноним 01/12/16 Чтв 01:24:25  885369
>>885198
Ну как не знаешь? Если функция получает список, например, - то надо передать ей пустой список в первую очередь. Если натуральное число - то надо передать минимальное и максимальное значение. Ну и так далее, генеративное тестирование как раз этот процесс хорошо автоматизирует.

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

> тайпспеки
Ну дык... Как бы... А я про что? Про тайпспеки и говорю. Которые еще и чекаются.

Алсо, по-моему несколько самонадеянно с твоей стороны говорить, что у ребят из серклсиай руки кучерявые, они функции именовать не умеют и вообще дураки, а не были б дураками - типы бы им и не понадобились. Ну как-то странно это, согласись.

И еще раз: тесты и типы - это вообще ортогональные вещи, тесты не могут заменять типы (и наоборот). Типы дают тебе интерфейс, который ты не можешь поломать при внесении внутренних изменений в систему - я это имел в виду. Тесты тоже в приннципе могут служить интерфейсом, но только генеративные, когда ты спецификацию пишешь, а не example-based.
Аноним 01/12/16 Чтв 04:09:28  885478
>>885369
>Ну как не знаешь? Если функция получает список, например, - то надо передать ей пустой список в первую очередь
Ну это ты слишком упростил, тут нечего комментировать, об этом вообще не стоит париться. Не надо тестировать все на свете. Тебе надо тестировать поведение процессов или модулей с бизнес-рулами. Тесты будут почти полностью соответствовать тому, что кастомер ожидает увидеть от системы или другие процессы ожидают увидеть от процесса который ты тестируешь. Если тесты не покрыли какой-то особенный баг, как ты говоришь, корнер кейс. То это значит только что ты добавляешь еще один кейс в тестовый модуль и исправляешь баг. Не надо придумывать все возможные баги еще до того как они появились.
У меня тесты высокоуровневые, я проверяю конкретно фичи и в тестах отображаю стори от кастомера. Я не тестирую всякую перхоть и не пишу тесты на каждую функцию. Только самый верхний интерфейс, если где-то случается ошибка, то это абсолютно ок, мой процесс упадет сразу же и я посмотрю логи об ошибках.
Лет ит краш это не просто способ обрабатывать ошибки, это то, как ты думаешь об ошибках в общем при разработке. Когда ты пишешь код, ты не используешь вообще никакой попытки проверить результат на корректность, никогда не проверяешь на nil лол и никогда не бренчишь свой код, ты идешь к цели напрямую, защиты нету вообще никакой, кроме случаев где она нужна, это и есть исключительная ситуация их очень мало и там правильно будет если за тебя все поправит супервизор опять же, но если тебе таки очень надо защититься внутри одного процесса(Бывает ну писец как редко) то уже тогда развлекаешься с опшианал тайпами и добавляешь ветвления(И ЛОГИРУЕШЬ!!!). Литературки подкинуть никакой, к сожалению не могу, потому что не видел ее, это сложно объяснить на словах, меня учат этому на проекте, причем в основном через кровь.
То есть я сначала пишу в защитном стиле и потом мне опытные ребята объясняют почему то, что я сделал это не достойно мержа. Сам принцип в общем такой: вообще ничего не проверять и идти напрямую к цели, освободить свою голову от этой неуверенности что что-то там сломается и все такое, когда сломается, тогда и будешь об этом думать, либо если не надо чтобы ломалось. То линкуешь с супервизором. Но никогда(или ахуеть как редко) не проверяешь коды возврата или умалчиваешь неопределенное состояние системы.
Состояния только 2, либо все ахуенно, либо все поднимает супервизор (сорт оф ахуенно, завтра поправишь)


По поводу сёркл сиай, я на сёркл сиай ничего не гнал, но для меня реально выглядит это глуповато. Ну какие типы в лиспе то, зачем. Ну ладно, никого не хочу обидеть. Просто я считаю что надо в первую очередь учиться программировать и мыслить так, чтобы задачи решались быстро, функционально и имьютабельно и чтобы получались impress your cat systems. А типы это такая психологическая ловушка, ребята их юзают из-за неуверенности. В тех системах, с которыми я работаю и где активно применяется эрланг, отказы это нормальное состояние и статическая типовая система сделает эрланг не эрлангом, а хер пойми чем. (каким-то хаскелом :o)

При всем при этом мне нравится по вечерам поаутировать в какой-нибудь теорем прувер и посмотреть на типизированные лямбдочки, но это то, что вообще нельзя пускать в эрланг системы, это совсем другой мир.
Аноним 01/12/16 Чтв 04:19:59  885481
>>885478
>Тесты будут почти полностью соответствовать тому, что кастомер ожидает увидеть от системы или другие процессы ожидают увидеть от процесса который ты тестируешь. Если тесты не покрыли какой-то особенный баг, как ты говоришь, корнер кейс. То это значит только что ты добавляешь еще один кейс в тестовый модуль и исправляешь баг. Не надо придумывать все возможные баги еще до того как они появились.
> Если тебе надо доехать из точки A в точку B, то надо расставить столбы так, чтоб удары об них не давали съехать с нужного направления. Если вдруг оказалось, что столбы не покрыли какой-то участок пути, то это значит только что ты вкапываешь ещё один столб. Не надо вкапывать все возможные столбы до того, как съедешь в кювет.
Типикал test driven development.
Аноним 01/12/16 Чтв 04:27:19  885484
>>885481
Надо предложить альтернативу или хотя бы аргументы против такого подхода, а то получается просто пук в лужу.

https://www.infoq.com/presentations/Simple-Made-Easy
Аноним 01/12/16 Чтв 04:28:24  885485
>>885484
>https://www.infoq.com/presentations/Simple-Made-Easy
Да, аналогия про столбы оттуда (хотя там не совсем про столбы было)
Аноним 01/12/16 Чтв 04:33:00  885486
>>885485
Так ты не будешь предлагать альтернативу? Рич Хики предлагает простоту, но там где без простоты не обойтись (процессы и бизнес требования) там нужны тесты. Что ты можешь сказать против такого подхода или как его можно улучшить?
Аноним 01/12/16 Чтв 04:35:14  885487
>>885486
>Так ты не будешь предлагать альтернативу?
Гомотопические зависимые типы + моноид в категории пердофункторов.
Аноним 01/12/16 Чтв 14:42:08  885680
>>863105
Есть опыт с руби и пхп. Нода сама по себе не нравится. Как раз на руби пишу очередную борду.
Аноним 01/12/16 Чтв 23:34:33  886005
>>885478
Нет, баг и корнеркейс - это все-таки не одно и то же. Я согласен с твоим первым абзацем в целом. Я имел в виду, что тестирование by example наиболее эффективно не тогда, когда ты пишешь только какой-то типичный пример того, как код будет использоваться, а когда ты сразу проверяешь какие-то граничные условия - потому что именно при них чаще всего обнаруживаются ошибки. Это просто бест практис такой, в любой книге по тдд это описано, как я уже сказал.

Про лет ит краш и ошибки - опять же, ты понимаешь под ошибками какие-то конкретные отказы системы. А я говорю про корректность. Это разные вещи. Если у тебя в системе возможна атака на переполнение буфера, xss какой-нибудь или просто-напросто ее поведение не соответствует спецификации - это не ошибка в том смысле, о котором ты говоришь. Ничего не упадет и не поднимется, просто ответ будет неправильный. И говорить "ну когда найдем баг - вот тогда и поправим" в таком контексте - это как-то не очень, согласись. Когда у тебя сольют базу с данными юзеров, например, поправлять баг будет уже поздно.

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

Наконец, типы - это не психологическая ловушка, это математический формализм. И в лиспах они достаточно давно были таки. И лично я не вижу, каким образом типы противоречат философии эрланга. К тому же, они там все равно есть, просто проверять их или не проверять - это вопрос удобства.

>>885487
Вот вам бы все в моноиды пердолиться!
Аноним 05/12/16 Пнд 04:30:23  888189
>>886005
Ты все верно говоришь. Но мне кажется тут уже начинается какой-то околорелигиозный спор, что важнее и о чем стоит рассуждать, я думаю это зависит только от внутренного состояния программиста. Может я не дорос, а может ты, я не знаю. В любом случае я со всем согласен. Но я предпочитаю не задумываться о том, на что я не могу прямо повлиять или что просто не требуется и не сделает мой код лучше или жизнь легче. Например от моих программ не требуется 100% корректности и чтобы ее достичь мне надо потратить огромное количество сил. Я интересовался в какой-то момент этими вопросами и пытался присесть со штангой, но у меня не получилось и я решил что для меня будет много полезней смириться с тем что я не совершенен и мои программы соответственно тоже и больше концентрироваться на том, на что я могу повлиять. Например я могу быть лучшим программистом, писать более понятные интерфейсы, применять более явные абстракции и дизайнить подходящие для задач структуры данных, ну и так же оценивать время на выполнение задач и достигать результатов. Когда я наберу достаточно опыта в этих дисциплинах я может вернусь к зависимым типам и теоремам, но пока для меня много полезней про эти вещи не задумываться. Как минимум я лучше высыпаюсь. :)
Аноним 05/12/16 Пнд 09:53:27  888253
876ероаполлп.png (3422Кб, 1920x1080)
Есть ли годные мануалы по эрлангу на русском?
Аноним 05/12/16 Пнд 10:12:49  888259
>>888253
LYSE и Programming Erlang вроде переведены. Но без англицкого освоить будет сложно ибо русскоязычное комьюнити очень не большое и если будут какие-то проблемы, то спрашивать надо будет на английском. Ну и все референсы, доки и остальные книги на английском.
Аноним 05/12/16 Пнд 13:12:19  888345
>>888189
Так не, я про стопроцентную корректность и зависимые типы и не говорил. (я воще лишпер, какие мне зависимые типы, лол) Корректность как соответствие спецификации, то есть адекватность задаче. Это не обязательно подразумевает формальную верификацию, тут все от задачи зависит.

Но вообще да, разговор куда-то совсем в абстрактные философские высоты потихоньку уходит, так что... "Отличное начало; кажется, пора завязывать." :3
Аноним 05/12/16 Пнд 15:04:19  888438
Почему erlang\1, а elixir\0?
Аноним 05/12/16 Пнд 15:22:14  888447
>>888438
В первом треде Эликсир вскользь упомянут был, сейчас первый объединённый тред. Хуйня в общем, не обращай внимания.
Аноним 08/12/16 Чтв 11:54:40  890363
>>888345
Привет! А про что ты говорил? Что ты используешь чтобы повысить корректность программ и ужесточить структуры данных с которыми ты работаешь? Если это конечно не зависимые типы и моноид в категории эндофункторов. Проперти-бейзед тесты? Может есть какая хорошая литература?
Аноним 08/12/16 Чтв 21:19:57  890725
Аноны, вижу в треде макаки не сидят, поэтому реквестирую у опытных анонов годных книг по CS и related.
Аноним 08/12/16 Чтв 21:25:40  890727
>>890725
http://www.dmoz.org/World/Russian/Компьютеры/Программирование/
Хватит на год.
Аноним 09/12/16 Птн 17:22:37  891172
>>890725
Sicp
Аноним 09/12/16 Птн 17:39:13  891178
>>891172
>>890727
Я имею ввиду качественное advanced чтиво, которое перевернуло ваш мир. А не книги для вката в IT.
Вроде этого списка большинство прочел:
http://catap.ru/blog/2008/08/08/knigi-kotorye-stoit-chitat-v-it/
Аноним 10/12/16 Суб 10:09:43  891521
>>891178
хорошие книги с виду
Аноним 10/12/16 Суб 11:00:39  891543
>>891178
Dcpl еще, eopl, еще cpsbook тут упоминали выше.
Аноним 10/12/16 Суб 12:44:13  891612
>>891178

Concrete Mathematics: A Foundation for Computer Science.
Аноним 10/12/16 Суб 12:51:21  891613
>>891612
Годная книжка, уже читал, но упражнения на доказательства вообще не идут, надо будет повторить.

>>891543
>Dcpl
>eopl
Спасибо обмажусь, я как раз языками люблю упарываться.
Аноним 12/12/16 Пнд 17:15:43  893107
Мамкины ирлангусты, читайте уже пожалуйста Erlang in Anger, не будьте вы такими уёбками.

Рекомандую такой порядок:
1. LYSEFGG
2. OTP in Action
3. Erlang in Anger

Две недели должно хватить, лол
Аноним 12/12/16 Пнд 19:34:20  893196
>>893107
почитаю, бро, спасибо
Аноним 18/12/16 Вск 00:53:19  896276
>>893107
>Две недели должно хватить
Хуясе, это я один такой тормоз, что одну книжку месяц читаю, а если делать хотя бы часть упражнений и вдумываясь разобрать каждый кусок кода может и на полтора растянуться?

3 шт. за две недели, вот это унизил
Аноним 18/12/16 Вск 10:00:04  896406
>>896276
Да это старый прикол: Ирланг учится за 2 недели, то есть за год можно выучить до 26 Ирлангов.

Но в целом, он внатуре учится быстро, за пару дней я бы даже сказал. А потом ещё год-полтора учится OTP
Аноним 18/12/16 Вск 10:18:27  896407
>>896406
>Ирланг учится за 2 недели, то есть за год можно выучить до 26 Ирлангов.
Ору
Аноним 22/12/16 Чтв 19:04:38  898935
Что-то притихли эрлангоны. Подкиньте какой-нибудь годноты
Аноним 22/12/16 Чтв 19:21:58  898952
поясните за hipe поцоны!? нахуй оно всралось? че это ваще такое? типа оптимизатора байт-кода или че?
Аноним 22/12/16 Чтв 21:32:02  899053
Все тихо, системы работают.
>>898952
Помоему это просто набор патчей для beam чтобы оно работало быстрее, хрен знает кароче. А чего ты интересуешься?
Аноним 22/12/16 Чтв 22:40:02  899098
>>898952
И ты с какого района вообще?
Аноним 24/12/16 Суб 17:44:20  900128
На erlang/elixir есть годные биндинги opengl?
В гугле не банили
Аноним 24/12/16 Суб 22:17:48  900260
>>899053
>>899098
с девятого. Да и че, поинтересоваться уже нельзя? Че ты дерзкий такой? Есть телефон позвонить?
Аноним 24/12/16 Суб 22:42:27  900267
>>900128
обколются своей марихуаной
Аноним 25/12/16 Вск 01:23:33  900338
>>900267
Нашел только wx Widgets, но это по сути просто библиотека куда можно рисовать framebuffer

Любитель подрочить языки
Аноним 26/12/16 Пнд 03:50:15  901067
>>845574
> Выигрыша перед скалкой

в чем, по-твоему, выигрыш скалки? какое-то гипотетическое удобство написания или не менее гипотетическая персональная производительность? напомню, что ты пишешь код для корпорации, корпорацию не ебет ни твое удобство, ни твоя персональная производительность, у них совсем другие критерии, типа TCO (как пример), и по этому критерию скала выигрывает только у ассемблера.
Аноним 26/12/16 Пнд 03:53:42  901068
>>845987
>При желании ты мог бы сам за 15 минут всё нагуглить и посмотреть

ебать, ты предлагаешь ему нагуглить опровержения на собственный тезис? да ты упорот наглухо
Аноним 26/12/16 Пнд 22:38:49  901565
Подустал от руби экосистемы(5+ лет опыта
), начинаю щупать альтернативы, пайтон не интересует(такое же болото).

Феникс интересен, Жозе тот еще евангелист, правильно понимаю что лучше пару недель потратить на Эликсир и лишь потом смотреть Феникс? Нужен ли Erlang, в принципе или на первых порах можно обойтись?

Иду по getting started с сайта эликсира, есть роадмап проверенный уже по гайдам/книгам? Спасибо!
Аноним 26/12/16 Пнд 22:52:14  901578
>>901565
А чего не кложурец?

Пацаны вроде советуют с эрланг отп ин аксьон вкатываться.
Аноним 26/12/16 Пнд 22:56:59  901580
>>901578

а зачем? если честно ведусь на хайп, ну и джаву не очень люблю, пусть даже в виде кложы, личное предпочтение.

А по собственному опыту? Просто боюсь начать с Ерланга, перегореть и обосраться, а по итогу окажется что он и не нужен особо

Ну то есть по примеру Си Руби Рельсы, я си только с универского курса знаю, и за более чем 5 лет работы с рубями и рельсами мне си не понравились. Вру один раз понадобились для перфоманс тюнинга и все.

Не то же ли самое в связке Ерланг Еликсир Феникс?
Аноним 26/12/16 Пнд 22:57:50  901582
>>901580
не понадобились

быстрофикс
Аноним 27/12/16 Втр 01:17:32  901648
>>901565
>правильно понимаю что лучше пару недель потратить на Эликсир и лишь потом смотреть Феникс?
Да. Вообще в сети учебников/гайдов навалом, но начать лучше со стандартной комбинации Programming Elixir/Metaprogramming Elixir, но не сильно на ней зацикливаться. Эрланг учить не обязательно.
Аноним 27/12/16 Втр 07:34:51  901730
мне кажется есть смысл потратить один-два дня на ирланг, но без OTP. он простой как трусы, не ленитесь
Аноним 27/12/16 Втр 08:57:36  901748
>>901648
Подкинь ка урлецов
Аноним 27/12/16 Втр 12:28:18  901890
>>901748
libgen.io
Аноним 28/12/16 Срд 19:48:38  902725
Автор N2O в треде, какие были вопросы?
Аноним 28/12/16 Срд 19:59:15  902728
>>902725
хуи сосёшь?
Аноним 28/12/16 Срд 20:00:56  902730
>>901580
Ну просто с руби обычно в кложу укатываются, вот и спросил.

Ерланг с си я бы не стал сравнивать, ну вообще никак. В ерланге главное отп, а не сам язык. Уж перкгореть ты точно не перегоришь, но зато поймешь, откуда у элексиров ноги растут. По-моему имеет смысл короче.
Аноним 28/12/16 Срд 20:29:53  902739
>>902725
Почему ты такой мерзкий?
Аноним 28/12/16 Срд 22:41:44  902799
>>902725

что врачи говорят насчет твоего диагноза, перспективы есть?
Аноним 28/12/16 Срд 23:16:55  902812
>>902725
Раскажи вкратце про опыт использования, плюсы-минусы, корнер кейсы. Если ковырял фениксы, поясни за отличия.
В ближайшее время пользовать не планирую, но простынку от анона бы почитал

>>902728
>>902739
>>902799
Семен плиз
Аноним 29/12/16 Чтв 00:00:32  902823
>>902725
Чё там с прувером? С деньгами математику разобрался?
Аноним 29/12/16 Чтв 01:36:44  902859
>>902812
>Семен плиз
Детектор сломался.
Аноним 29/12/16 Чтв 01:38:21  902862
>>902812

Ну Фениксы ковырял и сравнение с Elixir делал:
http://maxim.livejournal.com/467426.html

>>902823
С прувером есть рабочее ядро. Уровня примитивных лиспов на 300 строчек. В этом и заключается суть работы. А то что языка верхнего уровня для теорем нет, то такое. Еще будет. Не все сразу. На самом деле OM — это адванснутый порт Morte с Erlang таргетом.

По баблу я ж писал что заплатили математику в полном объеме: http://maxim.livejournal.com/484972.html
Аноним 29/12/16 Чтв 01:45:57  902865
>>902862
Это не ты снимал видосы, где ковырял эликсир и феникс в прямом эфире?
Аноним 29/12/16 Чтв 01:48:01  902867
Даже если вы никогда не будете писать на эрланге, сделайте следующее:

1. Запустите erlang шелл и посмотрите на observer.
2. Почитайте как работает Erlang VM.
3. Поймите, что для программирования достаточно паттерн мачинга, функций, модулей и receive send.
4. Не учите OTP ни в коем случае, учите vanilla erlang, именно на vanilla erlang написан N2O Synrc стек, OTP — это говно мамонта которому 30 лет.


На самом деле Erlang — это трушная LISP машина, как Smalltalk например. Это культурка как APL, K. Это достаточно хорошая виртуальная среда, чтобы начать строить на ней свой мир, что мы и сделали. Никто не говорит вам бросать сишечку или свои руби, но почувствовать вкус Эрланга нужно, вы поймете, что остальные современные стеки, включая даже один из самых технологичных минималистичных — Clojure — переусложнены. Пока вы не столкнетесь с Эрлангом вы это не поймете. Даже Хаскель после эрланга не кажется такой уж хорошей идеей. Ну и вообще CPS интерпретаторы — это особый класс и он никогда не пропадет несмотря на GHC и LLVM более технологичные решения позволяющие делать глубокие оптимизации.

Несмотря на то, что мы отошли от дел и текущим майнтейнером Synrc стек является московская группировка Erlang One мы крайне рекомендуем серьезно отнестись к нашему стеку. Если лежит душа в Эликсир прыгайте незамедлительно, так как я писал месяц на эликсире и это не тот эликсир который был еще год назад, прогресс — колосальный!

Мы даже сделали для вас эликсировцев Ecto Mnesia Adapter:
https://github.com/nebo15/ecto_mnesia

Такие дела котаны

Аноним 29/12/16 Чтв 01:49:48  902868
>>902865
не не я
Аноним 29/12/16 Чтв 01:53:20  902869
>>902867
Спасибо, потом ознакомлюсь. Правда действительно ли мнезия так будет круче постгреса? И правда ли эрланг труевейший лисп чем кложур лол
>>902862
Привет Максим. N20 выглядит слишком лунно. Я лучше на фениксе в вебе буду кататься или на голом плаге. Будешь в Минске сигнализируй :)
Аноним 29/12/16 Чтв 01:57:06  902871
>>902869
Мнезия не круче постгресса. По своему устройству мнезия больше классифицируется как MUMPS или KDB. Впринципе мнезия такое же говно мамонта как и OTP, она часть OTP. Но для вебчика ее достаточно. То где в 80% используют постгресс для стартапов где надо меньше 1000000 пользователей в секунду Mnesia отличный вариант так как позволяет быстро забустрепится. Меня Ecto адаптері не впечатлили, KVS стек круче думвю, да и у него версионирование есть. Ecto бедноват.
Аноним 29/12/16 Чтв 01:58:27  902872
>>902869
>Будешь в Минске сигнализируй :)
Айсед ты?
Аноним 30/12/16 Птн 17:39:46  903662
Выбрал Erlang в качестве своего первого ЯП.
Эликсир показался унылой Python -like парашей.
У меня крыша не поедет?
Аноним 30/12/16 Птн 18:50:15  903718
>>903662
не поедет. Erlang это динамическая опердень как ваши питоны, луа и перлы. Там даже даун с лоботомией сможет писать.
Аноним 30/12/16 Птн 18:52:01  903724
>>903718
даун это не болезнь, а раса человеческих существ
Аноним 30/12/16 Птн 19:14:37  903761
>>903718
>не знает, что такое опердень
Держите ньюфага!
Аноним 30/12/16 Птн 19:18:50  903768
>>903662
Разницы между ними очень мало, в Эликсире только сахарка накатили.
Мне лично по душе Эрланг и его хардкорный Prolog-inspired синтаксис. Можешь начинать с него, но я вангую, что ты всё-таки охуеешь, если он тебя первым будет. Даже книги ни одной нет для ньюфагов, все полагают хоть немного знания о языках.
Аноним 30/12/16 Птн 21:59:25  903845
>>902867
Охуенно, в шапку.
Аноним 31/12/16 Суб 00:07:42  903904
>>903662
>Эликсир
>Python -like
Проиграл с дебила. Олсо Elixir > LFE > Erlang.

>в Эликсире только сахарка накатили.
Ещё один дебс, на эликсире, очевидно, не работавший.
Аноним 05/01/17 Чтв 17:25:39  906502
Кто не знает, внезапно, есть даже мелкoбopдa на Эрланге - Эрлач.co

Мне вкатила - простенько и со вкусом.
Аноним 06/01/17 Птн 01:32:28  906919
>>906502
Url дай
Аноним 06/01/17 Птн 01:35:56  906923
>>906919
Сам нашел
годно задизайнили
Аноним 12/01/17 Чтв 13:09:03  910413
Пустой тред пустого языка
Аноним 12/01/17 Чтв 13:14:08  910414
>>910413
может быть
Аноним 19/01/17 Чтв 01:15:22  914942
О, нихуя себе, эрланг. Говно. Писал на нем за деньги некоторое время назад, сейчас выкатился. Уебищный дсл для написания распределенных систем. Ах да, он еще и ТОРМОЗИТ.
Аноним 19/01/17 Чтв 02:29:12  914960
>>914942
несомненно, говно без задач
Аноним 19/01/17 Чтв 09:12:50  915021
>>914942
Куда укатил?
Аноним 19/01/17 Чтв 10:12:03  915038
>>914960
Ненужно!
Аноним 19/01/17 Чтв 16:07:13  915216
>>914942
наркоман, ты блять манер биткоинов на нем писал чтоли?
Аноним 19/01/17 Чтв 17:02:20  915250
>>914942
>ще и ТОРМОЗИТ
На какой задаче он у тебя тормозил?
>пок-пок никрасивый кудааах!
Я осознаю, что существуют безмозглые пидоры, у которых в список значимых кримериев может входить, к примеру, синтаксис языка. Hу так накласть на них. Интересуют объективные критерии, а не цацки всякие.
Аноним 19/01/17 Чтв 17:10:54  915257
>>915250
да хватит тебе, давай уже остановимся на том, что эрланг не нужен :3
Аноним 19/01/17 Чтв 23:27:17  915459
>>915257
Наоборот же, всё кроме эрланга и говняшной не нужно.
Аноним 20/01/17 Птн 20:13:32  915885
2.gif (958Кб, 400x208)
Посоны, имею возможность вкатиться в эликсир налегке - после рубей и рельс предлагают работать с эликсиром и фениксом.
Вопрос такой, а насколько это правильно - не работая с эрлангом начать работать на эликсире? Это будет какой-то принципиальный пробел в знаниях и понимании или это норм?
Аноним 20/01/17 Птн 20:40:25  915896
>>915885
Вроде выше как-то задавали такой же вопрос, и мнения разделились. Но вроде норм, к тому же если уж предлагают.
Аноним 20/01/17 Птн 22:04:09  915957
>>915885
Ну вот был недавно эликсир митап полный рубистов, первые выступающие рубисты рассказывали как за пару-тройку дней переписали сервис с руби на эликси и оно заработало. Эликсир все видели в первый раз. Ну правда там и в общем опыт разработки был ~6 лет емнип.
Аноним 20/01/17 Птн 23:17:24  915997
>>915885
Можно без эрланга. Ну то есть, если бы ты его знал - было бы проще, конечно, так как меньше осиливать пришлось, но вообще и так можно. К тому же чтоб феникс программировать скорее больше рельсовые знания пригодятся, чем эрланговские :D У рельсовиков чаще затык с переключением с ActiveRecord на Ecto, чем с какой-то OTP ёбой.
Аноним 20/01/17 Птн 23:27:05  916002
Так че там с эликсиром, взлетит, количество вакансий в ближайшие пол года\год повысится? Я просто сейчас рельсы дрочу, но нихуя для джуна вакансий нет. Начальные знания эрларга есть, феникс тоже немного колупал, да и другие всякие йобы знаю. Так что посоветуете аноны: дрочить сразу эликсир и посвятить все время ему, писать в стол, коммитить в эликсировские проекты и ждать пока на птицевакансии начнут брать джунов или продолжать дрочить рельсы?
В каком случае я раньше от голода умру?
Аноним 20/01/17 Птн 23:45:17  916011
>>916002
Не думаю что в ближайшие несколько лет можно будет устроится где-то на эликсир джуном. Это вообще нонсенс, эликсир и джун. Разве что напрограммировать себе стажа хотя бы до мидла, а там можно в удалённый проект куда-то вкатится попробовать.
Аноним 21/01/17 Суб 02:01:48  916083
>>916002
На эликсир вообще вакансий нет, куда там джуновские. С рельсами сейчас куда проще вкатиться.
Аноним 21/01/17 Суб 13:57:36  916276
2.png (110Кб, 804x911)
>>916002
>птицевакансии
Что?
Аноним 21/01/17 Суб 13:58:25  916277
>>916276
Бля, сначала запостил, потом понял. Фейспалм.
Аноним 23/01/17 Пнд 11:44:27  917792
>>915885
я бы не нанимал джуниора без опыта. Ты же все сломаешь нахуй и ничего не напишешь, смотреть еще за тобой. Кому это нахуй надо кроме больших компаний? Ну а дальше ищешь большие компании и понимаешь что там эликсира нету.
Аноним 23/01/17 Пнд 11:48:35  917796
>>917792
Интересно, как тогда по твоему получаются эрлангисты и эликсирщики, если большие компании эти языки не используют, а джуниоры без опыта на этом языке все ломают нахуй и их лучше не нанимать?
Аноним 23/01/17 Пнд 12:02:29  917805
>>917796
Приходят из других технологий

Даже в начальной книжке от Джо Армстронга подразумевается что у тебя есть какой-то бекграунд разработки серверов, вполне справедливо.
Я не понимаю вообще, как может эрланг закатить как первый язык программирования, он хорош в сравнении с другими языками в определенных нишах, как это вообще может подкупить новичка? И нах такой новичок надо? Сам бы нанял такого девелопера?
Аноним 23/01/17 Пнд 12:35:52  917820
>>916002
На hh по ДС динамика околонулевая. Не думаю, что что-то изменится в ближайшие год-два, а в итоге, скорее всего, и не взлетит Эликсир. Компании предпочли олиГОФЕРена.

>>917805
Когда был нуфагом, меня подкупил эзотерический синтаксис.
Аноним 23/01/17 Пнд 14:25:37  917976
>>917805
>Посоны, имею возможность вкатиться в эликсир налегке - после рубей и рельс предлагают работать с эликсиром и фениксом.
Это по твоему не бэкграунд? Я не тот анон, но ты какую-то хуйню на его пост написал
Аноним 23/01/17 Пнд 19:14:33  918176
>>917820
http://jobs.elixirdose.com
Аноним 23/01/17 Пнд 20:02:57  918206
>>918176
Я рашкореалии, естественно, имел в виду.
Аноним 23/01/17 Пнд 20:15:40  918215
>>917976
Бля и правда хуйню написал. Я как-то прочитал по диагонали и думал что у чувака 0-й опыт. После руби и рельс нормально, но надо прочитать тот же программинг эрланг и что-нибудь по OTP(хотя если делать планируется на фениксе то не обязательно, можно обойтись только книгой Джо Армстронга)
Аноним 23/01/17 Пнд 20:18:10  918218
>>917820
Ну не правда. Язык в авангарде, но и не мертв, а весьма бодро развивается для своей ниши и своего комьюнити. У го и эликсира мало пересекающиеся парадигмы при близкой нише. Обязательно будут команды как на го так и на эликсире, ну на эликсире меньше. Но тебе же и не много надо команд, а всего одна :)
Аноним 23/01/17 Пнд 20:30:41  918228
>>918218
Мотивации тратить время на изучение Эликсира всё равно нет. Взлетит-будет интересно, но у меня настрой скептический.
Смайлоблядь ты эдакая!
Аноним 23/01/17 Пнд 22:29:05  918310
>>918206
Так надо смотреть шире. С такими языками, как мне кажется, проще всего перекатиться.
Аноним 23/01/17 Пнд 23:28:36  918371
>>918176
>λ Software Engineer
Kek
Аноним 27/01/17 Птн 17:02:09  920337
Сап потокослесари, где можно почитать об устройстве виртуальной машины ерланга, узнать почему она такая охуенная. Да и вообще в целом какое-нибудь чтиво, поясняющее таинства виртуальных машин. А то я на базовом уровне знаю, но это знания уровня хеллоуворда на хаскеле
Аноним 27/01/17 Птн 21:18:22  920465
>>920337
Подробную инфу надо выкапывать в мейллистах и эриксоновских пейперах, а лучше в исходниках. Ссылки же на краткий принцип работы:

Щедулер:
http://jlouisramblings.blogspot.co.uk/2013/01/how-erlang-does-scheduling.html
https://hamidreza-s.github.io/erlang/scheduling/real-time/preemptive/migration/2016/02/09/erlang-scheduler-details.html

Мемори лейаут:
https://hamidreza-s.github.io/erlang%20garbage%20collection%20memory%20layout%20soft%20realtime/2015/08/24/erlang-garbage-collection-details-and-why-it-matters.html

Мусоросборщик:
https://www.erlang-solutions.com/blog/erlang-19-0-garbage-collector.html

Принципиальная модель:
http://www.it.uu.se/research/publications/lic/2005-001/

Аноним 28/01/17 Суб 09:09:02  920700
>>845348 (OP)

Три красавчика на диване. Я знаю, что будет дальше.
Аноним 28/01/17 Суб 14:19:22  920804
>>920337
http://beam-wisdoms.clau.se/en/latest/
Аноним 28/01/17 Суб 15:07:20  920822
>>920700
чаепитие?
Аноним 28/01/17 Суб 15:50:12  920831
>>920700
Дальше родится эрланг
Аноним 29/01/17 Вск 14:51:16  921470
>>920465
>>920804
Ультрагоднота аноны, благодарствую.
Аноним 31/01/17 Втр 19:56:37  923302
http://gittrends.io/#/explore?page=1&language=Erlang&domain=All&growth=All
Аноним 01/02/17 Срд 13:42:01  923809
>>923302
Что там?
Аноним 04/02/17 Суб 23:18:13  926673
>>923809
По ссылкам с двачей не ходишь?
Аноним 04/02/17 Суб 23:19:52  926677
>>920700
Так они поибалсь хоть?
Аноним 05/02/17 Вск 02:56:13  926852
>>926677

Ну там потом Страуструп пришел и его всей толпой выебли.
Аноним 05/02/17 Вск 03:15:27  926857
>>923809
Ебут тваю аналофильную мамашку.
Аноним 05/02/17 Вск 07:30:20  926884
>>920700
Cделают барекбон тваей мамашке вафлистой.
Аноним 05/02/17 Вск 17:28:15  927150
>>926673
Да.
Аноним 05/02/17 Вск 18:25:37  927182
>>927150
Правильно делаешь, посоны не ходите, там цп. Дали пять лет исправительного программирования на коболе. Теперь сижу в кандалах, опердени сопровождаю, выдали элт монитор и засаленую мышку с шаром.
Эрланг со всех машин деинстальнули и не разрешают качать, вся жизнь под откос пошла, чтож ты делаешь
Аноним 05/02/17 Вск 20:09:47  927249
>>927182
Статические опердени на коболе. Тяжело, братан, понимаю. Это тебе не штангу тягать и не вижеокурсы в пинджаке продавать. Тяжело, братан. Держись.
Аноним 06/02/17 Пнд 05:03:55  927444
>>845348 (OP)
Поясните за акторы. Что будет, если сообщение проебётся при пересылке?
Аноним 06/02/17 Пнд 05:11:52  927446
>>927444
система сдетонирует и нам всем пизда
Аноним 06/02/17 Пнд 05:14:43  927447
>>927446
Ну как такое обрабатывать?
Аноним 06/02/17 Пнд 10:36:26  927509
>>927447
Дружище, притворяться дураком - не самый лучший способ развеселить окружающих.

Если ты послал сообщение и не ждешь - значит тебе наплевать дошло оно или нет
Аноним 06/02/17 Пнд 11:20:26  927519
>>927444

Каким образом оно проебется?
Аноним 06/02/17 Пнд 12:41:35  927556
>>927519
Ну допустим, акторы находятся на разных машинах, а я случайно перерубил сетевой кабель топором. И сообщения не проходят.
Аноним 06/02/17 Пнд 13:05:41  927563
>>927556

Я не помню как именно ведет себя эрланг, если у него исчезнет соединение с удаленной машиной (предполагаю, что N раз попытается переконектиться, потом выдаст ошибку), но эта ситуация в любом случае обрабатывается не на уровне сообщений между акторами, а ниже. На уровне сообщений между акторами ты не должен думать о том, что сообщение не дойдет, как ты не думаешь об этом, когда делаешь, скажем, REST-сервис и хэндлишь урл-запрос. Гарантию доставки сообщения на себя берет нижний уровень - TCP/IP. А срубленный кабель это форс-мажор, который в любом случае выведет систему из работоспособного состояния.
Аноним 06/02/17 Пнд 13:18:32  927568
>>927563
> А срубленный кабель это форс-мажор, который в любом случае выведет систему из работоспособного состояния.
По идее сириус бизнес системы должны переживать кластер партишоны, и просто сгоревшие сервера, вот я и пытаюсь понять, как этого добиться.
Аноним 06/02/17 Пнд 13:26:27  927570
при асинхронной передаче Алиса отсылает Бобу сообщение и ей похуй, пришло ли оно. При синхронной, Алиса ждет сообщение таймаут и потом умирает, не дождавшись (кабель перерубили какие-то пидоры). Сева, личный врач алисы, когда увидет на мониторе что у Алисы отказало сердце, поставит на место Алисы, Алису1 и заставит переделывать задачу, на которой Алиса остановилась, возможно надо будет еще позвонить бобу и сказать что Алиса мертва, поэтому забей на все с чем рулилась Алиса и вот знакомься, это Алиса1.
Так понятно? А вообще, качай книжку Programming Erlang, там про все это написано.
Аноним 06/02/17 Пнд 13:30:14  927573
>>927570
возможно, прийдется даже убить боба и заменить его клоном, потому что хуй знает чего его сообщения не приходят, может он ахуел.
Аноним 06/02/17 Пнд 13:36:32  927580
>>927573
Но ведь тогда в одном кластере будет два набора акторов, которые нахуевертят конфликтов
Аноним 06/02/17 Пнд 14:22:27  927599
>>927570
Сука, больше всего бесят ебучие foo bar и Алиса с Бобом, я бы за такое на ториевые рудники ссылал. Пиздец у мебя бомбит от твоего поста.
Аноним 06/02/17 Пнд 14:30:30  927603
>>927580
Всмысле? Опиши задачу и тогда придумаем решение, сферических дженерик способов все сделать заебись нету, за это нам бапки и платят.
Какие кластеры?
>>927599
Бесит? Ну ладно, держи нас в курсе :)
Наверное просто ты не знаешь что Алису с Бобом юзают потому что у них имена начинаются на А и Б, вот и бесишься.
Аноним 06/02/17 Пнд 15:09:40  927625
>>927603
https://en.m.wikipedia.org/wiki/Split-brain_(computing)
Аноним 06/02/17 Пнд 15:34:24  927634
>>927625
Прочитай книгу, а потом сформулируй свой вопрос, если он останется
Аноним 06/02/17 Пнд 17:12:37  927711
>>927568
например riak так и делает и там всё очень просто - посылвается сообщение не одной ноде, а ей и её репликам, а дальше все эти ответы руками мерджатся (на самом деле только при кофнликте)
https://habrahabr.ru/post/75202/
Аноним 07/02/17 Втр 15:53:37  928220
http://fforum.winglion.ru/viewtopic.php?f=4&t=363 смотрите что я откопал
Аноним 07/02/17 Втр 22:07:02  928408
>>928220
прикольно, а зачем это?
Аноним 07/02/17 Втр 22:10:10  928411
>>928220
наркоманкая хуита
более наркоманская только unlumbda, программировать на комбинаторной логике, пиздец развлечениние, для этого нужен особый парень

>>928408
может потому что в ерлаше строки тоже списки
Аноним 07/02/17 Втр 22:24:12  928417
>>928411
Согласен, подрачивал factor, ну по началу прикольно, че. Но по сути - хуйня без задач.
Аноним 08/02/17 Срд 00:14:52  928452
>>928220
>>928411
>может потому что в ерлаше строки тоже списки
Охуеть вообще, один Форт находит в 2017, другой вообще не знает, что почти во всех языках строки это списки.
Аноним 08/02/17 Срд 00:24:47  928454
>>928452
В каких это почти всех? Только в старье всяком, во всём более менее современном String - это String, а не список чаров, список интов или список ещё какой-то хуиты.
Аноним 08/02/17 Срд 01:14:21  928469
>>928454
В качкеле - лист, в крестах - лист, гопараша - туда же, в D вроде бы тоже самое, не помню. Руби, js, питон - ну да, тут нет чаров, но в остальном такое же поведение + мутабельность. Какая именно характеристика делает "String - это String"? И почему для тебя это так важно? Весь тред тут со своими строками носишься.
Аноним 08/02/17 Срд 13:24:41  928649
>>928469
в руби есть чары и со строками можно работать как с массивом. Так что тоже мимо, у меня такое же непонимание как у тебя, бро.
Да и строки используются как набор чаров только когда надо, в остальных случаях всегда бинари.

Я этого наезда не понимаю, ой у вас строки это список чисел, ну да хули, заебись хуйня. Можно заворачивать в {string, <<"mamku ebal">>} если хочется свой особый тип для строк
Аноним 08/02/17 Срд 19:10:37  928938
>>928649
>>928469
Да невозможно удобно работать в эрланге со стрингами, потому что там НЕТ настоящих стрингов, нет такого типа, поэтому их почти никто там и не использует, бинари на входе - бинари в системе - бинари на выходе, всё
если нужно сделать конкетнацию - просто юзают иолисты с теми же бинарями

>не понимаю
ну да, это же так охуенно когда у тебя is_list выдаёт true и на строку и на список с хуй знает чем, и "pizda" матчится с [Ti|Hui], а когда нужно работать скажем рекурсивными функциями с гетерогенным списком, где могут быть строки, а могут быть списки со строками, или с списки с дилдами, или списки с интами в перемешку с уникодовскими кодепойнтами - это так всё весело просто пиздец. Видишь в программе где-то гуард do_shit(A) when is_list(A), стразу интуитивно понятно что человек ждёт строку на вход, ага
я уже не говорю о ебле с конвертациями туды-сюды через блевотный unicode модуль когда работаешь с юникодом
короче это был изначальный проёб эрланга и в эликсире String сделали поверх бинари, в эликсире x = "abc" значит что x - это бинари закодированный в UTF-8, но так как там ещё есть и сигилы, то в принципе значение того что в "..." можно менять просто указывая префикс, вжух ~r"...." у нас регулярка, вжух ~c"..." у нас чарлист, вжух - список атомов, плюс наконец то нормальная интерполяция типа "text goes #{here_int} times in #{here_struct} because #{here_string}" без бесконечных эксплиситных конвертаций и ++.

радует только что в ерланг это тоже скоро добавят
Аноним 08/02/17 Срд 19:28:27  928948
>>928938
так а почему тебе и правда не замотать строки в кортеж {string, list()} если так уже жопа горит, и матчся на них сколько душе угодно. Ну серьезно.
Аноним 08/02/17 Срд 19:37:55  928953
>>928948
ага чтобы потом везде в коде делать
{string, MyString} = MaybeString
do_huita_with_my_string(MyString)

а так же case MaybeString of {string, String}
и так далее в таком же ко-ко-ко стиле
охуенное решение, напоминает самый уёбищных json парсер для эрланга всех времён и народов mochijson2 с его {struct, [{strKey, <<"strVal">>}, {intKey, 10}, {arrayKey, [1, 2, 3]}]}
Аноним 08/02/17 Срд 20:02:26  928980
>>928953
Я не понимаю в чем проблема. Юзаешь везде бинари. Когда надо поработать с кодпоинтами, то используешь определенные модули. У тебя есть предложение как сделать лучше? Давай внесем рацуху. Если ты предложишь что-то пиздатое то так и быть, сделаем предложение пацанам из эриксона. Вируталка опенсорсная и не поносно написана, давай захуярим.
Аноним 08/02/17 Срд 20:15:42  928995
>>928980
ничего уже делать не надо, в эликсире уже всё сделали, а пацаны из эриксона судя по
Sigils are great. Erlang could have had these 15 years ago, and they can be added now without breaking backwards compatibility.
и так знают что делать
Аноним 09/02/17 Чтв 16:09:52  929517
Братаны, укажете в следующей шапке LFE? помню кто-то грозился
Аноним 09/02/17 Чтв 16:13:40  929521
>>929517
Ок, но перекат я не думаю, что стоит сразу пилить, через полгодика, может.
Алсо, в шапку Лиспотреда LFE уже добавил.
Аноним 09/02/17 Чтв 16:39:19  929542
>>929521
Чтобы пофаниться и пописать свои распределенные кластеры метапарадигм что лучше: erlang LFE или clojure?
Аноним 09/02/17 Чтв 16:40:12  929544
>>929542
>erlang, LFE или Clojure?
пунктуациофикс
Аноним 09/02/17 Чтв 16:46:00  929548
>>929542
LFE, но это мнение с дивана. Кложура всё-таки сильно упирается в Джава ВМ, где много чего нет, с другой стороны в ней больше всякого сахарка.
Аноним 09/02/17 Чтв 16:46:20  929549
>>929542
Точно не кложура, ничего фанового в ней нет.
Аноним 09/02/17 Чтв 17:42:48  929605
>>929548
> Джава ВМ
Ну или нода. Но для кластеров метапарадигм как раз в джававорлде куча всякого говна же.

>>929549
Ой-йо, скобкохейтер итт?
Аноним 09/02/17 Чтв 18:37:07  929630
Selection001.png (36Кб, 872x516)
>>929542
Elixir или Clojure. Но лучше Elixir конечно, с его божественными GenStage и Flow.
Где ещё ты можешь делать:
http://teamon.eu/2016/tuning-elixir-genstage-flow-pipeline-processing/
https://hexdocs.pm/flow/Flow.html
Аноним 09/02/17 Чтв 18:54:37  929647
>>929630
Выглядит сочно.

Кстати, а какими языками владеют аноны сидящие в треде? Пару хеллоувордов и факториалов - не считается.
Аноним 09/02/17 Чтв 19:50:34  929679
>>929647
Ну если считать стаж чисто в продакшене то 2 года эрланга, 1 год эликсира, 1 год жееса, пол года кложурскрипта, пол года перла, пару лет пехепе, лол.
Аноним 09/02/17 Чтв 20:18:49  929694
>>929679
С пхп начал чтоль?
Аноним 09/02/17 Чтв 20:20:22  929695
>>929647
[python]
На окамле правда написал пару алгоритмов уровня laba 1488 - vtoroi kurs, но ничего реального.
Аноним 09/02/17 Чтв 20:22:47  929697
>>929694
Ну да.
Аноним 09/02/17 Чтв 21:32:17  929738
>>929647
на руби (<3) и джаваскрипте сервера делал, за то что делал на джаваскрипте стыдно правда, но в свое оправдание я делал идиоматический код :3
Аноним 09/02/17 Чтв 21:51:09  929756
>>929679
Как в эрланг/эликсир вкатился? Что на работе делаешь?
Аноним 09/02/17 Чтв 23:27:16  929863
>>929697
Пили саксес стори как пришел к эликсирлангам. Это не ты тот анон с беларуси?(или нас вас тут вообще несколько?)
Аноним 09/02/17 Чтв 23:46:04  929879
>>929863
После ебли тваей мамашки пришло озаренье, хехе.
Аноним 09/02/17 Чтв 23:58:25  929887
>>929879
Я только что спросил у твоей, грит пиздишь, все совсем не так было.
Аноним 10/02/17 Птн 01:42:16  929954
>>929887
Тебя снова наебали, бббгеее.
Аноним 10/02/17 Птн 02:08:39  929960
>>929954
>снова
Чет тебя на маняфантазии потянуло
Аноним 10/02/17 Птн 09:25:36  930015
>>929863
Не, это я из Беларуси. Который на руби быдлировал раньше :3 Хотя вроде тут в треде проскакивают эрлангеры из варгейминга, на сколько я знаю.
Аноним 10/02/17 Птн 09:44:56  930020
>>929647
С Эрлангом только играюсь, очень хотелось бы зарабатывать на нём деньги, но в ДС полторы вакансии.
А так на работе на Питоне пишу, ну и на ЖС ещё, но это не язык программирования.
Аноним 10/02/17 Птн 16:05:44  930194
Почему вы так не любите
Аноним 10/02/17 Птн 16:06:04  930195
Джаваскрипт жс
Аноним 10/02/17 Птн 16:06:46  930196
Питон?

Блядь, ебаный спам-лист только что не давал отправить пост. И какое блядь слово ему не понравилось? Ненависть.
Аноним 10/02/17 Птн 16:07:44  930197
как- - будто питон лу-чше
Аноним 10/02/17 Птн 16:08:59  930198
Не любит-е жс

Пиздец, я не ебу, что там за сочетание в спам-листе стоит, идите нахуй все
извините, что тред засрал немножко
Аноним 10/02/17 Птн 16:09:43  930199
ПИЗДЕЦ. "Не люби-те жс" в спам листе (без дефиса). Уровень идиотизма зашкаливает, ящитаю.
Аноним 10/02/17 Птн 16:35:20  930218
>>930199
Если спамлист блочит просто скринчик поста делай.

А жс отличный язык, после плюсов и джавы мне он очень понравился своей простотой и гибкостью.
Вангую что это обычный каргокульт, макаки постоянно подхватывают разные мантры от солидных людей. Особенно если какой-нибудь гугль напишет что надо так, а не иначе, все пиздец. В андроиде постоянно такое наблюдаю, еще есть даже дурачки яростно защищающие венгерскую нотацию(в явке это m перед именем поля объекта).
Хз че там в правилах приведения сложного, просто не надо, как уебок, запоминать эти таблицы приведения, а вкурить идею зачем так было сделано. Прототипное ооп хаить это вообще дебилизм, напоминает как в пыхе подражают джаве и только делают хуже, я например сразу подорвался в es5 когда в классах не поставил this перед именем поля при попытке присвоить что-то, да и в целом может мне продвинутые jsники объяснят зачем ввели все эти классы, в чем преимущество новой и недостаток старой системы, кроме мифического ощущения ущербности: "ну ебана, все нормальные посоны на классах сидят, а мы как дебилы прототипируем"?
Аноним 10/02/17 Птн 16:45:51  930221
>>930218
Евангелист, проследуй из этого треда.
Аноним 10/02/17 Птн 16:48:59  930223
>>930218
> скринчик поста
Мне было интересно выяснить, что же было запрещенного в таком безобидном посте.

Ну, справедливости ради - после плюсов и джавы даже анальный секс с неграми тебе покажется веселой прогулкой. Так что это не аргумент. Как язык джаваскрип, конечно, говно - это факт и коммон ноуледж - но вот такое противопоставление ("на питоне пишу, а жс - не язык") мне кажется необоснованным, так между этими двумя языками никакой гигантской пропасти в этом плане нет.

Насчет прототипного ооп соглашусь. Насколько оно удобно - это другой вопрос, но вот подход "давайте сделаем как в джаве чтобы было как в джаве" и "давайте сделаем как в джаве чтобы индусам было проще" лично меня раздражает.
Аноним 10/02/17 Птн 16:55:35  930229
>>930221
Ты ебанусля? Мне в общем-то похуй на дж, но он не настолько плох как о нем постоянно кричат

>>930223
>после плюсов и джавы даже анальный секс с неграми тебе покажется веселой прогулкой. Так что это не аргумент.
Схуя это? Я рад если ты начинал с относительно элитных языков вроде руби, эрланга, перла или боже упаси, качкеля. Но это меньшинство.
А о хуевости джса как раз часто кричит спласплас элитка, пыхеры, сами жсники неосиляторы или джава-шарпо интерпрайз
Аноним 10/02/17 Птн 17:08:13  930236
Уходите в ЖС-тред, здесь распределённые кластеры метапарадигм обсуждают.
Аноним 10/02/17 Птн 20:27:45  930352
>>930229
Да ладно, о хуевости жса "кричит" любой здоровый человек, который с ним сталкивался. Ну говно язык, ничего тут не поделаешь, да все и привыкли уже. Плюсы - оче СЛОЖНА, джава - оче СКУШНА, как-то так.
Аноним 10/02/17 Птн 21:54:59  930401
>>929630
http://doc.akka.io/docs/akka/current/scala/stream/stream-graphs.html
Аноним 11/02/17 Суб 01:14:37  930602
>>930236
Cрал тебе в ротешник.
Аноним 11/02/17 Суб 13:44:15  930802
>>930401
Ну да. Ничего удивительного, Хосе в одной упряжке с Акка тим в рамках Reactive Stream Initiative, и GenStage, как и Apache Stream был написан по их спеке, ну разве что с некоторыми отличиями, вызванными особенностями Erlang-style месседж-пассингом.
"E.g. backpressure is a thing that is not easily supported implicitly in Erlang/Elixir in the same way as in FBP languages where the bounded-buffer channels provide implicit backpressure by blocking the sends on the outport they are connected to when the buffer is full."
Вообще интересная тема в целом.
https://www.youtube.com/watch?v=khmVMvlP_QA
Аноним 11/02/17 Суб 14:44:14  930856
>>865765
Почему у нее цвет кожи на ушах не совпадает с цветом кожи лица?
Аноним 11/02/17 Суб 15:09:21  930886
>>930856
Бля, тебя ебет вообще? Пиздец, у меня в коворкинге за такие вопросы убивают нахуй!

Сперва подумал, что твой пост относится к посту прямо над ним. Долго думал, где ты в той презентации увидел ее уши.
Аноним 11/02/17 Суб 15:40:26  930916
>>930856
Двачую, давно хотел спросить, но в коворкингах за такие вопросы убивают нахуй, надеюсь хоть на двачах ответят
Аноним 11/02/17 Суб 16:51:28  930968
>>845348 (OP)
Функционало-господа, обоссыте, но не бейте!
Решил для себя (с дальнейшими планами) вкатиться в функциональное программирование.
Что выбрать между Эрлангом и Хаскелем? нет, я не троллю
Вкатываюсь из жабы, если кому интересно, жаба настоебенила.
Знаю что и в эрланге и в хаскеле есть збс веб фреймворки, на которых писать одно удовольствие. я прав?
Аноним 11/02/17 Суб 16:56:28  930973
>>930968
>Что выбрать между Эрлангом и Хаскелем?
Clojure
Аноним 11/02/17 Суб 17:02:35  930979
>>930968
Если работать, а не борщи хлебать то конечно эрланг\эликсир.

На хаскеле веба не пишут, максимум банковскую хуйню(и то инфа уровня "один качок сказал")
Аноним 11/02/17 Суб 17:08:13  930986
>>930968
Во-первых, тут на нулевой где-то недалеко был ФП-тред. Ну да ладно.
Нужно выбирать Haskell, это флагманский язык из мира ФП. Всякие скалы, эрланги, кложури - они тоже как бы ФП, но они больше не о ФП, а о скрещивании ФП со всякой хуйнёй, с ООП, с метапрограммированием, с конкурентными моделями и т.д. Поэтому если ты хочешь угореть чисто по ФП, без всякой лишней хуйни - выбирай Haskell, а потом уже можешь на всякие гибридные языки смотреть.
Добра тебе, путник.
Аноним 11/02/17 Суб 17:50:06  931030
>>930979
на хаскеле есть фреймворки под веб (даже не один)
Аноним 11/02/17 Суб 18:09:32  931048
>>931030
Не сомневаюсь, на расте, дишке тоже есть, да я даже уверен что на ассемблере уже есть пару веб-фреймворков, а толку?
Аноним 11/02/17 Суб 18:16:16  931055
>>931030
Там только один юзабельный фреймворк под веб и он слишком сложный и неудобный.
Аноним 11/02/17 Суб 19:11:38  931105
>>930968
This -> >>930973
Аноним 16/02/17 Чтв 04:21:05  934193
Блять, откуда эти говноеды сюда прибежали? В кунсткамере на помойку выбрасили заспиртованные экспонаты и они скопом вкатились в этот ИТТ тхред? Идите дрочите на свои event-zaloop'ы в других местах
Аноним 16/02/17 Чтв 09:34:26  934289
erlangbyexeypan[...].jpg (515Кб, 724x1024)
Уважаемые, тред подходит к бамплимиту, посему хочу поздравить всех причастных, потому что предыдущий просто смыло, а этот продержался без малого полгода.

Когда создавать следующий и что добавить в шапку?

ОП
Аноним 16/02/17 Чтв 10:57:49  934318
>>934289
просто не обращай на них внимание и не отвечай им и они сами уйдут, бро.
>>934289
ссылки на lfe, elixir, дизайн референс otp
beam wisdoms, ну и книги указать. Programming Erlang, LYSE, Erlang and OTP in action, Design for scalability with Erlang/OTP, Programming Elixir, Metaprogramming Elixir, ссылку на канал erlang solutions с ютуба, ссылку на erlang central
Аноним 16/02/17 Чтв 11:21:44  934333
>>934289

Лол, откуда такая фотка?
Аноним 16/02/17 Чтв 11:24:40  934335
>>934333

А, нагуглил уже.
Аноним 16/02/17 Чтв 17:45:21  934598
>>934335
А в тред не вбросил. Ну конечно, давайте все гуглить по очереди, зачем в тред вбрасывать, мы же программисты, мы любит копипаст и не любим экономию.
Аноним 16/02/17 Чтв 18:29:41  934622
136224original.jpg (602Кб, 724x1024)
>>934598
http://ru-foto.livejournal.com/56672901.html

Да хуйня полная, ни какой логики и аналогий, тупо на одной и той же бабе намалевали логотипов и все. В эрлаче с анимедевочками и то лучше хоть аниме и говно.
На соски с пика чуть не блеванул.
Аноним 16/02/17 Чтв 20:42:15  934691
>>934622
Хм, понятно. Спасибо.
Аноним 16/02/17 Чтв 21:16:18  934724
>>934622

фу-бля, голый мужик и то симпатичнее. да, да рубипидор негодует
Аноним 17/02/17 Птн 01:13:02  934868
>>934622
Фудзияма
Аноним 17/02/17 Птн 22:42:45  935340
Сап эрлач, вопрос не про эрланг, но не гоните ссаной. Планирую переписать одно крупное десктоп приложение которое сейчас на плюсах. В моих влажных фантазиях я разделяю его на модули и пилю эти модули на абсолютно любых языках. Так вот, если ли какая то годная методичка или книга, как это делать, чтобы пояснялось на какие маркеры обращать внимание и где искать границы модулей, как рефакторить и т.д.? Есть ли какие-нибудь наработки по универсальным межязыковым интерфейсам, как вообще организовать общение кусков проги, если одна хуитка на каком-нибудь хачкеле, другая на эрланговском лишпе, а третья на расте? Как ты наверное понял делаю я это для удовлетворения собственных комплексов так что аргументы типа "ко-ко-ко зачем?", "нипрактично", "сука, а мне потом поддерживать" мимо цели. Еще особо не углублялся в микросервисы, но вроде бы это не про то т.к. работы с сетью там вообще нет.

Монолитного говна то набросать я горазд, а вот в такой дзен-модульности у меня чет затуп, помоги аноний
Аноним 17/02/17 Птн 22:48:21  935344
>>935340

Интересный таск, удачи!

>Есть ли какие-нибудь наработки по универсальным межязыковым интерфейсам

Да, конечно, что-то типа такого https://en.wikipedia.org/wiki/Foreign_function_interface
Аноним 17/02/17 Птн 23:01:31  935353
>>935340
>живые бабы значит не нравятся
>а секс-куклы нравятся
ТВОЁ СОСТОЯНИЕ НАЧИНАЕТ МЕНЯ БЕСПОКОИТЬ
Аноним 17/02/17 Птн 23:19:20  935367
>>935353
Так уже давно, можешь не беспокоиться. Лучше подскажи годноты, если знаешь
Аноним 18/02/17 Суб 00:42:13  935398
>>935340
Да нет по этому нихуя, все наощупь.
Аноним 23/02/17 Чтв 14:53:47  939303
Покажите, пожалуйста, зачем нужен атомарный spawn_link? У меня не получается заспаунить процесс, который тут же делает exit, и не успеть к нему прилинковаться.
Аноним 23/02/17 Чтв 17:00:57  939381
not-sure-if-2.jpeg (14Кб, 300x300)
>>939303
Аноним 23/02/17 Чтв 19:24:21  939503
>>939381
В programming erlang сказано, что были введены атомарные spawn_link и spawn_monitor специально для тех случаев, когда процесс крэшится до того, как ты успеваешь залинкаться к нему.
Но следующие два варианта (spawn_link и spawn + link) работают одинаково - https://ideone.com/VLjMNo
Аноним 23/02/17 Чтв 19:33:10  939511
>>939503
Они не одинаковые, просто скедалер не нагружен, при нагрузках, скедалер может сразу начать выполнять свежий процесс, который умрет без линка.
Аноним 24/02/17 Птн 02:58:04  939849
Какие есть интересные и несильно большие эрланг проекты?
Чтоб можно было сорцы в одиночку осилить за пару недель
Аноним 24/02/17 Птн 02:58:48  939850
>>939849
>не сильно
Фикс
Аноним 24/02/17 Птн 04:00:47  939862
>>939849
помоги с https://github.com/benoitc/hackney будь мужиком блять

он простой как ситцевые трусы твоей мамаши
есть ли жизнь после бамплимита? Аноним 24/02/17 Птн 15:52:09  940127
Ну что вы, эрланганы. Как думаете, долго еще тредик проживет пока его не смоет? Я бы не торопился с новым.
Аноним 25/02/17 Суб 18:55:08  940919
>>940127
>Я бы не торопился с новым.
И правильно, не смыло - неча и починать
Аноним 27/02/17 Пнд 20:11:47  942481
Сап, петуханы.
https://new.corezoid.com/jobs/
Senior Erlang Developer
Required skills

Requirements for applicants:

Excellent knowledge of Erlang/OTP;
Experience in development of Web-services and server applications using Erlang/OTP, Mnesia;
Knowledge of network protocols (HTTP, TCP, UDP, SSL, XMPP etc.)
Relational databases PostgreSQL, MySQL;
NoSQL storages (MongoDB, Redis)
Experience with messaging systems (RabbitMQ)
Experience in development of highly loaded and scalable systems
Experience with Unix/Linux
Advantages

Understanding of Lisp, Haskell functional programming languages

We offer

healthy work in a good team
opportunity to learn and participate in trainings
comfortable operating environment
attractive employment benefits
Dnipropetrovsk, Ukraine, remote work
Аноним 28/02/17 Втр 00:20:03  942647
>>942481
Слава Украине!
Аноним 28/02/17 Втр 14:10:30  942948
>>942481
И сколько на подобных должностях платят?
Аноним 05/03/17 Вск 17:35:03  947000
>>942647
Заметь вся петушиннная тройка на месте.
Erlang, Lisp, Haskell
>>942948
Пройди собес узнаешь.
Аноним 06/03/17 Пнд 00:41:18  947294
>>947000
1. Я не прохожу их требования, хотя "петушиную тройку" неплохо знаю.
2. Я из беларуси, шило на мыло.
Любопытно почем щас качки. Сколько потом просить
Аноним 10/03/17 Птн 11:22:24  950425
Тредж умер?
Аноним 10/03/17 Птн 12:26:03  950456
>>950425
ниет
Аноним 10/03/17 Птн 14:44:42  950564
>>950456
Посоветуйте тогда по поводу динамической опердени, выжерлангеры. Даже не знаю, где еще на этой доске спросить.

В общем представьте себе мультплеерных шутер навроде квейка. Есть клиенты, есть сервер с риалтаймовым тяжелым вычислением. Теперь добавьте сюда условный майнкрафт, то есть создаваемое\разрушаемое клиентами окружение, которое живет своей жизнью, даже когда никого рядом с ним нет. Задача - сделать это все как можно дешевле по вычислительным ресурсам.

Я себе это так представляю: есть легкие игровые сервера (ноды), которые все держат в памяти и говорят с клиентами по удп. Есть тяжелые глобальные сервера, которые хранят все созданные клиентами карты и список нод, общаются с клиентами и нодами по хттп. Есть легкие клиенты, которые могут сами себе запускать локальную ноду.

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

Все правильно? Можно это как-то оптимальней сделать? В частности, при таком сценарии все ноды (кроме локальных, на которых можно отстраивать карту) нужно поднимать мне на своих машинах - мне интересно, можно ли как-то безопасно оптимизировать этот момент, не позволяя читерства. В голову приходит только запись сторонними нодами полного лога всех действий с последующей его прокруткой на доверенных серверах, но это какое-то шило на мыло... Или нет? Самый неоптимальный случай получается, когда к ноде подключается всего один клиент, и мы ради него одного загружаем в память всю карту. Раз клиент один, то и действий на карте будет мало, а значит лог действий можно будет проверить относительно быстро в часы простоя. То есть если клиент на карте один, то ему можно поднять свою, локальную нодуя а нам потом отправить лог действий. Верно или обосрался?
Аноним 12/03/17 Вск 08:34:15  951740
Поясните, где в LFE начинается Lisp и заканчивается Erlang?
Аноним 12/03/17 Вск 14:50:09  951913
>>951740
лисп это подход к написанию кода. Где ты пишешь весь код в виде AST которое представлено списками, позволяет красиво метапрограммировать да и вообще по заверениям светлых умов поднимает настроение и улучшает аппетит. А эрланг это в первую очередь ахуенная виртуальная машина. А какой язык уже превращается в инструкции для нее не так важно. LFE это минималистический набор специальных форм и эвалюатора для форм. Почти все остальное это макросы и dsl.
Подозреваю что для нормальной реализации лиспа поверх BEAM надо описать специальные формы ветвлений, паттерн матчинга, спавна, отправки\получения сообщений. Остальное прикручивается макросами.
Тащемта эликсир это тоже макроязык поверх эрланга. Там тоже почти все это макросы и семантика into: и протоколы говорят о том что Хосе смотрел на clojure когда делал эликсир
Аноним 12/03/17 Вск 15:01:18  951919
>>950564
Ну бля, я зря писал что ли? Хули вы тут лиспы обсуждаете, а конкретную задачу игнорите((
Аноним 12/03/17 Вск 15:35:00  951950
>>951919
это никак не относится к эрлангу и ты там ничего не распределяешь, у клиента есть реплика состояния но всеравно все синхронизируется через сервер. Ты нормально все написал, зачем оптимизировать то, что еще не написано? Сделай прототип по той модели что ты описал и там будет видно. Модель с виду вполне рабочая, на ней тысячи игровых серверов работает
Аноним 12/03/17 Вск 15:56:33  951962
>>951950
К ерлангу относится, конечно, очень опосредованно, но я все-таки распределяю чуть-чуть - в конце же об этом написал, и как раз это у меня сомнения и вызывает. Ну ладно, раз никто не советует, то не буду навязываться.
Аноним 15/03/17 Срд 01:49:15  954040
pic.jpg (51Кб, 610x353)
Как заставить elixir работать c unicode в windows?
Аноним 15/03/17 Срд 01:54:42  954045
pic.jpg (56Кб, 597x342)
>>954040
Забыл добавить. При интерпретации тоже вылетает ошибка.
Аноним 15/03/17 Срд 12:06:36  954235
>>954040
Поставить прыщи второй системой и не ебаться в будущем еще с тысячей других эргангопроблем на окнах.
Аноним 15/03/17 Срд 19:14:57  954573
>>954235
Спасибо, Кэп. Но все же хотелось бы заставить этого осла работать под виндой.
Аноним 30/03/17 Чтв 22:25:05  963907
>>845348 (OP)
Манагер версий нужен, не?
Заебался до треда листать.
Аноним 31/03/17 Птн 21:03:06  964484
Аноны, вкатываюсь в ерланг, нужна ваша помощь.
Написал я программу в сублие, сохранил ее как code.erl
Как ее скомпилировать и запустить? Читаю книгу, но терминал выдает ошибки
Кстати, пытаюсь скомпилировать так:
compile:file(code)
Но я как только не пробовал, не работает. Если что то запускаю терминал из той же папки где и программа, тут я не ошибся.
Аноним 01/04/17 Суб 11:13:02  964675
>>964484
На венде пытаешься?
Аноним 01/04/17 Суб 11:59:31  964703
>>964675
Специально убунду поставил. С компиляцией уже разобрался, но в ебанном мануале написано криво.
Аноним 01/04/17 Суб 18:30:08  964938
>>964703
Книжку джоя читани, там все по пальцам обсасывается.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 534 | 27 | 199
Назад Вверх Каталог Обновить

Топ тредов
Избранное