Educational Materials for UnifyWeaver
This project contains comprehensive educational materials for learning UnifyWeaver - a Prolog-to-Code compiler that transforms declarative logic programs into efficient streaming scripts across multiple target languages.
The books are designed to be read in sequence, with each building on concepts from previous books. However, after completing Books 1-3, you can explore target-specific books based on your needs.
| Book | Title | Focus |
|---|---|---|
| 1 | Foundations | Architecture, Prolog basics, preference system |
| 2 | Bash Target | Stream compilation, templates, data sources |
| 3 | C# Target | .NET compilation, LINQ, fixed-point approaches |
| 4 | Workflows | AI agent playbooks, strategic planning |
| Book | Title | Focus |
|---|---|---|
| 5 | Python Target | Python code generation, widely portable |
| 6 | Go Target | Native binaries, cross-platform, no runtime deps |
| Book | Title | Focus |
|---|---|---|
| 7 | Cross-Target Glue | Multi-language pipelines, Phases 1-7, cloud deployment |
| 8 | Security & Firewall | Cross-target security policies, production hardening |
| Book | Title | Focus |
|---|---|---|
| 9 | Rust Target | Memory-safe compilation, performance-critical |
| 10 | SQL Target | Database query generation |
| 11 | Prolog Target | Prolog-to-Prolog, dialect support |
| 12 | PowerShell Target | Windows automation, .NET scripting |
| Book | Title | Focus |
|---|---|---|
| 13 | Semantic Search | Graph RAG, embeddings, vector databases |
| Resource | Description |
|---|---|
| AWK Target | Lightweight text processing (supplementary) |
| Notebooks | Interactive Jupyter notebooks |
Additional requirements per book:
# Install SWI-Prolog
# Ubuntu/Debian
sudo apt-get install swi-prolog
# macOS
brew install swi-prolog
# Windows
# Download from https://www.swi-prolog.org/download/stable
git clone https://github.com/s243a/UnifyWeaver.git
cd UnifyWeaver
| Book | Status | Directory |
|---|---|---|
| 1 - Foundations | Complete (chapters 1-3) | book-01-foundations/ |
| 2 - Bash Target | Complete | book-02-bash-target/ |
| 3 - C# Target | Complete | book-03-csharp-target/ |
| 4 - Workflows | Complete | book-04-workflows/ |
| 5 - Python Target | Planned | book-05-python-target/ |
| 6 - Go Target | Complete | book-06-go-target/ |
| 7 - Cross-Target Glue | Complete | book-07-cross-target-glue/ |
| 8 - Security & Firewall | Planned (extract from Prolog book) | book-08-security-firewall/ |
| 9 - Rust Target | Complete | book-09-rust-target/ |
| 10 - SQL Target | Complete | book-10-sql-target/ |
| 11 - Prolog Target | Complete | book-11-prolog-target/ |
| 12 - PowerShell Target | Planned | book-12-powershell-target/ |
| 13 - Semantic Search | Complete | book-13-semantic-search/ |
| AWK Target | Complete (supplementary) | book-awk-target/ |
Track your progress through the series:
Core Sequence:
Portable Targets:
Integration:
Specialized:
Advanced:
../README.md../docs/CHANGELOG.md../examples/../tests/./output/ (after running exercises)CONTRIBUTING.mdAll chapters, guides, tutorials, and documentation files (.md) are dual-licensed under:
SPDX: MIT AND CC-BY-4.0
All code example files (.pl, .sh, .cs, .py, etc.) are licensed under:
SPDX: MIT
Copyright (c) 2025 John William Creighton (s243a)
Note: Educational materials developed with assistance from AI language models (Claude, Gemini).
Found an error or want to improve the content?
CONTRIBUTING.md for guidelinesUnifyWeaver educational materials created by John William Creighton (@s243a) with contributions from the community.
Ready to begin? Start with Book 1: Foundations