Skip to content

Conversation

@hyperpolymath
Copy link
Owner

No description provided.

claude added 2 commits January 1, 2026 15:06
Implements the core WokeLang interpreter in OCaml as specified in the
anchor file, making the language runnable with OCaml toolchain only.

Core implementation:
- core/ast.ml: Abstract Syntax Tree with consent gates, units, gratitude
- core/lexer.mll: Lexer with all WokeLang keywords and operators
- core/parser.mly: Menhir parser for complete grammar
- core/eval.ml: Tree-walking interpreter with:
  - Consent gate semantics (only if okay)
  - Units of measure with type checking
  - Gratitude tracking
  - Error handling (attempt safely/or reassure)
  - Emote annotations
- core/main.ml: CLI entry point

Build system:
- dune-project: Dune 3.0 project configuration
- core/dune: Library and executable definitions

Golden path example:
- examples/hello_world.wl: Demonstrates core features

Test suite:
- test/test_wokelang.ml: Lexer, parser, evaluator, diagnostics tests
- test/conformance/: Conformance corpus for consent/units semantics

Documentation:
- docs/core/SETUP.md: OCaml-only setup instructions
- docs/core/INDEX.md: Core vs optional documentation index
- docs/core/SPEC.core.scm: Formal semantics specification

CI:
- .github/workflows/ocaml-core.yml: Build/test on OCaml 5.0+

Quarantines existing Rust implementation per anchor directive.
Adds just recipes per authority stack contract:
- build: compile OCaml core via dune
- test: run OCaml test suite
- demo: run hello_world.wl example
- smoke: full golden path (test + demo)
- conformance: run conformance corpus
- setup-ocaml: install dependencies via opam
- check-toolchain: verify OCaml tools present
- ci: full CI pipeline

Quarantines Rust recipes as [private].
@hyperpolymath hyperpolymath merged commit b2e61ea into main Jan 1, 2026
3 of 9 checks passed
@hyperpolymath hyperpolymath deleted the claude/setup-ocaml-core-6yHu7 branch January 1, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants