~/talk

Morel, a functional query language

Talkat Strange Loop 2021 · 2021-09-30..10-02· [databases]
slides:none on file

Morel implements Standard ML on the JVM with language extensions that make relations first-class, compiles ML-style programs to relational algebra, and hands plans to the Apache Calcite optimizer (about 200 rewrite rules) so queries run on database backends or distributed engines. It supports functions-as-values, from/.../yield comprehensions, view-style inlining, and demos like a working word-count that run on optimized relational plans rather than ad‑hoc map/reduce.

AI-written summary · about

  1. 0:00Intro
  2. 0:54Building a document index
  3. 2:26Data-parallel programming
  4. 6:49What are our options?
  5. 10:12Evolution of functional languages
  6. 10:59Extend Standard ML
  7. 12:12Themes
  8. 14:37Standard ML: Values and types
  9. 15:50Standard ML: variables and functions
  10. 16:44Algebraic data types, case, and recursion
  11. 18:31Relations and higher-order functions
  12. 19:37Implementing Join using higher-order functions
  13. 20:28Implementing Join in Morel using from
  14. 22:17Word Count
  15. 28:01Chaining relational operators - step 5
  16. 32:14Algebraic rewrite
  17. 33:07Integration with Apache Calcite - schemas
  18. 34:42Integration with Apache Calcite - relational algebra
  19. 35:27Optimization
  20. 37:39Compute models
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.