LINUX.ORG.RU

Какой язык функционального программирования выбрать?


1

2

Хочу инвестировать в свои знания, сейчас мне требуется выбрать язык функционального программирования.

Выбираю из:

  • Erlang
  • Haskell
  • OCaml
  • CL


Основные требования к языку/платформе(по степени важности):

  • востребованность в промышленности
  • живое сообщество + наличие современной литературы
  • простота кода
  • скорость выполнения кода


Пока, самостоятельно попытался сделать небольшое исследование:
Erlang показался наиболее востребован,
Haskell+Erlang - нашел кое-какую литературу.

Если у вас есть опыт в функциональных языках, буду рад советам.



Последнее исправление: Donnie_Darko (всего исправлений: 2)
Ответ на: комментарий от anonymous

В чём профиты германии, по сравнению со штатами/калифорнией?

anonymous
()

>востребованность в промышленности

Только Си и С++

golodranez ★★★★
()
Ответ на: комментарий от anonymous

А если без побочных эффектов?

anonymous
()
Ответ на: комментарий от Donnie_Darko

> С вашей точки зрения, полезнее для карьеры java девелопера

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

anonymous
()

Ну наконец-то после недели C/C++ поноса, на лоре вновь оживилсь ценнители маргинальных языков! А то я уж было подумал, что они вконец разочаровались в своих пристрастиях.

anonymous
()
Ответ на: комментарий от anonymous

> Ну наконец-то после недели C/C++ поноса, на лоре вновь оживилсь ценнители маргинальных языков!

Ты не так понял. Это чувак думает, что отстал от жизни и хочет вновь стать модным и молодёжным.

Что сейчас модно и молодёжно? Правильно, писать факториалы на хацкеле. А пару лет назад пошёл бы в эмо.

anonymous
()
Ответ на: комментарий от anonymous

Banking очень часто связан с ФП, особенно с трейдингом - на Erlang пишут скоростной трейдинг, на Haskell и OCaml, модели для него.

вот видео где рассказывают про использование OCaml для трейдинга в компании Jane Street. Но для хаскеля вакансий больше в этой области. Я у себя в блоге давал несколько раз

ott ★★★★★
()
Ответ на: комментарий от yoghurt

нет, для лиспа я такого не видел...

насчет конкретно этой вакансии - я про нее у себя не писал

ott ★★★★★
()
Ответ на: комментарий от cathode

>> Ну расскажи же нам тогда про нормальное ФП без сборки мусора. Заодно посмеемся.

Сначала расскажи про так как лямбду без GC нельзя реализовать

Заквоть, где я такое писал.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

>>Сначала расскажи про так как лямбду без GC нельзя реализовать

Заквоть, где я такое писал.

Растолкуй, что ты имел в виду:

«>Внезапно, С++0х! в нем тоже есть лямба

Без сборки мусора ничего не получится.»

tailgunner ★★★★★
()
Ответ на: комментарий от tensai_cirno

Ты куда из жуйка и джаббера пропал? >:C

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

tia
()
Ответ на: комментарий от tia

трудно или легко найти работу в конкретных местах и конкретным людям - почему вы про это забываете?

ott ★★★★★
()
Ответ на: комментарий от tia

Советую прислушаться к tia. Он крутой спец с многолетним стажем - плохого не посоветует.

Сайты-визитки, настройка CMS, доработка PHP-кода - только малость из его по-истине могучего арсенала.

anonymous
()
Ответ на: комментарий от ott

Почему вы обладаете манией уточнения? Это само собой. Я же говорил о сравнении «нормальный язык VS один из перечисленных».

tia
()
Ответ на: комментарий от anonymous

Толсто. Я не пишу на PHP(кроме мелких заказов) и не мучаюсь с каменными CMS.
У тебя что, снова попа болит?

tia
()
Ответ на: комментарий от tia

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

Обоснуй или балабол.

anonymous
()
Ответ на: комментарий от tia

Нормальный язык - понятие относительное - относительно человека, задачи и т.д. Легкость найти работу в конкретном городе может иметь слабое отношение к «нормальности» языка

ott ★★★★★
()
Ответ на: комментарий от tailgunner

>Растолкуй, что ты имел в виду:

«>Внезапно, С++0х! в нем тоже есть лямба

Без сборки мусора ничего не получится.»

Функционального программирования не получится без сборки мусора.

Waterlaz ★★★★★
()
Ответ на: комментарий от tailgunner

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

func(arg1) {
Class1 obj(arg1);
// do something
return lambda() { return obj.doSomething(); }
}

тут лямбда захватывает некоторый объект и сохраняет его в себе...

ott ★★★★★
()
Ответ на: комментарий от Waterlaz

> Функционального программирования не получится без сборки мусора.

Эта фраза немногим лучше «ничего не получится».

