symp-promo

1. About Symp

A symbolic processing framework


๐Ÿ’ก motivation

Symp began as an exploration of what programming might look like if compilers were transparent conversations instead of black boxes.


๐Ÿงฉ What Is Symp?

Symp is a minimalist symbolic computation backend. It unifies parsing, transformation, and execution into one explicit pipeline:


input โ†’ syntax โ†’ semantics โ†’ output

Instead of hiding these layers inside a compiler, Symp makes each stage programmable. Symp lets you experiment with how programming languages themselves think โ€” right from the grammar to execution. You donโ€™t define functions. You define frames โ€” each with its own syntax (form) and semantics (meaning).


๐Ÿง  Core Components

  • Symbolmatch: PEG-like grammar engine โ€” built-in syntax validation
  • Symbolverse: term rewriting and transformation engine โ€” built-in semantic processing
  • Symbolprose: graph-based execution of symbolic programs โ€” built-in semantic processing

These three systems for syntax analysis and semantic synthesis are connected through the Symp glue language, where you can write:

(APPLY
  (FRAME
    (SYNTAX (APPLY symbolmatch (SEXPR (RULES ...))))
    (SEMANTICS (APPLY symbolverse (SEXPR (REWRITE ...)))))
  (SEXPR myProgram))

๐Ÿ”ฎ Why Itโ€™s Different

  • Explicit meaning โ€“ You can see how syntax maps to semantics.
  • Composable โ€“ Each frame can use others as sub-frames.
  • Reflective โ€“ Frames can define new frames (meta-programming built in).
  • Minimal โ€“ Entire core fits in a few hundred lines.
  • Beautifully weird โ€“ A computing system from an alternate reality where theory outran graphics.

๐Ÿงฌ Design Philosophy

Every computation in Symp passes through form and meaning.

Syntax validates structure.
Semantics transforms intent.
Output becomes new input.

Itโ€™s not a conventional programming language โ€” itโ€™s a framework for building languages of meaning. Use it to prototype symbolic languages, theorem provers, or DSLs.


๐Ÿš€ Getting Started (coming soon)

  • Install the runtime.
  • Run the Symp web REPL or CLI.
  • Try examples in /examples/.

๐Ÿ“š Learn More


๐Ÿ–ค Inspiration

Symp is inspired by Lisp, PEGs, term rewriting systems, and finite state machines.