Наблюдая определённое число адептов этого замечательного языка, зачинаем первый ОФФИЦИАЛЬНЫЙ ЭРЛАНГОТРЕД!Приглашаются также интересующиеся Elixir и прочие причастные.Erlang - один из немногих функциональных языков, разработанный специально для применения в реальном мире.OTP - платформа, содержащая огромное количество библиотек для построения приложений на Erlang, рассматривают с языком как единое целое.Изначально ориентированный на высоконагруженные распределённые отказоустойчивые системы, тем не менее имеет более широкую сферу применения.Среди самых популярных приложений, написанных на Erlang стоит упомянуть RabbitMQ, Riak, CouchDB, Wings3D, WhatsApp, ChefЯзык поддерживает все основные концепции функционального программирования, но при этом не перегружен академичностью, писать на нём легко и приятно.Кажущийся с первого взгляда перегруженным синтаксис очень быстро становится привычным и интуитивно понятным.Elixir - язык созданный для виртуальной машины Erlang, соответственно имеет те же самые преимущества. При этом имеет более привычный синтаксис в духе Ruby/Python, а также унаследовал от Lisp-семейства мощную систему макросов.1. С чего начать? http://www.tryerlang.org/https://github.com/patrickgombert/erlang-koans2. Что читать? Joe Armstrong "Programming Erlang"Fred Hebert "Learn You Some Erlang for great good!"+книги из шапки ньюфаготреда3. В чём писать? Vim + https://github.com/vim-erlangEmacs + erlang-modeSublime TextIntellij Idea + Erlang плагин%% принимаются предложения и замечания по шапке треда
>>691428 (OP)>Erlang - один из немногих функциональных языковИ сразу сажи. Erlang это многоагентный язык. "функциональность" (иммутабельность, вообще-т) там сбоку.
>>691429Нигде не упоминал, что он чисто функциональный. Надо же расжечь интерес хипстеров модным словечком. Ну что ты братишка, ну.
Можно ресурсики по эликсирчику в шапку добавить?
https://medium.com/@dmitriid/erlang-is-dead-long-live-e-885ccbcbc01f
>>691433Если доживём до второго треда. Предлагай.
>>691434Эрланг жив уже 30 лет, а новые проекты на нём до сих пор начинают разрабатывать. Он не популярен, но живее в плане вакансий многих других языков. + Elixir может вдохнуть новую жизнь.Каждый год аналитики языки хоронят, но что-то не сбываются их прогнозы.
https://www.youtube.com/watch?v=xoNRtWl4fZU
Как начать что-то на эликсире? Я прочитал всю доку 2 раза и всё равно не могу пересилить себя и даже просто запустить mix app. Проще было бы с феникса начать наверное, но пока что нет задач под него.. Какое-то сильное сопротивление у меня в голове.
В чем основные отличия эрланга от хаскеля?мимо хипстор
>>691486Хачкель строго статически типизированный, компилируемый, с ниебической гибкостью системы типов, синтаксиса и всего остального для выворота пальцев. Его особенность – если ты сумел что-то скомпилировать, то это почти гарантированно будет работать.Ерланг – динамический, с залупой вместо системы типов, может быть как интерпритируемым так и крутится на вм, с убогоньким синтаксисом и вообще слабенькой фп составляющей, там от всей этой хипстерской функциональщины разве что иммутабельность и удобство рекурсии. Отличительная черта – в распараллеливании и маштабировании ему нет равных.
>>691502>распараллеливанииconcurrency
>>691512В общем и сам хаскель этим как-бы силен. И, полагаю, даже сильнее за счет функциональной чистоты.
>>691475https://www.youtube.com/watch?v=eSWNi5vRxU8
>>691486На Хаскеле уже лет 5 как ничего значительнее xmonad не написали, потому что язык академический, чистая функциональность и прочая математическая мудянка оказалась никому не нужна в реальной разработке. Пытались сделать Cloud Haskell, который дублирует функционал Erlang, но не знаю в каком оно статусе, скорее в мертворождённом.Эрланг разработан в недрах корпорации для конкретных целей, потому на нём можно очень быстро после изучения синтаксиса начать промышленную разработку, особенно в области сетевого программирования, язык идеально заточен для этого.
>>691596>Пытались сделать Cloud Haskell, который дублирует функционал ErlanВ статусе "найди утечку, если сможешь)))".Пока что лучшая пародия на эрленк - скаловская акка, которая кусок говна, лол.
>>691596Мы вообще не про это говорим. В реальности, язык тем популрянее, чем проще на него натаскать макаку. На хаскель натакаскать макаку сложнее, поэтому он и не мейнстрим, в общем. Это, тем не менее, не повод игнорировать объективные достоинства языка.
>>691428 (OP)>ErlangЗадачи-то есть? Вроде даже гугл уже перекатывается с этой параши. Хайп закончился.
>>691687>Erlang>ХайпНа твою мамку хайп закончился сразу после твоего рождения.
>>691627Ничего не имею против Haskell и вообще всего ML семейства.Под Erlang сразу поставляется высококачественный набор либ OTP, который сразу покрывает кучу задач-вот его основное преимущество.
>>691687Зато на Goвнобейсике пишут, давайте все на нём писать. Не показатель.
Спасибо за тред. Подписался.https://www.youtube.com/watch?v=rRbY3TMUcgQerlang-senior
The key point is that Erlang is unfamiliar and so people are not drawn to it. Erlang is unfamiliar because of syntax. Erlang is unfamiliar because it's a concurrent environment. Erlang is unfamiliar because it's not OO. Erlang is unfamiliar because it's used for writing unfamiliar applications (how many people are programming databases or distributed systems? And I don't mean deploying Redis).I suspect Erlang is unfamiliar also because it comes from Sweden, and Swedish people are too humble for their own good. It doesn't really matter that something is the best if you don't make any claims to that effect. To be noticed you need to make a fool of yourself and exaggerate how good your product is (and how bad the other products are). And to make your product familiar you have to do this a lot. And with confidence.MongoDB is a great example. Even if you never used it you are probably familiar with it. You probably also know it will lose your data. Your manager doesn't, though, and that's why you end up using it. Or you don't believe it will affect you (humans have a hard time accepting that the worst could happen; software error, computer crash, or even death). Perhaps you're also just batshit crazy.None of the details matter. Erlang can be the best, or just good enough, it will make very little difference. Syntax details only start to matter when you already decided to learn Erlang, and even then maybe only 5% of people will give up because of it (that's my hope that only 5% of developers are that superficial).All that matters is reaching out to people and trying to appeal to them. But even the latter is not that important. Bad publicity is also good publicity.The best thing that could happen to Erlang right now is for WhatsApp to have a worldwide outage and to publicly blame it on a flaw in Erlang/OTP itself.src: http://erlang.org/pipermail/erlang-questions/2016-March/088359.html
Платиновый вопрос, но все же, что можно интересного написать, чтобы было не стыдно на github выложить? Чатик, tcp server и простейший rpc уже написал.
>>692364Торрент трекер? Помню кто-то писал на эрленке и хачкеле, а потом сравнивал.
>>692706Уф, не трекер, а клиент! https://github.com/jlouis/etorrent
>>692711А вот и сравнение http://jlouisramblings.blogspot.ru/2010/04/haskell-vs-erlang-for-bittorent-clients.htmlМне лично оче иликсир нравится. Но я на голову шибанутый -- можно игнорироват.
>>692711>>692717Спасибо за идею, поизучаю материал может и получится что. Пока как вариант думал bitcoin daemon написать, который бы нормально масштабировался. P.S.Мне синтаксис обычного эрланга, как то по привычней и даже что ли более правильным кажется, не смотря на то, что имею большой опыт работы руби.
Не советовал бы читать Fred Hebert "Learn You Some Erlang for great good!", она слишком общая и недостаточно подробная. Лучше прочитать Армстронга, а затем официальную документацию по OTP. Этих знаний вам хватит, чтобы свободно писать на эрланге.
>>692978Но в "Learn You Some Erlang for great good!" больше примеров, в том числе как правильно построить пул процессов, как построить сложное дерево супервизоров и прочих полезных вещей.По Армстронгу, согласен, надо начинать с него (желательно с 2d edition), но Learn You Some Erlang тоже маст рид, для закрепления.
>>691428 (OP)Нулевая арность, не пизди.
>>691687Что у гугла на Erlang'е написано? Вроде в Яндесе тоже на нём что-то крутится или крутилось?
>>693011сервербекенды кал оф дюти, часть яндекс диска
>>693127Почему Яндекс.Диск?
>>691687Demonware, Yahoo, Amazon, AOL, Motorolla, GitHub Приватбанк, лол
>>693175Heroku, Rackspace
бамп одному из удобнейших языков
Что есть удобнее эликсира с фениксом, но чтобы такое же скоростное и относительно легко масштабируемое? Да ещё и с удобными абстракциями веб-сокетов?Koa (Node) мне чиво-та не понравился; Yesod (Haskell) будто умир, но я планирую в нём получше разобраться; Scala и Clojure много памяти съедают, а мне денег на сервера не хватает; Go (Gin) и Rust (pencil, nickel, iron) показалися неудобными для меня-макаки; Swift чиво-та медленный; Lua неплох, но слишком зависим на nginx -- плохо это или хорошо, не знаю; на OCaml не нашёл рабочих фреймворков.Crystal и D ещё не рассматривал.Что вы думаете об етом всём, ананасики?
>>693655Бабу себе найди, задрот.
>>693716>создай себе проблемы из нихуяПочинил тебя.
Джва года ждал этого треда.
>>693655В общем-то ничего и нет, чтобы актуальное с поддержкой и комьюнити.Алсо, откуда столько времени разбираться в таком количестве технологий? Безработный?
>>693943Ещё добавил к списку Julia (Mux) и Ur.Я шкальник.>>693716ТНН>>693838Ета про меня.
>>693943Да и не так уж много времени это занимает. Я очень поверхностно все это техналагии "изучаю".
>>694009>Я шкальник.Повезло тебе, я только в 24 вкатился.
>>693007Но ведь это просто деление пременной Erlang на единицу.
>>694514В erlang /n обозначается арность функции
>>694713Слово написано с большой буквы, необрамленной апострофами, значит это переменная.
>>694514>>694713>>694894Посоны, ни о чём таком не помышлял. Просто характеруню Эрланговскую штуку хотел внести в название.
Для ньюфагов: http://erlang-mnesia-video.ru/
>>696078Уже видел опердени эти, хоть и ньюфаг. А хочешь знать, где видел? На лурке, конешно.[\spoiler]
А правда, что в 2016 функциональная парадигма наконце победит ООП? И как понять @joeerl, когда он говорит, что ерленк -- единственный ООП язык?
>>696507Лал. Кресты так-то уже лет двацать функциональны(<algorithm> в STL).
вам тут туториал принёсhttps://www.youtube.com/watch?v=bg9wYS0znNM
>>696507@joeerl не читал, но могу предположить, что он имел ввиду, что система акторов в эрланге эталон взаимодействия между объектами с точки зрения ООП.
>>696507Каждый создатель языка, в котором что-то куда-то передается считает, что его язык это тру ООП а пацаны то и не в курсе
>>696980Джо вроде это ещё и Алану Кейю сказал.Вот что я ещё нашел:http://programmers.stackexchange.com/questions/46592/so-what-did-alan-kay-really-mean-by-the-term-object-oriented
Хочу написать свой двач на Эрлангхе. По факту нужен бекенд, вываливающий посты и доски. Это типичная задача для Эрлаши? Да и вообще rest api это о нём? Как раздавать картинки и вебэмки?
>>699496Смертельно мёртвый нить.
>>699496Призывай настоящую макабу стокгольм-куна.Рест апи о нем. Юзай веб-сокеты.Не понимаю что тяжелого раздавать картинки и веб-м.
>>699496Тебе принципиально на Erlang? Если нет, то на Elixir на фреймворке Phoenix это очень легко реализовать. Там и с веб-сокетами работа удобная и rest легко реализовать.Ну а если ты такой же любитель классики, как и я, то для работы с веб-сокетами советую N2O по нему много статей найдешь. А для rest api я бы взял Cowboy. Алсо если действительно начнешь пилить что то интересное, то кидай сюда гитхаб, я бы возможно поучаствовал.
>>701580Эрланг итак тормозое. А эрланг с тормозами от раби – это ж ещё ахуительней.
C живых проектов на ерланге я успел пощупать только написание тесткейсов на ерланге для нодов в LTE. Написали они фреймворк GTE, в который положили все что можно делать с нодом, проще говоря парсилку всего что делает нод, статусы, создания состояний нода и так далее. Кроме тестов дописал я в этот фреймворк еще только одно - отправку сообщения на нод и парсинг ответа. И это в ericsson, который его то собственно под свои цели и придумал. Раньше еще писали фичи для HDSPA+ в RNC, но забили хуй и перешли на RSARTE.Че там у эрикссона с ерлангом? Остался фреймворк для тесткейсов и тот переписывают на java с JCAT ибо ёпта ньюфаги не осиливают ерланг. Софт пишется в RSARTE, это все потом тестируют suitами на ерланге, там в день под 130к тестов надо прогнать и они там сделали супервизора чтобы на максимум юзать ресурсы.
>>701591>А эрланг с тормозами от раби – это ж ещё ахуительней.Там нет тормозов от руби.
>>701824Потому что там тормоза от эроанга?
>>691428 (OP)Придумайте какой-нибудь стартап, чтоб можно было на эрланге и эликсире сделать и зарабатывать деньги.
Респект таким парням, кто смог ответить.>>701348> настоящую макабу стокгольм-кунаНихуя не понял.> что тяжелого раздавать картинки и веб-мС пониманием тяжеловато. Каждый раз на запрос о картинке, бэк должен делать запрос в базу и вываливать всё это в ответ? С webm чуть больше проблем: нужно ведь поддерживать загрузку с произвольной секунды и прочее хуёмаё. Это ведь ссаная рутина. Анон, где я проебался?>>701580Начну с классики. Erlang из без того противоречивый инструмент, чтобы переходить ещё на более протеворичивый Elixir.
>>701985нюфажикиhttps://github.com/kvakvs/macaba
>>701985>Каждый раз на запрос о картинке, бэк должен делать запрос в базу и вываливать всё это в ответ?Картинки и вебм у тебя в файловой системе храняться. Тумбнейлы генерируются при первом запросе бека к картинке или вебм - кидаются также в файловою систему.>нужно ведь поддерживать загрузку с произвольной секундыЭто все берет на себя браузер.
Как wargaming биндит python?
>>693655Crystal няшный, но нормальную многопоточность туда не завезли (и не планируют). Многопоточность на уровне Ruby 1.8.3
>>705562Значит, для веба он не оче? Эх, а мне так название понравилось.
про ерланг ваш:http://keinkeinkein.livejournal.com/83982.htmlБудет разработана единая система автоматического управления экономикой России под названием "Госплан 2.0". Данная система будет развернута на нескольких дата-центрах в разных уголках России, соединенных между собой оптоволоконными линиями связи на базе 100GBASE-ER4. В качестве ОС будет выбрана стабильная ветка Gentoo Linux, а софт будет реализован на Erlang (часть подсистем будет реализована на C11 с ассемблерными вставками для ассемблера конкретного процессора). Данный софт будет планировать на сутки, неделю, месяц, год и пятилетку вперед все аспекты экономической жизни с постоянной корректировкой и уточнением. Поскольку язык будет функциональным, правильность работы всей данной системы можно будет доказать математически.Например, сколько кг помидоров и в какое время конкретный грузовой автомобиль должен довезти из села в город, сколько пар обуви "сланцы" необходимо изготовить на заводах Северо-Западного экономического района РФ, сколько стране нужно ручек, карандашей, ракет, электромобилей, безалкогольных энергетиков и хлеба.
>>707623да тут понадобится 100 000 эрланг-программистов. столько нет даже не всей планете!
>>707959достаточно и одного путина
>>707623>Поскольку язык будет функциональным, правильность работы всей данной системы можно будет доказать математически.Интересная былина.
>>691428 (OP)В каких языках есть ну хоть что-то похожее на эрланговские процессы, чтоб можно было их запусктаь одновремено по несколько тысяч? Эрланг - идеальный язык, но вот не оче у него с производительностью на каки-то задачах близких к вычислительным.
>>711545>запусктаь одновремено по несколько тысячДля максимальной скорости вычислений нужен пул из N нативных потоков ОС, где N это количество ядер процессора, а не тысячи псевдопотокового говна.
>>711545> эрланговские процессы, чтоб можно было их запусктаь одновремено по несколько тысяч> не оче у него с производительностью на каки-то задачах близких к вычислительным. Ты либо используешь по потоку на ядро, либо CUDA.
>>711545ну, в говне есть горутины>>711665хейтер хотел не спалиться, но все равно подгорел, кек
>711665>хейтер хотел не спалиться, но все равно подгорел, кекТак он прав, обычный шедулинг корутин по нескольким потокам ос является профитной практикой разве что во всяких веб серверах.
>>711686> implying нет оверхеда для управления потоками> хейтерКек.Код то все равно выполняется на ядрах. А задача у него вычислительная, так что от оверхеда 1000 потоков он только проиграет.
>>711700так erts по дефолту и запускает столько потоков ОС, сколько ядер в системекак раз эрланговский подход является профитным почти везде, кроме числодробления и прочего векторного дроча, который выполнять на CPU - долбоебизм в любом случае
>>711686>хейтер хотел не спалиться, но все равно подгорел, кек Я божественный Scala-господин и увидел твой вопрос со страницы раздела.
>>702086>С пониманием тяжеловато. Каждый раз на запрос о картинке, бэк должен делать запрос в базу и вываливать всё это в ответ? С webm чуть больше проблем: нужно ведь поддерживать загрузку с произвольной секундыВ нормальных проектах для такого используют CDN>>702086>Это все берет на себя браузер. Хуй тебе на воротник, необходимо обрабатывать хттп-заголовок Content-RangeВообще это должен брать на себя хттп-фреймворк.
сам я рубист (в вебчике лет 10 уже), хочу вкатиться на erlang/elixir с нулевой базой. Вначале готов получать как джуниор, может, кто приютит?
>>711545В говнеВ яве можно найти либу. Или акторы пердолить. Но акторы говно
>>715186Сам протаскивай в продакшон. Мест крайне мало. Но больше, чем на хачкиле азаза!
>>715554продакшен не того уровня, где OTP мог бы понадобиться.
Эрланг нинужон, т.к. оверхед виртуальной машины (индиректы, кастинг, паттерн-матчинг) полностью убивает львиную долю перков дистрибьютед натуры.Если ты не ололо хайлоад уровня фейсбука, то будет быстрее и эффективнее написать на питоне, а если ты таки хайлоад фейсбука, то будет быстрее и дешевле написать на Go и задеплоить на 100500 машин./s
>>715967>Если ты не ололо хайлоад уровня фейсбука, то будет быстрее и эффективнее написать на питонеBleacher report перешли с 10 серверов на 1, переписав с руби на эликсир своё приложение. Ещё они перестали кэшировать благодаря ерланговской работе с темплэйтами (описывается в видео ChicagoBoss)>а если ты таки хайлоад фейсбука, то будет быстрее и дешевле написать на Go и задеплоить на 100500 машинВряд ли на Go (фэйсбук переписали на C и oCaml). С Go будут проблемы из-за shared memory (как и у C) -- это то, с чем фэйсбук столкнулся.Ерланг такой какой он есть не для скорости или производительности (хоть и быстрее в роли веб-сервера чем питон/руби/нода) -- он такой для бесперебойной работы.
>>691428 (OP)Какая зп вилка в СНГ?
>>715967https://gist.github.com/omnibs/e5e72b31e6bd25caf39a>Phoenix 0.13.1 -- 179685.94 req/s>Gin -- 176156.41 req/s
>>715186У меня была такая же ситуация как и у тебя. 3 года работал рубистом, потом заебло, думаю сам теперь понимаешь по каким причинам. Начал искать инструмент для разработки распределенных и масштабируемых сервисов, c возможностями эрланга был уже знаком, но т.к. знал что вакансий практически нет, решил поизучать что то более популярное.Потраил Scala + Akka, хотя скала мне как язык очень понравился, я все же пришел к выводу, что Akka пока что сыроват, по сравнению с акторами в Erlang. Хотя для себя сделал заметку, что Scala отлично подходит для обработки больших массивов данных, с чем Erlang не особо дружит.Потом решил изучить Go, если ты его еще не попробовал, то рекомендую, язык хорош тем, что позволит тебе быстро выбраться из мира крудошлепства и вкатится в хайлоад, т.к. язык очень легкий и сравнительно новый, поэтому людей берут с опытами работы и на других языках.Но я все равно остался при своем мнение, что Erlang лучшее решение для разработки распределенных, масштабируемых и отказоустойчивых систем, в частности благодаря OTP, конечно. Да, есть свои проблемы, особенно с экоструктурой языка, но со временем понимаешь, что все необходимое уже реализовано командами профессионалов (Cowboy, Riak, RabbitMQ, Wombat и прочее, спасибо Erlang Solutions за это). А если требуется, что то написать с нуля или доработать, то если знаешь язык это не составит труда, да еще и получишь моральное удовлетворение от вклада в развитие языка.Так что мой тебе совет, если ты просто хочешь как можно быстрее и безболезненно сменить род деятельности, то попробуй Go, если не понравится и не боишься потратить много времени на изучение и поиск работы, то можешь попробовать задрочить Scala, желательно до этого получить хоть какие то знания Java, т.к. с ней работать все равно придется, как выучишь Scala, то изучай Akka, scalaz, shapeless, netty+dispatch+unfiltered, если есть интерес то что нибудь из apache стека, например Spark, очень крутая штука, может быть полезно изучить какие нибудь http фреймворки, мне понравился Spray, но я в своих проектах не нашел ему применения и ограничился связкой netty/dispatch/unfiltered. Хороших scala разработчиков сейчас очень мало, поэтому если действительно будешь хорошо знать из перечисленного, то оторвут с руками и как правило зп огромные и задачи интересные.Но если ты как и я, адепт Erlang, то продолжай изучение языка, пиши свои проекты, изучай код успешных проектов, большая часть не будет понятна первое время, но опыт будешь получать все равно, затем как подрастешь просматривай пул реквесты, основные проблемы проектов, пытайся придумать их решение и оформляй пул реквесты. Вакансии как правило рассчитаны на сеньоров, но если ты сможешь себя правильно представить, да еще и имея большой опыт опен сорс разработки, то тебя скорее всего возьмут, т.к. работодатель тоже очень заинтересован найти хорошего спеца. Так что не отчаивайся и продолжай учиться, благо у Erlang нету зоопарка технологий, и все что надо знать это Erlang/OTP, сетевой стек, смежные технологии и быть технически грамотным. Иногда всплывают вакансии, на которые ты, возможно, сможешь пройти. Еще совет, не ищи вакансии только на hh и прочих биржах, заведи хороший профиль в Linkedin, проверь тематические группы в соц. сетях, подпишись на рассылки. Очень большой процент вакансий находится в узких кругах.Про себя могу сказать, что я уже проходил на две вакансии Erlang разработчиком, не имея при этом коммерческого опыта на нем, но в то время я очень нуждался в деньгах и решил в пользу Ruby. Но сейчас я в спокойном уже режиме подыскиваю вакансии, зная, что рано или поздно я или они меня найдут.Если хочешь поучаствовать в проекте и получить/закрепить знания, то есть у меня один проект, пиши в jabber: x2z54@securejabber.me
>>716440>Akka, scalaz, shapeless, netty+dispatch+unfilteredПопробуй akka-streams и akka-http>Хороших scala разработчиков сейчас очень мало, поэтому если действительно будешь хорошо знать из перечисленного, то оторвут с руками и как правило зп огромные и задачи интересные.Эм и где тогда вакансии с этими огромными зп?мимо хлебаю мамкины борщи
>>716616Не в СНГ, расслабься.
>>691751>Ничего не имею против Haskell и вообще всего MLP семейства.
>>716621Херово. И удалёнки нет?
>>716623Удалёнка, как правило, вещь не для тех, у кого нет опыта.
>>716637Ну блять, зачем всем сдался этот опыт? Почему бы не засчитать мне мои опенсорс-проекты как опыт? Как я его блять получу, если меня никуда не берут (а точнее я никуда даже не могу попытаться устроиться, т.к. нет подходящих вакансий)?
>>716660Ну так иди и пробуй попасть на удалёнку если хватает знаний английского, тебе под хвост никто смотреть не будет – есть проекты и всё.
>>716440написал
is_greater_than(Z,X) -> if Z == X -> true1; true -> false end.Почему сука тру нужно писать в конце?
Сап эрлангисты, хочу вкатится, стоит ли вначале освоить akka(умею в scala) или сразу erlang my penis, насколько сложно уразуметь позавчерашней джавамакаке?
>>723019Просто вернуть результат сравнения без всяких ифов не судьба? >>730989Можешь сразу спокойно вкатываться в Erlang. Там всё просто и понятно. Полностью читаешь Joe Armstrong "Programming Erlang" 2d Edition, потом смотришь "Learn You Some Erlang for great good!", вот в общем-то и всё.
Вот вам няшка, решите мне, я заебался уже тупить, мне математики не хватает или я туп.
>>731506При чем тут математика? Задача уровня urok1 dla 5'б'. Не пости такую каку в эрланг треде, няша.
>>731670Тоесть на ерланге такое сделать нельзя?
>>731670Так и скажи что слабо.
>>731680Зачем тебе эрланг для такой примитивщины?>>731750А самому немного подумать? Достаточно трех сравнений и если не обобщать на произвольное количество чисел там решение в пять строчек на любом C-family.
>>731881я хочу увидеть пример именно на ерланге.
>>731884я на эликсире написал
>>732006
>>732011Что за шрифт?
>>732006нехуя не понятно, какой впизду эликсир корявый язык
>>732026https://github.com/tonsky/FiraCode>>732030это просто я идиот
>>732035>>732030Все понятно, не знаю ни erlang ни elixir, но зная условие задачи можно разобраться, единственно что за еретический треугольник или это такой шрифт и там '>' ?Вот только do end смущает, не могли скобками сделать чтоб не пердолить 5 нажатий или вообще отступами как в питоне\хачкеле
>>732061там наверное |>, пайп называют
>>732061>list |> diff |> Enum.min Enum.min(diff(list))
>>732109Да я понял что это, имелл ввиду треугольник там типа U+25B6 или просто иде\шрифт такой. Ересь конечно, но мало ли, вдруг решили выебнуться и впихнули символ, которого нет на клавиатуре
вторая попытка
>>732120да, просто шрифт такйо
>>732130Который не на ретине выглядит как сладкий хлебушек (:
>>732151>выглядит как сладкий хлебушекс пасхой, братишка
>>731506Для трех чисел задача череcчур элементарная, даже писать лень, поэтому держи хотя бы для общего случая https://ideone.com/DmEIC7
Зачем вам Эликсир, когда есть N2O?
>>733173> для общего случаяhttps://ideone.com/UFE2USА как найти N минимальных?
>>733288Cпасибо братишка, а почему так много?
>>733286нравится
Господа эрлангисты, а как с рынком труда в странах СНГ?В моей бульбашии 2 вакансии, как обстоит дело в мазерраша?
>>733288Ну, можно отсортировать список по разности и взять верхние N элементов.
>>733312Я из вакансий на эрланге в снг видел только в варгейминге, локальном для тебя, лел.
А есть тут работающие эрлангисты?Запилите прохладные, кто-чем занимается, зп, страна адрес, телефон, пароль от кредитки
Пиздец ваш эликсир говно. Ояебу. Пилил 4 года назад йобапоебень на чистом ерланге под ранч.
>>733613>Пиздец ваш эликсир говно. Ояебу. чому?
>>733643Какие то функции пиздец. Вместо рекурсивного функционального кода какая то императивщина. Это я по скринам выше сужу. Где паттернматчинг где хвостовая рекурсия где работа с арностью?
Нормальная эрланг программа это блядь хвостовые рекурсии, это блядь паттерн матчинг и генераторы. А не императивные функции. Как будто питона навернул. Говно этот ваш эликсир
>>733649>ваш эликсир говно. Ояебу. >Это я по скринам выше сужу.
>>733656Да я давно уже сменил язык и зашел сюда так чисто посмотреть. Даже макс лапшин нахуй послал эрланг. А вы тут что то пыжитесь лол.
>>733660Просвяти тогда почему говно и на что сменил-Мимопланирювкатиться
Нахуя использовать императивный стиль прогромирования когда аллах вам дал. ункциональное? Где блядь анонимные функции? А вообще похуй.
>>733664Говно потому что узкоспециализированая ниша. Да блядь. Эрланг может 1ккк соединений. Да он может масштабироваться. Но кроме этого он нихуя нем может. Перекатился в jvm языки
>>733672Скалка, али какой closureGroovy?
>>733674Скала - хипсторское говно. И должна сдохнуть скоро. Ибо дефект бай дизвйн. Груви и кложур с чистой явой - выбор jvm кодера.
>>733681Но ведь джява сама один сплошной дефект бай дизайн.
>>733720>пукНуиебашь на элексире свой опердень
>>733681>покпокпокНиасилятар парвался в итт трете)))
>>733773Нас посетил скалапидор?Ну как там хеловордов все еще по 10 минут собираются?Нетипизироввные акторы все такое же говно?
>>733774>все такое же говно?Ну как и груви с кложуркой и ванильной явкой))) как земелька на вкус)))
Давайте создадим голосовой чатик, а то если я захожу на жвач, но живым не возвращаюсь к рабочему ритму, а изучать хочется, очень нужен семпай.
Атомный бамп!
Для чего он вообще нужен? Писать всякие ejabberd, которые и без эрланговна прекрасно пишутся?
>>746749С эрлангом намного проще, каждый кто написал 10 строк на Эрланге врубается сразу и пишет у себя в резюме Distributed Systems, High-Load Projects, Pi-calculus и Concurrency Master. После Эрланга становися сразу ясно почему Akka, Okku, Quazar, Kilim, Go, Итераты вместе с Клауд Хаскелем сосут прричмокивая. То где другим языкам нужно написать 100 кб кода для определения стратегии yied в скедюлер (memory/message threshold), в Эрланге делает одним условием IF (REDUCTIONS > THRESHOLD) SWITCHПриведем пример нашего продакшин Erlang стека который полностью совместим с Xen уже сегодня:Project Size (KB) LOCN2O (Web Framework) 148 3329KAI Amazon Dynamo Impl 80 2100KVS (DB: Riak/Mnesia/Kai) 80 2000CI Server 40 1000MQS (RabbitMQ lib) 28 500AVZ (FB/G+/TW/GH/MS) 20 400Erlang JavaScript 10 150А также пример самого большого и самого маленького игрушечного приложения:Project Size (KB) LOCEmacs-like Editor 170 5600toy_leader (Echo Task) 4.8 70Как видно полноценная имплементация Амазон Динамо на Эрланге занимает 80КБ, Jenkins можно заменить 40 килобайтами, веб фреймворк похожий на Lift, Meteor, можно заменить 3 тысячами строк и 150КБ, а поддержать все виды KV Баз с секондари индексами обойдется вам в продакшине в 80КБ. При большое желании этот код можно выучить наизуть, так его мало. Самый масшбатный проект который я делал когда-либо на Эрланге -- это текстовый Emacs-like редактор, он занял аж 170КБ и занимает чуть меньше 6000 строк. Мой Erlang JavaScript компилятор занимает 10КБ и этого уже достаточно что бы реализовать язык необходимый для компиляции наших серверных страниц на стороне клиента, для сравнения core.cljs занимает 220КБ.Если у вас есть цифры, которые показывают лучше принцип Хуяк Хуяк и в Продакшин я хочу их увидеь.http://maxim.livejournal.com/426506.html