Designing Malloy 0 — Introduction

What is Malloy?

COUNT(*) as airport_count,
AVG(elevation) as average_elevation
FROM `malloy-data.faa.airports`
ORDER BY 2 desc
query: table('malloy-data.faa.airports') -> {
group_by: state
aggregate: airport_count is count()
aggregate: average_elevation is avg(elevation)

Malloy and SQL

The Tao of Malloy

… feels familiar to someone coming from SQL

… feels concise, but not cryptic

… is composable

… is an algebra for computations with relational data

… is NOT an attempt to make the language look like English sentences

… is curated

… is helpful

… is still an experiment

… is an expression of empathy towards explorers and explainers of data

The Malloy-verse

More To Come

  1. The Syntactic Shell
  2. Filters

The Google Disclaimer



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store