Vision: Computationally verifiable, AI-native, adaptive system for human-AI collaboration.
Synapse is a programming language designed with the following key principles:
- Verifiability First: Core semantics are formally defined and verified
- AI-Native: Designed for seamless human-AI collaboration
- Adaptive: Multiple projections (syntax forms) for the same semantic model
- Resource-Aware: Quantitative type system for precise resource management
- Effect-Tracked: Effect system for reasoning about computational effects
The Synapse project is organized as a multi-crate Rust workspace:
asg_core: Abstract Semantic Graph core libraryparser_core: Parser for the minimal text formatformatter_core: Pretty printer for ASGtype_checker_l1: Basic type checker (Hindley-Milner)upir_core: Universal Polymorphic Intermediate Representationasg_to_upir: Compiler stage to translate ASG to UPIRupir_to_llvm: Compiler stage to translate UPIR to LLVM IRsynapse_runtime: Minimal runtime library
synapse_cli: Command-line interfacesynapse_lsp: Language Server Protocol implementationsynapse_ai_api: AI integration APIsynapse_debugger: Debugging toolssynapse_pkg: Package managersynapse_collab_server: Collaborative editing server
type_checker_l2: Quantitative and effect typestype_checker_l3_core: Dependent types with SMT solver integrationtype_checker_l3_full: Full dependent type system
upir_to_spirv: UPIR to SPIR-V for GPUupir_to_qsim: UPIR to quantum simulator
proof_manager: Proof managementproof_synthesis_assist: Proof synthesis assistancesynapse_uart: Universal Abstract Representation Translatorverified_ffi: Verified Foreign Function Interfaceethics_checker: Ethics checkingmacro_expander: Macro expansionaspe_pythonic_v1: Pythonic projection
This project is currently in early development, following the phased implementation plan outlined in plan.md.
See DESIGN_LOG.md for architecture decisions and CONTRIBUTING.md for contribution guidelines.
Prerequisites:
- Rust (latest stable)
- LLVM development libraries
- Protocol Buffers compiler (protoc)
To build the project:
cargo buildTo run the CLI:
cargo run -p synapse_cli