Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Morel - A Functional Query Language

Strange Loop Conference via YouTube

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

Reviews

Start your review of Morel - A Functional Query Language

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.