Skip to content

dont-rely-on-nulls/karuta

Repository files navigation

Karuta 🎴

built with nix
[Client] Build

The Karuta Logo

About

This is a semi-toy, general-purpose relational (aiming to be constraint-based) programming language. We are not held accountable for anything that might happen if you are crazy enough to use it.

Requirements

  • [X] Parsing
  • [X] Query Conjunction
  • [X] Comments
  • [X] BEAM runtime library (logic variables, backtracking)
  • [X] Compilation
  • [X] Integer Literals
  • [X] List Literals
  • [X] Implement toolchain (i.e. compile to BEAM assembly, call erlc on that)
  • [X] Modules
  • [ ] ML Functors
  • [ ] Type checking
  • [ ] AST nodes for Sakura interaction.
  • [ ] Sakura directives.
  • [ ] Runtime support for database interaction (sockets).
  • [ ] Compiler can fold together multiple queries in a single predicate body.

References