Morel - A Functional Query Language
Offered By: Strange Loop Conference via YouTube
Course Description
Overview
Explore the intersection of functional programming and query languages in this 41-minute conference talk from Strange Loop. Dive into Morel, a JVM implementation of Standard ML with relational expression extensions. Learn about the design principles, implementation challenges, and applications of this hybrid functional/relational language. Discover how Morel leverages Apache Calcite's query optimizer to run programs on relational backends. Follow the evolution of functional languages, understand Standard ML concepts, and explore topics such as algebraic data types, relations, and higher-order functions. Examine practical examples like implementing Join and Word Count in Morel. Gain insights into integration with Apache Calcite, optimization techniques, and compute models. Presented by Julian Hyde, a Google software engineer and expert in query optimization and database internals, this talk offers valuable knowledge for those interested in data-intensive systems and advanced query languages.
Syllabus
Intro
Building a document index
Data-parallel programming
What are our options?
Evolution of functional languages
Extend Standard ML
Themes
Standard ML: Values and types
Standard ML: variables and functions
Algebraic data types, case, and recursion
Relations and higher-order functions
Implementing Join using higher-order functions
Implementing Join in Morel using from
Word Count
Chaining relational operators - step 5
Algebraic rewrite
Integration with Apache Calcite - schemas
Integration with Apache Calcite - relational algebra
Optimization
Compute models
Taught by
Strange Loop Conference
Tags
Related Courses
Exploring Common Algebraic Data Types Used in Functional Programmingegghead.io Haskell: Lecture notes and assignments
University of Pennsylvania via Independent Type-Driven Development: Designing with Types
Pluralsight A Pragmatist’s Guide to Functional Geekery
Devoxx via YouTube A Taste of Type Theory
GOTO Conferences via YouTube