tailgunner ★★★★★
()
Ответ на: комментарий от ott

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

Я думаю, имеется в виду, что лямбда в Си++ более-менее бесполезна после выхода из функции, в которой была определена.

tailgunner ★★★★★
()
Ответ на: комментарий от ott

> ну лямбды разные бывают

Насколько я понимаю, других не будет без сборки мусора.

но эта идея тащить это все в С++ - очень удручает

Почему? Даже в таком виде лямбды полезны.

tailgunner ★★★★★
()
Ответ на: комментарий от tensai_cirno

> Схема более функциональна, чем CL.

Спасибо, не знал. До этого еще не дошел. А в каком поддиалекте Схемы или в каком стандарте более реализована функциональность?(нет, я не тролль. гуглом пользоваться умею плохо, если не знаю что именно гуглить)

Просто на данный момент изучаю уже несколько устаревший R5RS. Там по умолчанию аппликативный порядок вычисления. Может просто еще не дошел?

TheKnight ★★★
()
Ответ на: комментарий от Waterlaz

Функционального программирования не получится без сборки мусора.

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

jtootf ★★★★★
()
Ответ на: комментарий от tailgunner

>> Функционального программирования не получится без сборки мусора.

Эта фраза немногим лучше «ничего не получится».

Не, ну, понятно же, что спорить с тем, что в новом стандарте с++ есть лямбда - глупо.

Waterlaz ★★★★★
()
Ответ на: комментарий от jtootf

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

ну... насколько я помню, скомпилировать и использовать реальную программу на jhc очень сложно. Там как раз таки память текла. Если ошибаюсь, поправь.

Ну и конечно да, теоретически не только со сборщиком все это дело достижимо.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

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

vertexua ★★★★★
()
Ответ на: комментарий от ugoday

> Посмотри racket

Угу, спасибо, уже видел ранее, но слегка.

TheKnight ★★★
()
Ответ на: комментарий от Donnie_Darko

> ага, первокурсник захотел стать молодёжным.

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

anonymous
()
Ответ на: комментарий от anonymous

Универ в стране - «лучший», но на деле абсолютно никакой. В стране есть вакансии только на .NET. Мои средние познания в линуксе/python/java уже воспринимаютсяздесь как «зачем тебе учиться, ты и так уже готов к продакшену». Поэтому интересует как дела у «взрослых». (Речь о бывшей сов. республике.)

Donnie_Darko
() автор топика
Ответ на: комментарий от Donnie_Darko

Ах тыж, я думал ты в Германии собрался учиться. Но полюбому перваки - никто, и думать им еще право не давали.

anonymous
()
Ответ на: комментарий от anonymous

>Ах тыж, я думал ты в Германии собрался учиться.

после второго курса, но в Австрии, про Германию спросил, так как соотношение Германия-Австрия на ЛОРе 325:1

Но полюбому перваки - никто, и думать им еще право не давали

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

Donnie_Darko
() автор топика
Ответ на: комментарий от Donnie_Darko

> после второго курса, но в Австрии

Так там научат.

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

Серьёзно. Свои «средние познания в линуксе/python/java» можешь, сам знаешь куда, себе засунуть. А то будешь как tia - ходить по ЛОРу, народ веселить.

anonymous
()
Ответ на: комментарий от anonymous

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

Я на ЛОРе новичок, мне жаль что тред поместил в Development, а не в Talks, где не было бы такого троллинга анонимусов с их девизом: «пиши за еду». В то же время, я получил ответ на свой вопрос еще на первой странице.

Donnie_Darko
() автор топика

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

anonymous
()
Ответ на: комментарий от Donnie_Darko

> задел тебя за живое?

Скучный ты какой-то первокур. tia и то повеселее будет.

tia, сцуко, выходи за базар отвечать!

P.S. Анонимус выше дело говорит.

anonymous
()
Ответ на: комментарий от vertexua

Ты хаскелист в эпаме?

нет, но мог им стать. собеседования баркапа я прошёл, а потом с епамом поругался. время от времени они мне пишут, но в данный момент меня их вакансии не интересуют

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

Ну и нафиг всякие бомжатские конторки, пускай на коленях молят

*датчик сарказма сломался, вылетела стрелка*

vertexua ★★★★★
()
Ответ на: комментарий от Donnie_Darko

Через пару лет ты посмеешься над своей теперешней самоуверенностью. Она, наверное, нормальна, но смешна.

еще один анонимус

anonymous
()
Ответ на: комментарий от Donnie_Darko

Через пару лет ты посмеешься над своей теперешней самоуверенностью. Она, наверное, нормальна, но смешна.

еще один анонимус

anonymous
()
Ответ на: комментарий от Donnie_Darko

Через пару лет ты посмеешься над своей теперешней самоуверенностью. Она, наверное, нормальна, но смешна.

еще один анонимус

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.