185 похожих чатов

Я - всё со "своим"... Может надо, параллельно с вводной книгой

по Эплангу, что-нить и классического по ФП почитать?...
Я оказался сугубым императивщиком и надо "немножечко подрихтовать" своё мировидение, восприятие материала и построение моделей предметок.
Если есть некая книга, которая - именно такое хорошее введение в ФП (типа, как у хаскелистов куча) на базе Эрланга, посоветуйте пожалуйста.

21 ответов

33 просмотра

Озвучу непопулярное мнение, в Эрланге на данный момент от ФП не намного больше, чем в любом другом популярном ЯП. Так что прям, как то супер глубоко нырять в эту тему, новичку большого смысла не вижу, и так достаточно много новой информации должно быть.

Wlad- Автор вопроса
Igor Karymov
Озвучу непопулярное мнение, в Эрланге на данный мо...

"и так достаточно много новой информации должно быть." Охххх... и - не говорите! Её - не то чтобы прямо "много", а она - ДРУГАЯ. :) Правила сопоставления образцов - на пол-странички. Но,пока это улеглось с "присваиванием" (особенно - при работе с кортежами и списками), пришлось-таки "поскрипеть" межушным ганглием! :))

Igor Karymov
Озвучу непопулярное мнение, в Эрланге на данный мо...

В Erlang фп типа как у лиспов, и даже интереснее, а это вообще-то первое семейство фп языков в мире То что сейчас под ФП подразумевается Haskell и сильная типизация, это просто вес известности Haskell. Так что Erlang это 100% ФП язык, со всеми свойствами и структурами

> надо "немножечко подрихтовать" своё мировидение, восприятие материала и построение моделей предметок На моём опыте, самый быстрый и эффективный способ переучиться, это практика. Желательно просто сесть и написать что-то, желательно не отвлекаясь на мейнстримные языки, а занимаясь чисто Erlang Это всё учится за 2 недели. За год можно выучить 26 Erlang-ов (c)

Igor Karymov
Озвучу непопулярное мнение, в Эрланге на данный мо...

Всё тут норм с ФП, даже данные иммутабельны - а это обязательное условие ФП, таких языков по пальцам пересчитать, если не Э, то кто вообще ФП (кроме хаскеля)?

Wlad- Автор вопроса
Lama Lover
> надо "немножечко подрихтовать" своё мировидение,...

Ну, лет 25-30, может быть так и было бы. А сейчас - куча "отвлекающих" факторов: текущие проекты, дети, внуки, бытовые вопросы, родычи уже в возрасте, которых надо навестить по домам или в больницах, тревоги, искандеры, капельки успокаивающе-сердечные после них... :))

Хорошее введение в ФП - это книги Abelson & Sussman, Shriram Krishnamurti. Книги по Erlang - это больше о практике.

Вот достойное: https://bespoyasov.ru/blog/domain-modelling-made-functional/

Wlad- Автор вопроса
Keiman
Вот достойное: https://bespoyasov.ru/blog/domain-m...

Единственно (пока я "плаваю" в теме) - немного непонятно, как с этим языковым триумвиратом совладать, при огромных "дырах" у меня в теоретическом базисе: - Знакомые и (в том числе - бывшие) коллеги наносили уже печатных и наприсылали электронных книг Душкина, Филдса и ещё пары "корифеев"... А там - или Хаскел, или ещё какое-то, что уже и не припомню... :) - Проект планируется на Эрланге (99%!). - А тут ещё и F# предлагается в голову впихнуть! :) Нет, может быть, и в ФП языки "только небольшие синтаксические отличия" имеют, при выражении общих семантических идей и средств... Я ж ещё не знаю, так ли это? И - ничего не могу пока утверждать... И - может быть - любой Хасклер (Хаскелист?) или программист на ML, почти сходу, любой другой ФЯ осваивает и понимает, и - мгновенно видит, что и где стоит за кодом... Но я, пока (?), ОЧЕНЬ далёк от такого набора скилоффЪ и знания... :)

Wlad
Единственно (пока я "плаваю" в теме) - немного неп...

традиционно считалось что полезно освоить курсу к третьему несколько ЯП с разными парадигмами. типа APL, Forth, Pascal, ML, Пролог и например Lisp как мультипарадинменный универсальный конструктор

Wlad
Единственно (пока я "плаваю" в теме) - немного неп...

При освоении haskell мне очень сильно мешал багаж из моего предыдущего опыта с ООП (а именно попытки натянуть новые концепции на уже известные), поэтому рекомендую имитировать tabula rasa. Erlang, впрочем, освоился и так.

Keiman
Вот достойное: https://bespoyasov.ru/blog/domain-m...

Освоить настоящий функциональный язык и практиковать его - это намного лучше, чем читать теорию ФП ещё и на примере всяких огрызков. Глянул как-то "грокаем функциональное мышление", там на примере js, и это прям как в том мемасе "посмотри что им нужно, чтобы достичь хотя-бы частицы нашей силы")

Keiman
Вот достойное: https://bespoyasov.ru/blog/domain-m...

Это к эликсиру ближе, чем к Эрлангу

Nikita Vorontsov
Освоить настоящий функциональный язык и практикова...

Ну, человек конкретное спросил, что почитать, чтобы понять! Я бы, как Lama посоветовал бы пет-проект свой сделать, следуя прекрасной формуле озвученной в лохматой рекламе из трасляций F1 «чтобы понять, надо гонять»(с) Но есть люди, которым важно основные подходы и идиомы языка осознать. Поэтому я и привел эту ссылку. Но, также «для понимания» курс Юрия Жлобы категорически рекомендую, несмотря на то что он по Эликсиру 🤘

Max L.
У Юры и по Эрлангу курс есть :)

Очень старый. Думаю когда-нибудь обновить, записать заново. Но сперва нужно закончить с Эликсиром.

Юрий Жлоба
Очень старый. Думаю когда-нибудь обновить, записат...

а вот это прям отл. идея! и ляксыр мог бы и подождать… imho

Дмитрий Козаченко
Огрызок это про F#?

Да. Ничего против F# не имею, но там большое влияние C# и ни о какой чистой функциональности речи не идёт, тут уж как удастся интегрировать OCaml в .NET. а сам ocaml тоже не чисто функциональный, как минимум О значит объектно-ориентированный

Nikita Vorontsov
Да. Ничего против F# не имею, но там большое влиян...

Окей, понял Я сам тоже на нём не пишу, но послушать интересно было

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Раз начали говорить про embassy, то присоединюсь со своими парой вопросов. 1) Есть ли сопоставимые аналоги для асинхронного кода в emdebbed? 2) Можно ли внутри задач embassy ...
NI_isx
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта