changeset 583: |
1a0df4444a9f |
parent 582: |
568c39371122 |
child 584: |
35bb0d5ec95e |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Thu, 08 Aug 2024 23:01:20 -0400 |
files: |
lisp/lib/q/dql.lisp |
description: |
dql notes |
1.1--- a/lisp/lib/q/dql.lisp Wed Aug 07 21:09:43 2024 -0400
1.2+++ b/lisp/lib/q/dql.lisp Thu Aug 08 23:01:20 2024 -0400
1.3@@ -25,10 +25,30 @@
1.4 ;; this stage. The design of this package will be much simpler and optimized
1.5 ;; for compatibility with Lisp Objects.
1.6
1.7-;; I think we can get quite far, with a bit of clever hacking and some good
1.8-;; macros.
1.9+;; The design we're going for in this package is what I would consider the
1.10+;; Lisper's version of Datalog. We want to implement just enough to be useful
1.11+;; as a query language, and then use it to bootstrap a more elegant Prolog
1.12+;; compiler, likely in SYN/PROLOG.
1.13+
1.14+;;;;; Data Model
1.15+
1.16+;; compiled code + constants -> physical plan -> arena + hash-tables -> engine
1.17+
1.18+;;;;; Compiler
1.19
1.20-;;;; Refs
1.21+;; Predicates
1.22+
1.23+;; Rules/Facts
1.24+
1.25+;;;;; Runtime
1.26+
1.27+;; Engine
1.28+
1.29+;; Execution
1.30+
1.31+;; Persistence
1.32+
1.33+;;;;; Refs
1.34
1.35 ;; https://franz.com/support/documentation/11.0/prolog.html
1.36
1.37@@ -38,6 +58,8 @@
1.38
1.39 ;; https://en.wikipedia.org/wiki/Negation_as_failure
1.40
1.41+;; https://github.com/bobschrag/clolog/blob/main/architecture.md
1.42+
1.43 ;;; Code:
1.44 (in-package :q/dql)
1.45