Phase 2: Move core spec files to spec/ and spec/tests/

git mv eval.sx, parser.sx, primitives.sx, render.sx, cek.sx, frames.sx,
continuations.sx, callcc.sx, types.sx, special-forms.sx → spec/
Tests → spec/tests/
Both bootstrappers verified — find files via spec/ → web/ → shared/sx/ref/

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-15 02:12:13 +00:00
parent 8ed8134d66
commit 05f7b10864
28 changed files with 1 additions and 8792 deletions

View File

@@ -1,49 +0,0 @@
;; ==========================================================================
;; boundary.sx — SX language boundary contract
;;
;; Declares the core I/O primitives that any SX host must provide.
;; This is the LANGUAGE contract — not deployment-specific.
;;
;; Pure primitives (Tier 1) are declared in primitives.sx.
;; Deployment-specific I/O lives in boundary-app.sx.
;; Per-service page helpers live in {service}/sx/boundary.sx.
;;
;; Format:
;; (define-io-primitive "name"
;; :params (param1 param2 &key ...)
;; :returns "type"
;; :effects [io]
;; :async true
;; :doc "description"
;; :context :request)
;;
;; ==========================================================================
;; --------------------------------------------------------------------------
;; Tier 1: Pure primitives — declared in primitives.sx
;; --------------------------------------------------------------------------
(declare-tier :pure :source "primitives.sx")
;; --------------------------------------------------------------------------
;; Core platform primitives — type inspection + environment
;; --------------------------------------------------------------------------
;;
;; These are provided by every host. Not IO, not web-specific.
(declare-core-primitive "type-of"
:params (value)
:returns "string"
:doc "Return the type name of a value.")
(declare-core-primitive "make-env"
:params ()
:returns "dict"
:doc "Create a base environment with all primitives.")
(declare-core-primitive "identical?"
:params (a b)
:returns "boolean"
:doc "Reference equality check.")