changelog shortlog graph tags branches changeset files file revisions raw help

Mercurial > org > notes / annotate query-lang.org

changeset 1: 4b49701b8c04
child: 04e86b94ef1a
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 02 Jun 2024 20:08:07 -0400
permissions: -rw-r--r--
description: import
1
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
1
 This file is for notes on different query languages.
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
2
 
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
3
 Queries are extremely important in software development and having a
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
4
 robust query engine is a must for CC.
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
5
 
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
6
 Our goal is to develop a query-language compiler (Q) which can be
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
7
 tuned at compile-time to meet the needs of any database backend.
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
8
 
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
9
 The query languages that interest us most are derived from Prolog
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
10
 (/datalog) and SQL, but we won't be supporting all of their features -
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
11
 only the ones that can be reasonably coerced to all supported frontends.
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
12
 
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
13
 Q will require an Intermediate Representation (IR) - the encoding will
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
14
 be based on S-expressions with a specialized reader.