"Morel, a functional query language" by Julian Hyde
Is it easier to add functional programming features to a query language, or to add query capabilities to a functional language? In Morel, we have done the latter. Functional and query languages have much in common, and yet much to learn from each other. Functional languages have a rich type system that includes polymorphism and functions-as-values and Turing-complete expressiveness; query languages have optimization techniques that can make programs several orders of magnitude faster, and runtimes that can use thousands of nodes to execute queries over terabytes of data. Morel is an implementation of Standard ML on the JVM, with language extensions to allow relational expressions. Its compiler can translate programs to relational algebra and, via Apache Calcite’s query optimizer, run those programs on relational backends. In this talk, we describe the principles that drove Morel’s design, the problems that we had to solve in order to implement a hybrid functional/relational language, and how Morel can be applied to implement data-intensive systems. Julian Hyde Google @julianhyde Julian Hyde is a software engineer at Google, working on Looker and BigQuery, and is an expert in query optimization, database internals, and streaming. He is the original developer of Apache Calcite, an open source query planning framework that powers many database and streaming SQL engines, including Apache Beam, Flink and Hive. He was the original developer of the Mondrian OLAP engine, and was formerly at Hortonworks and SQLstream. Recorded at Strange Loop 2021 https://thestrangeloop.com

"All About Regular Expressions" by Jade Allen (Strange Loop 2022)

"Exotic Functional Data Structures: Hitchhiker Trees" by David Greenberg

No Nonsense Monad & Functor - The foundation of Functional Programming by César Tron-Lozai

Co-Creator of Haskell: Useless vs Useful Languages, Rust vs C, Functional Programming | Simon Jones

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

Common Pitfalls of Rewriting Things In Rust (Cliff L. Biffle at RustWeek)

How To Think SO CLEARLY People Assume You're A Genius

"Unison: a new distributed programming language" by Paul Chiusano

"Datafun: a functional query language" by Michael Arntzenius

"How we used serverless to speed up our servers" by Jessica Kerr and Ian Wilkes

Maybe Not - Rich Hickey

Andrej Karpathy: From Vibe Coding to Agentic Engineering w/ Stephanie Zhan

Modern Architecture 101 for New Engineers & Forgetful Experts - Jerry Nixon - NDC Copenhagen 2025

From Rails to Elm and Haskell - Richard Feldman

A Taste of Roc — Richard Feldman

Functional vs Array Programming

Functional Programming for Pragmatists • Richard Feldman • GOTO 2021

"Incremental, zero-config Code Nav using stack graphs" by Douglas Creager

🚀 TDD, Where Did It All Go Wrong (Ian Cooper)

