Functional programming

Effect Oriented Programming • Bill Frasure, Bruce Eckel, James Ward & Andrew Harmel-Law

Effect Oriented Programming • Bill Frasure, Bruce Eckel, James Ward & Andrew Harmel-Law

Authors Bill Frasure, Bruce Eckel, and James Ward discuss the core concepts of Effect-Oriented Programming, explaining how effects are composable operations that encapsulate side effects and defer execution. They highlight how effect systems use compiler-checked types to manage unpredictability, improve testability, and make functional programming concepts accessible without intimidating jargon.

Effect Oriented Programming • Bill Frasure, Bruce Eckel, James Ward & Andrew Harmel-Law • GOTO 2026

Effect Oriented Programming • Bill Frasure, Bruce Eckel, James Ward & Andrew Harmel-Law • GOTO 2026

Authors Bill Frasure, Bruce Eckel, and James Ward discuss the core concepts of Effect-Oriented Programming. They explain how effects are composable operations that encapsulate side effects and defer execution, allowing developers to manage unpredictability with compiler-checked types. The conversation covers ZIO, the expansion of effect systems into languages like TypeScript and Kotlin, and their unique, constraint-driven writing process.

How to Get People Excited about Functional Programming • Russ Olsen & James Lewis

How to Get People Excited about Functional Programming • Russ Olsen & James Lewis

In this interview from GOTO Copenhagen 2024, author Russ Olsen and software architect James Lewis dive deep into the philosophy and practice of functional programming, using Clojure and Lisp as key examples. They discuss effective strategies for learning and teaching complex technical concepts, the cultural nuances of programming communities, and the inspirational power of large-scale engineering achievements like the Apollo moon landings.

Elm & Open Source: What's Next? • Evan Czaplicki & Kris Jenkins

Elm & Open Source: What's Next? • Evan Czaplicki & Kris Jenkins

Evan Czaplicki, creator of Elm, discusses the sustainability challenges of open-source that led to Elm's development pause, his new work on a full-stack typed functional language, and his thoughts on improving developer experience to make functional programming more accessible.

Lets See What We Can do! with F# Computation Expressions • Andrew Browne • YOW! 2015

Lets See What We Can do! with F# Computation Expressions • Andrew Browne • YOW! 2015

Andrew Browne demystifies F# Computation Expressions, showing how this powerful feature is a simple syntactic transformation. He demonstrates building custom expressions for handling optional values (maybe), asynchronous sequences, and even creating a Domain-Specific Language (DSL) with Free Monads for robust testing.

Combinators Revisited • Edward Kmett • YOW! 2018

Combinators Revisited • Edward Kmett • YOW! 2018

Edward Kmett revisits the historical approach of compiling lambda calculus to a fixed set of combinators, arguing for its renewed relevance. He contrasts it with modern super-combinator techniques (like GHC's G-machine), highlighting the latter's vulnerability to Spectre attacks. Kmett proposes that a combinator-based evaluation model, combined with SPMD on SIMD execution, offers a secure, highly-parallel alternative that could rival the performance of current systems while providing a unified foundation for advanced compiler features.