#functional_programming — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #functional_programming, aggregated by home.social.
-
Composing Software: An Exploration of Functional Programming and Object Composition in JavaScript by Eric Elliott is the featured course 🎓 on Leanpub!
Link: https://leanpub.com/courses/leanpub/composingsoftware
#computer_programming #functional_programming #javascript #software #software_engineering #software_architecture
-
Composing Software: An Exploration of Functional Programming and Object Composition in JavaScript by Eric Elliott is the featured course 🎓 on Leanpub!
Link: https://leanpub.com/courses/leanpub/composingsoftware
#computer_programming #functional_programming #javascript #software #software_engineering #software_architecture
-
Composing Software: An Exploration of Functional Programming and Object Composition in JavaScript by Eric Elliott is the featured course 🎓 on Leanpub!
Link: https://leanpub.com/courses/leanpub/composingsoftware
#computer_programming #functional_programming #javascript #software #software_engineering #software_architecture
-
Composing Software: An Exploration of Functional Programming and Object Composition in JavaScript by Eric Elliott is the featured course 🎓 on Leanpub!
Link: https://leanpub.com/courses/leanpub/composingsoftware
#computer_programming #functional_programming #javascript #software #software_engineering #software_architecture
-
Почему JS/TS — не функциональный язык (и почему это важно понимать)
Мотивацией для написания этого поста стали два года собеседований JS/TS-инженеров. Я интересуюсь языками и функциональным программированием, поэтому всегда «разбавлял» технические вопросы разговором о парадигмах. И заметил любопытную асимметрию. Об ООП кандидаты рассуждали уверенно — но в основном на концептуальном уровне, не вдаваясь в то, как именно ООП реализовано в JavaScript. С FP картина была другой: уверенности меньше, зато критика — конкретная и повторяющаяся: «иммутабельность дорогая по памяти» , «рекурсия небезопасна из-за стека» . Что характерно — эти аргументы почти всегда были сформулированы через опыт работы с JS, а не с Haskell, Clojure или Scala. Это важная деталь. Любая парадигма существует на двух уровнях: концептуальном (идеальная модель) и имплементационном (как конкретный язык эту модель выражает). Судить о FP по JS — примерно то же самое, что судить об ООП по bash-скриптам с глобальными переменными. Параллельно я регулярно слышал, что JS — функциональный язык. Аргументы варьировались от «там есть .map() » до рассуждений о чистых функциях и каррировании. Именно это и стало поводом для поста: я хочу объяснить, что я считаю функциональным языком — и почему JS таковым не является. Не перечислить отсутствующие фичи, а показать, почему их нет и что это значит в реальном рантайме.
-
Почему JS/TS — не функциональный язык (и почему это важно понимать)
Мотивацией для написания этого поста стали два года собеседований JS/TS-инженеров. Я интересуюсь языками и функциональным программированием, поэтому всегда «разбавлял» технические вопросы разговором о парадигмах. И заметил любопытную асимметрию. Об ООП кандидаты рассуждали уверенно — но в основном на концептуальном уровне, не вдаваясь в то, как именно ООП реализовано в JavaScript. С FP картина была другой: уверенности меньше, зато критика — конкретная и повторяющаяся: «иммутабельность дорогая по памяти» , «рекурсия небезопасна из-за стека» . Что характерно — эти аргументы почти всегда были сформулированы через опыт работы с JS, а не с Haskell, Clojure или Scala. Это важная деталь. Любая парадигма существует на двух уровнях: концептуальном (идеальная модель) и имплементационном (как конкретный язык эту модель выражает). Судить о FP по JS — примерно то же самое, что судить об ООП по bash-скриптам с глобальными переменными. Параллельно я регулярно слышал, что JS — функциональный язык. Аргументы варьировались от «там есть .map() » до рассуждений о чистых функциях и каррировании. Именно это и стало поводом для поста: я хочу объяснить, что я считаю функциональным языком — и почему JS таковым не является. Не перечислить отсутствующие фичи, а показать, почему их нет и что это значит в реальном рантайме.
-
Почему JS/TS — не функциональный язык (и почему это важно понимать)
Мотивацией для написания этого поста стали два года собеседований JS/TS-инженеров. Я интересуюсь языками и функциональным программированием, поэтому всегда «разбавлял» технические вопросы разговором о парадигмах. И заметил любопытную асимметрию. Об ООП кандидаты рассуждали уверенно — но в основном на концептуальном уровне, не вдаваясь в то, как именно ООП реализовано в JavaScript. С FP картина была другой: уверенности меньше, зато критика — конкретная и повторяющаяся: «иммутабельность дорогая по памяти» , «рекурсия небезопасна из-за стека» . Что характерно — эти аргументы почти всегда были сформулированы через опыт работы с JS, а не с Haskell, Clojure или Scala. Это важная деталь. Любая парадигма существует на двух уровнях: концептуальном (идеальная модель) и имплементационном (как конкретный язык эту модель выражает). Судить о FP по JS — примерно то же самое, что судить об ООП по bash-скриптам с глобальными переменными. Параллельно я регулярно слышал, что JS — функциональный язык. Аргументы варьировались от «там есть .map() » до рассуждений о чистых функциях и каррировании. Именно это и стало поводом для поста: я хочу объяснить, что я считаю функциональным языком — и почему JS таковым не является. Не перечислить отсутствующие фичи, а показать, почему их нет и что это значит в реальном рантайме.
-
10 причин попробовать Effect TS/Основы Effect TS
Effect -фреймворк, который никого не может оставить равнодушным. Читая комментарии к другим постам, я заметил, что добрая часть хабра считает, что эффект это избыточно сложная и не особо нужная технология. В своей статье я обозначаю 10 причин, почему эту технологию стоит попробовать, даже если вы дико предвзятый разработчик, а также даю экскурс по базам фреймворка.
https://habr.com/ru/articles/1009458/
#Effect #Effect_TS #TypeScript #functional_programming #функциональное_программирование #dependency_injection #AI
-
The Compiler Is Your Best Friend, Stop Lying to It
https://blog.daniel-beskin.com/2025-12-22-the-compiler-is-your-best-friend-stop-lying-to-it
#ycombinator #software_development #functional_programming #scala -
Does anyone know if an inductive Nat datatype defined as a place-value system could replace the need to rewrite the PA definition to bigints in the compiler?
-
Poor man's bitemporal data system in SQLite and Clojure
https://www.evalapply.org/posts/poor-mans-time-oriented-data-system/index.html
#ycombinator #indie_software #B2B_Micro_SaaS #systems_thinking #technology_leadership #architecture #software_design #functional_programming #clojure #devops #shell_scripting #web_development #databases #sqlite #writing #blogging #coaching -
GNU Artanis – A fast web application framework for Scheme
https://artanis.dev/index.html
#ycombinator #Scheme_programming_language #Web #Framework #GNU #Guile #GNU_Artanis #Artanis #Web_Application_Framework #WAF #Functional_Programming #Web_Development #Web_Server #Web_Framework #Web_Application -
Преодоление сложности в самом сердце Анемичной Модели
Доброго времени суток, Хабр! Сегодня хотел бы поговорить об анемичной модели — одном из самых дискуссионных топиков (особенно для приверженцев DDD) и о том, как, по моему мнению, правильно её готовить. Для кого-то анемичная модель — это антипаттерн, тогда как для других это единственный правильный способ реализации приложений. Многие использовали её годами и даже не знали, как она называется, и что кем-то она считается антипаттерном. Реальность же такова, что анемичная модель — это инструмент, который может подходить или не подходить в зависимости от ситуации, но при этом является очень популярным и, по факту, «стандартом де-факто» для многих программистов и организаций. Хотя в последние годы я и вижу тенденцию к тому, что DDD и, соответственно, богатая доменная модель становятся всё популярнее, пока что, по моему мнению, им далеко до популярности анемичной модели.
https://habr.com/ru/articles/917012/
#ddd #software_design #anemic_model #refactoring #architecture #java #oop #web_development #domain_driven_design #functional_programming
-
🚀 just uploaded (link in reply): "Folding Cheat Sheet #9 List Unfolding - unfold as the Computational Dual of fold, and how unfold relates to iterate" #scala #haskell #folding #unfolding #iterate #functional_programming
-
🚀 just uploaded (link in reply): "List Unfolding -
unfold as the Computational Dual of fold,
and how unfold relates to iterate" #folding #unfolding #fold #unfold #foldL #foldL_prime #unfoldL #unfoldL_prime #unfoldr #iterate #anamorphism #catamorphism #functional_programming #scala #haskell -
Разбираем конкурентность в Go: книги, блоги, выступления
Особенность Go — удобный механизм конкурентности. Создавать конкурентные задачи в парадигме языка можно буквально «бесплатно» и предельно просто: достаточно написать ключевое слово go перед вызовом функции — и она начнет выполняться в отдельном потоке. Я Владислав Белогрудов, эксперт по разработке ПО в YADRO. В свое время изучал различные источники и лучшие практики в поиске эффективных способов организации параллельных процессов в Go. Делюсь ими с вами. Пополнить библиотеку
https://habr.com/ru/companies/yadro/articles/892632/
#golang #go #goroutine #concurrency_patterns #functional_programming #channel
-
Стэнфордский курс CS193P “Разработка iOS приложений в SwiftUI” Весна 2023: русскоязычный конспект с адаптацией к iOS 17
Если вы хотите получить фундаментальные знания по разработки iOS приложений с помощью SwiftUI , вам следует пройти стэнфордский курс CS193P. Предложенные в весеннем семестре 2023 года лекции Стэнфордского курса CS193P «Developing Application for iOS with SwiftUI» («Разработка приложений для iOS с использованием SwiftUI») — это уже 3-я реинкарнация курса CS193P с фреймворком SwiftUI . В настоящий момент действуют Xcode 15 / iOS 17, которые были представлены на WWDC 2023 уже после завершения курса CS193P, наиболее значимое обновление внесено в механизм реактивного UI в SwiftUI (макрос @Observable против протокола ObservableObject ). В иллюстрированных русскоязычных конспектах этого курса сделаны пометки, касающиеся изменений в iOS 17. Для большинства Лекций представлена версия с использование макроса @Observable вместо протокола ObservableObject , в ряде случаев это потребовало нетривиальных решений.
https://habr.com/ru/articles/816995/
#CS193P_2023 #стэнфордский_университет #swift #swiftui #functional_programming #declarative_ui #mvvm #mvi #@binding #@published
-
Расширение Функциональных Интерфейсов Java
За годы прошедшие с их появления в Java8 у меня набралась коллекция полезных решений и шаблонов, которые я переносил из проекта в проект, и которые в стандартной версии так и не были осуществлены. Недавно я решил собрать все вместе в небольшом проекте с открытым кодом. В первом релизе проекта расширения охватывают следующие аспекты:
https://habr.com/ru/articles/812451/
#Java #functional_interface #functional_programming #currying #multimethods #exception #exception_handling #extensions #interception #java_21
-
Calypso: Схема данных MongoDB на Scala
Чтобы применять Domain-Driven Design, DDD Aggregate и Transactional outbox на MongoDB, наша команда создала open source библиотеку calypso для работы с BSON. Публикация для тех, кто стремится к современным практикам разработки и разделяет наше влечение к Scala 3. Готовы к открытиям? Добро пожаловать в мир функционального программирования и надёжной работы с schema-on-read.
https://habr.com/ru/companies/m2tech/articles/782986/
#scala #ddd #scala3 #outbox #adt #algebraic_data_types #mongodb #nosql #domain_driven_design #functional_programming