diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 9a10d8c..377a5b9 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -56,7 +56,7 @@ against the tree-walker, all 134/0): explicit **trampoline** for tail calls (Rust has no guaranteed TCO and the kernel is heavily tail-recursive). `let`/`lambda` push/pop a scope stack rather than cloning locals. -2. **AOT kernel** (`aot/`, `klcompile`) — the 21 kernel files are compiled to +2. **AOT kernel** (`aot/`, `klcompile`) — the kernel files are compiled to Rust at build time: self-tail-calls become loops, `if`/`let`/`cond` and ~18 primitives are inlined, the rest route through `rt::apply_*`. Installed over the tree-walked defuns at boot, preserving function-cell late binding. diff --git a/README.md b/README.md index c673f31..0b835e4 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ The same Shen semantics run on tiers chosen for the workload: | Tier | When | Notes | |---|---|---| | **Tree-walker** | default | Allocation-light interpreter over the KL AST. Best for one-shot runs. | -| **AOT kernel** | build time | The 21 kernel KL files are compiled to Rust ahead of time by `crates/klcompile` — control flow lowered (self-tail-calls → loops; `if`/`let`/`cond` and ~18 primitives inlined). | +| **AOT kernel** | build time | The kernel KL files are compiled to Rust ahead of time by `crates/klcompile` — control flow lowered (self-tail-calls → loops; `if`/`let`/`cond` and ~18 primitives inlined). | | **Bytecode VM** | `--served` / `SHEN_RUST_VM=1` | Runtime closures (`defun`/`lambda`/`freeze`) compile to bytecode. **~2.3× faster than the tree-walker on warm / served workloads** (load a theory once, serve many requests), where the compile cost amortizes. Not the bare default because a one-shot run can't amortize it. See `scripts/warm-bench.sh`. | | **AOT overlay** | opt-in, per `.shen` file | Known `.shen` files are compiled to Rust offline (`scripts/codegen-shen-aot.sh`, same klcompile) and committed; after a normal load (all side effects live) the host swaps the loaded defuns for the native versions via a verified manifest (`Interp::install_overlay_if_match` — source hash + kernel digest, silent fallback on mismatch). **~3.1× over the VM, ~11.7× over the tree-walker on served authz workloads** (`benches/authz_served.rs`). | | **Cranelift JIT** | `--features jit`, `SHEN_RUST_JIT=1` | Experimental; native codegen for runtime closures. Wins on compute loops but was falsified for the type-checker's CPS continuations — kept gated/off. See `design/jit-productionization-plan.md`. | diff --git a/STATUS.md b/STATUS.md index eafa5d9..e685edc 100644 --- a/STATUS.md +++ b/STATUS.md @@ -2,8 +2,9 @@ ## Current state -A working port of the Shen language to Rust. It boots the upstream -**ShenOSKernel-41.2** and passes the full conformance suite — **134 / 134** +A working port of the Shen language to Rust. It boots Mark Tarver's +**Shen S41.2 (2026-07-11 refresh)** kernel (see +`kernel/klambda/PROVENANCE.md`) and passes the full conformance suite — **134 / 134** kernel tests (`scripts/kernel-tests.sh`) — in every execution mode. All gates green (`scripts/gates.sh`): shengen-codegen, fmt+clippy, build, test (unit + integration suites), shen-check, tcb-audit, kernel-aot-audit, @@ -107,7 +108,7 @@ model, not a single hot spot. On served workloads the story inverts: VM ## Known limitations -- Boot loads + AOT-installs 21 kernel files every startup (~sub-second release); +- Boot loads + AOT-installs 18 kernel files every startup (~sub-second release); shen-cl uses pre-compiled FASLs. - GC collection is opt-in (`SHEN_RUST_GC=1`) and requires aarch64 macOS/Linux (the conservative stack scan is unimplemented elsewhere — diff --git a/crates/shen-rust/src/aot/kernel/backend.rs b/crates/shen-rust/src/aot/kernel/backend.rs new file mode 100644 index 0000000..0055651 --- /dev/null +++ b/crates/shen-rust/src/aot/kernel/backend.rs @@ -0,0 +1,3486 @@ +//! Auto-generated by `klcompile` from kernel/klambda/backend.kl. +//! +//! DO NOT EDIT. Re-run klcompile to regenerate. + +#![allow( + unused_variables, + unused_braces, + unused_imports, + clippy::let_and_return, + clippy::needless_question_mark, + clippy::redundant_clone, + clippy::needless_late_init, + clippy::len_zero, + clippy::needless_borrow, + clippy::approx_constant, + clippy::redundant_closure_call, + non_snake_case +)] + +use crate::aot::runtime as rt; +use crate::error::{ShenError, ShenResult}; +use crate::interp::eval::Interp; +use crate::value::Value; +use std::rc::Rc; + +/// AOT-compiled from KL `(defun cl.kl-to-lisp ...)` +pub fn aot_cl_x2e_kl_x2d_to_x2d_lisp(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.kl-to-lisp: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5674 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + break Ok({ + let __t0 = Value::nil(); + let __t1 = v_V5674.clone(); + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t0, __t1])? + }); + } +} + +fn install_cl_x2e_kl_x2d_to_x2d_lisp(interp: &mut Interp) { + interp.register_native("cl.kl-to-lisp", 1, aot_cl_x2e_kl_x2d_to_x2d_lisp); + interp.register_aot_direct("cl.kl-to-lisp", aot_cl_x2e_kl_x2d_to_x2d_lisp); +} + +/// AOT-compiled from KL `(defun cl.kl-to-lisp-h ...)` +pub fn aot_cl_x2e_kl_x2d_to_x2d_lisp_x2d_h( + interp: &mut Interp, + args: &[Value], +) -> ShenResult { + if args.len() != 2 { + return Err(ShenError::new(format!( + "cl.kl-to-lisp-h: expected 2 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5682 = args[0].clone(); + #[allow(unused_mut)] + let mut v_V5683 = args[1].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t343 = { + let __t339 = Value::sym(interp.intern("T")); + let __t342 = { + let __t340 = v_V5683.clone(); + let __t341 = v_V5682.clone(); + rt::apply_direct(interp, "MEMBER", &[__t340, __t341])? + }; + rt::eq(&__t339, &__t342) + }; + if match rt::is_truthy(interp, &__t343) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(v_V5683.clone()); + } else { + { + let __t338 = { + let __t332 = { + let __t312 = v_V5683.clone(); + rt::is_cons(&__t312) + }; + if !rt::is_truthy(interp, &__t332)? { + Value::bool(false) + } else { + let __t333 = { + let __t330 = { + let __t313 = Value::sym(interp.intern("type")); + let __t315 = { + let __t314 = v_V5683.clone(); + rt::hd(&__t314)? + }; + rt::eq(&__t313, &__t315) + }; + if !rt::is_truthy(interp, &__t330)? { + Value::bool(false) + } else { + let __t331 = { + let __t328 = { + let __t317 = { + let __t316 = v_V5683.clone(); + rt::tl(&__t316)? + }; + rt::is_cons(&__t317) + }; + if !rt::is_truthy(interp, &__t328)? { + Value::bool(false) + } else { + let __t329 = { + let __t326 = { + let __t320 = { + let __t319 = { + let __t318 = v_V5683.clone(); + rt::tl(&__t318)? + }; + rt::tl(&__t319)? + }; + rt::is_cons(&__t320) + }; + if !rt::is_truthy(interp, &__t326)? { + Value::bool(false) + } else { + let __t327 = { + let __t321 = Value::nil(); + let __t325 = { + let __t324 = { + let __t323 = { + let __t322 = v_V5683.clone(); + rt::tl(&__t322)? + }; + rt::tl(&__t323)? + }; + rt::tl(&__t324)? + }; + rt::eq(&__t321, &__t325) + }; + Value::bool(rt::is_truthy(interp, &__t327)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t329)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t331)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t333)?) + } + }; + if match rt::is_truthy(interp, &__t338) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t334 = v_V5682.clone(); + let __t337 = { + let __t336 = { + let __t335 = v_V5683.clone(); + rt::tl(&__t335)? + }; + rt::hd(&__t336)? + }; + v_V5682 = __t334; + v_V5683 = __t337; + continue; + } + } else { + { + let __t311 = { + let __t305 = { + let __t291 = v_V5683.clone(); + rt::is_cons(&__t291) + }; + if !rt::is_truthy(interp, &__t305)? { + Value::bool(false) + } else { + let __t306 = { + let __t303 = { + let __t292 = Value::sym(interp.intern("protect")); + let __t294 = { + let __t293 = v_V5683.clone(); + rt::hd(&__t293)? + }; + rt::eq(&__t292, &__t294) + }; + if !rt::is_truthy(interp, &__t303)? { + Value::bool(false) + } else { + let __t304 = { + let __t301 = { + let __t296 = { + let __t295 = v_V5683.clone(); + rt::tl(&__t295)? + }; + rt::is_cons(&__t296) + }; + if !rt::is_truthy(interp, &__t301)? { + Value::bool(false) + } else { + let __t302 = { + let __t297 = Value::nil(); + let __t300 = { + let __t299 = { + let __t298 = v_V5683.clone(); + rt::tl(&__t298)? + }; + rt::tl(&__t299)? + }; + rt::eq(&__t297, &__t300) + }; + Value::bool(rt::is_truthy(interp, &__t302)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t304)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t306)?) + } + }; + if match rt::is_truthy(interp, &__t311) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t307 = v_V5682.clone(); + let __t310 = { + let __t309 = { + let __t308 = v_V5683.clone(); + rt::tl(&__t308)? + }; + rt::hd(&__t309)? + }; + v_V5682 = __t307; + v_V5683 = __t310; + continue; + } + } else { + { + let __t290 = { + let __t285 = { + let __t259 = v_V5683.clone(); + rt::is_cons(&__t259) + }; + if !rt::is_truthy(interp, &__t285)? { + Value::bool(false) + } else { + let __t286 = { + let __t283 = { + let __t260 = + Value::sym(interp.intern("lambda")); + let __t262 = { + let __t261 = v_V5683.clone(); + rt::hd(&__t261)? + }; + rt::eq(&__t260, &__t262) + }; + if !rt::is_truthy(interp, &__t283)? { + Value::bool(false) + } else { + let __t284 = { + let __t281 = { + let __t264 = { + let __t263 = v_V5683.clone(); + rt::tl(&__t263)? + }; + rt::is_cons(&__t264) + }; + if !rt::is_truthy(interp, &__t281)? { + Value::bool(false) + } else { + let __t282 = { + let __t279 = { + let __t267 = { + let __t266 = { + let __t265 = + v_V5683.clone(); + rt::tl(&__t265)? + }; + rt::tl(&__t266)? + }; + rt::is_cons(&__t267) + }; + if !rt::is_truthy(interp, &__t279)? + { + Value::bool(false) + } else { + let __t280 = { + let __t277 = { + let __t268 = + Value::nil(); + let __t272 = { + let __t271 = { + let __t270 = { + let __t269 = v_V5683.clone(); + rt::tl( + &__t269, + )? + }; + rt::tl(&__t270)? + }; + rt::tl(&__t271)? + }; + rt::eq(&__t268, &__t272) + }; + if !rt::is_truthy( + interp, &__t277, + )? { + Value::bool(false) + } else { + let __t278 = { + let __t275 = { + let __t274 = { + let __t273 = v_V5683.clone(); + rt::tl( + &__t273, + )? + }; + rt::hd(&__t274)? + }; + let __t276 = + Value::sym( + interp + .intern( + "T", + ), + ); + rt::eq( + &__t275, + &__t276, + ) + }; + Value::bool( + rt::is_truthy( + interp, &__t278, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t280, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t282, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t284)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t286)?) + } + }; + if match rt::is_truthy(interp, &__t290) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t287 = v_V5682.clone(); + let __t289 = { + let __t288 = v_V5683.clone(); + rt::apply_direct(interp, "cl.rectify-t", &[__t288])? + }; + v_V5682 = __t287; + v_V5683 = __t289; + continue; + } + } else { + { + let __t258 = { + let __t233 = { + let __t213 = v_V5683.clone(); + rt::is_cons(&__t213) + }; + if !rt::is_truthy(interp, &__t233)? { + Value::bool(false) + } else { + let __t234 = { + let __t231 = { + let __t214 = + Value::sym(interp.intern("lambda")); + let __t216 = { + let __t215 = v_V5683.clone(); + rt::hd(&__t215)? + }; + rt::eq(&__t214, &__t216) + }; + if !rt::is_truthy(interp, &__t231)? { + Value::bool(false) + } else { + let __t232 = { + let __t229 = { + let __t218 = { + let __t217 = + v_V5683.clone(); + rt::tl(&__t217)? + }; + rt::is_cons(&__t218) + }; + if !rt::is_truthy(interp, &__t229)? + { + Value::bool(false) + } else { + let __t230 = { + let __t227 = { + let __t221 = { + let __t220 = { + let __t219 = + v_V5683 + .clone( + ); + rt::tl(&__t219)? + }; + rt::tl(&__t220)? + }; + rt::is_cons(&__t221) + }; + if !rt::is_truthy( + interp, &__t227, + )? { + Value::bool(false) + } else { + let __t228 = { + let __t222 = + Value::nil(); + let __t226 = { + let __t225 = { + let __t224 = { + let __t223 = v_V5683.clone(); + rt::tl(&__t223)? + }; + rt::tl( + &__t224, + )? + }; + rt::tl(&__t225)? + }; + rt::eq( + &__t222, + &__t226, + ) + }; + Value::bool( + rt::is_truthy( + interp, &__t228, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t230, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t232, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t234)?) + } + }; + if match rt::is_truthy(interp, &__t258) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t235 = + Value::sym(interp.intern("FUNCTION")); + let __t257 = { + let __t255 = { + let __t236 = + Value::sym(interp.intern("LAMBDA")); + let __t254 = { + let __t241 = { + let __t239 = { + let __t238 = { + let __t237 = + v_V5683.clone(); + rt::tl(&__t237)? + }; + rt::hd(&__t238)? + }; + let __t240 = Value::nil(); + rt::cons(&__t239, &__t240) + }; + let __t253 = { + let __t251 = { + let __t246 = { + let __t244 = { + let __t243 = { + let __t242 = + v_V5683 + .clone( + ); + rt::tl(&__t242)? + }; + rt::hd(&__t243)? + }; + let __t245 = + v_V5682.clone(); + rt::cons( + &__t244, &__t245, + ) + }; + let __t250 = { + let __t249 = { + let __t248 = { + let __t247 = + v_V5683 + .clone( + ); + rt::tl(&__t247)? + }; + rt::tl(&__t248)? + }; + rt::hd(&__t249)? + }; + rt::apply_direct( + interp, + "cl.kl-to-lisp-h", + &[__t246, __t250], + )? + }; + let __t252 = Value::nil(); + rt::cons(&__t251, &__t252) + }; + rt::cons(&__t241, &__t253) + }; + rt::cons(&__t236, &__t254) + }; + let __t256 = Value::nil(); + rt::cons(&__t255, &__t256) + }; + rt::cons(&__t235, &__t257) + }); + } else { + { + let __t212 = { + let __t207 = { + let __t174 = v_V5683.clone(); + rt::is_cons(&__t174) + }; + if !rt::is_truthy(interp, &__t207)? { + Value::bool(false) + } else { + let __t208 = { + let __t205 = { + let __t175 = Value::sym( + interp.intern("let"), + ); + let __t177 = { + let __t176 = + v_V5683.clone(); + rt::hd(&__t176)? + }; + rt::eq(&__t175, &__t177) + }; + if !rt::is_truthy(interp, &__t205)? + { + Value::bool(false) + } else { + let __t206 = { + let __t203 = { + let __t179 = { + let __t178 = + v_V5683.clone(); + rt::tl(&__t178)? + }; + rt::is_cons(&__t179) + }; + if !rt::is_truthy( + interp, &__t203, + )? { + Value::bool(false) + } else { + let __t204 = { + let __t201 = { + let __t182 = { + let __t181 = { + let __t180 = v_V5683.clone(); + rt::tl(&__t180)? + }; + rt::tl( + &__t181, + )? + }; + rt::is_cons( + &__t182, + ) + }; + if !rt::is_truthy( + interp, &__t201, + )? { + Value::bool( + false, + ) + } else { + let __t202 = { + let __t199 = { + let __t186 = { + let __t185 = { let __t184 = { let __t183 = v_V5683.clone(); rt::tl(&__t183)? }; rt::tl(&__t184)? }; + rt::tl(&__t185)? + }; + rt::is_cons(&__t186) + }; + if !rt::is_truthy(interp, &__t199)? { Value::bool(false) } else { let __t200 = { let __t197 = { let __t187 = Value::nil(); let __t192 = { let __t191 = { let __t190 = { let __t189 = { let __t188 = v_V5683.clone(); rt::tl(&__t188)? }; rt::tl(&__t189)? }; rt::tl(&__t190)? }; rt::tl(&__t191)? }; rt::eq(&__t187, &__t192) }; if !rt::is_truthy(interp, &__t197)? { Value::bool(false) } else { let __t198 = { let __t195 = { let __t194 = { let __t193 = v_V5683.clone(); rt::tl(&__t193)? }; rt::hd(&__t194)? }; let __t196 = Value::sym(interp.intern("T")); rt::eq(&__t195, &__t196) }; Value::bool(rt::is_truthy(interp, &__t198)?) } }; Value::bool(rt::is_truthy(interp, &__t200)?) } + }; + Value::bool(rt::is_truthy(interp, &__t202)?) + } + }; + Value::bool( + rt::is_truthy( + interp, &__t204, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t206, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t208, + )?) + } + }; + if match rt::is_truthy(interp, &__t212) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t209 = v_V5682.clone(); + let __t211 = { + let __t210 = v_V5683.clone(); + rt::apply_direct( + interp, + "cl.rectify-t", + &[__t210], + )? + }; + v_V5682 = __t209; + v_V5683 = __t211; + continue; + } + } else { + { + let __t173 = { + let __t142 = { + let __t115 = v_V5683.clone(); + rt::is_cons(&__t115) + }; + if !rt::is_truthy(interp, &__t142)? + { + Value::bool(false) + } else { + let __t143 = { + let __t140 = { + let __t116 = Value::sym( + interp + .intern("let"), + ); + let __t118 = { + let __t117 = + v_V5683.clone(); + rt::hd(&__t117)? + }; + rt::eq(&__t116, &__t118) + }; + if !rt::is_truthy( + interp, &__t140, + )? { + Value::bool(false) + } else { + let __t141 = { + let __t138 = { + let __t120 = { + let __t119 = v_V5683.clone(); + rt::tl( + &__t119, + )? + }; + rt::is_cons( + &__t120, + ) + }; + if !rt::is_truthy( + interp, &__t138, + )? { + Value::bool( + false, + ) + } else { + let __t139 = { + let __t136 = { + let __t123 = { + let __t122 = { let __t121 = v_V5683.clone(); rt::tl(&__t121)? }; + rt::tl(&__t122)? + }; + rt::is_cons(&__t123) + }; + if !rt::is_truthy(interp, &__t136)? { Value::bool(false) } else { let __t137 = { let __t134 = { let __t127 = { let __t126 = { let __t125 = { let __t124 = v_V5683.clone(); rt::tl(&__t124)? }; rt::tl(&__t125)? }; rt::tl(&__t126)? }; rt::is_cons(&__t127) }; if !rt::is_truthy(interp, &__t134)? { Value::bool(false) } else { let __t135 = { let __t128 = Value::nil(); let __t133 = { let __t132 = { let __t131 = { let __t130 = { let __t129 = v_V5683.clone(); rt::tl(&__t129)? }; rt::tl(&__t130)? }; rt::tl(&__t131)? }; rt::tl(&__t132)? }; rt::eq(&__t128, &__t133) }; Value::bool(rt::is_truthy(interp, &__t135)?) } }; Value::bool(rt::is_truthy(interp, &__t137)?) } + }; + Value::bool(rt::is_truthy(interp, &__t139)?) + } + }; + Value::bool( + rt::is_truthy( + interp, &__t141, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t143, + )?) + } + }; + if match rt::is_truthy(interp, &__t173) + { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t144 = Value::sym( + interp.intern("LET"), + ); + let __t172 = { + let __t158 = { + let __t156 = { + let __t147 = { + let __t146 = { + let __t145 = v_V5683.clone(); + rt::tl( + &__t145, + )? + }; + rt::hd(&__t146)? + }; + let __t155 = { + let __t153 = { + let __t148 = v_V5682.clone(); + let __t152 = { + let __t151 = { + let __t150 = { let __t149 = v_V5683.clone(); rt::tl(&__t149)? }; + rt::tl(&__t150)? + }; + rt::hd(&__t151)? + }; + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t148, __t152])? + }; + let __t154 = + Value::nil( + ); + rt::cons( + &__t153, + &__t154, + ) + }; + rt::cons( + &__t147, + &__t155, + ) + }; + let __t157 = + Value::nil(); + rt::cons( + &__t156, &__t157, + ) + }; + let __t171 = { + let __t169 = { + let __t163 = { + let __t161 = { + let __t160 = { + let __t159 = v_V5683.clone(); + rt::tl(&__t159)? + }; + rt::hd( + &__t160, + )? + }; + let __t162 = + v_V5682 + .clone( + ); + rt::cons( + &__t161, + &__t162, + ) + }; + let __t168 = { + let __t167 = { + let __t166 = { + let __t165 = { + let __t164 = v_V5683.clone(); + rt::tl(&__t164)? + }; + rt::tl(&__t165)? + }; + rt::tl( + &__t166, + )? + }; + rt::hd(&__t167)? + }; + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t163, __t168])? + }; + let __t170 = + Value::nil(); + rt::cons( + &__t169, &__t170, + ) + }; + rt::cons(&__t158, &__t171) + }; + rt::cons(&__t144, &__t172) + }); + } else { + { + let __t114 = { + let __t90 = { + let __t63 = + v_V5683.clone(); + rt::is_cons(&__t63) + }; + if !rt::is_truthy( + interp, &__t90, + )? { + Value::bool(false) + } else { + let __t91 = { + let __t88 = { + let __t64 = Value::sym(interp.intern("defun")); + let __t66 = { + let __t65 = v_V5683.clone(); + rt::hd( + &__t65, + )? + }; + rt::eq( + &__t64, + &__t66, + ) + }; + if !rt::is_truthy( + interp, &__t88, + )? { + Value::bool( + false, + ) + } else { + let __t89 = { + let __t86 = { + let __t68 = { + let __t67 = v_V5683.clone(); + rt::tl(&__t67)? + }; + rt::is_cons(&__t68) + }; + if !rt::is_truthy(interp, &__t86)? { Value::bool(false) } else { let __t87 = { let __t84 = { let __t71 = { let __t70 = { let __t69 = v_V5683.clone(); rt::tl(&__t69)? }; rt::tl(&__t70)? }; rt::is_cons(&__t71) }; if !rt::is_truthy(interp, &__t84)? { Value::bool(false) } else { let __t85 = { let __t82 = { let __t75 = { let __t74 = { let __t73 = { let __t72 = v_V5683.clone(); rt::tl(&__t72)? }; rt::tl(&__t73)? }; rt::tl(&__t74)? }; rt::is_cons(&__t75) }; if !rt::is_truthy(interp, &__t82)? { Value::bool(false) } else { let __t83 = { let __t76 = Value::nil(); let __t81 = { let __t80 = { let __t79 = { let __t78 = { let __t77 = v_V5683.clone(); rt::tl(&__t77)? }; rt::tl(&__t78)? }; rt::tl(&__t79)? }; rt::tl(&__t80)? }; rt::eq(&__t76, &__t81) }; Value::bool(rt::is_truthy(interp, &__t83)?) } }; Value::bool(rt::is_truthy(interp, &__t85)?) } }; Value::bool(rt::is_truthy(interp, &__t87)?) } + }; + Value::bool(rt::is_truthy(interp, &__t89)?) + } + }; + Value::bool( + rt::is_truthy( + interp, &__t91, + )?, + ) + } + }; + if match rt::is_truthy( + interp, &__t114, + ) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t92 = Value::sym( + interp.intern( + "DEFUN", + ), + ); + let __t113 = { + let __t95 = { + let __t94 = { + let __t93 = v_V5683.clone(); + rt::tl( + &__t93, + )? + }; + rt::hd(&__t94)? + }; + let __t112 = { + let __t99 = { + let __t98 = { + let __t97 = { + let __t96 = v_V5683.clone(); + rt::tl(&__t96)? + }; + rt::tl(&__t97)? + }; + rt::hd( + &__t98, + )? + }; + let __t111 = { + let __t109 = { + let __t103 = { + let __t102 = { let __t101 = { let __t100 = v_V5683.clone(); rt::tl(&__t100)? }; rt::tl(&__t101)? }; + rt::hd(&__t102)? + }; + let __t108 = { + let __t107 = { let __t106 = { let __t105 = { let __t104 = v_V5683.clone(); rt::tl(&__t104)? }; rt::tl(&__t105)? }; rt::tl(&__t106)? }; + rt::hd(&__t107)? + }; + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t103, __t108])? + }; + let __t110 = Value::nil(); + rt::cons( + &__t109, + &__t110, + ) + }; + rt::cons( + &__t99, + &__t111, + ) + }; + rt::cons( + &__t95, &__t112, + ) + }; + rt::cons( + &__t92, &__t113, + ) + }); + } else { + { + let __t62 = { + let __t53 = { + let __t49 = + v_V5683 + .clone( + ); + rt::is_cons( + &__t49, + ) + }; + if !rt::is_truthy( + interp, &__t53, + )? { + Value::bool( + false, + ) + } else { + let __t54 = { + let __t50 = Value::sym(interp.intern("cond")); + let __t52 = { + let __t51 = v_V5683.clone(); + rt::hd(&__t51)? + }; + rt::eq( + &__t50, + &__t52, + ) + }; + Value::bool(rt::is_truthy(interp, &__t54)?) + } + }; + if match rt::is_truthy( + interp, &__t62, + ) { + Ok(b) => b, + Err(e) => { + break Err(e) + } + } { + break Ok({ + let __t55 = Value::sym(interp.intern("COND")); + let __t61 = { + let __t58 = { + let v_V5682 = v_V5682.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z5684 = args[0].clone(); Ok({ let __t56 = v_V5682.clone(); let __t57 = v_Z5684.clone(); rt::apply_direct(interp, "cl.cond-code", &[__t56, __t57])? }) }, vec![v_V5682], interp) + }; + let __t60 = { + let __t59 = v_V5683.clone(); + rt::tl(&__t59)? + }; + rt::apply_direct(interp, "CL.MAPCAR", &[__t58, __t60])? + }; + rt::cons( + &__t55, + &__t61, + ) + }); + } else { + { + let __t48 = { + let __t41 = { + let __t31 = v_V5683.clone(); + rt::is_cons(&__t31) + }; + if !rt::is_truthy(interp, &__t41)? { Value::bool(false) } else { let __t42 = { let __t39 = { let __t32 = Value::sym(interp.intern("T")); let __t36 = { let __t34 = { let __t33 = v_V5683.clone(); rt::hd(&__t33)? }; let __t35 = v_V5682.clone(); rt::apply_direct(interp, "MEMBER", &[__t34, __t35])? }; rt::eq(&__t32, &__t36) }; if rt::is_truthy(interp, &__t39)? { Value::bool(true) } else { let __t40 = { let __t38 = { let __t37 = v_V5683.clone(); rt::hd(&__t37)? }; rt::is_cons(&__t38) }; Value::bool(rt::is_truthy(interp, &__t40)?) } }; Value::bool(rt::is_truthy(interp, &__t42)?) } + }; + if match rt::is_truthy(interp, &__t48) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5685 = { let __t45 = { let v_V5682 = v_V5682.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5686 = args[0].clone(); Ok({ let __t43 = v_V5682.clone(); let __t44 = v_Z5686.clone(); rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t43, __t44])? }) }, vec![v_V5682], interp) }; let __t46 = v_V5683.clone(); rt::apply_direct(interp, "CL.MAPCAR", &[__t45, __t46])? }; break Ok({ let __t47 = v_W5685.clone(); rt::apply_direct(interp, "cl.currylisp", &[__t47])? }); } } else { { let __t30 = { let __t18 = { let __t15 = v_V5683.clone(); rt::is_cons(&__t15) }; if !rt::is_truthy(interp, &__t18)? { Value::bool(false) } else { let __t19 = { let __t17 = { let __t16 = v_V5683.clone(); rt::hd(&__t16)? }; rt::apply_direct(interp, "cl.fastsymbol?", &[__t17])? }; Value::bool(rt::is_truthy(interp, &__t19)?) } }; if match rt::is_truthy(interp, &__t30) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5687 = { let __t22 = { let v_V5682 = v_V5682.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5688 = args[0].clone(); Ok({ let __t20 = v_V5682.clone(); let __t21 = v_Z5688.clone(); rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t20, __t21])? }) }, vec![v_V5682], interp) }; let __t24 = { let __t23 = v_V5683.clone(); rt::tl(&__t23)? }; rt::apply_direct(interp, "CL.MAPCAR", &[__t22, __t24])? }; { let v_W5689 = { let __t26 = { let __t25 = v_V5683.clone(); rt::hd(&__t25)? }; rt::apply_direct(interp, "cl.maplispsym", &[__t26])? }; break Ok({ let __t29 = { let __t27 = v_W5689.clone(); let __t28 = v_W5687.clone(); rt::cons(&__t27, &__t28) }; rt::apply_direct(interp, "cl.optimise-application", &[__t29])? }); } } } else { { let __t14 = { let __t12 = { let __t7 = v_V5683.clone(); rt::is_number(&__t7) }; if rt::is_truthy(interp, &__t12)? { Value::bool(true) } else { let __t13 = { let __t10 = { let __t8 = v_V5683.clone(); rt::is_string(&__t8) }; if rt::is_truthy(interp, &__t10)? { Value::bool(true) } else { let __t11 = { let __t9 = v_V5683.clone(); rt::apply_direct(interp, "empty?", &[__t9])? }; Value::bool(rt::is_truthy(interp, &__t11)?) } }; Value::bool(rt::is_truthy(interp, &__t13)?) } }; if match rt::is_truthy(interp, &__t14) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V5683.clone()); } else { { let __t6 = Value::bool(true); if match rt::is_truthy(interp, &__t6) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2 = Value::sym(interp.intern("QUOTE")); let __t5 = { let __t3 = v_V5683.clone(); let __t4 = Value::nil(); rt::cons(&__t3, &__t4) }; rt::cons(&__t2, &__t5) }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_kl_x2d_to_x2d_lisp_x2d_h(interp: &mut Interp) { + interp.register_native("cl.kl-to-lisp-h", 2, aot_cl_x2e_kl_x2d_to_x2d_lisp_x2d_h); + interp.register_aot_direct("cl.kl-to-lisp-h", aot_cl_x2e_kl_x2d_to_x2d_lisp_x2d_h); +} + +/// AOT-compiled from KL `(defun cl.rectify-t ...)` +pub fn aot_cl_x2e_rectify_x2d_t(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.rectify-t: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5690 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + break Ok({ + let __t345 = { + let __t344 = Value::str("x"); + rt::apply_direct(interp, "GENSYM", &[__t344])? + }; + let __t346 = Value::sym(interp.intern("T")); + let __t347 = v_V5690.clone(); + rt::apply_direct(interp, "SUBST", &[__t345, __t346, __t347])? + }); + } +} + +fn install_cl_x2e_rectify_x2d_t(interp: &mut Interp) { + interp.register_native("cl.rectify-t", 1, aot_cl_x2e_rectify_x2d_t); + interp.register_aot_direct("cl.rectify-t", aot_cl_x2e_rectify_x2d_t); +} + +/// AOT-compiled from KL `(defun cl.currylisp ...)` +pub fn aot_cl_x2e_currylisp(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.currylisp: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5691 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t396 = { + let __t380 = { + let __t372 = v_V5691.clone(); + rt::is_cons(&__t372) + }; + if !rt::is_truthy(interp, &__t380)? { + Value::bool(false) + } else { + let __t381 = { + let __t378 = { + let __t374 = { + let __t373 = v_V5691.clone(); + rt::tl(&__t373)? + }; + rt::is_cons(&__t374) + }; + if !rt::is_truthy(interp, &__t378)? { + Value::bool(false) + } else { + let __t379 = { + let __t377 = { + let __t376 = { + let __t375 = v_V5691.clone(); + rt::tl(&__t375)? + }; + rt::tl(&__t376)? + }; + rt::is_cons(&__t377) + }; + Value::bool(rt::is_truthy(interp, &__t379)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t381)?) + } + }; + if match rt::is_truthy(interp, &__t396) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t395 = { + let __t391 = { + let __t382 = Value::sym(interp.intern("FUNCALL")); + let __t390 = { + let __t384 = { + let __t383 = v_V5691.clone(); + rt::hd(&__t383)? + }; + let __t389 = { + let __t387 = { + let __t386 = { + let __t385 = v_V5691.clone(); + rt::tl(&__t385)? + }; + rt::hd(&__t386)? + }; + let __t388 = Value::nil(); + rt::cons(&__t387, &__t388) + }; + rt::cons(&__t384, &__t389) + }; + rt::cons(&__t382, &__t390) + }; + let __t394 = { + let __t393 = { + let __t392 = v_V5691.clone(); + rt::tl(&__t392)? + }; + rt::tl(&__t393)? + }; + rt::cons(&__t391, &__t394) + }; + v_V5691 = __t395; + continue; + } + } else { + { + let __t371 = { + let __t367 = { + let __t358 = v_V5691.clone(); + rt::is_cons(&__t358) + }; + if !rt::is_truthy(interp, &__t367)? { + Value::bool(false) + } else { + let __t368 = { + let __t365 = { + let __t360 = { + let __t359 = v_V5691.clone(); + rt::tl(&__t359)? + }; + rt::is_cons(&__t360) + }; + if !rt::is_truthy(interp, &__t365)? { + Value::bool(false) + } else { + let __t366 = { + let __t361 = Value::nil(); + let __t364 = { + let __t363 = { + let __t362 = v_V5691.clone(); + rt::tl(&__t362)? + }; + rt::tl(&__t363)? + }; + rt::eq(&__t361, &__t364) + }; + Value::bool(rt::is_truthy(interp, &__t366)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t368)?) + } + }; + if match rt::is_truthy(interp, &__t371) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t369 = Value::sym(interp.intern("FUNCALL")); + let __t370 = v_V5691.clone(); + rt::cons(&__t369, &__t370) + }); + } else { + { + let __t357 = { + let __t353 = { + let __t349 = v_V5691.clone(); + rt::is_cons(&__t349) + }; + if !rt::is_truthy(interp, &__t353)? { + Value::bool(false) + } else { + let __t354 = { + let __t350 = Value::nil(); + let __t352 = { + let __t351 = v_V5691.clone(); + rt::tl(&__t351)? + }; + rt::eq(&__t350, &__t352) + }; + Value::bool(rt::is_truthy(interp, &__t354)?) + } + }; + if match rt::is_truthy(interp, &__t357) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t355 = Value::sym(interp.intern("FUNCALL")); + let __t356 = v_V5691.clone(); + rt::cons(&__t355, &__t356) + }); + } else { + { + let __t348 = Value::bool(true); + if match rt::is_truthy(interp, &__t348) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(v_V5691.clone()); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_currylisp(interp: &mut Interp) { + interp.register_native("cl.currylisp", 1, aot_cl_x2e_currylisp); + interp.register_aot_direct("cl.currylisp", aot_cl_x2e_currylisp); +} + +/// AOT-compiled from KL `(defun cl.optimise-application ...)` +pub fn aot_cl_x2e_optimise_x2d_application( + interp: &mut Interp, + args: &[Value], +) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.optimise-application: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5692 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t827 = { + let __t822 = { + let __t808 = v_V5692.clone(); + rt::is_cons(&__t808) + }; + if !rt::is_truthy(interp, &__t822)? { + Value::bool(false) + } else { + let __t823 = { + let __t820 = { + let __t809 = Value::sym(interp.intern("protect")); + let __t811 = { + let __t810 = v_V5692.clone(); + rt::hd(&__t810)? + }; + rt::eq(&__t809, &__t811) + }; + if !rt::is_truthy(interp, &__t820)? { + Value::bool(false) + } else { + let __t821 = { + let __t818 = { + let __t813 = { + let __t812 = v_V5692.clone(); + rt::tl(&__t812)? + }; + rt::is_cons(&__t813) + }; + if !rt::is_truthy(interp, &__t818)? { + Value::bool(false) + } else { + let __t819 = { + let __t814 = Value::nil(); + let __t817 = { + let __t816 = { + let __t815 = v_V5692.clone(); + rt::tl(&__t815)? + }; + rt::tl(&__t816)? + }; + rt::eq(&__t814, &__t817) + }; + Value::bool(rt::is_truthy(interp, &__t819)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t821)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t823)?) + } + }; + if match rt::is_truthy(interp, &__t827) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t826 = { + let __t825 = { + let __t824 = v_V5692.clone(); + rt::tl(&__t824)? + }; + rt::hd(&__t825)? + }; + v_V5692 = __t826; + continue; + } + } else { + { + let __t807 = { + let __t798 = { + let __t784 = v_V5692.clone(); + rt::is_cons(&__t784) + }; + if !rt::is_truthy(interp, &__t798)? { + Value::bool(false) + } else { + let __t799 = { + let __t796 = { + let __t785 = Value::sym(interp.intern("hd")); + let __t787 = { + let __t786 = v_V5692.clone(); + rt::hd(&__t786)? + }; + rt::eq(&__t785, &__t787) + }; + if !rt::is_truthy(interp, &__t796)? { + Value::bool(false) + } else { + let __t797 = { + let __t794 = { + let __t789 = { + let __t788 = v_V5692.clone(); + rt::tl(&__t788)? + }; + rt::is_cons(&__t789) + }; + if !rt::is_truthy(interp, &__t794)? { + Value::bool(false) + } else { + let __t795 = { + let __t790 = Value::nil(); + let __t793 = { + let __t792 = { + let __t791 = v_V5692.clone(); + rt::tl(&__t791)? + }; + rt::tl(&__t792)? + }; + rt::eq(&__t790, &__t793) + }; + Value::bool(rt::is_truthy(interp, &__t795)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t797)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t799)?) + } + }; + if match rt::is_truthy(interp, &__t807) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t800 = Value::sym(interp.intern("CAR")); + let __t806 = { + let __t804 = { + let __t803 = { + let __t802 = { + let __t801 = v_V5692.clone(); + rt::tl(&__t801)? + }; + rt::hd(&__t802)? + }; + rt::apply_direct(interp, "cl.optimise-application", &[__t803])? + }; + let __t805 = Value::nil(); + rt::cons(&__t804, &__t805) + }; + rt::cons(&__t800, &__t806) + }); + } else { + { + let __t783 = { + let __t774 = { + let __t760 = v_V5692.clone(); + rt::is_cons(&__t760) + }; + if !rt::is_truthy(interp, &__t774)? { + Value::bool(false) + } else { + let __t775 = { + let __t772 = { + let __t761 = Value::sym(interp.intern("tl")); + let __t763 = { + let __t762 = v_V5692.clone(); + rt::hd(&__t762)? + }; + rt::eq(&__t761, &__t763) + }; + if !rt::is_truthy(interp, &__t772)? { + Value::bool(false) + } else { + let __t773 = { + let __t770 = { + let __t765 = { + let __t764 = v_V5692.clone(); + rt::tl(&__t764)? + }; + rt::is_cons(&__t765) + }; + if !rt::is_truthy(interp, &__t770)? { + Value::bool(false) + } else { + let __t771 = { + let __t766 = Value::nil(); + let __t769 = { + let __t768 = { + let __t767 = v_V5692.clone(); + rt::tl(&__t767)? + }; + rt::tl(&__t768)? + }; + rt::eq(&__t766, &__t769) + }; + Value::bool(rt::is_truthy(interp, &__t771)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t773)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t775)?) + } + }; + if match rt::is_truthy(interp, &__t783) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t776 = Value::sym(interp.intern("CDR")); + let __t782 = { + let __t780 = { + let __t779 = { + let __t778 = { + let __t777 = v_V5692.clone(); + rt::tl(&__t777)? + }; + rt::hd(&__t778)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t779], + )? + }; + let __t781 = Value::nil(); + rt::cons(&__t780, &__t781) + }; + rt::cons(&__t776, &__t782) + }); + } else { + { + let __t759 = { + let __t744 = { + let __t724 = v_V5692.clone(); + rt::is_cons(&__t724) + }; + if !rt::is_truthy(interp, &__t744)? { + Value::bool(false) + } else { + let __t745 = { + let __t742 = { + let __t725 = Value::sym(interp.intern("cons")); + let __t727 = { + let __t726 = v_V5692.clone(); + rt::hd(&__t726)? + }; + rt::eq(&__t725, &__t727) + }; + if !rt::is_truthy(interp, &__t742)? { + Value::bool(false) + } else { + let __t743 = { + let __t740 = { + let __t729 = { + let __t728 = v_V5692.clone(); + rt::tl(&__t728)? + }; + rt::is_cons(&__t729) + }; + if !rt::is_truthy(interp, &__t740)? { + Value::bool(false) + } else { + let __t741 = { + let __t738 = { + let __t732 = { + let __t731 = { + let __t730 = + v_V5692.clone(); + rt::tl(&__t730)? + }; + rt::tl(&__t731)? + }; + rt::is_cons(&__t732) + }; + if !rt::is_truthy(interp, &__t738)? + { + Value::bool(false) + } else { + let __t739 = { + let __t733 = Value::nil(); + let __t737 = { + let __t736 = { + let __t735 = { + let __t734 = + v_V5692 + .clone( + ); + rt::tl(&__t734)? + }; + rt::tl(&__t735)? + }; + rt::tl(&__t736)? + }; + rt::eq(&__t733, &__t737) + }; + Value::bool(rt::is_truthy( + interp, &__t739, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t741, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t743)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t745)?) + } + }; + if match rt::is_truthy(interp, &__t759) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t746 = Value::sym(interp.intern("CONS")); + let __t758 = { + let __t750 = { + let __t749 = { + let __t748 = { + let __t747 = v_V5692.clone(); + rt::tl(&__t747)? + }; + rt::hd(&__t748)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t749], + )? + }; + let __t757 = { + let __t755 = { + let __t754 = { + let __t753 = { + let __t752 = { + let __t751 = v_V5692.clone(); + rt::tl(&__t751)? + }; + rt::tl(&__t752)? + }; + rt::hd(&__t753)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t754], + )? + }; + let __t756 = Value::nil(); + rt::cons(&__t755, &__t756) + }; + rt::cons(&__t750, &__t757) + }; + rt::cons(&__t746, &__t758) + }); + } else { + { + let __t723 = { + let __t708 = { + let __t688 = v_V5692.clone(); + rt::is_cons(&__t688) + }; + if !rt::is_truthy(interp, &__t708)? { + Value::bool(false) + } else { + let __t709 = { + let __t706 = { + let __t689 = + Value::sym(interp.intern("append")); + let __t691 = { + let __t690 = v_V5692.clone(); + rt::hd(&__t690)? + }; + rt::eq(&__t689, &__t691) + }; + if !rt::is_truthy(interp, &__t706)? { + Value::bool(false) + } else { + let __t707 = { + let __t704 = { + let __t693 = { + let __t692 = + v_V5692.clone(); + rt::tl(&__t692)? + }; + rt::is_cons(&__t693) + }; + if !rt::is_truthy(interp, &__t704)? + { + Value::bool(false) + } else { + let __t705 = { + let __t702 = { + let __t696 = { + let __t695 = { + let __t694 = + v_V5692 + .clone( + ); + rt::tl(&__t694)? + }; + rt::tl(&__t695)? + }; + rt::is_cons(&__t696) + }; + if !rt::is_truthy( + interp, &__t702, + )? { + Value::bool(false) + } else { + let __t703 = { + let __t697 = + Value::nil(); + let __t701 = { + let __t700 = { + let __t699 = { + let __t698 = v_V5692.clone(); + rt::tl(&__t698)? + }; + rt::tl( + &__t699, + )? + }; + rt::tl(&__t700)? + }; + rt::eq( + &__t697, + &__t701, + ) + }; + Value::bool( + rt::is_truthy( + interp, &__t703, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t705, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t707, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t709)?) + } + }; + if match rt::is_truthy(interp, &__t723) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t710 = + Value::sym(interp.intern("APPEND")); + let __t722 = { + let __t714 = { + let __t713 = { + let __t712 = { + let __t711 = v_V5692.clone(); + rt::tl(&__t711)? + }; + rt::hd(&__t712)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t713], + )? + }; + let __t721 = { + let __t719 = { + let __t718 = { + let __t717 = { + let __t716 = { + let __t715 = + v_V5692.clone(); + rt::tl(&__t715)? + }; + rt::tl(&__t716)? + }; + rt::hd(&__t717)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t718], + )? + }; + let __t720 = Value::nil(); + rt::cons(&__t719, &__t720) + }; + rt::cons(&__t714, &__t721) + }; + rt::cons(&__t710, &__t722) + }); + } else { + { + let __t687 = { + let __t678 = { + let __t664 = v_V5692.clone(); + rt::is_cons(&__t664) + }; + if !rt::is_truthy(interp, &__t678)? { + Value::bool(false) + } else { + let __t679 = { + let __t676 = { + let __t665 = Value::sym( + interp.intern("reverse"), + ); + let __t667 = { + let __t666 = + v_V5692.clone(); + rt::hd(&__t666)? + }; + rt::eq(&__t665, &__t667) + }; + if !rt::is_truthy(interp, &__t676)? + { + Value::bool(false) + } else { + let __t677 = { + let __t674 = { + let __t669 = { + let __t668 = + v_V5692.clone(); + rt::tl(&__t668)? + }; + rt::is_cons(&__t669) + }; + if !rt::is_truthy( + interp, &__t674, + )? { + Value::bool(false) + } else { + let __t675 = { + let __t670 = + Value::nil(); + let __t673 = { + let __t672 = { + let __t671 = v_V5692.clone(); + rt::tl( + &__t671, + )? + }; + rt::tl(&__t672)? + }; + rt::eq( + &__t670, + &__t673, + ) + }; + Value::bool( + rt::is_truthy( + interp, &__t675, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t677, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t679, + )?) + } + }; + if match rt::is_truthy(interp, &__t687) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t680 = Value::sym( + interp.intern("REVERSE"), + ); + let __t686 = { + let __t684 = { + let __t683 = { + let __t682 = { + let __t681 = + v_V5692.clone(); + rt::tl(&__t681)? + }; + rt::hd(&__t682)? + }; + rt::apply_direct( + interp, + "cl.optimise-application", + &[__t683], + )? + }; + let __t685 = Value::nil(); + rt::cons(&__t684, &__t685) + }; + rt::cons(&__t680, &__t686) + }); + } else { + { + let __t663 = { + let __t654 = { + let __t640 = v_V5692.clone(); + rt::is_cons(&__t640) + }; + if !rt::is_truthy(interp, &__t654)? + { + Value::bool(false) + } else { + let __t655 = { + let __t652 = { + let __t641 = Value::sym( + interp.intern( + "length", + ), + ); + let __t643 = { + let __t642 = + v_V5692.clone(); + rt::hd(&__t642)? + }; + rt::eq(&__t641, &__t643) + }; + if !rt::is_truthy( + interp, &__t652, + )? { + Value::bool(false) + } else { + let __t653 = { + let __t650 = { + let __t645 = { + let __t644 = v_V5692.clone(); + rt::tl( + &__t644, + )? + }; + rt::is_cons( + &__t645, + ) + }; + if !rt::is_truthy( + interp, &__t650, + )? { + Value::bool( + false, + ) + } else { + let __t651 = { + let __t646 = Value::nil(); + let __t649 = { + let __t648 = { + let __t647 = v_V5692.clone(); + rt::tl(&__t647)? + }; + rt::tl(&__t648)? + }; + rt::eq( + &__t646, + &__t649, + ) + }; + Value::bool(rt::is_truthy(interp, &__t651)?) + } + }; + Value::bool( + rt::is_truthy( + interp, &__t653, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t655, + )?) + } + }; + if match rt::is_truthy(interp, &__t663) + { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t656 = + Value::sym(interp.intern( + "CL.LIST-LENGTH", + )); + let __t662 = { + let __t660 = { + let __t659 = { + let __t658 = { + let __t657 = + v_V5692 + .clone( + ); + rt::tl(&__t657)? + }; + rt::hd(&__t658)? + }; + rt::apply_direct(interp, "cl.optimise-application", &[__t659])? + }; + let __t661 = Value::nil(); + rt::cons(&__t660, &__t661) + }; + rt::cons(&__t656, &__t662) + }); + } else { + { + let __t639 = { + let __t617 = { + let __t590 = + v_V5692.clone(); + rt::is_cons(&__t590) + }; + if !rt::is_truthy( + interp, &__t617, + )? { + Value::bool(false) + } else { + let __t618 = { + let __t615 = { + let __t591 = Value::sym(interp.intern("if")); + let __t593 = { + let __t592 = v_V5692.clone(); + rt::hd( + &__t592, + )? + }; + rt::eq( + &__t591, + &__t593, + ) + }; + if !rt::is_truthy( + interp, &__t615, + )? { + Value::bool( + false, + ) + } else { + let __t616 = { + let __t613 = { + let __t595 = { + let __t594 = v_V5692.clone(); + rt::tl(&__t594)? + }; + rt::is_cons(&__t595) + }; + if !rt::is_truthy(interp, &__t613)? { Value::bool(false) } else { let __t614 = { let __t611 = { let __t598 = { let __t597 = { let __t596 = v_V5692.clone(); rt::tl(&__t596)? }; rt::tl(&__t597)? }; rt::is_cons(&__t598) }; if !rt::is_truthy(interp, &__t611)? { Value::bool(false) } else { let __t612 = { let __t609 = { let __t602 = { let __t601 = { let __t600 = { let __t599 = v_V5692.clone(); rt::tl(&__t599)? }; rt::tl(&__t600)? }; rt::tl(&__t601)? }; rt::is_cons(&__t602) }; if !rt::is_truthy(interp, &__t609)? { Value::bool(false) } else { let __t610 = { let __t603 = Value::nil(); let __t608 = { let __t607 = { let __t606 = { let __t605 = { let __t604 = v_V5692.clone(); rt::tl(&__t604)? }; rt::tl(&__t605)? }; rt::tl(&__t606)? }; rt::tl(&__t607)? }; rt::eq(&__t603, &__t608) }; Value::bool(rt::is_truthy(interp, &__t610)?) } }; Value::bool(rt::is_truthy(interp, &__t612)?) } }; Value::bool(rt::is_truthy(interp, &__t614)?) } + }; + Value::bool(rt::is_truthy(interp, &__t616)?) + } + }; + Value::bool( + rt::is_truthy( + interp, &__t618, + )?, + ) + } + }; + if match rt::is_truthy( + interp, &__t639, + ) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t619 = Value::sym( + interp.intern("IF"), + ); + let __t638 = { + let __t623 = { + let __t622 = { + let __t621 = { + let __t620 = v_V5692.clone(); + rt::tl(&__t620)? + }; + rt::hd( + &__t621, + )? + }; + rt::apply_direct(interp, "cl.wrap", &[__t622])? + }; + let __t637 = { + let __t628 = { + let __t627 = { + let __t626 = { + let __t625 = { let __t624 = v_V5692.clone(); rt::tl(&__t624)? }; + rt::tl(&__t625)? + }; + rt::hd(&__t626)? + }; + rt::apply_direct(interp, "cl.optimise-application", &[__t627])? + }; + let __t636 = { + let __t634 = { + let __t633 = { + let __t632 = { let __t631 = { let __t630 = { let __t629 = v_V5692.clone(); rt::tl(&__t629)? }; rt::tl(&__t630)? }; rt::tl(&__t631)? }; + rt::hd(&__t632)? + }; + rt::apply_direct(interp, "cl.optimise-application", &[__t633])? + }; + let __t635 = Value::nil(); + rt::cons( + &__t634, + &__t635, + ) + }; + rt::cons( + &__t628, + &__t636, + ) + }; + rt::cons( + &__t623, + &__t637, + ) + }; + rt::cons( + &__t619, &__t638, + ) + }); + } else { + { + let __t589 = { + let __t583 = { + let __t543 = + v_V5692 + .clone( + ); + rt::is_cons( + &__t543, + ) + }; + if !rt::is_truthy( + interp, &__t583, + )? { + Value::bool( + false, + ) + } else { + let __t584 = { + let __t581 = { + let __t544 = Value::sym(interp.intern("value")); + let __t546 = { + let __t545 = v_V5692.clone(); + rt::hd(&__t545)? + }; + rt::eq(&__t544, &__t546) + }; + if !rt::is_truthy(interp, &__t581)? { Value::bool(false) } else { let __t582 = { let __t579 = { let __t548 = { let __t547 = v_V5692.clone(); rt::tl(&__t547)? }; rt::is_cons(&__t548) }; if !rt::is_truthy(interp, &__t579)? { Value::bool(false) } else { let __t580 = { let __t577 = { let __t551 = { let __t550 = { let __t549 = v_V5692.clone(); rt::tl(&__t549)? }; rt::hd(&__t550)? }; rt::is_cons(&__t551) }; if !rt::is_truthy(interp, &__t577)? { Value::bool(false) } else { let __t578 = { let __t575 = { let __t555 = { let __t554 = { let __t553 = { let __t552 = v_V5692.clone(); rt::tl(&__t552)? }; rt::hd(&__t553)? }; rt::tl(&__t554)? }; rt::is_cons(&__t555) }; if !rt::is_truthy(interp, &__t575)? { Value::bool(false) } else { let __t576 = { let __t573 = { let __t556 = Value::nil(); let __t561 = { let __t560 = { let __t559 = { let __t558 = { let __t557 = v_V5692.clone(); rt::tl(&__t557)? }; rt::hd(&__t558)? }; rt::tl(&__t559)? }; rt::tl(&__t560)? }; rt::eq(&__t556, &__t561) }; if !rt::is_truthy(interp, &__t573)? { Value::bool(false) } else { let __t574 = { let __t571 = { let __t562 = Value::nil(); let __t565 = { let __t564 = { let __t563 = v_V5692.clone(); rt::tl(&__t563)? }; rt::tl(&__t564)? }; rt::eq(&__t562, &__t565) }; if !rt::is_truthy(interp, &__t571)? { Value::bool(false) } else { let __t572 = { let __t569 = { let __t568 = { let __t567 = { let __t566 = v_V5692.clone(); rt::tl(&__t566)? }; rt::hd(&__t567)? }; rt::hd(&__t568)? }; let __t570 = Value::sym(interp.intern("QUOTE")); rt::eq(&__t569, &__t570) }; Value::bool(rt::is_truthy(interp, &__t572)?) } }; Value::bool(rt::is_truthy(interp, &__t574)?) } }; Value::bool(rt::is_truthy(interp, &__t576)?) } }; Value::bool(rt::is_truthy(interp, &__t578)?) } }; Value::bool(rt::is_truthy(interp, &__t580)?) } }; Value::bool(rt::is_truthy(interp, &__t582)?) } + }; + Value::bool(rt::is_truthy(interp, &__t584)?) + } + }; + if match rt::is_truthy( + interp, &__t589, + ) { + Ok(b) => b, + Err(e) => { + break Err(e) + } + } { + break Ok({ + let __t588 = { + let __t587 = { + let __t586 = { + let __t585 = v_V5692.clone(); + rt::tl(&__t585)? + }; + rt::hd(&__t586)? + }; + rt::tl( + &__t587, + )? + }; + rt::hd(&__t588)? + }); + } else { + { + let __t542 = { + let __t537 = { + let __t517 = v_V5692.clone(); + rt::is_cons(&__t517) + }; + if !rt::is_truthy(interp, &__t537)? { Value::bool(false) } else { let __t538 = { let __t535 = { let __t518 = Value::sym(interp.intern("map")); let __t520 = { let __t519 = v_V5692.clone(); rt::hd(&__t519)? }; rt::eq(&__t518, &__t520) }; if !rt::is_truthy(interp, &__t535)? { Value::bool(false) } else { let __t536 = { let __t533 = { let __t522 = { let __t521 = v_V5692.clone(); rt::tl(&__t521)? }; rt::is_cons(&__t522) }; if !rt::is_truthy(interp, &__t533)? { Value::bool(false) } else { let __t534 = { let __t531 = { let __t525 = { let __t524 = { let __t523 = v_V5692.clone(); rt::tl(&__t523)? }; rt::tl(&__t524)? }; rt::is_cons(&__t525) }; if !rt::is_truthy(interp, &__t531)? { Value::bool(false) } else { let __t532 = { let __t526 = Value::nil(); let __t530 = { let __t529 = { let __t528 = { let __t527 = v_V5692.clone(); rt::tl(&__t527)? }; rt::tl(&__t528)? }; rt::tl(&__t529)? }; rt::eq(&__t526, &__t530) }; Value::bool(rt::is_truthy(interp, &__t532)?) } }; Value::bool(rt::is_truthy(interp, &__t534)?) } }; Value::bool(rt::is_truthy(interp, &__t536)?) } }; Value::bool(rt::is_truthy(interp, &__t538)?) } + }; + if match rt::is_truthy(interp, &__t542) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t539 = Value::sym(interp.intern("CL.MAPCAR")); let __t541 = { let __t540 = v_V5692.clone(); rt::tl(&__t540)? }; rt::cons(&__t539, &__t541) }); } else { { let __t516 = { let __t505 = { let __t479 = v_V5692.clone(); rt::is_cons(&__t479) }; if !rt::is_truthy(interp, &__t505)? { Value::bool(false) } else { let __t506 = { let __t503 = { let __t480 = Value::sym(interp.intern("+")); let __t482 = { let __t481 = v_V5692.clone(); rt::hd(&__t481)? }; rt::eq(&__t480, &__t482) }; if !rt::is_truthy(interp, &__t503)? { Value::bool(false) } else { let __t504 = { let __t501 = { let __t484 = { let __t483 = v_V5692.clone(); rt::tl(&__t483)? }; rt::is_cons(&__t484) }; if !rt::is_truthy(interp, &__t501)? { Value::bool(false) } else { let __t502 = { let __t499 = { let __t485 = Value::int(1i64); let __t488 = { let __t487 = { let __t486 = v_V5692.clone(); rt::tl(&__t486)? }; rt::hd(&__t487)? }; rt::eq(&__t485, &__t488) }; if !rt::is_truthy(interp, &__t499)? { Value::bool(false) } else { let __t500 = { let __t497 = { let __t491 = { let __t490 = { let __t489 = v_V5692.clone(); rt::tl(&__t489)? }; rt::tl(&__t490)? }; rt::is_cons(&__t491) }; if !rt::is_truthy(interp, &__t497)? { Value::bool(false) } else { let __t498 = { let __t492 = Value::nil(); let __t496 = { let __t495 = { let __t494 = { let __t493 = v_V5692.clone(); rt::tl(&__t493)? }; rt::tl(&__t494)? }; rt::tl(&__t495)? }; rt::eq(&__t492, &__t496) }; Value::bool(rt::is_truthy(interp, &__t498)?) } }; Value::bool(rt::is_truthy(interp, &__t500)?) } }; Value::bool(rt::is_truthy(interp, &__t502)?) } }; Value::bool(rt::is_truthy(interp, &__t504)?) } }; Value::bool(rt::is_truthy(interp, &__t506)?) } }; if match rt::is_truthy(interp, &__t516) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t508 = { let __t507 = Value::str("1+"); rt::apply_direct(interp, "intern", &[__t507])? }; let __t515 = { let __t513 = { let __t512 = { let __t511 = { let __t510 = { let __t509 = v_V5692.clone(); rt::tl(&__t509)? }; rt::tl(&__t510)? }; rt::hd(&__t511)? }; rt::apply_direct(interp, "cl.optimise-application", &[__t512])? }; let __t514 = Value::nil(); rt::cons(&__t513, &__t514) }; rt::cons(&__t508, &__t515) }); } else { { let __t478 = { let __t468 = { let __t441 = v_V5692.clone(); rt::is_cons(&__t441) }; if !rt::is_truthy(interp, &__t468)? { Value::bool(false) } else { let __t469 = { let __t466 = { let __t442 = Value::sym(interp.intern("+")); let __t444 = { let __t443 = v_V5692.clone(); rt::hd(&__t443)? }; rt::eq(&__t442, &__t444) }; if !rt::is_truthy(interp, &__t466)? { Value::bool(false) } else { let __t467 = { let __t464 = { let __t446 = { let __t445 = v_V5692.clone(); rt::tl(&__t445)? }; rt::is_cons(&__t446) }; if !rt::is_truthy(interp, &__t464)? { Value::bool(false) } else { let __t465 = { let __t462 = { let __t449 = { let __t448 = { let __t447 = v_V5692.clone(); rt::tl(&__t447)? }; rt::tl(&__t448)? }; rt::is_cons(&__t449) }; if !rt::is_truthy(interp, &__t462)? { Value::bool(false) } else { let __t463 = { let __t460 = { let __t450 = Value::int(1i64); let __t454 = { let __t453 = { let __t452 = { let __t451 = v_V5692.clone(); rt::tl(&__t451)? }; rt::tl(&__t452)? }; rt::hd(&__t453)? }; rt::eq(&__t450, &__t454) }; if !rt::is_truthy(interp, &__t460)? { Value::bool(false) } else { let __t461 = { let __t455 = Value::nil(); let __t459 = { let __t458 = { let __t457 = { let __t456 = v_V5692.clone(); rt::tl(&__t456)? }; rt::tl(&__t457)? }; rt::tl(&__t458)? }; rt::eq(&__t455, &__t459) }; Value::bool(rt::is_truthy(interp, &__t461)?) } }; Value::bool(rt::is_truthy(interp, &__t463)?) } }; Value::bool(rt::is_truthy(interp, &__t465)?) } }; Value::bool(rt::is_truthy(interp, &__t467)?) } }; Value::bool(rt::is_truthy(interp, &__t469)?) } }; if match rt::is_truthy(interp, &__t478) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t471 = { let __t470 = Value::str("1+"); rt::apply_direct(interp, "intern", &[__t470])? }; let __t477 = { let __t475 = { let __t474 = { let __t473 = { let __t472 = v_V5692.clone(); rt::tl(&__t472)? }; rt::hd(&__t473)? }; rt::apply_direct(interp, "cl.optimise-application", &[__t474])? }; let __t476 = Value::nil(); rt::cons(&__t475, &__t476) }; rt::cons(&__t471, &__t477) }); } else { { let __t440 = { let __t430 = { let __t403 = v_V5692.clone(); rt::is_cons(&__t403) }; if !rt::is_truthy(interp, &__t430)? { Value::bool(false) } else { let __t431 = { let __t428 = { let __t404 = Value::sym(interp.intern("-")); let __t406 = { let __t405 = v_V5692.clone(); rt::hd(&__t405)? }; rt::eq(&__t404, &__t406) }; if !rt::is_truthy(interp, &__t428)? { Value::bool(false) } else { let __t429 = { let __t426 = { let __t408 = { let __t407 = v_V5692.clone(); rt::tl(&__t407)? }; rt::is_cons(&__t408) }; if !rt::is_truthy(interp, &__t426)? { Value::bool(false) } else { let __t427 = { let __t424 = { let __t411 = { let __t410 = { let __t409 = v_V5692.clone(); rt::tl(&__t409)? }; rt::tl(&__t410)? }; rt::is_cons(&__t411) }; if !rt::is_truthy(interp, &__t424)? { Value::bool(false) } else { let __t425 = { let __t422 = { let __t412 = Value::int(1i64); let __t416 = { let __t415 = { let __t414 = { let __t413 = v_V5692.clone(); rt::tl(&__t413)? }; rt::tl(&__t414)? }; rt::hd(&__t415)? }; rt::eq(&__t412, &__t416) }; if !rt::is_truthy(interp, &__t422)? { Value::bool(false) } else { let __t423 = { let __t417 = Value::nil(); let __t421 = { let __t420 = { let __t419 = { let __t418 = v_V5692.clone(); rt::tl(&__t418)? }; rt::tl(&__t419)? }; rt::tl(&__t420)? }; rt::eq(&__t417, &__t421) }; Value::bool(rt::is_truthy(interp, &__t423)?) } }; Value::bool(rt::is_truthy(interp, &__t425)?) } }; Value::bool(rt::is_truthy(interp, &__t427)?) } }; Value::bool(rt::is_truthy(interp, &__t429)?) } }; Value::bool(rt::is_truthy(interp, &__t431)?) } }; if match rt::is_truthy(interp, &__t440) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t433 = { let __t432 = Value::str("1-"); rt::apply_direct(interp, "intern", &[__t432])? }; let __t439 = { let __t437 = { let __t436 = { let __t435 = { let __t434 = v_V5692.clone(); rt::tl(&__t434)? }; rt::hd(&__t435)? }; rt::apply_direct(interp, "cl.optimise-application", &[__t436])? }; let __t438 = Value::nil(); rt::cons(&__t437, &__t438) }; rt::cons(&__t433, &__t439) }); } else { { let __t402 = { let __t398 = v_V5692.clone(); rt::is_cons(&__t398) }; if match rt::is_truthy(interp, &__t402) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t400 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Z5693 = args[0].clone(); Ok({ let __t399 = v_Z5693.clone(); rt::apply_direct(interp, "cl.optimise-application", &[__t399])? }) }, Vec::new(), interp) }; let __t401 = v_V5692.clone(); rt::apply_direct(interp, "CL.MAPCAR", &[__t400, __t401])? }); } else { { let __t397 = Value::bool(true); if match rt::is_truthy(interp, &__t397) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V5692.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } } } } } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_optimise_x2d_application(interp: &mut Interp) { + interp.register_native( + "cl.optimise-application", + 1, + aot_cl_x2e_optimise_x2d_application, + ); + interp.register_aot_direct( + "cl.optimise-application", + aot_cl_x2e_optimise_x2d_application, + ); +} + +/// AOT-compiled from KL `(defun cl.cond-code ...)` +pub fn aot_cl_x2e_cond_x2d_code(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 2 { + return Err(ShenError::new(format!( + "cl.cond-code: expected 2 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5698 = args[0].clone(); + #[allow(unused_mut)] + let mut v_V5699 = args[1].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t853 = { + let __t839 = { + let __t830 = v_V5699.clone(); + rt::is_cons(&__t830) + }; + if !rt::is_truthy(interp, &__t839)? { + Value::bool(false) + } else { + let __t840 = { + let __t837 = { + let __t832 = { + let __t831 = v_V5699.clone(); + rt::tl(&__t831)? + }; + rt::is_cons(&__t832) + }; + if !rt::is_truthy(interp, &__t837)? { + Value::bool(false) + } else { + let __t838 = { + let __t833 = Value::nil(); + let __t836 = { + let __t835 = { + let __t834 = v_V5699.clone(); + rt::tl(&__t834)? + }; + rt::tl(&__t835)? + }; + rt::eq(&__t833, &__t836) + }; + Value::bool(rt::is_truthy(interp, &__t838)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t840)?) + } + }; + if match rt::is_truthy(interp, &__t853) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let v_W5700 = { + let __t844 = { + let __t841 = v_V5698.clone(); + let __t843 = { + let __t842 = v_V5699.clone(); + rt::hd(&__t842)? + }; + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t841, __t843])? + }; + rt::apply_direct(interp, "cl.wrap", &[__t844])? + }; + { + let v_W5701 = { + let __t845 = v_V5698.clone(); + let __t848 = { + let __t847 = { + let __t846 = v_V5699.clone(); + rt::tl(&__t846)? + }; + rt::hd(&__t847)? + }; + rt::apply_direct(interp, "cl.kl-to-lisp-h", &[__t845, __t848])? + }; + break Ok({ + let __t849 = v_W5700.clone(); + let __t852 = { + let __t850 = v_W5701.clone(); + let __t851 = Value::nil(); + rt::cons(&__t850, &__t851) + }; + rt::cons(&__t849, &__t852) + }); + } + } + } else { + { + let __t829 = Value::bool(true); + if match rt::is_truthy(interp, &__t829) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t828 = Value::str("implementation error in shen.cond-code"); + rt::apply_direct(interp, "simple-error", &[__t828])? + }); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } +} + +fn install_cl_x2e_cond_x2d_code(interp: &mut Interp) { + interp.register_native("cl.cond-code", 2, aot_cl_x2e_cond_x2d_code); + interp.register_aot_direct("cl.cond-code", aot_cl_x2e_cond_x2d_code); +} + +/// AOT-compiled from KL `(defun cl.wrap ...)` +pub fn aot_cl_x2e_wrap(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.wrap: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5702 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t1598 = { + let __t1596 = { + let __t1576 = v_V5702.clone(); + rt::is_cons(&__t1576) + }; + if !rt::is_truthy(interp, &__t1596)? { + Value::bool(false) + } else { + let __t1597 = { + let __t1594 = { + let __t1578 = { + let __t1577 = v_V5702.clone(); + rt::tl(&__t1577)? + }; + rt::is_cons(&__t1578) + }; + if !rt::is_truthy(interp, &__t1594)? { + Value::bool(false) + } else { + let __t1595 = { + let __t1592 = { + let __t1579 = Value::bool(true); + let __t1582 = { + let __t1581 = { + let __t1580 = v_V5702.clone(); + rt::tl(&__t1580)? + }; + rt::hd(&__t1581)? + }; + rt::eq(&__t1579, &__t1582) + }; + if !rt::is_truthy(interp, &__t1592)? { + Value::bool(false) + } else { + let __t1593 = { + let __t1590 = { + let __t1583 = Value::nil(); + let __t1586 = { + let __t1585 = { + let __t1584 = v_V5702.clone(); + rt::tl(&__t1584)? + }; + rt::tl(&__t1585)? + }; + rt::eq(&__t1583, &__t1586) + }; + if !rt::is_truthy(interp, &__t1590)? { + Value::bool(false) + } else { + let __t1591 = { + let __t1588 = { + let __t1587 = v_V5702.clone(); + rt::hd(&__t1587)? + }; + let __t1589 = Value::sym(interp.intern("QUOTE")); + rt::eq(&__t1588, &__t1589) + }; + Value::bool(rt::is_truthy(interp, &__t1591)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1593)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1595)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1597)?) + } + }; + if match rt::is_truthy(interp, &__t1598) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym(interp.intern("T"))); + } else { + { + let __t1575 = { + let __t1570 = { + let __t1556 = v_V5702.clone(); + rt::is_cons(&__t1556) + }; + if !rt::is_truthy(interp, &__t1570)? { + Value::bool(false) + } else { + let __t1571 = { + let __t1568 = { + let __t1557 = Value::sym(interp.intern("cons?")); + let __t1559 = { + let __t1558 = v_V5702.clone(); + rt::hd(&__t1558)? + }; + rt::eq(&__t1557, &__t1559) + }; + if !rt::is_truthy(interp, &__t1568)? { + Value::bool(false) + } else { + let __t1569 = { + let __t1566 = { + let __t1561 = { + let __t1560 = v_V5702.clone(); + rt::tl(&__t1560)? + }; + rt::is_cons(&__t1561) + }; + if !rt::is_truthy(interp, &__t1566)? { + Value::bool(false) + } else { + let __t1567 = { + let __t1562 = Value::nil(); + let __t1565 = { + let __t1564 = { + let __t1563 = v_V5702.clone(); + rt::tl(&__t1563)? + }; + rt::tl(&__t1564)? + }; + rt::eq(&__t1562, &__t1565) + }; + Value::bool(rt::is_truthy(interp, &__t1567)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1569)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1571)?) + } + }; + if match rt::is_truthy(interp, &__t1575) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1572 = Value::sym(interp.intern("CONSP")); + let __t1574 = { + let __t1573 = v_V5702.clone(); + rt::tl(&__t1573)? + }; + rt::cons(&__t1572, &__t1574) + }); + } else { + { + let __t1555 = { + let __t1550 = { + let __t1536 = v_V5702.clone(); + rt::is_cons(&__t1536) + }; + if !rt::is_truthy(interp, &__t1550)? { + Value::bool(false) + } else { + let __t1551 = { + let __t1548 = { + let __t1537 = Value::sym(interp.intern("string?")); + let __t1539 = { + let __t1538 = v_V5702.clone(); + rt::hd(&__t1538)? + }; + rt::eq(&__t1537, &__t1539) + }; + if !rt::is_truthy(interp, &__t1548)? { + Value::bool(false) + } else { + let __t1549 = { + let __t1546 = { + let __t1541 = { + let __t1540 = v_V5702.clone(); + rt::tl(&__t1540)? + }; + rt::is_cons(&__t1541) + }; + if !rt::is_truthy(interp, &__t1546)? { + Value::bool(false) + } else { + let __t1547 = { + let __t1542 = Value::nil(); + let __t1545 = { + let __t1544 = { + let __t1543 = v_V5702.clone(); + rt::tl(&__t1543)? + }; + rt::tl(&__t1544)? + }; + rt::eq(&__t1542, &__t1545) + }; + Value::bool(rt::is_truthy(interp, &__t1547)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1549)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1551)?) + } + }; + if match rt::is_truthy(interp, &__t1555) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1552 = Value::sym(interp.intern("STRINGP")); + let __t1554 = { + let __t1553 = v_V5702.clone(); + rt::tl(&__t1553)? + }; + rt::cons(&__t1552, &__t1554) + }); + } else { + { + let __t1535 = { + let __t1530 = { + let __t1516 = v_V5702.clone(); + rt::is_cons(&__t1516) + }; + if !rt::is_truthy(interp, &__t1530)? { + Value::bool(false) + } else { + let __t1531 = { + let __t1528 = { + let __t1517 = + Value::sym(interp.intern("number?")); + let __t1519 = { + let __t1518 = v_V5702.clone(); + rt::hd(&__t1518)? + }; + rt::eq(&__t1517, &__t1519) + }; + if !rt::is_truthy(interp, &__t1528)? { + Value::bool(false) + } else { + let __t1529 = { + let __t1526 = { + let __t1521 = { + let __t1520 = v_V5702.clone(); + rt::tl(&__t1520)? + }; + rt::is_cons(&__t1521) + }; + if !rt::is_truthy(interp, &__t1526)? { + Value::bool(false) + } else { + let __t1527 = { + let __t1522 = Value::nil(); + let __t1525 = { + let __t1524 = { + let __t1523 = + v_V5702.clone(); + rt::tl(&__t1523)? + }; + rt::tl(&__t1524)? + }; + rt::eq(&__t1522, &__t1525) + }; + Value::bool(rt::is_truthy( + interp, &__t1527, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1529)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1531)?) + } + }; + if match rt::is_truthy(interp, &__t1535) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1532 = Value::sym(interp.intern("NUMBERP")); + let __t1534 = { + let __t1533 = v_V5702.clone(); + rt::tl(&__t1533)? + }; + rt::cons(&__t1532, &__t1534) + }); + } else { + { + let __t1515 = { + let __t1510 = { + let __t1496 = v_V5702.clone(); + rt::is_cons(&__t1496) + }; + if !rt::is_truthy(interp, &__t1510)? { + Value::bool(false) + } else { + let __t1511 = { + let __t1508 = { + let __t1497 = + Value::sym(interp.intern("empty?")); + let __t1499 = { + let __t1498 = v_V5702.clone(); + rt::hd(&__t1498)? + }; + rt::eq(&__t1497, &__t1499) + }; + if !rt::is_truthy(interp, &__t1508)? { + Value::bool(false) + } else { + let __t1509 = { + let __t1506 = { + let __t1501 = { + let __t1500 = + v_V5702.clone(); + rt::tl(&__t1500)? + }; + rt::is_cons(&__t1501) + }; + if !rt::is_truthy(interp, &__t1506)? + { + Value::bool(false) + } else { + let __t1507 = { + let __t1502 = Value::nil(); + let __t1505 = { + let __t1504 = { + let __t1503 = + v_V5702.clone(); + rt::tl(&__t1503)? + }; + rt::tl(&__t1504)? + }; + rt::eq(&__t1502, &__t1505) + }; + Value::bool(rt::is_truthy( + interp, &__t1507, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1509, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1511)?) + } + }; + if match rt::is_truthy(interp, &__t1515) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1512 = Value::sym(interp.intern("NULL")); + let __t1514 = { + let __t1513 = v_V5702.clone(); + rt::tl(&__t1513)? + }; + rt::cons(&__t1512, &__t1514) + }); + } else { + { + let __t1495 = { + let __t1480 = { + let __t1460 = v_V5702.clone(); + rt::is_cons(&__t1460) + }; + if !rt::is_truthy(interp, &__t1480)? { + Value::bool(false) + } else { + let __t1481 = { + let __t1478 = { + let __t1461 = Value::sym( + interp.intern("and"), + ); + let __t1463 = { + let __t1462 = + v_V5702.clone(); + rt::hd(&__t1462)? + }; + rt::eq(&__t1461, &__t1463) + }; + if !rt::is_truthy(interp, &__t1478)? + { + Value::bool(false) + } else { + let __t1479 = { + let __t1476 = { + let __t1465 = { + let __t1464 = + v_V5702.clone(); + rt::tl(&__t1464)? + }; + rt::is_cons(&__t1465) + }; + if !rt::is_truthy( + interp, &__t1476, + )? { + Value::bool(false) + } else { + let __t1477 = { + let __t1474 = { + let __t1468 = { + let __t1467 = { + let __t1466 = v_V5702.clone(); + rt::tl(&__t1466)? + }; + rt::tl(&__t1467)? + }; + rt::is_cons( + &__t1468, + ) + }; + if !rt::is_truthy( + interp, + &__t1474, + )? { + Value::bool( + false, + ) + } else { + let __t1475 = { + let __t1469 = Value::nil(); + let __t1473 = { + let __t1472 = { + let __t1471 = { let __t1470 = v_V5702.clone(); rt::tl(&__t1470)? }; + rt::tl(&__t1471)? + }; + rt::tl(&__t1472)? + }; + rt::eq(&__t1469, &__t1473) + }; + Value::bool(rt::is_truthy(interp, &__t1475)?) + } + }; + Value::bool( + rt::is_truthy( + interp, + &__t1477, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1479, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1481, + )?) + } + }; + if match rt::is_truthy(interp, &__t1495) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1482 = + Value::sym(interp.intern("AND")); + let __t1494 = { + let __t1486 = { + let __t1485 = { + let __t1484 = { + let __t1483 = + v_V5702.clone(); + rt::tl(&__t1483)? + }; + rt::hd(&__t1484)? + }; + rt::apply_direct( + interp, + "cl.wrap", + &[__t1485], + )? + }; + let __t1493 = { + let __t1491 = { + let __t1490 = { + let __t1489 = { + let __t1488 = { + let __t1487 = + v_V5702 + .clone( + ); + rt::tl( + &__t1487, + )? + }; + rt::tl(&__t1488)? + }; + rt::hd(&__t1489)? + }; + rt::apply_direct( + interp, + "cl.wrap", + &[__t1490], + )? + }; + let __t1492 = Value::nil(); + rt::cons(&__t1491, &__t1492) + }; + rt::cons(&__t1486, &__t1493) + }; + rt::cons(&__t1482, &__t1494) + }); + } else { + { + let __t1459 = { + let __t1444 = { + let __t1424 = v_V5702.clone(); + rt::is_cons(&__t1424) + }; + if !rt::is_truthy(interp, &__t1444)? + { + Value::bool(false) + } else { + let __t1445 = { + let __t1442 = { + let __t1425 = + Value::sym( + interp.intern( + "or", + ), + ); + let __t1427 = { + let __t1426 = + v_V5702.clone(); + rt::hd(&__t1426)? + }; + rt::eq( + &__t1425, &__t1427, + ) + }; + if !rt::is_truthy( + interp, &__t1442, + )? { + Value::bool(false) + } else { + let __t1443 = { + let __t1440 = { + let __t1429 = { + let __t1428 = v_V5702.clone(); + rt::tl(&__t1428)? + }; + rt::is_cons( + &__t1429, + ) + }; + if !rt::is_truthy( + interp, + &__t1440, + )? { + Value::bool( + false, + ) + } else { + let __t1441 = { + let __t1438 = { + let __t1432 = { + let __t1431 = { let __t1430 = v_V5702.clone(); rt::tl(&__t1430)? }; + rt::tl(&__t1431)? + }; + rt::is_cons(&__t1432) + }; + if !rt::is_truthy(interp, &__t1438)? { Value::bool(false) } else { let __t1439 = { let __t1433 = Value::nil(); let __t1437 = { let __t1436 = { let __t1435 = { let __t1434 = v_V5702.clone(); rt::tl(&__t1434)? }; rt::tl(&__t1435)? }; rt::tl(&__t1436)? }; rt::eq(&__t1433, &__t1437) }; Value::bool(rt::is_truthy(interp, &__t1439)?) } + }; + Value::bool(rt::is_truthy(interp, &__t1441)?) + } + }; + Value::bool( + rt::is_truthy( + interp, + &__t1443, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1445, + )?) + } + }; + if match rt::is_truthy(interp, &__t1459) + { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1446 = Value::sym( + interp.intern("OR"), + ); + let __t1458 = { + let __t1450 = { + let __t1449 = { + let __t1448 = { + let __t1447 = + v_V5702 + .clone( + ); + rt::tl( + &__t1447, + )? + }; + rt::hd(&__t1448)? + }; + rt::apply_direct( + interp, + "cl.wrap", + &[__t1449], + )? + }; + let __t1457 = { + let __t1455 = { + let __t1454 = { + let __t1453 = { + let __t1452 = { + let __t1451 = v_V5702.clone(); + rt::tl(&__t1451)? + }; + rt::tl(&__t1452)? + }; + rt::hd( + &__t1453, + )? + }; + rt::apply_direct( + interp, + "cl.wrap", + &[__t1454], + )? + }; + let __t1456 = + Value::nil(); + rt::cons( + &__t1455, &__t1456, + ) + }; + rt::cons(&__t1450, &__t1457) + }; + rt::cons(&__t1446, &__t1458) + }); + } else { + { + let __t1423 = { + let __t1414 = { + let __t1400 = + v_V5702.clone(); + rt::is_cons(&__t1400) + }; + if !rt::is_truthy( + interp, &__t1414, + )? { + Value::bool(false) + } else { + let __t1415 = { + let __t1412 = { + let __t1401 = Value::sym(interp.intern("not")); + let __t1403 = { + let __t1402 = v_V5702.clone(); + rt::hd(&__t1402)? + }; + rt::eq( + &__t1401, + &__t1403, + ) + }; + if !rt::is_truthy( + interp, + &__t1412, + )? { + Value::bool( + false, + ) + } else { + let __t1413 = { + let __t1410 = { + let __t1405 = { + let __t1404 = v_V5702.clone(); + rt::tl(&__t1404)? + }; + rt::is_cons(&__t1405) + }; + if !rt::is_truthy(interp, &__t1410)? { Value::bool(false) } else { let __t1411 = { let __t1406 = Value::nil(); let __t1409 = { let __t1408 = { let __t1407 = v_V5702.clone(); rt::tl(&__t1407)? }; rt::tl(&__t1408)? }; rt::eq(&__t1406, &__t1409) }; Value::bool(rt::is_truthy(interp, &__t1411)?) } + }; + Value::bool(rt::is_truthy(interp, &__t1413)?) + } + }; + Value::bool( + rt::is_truthy( + interp, + &__t1415, + )?, + ) + } + }; + if match rt::is_truthy( + interp, &__t1423, + ) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1416 = + Value::sym( + interp.intern( + "NOT", + ), + ); + let __t1422 = { + let __t1420 = { + let __t1419 = { + let __t1418 = { + let __t1417 = v_V5702.clone(); + rt::tl(&__t1417)? + }; + rt::hd(&__t1418)? + }; + rt::apply_direct(interp, "cl.wrap", &[__t1419])? + }; + let __t1421 = + Value::nil(); + rt::cons( + &__t1420, + &__t1421, + ) + }; + rt::cons( + &__t1416, &__t1422, + ) + }); + } else { + { + let __t1399 = { + let __t1391 = { + let __t1364 = + v_V5702 + .clone( + ); + rt::is_cons( + &__t1364, + ) + }; + if !rt::is_truthy( + interp, + &__t1391, + )? { + Value::bool( + false, + ) + } else { + let __t1392 = { + let __t1389 = { + let __t1365 = Value::sym(interp.intern("cl.equal?")); + let __t1367 = { + let __t1366 = v_V5702.clone(); + rt::hd(&__t1366)? + }; + rt::eq(&__t1365, &__t1367) + }; + if !rt::is_truthy(interp, &__t1389)? { Value::bool(false) } else { let __t1390 = { let __t1387 = { let __t1369 = { let __t1368 = v_V5702.clone(); rt::tl(&__t1368)? }; rt::is_cons(&__t1369) }; if !rt::is_truthy(interp, &__t1387)? { Value::bool(false) } else { let __t1388 = { let __t1385 = { let __t1372 = { let __t1371 = { let __t1370 = v_V5702.clone(); rt::tl(&__t1370)? }; rt::tl(&__t1371)? }; rt::is_cons(&__t1372) }; if !rt::is_truthy(interp, &__t1385)? { Value::bool(false) } else { let __t1386 = { let __t1383 = { let __t1373 = Value::nil(); let __t1377 = { let __t1376 = { let __t1375 = { let __t1374 = v_V5702.clone(); rt::tl(&__t1374)? }; rt::tl(&__t1375)? }; rt::hd(&__t1376)? }; rt::eq(&__t1373, &__t1377) }; if !rt::is_truthy(interp, &__t1383)? { Value::bool(false) } else { let __t1384 = { let __t1378 = Value::nil(); let __t1382 = { let __t1381 = { let __t1380 = { let __t1379 = v_V5702.clone(); rt::tl(&__t1379)? }; rt::tl(&__t1380)? }; rt::tl(&__t1381)? }; rt::eq(&__t1378, &__t1382) }; Value::bool(rt::is_truthy(interp, &__t1384)?) } }; Value::bool(rt::is_truthy(interp, &__t1386)?) } }; Value::bool(rt::is_truthy(interp, &__t1388)?) } }; Value::bool(rt::is_truthy(interp, &__t1390)?) } + }; + Value::bool(rt::is_truthy(interp, &__t1392)?) + } + }; + if match rt::is_truthy( + interp, &__t1399, + ) { + Ok(b) => b, + Err(e) => { + break Err(e) + } + } { + break Ok({ + let __t1393 = Value::sym(interp.intern("NULL")); + let __t1398 = { + let __t1396 = { + let __t1395 = { + let __t1394 = v_V5702.clone(); + rt::tl(&__t1394)? + }; + rt::hd(&__t1395)? + }; + let __t1397 = Value::nil(); + rt::cons(&__t1396, &__t1397) + }; + rt::cons( + &__t1393, + &__t1398, + ) + }); + } else { + { + let __t1363 = { + let __t1357 = { + let __t1331 = v_V5702.clone(); + rt::is_cons(&__t1331) + }; + if !rt::is_truthy(interp, &__t1357)? { Value::bool(false) } else { let __t1358 = { let __t1355 = { let __t1332 = Value::sym(interp.intern("cl.equal?")); let __t1334 = { let __t1333 = v_V5702.clone(); rt::hd(&__t1333)? }; rt::eq(&__t1332, &__t1334) }; if !rt::is_truthy(interp, &__t1355)? { Value::bool(false) } else { let __t1356 = { let __t1353 = { let __t1336 = { let __t1335 = v_V5702.clone(); rt::tl(&__t1335)? }; rt::is_cons(&__t1336) }; if !rt::is_truthy(interp, &__t1353)? { Value::bool(false) } else { let __t1354 = { let __t1351 = { let __t1337 = Value::nil(); let __t1340 = { let __t1339 = { let __t1338 = v_V5702.clone(); rt::tl(&__t1338)? }; rt::hd(&__t1339)? }; rt::eq(&__t1337, &__t1340) }; if !rt::is_truthy(interp, &__t1351)? { Value::bool(false) } else { let __t1352 = { let __t1349 = { let __t1343 = { let __t1342 = { let __t1341 = v_V5702.clone(); rt::tl(&__t1341)? }; rt::tl(&__t1342)? }; rt::is_cons(&__t1343) }; if !rt::is_truthy(interp, &__t1349)? { Value::bool(false) } else { let __t1350 = { let __t1344 = Value::nil(); let __t1348 = { let __t1347 = { let __t1346 = { let __t1345 = v_V5702.clone(); rt::tl(&__t1345)? }; rt::tl(&__t1346)? }; rt::tl(&__t1347)? }; rt::eq(&__t1344, &__t1348) }; Value::bool(rt::is_truthy(interp, &__t1350)?) } }; Value::bool(rt::is_truthy(interp, &__t1352)?) } }; Value::bool(rt::is_truthy(interp, &__t1354)?) } }; Value::bool(rt::is_truthy(interp, &__t1356)?) } }; Value::bool(rt::is_truthy(interp, &__t1358)?) } + }; + if match rt::is_truthy(interp, &__t1363) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1359 = Value::sym(interp.intern("NULL")); let __t1362 = { let __t1361 = { let __t1360 = v_V5702.clone(); rt::tl(&__t1360)? }; rt::tl(&__t1361)? }; rt::cons(&__t1359, &__t1362) }); } else { { let __t1330 = { let __t1325 = { let __t1267 = v_V5702.clone(); rt::is_cons(&__t1267) }; if !rt::is_truthy(interp, &__t1325)? { Value::bool(false) } else { let __t1326 = { let __t1323 = { let __t1268 = Value::sym(interp.intern("cl.equal?")); let __t1270 = { let __t1269 = v_V5702.clone(); rt::hd(&__t1269)? }; rt::eq(&__t1268, &__t1270) }; if !rt::is_truthy(interp, &__t1323)? { Value::bool(false) } else { let __t1324 = { let __t1321 = { let __t1272 = { let __t1271 = v_V5702.clone(); rt::tl(&__t1271)? }; rt::is_cons(&__t1272) }; if !rt::is_truthy(interp, &__t1321)? { Value::bool(false) } else { let __t1322 = { let __t1319 = { let __t1275 = { let __t1274 = { let __t1273 = v_V5702.clone(); rt::tl(&__t1273)? }; rt::tl(&__t1274)? }; rt::is_cons(&__t1275) }; if !rt::is_truthy(interp, &__t1319)? { Value::bool(false) } else { let __t1320 = { let __t1317 = { let __t1279 = { let __t1278 = { let __t1277 = { let __t1276 = v_V5702.clone(); rt::tl(&__t1276)? }; rt::tl(&__t1277)? }; rt::hd(&__t1278)? }; rt::is_cons(&__t1279) }; if !rt::is_truthy(interp, &__t1317)? { Value::bool(false) } else { let __t1318 = { let __t1315 = { let __t1284 = { let __t1283 = { let __t1282 = { let __t1281 = { let __t1280 = v_V5702.clone(); rt::tl(&__t1280)? }; rt::tl(&__t1281)? }; rt::hd(&__t1282)? }; rt::tl(&__t1283)? }; rt::is_cons(&__t1284) }; if !rt::is_truthy(interp, &__t1315)? { Value::bool(false) } else { let __t1316 = { let __t1313 = { let __t1285 = Value::nil(); let __t1291 = { let __t1290 = { let __t1289 = { let __t1288 = { let __t1287 = { let __t1286 = v_V5702.clone(); rt::tl(&__t1286)? }; rt::tl(&__t1287)? }; rt::hd(&__t1288)? }; rt::tl(&__t1289)? }; rt::tl(&__t1290)? }; rt::eq(&__t1285, &__t1291) }; if !rt::is_truthy(interp, &__t1313)? { Value::bool(false) } else { let __t1314 = { let __t1311 = { let __t1292 = Value::nil(); let __t1296 = { let __t1295 = { let __t1294 = { let __t1293 = v_V5702.clone(); rt::tl(&__t1293)? }; rt::tl(&__t1294)? }; rt::tl(&__t1295)? }; rt::eq(&__t1292, &__t1296) }; if !rt::is_truthy(interp, &__t1311)? { Value::bool(false) } else { let __t1312 = { let __t1309 = { let __t1301 = { let __t1300 = { let __t1299 = { let __t1298 = { let __t1297 = v_V5702.clone(); rt::tl(&__t1297)? }; rt::tl(&__t1298)? }; rt::hd(&__t1299)? }; rt::hd(&__t1300)? }; let __t1302 = Value::sym(interp.intern("QUOTE")); rt::eq(&__t1301, &__t1302) }; if !rt::is_truthy(interp, &__t1309)? { Value::bool(false) } else { let __t1310 = { let __t1308 = { let __t1307 = { let __t1306 = { let __t1305 = { let __t1304 = { let __t1303 = v_V5702.clone(); rt::tl(&__t1303)? }; rt::tl(&__t1304)? }; rt::hd(&__t1305)? }; rt::tl(&__t1306)? }; rt::hd(&__t1307)? }; rt::apply_direct(interp, "cl.fastsymbol?", &[__t1308])? }; Value::bool(rt::is_truthy(interp, &__t1310)?) } }; Value::bool(rt::is_truthy(interp, &__t1312)?) } }; Value::bool(rt::is_truthy(interp, &__t1314)?) } }; Value::bool(rt::is_truthy(interp, &__t1316)?) } }; Value::bool(rt::is_truthy(interp, &__t1318)?) } }; Value::bool(rt::is_truthy(interp, &__t1320)?) } }; Value::bool(rt::is_truthy(interp, &__t1322)?) } }; Value::bool(rt::is_truthy(interp, &__t1324)?) } }; Value::bool(rt::is_truthy(interp, &__t1326)?) } }; if match rt::is_truthy(interp, &__t1330) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1327 = Value::sym(interp.intern("EQ")); let __t1329 = { let __t1328 = v_V5702.clone(); rt::tl(&__t1328)? }; rt::cons(&__t1327, &__t1329) }); } else { { let __t1266 = { let __t1261 = { let __t1208 = v_V5702.clone(); rt::is_cons(&__t1208) }; if !rt::is_truthy(interp, &__t1261)? { Value::bool(false) } else { let __t1262 = { let __t1259 = { let __t1209 = Value::sym(interp.intern("cl.equal?")); let __t1211 = { let __t1210 = v_V5702.clone(); rt::hd(&__t1210)? }; rt::eq(&__t1209, &__t1211) }; if !rt::is_truthy(interp, &__t1259)? { Value::bool(false) } else { let __t1260 = { let __t1257 = { let __t1213 = { let __t1212 = v_V5702.clone(); rt::tl(&__t1212)? }; rt::is_cons(&__t1213) }; if !rt::is_truthy(interp, &__t1257)? { Value::bool(false) } else { let __t1258 = { let __t1255 = { let __t1216 = { let __t1215 = { let __t1214 = v_V5702.clone(); rt::tl(&__t1214)? }; rt::hd(&__t1215)? }; rt::is_cons(&__t1216) }; if !rt::is_truthy(interp, &__t1255)? { Value::bool(false) } else { let __t1256 = { let __t1253 = { let __t1220 = { let __t1219 = { let __t1218 = { let __t1217 = v_V5702.clone(); rt::tl(&__t1217)? }; rt::hd(&__t1218)? }; rt::tl(&__t1219)? }; rt::is_cons(&__t1220) }; if !rt::is_truthy(interp, &__t1253)? { Value::bool(false) } else { let __t1254 = { let __t1251 = { let __t1221 = Value::nil(); let __t1226 = { let __t1225 = { let __t1224 = { let __t1223 = { let __t1222 = v_V5702.clone(); rt::tl(&__t1222)? }; rt::hd(&__t1223)? }; rt::tl(&__t1224)? }; rt::tl(&__t1225)? }; rt::eq(&__t1221, &__t1226) }; if !rt::is_truthy(interp, &__t1251)? { Value::bool(false) } else { let __t1252 = { let __t1249 = { let __t1229 = { let __t1228 = { let __t1227 = v_V5702.clone(); rt::tl(&__t1227)? }; rt::tl(&__t1228)? }; rt::is_cons(&__t1229) }; if !rt::is_truthy(interp, &__t1249)? { Value::bool(false) } else { let __t1250 = { let __t1247 = { let __t1230 = Value::nil(); let __t1234 = { let __t1233 = { let __t1232 = { let __t1231 = v_V5702.clone(); rt::tl(&__t1231)? }; rt::tl(&__t1232)? }; rt::tl(&__t1233)? }; rt::eq(&__t1230, &__t1234) }; if !rt::is_truthy(interp, &__t1247)? { Value::bool(false) } else { let __t1248 = { let __t1245 = { let __t1238 = { let __t1237 = { let __t1236 = { let __t1235 = v_V5702.clone(); rt::tl(&__t1235)? }; rt::hd(&__t1236)? }; rt::hd(&__t1237)? }; let __t1239 = Value::sym(interp.intern("QUOTE")); rt::eq(&__t1238, &__t1239) }; if !rt::is_truthy(interp, &__t1245)? { Value::bool(false) } else { let __t1246 = { let __t1244 = { let __t1243 = { let __t1242 = { let __t1241 = { let __t1240 = v_V5702.clone(); rt::tl(&__t1240)? }; rt::hd(&__t1241)? }; rt::tl(&__t1242)? }; rt::hd(&__t1243)? }; rt::apply_direct(interp, "cl.fastsymbol?", &[__t1244])? }; Value::bool(rt::is_truthy(interp, &__t1246)?) } }; Value::bool(rt::is_truthy(interp, &__t1248)?) } }; Value::bool(rt::is_truthy(interp, &__t1250)?) } }; Value::bool(rt::is_truthy(interp, &__t1252)?) } }; Value::bool(rt::is_truthy(interp, &__t1254)?) } }; Value::bool(rt::is_truthy(interp, &__t1256)?) } }; Value::bool(rt::is_truthy(interp, &__t1258)?) } }; Value::bool(rt::is_truthy(interp, &__t1260)?) } }; Value::bool(rt::is_truthy(interp, &__t1262)?) } }; if match rt::is_truthy(interp, &__t1266) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1263 = Value::sym(interp.intern("EQ")); let __t1265 = { let __t1264 = v_V5702.clone(); rt::tl(&__t1264)? }; rt::cons(&__t1263, &__t1265) }); } else { { let __t1207 = { let __t1202 = { let __t1163 = v_V5702.clone(); rt::is_cons(&__t1163) }; if !rt::is_truthy(interp, &__t1202)? { Value::bool(false) } else { let __t1203 = { let __t1200 = { let __t1164 = Value::sym(interp.intern("cl.equal?")); let __t1166 = { let __t1165 = v_V5702.clone(); rt::hd(&__t1165)? }; rt::eq(&__t1164, &__t1166) }; if !rt::is_truthy(interp, &__t1200)? { Value::bool(false) } else { let __t1201 = { let __t1198 = { let __t1168 = { let __t1167 = v_V5702.clone(); rt::tl(&__t1167)? }; rt::is_cons(&__t1168) }; if !rt::is_truthy(interp, &__t1198)? { Value::bool(false) } else { let __t1199 = { let __t1196 = { let __t1171 = { let __t1170 = { let __t1169 = v_V5702.clone(); rt::tl(&__t1169)? }; rt::hd(&__t1170)? }; rt::is_cons(&__t1171) }; if !rt::is_truthy(interp, &__t1196)? { Value::bool(false) } else { let __t1197 = { let __t1194 = { let __t1172 = Value::sym(interp.intern("fail")); let __t1176 = { let __t1175 = { let __t1174 = { let __t1173 = v_V5702.clone(); rt::tl(&__t1173)? }; rt::hd(&__t1174)? }; rt::hd(&__t1175)? }; rt::eq(&__t1172, &__t1176) }; if !rt::is_truthy(interp, &__t1194)? { Value::bool(false) } else { let __t1195 = { let __t1192 = { let __t1177 = Value::nil(); let __t1181 = { let __t1180 = { let __t1179 = { let __t1178 = v_V5702.clone(); rt::tl(&__t1178)? }; rt::hd(&__t1179)? }; rt::tl(&__t1180)? }; rt::eq(&__t1177, &__t1181) }; if !rt::is_truthy(interp, &__t1192)? { Value::bool(false) } else { let __t1193 = { let __t1190 = { let __t1184 = { let __t1183 = { let __t1182 = v_V5702.clone(); rt::tl(&__t1182)? }; rt::tl(&__t1183)? }; rt::is_cons(&__t1184) }; if !rt::is_truthy(interp, &__t1190)? { Value::bool(false) } else { let __t1191 = { let __t1185 = Value::nil(); let __t1189 = { let __t1188 = { let __t1187 = { let __t1186 = v_V5702.clone(); rt::tl(&__t1186)? }; rt::tl(&__t1187)? }; rt::tl(&__t1188)? }; rt::eq(&__t1185, &__t1189) }; Value::bool(rt::is_truthy(interp, &__t1191)?) } }; Value::bool(rt::is_truthy(interp, &__t1193)?) } }; Value::bool(rt::is_truthy(interp, &__t1195)?) } }; Value::bool(rt::is_truthy(interp, &__t1197)?) } }; Value::bool(rt::is_truthy(interp, &__t1199)?) } }; Value::bool(rt::is_truthy(interp, &__t1201)?) } }; Value::bool(rt::is_truthy(interp, &__t1203)?) } }; if match rt::is_truthy(interp, &__t1207) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1204 = Value::sym(interp.intern("EQ")); let __t1206 = { let __t1205 = v_V5702.clone(); rt::tl(&__t1205)? }; rt::cons(&__t1204, &__t1206) }); } else { { let __t1162 = { let __t1157 = { let __t1115 = v_V5702.clone(); rt::is_cons(&__t1115) }; if !rt::is_truthy(interp, &__t1157)? { Value::bool(false) } else { let __t1158 = { let __t1155 = { let __t1116 = Value::sym(interp.intern("cl.equal?")); let __t1118 = { let __t1117 = v_V5702.clone(); rt::hd(&__t1117)? }; rt::eq(&__t1116, &__t1118) }; if !rt::is_truthy(interp, &__t1155)? { Value::bool(false) } else { let __t1156 = { let __t1153 = { let __t1120 = { let __t1119 = v_V5702.clone(); rt::tl(&__t1119)? }; rt::is_cons(&__t1120) }; if !rt::is_truthy(interp, &__t1153)? { Value::bool(false) } else { let __t1154 = { let __t1151 = { let __t1123 = { let __t1122 = { let __t1121 = v_V5702.clone(); rt::tl(&__t1121)? }; rt::tl(&__t1122)? }; rt::is_cons(&__t1123) }; if !rt::is_truthy(interp, &__t1151)? { Value::bool(false) } else { let __t1152 = { let __t1149 = { let __t1127 = { let __t1126 = { let __t1125 = { let __t1124 = v_V5702.clone(); rt::tl(&__t1124)? }; rt::tl(&__t1125)? }; rt::hd(&__t1126)? }; rt::is_cons(&__t1127) }; if !rt::is_truthy(interp, &__t1149)? { Value::bool(false) } else { let __t1150 = { let __t1147 = { let __t1128 = Value::sym(interp.intern("fail")); let __t1133 = { let __t1132 = { let __t1131 = { let __t1130 = { let __t1129 = v_V5702.clone(); rt::tl(&__t1129)? }; rt::tl(&__t1130)? }; rt::hd(&__t1131)? }; rt::hd(&__t1132)? }; rt::eq(&__t1128, &__t1133) }; if !rt::is_truthy(interp, &__t1147)? { Value::bool(false) } else { let __t1148 = { let __t1145 = { let __t1134 = Value::nil(); let __t1139 = { let __t1138 = { let __t1137 = { let __t1136 = { let __t1135 = v_V5702.clone(); rt::tl(&__t1135)? }; rt::tl(&__t1136)? }; rt::hd(&__t1137)? }; rt::tl(&__t1138)? }; rt::eq(&__t1134, &__t1139) }; if !rt::is_truthy(interp, &__t1145)? { Value::bool(false) } else { let __t1146 = { let __t1140 = Value::nil(); let __t1144 = { let __t1143 = { let __t1142 = { let __t1141 = v_V5702.clone(); rt::tl(&__t1141)? }; rt::tl(&__t1142)? }; rt::tl(&__t1143)? }; rt::eq(&__t1140, &__t1144) }; Value::bool(rt::is_truthy(interp, &__t1146)?) } }; Value::bool(rt::is_truthy(interp, &__t1148)?) } }; Value::bool(rt::is_truthy(interp, &__t1150)?) } }; Value::bool(rt::is_truthy(interp, &__t1152)?) } }; Value::bool(rt::is_truthy(interp, &__t1154)?) } }; Value::bool(rt::is_truthy(interp, &__t1156)?) } }; Value::bool(rt::is_truthy(interp, &__t1158)?) } }; if match rt::is_truthy(interp, &__t1162) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1159 = Value::sym(interp.intern("EQ")); let __t1161 = { let __t1160 = v_V5702.clone(); rt::tl(&__t1160)? }; rt::cons(&__t1159, &__t1161) }); } else { { let __t1114 = { let __t1109 = { let __t1084 = v_V5702.clone(); rt::is_cons(&__t1084) }; if !rt::is_truthy(interp, &__t1109)? { Value::bool(false) } else { let __t1110 = { let __t1107 = { let __t1085 = Value::sym(interp.intern("cl.equal?")); let __t1087 = { let __t1086 = v_V5702.clone(); rt::hd(&__t1086)? }; rt::eq(&__t1085, &__t1087) }; if !rt::is_truthy(interp, &__t1107)? { Value::bool(false) } else { let __t1108 = { let __t1105 = { let __t1089 = { let __t1088 = v_V5702.clone(); rt::tl(&__t1088)? }; rt::is_cons(&__t1089) }; if !rt::is_truthy(interp, &__t1105)? { Value::bool(false) } else { let __t1106 = { let __t1103 = { let __t1092 = { let __t1091 = { let __t1090 = v_V5702.clone(); rt::tl(&__t1090)? }; rt::tl(&__t1091)? }; rt::is_cons(&__t1092) }; if !rt::is_truthy(interp, &__t1103)? { Value::bool(false) } else { let __t1104 = { let __t1101 = { let __t1093 = Value::nil(); let __t1097 = { let __t1096 = { let __t1095 = { let __t1094 = v_V5702.clone(); rt::tl(&__t1094)? }; rt::tl(&__t1095)? }; rt::tl(&__t1096)? }; rt::eq(&__t1093, &__t1097) }; if !rt::is_truthy(interp, &__t1101)? { Value::bool(false) } else { let __t1102 = { let __t1100 = { let __t1099 = { let __t1098 = v_V5702.clone(); rt::tl(&__t1098)? }; rt::hd(&__t1099)? }; rt::is_string(&__t1100) }; Value::bool(rt::is_truthy(interp, &__t1102)?) } }; Value::bool(rt::is_truthy(interp, &__t1104)?) } }; Value::bool(rt::is_truthy(interp, &__t1106)?) } }; Value::bool(rt::is_truthy(interp, &__t1108)?) } }; Value::bool(rt::is_truthy(interp, &__t1110)?) } }; if match rt::is_truthy(interp, &__t1114) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1111 = Value::sym(interp.intern("EQUAL")); let __t1113 = { let __t1112 = v_V5702.clone(); rt::tl(&__t1112)? }; rt::cons(&__t1111, &__t1113) }); } else { { let __t1083 = { let __t1078 = { let __t1052 = v_V5702.clone(); rt::is_cons(&__t1052) }; if !rt::is_truthy(interp, &__t1078)? { Value::bool(false) } else { let __t1079 = { let __t1076 = { let __t1053 = Value::sym(interp.intern("cl.equal?")); let __t1055 = { let __t1054 = v_V5702.clone(); rt::hd(&__t1054)? }; rt::eq(&__t1053, &__t1055) }; if !rt::is_truthy(interp, &__t1076)? { Value::bool(false) } else { let __t1077 = { let __t1074 = { let __t1057 = { let __t1056 = v_V5702.clone(); rt::tl(&__t1056)? }; rt::is_cons(&__t1057) }; if !rt::is_truthy(interp, &__t1074)? { Value::bool(false) } else { let __t1075 = { let __t1072 = { let __t1060 = { let __t1059 = { let __t1058 = v_V5702.clone(); rt::tl(&__t1058)? }; rt::tl(&__t1059)? }; rt::is_cons(&__t1060) }; if !rt::is_truthy(interp, &__t1072)? { Value::bool(false) } else { let __t1073 = { let __t1070 = { let __t1061 = Value::nil(); let __t1065 = { let __t1064 = { let __t1063 = { let __t1062 = v_V5702.clone(); rt::tl(&__t1062)? }; rt::tl(&__t1063)? }; rt::tl(&__t1064)? }; rt::eq(&__t1061, &__t1065) }; if !rt::is_truthy(interp, &__t1070)? { Value::bool(false) } else { let __t1071 = { let __t1069 = { let __t1068 = { let __t1067 = { let __t1066 = v_V5702.clone(); rt::tl(&__t1066)? }; rt::tl(&__t1067)? }; rt::hd(&__t1068)? }; rt::is_string(&__t1069) }; Value::bool(rt::is_truthy(interp, &__t1071)?) } }; Value::bool(rt::is_truthy(interp, &__t1073)?) } }; Value::bool(rt::is_truthy(interp, &__t1075)?) } }; Value::bool(rt::is_truthy(interp, &__t1077)?) } }; Value::bool(rt::is_truthy(interp, &__t1079)?) } }; if match rt::is_truthy(interp, &__t1083) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1080 = Value::sym(interp.intern("EQUAL")); let __t1082 = { let __t1081 = v_V5702.clone(); rt::tl(&__t1081)? }; rt::cons(&__t1080, &__t1082) }); } else { { let __t1051 = { let __t1046 = { let __t1021 = v_V5702.clone(); rt::is_cons(&__t1021) }; if !rt::is_truthy(interp, &__t1046)? { Value::bool(false) } else { let __t1047 = { let __t1044 = { let __t1022 = Value::sym(interp.intern("cl.equal?")); let __t1024 = { let __t1023 = v_V5702.clone(); rt::hd(&__t1023)? }; rt::eq(&__t1022, &__t1024) }; if !rt::is_truthy(interp, &__t1044)? { Value::bool(false) } else { let __t1045 = { let __t1042 = { let __t1026 = { let __t1025 = v_V5702.clone(); rt::tl(&__t1025)? }; rt::is_cons(&__t1026) }; if !rt::is_truthy(interp, &__t1042)? { Value::bool(false) } else { let __t1043 = { let __t1040 = { let __t1029 = { let __t1028 = { let __t1027 = v_V5702.clone(); rt::tl(&__t1027)? }; rt::tl(&__t1028)? }; rt::is_cons(&__t1029) }; if !rt::is_truthy(interp, &__t1040)? { Value::bool(false) } else { let __t1041 = { let __t1038 = { let __t1030 = Value::nil(); let __t1034 = { let __t1033 = { let __t1032 = { let __t1031 = v_V5702.clone(); rt::tl(&__t1031)? }; rt::tl(&__t1032)? }; rt::tl(&__t1033)? }; rt::eq(&__t1030, &__t1034) }; if !rt::is_truthy(interp, &__t1038)? { Value::bool(false) } else { let __t1039 = { let __t1037 = { let __t1036 = { let __t1035 = v_V5702.clone(); rt::tl(&__t1035)? }; rt::hd(&__t1036)? }; rt::is_number(&__t1037) }; Value::bool(rt::is_truthy(interp, &__t1039)?) } }; Value::bool(rt::is_truthy(interp, &__t1041)?) } }; Value::bool(rt::is_truthy(interp, &__t1043)?) } }; Value::bool(rt::is_truthy(interp, &__t1045)?) } }; Value::bool(rt::is_truthy(interp, &__t1047)?) } }; if match rt::is_truthy(interp, &__t1051) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1048 = Value::sym(interp.intern("EQUALP")); let __t1050 = { let __t1049 = v_V5702.clone(); rt::tl(&__t1049)? }; rt::cons(&__t1048, &__t1050) }); } else { { let __t1020 = { let __t1015 = { let __t989 = v_V5702.clone(); rt::is_cons(&__t989) }; if !rt::is_truthy(interp, &__t1015)? { Value::bool(false) } else { let __t1016 = { let __t1013 = { let __t990 = Value::sym(interp.intern("cl.equal?")); let __t992 = { let __t991 = v_V5702.clone(); rt::hd(&__t991)? }; rt::eq(&__t990, &__t992) }; if !rt::is_truthy(interp, &__t1013)? { Value::bool(false) } else { let __t1014 = { let __t1011 = { let __t994 = { let __t993 = v_V5702.clone(); rt::tl(&__t993)? }; rt::is_cons(&__t994) }; if !rt::is_truthy(interp, &__t1011)? { Value::bool(false) } else { let __t1012 = { let __t1009 = { let __t997 = { let __t996 = { let __t995 = v_V5702.clone(); rt::tl(&__t995)? }; rt::tl(&__t996)? }; rt::is_cons(&__t997) }; if !rt::is_truthy(interp, &__t1009)? { Value::bool(false) } else { let __t1010 = { let __t1007 = { let __t998 = Value::nil(); let __t1002 = { let __t1001 = { let __t1000 = { let __t999 = v_V5702.clone(); rt::tl(&__t999)? }; rt::tl(&__t1000)? }; rt::tl(&__t1001)? }; rt::eq(&__t998, &__t1002) }; if !rt::is_truthy(interp, &__t1007)? { Value::bool(false) } else { let __t1008 = { let __t1006 = { let __t1005 = { let __t1004 = { let __t1003 = v_V5702.clone(); rt::tl(&__t1003)? }; rt::tl(&__t1004)? }; rt::hd(&__t1005)? }; rt::is_number(&__t1006) }; Value::bool(rt::is_truthy(interp, &__t1008)?) } }; Value::bool(rt::is_truthy(interp, &__t1010)?) } }; Value::bool(rt::is_truthy(interp, &__t1012)?) } }; Value::bool(rt::is_truthy(interp, &__t1014)?) } }; Value::bool(rt::is_truthy(interp, &__t1016)?) } }; if match rt::is_truthy(interp, &__t1020) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1017 = Value::sym(interp.intern("EQUALP")); let __t1019 = { let __t1018 = v_V5702.clone(); rt::tl(&__t1018)? }; rt::cons(&__t1017, &__t1019) }); } else { { let __t988 = { let __t983 = { let __t963 = v_V5702.clone(); rt::is_cons(&__t963) }; if !rt::is_truthy(interp, &__t983)? { Value::bool(false) } else { let __t984 = { let __t981 = { let __t964 = Value::sym(interp.intern("cl.equal?")); let __t966 = { let __t965 = v_V5702.clone(); rt::hd(&__t965)? }; rt::eq(&__t964, &__t966) }; if !rt::is_truthy(interp, &__t981)? { Value::bool(false) } else { let __t982 = { let __t979 = { let __t968 = { let __t967 = v_V5702.clone(); rt::tl(&__t967)? }; rt::is_cons(&__t968) }; if !rt::is_truthy(interp, &__t979)? { Value::bool(false) } else { let __t980 = { let __t977 = { let __t971 = { let __t970 = { let __t969 = v_V5702.clone(); rt::tl(&__t969)? }; rt::tl(&__t970)? }; rt::is_cons(&__t971) }; if !rt::is_truthy(interp, &__t977)? { Value::bool(false) } else { let __t978 = { let __t972 = Value::nil(); let __t976 = { let __t975 = { let __t974 = { let __t973 = v_V5702.clone(); rt::tl(&__t973)? }; rt::tl(&__t974)? }; rt::tl(&__t975)? }; rt::eq(&__t972, &__t976) }; Value::bool(rt::is_truthy(interp, &__t978)?) } }; Value::bool(rt::is_truthy(interp, &__t980)?) } }; Value::bool(rt::is_truthy(interp, &__t982)?) } }; Value::bool(rt::is_truthy(interp, &__t984)?) } }; if match rt::is_truthy(interp, &__t988) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t985 = Value::sym(interp.intern("cl.ABSEQUAL")); let __t987 = { let __t986 = v_V5702.clone(); rt::tl(&__t986)? }; rt::cons(&__t985, &__t987) }); } else { { let __t962 = { let __t957 = { let __t937 = v_V5702.clone(); rt::is_cons(&__t937) }; if !rt::is_truthy(interp, &__t957)? { Value::bool(false) } else { let __t958 = { let __t955 = { let __t938 = Value::sym(interp.intern("cl.greater?")); let __t940 = { let __t939 = v_V5702.clone(); rt::hd(&__t939)? }; rt::eq(&__t938, &__t940) }; if !rt::is_truthy(interp, &__t955)? { Value::bool(false) } else { let __t956 = { let __t953 = { let __t942 = { let __t941 = v_V5702.clone(); rt::tl(&__t941)? }; rt::is_cons(&__t942) }; if !rt::is_truthy(interp, &__t953)? { Value::bool(false) } else { let __t954 = { let __t951 = { let __t945 = { let __t944 = { let __t943 = v_V5702.clone(); rt::tl(&__t943)? }; rt::tl(&__t944)? }; rt::is_cons(&__t945) }; if !rt::is_truthy(interp, &__t951)? { Value::bool(false) } else { let __t952 = { let __t946 = Value::nil(); let __t950 = { let __t949 = { let __t948 = { let __t947 = v_V5702.clone(); rt::tl(&__t947)? }; rt::tl(&__t948)? }; rt::tl(&__t949)? }; rt::eq(&__t946, &__t950) }; Value::bool(rt::is_truthy(interp, &__t952)?) } }; Value::bool(rt::is_truthy(interp, &__t954)?) } }; Value::bool(rt::is_truthy(interp, &__t956)?) } }; Value::bool(rt::is_truthy(interp, &__t958)?) } }; if match rt::is_truthy(interp, &__t962) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t959 = Value::sym(interp.intern(">")); let __t961 = { let __t960 = v_V5702.clone(); rt::tl(&__t960)? }; rt::cons(&__t959, &__t961) }); } else { { let __t936 = { let __t931 = { let __t911 = v_V5702.clone(); rt::is_cons(&__t911) }; if !rt::is_truthy(interp, &__t931)? { Value::bool(false) } else { let __t932 = { let __t929 = { let __t912 = Value::sym(interp.intern("cl.greater-than-or-equal-to?")); let __t914 = { let __t913 = v_V5702.clone(); rt::hd(&__t913)? }; rt::eq(&__t912, &__t914) }; if !rt::is_truthy(interp, &__t929)? { Value::bool(false) } else { let __t930 = { let __t927 = { let __t916 = { let __t915 = v_V5702.clone(); rt::tl(&__t915)? }; rt::is_cons(&__t916) }; if !rt::is_truthy(interp, &__t927)? { Value::bool(false) } else { let __t928 = { let __t925 = { let __t919 = { let __t918 = { let __t917 = v_V5702.clone(); rt::tl(&__t917)? }; rt::tl(&__t918)? }; rt::is_cons(&__t919) }; if !rt::is_truthy(interp, &__t925)? { Value::bool(false) } else { let __t926 = { let __t920 = Value::nil(); let __t924 = { let __t923 = { let __t922 = { let __t921 = v_V5702.clone(); rt::tl(&__t921)? }; rt::tl(&__t922)? }; rt::tl(&__t923)? }; rt::eq(&__t920, &__t924) }; Value::bool(rt::is_truthy(interp, &__t926)?) } }; Value::bool(rt::is_truthy(interp, &__t928)?) } }; Value::bool(rt::is_truthy(interp, &__t930)?) } }; Value::bool(rt::is_truthy(interp, &__t932)?) } }; if match rt::is_truthy(interp, &__t936) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t933 = Value::sym(interp.intern(">=")); let __t935 = { let __t934 = v_V5702.clone(); rt::tl(&__t934)? }; rt::cons(&__t933, &__t935) }); } else { { let __t910 = { let __t905 = { let __t885 = v_V5702.clone(); rt::is_cons(&__t885) }; if !rt::is_truthy(interp, &__t905)? { Value::bool(false) } else { let __t906 = { let __t903 = { let __t886 = Value::sym(interp.intern("cl.less?")); let __t888 = { let __t887 = v_V5702.clone(); rt::hd(&__t887)? }; rt::eq(&__t886, &__t888) }; if !rt::is_truthy(interp, &__t903)? { Value::bool(false) } else { let __t904 = { let __t901 = { let __t890 = { let __t889 = v_V5702.clone(); rt::tl(&__t889)? }; rt::is_cons(&__t890) }; if !rt::is_truthy(interp, &__t901)? { Value::bool(false) } else { let __t902 = { let __t899 = { let __t893 = { let __t892 = { let __t891 = v_V5702.clone(); rt::tl(&__t891)? }; rt::tl(&__t892)? }; rt::is_cons(&__t893) }; if !rt::is_truthy(interp, &__t899)? { Value::bool(false) } else { let __t900 = { let __t894 = Value::nil(); let __t898 = { let __t897 = { let __t896 = { let __t895 = v_V5702.clone(); rt::tl(&__t895)? }; rt::tl(&__t896)? }; rt::tl(&__t897)? }; rt::eq(&__t894, &__t898) }; Value::bool(rt::is_truthy(interp, &__t900)?) } }; Value::bool(rt::is_truthy(interp, &__t902)?) } }; Value::bool(rt::is_truthy(interp, &__t904)?) } }; Value::bool(rt::is_truthy(interp, &__t906)?) } }; if match rt::is_truthy(interp, &__t910) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t907 = Value::sym(interp.intern("<")); let __t909 = { let __t908 = v_V5702.clone(); rt::tl(&__t908)? }; rt::cons(&__t907, &__t909) }); } else { { let __t884 = { let __t879 = { let __t859 = v_V5702.clone(); rt::is_cons(&__t859) }; if !rt::is_truthy(interp, &__t879)? { Value::bool(false) } else { let __t880 = { let __t877 = { let __t860 = Value::sym(interp.intern("cl.less-than-or-equal-to?")); let __t862 = { let __t861 = v_V5702.clone(); rt::hd(&__t861)? }; rt::eq(&__t860, &__t862) }; if !rt::is_truthy(interp, &__t877)? { Value::bool(false) } else { let __t878 = { let __t875 = { let __t864 = { let __t863 = v_V5702.clone(); rt::tl(&__t863)? }; rt::is_cons(&__t864) }; if !rt::is_truthy(interp, &__t875)? { Value::bool(false) } else { let __t876 = { let __t873 = { let __t867 = { let __t866 = { let __t865 = v_V5702.clone(); rt::tl(&__t865)? }; rt::tl(&__t866)? }; rt::is_cons(&__t867) }; if !rt::is_truthy(interp, &__t873)? { Value::bool(false) } else { let __t874 = { let __t868 = Value::nil(); let __t872 = { let __t871 = { let __t870 = { let __t869 = v_V5702.clone(); rt::tl(&__t869)? }; rt::tl(&__t870)? }; rt::tl(&__t871)? }; rt::eq(&__t868, &__t872) }; Value::bool(rt::is_truthy(interp, &__t874)?) } }; Value::bool(rt::is_truthy(interp, &__t876)?) } }; Value::bool(rt::is_truthy(interp, &__t878)?) } }; Value::bool(rt::is_truthy(interp, &__t880)?) } }; if match rt::is_truthy(interp, &__t884) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t881 = Value::sym(interp.intern("<=")); let __t883 = { let __t882 = v_V5702.clone(); rt::tl(&__t882)? }; rt::cons(&__t881, &__t883) }); } else { { let __t858 = Value::bool(true); if match rt::is_truthy(interp, &__t858) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t854 = Value::sym(interp.intern("cl.wrapper")); let __t857 = { let __t855 = v_V5702.clone(); let __t856 = Value::nil(); rt::cons(&__t855, &__t856) }; rt::cons(&__t854, &__t857) }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_wrap(interp: &mut Interp) { + interp.register_native("cl.wrap", 1, aot_cl_x2e_wrap); + interp.register_aot_direct("cl.wrap", aot_cl_x2e_wrap); +} + +/// AOT-compiled from KL `(defun cl.fastsymbol? ...)` +pub fn aot_cl_x2e_fastsymbol_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.fastsymbol?: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5709 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t1608 = { + let __t1607 = v_V5709.clone(); + rt::is_cons(&__t1607) + }; + if match rt::is_truthy(interp, &__t1608) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(false)); + } else { + { + let __t1606 = { + let __t1604 = Value::nil(); + let __t1605 = v_V5709.clone(); + rt::eq(&__t1604, &__t1605) + }; + if match rt::is_truthy(interp, &__t1606) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(false)); + } else { + { + let __t1603 = { + let __t1602 = v_V5709.clone(); + rt::is_string(&__t1602) + }; + if match rt::is_truthy(interp, &__t1603) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(false)); + } else { + { + let __t1601 = { + let __t1600 = v_V5709.clone(); + rt::is_number(&__t1600) + }; + if match rt::is_truthy(interp, &__t1601) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(false)); + } else { + { + let __t1599 = Value::bool(true); + if match rt::is_truthy(interp, &__t1599) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(true)); + } else { + break Err(ShenError::new( + "cond: no clause matched", + )); + } + } + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_fastsymbol_x3f_(interp: &mut Interp) { + interp.register_native("cl.fastsymbol?", 1, aot_cl_x2e_fastsymbol_x3f_); + interp.register_aot_direct("cl.fastsymbol?", aot_cl_x2e_fastsymbol_x3f_); +} + +/// AOT-compiled from KL `(defun cl.wrapper ...)` +pub fn aot_cl_x2e_wrapper(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.wrapper: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5710 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t1616 = { + let __t1614 = Value::bool(true); + let __t1615 = v_V5710.clone(); + rt::eq(&__t1614, &__t1615) + }; + if match rt::is_truthy(interp, &__t1616) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym(interp.intern("T"))); + } else { + { + let __t1613 = { + let __t1611 = Value::bool(false); + let __t1612 = v_V5710.clone(); + rt::eq(&__t1611, &__t1612) + }; + if match rt::is_truthy(interp, &__t1613) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::nil()); + } else { + { + let __t1610 = Value::bool(true); + if match rt::is_truthy(interp, &__t1610) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1609 = Value::str("boolean expected"); + rt::apply_direct(interp, "simple-error", &[__t1609])? + }); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } + } + } +} + +fn install_cl_x2e_wrapper(interp: &mut Interp) { + interp.register_native("cl.wrapper", 1, aot_cl_x2e_wrapper); + interp.register_aot_direct("cl.wrapper", aot_cl_x2e_wrapper); +} + +/// AOT-compiled from KL `(defun cl.maplispsym ...)` +pub fn aot_cl_x2e_maplispsym(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "cl.maplispsym: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5711 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t1644 = { + let __t1642 = Value::sym(interp.intern("=")); + let __t1643 = v_V5711.clone(); + rt::eq(&__t1642, &__t1643) + }; + if match rt::is_truthy(interp, &__t1644) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym(interp.intern("cl.equal?"))); + } else { + { + let __t1641 = { + let __t1639 = Value::sym(interp.intern(">")); + let __t1640 = v_V5711.clone(); + rt::eq(&__t1639, &__t1640) + }; + if match rt::is_truthy(interp, &__t1641) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym(interp.intern("cl.greater?"))); + } else { + { + let __t1638 = { + let __t1636 = Value::sym(interp.intern("<")); + let __t1637 = v_V5711.clone(); + rt::eq(&__t1636, &__t1637) + }; + if match rt::is_truthy(interp, &__t1638) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym(interp.intern("cl.less?"))); + } else { + { + let __t1635 = { + let __t1633 = Value::sym(interp.intern(">=")); + let __t1634 = v_V5711.clone(); + rt::eq(&__t1633, &__t1634) + }; + if match rt::is_truthy(interp, &__t1635) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym( + interp.intern("cl.greater-than-or-equal-to?"), + )); + } else { + { + let __t1632 = { + let __t1630 = Value::sym(interp.intern("<=")); + let __t1631 = v_V5711.clone(); + rt::eq(&__t1630, &__t1631) + }; + if match rt::is_truthy(interp, &__t1632) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym( + interp.intern("cl.less-than-or-equal-to?"), + )); + } else { + { + let __t1629 = { + let __t1627 = + Value::sym(interp.intern("+")); + let __t1628 = v_V5711.clone(); + rt::eq(&__t1627, &__t1628) + }; + if match rt::is_truthy(interp, &__t1629) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym( + interp.intern("cl.add"), + )); + } else { + { + let __t1626 = { + let __t1624 = + Value::sym(interp.intern("-")); + let __t1625 = v_V5711.clone(); + rt::eq(&__t1624, &__t1625) + }; + if match rt::is_truthy(interp, &__t1626) + { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym( + interp.intern("cl.subtract"), + )); + } else { + { + let __t1623 = { + let __t1621 = Value::sym( + interp.intern("/"), + ); + let __t1622 = + v_V5711.clone(); + rt::eq(&__t1621, &__t1622) + }; + if match rt::is_truthy( + interp, &__t1623, + ) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::sym( + interp.intern( + "cl.divide", + ), + )); + } else { + { + let __t1620 = { + let __t1618 = + Value::sym( + interp + .intern( + "*", + ), + ); + let __t1619 = + v_V5711.clone(); + rt::eq( + &__t1618, + &__t1619, + ) + }; + if match rt::is_truthy( + interp, &__t1620, + ) { + Ok(b) => b, + Err(e) => { + break Err(e) + } + } { + break Ok(Value::sym(interp.intern("cl.multiply"))); + } else { + { + let __t1617 = + Value::bool( + true, + ); + if match rt::is_truthy(interp, &__t1617) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V5711.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } +} + +fn install_cl_x2e_maplispsym(interp: &mut Interp) { + interp.register_native("cl.maplispsym", 1, aot_cl_x2e_maplispsym); + interp.register_aot_direct("cl.maplispsym", aot_cl_x2e_maplispsym); +} + +/// Register every AOT-compiled function on `interp`. Call after kernel +/// boot so these names override the tree-walked defuns. +pub fn install(interp: &mut Interp) { + install_cl_x2e_kl_x2d_to_x2d_lisp(interp); + install_cl_x2e_kl_x2d_to_x2d_lisp_x2d_h(interp); + install_cl_x2e_rectify_x2d_t(interp); + install_cl_x2e_currylisp(interp); + install_cl_x2e_optimise_x2d_application(interp); + install_cl_x2e_cond_x2d_code(interp); + install_cl_x2e_wrap(interp); + install_cl_x2e_fastsymbol_x3f_(interp); + install_cl_x2e_wrapper(interp); + install_cl_x2e_maplispsym(interp); +} diff --git a/crates/shen-rust/src/aot/kernel/compiler.rs b/crates/shen-rust/src/aot/kernel/compiler.rs deleted file mode 100644 index 9d22d35..0000000 --- a/crates/shen-rust/src/aot/kernel/compiler.rs +++ /dev/null @@ -1,8858 +0,0 @@ -//! Auto-generated by `klcompile` from kernel/klambda/compiler.kl. -//! -//! DO NOT EDIT. Re-run klcompile to regenerate. - -#![allow( - unused_variables, - unused_braces, - unused_imports, - clippy::let_and_return, - clippy::needless_question_mark, - clippy::redundant_clone, - clippy::needless_late_init, - clippy::len_zero, - clippy::needless_borrow, - clippy::approx_constant, - clippy::redundant_closure_call, - non_snake_case -)] - -use crate::aot::runtime as rt; -use crate::error::{ShenError, ShenResult}; -use crate::interp::eval::Interp; -use crate::value::Value; -use std::rc::Rc; - -/// AOT-compiled from KL `(defun shen-cl.initialise-compiler ...)` -pub fn aot_shen_x2d_cl_x2e_initialise_x2d_compiler( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "shen-cl.initialise-compiler: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - { - let _ = { - let __t0 = Value::sym(interp.intern("shen-cl.*compiling-shen-sources*")); - let __t1 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t0, __t1])? - }; - { - let _ = { - let __t2 = Value::sym(interp.intern("shen-cl.*factorise-patterns*")); - let __t3 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t2, __t3])? - }; - break Ok(Value::sym(interp.intern("shen-cl.done"))); - } - } - } -} - -fn install_shen_x2d_cl_x2e_initialise_x2d_compiler(interp: &mut Interp) { - interp.register_native( - "shen-cl.initialise-compiler", - 0, - aot_shen_x2d_cl_x2e_initialise_x2d_compiler, - ); - interp.register_aot_direct( - "shen-cl.initialise-compiler", - aot_shen_x2d_cl_x2e_initialise_x2d_compiler, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.kl ...)` -pub fn aot_shen_x2d_cl_x2e_kl(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.kl: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V414 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok(v_V414.clone()); - } -} - -fn install_shen_x2d_cl_x2e_kl(interp: &mut Interp) { - interp.register_native("shen-cl.kl", 1, aot_shen_x2d_cl_x2e_kl); - interp.register_aot_direct("shen-cl.kl", aot_shen_x2d_cl_x2e_kl); -} - -/// AOT-compiled from KL `(defun shen-cl.cl ...)` -pub fn aot_shen_x2d_cl_x2e_cl(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.cl: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V415 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t5 = { - let __t4 = v_V415.clone(); - rt::apply_direct(interp, "shen-cl.upcase", &[__t4])? - }; - rt::apply_direct(interp, "intern", &[__t5])? - }); - } -} - -fn install_shen_x2d_cl_x2e_cl(interp: &mut Interp) { - interp.register_native("shen-cl.cl", 1, aot_shen_x2d_cl_x2e_cl); - interp.register_aot_direct("shen-cl.cl", aot_shen_x2d_cl_x2e_cl); -} - -/// AOT-compiled from KL `(defun shen-cl.unbound-symbol? ...)` -pub fn aot_shen_x2d_cl_x2e_unbound_x2d_symbol_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.unbound-symbol?: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V420 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V421 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t15 = { - let __t10 = { - let __t7 = v_V420.clone(); - rt::is_symbol(&__t7) - }; - if rt::is_truthy(interp, &__t10)? { - Value::bool(true) - } else { - let __t11 = { - let __t8 = v_V420.clone(); - let __t9 = Value::sym(interp.intern(",")); - rt::eq(&__t8, &__t9) - }; - Value::bool(rt::is_truthy(interp, &__t11)?) - } - }; - if match rt::is_truthy(interp, &__t15) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t14 = { - let __t12 = v_V420.clone(); - let __t13 = v_V421.clone(); - rt::apply_direct(interp, "element?", &[__t12, __t13])? - }; - rt::apply_direct(interp, "not", &[__t14])? - }); - } else { - { - let __t6 = Value::bool(true); - if match rt::is_truthy(interp, &__t6) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_unbound_x2d_symbol_x3f_(interp: &mut Interp) { - interp.register_native( - "shen-cl.unbound-symbol?", - 2, - aot_shen_x2d_cl_x2e_unbound_x2d_symbol_x3f_, - ); - interp.register_aot_direct( - "shen-cl.unbound-symbol?", - aot_shen_x2d_cl_x2e_unbound_x2d_symbol_x3f_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.merge-nested-repeats ...)` -pub fn aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_repeats( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.merge-nested-repeats: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V426 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V427 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t71 = { - let __t55 = { - let __t17 = v_V427.clone(); - rt::is_cons(&__t17) - }; - if !rt::is_truthy(interp, &__t55)? { - Value::bool(false) - } else { - let __t56 = { - let __t53 = { - let __t19 = { - let __t18 = v_V427.clone(); - rt::tl(&__t18)? - }; - rt::is_cons(&__t19) - }; - if !rt::is_truthy(interp, &__t53)? { - Value::bool(false) - } else { - let __t54 = { - let __t51 = { - let __t22 = { - let __t21 = { - let __t20 = v_V427.clone(); - rt::tl(&__t20)? - }; - rt::tl(&__t21)? - }; - rt::is_cons(&__t22) - }; - if !rt::is_truthy(interp, &__t51)? { - Value::bool(false) - } else { - let __t52 = { - let __t49 = { - let __t26 = { - let __t25 = { - let __t24 = { - let __t23 = v_V427.clone(); - rt::tl(&__t23)? - }; - rt::tl(&__t24)? - }; - rt::hd(&__t25)? - }; - rt::is_cons(&__t26) - }; - if !rt::is_truthy(interp, &__t49)? { - Value::bool(false) - } else { - let __t50 = { - let __t47 = { - let __t27 = Value::nil(); - let __t31 = { - let __t30 = { - let __t29 = { - let __t28 = v_V427.clone(); - rt::tl(&__t28)? - }; - rt::tl(&__t29)? - }; - rt::tl(&__t30)? - }; - rt::eq(&__t27, &__t31) - }; - if !rt::is_truthy(interp, &__t47)? { - Value::bool(false) - } else { - let __t48 = { - let __t45 = { - let __t33 = { - let __t32 = v_V427.clone(); - rt::hd(&__t32)? - }; - let __t38 = { - let __t37 = { - let __t36 = { - let __t35 = { - let __t34 = - v_V427.clone(); - rt::tl(&__t34)? - }; - rt::tl(&__t35)? - }; - rt::hd(&__t36)? - }; - rt::hd(&__t37)? - }; - rt::eq(&__t33, &__t38) - }; - if !rt::is_truthy(interp, &__t45)? { - Value::bool(false) - } else { - let __t46 = { - let __t39 = v_V426.clone(); - let __t44 = { - let __t43 = { - let __t42 = { - let __t41 = { - let __t40 = - v_V427.clone(); - rt::tl(&__t40)? - }; - rt::tl(&__t41)? - }; - rt::hd(&__t42)? - }; - rt::hd(&__t43)? - }; - rt::eq(&__t39, &__t44) - }; - Value::bool(rt::is_truthy( - interp, &__t46, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t48)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t50)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t52)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t54)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t56)?) - } - }; - if match rt::is_truthy(interp, &__t71) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t61 = { - let __t60 = { - let __t59 = { - let __t58 = { - let __t57 = v_V427.clone(); - rt::tl(&__t57)? - }; - rt::tl(&__t58)? - }; - rt::hd(&__t59)? - }; - rt::hd(&__t60)? - }; - let __t70 = { - let __t64 = { - let __t63 = { - let __t62 = v_V427.clone(); - rt::tl(&__t62)? - }; - rt::hd(&__t63)? - }; - let __t69 = { - let __t68 = { - let __t67 = { - let __t66 = { - let __t65 = v_V427.clone(); - rt::tl(&__t65)? - }; - rt::tl(&__t66)? - }; - rt::hd(&__t67)? - }; - rt::tl(&__t68)? - }; - rt::cons(&__t64, &__t69) - }; - rt::cons(&__t61, &__t70) - }); - } else { - { - let __t16 = Value::bool(true); - if match rt::is_truthy(interp, &__t16) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V427.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_merge_x2d_nested_x2d_repeats(interp: &mut Interp) { - interp.register_native( - "shen-cl.merge-nested-repeats", - 2, - aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_repeats, - ); - interp.register_aot_direct( - "shen-cl.merge-nested-repeats", - aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_repeats, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.merge-nested-lets ...)` -pub fn aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_lets( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.merge-nested-lets: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V429 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t288 = { - let __t263 = { - let __t190 = v_V429.clone(); - rt::is_cons(&__t190) - }; - if !rt::is_truthy(interp, &__t263)? { - Value::bool(false) - } else { - let __t264 = { - let __t261 = { - let __t192 = { - let __t191 = v_V429.clone(); - rt::tl(&__t191)? - }; - rt::is_cons(&__t192) - }; - if !rt::is_truthy(interp, &__t261)? { - Value::bool(false) - } else { - let __t262 = { - let __t259 = { - let __t195 = { - let __t194 = { - let __t193 = v_V429.clone(); - rt::tl(&__t193)? - }; - rt::hd(&__t194)? - }; - rt::is_cons(&__t195) - }; - if !rt::is_truthy(interp, &__t259)? { - Value::bool(false) - } else { - let __t260 = { - let __t257 = { - let __t196 = Value::nil(); - let __t200 = { - let __t199 = { - let __t198 = { - let __t197 = v_V429.clone(); - rt::tl(&__t197)? - }; - rt::hd(&__t198)? - }; - rt::tl(&__t199)? - }; - rt::eq(&__t196, &__t200) - }; - if !rt::is_truthy(interp, &__t257)? { - Value::bool(false) - } else { - let __t258 = { - let __t255 = { - let __t203 = { - let __t202 = { - let __t201 = v_V429.clone(); - rt::tl(&__t201)? - }; - rt::tl(&__t202)? - }; - rt::is_cons(&__t203) - }; - if !rt::is_truthy(interp, &__t255)? { - Value::bool(false) - } else { - let __t256 = { - let __t253 = { - let __t207 = { - let __t206 = { - let __t205 = { - let __t204 = v_V429.clone(); - rt::tl(&__t204)? - }; - rt::tl(&__t205)? - }; - rt::hd(&__t206)? - }; - rt::is_cons(&__t207) - }; - if !rt::is_truthy(interp, &__t253)? { - Value::bool(false) - } else { - let __t254 = { - let __t251 = { - let __t212 = { - let __t211 = { - let __t210 = { - let __t209 = { - let __t208 = - v_V429 - .clone( - ); - rt::tl(&__t208)? - }; - rt::tl(&__t209)? - }; - rt::hd(&__t210)? - }; - rt::tl(&__t211)? - }; - rt::is_cons(&__t212) - }; - if !rt::is_truthy(interp, &__t251)? - { - Value::bool(false) - } else { - let __t252 = { - let __t249 = { - let __t218 = { - let __t217 = { - let __t216 = { - let __t215 = { - let __t214 = { - let __t213 = v_V429.clone(); - rt::tl(&__t213)? - }; - rt::tl(&__t214)? - }; - rt::hd( - &__t215, - )? - }; - rt::tl(&__t216)? - }; - rt::tl(&__t217)? - }; - rt::is_cons(&__t218) - }; - if !rt::is_truthy( - interp, &__t249, - )? { - Value::bool(false) - } else { - let __t250 = { - let __t247 = { - let __t219 = - Value::nil( - ); - let __t226 = { - let __t225 = { - let __t224 = { - let __t223 = { let __t222 = { let __t221 = { let __t220 = v_V429.clone(); rt::tl(&__t220)? }; rt::tl(&__t221)? }; rt::hd(&__t222)? }; - rt::tl(&__t223)? - }; - rt::tl(&__t224)? - }; - rt::tl( - &__t225, - )? - }; - rt::eq( - &__t219, - &__t226, - ) - }; - if !rt::is_truthy( - interp, &__t247, - )? { - Value::bool( - false, - ) - } else { - let __t248 = { - let __t245 = { - let __t227 = Value::nil(); - let __t231 = { - let __t230 = { let __t229 = { let __t228 = v_V429.clone(); rt::tl(&__t228)? }; rt::tl(&__t229)? }; - rt::tl(&__t230)? - }; - rt::eq(&__t227, &__t231) - }; - if !rt::is_truthy(interp, &__t245)? { Value::bool(false) } else { let __t246 = { let __t243 = { let __t233 = { let __t232 = Value::sym(interp.intern("let")); rt::apply_direct(interp, "shen-cl.cl", &[__t232])? }; let __t235 = { let __t234 = v_V429.clone(); rt::hd(&__t234)? }; rt::eq(&__t233, &__t235) }; if !rt::is_truthy(interp, &__t243)? { Value::bool(false) } else { let __t244 = { let __t237 = { let __t236 = Value::sym(interp.intern("let*")); rt::apply_direct(interp, "shen-cl.cl", &[__t236])? }; let __t242 = { let __t241 = { let __t240 = { let __t239 = { let __t238 = v_V429.clone(); rt::tl(&__t238)? }; rt::tl(&__t239)? }; rt::hd(&__t240)? }; rt::hd(&__t241)? }; rt::eq(&__t237, &__t242) }; Value::bool(rt::is_truthy(interp, &__t244)?) } }; Value::bool(rt::is_truthy(interp, &__t246)?) } - }; - Value::bool(rt::is_truthy(interp, &__t248)?) - } - }; - Value::bool( - rt::is_truthy( - interp, &__t250, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t252, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t254, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t256)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t258)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t260)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t262)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t264)?) - } - }; - if match rt::is_truthy(interp, &__t288) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t269 = { - let __t268 = { - let __t267 = { - let __t266 = { - let __t265 = v_V429.clone(); - rt::tl(&__t265)? - }; - rt::tl(&__t266)? - }; - rt::hd(&__t267)? - }; - rt::hd(&__t268)? - }; - let __t287 = { - let __t280 = { - let __t273 = { - let __t272 = { - let __t271 = { - let __t270 = v_V429.clone(); - rt::tl(&__t270)? - }; - rt::hd(&__t271)? - }; - rt::hd(&__t272)? - }; - let __t279 = { - let __t278 = { - let __t277 = { - let __t276 = { - let __t275 = { - let __t274 = v_V429.clone(); - rt::tl(&__t274)? - }; - rt::tl(&__t275)? - }; - rt::hd(&__t276)? - }; - rt::tl(&__t277)? - }; - rt::hd(&__t278)? - }; - rt::cons(&__t273, &__t279) - }; - let __t286 = { - let __t285 = { - let __t284 = { - let __t283 = { - let __t282 = { - let __t281 = v_V429.clone(); - rt::tl(&__t281)? - }; - rt::tl(&__t282)? - }; - rt::hd(&__t283)? - }; - rt::tl(&__t284)? - }; - rt::tl(&__t285)? - }; - rt::cons(&__t280, &__t286) - }; - rt::cons(&__t269, &__t287) - }); - } else { - { - let __t189 = { - let __t167 = { - let __t73 = v_V429.clone(); - rt::is_cons(&__t73) - }; - if !rt::is_truthy(interp, &__t167)? { - Value::bool(false) - } else { - let __t168 = { - let __t165 = { - let __t75 = { - let __t74 = v_V429.clone(); - rt::tl(&__t74)? - }; - rt::is_cons(&__t75) - }; - if !rt::is_truthy(interp, &__t165)? { - Value::bool(false) - } else { - let __t166 = { - let __t163 = { - let __t78 = { - let __t77 = { - let __t76 = v_V429.clone(); - rt::tl(&__t76)? - }; - rt::hd(&__t77)? - }; - rt::is_cons(&__t78) - }; - if !rt::is_truthy(interp, &__t163)? { - Value::bool(false) - } else { - let __t164 = { - let __t161 = { - let __t79 = Value::nil(); - let __t83 = { - let __t82 = { - let __t81 = { - let __t80 = v_V429.clone(); - rt::tl(&__t80)? - }; - rt::hd(&__t81)? - }; - rt::tl(&__t82)? - }; - rt::eq(&__t79, &__t83) - }; - if !rt::is_truthy(interp, &__t161)? { - Value::bool(false) - } else { - let __t162 = { - let __t159 = { - let __t86 = { - let __t85 = { - let __t84 = v_V429.clone(); - rt::tl(&__t84)? - }; - rt::tl(&__t85)? - }; - rt::is_cons(&__t86) - }; - if !rt::is_truthy(interp, &__t159)? { - Value::bool(false) - } else { - let __t160 = { - let __t157 = { - let __t90 = { - let __t89 = { - let __t88 = { - let __t87 = - v_V429.clone(); - rt::tl(&__t87)? - }; - rt::tl(&__t88)? - }; - rt::hd(&__t89)? - }; - rt::is_cons(&__t90) - }; - if !rt::is_truthy(interp, &__t157)? - { - Value::bool(false) - } else { - let __t158 = { - let __t155 = { - let __t95 = { - let __t94 = { - let __t93 = { - let __t92 = { - let __t91 = v_V429.clone(); - rt::tl(&__t91)? - }; - rt::tl( - &__t92, - )? - }; - rt::hd(&__t93)? - }; - rt::tl(&__t94)? - }; - rt::is_cons(&__t95) - }; - if !rt::is_truthy( - interp, &__t155, - )? { - Value::bool(false) - } else { - let __t156 = { - let __t153 = { - let __t101 = { - let __t100 = { - let __t99 = { - let __t98 = { let __t97 = { let __t96 = v_V429.clone(); rt::tl(&__t96)? }; rt::tl(&__t97)? }; - rt::hd(&__t98)? - }; - rt::tl(&__t99)? - }; - rt::hd( - &__t100, - )? - }; - rt::is_cons( - &__t101, - ) - }; - if !rt::is_truthy( - interp, &__t153, - )? { - Value::bool( - false, - ) - } else { - let __t154 = { - let __t151 = { - let __t102 = Value::nil(); - let __t109 = { - let __t108 = { let __t107 = { let __t106 = { let __t105 = { let __t104 = { let __t103 = v_V429.clone(); rt::tl(&__t103)? }; rt::tl(&__t104)? }; rt::hd(&__t105)? }; rt::tl(&__t106)? }; rt::hd(&__t107)? }; - rt::tl(&__t108)? - }; - rt::eq(&__t102, &__t109) - }; - if !rt::is_truthy(interp, &__t151)? { Value::bool(false) } else { let __t152 = { let __t149 = { let __t115 = { let __t114 = { let __t113 = { let __t112 = { let __t111 = { let __t110 = v_V429.clone(); rt::tl(&__t110)? }; rt::tl(&__t111)? }; rt::hd(&__t112)? }; rt::tl(&__t113)? }; rt::tl(&__t114)? }; rt::is_cons(&__t115) }; if !rt::is_truthy(interp, &__t149)? { Value::bool(false) } else { let __t150 = { let __t147 = { let __t116 = Value::nil(); let __t123 = { let __t122 = { let __t121 = { let __t120 = { let __t119 = { let __t118 = { let __t117 = v_V429.clone(); rt::tl(&__t117)? }; rt::tl(&__t118)? }; rt::hd(&__t119)? }; rt::tl(&__t120)? }; rt::tl(&__t121)? }; rt::tl(&__t122)? }; rt::eq(&__t116, &__t123) }; if !rt::is_truthy(interp, &__t147)? { Value::bool(false) } else { let __t148 = { let __t145 = { let __t124 = Value::nil(); let __t128 = { let __t127 = { let __t126 = { let __t125 = v_V429.clone(); rt::tl(&__t125)? }; rt::tl(&__t126)? }; rt::tl(&__t127)? }; rt::eq(&__t124, &__t128) }; if !rt::is_truthy(interp, &__t145)? { Value::bool(false) } else { let __t146 = { let __t143 = { let __t130 = { let __t129 = v_V429.clone(); rt::hd(&__t129)? }; let __t135 = { let __t134 = { let __t133 = { let __t132 = { let __t131 = v_V429.clone(); rt::tl(&__t131)? }; rt::tl(&__t132)? }; rt::hd(&__t133)? }; rt::hd(&__t134)? }; rt::eq(&__t130, &__t135) }; if !rt::is_truthy(interp, &__t143)? { Value::bool(false) } else { let __t144 = { let __t137 = { let __t136 = Value::sym(interp.intern("let")); rt::apply_direct(interp, "shen-cl.cl", &[__t136])? }; let __t142 = { let __t141 = { let __t140 = { let __t139 = { let __t138 = v_V429.clone(); rt::tl(&__t138)? }; rt::tl(&__t139)? }; rt::hd(&__t140)? }; rt::hd(&__t141)? }; rt::eq(&__t137, &__t142) }; Value::bool(rt::is_truthy(interp, &__t144)?) } }; Value::bool(rt::is_truthy(interp, &__t146)?) } }; Value::bool(rt::is_truthy(interp, &__t148)?) } }; Value::bool(rt::is_truthy(interp, &__t150)?) } }; Value::bool(rt::is_truthy(interp, &__t152)?) } - }; - Value::bool(rt::is_truthy(interp, &__t154)?) - } - }; - Value::bool( - rt::is_truthy( - interp, &__t156, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t158, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t160, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t162)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t164)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t166)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t168)?) - } - }; - if match rt::is_truthy(interp, &__t189) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t170 = { - let __t169 = Value::sym(interp.intern("let*")); - rt::apply_direct(interp, "shen-cl.cl", &[__t169])? - }; - let __t188 = { - let __t181 = { - let __t174 = { - let __t173 = { - let __t172 = { - let __t171 = v_V429.clone(); - rt::tl(&__t171)? - }; - rt::hd(&__t172)? - }; - rt::hd(&__t173)? - }; - let __t180 = { - let __t179 = { - let __t178 = { - let __t177 = { - let __t176 = { - let __t175 = v_V429.clone(); - rt::tl(&__t175)? - }; - rt::tl(&__t176)? - }; - rt::hd(&__t177)? - }; - rt::tl(&__t178)? - }; - rt::hd(&__t179)? - }; - rt::cons(&__t174, &__t180) - }; - let __t187 = { - let __t186 = { - let __t185 = { - let __t184 = { - let __t183 = { - let __t182 = v_V429.clone(); - rt::tl(&__t182)? - }; - rt::tl(&__t183)? - }; - rt::hd(&__t184)? - }; - rt::tl(&__t185)? - }; - rt::tl(&__t186)? - }; - rt::cons(&__t181, &__t187) - }; - rt::cons(&__t170, &__t188) - }); - } else { - { - let __t72 = Value::bool(true); - if match rt::is_truthy(interp, &__t72) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V429.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_merge_x2d_nested_x2d_lets(interp: &mut Interp) { - interp.register_native( - "shen-cl.merge-nested-lets", - 1, - aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_lets, - ); - interp.register_aot_direct( - "shen-cl.merge-nested-lets", - aot_shen_x2d_cl_x2e_merge_x2d_nested_x2d_lets, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.compile-expression ...)` -pub fn aot_shen_x2d_cl_x2e_compile_x2d_expression( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.compile-expression: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V445 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V446 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1044 = { - let __t1037 = Value::nil(); - let __t1038 = v_V445.clone(); - rt::eq(&__t1037, &__t1038) - }; - if match rt::is_truthy(interp, &__t1044) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1040 = { - let __t1039 = Value::sym(interp.intern("quote")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1039])? - }; - let __t1043 = { - let __t1041 = Value::nil(); - let __t1042 = Value::nil(); - rt::cons(&__t1041, &__t1042) - }; - rt::cons(&__t1040, &__t1043) - }); - } else { - { - let __t1036 = { - let __t1029 = Value::bool(true); - let __t1030 = v_V445.clone(); - rt::eq(&__t1029, &__t1030) - }; - if match rt::is_truthy(interp, &__t1036) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1032 = { - let __t1031 = Value::sym(interp.intern("quote")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1031])? - }; - let __t1035 = { - let __t1033 = Value::bool(true); - let __t1034 = Value::nil(); - rt::cons(&__t1033, &__t1034) - }; - rt::cons(&__t1032, &__t1035) - }); - } else { - { - let __t1028 = { - let __t1021 = Value::bool(false); - let __t1022 = v_V445.clone(); - rt::eq(&__t1021, &__t1022) - }; - if match rt::is_truthy(interp, &__t1028) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1024 = { - let __t1023 = Value::sym(interp.intern("quote")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1023])? - }; - let __t1027 = { - let __t1025 = Value::bool(false); - let __t1026 = Value::nil(); - rt::cons(&__t1025, &__t1026) - }; - rt::cons(&__t1024, &__t1027) - }); - } else { - { - let __t1020 = { - let __t1017 = v_V445.clone(); - let __t1018 = v_V446.clone(); - rt::apply_direct( - interp, - "shen-cl.unbound-symbol?", - &[__t1017, __t1018], - )? - }; - if match rt::is_truthy(interp, &__t1020) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1019 = v_V445.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-symbol", - &[__t1019], - )? - }); - } else { - { - let __t1016 = { - let __t1012 = { - let __t992 = v_V445.clone(); - rt::is_cons(&__t992) - }; - if !rt::is_truthy(interp, &__t1012)? { - Value::bool(false) - } else { - let __t1013 = { - let __t1010 = { - let __t993 = - Value::sym(interp.intern("value")); - let __t995 = { - let __t994 = v_V445.clone(); - rt::hd(&__t994)? - }; - rt::eq(&__t993, &__t995) - }; - if !rt::is_truthy(interp, &__t1010)? { - Value::bool(false) - } else { - let __t1011 = { - let __t1008 = { - let __t997 = { - let __t996 = v_V445.clone(); - rt::tl(&__t996)? - }; - rt::is_cons(&__t997) - }; - if !rt::is_truthy(interp, &__t1008)? - { - Value::bool(false) - } else { - let __t1009 = { - let __t1006 = { - let __t998 = - Value::nil(); - let __t1001 = { - let __t1000 = { - let __t999 = - v_V445 - .clone( - ); - rt::tl(&__t999)? - }; - rt::tl(&__t1000)? - }; - rt::eq( - &__t998, &__t1001, - ) - }; - if !rt::is_truthy( - interp, &__t1006, - )? { - Value::bool(false) - } else { - let __t1007 = { - let __t1004 = { - let __t1003 = { - let __t1002 = v_V445.clone(); - rt::tl(&__t1002)? - }; - rt::hd( - &__t1003, - )? - }; - let __t1005 = - v_V446.clone(); - rt::apply_direct(interp, "shen-cl.unbound-symbol?", &[__t1004, __t1005])? - }; - Value::bool( - rt::is_truthy( - interp, - &__t1007, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1009, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1011, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1013)?) - } - }; - if match rt::is_truthy(interp, &__t1016) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1015 = { - let __t1014 = v_V445.clone(); - rt::tl(&__t1014)? - }; - rt::hd(&__t1015)? - }); - } else { - { - let __t991 = { - let __t975 = { - let __t948 = v_V445.clone(); - rt::is_cons(&__t948) - }; - if !rt::is_truthy(interp, &__t975)? { - Value::bool(false) - } else { - let __t976 = { - let __t973 = { - let __t949 = Value::sym( - interp.intern("let"), - ); - let __t951 = { - let __t950 = v_V445.clone(); - rt::hd(&__t950)? - }; - rt::eq(&__t949, &__t951) - }; - if !rt::is_truthy(interp, &__t973)? - { - Value::bool(false) - } else { - let __t974 = { - let __t971 = { - let __t953 = { - let __t952 = - v_V445.clone(); - rt::tl(&__t952)? - }; - rt::is_cons(&__t953) - }; - if !rt::is_truthy( - interp, &__t971, - )? { - Value::bool(false) - } else { - let __t972 = { - let __t969 = { - let __t956 = { - let __t955 = { - let __t954 = v_V445.clone(); - rt::tl(&__t954)? - }; - rt::tl( - &__t955, - )? - }; - rt::is_cons( - &__t956, - ) - }; - if !rt::is_truthy( - interp, &__t969, - )? { - Value::bool( - false, - ) - } else { - let __t970 = { - let __t967 = { - let __t960 = { - let __t959 = { let __t958 = { let __t957 = v_V445.clone(); rt::tl(&__t957)? }; rt::tl(&__t958)? }; - rt::tl(&__t959)? - }; - rt::is_cons(&__t960) - }; - if !rt::is_truthy(interp, &__t967)? { Value::bool(false) } else { let __t968 = { let __t961 = Value::nil(); let __t966 = { let __t965 = { let __t964 = { let __t963 = { let __t962 = v_V445.clone(); rt::tl(&__t962)? }; rt::tl(&__t963)? }; rt::tl(&__t964)? }; rt::tl(&__t965)? }; rt::eq(&__t961, &__t966) }; Value::bool(rt::is_truthy(interp, &__t968)?) } - }; - Value::bool(rt::is_truthy(interp, &__t970)?) - } - }; - Value::bool( - rt::is_truthy( - interp, &__t972, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t974, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t976, - )?) - } - }; - if match rt::is_truthy(interp, &__t991) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t990 = { - let __t979 = { - let __t978 = { - let __t977 = v_V445.clone(); - rt::tl(&__t977)? - }; - rt::hd(&__t978)? - }; - let __t983 = { - let __t982 = { - let __t981 = { - let __t980 = - v_V445.clone(); - rt::tl(&__t980)? - }; - rt::tl(&__t981)? - }; - rt::hd(&__t982)? - }; - let __t988 = { - let __t987 = { - let __t986 = { - let __t985 = { - let __t984 = - v_V445.clone(); - rt::tl(&__t984)? - }; - rt::tl(&__t985)? - }; - rt::tl(&__t986)? - }; - rt::hd(&__t987)? - }; - let __t989 = v_V446.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-let", - &[ - __t979, __t983, __t988, - __t989, - ], - )? - }; - rt::apply_direct( - interp, - "shen-cl.merge-nested-lets", - &[__t990], - )? - }); - } else { - { - let __t947 = { - let __t942 = { - let __t938 = v_V445.clone(); - rt::is_cons(&__t938) - }; - if !rt::is_truthy(interp, &__t942)? - { - Value::bool(false) - } else { - let __t943 = { - let __t939 = Value::sym( - interp.intern("cond"), - ); - let __t941 = { - let __t940 = - v_V445.clone(); - rt::hd(&__t940)? - }; - rt::eq(&__t939, &__t941) - }; - Value::bool(rt::is_truthy( - interp, &__t943, - )?) - } - }; - if match rt::is_truthy(interp, &__t947) - { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t945 = { - let __t944 = v_V445.clone(); - rt::tl(&__t944)? - }; - let __t946 = v_V446.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-cond", - &[__t945, __t946], - )? - }); - } else { - { - let __t937 = { - let __t922 = { - let __t895 = - v_V445.clone(); - rt::is_cons(&__t895) - }; - if !rt::is_truthy( - interp, &__t922, - )? { - Value::bool(false) - } else { - let __t923 = { - let __t920 = { - let __t896 = Value::sym(interp.intern("if")); - let __t898 = { - let __t897 = v_V445.clone(); - rt::hd( - &__t897, - )? - }; - rt::eq( - &__t896, - &__t898, - ) - }; - if !rt::is_truthy( - interp, &__t920, - )? { - Value::bool( - false, - ) - } else { - let __t921 = { - let __t918 = { - let __t900 = { - let __t899 = v_V445.clone(); - rt::tl(&__t899)? - }; - rt::is_cons(&__t900) - }; - if !rt::is_truthy(interp, &__t918)? { Value::bool(false) } else { let __t919 = { let __t916 = { let __t903 = { let __t902 = { let __t901 = v_V445.clone(); rt::tl(&__t901)? }; rt::tl(&__t902)? }; rt::is_cons(&__t903) }; if !rt::is_truthy(interp, &__t916)? { Value::bool(false) } else { let __t917 = { let __t914 = { let __t907 = { let __t906 = { let __t905 = { let __t904 = v_V445.clone(); rt::tl(&__t904)? }; rt::tl(&__t905)? }; rt::tl(&__t906)? }; rt::is_cons(&__t907) }; if !rt::is_truthy(interp, &__t914)? { Value::bool(false) } else { let __t915 = { let __t908 = Value::nil(); let __t913 = { let __t912 = { let __t911 = { let __t910 = { let __t909 = v_V445.clone(); rt::tl(&__t909)? }; rt::tl(&__t910)? }; rt::tl(&__t911)? }; rt::tl(&__t912)? }; rt::eq(&__t908, &__t913) }; Value::bool(rt::is_truthy(interp, &__t915)?) } }; Value::bool(rt::is_truthy(interp, &__t917)?) } }; Value::bool(rt::is_truthy(interp, &__t919)?) } - }; - Value::bool(rt::is_truthy(interp, &__t921)?) - } - }; - Value::bool( - rt::is_truthy( - interp, &__t923, - )?, - ) - } - }; - if match rt::is_truthy( - interp, &__t937, - ) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t926 = { - let __t925 = { - let __t924 = - v_V445 - .clone( - ); - rt::tl(&__t924)? - }; - rt::hd(&__t925)? - }; - let __t930 = { - let __t929 = { - let __t928 = { - let __t927 = v_V445.clone(); - rt::tl( - &__t927, - )? - }; - rt::tl(&__t928)? - }; - rt::hd(&__t929)? - }; - let __t935 = { - let __t934 = { - let __t933 = { - let __t932 = { - let __t931 = v_V445.clone(); - rt::tl(&__t931)? - }; - rt::tl( - &__t932, - )? - }; - rt::tl(&__t933)? - }; - rt::hd(&__t934)? - }; - let __t936 = - v_V446.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-if", - &[ - __t926, __t930, - __t935, __t936, - ], - )? - }); - } else { - { - let __t894 = { - let __t884 = { - let __t864 = - v_V445 - .clone( - ); - rt::is_cons( - &__t864, - ) - }; - if !rt::is_truthy( - interp, &__t884, - )? { - Value::bool( - false, - ) - } else { - let __t885 = { - let __t882 = { - let __t865 = Value::sym(interp.intern("lambda")); - let __t867 = { - let __t866 = v_V445.clone(); - rt::hd(&__t866)? - }; - rt::eq(&__t865, &__t867) - }; - if !rt::is_truthy(interp, &__t882)? { Value::bool(false) } else { let __t883 = { let __t880 = { let __t869 = { let __t868 = v_V445.clone(); rt::tl(&__t868)? }; rt::is_cons(&__t869) }; if !rt::is_truthy(interp, &__t880)? { Value::bool(false) } else { let __t881 = { let __t878 = { let __t872 = { let __t871 = { let __t870 = v_V445.clone(); rt::tl(&__t870)? }; rt::tl(&__t871)? }; rt::is_cons(&__t872) }; if !rt::is_truthy(interp, &__t878)? { Value::bool(false) } else { let __t879 = { let __t873 = Value::nil(); let __t877 = { let __t876 = { let __t875 = { let __t874 = v_V445.clone(); rt::tl(&__t874)? }; rt::tl(&__t875)? }; rt::tl(&__t876)? }; rt::eq(&__t873, &__t877) }; Value::bool(rt::is_truthy(interp, &__t879)?) } }; Value::bool(rt::is_truthy(interp, &__t881)?) } }; Value::bool(rt::is_truthy(interp, &__t883)?) } - }; - Value::bool(rt::is_truthy(interp, &__t885)?) - } - }; - if match rt::is_truthy( - interp, &__t894, - ) { - Ok(b) => b, - Err(e) => { - break Err(e) - } - } { - break Ok({ - let __t888 = { - let __t887 = { - let __t886 = v_V445.clone(); - rt::tl(&__t886)? - }; - rt::hd( - &__t887, - )? - }; - let __t892 = { - let __t891 = { - let __t890 = { - let __t889 = v_V445.clone(); - rt::tl(&__t889)? - }; - rt::tl(&__t890)? - }; - rt::hd( - &__t891, - )? - }; - let __t893 = - v_V446 - .clone( - ); - rt::apply_direct(interp, "shen-cl.emit-lambda", &[__t888, __t892, __t893])? - }); - } else { - { - let __t863 = { - let __t845 = { - let __t825 = v_V445.clone(); - rt::is_cons(&__t825) - }; - if !rt::is_truthy(interp, &__t845)? { Value::bool(false) } else { let __t846 = { let __t843 = { let __t826 = Value::sym(interp.intern("and")); let __t828 = { let __t827 = v_V445.clone(); rt::hd(&__t827)? }; rt::eq(&__t826, &__t828) }; if !rt::is_truthy(interp, &__t843)? { Value::bool(false) } else { let __t844 = { let __t841 = { let __t830 = { let __t829 = v_V445.clone(); rt::tl(&__t829)? }; rt::is_cons(&__t830) }; if !rt::is_truthy(interp, &__t841)? { Value::bool(false) } else { let __t842 = { let __t839 = { let __t833 = { let __t832 = { let __t831 = v_V445.clone(); rt::tl(&__t831)? }; rt::tl(&__t832)? }; rt::is_cons(&__t833) }; if !rt::is_truthy(interp, &__t839)? { Value::bool(false) } else { let __t840 = { let __t834 = Value::nil(); let __t838 = { let __t837 = { let __t836 = { let __t835 = v_V445.clone(); rt::tl(&__t835)? }; rt::tl(&__t836)? }; rt::tl(&__t837)? }; rt::eq(&__t834, &__t838) }; Value::bool(rt::is_truthy(interp, &__t840)?) } }; Value::bool(rt::is_truthy(interp, &__t842)?) } }; Value::bool(rt::is_truthy(interp, &__t844)?) } }; Value::bool(rt::is_truthy(interp, &__t846)?) } - }; - if match rt::is_truthy(interp, &__t863) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t848 = { let __t847 = Value::sym(interp.intern("and")); rt::apply_direct(interp, "shen-cl.kl", &[__t847])? }; let __t862 = { let __t853 = { let __t851 = { let __t850 = { let __t849 = v_V445.clone(); rt::tl(&__t849)? }; rt::hd(&__t850)? }; let __t852 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t851, __t852])? }; let __t861 = { let __t859 = { let __t857 = { let __t856 = { let __t855 = { let __t854 = v_V445.clone(); rt::tl(&__t854)? }; rt::tl(&__t855)? }; rt::hd(&__t856)? }; let __t858 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t857, __t858])? }; let __t860 = Value::nil(); rt::cons(&__t859, &__t860) }; rt::cons(&__t853, &__t861) }; rt::cons(&__t848, &__t862) }); } else { { let __t824 = { let __t806 = { let __t786 = v_V445.clone(); rt::is_cons(&__t786) }; if !rt::is_truthy(interp, &__t806)? { Value::bool(false) } else { let __t807 = { let __t804 = { let __t787 = Value::sym(interp.intern("or")); let __t789 = { let __t788 = v_V445.clone(); rt::hd(&__t788)? }; rt::eq(&__t787, &__t789) }; if !rt::is_truthy(interp, &__t804)? { Value::bool(false) } else { let __t805 = { let __t802 = { let __t791 = { let __t790 = v_V445.clone(); rt::tl(&__t790)? }; rt::is_cons(&__t791) }; if !rt::is_truthy(interp, &__t802)? { Value::bool(false) } else { let __t803 = { let __t800 = { let __t794 = { let __t793 = { let __t792 = v_V445.clone(); rt::tl(&__t792)? }; rt::tl(&__t793)? }; rt::is_cons(&__t794) }; if !rt::is_truthy(interp, &__t800)? { Value::bool(false) } else { let __t801 = { let __t795 = Value::nil(); let __t799 = { let __t798 = { let __t797 = { let __t796 = v_V445.clone(); rt::tl(&__t796)? }; rt::tl(&__t797)? }; rt::tl(&__t798)? }; rt::eq(&__t795, &__t799) }; Value::bool(rt::is_truthy(interp, &__t801)?) } }; Value::bool(rt::is_truthy(interp, &__t803)?) } }; Value::bool(rt::is_truthy(interp, &__t805)?) } }; Value::bool(rt::is_truthy(interp, &__t807)?) } }; if match rt::is_truthy(interp, &__t824) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t809 = { let __t808 = Value::sym(interp.intern("or")); rt::apply_direct(interp, "shen-cl.kl", &[__t808])? }; let __t823 = { let __t814 = { let __t812 = { let __t811 = { let __t810 = v_V445.clone(); rt::tl(&__t810)? }; rt::hd(&__t811)? }; let __t813 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t812, __t813])? }; let __t822 = { let __t820 = { let __t818 = { let __t817 = { let __t816 = { let __t815 = v_V445.clone(); rt::tl(&__t815)? }; rt::tl(&__t816)? }; rt::hd(&__t817)? }; let __t819 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t818, __t819])? }; let __t821 = Value::nil(); rt::cons(&__t820, &__t821) }; rt::cons(&__t814, &__t822) }; rt::cons(&__t809, &__t823) }); } else { { let __t785 = { let __t775 = { let __t755 = v_V445.clone(); rt::is_cons(&__t755) }; if !rt::is_truthy(interp, &__t775)? { Value::bool(false) } else { let __t776 = { let __t773 = { let __t756 = Value::sym(interp.intern("trap-error")); let __t758 = { let __t757 = v_V445.clone(); rt::hd(&__t757)? }; rt::eq(&__t756, &__t758) }; if !rt::is_truthy(interp, &__t773)? { Value::bool(false) } else { let __t774 = { let __t771 = { let __t760 = { let __t759 = v_V445.clone(); rt::tl(&__t759)? }; rt::is_cons(&__t760) }; if !rt::is_truthy(interp, &__t771)? { Value::bool(false) } else { let __t772 = { let __t769 = { let __t763 = { let __t762 = { let __t761 = v_V445.clone(); rt::tl(&__t761)? }; rt::tl(&__t762)? }; rt::is_cons(&__t763) }; if !rt::is_truthy(interp, &__t769)? { Value::bool(false) } else { let __t770 = { let __t764 = Value::nil(); let __t768 = { let __t767 = { let __t766 = { let __t765 = v_V445.clone(); rt::tl(&__t765)? }; rt::tl(&__t766)? }; rt::tl(&__t767)? }; rt::eq(&__t764, &__t768) }; Value::bool(rt::is_truthy(interp, &__t770)?) } }; Value::bool(rt::is_truthy(interp, &__t772)?) } }; Value::bool(rt::is_truthy(interp, &__t774)?) } }; Value::bool(rt::is_truthy(interp, &__t776)?) } }; if match rt::is_truthy(interp, &__t785) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t779 = { let __t778 = { let __t777 = v_V445.clone(); rt::tl(&__t777)? }; rt::hd(&__t778)? }; let __t783 = { let __t782 = { let __t781 = { let __t780 = v_V445.clone(); rt::tl(&__t780)? }; rt::tl(&__t781)? }; rt::hd(&__t782)? }; let __t784 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.emit-trap-error", &[__t779, __t783, __t784])? }); } else { { let __t754 = { let __t733 = { let __t713 = v_V445.clone(); rt::is_cons(&__t713) }; if !rt::is_truthy(interp, &__t733)? { Value::bool(false) } else { let __t734 = { let __t731 = { let __t714 = Value::sym(interp.intern("do")); let __t716 = { let __t715 = v_V445.clone(); rt::hd(&__t715)? }; rt::eq(&__t714, &__t716) }; if !rt::is_truthy(interp, &__t731)? { Value::bool(false) } else { let __t732 = { let __t729 = { let __t718 = { let __t717 = v_V445.clone(); rt::tl(&__t717)? }; rt::is_cons(&__t718) }; if !rt::is_truthy(interp, &__t729)? { Value::bool(false) } else { let __t730 = { let __t727 = { let __t721 = { let __t720 = { let __t719 = v_V445.clone(); rt::tl(&__t719)? }; rt::tl(&__t720)? }; rt::is_cons(&__t721) }; if !rt::is_truthy(interp, &__t727)? { Value::bool(false) } else { let __t728 = { let __t722 = Value::nil(); let __t726 = { let __t725 = { let __t724 = { let __t723 = v_V445.clone(); rt::tl(&__t723)? }; rt::tl(&__t724)? }; rt::tl(&__t725)? }; rt::eq(&__t722, &__t726) }; Value::bool(rt::is_truthy(interp, &__t728)?) } }; Value::bool(rt::is_truthy(interp, &__t730)?) } }; Value::bool(rt::is_truthy(interp, &__t732)?) } }; Value::bool(rt::is_truthy(interp, &__t734)?) } }; if match rt::is_truthy(interp, &__t754) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t736 = { let __t735 = Value::sym(interp.intern("progn")); rt::apply_direct(interp, "shen-cl.cl", &[__t735])? }; let __t753 = { let __t738 = { let __t737 = Value::sym(interp.intern("progn")); rt::apply_direct(interp, "shen-cl.cl", &[__t737])? }; let __t752 = { let __t743 = { let __t741 = { let __t740 = { let __t739 = v_V445.clone(); rt::tl(&__t739)? }; rt::hd(&__t740)? }; let __t742 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t741, __t742])? }; let __t751 = { let __t749 = { let __t747 = { let __t746 = { let __t745 = { let __t744 = v_V445.clone(); rt::tl(&__t744)? }; rt::tl(&__t745)? }; rt::hd(&__t746)? }; let __t748 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t747, __t748])? }; let __t750 = Value::nil(); rt::cons(&__t749, &__t750) }; rt::cons(&__t743, &__t751) }; rt::cons(&__t738, &__t752) }; rt::apply_direct(interp, "shen-cl.merge-nested-repeats", &[__t736, __t753])? }); } else { { let __t712 = { let __t702 = { let __t682 = v_V445.clone(); rt::is_cons(&__t682) }; if !rt::is_truthy(interp, &__t702)? { Value::bool(false) } else { let __t703 = { let __t700 = { let __t683 = Value::sym(interp.intern("=")); let __t685 = { let __t684 = v_V445.clone(); rt::hd(&__t684)? }; rt::eq(&__t683, &__t685) }; if !rt::is_truthy(interp, &__t700)? { Value::bool(false) } else { let __t701 = { let __t698 = { let __t687 = { let __t686 = v_V445.clone(); rt::tl(&__t686)? }; rt::is_cons(&__t687) }; if !rt::is_truthy(interp, &__t698)? { Value::bool(false) } else { let __t699 = { let __t696 = { let __t690 = { let __t689 = { let __t688 = v_V445.clone(); rt::tl(&__t688)? }; rt::tl(&__t689)? }; rt::is_cons(&__t690) }; if !rt::is_truthy(interp, &__t696)? { Value::bool(false) } else { let __t697 = { let __t691 = Value::nil(); let __t695 = { let __t694 = { let __t693 = { let __t692 = v_V445.clone(); rt::tl(&__t692)? }; rt::tl(&__t693)? }; rt::tl(&__t694)? }; rt::eq(&__t691, &__t695) }; Value::bool(rt::is_truthy(interp, &__t697)?) } }; Value::bool(rt::is_truthy(interp, &__t699)?) } }; Value::bool(rt::is_truthy(interp, &__t701)?) } }; Value::bool(rt::is_truthy(interp, &__t703)?) } }; if match rt::is_truthy(interp, &__t712) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t706 = { let __t705 = { let __t704 = v_V445.clone(); rt::tl(&__t704)? }; rt::hd(&__t705)? }; let __t710 = { let __t709 = { let __t708 = { let __t707 = v_V445.clone(); rt::tl(&__t707)? }; rt::tl(&__t708)? }; rt::hd(&__t709)? }; let __t711 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.emit-equality-check", &[__t706, __t710, __t711])? }); } else { { let __t681 = { let __t670 = { let __t656 = v_V445.clone(); rt::is_cons(&__t656) }; if !rt::is_truthy(interp, &__t670)? { Value::bool(false) } else { let __t671 = { let __t668 = { let __t657 = Value::sym(interp.intern("thaw")); let __t659 = { let __t658 = v_V445.clone(); rt::hd(&__t658)? }; rt::eq(&__t657, &__t659) }; if !rt::is_truthy(interp, &__t668)? { Value::bool(false) } else { let __t669 = { let __t666 = { let __t661 = { let __t660 = v_V445.clone(); rt::tl(&__t660)? }; rt::is_cons(&__t661) }; if !rt::is_truthy(interp, &__t666)? { Value::bool(false) } else { let __t667 = { let __t662 = Value::nil(); let __t665 = { let __t664 = { let __t663 = v_V445.clone(); rt::tl(&__t663)? }; rt::tl(&__t664)? }; rt::eq(&__t662, &__t665) }; Value::bool(rt::is_truthy(interp, &__t667)?) } }; Value::bool(rt::is_truthy(interp, &__t669)?) } }; Value::bool(rt::is_truthy(interp, &__t671)?) } }; if match rt::is_truthy(interp, &__t681) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t673 = { let __t672 = Value::sym(interp.intern("funcall")); rt::apply_direct(interp, "shen-cl.cl", &[__t672])? }; let __t680 = { let __t678 = { let __t676 = { let __t675 = { let __t674 = v_V445.clone(); rt::tl(&__t674)? }; rt::hd(&__t675)? }; let __t677 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t676, __t677])? }; let __t679 = Value::nil(); rt::cons(&__t678, &__t679) }; rt::cons(&__t673, &__t680) }); } else { { let __t655 = { let __t645 = { let __t626 = v_V445.clone(); rt::is_cons(&__t626) }; if !rt::is_truthy(interp, &__t645)? { Value::bool(false) } else { let __t646 = { let __t643 = { let __t627 = Value::sym(interp.intern("intern")); let __t629 = { let __t628 = v_V445.clone(); rt::hd(&__t628)? }; rt::eq(&__t627, &__t629) }; if !rt::is_truthy(interp, &__t643)? { Value::bool(false) } else { let __t644 = { let __t641 = { let __t631 = { let __t630 = v_V445.clone(); rt::tl(&__t630)? }; rt::is_cons(&__t631) }; if !rt::is_truthy(interp, &__t641)? { Value::bool(false) } else { let __t642 = { let __t639 = { let __t632 = Value::nil(); let __t635 = { let __t634 = { let __t633 = v_V445.clone(); rt::tl(&__t633)? }; rt::tl(&__t634)? }; rt::eq(&__t632, &__t635) }; if !rt::is_truthy(interp, &__t639)? { Value::bool(false) } else { let __t640 = { let __t638 = { let __t637 = { let __t636 = v_V445.clone(); rt::tl(&__t636)? }; rt::hd(&__t637)? }; rt::is_string(&__t638) }; Value::bool(rt::is_truthy(interp, &__t640)?) } }; Value::bool(rt::is_truthy(interp, &__t642)?) } }; Value::bool(rt::is_truthy(interp, &__t644)?) } }; Value::bool(rt::is_truthy(interp, &__t646)?) } }; if match rt::is_truthy(interp, &__t655) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t648 = { let __t647 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t647])? }; let __t654 = { let __t652 = { let __t651 = { let __t650 = { let __t649 = v_V445.clone(); rt::tl(&__t649)? }; rt::hd(&__t650)? }; rt::apply_direct(interp, "intern", &[__t651])? }; let __t653 = Value::nil(); rt::cons(&__t652, &__t653) }; rt::cons(&__t648, &__t654) }); } else { { let __t625 = { let __t619 = { let __t599 = v_V445.clone(); rt::is_cons(&__t599) }; if !rt::is_truthy(interp, &__t619)? { Value::bool(false) } else { let __t620 = { let __t617 = { let __t600 = Value::sym(interp.intern("type")); let __t602 = { let __t601 = v_V445.clone(); rt::hd(&__t601)? }; rt::eq(&__t600, &__t602) }; if !rt::is_truthy(interp, &__t617)? { Value::bool(false) } else { let __t618 = { let __t615 = { let __t604 = { let __t603 = v_V445.clone(); rt::tl(&__t603)? }; rt::is_cons(&__t604) }; if !rt::is_truthy(interp, &__t615)? { Value::bool(false) } else { let __t616 = { let __t613 = { let __t607 = { let __t606 = { let __t605 = v_V445.clone(); rt::tl(&__t605)? }; rt::tl(&__t606)? }; rt::is_cons(&__t607) }; if !rt::is_truthy(interp, &__t613)? { Value::bool(false) } else { let __t614 = { let __t608 = Value::nil(); let __t612 = { let __t611 = { let __t610 = { let __t609 = v_V445.clone(); rt::tl(&__t609)? }; rt::tl(&__t610)? }; rt::tl(&__t611)? }; rt::eq(&__t608, &__t612) }; Value::bool(rt::is_truthy(interp, &__t614)?) } }; Value::bool(rt::is_truthy(interp, &__t616)?) } }; Value::bool(rt::is_truthy(interp, &__t618)?) } }; Value::bool(rt::is_truthy(interp, &__t620)?) } }; if match rt::is_truthy(interp, &__t625) { Ok(b) => b, Err(e) => break Err(e), } { { let __t623 = { let __t622 = { let __t621 = v_V445.clone(); rt::tl(&__t621)? }; rt::hd(&__t622)? }; let __t624 = v_V446.clone(); v_V445 = __t623; v_V446 = __t624; continue; } } else { { let __t598 = { let __t578 = { let __t558 = v_V445.clone(); rt::is_cons(&__t558) }; if !rt::is_truthy(interp, &__t578)? { Value::bool(false) } else { let __t579 = { let __t576 = { let __t559 = Value::sym(interp.intern("lisp.lambda")); let __t561 = { let __t560 = v_V445.clone(); rt::hd(&__t560)? }; rt::eq(&__t559, &__t561) }; if !rt::is_truthy(interp, &__t576)? { Value::bool(false) } else { let __t577 = { let __t574 = { let __t563 = { let __t562 = v_V445.clone(); rt::tl(&__t562)? }; rt::is_cons(&__t563) }; if !rt::is_truthy(interp, &__t574)? { Value::bool(false) } else { let __t575 = { let __t572 = { let __t566 = { let __t565 = { let __t564 = v_V445.clone(); rt::tl(&__t564)? }; rt::tl(&__t565)? }; rt::is_cons(&__t566) }; if !rt::is_truthy(interp, &__t572)? { Value::bool(false) } else { let __t573 = { let __t567 = Value::nil(); let __t571 = { let __t570 = { let __t569 = { let __t568 = v_V445.clone(); rt::tl(&__t568)? }; rt::tl(&__t569)? }; rt::tl(&__t570)? }; rt::eq(&__t567, &__t571) }; Value::bool(rt::is_truthy(interp, &__t573)?) } }; Value::bool(rt::is_truthy(interp, &__t575)?) } }; Value::bool(rt::is_truthy(interp, &__t577)?) } }; Value::bool(rt::is_truthy(interp, &__t579)?) } }; if match rt::is_truthy(interp, &__t598) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t581 = { let __t580 = Value::sym(interp.intern("lambda")); rt::apply_direct(interp, "shen-cl.cl", &[__t580])? }; let __t597 = { let __t584 = { let __t583 = { let __t582 = v_V445.clone(); rt::tl(&__t582)? }; rt::hd(&__t583)? }; let __t596 = { let __t594 = { let __t588 = { let __t587 = { let __t586 = { let __t585 = v_V445.clone(); rt::tl(&__t585)? }; rt::tl(&__t586)? }; rt::hd(&__t587)? }; let __t593 = { let __t591 = { let __t590 = { let __t589 = v_V445.clone(); rt::tl(&__t589)? }; rt::hd(&__t590)? }; let __t592 = v_V446.clone(); rt::apply_direct(interp, "append", &[__t591, __t592])? }; rt::apply_direct(interp, "shen-cl.compile-expression", &[__t588, __t593])? }; let __t595 = Value::nil(); rt::cons(&__t594, &__t595) }; rt::cons(&__t584, &__t596) }; rt::cons(&__t581, &__t597) }); } else { { let __t557 = { let __t532 = { let __t505 = v_V445.clone(); rt::is_cons(&__t505) }; if !rt::is_truthy(interp, &__t532)? { Value::bool(false) } else { let __t533 = { let __t530 = { let __t506 = Value::sym(interp.intern("lisp.defun")); let __t508 = { let __t507 = v_V445.clone(); rt::hd(&__t507)? }; rt::eq(&__t506, &__t508) }; if !rt::is_truthy(interp, &__t530)? { Value::bool(false) } else { let __t531 = { let __t528 = { let __t510 = { let __t509 = v_V445.clone(); rt::tl(&__t509)? }; rt::is_cons(&__t510) }; if !rt::is_truthy(interp, &__t528)? { Value::bool(false) } else { let __t529 = { let __t526 = { let __t513 = { let __t512 = { let __t511 = v_V445.clone(); rt::tl(&__t511)? }; rt::tl(&__t512)? }; rt::is_cons(&__t513) }; if !rt::is_truthy(interp, &__t526)? { Value::bool(false) } else { let __t527 = { let __t524 = { let __t517 = { let __t516 = { let __t515 = { let __t514 = v_V445.clone(); rt::tl(&__t514)? }; rt::tl(&__t515)? }; rt::tl(&__t516)? }; rt::is_cons(&__t517) }; if !rt::is_truthy(interp, &__t524)? { Value::bool(false) } else { let __t525 = { let __t518 = Value::nil(); let __t523 = { let __t522 = { let __t521 = { let __t520 = { let __t519 = v_V445.clone(); rt::tl(&__t519)? }; rt::tl(&__t520)? }; rt::tl(&__t521)? }; rt::tl(&__t522)? }; rt::eq(&__t518, &__t523) }; Value::bool(rt::is_truthy(interp, &__t525)?) } }; Value::bool(rt::is_truthy(interp, &__t527)?) } }; Value::bool(rt::is_truthy(interp, &__t529)?) } }; Value::bool(rt::is_truthy(interp, &__t531)?) } }; Value::bool(rt::is_truthy(interp, &__t533)?) } }; if match rt::is_truthy(interp, &__t557) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t535 = { let __t534 = Value::sym(interp.intern("defun")); rt::apply_direct(interp, "shen-cl.cl", &[__t534])? }; let __t556 = { let __t538 = { let __t537 = { let __t536 = v_V445.clone(); rt::tl(&__t536)? }; rt::hd(&__t537)? }; let __t555 = { let __t542 = { let __t541 = { let __t540 = { let __t539 = v_V445.clone(); rt::tl(&__t539)? }; rt::tl(&__t540)? }; rt::hd(&__t541)? }; let __t554 = { let __t552 = { let __t547 = { let __t546 = { let __t545 = { let __t544 = { let __t543 = v_V445.clone(); rt::tl(&__t543)? }; rt::tl(&__t544)? }; rt::tl(&__t545)? }; rt::hd(&__t546)? }; let __t551 = { let __t550 = { let __t549 = { let __t548 = v_V445.clone(); rt::tl(&__t548)? }; rt::tl(&__t549)? }; rt::hd(&__t550)? }; rt::apply_direct(interp, "shen-cl.compile-expression", &[__t547, __t551])? }; let __t553 = Value::nil(); rt::cons(&__t552, &__t553) }; rt::cons(&__t542, &__t554) }; rt::cons(&__t538, &__t555) }; rt::cons(&__t535, &__t556) }); } else { { let __t504 = { let __t488 = { let __t468 = v_V445.clone(); rt::is_cons(&__t468) }; if !rt::is_truthy(interp, &__t488)? { Value::bool(false) } else { let __t489 = { let __t486 = { let __t469 = Value::sym(interp.intern("lisp.block")); let __t471 = { let __t470 = v_V445.clone(); rt::hd(&__t470)? }; rt::eq(&__t469, &__t471) }; if !rt::is_truthy(interp, &__t486)? { Value::bool(false) } else { let __t487 = { let __t484 = { let __t473 = { let __t472 = v_V445.clone(); rt::tl(&__t472)? }; rt::is_cons(&__t473) }; if !rt::is_truthy(interp, &__t484)? { Value::bool(false) } else { let __t485 = { let __t482 = { let __t476 = { let __t475 = { let __t474 = v_V445.clone(); rt::tl(&__t474)? }; rt::tl(&__t475)? }; rt::is_cons(&__t476) }; if !rt::is_truthy(interp, &__t482)? { Value::bool(false) } else { let __t483 = { let __t477 = Value::nil(); let __t481 = { let __t480 = { let __t479 = { let __t478 = v_V445.clone(); rt::tl(&__t478)? }; rt::tl(&__t479)? }; rt::tl(&__t480)? }; rt::eq(&__t477, &__t481) }; Value::bool(rt::is_truthy(interp, &__t483)?) } }; Value::bool(rt::is_truthy(interp, &__t485)?) } }; Value::bool(rt::is_truthy(interp, &__t487)?) } }; Value::bool(rt::is_truthy(interp, &__t489)?) } }; if match rt::is_truthy(interp, &__t504) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t491 = { let __t490 = Value::sym(interp.intern("block")); rt::apply_direct(interp, "shen-cl.cl", &[__t490])? }; let __t503 = { let __t494 = { let __t493 = { let __t492 = v_V445.clone(); rt::tl(&__t492)? }; rt::hd(&__t493)? }; let __t502 = { let __t500 = { let __t498 = { let __t497 = { let __t496 = { let __t495 = v_V445.clone(); rt::tl(&__t495)? }; rt::tl(&__t496)? }; rt::hd(&__t497)? }; let __t499 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t498, __t499])? }; let __t501 = Value::nil(); rt::cons(&__t500, &__t501) }; rt::cons(&__t494, &__t502) }; rt::cons(&__t491, &__t503) }); } else { { let __t467 = { let __t451 = { let __t431 = v_V445.clone(); rt::is_cons(&__t431) }; if !rt::is_truthy(interp, &__t451)? { Value::bool(false) } else { let __t452 = { let __t449 = { let __t432 = Value::sym(interp.intern("shen-cl.lisp.block")); let __t434 = { let __t433 = v_V445.clone(); rt::hd(&__t433)? }; rt::eq(&__t432, &__t434) }; if !rt::is_truthy(interp, &__t449)? { Value::bool(false) } else { let __t450 = { let __t447 = { let __t436 = { let __t435 = v_V445.clone(); rt::tl(&__t435)? }; rt::is_cons(&__t436) }; if !rt::is_truthy(interp, &__t447)? { Value::bool(false) } else { let __t448 = { let __t445 = { let __t439 = { let __t438 = { let __t437 = v_V445.clone(); rt::tl(&__t437)? }; rt::tl(&__t438)? }; rt::is_cons(&__t439) }; if !rt::is_truthy(interp, &__t445)? { Value::bool(false) } else { let __t446 = { let __t440 = Value::nil(); let __t444 = { let __t443 = { let __t442 = { let __t441 = v_V445.clone(); rt::tl(&__t441)? }; rt::tl(&__t442)? }; rt::tl(&__t443)? }; rt::eq(&__t440, &__t444) }; Value::bool(rt::is_truthy(interp, &__t446)?) } }; Value::bool(rt::is_truthy(interp, &__t448)?) } }; Value::bool(rt::is_truthy(interp, &__t450)?) } }; Value::bool(rt::is_truthy(interp, &__t452)?) } }; if match rt::is_truthy(interp, &__t467) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t454 = { let __t453 = Value::sym(interp.intern("block")); rt::apply_direct(interp, "shen-cl.cl", &[__t453])? }; let __t466 = { let __t457 = { let __t456 = { let __t455 = v_V445.clone(); rt::tl(&__t455)? }; rt::hd(&__t456)? }; let __t465 = { let __t463 = { let __t461 = { let __t460 = { let __t459 = { let __t458 = v_V445.clone(); rt::tl(&__t458)? }; rt::tl(&__t459)? }; rt::hd(&__t460)? }; let __t462 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t461, __t462])? }; let __t464 = Value::nil(); rt::cons(&__t463, &__t464) }; rt::cons(&__t457, &__t465) }; rt::cons(&__t454, &__t466) }); } else { { let __t430 = { let __t413 = { let __t399 = v_V445.clone(); rt::is_cons(&__t399) }; if !rt::is_truthy(interp, &__t413)? { Value::bool(false) } else { let __t414 = { let __t411 = { let __t400 = Value::sym(interp.intern("lisp.")); let __t402 = { let __t401 = v_V445.clone(); rt::hd(&__t401)? }; rt::eq(&__t400, &__t402) }; if !rt::is_truthy(interp, &__t411)? { Value::bool(false) } else { let __t412 = { let __t409 = { let __t404 = { let __t403 = v_V445.clone(); rt::tl(&__t403)? }; rt::is_cons(&__t404) }; if !rt::is_truthy(interp, &__t409)? { Value::bool(false) } else { let __t410 = { let __t405 = Value::nil(); let __t408 = { let __t407 = { let __t406 = v_V445.clone(); rt::tl(&__t406)? }; rt::tl(&__t407)? }; rt::eq(&__t405, &__t408) }; Value::bool(rt::is_truthy(interp, &__t410)?) } }; Value::bool(rt::is_truthy(interp, &__t412)?) } }; Value::bool(rt::is_truthy(interp, &__t414)?) } }; if match rt::is_truthy(interp, &__t430) { Ok(b) => b, Err(e) => break Err(e), } { { let __t418 = { let __t417 = { let __t416 = { let __t415 = v_V445.clone(); rt::tl(&__t415)? }; rt::hd(&__t416)? }; rt::is_string(&__t417) }; if match rt::is_truthy(interp, &__t418) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t421 = { let __t420 = { let __t419 = v_V445.clone(); rt::tl(&__t419)? }; rt::hd(&__t420)? }; rt::apply_direct(interp, "READ-FROM-STRING", &[__t421])? }); } else { break Ok({ let __t429 = { let __t422 = Value::str("lisp. excepts a string, not "); let __t428 = { let __t425 = { let __t424 = { let __t423 = v_V445.clone(); rt::tl(&__t423)? }; rt::hd(&__t424)? }; let __t426 = Value::str(""); let __t427 = Value::sym(interp.intern("shen.a")); rt::apply_direct(interp, "shen.app", &[__t425, __t426, __t427])? }; rt::apply_direct(interp, "cn", &[__t422, __t428])? }; rt::apply_direct(interp, "simple-error", &[__t429])? }); } } } else { { let __t398 = { let __t387 = { let __t373 = v_V445.clone(); rt::is_cons(&__t373) }; if !rt::is_truthy(interp, &__t387)? { Value::bool(false) } else { let __t388 = { let __t385 = { let __t374 = Value::sym(interp.intern("%%return")); let __t376 = { let __t375 = v_V445.clone(); rt::hd(&__t375)? }; rt::eq(&__t374, &__t376) }; if !rt::is_truthy(interp, &__t385)? { Value::bool(false) } else { let __t386 = { let __t383 = { let __t378 = { let __t377 = v_V445.clone(); rt::tl(&__t377)? }; rt::is_cons(&__t378) }; if !rt::is_truthy(interp, &__t383)? { Value::bool(false) } else { let __t384 = { let __t379 = Value::nil(); let __t382 = { let __t381 = { let __t380 = v_V445.clone(); rt::tl(&__t380)? }; rt::tl(&__t381)? }; rt::eq(&__t379, &__t382) }; Value::bool(rt::is_truthy(interp, &__t384)?) } }; Value::bool(rt::is_truthy(interp, &__t386)?) } }; Value::bool(rt::is_truthy(interp, &__t388)?) } }; if match rt::is_truthy(interp, &__t398) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t390 = { let __t389 = Value::sym(interp.intern("return")); rt::apply_direct(interp, "shen-cl.cl", &[__t389])? }; let __t397 = { let __t395 = { let __t393 = { let __t392 = { let __t391 = v_V445.clone(); rt::tl(&__t391)? }; rt::hd(&__t392)? }; let __t394 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t393, __t394])? }; let __t396 = Value::nil(); rt::cons(&__t395, &__t396) }; rt::cons(&__t390, &__t397) }); } else { { let __t372 = { let __t363 = { let __t355 = v_V445.clone(); rt::is_cons(&__t355) }; if !rt::is_truthy(interp, &__t363)? { Value::bool(false) } else { let __t364 = { let __t361 = { let __t356 = Value::sym(interp.intern("%%goto-label")); let __t358 = { let __t357 = v_V445.clone(); rt::hd(&__t357)? }; rt::eq(&__t356, &__t358) }; if !rt::is_truthy(interp, &__t361)? { Value::bool(false) } else { let __t362 = { let __t360 = { let __t359 = v_V445.clone(); rt::tl(&__t359)? }; rt::is_cons(&__t360) }; Value::bool(rt::is_truthy(interp, &__t362)?) } }; Value::bool(rt::is_truthy(interp, &__t364)?) } }; if match rt::is_truthy(interp, &__t372) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t366 = { let __t365 = Value::sym(interp.intern("go")); rt::apply_direct(interp, "shen-cl.cl", &[__t365])? }; let __t371 = { let __t369 = { let __t368 = { let __t367 = v_V445.clone(); rt::tl(&__t367)? }; rt::hd(&__t368)? }; let __t370 = Value::nil(); rt::cons(&__t369, &__t370) }; rt::cons(&__t366, &__t371) }); } else { { let __t354 = { let __t329 = { let __t297 = v_V445.clone(); rt::is_cons(&__t297) }; if !rt::is_truthy(interp, &__t329)? { Value::bool(false) } else { let __t330 = { let __t327 = { let __t298 = Value::sym(interp.intern("%%let-label")); let __t300 = { let __t299 = v_V445.clone(); rt::hd(&__t299)? }; rt::eq(&__t298, &__t300) }; if !rt::is_truthy(interp, &__t327)? { Value::bool(false) } else { let __t328 = { let __t325 = { let __t302 = { let __t301 = v_V445.clone(); rt::tl(&__t301)? }; rt::is_cons(&__t302) }; if !rt::is_truthy(interp, &__t325)? { Value::bool(false) } else { let __t326 = { let __t323 = { let __t305 = { let __t304 = { let __t303 = v_V445.clone(); rt::tl(&__t303)? }; rt::hd(&__t304)? }; rt::is_cons(&__t305) }; if !rt::is_truthy(interp, &__t323)? { Value::bool(false) } else { let __t324 = { let __t321 = { let __t308 = { let __t307 = { let __t306 = v_V445.clone(); rt::tl(&__t306)? }; rt::tl(&__t307)? }; rt::is_cons(&__t308) }; if !rt::is_truthy(interp, &__t321)? { Value::bool(false) } else { let __t322 = { let __t319 = { let __t312 = { let __t311 = { let __t310 = { let __t309 = v_V445.clone(); rt::tl(&__t309)? }; rt::tl(&__t310)? }; rt::tl(&__t311)? }; rt::is_cons(&__t312) }; if !rt::is_truthy(interp, &__t319)? { Value::bool(false) } else { let __t320 = { let __t313 = Value::nil(); let __t318 = { let __t317 = { let __t316 = { let __t315 = { let __t314 = v_V445.clone(); rt::tl(&__t314)? }; rt::tl(&__t315)? }; rt::tl(&__t316)? }; rt::tl(&__t317)? }; rt::eq(&__t313, &__t318) }; Value::bool(rt::is_truthy(interp, &__t320)?) } }; Value::bool(rt::is_truthy(interp, &__t322)?) } }; Value::bool(rt::is_truthy(interp, &__t324)?) } }; Value::bool(rt::is_truthy(interp, &__t326)?) } }; Value::bool(rt::is_truthy(interp, &__t328)?) } }; Value::bool(rt::is_truthy(interp, &__t330)?) } }; if match rt::is_truthy(interp, &__t354) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t332 = { let __t331 = Value::sym(interp.intern("tagbody")); rt::apply_direct(interp, "shen-cl.cl", &[__t331])? }; let __t353 = { let __t339 = { let __t337 = { let __t336 = { let __t335 = { let __t334 = { let __t333 = v_V445.clone(); rt::tl(&__t333)? }; rt::tl(&__t334)? }; rt::tl(&__t335)? }; rt::hd(&__t336)? }; let __t338 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t337, __t338])? }; let __t352 = { let __t343 = { let __t342 = { let __t341 = { let __t340 = v_V445.clone(); rt::tl(&__t340)? }; rt::hd(&__t341)? }; rt::hd(&__t342)? }; let __t351 = { let __t349 = { let __t347 = { let __t346 = { let __t345 = { let __t344 = v_V445.clone(); rt::tl(&__t344)? }; rt::tl(&__t345)? }; rt::hd(&__t346)? }; let __t348 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t347, __t348])? }; let __t350 = Value::nil(); rt::cons(&__t349, &__t350) }; rt::cons(&__t343, &__t351) }; rt::cons(&__t339, &__t352) }; rt::cons(&__t332, &__t353) }); } else { { let __t296 = { let __t290 = v_V445.clone(); rt::is_cons(&__t290) }; if match rt::is_truthy(interp, &__t296) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t292 = { let __t291 = v_V445.clone(); rt::hd(&__t291)? }; let __t294 = { let __t293 = v_V445.clone(); rt::tl(&__t293)? }; let __t295 = v_V446.clone(); rt::apply_direct(interp, "shen-cl.emit-application", &[__t292, __t294, __t295])? }); } else { { let __t289 = Value::bool(true); if match rt::is_truthy(interp, &__t289) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V445.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_compile_x2d_expression(interp: &mut Interp) { - interp.register_native( - "shen-cl.compile-expression", - 2, - aot_shen_x2d_cl_x2e_compile_x2d_expression, - ); - interp.register_aot_direct( - "shen-cl.compile-expression", - aot_shen_x2d_cl_x2e_compile_x2d_expression, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.optimise-boolean-check ...)` -pub fn aot_shen_x2d_cl_x2e_optimise_x2d_boolean_x2d_check( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.optimise-boolean-check: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V447 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1903 = { - let __t1897 = { - let __t1883 = v_V447.clone(); - rt::is_cons(&__t1883) - }; - if !rt::is_truthy(interp, &__t1897)? { - Value::bool(false) - } else { - let __t1898 = { - let __t1895 = { - let __t1884 = Value::sym(interp.intern("cons?")); - let __t1886 = { - let __t1885 = v_V447.clone(); - rt::hd(&__t1885)? - }; - rt::eq(&__t1884, &__t1886) - }; - if !rt::is_truthy(interp, &__t1895)? { - Value::bool(false) - } else { - let __t1896 = { - let __t1893 = { - let __t1888 = { - let __t1887 = v_V447.clone(); - rt::tl(&__t1887)? - }; - rt::is_cons(&__t1888) - }; - if !rt::is_truthy(interp, &__t1893)? { - Value::bool(false) - } else { - let __t1894 = { - let __t1889 = Value::nil(); - let __t1892 = { - let __t1891 = { - let __t1890 = v_V447.clone(); - rt::tl(&__t1890)? - }; - rt::tl(&__t1891)? - }; - rt::eq(&__t1889, &__t1892) - }; - Value::bool(rt::is_truthy(interp, &__t1894)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1896)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1898)?) - } - }; - if match rt::is_truthy(interp, &__t1903) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1900 = { - let __t1899 = Value::sym(interp.intern("consp")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1899])? - }; - let __t1902 = { - let __t1901 = v_V447.clone(); - rt::tl(&__t1901)? - }; - rt::cons(&__t1900, &__t1902) - }); - } else { - { - let __t1882 = { - let __t1876 = { - let __t1862 = v_V447.clone(); - rt::is_cons(&__t1862) - }; - if !rt::is_truthy(interp, &__t1876)? { - Value::bool(false) - } else { - let __t1877 = { - let __t1874 = { - let __t1863 = Value::sym(interp.intern("string?")); - let __t1865 = { - let __t1864 = v_V447.clone(); - rt::hd(&__t1864)? - }; - rt::eq(&__t1863, &__t1865) - }; - if !rt::is_truthy(interp, &__t1874)? { - Value::bool(false) - } else { - let __t1875 = { - let __t1872 = { - let __t1867 = { - let __t1866 = v_V447.clone(); - rt::tl(&__t1866)? - }; - rt::is_cons(&__t1867) - }; - if !rt::is_truthy(interp, &__t1872)? { - Value::bool(false) - } else { - let __t1873 = { - let __t1868 = Value::nil(); - let __t1871 = { - let __t1870 = { - let __t1869 = v_V447.clone(); - rt::tl(&__t1869)? - }; - rt::tl(&__t1870)? - }; - rt::eq(&__t1868, &__t1871) - }; - Value::bool(rt::is_truthy(interp, &__t1873)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1875)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1877)?) - } - }; - if match rt::is_truthy(interp, &__t1882) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1879 = { - let __t1878 = Value::sym(interp.intern("stringp")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1878])? - }; - let __t1881 = { - let __t1880 = v_V447.clone(); - rt::tl(&__t1880)? - }; - rt::cons(&__t1879, &__t1881) - }); - } else { - { - let __t1861 = { - let __t1855 = { - let __t1841 = v_V447.clone(); - rt::is_cons(&__t1841) - }; - if !rt::is_truthy(interp, &__t1855)? { - Value::bool(false) - } else { - let __t1856 = { - let __t1853 = { - let __t1842 = Value::sym(interp.intern("number?")); - let __t1844 = { - let __t1843 = v_V447.clone(); - rt::hd(&__t1843)? - }; - rt::eq(&__t1842, &__t1844) - }; - if !rt::is_truthy(interp, &__t1853)? { - Value::bool(false) - } else { - let __t1854 = { - let __t1851 = { - let __t1846 = { - let __t1845 = v_V447.clone(); - rt::tl(&__t1845)? - }; - rt::is_cons(&__t1846) - }; - if !rt::is_truthy(interp, &__t1851)? { - Value::bool(false) - } else { - let __t1852 = { - let __t1847 = Value::nil(); - let __t1850 = { - let __t1849 = { - let __t1848 = v_V447.clone(); - rt::tl(&__t1848)? - }; - rt::tl(&__t1849)? - }; - rt::eq(&__t1847, &__t1850) - }; - Value::bool(rt::is_truthy(interp, &__t1852)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1854)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1856)?) - } - }; - if match rt::is_truthy(interp, &__t1861) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1858 = { - let __t1857 = Value::sym(interp.intern("numberp")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1857])? - }; - let __t1860 = { - let __t1859 = v_V447.clone(); - rt::tl(&__t1859)? - }; - rt::cons(&__t1858, &__t1860) - }); - } else { - { - let __t1840 = { - let __t1834 = { - let __t1820 = v_V447.clone(); - rt::is_cons(&__t1820) - }; - if !rt::is_truthy(interp, &__t1834)? { - Value::bool(false) - } else { - let __t1835 = { - let __t1832 = { - let __t1821 = - Value::sym(interp.intern("empty?")); - let __t1823 = { - let __t1822 = v_V447.clone(); - rt::hd(&__t1822)? - }; - rt::eq(&__t1821, &__t1823) - }; - if !rt::is_truthy(interp, &__t1832)? { - Value::bool(false) - } else { - let __t1833 = { - let __t1830 = { - let __t1825 = { - let __t1824 = v_V447.clone(); - rt::tl(&__t1824)? - }; - rt::is_cons(&__t1825) - }; - if !rt::is_truthy(interp, &__t1830)? { - Value::bool(false) - } else { - let __t1831 = { - let __t1826 = Value::nil(); - let __t1829 = { - let __t1828 = { - let __t1827 = - v_V447.clone(); - rt::tl(&__t1827)? - }; - rt::tl(&__t1828)? - }; - rt::eq(&__t1826, &__t1829) - }; - Value::bool(rt::is_truthy( - interp, &__t1831, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1833)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1835)?) - } - }; - if match rt::is_truthy(interp, &__t1840) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1837 = { - let __t1836 = Value::sym(interp.intern("null")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1836])? - }; - let __t1839 = { - let __t1838 = v_V447.clone(); - rt::tl(&__t1838)? - }; - rt::cons(&__t1837, &__t1839) - }); - } else { - { - let __t1819 = { - let __t1803 = { - let __t1783 = v_V447.clone(); - rt::is_cons(&__t1783) - }; - if !rt::is_truthy(interp, &__t1803)? { - Value::bool(false) - } else { - let __t1804 = { - let __t1801 = { - let __t1784 = - Value::sym(interp.intern("and")); - let __t1786 = { - let __t1785 = v_V447.clone(); - rt::hd(&__t1785)? - }; - rt::eq(&__t1784, &__t1786) - }; - if !rt::is_truthy(interp, &__t1801)? { - Value::bool(false) - } else { - let __t1802 = { - let __t1799 = { - let __t1788 = { - let __t1787 = - v_V447.clone(); - rt::tl(&__t1787)? - }; - rt::is_cons(&__t1788) - }; - if !rt::is_truthy(interp, &__t1799)? - { - Value::bool(false) - } else { - let __t1800 = { - let __t1797 = { - let __t1791 = { - let __t1790 = { - let __t1789 = - v_V447 - .clone( - ); - rt::tl( - &__t1789, - )? - }; - rt::tl(&__t1790)? - }; - rt::is_cons(&__t1791) - }; - if !rt::is_truthy( - interp, &__t1797, - )? { - Value::bool(false) - } else { - let __t1798 = { - let __t1792 = - Value::nil(); - let __t1796 = { - let __t1795 = { - let __t1794 = { - let __t1793 = v_V447.clone(); - rt::tl(&__t1793)? - }; - rt::tl(&__t1794)? - }; - rt::tl( - &__t1795, - )? - }; - rt::eq( - &__t1792, - &__t1796, - ) - }; - Value::bool( - rt::is_truthy( - interp, - &__t1798, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1800, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1802, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1804)?) - } - }; - if match rt::is_truthy(interp, &__t1819) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1806 = { - let __t1805 = - Value::sym(interp.intern("and")); - rt::apply_direct( - interp, - "shen-cl.cl", - &[__t1805], - )? - }; - let __t1818 = { - let __t1810 = { - let __t1809 = { - let __t1808 = { - let __t1807 = v_V447.clone(); - rt::tl(&__t1807)? - }; - rt::hd(&__t1808)? - }; - rt::apply_direct( - interp, - "shen-cl.optimise-boolean-check", - &[__t1809], - )? - }; - let __t1817 = { - let __t1815 = { - let __t1814 = { - let __t1813 = { - let __t1812 = { - let __t1811 = - v_V447.clone(); - rt::tl(&__t1811)? - }; - rt::tl(&__t1812)? - }; - rt::hd(&__t1813)? - }; - rt::apply_direct(interp, "shen-cl.optimise-boolean-check", &[__t1814])? - }; - let __t1816 = Value::nil(); - rt::cons(&__t1815, &__t1816) - }; - rt::cons(&__t1810, &__t1817) - }; - rt::cons(&__t1806, &__t1818) - }); - } else { - { - let __t1782 = { - let __t1766 = { - let __t1746 = v_V447.clone(); - rt::is_cons(&__t1746) - }; - if !rt::is_truthy(interp, &__t1766)? { - Value::bool(false) - } else { - let __t1767 = { - let __t1764 = { - let __t1747 = Value::sym( - interp.intern("or"), - ); - let __t1749 = { - let __t1748 = - v_V447.clone(); - rt::hd(&__t1748)? - }; - rt::eq(&__t1747, &__t1749) - }; - if !rt::is_truthy(interp, &__t1764)? - { - Value::bool(false) - } else { - let __t1765 = { - let __t1762 = { - let __t1751 = { - let __t1750 = - v_V447.clone(); - rt::tl(&__t1750)? - }; - rt::is_cons(&__t1751) - }; - if !rt::is_truthy( - interp, &__t1762, - )? { - Value::bool(false) - } else { - let __t1763 = { - let __t1760 = { - let __t1754 = { - let __t1753 = { - let __t1752 = v_V447.clone(); - rt::tl(&__t1752)? - }; - rt::tl(&__t1753)? - }; - rt::is_cons( - &__t1754, - ) - }; - if !rt::is_truthy( - interp, - &__t1760, - )? { - Value::bool( - false, - ) - } else { - let __t1761 = { - let __t1755 = Value::nil(); - let __t1759 = { - let __t1758 = { - let __t1757 = { let __t1756 = v_V447.clone(); rt::tl(&__t1756)? }; - rt::tl(&__t1757)? - }; - rt::tl(&__t1758)? - }; - rt::eq(&__t1755, &__t1759) - }; - Value::bool(rt::is_truthy(interp, &__t1761)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t1763, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1765, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1767, - )?) - } - }; - if match rt::is_truthy(interp, &__t1782) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1769 = { - let __t1768 = - Value::sym(interp.intern("or")); - rt::apply_direct( - interp, - "shen-cl.cl", - &[__t1768], - )? - }; - let __t1781 = { - let __t1773 = { - let __t1772 = { - let __t1771 = { - let __t1770 = - v_V447.clone(); - rt::tl(&__t1770)? - }; - rt::hd(&__t1771)? - }; - rt::apply_direct(interp, "shen-cl.optimise-boolean-check", &[__t1772])? - }; - let __t1780 = { - let __t1778 = { - let __t1777 = { - let __t1776 = { - let __t1775 = { - let __t1774 = - v_V447 - .clone( - ); - rt::tl( - &__t1774, - )? - }; - rt::tl(&__t1775)? - }; - rt::hd(&__t1776)? - }; - rt::apply_direct(interp, "shen-cl.optimise-boolean-check", &[__t1777])? - }; - let __t1779 = Value::nil(); - rt::cons(&__t1778, &__t1779) - }; - rt::cons(&__t1773, &__t1780) - }; - rt::cons(&__t1769, &__t1781) - }); - } else { - { - let __t1745 = { - let __t1735 = { - let __t1721 = v_V447.clone(); - rt::is_cons(&__t1721) - }; - if !rt::is_truthy(interp, &__t1735)? - { - Value::bool(false) - } else { - let __t1736 = { - let __t1733 = { - let __t1722 = - Value::sym( - interp.intern( - "not", - ), - ); - let __t1724 = { - let __t1723 = - v_V447.clone(); - rt::hd(&__t1723)? - }; - rt::eq( - &__t1722, &__t1724, - ) - }; - if !rt::is_truthy( - interp, &__t1733, - )? { - Value::bool(false) - } else { - let __t1734 = { - let __t1731 = { - let __t1726 = { - let __t1725 = v_V447.clone(); - rt::tl(&__t1725)? - }; - rt::is_cons( - &__t1726, - ) - }; - if !rt::is_truthy( - interp, - &__t1731, - )? { - Value::bool( - false, - ) - } else { - let __t1732 = { - let __t1727 = Value::nil(); - let __t1730 = { - let __t1729 = { - let __t1728 = v_V447.clone(); - rt::tl(&__t1728)? - }; - rt::tl(&__t1729)? - }; - rt::eq(&__t1727, &__t1730) - }; - Value::bool(rt::is_truthy(interp, &__t1732)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t1734, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t1736, - )?) - } - }; - if match rt::is_truthy(interp, &__t1745) - { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1738 = { - let __t1737 = Value::sym( - interp.intern("not"), - ); - rt::apply_direct( - interp, - "shen-cl.cl", - &[__t1737], - )? - }; - let __t1744 = { - let __t1742 = { - let __t1741 = { - let __t1740 = { - let __t1739 = - v_V447 - .clone( - ); - rt::tl( - &__t1739, - )? - }; - rt::hd(&__t1740)? - }; - rt::apply_direct(interp, "shen-cl.optimise-boolean-check", &[__t1741])? - }; - let __t1743 = Value::nil(); - rt::cons(&__t1742, &__t1743) - }; - rt::cons(&__t1738, &__t1744) - }); - } else { - { - let __t1720 = { - let __t1711 = { - let __t1651 = - v_V447.clone(); - rt::is_cons(&__t1651) - }; - if !rt::is_truthy( - interp, &__t1711, - )? { - Value::bool(false) - } else { - let __t1712 = { - let __t1709 = { - let __t1652 = Value::sym(interp.intern("shen-cl.equal?")); - let __t1654 = { - let __t1653 = v_V447.clone(); - rt::hd(&__t1653)? - }; - rt::eq( - &__t1652, - &__t1654, - ) - }; - if !rt::is_truthy( - interp, - &__t1709, - )? { - Value::bool( - false, - ) - } else { - let __t1710 = { - let __t1707 = { - let __t1656 = { - let __t1655 = v_V447.clone(); - rt::tl(&__t1655)? - }; - rt::is_cons(&__t1656) - }; - if !rt::is_truthy(interp, &__t1707)? { Value::bool(false) } else { let __t1708 = { let __t1705 = { let __t1659 = { let __t1658 = { let __t1657 = v_V447.clone(); rt::tl(&__t1657)? }; rt::tl(&__t1658)? }; rt::is_cons(&__t1659) }; if !rt::is_truthy(interp, &__t1705)? { Value::bool(false) } else { let __t1706 = { let __t1703 = { let __t1663 = { let __t1662 = { let __t1661 = { let __t1660 = v_V447.clone(); rt::tl(&__t1660)? }; rt::tl(&__t1661)? }; rt::hd(&__t1662)? }; rt::is_cons(&__t1663) }; if !rt::is_truthy(interp, &__t1703)? { Value::bool(false) } else { let __t1704 = { let __t1701 = { let __t1668 = { let __t1667 = { let __t1666 = { let __t1665 = { let __t1664 = v_V447.clone(); rt::tl(&__t1664)? }; rt::tl(&__t1665)? }; rt::hd(&__t1666)? }; rt::tl(&__t1667)? }; rt::is_cons(&__t1668) }; if !rt::is_truthy(interp, &__t1701)? { Value::bool(false) } else { let __t1702 = { let __t1699 = { let __t1669 = Value::nil(); let __t1675 = { let __t1674 = { let __t1673 = { let __t1672 = { let __t1671 = { let __t1670 = v_V447.clone(); rt::tl(&__t1670)? }; rt::tl(&__t1671)? }; rt::hd(&__t1672)? }; rt::tl(&__t1673)? }; rt::hd(&__t1674)? }; rt::eq(&__t1669, &__t1675) }; if !rt::is_truthy(interp, &__t1699)? { Value::bool(false) } else { let __t1700 = { let __t1697 = { let __t1676 = Value::nil(); let __t1682 = { let __t1681 = { let __t1680 = { let __t1679 = { let __t1678 = { let __t1677 = v_V447.clone(); rt::tl(&__t1677)? }; rt::tl(&__t1678)? }; rt::hd(&__t1679)? }; rt::tl(&__t1680)? }; rt::tl(&__t1681)? }; rt::eq(&__t1676, &__t1682) }; if !rt::is_truthy(interp, &__t1697)? { Value::bool(false) } else { let __t1698 = { let __t1695 = { let __t1683 = Value::nil(); let __t1687 = { let __t1686 = { let __t1685 = { let __t1684 = v_V447.clone(); rt::tl(&__t1684)? }; rt::tl(&__t1685)? }; rt::tl(&__t1686)? }; rt::eq(&__t1683, &__t1687) }; if !rt::is_truthy(interp, &__t1695)? { Value::bool(false) } else { let __t1696 = { let __t1692 = { let __t1691 = { let __t1690 = { let __t1689 = { let __t1688 = v_V447.clone(); rt::tl(&__t1688)? }; rt::tl(&__t1689)? }; rt::hd(&__t1690)? }; rt::hd(&__t1691)? }; let __t1694 = { let __t1693 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1693])? }; rt::eq(&__t1692, &__t1694) }; Value::bool(rt::is_truthy(interp, &__t1696)?) } }; Value::bool(rt::is_truthy(interp, &__t1698)?) } }; Value::bool(rt::is_truthy(interp, &__t1700)?) } }; Value::bool(rt::is_truthy(interp, &__t1702)?) } }; Value::bool(rt::is_truthy(interp, &__t1704)?) } }; Value::bool(rt::is_truthy(interp, &__t1706)?) } }; Value::bool(rt::is_truthy(interp, &__t1708)?) } - }; - Value::bool(rt::is_truthy(interp, &__t1710)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t1712, - )?, - ) - } - }; - if match rt::is_truthy( - interp, &__t1720, - ) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1714 = { - let __t1713 = - Value::sym( - interp - .intern( - "null", - ), - ); - rt::apply_direct( - interp, - "shen-cl.cl", - &[__t1713], - )? - }; - let __t1719 = { - let __t1717 = { - let __t1716 = { - let __t1715 = v_V447.clone(); - rt::tl(&__t1715)? - }; - rt::hd( - &__t1716, - )? - }; - let __t1718 = - Value::nil(); - rt::cons( - &__t1717, - &__t1718, - ) - }; - rt::cons( - &__t1714, &__t1719, - ) - }); - } else { - { - let __t1650 = { - let __t1643 = { - let __t1588 = - v_V447 - .clone( - ); - rt::is_cons( - &__t1588, - ) - }; - if !rt::is_truthy( - interp, - &__t1643, - )? { - Value::bool( - false, - ) - } else { - let __t1644 = { - let __t1641 = { - let __t1589 = Value::sym(interp.intern("shen-cl.equal?")); - let __t1591 = { - let __t1590 = v_V447.clone(); - rt::hd(&__t1590)? - }; - rt::eq(&__t1589, &__t1591) - }; - if !rt::is_truthy(interp, &__t1641)? { Value::bool(false) } else { let __t1642 = { let __t1639 = { let __t1593 = { let __t1592 = v_V447.clone(); rt::tl(&__t1592)? }; rt::is_cons(&__t1593) }; if !rt::is_truthy(interp, &__t1639)? { Value::bool(false) } else { let __t1640 = { let __t1637 = { let __t1596 = { let __t1595 = { let __t1594 = v_V447.clone(); rt::tl(&__t1594)? }; rt::hd(&__t1595)? }; rt::is_cons(&__t1596) }; if !rt::is_truthy(interp, &__t1637)? { Value::bool(false) } else { let __t1638 = { let __t1635 = { let __t1600 = { let __t1599 = { let __t1598 = { let __t1597 = v_V447.clone(); rt::tl(&__t1597)? }; rt::hd(&__t1598)? }; rt::tl(&__t1599)? }; rt::is_cons(&__t1600) }; if !rt::is_truthy(interp, &__t1635)? { Value::bool(false) } else { let __t1636 = { let __t1633 = { let __t1601 = Value::nil(); let __t1606 = { let __t1605 = { let __t1604 = { let __t1603 = { let __t1602 = v_V447.clone(); rt::tl(&__t1602)? }; rt::hd(&__t1603)? }; rt::tl(&__t1604)? }; rt::hd(&__t1605)? }; rt::eq(&__t1601, &__t1606) }; if !rt::is_truthy(interp, &__t1633)? { Value::bool(false) } else { let __t1634 = { let __t1631 = { let __t1607 = Value::nil(); let __t1612 = { let __t1611 = { let __t1610 = { let __t1609 = { let __t1608 = v_V447.clone(); rt::tl(&__t1608)? }; rt::hd(&__t1609)? }; rt::tl(&__t1610)? }; rt::tl(&__t1611)? }; rt::eq(&__t1607, &__t1612) }; if !rt::is_truthy(interp, &__t1631)? { Value::bool(false) } else { let __t1632 = { let __t1629 = { let __t1615 = { let __t1614 = { let __t1613 = v_V447.clone(); rt::tl(&__t1613)? }; rt::tl(&__t1614)? }; rt::is_cons(&__t1615) }; if !rt::is_truthy(interp, &__t1629)? { Value::bool(false) } else { let __t1630 = { let __t1627 = { let __t1616 = Value::nil(); let __t1620 = { let __t1619 = { let __t1618 = { let __t1617 = v_V447.clone(); rt::tl(&__t1617)? }; rt::tl(&__t1618)? }; rt::tl(&__t1619)? }; rt::eq(&__t1616, &__t1620) }; if !rt::is_truthy(interp, &__t1627)? { Value::bool(false) } else { let __t1628 = { let __t1624 = { let __t1623 = { let __t1622 = { let __t1621 = v_V447.clone(); rt::tl(&__t1621)? }; rt::hd(&__t1622)? }; rt::hd(&__t1623)? }; let __t1626 = { let __t1625 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1625])? }; rt::eq(&__t1624, &__t1626) }; Value::bool(rt::is_truthy(interp, &__t1628)?) } }; Value::bool(rt::is_truthy(interp, &__t1630)?) } }; Value::bool(rt::is_truthy(interp, &__t1632)?) } }; Value::bool(rt::is_truthy(interp, &__t1634)?) } }; Value::bool(rt::is_truthy(interp, &__t1636)?) } }; Value::bool(rt::is_truthy(interp, &__t1638)?) } }; Value::bool(rt::is_truthy(interp, &__t1640)?) } }; Value::bool(rt::is_truthy(interp, &__t1642)?) } - }; - Value::bool(rt::is_truthy(interp, &__t1644)?) - } - }; - if match rt::is_truthy( - interp, &__t1650, - ) { - Ok(b) => b, - Err(e) => { - break Err(e) - } - } { - break Ok({ - let __t1646 = { - let __t1645 = Value::sym(interp.intern("null")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1645])? - }; - let __t1649 = { - let __t1648 = { - let __t1647 = v_V447.clone(); - rt::tl(&__t1647)? - }; - rt::tl(&__t1648)? - }; - rt::cons( - &__t1646, - &__t1649, - ) - }); - } else { - { - let __t1587 = { - let __t1581 = { - let __t1542 = v_V447.clone(); - rt::is_cons(&__t1542) - }; - if !rt::is_truthy(interp, &__t1581)? { Value::bool(false) } else { let __t1582 = { let __t1579 = { let __t1543 = Value::sym(interp.intern("shen-cl.equal?")); let __t1545 = { let __t1544 = v_V447.clone(); rt::hd(&__t1544)? }; rt::eq(&__t1543, &__t1545) }; if !rt::is_truthy(interp, &__t1579)? { Value::bool(false) } else { let __t1580 = { let __t1577 = { let __t1547 = { let __t1546 = v_V447.clone(); rt::tl(&__t1546)? }; rt::is_cons(&__t1547) }; if !rt::is_truthy(interp, &__t1577)? { Value::bool(false) } else { let __t1578 = { let __t1575 = { let __t1550 = { let __t1549 = { let __t1548 = v_V447.clone(); rt::tl(&__t1548)? }; rt::hd(&__t1549)? }; rt::is_cons(&__t1550) }; if !rt::is_truthy(interp, &__t1575)? { Value::bool(false) } else { let __t1576 = { let __t1573 = { let __t1551 = Value::sym(interp.intern("fail")); let __t1555 = { let __t1554 = { let __t1553 = { let __t1552 = v_V447.clone(); rt::tl(&__t1552)? }; rt::hd(&__t1553)? }; rt::hd(&__t1554)? }; rt::eq(&__t1551, &__t1555) }; if !rt::is_truthy(interp, &__t1573)? { Value::bool(false) } else { let __t1574 = { let __t1571 = { let __t1556 = Value::nil(); let __t1560 = { let __t1559 = { let __t1558 = { let __t1557 = v_V447.clone(); rt::tl(&__t1557)? }; rt::hd(&__t1558)? }; rt::tl(&__t1559)? }; rt::eq(&__t1556, &__t1560) }; if !rt::is_truthy(interp, &__t1571)? { Value::bool(false) } else { let __t1572 = { let __t1569 = { let __t1563 = { let __t1562 = { let __t1561 = v_V447.clone(); rt::tl(&__t1561)? }; rt::tl(&__t1562)? }; rt::is_cons(&__t1563) }; if !rt::is_truthy(interp, &__t1569)? { Value::bool(false) } else { let __t1570 = { let __t1564 = Value::nil(); let __t1568 = { let __t1567 = { let __t1566 = { let __t1565 = v_V447.clone(); rt::tl(&__t1565)? }; rt::tl(&__t1566)? }; rt::tl(&__t1567)? }; rt::eq(&__t1564, &__t1568) }; Value::bool(rt::is_truthy(interp, &__t1570)?) } }; Value::bool(rt::is_truthy(interp, &__t1572)?) } }; Value::bool(rt::is_truthy(interp, &__t1574)?) } }; Value::bool(rt::is_truthy(interp, &__t1576)?) } }; Value::bool(rt::is_truthy(interp, &__t1578)?) } }; Value::bool(rt::is_truthy(interp, &__t1580)?) } }; Value::bool(rt::is_truthy(interp, &__t1582)?) } - }; - if match rt::is_truthy(interp, &__t1587) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1584 = { let __t1583 = Value::sym(interp.intern("eq")); rt::apply_direct(interp, "shen-cl.cl", &[__t1583])? }; let __t1586 = { let __t1585 = v_V447.clone(); rt::tl(&__t1585)? }; rt::cons(&__t1584, &__t1586) }); } else { { let __t1541 = { let __t1535 = { let __t1493 = v_V447.clone(); rt::is_cons(&__t1493) }; if !rt::is_truthy(interp, &__t1535)? { Value::bool(false) } else { let __t1536 = { let __t1533 = { let __t1494 = Value::sym(interp.intern("shen-cl.equal?")); let __t1496 = { let __t1495 = v_V447.clone(); rt::hd(&__t1495)? }; rt::eq(&__t1494, &__t1496) }; if !rt::is_truthy(interp, &__t1533)? { Value::bool(false) } else { let __t1534 = { let __t1531 = { let __t1498 = { let __t1497 = v_V447.clone(); rt::tl(&__t1497)? }; rt::is_cons(&__t1498) }; if !rt::is_truthy(interp, &__t1531)? { Value::bool(false) } else { let __t1532 = { let __t1529 = { let __t1501 = { let __t1500 = { let __t1499 = v_V447.clone(); rt::tl(&__t1499)? }; rt::tl(&__t1500)? }; rt::is_cons(&__t1501) }; if !rt::is_truthy(interp, &__t1529)? { Value::bool(false) } else { let __t1530 = { let __t1527 = { let __t1505 = { let __t1504 = { let __t1503 = { let __t1502 = v_V447.clone(); rt::tl(&__t1502)? }; rt::tl(&__t1503)? }; rt::hd(&__t1504)? }; rt::is_cons(&__t1505) }; if !rt::is_truthy(interp, &__t1527)? { Value::bool(false) } else { let __t1528 = { let __t1525 = { let __t1506 = Value::sym(interp.intern("fail")); let __t1511 = { let __t1510 = { let __t1509 = { let __t1508 = { let __t1507 = v_V447.clone(); rt::tl(&__t1507)? }; rt::tl(&__t1508)? }; rt::hd(&__t1509)? }; rt::hd(&__t1510)? }; rt::eq(&__t1506, &__t1511) }; if !rt::is_truthy(interp, &__t1525)? { Value::bool(false) } else { let __t1526 = { let __t1523 = { let __t1512 = Value::nil(); let __t1517 = { let __t1516 = { let __t1515 = { let __t1514 = { let __t1513 = v_V447.clone(); rt::tl(&__t1513)? }; rt::tl(&__t1514)? }; rt::hd(&__t1515)? }; rt::tl(&__t1516)? }; rt::eq(&__t1512, &__t1517) }; if !rt::is_truthy(interp, &__t1523)? { Value::bool(false) } else { let __t1524 = { let __t1518 = Value::nil(); let __t1522 = { let __t1521 = { let __t1520 = { let __t1519 = v_V447.clone(); rt::tl(&__t1519)? }; rt::tl(&__t1520)? }; rt::tl(&__t1521)? }; rt::eq(&__t1518, &__t1522) }; Value::bool(rt::is_truthy(interp, &__t1524)?) } }; Value::bool(rt::is_truthy(interp, &__t1526)?) } }; Value::bool(rt::is_truthy(interp, &__t1528)?) } }; Value::bool(rt::is_truthy(interp, &__t1530)?) } }; Value::bool(rt::is_truthy(interp, &__t1532)?) } }; Value::bool(rt::is_truthy(interp, &__t1534)?) } }; Value::bool(rt::is_truthy(interp, &__t1536)?) } }; if match rt::is_truthy(interp, &__t1541) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1538 = { let __t1537 = Value::sym(interp.intern("eq")); rt::apply_direct(interp, "shen-cl.cl", &[__t1537])? }; let __t1540 = { let __t1539 = v_V447.clone(); rt::tl(&__t1539)? }; rt::cons(&__t1538, &__t1540) }); } else { { let __t1492 = { let __t1486 = { let __t1461 = v_V447.clone(); rt::is_cons(&__t1461) }; if !rt::is_truthy(interp, &__t1486)? { Value::bool(false) } else { let __t1487 = { let __t1484 = { let __t1462 = Value::sym(interp.intern("shen-cl.equal?")); let __t1464 = { let __t1463 = v_V447.clone(); rt::hd(&__t1463)? }; rt::eq(&__t1462, &__t1464) }; if !rt::is_truthy(interp, &__t1484)? { Value::bool(false) } else { let __t1485 = { let __t1482 = { let __t1466 = { let __t1465 = v_V447.clone(); rt::tl(&__t1465)? }; rt::is_cons(&__t1466) }; if !rt::is_truthy(interp, &__t1482)? { Value::bool(false) } else { let __t1483 = { let __t1480 = { let __t1469 = { let __t1468 = { let __t1467 = v_V447.clone(); rt::tl(&__t1467)? }; rt::tl(&__t1468)? }; rt::is_cons(&__t1469) }; if !rt::is_truthy(interp, &__t1480)? { Value::bool(false) } else { let __t1481 = { let __t1478 = { let __t1470 = Value::nil(); let __t1474 = { let __t1473 = { let __t1472 = { let __t1471 = v_V447.clone(); rt::tl(&__t1471)? }; rt::tl(&__t1472)? }; rt::tl(&__t1473)? }; rt::eq(&__t1470, &__t1474) }; if !rt::is_truthy(interp, &__t1478)? { Value::bool(false) } else { let __t1479 = { let __t1477 = { let __t1476 = { let __t1475 = v_V447.clone(); rt::tl(&__t1475)? }; rt::hd(&__t1476)? }; rt::is_string(&__t1477) }; Value::bool(rt::is_truthy(interp, &__t1479)?) } }; Value::bool(rt::is_truthy(interp, &__t1481)?) } }; Value::bool(rt::is_truthy(interp, &__t1483)?) } }; Value::bool(rt::is_truthy(interp, &__t1485)?) } }; Value::bool(rt::is_truthy(interp, &__t1487)?) } }; if match rt::is_truthy(interp, &__t1492) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1489 = { let __t1488 = Value::sym(interp.intern("equal")); rt::apply_direct(interp, "shen-cl.cl", &[__t1488])? }; let __t1491 = { let __t1490 = v_V447.clone(); rt::tl(&__t1490)? }; rt::cons(&__t1489, &__t1491) }); } else { { let __t1460 = { let __t1454 = { let __t1428 = v_V447.clone(); rt::is_cons(&__t1428) }; if !rt::is_truthy(interp, &__t1454)? { Value::bool(false) } else { let __t1455 = { let __t1452 = { let __t1429 = Value::sym(interp.intern("shen-cl.equal?")); let __t1431 = { let __t1430 = v_V447.clone(); rt::hd(&__t1430)? }; rt::eq(&__t1429, &__t1431) }; if !rt::is_truthy(interp, &__t1452)? { Value::bool(false) } else { let __t1453 = { let __t1450 = { let __t1433 = { let __t1432 = v_V447.clone(); rt::tl(&__t1432)? }; rt::is_cons(&__t1433) }; if !rt::is_truthy(interp, &__t1450)? { Value::bool(false) } else { let __t1451 = { let __t1448 = { let __t1436 = { let __t1435 = { let __t1434 = v_V447.clone(); rt::tl(&__t1434)? }; rt::tl(&__t1435)? }; rt::is_cons(&__t1436) }; if !rt::is_truthy(interp, &__t1448)? { Value::bool(false) } else { let __t1449 = { let __t1446 = { let __t1437 = Value::nil(); let __t1441 = { let __t1440 = { let __t1439 = { let __t1438 = v_V447.clone(); rt::tl(&__t1438)? }; rt::tl(&__t1439)? }; rt::tl(&__t1440)? }; rt::eq(&__t1437, &__t1441) }; if !rt::is_truthy(interp, &__t1446)? { Value::bool(false) } else { let __t1447 = { let __t1445 = { let __t1444 = { let __t1443 = { let __t1442 = v_V447.clone(); rt::tl(&__t1442)? }; rt::tl(&__t1443)? }; rt::hd(&__t1444)? }; rt::is_string(&__t1445) }; Value::bool(rt::is_truthy(interp, &__t1447)?) } }; Value::bool(rt::is_truthy(interp, &__t1449)?) } }; Value::bool(rt::is_truthy(interp, &__t1451)?) } }; Value::bool(rt::is_truthy(interp, &__t1453)?) } }; Value::bool(rt::is_truthy(interp, &__t1455)?) } }; if match rt::is_truthy(interp, &__t1460) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1457 = { let __t1456 = Value::sym(interp.intern("equal")); rt::apply_direct(interp, "shen-cl.cl", &[__t1456])? }; let __t1459 = { let __t1458 = v_V447.clone(); rt::tl(&__t1458)? }; rt::cons(&__t1457, &__t1459) }); } else { { let __t1427 = { let __t1421 = { let __t1395 = v_V447.clone(); rt::is_cons(&__t1395) }; if !rt::is_truthy(interp, &__t1421)? { Value::bool(false) } else { let __t1422 = { let __t1419 = { let __t1396 = Value::sym(interp.intern("shen-cl.equal?")); let __t1398 = { let __t1397 = v_V447.clone(); rt::hd(&__t1397)? }; rt::eq(&__t1396, &__t1398) }; if !rt::is_truthy(interp, &__t1419)? { Value::bool(false) } else { let __t1420 = { let __t1417 = { let __t1400 = { let __t1399 = v_V447.clone(); rt::tl(&__t1399)? }; rt::is_cons(&__t1400) }; if !rt::is_truthy(interp, &__t1417)? { Value::bool(false) } else { let __t1418 = { let __t1415 = { let __t1403 = { let __t1402 = { let __t1401 = v_V447.clone(); rt::tl(&__t1401)? }; rt::tl(&__t1402)? }; rt::is_cons(&__t1403) }; if !rt::is_truthy(interp, &__t1415)? { Value::bool(false) } else { let __t1416 = { let __t1413 = { let __t1404 = Value::nil(); let __t1408 = { let __t1407 = { let __t1406 = { let __t1405 = v_V447.clone(); rt::tl(&__t1405)? }; rt::tl(&__t1406)? }; rt::tl(&__t1407)? }; rt::eq(&__t1404, &__t1408) }; if !rt::is_truthy(interp, &__t1413)? { Value::bool(false) } else { let __t1414 = { let __t1412 = { let __t1411 = { let __t1410 = { let __t1409 = v_V447.clone(); rt::tl(&__t1409)? }; rt::tl(&__t1410)? }; rt::hd(&__t1411)? }; rt::is_number(&__t1412) }; Value::bool(rt::is_truthy(interp, &__t1414)?) } }; Value::bool(rt::is_truthy(interp, &__t1416)?) } }; Value::bool(rt::is_truthy(interp, &__t1418)?) } }; Value::bool(rt::is_truthy(interp, &__t1420)?) } }; Value::bool(rt::is_truthy(interp, &__t1422)?) } }; if match rt::is_truthy(interp, &__t1427) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1424 = { let __t1423 = Value::sym(interp.intern("equalp")); rt::apply_direct(interp, "shen-cl.cl", &[__t1423])? }; let __t1426 = { let __t1425 = v_V447.clone(); rt::tl(&__t1425)? }; rt::cons(&__t1424, &__t1426) }); } else { { let __t1394 = { let __t1380 = { let __t1355 = v_V447.clone(); rt::is_cons(&__t1355) }; if !rt::is_truthy(interp, &__t1380)? { Value::bool(false) } else { let __t1381 = { let __t1378 = { let __t1356 = Value::sym(interp.intern("shen-cl.equal?")); let __t1358 = { let __t1357 = v_V447.clone(); rt::hd(&__t1357)? }; rt::eq(&__t1356, &__t1358) }; if !rt::is_truthy(interp, &__t1378)? { Value::bool(false) } else { let __t1379 = { let __t1376 = { let __t1360 = { let __t1359 = v_V447.clone(); rt::tl(&__t1359)? }; rt::is_cons(&__t1360) }; if !rt::is_truthy(interp, &__t1376)? { Value::bool(false) } else { let __t1377 = { let __t1374 = { let __t1363 = { let __t1362 = { let __t1361 = v_V447.clone(); rt::tl(&__t1361)? }; rt::tl(&__t1362)? }; rt::is_cons(&__t1363) }; if !rt::is_truthy(interp, &__t1374)? { Value::bool(false) } else { let __t1375 = { let __t1372 = { let __t1364 = Value::nil(); let __t1368 = { let __t1367 = { let __t1366 = { let __t1365 = v_V447.clone(); rt::tl(&__t1365)? }; rt::tl(&__t1366)? }; rt::tl(&__t1367)? }; rt::eq(&__t1364, &__t1368) }; if !rt::is_truthy(interp, &__t1372)? { Value::bool(false) } else { let __t1373 = { let __t1371 = { let __t1370 = { let __t1369 = v_V447.clone(); rt::tl(&__t1369)? }; rt::hd(&__t1370)? }; rt::is_number(&__t1371) }; Value::bool(rt::is_truthy(interp, &__t1373)?) } }; Value::bool(rt::is_truthy(interp, &__t1375)?) } }; Value::bool(rt::is_truthy(interp, &__t1377)?) } }; Value::bool(rt::is_truthy(interp, &__t1379)?) } }; Value::bool(rt::is_truthy(interp, &__t1381)?) } }; if match rt::is_truthy(interp, &__t1394) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1383 = { let __t1382 = Value::sym(interp.intern("equalp")); rt::apply_direct(interp, "shen-cl.cl", &[__t1382])? }; let __t1393 = { let __t1387 = { let __t1386 = { let __t1385 = { let __t1384 = v_V447.clone(); rt::tl(&__t1384)? }; rt::tl(&__t1385)? }; rt::hd(&__t1386)? }; let __t1392 = { let __t1390 = { let __t1389 = { let __t1388 = v_V447.clone(); rt::tl(&__t1388)? }; rt::hd(&__t1389)? }; let __t1391 = Value::nil(); rt::cons(&__t1390, &__t1391) }; rt::cons(&__t1387, &__t1392) }; rt::cons(&__t1383, &__t1393) }); } else { { let __t1354 = { let __t1348 = { let __t1297 = v_V447.clone(); rt::is_cons(&__t1297) }; if !rt::is_truthy(interp, &__t1348)? { Value::bool(false) } else { let __t1349 = { let __t1346 = { let __t1298 = Value::sym(interp.intern("shen-cl.equal?")); let __t1300 = { let __t1299 = v_V447.clone(); rt::hd(&__t1299)? }; rt::eq(&__t1298, &__t1300) }; if !rt::is_truthy(interp, &__t1346)? { Value::bool(false) } else { let __t1347 = { let __t1344 = { let __t1302 = { let __t1301 = v_V447.clone(); rt::tl(&__t1301)? }; rt::is_cons(&__t1302) }; if !rt::is_truthy(interp, &__t1344)? { Value::bool(false) } else { let __t1345 = { let __t1342 = { let __t1305 = { let __t1304 = { let __t1303 = v_V447.clone(); rt::tl(&__t1303)? }; rt::tl(&__t1304)? }; rt::is_cons(&__t1305) }; if !rt::is_truthy(interp, &__t1342)? { Value::bool(false) } else { let __t1343 = { let __t1340 = { let __t1309 = { let __t1308 = { let __t1307 = { let __t1306 = v_V447.clone(); rt::tl(&__t1306)? }; rt::tl(&__t1307)? }; rt::hd(&__t1308)? }; rt::is_cons(&__t1309) }; if !rt::is_truthy(interp, &__t1340)? { Value::bool(false) } else { let __t1341 = { let __t1338 = { let __t1314 = { let __t1313 = { let __t1312 = { let __t1311 = { let __t1310 = v_V447.clone(); rt::tl(&__t1310)? }; rt::tl(&__t1311)? }; rt::hd(&__t1312)? }; rt::tl(&__t1313)? }; rt::is_cons(&__t1314) }; if !rt::is_truthy(interp, &__t1338)? { Value::bool(false) } else { let __t1339 = { let __t1336 = { let __t1315 = Value::nil(); let __t1321 = { let __t1320 = { let __t1319 = { let __t1318 = { let __t1317 = { let __t1316 = v_V447.clone(); rt::tl(&__t1316)? }; rt::tl(&__t1317)? }; rt::hd(&__t1318)? }; rt::tl(&__t1319)? }; rt::tl(&__t1320)? }; rt::eq(&__t1315, &__t1321) }; if !rt::is_truthy(interp, &__t1336)? { Value::bool(false) } else { let __t1337 = { let __t1334 = { let __t1322 = Value::nil(); let __t1326 = { let __t1325 = { let __t1324 = { let __t1323 = v_V447.clone(); rt::tl(&__t1323)? }; rt::tl(&__t1324)? }; rt::tl(&__t1325)? }; rt::eq(&__t1322, &__t1326) }; if !rt::is_truthy(interp, &__t1334)? { Value::bool(false) } else { let __t1335 = { let __t1328 = { let __t1327 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1327])? }; let __t1333 = { let __t1332 = { let __t1331 = { let __t1330 = { let __t1329 = v_V447.clone(); rt::tl(&__t1329)? }; rt::tl(&__t1330)? }; rt::hd(&__t1331)? }; rt::hd(&__t1332)? }; rt::eq(&__t1328, &__t1333) }; Value::bool(rt::is_truthy(interp, &__t1335)?) } }; Value::bool(rt::is_truthy(interp, &__t1337)?) } }; Value::bool(rt::is_truthy(interp, &__t1339)?) } }; Value::bool(rt::is_truthy(interp, &__t1341)?) } }; Value::bool(rt::is_truthy(interp, &__t1343)?) } }; Value::bool(rt::is_truthy(interp, &__t1345)?) } }; Value::bool(rt::is_truthy(interp, &__t1347)?) } }; Value::bool(rt::is_truthy(interp, &__t1349)?) } }; if match rt::is_truthy(interp, &__t1354) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1351 = { let __t1350 = Value::sym(interp.intern("eq")); rt::apply_direct(interp, "shen-cl.cl", &[__t1350])? }; let __t1353 = { let __t1352 = v_V447.clone(); rt::tl(&__t1352)? }; rt::cons(&__t1351, &__t1353) }); } else { { let __t1296 = { let __t1282 = { let __t1235 = v_V447.clone(); rt::is_cons(&__t1235) }; if !rt::is_truthy(interp, &__t1282)? { Value::bool(false) } else { let __t1283 = { let __t1280 = { let __t1236 = Value::sym(interp.intern("shen-cl.equal?")); let __t1238 = { let __t1237 = v_V447.clone(); rt::hd(&__t1237)? }; rt::eq(&__t1236, &__t1238) }; if !rt::is_truthy(interp, &__t1280)? { Value::bool(false) } else { let __t1281 = { let __t1278 = { let __t1240 = { let __t1239 = v_V447.clone(); rt::tl(&__t1239)? }; rt::is_cons(&__t1240) }; if !rt::is_truthy(interp, &__t1278)? { Value::bool(false) } else { let __t1279 = { let __t1276 = { let __t1243 = { let __t1242 = { let __t1241 = v_V447.clone(); rt::tl(&__t1241)? }; rt::hd(&__t1242)? }; rt::is_cons(&__t1243) }; if !rt::is_truthy(interp, &__t1276)? { Value::bool(false) } else { let __t1277 = { let __t1274 = { let __t1247 = { let __t1246 = { let __t1245 = { let __t1244 = v_V447.clone(); rt::tl(&__t1244)? }; rt::hd(&__t1245)? }; rt::tl(&__t1246)? }; rt::is_cons(&__t1247) }; if !rt::is_truthy(interp, &__t1274)? { Value::bool(false) } else { let __t1275 = { let __t1272 = { let __t1248 = Value::nil(); let __t1253 = { let __t1252 = { let __t1251 = { let __t1250 = { let __t1249 = v_V447.clone(); rt::tl(&__t1249)? }; rt::hd(&__t1250)? }; rt::tl(&__t1251)? }; rt::tl(&__t1252)? }; rt::eq(&__t1248, &__t1253) }; if !rt::is_truthy(interp, &__t1272)? { Value::bool(false) } else { let __t1273 = { let __t1270 = { let __t1256 = { let __t1255 = { let __t1254 = v_V447.clone(); rt::tl(&__t1254)? }; rt::tl(&__t1255)? }; rt::is_cons(&__t1256) }; if !rt::is_truthy(interp, &__t1270)? { Value::bool(false) } else { let __t1271 = { let __t1268 = { let __t1257 = Value::nil(); let __t1261 = { let __t1260 = { let __t1259 = { let __t1258 = v_V447.clone(); rt::tl(&__t1258)? }; rt::tl(&__t1259)? }; rt::tl(&__t1260)? }; rt::eq(&__t1257, &__t1261) }; if !rt::is_truthy(interp, &__t1268)? { Value::bool(false) } else { let __t1269 = { let __t1263 = { let __t1262 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1262])? }; let __t1267 = { let __t1266 = { let __t1265 = { let __t1264 = v_V447.clone(); rt::tl(&__t1264)? }; rt::hd(&__t1265)? }; rt::hd(&__t1266)? }; rt::eq(&__t1263, &__t1267) }; Value::bool(rt::is_truthy(interp, &__t1269)?) } }; Value::bool(rt::is_truthy(interp, &__t1271)?) } }; Value::bool(rt::is_truthy(interp, &__t1273)?) } }; Value::bool(rt::is_truthy(interp, &__t1275)?) } }; Value::bool(rt::is_truthy(interp, &__t1277)?) } }; Value::bool(rt::is_truthy(interp, &__t1279)?) } }; Value::bool(rt::is_truthy(interp, &__t1281)?) } }; Value::bool(rt::is_truthy(interp, &__t1283)?) } }; if match rt::is_truthy(interp, &__t1296) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1285 = { let __t1284 = Value::sym(interp.intern("eq")); rt::apply_direct(interp, "shen-cl.cl", &[__t1284])? }; let __t1295 = { let __t1289 = { let __t1288 = { let __t1287 = { let __t1286 = v_V447.clone(); rt::tl(&__t1286)? }; rt::tl(&__t1287)? }; rt::hd(&__t1288)? }; let __t1294 = { let __t1292 = { let __t1291 = { let __t1290 = v_V447.clone(); rt::tl(&__t1290)? }; rt::hd(&__t1291)? }; let __t1293 = Value::nil(); rt::cons(&__t1292, &__t1293) }; rt::cons(&__t1289, &__t1294) }; rt::cons(&__t1285, &__t1295) }); } else { { let __t1234 = { let __t1228 = { let __t1208 = v_V447.clone(); rt::is_cons(&__t1208) }; if !rt::is_truthy(interp, &__t1228)? { Value::bool(false) } else { let __t1229 = { let __t1226 = { let __t1209 = Value::sym(interp.intern("shen-cl.equal?")); let __t1211 = { let __t1210 = v_V447.clone(); rt::hd(&__t1210)? }; rt::eq(&__t1209, &__t1211) }; if !rt::is_truthy(interp, &__t1226)? { Value::bool(false) } else { let __t1227 = { let __t1224 = { let __t1213 = { let __t1212 = v_V447.clone(); rt::tl(&__t1212)? }; rt::is_cons(&__t1213) }; if !rt::is_truthy(interp, &__t1224)? { Value::bool(false) } else { let __t1225 = { let __t1222 = { let __t1216 = { let __t1215 = { let __t1214 = v_V447.clone(); rt::tl(&__t1214)? }; rt::tl(&__t1215)? }; rt::is_cons(&__t1216) }; if !rt::is_truthy(interp, &__t1222)? { Value::bool(false) } else { let __t1223 = { let __t1217 = Value::nil(); let __t1221 = { let __t1220 = { let __t1219 = { let __t1218 = v_V447.clone(); rt::tl(&__t1218)? }; rt::tl(&__t1219)? }; rt::tl(&__t1220)? }; rt::eq(&__t1217, &__t1221) }; Value::bool(rt::is_truthy(interp, &__t1223)?) } }; Value::bool(rt::is_truthy(interp, &__t1225)?) } }; Value::bool(rt::is_truthy(interp, &__t1227)?) } }; Value::bool(rt::is_truthy(interp, &__t1229)?) } }; if match rt::is_truthy(interp, &__t1234) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1231 = { let __t1230 = Value::sym(interp.intern("shen-cl.absequal")); rt::apply_direct(interp, "shen-cl.kl", &[__t1230])? }; let __t1233 = { let __t1232 = v_V447.clone(); rt::tl(&__t1232)? }; rt::cons(&__t1231, &__t1233) }); } else { { let __t1207 = { let __t1201 = { let __t1181 = v_V447.clone(); rt::is_cons(&__t1181) }; if !rt::is_truthy(interp, &__t1201)? { Value::bool(false) } else { let __t1202 = { let __t1199 = { let __t1182 = Value::sym(interp.intern("shen-cl.greater?")); let __t1184 = { let __t1183 = v_V447.clone(); rt::hd(&__t1183)? }; rt::eq(&__t1182, &__t1184) }; if !rt::is_truthy(interp, &__t1199)? { Value::bool(false) } else { let __t1200 = { let __t1197 = { let __t1186 = { let __t1185 = v_V447.clone(); rt::tl(&__t1185)? }; rt::is_cons(&__t1186) }; if !rt::is_truthy(interp, &__t1197)? { Value::bool(false) } else { let __t1198 = { let __t1195 = { let __t1189 = { let __t1188 = { let __t1187 = v_V447.clone(); rt::tl(&__t1187)? }; rt::tl(&__t1188)? }; rt::is_cons(&__t1189) }; if !rt::is_truthy(interp, &__t1195)? { Value::bool(false) } else { let __t1196 = { let __t1190 = Value::nil(); let __t1194 = { let __t1193 = { let __t1192 = { let __t1191 = v_V447.clone(); rt::tl(&__t1191)? }; rt::tl(&__t1192)? }; rt::tl(&__t1193)? }; rt::eq(&__t1190, &__t1194) }; Value::bool(rt::is_truthy(interp, &__t1196)?) } }; Value::bool(rt::is_truthy(interp, &__t1198)?) } }; Value::bool(rt::is_truthy(interp, &__t1200)?) } }; Value::bool(rt::is_truthy(interp, &__t1202)?) } }; if match rt::is_truthy(interp, &__t1207) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1204 = { let __t1203 = Value::sym(interp.intern(">")); rt::apply_direct(interp, "shen-cl.cl", &[__t1203])? }; let __t1206 = { let __t1205 = v_V447.clone(); rt::tl(&__t1205)? }; rt::cons(&__t1204, &__t1206) }); } else { { let __t1180 = { let __t1174 = { let __t1154 = v_V447.clone(); rt::is_cons(&__t1154) }; if !rt::is_truthy(interp, &__t1174)? { Value::bool(false) } else { let __t1175 = { let __t1172 = { let __t1155 = Value::sym(interp.intern("shen-cl.greater-than-or-equal-to?")); let __t1157 = { let __t1156 = v_V447.clone(); rt::hd(&__t1156)? }; rt::eq(&__t1155, &__t1157) }; if !rt::is_truthy(interp, &__t1172)? { Value::bool(false) } else { let __t1173 = { let __t1170 = { let __t1159 = { let __t1158 = v_V447.clone(); rt::tl(&__t1158)? }; rt::is_cons(&__t1159) }; if !rt::is_truthy(interp, &__t1170)? { Value::bool(false) } else { let __t1171 = { let __t1168 = { let __t1162 = { let __t1161 = { let __t1160 = v_V447.clone(); rt::tl(&__t1160)? }; rt::tl(&__t1161)? }; rt::is_cons(&__t1162) }; if !rt::is_truthy(interp, &__t1168)? { Value::bool(false) } else { let __t1169 = { let __t1163 = Value::nil(); let __t1167 = { let __t1166 = { let __t1165 = { let __t1164 = v_V447.clone(); rt::tl(&__t1164)? }; rt::tl(&__t1165)? }; rt::tl(&__t1166)? }; rt::eq(&__t1163, &__t1167) }; Value::bool(rt::is_truthy(interp, &__t1169)?) } }; Value::bool(rt::is_truthy(interp, &__t1171)?) } }; Value::bool(rt::is_truthy(interp, &__t1173)?) } }; Value::bool(rt::is_truthy(interp, &__t1175)?) } }; if match rt::is_truthy(interp, &__t1180) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1177 = { let __t1176 = Value::sym(interp.intern(">=")); rt::apply_direct(interp, "shen-cl.cl", &[__t1176])? }; let __t1179 = { let __t1178 = v_V447.clone(); rt::tl(&__t1178)? }; rt::cons(&__t1177, &__t1179) }); } else { { let __t1153 = { let __t1147 = { let __t1127 = v_V447.clone(); rt::is_cons(&__t1127) }; if !rt::is_truthy(interp, &__t1147)? { Value::bool(false) } else { let __t1148 = { let __t1145 = { let __t1128 = Value::sym(interp.intern("shen-cl.less?")); let __t1130 = { let __t1129 = v_V447.clone(); rt::hd(&__t1129)? }; rt::eq(&__t1128, &__t1130) }; if !rt::is_truthy(interp, &__t1145)? { Value::bool(false) } else { let __t1146 = { let __t1143 = { let __t1132 = { let __t1131 = v_V447.clone(); rt::tl(&__t1131)? }; rt::is_cons(&__t1132) }; if !rt::is_truthy(interp, &__t1143)? { Value::bool(false) } else { let __t1144 = { let __t1141 = { let __t1135 = { let __t1134 = { let __t1133 = v_V447.clone(); rt::tl(&__t1133)? }; rt::tl(&__t1134)? }; rt::is_cons(&__t1135) }; if !rt::is_truthy(interp, &__t1141)? { Value::bool(false) } else { let __t1142 = { let __t1136 = Value::nil(); let __t1140 = { let __t1139 = { let __t1138 = { let __t1137 = v_V447.clone(); rt::tl(&__t1137)? }; rt::tl(&__t1138)? }; rt::tl(&__t1139)? }; rt::eq(&__t1136, &__t1140) }; Value::bool(rt::is_truthy(interp, &__t1142)?) } }; Value::bool(rt::is_truthy(interp, &__t1144)?) } }; Value::bool(rt::is_truthy(interp, &__t1146)?) } }; Value::bool(rt::is_truthy(interp, &__t1148)?) } }; if match rt::is_truthy(interp, &__t1153) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1150 = { let __t1149 = Value::sym(interp.intern("<")); rt::apply_direct(interp, "shen-cl.cl", &[__t1149])? }; let __t1152 = { let __t1151 = v_V447.clone(); rt::tl(&__t1151)? }; rt::cons(&__t1150, &__t1152) }); } else { { let __t1126 = { let __t1120 = { let __t1100 = v_V447.clone(); rt::is_cons(&__t1100) }; if !rt::is_truthy(interp, &__t1120)? { Value::bool(false) } else { let __t1121 = { let __t1118 = { let __t1101 = Value::sym(interp.intern("shen-cl.less-than-or-equal-to?")); let __t1103 = { let __t1102 = v_V447.clone(); rt::hd(&__t1102)? }; rt::eq(&__t1101, &__t1103) }; if !rt::is_truthy(interp, &__t1118)? { Value::bool(false) } else { let __t1119 = { let __t1116 = { let __t1105 = { let __t1104 = v_V447.clone(); rt::tl(&__t1104)? }; rt::is_cons(&__t1105) }; if !rt::is_truthy(interp, &__t1116)? { Value::bool(false) } else { let __t1117 = { let __t1114 = { let __t1108 = { let __t1107 = { let __t1106 = v_V447.clone(); rt::tl(&__t1106)? }; rt::tl(&__t1107)? }; rt::is_cons(&__t1108) }; if !rt::is_truthy(interp, &__t1114)? { Value::bool(false) } else { let __t1115 = { let __t1109 = Value::nil(); let __t1113 = { let __t1112 = { let __t1111 = { let __t1110 = v_V447.clone(); rt::tl(&__t1110)? }; rt::tl(&__t1111)? }; rt::tl(&__t1112)? }; rt::eq(&__t1109, &__t1113) }; Value::bool(rt::is_truthy(interp, &__t1115)?) } }; Value::bool(rt::is_truthy(interp, &__t1117)?) } }; Value::bool(rt::is_truthy(interp, &__t1119)?) } }; Value::bool(rt::is_truthy(interp, &__t1121)?) } }; if match rt::is_truthy(interp, &__t1126) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1123 = { let __t1122 = Value::sym(interp.intern("<=")); rt::apply_direct(interp, "shen-cl.cl", &[__t1122])? }; let __t1125 = { let __t1124 = v_V447.clone(); rt::tl(&__t1124)? }; rt::cons(&__t1123, &__t1125) }); } else { { let __t1099 = { let __t1096 = { let __t1075 = v_V447.clone(); rt::is_cons(&__t1075) }; if !rt::is_truthy(interp, &__t1096)? { Value::bool(false) } else { let __t1097 = { let __t1094 = { let __t1077 = { let __t1076 = v_V447.clone(); rt::tl(&__t1076)? }; rt::is_cons(&__t1077) }; if !rt::is_truthy(interp, &__t1094)? { Value::bool(false) } else { let __t1095 = { let __t1092 = { let __t1078 = Value::bool(true); let __t1081 = { let __t1080 = { let __t1079 = v_V447.clone(); rt::tl(&__t1079)? }; rt::hd(&__t1080)? }; rt::eq(&__t1078, &__t1081) }; if !rt::is_truthy(interp, &__t1092)? { Value::bool(false) } else { let __t1093 = { let __t1090 = { let __t1082 = Value::nil(); let __t1085 = { let __t1084 = { let __t1083 = v_V447.clone(); rt::tl(&__t1083)? }; rt::tl(&__t1084)? }; rt::eq(&__t1082, &__t1085) }; if !rt::is_truthy(interp, &__t1090)? { Value::bool(false) } else { let __t1091 = { let __t1087 = { let __t1086 = v_V447.clone(); rt::hd(&__t1086)? }; let __t1089 = { let __t1088 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1088])? }; rt::eq(&__t1087, &__t1089) }; Value::bool(rt::is_truthy(interp, &__t1091)?) } }; Value::bool(rt::is_truthy(interp, &__t1093)?) } }; Value::bool(rt::is_truthy(interp, &__t1095)?) } }; Value::bool(rt::is_truthy(interp, &__t1097)?) } }; if match rt::is_truthy(interp, &__t1099) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1098 = Value::sym(interp.intern("t")); rt::apply_direct(interp, "shen-cl.cl", &[__t1098])? }); } else { { let __t1074 = { let __t1071 = { let __t1050 = v_V447.clone(); rt::is_cons(&__t1050) }; if !rt::is_truthy(interp, &__t1071)? { Value::bool(false) } else { let __t1072 = { let __t1069 = { let __t1052 = { let __t1051 = v_V447.clone(); rt::tl(&__t1051)? }; rt::is_cons(&__t1052) }; if !rt::is_truthy(interp, &__t1069)? { Value::bool(false) } else { let __t1070 = { let __t1067 = { let __t1053 = Value::bool(false); let __t1056 = { let __t1055 = { let __t1054 = v_V447.clone(); rt::tl(&__t1054)? }; rt::hd(&__t1055)? }; rt::eq(&__t1053, &__t1056) }; if !rt::is_truthy(interp, &__t1067)? { Value::bool(false) } else { let __t1068 = { let __t1065 = { let __t1057 = Value::nil(); let __t1060 = { let __t1059 = { let __t1058 = v_V447.clone(); rt::tl(&__t1058)? }; rt::tl(&__t1059)? }; rt::eq(&__t1057, &__t1060) }; if !rt::is_truthy(interp, &__t1065)? { Value::bool(false) } else { let __t1066 = { let __t1062 = { let __t1061 = v_V447.clone(); rt::hd(&__t1061)? }; let __t1064 = { let __t1063 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t1063])? }; rt::eq(&__t1062, &__t1064) }; Value::bool(rt::is_truthy(interp, &__t1066)?) } }; Value::bool(rt::is_truthy(interp, &__t1068)?) } }; Value::bool(rt::is_truthy(interp, &__t1070)?) } }; Value::bool(rt::is_truthy(interp, &__t1072)?) } }; if match rt::is_truthy(interp, &__t1074) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1073 = Value::sym(interp.intern("nil")); rt::apply_direct(interp, "shen-cl.cl", &[__t1073])? }); } else { { let __t1049 = Value::bool(true); if match rt::is_truthy(interp, &__t1049) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1045 = Value::sym(interp.intern("shen-cl.true?")); let __t1048 = { let __t1046 = v_V447.clone(); let __t1047 = Value::nil(); rt::cons(&__t1046, &__t1047) }; rt::cons(&__t1045, &__t1048) }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_optimise_x2d_boolean_x2d_check(interp: &mut Interp) { - interp.register_native( - "shen-cl.optimise-boolean-check", - 1, - aot_shen_x2d_cl_x2e_optimise_x2d_boolean_x2d_check, - ); - interp.register_aot_direct( - "shen-cl.optimise-boolean-check", - aot_shen_x2d_cl_x2e_optimise_x2d_boolean_x2d_check, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-symbol ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_symbol( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.emit-symbol: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V448 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t1905 = { - let __t1904 = Value::sym(interp.intern("quote")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1904])? - }; - let __t1908 = { - let __t1906 = v_V448.clone(); - let __t1907 = Value::nil(); - rt::cons(&__t1906, &__t1907) - }; - rt::cons(&__t1905, &__t1908) - }); - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_symbol(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-symbol", - 1, - aot_shen_x2d_cl_x2e_emit_x2d_symbol, - ); - interp.register_aot_direct("shen-cl.emit-symbol", aot_shen_x2d_cl_x2e_emit_x2d_symbol); -} - -/// AOT-compiled from KL `(defun shen-cl.subst* ...)` -pub fn aot_shen_x2d_cl_x2e_subst_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.subst*: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V450 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V451 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V452 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1920 = { - let __t1918 = v_V450.clone(); - let __t1919 = v_V451.clone(); - rt::eq(&__t1918, &__t1919) - }; - if match rt::is_truthy(interp, &__t1920) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V452.clone()); - } else { - { - let __t1917 = { - let __t1913 = Value::nil(); - let __t1914 = v_V451.clone(); - rt::eq(&__t1913, &__t1914) - }; - if match rt::is_truthy(interp, &__t1917) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1915 = v_V450.clone(); - let __t1916 = v_V452.clone(); - rt::apply_direct( - interp, - "shen-cl.subst-nil-element", - &[__t1915, __t1916], - )? - }); - } else { - { - let __t1912 = Value::bool(true); - if match rt::is_truthy(interp, &__t1912) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1909 = v_V450.clone(); - let __t1910 = v_V451.clone(); - let __t1911 = v_V452.clone(); - rt::apply_direct(interp, "subst", &[__t1909, __t1910, __t1911])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_subst_x2a_(interp: &mut Interp) { - interp.register_native("shen-cl.subst*", 3, aot_shen_x2d_cl_x2e_subst_x2a_); - interp.register_aot_direct("shen-cl.subst*", aot_shen_x2d_cl_x2e_subst_x2a_); -} - -/// AOT-compiled from KL `(defun shen-cl.subst-nil-spine ...)` -pub fn aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_spine( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.subst-nil-spine: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V455 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V456 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1935 = { - let __t1933 = Value::nil(); - let __t1934 = v_V456.clone(); - rt::eq(&__t1933, &__t1934) - }; - if match rt::is_truthy(interp, &__t1935) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::nil()); - } else { - { - let __t1932 = { - let __t1923 = v_V456.clone(); - rt::is_cons(&__t1923) - }; - if match rt::is_truthy(interp, &__t1932) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1927 = { - let __t1924 = v_V455.clone(); - let __t1926 = { - let __t1925 = v_V456.clone(); - rt::hd(&__t1925)? - }; - rt::apply_direct( - interp, - "shen-cl.subst-nil-element", - &[__t1924, __t1926], - )? - }; - let __t1931 = { - let __t1928 = v_V455.clone(); - let __t1930 = { - let __t1929 = v_V456.clone(); - rt::tl(&__t1929)? - }; - rt::apply_direct( - interp, - "shen-cl.subst-nil-spine", - &[__t1928, __t1930], - )? - }; - rt::cons(&__t1927, &__t1931) - }); - } else { - { - let __t1922 = Value::bool(true); - if match rt::is_truthy(interp, &__t1922) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1921 = - Value::sym(interp.intern("shen-cl.subst-nil-spine")); - rt::apply_direct(interp, "shen.f-error", &[__t1921])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_subst_x2d_nil_x2d_spine(interp: &mut Interp) { - interp.register_native( - "shen-cl.subst-nil-spine", - 2, - aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_spine, - ); - interp.register_aot_direct( - "shen-cl.subst-nil-spine", - aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_spine, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.subst-nil-element ...)` -pub fn aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_element( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.subst-nil-element: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V459 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V460 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1943 = { - let __t1941 = Value::nil(); - let __t1942 = v_V460.clone(); - rt::eq(&__t1941, &__t1942) - }; - if match rt::is_truthy(interp, &__t1943) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V459.clone()); - } else { - { - let __t1940 = { - let __t1937 = v_V460.clone(); - rt::is_cons(&__t1937) - }; - if match rt::is_truthy(interp, &__t1940) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1938 = v_V459.clone(); - let __t1939 = v_V460.clone(); - rt::apply_direct( - interp, - "shen-cl.subst-nil-spine", - &[__t1938, __t1939], - )? - }); - } else { - { - let __t1936 = Value::bool(true); - if match rt::is_truthy(interp, &__t1936) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V460.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_subst_x2d_nil_x2d_element(interp: &mut Interp) { - interp.register_native( - "shen-cl.subst-nil-element", - 2, - aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_element, - ); - interp.register_aot_direct( - "shen-cl.subst-nil-element", - aot_shen_x2d_cl_x2e_subst_x2d_nil_x2d_element, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.ch-T/NIL ...)` -pub fn aot_shen_x2d_cl_x2e_ch_x2d_T_x2f_NIL( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.ch-T/NIL: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V461 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t1952 = { - let __t1949 = Value::sym(interp.intern("T")); - let __t1950 = v_V461.clone(); - rt::eq(&__t1949, &__t1950) - }; - if match rt::is_truthy(interp, &__t1952) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1951 = Value::sym(interp.intern("shen-cl.safe-t")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1951])? - }); - } else { - { - let __t1948 = { - let __t1945 = Value::nil(); - let __t1946 = v_V461.clone(); - rt::eq(&__t1945, &__t1946) - }; - if match rt::is_truthy(interp, &__t1948) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1947 = Value::sym(interp.intern("shen-cl.safe-nil")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1947])? - }); - } else { - { - let __t1944 = Value::bool(true); - if match rt::is_truthy(interp, &__t1944) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V461.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_ch_x2d_T_x2f_NIL(interp: &mut Interp) { - interp.register_native("shen-cl.ch-T/NIL", 1, aot_shen_x2d_cl_x2e_ch_x2d_T_x2f_NIL); - interp.register_aot_direct("shen-cl.ch-T/NIL", aot_shen_x2d_cl_x2e_ch_x2d_T_x2f_NIL); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-let ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_let(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 4 { - return Err(ShenError::new(format!( - "shen-cl.emit-let: expected 4 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V462 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V463 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V464 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V465 = args[3].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W466 = { - let __t1953 = v_V462.clone(); - rt::apply_direct(interp, "shen-cl.ch-T/NIL", &[__t1953])? - }; - { - let v_W467 = { - let __t1954 = v_W466.clone(); - let __t1955 = v_V462.clone(); - let __t1956 = v_V464.clone(); - rt::apply_direct(interp, "shen-cl.subst*", &[__t1954, __t1955, __t1956])? - }; - break Ok({ - let __t1958 = { - let __t1957 = Value::sym(interp.intern("let")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1957])? - }; - let __t1975 = { - let __t1967 = { - let __t1965 = { - let __t1959 = v_W466.clone(); - let __t1964 = { - let __t1962 = { - let __t1960 = v_V463.clone(); - let __t1961 = v_V465.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t1960, __t1961], - )? - }; - let __t1963 = Value::nil(); - rt::cons(&__t1962, &__t1963) - }; - rt::cons(&__t1959, &__t1964) - }; - let __t1966 = Value::nil(); - rt::cons(&__t1965, &__t1966) - }; - let __t1974 = { - let __t1972 = { - let __t1968 = v_W467.clone(); - let __t1971 = { - let __t1969 = v_W466.clone(); - let __t1970 = v_V465.clone(); - rt::cons(&__t1969, &__t1970) - }; - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t1968, __t1971], - )? - }; - let __t1973 = Value::nil(); - rt::cons(&__t1972, &__t1973) - }; - rt::cons(&__t1967, &__t1974) - }; - rt::cons(&__t1958, &__t1975) - }); - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_let(interp: &mut Interp) { - interp.register_native("shen-cl.emit-let", 4, aot_shen_x2d_cl_x2e_emit_x2d_let); - interp.register_aot_direct("shen-cl.emit-let", aot_shen_x2d_cl_x2e_emit_x2d_let); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-lambda ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_lambda( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-lambda: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V468 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V469 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V470 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W471 = { - let __t1976 = v_V468.clone(); - rt::apply_direct(interp, "shen-cl.ch-T/NIL", &[__t1976])? - }; - { - let v_W472 = { - let __t1977 = v_W471.clone(); - let __t1978 = v_V468.clone(); - let __t1979 = v_V469.clone(); - rt::apply_direct(interp, "shen-cl.subst*", &[__t1977, __t1978, __t1979])? - }; - break Ok({ - let __t1981 = { - let __t1980 = Value::sym(interp.intern("lambda")); - rt::apply_direct(interp, "shen-cl.kl", &[__t1980])? - }; - let __t1990 = { - let __t1982 = v_W471.clone(); - let __t1989 = { - let __t1987 = { - let __t1983 = v_W472.clone(); - let __t1986 = { - let __t1984 = v_W471.clone(); - let __t1985 = v_V470.clone(); - rt::cons(&__t1984, &__t1985) - }; - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t1983, __t1986], - )? - }; - let __t1988 = Value::nil(); - rt::cons(&__t1987, &__t1988) - }; - rt::cons(&__t1982, &__t1989) - }; - rt::cons(&__t1981, &__t1990) - }); - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_lambda(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-lambda", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_lambda, - ); - interp.register_aot_direct("shen-cl.emit-lambda", aot_shen_x2d_cl_x2e_emit_x2d_lambda); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-if ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_if(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 4 { - return Err(ShenError::new(format!( - "shen-cl.emit-if: expected 4 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V477 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V478 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V479 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V480 = args[3].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2017 = { - let __t2013 = Value::bool(true); - let __t2014 = v_V477.clone(); - rt::eq(&__t2013, &__t2014) - }; - if match rt::is_truthy(interp, &__t2017) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2015 = v_V478.clone(); - let __t2016 = v_V480.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t2015, __t2016])? - }); - } else { - { - let __t2012 = { - let __t2008 = Value::bool(false); - let __t2009 = v_V477.clone(); - rt::eq(&__t2008, &__t2009) - }; - if match rt::is_truthy(interp, &__t2012) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2010 = v_V479.clone(); - let __t2011 = v_V480.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2010, __t2011], - )? - }); - } else { - { - let __t2007 = Value::bool(true); - if match rt::is_truthy(interp, &__t2007) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1992 = { - let __t1991 = Value::sym(interp.intern("if")); - rt::apply_direct(interp, "shen-cl.cl", &[__t1991])? - }; - let __t2006 = { - let __t1996 = { - let __t1995 = { - let __t1993 = v_V477.clone(); - let __t1994 = v_V480.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t1993, __t1994], - )? - }; - rt::apply_direct( - interp, - "shen-cl.optimise-boolean-check", - &[__t1995], - )? - }; - let __t2005 = { - let __t1999 = { - let __t1997 = v_V478.clone(); - let __t1998 = v_V480.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t1997, __t1998], - )? - }; - let __t2004 = { - let __t2002 = { - let __t2000 = v_V479.clone(); - let __t2001 = v_V480.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2000, __t2001], - )? - }; - let __t2003 = Value::nil(); - rt::cons(&__t2002, &__t2003) - }; - rt::cons(&__t1999, &__t2004) - }; - rt::cons(&__t1996, &__t2005) - }; - rt::cons(&__t1992, &__t2006) - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_if(interp: &mut Interp) { - interp.register_native("shen-cl.emit-if", 4, aot_shen_x2d_cl_x2e_emit_x2d_if); - interp.register_aot_direct("shen-cl.emit-if", aot_shen_x2d_cl_x2e_emit_x2d_if); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-cond ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_cond(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.emit-cond: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V481 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V482 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2019 = { - let __t2018 = Value::sym(interp.intern("cond")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2018])? - }; - let __t2022 = { - let __t2020 = v_V481.clone(); - let __t2021 = v_V482.clone(); - rt::apply_direct(interp, "shen-cl.emit-cond-clauses", &[__t2020, __t2021])? - }; - rt::cons(&__t2019, &__t2022) - }); - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_cond(interp: &mut Interp) { - interp.register_native("shen-cl.emit-cond", 2, aot_shen_x2d_cl_x2e_emit_x2d_cond); - interp.register_aot_direct("shen-cl.emit-cond", aot_shen_x2d_cl_x2e_emit_x2d_cond); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-cond-clauses ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_cond_x2d_clauses( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.emit-cond-clauses: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V489 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V490 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2127 = { - let __t2125 = Value::nil(); - let __t2126 = v_V489.clone(); - rt::eq(&__t2125, &__t2126) - }; - if match rt::is_truthy(interp, &__t2127) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::nil()); - } else { - { - let __t2124 = { - let __t2119 = { - let __t2098 = v_V489.clone(); - rt::is_cons(&__t2098) - }; - if !rt::is_truthy(interp, &__t2119)? { - Value::bool(false) - } else { - let __t2120 = { - let __t2117 = { - let __t2100 = { - let __t2099 = v_V489.clone(); - rt::hd(&__t2099)? - }; - rt::is_cons(&__t2100) - }; - if !rt::is_truthy(interp, &__t2117)? { - Value::bool(false) - } else { - let __t2118 = { - let __t2115 = { - let __t2101 = Value::bool(false); - let __t2104 = { - let __t2103 = { - let __t2102 = v_V489.clone(); - rt::hd(&__t2102)? - }; - rt::hd(&__t2103)? - }; - rt::eq(&__t2101, &__t2104) - }; - if !rt::is_truthy(interp, &__t2115)? { - Value::bool(false) - } else { - let __t2116 = { - let __t2113 = { - let __t2107 = { - let __t2106 = { - let __t2105 = v_V489.clone(); - rt::hd(&__t2105)? - }; - rt::tl(&__t2106)? - }; - rt::is_cons(&__t2107) - }; - if !rt::is_truthy(interp, &__t2113)? { - Value::bool(false) - } else { - let __t2114 = { - let __t2108 = Value::nil(); - let __t2112 = { - let __t2111 = { - let __t2110 = { - let __t2109 = v_V489.clone(); - rt::hd(&__t2109)? - }; - rt::tl(&__t2110)? - }; - rt::tl(&__t2111)? - }; - rt::eq(&__t2108, &__t2112) - }; - Value::bool(rt::is_truthy(interp, &__t2114)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2116)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2118)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2120)?) - } - }; - if match rt::is_truthy(interp, &__t2124) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t2122 = { - let __t2121 = v_V489.clone(); - rt::tl(&__t2121)? - }; - let __t2123 = v_V490.clone(); - v_V489 = __t2122; - v_V490 = __t2123; - continue; - } - } else { - { - let __t2097 = { - let __t2083 = { - let __t2062 = v_V489.clone(); - rt::is_cons(&__t2062) - }; - if !rt::is_truthy(interp, &__t2083)? { - Value::bool(false) - } else { - let __t2084 = { - let __t2081 = { - let __t2064 = { - let __t2063 = v_V489.clone(); - rt::hd(&__t2063)? - }; - rt::is_cons(&__t2064) - }; - if !rt::is_truthy(interp, &__t2081)? { - Value::bool(false) - } else { - let __t2082 = { - let __t2079 = { - let __t2065 = Value::bool(true); - let __t2068 = { - let __t2067 = { - let __t2066 = v_V489.clone(); - rt::hd(&__t2066)? - }; - rt::hd(&__t2067)? - }; - rt::eq(&__t2065, &__t2068) - }; - if !rt::is_truthy(interp, &__t2079)? { - Value::bool(false) - } else { - let __t2080 = { - let __t2077 = { - let __t2071 = { - let __t2070 = { - let __t2069 = v_V489.clone(); - rt::hd(&__t2069)? - }; - rt::tl(&__t2070)? - }; - rt::is_cons(&__t2071) - }; - if !rt::is_truthy(interp, &__t2077)? { - Value::bool(false) - } else { - let __t2078 = { - let __t2072 = Value::nil(); - let __t2076 = { - let __t2075 = { - let __t2074 = { - let __t2073 = - v_V489.clone(); - rt::hd(&__t2073)? - }; - rt::tl(&__t2074)? - }; - rt::tl(&__t2075)? - }; - rt::eq(&__t2072, &__t2076) - }; - Value::bool(rt::is_truthy( - interp, &__t2078, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2080)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2082)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2084)?) - } - }; - if match rt::is_truthy(interp, &__t2097) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2095 = { - let __t2086 = { - let __t2085 = Value::sym(interp.intern("t")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2085])? - }; - let __t2094 = { - let __t2092 = { - let __t2090 = { - let __t2089 = { - let __t2088 = { - let __t2087 = v_V489.clone(); - rt::hd(&__t2087)? - }; - rt::tl(&__t2088)? - }; - rt::hd(&__t2089)? - }; - let __t2091 = v_V490.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2090, __t2091], - )? - }; - let __t2093 = Value::nil(); - rt::cons(&__t2092, &__t2093) - }; - rt::cons(&__t2086, &__t2094) - }; - let __t2096 = Value::nil(); - rt::cons(&__t2095, &__t2096) - }); - } else { - { - let __t2061 = { - let __t2040 = { - let __t2025 = v_V489.clone(); - rt::is_cons(&__t2025) - }; - if !rt::is_truthy(interp, &__t2040)? { - Value::bool(false) - } else { - let __t2041 = { - let __t2038 = { - let __t2027 = { - let __t2026 = v_V489.clone(); - rt::hd(&__t2026)? - }; - rt::is_cons(&__t2027) - }; - if !rt::is_truthy(interp, &__t2038)? { - Value::bool(false) - } else { - let __t2039 = { - let __t2036 = { - let __t2030 = { - let __t2029 = { - let __t2028 = v_V489.clone(); - rt::hd(&__t2028)? - }; - rt::tl(&__t2029)? - }; - rt::is_cons(&__t2030) - }; - if !rt::is_truthy(interp, &__t2036)? { - Value::bool(false) - } else { - let __t2037 = { - let __t2031 = Value::nil(); - let __t2035 = { - let __t2034 = { - let __t2033 = { - let __t2032 = - v_V489.clone(); - rt::hd(&__t2032)? - }; - rt::tl(&__t2033)? - }; - rt::tl(&__t2034)? - }; - rt::eq(&__t2031, &__t2035) - }; - Value::bool(rt::is_truthy( - interp, &__t2037, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2039)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2041)?) - } - }; - if match rt::is_truthy(interp, &__t2061) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W491 = { - let __t2046 = { - let __t2044 = { - let __t2043 = { - let __t2042 = v_V489.clone(); - rt::hd(&__t2042)? - }; - rt::hd(&__t2043)? - }; - let __t2045 = v_V490.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2044, __t2045], - )? - }; - rt::apply_direct( - interp, - "shen-cl.optimise-boolean-check", - &[__t2046], - )? - }; - { - let v_W492 = { - let __t2050 = { - let __t2049 = { - let __t2048 = { - let __t2047 = v_V489.clone(); - rt::hd(&__t2047)? - }; - rt::tl(&__t2048)? - }; - rt::hd(&__t2049)? - }; - let __t2051 = v_V490.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2050, __t2051], - )? - }; - { - let v_W493 = { - let __t2053 = { - let __t2052 = v_V489.clone(); - rt::tl(&__t2052)? - }; - let __t2054 = v_V490.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-cond-clauses", - &[__t2053, __t2054], - )? - }; - break Ok({ - let __t2059 = { - let __t2055 = v_W491.clone(); - let __t2058 = { - let __t2056 = v_W492.clone(); - let __t2057 = Value::nil(); - rt::cons(&__t2056, &__t2057) - }; - rt::cons(&__t2055, &__t2058) - }; - let __t2060 = v_W493.clone(); - rt::cons(&__t2059, &__t2060) - }); - } - } - } - } else { - { - let __t2024 = Value::bool(true); - if match rt::is_truthy(interp, &__t2024) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2023 = Value::sym( - interp.intern("shen-cl.emit-cond-clauses"), - ); - rt::apply_direct( - interp, - "shen.f-error", - &[__t2023], - )? - }); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_cond_x2d_clauses(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-cond-clauses", - 2, - aot_shen_x2d_cl_x2e_emit_x2d_cond_x2d_clauses, - ); - interp.register_aot_direct( - "shen-cl.emit-cond-clauses", - aot_shen_x2d_cl_x2e_emit_x2d_cond_x2d_clauses, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-trap-error ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-trap-error: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V494 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V495 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V496 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_Freeze497 = { - let v_V494 = v_V494.clone(); - let v_V495 = v_V495.clone(); - let v_V496 = v_V496.clone(); - rt::make_aot_closure( - "", - 0, - move |interp, _args| { - Ok({ - let __t2138 = Value::bool(true); - if rt::is_truthy(interp, &__t2138)? { - { - let __t2128 = Value::sym(interp.intern("trap-error")); - let __t2137 = { - let __t2131 = { - let __t2129 = v_V494.clone(); - let __t2130 = v_V496.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2129, __t2130], - )? - }; - let __t2136 = { - let __t2134 = { - let __t2132 = v_V495.clone(); - let __t2133 = v_V496.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2132, __t2133], - )? - }; - let __t2135 = Value::nil(); - rt::cons(&__t2134, &__t2135) - }; - rt::cons(&__t2131, &__t2136) - }; - rt::cons(&__t2128, &__t2137) - } - } else { - return Err(ShenError::new("cond: no clause matched")); - } - }) - }, - vec![v_V494, v_V495, v_V496], - interp, - ) - }; - { - let __t2156 = { - let __t2154 = { - let __t2139 = v_V494.clone(); - rt::is_cons(&__t2139) - }; - if !rt::is_truthy(interp, &__t2154)? { - Value::bool(false) - } else { - let __t2155 = { - let __t2152 = { - let __t2140 = - Value::sym(interp.intern("shen-cl.*compiling-shen-sources*")); - rt::apply_direct(interp, "value", &[__t2140])? - }; - if !rt::is_truthy(interp, &__t2152)? { - Value::bool(false) - } else { - let __t2153 = { - let __t2142 = { - let __t2141 = v_V494.clone(); - rt::hd(&__t2141)? - }; - let __t2151 = { - let __t2143 = Value::sym(interp.intern("value")); - let __t2150 = { - let __t2144 = Value::sym(interp.intern("<-vector")); - let __t2149 = { - let __t2145 = - Value::sym(interp.intern("<-address")); - let __t2148 = { - let __t2146 = Value::sym(interp.intern("get")); - let __t2147 = Value::nil(); - rt::cons(&__t2146, &__t2147) - }; - rt::cons(&__t2145, &__t2148) - }; - rt::cons(&__t2144, &__t2149) - }; - rt::cons(&__t2143, &__t2150) - }; - rt::apply_direct(interp, "element?", &[__t2142, __t2151])? - }; - Value::bool(rt::is_truthy(interp, &__t2153)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2155)?) - } - }; - if match rt::is_truthy(interp, &__t2156) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_Result498 = { - let __t2157 = v_V494.clone(); - let __t2158 = v_V495.clone(); - let __t2159 = v_V496.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-trap-error-optimise", - &[__t2157, __t2158, __t2159], - )? - }; - { - let __t2162 = { - let __t2160 = v_Result498.clone(); - let __t2161 = { rt::apply_direct(interp, "fail", &[])? }; - rt::eq(&__t2160, &__t2161) - }; - if match rt::is_truthy(interp, &__t2162) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(rt::apply_value(interp, v_Freeze497.clone(), &[])?); - } else { - break Ok(v_Result498.clone()); - } - } - } - } else { - break Ok(rt::apply_value(interp, v_Freeze497.clone(), &[])?); - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-trap-error", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error, - ); - interp.register_aot_direct( - "shen-cl.emit-trap-error", - aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-trap-error-optimise ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error_x2d_optimise( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-trap-error-optimise: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V505 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V506 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V507 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2429 = { - let __t2413 = { - let __t2375 = v_V505.clone(); - rt::is_cons(&__t2375) - }; - if !rt::is_truthy(interp, &__t2413)? { - Value::bool(false) - } else { - let __t2414 = { - let __t2411 = { - let __t2376 = Value::sym(interp.intern("value")); - let __t2378 = { - let __t2377 = v_V505.clone(); - rt::hd(&__t2377)? - }; - rt::eq(&__t2376, &__t2378) - }; - if !rt::is_truthy(interp, &__t2411)? { - Value::bool(false) - } else { - let __t2412 = { - let __t2409 = { - let __t2380 = { - let __t2379 = v_V505.clone(); - rt::tl(&__t2379)? - }; - rt::is_cons(&__t2380) - }; - if !rt::is_truthy(interp, &__t2409)? { - Value::bool(false) - } else { - let __t2410 = { - let __t2407 = { - let __t2381 = Value::nil(); - let __t2384 = { - let __t2383 = { - let __t2382 = v_V505.clone(); - rt::tl(&__t2382)? - }; - rt::tl(&__t2383)? - }; - rt::eq(&__t2381, &__t2384) - }; - if !rt::is_truthy(interp, &__t2407)? { - Value::bool(false) - } else { - let __t2408 = { - let __t2405 = { - let __t2385 = v_V506.clone(); - rt::is_cons(&__t2385) - }; - if !rt::is_truthy(interp, &__t2405)? { - Value::bool(false) - } else { - let __t2406 = { - let __t2403 = { - let __t2386 = - Value::sym(interp.intern("lambda")); - let __t2388 = { - let __t2387 = v_V506.clone(); - rt::hd(&__t2387)? - }; - rt::eq(&__t2386, &__t2388) - }; - if !rt::is_truthy(interp, &__t2403)? { - Value::bool(false) - } else { - let __t2404 = { - let __t2401 = { - let __t2390 = { - let __t2389 = - v_V506.clone(); - rt::tl(&__t2389)? - }; - rt::is_cons(&__t2390) - }; - if !rt::is_truthy(interp, &__t2401)? - { - Value::bool(false) - } else { - let __t2402 = { - let __t2399 = { - let __t2393 = { - let __t2392 = { - let __t2391 = - v_V506 - .clone( - ); - rt::tl( - &__t2391, - )? - }; - rt::tl(&__t2392)? - }; - rt::is_cons(&__t2393) - }; - if !rt::is_truthy( - interp, &__t2399, - )? { - Value::bool(false) - } else { - let __t2400 = { - let __t2394 = - Value::nil(); - let __t2398 = { - let __t2397 = { - let __t2396 = { - let __t2395 = v_V506.clone(); - rt::tl(&__t2395)? - }; - rt::tl(&__t2396)? - }; - rt::tl( - &__t2397, - )? - }; - rt::eq( - &__t2394, - &__t2398, - ) - }; - Value::bool( - rt::is_truthy( - interp, - &__t2400, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2402, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2404, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2406)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2408)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2410)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2412)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2414)?) - } - }; - if match rt::is_truthy(interp, &__t2429) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2427 = { - let __t2415 = Value::sym(interp.intern("shen-cl.value/or")); - let __t2426 = { - let __t2418 = { - let __t2417 = { - let __t2416 = v_V505.clone(); - rt::tl(&__t2416)? - }; - rt::hd(&__t2417)? - }; - let __t2425 = { - let __t2423 = { - let __t2419 = Value::sym(interp.intern("freeze")); - let __t2422 = { - let __t2421 = { - let __t2420 = v_V506.clone(); - rt::tl(&__t2420)? - }; - rt::tl(&__t2421)? - }; - rt::cons(&__t2419, &__t2422) - }; - let __t2424 = Value::nil(); - rt::cons(&__t2423, &__t2424) - }; - rt::cons(&__t2418, &__t2425) - }; - rt::cons(&__t2415, &__t2426) - }; - let __t2428 = v_V507.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t2427, __t2428])? - }); - } else { - { - let __t2374 = { - let __t2353 = { - let __t2309 = v_V505.clone(); - rt::is_cons(&__t2309) - }; - if !rt::is_truthy(interp, &__t2353)? { - Value::bool(false) - } else { - let __t2354 = { - let __t2351 = { - let __t2310 = Value::sym(interp.intern("<-vector")); - let __t2312 = { - let __t2311 = v_V505.clone(); - rt::hd(&__t2311)? - }; - rt::eq(&__t2310, &__t2312) - }; - if !rt::is_truthy(interp, &__t2351)? { - Value::bool(false) - } else { - let __t2352 = { - let __t2349 = { - let __t2314 = { - let __t2313 = v_V505.clone(); - rt::tl(&__t2313)? - }; - rt::is_cons(&__t2314) - }; - if !rt::is_truthy(interp, &__t2349)? { - Value::bool(false) - } else { - let __t2350 = { - let __t2347 = { - let __t2317 = { - let __t2316 = { - let __t2315 = v_V505.clone(); - rt::tl(&__t2315)? - }; - rt::tl(&__t2316)? - }; - rt::is_cons(&__t2317) - }; - if !rt::is_truthy(interp, &__t2347)? { - Value::bool(false) - } else { - let __t2348 = { - let __t2345 = { - let __t2318 = Value::nil(); - let __t2322 = { - let __t2321 = { - let __t2320 = { - let __t2319 = - v_V505.clone(); - rt::tl(&__t2319)? - }; - rt::tl(&__t2320)? - }; - rt::tl(&__t2321)? - }; - rt::eq(&__t2318, &__t2322) - }; - if !rt::is_truthy(interp, &__t2345)? { - Value::bool(false) - } else { - let __t2346 = { - let __t2343 = { - let __t2323 = v_V506.clone(); - rt::is_cons(&__t2323) - }; - if !rt::is_truthy(interp, &__t2343)? - { - Value::bool(false) - } else { - let __t2344 = { - let __t2341 = { - let __t2324 = - Value::sym( - interp.intern( - "lambda", - ), - ); - let __t2326 = { - let __t2325 = - v_V506.clone(); - rt::hd(&__t2325)? - }; - rt::eq( - &__t2324, &__t2326, - ) - }; - if !rt::is_truthy( - interp, &__t2341, - )? { - Value::bool(false) - } else { - let __t2342 = { - let __t2339 = { - let __t2328 = { - let __t2327 = v_V506.clone(); - rt::tl(&__t2327)? - }; - rt::is_cons( - &__t2328, - ) - }; - if !rt::is_truthy( - interp, - &__t2339, - )? { - Value::bool( - false, - ) - } else { - let __t2340 = { - let __t2337 = { - let __t2331 = { - let __t2330 = { let __t2329 = v_V506.clone(); rt::tl(&__t2329)? }; - rt::tl(&__t2330)? - }; - rt::is_cons(&__t2331) - }; - if !rt::is_truthy(interp, &__t2337)? { Value::bool(false) } else { let __t2338 = { let __t2332 = Value::nil(); let __t2336 = { let __t2335 = { let __t2334 = { let __t2333 = v_V506.clone(); rt::tl(&__t2333)? }; rt::tl(&__t2334)? }; rt::tl(&__t2335)? }; rt::eq(&__t2332, &__t2336) }; Value::bool(rt::is_truthy(interp, &__t2338)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2340)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2342, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2344, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2346, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2348)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2350)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2352)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2354)?) - } - }; - if match rt::is_truthy(interp, &__t2374) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2372 = { - let __t2355 = Value::sym(interp.intern("shen-cl.<-vector/or")); - let __t2371 = { - let __t2358 = { - let __t2357 = { - let __t2356 = v_V505.clone(); - rt::tl(&__t2356)? - }; - rt::hd(&__t2357)? - }; - let __t2370 = { - let __t2362 = { - let __t2361 = { - let __t2360 = { - let __t2359 = v_V505.clone(); - rt::tl(&__t2359)? - }; - rt::tl(&__t2360)? - }; - rt::hd(&__t2361)? - }; - let __t2369 = { - let __t2367 = { - let __t2363 = Value::sym(interp.intern("freeze")); - let __t2366 = { - let __t2365 = { - let __t2364 = v_V506.clone(); - rt::tl(&__t2364)? - }; - rt::tl(&__t2365)? - }; - rt::cons(&__t2363, &__t2366) - }; - let __t2368 = Value::nil(); - rt::cons(&__t2367, &__t2368) - }; - rt::cons(&__t2362, &__t2369) - }; - rt::cons(&__t2358, &__t2370) - }; - rt::cons(&__t2355, &__t2371) - }; - let __t2373 = v_V507.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2372, __t2373], - )? - }); - } else { - { - let __t2308 = { - let __t2287 = { - let __t2243 = v_V505.clone(); - rt::is_cons(&__t2243) - }; - if !rt::is_truthy(interp, &__t2287)? { - Value::bool(false) - } else { - let __t2288 = { - let __t2285 = { - let __t2244 = Value::sym(interp.intern("<-address")); - let __t2246 = { - let __t2245 = v_V505.clone(); - rt::hd(&__t2245)? - }; - rt::eq(&__t2244, &__t2246) - }; - if !rt::is_truthy(interp, &__t2285)? { - Value::bool(false) - } else { - let __t2286 = { - let __t2283 = { - let __t2248 = { - let __t2247 = v_V505.clone(); - rt::tl(&__t2247)? - }; - rt::is_cons(&__t2248) - }; - if !rt::is_truthy(interp, &__t2283)? { - Value::bool(false) - } else { - let __t2284 = { - let __t2281 = { - let __t2251 = { - let __t2250 = { - let __t2249 = v_V505.clone(); - rt::tl(&__t2249)? - }; - rt::tl(&__t2250)? - }; - rt::is_cons(&__t2251) - }; - if !rt::is_truthy(interp, &__t2281)? { - Value::bool(false) - } else { - let __t2282 = { - let __t2279 = { - let __t2252 = Value::nil(); - let __t2256 = { - let __t2255 = { - let __t2254 = { - let __t2253 = - v_V505.clone(); - rt::tl(&__t2253)? - }; - rt::tl(&__t2254)? - }; - rt::tl(&__t2255)? - }; - rt::eq(&__t2252, &__t2256) - }; - if !rt::is_truthy(interp, &__t2279)? - { - Value::bool(false) - } else { - let __t2280 = { - let __t2277 = { - let __t2257 = - v_V506.clone(); - rt::is_cons(&__t2257) - }; - if !rt::is_truthy( - interp, &__t2277, - )? { - Value::bool(false) - } else { - let __t2278 = { - let __t2275 = { - let __t2258 = Value::sym(interp.intern("lambda")); - let __t2260 = { - let __t2259 = v_V506.clone(); - rt::hd(&__t2259)? - }; - rt::eq( - &__t2258, - &__t2260, - ) - }; - if !rt::is_truthy( - interp, - &__t2275, - )? { - Value::bool( - false, - ) - } else { - let __t2276 = { - let __t2273 = { - let __t2262 = { - let __t2261 = v_V506.clone(); - rt::tl(&__t2261)? - }; - rt::is_cons(&__t2262) - }; - if !rt::is_truthy(interp, &__t2273)? { Value::bool(false) } else { let __t2274 = { let __t2271 = { let __t2265 = { let __t2264 = { let __t2263 = v_V506.clone(); rt::tl(&__t2263)? }; rt::tl(&__t2264)? }; rt::is_cons(&__t2265) }; if !rt::is_truthy(interp, &__t2271)? { Value::bool(false) } else { let __t2272 = { let __t2266 = Value::nil(); let __t2270 = { let __t2269 = { let __t2268 = { let __t2267 = v_V506.clone(); rt::tl(&__t2267)? }; rt::tl(&__t2268)? }; rt::tl(&__t2269)? }; rt::eq(&__t2266, &__t2270) }; Value::bool(rt::is_truthy(interp, &__t2272)?) } }; Value::bool(rt::is_truthy(interp, &__t2274)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2276)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2278, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2280, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2282, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2284)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2286)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2288)?) - } - }; - if match rt::is_truthy(interp, &__t2308) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2306 = { - let __t2289 = - Value::sym(interp.intern("shen-cl.<-address/or")); - let __t2305 = { - let __t2292 = { - let __t2291 = { - let __t2290 = v_V505.clone(); - rt::tl(&__t2290)? - }; - rt::hd(&__t2291)? - }; - let __t2304 = { - let __t2296 = { - let __t2295 = { - let __t2294 = { - let __t2293 = v_V505.clone(); - rt::tl(&__t2293)? - }; - rt::tl(&__t2294)? - }; - rt::hd(&__t2295)? - }; - let __t2303 = { - let __t2301 = { - let __t2297 = - Value::sym(interp.intern("freeze")); - let __t2300 = { - let __t2299 = { - let __t2298 = v_V506.clone(); - rt::tl(&__t2298)? - }; - rt::tl(&__t2299)? - }; - rt::cons(&__t2297, &__t2300) - }; - let __t2302 = Value::nil(); - rt::cons(&__t2301, &__t2302) - }; - rt::cons(&__t2296, &__t2303) - }; - rt::cons(&__t2292, &__t2304) - }; - rt::cons(&__t2289, &__t2305) - }; - let __t2307 = v_V507.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2306, __t2307], - )? - }); - } else { - { - let __t2242 = { - let __t2215 = { - let __t2164 = v_V505.clone(); - rt::is_cons(&__t2164) - }; - if !rt::is_truthy(interp, &__t2215)? { - Value::bool(false) - } else { - let __t2216 = { - let __t2213 = { - let __t2165 = Value::sym(interp.intern("get")); - let __t2167 = { - let __t2166 = v_V505.clone(); - rt::hd(&__t2166)? - }; - rt::eq(&__t2165, &__t2167) - }; - if !rt::is_truthy(interp, &__t2213)? { - Value::bool(false) - } else { - let __t2214 = { - let __t2211 = { - let __t2169 = { - let __t2168 = v_V505.clone(); - rt::tl(&__t2168)? - }; - rt::is_cons(&__t2169) - }; - if !rt::is_truthy(interp, &__t2211)? { - Value::bool(false) - } else { - let __t2212 = { - let __t2209 = { - let __t2172 = { - let __t2171 = { - let __t2170 = - v_V505.clone(); - rt::tl(&__t2170)? - }; - rt::tl(&__t2171)? - }; - rt::is_cons(&__t2172) - }; - if !rt::is_truthy(interp, &__t2209)? - { - Value::bool(false) - } else { - let __t2210 = { - let __t2207 = { - let __t2176 = { - let __t2175 = { - let __t2174 = { - let __t2173 = v_V505.clone(); - rt::tl(&__t2173)? - }; - rt::tl( - &__t2174, - )? - }; - rt::tl(&__t2175)? - }; - rt::is_cons(&__t2176) - }; - if !rt::is_truthy( - interp, &__t2207, - )? { - Value::bool(false) - } else { - let __t2208 = { - let __t2205 = { - let __t2177 = - Value::nil( - ); - let __t2182 = { - let __t2181 = { - let __t2180 = { - let __t2179 = { let __t2178 = v_V505.clone(); rt::tl(&__t2178)? }; - rt::tl(&__t2179)? - }; - rt::tl(&__t2180)? - }; - rt::tl(&__t2181)? - }; - rt::eq( - &__t2177, - &__t2182, - ) - }; - if !rt::is_truthy( - interp, - &__t2205, - )? { - Value::bool( - false, - ) - } else { - let __t2206 = { - let __t2203 = { - let __t2183 = v_V506.clone(); - rt::is_cons(&__t2183) - }; - if !rt::is_truthy(interp, &__t2203)? { Value::bool(false) } else { let __t2204 = { let __t2201 = { let __t2184 = Value::sym(interp.intern("lambda")); let __t2186 = { let __t2185 = v_V506.clone(); rt::hd(&__t2185)? }; rt::eq(&__t2184, &__t2186) }; if !rt::is_truthy(interp, &__t2201)? { Value::bool(false) } else { let __t2202 = { let __t2199 = { let __t2188 = { let __t2187 = v_V506.clone(); rt::tl(&__t2187)? }; rt::is_cons(&__t2188) }; if !rt::is_truthy(interp, &__t2199)? { Value::bool(false) } else { let __t2200 = { let __t2197 = { let __t2191 = { let __t2190 = { let __t2189 = v_V506.clone(); rt::tl(&__t2189)? }; rt::tl(&__t2190)? }; rt::is_cons(&__t2191) }; if !rt::is_truthy(interp, &__t2197)? { Value::bool(false) } else { let __t2198 = { let __t2192 = Value::nil(); let __t2196 = { let __t2195 = { let __t2194 = { let __t2193 = v_V506.clone(); rt::tl(&__t2193)? }; rt::tl(&__t2194)? }; rt::tl(&__t2195)? }; rt::eq(&__t2192, &__t2196) }; Value::bool(rt::is_truthy(interp, &__t2198)?) } }; Value::bool(rt::is_truthy(interp, &__t2200)?) } }; Value::bool(rt::is_truthy(interp, &__t2202)?) } }; Value::bool(rt::is_truthy(interp, &__t2204)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2206)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2208, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2210, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2212, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2214)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2216)?) - } - }; - if match rt::is_truthy(interp, &__t2242) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2240 = { - let __t2217 = - Value::sym(interp.intern("shen-cl.get/or")); - let __t2239 = { - let __t2220 = { - let __t2219 = { - let __t2218 = v_V505.clone(); - rt::tl(&__t2218)? - }; - rt::hd(&__t2219)? - }; - let __t2238 = { - let __t2224 = { - let __t2223 = { - let __t2222 = { - let __t2221 = v_V505.clone(); - rt::tl(&__t2221)? - }; - rt::tl(&__t2222)? - }; - rt::hd(&__t2223)? - }; - let __t2237 = { - let __t2229 = { - let __t2228 = { - let __t2227 = { - let __t2226 = { - let __t2225 = - v_V505.clone(); - rt::tl(&__t2225)? - }; - rt::tl(&__t2226)? - }; - rt::tl(&__t2227)? - }; - rt::hd(&__t2228)? - }; - let __t2236 = { - let __t2234 = { - let __t2230 = Value::sym( - interp.intern("freeze"), - ); - let __t2233 = { - let __t2232 = { - let __t2231 = - v_V506.clone(); - rt::tl(&__t2231)? - }; - rt::tl(&__t2232)? - }; - rt::cons(&__t2230, &__t2233) - }; - let __t2235 = Value::nil(); - rt::cons(&__t2234, &__t2235) - }; - rt::cons(&__t2229, &__t2236) - }; - rt::cons(&__t2224, &__t2237) - }; - rt::cons(&__t2220, &__t2238) - }; - rt::cons(&__t2217, &__t2239) - }; - let __t2241 = v_V507.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2240, __t2241], - )? - }); - } else { - { - let __t2163 = Value::bool(true); - if match rt::is_truthy(interp, &__t2163) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - rt::apply_direct(interp, "fail", &[])? - }); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error_x2d_optimise(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-trap-error-optimise", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error_x2d_optimise, - ); - interp.register_aot_direct( - "shen-cl.emit-trap-error-optimise", - aot_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error_x2d_optimise, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-equality-check ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_equality_x2d_check( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-equality-check: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V508 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V509 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V510 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2431 = { - let __t2430 = Value::sym(interp.intern("shen-cl.equal?")); - rt::apply_direct(interp, "shen-cl.kl", &[__t2430])? - }; - let __t2440 = { - let __t2434 = { - let __t2432 = v_V508.clone(); - let __t2433 = v_V510.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t2432, __t2433])? - }; - let __t2439 = { - let __t2437 = { - let __t2435 = v_V509.clone(); - let __t2436 = v_V510.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t2435, __t2436])? - }; - let __t2438 = Value::nil(); - rt::cons(&__t2437, &__t2438) - }; - rt::cons(&__t2434, &__t2439) - }; - rt::cons(&__t2431, &__t2440) - }); - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_equality_x2d_check(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-equality-check", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_equality_x2d_check, - ); - interp.register_aot_direct( - "shen-cl.emit-equality-check", - aot_shen_x2d_cl_x2e_emit_x2d_equality_x2d_check, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-application ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_application( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-application: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V511 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V512 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V513 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2441 = v_V511.clone(); - let __t2443 = { - let __t2442 = v_V511.clone(); - rt::apply_direct(interp, "arity", &[__t2442])? - }; - let __t2444 = v_V512.clone(); - let __t2445 = v_V513.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-application*", - &[__t2441, __t2443, __t2444, __t2445], - )? - }); - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_application(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-application", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_application, - ); - interp.register_aot_direct( - "shen-cl.emit-application", - aot_shen_x2d_cl_x2e_emit_x2d_application, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.is-partial-application? ...)` -pub fn aot_shen_x2d_cl_x2e_is_x2d_partial_x2d_application_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.is-partial-application?: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V514 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V515 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V516 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2453 = { - let __t2451 = { - let __t2446 = v_V515.clone(); - let __t2447 = Value::int(-1i64); - rt::eq(&__t2446, &__t2447) - }; - if rt::is_truthy(interp, &__t2451)? { - Value::bool(true) - } else { - let __t2452 = { - let __t2448 = v_V515.clone(); - let __t2450 = { - let __t2449 = v_V516.clone(); - rt::apply_direct(interp, "length", &[__t2449])? - }; - rt::eq(&__t2448, &__t2450) - }; - Value::bool(rt::is_truthy(interp, &__t2452)?) - } - }; - rt::apply_direct(interp, "not", &[__t2453])? - }); - } -} - -fn install_shen_x2d_cl_x2e_is_x2d_partial_x2d_application_x3f_(interp: &mut Interp) { - interp.register_native( - "shen-cl.is-partial-application?", - 3, - aot_shen_x2d_cl_x2e_is_x2d_partial_x2d_application_x3f_, - ); - interp.register_aot_direct( - "shen-cl.is-partial-application?", - aot_shen_x2d_cl_x2e_is_x2d_partial_x2d_application_x3f_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.take-n ...)` -pub fn aot_shen_x2d_cl_x2e_take_x2d_n(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.take-n: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V519 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V520 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2468 = { - let __t2466 = Value::int(0i64); - let __t2467 = v_V520.clone(); - rt::eq(&__t2466, &__t2467) - }; - if match rt::is_truthy(interp, &__t2468) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::nil()); - } else { - { - let __t2465 = { - let __t2456 = v_V519.clone(); - rt::is_cons(&__t2456) - }; - if match rt::is_truthy(interp, &__t2465) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2458 = { - let __t2457 = v_V519.clone(); - rt::hd(&__t2457)? - }; - let __t2464 = { - let __t2460 = { - let __t2459 = v_V519.clone(); - rt::tl(&__t2459)? - }; - let __t2463 = { - let __t2461 = v_V520.clone(); - let __t2462 = Value::int(1i64); - rt::sub(&__t2461, &__t2462)? - }; - rt::apply_direct(interp, "shen-cl.take-n", &[__t2460, __t2463])? - }; - rt::cons(&__t2458, &__t2464) - }); - } else { - { - let __t2455 = Value::bool(true); - if match rt::is_truthy(interp, &__t2455) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2454 = Value::sym(interp.intern("shen-cl.take-n")); - rt::apply_direct(interp, "shen.f-error", &[__t2454])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_take_x2d_n(interp: &mut Interp) { - interp.register_native("shen-cl.take-n", 2, aot_shen_x2d_cl_x2e_take_x2d_n); - interp.register_aot_direct("shen-cl.take-n", aot_shen_x2d_cl_x2e_take_x2d_n); -} - -/// AOT-compiled from KL `(defun shen-cl.drop-n ...)` -pub fn aot_shen_x2d_cl_x2e_drop_x2d_n(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.drop-n: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V521 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V522 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2480 = { - let __t2478 = Value::int(0i64); - let __t2479 = v_V522.clone(); - rt::eq(&__t2478, &__t2479) - }; - if match rt::is_truthy(interp, &__t2480) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V521.clone()); - } else { - { - let __t2477 = { - let __t2471 = v_V521.clone(); - rt::is_cons(&__t2471) - }; - if match rt::is_truthy(interp, &__t2477) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t2473 = { - let __t2472 = v_V521.clone(); - rt::tl(&__t2472)? - }; - let __t2476 = { - let __t2474 = v_V522.clone(); - let __t2475 = Value::int(1i64); - rt::sub(&__t2474, &__t2475)? - }; - v_V521 = __t2473; - v_V522 = __t2476; - continue; - } - } else { - { - let __t2470 = Value::bool(true); - if match rt::is_truthy(interp, &__t2470) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2469 = Value::sym(interp.intern("shen-cl.drop-n")); - rt::apply_direct(interp, "shen.f-error", &[__t2469])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_drop_x2d_n(interp: &mut Interp) { - interp.register_native("shen-cl.drop-n", 2, aot_shen_x2d_cl_x2e_drop_x2d_n); - interp.register_aot_direct("shen-cl.drop-n", aot_shen_x2d_cl_x2e_drop_x2d_n); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-partial-application ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_partial_x2d_application( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 4 { - return Err(ShenError::new(format!( - "shen-cl.emit-partial-application: expected 4 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V531 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V532 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V533 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V534 = args[3].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2513 = { - let __t2501 = v_V532.clone(); - let __t2503 = { - let __t2502 = v_V533.clone(); - rt::apply_direct(interp, "length", &[__t2502])? - }; - rt::gt(&__t2501, &__t2503)? - }; - if match rt::is_truthy(interp, &__t2513) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W535 = { - let __t2506 = { - let v_V534 = v_V534.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z536 = args[0].clone(); - Ok({ - let __t2504 = v_Z536.clone(); - let __t2505 = v_V534.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2504, __t2505], - )? - }) - }, - vec![v_V534], - interp, - ) - }; - let __t2507 = v_V533.clone(); - rt::apply_direct(interp, "map", &[__t2506, __t2507])? - }; - break Ok({ - let __t2511 = { - let __t2508 = v_V531.clone(); - let __t2509 = v_V532.clone(); - let __t2510 = v_V534.clone(); - rt::apply_direct( - interp, - "shen-cl.nest-lambda", - &[__t2508, __t2509, __t2510], - )? - }; - let __t2512 = v_W535.clone(); - rt::apply_direct(interp, "shen-cl.nest-call", &[__t2511, __t2512])? - }); - } - } else { - { - let __t2500 = { - let __t2483 = v_V532.clone(); - let __t2485 = { - let __t2484 = v_V533.clone(); - rt::apply_direct(interp, "length", &[__t2484])? - }; - rt::lt(&__t2483, &__t2485)? - }; - if match rt::is_truthy(interp, &__t2500) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W537 = { - let __t2490 = { - let __t2486 = v_V531.clone(); - let __t2489 = { - let __t2487 = v_V533.clone(); - let __t2488 = v_V532.clone(); - rt::apply_direct( - interp, - "shen-cl.take-n", - &[__t2487, __t2488], - )? - }; - rt::cons(&__t2486, &__t2489) - }; - let __t2491 = v_V534.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2490, __t2491], - )? - }; - { - let v_W538 = { - let __t2494 = { - let v_V534 = v_V534.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z539 = args[0].clone(); - Ok({ - let __t2492 = v_Z539.clone(); - let __t2493 = v_V534.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2492, __t2493], - )? - }) - }, - vec![v_V534], - interp, - ) - }; - let __t2497 = { - let __t2495 = v_V533.clone(); - let __t2496 = v_V532.clone(); - rt::apply_direct( - interp, - "shen-cl.drop-n", - &[__t2495, __t2496], - )? - }; - rt::apply_direct(interp, "map", &[__t2494, __t2497])? - }; - break Ok({ - let __t2498 = v_W537.clone(); - let __t2499 = v_W538.clone(); - rt::apply_direct( - interp, - "shen-cl.nest-call", - &[__t2498, __t2499], - )? - }); - } - } - } else { - { - let __t2482 = Value::bool(true); - if match rt::is_truthy(interp, &__t2482) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2481 = Value::str("emit-partial-application called with non-partial application"); - rt::apply_direct(interp, "simple-error", &[__t2481])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_partial_x2d_application(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-partial-application", - 4, - aot_shen_x2d_cl_x2e_emit_x2d_partial_x2d_application, - ); - interp.register_aot_direct( - "shen-cl.emit-partial-application", - aot_shen_x2d_cl_x2e_emit_x2d_partial_x2d_application, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.dynamic-application? ...)` -pub fn aot_shen_x2d_cl_x2e_dynamic_x2d_application_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.dynamic-application?: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V540 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V541 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2515 = { - let __t2514 = v_V540.clone(); - rt::is_cons(&__t2514) - }; - if match rt::is_truthy(interp, &__t2515) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(true)); - } else { - break Ok({ - let __t2516 = v_V540.clone(); - let __t2517 = v_V541.clone(); - rt::apply_direct(interp, "element?", &[__t2516, __t2517])? - }); - } - } - } -} - -fn install_shen_x2d_cl_x2e_dynamic_x2d_application_x3f_(interp: &mut Interp) { - interp.register_native( - "shen-cl.dynamic-application?", - 2, - aot_shen_x2d_cl_x2e_dynamic_x2d_application_x3f_, - ); - interp.register_aot_direct( - "shen-cl.dynamic-application?", - aot_shen_x2d_cl_x2e_dynamic_x2d_application_x3f_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-dynamic-application ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_dynamic_x2d_application( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.emit-dynamic-application: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V542 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V543 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V544 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2536 = { - let __t2527 = Value::nil(); - let __t2528 = v_V543.clone(); - rt::eq(&__t2527, &__t2528) - }; - if match rt::is_truthy(interp, &__t2536) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2530 = { - let __t2529 = Value::sym(interp.intern("funcall")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2529])? - }; - let __t2535 = { - let __t2533 = { - let __t2531 = v_V542.clone(); - let __t2532 = v_V544.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2531, __t2532], - )? - }; - let __t2534 = Value::nil(); - rt::cons(&__t2533, &__t2534) - }; - rt::cons(&__t2530, &__t2535) - }); - } else { - { - let __t2526 = Value::bool(true); - if match rt::is_truthy(interp, &__t2526) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W545 = { - let __t2520 = { - let v_V544 = v_V544.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z546 = args[0].clone(); - Ok({ - let __t2518 = v_Z546.clone(); - let __t2519 = v_V544.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2518, __t2519], - )? - }) - }, - vec![v_V544], - interp, - ) - }; - let __t2521 = v_V543.clone(); - rt::apply_direct(interp, "map", &[__t2520, __t2521])? - }; - break Ok({ - let __t2524 = { - let __t2522 = v_V542.clone(); - let __t2523 = v_V544.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t2522, __t2523], - )? - }; - let __t2525 = v_W545.clone(); - rt::apply_direct(interp, "shen-cl.nest-call", &[__t2524, __t2525])? - }); - } - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_dynamic_x2d_application(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-dynamic-application", - 3, - aot_shen_x2d_cl_x2e_emit_x2d_dynamic_x2d_application, - ); - interp.register_aot_direct( - "shen-cl.emit-dynamic-application", - aot_shen_x2d_cl_x2e_emit_x2d_dynamic_x2d_application, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.lisp-prefixed-h? ...)` -pub fn aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x2d_h_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.lisp-prefixed-h?: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V551 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2596 = { - let __t2594 = { - let __t2538 = v_V551.clone(); - rt::is_cons(&__t2538) - }; - if !rt::is_truthy(interp, &__t2594)? { - Value::bool(false) - } else { - let __t2595 = { - let __t2592 = { - let __t2539 = Value::str("l"); - let __t2541 = { - let __t2540 = v_V551.clone(); - rt::hd(&__t2540)? - }; - rt::eq(&__t2539, &__t2541) - }; - if !rt::is_truthy(interp, &__t2592)? { - Value::bool(false) - } else { - let __t2593 = { - let __t2590 = { - let __t2543 = { - let __t2542 = v_V551.clone(); - rt::tl(&__t2542)? - }; - rt::is_cons(&__t2543) - }; - if !rt::is_truthy(interp, &__t2590)? { - Value::bool(false) - } else { - let __t2591 = { - let __t2588 = { - let __t2544 = Value::str("i"); - let __t2547 = { - let __t2546 = { - let __t2545 = v_V551.clone(); - rt::tl(&__t2545)? - }; - rt::hd(&__t2546)? - }; - rt::eq(&__t2544, &__t2547) - }; - if !rt::is_truthy(interp, &__t2588)? { - Value::bool(false) - } else { - let __t2589 = { - let __t2586 = { - let __t2550 = { - let __t2549 = { - let __t2548 = v_V551.clone(); - rt::tl(&__t2548)? - }; - rt::tl(&__t2549)? - }; - rt::is_cons(&__t2550) - }; - if !rt::is_truthy(interp, &__t2586)? { - Value::bool(false) - } else { - let __t2587 = { - let __t2584 = { - let __t2551 = Value::str("s"); - let __t2555 = { - let __t2554 = { - let __t2553 = { - let __t2552 = - v_V551.clone(); - rt::tl(&__t2552)? - }; - rt::tl(&__t2553)? - }; - rt::hd(&__t2554)? - }; - rt::eq(&__t2551, &__t2555) - }; - if !rt::is_truthy(interp, &__t2584)? { - Value::bool(false) - } else { - let __t2585 = { - let __t2582 = { - let __t2559 = { - let __t2558 = { - let __t2557 = { - let __t2556 = - v_V551.clone(); - rt::tl(&__t2556)? - }; - rt::tl(&__t2557)? - }; - rt::tl(&__t2558)? - }; - rt::is_cons(&__t2559) - }; - if !rt::is_truthy(interp, &__t2582)? - { - Value::bool(false) - } else { - let __t2583 = { - let __t2580 = { - let __t2560 = - Value::str("p"); - let __t2565 = { - let __t2564 = { - let __t2563 = { - let __t2562 = { - let __t2561 = v_V551.clone(); - rt::tl(&__t2561)? - }; - rt::tl(&__t2562)? - }; - rt::tl( - &__t2563, - )? - }; - rt::hd(&__t2564)? - }; - rt::eq( - &__t2560, &__t2565, - ) - }; - if !rt::is_truthy( - interp, &__t2580, - )? { - Value::bool(false) - } else { - let __t2581 = { - let __t2578 = { - let __t2570 = { - let __t2569 = { - let __t2568 = { - let __t2567 = { let __t2566 = v_V551.clone(); rt::tl(&__t2566)? }; - rt::tl(&__t2567)? - }; - rt::tl(&__t2568)? - }; - rt::tl(&__t2569)? - }; - rt::is_cons( - &__t2570, - ) - }; - if !rt::is_truthy( - interp, - &__t2578, - )? { - Value::bool( - false, - ) - } else { - let __t2579 = { - let __t2571 = Value::str("."); - let __t2577 = { - let __t2576 = { - let __t2575 = { let __t2574 = { let __t2573 = { let __t2572 = v_V551.clone(); rt::tl(&__t2572)? }; rt::tl(&__t2573)? }; rt::tl(&__t2574)? }; - rt::tl(&__t2575)? - }; - rt::hd(&__t2576)? - }; - rt::eq(&__t2571, &__t2577) - }; - Value::bool(rt::is_truthy(interp, &__t2579)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2581, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2583, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2585, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2587)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2589)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2591)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2593)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2595)?) - } - }; - if match rt::is_truthy(interp, &__t2596) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(true)); - } else { - { - let __t2537 = Value::bool(true); - if match rt::is_truthy(interp, &__t2537) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_lisp_x2d_prefixed_x2d_h_x3f_(interp: &mut Interp) { - interp.register_native( - "shen-cl.lisp-prefixed-h?", - 1, - aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x2d_h_x3f_, - ); - interp.register_aot_direct( - "shen-cl.lisp-prefixed-h?", - aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x2d_h_x3f_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.lisp-prefixed? ...)` -pub fn aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.lisp-prefixed?: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V554 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2601 = { - let __t2598 = v_V554.clone(); - rt::is_symbol(&__t2598) - }; - if match rt::is_truthy(interp, &__t2601) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2600 = { - let __t2599 = v_V554.clone(); - rt::apply_direct(interp, "explode", &[__t2599])? - }; - rt::apply_direct(interp, "shen-cl.lisp-prefixed-h?", &[__t2600])? - }); - } else { - { - let __t2597 = Value::bool(true); - if match rt::is_truthy(interp, &__t2597) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_lisp_x2d_prefixed_x3f_(interp: &mut Interp) { - interp.register_native( - "shen-cl.lisp-prefixed?", - 1, - aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x3f_, - ); - interp.register_aot_direct( - "shen-cl.lisp-prefixed?", - aot_shen_x2d_cl_x2e_lisp_x2d_prefixed_x3f_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.remove-lisp-prefix ...)` -pub fn aot_shen_x2d_cl_x2e_remove_x2d_lisp_x2d_prefix( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.remove-lisp-prefix: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V555 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2672 = { - let __t2669 = v_V555.clone(); - rt::is_symbol(&__t2669) - }; - if match rt::is_truthy(interp, &__t2672) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t2671 = { - let __t2670 = v_V555.clone(); - rt::apply_direct(interp, "str", &[__t2670])? - }; - v_V555 = __t2671; - continue; - } - } else { - { - let __t2668 = { - let __t2660 = { - let __t2604 = v_V555.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t2604])? - }; - if !rt::is_truthy(interp, &__t2660)? { - Value::bool(false) - } else { - let __t2661 = { - let __t2658 = { - let __t2605 = Value::str("l"); - let __t2607 = { - let __t2606 = v_V555.clone(); - rt::apply_direct(interp, "hdstr", &[__t2606])? - }; - rt::eq(&__t2605, &__t2607) - }; - if !rt::is_truthy(interp, &__t2658)? { - Value::bool(false) - } else { - let __t2659 = { - let __t2656 = { - let __t2609 = { - let __t2608 = v_V555.clone(); - rt::apply_direct(interp, "tlstr", &[__t2608])? - }; - rt::apply_direct(interp, "shen.+string?", &[__t2609])? - }; - if !rt::is_truthy(interp, &__t2656)? { - Value::bool(false) - } else { - let __t2657 = { - let __t2654 = { - let __t2610 = Value::str("i"); - let __t2613 = { - let __t2612 = { - let __t2611 = v_V555.clone(); - rt::apply_direct( - interp, - "tlstr", - &[__t2611], - )? - }; - rt::apply_direct( - interp, - "hdstr", - &[__t2612], - )? - }; - rt::eq(&__t2610, &__t2613) - }; - if !rt::is_truthy(interp, &__t2654)? { - Value::bool(false) - } else { - let __t2655 = { - let __t2652 = { - let __t2616 = { - let __t2615 = { - let __t2614 = v_V555.clone(); - rt::apply_direct( - interp, - "tlstr", - &[__t2614], - )? - }; - rt::apply_direct( - interp, - "tlstr", - &[__t2615], - )? - }; - rt::apply_direct( - interp, - "shen.+string?", - &[__t2616], - )? - }; - if !rt::is_truthy(interp, &__t2652)? { - Value::bool(false) - } else { - let __t2653 = { - let __t2650 = { - let __t2617 = Value::str("s"); - let __t2621 = { - let __t2620 = { - let __t2619 = { - let __t2618 = - v_V555.clone(); - rt::apply_direct( - interp, - "tlstr", - &[__t2618], - )? - }; - rt::apply_direct( - interp, - "tlstr", - &[__t2619], - )? - }; - rt::apply_direct( - interp, - "hdstr", - &[__t2620], - )? - }; - rt::eq(&__t2617, &__t2621) - }; - if !rt::is_truthy(interp, &__t2650)? - { - Value::bool(false) - } else { - let __t2651 = { - let __t2648 = { - let __t2625 = { - let __t2624 = { - let __t2623 = { - let __t2622 = v_V555.clone(); - rt::apply_direct(interp, "tlstr", &[__t2622])? - }; - rt::apply_direct(interp, "tlstr", &[__t2623])? - }; - rt::apply_direct( - interp, - "tlstr", - &[__t2624], - )? - }; - rt::apply_direct( - interp, - "shen.+string?", - &[__t2625], - )? - }; - if !rt::is_truthy( - interp, &__t2648, - )? { - Value::bool(false) - } else { - let __t2649 = { - let __t2646 = { - let __t2626 = - Value::str( - "p", - ); - let __t2631 = { - let __t2630 = { - let __t2629 = { - let __t2628 = { let __t2627 = v_V555.clone(); rt::apply_direct(interp, "tlstr", &[__t2627])? }; - rt::apply_direct(interp, "tlstr", &[__t2628])? - }; - rt::apply_direct(interp, "tlstr", &[__t2629])? - }; - rt::apply_direct(interp, "hdstr", &[__t2630])? - }; - rt::eq( - &__t2626, - &__t2631, - ) - }; - if !rt::is_truthy( - interp, - &__t2646, - )? { - Value::bool( - false, - ) - } else { - let __t2647 = { - let __t2644 = { - let __t2636 = { - let __t2635 = { let __t2634 = { let __t2633 = { let __t2632 = v_V555.clone(); rt::apply_direct(interp, "tlstr", &[__t2632])? }; rt::apply_direct(interp, "tlstr", &[__t2633])? }; rt::apply_direct(interp, "tlstr", &[__t2634])? }; - rt::apply_direct(interp, "tlstr", &[__t2635])? - }; - rt::apply_direct(interp, "shen.+string?", &[__t2636])? - }; - if !rt::is_truthy(interp, &__t2644)? { Value::bool(false) } else { let __t2645 = { let __t2637 = Value::str("."); let __t2643 = { let __t2642 = { let __t2641 = { let __t2640 = { let __t2639 = { let __t2638 = v_V555.clone(); rt::apply_direct(interp, "tlstr", &[__t2638])? }; rt::apply_direct(interp, "tlstr", &[__t2639])? }; rt::apply_direct(interp, "tlstr", &[__t2640])? }; rt::apply_direct(interp, "tlstr", &[__t2641])? }; rt::apply_direct(interp, "hdstr", &[__t2642])? }; rt::eq(&__t2637, &__t2643) }; Value::bool(rt::is_truthy(interp, &__t2645)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2647)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2649, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2651, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2653, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2655)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2657)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2659)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2661)?) - } - }; - if match rt::is_truthy(interp, &__t2668) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2667 = { - let __t2666 = { - let __t2665 = { - let __t2664 = { - let __t2663 = { - let __t2662 = v_V555.clone(); - rt::apply_direct(interp, "tlstr", &[__t2662])? - }; - rt::apply_direct(interp, "tlstr", &[__t2663])? - }; - rt::apply_direct(interp, "tlstr", &[__t2664])? - }; - rt::apply_direct(interp, "tlstr", &[__t2665])? - }; - rt::apply_direct(interp, "tlstr", &[__t2666])? - }; - rt::apply_direct(interp, "intern", &[__t2667])? - }); - } else { - { - let __t2603 = Value::bool(true); - if match rt::is_truthy(interp, &__t2603) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2602 = - Value::sym(interp.intern("shen-cl.remove-lisp-prefix")); - rt::apply_direct(interp, "shen.f-error", &[__t2602])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_remove_x2d_lisp_x2d_prefix(interp: &mut Interp) { - interp.register_native( - "shen-cl.remove-lisp-prefix", - 1, - aot_shen_x2d_cl_x2e_remove_x2d_lisp_x2d_prefix, - ); - interp.register_aot_direct( - "shen-cl.remove-lisp-prefix", - aot_shen_x2d_cl_x2e_remove_x2d_lisp_x2d_prefix, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.upcase ...)` -pub fn aot_shen_x2d_cl_x2e_upcase(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.upcase: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V556 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2674 = { - let __t2673 = v_V556.clone(); - rt::apply_direct(interp, "explode", &[__t2673])? - }; - rt::apply_direct(interp, "shen-cl.upcase-h", &[__t2674])? - }); - } -} - -fn install_shen_x2d_cl_x2e_upcase(interp: &mut Interp) { - interp.register_native("shen-cl.upcase", 1, aot_shen_x2d_cl_x2e_upcase); - interp.register_aot_direct("shen-cl.upcase", aot_shen_x2d_cl_x2e_upcase); -} - -/// AOT-compiled from KL `(defun shen-cl.upcase-h ...)` -pub fn aot_shen_x2d_cl_x2e_upcase_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.upcase-h: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V557 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2687 = { - let __t2685 = Value::nil(); - let __t2686 = v_V557.clone(); - rt::eq(&__t2685, &__t2686) - }; - if match rt::is_truthy(interp, &__t2687) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::str("")); - } else { - { - let __t2684 = { - let __t2677 = v_V557.clone(); - rt::is_cons(&__t2677) - }; - if match rt::is_truthy(interp, &__t2684) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2680 = { - let __t2679 = { - let __t2678 = v_V557.clone(); - rt::hd(&__t2678)? - }; - rt::apply_direct(interp, "shen-cl.upcase-char", &[__t2679])? - }; - let __t2683 = { - let __t2682 = { - let __t2681 = v_V557.clone(); - rt::tl(&__t2681)? - }; - rt::apply_direct(interp, "shen-cl.upcase-h", &[__t2682])? - }; - rt::apply_direct(interp, "cn", &[__t2680, __t2683])? - }); - } else { - { - let __t2676 = Value::bool(true); - if match rt::is_truthy(interp, &__t2676) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2675 = Value::sym(interp.intern("shen-cl.upcase-h")); - rt::apply_direct(interp, "shen.f-error", &[__t2675])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_upcase_x2d_h(interp: &mut Interp) { - interp.register_native("shen-cl.upcase-h", 1, aot_shen_x2d_cl_x2e_upcase_x2d_h); - interp.register_aot_direct("shen-cl.upcase-h", aot_shen_x2d_cl_x2e_upcase_x2d_h); -} - -/// AOT-compiled from KL `(defun shen-cl.upcase-char ...)` -pub fn aot_shen_x2d_cl_x2e_upcase_x2d_char( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.upcase-char: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V558 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t2690 = { - let __t2689 = { - let __t2688 = v_V558.clone(); - rt::apply_direct(interp, "string->n", &[__t2688])? - }; - rt::apply_direct(interp, "shen-cl.upcase-charcode", &[__t2689])? - }; - rt::apply_direct(interp, "n->string", &[__t2690])? - }); - } -} - -fn install_shen_x2d_cl_x2e_upcase_x2d_char(interp: &mut Interp) { - interp.register_native( - "shen-cl.upcase-char", - 1, - aot_shen_x2d_cl_x2e_upcase_x2d_char, - ); - interp.register_aot_direct("shen-cl.upcase-char", aot_shen_x2d_cl_x2e_upcase_x2d_char); -} - -/// AOT-compiled from KL `(defun shen-cl.upcase-charcode ...)` -pub fn aot_shen_x2d_cl_x2e_upcase_x2d_charcode( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.upcase-charcode: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V559 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2700 = { - let __t2696 = { - let __t2692 = v_V559.clone(); - let __t2693 = Value::int(97i64); - rt::gte(&__t2692, &__t2693)? - }; - if !rt::is_truthy(interp, &__t2696)? { - Value::bool(false) - } else { - let __t2697 = { - let __t2694 = v_V559.clone(); - let __t2695 = Value::int(122i64); - rt::lte(&__t2694, &__t2695)? - }; - Value::bool(rt::is_truthy(interp, &__t2697)?) - } - }; - if match rt::is_truthy(interp, &__t2700) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2698 = v_V559.clone(); - let __t2699 = Value::int(32i64); - rt::sub(&__t2698, &__t2699)? - }); - } else { - { - let __t2691 = Value::bool(true); - if match rt::is_truthy(interp, &__t2691) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V559.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_upcase_x2d_charcode(interp: &mut Interp) { - interp.register_native( - "shen-cl.upcase-charcode", - 1, - aot_shen_x2d_cl_x2e_upcase_x2d_charcode, - ); - interp.register_aot_direct( - "shen-cl.upcase-charcode", - aot_shen_x2d_cl_x2e_upcase_x2d_charcode, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.qualify-op ...)` -pub fn aot_shen_x2d_cl_x2e_qualify_x2d_op( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.qualify-op: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V560 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2708 = { - let __t2705 = v_V560.clone(); - rt::apply_direct(interp, "shen-cl.lisp-prefixed?", &[__t2705])? - }; - if match rt::is_truthy(interp, &__t2708) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2707 = { - let __t2706 = v_V560.clone(); - rt::apply_direct(interp, "shen-cl.remove-lisp-prefix", &[__t2706])? - }; - rt::apply_direct(interp, "shen-cl.cl", &[__t2707])? - }); - } else { - { - let __t2704 = { - let __t2702 = v_V560.clone(); - rt::is_symbol(&__t2702) - }; - if match rt::is_truthy(interp, &__t2704) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2703 = v_V560.clone(); - rt::apply_direct(interp, "shen-cl.kl", &[__t2703])? - }); - } else { - { - let __t2701 = Value::bool(true); - if match rt::is_truthy(interp, &__t2701) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V560.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_qualify_x2d_op(interp: &mut Interp) { - interp.register_native("shen-cl.qualify-op", 1, aot_shen_x2d_cl_x2e_qualify_x2d_op); - interp.register_aot_direct("shen-cl.qualify-op", aot_shen_x2d_cl_x2e_qualify_x2d_op); -} - -/// AOT-compiled from KL `(defun shen-cl.not-fail ...)` -pub fn aot_shen_x2d_cl_x2e_not_x2d_fail(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.not-fail: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V563 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V564 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2714 = { - let __t2712 = { - let __t2710 = v_V563.clone(); - let __t2711 = { rt::apply_direct(interp, "fail", &[])? }; - rt::eq(&__t2710, &__t2711) - }; - rt::apply_direct(interp, "not", &[__t2712])? - }; - if match rt::is_truthy(interp, &__t2714) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2713 = v_V563.clone(); - rt::apply_value(interp, v_V564.clone(), &[__t2713])? - }); - } else { - { - let __t2709 = Value::bool(true); - if match rt::is_truthy(interp, &__t2709) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V563.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_not_x2d_fail(interp: &mut Interp) { - interp.register_native("shen-cl.not-fail", 2, aot_shen_x2d_cl_x2e_not_x2d_fail); - interp.register_aot_direct("shen-cl.not-fail", aot_shen_x2d_cl_x2e_not_x2d_fail); -} - -/// AOT-compiled from KL `(defun shen-cl.binary-op-mapping ...)` -pub fn aot_shen_x2d_cl_x2e_binary_x2d_op_x2d_mapping( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.binary-op-mapping: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V567 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2759 = { - let __t2756 = Value::sym(interp.intern("+")); - let __t2757 = v_V567.clone(); - rt::eq(&__t2756, &__t2757) - }; - if match rt::is_truthy(interp, &__t2759) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2758 = Value::sym(interp.intern("shen-cl.add")); - rt::apply_direct(interp, "shen-cl.kl", &[__t2758])? - }); - } else { - { - let __t2755 = { - let __t2752 = Value::sym(interp.intern("-")); - let __t2753 = v_V567.clone(); - rt::eq(&__t2752, &__t2753) - }; - if match rt::is_truthy(interp, &__t2755) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2754 = Value::sym(interp.intern("shen-cl.subtract")); - rt::apply_direct(interp, "shen-cl.kl", &[__t2754])? - }); - } else { - { - let __t2751 = { - let __t2748 = Value::sym(interp.intern("*")); - let __t2749 = v_V567.clone(); - rt::eq(&__t2748, &__t2749) - }; - if match rt::is_truthy(interp, &__t2751) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2750 = Value::sym(interp.intern("shen-cl.multiply")); - rt::apply_direct(interp, "shen-cl.kl", &[__t2750])? - }); - } else { - { - let __t2747 = { - let __t2744 = Value::sym(interp.intern("/")); - let __t2745 = v_V567.clone(); - rt::eq(&__t2744, &__t2745) - }; - if match rt::is_truthy(interp, &__t2747) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2746 = - Value::sym(interp.intern("shen-cl.divide")); - rt::apply_direct(interp, "shen-cl.kl", &[__t2746])? - }); - } else { - { - let __t2743 = { - let __t2740 = Value::sym(interp.intern(">")); - let __t2741 = v_V567.clone(); - rt::eq(&__t2740, &__t2741) - }; - if match rt::is_truthy(interp, &__t2743) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2742 = Value::sym( - interp.intern("shen-cl.greater?"), - ); - rt::apply_direct( - interp, - "shen-cl.kl", - &[__t2742], - )? - }); - } else { - { - let __t2739 = { - let __t2736 = - Value::sym(interp.intern("<")); - let __t2737 = v_V567.clone(); - rt::eq(&__t2736, &__t2737) - }; - if match rt::is_truthy(interp, &__t2739) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2738 = Value::sym( - interp.intern("shen-cl.less?"), - ); - rt::apply_direct( - interp, - "shen-cl.kl", - &[__t2738], - )? - }); - } else { - { - let __t2735 = { - let __t2732 = - Value::sym(interp.intern(">=")); - let __t2733 = v_V567.clone(); - rt::eq(&__t2732, &__t2733) - }; - if match rt::is_truthy(interp, &__t2735) - { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2734 = Value::sym(interp.intern("shen-cl.greater-than-or-equal-to?")); - rt::apply_direct( - interp, - "shen-cl.kl", - &[__t2734], - )? - }); - } else { - { - let __t2731 = { - let __t2728 = Value::sym( - interp.intern("<="), - ); - let __t2729 = - v_V567.clone(); - rt::eq(&__t2728, &__t2729) - }; - if match rt::is_truthy( - interp, &__t2731, - ) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2730 = Value::sym(interp.intern("shen-cl.less-than-or-equal-to?")); - rt::apply_direct( - interp, - "shen-cl.kl", - &[__t2730], - )? - }); - } else { - { - let __t2727 = { - let __t2724 = - Value::sym( - interp - .intern( - "cons", - ), - ); - let __t2725 = - v_V567.clone(); - rt::eq( - &__t2724, - &__t2725, - ) - }; - if match rt::is_truthy( - interp, &__t2727, - ) { - Ok(b) => b, - Err(e) => { - break Err(e) - } - } { - break Ok({ - let __t2726 = Value::sym(interp.intern("cons")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2726])? - }); - } else { - { - let __t2723 = { - let __t2720 = Value::sym(interp.intern("reverse")); - let __t2721 = v_V567.clone(); - rt::eq(&__t2720, &__t2721) - }; - if match rt::is_truthy(interp, &__t2723) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2722 = Value::sym(interp.intern("reverse")); rt::apply_direct(interp, "shen-cl.cl", &[__t2722])? }); } else { { let __t2719 = { let __t2716 = Value::sym(interp.intern("append")); let __t2717 = v_V567.clone(); rt::eq(&__t2716, &__t2717) }; if match rt::is_truthy(interp, &__t2719) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2718 = Value::sym(interp.intern("append")); rt::apply_direct(interp, "shen-cl.cl", &[__t2718])? }); } else { { let __t2715 = Value::bool(true); if match rt::is_truthy(interp, &__t2715) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "fail", &[])? }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_binary_x2d_op_x2d_mapping(interp: &mut Interp) { - interp.register_native( - "shen-cl.binary-op-mapping", - 1, - aot_shen_x2d_cl_x2e_binary_x2d_op_x2d_mapping, - ); - interp.register_aot_direct( - "shen-cl.binary-op-mapping", - aot_shen_x2d_cl_x2e_binary_x2d_op_x2d_mapping, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.unary-op-mapping ...)` -pub fn aot_shen_x2d_cl_x2e_unary_x2d_op_x2d_mapping( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.unary-op-mapping: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V570 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2772 = { - let __t2769 = Value::sym(interp.intern("hd")); - let __t2770 = v_V570.clone(); - rt::eq(&__t2769, &__t2770) - }; - if match rt::is_truthy(interp, &__t2772) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2771 = Value::sym(interp.intern("car")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2771])? - }); - } else { - { - let __t2768 = { - let __t2765 = Value::sym(interp.intern("tl")); - let __t2766 = v_V570.clone(); - rt::eq(&__t2765, &__t2766) - }; - if match rt::is_truthy(interp, &__t2768) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2767 = Value::sym(interp.intern("cdr")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2767])? - }); - } else { - { - let __t2764 = { - let __t2761 = Value::sym(interp.intern("length")); - let __t2762 = v_V570.clone(); - rt::eq(&__t2761, &__t2762) - }; - if match rt::is_truthy(interp, &__t2764) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2763 = Value::sym(interp.intern("list-length")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2763])? - }); - } else { - { - let __t2760 = Value::bool(true); - if match rt::is_truthy(interp, &__t2760) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ rt::apply_direct(interp, "fail", &[])? }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_unary_x2d_op_x2d_mapping(interp: &mut Interp) { - interp.register_native( - "shen-cl.unary-op-mapping", - 1, - aot_shen_x2d_cl_x2e_unary_x2d_op_x2d_mapping, - ); - interp.register_aot_direct( - "shen-cl.unary-op-mapping", - aot_shen_x2d_cl_x2e_unary_x2d_op_x2d_mapping, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.optimise-static-application ...)` -pub fn aot_shen_x2d_cl_x2e_optimise_x2d_static_x2d_application( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.optimise-static-application: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V571 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3008 = { - let __t3000 = { - let __t2974 = v_V571.clone(); - rt::is_cons(&__t2974) - }; - if !rt::is_truthy(interp, &__t3000)? { - Value::bool(false) - } else { - let __t3001 = { - let __t2998 = { - let __t2975 = Value::sym(interp.intern("shen-cl.add")); - let __t2977 = { - let __t2976 = v_V571.clone(); - rt::hd(&__t2976)? - }; - rt::eq(&__t2975, &__t2977) - }; - if !rt::is_truthy(interp, &__t2998)? { - Value::bool(false) - } else { - let __t2999 = { - let __t2996 = { - let __t2979 = { - let __t2978 = v_V571.clone(); - rt::tl(&__t2978)? - }; - rt::is_cons(&__t2979) - }; - if !rt::is_truthy(interp, &__t2996)? { - Value::bool(false) - } else { - let __t2997 = { - let __t2994 = { - let __t2980 = Value::int(1i64); - let __t2983 = { - let __t2982 = { - let __t2981 = v_V571.clone(); - rt::tl(&__t2981)? - }; - rt::hd(&__t2982)? - }; - rt::eq(&__t2980, &__t2983) - }; - if !rt::is_truthy(interp, &__t2994)? { - Value::bool(false) - } else { - let __t2995 = { - let __t2992 = { - let __t2986 = { - let __t2985 = { - let __t2984 = v_V571.clone(); - rt::tl(&__t2984)? - }; - rt::tl(&__t2985)? - }; - rt::is_cons(&__t2986) - }; - if !rt::is_truthy(interp, &__t2992)? { - Value::bool(false) - } else { - let __t2993 = { - let __t2987 = Value::nil(); - let __t2991 = { - let __t2990 = { - let __t2989 = { - let __t2988 = v_V571.clone(); - rt::tl(&__t2988)? - }; - rt::tl(&__t2989)? - }; - rt::tl(&__t2990)? - }; - rt::eq(&__t2987, &__t2991) - }; - Value::bool(rt::is_truthy(interp, &__t2993)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2995)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2997)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2999)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3001)?) - } - }; - if match rt::is_truthy(interp, &__t3008) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3004 = { - let __t3003 = { - let __t3002 = Value::str("1+"); - rt::apply_direct(interp, "intern", &[__t3002])? - }; - rt::apply_direct(interp, "shen-cl.cl", &[__t3003])? - }; - let __t3007 = { - let __t3006 = { - let __t3005 = v_V571.clone(); - rt::tl(&__t3005)? - }; - rt::tl(&__t3006)? - }; - rt::cons(&__t3004, &__t3007) - }); - } else { - { - let __t2973 = { - let __t2963 = { - let __t2936 = v_V571.clone(); - rt::is_cons(&__t2936) - }; - if !rt::is_truthy(interp, &__t2963)? { - Value::bool(false) - } else { - let __t2964 = { - let __t2961 = { - let __t2937 = Value::sym(interp.intern("shen-cl.add")); - let __t2939 = { - let __t2938 = v_V571.clone(); - rt::hd(&__t2938)? - }; - rt::eq(&__t2937, &__t2939) - }; - if !rt::is_truthy(interp, &__t2961)? { - Value::bool(false) - } else { - let __t2962 = { - let __t2959 = { - let __t2941 = { - let __t2940 = v_V571.clone(); - rt::tl(&__t2940)? - }; - rt::is_cons(&__t2941) - }; - if !rt::is_truthy(interp, &__t2959)? { - Value::bool(false) - } else { - let __t2960 = { - let __t2957 = { - let __t2944 = { - let __t2943 = { - let __t2942 = v_V571.clone(); - rt::tl(&__t2942)? - }; - rt::tl(&__t2943)? - }; - rt::is_cons(&__t2944) - }; - if !rt::is_truthy(interp, &__t2957)? { - Value::bool(false) - } else { - let __t2958 = { - let __t2955 = { - let __t2945 = Value::int(1i64); - let __t2949 = { - let __t2948 = { - let __t2947 = { - let __t2946 = - v_V571.clone(); - rt::tl(&__t2946)? - }; - rt::tl(&__t2947)? - }; - rt::hd(&__t2948)? - }; - rt::eq(&__t2945, &__t2949) - }; - if !rt::is_truthy(interp, &__t2955)? { - Value::bool(false) - } else { - let __t2956 = { - let __t2950 = Value::nil(); - let __t2954 = { - let __t2953 = { - let __t2952 = { - let __t2951 = - v_V571.clone(); - rt::tl(&__t2951)? - }; - rt::tl(&__t2952)? - }; - rt::tl(&__t2953)? - }; - rt::eq(&__t2950, &__t2954) - }; - Value::bool(rt::is_truthy( - interp, &__t2956, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2958)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2960)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2962)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2964)?) - } - }; - if match rt::is_truthy(interp, &__t2973) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2967 = { - let __t2966 = { - let __t2965 = Value::str("1+"); - rt::apply_direct(interp, "intern", &[__t2965])? - }; - rt::apply_direct(interp, "shen-cl.cl", &[__t2966])? - }; - let __t2972 = { - let __t2970 = { - let __t2969 = { - let __t2968 = v_V571.clone(); - rt::tl(&__t2968)? - }; - rt::hd(&__t2969)? - }; - let __t2971 = Value::nil(); - rt::cons(&__t2970, &__t2971) - }; - rt::cons(&__t2967, &__t2972) - }); - } else { - { - let __t2935 = { - let __t2925 = { - let __t2898 = v_V571.clone(); - rt::is_cons(&__t2898) - }; - if !rt::is_truthy(interp, &__t2925)? { - Value::bool(false) - } else { - let __t2926 = { - let __t2923 = { - let __t2899 = - Value::sym(interp.intern("shen-cl.subtract")); - let __t2901 = { - let __t2900 = v_V571.clone(); - rt::hd(&__t2900)? - }; - rt::eq(&__t2899, &__t2901) - }; - if !rt::is_truthy(interp, &__t2923)? { - Value::bool(false) - } else { - let __t2924 = { - let __t2921 = { - let __t2903 = { - let __t2902 = v_V571.clone(); - rt::tl(&__t2902)? - }; - rt::is_cons(&__t2903) - }; - if !rt::is_truthy(interp, &__t2921)? { - Value::bool(false) - } else { - let __t2922 = { - let __t2919 = { - let __t2906 = { - let __t2905 = { - let __t2904 = v_V571.clone(); - rt::tl(&__t2904)? - }; - rt::tl(&__t2905)? - }; - rt::is_cons(&__t2906) - }; - if !rt::is_truthy(interp, &__t2919)? { - Value::bool(false) - } else { - let __t2920 = { - let __t2917 = { - let __t2907 = Value::int(1i64); - let __t2911 = { - let __t2910 = { - let __t2909 = { - let __t2908 = - v_V571.clone(); - rt::tl(&__t2908)? - }; - rt::tl(&__t2909)? - }; - rt::hd(&__t2910)? - }; - rt::eq(&__t2907, &__t2911) - }; - if !rt::is_truthy(interp, &__t2917)? - { - Value::bool(false) - } else { - let __t2918 = { - let __t2912 = Value::nil(); - let __t2916 = { - let __t2915 = { - let __t2914 = { - let __t2913 = - v_V571 - .clone( - ); - rt::tl( - &__t2913, - )? - }; - rt::tl(&__t2914)? - }; - rt::tl(&__t2915)? - }; - rt::eq(&__t2912, &__t2916) - }; - Value::bool(rt::is_truthy( - interp, &__t2918, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2920, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2922)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2924)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2926)?) - } - }; - if match rt::is_truthy(interp, &__t2935) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2929 = { - let __t2928 = { - let __t2927 = Value::str("1-"); - rt::apply_direct(interp, "intern", &[__t2927])? - }; - rt::apply_direct(interp, "shen-cl.cl", &[__t2928])? - }; - let __t2934 = { - let __t2932 = { - let __t2931 = { - let __t2930 = v_V571.clone(); - rt::tl(&__t2930)? - }; - rt::hd(&__t2931)? - }; - let __t2933 = Value::nil(); - rt::cons(&__t2932, &__t2933) - }; - rt::cons(&__t2929, &__t2934) - }); - } else { - { - let __t2897 = { - let __t2888 = { - let __t2827 = v_V571.clone(); - rt::is_cons(&__t2827) - }; - if !rt::is_truthy(interp, &__t2888)? { - Value::bool(false) - } else { - let __t2889 = { - let __t2886 = { - let __t2829 = { - let __t2828 = v_V571.clone(); - rt::tl(&__t2828)? - }; - rt::is_cons(&__t2829) - }; - if !rt::is_truthy(interp, &__t2886)? { - Value::bool(false) - } else { - let __t2887 = { - let __t2884 = { - let __t2832 = { - let __t2831 = { - let __t2830 = v_V571.clone(); - rt::tl(&__t2830)? - }; - rt::tl(&__t2831)? - }; - rt::is_cons(&__t2832) - }; - if !rt::is_truthy(interp, &__t2884)? { - Value::bool(false) - } else { - let __t2885 = { - let __t2882 = { - let __t2836 = { - let __t2835 = { - let __t2834 = { - let __t2833 = - v_V571.clone(); - rt::tl(&__t2833)? - }; - rt::tl(&__t2834)? - }; - rt::hd(&__t2835)? - }; - rt::is_cons(&__t2836) - }; - if !rt::is_truthy(interp, &__t2882)? - { - Value::bool(false) - } else { - let __t2883 = { - let __t2880 = { - let __t2841 = { - let __t2840 = { - let __t2839 = { - let __t2838 = { - let __t2837 = v_V571.clone(); - rt::tl(&__t2837)? - }; - rt::tl(&__t2838)? - }; - rt::hd( - &__t2839, - )? - }; - rt::tl(&__t2840)? - }; - rt::is_cons(&__t2841) - }; - if !rt::is_truthy( - interp, &__t2880, - )? { - Value::bool(false) - } else { - let __t2881 = { - let __t2878 = { - let __t2842 = - Value::nil( - ); - let __t2848 = { - let __t2847 = { - let __t2846 = { - let __t2845 = { let __t2844 = { let __t2843 = v_V571.clone(); rt::tl(&__t2843)? }; rt::tl(&__t2844)? }; - rt::hd(&__t2845)? - }; - rt::tl(&__t2846)? - }; - rt::hd(&__t2847)? - }; - rt::eq( - &__t2842, - &__t2848, - ) - }; - if !rt::is_truthy( - interp, - &__t2878, - )? { - Value::bool( - false, - ) - } else { - let __t2879 = { - let __t2876 = { - let __t2849 = Value::nil(); - let __t2855 = { - let __t2854 = { let __t2853 = { let __t2852 = { let __t2851 = { let __t2850 = v_V571.clone(); rt::tl(&__t2850)? }; rt::tl(&__t2851)? }; rt::hd(&__t2852)? }; rt::tl(&__t2853)? }; - rt::tl(&__t2854)? - }; - rt::eq(&__t2849, &__t2855) - }; - if !rt::is_truthy(interp, &__t2876)? { Value::bool(false) } else { let __t2877 = { let __t2874 = { let __t2856 = Value::nil(); let __t2860 = { let __t2859 = { let __t2858 = { let __t2857 = v_V571.clone(); rt::tl(&__t2857)? }; rt::tl(&__t2858)? }; rt::tl(&__t2859)? }; rt::eq(&__t2856, &__t2860) }; if !rt::is_truthy(interp, &__t2874)? { Value::bool(false) } else { let __t2875 = { let __t2872 = { let __t2862 = { let __t2861 = Value::sym(interp.intern("cons")); rt::apply_direct(interp, "shen-cl.cl", &[__t2861])? }; let __t2864 = { let __t2863 = v_V571.clone(); rt::hd(&__t2863)? }; rt::eq(&__t2862, &__t2864) }; if !rt::is_truthy(interp, &__t2872)? { Value::bool(false) } else { let __t2873 = { let __t2866 = { let __t2865 = Value::sym(interp.intern("quote")); rt::apply_direct(interp, "shen-cl.cl", &[__t2865])? }; let __t2871 = { let __t2870 = { let __t2869 = { let __t2868 = { let __t2867 = v_V571.clone(); rt::tl(&__t2867)? }; rt::tl(&__t2868)? }; rt::hd(&__t2869)? }; rt::hd(&__t2870)? }; rt::eq(&__t2866, &__t2871) }; Value::bool(rt::is_truthy(interp, &__t2873)?) } }; Value::bool(rt::is_truthy(interp, &__t2875)?) } }; Value::bool(rt::is_truthy(interp, &__t2877)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2879)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2881, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2883, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2885, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2887)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2889)?) - } - }; - if match rt::is_truthy(interp, &__t2897) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2891 = { - let __t2890 = Value::sym(interp.intern("list")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2890])? - }; - let __t2896 = { - let __t2894 = { - let __t2893 = { - let __t2892 = v_V571.clone(); - rt::tl(&__t2892)? - }; - rt::hd(&__t2893)? - }; - let __t2895 = Value::nil(); - rt::cons(&__t2894, &__t2895) - }; - rt::cons(&__t2891, &__t2896) - }); - } else { - { - let __t2826 = { - let __t2810 = { - let __t2774 = v_V571.clone(); - rt::is_cons(&__t2774) - }; - if !rt::is_truthy(interp, &__t2810)? { - Value::bool(false) - } else { - let __t2811 = { - let __t2808 = { - let __t2776 = { - let __t2775 = v_V571.clone(); - rt::tl(&__t2775)? - }; - rt::is_cons(&__t2776) - }; - if !rt::is_truthy(interp, &__t2808)? { - Value::bool(false) - } else { - let __t2809 = { - let __t2806 = { - let __t2779 = { - let __t2778 = { - let __t2777 = - v_V571.clone(); - rt::tl(&__t2777)? - }; - rt::tl(&__t2778)? - }; - rt::is_cons(&__t2779) - }; - if !rt::is_truthy(interp, &__t2806)? - { - Value::bool(false) - } else { - let __t2807 = { - let __t2804 = { - let __t2783 = { - let __t2782 = { - let __t2781 = { - let __t2780 = v_V571.clone(); - rt::tl(&__t2780)? - }; - rt::tl( - &__t2781, - )? - }; - rt::hd(&__t2782)? - }; - rt::is_cons(&__t2783) - }; - if !rt::is_truthy( - interp, &__t2804, - )? { - Value::bool(false) - } else { - let __t2805 = { - let __t2802 = { - let __t2784 = - Value::nil( - ); - let __t2788 = { - let __t2787 = { - let __t2786 = { - let __t2785 = v_V571.clone(); - rt::tl(&__t2785)? - }; - rt::tl(&__t2786)? - }; - rt::tl(&__t2787)? - }; - rt::eq( - &__t2784, - &__t2788, - ) - }; - if !rt::is_truthy( - interp, - &__t2802, - )? { - Value::bool( - false, - ) - } else { - let __t2803 = { - let __t2800 = { - let __t2790 = { - let __t2789 = Value::sym(interp.intern("cons")); - rt::apply_direct(interp, "shen-cl.cl", &[__t2789])? - }; - let __t2792 = { - let __t2791 = v_V571.clone(); - rt::hd(&__t2791)? - }; - rt::eq(&__t2790, &__t2792) - }; - if !rt::is_truthy(interp, &__t2800)? { Value::bool(false) } else { let __t2801 = { let __t2794 = { let __t2793 = Value::sym(interp.intern("list")); rt::apply_direct(interp, "shen-cl.cl", &[__t2793])? }; let __t2799 = { let __t2798 = { let __t2797 = { let __t2796 = { let __t2795 = v_V571.clone(); rt::tl(&__t2795)? }; rt::tl(&__t2796)? }; rt::hd(&__t2797)? }; rt::hd(&__t2798)? }; rt::eq(&__t2794, &__t2799) }; Value::bool(rt::is_truthy(interp, &__t2801)?) } - }; - Value::bool(rt::is_truthy(interp, &__t2803)?) - } - }; - Value::bool( - rt::is_truthy( - interp, - &__t2805, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2807, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t2809, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2811)?) - } - }; - if match rt::is_truthy(interp, &__t2826) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2816 = { - let __t2815 = { - let __t2814 = { - let __t2813 = { - let __t2812 = v_V571.clone(); - rt::tl(&__t2812)? - }; - rt::tl(&__t2813)? - }; - rt::hd(&__t2814)? - }; - rt::hd(&__t2815)? - }; - let __t2825 = { - let __t2819 = { - let __t2818 = { - let __t2817 = v_V571.clone(); - rt::tl(&__t2817)? - }; - rt::hd(&__t2818)? - }; - let __t2824 = { - let __t2823 = { - let __t2822 = { - let __t2821 = { - let __t2820 = - v_V571.clone(); - rt::tl(&__t2820)? - }; - rt::tl(&__t2821)? - }; - rt::hd(&__t2822)? - }; - rt::tl(&__t2823)? - }; - rt::cons(&__t2819, &__t2824) - }; - rt::cons(&__t2816, &__t2825) - }); - } else { - { - let __t2773 = Value::bool(true); - if match rt::is_truthy(interp, &__t2773) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V571.clone()); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_optimise_x2d_static_x2d_application(interp: &mut Interp) { - interp.register_native( - "shen-cl.optimise-static-application", - 1, - aot_shen_x2d_cl_x2e_optimise_x2d_static_x2d_application, - ); - interp.register_aot_direct( - "shen-cl.optimise-static-application", - aot_shen_x2d_cl_x2e_optimise_x2d_static_x2d_application, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-static-application ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_static_x2d_application( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 4 { - return Err(ShenError::new(format!( - "shen-cl.emit-static-application: expected 4 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V574 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V575 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V576 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V577 = args[3].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_Freeze586 = { - let v_V574 = v_V574.clone(); - let v_V575 = v_V575.clone(); - let v_V576 = v_V576.clone(); - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 0, - move |interp, _args| { - Ok({ - let __t3032 = Value::bool(true); - if rt::is_truthy(interp, &__t3032)? { - { - let v_Freeze588 = { - let v_V574 = v_V574.clone(); - let v_V576 = v_V576.clone(); - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 0, - move |interp, _args| { - Ok({ - let __t3016 = Value::bool(true); - if rt::is_truthy(interp, &__t3016)? { - { - let v_W584 = { - let __t3011 = { - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z585 = - args[0].clone(); - Ok({ - let __t3009 = - v_Z585.clone(); - let __t3010 = - v_V577.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t3009, __t3010])? - }) - }, - vec![v_V577], - interp, - ) - }; - let __t3012 = v_V576.clone(); - rt::apply_direct( - interp, - "map", - &[__t3011, __t3012], - )? - }; - { - let __t3014 = { - let __t3013 = v_V574.clone(); - rt::apply_direct( - interp, - "shen-cl.qualify-op", - &[__t3013], - )? - }; - let __t3015 = v_W584.clone(); - rt::cons(&__t3014, &__t3015) - } - } - } else { - return Err(ShenError::new( - "cond: no clause matched", - )); - } - }) - }, - vec![v_V574, v_V576, v_V577], - interp, - ) - }; - { - let __t3031 = { - let __t3017 = Value::int(1i64); - let __t3018 = v_V575.clone(); - rt::eq(&__t3017, &__t3018) - }; - if rt::is_truthy(interp, &__t3031)? { - { - let v_Result589 = { - let __t3020 = { - let __t3019 = v_V574.clone(); - rt::apply_direct( - interp, - "shen-cl.unary-op-mapping", - &[__t3019], - )? - }; - let __t3027 = { - let v_V576 = v_V576.clone(); - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z581 = args[0].clone(); - Ok({ - let v_W582 = { - let __t3023 = { - let v_V577 = - v_V577.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z583 = args[0].clone(); Ok({ let __t3021 = v_Z583.clone(); let __t3022 = v_V577.clone(); rt::apply_direct(interp, "shen-cl.compile-expression", &[__t3021, __t3022])? }) }, vec![v_V577], interp) - }; - let __t3024 = - v_V576.clone(); - rt::apply_direct( - interp, - "map", - &[__t3023, __t3024], - )? - }; - { - let __t3025 = - v_Z581.clone(); - let __t3026 = - v_W582.clone(); - rt::cons(&__t3025, &__t3026) - } - }) - }, - vec![v_V576, v_V577], - interp, - ) - }; - rt::apply_direct( - interp, - "shen-cl.not-fail", - &[__t3020, __t3027], - )? - }; - { - let __t3030 = { - let __t3028 = v_Result589.clone(); - let __t3029 = { - rt::apply_direct(interp, "fail", &[])? - }; - rt::eq(&__t3028, &__t3029) - }; - if rt::is_truthy(interp, &__t3030)? { - rt::apply_value( - interp, - v_Freeze588.clone(), - &[], - )? - } else { - v_Result589.clone() - } - } - } - } else { - rt::apply_value(interp, v_Freeze588.clone(), &[])? - } - } - } - } else { - return Err(ShenError::new("cond: no clause matched")); - } - }) - }, - vec![v_V574, v_V575, v_V576, v_V577], - interp, - ) - }; - { - let __t3035 = { - let __t3033 = Value::int(2i64); - let __t3034 = v_V575.clone(); - rt::eq(&__t3033, &__t3034) - }; - if match rt::is_truthy(interp, &__t3035) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_Result587 = { - let __t3037 = { - let __t3036 = v_V574.clone(); - rt::apply_direct(interp, "shen-cl.binary-op-mapping", &[__t3036])? - }; - let __t3044 = { - let v_V576 = v_V576.clone(); - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z578 = args[0].clone(); - Ok({ - let v_W579 = { - let __t3040 = { - let v_V577 = v_V577.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z580 = args[0].clone(); - Ok({ - let __t3038 = v_Z580.clone(); - let __t3039 = v_V577.clone(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t3038, __t3039], - )? - }) - }, - vec![v_V577], - interp, - ) - }; - let __t3041 = v_V576.clone(); - rt::apply_direct( - interp, - "map", - &[__t3040, __t3041], - )? - }; - { - let __t3042 = v_Z578.clone(); - let __t3043 = v_W579.clone(); - rt::cons(&__t3042, &__t3043) - } - }) - }, - vec![v_V576, v_V577], - interp, - ) - }; - rt::apply_direct(interp, "shen-cl.not-fail", &[__t3037, __t3044])? - }; - { - let __t3047 = { - let __t3045 = v_Result587.clone(); - let __t3046 = { rt::apply_direct(interp, "fail", &[])? }; - rt::eq(&__t3045, &__t3046) - }; - if match rt::is_truthy(interp, &__t3047) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(rt::apply_value(interp, v_Freeze586.clone(), &[])?); - } else { - break Ok(v_Result587.clone()); - } - } - } - } else { - break Ok(rt::apply_value(interp, v_Freeze586.clone(), &[])?); - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_static_x2d_application(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-static-application", - 4, - aot_shen_x2d_cl_x2e_emit_x2d_static_x2d_application, - ); - interp.register_aot_direct( - "shen-cl.emit-static-application", - aot_shen_x2d_cl_x2e_emit_x2d_static_x2d_application, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.emit-application* ...)` -pub fn aot_shen_x2d_cl_x2e_emit_x2d_application_x2a_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 4 { - return Err(ShenError::new(format!( - "shen-cl.emit-application*: expected 4 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V590 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V591 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V592 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V593 = args[3].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3051 = { - let __t3048 = v_V590.clone(); - let __t3049 = v_V591.clone(); - let __t3050 = v_V592.clone(); - rt::apply_direct( - interp, - "shen-cl.is-partial-application?", - &[__t3048, __t3049, __t3050], - )? - }; - if match rt::is_truthy(interp, &__t3051) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3052 = v_V590.clone(); - let __t3053 = v_V591.clone(); - let __t3054 = v_V592.clone(); - let __t3055 = v_V593.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-partial-application", - &[__t3052, __t3053, __t3054, __t3055], - )? - }); - } else { - { - let __t3058 = { - let __t3056 = v_V590.clone(); - let __t3057 = v_V593.clone(); - rt::apply_direct( - interp, - "shen-cl.dynamic-application?", - &[__t3056, __t3057], - )? - }; - if match rt::is_truthy(interp, &__t3058) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3059 = v_V590.clone(); - let __t3060 = v_V592.clone(); - let __t3061 = v_V593.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-dynamic-application", - &[__t3059, __t3060, __t3061], - )? - }); - } else { - break Ok({ - let __t3066 = { - let __t3062 = v_V590.clone(); - let __t3063 = v_V591.clone(); - let __t3064 = v_V592.clone(); - let __t3065 = v_V593.clone(); - rt::apply_direct( - interp, - "shen-cl.emit-static-application", - &[__t3062, __t3063, __t3064, __t3065], - )? - }; - rt::apply_direct( - interp, - "shen-cl.optimise-static-application", - &[__t3066], - )? - }); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_emit_x2d_application_x2a_(interp: &mut Interp) { - interp.register_native( - "shen-cl.emit-application*", - 4, - aot_shen_x2d_cl_x2e_emit_x2d_application_x2a_, - ); - interp.register_aot_direct( - "shen-cl.emit-application*", - aot_shen_x2d_cl_x2e_emit_x2d_application_x2a_, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.nest-call ...)` -pub fn aot_shen_x2d_cl_x2e_nest_x2d_call(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.nest-call: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V594 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V595 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3084 = { - let __t3082 = Value::nil(); - let __t3083 = v_V595.clone(); - rt::eq(&__t3082, &__t3083) - }; - if match rt::is_truthy(interp, &__t3084) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V594.clone()); - } else { - { - let __t3081 = { - let __t3069 = v_V595.clone(); - rt::is_cons(&__t3069) - }; - if match rt::is_truthy(interp, &__t3081) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t3078 = { - let __t3071 = { - let __t3070 = Value::sym(interp.intern("funcall")); - rt::apply_direct(interp, "shen-cl.cl", &[__t3070])? - }; - let __t3077 = { - let __t3072 = v_V594.clone(); - let __t3076 = { - let __t3074 = { - let __t3073 = v_V595.clone(); - rt::hd(&__t3073)? - }; - let __t3075 = Value::nil(); - rt::cons(&__t3074, &__t3075) - }; - rt::cons(&__t3072, &__t3076) - }; - rt::cons(&__t3071, &__t3077) - }; - let __t3080 = { - let __t3079 = v_V595.clone(); - rt::tl(&__t3079)? - }; - v_V594 = __t3078; - v_V595 = __t3080; - continue; - } - } else { - { - let __t3068 = Value::bool(true); - if match rt::is_truthy(interp, &__t3068) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3067 = Value::sym(interp.intern("shen-cl.nest-call")); - rt::apply_direct(interp, "shen.f-error", &[__t3067])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_nest_x2d_call(interp: &mut Interp) { - interp.register_native("shen-cl.nest-call", 2, aot_shen_x2d_cl_x2e_nest_x2d_call); - interp.register_aot_direct("shen-cl.nest-call", aot_shen_x2d_cl_x2e_nest_x2d_call); -} - -/// AOT-compiled from KL `(defun shen-cl.nest-lambda ...)` -pub fn aot_shen_x2d_cl_x2e_nest_x2d_lambda( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen-cl.nest-lambda: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V596 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V597 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V598 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3107 = { - let __t3103 = v_V597.clone(); - let __t3104 = Value::int(0i64); - rt::lte(&__t3103, &__t3104)? - }; - if match rt::is_truthy(interp, &__t3107) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3105 = v_V596.clone(); - let __t3106 = v_V598.clone(); - rt::apply_direct(interp, "shen-cl.compile-expression", &[__t3105, __t3106])? - }); - } else { - { - let __t3102 = Value::bool(true); - if match rt::is_truthy(interp, &__t3102) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W599 = { - let __t3085 = Value::sym(interp.intern("Y")); - rt::apply_direct(interp, "gensym", &[__t3085])? - }; - break Ok({ - let __t3087 = { - let __t3086 = Value::sym(interp.intern("lambda")); - rt::apply_direct(interp, "shen-cl.kl", &[__t3086])? - }; - let __t3101 = { - let __t3088 = v_W599.clone(); - let __t3100 = { - let __t3098 = { - let __t3091 = { - let __t3089 = v_V596.clone(); - let __t3090 = v_W599.clone(); - rt::apply_direct( - interp, - "shen-cl.merge-args", - &[__t3089, __t3090], - )? - }; - let __t3094 = { - let __t3092 = v_V597.clone(); - let __t3093 = Value::int(1i64); - rt::sub(&__t3092, &__t3093)? - }; - let __t3097 = { - let __t3095 = v_W599.clone(); - let __t3096 = v_V598.clone(); - rt::cons(&__t3095, &__t3096) - }; - rt::apply_direct( - interp, - "shen-cl.nest-lambda", - &[__t3091, __t3094, __t3097], - )? - }; - let __t3099 = Value::nil(); - rt::cons(&__t3098, &__t3099) - }; - rt::cons(&__t3088, &__t3100) - }; - rt::cons(&__t3087, &__t3101) - }); - } - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_nest_x2d_lambda(interp: &mut Interp) { - interp.register_native( - "shen-cl.nest-lambda", - 3, - aot_shen_x2d_cl_x2e_nest_x2d_lambda, - ); - interp.register_aot_direct("shen-cl.nest-lambda", aot_shen_x2d_cl_x2e_nest_x2d_lambda); -} - -/// AOT-compiled from KL `(defun shen-cl.merge-args ...)` -pub fn aot_shen_x2d_cl_x2e_merge_x2d_args( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen-cl.merge-args: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V600 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V601 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3118 = { - let __t3113 = v_V600.clone(); - rt::is_cons(&__t3113) - }; - if match rt::is_truthy(interp, &__t3118) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3114 = v_V600.clone(); - let __t3117 = { - let __t3115 = v_V601.clone(); - let __t3116 = Value::nil(); - rt::cons(&__t3115, &__t3116) - }; - rt::apply_direct(interp, "append", &[__t3114, __t3117])? - }); - } else { - { - let __t3112 = Value::bool(true); - if match rt::is_truthy(interp, &__t3112) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3108 = v_V600.clone(); - let __t3111 = { - let __t3109 = v_V601.clone(); - let __t3110 = Value::nil(); - rt::cons(&__t3109, &__t3110) - }; - rt::cons(&__t3108, &__t3111) - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_merge_x2d_args(interp: &mut Interp) { - interp.register_native("shen-cl.merge-args", 2, aot_shen_x2d_cl_x2e_merge_x2d_args); - interp.register_aot_direct("shen-cl.merge-args", aot_shen_x2d_cl_x2e_merge_x2d_args); -} - -/// AOT-compiled from KL `(defun shen-cl.factorise-defun ...)` -pub fn aot_shen_x2d_cl_x2e_factorise_x2d_defun( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.factorise-defun: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V602 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3168 = { - let __t3164 = { - let __t3121 = v_V602.clone(); - rt::is_cons(&__t3121) - }; - if !rt::is_truthy(interp, &__t3164)? { - Value::bool(false) - } else { - let __t3165 = { - let __t3162 = { - let __t3122 = Value::sym(interp.intern("defun")); - let __t3124 = { - let __t3123 = v_V602.clone(); - rt::hd(&__t3123)? - }; - rt::eq(&__t3122, &__t3124) - }; - if !rt::is_truthy(interp, &__t3162)? { - Value::bool(false) - } else { - let __t3163 = { - let __t3160 = { - let __t3126 = { - let __t3125 = v_V602.clone(); - rt::tl(&__t3125)? - }; - rt::is_cons(&__t3126) - }; - if !rt::is_truthy(interp, &__t3160)? { - Value::bool(false) - } else { - let __t3161 = { - let __t3158 = { - let __t3129 = { - let __t3128 = { - let __t3127 = v_V602.clone(); - rt::tl(&__t3127)? - }; - rt::tl(&__t3128)? - }; - rt::is_cons(&__t3129) - }; - if !rt::is_truthy(interp, &__t3158)? { - Value::bool(false) - } else { - let __t3159 = { - let __t3156 = { - let __t3133 = { - let __t3132 = { - let __t3131 = { - let __t3130 = v_V602.clone(); - rt::tl(&__t3130)? - }; - rt::tl(&__t3131)? - }; - rt::tl(&__t3132)? - }; - rt::is_cons(&__t3133) - }; - if !rt::is_truthy(interp, &__t3156)? { - Value::bool(false) - } else { - let __t3157 = { - let __t3154 = { - let __t3138 = { - let __t3137 = { - let __t3136 = { - let __t3135 = { - let __t3134 = - v_V602.clone(); - rt::tl(&__t3134)? - }; - rt::tl(&__t3135)? - }; - rt::tl(&__t3136)? - }; - rt::hd(&__t3137)? - }; - rt::is_cons(&__t3138) - }; - if !rt::is_truthy(interp, &__t3154)? { - Value::bool(false) - } else { - let __t3155 = { - let __t3152 = { - let __t3139 = Value::sym( - interp.intern("cond"), - ); - let __t3145 = { - let __t3144 = { - let __t3143 = { - let __t3142 = { - let __t3141 = { - let __t3140 = v_V602.clone(); - rt::tl(&__t3140)? - }; - rt::tl( - &__t3141, - )? - }; - rt::tl(&__t3142)? - }; - rt::hd(&__t3143)? - }; - rt::hd(&__t3144)? - }; - rt::eq(&__t3139, &__t3145) - }; - if !rt::is_truthy(interp, &__t3152)? - { - Value::bool(false) - } else { - let __t3153 = { - let __t3146 = Value::nil(); - let __t3151 = { - let __t3150 = { - let __t3149 = { - let __t3148 = { - let __t3147 = v_V602.clone(); - rt::tl(&__t3147)? - }; - rt::tl( - &__t3148, - )? - }; - rt::tl(&__t3149)? - }; - rt::tl(&__t3150)? - }; - rt::eq(&__t3146, &__t3151) - }; - Value::bool(rt::is_truthy( - interp, &__t3153, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t3155, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3157)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3159)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3161)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3163)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3165)?) - } - }; - if match rt::is_truthy(interp, &__t3168) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3167 = { - let __t3166 = v_V602.clone(); - rt::apply_direct( - interp, - "shen.x.factorise-defun.factorise-defun", - &[__t3166], - )? - }; - rt::apply_direct(interp, "shen-cl.add-block", &[__t3167])? - }); - } else { - { - let __t3120 = Value::bool(true); - if match rt::is_truthy(interp, &__t3120) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3119 = Value::sym(interp.intern("shen-cl.factorise-defun")); - rt::apply_direct(interp, "shen.f-error", &[__t3119])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_factorise_x2d_defun(interp: &mut Interp) { - interp.register_native( - "shen-cl.factorise-defun", - 1, - aot_shen_x2d_cl_x2e_factorise_x2d_defun, - ); - interp.register_aot_direct( - "shen-cl.factorise-defun", - aot_shen_x2d_cl_x2e_factorise_x2d_defun, - ); -} - -/// AOT-compiled from KL `(defun shen-cl.add-block ...)` -pub fn aot_shen_x2d_cl_x2e_add_x2d_block(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.add-block: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V603 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3220 = { - let __t3198 = { - let __t3171 = v_V603.clone(); - rt::is_cons(&__t3171) - }; - if !rt::is_truthy(interp, &__t3198)? { - Value::bool(false) - } else { - let __t3199 = { - let __t3196 = { - let __t3172 = Value::sym(interp.intern("defun")); - let __t3174 = { - let __t3173 = v_V603.clone(); - rt::hd(&__t3173)? - }; - rt::eq(&__t3172, &__t3174) - }; - if !rt::is_truthy(interp, &__t3196)? { - Value::bool(false) - } else { - let __t3197 = { - let __t3194 = { - let __t3176 = { - let __t3175 = v_V603.clone(); - rt::tl(&__t3175)? - }; - rt::is_cons(&__t3176) - }; - if !rt::is_truthy(interp, &__t3194)? { - Value::bool(false) - } else { - let __t3195 = { - let __t3192 = { - let __t3179 = { - let __t3178 = { - let __t3177 = v_V603.clone(); - rt::tl(&__t3177)? - }; - rt::tl(&__t3178)? - }; - rt::is_cons(&__t3179) - }; - if !rt::is_truthy(interp, &__t3192)? { - Value::bool(false) - } else { - let __t3193 = { - let __t3190 = { - let __t3183 = { - let __t3182 = { - let __t3181 = { - let __t3180 = v_V603.clone(); - rt::tl(&__t3180)? - }; - rt::tl(&__t3181)? - }; - rt::tl(&__t3182)? - }; - rt::is_cons(&__t3183) - }; - if !rt::is_truthy(interp, &__t3190)? { - Value::bool(false) - } else { - let __t3191 = { - let __t3184 = Value::nil(); - let __t3189 = { - let __t3188 = { - let __t3187 = { - let __t3186 = { - let __t3185 = - v_V603.clone(); - rt::tl(&__t3185)? - }; - rt::tl(&__t3186)? - }; - rt::tl(&__t3187)? - }; - rt::tl(&__t3188)? - }; - rt::eq(&__t3184, &__t3189) - }; - Value::bool(rt::is_truthy(interp, &__t3191)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3193)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3195)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3197)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3199)?) - } - }; - if match rt::is_truthy(interp, &__t3220) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3200 = Value::sym(interp.intern("defun")); - let __t3219 = { - let __t3203 = { - let __t3202 = { - let __t3201 = v_V603.clone(); - rt::tl(&__t3201)? - }; - rt::hd(&__t3202)? - }; - let __t3218 = { - let __t3207 = { - let __t3206 = { - let __t3205 = { - let __t3204 = v_V603.clone(); - rt::tl(&__t3204)? - }; - rt::tl(&__t3205)? - }; - rt::hd(&__t3206)? - }; - let __t3217 = { - let __t3215 = { - let __t3208 = Value::sym(interp.intern("lisp.block")); - let __t3214 = { - let __t3209 = Value::nil(); - let __t3213 = { - let __t3212 = { - let __t3211 = { - let __t3210 = v_V603.clone(); - rt::tl(&__t3210)? - }; - rt::tl(&__t3211)? - }; - rt::tl(&__t3212)? - }; - rt::cons(&__t3209, &__t3213) - }; - rt::cons(&__t3208, &__t3214) - }; - let __t3216 = Value::nil(); - rt::cons(&__t3215, &__t3216) - }; - rt::cons(&__t3207, &__t3217) - }; - rt::cons(&__t3203, &__t3218) - }; - rt::cons(&__t3200, &__t3219) - }); - } else { - { - let __t3170 = Value::bool(true); - if match rt::is_truthy(interp, &__t3170) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3169 = Value::sym(interp.intern("shen-cl.add-block")); - rt::apply_direct(interp, "shen.f-error", &[__t3169])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_add_x2d_block(interp: &mut Interp) { - interp.register_native("shen-cl.add-block", 1, aot_shen_x2d_cl_x2e_add_x2d_block); - interp.register_aot_direct("shen-cl.add-block", aot_shen_x2d_cl_x2e_add_x2d_block); -} - -/// AOT-compiled from KL `(defun shen-cl.kl->lisp ...)` -pub fn aot_shen_x2d_cl_x2e_kl_x2d__x3e_lisp( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen-cl.kl->lisp: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V604 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t3328 = { - let __t3324 = { - let __t3278 = v_V604.clone(); - rt::is_cons(&__t3278) - }; - if !rt::is_truthy(interp, &__t3324)? { - Value::bool(false) - } else { - let __t3325 = { - let __t3322 = { - let __t3279 = Value::sym(interp.intern("defun")); - let __t3281 = { - let __t3280 = v_V604.clone(); - rt::hd(&__t3280)? - }; - rt::eq(&__t3279, &__t3281) - }; - if !rt::is_truthy(interp, &__t3322)? { - Value::bool(false) - } else { - let __t3323 = { - let __t3320 = { - let __t3283 = { - let __t3282 = v_V604.clone(); - rt::tl(&__t3282)? - }; - rt::is_cons(&__t3283) - }; - if !rt::is_truthy(interp, &__t3320)? { - Value::bool(false) - } else { - let __t3321 = { - let __t3318 = { - let __t3286 = { - let __t3285 = { - let __t3284 = v_V604.clone(); - rt::tl(&__t3284)? - }; - rt::tl(&__t3285)? - }; - rt::is_cons(&__t3286) - }; - if !rt::is_truthy(interp, &__t3318)? { - Value::bool(false) - } else { - let __t3319 = { - let __t3316 = { - let __t3290 = { - let __t3289 = { - let __t3288 = { - let __t3287 = v_V604.clone(); - rt::tl(&__t3287)? - }; - rt::tl(&__t3288)? - }; - rt::tl(&__t3289)? - }; - rt::is_cons(&__t3290) - }; - if !rt::is_truthy(interp, &__t3316)? { - Value::bool(false) - } else { - let __t3317 = { - let __t3314 = { - let __t3295 = { - let __t3294 = { - let __t3293 = { - let __t3292 = { - let __t3291 = - v_V604.clone(); - rt::tl(&__t3291)? - }; - rt::tl(&__t3292)? - }; - rt::tl(&__t3293)? - }; - rt::hd(&__t3294)? - }; - rt::is_cons(&__t3295) - }; - if !rt::is_truthy(interp, &__t3314)? { - Value::bool(false) - } else { - let __t3315 = { - let __t3312 = { - let __t3296 = Value::sym( - interp.intern("cond"), - ); - let __t3302 = { - let __t3301 = { - let __t3300 = { - let __t3299 = { - let __t3298 = { - let __t3297 = v_V604.clone(); - rt::tl(&__t3297)? - }; - rt::tl( - &__t3298, - )? - }; - rt::tl(&__t3299)? - }; - rt::hd(&__t3300)? - }; - rt::hd(&__t3301)? - }; - rt::eq(&__t3296, &__t3302) - }; - if !rt::is_truthy(interp, &__t3312)? - { - Value::bool(false) - } else { - let __t3313 = { - let __t3310 = { - let __t3303 = - Value::nil(); - let __t3308 = { - let __t3307 = { - let __t3306 = { - let __t3305 = { - let __t3304 = v_V604.clone(); - rt::tl(&__t3304)? - }; - rt::tl(&__t3305)? - }; - rt::tl( - &__t3306, - )? - }; - rt::tl(&__t3307)? - }; - rt::eq( - &__t3303, &__t3308, - ) - }; - if !rt::is_truthy( - interp, &__t3310, - )? { - Value::bool(false) - } else { - let __t3311 = { - let __t3309 = Value::sym(interp.intern("shen-cl.*factorise-patterns*")); - rt::apply_direct( - interp, - "value", - &[__t3309], - )? - }; - Value::bool( - rt::is_truthy( - interp, - &__t3311, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t3313, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t3315, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3317)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3319)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3321)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3323)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3325)?) - } - }; - if match rt::is_truthy(interp, &__t3328) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t3327 = { - let __t3326 = v_V604.clone(); - rt::apply_direct(interp, "shen-cl.factorise-defun", &[__t3326])? - }; - v_V604 = __t3327; - continue; - } - } else { - { - let __t3277 = { - let __t3251 = { - let __t3224 = v_V604.clone(); - rt::is_cons(&__t3224) - }; - if !rt::is_truthy(interp, &__t3251)? { - Value::bool(false) - } else { - let __t3252 = { - let __t3249 = { - let __t3225 = Value::sym(interp.intern("defun")); - let __t3227 = { - let __t3226 = v_V604.clone(); - rt::hd(&__t3226)? - }; - rt::eq(&__t3225, &__t3227) - }; - if !rt::is_truthy(interp, &__t3249)? { - Value::bool(false) - } else { - let __t3250 = { - let __t3247 = { - let __t3229 = { - let __t3228 = v_V604.clone(); - rt::tl(&__t3228)? - }; - rt::is_cons(&__t3229) - }; - if !rt::is_truthy(interp, &__t3247)? { - Value::bool(false) - } else { - let __t3248 = { - let __t3245 = { - let __t3232 = { - let __t3231 = { - let __t3230 = v_V604.clone(); - rt::tl(&__t3230)? - }; - rt::tl(&__t3231)? - }; - rt::is_cons(&__t3232) - }; - if !rt::is_truthy(interp, &__t3245)? { - Value::bool(false) - } else { - let __t3246 = { - let __t3243 = { - let __t3236 = { - let __t3235 = { - let __t3234 = { - let __t3233 = - v_V604.clone(); - rt::tl(&__t3233)? - }; - rt::tl(&__t3234)? - }; - rt::tl(&__t3235)? - }; - rt::is_cons(&__t3236) - }; - if !rt::is_truthy(interp, &__t3243)? { - Value::bool(false) - } else { - let __t3244 = { - let __t3237 = Value::nil(); - let __t3242 = { - let __t3241 = { - let __t3240 = { - let __t3239 = { - let __t3238 = - v_V604.clone(); - rt::tl(&__t3238)? - }; - rt::tl(&__t3239)? - }; - rt::tl(&__t3240)? - }; - rt::tl(&__t3241)? - }; - rt::eq(&__t3237, &__t3242) - }; - Value::bool(rt::is_truthy( - interp, &__t3244, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3246)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3248)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3250)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t3252)?) - } - }; - if match rt::is_truthy(interp, &__t3277) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3254 = { - let __t3253 = Value::sym(interp.intern("defun")); - rt::apply_direct(interp, "shen-cl.cl", &[__t3253])? - }; - let __t3276 = { - let __t3258 = { - let __t3257 = { - let __t3256 = { - let __t3255 = v_V604.clone(); - rt::tl(&__t3255)? - }; - rt::hd(&__t3256)? - }; - rt::apply_direct(interp, "shen-cl.qualify-op", &[__t3257])? - }; - let __t3275 = { - let __t3262 = { - let __t3261 = { - let __t3260 = { - let __t3259 = v_V604.clone(); - rt::tl(&__t3259)? - }; - rt::tl(&__t3260)? - }; - rt::hd(&__t3261)? - }; - let __t3274 = { - let __t3272 = { - let __t3267 = { - let __t3266 = { - let __t3265 = { - let __t3264 = { - let __t3263 = v_V604.clone(); - rt::tl(&__t3263)? - }; - rt::tl(&__t3264)? - }; - rt::tl(&__t3265)? - }; - rt::hd(&__t3266)? - }; - let __t3271 = { - let __t3270 = { - let __t3269 = { - let __t3268 = v_V604.clone(); - rt::tl(&__t3268)? - }; - rt::tl(&__t3269)? - }; - rt::hd(&__t3270)? - }; - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t3267, __t3271], - )? - }; - let __t3273 = Value::nil(); - rt::cons(&__t3272, &__t3273) - }; - rt::cons(&__t3262, &__t3274) - }; - rt::cons(&__t3258, &__t3275) - }; - rt::cons(&__t3254, &__t3276) - }); - } else { - { - let __t3223 = Value::bool(true); - if match rt::is_truthy(interp, &__t3223) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t3221 = v_V604.clone(); - let __t3222 = Value::nil(); - rt::apply_direct( - interp, - "shen-cl.compile-expression", - &[__t3221, __t3222], - )? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2d_cl_x2e_kl_x2d__x3e_lisp(interp: &mut Interp) { - interp.register_native("shen-cl.kl->lisp", 1, aot_shen_x2d_cl_x2e_kl_x2d__x3e_lisp); - interp.register_aot_direct("shen-cl.kl->lisp", aot_shen_x2d_cl_x2e_kl_x2d__x3e_lisp); -} - -/// Register every AOT-compiled function on `interp`. Call after kernel -/// boot so these names override the tree-walked defuns. -pub fn install(interp: &mut Interp) { - install_shen_x2d_cl_x2e_initialise_x2d_compiler(interp); - install_shen_x2d_cl_x2e_kl(interp); - install_shen_x2d_cl_x2e_cl(interp); - install_shen_x2d_cl_x2e_unbound_x2d_symbol_x3f_(interp); - install_shen_x2d_cl_x2e_merge_x2d_nested_x2d_repeats(interp); - install_shen_x2d_cl_x2e_merge_x2d_nested_x2d_lets(interp); - install_shen_x2d_cl_x2e_compile_x2d_expression(interp); - install_shen_x2d_cl_x2e_optimise_x2d_boolean_x2d_check(interp); - install_shen_x2d_cl_x2e_emit_x2d_symbol(interp); - install_shen_x2d_cl_x2e_subst_x2a_(interp); - install_shen_x2d_cl_x2e_subst_x2d_nil_x2d_spine(interp); - install_shen_x2d_cl_x2e_subst_x2d_nil_x2d_element(interp); - install_shen_x2d_cl_x2e_ch_x2d_T_x2f_NIL(interp); - install_shen_x2d_cl_x2e_emit_x2d_let(interp); - install_shen_x2d_cl_x2e_emit_x2d_lambda(interp); - install_shen_x2d_cl_x2e_emit_x2d_if(interp); - install_shen_x2d_cl_x2e_emit_x2d_cond(interp); - install_shen_x2d_cl_x2e_emit_x2d_cond_x2d_clauses(interp); - install_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error(interp); - install_shen_x2d_cl_x2e_emit_x2d_trap_x2d_error_x2d_optimise(interp); - install_shen_x2d_cl_x2e_emit_x2d_equality_x2d_check(interp); - install_shen_x2d_cl_x2e_emit_x2d_application(interp); - install_shen_x2d_cl_x2e_is_x2d_partial_x2d_application_x3f_(interp); - install_shen_x2d_cl_x2e_take_x2d_n(interp); - install_shen_x2d_cl_x2e_drop_x2d_n(interp); - install_shen_x2d_cl_x2e_emit_x2d_partial_x2d_application(interp); - install_shen_x2d_cl_x2e_dynamic_x2d_application_x3f_(interp); - install_shen_x2d_cl_x2e_emit_x2d_dynamic_x2d_application(interp); - install_shen_x2d_cl_x2e_lisp_x2d_prefixed_x2d_h_x3f_(interp); - install_shen_x2d_cl_x2e_lisp_x2d_prefixed_x3f_(interp); - install_shen_x2d_cl_x2e_remove_x2d_lisp_x2d_prefix(interp); - install_shen_x2d_cl_x2e_upcase(interp); - install_shen_x2d_cl_x2e_upcase_x2d_h(interp); - install_shen_x2d_cl_x2e_upcase_x2d_char(interp); - install_shen_x2d_cl_x2e_upcase_x2d_charcode(interp); - install_shen_x2d_cl_x2e_qualify_x2d_op(interp); - install_shen_x2d_cl_x2e_not_x2d_fail(interp); - install_shen_x2d_cl_x2e_binary_x2d_op_x2d_mapping(interp); - install_shen_x2d_cl_x2e_unary_x2d_op_x2d_mapping(interp); - install_shen_x2d_cl_x2e_optimise_x2d_static_x2d_application(interp); - install_shen_x2d_cl_x2e_emit_x2d_static_x2d_application(interp); - install_shen_x2d_cl_x2e_emit_x2d_application_x2a_(interp); - install_shen_x2d_cl_x2e_nest_x2d_call(interp); - install_shen_x2d_cl_x2e_nest_x2d_lambda(interp); - install_shen_x2d_cl_x2e_merge_x2d_args(interp); - install_shen_x2d_cl_x2e_factorise_x2d_defun(interp); - install_shen_x2d_cl_x2e_add_x2d_block(interp); - install_shen_x2d_cl_x2e_kl_x2d__x3e_lisp(interp); -} diff --git a/crates/shen-rust/src/aot/kernel/core.rs b/crates/shen-rust/src/aot/kernel/core.rs index a7f9a29..a1d9554 100644 --- a/crates/shen-rust/src/aot/kernel/core.rs +++ b/crates/shen-rust/src/aot/kernel/core.rs @@ -32,16 +32,16 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V531 = args[0].clone(); + let mut v_V521 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W532 = { - let __t0 = v_V531.clone(); + let v_W522 = { + let __t0 = v_V521.clone(); rt::apply_direct(interp, "shen.shen->kl-h", &[__t0])? }; break Ok({ - let __t1 = v_W532.clone(); + let __t1 = v_W522.clone(); rt::apply_direct(interp, "shen.record-and-evaluate", &[__t1])? }); } @@ -65,13 +65,13 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( ))); } #[allow(unused_mut)] - let mut v_V533 = args[0].clone(); + let mut v_V523 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t58 = { let __t30 = { - let __t3 = v_V533.clone(); + let __t3 = v_V523.clone(); rt::is_cons(&__t3) }; if !rt::is_truthy(interp, &__t30)? { @@ -81,7 +81,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t28 = { let __t4 = Value::sym(interp.intern("defun")); let __t6 = { - let __t5 = v_V533.clone(); + let __t5 = v_V523.clone(); rt::hd(&__t5)? }; rt::eq(&__t4, &__t6) @@ -92,7 +92,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t29 = { let __t26 = { let __t8 = { - let __t7 = v_V533.clone(); + let __t7 = v_V523.clone(); rt::tl(&__t7)? }; rt::is_cons(&__t8) @@ -104,7 +104,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t24 = { let __t11 = { let __t10 = { - let __t9 = v_V533.clone(); + let __t9 = v_V523.clone(); rt::tl(&__t9)? }; rt::tl(&__t10)? @@ -119,7 +119,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t15 = { let __t14 = { let __t13 = { - let __t12 = v_V533.clone(); + let __t12 = v_V523.clone(); rt::tl(&__t12)? }; rt::tl(&__t13)? @@ -137,7 +137,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t20 = { let __t19 = { let __t18 = { - let __t17 = v_V533.clone(); + let __t17 = v_V523.clone(); rt::tl(&__t17)? }; rt::tl(&__t18)? @@ -168,11 +168,11 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( Err(e) => break Err(e), } { { - let v_W534 = { + let v_W524 = { let __t41 = { let __t34 = { let __t33 = { - let __t32 = v_V533.clone(); + let __t32 = v_V523.clone(); rt::tl(&__t32)? }; rt::hd(&__t33)? @@ -184,7 +184,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t40 = { let __t37 = { let __t36 = { - let __t35 = v_V533.clone(); + let __t35 = v_V523.clone(); rt::tl(&__t35)? }; rt::hd(&__t36)? @@ -200,10 +200,10 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( } }; { - let v_W535 = { + let v_W525 = { let __t44 = { let __t43 = { - let __t42 = v_V533.clone(); + let __t42 = v_V523.clone(); rt::tl(&__t42)? }; rt::hd(&__t43)? @@ -212,7 +212,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( let __t48 = { let __t47 = { let __t46 = { - let __t45 = v_V533.clone(); + let __t45 = v_V523.clone(); rt::tl(&__t45)? }; rt::tl(&__t46)? @@ -224,26 +224,26 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( rt::apply_direct(interp, "shen.store-arity", &[__t44, __t49])? }; { - let v_W536 = { + let v_W526 = { let __t52 = { let __t51 = { - let __t50 = v_V533.clone(); + let __t50 = v_V523.clone(); rt::tl(&__t50)? }; rt::hd(&__t51)? }; - let __t53 = v_V533.clone(); + let __t53 = v_V523.clone(); rt::apply_direct(interp, "shen.record-kl", &[__t52, __t53])? }; { - let v_W537 = { - let __t54 = v_V533.clone(); + let v_W527 = { + let __t54 = v_V523.clone(); rt::apply_direct(interp, "eval-kl", &[__t54])? }; break Ok({ let __t57 = { let __t56 = { - let __t55 = v_V533.clone(); + let __t55 = v_V523.clone(); rt::tl(&__t55)? }; rt::hd(&__t56)? @@ -261,7 +261,7 @@ pub fn aot_shen_x2e_record_x2d_and_x2d_evaluate( Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V533.clone()); + break Ok(v_V523.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -295,13 +295,13 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V538 = args[0].clone(); + let mut v_V528 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t178 = { let __t170 = { - let __t162 = v_V538.clone(); + let __t162 = v_V528.clone(); rt::is_cons(&__t162) }; if !rt::is_truthy(interp, &__t170)? { @@ -311,7 +311,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t168 = { let __t163 = Value::sym(interp.intern("define")); let __t165 = { - let __t164 = v_V538.clone(); + let __t164 = v_V528.clone(); rt::hd(&__t164)? }; rt::eq(&__t163, &__t165) @@ -321,7 +321,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( } else { let __t169 = { let __t167 = { - let __t166 = v_V538.clone(); + let __t166 = v_V528.clone(); rt::tl(&__t166)? }; rt::is_cons(&__t167) @@ -339,14 +339,14 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( break Ok({ let __t174 = { let __t173 = { - let __t172 = v_V538.clone(); + let __t172 = v_V528.clone(); rt::tl(&__t172)? }; rt::hd(&__t173)? }; let __t177 = { let __t176 = { - let __t175 = v_V538.clone(); + let __t175 = v_V528.clone(); rt::tl(&__t175)? }; rt::tl(&__t176)? @@ -357,7 +357,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( { let __t161 = { let __t159 = { - let __t132 = v_V538.clone(); + let __t132 = v_V528.clone(); rt::is_cons(&__t132) }; if !rt::is_truthy(interp, &__t159)? { @@ -367,7 +367,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t157 = { let __t133 = Value::sym(interp.intern("defun")); let __t135 = { - let __t134 = v_V538.clone(); + let __t134 = v_V528.clone(); rt::hd(&__t134)? }; rt::eq(&__t133, &__t135) @@ -378,7 +378,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t158 = { let __t155 = { let __t137 = { - let __t136 = v_V538.clone(); + let __t136 = v_V528.clone(); rt::tl(&__t136)? }; rt::is_cons(&__t137) @@ -390,7 +390,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t153 = { let __t140 = { let __t139 = { - let __t138 = v_V538.clone(); + let __t138 = v_V528.clone(); rt::tl(&__t138)? }; rt::tl(&__t139)? @@ -405,7 +405,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t144 = { let __t143 = { let __t142 = { - let __t141 = v_V538.clone(); + let __t141 = v_V528.clone(); rt::tl(&__t141)? }; rt::tl(&__t142)? @@ -424,7 +424,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t148 = { let __t147 = { let __t146 = - v_V538.clone(); + v_V528.clone(); rt::tl(&__t146)? }; rt::tl(&__t147)? @@ -456,12 +456,12 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V538.clone()); + break Ok(v_V528.clone()); } else { { let __t131 = { let __t117 = { - let __t97 = v_V538.clone(); + let __t97 = v_V528.clone(); rt::is_cons(&__t97) }; if !rt::is_truthy(interp, &__t117)? { @@ -471,7 +471,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t115 = { let __t98 = Value::sym(interp.intern("type")); let __t100 = { - let __t99 = v_V538.clone(); + let __t99 = v_V528.clone(); rt::hd(&__t99)? }; rt::eq(&__t98, &__t100) @@ -482,7 +482,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t116 = { let __t113 = { let __t102 = { - let __t101 = v_V538.clone(); + let __t101 = v_V528.clone(); rt::tl(&__t101)? }; rt::is_cons(&__t102) @@ -494,7 +494,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t111 = { let __t105 = { let __t104 = { - let __t103 = v_V538.clone(); + let __t103 = v_V528.clone(); rt::tl(&__t103)? }; rt::tl(&__t104)? @@ -510,7 +510,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t109 = { let __t108 = { let __t107 = - v_V538.clone(); + v_V528.clone(); rt::tl(&__t107)? }; rt::tl(&__t108)? @@ -542,7 +542,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t130 = { let __t122 = { let __t121 = { - let __t120 = v_V538.clone(); + let __t120 = v_V528.clone(); rt::tl(&__t120)? }; rt::hd(&__t121)? @@ -552,7 +552,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t126 = { let __t125 = { let __t124 = { - let __t123 = v_V538.clone(); + let __t123 = v_V528.clone(); rt::tl(&__t123)? }; rt::tl(&__t124)? @@ -576,7 +576,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( { let __t96 = { let __t85 = { - let __t65 = v_V538.clone(); + let __t65 = v_V528.clone(); rt::is_cons(&__t65) }; if !rt::is_truthy(interp, &__t85)? { @@ -586,7 +586,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t83 = { let __t66 = Value::sym(interp.intern("input+")); let __t68 = { - let __t67 = v_V538.clone(); + let __t67 = v_V528.clone(); rt::hd(&__t67)? }; rt::eq(&__t66, &__t68) @@ -597,7 +597,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t84 = { let __t81 = { let __t70 = { - let __t69 = v_V538.clone(); + let __t69 = v_V528.clone(); rt::tl(&__t69)? }; rt::is_cons(&__t70) @@ -610,7 +610,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t73 = { let __t72 = { let __t71 = - v_V538.clone(); + v_V528.clone(); rt::tl(&__t71)? }; rt::tl(&__t72)? @@ -626,7 +626,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t77 = { let __t76 = { let __t75 = - v_V538 + v_V528 .clone( ); rt::tl(&__t75)? @@ -663,7 +663,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( let __t91 = { let __t90 = { let __t89 = { - let __t88 = v_V538.clone(); + let __t88 = v_V528.clone(); rt::tl(&__t88)? }; rt::hd(&__t89)? @@ -676,7 +676,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( }; let __t94 = { let __t93 = { - let __t92 = v_V538.clone(); + let __t92 = v_V528.clone(); rt::tl(&__t92)? }; rt::tl(&__t93)? @@ -688,7 +688,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( } else { { let __t64 = { - let __t60 = v_V538.clone(); + let __t60 = v_V528.clone(); rt::is_cons(&__t60) }; if match rt::is_truthy(interp, &__t64) { @@ -701,9 +701,9 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( "", 1, move |interp, args| { - let v_Z539 = args[0].clone(); + let v_Z529 = args[0].clone(); Ok({ - let __t61 = v_Z539.clone(); + let __t61 = v_Z529.clone(); rt::apply_direct( interp, "shen.shen->kl-h", @@ -715,7 +715,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( interp, ) }; - let __t63 = v_V538.clone(); + let __t63 = v_V528.clone(); rt::apply_direct( interp, "map", @@ -729,7 +729,7 @@ pub fn aot_shen_x2e_shen_x2d__x3e_kl_x2d_h( Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V538.clone()); + break Ok(v_V528.clone()); } else { break Err(ShenError::new( "cond: no clause matched", @@ -766,9 +766,9 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef( ))); } #[allow(unused_mut)] - let mut v_V540 = args[0].clone(); + let mut v_V530 = args[0].clone(); #[allow(unused_mut)] - let mut v_V541 = args[1].clone(); + let mut v_V531 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -777,9 +777,9 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef( "", 1, move |interp, args| { - let v_Z542 = args[0].clone(); + let v_Z532 = args[0].clone(); Ok({ - let __t179 = v_Z542.clone(); + let __t179 = v_Z532.clone(); rt::apply_direct(interp, "shen.", &[__t179])? }) }, @@ -788,8 +788,8 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef( ) }; let __t183 = { - let __t181 = v_V540.clone(); - let __t182 = v_V541.clone(); + let __t181 = v_V530.clone(); + let __t182 = v_V531.clone(); rt::cons(&__t181, &__t182) }; rt::apply_direct(interp, "compile", &[__t180, __t183])? @@ -815,18 +815,18 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V543 = args[0].clone(); + let mut v_V533 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W544 = { - let v_W545 = { - let __t184 = v_V543.clone(); + let v_W534 = { + let v_W535 = { + let __t184 = v_V533.clone(); rt::apply_direct(interp, "shen.", &[__t184])? }; { let __t209 = { - let __t185 = v_W545.clone(); + let __t185 = v_W535.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t185])? }; if rt::is_truthy(interp, &__t209)? { @@ -835,30 +835,30 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W546 = { - let __t186 = v_W545.clone(); + let v_W536 = { + let __t186 = v_W535.clone(); rt::apply_direct(interp, "shen.<-out", &[__t186])? }; { - let v_W547 = { - let __t187 = v_W545.clone(); + let v_W537 = { + let __t187 = v_W535.clone(); rt::apply_direct(interp, "shen.in->", &[__t187])? }; { let __t208 = { - let __t188 = v_W547.clone(); + let __t188 = v_W537.clone(); let __t189 = Value::sym(interp.intern("{")); rt::apply_direct(interp, "shen.hds=?", &[__t188, __t189])? }; if rt::is_truthy(interp, &__t208)? { { - let v_W548 = { - let __t190 = v_W547.clone(); + let v_W538 = { + let __t190 = v_W537.clone(); rt::apply_direct(interp, "tail", &[__t190])? }; { - let v_W549 = { - let __t191 = v_W548.clone(); + let v_W539 = { + let __t191 = v_W538.clone(); rt::apply_direct( interp, "shen.", @@ -867,7 +867,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t207 = { - let __t192 = v_W549.clone(); + let __t192 = v_W539.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -884,8 +884,8 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W550 = { - let __t193 = v_W549.clone(); + let v_W540 = { + let __t193 = v_W539.clone(); rt::apply_direct( interp, "shen.in->", @@ -894,7 +894,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t206 = { - let __t194 = v_W550.clone(); + let __t194 = v_W540.clone(); let __t195 = Value::sym( interp.intern("}"), ); @@ -906,9 +906,9 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; if rt::is_truthy(interp, &__t206)? { { - let v_W551 = { + let v_W541 = { let __t196 = - v_W550.clone(); + v_W540.clone(); rt::apply_direct( interp, "tail", @@ -916,9 +916,9 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W552 = { + let v_W542 = { let __t197 = - v_W551.clone(); + v_W541.clone(); rt::apply_direct( interp, "shen.", @@ -928,7 +928,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She { let __t205 = { let __t198 = - v_W552 + v_W542 .clone( ); rt::apply_direct(interp, "shen.parse-failure?", &[__t198])? @@ -941,18 +941,18 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W553 = { - let __t199 = v_W552.clone(); + let v_W543 = { + let __t199 = v_W542.clone(); rt::apply_direct(interp, "shen.<-out", &[__t199])? }; { - let v_W554 = { - let __t200 = v_W552.clone(); + let v_W544 = { + let __t200 = v_W542.clone(); rt::apply_direct(interp, "shen.in->", &[__t200])? }; { - let __t201 = v_W554.clone(); - let __t204 = { let __t202 = v_W546.clone(); let __t203 = v_W553.clone(); rt::apply_direct(interp, "shen.shendef->kldef-h", &[__t202, __t203])? }; + let __t201 = v_W544.clone(); + let __t204 = { let __t202 = v_W536.clone(); let __t203 = v_W543.clone(); rt::apply_direct(interp, "shen.shendef->kldef-h", &[__t202, __t203])? }; rt::apply_direct(interp, "shen.comb", &[__t201, __t204])? } } @@ -989,7 +989,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t211 = { - let __t210 = v_W544.clone(); + let __t210 = v_W534.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t210])? }; if match rt::is_truthy(interp, &__t211) { @@ -997,14 +997,14 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W555 = { - let v_W556 = { - let __t212 = v_V543.clone(); + let v_W545 = { + let v_W546 = { + let __t212 = v_V533.clone(); rt::apply_direct(interp, "shen.", &[__t212])? }; { let __t225 = { - let __t213 = v_W556.clone(); + let __t213 = v_W546.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t213])? }; if rt::is_truthy(interp, &__t225)? { @@ -1013,18 +1013,18 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W557 = { - let __t214 = v_W556.clone(); + let v_W547 = { + let __t214 = v_W546.clone(); rt::apply_direct(interp, "shen.<-out", &[__t214])? }; { - let v_W558 = { - let __t215 = v_W556.clone(); + let v_W548 = { + let __t215 = v_W546.clone(); rt::apply_direct(interp, "shen.in->", &[__t215])? }; { - let v_W559 = { - let __t216 = v_W558.clone(); + let v_W549 = { + let __t216 = v_W548.clone(); rt::apply_direct( interp, "shen.", @@ -1033,7 +1033,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t224 = { - let __t217 = v_W559.clone(); + let __t217 = v_W549.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1050,8 +1050,8 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W560 = { - let __t218 = v_W559.clone(); + let v_W550 = { + let __t218 = v_W549.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1059,8 +1059,8 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W561 = { - let __t219 = v_W559.clone(); + let v_W551 = { + let __t219 = v_W549.clone(); rt::apply_direct( interp, "shen.in->", @@ -1068,10 +1068,10 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let __t220 = v_W561.clone(); + let __t220 = v_W551.clone(); let __t223 = { - let __t221 = v_W557.clone(); - let __t222 = v_W560.clone(); + let __t221 = v_W547.clone(); + let __t222 = v_W550.clone(); rt::apply_direct( interp, "shen.shendef->kldef-h", @@ -1096,7 +1096,7 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t227 = { - let __t226 = v_W555.clone(); + let __t226 = v_W545.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t226])? }; if match rt::is_truthy(interp, &__t227) { @@ -1105,12 +1105,12 @@ pub fn aot_shen_x2e__x3c_define_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W555.clone()); + break Ok(v_W545.clone()); } } } } else { - break Ok(v_W544.clone()); + break Ok(v_W534.clone()); } } } @@ -1134,21 +1134,21 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V562 = args[0].clone(); + let mut v_V552 = args[0].clone(); #[allow(unused_mut)] - let mut v_V563 = args[1].clone(); + let mut v_V553 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W564 = { + let v_W554 = { let __t229 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z565 = args[0].clone(); + let v_Z555 = args[0].clone(); Ok({ - let __t228 = v_Z565.clone(); + let __t228 = v_Z555.clone(); rt::apply_direct(interp, "fst", &[__t228])? }) }, @@ -1156,27 +1156,27 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef_x2d_h( interp, ) }; - let __t230 = v_V563.clone(); + let __t230 = v_V553.clone(); rt::apply_direct(interp, "map", &[__t229, __t230])? }; { - let v_W566 = { - let __t231 = v_V562.clone(); - let __t232 = v_W564.clone(); + let v_W556 = { + let __t231 = v_V552.clone(); + let __t232 = v_W554.clone(); rt::apply_direct(interp, "shen.arity-chk", &[__t231, __t232])? }; { - let v_W567 = { + let v_W557 = { let __t235 = { - let v_V562 = v_V562.clone(); + let v_V552 = v_V552.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z568 = args[0].clone(); + let v_Z558 = args[0].clone(); Ok({ - let __t233 = v_V562.clone(); - let __t234 = v_Z568.clone(); + let __t233 = v_V552.clone(); + let __t234 = v_Z558.clone(); rt::apply_direct( interp, "shen.free-var-chk", @@ -1184,24 +1184,24 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef_x2d_h( )? }) }, - vec![v_V562], + vec![v_V552], interp, ) }; - let __t236 = v_V563.clone(); + let __t236 = v_V553.clone(); rt::apply_direct(interp, "map", &[__t235, __t236])? }; { - let v_W569 = { - let __t237 = v_V563.clone(); + let v_W559 = { + let __t237 = v_V553.clone(); rt::apply_direct(interp, "shen.unprotect", &[__t237])? }; { - let v_W570 = { + let v_W560 = { let __t241 = { - let __t238 = v_V562.clone(); - let __t239 = v_W569.clone(); - let __t240 = v_W566.clone(); + let __t238 = v_V552.clone(); + let __t239 = v_W559.clone(); + let __t240 = v_W556.clone(); rt::apply_direct( interp, "shen.compile-to-kl", @@ -1210,7 +1210,7 @@ pub fn aot_shen_x2e_shendef_x2d__x3e_kldef_x2d_h( }; rt::apply_direct(interp, "shen.factorise-code", &[__t241])? }; - break Ok(v_W570.clone()); + break Ok(v_W560.clone()); } } } @@ -1240,12 +1240,12 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V571 = args[0].clone(); + let mut v_V561 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t275 = { - let __t268 = v_V571.clone(); + let __t268 = v_V561.clone(); rt::apply_direct(interp, "tuple?", &[__t268])? }; if match rt::is_truthy(interp, &__t275) { @@ -1255,14 +1255,14 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult break Ok({ let __t271 = { let __t270 = { - let __t269 = v_V571.clone(); + let __t269 = v_V561.clone(); rt::apply_direct(interp, "fst", &[__t269])? }; rt::apply_direct(interp, "shen.unprotect", &[__t270])? }; let __t274 = { let __t273 = { - let __t272 = v_V571.clone(); + let __t272 = v_V561.clone(); rt::apply_direct(interp, "snd", &[__t272])? }; rt::apply_direct(interp, "shen.unprotect", &[__t273])? @@ -1273,7 +1273,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t267 = { let __t262 = { - let __t248 = v_V571.clone(); + let __t248 = v_V561.clone(); rt::is_cons(&__t248) }; if !rt::is_truthy(interp, &__t262)? { @@ -1283,7 +1283,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult let __t260 = { let __t249 = Value::sym(interp.intern("protect")); let __t251 = { - let __t250 = v_V571.clone(); + let __t250 = v_V561.clone(); rt::hd(&__t250)? }; rt::eq(&__t249, &__t251) @@ -1294,7 +1294,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult let __t261 = { let __t258 = { let __t253 = { - let __t252 = v_V571.clone(); + let __t252 = v_V561.clone(); rt::tl(&__t252)? }; rt::is_cons(&__t253) @@ -1306,7 +1306,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult let __t254 = Value::nil(); let __t257 = { let __t256 = { - let __t255 = v_V571.clone(); + let __t255 = v_V561.clone(); rt::tl(&__t255)? }; rt::tl(&__t256)? @@ -1329,18 +1329,18 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t266 = { let __t265 = { - let __t264 = v_V571.clone(); + let __t264 = v_V561.clone(); rt::tl(&__t264)? }; rt::hd(&__t265)? }; - v_V571 = __t266; + v_V561 = __t266; continue; } } else { { let __t247 = { - let __t243 = v_V571.clone(); + let __t243 = v_V561.clone(); rt::is_cons(&__t243) }; if match rt::is_truthy(interp, &__t247) { @@ -1353,9 +1353,9 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult "", 1, move |interp, args| { - let v_Z572 = args[0].clone(); + let v_Z562 = args[0].clone(); Ok({ - let __t244 = v_Z572.clone(); + let __t244 = v_Z562.clone(); rt::apply_direct( interp, "shen.unprotect", @@ -1367,7 +1367,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult interp, ) }; - let __t246 = v_V571.clone(); + let __t246 = v_V561.clone(); rt::apply_direct(interp, "map", &[__t245, __t246])? }); } else { @@ -1377,7 +1377,7 @@ pub fn aot_shen_x2e_unprotect(interp: &mut Interp, args: &[Value]) -> ShenResult Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V571.clone()); + break Ok(v_V561.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -1405,32 +1405,32 @@ pub fn aot_shen_x2e__x3c_name_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V573 = args[0].clone(); + let mut v_V563 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W574 = { + let v_W564 = { let __t291 = { - let __t276 = v_V573.clone(); + let __t276 = v_V563.clone(); rt::is_cons(&__t276) }; if rt::is_truthy(interp, &__t291)? { { - let v_W575 = { - let __t277 = v_V573.clone(); + let v_W565 = { + let __t277 = v_V563.clone(); rt::apply_direct(interp, "head", &[__t277])? }; { - let v_W576 = { - let __t278 = v_V573.clone(); + let v_W566 = { + let __t278 = v_V563.clone(); rt::apply_direct(interp, "tail", &[__t278])? }; { - let __t279 = v_W576.clone(); + let __t279 = v_W566.clone(); let __t290 = { let __t289 = { let __t283 = { - let __t280 = v_W575.clone(); + let __t280 = v_W565.clone(); rt::is_symbol(&__t280) }; if !rt::is_truthy(interp, &__t283)? { @@ -1438,7 +1438,7 @@ pub fn aot_shen_x2e__x3c_name_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } else { let __t284 = { let __t282 = { - let __t281 = v_W575.clone(); + let __t281 = v_W565.clone(); rt::apply_direct( interp, "variable?", @@ -1451,11 +1451,11 @@ pub fn aot_shen_x2e__x3c_name_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; if rt::is_truthy(interp, &__t289)? { - v_W575.clone() + v_W565.clone() } else { { let __t288 = { - let __t285 = v_W575.clone(); + let __t285 = v_W565.clone(); let __t286 = Value::str( " is not a legitimate function name.\n", ); @@ -1482,7 +1482,7 @@ pub fn aot_shen_x2e__x3c_name_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t293 = { - let __t292 = v_W574.clone(); + let __t292 = v_W564.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t292])? }; if match rt::is_truthy(interp, &__t293) { @@ -1491,7 +1491,7 @@ pub fn aot_shen_x2e__x3c_name_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W574.clone()); + break Ok(v_W564.clone()); } } } @@ -1512,34 +1512,34 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V577 = args[0].clone(); + let mut v_V567 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W578 = { + let v_W568 = { let __t314 = { - let __t294 = v_V577.clone(); + let __t294 = v_V567.clone(); rt::is_cons(&__t294) }; if rt::is_truthy(interp, &__t314)? { { - let v_W579 = { - let __t295 = v_V577.clone(); + let v_W569 = { + let __t295 = v_V567.clone(); rt::apply_direct(interp, "head", &[__t295])? }; { - let v_W580 = { - let __t296 = v_V577.clone(); + let v_W570 = { + let __t296 = v_V567.clone(); rt::apply_direct(interp, "tail", &[__t296])? }; { - let v_W581 = { - let __t297 = v_W580.clone(); + let v_W571 = { + let __t297 = v_W570.clone(); rt::apply_direct(interp, "shen.", &[__t297])? }; { let __t313 = { - let __t298 = v_W581.clone(); + let __t298 = v_W571.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t298])? }; if rt::is_truthy(interp, &__t313)? { @@ -1548,13 +1548,13 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W582 = { - let __t299 = v_W581.clone(); + let v_W572 = { + let __t299 = v_W571.clone(); rt::apply_direct(interp, "shen.<-out", &[__t299])? }; { - let v_W583 = { - let __t300 = v_W581.clone(); + let v_W573 = { + let __t300 = v_W571.clone(); rt::apply_direct( interp, "shen.in->", @@ -1564,7 +1564,7 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> { let __t312 = { let __t307 = { - let __t301 = v_W579.clone(); + let __t301 = v_W569.clone(); let __t306 = { let __t302 = Value::sym(interp.intern("{")); @@ -1587,10 +1587,10 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> }; if rt::is_truthy(interp, &__t312)? { { - let __t308 = v_W583.clone(); + let __t308 = v_W573.clone(); let __t311 = { - let __t309 = v_W579.clone(); - let __t310 = v_W582.clone(); + let __t309 = v_W569.clone(); + let __t310 = v_W572.clone(); rt::cons(&__t309, &__t310) }; rt::apply_direct( @@ -1624,7 +1624,7 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> }; { let __t316 = { - let __t315 = v_W578.clone(); + let __t315 = v_W568.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t315])? }; if match rt::is_truthy(interp, &__t316) { @@ -1632,14 +1632,14 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> Err(e) => break Err(e), } { { - let v_W584 = { - let v_W585 = { - let __t317 = v_V577.clone(); + let v_W574 = { + let v_W575 = { + let __t317 = v_V567.clone(); rt::apply_direct(interp, "", &[__t317])? }; { let __t322 = { - let __t318 = v_W585.clone(); + let __t318 = v_W575.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t318])? }; if rt::is_truthy(interp, &__t322)? { @@ -1648,12 +1648,12 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W586 = { - let __t319 = v_W585.clone(); + let v_W576 = { + let __t319 = v_W575.clone(); rt::apply_direct(interp, "shen.in->", &[__t319])? }; { - let __t320 = v_W586.clone(); + let __t320 = v_W576.clone(); let __t321 = Value::nil(); rt::apply_direct( interp, @@ -1667,7 +1667,7 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> }; { let __t324 = { - let __t323 = v_W584.clone(); + let __t323 = v_W574.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t323])? }; if match rt::is_truthy(interp, &__t324) { @@ -1676,12 +1676,12 @@ pub fn aot_shen_x2e__x3c_signature_x3e_(interp: &mut Interp, args: &[Value]) -> } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W584.clone()); + break Ok(v_W574.clone()); } } } } else { - break Ok(v_W578.clone()); + break Ok(v_W568.clone()); } } } @@ -1702,18 +1702,18 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V587 = args[0].clone(); + let mut v_V577 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W588 = { - let v_W589 = { - let __t325 = v_V587.clone(); + let v_W578 = { + let v_W579 = { + let __t325 = v_V577.clone(); rt::apply_direct(interp, "shen.", &[__t325])? }; { let __t339 = { - let __t326 = v_W589.clone(); + let __t326 = v_W579.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t326])? }; if rt::is_truthy(interp, &__t339)? { @@ -1722,23 +1722,23 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W590 = { - let __t327 = v_W589.clone(); + let v_W580 = { + let __t327 = v_W579.clone(); rt::apply_direct(interp, "shen.<-out", &[__t327])? }; { - let v_W591 = { - let __t328 = v_W589.clone(); + let v_W581 = { + let __t328 = v_W579.clone(); rt::apply_direct(interp, "shen.in->", &[__t328])? }; { - let v_W592 = { - let __t329 = v_W591.clone(); + let v_W582 = { + let __t329 = v_W581.clone(); rt::apply_direct(interp, "shen.", &[__t329])? }; { let __t338 = { - let __t330 = v_W592.clone(); + let __t330 = v_W582.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1751,8 +1751,8 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W593 = { - let __t331 = v_W592.clone(); + let v_W583 = { + let __t331 = v_W582.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1760,8 +1760,8 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W594 = { - let __t332 = v_W592.clone(); + let v_W584 = { + let __t332 = v_W582.clone(); rt::apply_direct( interp, "shen.in->", @@ -1769,17 +1769,17 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let __t333 = v_W594.clone(); + let __t333 = v_W584.clone(); let __t337 = { let __t335 = { - let __t334 = v_W590.clone(); + let __t334 = v_W580.clone(); rt::apply_direct( interp, "shen.linearise", &[__t334], )? }; - let __t336 = v_W593.clone(); + let __t336 = v_W583.clone(); rt::cons(&__t335, &__t336) }; rt::apply_direct( @@ -1800,7 +1800,7 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t341 = { - let __t340 = v_W588.clone(); + let __t340 = v_W578.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t340])? }; if match rt::is_truthy(interp, &__t341) { @@ -1808,14 +1808,14 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W595 = { - let v_W596 = { - let __t342 = v_V587.clone(); + let v_W585 = { + let v_W586 = { + let __t342 = v_V577.clone(); rt::apply_direct(interp, "", &[__t342])? }; { let __t356 = { - let __t343 = v_W596.clone(); + let __t343 = v_W586.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t343])? }; if rt::is_truthy(interp, &__t356)? { @@ -1824,20 +1824,20 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W597 = { - let __t344 = v_W596.clone(); + let v_W587 = { + let __t344 = v_W586.clone(); rt::apply_direct(interp, "shen.<-out", &[__t344])? }; { - let v_W598 = { - let __t345 = v_W596.clone(); + let v_W588 = { + let __t345 = v_W586.clone(); rt::apply_direct(interp, "shen.in->", &[__t345])? }; { - let __t346 = v_W598.clone(); + let __t346 = v_W588.clone(); let __t355 = { let __t354 = { - let __t347 = v_W597.clone(); + let __t347 = v_W587.clone(); rt::apply_direct( interp, "empty?", @@ -1853,7 +1853,7 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen "Shen syntax error here:\n ", ); let __t352 = { - let __t349 = v_W597.clone(); + let __t349 = v_W587.clone(); let __t350 = Value::str("\n ..."); let __t351 = Value::sym( @@ -1892,7 +1892,7 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t358 = { - let __t357 = v_W595.clone(); + let __t357 = v_W585.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t357])? }; if match rt::is_truthy(interp, &__t358) { @@ -1901,12 +1901,12 @@ pub fn aot_shen_x2e__x3c_rules_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W595.clone()); + break Ok(v_W585.clone()); } } } } else { - break Ok(v_W588.clone()); + break Ok(v_W578.clone()); } } } @@ -1927,12 +1927,12 @@ pub fn aot_shen_x2e_linearise(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V601 = args[0].clone(); + let mut v_V591 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t369 = { - let __t361 = v_V601.clone(); + let __t361 = v_V591.clone(); rt::apply_direct(interp, "tuple?", &[__t361])? }; if match rt::is_truthy(interp, &__t369) { @@ -1941,16 +1941,16 @@ pub fn aot_shen_x2e_linearise(interp: &mut Interp, args: &[Value]) -> ShenResult } { break Ok({ let __t363 = { - let __t362 = v_V601.clone(); + let __t362 = v_V591.clone(); rt::apply_direct(interp, "fst", &[__t362])? }; let __t365 = { - let __t364 = v_V601.clone(); + let __t364 = v_V591.clone(); rt::apply_direct(interp, "fst", &[__t364])? }; let __t366 = Value::nil(); let __t368 = { - let __t367 = v_V601.clone(); + let __t367 = v_V591.clone(); rt::apply_direct(interp, "snd", &[__t367])? }; rt::apply_direct( @@ -1993,19 +1993,19 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V614 = args[0].clone(); + let mut v_V604 = args[0].clone(); #[allow(unused_mut)] - let mut v_V615 = args[1].clone(); + let mut v_V605 = args[1].clone(); #[allow(unused_mut)] - let mut v_V616 = args[2].clone(); + let mut v_V606 = args[2].clone(); #[allow(unused_mut)] - let mut v_V617 = args[3].clone(); + let mut v_V607 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t438 = { let __t434 = Value::nil(); - let __t435 = v_V614.clone(); + let __t435 = v_V604.clone(); rt::eq(&__t434, &__t435) }; if match rt::is_truthy(interp, &__t438) { @@ -2013,15 +2013,15 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { break Ok({ - let __t436 = v_V615.clone(); - let __t437 = v_V617.clone(); + let __t436 = v_V605.clone(); + let __t437 = v_V607.clone(); rt::apply_direct(interp, "@p", &[__t436, __t437])? }); } else { { let __t433 = { let __t423 = { - let __t420 = v_V614.clone(); + let __t420 = v_V604.clone(); rt::is_cons(&__t420) }; if !rt::is_truthy(interp, &__t423)? { @@ -2029,7 +2029,7 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen } else { let __t424 = { let __t422 = { - let __t421 = v_V614.clone(); + let __t421 = v_V604.clone(); rt::hd(&__t421)? }; rt::is_cons(&__t422) @@ -2044,29 +2044,29 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen { let __t429 = { let __t426 = { - let __t425 = v_V614.clone(); + let __t425 = v_V604.clone(); rt::hd(&__t425)? }; let __t428 = { - let __t427 = v_V614.clone(); + let __t427 = v_V604.clone(); rt::tl(&__t427)? }; rt::apply_direct(interp, "append", &[__t426, __t428])? }; - let __t430 = v_V615.clone(); - let __t431 = v_V616.clone(); - let __t432 = v_V617.clone(); - v_V614 = __t429; - v_V615 = __t430; - v_V616 = __t431; - v_V617 = __t432; + let __t430 = v_V605.clone(); + let __t431 = v_V606.clone(); + let __t432 = v_V607.clone(); + v_V604 = __t429; + v_V605 = __t430; + v_V606 = __t431; + v_V607 = __t432; continue; } } else { { let __t419 = { let __t382 = { - let __t379 = v_V614.clone(); + let __t379 = v_V604.clone(); rt::is_cons(&__t379) }; if !rt::is_truthy(interp, &__t382)? { @@ -2074,7 +2074,7 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen } else { let __t383 = { let __t381 = { - let __t380 = v_V614.clone(); + let __t380 = v_V604.clone(); rt::hd(&__t380)? }; rt::apply_direct(interp, "variable?", &[__t381])? @@ -2089,10 +2089,10 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen { let __t387 = { let __t385 = { - let __t384 = v_V614.clone(); + let __t384 = v_V604.clone(); rt::hd(&__t384)? }; - let __t386 = v_V616.clone(); + let __t386 = v_V606.clone(); rt::apply_direct(interp, "element?", &[__t385, __t386])? }; if match rt::is_truthy(interp, &__t387) { @@ -2100,29 +2100,29 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W618 = { + let v_W608 = { let __t388 = Value::sym(interp.intern("V")); rt::apply_direct(interp, "gensym", &[__t388])? }; { let __t390 = { - let __t389 = v_V614.clone(); + let __t389 = v_V604.clone(); rt::tl(&__t389)? }; let __t395 = { let __t392 = { - let __t391 = v_V614.clone(); + let __t391 = v_V604.clone(); rt::hd(&__t391)? }; - let __t393 = v_W618.clone(); - let __t394 = v_V615.clone(); + let __t393 = v_W608.clone(); + let __t394 = v_V605.clone(); rt::apply_direct( interp, "shen.rep-X", &[__t392, __t393, __t394], )? }; - let __t396 = v_V616.clone(); + let __t396 = v_V606.clone(); let __t410 = { let __t397 = Value::sym(interp.intern("where")); let __t409 = { @@ -2130,10 +2130,10 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen let __t398 = Value::sym(interp.intern("=")); let __t404 = { - let __t399 = v_W618.clone(); + let __t399 = v_W608.clone(); let __t403 = { let __t401 = { - let __t400 = v_V614.clone(); + let __t400 = v_V604.clone(); rt::hd(&__t400)? }; let __t402 = Value::nil(); @@ -2144,7 +2144,7 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen rt::cons(&__t398, &__t404) }; let __t408 = { - let __t406 = v_V617.clone(); + let __t406 = v_V607.clone(); let __t407 = Value::nil(); rt::cons(&__t406, &__t407) }; @@ -2152,33 +2152,33 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen }; rt::cons(&__t397, &__t409) }; - v_V614 = __t390; - v_V615 = __t395; - v_V616 = __t396; - v_V617 = __t410; + v_V604 = __t390; + v_V605 = __t395; + v_V606 = __t396; + v_V607 = __t410; continue; } } } else { { let __t412 = { - let __t411 = v_V614.clone(); + let __t411 = v_V604.clone(); rt::tl(&__t411)? }; - let __t413 = v_V615.clone(); + let __t413 = v_V605.clone(); let __t417 = { let __t415 = { - let __t414 = v_V614.clone(); + let __t414 = v_V604.clone(); rt::hd(&__t414)? }; - let __t416 = v_V616.clone(); + let __t416 = v_V606.clone(); rt::cons(&__t415, &__t416) }; - let __t418 = v_V617.clone(); - v_V614 = __t412; - v_V615 = __t413; - v_V616 = __t417; - v_V617 = __t418; + let __t418 = v_V607.clone(); + v_V604 = __t412; + v_V605 = __t413; + v_V606 = __t417; + v_V607 = __t418; continue; } } @@ -2186,7 +2186,7 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen } else { { let __t378 = { - let __t372 = v_V614.clone(); + let __t372 = v_V604.clone(); rt::is_cons(&__t372) }; if match rt::is_truthy(interp, &__t378) { @@ -2195,16 +2195,16 @@ pub fn aot_shen_x2e_linearise_x2d_h(interp: &mut Interp, args: &[Value]) -> Shen } { { let __t374 = { - let __t373 = v_V614.clone(); + let __t373 = v_V604.clone(); rt::tl(&__t373)? }; - let __t375 = v_V615.clone(); - let __t376 = v_V616.clone(); - let __t377 = v_V617.clone(); - v_V614 = __t374; - v_V615 = __t375; - v_V616 = __t376; - v_V617 = __t377; + let __t375 = v_V605.clone(); + let __t376 = v_V606.clone(); + let __t377 = v_V607.clone(); + v_V604 = __t374; + v_V605 = __t375; + v_V606 = __t376; + v_V607 = __t377; continue; } } else { @@ -2255,18 +2255,18 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V619 = args[0].clone(); + let mut v_V609 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W620 = { - let v_W621 = { - let __t439 = v_V619.clone(); + let v_W610 = { + let v_W611 = { + let __t439 = v_V609.clone(); rt::apply_direct(interp, "shen.", &[__t439])? }; { let __t469 = { - let __t440 = v_W621.clone(); + let __t440 = v_W611.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t440])? }; if rt::is_truthy(interp, &__t469)? { @@ -2275,36 +2275,36 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W622 = { - let __t441 = v_W621.clone(); + let v_W612 = { + let __t441 = v_W611.clone(); rt::apply_direct(interp, "shen.<-out", &[__t441])? }; { - let v_W623 = { - let __t442 = v_W621.clone(); + let v_W613 = { + let __t442 = v_W611.clone(); rt::apply_direct(interp, "shen.in->", &[__t442])? }; { let __t468 = { - let __t443 = v_W623.clone(); + let __t443 = v_W613.clone(); let __t444 = Value::sym(interp.intern("->")); rt::apply_direct(interp, "shen.hds=?", &[__t443, __t444])? }; if rt::is_truthy(interp, &__t468)? { { - let v_W624 = { - let __t445 = v_W623.clone(); + let v_W614 = { + let __t445 = v_W613.clone(); rt::apply_direct(interp, "tail", &[__t445])? }; { let __t467 = { - let __t446 = v_W624.clone(); + let __t446 = v_W614.clone(); rt::is_cons(&__t446) }; if rt::is_truthy(interp, &__t467)? { { - let v_W625 = { - let __t447 = v_W624.clone(); + let v_W615 = { + let __t447 = v_W614.clone(); rt::apply_direct( interp, "head", @@ -2312,8 +2312,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W626 = { - let __t448 = v_W624.clone(); + let v_W616 = { + let __t448 = v_W614.clone(); rt::apply_direct( interp, "tail", @@ -2322,7 +2322,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t466 = { - let __t449 = v_W626.clone(); + let __t449 = v_W616.clone(); let __t450 = Value::sym( interp.intern("where"), ); @@ -2334,9 +2334,9 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; if rt::is_truthy(interp, &__t466)? { { - let v_W627 = { + let v_W617 = { let __t451 = - v_W626.clone(); + v_W616.clone(); rt::apply_direct( interp, "tail", @@ -2346,27 +2346,27 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR { let __t465 = { let __t452 = - v_W627.clone(); + v_W617.clone(); rt::is_cons(&__t452) }; if rt::is_truthy( interp, &__t465, )? { { - let v_W628 = { - let __t453 = v_W627.clone(); + let v_W618 = { + let __t453 = v_W617.clone(); rt::apply_direct(interp, "head", &[__t453])? }; { - let v_W629 = { - let __t454 = v_W627.clone(); + let v_W619 = { + let __t454 = v_W617.clone(); rt::apply_direct(interp, "tail", &[__t454])? }; { - let __t455 = v_W629.clone(); + let __t455 = v_W619.clone(); let __t464 = { - let __t456 = v_W622.clone(); - let __t463 = { let __t457 = Value::sym(interp.intern("where")); let __t462 = { let __t458 = v_W628.clone(); let __t461 = { let __t459 = v_W625.clone(); let __t460 = Value::nil(); rt::cons(&__t459, &__t460) }; rt::cons(&__t458, &__t461) }; rt::cons(&__t457, &__t462) }; + let __t456 = v_W612.clone(); + let __t463 = { let __t457 = Value::sym(interp.intern("where")); let __t462 = { let __t458 = v_W618.clone(); let __t461 = { let __t459 = v_W615.clone(); let __t460 = Value::nil(); rt::cons(&__t459, &__t460) }; rt::cons(&__t458, &__t461) }; rt::cons(&__t457, &__t462) }; rt::apply_direct(interp, "@p", &[__t456, __t463])? }; rt::apply_direct(interp, "shen.comb", &[__t455, __t464])? @@ -2416,7 +2416,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t471 = { - let __t470 = v_W620.clone(); + let __t470 = v_W610.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t470])? }; if match rt::is_truthy(interp, &__t471) { @@ -2424,14 +2424,14 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W630 = { - let v_W631 = { - let __t472 = v_V619.clone(); + let v_W620 = { + let v_W621 = { + let __t472 = v_V609.clone(); rt::apply_direct(interp, "shen.", &[__t472])? }; { let __t488 = { - let __t473 = v_W631.clone(); + let __t473 = v_W621.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t473])? }; if rt::is_truthy(interp, &__t488)? { @@ -2440,18 +2440,18 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W632 = { - let __t474 = v_W631.clone(); + let v_W622 = { + let __t474 = v_W621.clone(); rt::apply_direct(interp, "shen.<-out", &[__t474])? }; { - let v_W633 = { - let __t475 = v_W631.clone(); + let v_W623 = { + let __t475 = v_W621.clone(); rt::apply_direct(interp, "shen.in->", &[__t475])? }; { let __t487 = { - let __t476 = v_W633.clone(); + let __t476 = v_W623.clone(); let __t477 = Value::sym(interp.intern("->")); rt::apply_direct( interp, @@ -2461,8 +2461,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; if rt::is_truthy(interp, &__t487)? { { - let v_W634 = { - let __t478 = v_W633.clone(); + let v_W624 = { + let __t478 = v_W623.clone(); rt::apply_direct( interp, "tail", @@ -2471,13 +2471,13 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t486 = { - let __t479 = v_W634.clone(); + let __t479 = v_W624.clone(); rt::is_cons(&__t479) }; if rt::is_truthy(interp, &__t486)? { { - let v_W635 = { - let __t480 = v_W634.clone(); + let v_W625 = { + let __t480 = v_W624.clone(); rt::apply_direct( interp, "head", @@ -2485,9 +2485,9 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W636 = { + let v_W626 = { let __t481 = - v_W634.clone(); + v_W624.clone(); rt::apply_direct( interp, "tail", @@ -2496,12 +2496,12 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t482 = - v_W636.clone(); + v_W626.clone(); let __t485 = { let __t483 = - v_W632.clone(); + v_W622.clone(); let __t484 = - v_W635.clone(); + v_W625.clone(); rt::apply_direct( interp, "@p", @@ -2547,7 +2547,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t490 = { - let __t489 = v_W630.clone(); + let __t489 = v_W620.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t489])? }; if match rt::is_truthy(interp, &__t490) { @@ -2555,14 +2555,14 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W637 = { - let v_W638 = { - let __t491 = v_V619.clone(); + let v_W627 = { + let v_W628 = { + let __t491 = v_V609.clone(); rt::apply_direct(interp, "shen.", &[__t491])? }; { let __t525 = { - let __t492 = v_W638.clone(); + let __t492 = v_W628.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2579,8 +2579,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W639 = { - let __t493 = v_W638.clone(); + let v_W629 = { + let __t493 = v_W628.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2588,8 +2588,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W640 = { - let __t494 = v_W638.clone(); + let v_W630 = { + let __t494 = v_W628.clone(); rt::apply_direct( interp, "shen.in->", @@ -2598,7 +2598,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t524 = { - let __t495 = v_W640.clone(); + let __t495 = v_W630.clone(); let __t496 = Value::sym(interp.intern("<-")); rt::apply_direct( @@ -2609,8 +2609,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; if rt::is_truthy(interp, &__t524)? { { - let v_W641 = { - let __t497 = v_W640.clone(); + let v_W631 = { + let __t497 = v_W630.clone(); rt::apply_direct( interp, "tail", @@ -2620,32 +2620,32 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR { let __t523 = { let __t498 = - v_W641.clone(); + v_W631.clone(); rt::is_cons(&__t498) }; if rt::is_truthy( interp, &__t523, )? { { - let v_W642 = { + let v_W632 = { let __t499 = - v_W641 + v_W631 .clone( ); rt::apply_direct(interp, "head", &[__t499])? }; { - let v_W643 = { - let __t500 = v_W641.clone(); + let v_W633 = { + let __t500 = v_W631.clone(); rt::apply_direct(interp, "tail", &[__t500])? }; { let __t522 = { - let __t501 = v_W643.clone(); + let __t501 = v_W633.clone(); let __t502 = Value::sym(interp.intern("where")); rt::apply_direct(interp, "shen.hds=?", &[__t501, __t502])? }; - if rt::is_truthy(interp, &__t522)? { { let v_W644 = { let __t503 = v_W643.clone(); rt::apply_direct(interp, "tail", &[__t503])? }; { let __t521 = { let __t504 = v_W644.clone(); rt::is_cons(&__t504) }; if rt::is_truthy(interp, &__t521)? { { let v_W645 = { let __t505 = v_W644.clone(); rt::apply_direct(interp, "head", &[__t505])? }; { let v_W646 = { let __t506 = v_W644.clone(); rt::apply_direct(interp, "tail", &[__t506])? }; { let __t507 = v_W646.clone(); let __t520 = { let __t508 = v_W639.clone(); let __t519 = { let __t509 = Value::sym(interp.intern("where")); let __t518 = { let __t510 = v_W645.clone(); let __t517 = { let __t515 = { let __t511 = Value::sym(interp.intern("shen.choicepoint!")); let __t514 = { let __t512 = v_W642.clone(); let __t513 = Value::nil(); rt::cons(&__t512, &__t513) }; rt::cons(&__t511, &__t514) }; let __t516 = Value::nil(); rt::cons(&__t515, &__t516) }; rt::cons(&__t510, &__t517) }; rt::cons(&__t509, &__t518) }; rt::apply_direct(interp, "@p", &[__t508, __t519])? }; rt::apply_direct(interp, "shen.comb", &[__t507, __t520])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t522)? { { let v_W634 = { let __t503 = v_W633.clone(); rt::apply_direct(interp, "tail", &[__t503])? }; { let __t521 = { let __t504 = v_W634.clone(); rt::is_cons(&__t504) }; if rt::is_truthy(interp, &__t521)? { { let v_W635 = { let __t505 = v_W634.clone(); rt::apply_direct(interp, "head", &[__t505])? }; { let v_W636 = { let __t506 = v_W634.clone(); rt::apply_direct(interp, "tail", &[__t506])? }; { let __t507 = v_W636.clone(); let __t520 = { let __t508 = v_W629.clone(); let __t519 = { let __t509 = Value::sym(interp.intern("where")); let __t518 = { let __t510 = v_W635.clone(); let __t517 = { let __t515 = { let __t511 = Value::sym(interp.intern("shen.choicepoint!")); let __t514 = { let __t512 = v_W632.clone(); let __t513 = Value::nil(); rt::cons(&__t512, &__t513) }; rt::cons(&__t511, &__t514) }; let __t516 = Value::nil(); rt::cons(&__t515, &__t516) }; rt::cons(&__t510, &__t517) }; rt::cons(&__t509, &__t518) }; rt::apply_direct(interp, "@p", &[__t508, __t519])? }; rt::apply_direct(interp, "shen.comb", &[__t507, __t520])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } @@ -2673,7 +2673,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t527 = { - let __t526 = v_W637.clone(); + let __t526 = v_W627.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2685,9 +2685,9 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W647 = { - let v_W648 = { - let __t528 = v_V619.clone(); + let v_W637 = { + let v_W638 = { + let __t528 = v_V609.clone(); rt::apply_direct( interp, "shen.", @@ -2696,7 +2696,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t548 = { - let __t529 = v_W648.clone(); + let __t529 = v_W638.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2713,8 +2713,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W649 = { - let __t530 = v_W648.clone(); + let v_W639 = { + let __t530 = v_W638.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2722,8 +2722,8 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W650 = { - let __t531 = v_W648.clone(); + let v_W640 = { + let __t531 = v_W638.clone(); rt::apply_direct( interp, "shen.in->", @@ -2733,7 +2733,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR { let __t547 = { let __t532 = - v_W650.clone(); + v_W640.clone(); let __t533 = Value::sym( interp.intern("<-"), ); @@ -2747,21 +2747,21 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR interp, &__t547, )? { { - let v_W651 = { + let v_W641 = { let __t534 = - v_W650 + v_W640 .clone( ); rt::apply_direct(interp, "tail", &[__t534])? }; { let __t546 = { - let __t535 = v_W651.clone(); + let __t535 = v_W641.clone(); rt::is_cons( &__t535, ) }; - if rt::is_truthy(interp, &__t546)? { { let v_W652 = { let __t536 = v_W651.clone(); rt::apply_direct(interp, "head", &[__t536])? }; { let v_W653 = { let __t537 = v_W651.clone(); rt::apply_direct(interp, "tail", &[__t537])? }; { let __t538 = v_W653.clone(); let __t545 = { let __t539 = v_W649.clone(); let __t544 = { let __t540 = Value::sym(interp.intern("shen.choicepoint!")); let __t543 = { let __t541 = v_W652.clone(); let __t542 = Value::nil(); rt::cons(&__t541, &__t542) }; rt::cons(&__t540, &__t543) }; rt::apply_direct(interp, "@p", &[__t539, __t544])? }; rt::apply_direct(interp, "shen.comb", &[__t538, __t545])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t546)? { { let v_W642 = { let __t536 = v_W641.clone(); rt::apply_direct(interp, "head", &[__t536])? }; { let v_W643 = { let __t537 = v_W641.clone(); rt::apply_direct(interp, "tail", &[__t537])? }; { let __t538 = v_W643.clone(); let __t545 = { let __t539 = v_W639.clone(); let __t544 = { let __t540 = Value::sym(interp.intern("shen.choicepoint!")); let __t543 = { let __t541 = v_W642.clone(); let __t542 = Value::nil(); rt::cons(&__t541, &__t542) }; rt::cons(&__t540, &__t543) }; rt::apply_direct(interp, "@p", &[__t539, __t544])? }; rt::apply_direct(interp, "shen.comb", &[__t538, __t545])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } else { @@ -2777,7 +2777,7 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t550 = { - let __t549 = v_W647.clone(); + let __t549 = v_W637.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2796,22 +2796,22 @@ pub fn aot_shen_x2e__x3c_rule_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }); } else { - break Ok(v_W647.clone()); + break Ok(v_W637.clone()); } } } } else { - break Ok(v_W637.clone()); + break Ok(v_W627.clone()); } } } } else { - break Ok(v_W630.clone()); + break Ok(v_W620.clone()); } } } } else { - break Ok(v_W620.clone()); + break Ok(v_W610.clone()); } } } @@ -2832,18 +2832,18 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V654 = args[0].clone(); + let mut v_V644 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W655 = { - let v_W656 = { - let __t551 = v_V654.clone(); + let v_W645 = { + let v_W646 = { + let __t551 = v_V644.clone(); rt::apply_direct(interp, "shen.", &[__t551])? }; { let __t564 = { - let __t552 = v_W656.clone(); + let __t552 = v_W646.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t552])? }; if rt::is_truthy(interp, &__t564)? { @@ -2852,23 +2852,23 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W657 = { - let __t553 = v_W656.clone(); + let v_W647 = { + let __t553 = v_W646.clone(); rt::apply_direct(interp, "shen.<-out", &[__t553])? }; { - let v_W658 = { - let __t554 = v_W656.clone(); + let v_W648 = { + let __t554 = v_W646.clone(); rt::apply_direct(interp, "shen.in->", &[__t554])? }; { - let v_W659 = { - let __t555 = v_W658.clone(); + let v_W649 = { + let __t555 = v_W648.clone(); rt::apply_direct(interp, "shen.", &[__t555])? }; { let __t563 = { - let __t556 = v_W659.clone(); + let __t556 = v_W649.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2881,8 +2881,8 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W660 = { - let __t557 = v_W659.clone(); + let v_W650 = { + let __t557 = v_W649.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2890,8 +2890,8 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let v_W661 = { - let __t558 = v_W659.clone(); + let v_W651 = { + let __t558 = v_W649.clone(); rt::apply_direct( interp, "shen.in->", @@ -2899,10 +2899,10 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let __t559 = v_W661.clone(); + let __t559 = v_W651.clone(); let __t562 = { - let __t560 = v_W657.clone(); - let __t561 = v_W660.clone(); + let __t560 = v_W647.clone(); + let __t561 = v_W650.clone(); rt::cons(&__t560, &__t561) }; rt::apply_direct( @@ -2923,7 +2923,7 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t566 = { - let __t565 = v_W655.clone(); + let __t565 = v_W645.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t565])? }; if match rt::is_truthy(interp, &__t566) { @@ -2931,14 +2931,14 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { { - let v_W662 = { - let v_W663 = { - let __t567 = v_V654.clone(); + let v_W652 = { + let v_W653 = { + let __t567 = v_V644.clone(); rt::apply_direct(interp, "", &[__t567])? }; { let __t572 = { - let __t568 = v_W663.clone(); + let __t568 = v_W653.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t568])? }; if rt::is_truthy(interp, &__t572)? { @@ -2947,12 +2947,12 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W664 = { - let __t569 = v_W663.clone(); + let v_W654 = { + let __t569 = v_W653.clone(); rt::apply_direct(interp, "shen.in->", &[__t569])? }; { - let __t570 = v_W664.clone(); + let __t570 = v_W654.clone(); let __t571 = Value::nil(); rt::apply_direct( interp, @@ -2966,7 +2966,7 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t574 = { - let __t573 = v_W662.clone(); + let __t573 = v_W652.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t573])? }; if match rt::is_truthy(interp, &__t574) { @@ -2975,12 +2975,12 @@ pub fn aot_shen_x2e__x3c_patterns_x3e_(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W662.clone()); + break Ok(v_W652.clone()); } } } } else { - break Ok(v_W655.clone()); + break Ok(v_W645.clone()); } } } @@ -3001,140 +3001,156 @@ pub fn aot_shen_x2e__x3c_pattern_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V665 = args[0].clone(); + let mut v_V655 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W666 = { - let __t596 = { - let __t575 = v_V665.clone(); + let v_W656 = { + let __t605 = { + let __t575 = v_V655.clone(); rt::apply_direct(interp, "shen.ccons?", &[__t575])? }; - if rt::is_truthy(interp, &__t596)? { + if rt::is_truthy(interp, &__t605)? { { - let v_W667 = { - let __t576 = v_V665.clone(); + let v_W657 = { + let __t576 = v_V655.clone(); rt::apply_direct(interp, "head", &[__t576])? }; { - let v_W668 = { - let __t577 = v_V665.clone(); + let v_W658 = { + let __t577 = v_V655.clone(); rt::apply_direct(interp, "tail", &[__t577])? }; { - let __t595 = { - let __t578 = v_W667.clone(); - let __t579 = Value::sym(interp.intern("vector")); - rt::apply_direct(interp, "shen.hds=?", &[__t578, __t579])? + let v_W659 = { + let __t578 = v_W657.clone(); + rt::apply_direct(interp, "shen.", &[__t578])? }; - if rt::is_truthy(interp, &__t595)? { - { - let v_W669 = { - let __t580 = v_W667.clone(); - rt::apply_direct(interp, "tail", &[__t580])? - }; + { + let __t604 = { + let __t579 = v_W659.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t579])? + }; + if rt::is_truthy(interp, &__t604)? { { - let __t594 = { - let __t581 = v_W669.clone(); - let __t582 = Value::int(0i64); - rt::apply_direct( - interp, - "shen.hds=?", - &[__t581, __t582], - )? + rt::apply_direct(interp, "shen.parse-failure", &[])? + } + } else { + { + let v_W660 = { + let __t580 = v_W659.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t580])? }; - if rt::is_truthy(interp, &__t594)? { + { + let v_W661 = { + let __t581 = v_W659.clone(); + rt::apply_direct( + interp, + "shen.in->", + &[__t581], + )? + }; { - let v_W670 = { - let __t583 = v_W669.clone(); - rt::apply_direct(interp, "tail", &[__t583])? + let v_W662 = { + let __t582 = v_W661.clone(); + rt::apply_direct( + interp, + "shen.", + &[__t582], + )? }; { - let v_W671 = { - let __t584 = v_W670.clone(); + let __t603 = { + let __t583 = v_W662.clone(); rt::apply_direct( interp, - "", - &[__t584], + "shen.parse-failure?", + &[__t583], )? }; - { - let __t593 = { - let __t585 = v_W671.clone(); + if rt::is_truthy(interp, &__t603)? { + { rt::apply_direct( interp, - "shen.parse-failure?", - &[__t585], + "shen.parse-failure", + &[], )? - }; - if rt::is_truthy(interp, &__t593)? { - { + } + } else { + { + let v_W663 = { + let __t584 = v_W662.clone(); rt::apply_direct( interp, - "shen.parse-failure", - &[], + "shen.<-out", + &[__t584], )? - } - } else { + }; { - let v_W672 = { - let __t586 = v_W671.clone(); + let v_W664 = { + let __t585 = v_W662.clone(); rt::apply_direct( interp, "shen.in->", - &[__t586], + &[__t585], )? }; { - let __t587 = v_W668.clone(); - let __t592 = { - let __t588 = Value::sym( - interp.intern( - "vector", - ), - ); - let __t591 = { - let __t589 = - Value::int( - 0i64, - ); - let __t590 = - Value::nil(); - rt::cons( - &__t589, - &__t590, - ) - }; - rt::cons( - &__t588, &__t591, - ) + let v_W665 = { + let __t586 = + v_W664.clone(); + rt::apply_direct( + interp, + "shen.", + &[__t586], + )? }; - rt::apply_direct( - interp, - "shen.comb", - &[__t587, __t592], - )? + { + let __t602 = { + let __t587 = + v_W665.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t587])? + }; + if rt::is_truthy( + interp, &__t602, + )? { + { + rt::apply_direct(interp, "shen.parse-failure", &[])? + } + } else { + { + let v_W666 = { + let __t588 = v_W665.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t588])? + }; + { + let v_W667 = { + let __t589 = v_W665.clone(); + rt::apply_direct(interp, "shen.in->", &[__t589])? + }; + { + let v_W668 = { + let __t590 = v_W667.clone(); + rt::apply_direct(interp, "", &[__t590])? + }; + { + let __t601 = { let __t591 = v_W668.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t591])? }; + if rt::is_truthy(interp, &__t601)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W669 = { let __t592 = v_W668.clone(); rt::apply_direct(interp, "shen.in->", &[__t592])? }; { let __t593 = v_W658.clone(); let __t600 = { let __t594 = v_W660.clone(); let __t599 = { let __t595 = v_W663.clone(); let __t598 = { let __t596 = v_W666.clone(); let __t597 = Value::nil(); rt::cons(&__t596, &__t597) }; rt::cons(&__t595, &__t598) }; rt::cons(&__t594, &__t599) }; rt::apply_direct(interp, "shen.comb", &[__t593, __t600])? } } } + } + } + } + } + } + } } } } } } } - } else { - { - rt::apply_direct( - interp, - "shen.parse-failure", - &[], - )? - } } } } - } else { - { - rt::apply_direct(interp, "shen.parse-failure", &[])? - } } } } @@ -3146,52 +3162,131 @@ pub fn aot_shen_x2e__x3c_pattern_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t598 = { - let __t597 = v_W666.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t597])? + let __t607 = { + let __t606 = v_W656.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t606])? }; - if match rt::is_truthy(interp, &__t598) { + if match rt::is_truthy(interp, &__t607) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W673 = { - let __t607 = { - let __t599 = v_V665.clone(); - rt::is_cons(&__t599) + let v_W670 = { + let __t629 = { + let __t608 = v_V655.clone(); + rt::apply_direct(interp, "shen.ccons?", &[__t608])? }; - if rt::is_truthy(interp, &__t607)? { + if rt::is_truthy(interp, &__t629)? { { - let v_W674 = { - let __t600 = v_V665.clone(); - rt::apply_direct(interp, "head", &[__t600])? + let v_W671 = { + let __t609 = v_V655.clone(); + rt::apply_direct(interp, "head", &[__t609])? }; { - let v_W675 = { - let __t601 = v_V665.clone(); - rt::apply_direct(interp, "tail", &[__t601])? + let v_W672 = { + let __t610 = v_V655.clone(); + rt::apply_direct(interp, "tail", &[__t610])? }; { - let __t606 = { - let __t602 = v_W674.clone(); - rt::is_cons(&__t602) + let __t628 = { + let __t611 = v_W671.clone(); + let __t612 = Value::sym(interp.intern("vector")); + rt::apply_direct( + interp, + "shen.hds=?", + &[__t611, __t612], + )? }; - if rt::is_truthy(interp, &__t606)? { + if rt::is_truthy(interp, &__t628)? { { - let __t603 = v_W675.clone(); - let __t605 = { - let __t604 = v_W674.clone(); - rt::apply_direct( - interp, - "shen.compound-pattern", - &[__t604], - )? + let v_W673 = { + let __t613 = v_W671.clone(); + rt::apply_direct(interp, "tail", &[__t613])? }; - rt::apply_direct( - interp, - "shen.comb", - &[__t603, __t605], - )? + { + let __t627 = { + let __t614 = v_W673.clone(); + let __t615 = Value::int(0i64); + rt::apply_direct( + interp, + "shen.hds=?", + &[__t614, __t615], + )? + }; + if rt::is_truthy(interp, &__t627)? { + { + let v_W674 = { + let __t616 = v_W673.clone(); + rt::apply_direct( + interp, + "tail", + &[__t616], + )? + }; + { + let v_W675 = { + let __t617 = v_W674.clone(); + rt::apply_direct( + interp, + "", + &[__t617], + )? + }; + { + let __t626 = { + let __t618 = + v_W675.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t618])? + }; + if rt::is_truthy( + interp, &__t626, + )? { + { + rt::apply_direct(interp, "shen.parse-failure", &[])? + } + } else { + { + let v_W676 = { + let __t619 = + v_W675 + .clone( + ); + rt::apply_direct(interp, "shen.in->", &[__t619])? + }; + { + let __t620 = + v_W672 + .clone( + ); + let __t625 = { + let __t621 = Value::sym(interp.intern("vector")); + let __t624 = { + let __t622 = Value::int(0i64); + let __t623 = Value::nil(); + rt::cons(&__t622, &__t623) + }; + rt::cons( + &__t621, + &__t624, + ) + }; + rt::apply_direct(interp, "shen.comb", &[__t620, __t625])? + } + } + } + } + } + } + } else { + { + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + } + } + } } } else { { @@ -3212,114 +3307,193 @@ pub fn aot_shen_x2e__x3c_pattern_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t609 = { - let __t608 = v_W673.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t608])? + let __t631 = { + let __t630 = v_W670.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t630])? }; - if match rt::is_truthy(interp, &__t609) { + if match rt::is_truthy(interp, &__t631) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W676 = { - let v_W677 = { - let __t610 = v_V665.clone(); - rt::apply_direct( - interp, - "shen.", - &[__t610], - )? + let v_W677 = { + let __t640 = { + let __t632 = v_V655.clone(); + rt::is_cons(&__t632) }; - { - let __t616 = { - let __t611 = v_W677.clone(); - rt::apply_direct( - interp, - "shen.parse-failure?", - &[__t611], - )? - }; - if rt::is_truthy(interp, &__t616)? { - { - rt::apply_direct( - interp, - "shen.parse-failure", - &[], - )? - } - } else { + if rt::is_truthy(interp, &__t640)? { + { + let v_W678 = { + let __t633 = v_V655.clone(); + rt::apply_direct(interp, "head", &[__t633])? + }; { - let v_W678 = { - let __t612 = v_W677.clone(); - rt::apply_direct( - interp, - "shen.<-out", - &[__t612], - )? + let v_W679 = { + let __t634 = v_V655.clone(); + rt::apply_direct(interp, "tail", &[__t634])? }; { - let v_W679 = { - let __t613 = v_W677.clone(); - rt::apply_direct( - interp, - "shen.in->", - &[__t613], - )? + let __t639 = { + let __t635 = v_W678.clone(); + rt::is_cons(&__t635) }; - { - let __t614 = v_W679.clone(); - let __t615 = v_W678.clone(); - rt::apply_direct( - interp, - "shen.comb", - &[__t614, __t615], - )? + if rt::is_truthy(interp, &__t639)? { + { + let __t636 = v_W679.clone(); + let __t638 = { + let __t637 = v_W678.clone(); + rt::apply_direct( + interp, + "shen.constructor-error", + &[__t637], + )? + }; + rt::apply_direct( + interp, + "shen.comb", + &[__t636, __t638], + )? + } + } else { + { + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + } } } } } + } else { + { + rt::apply_direct(interp, "shen.parse-failure", &[])? + } } }; { - let __t618 = { - let __t617 = v_W676.clone(); + let __t642 = { + let __t641 = v_W677.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t617], + &[__t641], )? }; - if match rt::is_truthy(interp, &__t618) { + if match rt::is_truthy(interp, &__t642) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - rt::apply_direct(interp, "shen.parse-failure", &[])? - }); - } else { - break Ok(v_W676.clone()); - } - } - } - } else { - break Ok(v_W673.clone()); - } - } - } - } else { - break Ok(v_W666.clone()); - } - } - } - } -} - -fn install_shen_x2e__x3c_pattern_x3e_(interp: &mut Interp) { - interp.register_native("shen.", 1, aot_shen_x2e__x3c_pattern_x3e_); - interp.register_aot_direct("shen.", aot_shen_x2e__x3c_pattern_x3e_); -} - -/// AOT-compiled from KL `(defun shen. ...)` + { + let v_W680 = { + let v_W681 = { + let __t643 = v_V655.clone(); + rt::apply_direct( + interp, + "shen.", + &[__t643], + )? + }; + { + let __t649 = { + let __t644 = v_W681.clone(); + rt::apply_direct( + interp, + "shen.parse-failure?", + &[__t644], + )? + }; + if rt::is_truthy(interp, &__t649)? { + { + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + } + } else { + { + let v_W682 = { + let __t645 = v_W681.clone(); + rt::apply_direct( + interp, + "shen.<-out", + &[__t645], + )? + }; + { + let v_W683 = { + let __t646 = v_W681.clone(); + rt::apply_direct( + interp, + "shen.in->", + &[__t646], + )? + }; + { + let __t647 = v_W683.clone(); + let __t648 = v_W682.clone(); + rt::apply_direct( + interp, + "shen.comb", + &[__t647, __t648], + )? + } + } + } + } + } + }; + { + let __t651 = { + let __t650 = v_W680.clone(); + rt::apply_direct( + interp, + "shen.parse-failure?", + &[__t650], + )? + }; + if match rt::is_truthy(interp, &__t651) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + }); + } else { + break Ok(v_W680.clone()); + } + } + } + } else { + break Ok(v_W677.clone()); + } + } + } + } else { + break Ok(v_W670.clone()); + } + } + } + } else { + break Ok(v_W656.clone()); + } + } + } + } +} + +fn install_shen_x2e__x3c_pattern_x3e_(interp: &mut Interp) { + interp.register_native("shen.", 1, aot_shen_x2e__x3c_pattern_x3e_); + interp.register_aot_direct("shen.", aot_shen_x2e__x3c_pattern_x3e_); +} + +/// AOT-compiled from KL `(defun shen. ...)` pub fn aot_shen_x2e__x3c_constructor_x3e_( interp: &mut Interp, args: &[Value], @@ -3331,36 +3505,36 @@ pub fn aot_shen_x2e__x3c_constructor_x3e_( ))); } #[allow(unused_mut)] - let mut v_V680 = args[0].clone(); + let mut v_V684 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W681 = { - let __t626 = { - let __t619 = v_V680.clone(); - rt::is_cons(&__t619) + let v_W685 = { + let __t659 = { + let __t652 = v_V684.clone(); + rt::is_cons(&__t652) }; - if rt::is_truthy(interp, &__t626)? { + if rt::is_truthy(interp, &__t659)? { { - let v_W682 = { - let __t620 = v_V680.clone(); - rt::apply_direct(interp, "head", &[__t620])? + let v_W686 = { + let __t653 = v_V684.clone(); + rt::apply_direct(interp, "head", &[__t653])? }; { - let v_W683 = { - let __t621 = v_V680.clone(); - rt::apply_direct(interp, "tail", &[__t621])? + let v_W687 = { + let __t654 = v_V684.clone(); + rt::apply_direct(interp, "tail", &[__t654])? }; { - let __t625 = { - let __t622 = v_W682.clone(); - rt::apply_direct(interp, "shen.constructor?", &[__t622])? + let __t658 = { + let __t655 = v_W686.clone(); + rt::apply_direct(interp, "shen.constructor?", &[__t655])? }; - if rt::is_truthy(interp, &__t625)? { + if rt::is_truthy(interp, &__t658)? { { - let __t623 = v_W683.clone(); - let __t624 = v_W682.clone(); - rt::apply_direct(interp, "shen.comb", &[__t623, __t624])? + let __t656 = v_W687.clone(); + let __t657 = v_W686.clone(); + rt::apply_direct(interp, "shen.comb", &[__t656, __t657])? } } else { { @@ -3377,17 +3551,17 @@ pub fn aot_shen_x2e__x3c_constructor_x3e_( } }; { - let __t628 = { - let __t627 = v_W681.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t627])? + let __t661 = { + let __t660 = v_W685.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t660])? }; - if match rt::is_truthy(interp, &__t628) { + if match rt::is_truthy(interp, &__t661) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W681.clone()); + break Ok(v_W685.clone()); } } } @@ -3406,874 +3580,74 @@ pub fn aot_shen_x2e_constructor_x3f_(interp: &mut Interp, args: &[Value]) -> She "shen.constructor?: expected 1 args, got {}", args.len() ))); - } - #[allow(unused_mut)] - let mut v_V684 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t629 = v_V684.clone(); - let __t638 = { - let __t630 = Value::sym(interp.intern("cons")); - let __t637 = { - let __t631 = Value::sym(interp.intern("@p")); - let __t636 = { - let __t632 = Value::sym(interp.intern("@s")); - let __t635 = { - let __t633 = Value::sym(interp.intern("@v")); - let __t634 = Value::nil(); - rt::cons(&__t633, &__t634) - }; - rt::cons(&__t632, &__t635) - }; - rt::cons(&__t631, &__t636) - }; - rt::cons(&__t630, &__t637) - }; - rt::apply_direct(interp, "element?", &[__t629, __t638])? - }); - } -} - -fn install_shen_x2e_constructor_x3f_(interp: &mut Interp) { - interp.register_native("shen.constructor?", 1, aot_shen_x2e_constructor_x3f_); - interp.register_aot_direct("shen.constructor?", aot_shen_x2e_constructor_x3f_); -} - -/// AOT-compiled from KL `(defun shen.constructor-error ...)` -pub fn aot_shen_x2e_constructor_x2d_error( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.constructor-error: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V685 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t642 = { - let __t639 = v_V685.clone(); - let __t640 = Value::str(" is not a legitimate constructor\n"); - let __t641 = Value::sym(interp.intern("shen.r")); - rt::apply_direct(interp, "shen.app", &[__t639, __t640, __t641])? - }; - rt::apply_direct(interp, "simple-error", &[__t642])? - }); - } -} - -fn install_shen_x2e_constructor_x2d_error(interp: &mut Interp) { - interp.register_native( - "shen.constructor-error", - 1, - aot_shen_x2e_constructor_x2d_error, - ); - interp.register_aot_direct("shen.constructor-error", aot_shen_x2e_constructor_x2d_error); -} - -/// AOT-compiled from KL `(defun shen.custom-pattern-compiler ...)` -pub fn aot_shen_x2e_custom_x2d_pattern_x2d_compiler( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.custom-pattern-compiler: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V686 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V687 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W688 = { - let __t643 = Value::sym(interp.intern("shen.*custom-pattern-compiler*")); - rt::apply_direct(interp, "value", &[__t643])? - }; - { - let __t646 = { - let __t644 = v_W688.clone(); - let __t645 = Value::bool(false); - rt::eq(&__t644, &__t645) - }; - if match rt::is_truthy(interp, &__t646) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(rt::apply_value(interp, v_V687.clone(), &[])?); - } else { - break Ok({ - let __t648 = { - let __t647 = v_V686.clone(); - rt::apply_value(interp, v_W688.clone(), &[__t647])? - }; - let __t649 = v_V687.clone(); - rt::apply_value(interp, __t648, &[__t649])? - }); - } - } - } - } -} - -fn install_shen_x2e_custom_x2d_pattern_x2d_compiler(interp: &mut Interp) { - interp.register_native( - "shen.custom-pattern-compiler", - 2, - aot_shen_x2e_custom_x2d_pattern_x2d_compiler, - ); - interp.register_aot_direct( - "shen.custom-pattern-compiler", - aot_shen_x2e_custom_x2d_pattern_x2d_compiler, - ); -} - -/// AOT-compiled from KL `(defun shen.custom-pattern-reducer ...)` -pub fn aot_shen_x2e_custom_x2d_pattern_x2d_reducer( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.custom-pattern-reducer: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V689 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W690 = { - let __t650 = Value::sym(interp.intern("shen.*custom-pattern-reducer*")); - rt::apply_direct(interp, "value", &[__t650])? - }; - { - let __t653 = { - let __t651 = v_W690.clone(); - let __t652 = Value::bool(false); - rt::eq(&__t651, &__t652) - }; - if match rt::is_truthy(interp, &__t653) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ rt::apply_direct(interp, "fail", &[])? }); - } else { - break Ok({ - let __t654 = v_V689.clone(); - rt::apply_value(interp, v_W690.clone(), &[__t654])? - }); - } - } - } - } -} - -fn install_shen_x2e_custom_x2d_pattern_x2d_reducer(interp: &mut Interp) { - interp.register_native( - "shen.custom-pattern-reducer", - 1, - aot_shen_x2e_custom_x2d_pattern_x2d_reducer, - ); - interp.register_aot_direct( - "shen.custom-pattern-reducer", - aot_shen_x2e_custom_x2d_pattern_x2d_reducer, - ); -} - -/// AOT-compiled from KL `(defun shen.compound-pattern ...)` -pub fn aot_shen_x2e_compound_x2d_pattern(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.compound-pattern: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V691 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t655 = v_V691.clone(); - let __t657 = { - let v_V691 = v_V691.clone(); - rt::make_aot_closure( - "", - 0, - move |interp, _args| { - Ok({ - let __t656 = v_V691.clone(); - rt::apply_direct(interp, "shen.compound-pattern-h", &[__t656])? - }) - }, - vec![v_V691], - interp, - ) - }; - rt::apply_direct(interp, "shen.custom-pattern-compiler", &[__t655, __t657])? - }); - } -} - -fn install_shen_x2e_compound_x2d_pattern(interp: &mut Interp) { - interp.register_native( - "shen.compound-pattern", - 1, - aot_shen_x2e_compound_x2d_pattern, - ); - interp.register_aot_direct("shen.compound-pattern", aot_shen_x2e_compound_x2d_pattern); -} - -/// AOT-compiled from KL `(defun shen.compound-pattern-h ...)` -pub fn aot_shen_x2e_compound_x2d_pattern_x2d_h( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.compound-pattern-h: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V692 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t695 = { - let __t679 = { - let __t660 = v_V692.clone(); - rt::is_cons(&__t660) - }; - if !rt::is_truthy(interp, &__t679)? { - Value::bool(false) - } else { - let __t680 = { - let __t677 = { - let __t662 = { - let __t661 = v_V692.clone(); - rt::tl(&__t661)? - }; - rt::is_cons(&__t662) - }; - if !rt::is_truthy(interp, &__t677)? { - Value::bool(false) - } else { - let __t678 = { - let __t675 = { - let __t665 = { - let __t664 = { - let __t663 = v_V692.clone(); - rt::tl(&__t663)? - }; - rt::tl(&__t664)? - }; - rt::is_cons(&__t665) - }; - if !rt::is_truthy(interp, &__t675)? { - Value::bool(false) - } else { - let __t676 = { - let __t673 = { - let __t666 = Value::nil(); - let __t670 = { - let __t669 = { - let __t668 = { - let __t667 = v_V692.clone(); - rt::tl(&__t667)? - }; - rt::tl(&__t668)? - }; - rt::tl(&__t669)? - }; - rt::eq(&__t666, &__t670) - }; - if !rt::is_truthy(interp, &__t673)? { - Value::bool(false) - } else { - let __t674 = { - let __t672 = { - let __t671 = v_V692.clone(); - rt::hd(&__t671)? - }; - rt::apply_direct( - interp, - "shen.constructor?", - &[__t672], - )? - }; - Value::bool(rt::is_truthy(interp, &__t674)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t676)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t678)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t680)?) - } - }; - if match rt::is_truthy(interp, &__t695) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t682 = { - let __t681 = v_V692.clone(); - rt::hd(&__t681)? - }; - let __t694 = { - let __t686 = { - let __t685 = { - let __t684 = { - let __t683 = v_V692.clone(); - rt::tl(&__t683)? - }; - rt::hd(&__t684)? - }; - rt::apply_direct(interp, "shen.compile-pattern-fragment", &[__t685])? - }; - let __t693 = { - let __t691 = { - let __t690 = { - let __t689 = { - let __t688 = { - let __t687 = v_V692.clone(); - rt::tl(&__t687)? - }; - rt::tl(&__t688)? - }; - rt::hd(&__t689)? - }; - rt::apply_direct( - interp, - "shen.compile-pattern-fragment", - &[__t690], - )? - }; - let __t692 = Value::nil(); - rt::cons(&__t691, &__t692) - }; - rt::cons(&__t686, &__t693) - }; - rt::cons(&__t682, &__t694) - }); - } else { - { - let __t659 = Value::bool(true); - if match rt::is_truthy(interp, &__t659) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t658 = v_V692.clone(); - rt::apply_direct(interp, "shen.constructor-error", &[__t658])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2e_compound_x2d_pattern_x2d_h(interp: &mut Interp) { - interp.register_native( - "shen.compound-pattern-h", - 1, - aot_shen_x2e_compound_x2d_pattern_x2d_h, - ); - interp.register_aot_direct( - "shen.compound-pattern-h", - aot_shen_x2e_compound_x2d_pattern_x2d_h, - ); -} - -/// AOT-compiled from KL `(defun shen.compile-pattern-fragment ...)` -pub fn aot_shen_x2e_compile_x2d_pattern_x2d_fragment( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.compile-pattern-fragment: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V693 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t735 = { - let __t733 = { - let __t713 = v_V693.clone(); - rt::is_cons(&__t713) - }; - if !rt::is_truthy(interp, &__t733)? { - Value::bool(false) - } else { - let __t734 = { - let __t731 = { - let __t714 = Value::sym(interp.intern("vector")); - let __t716 = { - let __t715 = v_V693.clone(); - rt::hd(&__t715)? - }; - rt::eq(&__t714, &__t716) - }; - if !rt::is_truthy(interp, &__t731)? { - Value::bool(false) - } else { - let __t732 = { - let __t729 = { - let __t718 = { - let __t717 = v_V693.clone(); - rt::tl(&__t717)? - }; - rt::is_cons(&__t718) - }; - if !rt::is_truthy(interp, &__t729)? { - Value::bool(false) - } else { - let __t730 = { - let __t727 = { - let __t719 = Value::int(0i64); - let __t722 = { - let __t721 = { - let __t720 = v_V693.clone(); - rt::tl(&__t720)? - }; - rt::hd(&__t721)? - }; - rt::eq(&__t719, &__t722) - }; - if !rt::is_truthy(interp, &__t727)? { - Value::bool(false) - } else { - let __t728 = { - let __t723 = Value::nil(); - let __t726 = { - let __t725 = { - let __t724 = v_V693.clone(); - rt::tl(&__t724)? - }; - rt::tl(&__t725)? - }; - rt::eq(&__t723, &__t726) - }; - Value::bool(rt::is_truthy(interp, &__t728)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t730)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t732)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t734)?) - } - }; - if match rt::is_truthy(interp, &__t735) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V693.clone()); - } else { - { - let __t712 = { - let __t710 = v_V693.clone(); - rt::is_cons(&__t710) - }; - if match rt::is_truthy(interp, &__t712) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t711 = v_V693.clone(); - rt::apply_direct(interp, "shen.compound-pattern", &[__t711])? - }); - } else { - { - let __t709 = { - let __t706 = v_V693.clone(); - let __t707 = Value::sym(interp.intern("_")); - rt::eq(&__t706, &__t707) - }; - if match rt::is_truthy(interp, &__t709) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t708 = Value::sym(interp.intern("Y")); - rt::apply_direct(interp, "gensym", &[__t708])? - }); - } else { - { - let __t705 = { - let __t704 = { - let __t698 = v_V693.clone(); - let __t703 = { - let __t699 = Value::sym(interp.intern("->")); - let __t702 = { - let __t700 = Value::sym(interp.intern("<-")); - let __t701 = Value::nil(); - rt::cons(&__t700, &__t701) - }; - rt::cons(&__t699, &__t702) - }; - rt::apply_direct(interp, "element?", &[__t698, __t703])? - }; - rt::apply_direct(interp, "not", &[__t704])? - }; - if match rt::is_truthy(interp, &__t705) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V693.clone()); - } else { - { - let __t697 = Value::bool(true); - if match rt::is_truthy(interp, &__t697) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t696 = v_V693.clone(); - rt::apply_direct( - interp, - "shen.constructor-error", - &[__t696], - )? - }); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_compile_x2d_pattern_x2d_fragment(interp: &mut Interp) { - interp.register_native( - "shen.compile-pattern-fragment", - 1, - aot_shen_x2e_compile_x2d_pattern_x2d_fragment, - ); - interp.register_aot_direct( - "shen.compile-pattern-fragment", - aot_shen_x2e_compile_x2d_pattern_x2d_fragment, - ); -} - -/// AOT-compiled from KL `(defun shen.custom-pattern? ...)` -pub fn aot_shen_x2e_custom_x2d_pattern_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.custom-pattern?: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V698 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t765 = { - let __t763 = { - let __t737 = v_V698.clone(); - rt::is_cons(&__t737) - }; - if !rt::is_truthy(interp, &__t763)? { - Value::bool(false) - } else { - let __t764 = { - let __t761 = { - let __t738 = Value::sym(interp.intern("@p")); - let __t740 = { - let __t739 = v_V698.clone(); - rt::hd(&__t739)? - }; - rt::eq(&__t738, &__t740) - }; - if !rt::is_truthy(interp, &__t761)? { - Value::bool(false) - } else { - let __t762 = { - let __t759 = { - let __t742 = { - let __t741 = v_V698.clone(); - rt::tl(&__t741)? - }; - rt::is_cons(&__t742) - }; - if !rt::is_truthy(interp, &__t759)? { - Value::bool(false) - } else { - let __t760 = { - let __t757 = { - let __t743 = - Value::sym(interp.intern("shen.custom-pattern")); - let __t746 = { - let __t745 = { - let __t744 = v_V698.clone(); - rt::tl(&__t744)? - }; - rt::hd(&__t745)? - }; - rt::eq(&__t743, &__t746) - }; - if !rt::is_truthy(interp, &__t757)? { - Value::bool(false) - } else { - let __t758 = { - let __t755 = { - let __t749 = { - let __t748 = { - let __t747 = v_V698.clone(); - rt::tl(&__t747)? - }; - rt::tl(&__t748)? - }; - rt::is_cons(&__t749) - }; - if !rt::is_truthy(interp, &__t755)? { - Value::bool(false) - } else { - let __t756 = { - let __t750 = Value::nil(); - let __t754 = { - let __t753 = { - let __t752 = { - let __t751 = v_V698.clone(); - rt::tl(&__t751)? - }; - rt::tl(&__t752)? - }; - rt::tl(&__t753)? - }; - rt::eq(&__t750, &__t754) - }; - Value::bool(rt::is_truthy(interp, &__t756)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t758)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t760)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t762)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t764)?) - } - }; - if match rt::is_truthy(interp, &__t765) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(true)); - } else { - { - let __t736 = Value::bool(true); - if match rt::is_truthy(interp, &__t736) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2e_custom_x2d_pattern_x3f_(interp: &mut Interp) { - interp.register_native( - "shen.custom-pattern?", - 1, - aot_shen_x2e_custom_x2d_pattern_x3f_, - ); - interp.register_aot_direct("shen.custom-pattern?", aot_shen_x2e_custom_x2d_pattern_x3f_); -} - -/// AOT-compiled from KL `(defun shen.custom-pattern-body ...)` -pub fn aot_shen_x2e_custom_x2d_pattern_x2d_body( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.custom-pattern-body: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V701 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t799 = { - let __t794 = { - let __t768 = v_V701.clone(); - rt::is_cons(&__t768) - }; - if !rt::is_truthy(interp, &__t794)? { - Value::bool(false) - } else { - let __t795 = { - let __t792 = { - let __t769 = Value::sym(interp.intern("@p")); - let __t771 = { - let __t770 = v_V701.clone(); - rt::hd(&__t770)? - }; - rt::eq(&__t769, &__t771) - }; - if !rt::is_truthy(interp, &__t792)? { - Value::bool(false) - } else { - let __t793 = { - let __t790 = { - let __t773 = { - let __t772 = v_V701.clone(); - rt::tl(&__t772)? - }; - rt::is_cons(&__t773) - }; - if !rt::is_truthy(interp, &__t790)? { - Value::bool(false) - } else { - let __t791 = { - let __t788 = { - let __t774 = - Value::sym(interp.intern("shen.custom-pattern")); - let __t777 = { - let __t776 = { - let __t775 = v_V701.clone(); - rt::tl(&__t775)? - }; - rt::hd(&__t776)? - }; - rt::eq(&__t774, &__t777) - }; - if !rt::is_truthy(interp, &__t788)? { - Value::bool(false) - } else { - let __t789 = { - let __t786 = { - let __t780 = { - let __t779 = { - let __t778 = v_V701.clone(); - rt::tl(&__t778)? - }; - rt::tl(&__t779)? - }; - rt::is_cons(&__t780) - }; - if !rt::is_truthy(interp, &__t786)? { - Value::bool(false) - } else { - let __t787 = { - let __t781 = Value::nil(); - let __t785 = { - let __t784 = { - let __t783 = { - let __t782 = v_V701.clone(); - rt::tl(&__t782)? - }; - rt::tl(&__t783)? - }; - rt::tl(&__t784)? - }; - rt::eq(&__t781, &__t785) - }; - Value::bool(rt::is_truthy(interp, &__t787)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t789)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t791)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t793)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t795)?) - } - }; - if match rt::is_truthy(interp, &__t799) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t798 = { - let __t797 = { - let __t796 = v_V701.clone(); - rt::tl(&__t796)? + } + #[allow(unused_mut)] + let mut v_V688 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + break Ok({ + let __t662 = v_V688.clone(); + let __t671 = { + let __t663 = Value::sym(interp.intern("cons")); + let __t670 = { + let __t664 = Value::sym(interp.intern("@p")); + let __t669 = { + let __t665 = Value::sym(interp.intern("@s")); + let __t668 = { + let __t666 = Value::sym(interp.intern("@v")); + let __t667 = Value::nil(); + rt::cons(&__t666, &__t667) }; - rt::tl(&__t797)? + rt::cons(&__t665, &__t668) }; - rt::hd(&__t798)? - }); - } else { - { - let __t767 = Value::bool(true); - if match rt::is_truthy(interp, &__t767) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t766 = - Value::str("implementation error in shen.custom-pattern-body"); - rt::apply_direct(interp, "simple-error", &[__t766])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } + rt::cons(&__t664, &__t669) + }; + rt::cons(&__t663, &__t670) + }; + rt::apply_direct(interp, "element?", &[__t662, __t671])? + }); + } +} + +fn install_shen_x2e_constructor_x3f_(interp: &mut Interp) { + interp.register_native("shen.constructor?", 1, aot_shen_x2e_constructor_x3f_); + interp.register_aot_direct("shen.constructor?", aot_shen_x2e_constructor_x3f_); +} + +/// AOT-compiled from KL `(defun shen.constructor-error ...)` +pub fn aot_shen_x2e_constructor_x2d_error( + interp: &mut Interp, + args: &[Value], +) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "shen.constructor-error: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V689 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + break Ok({ + let __t675 = { + let __t672 = v_V689.clone(); + let __t673 = Value::str(" is not a legitimate constructor\n"); + let __t674 = Value::sym(interp.intern("shen.r")); + rt::apply_direct(interp, "shen.app", &[__t672, __t673, __t674])? + }; + rt::apply_direct(interp, "simple-error", &[__t675])? + }); } } -fn install_shen_x2e_custom_x2d_pattern_x2d_body(interp: &mut Interp) { +fn install_shen_x2e_constructor_x2d_error(interp: &mut Interp) { interp.register_native( - "shen.custom-pattern-body", + "shen.constructor-error", 1, - aot_shen_x2e_custom_x2d_pattern_x2d_body, - ); - interp.register_aot_direct( - "shen.custom-pattern-body", - aot_shen_x2e_custom_x2d_pattern_x2d_body, + aot_shen_x2e_constructor_x2d_error, ); + interp.register_aot_direct("shen.constructor-error", aot_shen_x2e_constructor_x2d_error); } /// AOT-compiled from KL `(defun shen. ...)` @@ -4288,40 +3662,40 @@ pub fn aot_shen_x2e__x3c_simple_x2d_pattern_x3e_( ))); } #[allow(unused_mut)] - let mut v_V702 = args[0].clone(); + let mut v_V690 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W703 = { - let __t809 = { - let __t800 = v_V702.clone(); - rt::is_cons(&__t800) + let v_W691 = { + let __t685 = { + let __t676 = v_V690.clone(); + rt::is_cons(&__t676) }; - if rt::is_truthy(interp, &__t809)? { + if rt::is_truthy(interp, &__t685)? { { - let v_W704 = { - let __t801 = v_V702.clone(); - rt::apply_direct(interp, "head", &[__t801])? + let v_W692 = { + let __t677 = v_V690.clone(); + rt::apply_direct(interp, "head", &[__t677])? }; { - let v_W705 = { - let __t802 = v_V702.clone(); - rt::apply_direct(interp, "tail", &[__t802])? + let v_W693 = { + let __t678 = v_V690.clone(); + rt::apply_direct(interp, "tail", &[__t678])? }; { - let __t808 = { - let __t803 = v_W704.clone(); - let __t804 = Value::sym(interp.intern("_")); - rt::eq(&__t803, &__t804) + let __t684 = { + let __t679 = v_W692.clone(); + let __t680 = Value::sym(interp.intern("_")); + rt::eq(&__t679, &__t680) }; - if rt::is_truthy(interp, &__t808)? { + if rt::is_truthy(interp, &__t684)? { { - let __t805 = v_W705.clone(); - let __t807 = { - let __t806 = Value::sym(interp.intern("Y")); - rt::apply_direct(interp, "gensym", &[__t806])? + let __t681 = v_W693.clone(); + let __t683 = { + let __t682 = Value::sym(interp.intern("Y")); + rt::apply_direct(interp, "gensym", &[__t682])? }; - rt::apply_direct(interp, "shen.comb", &[__t805, __t807])? + rt::apply_direct(interp, "shen.comb", &[__t681, __t683])? } } else { { @@ -4338,62 +3712,62 @@ pub fn aot_shen_x2e__x3c_simple_x2d_pattern_x3e_( } }; { - let __t811 = { - let __t810 = v_W703.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t810])? + let __t687 = { + let __t686 = v_W691.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t686])? }; - if match rt::is_truthy(interp, &__t811) { + if match rt::is_truthy(interp, &__t687) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W706 = { - let __t825 = { - let __t812 = v_V702.clone(); - rt::is_cons(&__t812) + let v_W694 = { + let __t701 = { + let __t688 = v_V690.clone(); + rt::is_cons(&__t688) }; - if rt::is_truthy(interp, &__t825)? { + if rt::is_truthy(interp, &__t701)? { { - let v_W707 = { - let __t813 = v_V702.clone(); - rt::apply_direct(interp, "head", &[__t813])? + let v_W695 = { + let __t689 = v_V690.clone(); + rt::apply_direct(interp, "head", &[__t689])? }; { - let v_W708 = { - let __t814 = v_V702.clone(); - rt::apply_direct(interp, "tail", &[__t814])? + let v_W696 = { + let __t690 = v_V690.clone(); + rt::apply_direct(interp, "tail", &[__t690])? }; { - let __t824 = { - let __t821 = { - let __t815 = v_W707.clone(); - let __t820 = { - let __t816 = + let __t700 = { + let __t697 = { + let __t691 = v_W695.clone(); + let __t696 = { + let __t692 = Value::sym(interp.intern("->")); - let __t819 = { - let __t817 = + let __t695 = { + let __t693 = Value::sym(interp.intern("<-")); - let __t818 = Value::nil(); - rt::cons(&__t817, &__t818) + let __t694 = Value::nil(); + rt::cons(&__t693, &__t694) }; - rt::cons(&__t816, &__t819) + rt::cons(&__t692, &__t695) }; rt::apply_direct( interp, "element?", - &[__t815, __t820], + &[__t691, __t696], )? }; - rt::apply_direct(interp, "not", &[__t821])? + rt::apply_direct(interp, "not", &[__t697])? }; - if rt::is_truthy(interp, &__t824)? { + if rt::is_truthy(interp, &__t700)? { { - let __t822 = v_W708.clone(); - let __t823 = v_W707.clone(); + let __t698 = v_W696.clone(); + let __t699 = v_W695.clone(); rt::apply_direct( interp, "shen.comb", - &[__t822, __t823], + &[__t698, __t699], )? } } else { @@ -4415,22 +3789,22 @@ pub fn aot_shen_x2e__x3c_simple_x2d_pattern_x3e_( } }; { - let __t827 = { - let __t826 = v_W706.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t826])? + let __t703 = { + let __t702 = v_W694.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t702])? }; - if match rt::is_truthy(interp, &__t827) { + if match rt::is_truthy(interp, &__t703) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W706.clone()); + break Ok(v_W694.clone()); } } } } else { - break Ok(v_W703.clone()); + break Ok(v_W691.clone()); } } } @@ -4458,39 +3832,39 @@ pub fn aot_shen_x2e__x3c_pattern1_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V709 = args[0].clone(); + let mut v_V697 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W710 = { - let v_W711 = { - let __t828 = v_V709.clone(); - rt::apply_direct(interp, "shen.", &[__t828])? + let v_W698 = { + let v_W699 = { + let __t704 = v_V697.clone(); + rt::apply_direct(interp, "shen.", &[__t704])? }; { - let __t834 = { - let __t829 = v_W711.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t829])? + let __t710 = { + let __t705 = v_W699.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t705])? }; - if rt::is_truthy(interp, &__t834)? { + if rt::is_truthy(interp, &__t710)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W712 = { - let __t830 = v_W711.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t830])? + let v_W700 = { + let __t706 = v_W699.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t706])? }; { - let v_W713 = { - let __t831 = v_W711.clone(); - rt::apply_direct(interp, "shen.in->", &[__t831])? + let v_W701 = { + let __t707 = v_W699.clone(); + rt::apply_direct(interp, "shen.in->", &[__t707])? }; { - let __t832 = v_W713.clone(); - let __t833 = v_W712.clone(); - rt::apply_direct(interp, "shen.comb", &[__t832, __t833])? + let __t708 = v_W701.clone(); + let __t709 = v_W700.clone(); + rt::apply_direct(interp, "shen.comb", &[__t708, __t709])? } } } @@ -4498,17 +3872,17 @@ pub fn aot_shen_x2e__x3c_pattern1_x3e_(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t836 = { - let __t835 = v_W710.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t835])? + let __t712 = { + let __t711 = v_W698.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t711])? }; - if match rt::is_truthy(interp, &__t836) { + if match rt::is_truthy(interp, &__t712) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W710.clone()); + break Ok(v_W698.clone()); } } } @@ -4529,39 +3903,39 @@ pub fn aot_shen_x2e__x3c_pattern2_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V714 = args[0].clone(); + let mut v_V702 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W715 = { - let v_W716 = { - let __t837 = v_V714.clone(); - rt::apply_direct(interp, "shen.", &[__t837])? + let v_W703 = { + let v_W704 = { + let __t713 = v_V702.clone(); + rt::apply_direct(interp, "shen.", &[__t713])? }; { - let __t843 = { - let __t838 = v_W716.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t838])? + let __t719 = { + let __t714 = v_W704.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t714])? }; - if rt::is_truthy(interp, &__t843)? { + if rt::is_truthy(interp, &__t719)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W717 = { - let __t839 = v_W716.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t839])? + let v_W705 = { + let __t715 = v_W704.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t715])? }; { - let v_W718 = { - let __t840 = v_W716.clone(); - rt::apply_direct(interp, "shen.in->", &[__t840])? + let v_W706 = { + let __t716 = v_W704.clone(); + rt::apply_direct(interp, "shen.in->", &[__t716])? }; { - let __t841 = v_W718.clone(); - let __t842 = v_W717.clone(); - rt::apply_direct(interp, "shen.comb", &[__t841, __t842])? + let __t717 = v_W706.clone(); + let __t718 = v_W705.clone(); + rt::apply_direct(interp, "shen.comb", &[__t717, __t718])? } } } @@ -4569,17 +3943,17 @@ pub fn aot_shen_x2e__x3c_pattern2_x3e_(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t845 = { - let __t844 = v_W715.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t844])? + let __t721 = { + let __t720 = v_W703.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t720])? }; - if match rt::is_truthy(interp, &__t845) { + if match rt::is_truthy(interp, &__t721) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W715.clone()); + break Ok(v_W703.clone()); } } } @@ -4600,52 +3974,52 @@ pub fn aot_shen_x2e_fn_x2d_print(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V719 = args[0].clone(); + let mut v_V707 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W720 = { - let __t846 = Value::int(2i64); - rt::apply_direct(interp, "absvector", &[__t846])? + let v_W708 = { + let __t722 = Value::int(2i64); + rt::apply_direct(interp, "absvector", &[__t722])? }; { - let v_W721 = { - let __t847 = v_W720.clone(); - let __t848 = Value::int(0i64); - let __t849 = Value::sym(interp.intern("shen.printF")); - rt::apply_direct(interp, "address->", &[__t847, __t848, __t849])? + let v_W709 = { + let __t723 = v_W708.clone(); + let __t724 = Value::int(0i64); + let __t725 = Value::sym(interp.intern("shen.printF")); + rt::apply_direct(interp, "address->", &[__t723, __t724, __t725])? }; { - let v_W722 = { - let __t850 = v_W721.clone(); - let __t851 = Value::int(1i64); - let __t863 = { - let __t852 = Value::str("("); - let __t862 = { - let __t853 = Value::str("f"); - let __t861 = { - let __t854 = Value::str("n"); - let __t860 = { - let __t855 = Value::str(" "); - let __t859 = { - let __t857 = { - let __t856 = v_V719.clone(); - rt::apply_direct(interp, "str", &[__t856])? + let v_W710 = { + let __t726 = v_W709.clone(); + let __t727 = Value::int(1i64); + let __t739 = { + let __t728 = Value::str("("); + let __t738 = { + let __t729 = Value::str("f"); + let __t737 = { + let __t730 = Value::str("n"); + let __t736 = { + let __t731 = Value::str(" "); + let __t735 = { + let __t733 = { + let __t732 = v_V707.clone(); + rt::apply_direct(interp, "str", &[__t732])? }; - let __t858 = Value::str(")"); - rt::apply_direct(interp, "@s", &[__t857, __t858])? + let __t734 = Value::str(")"); + rt::apply_direct(interp, "@s", &[__t733, __t734])? }; - rt::apply_direct(interp, "@s", &[__t855, __t859])? + rt::apply_direct(interp, "@s", &[__t731, __t735])? }; - rt::apply_direct(interp, "@s", &[__t854, __t860])? + rt::apply_direct(interp, "@s", &[__t730, __t736])? }; - rt::apply_direct(interp, "@s", &[__t853, __t861])? + rt::apply_direct(interp, "@s", &[__t729, __t737])? }; - rt::apply_direct(interp, "@s", &[__t852, __t862])? + rt::apply_direct(interp, "@s", &[__t728, __t738])? }; - rt::apply_direct(interp, "address->", &[__t850, __t851, __t863])? + rt::apply_direct(interp, "address->", &[__t726, __t727, __t739])? }; - break Ok(v_W722.clone()); + break Ok(v_W710.clone()); } } } @@ -4666,13 +4040,13 @@ pub fn aot_shen_x2e_printF(interp: &mut Interp, args: &[Value]) -> ShenResult ShenRe ))); } #[allow(unused_mut)] - let mut v_V728 = args[0].clone(); + let mut v_V716 = args[0].clone(); #[allow(unused_mut)] - let mut v_V729 = args[1].clone(); + let mut v_V717 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t899 = { - let __t895 = { - let __t891 = v_V729.clone(); - rt::is_cons(&__t891) + let __t775 = { + let __t771 = { + let __t767 = v_V717.clone(); + rt::is_cons(&__t767) }; - if !rt::is_truthy(interp, &__t895)? { + if !rt::is_truthy(interp, &__t771)? { Value::bool(false) } else { - let __t896 = { - let __t892 = Value::nil(); - let __t894 = { - let __t893 = v_V729.clone(); - rt::tl(&__t893)? + let __t772 = { + let __t768 = Value::nil(); + let __t770 = { + let __t769 = v_V717.clone(); + rt::tl(&__t769)? }; - rt::eq(&__t892, &__t894) + rt::eq(&__t768, &__t770) }; - Value::bool(rt::is_truthy(interp, &__t896)?) + Value::bool(rt::is_truthy(interp, &__t772)?) } }; - if match rt::is_truthy(interp, &__t899) { + if match rt::is_truthy(interp, &__t775) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t898 = { - let __t897 = v_V729.clone(); - rt::hd(&__t897)? + let __t774 = { + let __t773 = v_V717.clone(); + rt::hd(&__t773)? }; - rt::apply_direct(interp, "length", &[__t898])? + rt::apply_direct(interp, "length", &[__t774])? }); } else { { - let __t890 = { - let __t885 = { - let __t873 = v_V729.clone(); - rt::is_cons(&__t873) + let __t766 = { + let __t761 = { + let __t749 = v_V717.clone(); + rt::is_cons(&__t749) }; - if !rt::is_truthy(interp, &__t885)? { + if !rt::is_truthy(interp, &__t761)? { Value::bool(false) } else { - let __t886 = { - let __t883 = { - let __t875 = { - let __t874 = v_V729.clone(); - rt::tl(&__t874)? + let __t762 = { + let __t759 = { + let __t751 = { + let __t750 = v_V717.clone(); + rt::tl(&__t750)? }; - rt::is_cons(&__t875) + rt::is_cons(&__t751) }; - if !rt::is_truthy(interp, &__t883)? { + if !rt::is_truthy(interp, &__t759)? { Value::bool(false) } else { - let __t884 = { - let __t878 = { - let __t877 = { - let __t876 = v_V729.clone(); - rt::hd(&__t876)? + let __t760 = { + let __t754 = { + let __t753 = { + let __t752 = v_V717.clone(); + rt::hd(&__t752)? }; - rt::apply_direct(interp, "length", &[__t877])? + rt::apply_direct(interp, "length", &[__t753])? }; - let __t882 = { - let __t881 = { - let __t880 = { - let __t879 = v_V729.clone(); - rt::tl(&__t879)? + let __t758 = { + let __t757 = { + let __t756 = { + let __t755 = v_V717.clone(); + rt::tl(&__t755)? }; - rt::hd(&__t880)? + rt::hd(&__t756)? }; - rt::apply_direct(interp, "length", &[__t881])? + rt::apply_direct(interp, "length", &[__t757])? }; - rt::eq(&__t878, &__t882) + rt::eq(&__t754, &__t758) }; - Value::bool(rt::is_truthy(interp, &__t884)?) + Value::bool(rt::is_truthy(interp, &__t760)?) } }; - Value::bool(rt::is_truthy(interp, &__t886)?) + Value::bool(rt::is_truthy(interp, &__t762)?) } }; - if match rt::is_truthy(interp, &__t890) { + if match rt::is_truthy(interp, &__t766) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t887 = v_V728.clone(); - let __t889 = { - let __t888 = v_V729.clone(); - rt::tl(&__t888)? + let __t763 = v_V716.clone(); + let __t765 = { + let __t764 = v_V717.clone(); + rt::tl(&__t764)? }; - v_V728 = __t887; - v_V729 = __t889; + v_V716 = __t763; + v_V717 = __t765; continue; } } else { { - let __t872 = Value::bool(true); - if match rt::is_truthy(interp, &__t872) { + let __t748 = Value::bool(true); + if match rt::is_truthy(interp, &__t748) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t871 = { - let __t866 = Value::str("arity error in "); - let __t870 = { - let __t867 = v_V728.clone(); - let __t868 = Value::str("\n"); - let __t869 = Value::sym(interp.intern("shen.a")); + let __t747 = { + let __t742 = Value::str("arity error in "); + let __t746 = { + let __t743 = v_V716.clone(); + let __t744 = Value::str("\n"); + let __t745 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t867, __t868, __t869], + &[__t743, __t744, __t745], )? }; - rt::apply_direct(interp, "cn", &[__t866, __t870])? + rt::apply_direct(interp, "cn", &[__t742, __t746])? }; - rt::apply_direct(interp, "simple-error", &[__t871])? + rt::apply_direct(interp, "simple-error", &[__t747])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4837,52 +4211,52 @@ pub fn aot_shen_x2e_free_x2d_var_x2d_chk(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V730 = args[0].clone(); + let mut v_V718 = args[0].clone(); #[allow(unused_mut)] - let mut v_V731 = args[1].clone(); + let mut v_V719 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t910 = { - let __t902 = v_V731.clone(); - rt::apply_direct(interp, "tuple?", &[__t902])? + let __t786 = { + let __t778 = v_V719.clone(); + rt::apply_direct(interp, "tuple?", &[__t778])? }; - if match rt::is_truthy(interp, &__t910) { + if match rt::is_truthy(interp, &__t786) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t903 = v_V730.clone(); - let __t909 = { - let __t906 = { - let __t905 = { - let __t904 = v_V731.clone(); - rt::apply_direct(interp, "fst", &[__t904])? - }; - rt::apply_direct(interp, "shen.extract-vars", &[__t905])? + let __t779 = v_V718.clone(); + let __t785 = { + let __t782 = { + let __t781 = { + let __t780 = v_V719.clone(); + rt::apply_direct(interp, "fst", &[__t780])? + }; + rt::apply_direct(interp, "shen.extract-vars", &[__t781])? }; - let __t908 = { - let __t907 = v_V731.clone(); - rt::apply_direct(interp, "snd", &[__t907])? + let __t784 = { + let __t783 = v_V719.clone(); + rt::apply_direct(interp, "snd", &[__t783])? }; - rt::apply_direct(interp, "shen.find-free-vars", &[__t906, __t908])? + rt::apply_direct(interp, "shen.find-free-vars", &[__t782, __t784])? }; rt::apply_direct( interp, "shen.free-variable-error-message", - &[__t903, __t909], + &[__t779, __t785], )? }); } else { { - let __t901 = Value::bool(true); - if match rt::is_truthy(interp, &__t901) { + let __t777 = Value::bool(true); + if match rt::is_truthy(interp, &__t777) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t900 = Value::sym(interp.intern("shen.free-var-chk")); - rt::apply_direct(interp, "shen.f-error", &[__t900])? + let __t776 = Value::str("partial function shen.free-var-chk"); + rt::apply_direct(interp, "simple-error", &[__t776])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4910,17 +4284,17 @@ pub fn aot_shen_x2e_free_x2d_variable_x2d_error_x2d_message( ))); } #[allow(unused_mut)] - let mut v_V732 = args[0].clone(); + let mut v_V720 = args[0].clone(); #[allow(unused_mut)] - let mut v_V733 = args[1].clone(); + let mut v_V721 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t912 = { - let __t911 = v_V733.clone(); - rt::apply_direct(interp, "empty?", &[__t911])? + let __t788 = { + let __t787 = v_V721.clone(); + rt::apply_direct(interp, "empty?", &[__t787])? }; - if match rt::is_truthy(interp, &__t912) { + if match rt::is_truthy(interp, &__t788) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4928,59 +4302,59 @@ pub fn aot_shen_x2e_free_x2d_variable_x2d_error_x2d_message( } else { { let _ = { - let __t918 = { - let __t913 = Value::str("free variables in "); - let __t917 = { - let __t914 = v_V732.clone(); - let __t915 = Value::str(":"); - let __t916 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t914, __t915, __t916])? + let __t794 = { + let __t789 = Value::str("free variables in "); + let __t793 = { + let __t790 = v_V720.clone(); + let __t791 = Value::str(":"); + let __t792 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t790, __t791, __t792])? }; - rt::apply_direct(interp, "cn", &[__t913, __t917])? + rt::apply_direct(interp, "cn", &[__t789, __t793])? }; - let __t919 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t918, __t919])? + let __t795 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t794, __t795])? }; { let _ = { - let __t927 = { + let __t803 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z734 = args[0].clone(); + let v_Z722 = args[0].clone(); Ok({ - let __t925 = { - let __t920 = Value::str(" "); - let __t924 = { - let __t921 = v_Z734.clone(); - let __t922 = Value::str(""); - let __t923 = + let __t801 = { + let __t796 = Value::str(" "); + let __t800 = { + let __t797 = v_Z722.clone(); + let __t798 = Value::str(""); + let __t799 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t921, __t922, __t923], + &[__t797, __t798, __t799], )? }; - rt::apply_direct(interp, "cn", &[__t920, __t924])? + rt::apply_direct(interp, "cn", &[__t796, __t800])? }; - let __t926 = + let __t802 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t925, __t926])? + rt::apply_direct(interp, "pr", &[__t801, __t802])? }) }, Vec::new(), interp, ) }; - let __t928 = v_V733.clone(); - rt::apply_direct(interp, "shen.for-each", &[__t927, __t928])? + let __t804 = v_V721.clone(); + rt::apply_direct(interp, "map", &[__t803, __t804])? }; { let _ = { - let __t929 = Value::int(1i64); - rt::apply_direct(interp, "nl", &[__t929])? + let __t805 = Value::int(1i64); + rt::apply_direct(interp, "nl", &[__t805])? }; break Ok({ rt::apply_direct(interp, "abort", &[])? }); } @@ -5012,54 +4386,54 @@ pub fn aot_shen_x2e_extract_x2d_vars(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V737 = args[0].clone(); + let mut v_V725 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t942 = { - let __t939 = v_V737.clone(); - rt::apply_direct(interp, "variable?", &[__t939])? + let __t818 = { + let __t815 = v_V725.clone(); + rt::apply_direct(interp, "variable?", &[__t815])? }; - if match rt::is_truthy(interp, &__t942) { + if match rt::is_truthy(interp, &__t818) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t940 = v_V737.clone(); - let __t941 = Value::nil(); - rt::cons(&__t940, &__t941) + let __t816 = v_V725.clone(); + let __t817 = Value::nil(); + rt::cons(&__t816, &__t817) }); } else { { - let __t938 = { - let __t931 = v_V737.clone(); - rt::is_cons(&__t931) + let __t814 = { + let __t807 = v_V725.clone(); + rt::is_cons(&__t807) }; - if match rt::is_truthy(interp, &__t938) { + if match rt::is_truthy(interp, &__t814) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t934 = { - let __t933 = { - let __t932 = v_V737.clone(); - rt::hd(&__t932)? + let __t810 = { + let __t809 = { + let __t808 = v_V725.clone(); + rt::hd(&__t808)? }; - rt::apply_direct(interp, "shen.extract-vars", &[__t933])? + rt::apply_direct(interp, "shen.extract-vars", &[__t809])? }; - let __t937 = { - let __t936 = { - let __t935 = v_V737.clone(); - rt::tl(&__t935)? + let __t813 = { + let __t812 = { + let __t811 = v_V725.clone(); + rt::tl(&__t811)? }; - rt::apply_direct(interp, "shen.extract-vars", &[__t936])? + rt::apply_direct(interp, "shen.extract-vars", &[__t812])? }; - rt::apply_direct(interp, "union", &[__t934, __t937])? + rt::apply_direct(interp, "union", &[__t810, __t813])? }); } else { { - let __t930 = Value::bool(true); - if match rt::is_truthy(interp, &__t930) { + let __t806 = Value::bool(true); + if match rt::is_truthy(interp, &__t806) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5092,391 +4466,382 @@ pub fn aot_shen_x2e_find_x2d_free_x2d_vars( ))); } #[allow(unused_mut)] - let mut v_V742 = args[0].clone(); + let mut v_V730 = args[0].clone(); #[allow(unused_mut)] - let mut v_V743 = args[1].clone(); + let mut v_V731 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1054 = { - let __t1052 = { - let __t1038 = v_V743.clone(); - rt::is_cons(&__t1038) + let __t930 = { + let __t928 = { + let __t914 = v_V731.clone(); + rt::is_cons(&__t914) }; - if !rt::is_truthy(interp, &__t1052)? { + if !rt::is_truthy(interp, &__t928)? { Value::bool(false) } else { - let __t1053 = { - let __t1050 = { - let __t1039 = Value::sym(interp.intern("protect")); - let __t1041 = { - let __t1040 = v_V743.clone(); - rt::hd(&__t1040)? + let __t929 = { + let __t926 = { + let __t915 = Value::sym(interp.intern("protect")); + let __t917 = { + let __t916 = v_V731.clone(); + rt::hd(&__t916)? }; - rt::eq(&__t1039, &__t1041) + rt::eq(&__t915, &__t917) }; - if !rt::is_truthy(interp, &__t1050)? { + if !rt::is_truthy(interp, &__t926)? { Value::bool(false) } else { - let __t1051 = { - let __t1048 = { - let __t1043 = { - let __t1042 = v_V743.clone(); - rt::tl(&__t1042)? + let __t927 = { + let __t924 = { + let __t919 = { + let __t918 = v_V731.clone(); + rt::tl(&__t918)? }; - rt::is_cons(&__t1043) + rt::is_cons(&__t919) }; - if !rt::is_truthy(interp, &__t1048)? { + if !rt::is_truthy(interp, &__t924)? { Value::bool(false) } else { - let __t1049 = { - let __t1044 = Value::nil(); - let __t1047 = { - let __t1046 = { - let __t1045 = v_V743.clone(); - rt::tl(&__t1045)? + let __t925 = { + let __t920 = Value::nil(); + let __t923 = { + let __t922 = { + let __t921 = v_V731.clone(); + rt::tl(&__t921)? }; - rt::tl(&__t1046)? + rt::tl(&__t922)? }; - rt::eq(&__t1044, &__t1047) + rt::eq(&__t920, &__t923) }; - Value::bool(rt::is_truthy(interp, &__t1049)?) + Value::bool(rt::is_truthy(interp, &__t925)?) } }; - Value::bool(rt::is_truthy(interp, &__t1051)?) + Value::bool(rt::is_truthy(interp, &__t927)?) } }; - Value::bool(rt::is_truthy(interp, &__t1053)?) + Value::bool(rt::is_truthy(interp, &__t929)?) } }; - if match rt::is_truthy(interp, &__t1054) { + if match rt::is_truthy(interp, &__t930) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t1037 = { - let __t1018 = { - let __t991 = v_V743.clone(); - rt::is_cons(&__t991) + let __t913 = { + let __t894 = { + let __t867 = v_V731.clone(); + rt::is_cons(&__t867) }; - if !rt::is_truthy(interp, &__t1018)? { + if !rt::is_truthy(interp, &__t894)? { Value::bool(false) } else { - let __t1019 = { - let __t1016 = { - let __t992 = Value::sym(interp.intern("let")); - let __t994 = { - let __t993 = v_V743.clone(); - rt::hd(&__t993)? + let __t895 = { + let __t892 = { + let __t868 = Value::sym(interp.intern("let")); + let __t870 = { + let __t869 = v_V731.clone(); + rt::hd(&__t869)? }; - rt::eq(&__t992, &__t994) + rt::eq(&__t868, &__t870) }; - if !rt::is_truthy(interp, &__t1016)? { + if !rt::is_truthy(interp, &__t892)? { Value::bool(false) } else { - let __t1017 = { - let __t1014 = { - let __t996 = { - let __t995 = v_V743.clone(); - rt::tl(&__t995)? + let __t893 = { + let __t890 = { + let __t872 = { + let __t871 = v_V731.clone(); + rt::tl(&__t871)? }; - rt::is_cons(&__t996) + rt::is_cons(&__t872) }; - if !rt::is_truthy(interp, &__t1014)? { + if !rt::is_truthy(interp, &__t890)? { Value::bool(false) } else { - let __t1015 = { - let __t1012 = { - let __t999 = { - let __t998 = { - let __t997 = v_V743.clone(); - rt::tl(&__t997)? + let __t891 = { + let __t888 = { + let __t875 = { + let __t874 = { + let __t873 = v_V731.clone(); + rt::tl(&__t873)? }; - rt::tl(&__t998)? + rt::tl(&__t874)? }; - rt::is_cons(&__t999) + rt::is_cons(&__t875) }; - if !rt::is_truthy(interp, &__t1012)? { + if !rt::is_truthy(interp, &__t888)? { Value::bool(false) } else { - let __t1013 = { - let __t1010 = { - let __t1003 = { - let __t1002 = { - let __t1001 = { - let __t1000 = - v_V743.clone(); - rt::tl(&__t1000)? + let __t889 = { + let __t886 = { + let __t879 = { + let __t878 = { + let __t877 = { + let __t876 = v_V731.clone(); + rt::tl(&__t876)? }; - rt::tl(&__t1001)? + rt::tl(&__t877)? }; - rt::tl(&__t1002)? + rt::tl(&__t878)? }; - rt::is_cons(&__t1003) + rt::is_cons(&__t879) }; - if !rt::is_truthy(interp, &__t1010)? { + if !rt::is_truthy(interp, &__t886)? { Value::bool(false) } else { - let __t1011 = { - let __t1004 = Value::nil(); - let __t1009 = { - let __t1008 = { - let __t1007 = { - let __t1006 = { - let __t1005 = - v_V743.clone(); - rt::tl(&__t1005)? + let __t887 = { + let __t880 = Value::nil(); + let __t885 = { + let __t884 = { + let __t883 = { + let __t882 = { + let __t881 = + v_V731.clone(); + rt::tl(&__t881)? }; - rt::tl(&__t1006)? + rt::tl(&__t882)? }; - rt::tl(&__t1007)? + rt::tl(&__t883)? }; - rt::tl(&__t1008)? + rt::tl(&__t884)? }; - rt::eq(&__t1004, &__t1009) + rt::eq(&__t880, &__t885) }; Value::bool(rt::is_truthy( - interp, &__t1011, + interp, &__t887, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1013)?) + Value::bool(rt::is_truthy(interp, &__t889)?) } }; - Value::bool(rt::is_truthy(interp, &__t1015)?) + Value::bool(rt::is_truthy(interp, &__t891)?) } }; - Value::bool(rt::is_truthy(interp, &__t1017)?) + Value::bool(rt::is_truthy(interp, &__t893)?) } }; - Value::bool(rt::is_truthy(interp, &__t1019)?) + Value::bool(rt::is_truthy(interp, &__t895)?) } }; - if match rt::is_truthy(interp, &__t1037) { + if match rt::is_truthy(interp, &__t913) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1025 = { - let __t1020 = v_V742.clone(); - let __t1024 = { - let __t1023 = { - let __t1022 = { - let __t1021 = v_V743.clone(); - rt::tl(&__t1021)? + let __t901 = { + let __t896 = v_V730.clone(); + let __t900 = { + let __t899 = { + let __t898 = { + let __t897 = v_V731.clone(); + rt::tl(&__t897)? }; - rt::tl(&__t1022)? + rt::tl(&__t898)? }; - rt::hd(&__t1023)? + rt::hd(&__t899)? }; - rt::apply_direct( - interp, - "shen.find-free-vars", - &[__t1020, __t1024], - )? - }; - let __t1036 = { - let __t1030 = { - let __t1028 = { - let __t1027 = { - let __t1026 = v_V743.clone(); - rt::tl(&__t1026)? + rt::apply_direct(interp, "shen.find-free-vars", &[__t896, __t900])? + }; + let __t912 = { + let __t906 = { + let __t904 = { + let __t903 = { + let __t902 = v_V731.clone(); + rt::tl(&__t902)? }; - rt::hd(&__t1027)? + rt::hd(&__t903)? }; - let __t1029 = v_V742.clone(); - rt::cons(&__t1028, &__t1029) + let __t905 = v_V730.clone(); + rt::cons(&__t904, &__t905) }; - let __t1035 = { - let __t1034 = { - let __t1033 = { - let __t1032 = { - let __t1031 = v_V743.clone(); - rt::tl(&__t1031)? + let __t911 = { + let __t910 = { + let __t909 = { + let __t908 = { + let __t907 = v_V731.clone(); + rt::tl(&__t907)? }; - rt::tl(&__t1032)? + rt::tl(&__t908)? }; - rt::tl(&__t1033)? + rt::tl(&__t909)? }; - rt::hd(&__t1034)? + rt::hd(&__t910)? }; - rt::apply_direct( - interp, - "shen.find-free-vars", - &[__t1030, __t1035], - )? + rt::apply_direct(interp, "shen.find-free-vars", &[__t906, __t911])? }; - rt::apply_direct(interp, "union", &[__t1025, __t1036])? + rt::apply_direct(interp, "union", &[__t901, __t912])? }); } else { { - let __t990 = { - let __t979 = { - let __t959 = v_V743.clone(); - rt::is_cons(&__t959) + let __t866 = { + let __t855 = { + let __t835 = v_V731.clone(); + rt::is_cons(&__t835) }; - if !rt::is_truthy(interp, &__t979)? { + if !rt::is_truthy(interp, &__t855)? { Value::bool(false) } else { - let __t980 = { - let __t977 = { - let __t960 = Value::sym(interp.intern("lambda")); - let __t962 = { - let __t961 = v_V743.clone(); - rt::hd(&__t961)? + let __t856 = { + let __t853 = { + let __t836 = Value::sym(interp.intern("lambda")); + let __t838 = { + let __t837 = v_V731.clone(); + rt::hd(&__t837)? }; - rt::eq(&__t960, &__t962) + rt::eq(&__t836, &__t838) }; - if !rt::is_truthy(interp, &__t977)? { + if !rt::is_truthy(interp, &__t853)? { Value::bool(false) } else { - let __t978 = { - let __t975 = { - let __t964 = { - let __t963 = v_V743.clone(); - rt::tl(&__t963)? + let __t854 = { + let __t851 = { + let __t840 = { + let __t839 = v_V731.clone(); + rt::tl(&__t839)? }; - rt::is_cons(&__t964) + rt::is_cons(&__t840) }; - if !rt::is_truthy(interp, &__t975)? { + if !rt::is_truthy(interp, &__t851)? { Value::bool(false) } else { - let __t976 = { - let __t973 = { - let __t967 = { - let __t966 = { - let __t965 = v_V743.clone(); - rt::tl(&__t965)? + let __t852 = { + let __t849 = { + let __t843 = { + let __t842 = { + let __t841 = v_V731.clone(); + rt::tl(&__t841)? }; - rt::tl(&__t966)? + rt::tl(&__t842)? }; - rt::is_cons(&__t967) + rt::is_cons(&__t843) }; - if !rt::is_truthy(interp, &__t973)? { + if !rt::is_truthy(interp, &__t849)? { Value::bool(false) } else { - let __t974 = { - let __t968 = Value::nil(); - let __t972 = { - let __t971 = { - let __t970 = { - let __t969 = - v_V743.clone(); - rt::tl(&__t969)? + let __t850 = { + let __t844 = Value::nil(); + let __t848 = { + let __t847 = { + let __t846 = { + let __t845 = + v_V731.clone(); + rt::tl(&__t845)? }; - rt::tl(&__t970)? + rt::tl(&__t846)? }; - rt::tl(&__t971)? + rt::tl(&__t847)? }; - rt::eq(&__t968, &__t972) + rt::eq(&__t844, &__t848) }; Value::bool(rt::is_truthy( - interp, &__t974, + interp, &__t850, )?) } }; - Value::bool(rt::is_truthy(interp, &__t976)?) + Value::bool(rt::is_truthy(interp, &__t852)?) } }; - Value::bool(rt::is_truthy(interp, &__t978)?) + Value::bool(rt::is_truthy(interp, &__t854)?) } }; - Value::bool(rt::is_truthy(interp, &__t980)?) + Value::bool(rt::is_truthy(interp, &__t856)?) } }; - if match rt::is_truthy(interp, &__t990) { + if match rt::is_truthy(interp, &__t866) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t985 = { - let __t983 = { - let __t982 = { - let __t981 = v_V743.clone(); - rt::tl(&__t981)? + let __t861 = { + let __t859 = { + let __t858 = { + let __t857 = v_V731.clone(); + rt::tl(&__t857)? }; - rt::hd(&__t982)? + rt::hd(&__t858)? }; - let __t984 = v_V742.clone(); - rt::cons(&__t983, &__t984) + let __t860 = v_V730.clone(); + rt::cons(&__t859, &__t860) }; - let __t989 = { - let __t988 = { - let __t987 = { - let __t986 = v_V743.clone(); - rt::tl(&__t986)? + let __t865 = { + let __t864 = { + let __t863 = { + let __t862 = v_V731.clone(); + rt::tl(&__t862)? }; - rt::tl(&__t987)? + rt::tl(&__t863)? }; - rt::hd(&__t988)? + rt::hd(&__t864)? }; - v_V742 = __t985; - v_V743 = __t989; + v_V730 = __t861; + v_V731 = __t865; continue; } } else { { - let __t958 = { - let __t949 = v_V743.clone(); - rt::is_cons(&__t949) + let __t834 = { + let __t825 = v_V731.clone(); + rt::is_cons(&__t825) }; - if match rt::is_truthy(interp, &__t958) { + if match rt::is_truthy(interp, &__t834) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t953 = { - let __t950 = v_V742.clone(); - let __t952 = { - let __t951 = v_V743.clone(); - rt::hd(&__t951)? + let __t829 = { + let __t826 = v_V730.clone(); + let __t828 = { + let __t827 = v_V731.clone(); + rt::hd(&__t827)? }; rt::apply_direct( interp, "shen.find-free-vars", - &[__t950, __t952], + &[__t826, __t828], )? }; - let __t957 = { - let __t954 = v_V742.clone(); - let __t956 = { - let __t955 = v_V743.clone(); - rt::tl(&__t955)? + let __t833 = { + let __t830 = v_V730.clone(); + let __t832 = { + let __t831 = v_V731.clone(); + rt::tl(&__t831)? }; rt::apply_direct( interp, "shen.find-free-vars", - &[__t954, __t956], + &[__t830, __t832], )? }; - rt::apply_direct(interp, "union", &[__t953, __t957])? + rt::apply_direct(interp, "union", &[__t829, __t833])? }); } else { { - let __t948 = { - let __t944 = v_V743.clone(); - let __t945 = v_V742.clone(); + let __t824 = { + let __t820 = v_V731.clone(); + let __t821 = v_V730.clone(); rt::apply_direct( interp, "shen.free-variable?", - &[__t944, __t945], + &[__t820, __t821], )? }; - if match rt::is_truthy(interp, &__t948) { + if match rt::is_truthy(interp, &__t824) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t946 = v_V743.clone(); - let __t947 = Value::nil(); - rt::cons(&__t946, &__t947) + let __t822 = v_V731.clone(); + let __t823 = Value::nil(); + rt::cons(&__t822, &__t823) }); } else { { - let __t943 = Value::bool(true); - if match rt::is_truthy(interp, &__t943) { + let __t819 = Value::bool(true); + if match rt::is_truthy(interp, &__t819) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5521,29 +4886,29 @@ pub fn aot_shen_x2e_free_x2d_variable_x3f_( ))); } #[allow(unused_mut)] - let mut v_V744 = args[0].clone(); + let mut v_V732 = args[0].clone(); #[allow(unused_mut)] - let mut v_V745 = args[1].clone(); + let mut v_V733 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1056 = { - let __t1055 = v_V744.clone(); - rt::apply_direct(interp, "variable?", &[__t1055])? + let __t932 = { + let __t931 = v_V732.clone(); + rt::apply_direct(interp, "variable?", &[__t931])? }; - if !match rt::is_truthy(interp, &__t1056) { + if !match rt::is_truthy(interp, &__t932) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t1059 = { - let __t1057 = v_V744.clone(); - let __t1058 = v_V745.clone(); - rt::apply_direct(interp, "element?", &[__t1057, __t1058])? + let __t935 = { + let __t933 = v_V732.clone(); + let __t934 = v_V733.clone(); + rt::apply_direct(interp, "element?", &[__t933, __t934])? }; - rt::apply_direct(interp, "not", &[__t1059])? + rt::apply_direct(interp, "not", &[__t935])? }); } } @@ -5568,33 +4933,33 @@ pub fn aot_shen_x2e_record_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V746 = args[0].clone(); + let mut v_V734 = args[0].clone(); #[allow(unused_mut)] - let mut v_V747 = args[1].clone(); + let mut v_V735 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let _ = { - let __t1060 = Value::sym(interp.intern("shen.*userdefs*")); - let __t1064 = { - let __t1061 = v_V746.clone(); - let __t1063 = { - let __t1062 = Value::sym(interp.intern("shen.*userdefs*")); - rt::apply_direct(interp, "value", &[__t1062])? + let __t936 = Value::sym(interp.intern("shen.*userdefs*")); + let __t940 = { + let __t937 = v_V734.clone(); + let __t939 = { + let __t938 = Value::sym(interp.intern("shen.*userdefs*")); + rt::apply_direct(interp, "value", &[__t938])? }; - rt::apply_direct(interp, "adjoin", &[__t1061, __t1063])? + rt::apply_direct(interp, "adjoin", &[__t937, __t939])? }; - rt::apply_direct(interp, "set", &[__t1060, __t1064])? + rt::apply_direct(interp, "set", &[__t936, __t940])? }; break Ok({ - let __t1065 = v_V746.clone(); - let __t1066 = Value::sym(interp.intern("shen.source")); - let __t1067 = v_V747.clone(); - let __t1069 = { - let __t1068 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1068])? + let __t941 = v_V734.clone(); + let __t942 = Value::sym(interp.intern("shen.source")); + let __t943 = v_V735.clone(); + let __t945 = { + let __t944 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t944])? }; - rt::apply_direct(interp, "put", &[__t1065, __t1066, __t1067, __t1069])? + rt::apply_direct(interp, "put", &[__t941, __t942, __t943, __t945])? }); } } @@ -5617,50 +4982,50 @@ pub fn aot_shen_x2e_compile_x2d_to_x2d_kl( ))); } #[allow(unused_mut)] - let mut v_V748 = args[0].clone(); + let mut v_V736 = args[0].clone(); #[allow(unused_mut)] - let mut v_V749 = args[1].clone(); + let mut v_V737 = args[1].clone(); #[allow(unused_mut)] - let mut v_V750 = args[2].clone(); + let mut v_V738 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let v_W751 = { - let __t1070 = v_V750.clone(); - rt::apply_direct(interp, "shen.parameters", &[__t1070])? + let v_W739 = { + let __t946 = v_V738.clone(); + rt::apply_direct(interp, "shen.parameters", &[__t946])? }; { - let v_W752 = { - let __t1071 = v_V748.clone(); - let __t1074 = { - let __t1072 = v_V749.clone(); - let __t1073 = v_W751.clone(); - rt::apply_direct(interp, "shen.kl-body", &[__t1072, __t1073])? + let v_W740 = { + let __t947 = v_V736.clone(); + let __t950 = { + let __t948 = v_V737.clone(); + let __t949 = v_W739.clone(); + rt::apply_direct(interp, "shen.kl-body", &[__t948, __t949])? }; - rt::apply_direct(interp, "shen.scan-body", &[__t1071, __t1074])? + rt::apply_direct(interp, "shen.scan-body", &[__t947, __t950])? }; { - let v_W753 = { - let __t1075 = Value::sym(interp.intern("defun")); - let __t1083 = { - let __t1076 = v_V748.clone(); - let __t1082 = { - let __t1077 = v_W751.clone(); - let __t1081 = { - let __t1079 = { - let __t1078 = v_W752.clone(); - rt::apply_direct(interp, "shen.cond-form", &[__t1078])? + let v_W741 = { + let __t951 = Value::sym(interp.intern("defun")); + let __t959 = { + let __t952 = v_V736.clone(); + let __t958 = { + let __t953 = v_W739.clone(); + let __t957 = { + let __t955 = { + let __t954 = v_W740.clone(); + rt::apply_direct(interp, "shen.cond-form", &[__t954])? }; - let __t1080 = Value::nil(); - rt::cons(&__t1079, &__t1080) + let __t956 = Value::nil(); + rt::cons(&__t955, &__t956) }; - rt::cons(&__t1077, &__t1081) + rt::cons(&__t953, &__t957) }; - rt::cons(&__t1076, &__t1082) + rt::cons(&__t952, &__t958) }; - rt::cons(&__t1075, &__t1083) + rt::cons(&__t951, &__t959) }; - break Ok(v_W753.clone()); + break Ok(v_W741.clone()); } } } @@ -5681,41 +5046,41 @@ pub fn aot_shen_x2e_parameters(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V754 = args[0].clone(); + let mut v_V742 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1093 = { - let __t1091 = Value::int(0i64); - let __t1092 = v_V754.clone(); - rt::eq(&__t1091, &__t1092) + let __t969 = { + let __t967 = Value::int(0i64); + let __t968 = v_V742.clone(); + rt::eq(&__t967, &__t968) }; - if match rt::is_truthy(interp, &__t1093) { + if match rt::is_truthy(interp, &__t969) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t1090 = Value::bool(true); - if match rt::is_truthy(interp, &__t1090) { + let __t966 = Value::bool(true); + if match rt::is_truthy(interp, &__t966) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1085 = { - let __t1084 = Value::sym(interp.intern("V")); - rt::apply_direct(interp, "gensym", &[__t1084])? - }; - let __t1089 = { - let __t1088 = { - let __t1086 = v_V754.clone(); - let __t1087 = Value::int(1i64); - rt::sub(&__t1086, &__t1087)? + let __t961 = { + let __t960 = Value::sym(interp.intern("V")); + rt::apply_direct(interp, "gensym", &[__t960])? + }; + let __t965 = { + let __t964 = { + let __t962 = v_V742.clone(); + let __t963 = Value::int(1i64); + rt::sub(&__t962, &__t963)? }; - rt::apply_direct(interp, "shen.parameters", &[__t1088])? + rt::apply_direct(interp, "shen.parameters", &[__t964])? }; - rt::cons(&__t1085, &__t1089) + rt::cons(&__t961, &__t965) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5740,109 +5105,109 @@ pub fn aot_shen_x2e_cond_x2d_form(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V757 = args[0].clone(); + let mut v_V745 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1123 = { - let __t1118 = { - let __t1097 = v_V757.clone(); - rt::is_cons(&__t1097) + let __t999 = { + let __t994 = { + let __t973 = v_V745.clone(); + rt::is_cons(&__t973) }; - if !rt::is_truthy(interp, &__t1118)? { + if !rt::is_truthy(interp, &__t994)? { Value::bool(false) } else { - let __t1119 = { - let __t1116 = { - let __t1099 = { - let __t1098 = v_V757.clone(); - rt::hd(&__t1098)? + let __t995 = { + let __t992 = { + let __t975 = { + let __t974 = v_V745.clone(); + rt::hd(&__t974)? }; - rt::is_cons(&__t1099) + rt::is_cons(&__t975) }; - if !rt::is_truthy(interp, &__t1116)? { + if !rt::is_truthy(interp, &__t992)? { Value::bool(false) } else { - let __t1117 = { - let __t1114 = { - let __t1100 = Value::bool(true); - let __t1103 = { - let __t1102 = { - let __t1101 = v_V757.clone(); - rt::hd(&__t1101)? + let __t993 = { + let __t990 = { + let __t976 = Value::bool(true); + let __t979 = { + let __t978 = { + let __t977 = v_V745.clone(); + rt::hd(&__t977)? }; - rt::hd(&__t1102)? + rt::hd(&__t978)? }; - rt::eq(&__t1100, &__t1103) + rt::eq(&__t976, &__t979) }; - if !rt::is_truthy(interp, &__t1114)? { + if !rt::is_truthy(interp, &__t990)? { Value::bool(false) } else { - let __t1115 = { - let __t1112 = { - let __t1106 = { - let __t1105 = { - let __t1104 = v_V757.clone(); - rt::hd(&__t1104)? + let __t991 = { + let __t988 = { + let __t982 = { + let __t981 = { + let __t980 = v_V745.clone(); + rt::hd(&__t980)? }; - rt::tl(&__t1105)? + rt::tl(&__t981)? }; - rt::is_cons(&__t1106) + rt::is_cons(&__t982) }; - if !rt::is_truthy(interp, &__t1112)? { + if !rt::is_truthy(interp, &__t988)? { Value::bool(false) } else { - let __t1113 = { - let __t1107 = Value::nil(); - let __t1111 = { - let __t1110 = { - let __t1109 = { - let __t1108 = v_V757.clone(); - rt::hd(&__t1108)? + let __t989 = { + let __t983 = Value::nil(); + let __t987 = { + let __t986 = { + let __t985 = { + let __t984 = v_V745.clone(); + rt::hd(&__t984)? }; - rt::tl(&__t1109)? + rt::tl(&__t985)? }; - rt::tl(&__t1110)? + rt::tl(&__t986)? }; - rt::eq(&__t1107, &__t1111) + rt::eq(&__t983, &__t987) }; - Value::bool(rt::is_truthy(interp, &__t1113)?) + Value::bool(rt::is_truthy(interp, &__t989)?) } }; - Value::bool(rt::is_truthy(interp, &__t1115)?) + Value::bool(rt::is_truthy(interp, &__t991)?) } }; - Value::bool(rt::is_truthy(interp, &__t1117)?) + Value::bool(rt::is_truthy(interp, &__t993)?) } }; - Value::bool(rt::is_truthy(interp, &__t1119)?) + Value::bool(rt::is_truthy(interp, &__t995)?) } }; - if match rt::is_truthy(interp, &__t1123) { + if match rt::is_truthy(interp, &__t999) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1122 = { - let __t1121 = { - let __t1120 = v_V757.clone(); - rt::hd(&__t1120)? + let __t998 = { + let __t997 = { + let __t996 = v_V745.clone(); + rt::hd(&__t996)? }; - rt::tl(&__t1121)? + rt::tl(&__t997)? }; - rt::hd(&__t1122)? + rt::hd(&__t998)? }); } else { { - let __t1096 = Value::bool(true); - if match rt::is_truthy(interp, &__t1096) { + let __t972 = Value::bool(true); + if match rt::is_truthy(interp, &__t972) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1094 = Value::sym(interp.intern("cond")); - let __t1095 = v_V757.clone(); - rt::cons(&__t1094, &__t1095) + let __t970 = Value::sym(interp.intern("cond")); + let __t971 = v_V745.clone(); + rt::cons(&__t970, &__t971) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5867,225 +5232,225 @@ pub fn aot_shen_x2e_scan_x2d_body(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V766 = args[0].clone(); + let mut v_V754 = args[0].clone(); #[allow(unused_mut)] - let mut v_V767 = args[1].clone(); + let mut v_V755 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1188 = { - let __t1176 = Value::nil(); - let __t1177 = v_V767.clone(); - rt::eq(&__t1176, &__t1177) + let __t1064 = { + let __t1052 = Value::nil(); + let __t1053 = v_V755.clone(); + rt::eq(&__t1052, &__t1053) }; - if match rt::is_truthy(interp, &__t1188) { + if match rt::is_truthy(interp, &__t1064) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1186 = { - let __t1178 = Value::bool(true); - let __t1185 = { - let __t1183 = { - let __t1179 = Value::sym(interp.intern("shen.f-error")); - let __t1182 = { - let __t1180 = v_V766.clone(); - let __t1181 = Value::nil(); - rt::cons(&__t1180, &__t1181) + let __t1062 = { + let __t1054 = Value::bool(true); + let __t1061 = { + let __t1059 = { + let __t1055 = Value::sym(interp.intern("shen.f-error")); + let __t1058 = { + let __t1056 = v_V754.clone(); + let __t1057 = Value::nil(); + rt::cons(&__t1056, &__t1057) }; - rt::cons(&__t1179, &__t1182) + rt::cons(&__t1055, &__t1058) }; - let __t1184 = Value::nil(); - rt::cons(&__t1183, &__t1184) + let __t1060 = Value::nil(); + rt::cons(&__t1059, &__t1060) }; - rt::cons(&__t1178, &__t1185) + rt::cons(&__t1054, &__t1061) }; - let __t1187 = Value::nil(); - rt::cons(&__t1186, &__t1187) + let __t1063 = Value::nil(); + rt::cons(&__t1062, &__t1063) }); } else { { - let __t1175 = { - let __t1164 = { - let __t1161 = v_V767.clone(); - rt::is_cons(&__t1161) + let __t1051 = { + let __t1040 = { + let __t1037 = v_V755.clone(); + rt::is_cons(&__t1037) }; - if !rt::is_truthy(interp, &__t1164)? { + if !rt::is_truthy(interp, &__t1040)? { Value::bool(false) } else { - let __t1165 = { - let __t1163 = { - let __t1162 = v_V767.clone(); - rt::hd(&__t1162)? + let __t1041 = { + let __t1039 = { + let __t1038 = v_V755.clone(); + rt::hd(&__t1038)? }; - rt::apply_direct(interp, "shen.choicepoint?", &[__t1163])? + rt::apply_direct(interp, "shen.choicepoint?", &[__t1039])? }; - Value::bool(rt::is_truthy(interp, &__t1165)?) + Value::bool(rt::is_truthy(interp, &__t1041)?) } }; - if match rt::is_truthy(interp, &__t1175) { + if match rt::is_truthy(interp, &__t1051) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1166 = v_V766.clone(); - let __t1168 = { - let __t1167 = Value::sym(interp.intern("Freeze")); - rt::apply_direct(interp, "gensym", &[__t1167])? + let __t1042 = v_V754.clone(); + let __t1044 = { + let __t1043 = Value::sym(interp.intern("Freeze")); + rt::apply_direct(interp, "gensym", &[__t1043])? }; - let __t1170 = { - let __t1169 = Value::sym(interp.intern("Result")); - rt::apply_direct(interp, "gensym", &[__t1169])? + let __t1046 = { + let __t1045 = Value::sym(interp.intern("Result")); + rt::apply_direct(interp, "gensym", &[__t1045])? }; - let __t1172 = { - let __t1171 = v_V767.clone(); - rt::hd(&__t1171)? + let __t1048 = { + let __t1047 = v_V755.clone(); + rt::hd(&__t1047)? }; - let __t1174 = { - let __t1173 = v_V767.clone(); - rt::tl(&__t1173)? + let __t1050 = { + let __t1049 = v_V755.clone(); + rt::tl(&__t1049)? }; rt::apply_direct( interp, "shen.choicepoint", - &[__t1166, __t1168, __t1170, __t1172, __t1174], + &[__t1042, __t1044, __t1046, __t1048, __t1050], )? }); } else { { - let __t1160 = { - let __t1155 = { - let __t1134 = v_V767.clone(); - rt::is_cons(&__t1134) + let __t1036 = { + let __t1031 = { + let __t1010 = v_V755.clone(); + rt::is_cons(&__t1010) }; - if !rt::is_truthy(interp, &__t1155)? { + if !rt::is_truthy(interp, &__t1031)? { Value::bool(false) } else { - let __t1156 = { - let __t1153 = { - let __t1136 = { - let __t1135 = v_V767.clone(); - rt::hd(&__t1135)? + let __t1032 = { + let __t1029 = { + let __t1012 = { + let __t1011 = v_V755.clone(); + rt::hd(&__t1011)? }; - rt::is_cons(&__t1136) + rt::is_cons(&__t1012) }; - if !rt::is_truthy(interp, &__t1153)? { + if !rt::is_truthy(interp, &__t1029)? { Value::bool(false) } else { - let __t1154 = { - let __t1151 = { - let __t1137 = Value::bool(true); - let __t1140 = { - let __t1139 = { - let __t1138 = v_V767.clone(); - rt::hd(&__t1138)? + let __t1030 = { + let __t1027 = { + let __t1013 = Value::bool(true); + let __t1016 = { + let __t1015 = { + let __t1014 = v_V755.clone(); + rt::hd(&__t1014)? }; - rt::hd(&__t1139)? + rt::hd(&__t1015)? }; - rt::eq(&__t1137, &__t1140) + rt::eq(&__t1013, &__t1016) }; - if !rt::is_truthy(interp, &__t1151)? { + if !rt::is_truthy(interp, &__t1027)? { Value::bool(false) } else { - let __t1152 = { - let __t1149 = { - let __t1143 = { - let __t1142 = { - let __t1141 = v_V767.clone(); - rt::hd(&__t1141)? + let __t1028 = { + let __t1025 = { + let __t1019 = { + let __t1018 = { + let __t1017 = v_V755.clone(); + rt::hd(&__t1017)? }; - rt::tl(&__t1142)? + rt::tl(&__t1018)? }; - rt::is_cons(&__t1143) + rt::is_cons(&__t1019) }; - if !rt::is_truthy(interp, &__t1149)? { + if !rt::is_truthy(interp, &__t1025)? { Value::bool(false) } else { - let __t1150 = { - let __t1144 = Value::nil(); - let __t1148 = { - let __t1147 = { - let __t1146 = { - let __t1145 = - v_V767.clone(); - rt::hd(&__t1145)? + let __t1026 = { + let __t1020 = Value::nil(); + let __t1024 = { + let __t1023 = { + let __t1022 = { + let __t1021 = + v_V755.clone(); + rt::hd(&__t1021)? }; - rt::tl(&__t1146)? + rt::tl(&__t1022)? }; - rt::tl(&__t1147)? + rt::tl(&__t1023)? }; - rt::eq(&__t1144, &__t1148) + rt::eq(&__t1020, &__t1024) }; Value::bool(rt::is_truthy( - interp, &__t1150, + interp, &__t1026, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1152)?) + Value::bool(rt::is_truthy(interp, &__t1028)?) } }; - Value::bool(rt::is_truthy(interp, &__t1154)?) + Value::bool(rt::is_truthy(interp, &__t1030)?) } }; - Value::bool(rt::is_truthy(interp, &__t1156)?) + Value::bool(rt::is_truthy(interp, &__t1032)?) } }; - if match rt::is_truthy(interp, &__t1160) { + if match rt::is_truthy(interp, &__t1036) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1158 = { - let __t1157 = v_V767.clone(); - rt::hd(&__t1157)? + let __t1034 = { + let __t1033 = v_V755.clone(); + rt::hd(&__t1033)? }; - let __t1159 = Value::nil(); - rt::cons(&__t1158, &__t1159) + let __t1035 = Value::nil(); + rt::cons(&__t1034, &__t1035) }); } else { { - let __t1133 = { - let __t1126 = v_V767.clone(); - rt::is_cons(&__t1126) + let __t1009 = { + let __t1002 = v_V755.clone(); + rt::is_cons(&__t1002) }; - if match rt::is_truthy(interp, &__t1133) { + if match rt::is_truthy(interp, &__t1009) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1128 = { - let __t1127 = v_V767.clone(); - rt::hd(&__t1127)? + let __t1004 = { + let __t1003 = v_V755.clone(); + rt::hd(&__t1003)? }; - let __t1132 = { - let __t1129 = v_V766.clone(); - let __t1131 = { - let __t1130 = v_V767.clone(); - rt::tl(&__t1130)? + let __t1008 = { + let __t1005 = v_V754.clone(); + let __t1007 = { + let __t1006 = v_V755.clone(); + rt::tl(&__t1006)? }; rt::apply_direct( interp, "shen.scan-body", - &[__t1129, __t1131], + &[__t1005, __t1007], )? }; - rt::cons(&__t1128, &__t1132) + rt::cons(&__t1004, &__t1008) }); } else { { - let __t1125 = Value::bool(true); - if match rt::is_truthy(interp, &__t1125) { + let __t1001 = Value::bool(true); + if match rt::is_truthy(interp, &__t1001) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1124 = Value::str( + let __t1000 = Value::str( "implementation error in shen.scan-body", ); rt::apply_direct( interp, "simple-error", - &[__t1124], + &[__t1000], )? }); } else { @@ -6119,142 +5484,142 @@ pub fn aot_shen_x2e_choicepoint_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V774 = args[0].clone(); + let mut v_V762 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1227 = { - let __t1225 = { - let __t1190 = v_V774.clone(); - rt::is_cons(&__t1190) + let __t1103 = { + let __t1101 = { + let __t1066 = v_V762.clone(); + rt::is_cons(&__t1066) }; - if !rt::is_truthy(interp, &__t1225)? { + if !rt::is_truthy(interp, &__t1101)? { Value::bool(false) } else { - let __t1226 = { - let __t1223 = { - let __t1192 = { - let __t1191 = v_V774.clone(); - rt::tl(&__t1191)? + let __t1102 = { + let __t1099 = { + let __t1068 = { + let __t1067 = v_V762.clone(); + rt::tl(&__t1067)? }; - rt::is_cons(&__t1192) + rt::is_cons(&__t1068) }; - if !rt::is_truthy(interp, &__t1223)? { + if !rt::is_truthy(interp, &__t1099)? { Value::bool(false) } else { - let __t1224 = { - let __t1221 = { - let __t1195 = { - let __t1194 = { - let __t1193 = v_V774.clone(); - rt::tl(&__t1193)? + let __t1100 = { + let __t1097 = { + let __t1071 = { + let __t1070 = { + let __t1069 = v_V762.clone(); + rt::tl(&__t1069)? }; - rt::hd(&__t1194)? + rt::hd(&__t1070)? }; - rt::is_cons(&__t1195) + rt::is_cons(&__t1071) }; - if !rt::is_truthy(interp, &__t1221)? { + if !rt::is_truthy(interp, &__t1097)? { Value::bool(false) } else { - let __t1222 = { - let __t1219 = { - let __t1196 = + let __t1098 = { + let __t1095 = { + let __t1072 = Value::sym(interp.intern("shen.choicepoint!")); - let __t1200 = { - let __t1199 = { - let __t1198 = { - let __t1197 = v_V774.clone(); - rt::tl(&__t1197)? + let __t1076 = { + let __t1075 = { + let __t1074 = { + let __t1073 = v_V762.clone(); + rt::tl(&__t1073)? }; - rt::hd(&__t1198)? + rt::hd(&__t1074)? }; - rt::hd(&__t1199)? + rt::hd(&__t1075)? }; - rt::eq(&__t1196, &__t1200) + rt::eq(&__t1072, &__t1076) }; - if !rt::is_truthy(interp, &__t1219)? { + if !rt::is_truthy(interp, &__t1095)? { Value::bool(false) } else { - let __t1220 = { - let __t1217 = { - let __t1204 = { - let __t1203 = { - let __t1202 = { - let __t1201 = v_V774.clone(); - rt::tl(&__t1201)? + let __t1096 = { + let __t1093 = { + let __t1080 = { + let __t1079 = { + let __t1078 = { + let __t1077 = v_V762.clone(); + rt::tl(&__t1077)? }; - rt::hd(&__t1202)? + rt::hd(&__t1078)? }; - rt::tl(&__t1203)? + rt::tl(&__t1079)? }; - rt::is_cons(&__t1204) + rt::is_cons(&__t1080) }; - if !rt::is_truthy(interp, &__t1217)? { + if !rt::is_truthy(interp, &__t1093)? { Value::bool(false) } else { - let __t1218 = { - let __t1215 = { - let __t1205 = Value::nil(); - let __t1210 = { - let __t1209 = { - let __t1208 = { - let __t1207 = { - let __t1206 = - v_V774.clone(); - rt::tl(&__t1206)? + let __t1094 = { + let __t1091 = { + let __t1081 = Value::nil(); + let __t1086 = { + let __t1085 = { + let __t1084 = { + let __t1083 = { + let __t1082 = + v_V762.clone(); + rt::tl(&__t1082)? }; - rt::hd(&__t1207)? + rt::hd(&__t1083)? }; - rt::tl(&__t1208)? + rt::tl(&__t1084)? }; - rt::tl(&__t1209)? + rt::tl(&__t1085)? }; - rt::eq(&__t1205, &__t1210) + rt::eq(&__t1081, &__t1086) }; - if !rt::is_truthy(interp, &__t1215)? { + if !rt::is_truthy(interp, &__t1091)? { Value::bool(false) } else { - let __t1216 = { - let __t1211 = Value::nil(); - let __t1214 = { - let __t1213 = { - let __t1212 = - v_V774.clone(); - rt::tl(&__t1212)? + let __t1092 = { + let __t1087 = Value::nil(); + let __t1090 = { + let __t1089 = { + let __t1088 = + v_V762.clone(); + rt::tl(&__t1088)? }; - rt::tl(&__t1213)? + rt::tl(&__t1089)? }; - rt::eq(&__t1211, &__t1214) + rt::eq(&__t1087, &__t1090) }; Value::bool(rt::is_truthy( - interp, &__t1216, + interp, &__t1092, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1218)?) + Value::bool(rt::is_truthy(interp, &__t1094)?) } }; - Value::bool(rt::is_truthy(interp, &__t1220)?) + Value::bool(rt::is_truthy(interp, &__t1096)?) } }; - Value::bool(rt::is_truthy(interp, &__t1222)?) + Value::bool(rt::is_truthy(interp, &__t1098)?) } }; - Value::bool(rt::is_truthy(interp, &__t1224)?) + Value::bool(rt::is_truthy(interp, &__t1100)?) } }; - Value::bool(rt::is_truthy(interp, &__t1226)?) + Value::bool(rt::is_truthy(interp, &__t1102)?) } }; - if match rt::is_truthy(interp, &__t1227) { + if match rt::is_truthy(interp, &__t1103) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1189 = Value::bool(true); - if match rt::is_truthy(interp, &__t1189) { + let __t1065 = Value::bool(true); + if match rt::is_truthy(interp, &__t1065) { Ok(b) => b, Err(e) => break Err(e), } { @@ -6282,714 +5647,714 @@ pub fn aot_shen_x2e_choicepoint(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V790 = args[0].clone(); + let mut v_V778 = args[0].clone(); #[allow(unused_mut)] - let mut v_V791 = args[1].clone(); + let mut v_V779 = args[1].clone(); #[allow(unused_mut)] - let mut v_V792 = args[2].clone(); + let mut v_V780 = args[2].clone(); #[allow(unused_mut)] - let mut v_V793 = args[3].clone(); + let mut v_V781 = args[3].clone(); #[allow(unused_mut)] - let mut v_V794 = args[4].clone(); + let mut v_V782 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t1490 = { - let __t1410 = { - let __t1328 = v_V793.clone(); - rt::is_cons(&__t1328) + let __t1366 = { + let __t1286 = { + let __t1204 = v_V781.clone(); + rt::is_cons(&__t1204) }; - if !rt::is_truthy(interp, &__t1410)? { + if !rt::is_truthy(interp, &__t1286)? { Value::bool(false) } else { - let __t1411 = { - let __t1408 = { - let __t1330 = { - let __t1329 = v_V793.clone(); - rt::tl(&__t1329)? + let __t1287 = { + let __t1284 = { + let __t1206 = { + let __t1205 = v_V781.clone(); + rt::tl(&__t1205)? }; - rt::is_cons(&__t1330) + rt::is_cons(&__t1206) }; - if !rt::is_truthy(interp, &__t1408)? { + if !rt::is_truthy(interp, &__t1284)? { Value::bool(false) } else { - let __t1409 = { - let __t1406 = { - let __t1333 = { - let __t1332 = { - let __t1331 = v_V793.clone(); - rt::tl(&__t1331)? + let __t1285 = { + let __t1282 = { + let __t1209 = { + let __t1208 = { + let __t1207 = v_V781.clone(); + rt::tl(&__t1207)? }; - rt::hd(&__t1332)? + rt::hd(&__t1208)? }; - rt::is_cons(&__t1333) + rt::is_cons(&__t1209) }; - if !rt::is_truthy(interp, &__t1406)? { + if !rt::is_truthy(interp, &__t1282)? { Value::bool(false) } else { - let __t1407 = { - let __t1404 = { - let __t1337 = { - let __t1336 = { - let __t1335 = { - let __t1334 = v_V793.clone(); - rt::tl(&__t1334)? + let __t1283 = { + let __t1280 = { + let __t1213 = { + let __t1212 = { + let __t1211 = { + let __t1210 = v_V781.clone(); + rt::tl(&__t1210)? }; - rt::hd(&__t1335)? + rt::hd(&__t1211)? }; - rt::tl(&__t1336)? + rt::tl(&__t1212)? }; - rt::is_cons(&__t1337) + rt::is_cons(&__t1213) }; - if !rt::is_truthy(interp, &__t1404)? { + if !rt::is_truthy(interp, &__t1280)? { Value::bool(false) } else { - let __t1405 = { - let __t1402 = { - let __t1342 = { - let __t1341 = { - let __t1340 = { - let __t1339 = { - let __t1338 = v_V793.clone(); - rt::tl(&__t1338)? + let __t1281 = { + let __t1278 = { + let __t1218 = { + let __t1217 = { + let __t1216 = { + let __t1215 = { + let __t1214 = v_V781.clone(); + rt::tl(&__t1214)? }; - rt::hd(&__t1339)? + rt::hd(&__t1215)? }; - rt::tl(&__t1340)? + rt::tl(&__t1216)? }; - rt::hd(&__t1341)? + rt::hd(&__t1217)? }; - rt::is_cons(&__t1342) + rt::is_cons(&__t1218) }; - if !rt::is_truthy(interp, &__t1402)? { + if !rt::is_truthy(interp, &__t1278)? { Value::bool(false) } else { - let __t1403 = { - let __t1400 = { - let __t1343 = Value::sym( + let __t1279 = { + let __t1276 = { + let __t1219 = Value::sym( interp.intern("fail-if"), ); - let __t1349 = { - let __t1348 = { - let __t1347 = { - let __t1346 = { - let __t1345 = { - let __t1344 = - v_V793.clone(); - rt::tl(&__t1344)? + let __t1225 = { + let __t1224 = { + let __t1223 = { + let __t1222 = { + let __t1221 = { + let __t1220 = + v_V781.clone(); + rt::tl(&__t1220)? }; - rt::hd(&__t1345)? + rt::hd(&__t1221)? }; - rt::tl(&__t1346)? + rt::tl(&__t1222)? }; - rt::hd(&__t1347)? + rt::hd(&__t1223)? }; - rt::hd(&__t1348)? + rt::hd(&__t1224)? }; - rt::eq(&__t1343, &__t1349) + rt::eq(&__t1219, &__t1225) }; - if !rt::is_truthy(interp, &__t1400)? { + if !rt::is_truthy(interp, &__t1276)? { Value::bool(false) } else { - let __t1401 = { - let __t1398 = { - let __t1355 = { - let __t1354 = { - let __t1353 = { - let __t1352 = { - let __t1351 = { - let __t1350 = v_V793.clone(); - rt::tl(&__t1350)? + let __t1277 = { + let __t1274 = { + let __t1231 = { + let __t1230 = { + let __t1229 = { + let __t1228 = { + let __t1227 = { + let __t1226 = v_V781.clone(); + rt::tl(&__t1226)? }; rt::hd( - &__t1351, + &__t1227, )? }; - rt::tl(&__t1352)? + rt::tl(&__t1228)? }; - rt::hd(&__t1353)? + rt::hd(&__t1229)? }; - rt::tl(&__t1354)? + rt::tl(&__t1230)? }; - rt::is_cons(&__t1355) + rt::is_cons(&__t1231) }; - if !rt::is_truthy(interp, &__t1398)? + if !rt::is_truthy(interp, &__t1274)? { Value::bool(false) } else { - let __t1399 = { - let __t1396 = { - let __t1362 = { - let __t1361 = { - let __t1360 = { - let __t1359 = { - let __t1358 = { - let __t1357 = { let __t1356 = v_V793.clone(); rt::tl(&__t1356)? }; - rt::hd(&__t1357)? + let __t1275 = { + let __t1272 = { + let __t1238 = { + let __t1237 = { + let __t1236 = { + let __t1235 = { + let __t1234 = { + let __t1233 = { let __t1232 = v_V781.clone(); rt::tl(&__t1232)? }; + rt::hd(&__t1233)? }; - rt::tl(&__t1358)? + rt::tl(&__t1234)? }; - rt::hd(&__t1359)? + rt::hd(&__t1235)? }; rt::tl( - &__t1360, + &__t1236, )? }; - rt::tl(&__t1361)? + rt::tl(&__t1237)? }; - rt::is_cons(&__t1362) + rt::is_cons(&__t1238) }; if !rt::is_truthy( - interp, &__t1396, + interp, &__t1272, )? { Value::bool(false) } else { - let __t1397 = { - let __t1394 = { - let __t1363 = + let __t1273 = { + let __t1270 = { + let __t1239 = Value::nil( ); - let __t1371 = { - let __t1370 = { - let __t1369 = { - let __t1368 = { let __t1367 = { let __t1366 = { let __t1365 = { let __t1364 = v_V793.clone(); rt::tl(&__t1364)? }; rt::hd(&__t1365)? }; rt::tl(&__t1366)? }; rt::hd(&__t1367)? }; - rt::tl(&__t1368)? + let __t1247 = { + let __t1246 = { + let __t1245 = { + let __t1244 = { let __t1243 = { let __t1242 = { let __t1241 = { let __t1240 = v_V781.clone(); rt::tl(&__t1240)? }; rt::hd(&__t1241)? }; rt::tl(&__t1242)? }; rt::hd(&__t1243)? }; + rt::tl(&__t1244)? }; - rt::tl(&__t1369)? + rt::tl(&__t1245)? }; - rt::tl(&__t1370)? + rt::tl(&__t1246)? }; rt::eq( - &__t1363, - &__t1371, + &__t1239, + &__t1247, ) }; if !rt::is_truthy( interp, - &__t1394, + &__t1270, )? { Value::bool( false, ) } else { - let __t1395 = { - let __t1392 = { - let __t1372 = Value::nil(); - let __t1377 = { - let __t1376 = { let __t1375 = { let __t1374 = { let __t1373 = v_V793.clone(); rt::tl(&__t1373)? }; rt::hd(&__t1374)? }; rt::tl(&__t1375)? }; - rt::tl(&__t1376)? + let __t1271 = { + let __t1268 = { + let __t1248 = Value::nil(); + let __t1253 = { + let __t1252 = { let __t1251 = { let __t1250 = { let __t1249 = v_V781.clone(); rt::tl(&__t1249)? }; rt::hd(&__t1250)? }; rt::tl(&__t1251)? }; + rt::tl(&__t1252)? }; - rt::eq(&__t1372, &__t1377) + rt::eq(&__t1248, &__t1253) }; - if !rt::is_truthy(interp, &__t1392)? { Value::bool(false) } else { let __t1393 = { let __t1390 = { let __t1378 = Value::nil(); let __t1381 = { let __t1380 = { let __t1379 = v_V793.clone(); rt::tl(&__t1379)? }; rt::tl(&__t1380)? }; rt::eq(&__t1378, &__t1381) }; if !rt::is_truthy(interp, &__t1390)? { Value::bool(false) } else { let __t1391 = { let __t1382 = v_V790.clone(); let __t1389 = { let __t1388 = { let __t1387 = { let __t1386 = { let __t1385 = { let __t1384 = { let __t1383 = v_V793.clone(); rt::tl(&__t1383)? }; rt::hd(&__t1384)? }; rt::tl(&__t1385)? }; rt::hd(&__t1386)? }; rt::tl(&__t1387)? }; rt::hd(&__t1388)? }; rt::eq(&__t1382, &__t1389) }; Value::bool(rt::is_truthy(interp, &__t1391)?) } }; Value::bool(rt::is_truthy(interp, &__t1393)?) } + if !rt::is_truthy(interp, &__t1268)? { Value::bool(false) } else { let __t1269 = { let __t1266 = { let __t1254 = Value::nil(); let __t1257 = { let __t1256 = { let __t1255 = v_V781.clone(); rt::tl(&__t1255)? }; rt::tl(&__t1256)? }; rt::eq(&__t1254, &__t1257) }; if !rt::is_truthy(interp, &__t1266)? { Value::bool(false) } else { let __t1267 = { let __t1258 = v_V778.clone(); let __t1265 = { let __t1264 = { let __t1263 = { let __t1262 = { let __t1261 = { let __t1260 = { let __t1259 = v_V781.clone(); rt::tl(&__t1259)? }; rt::hd(&__t1260)? }; rt::tl(&__t1261)? }; rt::hd(&__t1262)? }; rt::tl(&__t1263)? }; rt::hd(&__t1264)? }; rt::eq(&__t1258, &__t1265) }; Value::bool(rt::is_truthy(interp, &__t1267)?) } }; Value::bool(rt::is_truthy(interp, &__t1269)?) } }; - Value::bool(rt::is_truthy(interp, &__t1395)?) + Value::bool(rt::is_truthy(interp, &__t1271)?) } }; Value::bool( rt::is_truthy( interp, - &__t1397, + &__t1273, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t1399, + interp, &__t1275, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1401, + interp, &__t1277, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1403)?) + Value::bool(rt::is_truthy(interp, &__t1279)?) } }; - Value::bool(rt::is_truthy(interp, &__t1405)?) + Value::bool(rt::is_truthy(interp, &__t1281)?) } }; - Value::bool(rt::is_truthy(interp, &__t1407)?) + Value::bool(rt::is_truthy(interp, &__t1283)?) } }; - Value::bool(rt::is_truthy(interp, &__t1409)?) + Value::bool(rt::is_truthy(interp, &__t1285)?) } }; - Value::bool(rt::is_truthy(interp, &__t1411)?) + Value::bool(rt::is_truthy(interp, &__t1287)?) } }; - if match rt::is_truthy(interp, &__t1490) { + if match rt::is_truthy(interp, &__t1366) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1488 = { - let __t1412 = Value::bool(true); - let __t1487 = { - let __t1485 = { - let __t1413 = Value::sym(interp.intern("let")); - let __t1484 = { - let __t1414 = v_V791.clone(); - let __t1483 = { - let __t1429 = { - let __t1415 = Value::sym(interp.intern("freeze")); - let __t1428 = { - let __t1426 = { - let __t1416 = Value::sym(interp.intern("cond")); - let __t1425 = { - let __t1423 = { - let __t1422 = { - let __t1421 = { - let __t1420 = { - let __t1419 = { - let __t1418 = { - let __t1417 = - v_V793.clone(); - rt::tl(&__t1417)? + let __t1364 = { + let __t1288 = Value::bool(true); + let __t1363 = { + let __t1361 = { + let __t1289 = Value::sym(interp.intern("let")); + let __t1360 = { + let __t1290 = v_V779.clone(); + let __t1359 = { + let __t1305 = { + let __t1291 = Value::sym(interp.intern("freeze")); + let __t1304 = { + let __t1302 = { + let __t1292 = Value::sym(interp.intern("cond")); + let __t1301 = { + let __t1299 = { + let __t1298 = { + let __t1297 = { + let __t1296 = { + let __t1295 = { + let __t1294 = { + let __t1293 = + v_V781.clone(); + rt::tl(&__t1293)? }; - rt::hd(&__t1418)? + rt::hd(&__t1294)? }; - rt::tl(&__t1419)? + rt::tl(&__t1295)? }; - rt::hd(&__t1420)? + rt::hd(&__t1296)? }; - rt::tl(&__t1421)? + rt::tl(&__t1297)? }; - rt::hd(&__t1422)? + rt::hd(&__t1298)? }; - let __t1424 = v_V794.clone(); + let __t1300 = v_V782.clone(); rt::apply_direct( interp, "shen.scan-body", - &[__t1423, __t1424], + &[__t1299, __t1300], )? }; - rt::cons(&__t1416, &__t1425) + rt::cons(&__t1292, &__t1301) }; - let __t1427 = Value::nil(); - rt::cons(&__t1426, &__t1427) + let __t1303 = Value::nil(); + rt::cons(&__t1302, &__t1303) }; - rt::cons(&__t1415, &__t1428) + rt::cons(&__t1291, &__t1304) }; - let __t1482 = { - let __t1480 = { - let __t1430 = Value::sym(interp.intern("if")); - let __t1479 = { - let __t1432 = { - let __t1431 = v_V793.clone(); - rt::hd(&__t1431)? + let __t1358 = { + let __t1356 = { + let __t1306 = Value::sym(interp.intern("if")); + let __t1355 = { + let __t1308 = { + let __t1307 = v_V781.clone(); + rt::hd(&__t1307)? }; - let __t1478 = { - let __t1470 = { - let __t1433 = + let __t1354 = { + let __t1346 = { + let __t1309 = Value::sym(interp.intern("let")); - let __t1469 = { - let __t1434 = v_V792.clone(); - let __t1468 = { - let __t1442 = { - let __t1441 = { - let __t1440 = { - let __t1439 = { - let __t1438 = { - let __t1437 = { - let __t1436 = { - let __t1435 = v_V793.clone(); - rt::tl(&__t1435)? + let __t1345 = { + let __t1310 = v_V780.clone(); + let __t1344 = { + let __t1318 = { + let __t1317 = { + let __t1316 = { + let __t1315 = { + let __t1314 = { + let __t1313 = { + let __t1312 = { + let __t1311 = v_V781.clone(); + rt::tl(&__t1311)? }; - rt::hd(&__t1436)? + rt::hd(&__t1312)? }; - rt::tl(&__t1437)? + rt::tl(&__t1313)? }; rt::hd( - &__t1438, + &__t1314, )? }; - rt::tl(&__t1439)? + rt::tl(&__t1315)? }; - rt::tl(&__t1440)? + rt::tl(&__t1316)? }; - rt::hd(&__t1441)? + rt::hd(&__t1317)? }; - let __t1467 = { - let __t1465 = { - let __t1443 = + let __t1343 = { + let __t1341 = { + let __t1319 = Value::sym( interp.intern( "if", ), ); - let __t1464 = { - let __t1454 = { - let __t1450 = { - let __t1449 = { - let __t1448 = { - let __t1447 = { let __t1446 = { let __t1445 = { let __t1444 = v_V793.clone(); rt::tl(&__t1444)? }; rt::hd(&__t1445)? }; rt::tl(&__t1446)? }; - rt::hd(&__t1447)? + let __t1340 = { + let __t1330 = { + let __t1326 = { + let __t1325 = { + let __t1324 = { + let __t1323 = { let __t1322 = { let __t1321 = { let __t1320 = v_V781.clone(); rt::tl(&__t1320)? }; rt::hd(&__t1321)? }; rt::tl(&__t1322)? }; + rt::hd(&__t1323)? }; - rt::tl(&__t1448)? + rt::tl(&__t1324)? }; - rt::hd(&__t1449)? + rt::hd(&__t1325)? }; - let __t1453 = { - let __t1451 = v_V792.clone(); - let __t1452 = Value::nil(); - rt::cons(&__t1451, &__t1452) + let __t1329 = { + let __t1327 = v_V780.clone(); + let __t1328 = Value::nil(); + rt::cons(&__t1327, &__t1328) }; rt::cons( - &__t1450, - &__t1453, + &__t1326, + &__t1329, ) }; - let __t1463 = { - let __t1459 = { - let __t1455 = Value::sym(interp.intern("thaw")); - let __t1458 = { - let __t1456 = v_V791.clone(); - let __t1457 = Value::nil(); - rt::cons(&__t1456, &__t1457) + let __t1339 = { + let __t1335 = { + let __t1331 = Value::sym(interp.intern("thaw")); + let __t1334 = { + let __t1332 = v_V779.clone(); + let __t1333 = Value::nil(); + rt::cons(&__t1332, &__t1333) }; - rt::cons(&__t1455, &__t1458) + rt::cons(&__t1331, &__t1334) }; - let __t1462 = { - let __t1460 = v_V792.clone(); - let __t1461 = Value::nil(); - rt::cons(&__t1460, &__t1461) + let __t1338 = { + let __t1336 = v_V780.clone(); + let __t1337 = Value::nil(); + rt::cons(&__t1336, &__t1337) }; rt::cons( - &__t1459, - &__t1462, + &__t1335, + &__t1338, ) }; rt::cons( - &__t1454, - &__t1463, + &__t1330, + &__t1339, ) }; rt::cons( - &__t1443, &__t1464, + &__t1319, &__t1340, ) }; - let __t1466 = Value::nil(); - rt::cons(&__t1465, &__t1466) + let __t1342 = Value::nil(); + rt::cons(&__t1341, &__t1342) }; - rt::cons(&__t1442, &__t1467) + rt::cons(&__t1318, &__t1343) }; - rt::cons(&__t1434, &__t1468) + rt::cons(&__t1310, &__t1344) }; - rt::cons(&__t1433, &__t1469) + rt::cons(&__t1309, &__t1345) }; - let __t1477 = { - let __t1475 = { - let __t1471 = Value::sym( + let __t1353 = { + let __t1351 = { + let __t1347 = Value::sym( interp.intern("thaw"), ); - let __t1474 = { - let __t1472 = v_V791.clone(); - let __t1473 = Value::nil(); - rt::cons(&__t1472, &__t1473) + let __t1350 = { + let __t1348 = v_V779.clone(); + let __t1349 = Value::nil(); + rt::cons(&__t1348, &__t1349) }; - rt::cons(&__t1471, &__t1474) + rt::cons(&__t1347, &__t1350) }; - let __t1476 = Value::nil(); - rt::cons(&__t1475, &__t1476) + let __t1352 = Value::nil(); + rt::cons(&__t1351, &__t1352) }; - rt::cons(&__t1470, &__t1477) + rt::cons(&__t1346, &__t1353) }; - rt::cons(&__t1432, &__t1478) + rt::cons(&__t1308, &__t1354) }; - rt::cons(&__t1430, &__t1479) + rt::cons(&__t1306, &__t1355) }; - let __t1481 = Value::nil(); - rt::cons(&__t1480, &__t1481) + let __t1357 = Value::nil(); + rt::cons(&__t1356, &__t1357) }; - rt::cons(&__t1429, &__t1482) + rt::cons(&__t1305, &__t1358) }; - rt::cons(&__t1414, &__t1483) + rt::cons(&__t1290, &__t1359) }; - rt::cons(&__t1413, &__t1484) + rt::cons(&__t1289, &__t1360) }; - let __t1486 = Value::nil(); - rt::cons(&__t1485, &__t1486) + let __t1362 = Value::nil(); + rt::cons(&__t1361, &__t1362) }; - rt::cons(&__t1412, &__t1487) + rt::cons(&__t1288, &__t1363) }; - let __t1489 = Value::nil(); - rt::cons(&__t1488, &__t1489) + let __t1365 = Value::nil(); + rt::cons(&__t1364, &__t1365) }); } else { { - let __t1327 = { - let __t1258 = { - let __t1230 = v_V793.clone(); - rt::is_cons(&__t1230) + let __t1203 = { + let __t1134 = { + let __t1106 = v_V781.clone(); + rt::is_cons(&__t1106) }; - if !rt::is_truthy(interp, &__t1258)? { + if !rt::is_truthy(interp, &__t1134)? { Value::bool(false) } else { - let __t1259 = { - let __t1256 = { - let __t1232 = { - let __t1231 = v_V793.clone(); - rt::tl(&__t1231)? + let __t1135 = { + let __t1132 = { + let __t1108 = { + let __t1107 = v_V781.clone(); + rt::tl(&__t1107)? }; - rt::is_cons(&__t1232) + rt::is_cons(&__t1108) }; - if !rt::is_truthy(interp, &__t1256)? { + if !rt::is_truthy(interp, &__t1132)? { Value::bool(false) } else { - let __t1257 = { - let __t1254 = { - let __t1235 = { - let __t1234 = { - let __t1233 = v_V793.clone(); - rt::tl(&__t1233)? + let __t1133 = { + let __t1130 = { + let __t1111 = { + let __t1110 = { + let __t1109 = v_V781.clone(); + rt::tl(&__t1109)? }; - rt::hd(&__t1234)? + rt::hd(&__t1110)? }; - rt::is_cons(&__t1235) + rt::is_cons(&__t1111) }; - if !rt::is_truthy(interp, &__t1254)? { + if !rt::is_truthy(interp, &__t1130)? { Value::bool(false) } else { - let __t1255 = { - let __t1252 = { - let __t1239 = { - let __t1238 = { - let __t1237 = { - let __t1236 = v_V793.clone(); - rt::tl(&__t1236)? + let __t1131 = { + let __t1128 = { + let __t1115 = { + let __t1114 = { + let __t1113 = { + let __t1112 = v_V781.clone(); + rt::tl(&__t1112)? }; - rt::hd(&__t1237)? + rt::hd(&__t1113)? }; - rt::tl(&__t1238)? + rt::tl(&__t1114)? }; - rt::is_cons(&__t1239) + rt::is_cons(&__t1115) }; - if !rt::is_truthy(interp, &__t1252)? { + if !rt::is_truthy(interp, &__t1128)? { Value::bool(false) } else { - let __t1253 = { - let __t1250 = { - let __t1240 = Value::nil(); - let __t1245 = { - let __t1244 = { - let __t1243 = { - let __t1242 = { - let __t1241 = - v_V793.clone(); - rt::tl(&__t1241)? + let __t1129 = { + let __t1126 = { + let __t1116 = Value::nil(); + let __t1121 = { + let __t1120 = { + let __t1119 = { + let __t1118 = { + let __t1117 = + v_V781.clone(); + rt::tl(&__t1117)? }; - rt::hd(&__t1242)? + rt::hd(&__t1118)? }; - rt::tl(&__t1243)? + rt::tl(&__t1119)? }; - rt::tl(&__t1244)? + rt::tl(&__t1120)? }; - rt::eq(&__t1240, &__t1245) + rt::eq(&__t1116, &__t1121) }; - if !rt::is_truthy(interp, &__t1250)? { + if !rt::is_truthy(interp, &__t1126)? { Value::bool(false) } else { - let __t1251 = { - let __t1246 = Value::nil(); - let __t1249 = { - let __t1248 = { - let __t1247 = - v_V793.clone(); - rt::tl(&__t1247)? + let __t1127 = { + let __t1122 = Value::nil(); + let __t1125 = { + let __t1124 = { + let __t1123 = + v_V781.clone(); + rt::tl(&__t1123)? }; - rt::tl(&__t1248)? + rt::tl(&__t1124)? }; - rt::eq(&__t1246, &__t1249) + rt::eq(&__t1122, &__t1125) }; Value::bool(rt::is_truthy( - interp, &__t1251, + interp, &__t1127, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1253)?) + Value::bool(rt::is_truthy(interp, &__t1129)?) } }; - Value::bool(rt::is_truthy(interp, &__t1255)?) + Value::bool(rt::is_truthy(interp, &__t1131)?) } }; - Value::bool(rt::is_truthy(interp, &__t1257)?) + Value::bool(rt::is_truthy(interp, &__t1133)?) } }; - Value::bool(rt::is_truthy(interp, &__t1259)?) + Value::bool(rt::is_truthy(interp, &__t1135)?) } }; - if match rt::is_truthy(interp, &__t1327) { + if match rt::is_truthy(interp, &__t1203) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1325 = { - let __t1260 = Value::bool(true); - let __t1324 = { - let __t1322 = { - let __t1261 = Value::sym(interp.intern("let")); - let __t1321 = { - let __t1262 = v_V791.clone(); - let __t1320 = { - let __t1271 = { - let __t1263 = + let __t1201 = { + let __t1136 = Value::bool(true); + let __t1200 = { + let __t1198 = { + let __t1137 = Value::sym(interp.intern("let")); + let __t1197 = { + let __t1138 = v_V779.clone(); + let __t1196 = { + let __t1147 = { + let __t1139 = Value::sym(interp.intern("freeze")); - let __t1270 = { - let __t1268 = { - let __t1264 = + let __t1146 = { + let __t1144 = { + let __t1140 = Value::sym(interp.intern("cond")); - let __t1267 = { - let __t1265 = v_V790.clone(); - let __t1266 = v_V794.clone(); + let __t1143 = { + let __t1141 = v_V778.clone(); + let __t1142 = v_V782.clone(); rt::apply_direct( interp, "shen.scan-body", - &[__t1265, __t1266], + &[__t1141, __t1142], )? }; - rt::cons(&__t1264, &__t1267) + rt::cons(&__t1140, &__t1143) }; - let __t1269 = Value::nil(); - rt::cons(&__t1268, &__t1269) + let __t1145 = Value::nil(); + rt::cons(&__t1144, &__t1145) }; - rt::cons(&__t1263, &__t1270) + rt::cons(&__t1139, &__t1146) }; - let __t1319 = { - let __t1317 = { - let __t1272 = + let __t1195 = { + let __t1193 = { + let __t1148 = Value::sym(interp.intern("if")); - let __t1316 = { - let __t1274 = { - let __t1273 = v_V793.clone(); - rt::hd(&__t1273)? + let __t1192 = { + let __t1150 = { + let __t1149 = v_V781.clone(); + rt::hd(&__t1149)? }; - let __t1315 = { - let __t1307 = { - let __t1275 = Value::sym( + let __t1191 = { + let __t1183 = { + let __t1151 = Value::sym( interp.intern("let"), ); - let __t1306 = { - let __t1276 = - v_V792.clone(); - let __t1305 = { - let __t1281 = { - let __t1280 = { - let __t1279 = { - let __t1278 = { - let __t1277 = v_V793.clone(); - rt::tl(&__t1277)? + let __t1182 = { + let __t1152 = + v_V780.clone(); + let __t1181 = { + let __t1157 = { + let __t1156 = { + let __t1155 = { + let __t1154 = { + let __t1153 = v_V781.clone(); + rt::tl(&__t1153)? }; - rt::hd(&__t1278)? + rt::hd(&__t1154)? }; rt::tl( - &__t1279, + &__t1155, )? }; - rt::hd(&__t1280)? + rt::hd(&__t1156)? }; - let __t1304 = { - let __t1302 = { - let __t1282 = Value::sym(interp.intern("if")); - let __t1301 = { - let __t1291 = { - let __t1283 = Value::sym(interp.intern("=")); - let __t1290 = { - let __t1284 = v_V792.clone(); - let __t1289 = { let __t1287 = { let __t1285 = Value::sym(interp.intern("fail")); let __t1286 = Value::nil(); rt::cons(&__t1285, &__t1286) }; let __t1288 = Value::nil(); rt::cons(&__t1287, &__t1288) }; - rt::cons(&__t1284, &__t1289) + let __t1180 = { + let __t1178 = { + let __t1158 = Value::sym(interp.intern("if")); + let __t1177 = { + let __t1167 = { + let __t1159 = Value::sym(interp.intern("=")); + let __t1166 = { + let __t1160 = v_V780.clone(); + let __t1165 = { let __t1163 = { let __t1161 = Value::sym(interp.intern("fail")); let __t1162 = Value::nil(); rt::cons(&__t1161, &__t1162) }; let __t1164 = Value::nil(); rt::cons(&__t1163, &__t1164) }; + rt::cons(&__t1160, &__t1165) }; - rt::cons(&__t1283, &__t1290) + rt::cons(&__t1159, &__t1166) }; - let __t1300 = { - let __t1296 = { - let __t1292 = Value::sym(interp.intern("thaw")); - let __t1295 = { let __t1293 = v_V791.clone(); let __t1294 = Value::nil(); rt::cons(&__t1293, &__t1294) }; - rt::cons(&__t1292, &__t1295) + let __t1176 = { + let __t1172 = { + let __t1168 = Value::sym(interp.intern("thaw")); + let __t1171 = { let __t1169 = v_V779.clone(); let __t1170 = Value::nil(); rt::cons(&__t1169, &__t1170) }; + rt::cons(&__t1168, &__t1171) }; - let __t1299 = { - let __t1297 = v_V792.clone(); - let __t1298 = Value::nil(); - rt::cons(&__t1297, &__t1298) + let __t1175 = { + let __t1173 = v_V780.clone(); + let __t1174 = Value::nil(); + rt::cons(&__t1173, &__t1174) }; - rt::cons(&__t1296, &__t1299) + rt::cons(&__t1172, &__t1175) }; - rt::cons(&__t1291, &__t1300) + rt::cons(&__t1167, &__t1176) }; rt::cons( - &__t1282, - &__t1301, + &__t1158, + &__t1177, ) }; - let __t1303 = + let __t1179 = Value::nil(); rt::cons( - &__t1302, - &__t1303, + &__t1178, + &__t1179, ) }; rt::cons( - &__t1281, &__t1304, + &__t1157, &__t1180, ) }; - rt::cons(&__t1276, &__t1305) + rt::cons(&__t1152, &__t1181) }; - rt::cons(&__t1275, &__t1306) + rt::cons(&__t1151, &__t1182) }; - let __t1314 = { - let __t1312 = { - let __t1308 = Value::sym( + let __t1190 = { + let __t1188 = { + let __t1184 = Value::sym( interp.intern("thaw"), ); - let __t1311 = { - let __t1309 = - v_V791.clone(); - let __t1310 = + let __t1187 = { + let __t1185 = + v_V779.clone(); + let __t1186 = Value::nil(); rt::cons( - &__t1309, &__t1310, + &__t1185, &__t1186, ) }; - rt::cons(&__t1308, &__t1311) + rt::cons(&__t1184, &__t1187) }; - let __t1313 = Value::nil(); - rt::cons(&__t1312, &__t1313) + let __t1189 = Value::nil(); + rt::cons(&__t1188, &__t1189) }; - rt::cons(&__t1307, &__t1314) + rt::cons(&__t1183, &__t1190) }; - rt::cons(&__t1274, &__t1315) + rt::cons(&__t1150, &__t1191) }; - rt::cons(&__t1272, &__t1316) + rt::cons(&__t1148, &__t1192) }; - let __t1318 = Value::nil(); - rt::cons(&__t1317, &__t1318) + let __t1194 = Value::nil(); + rt::cons(&__t1193, &__t1194) }; - rt::cons(&__t1271, &__t1319) + rt::cons(&__t1147, &__t1195) }; - rt::cons(&__t1262, &__t1320) + rt::cons(&__t1138, &__t1196) }; - rt::cons(&__t1261, &__t1321) + rt::cons(&__t1137, &__t1197) }; - let __t1323 = Value::nil(); - rt::cons(&__t1322, &__t1323) + let __t1199 = Value::nil(); + rt::cons(&__t1198, &__t1199) }; - rt::cons(&__t1260, &__t1324) + rt::cons(&__t1136, &__t1200) }; - let __t1326 = Value::nil(); - rt::cons(&__t1325, &__t1326) + let __t1202 = Value::nil(); + rt::cons(&__t1201, &__t1202) }); } else { { - let __t1229 = Value::bool(true); - if match rt::is_truthy(interp, &__t1229) { + let __t1105 = Value::bool(true); + if match rt::is_truthy(interp, &__t1105) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1228 = + let __t1104 = Value::str("implementation error in shen.choicepoint"); - rt::apply_direct(interp, "simple-error", &[__t1228])? + rt::apply_direct(interp, "simple-error", &[__t1104])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -7016,101 +6381,101 @@ pub fn aot_shen_x2e_rep_x2d_X(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V796 = args[0].clone(); + let mut v_V784 = args[0].clone(); #[allow(unused_mut)] - let mut v_V797 = args[1].clone(); + let mut v_V785 = args[1].clone(); #[allow(unused_mut)] - let mut v_V798 = args[2].clone(); + let mut v_V786 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1514 = { - let __t1512 = v_V796.clone(); - let __t1513 = v_V798.clone(); - rt::eq(&__t1512, &__t1513) + let __t1390 = { + let __t1388 = v_V784.clone(); + let __t1389 = v_V786.clone(); + rt::eq(&__t1388, &__t1389) }; - if match rt::is_truthy(interp, &__t1514) { + if match rt::is_truthy(interp, &__t1390) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V797.clone()); + break Ok(v_V785.clone()); } else { { - let __t1511 = { - let __t1492 = v_V798.clone(); - rt::is_cons(&__t1492) + let __t1387 = { + let __t1368 = v_V786.clone(); + rt::is_cons(&__t1368) }; - if match rt::is_truthy(interp, &__t1511) { + if match rt::is_truthy(interp, &__t1387) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W799 = { - let __t1493 = v_V796.clone(); - let __t1494 = v_V797.clone(); - let __t1496 = { - let __t1495 = v_V798.clone(); - rt::hd(&__t1495)? + let v_W787 = { + let __t1369 = v_V784.clone(); + let __t1370 = v_V785.clone(); + let __t1372 = { + let __t1371 = v_V786.clone(); + rt::hd(&__t1371)? }; rt::apply_direct( interp, "shen.rep-X", - &[__t1493, __t1494, __t1496], + &[__t1369, __t1370, __t1372], )? }; { - let __t1500 = { - let __t1497 = v_W799.clone(); - let __t1499 = { - let __t1498 = v_V798.clone(); - rt::hd(&__t1498)? + let __t1376 = { + let __t1373 = v_W787.clone(); + let __t1375 = { + let __t1374 = v_V786.clone(); + rt::hd(&__t1374)? }; - rt::eq(&__t1497, &__t1499) + rt::eq(&__t1373, &__t1375) }; - if match rt::is_truthy(interp, &__t1500) { + if match rt::is_truthy(interp, &__t1376) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1502 = { - let __t1501 = v_V798.clone(); - rt::hd(&__t1501)? + let __t1378 = { + let __t1377 = v_V786.clone(); + rt::hd(&__t1377)? }; - let __t1507 = { - let __t1503 = v_V796.clone(); - let __t1504 = v_V797.clone(); - let __t1506 = { - let __t1505 = v_V798.clone(); - rt::tl(&__t1505)? + let __t1383 = { + let __t1379 = v_V784.clone(); + let __t1380 = v_V785.clone(); + let __t1382 = { + let __t1381 = v_V786.clone(); + rt::tl(&__t1381)? }; rt::apply_direct( interp, "shen.rep-X", - &[__t1503, __t1504, __t1506], + &[__t1379, __t1380, __t1382], )? }; - rt::cons(&__t1502, &__t1507) + rt::cons(&__t1378, &__t1383) }); } else { break Ok({ - let __t1508 = v_W799.clone(); - let __t1510 = { - let __t1509 = v_V798.clone(); - rt::tl(&__t1509)? + let __t1384 = v_W787.clone(); + let __t1386 = { + let __t1385 = v_V786.clone(); + rt::tl(&__t1385)? }; - rt::cons(&__t1508, &__t1510) + rt::cons(&__t1384, &__t1386) }); } } } } else { { - let __t1491 = Value::bool(true); - if match rt::is_truthy(interp, &__t1491) { + let __t1367 = Value::bool(true); + if match rt::is_truthy(interp, &__t1367) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V798.clone()); + break Ok(v_V786.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -7127,6 +6492,64 @@ fn install_shen_x2e_rep_x2d_X(interp: &mut Interp) { interp.register_aot_direct("shen.rep-X", aot_shen_x2e_rep_x2d_X); } +/// AOT-compiled from KL `(defun shen.kl-body ...)` +pub fn aot_shen_x2e_kl_x2d_body(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 2 { + return Err(ShenError::new(format!( + "shen.kl-body: expected 2 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V788 = args[0].clone(); + #[allow(unused_mut)] + let mut v_V789 = args[1].clone(); + #[allow(clippy::never_loop)] + loop { + break Ok({ + let __t1398 = { + let v_V789 = v_V789.clone(); + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z790 = args[0].clone(); + Ok({ + let __t1391 = Value::nil(); + let __t1393 = { + let __t1392 = v_Z790.clone(); + rt::apply_direct(interp, "fst", &[__t1392])? + }; + let __t1394 = v_V789.clone(); + let __t1397 = { + let __t1396 = { + let __t1395 = v_Z790.clone(); + rt::apply_direct(interp, "snd", &[__t1395])? + }; + rt::apply_direct(interp, "shen.alpha-convert", &[__t1396])? + }; + rt::apply_direct( + interp, + "shen.triple-stack", + &[__t1391, __t1393, __t1394, __t1397], + )? + }) + }, + vec![v_V789], + interp, + ) + }; + let __t1399 = v_V788.clone(); + rt::apply_direct(interp, "map", &[__t1398, __t1399])? + }); + } +} + +fn install_shen_x2e_kl_x2d_body(interp: &mut Interp) { + interp.register_native("shen.kl-body", 2, aot_shen_x2e_kl_x2d_body); + interp.register_aot_direct("shen.kl-body", aot_shen_x2e_kl_x2d_body); +} + /// AOT-compiled from KL `(defun shen.alpha-convert ...)` pub fn aot_shen_x2e_alpha_x2d_convert(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { @@ -7136,141 +6559,141 @@ pub fn aot_shen_x2e_alpha_x2d_convert(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V800 = args[0].clone(); + let mut v_V791 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1615 = { - let __t1595 = { - let __t1575 = v_V800.clone(); - rt::is_cons(&__t1575) + let __t1500 = { + let __t1480 = { + let __t1460 = v_V791.clone(); + rt::is_cons(&__t1460) }; - if !rt::is_truthy(interp, &__t1595)? { + if !rt::is_truthy(interp, &__t1480)? { Value::bool(false) } else { - let __t1596 = { - let __t1593 = { - let __t1576 = Value::sym(interp.intern("lambda")); - let __t1578 = { - let __t1577 = v_V800.clone(); - rt::hd(&__t1577)? - }; - rt::eq(&__t1576, &__t1578) + let __t1481 = { + let __t1478 = { + let __t1461 = Value::sym(interp.intern("lambda")); + let __t1463 = { + let __t1462 = v_V791.clone(); + rt::hd(&__t1462)? + }; + rt::eq(&__t1461, &__t1463) }; - if !rt::is_truthy(interp, &__t1593)? { + if !rt::is_truthy(interp, &__t1478)? { Value::bool(false) } else { - let __t1594 = { - let __t1591 = { - let __t1580 = { - let __t1579 = v_V800.clone(); - rt::tl(&__t1579)? + let __t1479 = { + let __t1476 = { + let __t1465 = { + let __t1464 = v_V791.clone(); + rt::tl(&__t1464)? }; - rt::is_cons(&__t1580) + rt::is_cons(&__t1465) }; - if !rt::is_truthy(interp, &__t1591)? { + if !rt::is_truthy(interp, &__t1476)? { Value::bool(false) } else { - let __t1592 = { - let __t1589 = { - let __t1583 = { - let __t1582 = { - let __t1581 = v_V800.clone(); - rt::tl(&__t1581)? + let __t1477 = { + let __t1474 = { + let __t1468 = { + let __t1467 = { + let __t1466 = v_V791.clone(); + rt::tl(&__t1466)? }; - rt::tl(&__t1582)? + rt::tl(&__t1467)? }; - rt::is_cons(&__t1583) + rt::is_cons(&__t1468) }; - if !rt::is_truthy(interp, &__t1589)? { + if !rt::is_truthy(interp, &__t1474)? { Value::bool(false) } else { - let __t1590 = { - let __t1584 = Value::nil(); - let __t1588 = { - let __t1587 = { - let __t1586 = { - let __t1585 = v_V800.clone(); - rt::tl(&__t1585)? + let __t1475 = { + let __t1469 = Value::nil(); + let __t1473 = { + let __t1472 = { + let __t1471 = { + let __t1470 = v_V791.clone(); + rt::tl(&__t1470)? }; - rt::tl(&__t1586)? + rt::tl(&__t1471)? }; - rt::tl(&__t1587)? + rt::tl(&__t1472)? }; - rt::eq(&__t1584, &__t1588) + rt::eq(&__t1469, &__t1473) }; - Value::bool(rt::is_truthy(interp, &__t1590)?) + Value::bool(rt::is_truthy(interp, &__t1475)?) } }; - Value::bool(rt::is_truthy(interp, &__t1592)?) + Value::bool(rt::is_truthy(interp, &__t1477)?) } }; - Value::bool(rt::is_truthy(interp, &__t1594)?) + Value::bool(rt::is_truthy(interp, &__t1479)?) } }; - Value::bool(rt::is_truthy(interp, &__t1596)?) + Value::bool(rt::is_truthy(interp, &__t1481)?) } }; - if match rt::is_truthy(interp, &__t1615) { + if match rt::is_truthy(interp, &__t1500) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W801 = { - let __t1597 = Value::sym(interp.intern("Z")); - rt::apply_direct(interp, "gensym", &[__t1597])? + let v_W792 = { + let __t1482 = Value::sym(interp.intern("Z")); + rt::apply_direct(interp, "gensym", &[__t1482])? }; { - let v_W802 = { - let __t1598 = Value::sym(interp.intern("lambda")); - let __t1611 = { - let __t1599 = v_W801.clone(); - let __t1610 = { - let __t1608 = { - let __t1602 = { - let __t1601 = { - let __t1600 = v_V800.clone(); - rt::tl(&__t1600)? + let v_W793 = { + let __t1483 = Value::sym(interp.intern("lambda")); + let __t1496 = { + let __t1484 = v_W792.clone(); + let __t1495 = { + let __t1493 = { + let __t1487 = { + let __t1486 = { + let __t1485 = v_V791.clone(); + rt::tl(&__t1485)? }; - rt::hd(&__t1601)? + rt::hd(&__t1486)? }; - let __t1603 = v_W801.clone(); - let __t1607 = { - let __t1606 = { - let __t1605 = { - let __t1604 = v_V800.clone(); - rt::tl(&__t1604)? + let __t1488 = v_W792.clone(); + let __t1492 = { + let __t1491 = { + let __t1490 = { + let __t1489 = v_V791.clone(); + rt::tl(&__t1489)? }; - rt::tl(&__t1605)? + rt::tl(&__t1490)? }; - rt::hd(&__t1606)? + rt::hd(&__t1491)? }; rt::apply_direct( interp, "shen.beta", - &[__t1602, __t1603, __t1607], + &[__t1487, __t1488, __t1492], )? }; - let __t1609 = Value::nil(); - rt::cons(&__t1608, &__t1609) + let __t1494 = Value::nil(); + rt::cons(&__t1493, &__t1494) }; - rt::cons(&__t1599, &__t1610) + rt::cons(&__t1484, &__t1495) }; - rt::cons(&__t1598, &__t1611) + rt::cons(&__t1483, &__t1496) }; break Ok({ - let __t1613 = { + let __t1498 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z803 = args[0].clone(); + let v_Z794 = args[0].clone(); Ok({ - let __t1612 = v_Z803.clone(); + let __t1497 = v_Z794.clone(); rt::apply_direct( interp, "shen.alpha-convert", - &[__t1612], + &[__t1497], )? }) }, @@ -7278,187 +6701,187 @@ pub fn aot_shen_x2e_alpha_x2d_convert(interp: &mut Interp, args: &[Value]) -> Sh interp, ) }; - let __t1614 = v_W802.clone(); - rt::apply_direct(interp, "map", &[__t1613, __t1614])? + let __t1499 = v_W793.clone(); + rt::apply_direct(interp, "map", &[__t1498, __t1499])? }); } } } else { { - let __t1574 = { - let __t1548 = { - let __t1521 = v_V800.clone(); - rt::is_cons(&__t1521) + let __t1459 = { + let __t1433 = { + let __t1406 = v_V791.clone(); + rt::is_cons(&__t1406) }; - if !rt::is_truthy(interp, &__t1548)? { + if !rt::is_truthy(interp, &__t1433)? { Value::bool(false) } else { - let __t1549 = { - let __t1546 = { - let __t1522 = Value::sym(interp.intern("let")); - let __t1524 = { - let __t1523 = v_V800.clone(); - rt::hd(&__t1523)? + let __t1434 = { + let __t1431 = { + let __t1407 = Value::sym(interp.intern("let")); + let __t1409 = { + let __t1408 = v_V791.clone(); + rt::hd(&__t1408)? }; - rt::eq(&__t1522, &__t1524) + rt::eq(&__t1407, &__t1409) }; - if !rt::is_truthy(interp, &__t1546)? { + if !rt::is_truthy(interp, &__t1431)? { Value::bool(false) } else { - let __t1547 = { - let __t1544 = { - let __t1526 = { - let __t1525 = v_V800.clone(); - rt::tl(&__t1525)? + let __t1432 = { + let __t1429 = { + let __t1411 = { + let __t1410 = v_V791.clone(); + rt::tl(&__t1410)? }; - rt::is_cons(&__t1526) + rt::is_cons(&__t1411) }; - if !rt::is_truthy(interp, &__t1544)? { + if !rt::is_truthy(interp, &__t1429)? { Value::bool(false) } else { - let __t1545 = { - let __t1542 = { - let __t1529 = { - let __t1528 = { - let __t1527 = v_V800.clone(); - rt::tl(&__t1527)? + let __t1430 = { + let __t1427 = { + let __t1414 = { + let __t1413 = { + let __t1412 = v_V791.clone(); + rt::tl(&__t1412)? }; - rt::tl(&__t1528)? + rt::tl(&__t1413)? }; - rt::is_cons(&__t1529) + rt::is_cons(&__t1414) }; - if !rt::is_truthy(interp, &__t1542)? { + if !rt::is_truthy(interp, &__t1427)? { Value::bool(false) } else { - let __t1543 = { - let __t1540 = { - let __t1533 = { - let __t1532 = { - let __t1531 = { - let __t1530 = - v_V800.clone(); - rt::tl(&__t1530)? + let __t1428 = { + let __t1425 = { + let __t1418 = { + let __t1417 = { + let __t1416 = { + let __t1415 = + v_V791.clone(); + rt::tl(&__t1415)? }; - rt::tl(&__t1531)? + rt::tl(&__t1416)? }; - rt::tl(&__t1532)? + rt::tl(&__t1417)? }; - rt::is_cons(&__t1533) + rt::is_cons(&__t1418) }; - if !rt::is_truthy(interp, &__t1540)? { + if !rt::is_truthy(interp, &__t1425)? { Value::bool(false) } else { - let __t1541 = { - let __t1534 = Value::nil(); - let __t1539 = { - let __t1538 = { - let __t1537 = { - let __t1536 = { - let __t1535 = - v_V800.clone(); - rt::tl(&__t1535)? + let __t1426 = { + let __t1419 = Value::nil(); + let __t1424 = { + let __t1423 = { + let __t1422 = { + let __t1421 = { + let __t1420 = + v_V791.clone(); + rt::tl(&__t1420)? }; - rt::tl(&__t1536)? + rt::tl(&__t1421)? }; - rt::tl(&__t1537)? + rt::tl(&__t1422)? }; - rt::tl(&__t1538)? + rt::tl(&__t1423)? }; - rt::eq(&__t1534, &__t1539) + rt::eq(&__t1419, &__t1424) }; Value::bool(rt::is_truthy( - interp, &__t1541, + interp, &__t1426, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1543)?) + Value::bool(rt::is_truthy(interp, &__t1428)?) } }; - Value::bool(rt::is_truthy(interp, &__t1545)?) + Value::bool(rt::is_truthy(interp, &__t1430)?) } }; - Value::bool(rt::is_truthy(interp, &__t1547)?) + Value::bool(rt::is_truthy(interp, &__t1432)?) } }; - Value::bool(rt::is_truthy(interp, &__t1549)?) + Value::bool(rt::is_truthy(interp, &__t1434)?) } }; - if match rt::is_truthy(interp, &__t1574) { + if match rt::is_truthy(interp, &__t1459) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W804 = { - let __t1550 = Value::sym(interp.intern("W")); - rt::apply_direct(interp, "gensym", &[__t1550])? + let v_W795 = { + let __t1435 = Value::sym(interp.intern("W")); + rt::apply_direct(interp, "gensym", &[__t1435])? }; { - let v_W805 = { - let __t1551 = Value::sym(interp.intern("let")); - let __t1570 = { - let __t1552 = v_W804.clone(); - let __t1569 = { - let __t1556 = { - let __t1555 = { - let __t1554 = { - let __t1553 = v_V800.clone(); - rt::tl(&__t1553)? + let v_W796 = { + let __t1436 = Value::sym(interp.intern("let")); + let __t1455 = { + let __t1437 = v_W795.clone(); + let __t1454 = { + let __t1441 = { + let __t1440 = { + let __t1439 = { + let __t1438 = v_V791.clone(); + rt::tl(&__t1438)? }; - rt::tl(&__t1554)? + rt::tl(&__t1439)? }; - rt::hd(&__t1555)? + rt::hd(&__t1440)? }; - let __t1568 = { - let __t1566 = { - let __t1559 = { - let __t1558 = { - let __t1557 = v_V800.clone(); - rt::tl(&__t1557)? + let __t1453 = { + let __t1451 = { + let __t1444 = { + let __t1443 = { + let __t1442 = v_V791.clone(); + rt::tl(&__t1442)? }; - rt::hd(&__t1558)? + rt::hd(&__t1443)? }; - let __t1560 = v_W804.clone(); - let __t1565 = { - let __t1564 = { - let __t1563 = { - let __t1562 = { - let __t1561 = v_V800.clone(); - rt::tl(&__t1561)? + let __t1445 = v_W795.clone(); + let __t1450 = { + let __t1449 = { + let __t1448 = { + let __t1447 = { + let __t1446 = v_V791.clone(); + rt::tl(&__t1446)? }; - rt::tl(&__t1562)? + rt::tl(&__t1447)? }; - rt::tl(&__t1563)? + rt::tl(&__t1448)? }; - rt::hd(&__t1564)? + rt::hd(&__t1449)? }; rt::apply_direct( interp, "shen.beta", - &[__t1559, __t1560, __t1565], + &[__t1444, __t1445, __t1450], )? }; - let __t1567 = Value::nil(); - rt::cons(&__t1566, &__t1567) + let __t1452 = Value::nil(); + rt::cons(&__t1451, &__t1452) }; - rt::cons(&__t1556, &__t1568) + rt::cons(&__t1441, &__t1453) }; - rt::cons(&__t1552, &__t1569) + rt::cons(&__t1437, &__t1454) }; - rt::cons(&__t1551, &__t1570) + rt::cons(&__t1436, &__t1455) }; break Ok({ - let __t1572 = { + let __t1457 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z806 = args[0].clone(); + let v_Z797 = args[0].clone(); Ok({ - let __t1571 = v_Z806.clone(); + let __t1456 = v_Z797.clone(); rt::apply_direct( interp, "shen.alpha-convert", - &[__t1571], + &[__t1456], )? }) }, @@ -7466,34 +6889,34 @@ pub fn aot_shen_x2e_alpha_x2d_convert(interp: &mut Interp, args: &[Value]) -> Sh interp, ) }; - let __t1573 = v_W805.clone(); - rt::apply_direct(interp, "map", &[__t1572, __t1573])? + let __t1458 = v_W796.clone(); + rt::apply_direct(interp, "map", &[__t1457, __t1458])? }); } } } else { { - let __t1520 = { - let __t1516 = v_V800.clone(); - rt::is_cons(&__t1516) + let __t1405 = { + let __t1401 = v_V791.clone(); + rt::is_cons(&__t1401) }; - if match rt::is_truthy(interp, &__t1520) { + if match rt::is_truthy(interp, &__t1405) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1518 = { + let __t1403 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z807 = args[0].clone(); + let v_Z798 = args[0].clone(); Ok({ - let __t1517 = v_Z807.clone(); + let __t1402 = v_Z798.clone(); rt::apply_direct( interp, "shen.alpha-convert", - &[__t1517], + &[__t1402], )? }) }, @@ -7501,17 +6924,17 @@ pub fn aot_shen_x2e_alpha_x2d_convert(interp: &mut Interp, args: &[Value]) -> Sh interp, ) }; - let __t1519 = v_V800.clone(); - rt::apply_direct(interp, "map", &[__t1518, __t1519])? + let __t1404 = v_V791.clone(); + rt::apply_direct(interp, "map", &[__t1403, __t1404])? }); } else { { - let __t1515 = Value::bool(true); - if match rt::is_truthy(interp, &__t1515) { + let __t1400 = Value::bool(true); + if match rt::is_truthy(interp, &__t1400) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V800.clone()); + break Ok(v_V791.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -7530,64 +6953,6 @@ fn install_shen_x2e_alpha_x2d_convert(interp: &mut Interp) { interp.register_aot_direct("shen.alpha-convert", aot_shen_x2e_alpha_x2d_convert); } -/// AOT-compiled from KL `(defun shen.kl-body ...)` -pub fn aot_shen_x2e_kl_x2d_body(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.kl-body: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V808 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V809 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t1623 = { - let v_V809 = v_V809.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z810 = args[0].clone(); - Ok({ - let __t1616 = Value::nil(); - let __t1618 = { - let __t1617 = v_Z810.clone(); - rt::apply_direct(interp, "fst", &[__t1617])? - }; - let __t1619 = v_V809.clone(); - let __t1622 = { - let __t1621 = { - let __t1620 = v_Z810.clone(); - rt::apply_direct(interp, "snd", &[__t1620])? - }; - rt::apply_direct(interp, "shen.alpha-convert", &[__t1621])? - }; - rt::apply_direct( - interp, - "shen.triple-stack", - &[__t1616, __t1618, __t1619, __t1622], - )? - }) - }, - vec![v_V809], - interp, - ) - }; - let __t1624 = v_V808.clone(); - rt::apply_direct(interp, "map", &[__t1623, __t1624])? - }); - } -} - -fn install_shen_x2e_kl_x2d_body(interp: &mut Interp) { - interp.register_native("shen.kl-body", 2, aot_shen_x2e_kl_x2d_body); - interp.register_aot_direct("shen.kl-body", aot_shen_x2e_kl_x2d_body); -} - /// AOT-compiled from KL `(defun shen.triple-stack ...)` pub fn aot_shen_x2e_triple_x2d_stack(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 4 { @@ -7597,689 +6962,596 @@ pub fn aot_shen_x2e_triple_x2d_stack(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V819 = args[0].clone(); + let mut v_V807 = args[0].clone(); #[allow(unused_mut)] - let mut v_V820 = args[1].clone(); + let mut v_V808 = args[1].clone(); #[allow(unused_mut)] - let mut v_V821 = args[2].clone(); + let mut v_V809 = args[2].clone(); #[allow(unused_mut)] - let mut v_V822 = args[3].clone(); + let mut v_V810 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t1827 = { - let __t1814 = { - let __t1786 = Value::nil(); - let __t1787 = v_V820.clone(); - rt::eq(&__t1786, &__t1787) + let __t1678 = { + let __t1665 = { + let __t1637 = Value::nil(); + let __t1638 = v_V808.clone(); + rt::eq(&__t1637, &__t1638) }; - if !rt::is_truthy(interp, &__t1814)? { + if !rt::is_truthy(interp, &__t1665)? { Value::bool(false) } else { - let __t1815 = { - let __t1812 = { - let __t1788 = Value::nil(); - let __t1789 = v_V821.clone(); - rt::eq(&__t1788, &__t1789) + let __t1666 = { + let __t1663 = { + let __t1639 = Value::nil(); + let __t1640 = v_V809.clone(); + rt::eq(&__t1639, &__t1640) }; - if !rt::is_truthy(interp, &__t1812)? { + if !rt::is_truthy(interp, &__t1663)? { Value::bool(false) } else { - let __t1813 = { - let __t1810 = { - let __t1790 = v_V822.clone(); - rt::is_cons(&__t1790) + let __t1664 = { + let __t1661 = { + let __t1641 = v_V810.clone(); + rt::is_cons(&__t1641) }; - if !rt::is_truthy(interp, &__t1810)? { + if !rt::is_truthy(interp, &__t1661)? { Value::bool(false) } else { - let __t1811 = { - let __t1808 = { - let __t1791 = Value::sym(interp.intern("where")); - let __t1793 = { - let __t1792 = v_V822.clone(); - rt::hd(&__t1792)? + let __t1662 = { + let __t1659 = { + let __t1642 = Value::sym(interp.intern("where")); + let __t1644 = { + let __t1643 = v_V810.clone(); + rt::hd(&__t1643)? }; - rt::eq(&__t1791, &__t1793) + rt::eq(&__t1642, &__t1644) }; - if !rt::is_truthy(interp, &__t1808)? { + if !rt::is_truthy(interp, &__t1659)? { Value::bool(false) } else { - let __t1809 = { - let __t1806 = { - let __t1795 = { - let __t1794 = v_V822.clone(); - rt::tl(&__t1794)? + let __t1660 = { + let __t1657 = { + let __t1646 = { + let __t1645 = v_V810.clone(); + rt::tl(&__t1645)? }; - rt::is_cons(&__t1795) + rt::is_cons(&__t1646) }; - if !rt::is_truthy(interp, &__t1806)? { + if !rt::is_truthy(interp, &__t1657)? { Value::bool(false) } else { - let __t1807 = { - let __t1804 = { - let __t1798 = { - let __t1797 = { - let __t1796 = v_V822.clone(); - rt::tl(&__t1796)? + let __t1658 = { + let __t1655 = { + let __t1649 = { + let __t1648 = { + let __t1647 = v_V810.clone(); + rt::tl(&__t1647)? }; - rt::tl(&__t1797)? + rt::tl(&__t1648)? }; - rt::is_cons(&__t1798) + rt::is_cons(&__t1649) }; - if !rt::is_truthy(interp, &__t1804)? { + if !rt::is_truthy(interp, &__t1655)? { Value::bool(false) } else { - let __t1805 = { - let __t1799 = Value::nil(); - let __t1803 = { - let __t1802 = { - let __t1801 = { - let __t1800 = - v_V822.clone(); - rt::tl(&__t1800)? + let __t1656 = { + let __t1650 = Value::nil(); + let __t1654 = { + let __t1653 = { + let __t1652 = { + let __t1651 = + v_V810.clone(); + rt::tl(&__t1651)? }; - rt::tl(&__t1801)? + rt::tl(&__t1652)? }; - rt::tl(&__t1802)? + rt::tl(&__t1653)? }; - rt::eq(&__t1799, &__t1803) + rt::eq(&__t1650, &__t1654) }; Value::bool(rt::is_truthy( - interp, &__t1805, + interp, &__t1656, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1807)?) + Value::bool(rt::is_truthy(interp, &__t1658)?) } }; - Value::bool(rt::is_truthy(interp, &__t1809)?) + Value::bool(rt::is_truthy(interp, &__t1660)?) } }; - Value::bool(rt::is_truthy(interp, &__t1811)?) + Value::bool(rt::is_truthy(interp, &__t1662)?) } }; - Value::bool(rt::is_truthy(interp, &__t1813)?) + Value::bool(rt::is_truthy(interp, &__t1664)?) } }; - Value::bool(rt::is_truthy(interp, &__t1815)?) + Value::bool(rt::is_truthy(interp, &__t1666)?) } }; - if match rt::is_truthy(interp, &__t1827) { + if match rt::is_truthy(interp, &__t1678) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1820 = { - let __t1818 = { - let __t1817 = { - let __t1816 = v_V822.clone(); - rt::tl(&__t1816)? + let __t1671 = { + let __t1669 = { + let __t1668 = { + let __t1667 = v_V810.clone(); + rt::tl(&__t1667)? }; - rt::hd(&__t1817)? + rt::hd(&__t1668)? }; - let __t1819 = v_V819.clone(); - rt::cons(&__t1818, &__t1819) + let __t1670 = v_V807.clone(); + rt::cons(&__t1669, &__t1670) }; - let __t1821 = Value::nil(); - let __t1822 = Value::nil(); - let __t1826 = { - let __t1825 = { - let __t1824 = { - let __t1823 = v_V822.clone(); - rt::tl(&__t1823)? - }; - rt::tl(&__t1824)? + let __t1672 = Value::nil(); + let __t1673 = Value::nil(); + let __t1677 = { + let __t1676 = { + let __t1675 = { + let __t1674 = v_V810.clone(); + rt::tl(&__t1674)? + }; + rt::tl(&__t1675)? }; - rt::hd(&__t1825)? + rt::hd(&__t1676)? }; - v_V819 = __t1820; - v_V820 = __t1821; - v_V821 = __t1822; - v_V822 = __t1826; + v_V807 = __t1671; + v_V808 = __t1672; + v_V809 = __t1673; + v_V810 = __t1677; continue; } } else { { - let __t1785 = { - let __t1777 = { - let __t1773 = Value::nil(); - let __t1774 = v_V820.clone(); - rt::eq(&__t1773, &__t1774) + let __t1636 = { + let __t1628 = { + let __t1624 = Value::nil(); + let __t1625 = v_V808.clone(); + rt::eq(&__t1624, &__t1625) }; - if !rt::is_truthy(interp, &__t1777)? { + if !rt::is_truthy(interp, &__t1628)? { Value::bool(false) } else { - let __t1778 = { - let __t1775 = Value::nil(); - let __t1776 = v_V821.clone(); - rt::eq(&__t1775, &__t1776) + let __t1629 = { + let __t1626 = Value::nil(); + let __t1627 = v_V809.clone(); + rt::eq(&__t1626, &__t1627) }; - Value::bool(rt::is_truthy(interp, &__t1778)?) + Value::bool(rt::is_truthy(interp, &__t1629)?) } }; - if match rt::is_truthy(interp, &__t1785) { + if match rt::is_truthy(interp, &__t1636) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1781 = { - let __t1780 = { - let __t1779 = v_V819.clone(); - rt::apply_direct(interp, "reverse", &[__t1779])? + let __t1632 = { + let __t1631 = { + let __t1630 = v_V807.clone(); + rt::apply_direct(interp, "reverse", &[__t1630])? }; - rt::apply_direct(interp, "shen.rectify-test", &[__t1780])? + rt::apply_direct(interp, "shen.rectify-test", &[__t1631])? }; - let __t1784 = { - let __t1782 = v_V822.clone(); - let __t1783 = Value::nil(); - rt::cons(&__t1782, &__t1783) + let __t1635 = { + let __t1633 = v_V810.clone(); + let __t1634 = Value::nil(); + rt::cons(&__t1633, &__t1634) }; - rt::cons(&__t1781, &__t1784) + rt::cons(&__t1632, &__t1635) }); } else { { - let __t1772 = { - let __t1759 = { - let __t1753 = v_V820.clone(); - rt::is_cons(&__t1753) + let __t1623 = { + let __t1610 = { + let __t1604 = v_V808.clone(); + rt::is_cons(&__t1604) }; - if !rt::is_truthy(interp, &__t1759)? { + if !rt::is_truthy(interp, &__t1610)? { Value::bool(false) } else { - let __t1760 = { - let __t1757 = { - let __t1754 = v_V821.clone(); - rt::is_cons(&__t1754) + let __t1611 = { + let __t1608 = { + let __t1605 = v_V809.clone(); + rt::is_cons(&__t1605) }; - if !rt::is_truthy(interp, &__t1757)? { + if !rt::is_truthy(interp, &__t1608)? { Value::bool(false) } else { - let __t1758 = { - let __t1756 = { - let __t1755 = v_V820.clone(); - rt::hd(&__t1755)? + let __t1609 = { + let __t1607 = { + let __t1606 = v_V808.clone(); + rt::hd(&__t1606)? }; - rt::apply_direct(interp, "variable?", &[__t1756])? + rt::apply_direct(interp, "variable?", &[__t1607])? }; - Value::bool(rt::is_truthy(interp, &__t1758)?) + Value::bool(rt::is_truthy(interp, &__t1609)?) } }; - Value::bool(rt::is_truthy(interp, &__t1760)?) + Value::bool(rt::is_truthy(interp, &__t1611)?) } }; - if match rt::is_truthy(interp, &__t1772) { + if match rt::is_truthy(interp, &__t1623) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1761 = v_V819.clone(); - let __t1763 = { - let __t1762 = v_V820.clone(); - rt::tl(&__t1762)? + let __t1612 = v_V807.clone(); + let __t1614 = { + let __t1613 = v_V808.clone(); + rt::tl(&__t1613)? }; - let __t1765 = { - let __t1764 = v_V821.clone(); - rt::tl(&__t1764)? + let __t1616 = { + let __t1615 = v_V809.clone(); + rt::tl(&__t1615)? }; - let __t1771 = { - let __t1767 = { - let __t1766 = v_V820.clone(); - rt::hd(&__t1766)? + let __t1622 = { + let __t1618 = { + let __t1617 = v_V808.clone(); + rt::hd(&__t1617)? }; - let __t1769 = { - let __t1768 = v_V821.clone(); - rt::hd(&__t1768)? + let __t1620 = { + let __t1619 = v_V809.clone(); + rt::hd(&__t1619)? }; - let __t1770 = v_V822.clone(); + let __t1621 = v_V810.clone(); rt::apply_direct( interp, "shen.beta", - &[__t1767, __t1769, __t1770], + &[__t1618, __t1620, __t1621], )? }; - v_V819 = __t1761; - v_V820 = __t1763; - v_V821 = __t1765; - v_V822 = __t1771; + v_V807 = __t1612; + v_V808 = __t1614; + v_V809 = __t1616; + v_V810 = __t1622; continue; } } else { { - let __t1752 = { - let __t1739 = { - let __t1733 = v_V820.clone(); - rt::is_cons(&__t1733) + let __t1603 = { + let __t1549 = { + let __t1524 = v_V808.clone(); + rt::is_cons(&__t1524) }; - if !rt::is_truthy(interp, &__t1739)? { + if !rt::is_truthy(interp, &__t1549)? { Value::bool(false) } else { - let __t1740 = { - let __t1737 = { - let __t1734 = v_V821.clone(); - rt::is_cons(&__t1734) - }; - if !rt::is_truthy(interp, &__t1737)? { - Value::bool(false) - } else { - let __t1738 = { - let __t1736 = { - let __t1735 = v_V820.clone(); - rt::hd(&__t1735)? - }; - rt::apply_direct( - interp, - "shen.custom-pattern?", - &[__t1736], - )? + let __t1550 = { + let __t1547 = { + let __t1526 = { + let __t1525 = v_V808.clone(); + rt::hd(&__t1525)? }; - Value::bool(rt::is_truthy(interp, &__t1738)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1740)?) - } - }; - if match rt::is_truthy(interp, &__t1752) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1741 = v_V819.clone(); - let __t1744 = { - let __t1743 = { - let __t1742 = v_V820.clone(); - rt::hd(&__t1742)? - }; - rt::apply_direct( - interp, - "shen.custom-pattern-body", - &[__t1743], - )? - }; - let __t1746 = { - let __t1745 = v_V820.clone(); - rt::tl(&__t1745)? - }; - let __t1748 = { - let __t1747 = v_V821.clone(); - rt::hd(&__t1747)? - }; - let __t1750 = { - let __t1749 = v_V821.clone(); - rt::tl(&__t1749)? - }; - let __t1751 = v_V822.clone(); - rt::apply_direct( - interp, - "shen.custom-pattern-triple-stack", - &[ - __t1741, __t1744, __t1746, __t1748, __t1750, - __t1751, - ], - )? - }); - } else { - { - let __t1732 = { - let __t1678 = { - let __t1648 = v_V820.clone(); - rt::is_cons(&__t1648) + rt::is_cons(&__t1526) }; - if !rt::is_truthy(interp, &__t1678)? { + if !rt::is_truthy(interp, &__t1547)? { Value::bool(false) } else { - let __t1679 = { - let __t1676 = { - let __t1650 = { - let __t1649 = v_V820.clone(); - rt::hd(&__t1649)? + let __t1548 = { + let __t1545 = { + let __t1529 = { + let __t1528 = { + let __t1527 = v_V808.clone(); + rt::hd(&__t1527)? + }; + rt::tl(&__t1528)? }; - rt::is_cons(&__t1650) + rt::is_cons(&__t1529) }; - if !rt::is_truthy(interp, &__t1676)? { + if !rt::is_truthy(interp, &__t1545)? { Value::bool(false) } else { - let __t1677 = { - let __t1674 = { - let __t1653 = { - let __t1652 = { - let __t1651 = - v_V820.clone(); - rt::hd(&__t1651)? + let __t1546 = { + let __t1543 = { + let __t1533 = { + let __t1532 = { + let __t1531 = { + let __t1530 = + v_V808.clone(); + rt::hd(&__t1530)? + }; + rt::tl(&__t1531)? }; - rt::tl(&__t1652)? + rt::tl(&__t1532)? }; - rt::is_cons(&__t1653) + rt::is_cons(&__t1533) }; - if !rt::is_truthy(interp, &__t1674)? + if !rt::is_truthy(interp, &__t1543)? { Value::bool(false) } else { - let __t1675 = { - let __t1672 = { - let __t1657 = { - let __t1656 = { - let __t1655 = { - let __t1654 = v_V820.clone(); - rt::hd(&__t1654)? + let __t1544 = { + let __t1541 = { + let __t1534 = + Value::nil(); + let __t1539 = { + let __t1538 = { + let __t1537 = { + let __t1536 = { + let __t1535 = v_V808.clone(); + rt::hd(&__t1535)? + }; + rt::tl(&__t1536)? }; rt::tl( - &__t1655, + &__t1537, )? }; - rt::tl(&__t1656)? + rt::tl(&__t1538)? }; - rt::is_cons(&__t1657) + rt::eq( + &__t1534, &__t1539, + ) }; if !rt::is_truthy( - interp, &__t1672, + interp, &__t1541, )? { Value::bool(false) } else { - let __t1673 = { - let __t1670 = { - let __t1658 = - Value::nil( - ); - let __t1663 = { - let __t1662 = { - let __t1661 = { - let __t1660 = { let __t1659 = v_V820.clone(); rt::hd(&__t1659)? }; - rt::tl(&__t1660)? - }; - rt::tl(&__t1661)? - }; - rt::tl(&__t1662)? - }; - rt::eq( - &__t1658, - &__t1663, - ) - }; - if !rt::is_truthy( - interp, - &__t1670, - )? { - Value::bool( - false, - ) - } else { - let __t1671 = { - let __t1668 = { - let __t1664 = v_V821.clone(); - rt::is_cons(&__t1664) - }; - if !rt::is_truthy(interp, &__t1668)? { Value::bool(false) } else { let __t1669 = { let __t1667 = { let __t1666 = { let __t1665 = v_V820.clone(); rt::hd(&__t1665)? }; rt::hd(&__t1666)? }; rt::apply_direct(interp, "shen.constructor?", &[__t1667])? }; Value::bool(rt::is_truthy(interp, &__t1669)?) } - }; - Value::bool(rt::is_truthy(interp, &__t1671)?) - } + let __t1542 = { + let __t1540 = + v_V809.clone(); + rt::is_cons( + &__t1540, + ) }; Value::bool( rt::is_truthy( interp, - &__t1673, + &__t1542, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t1675, + interp, &__t1544, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1677, + interp, &__t1546, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1679)?) + Value::bool(rt::is_truthy(interp, &__t1548)?) } }; - if match rt::is_truthy(interp, &__t1732) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let __t1690 = { - let __t1688 = { - let __t1683 = { - let __t1682 = { - let __t1681 = { - let __t1680 = - v_V820.clone(); - rt::hd(&__t1680)? - }; - rt::hd(&__t1681)? - }; - rt::apply_direct( - interp, - "shen.op-test", - &[__t1682], - )? - }; - let __t1687 = { - let __t1685 = { - let __t1684 = v_V821.clone(); - rt::hd(&__t1684)? - }; - let __t1686 = Value::nil(); - rt::cons(&__t1685, &__t1686) + Value::bool(rt::is_truthy(interp, &__t1550)?) + } + }; + if match rt::is_truthy(interp, &__t1603) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t1561 = { + let __t1559 = { + let __t1554 = { + let __t1553 = { + let __t1552 = { + let __t1551 = v_V808.clone(); + rt::hd(&__t1551)? }; - rt::cons(&__t1683, &__t1687) + rt::hd(&__t1552)? }; - let __t1689 = v_V819.clone(); - rt::cons(&__t1688, &__t1689) + rt::apply_direct( + interp, + "shen.op-test", + &[__t1553], + )? }; - let __t1703 = { - let __t1694 = { - let __t1693 = { - let __t1692 = { - let __t1691 = v_V820.clone(); - rt::hd(&__t1691)? - }; - rt::tl(&__t1692)? - }; - rt::hd(&__t1693)? + let __t1558 = { + let __t1556 = { + let __t1555 = v_V809.clone(); + rt::hd(&__t1555)? }; - let __t1702 = { - let __t1699 = { - let __t1698 = { - let __t1697 = { - let __t1696 = { - let __t1695 = - v_V820.clone(); - rt::hd(&__t1695)? - }; - rt::tl(&__t1696)? - }; - rt::tl(&__t1697)? + let __t1557 = Value::nil(); + rt::cons(&__t1556, &__t1557) + }; + rt::cons(&__t1554, &__t1558) + }; + let __t1560 = v_V807.clone(); + rt::cons(&__t1559, &__t1560) + }; + let __t1574 = { + let __t1565 = { + let __t1564 = { + let __t1563 = { + let __t1562 = v_V808.clone(); + rt::hd(&__t1562)? + }; + rt::tl(&__t1563)? + }; + rt::hd(&__t1564)? + }; + let __t1573 = { + let __t1570 = { + let __t1569 = { + let __t1568 = { + let __t1567 = { + let __t1566 = v_V808.clone(); + rt::hd(&__t1566)? }; - rt::hd(&__t1698)? + rt::tl(&__t1567)? }; - let __t1701 = { - let __t1700 = v_V820.clone(); - rt::tl(&__t1700)? + rt::tl(&__t1568)? + }; + rt::hd(&__t1569)? + }; + let __t1572 = { + let __t1571 = v_V808.clone(); + rt::tl(&__t1571)? + }; + rt::cons(&__t1570, &__t1572) + }; + rt::cons(&__t1565, &__t1573) + }; + let __t1596 = { + let __t1583 = { + let __t1578 = { + let __t1577 = { + let __t1576 = { + let __t1575 = v_V808.clone(); + rt::hd(&__t1575)? }; - rt::cons(&__t1699, &__t1701) + rt::hd(&__t1576)? + }; + rt::apply_direct( + interp, + "shen.op1", + &[__t1577], + )? + }; + let __t1582 = { + let __t1580 = { + let __t1579 = v_V809.clone(); + rt::hd(&__t1579)? }; - rt::cons(&__t1694, &__t1702) + let __t1581 = Value::nil(); + rt::cons(&__t1580, &__t1581) }; - let __t1725 = { - let __t1712 = { - let __t1707 = { - let __t1706 = { - let __t1705 = { - let __t1704 = - v_V820.clone(); - rt::hd(&__t1704)? - }; - rt::hd(&__t1705)? + rt::cons(&__t1578, &__t1582) + }; + let __t1595 = { + let __t1592 = { + let __t1587 = { + let __t1586 = { + let __t1585 = { + let __t1584 = v_V808.clone(); + rt::hd(&__t1584)? }; - rt::apply_direct( - interp, - "shen.op1", - &[__t1706], - )? + rt::hd(&__t1585)? }; - let __t1711 = { - let __t1709 = { - let __t1708 = v_V821.clone(); - rt::hd(&__t1708)? - }; - let __t1710 = Value::nil(); - rt::cons(&__t1709, &__t1710) + rt::apply_direct( + interp, + "shen.op2", + &[__t1586], + )? + }; + let __t1591 = { + let __t1589 = { + let __t1588 = v_V809.clone(); + rt::hd(&__t1588)? }; - rt::cons(&__t1707, &__t1711) + let __t1590 = Value::nil(); + rt::cons(&__t1589, &__t1590) }; - let __t1724 = { - let __t1721 = { - let __t1716 = { - let __t1715 = { - let __t1714 = { - let __t1713 = - v_V820.clone(); - rt::hd(&__t1713)? - }; - rt::hd(&__t1714)? - }; - rt::apply_direct( - interp, - "shen.op2", - &[__t1715], - )? + rt::cons(&__t1587, &__t1591) + }; + let __t1594 = { + let __t1593 = v_V809.clone(); + rt::tl(&__t1593)? + }; + rt::cons(&__t1592, &__t1594) + }; + rt::cons(&__t1583, &__t1595) + }; + let __t1602 = { + let __t1598 = { + let __t1597 = v_V808.clone(); + rt::hd(&__t1597)? + }; + let __t1600 = { + let __t1599 = v_V809.clone(); + rt::hd(&__t1599)? + }; + let __t1601 = v_V810.clone(); + rt::apply_direct( + interp, + "shen.beta", + &[__t1598, __t1600, __t1601], + )? + }; + v_V807 = __t1561; + v_V808 = __t1574; + v_V809 = __t1596; + v_V810 = __t1602; + continue; + } + } else { + { + let __t1523 = { + let __t1505 = { + let __t1503 = v_V808.clone(); + rt::is_cons(&__t1503) + }; + if !rt::is_truthy(interp, &__t1505)? { + Value::bool(false) + } else { + let __t1506 = { + let __t1504 = v_V809.clone(); + rt::is_cons(&__t1504) + }; + Value::bool(rt::is_truthy(interp, &__t1506)?) + } + }; + if match rt::is_truthy(interp, &__t1523) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t1517 = { + let __t1515 = { + let __t1507 = + Value::sym(interp.intern("=")); + let __t1514 = { + let __t1509 = { + let __t1508 = v_V808.clone(); + rt::hd(&__t1508)? }; - let __t1720 = { - let __t1718 = { - let __t1717 = - v_V821.clone(); - rt::hd(&__t1717)? + let __t1513 = { + let __t1511 = { + let __t1510 = + v_V809.clone(); + rt::hd(&__t1510)? }; - let __t1719 = Value::nil(); - rt::cons(&__t1718, &__t1719) + let __t1512 = Value::nil(); + rt::cons(&__t1511, &__t1512) }; - rt::cons(&__t1716, &__t1720) + rt::cons(&__t1509, &__t1513) }; - let __t1723 = { - let __t1722 = v_V821.clone(); - rt::tl(&__t1722)? - }; - rt::cons(&__t1721, &__t1723) + rt::cons(&__t1507, &__t1514) }; - rt::cons(&__t1712, &__t1724) + let __t1516 = v_V807.clone(); + rt::cons(&__t1515, &__t1516) }; - let __t1731 = { - let __t1727 = { - let __t1726 = v_V820.clone(); - rt::hd(&__t1726)? - }; - let __t1729 = { - let __t1728 = v_V821.clone(); - rt::hd(&__t1728)? - }; - let __t1730 = v_V822.clone(); - rt::apply_direct( - interp, - "shen.beta", - &[__t1727, __t1729, __t1730], - )? + let __t1519 = { + let __t1518 = v_V808.clone(); + rt::tl(&__t1518)? }; - v_V819 = __t1690; - v_V820 = __t1703; - v_V821 = __t1725; - v_V822 = __t1731; + let __t1521 = { + let __t1520 = v_V809.clone(); + rt::tl(&__t1520)? + }; + let __t1522 = v_V810.clone(); + v_V807 = __t1517; + v_V808 = __t1519; + v_V809 = __t1521; + v_V810 = __t1522; continue; } } else { { - let __t1647 = { - let __t1629 = { - let __t1627 = v_V820.clone(); - rt::is_cons(&__t1627) - }; - if !rt::is_truthy(interp, &__t1629)? { - Value::bool(false) - } else { - let __t1630 = { - let __t1628 = v_V821.clone(); - rt::is_cons(&__t1628) - }; - Value::bool(rt::is_truthy( - interp, &__t1630, - )?) - } - }; - if match rt::is_truthy(interp, &__t1647) { + let __t1502 = Value::bool(true); + if match rt::is_truthy(interp, &__t1502) { Ok(b) => b, Err(e) => break Err(e), } { - { - let __t1641 = { - let __t1639 = { - let __t1631 = Value::sym( - interp.intern("="), - ); - let __t1638 = { - let __t1633 = { - let __t1632 = - v_V820.clone(); - rt::hd(&__t1632)? - }; - let __t1637 = { - let __t1635 = { - let __t1634 = - v_V821.clone(); - rt::hd(&__t1634)? - }; - let __t1636 = - Value::nil(); - rt::cons( - &__t1635, &__t1636, - ) - }; - rt::cons(&__t1633, &__t1637) - }; - rt::cons(&__t1631, &__t1638) - }; - let __t1640 = v_V819.clone(); - rt::cons(&__t1639, &__t1640) - }; - let __t1643 = { - let __t1642 = v_V820.clone(); - rt::tl(&__t1642)? - }; - let __t1645 = { - let __t1644 = v_V821.clone(); - rt::tl(&__t1644)? - }; - let __t1646 = v_V822.clone(); - v_V819 = __t1641; - v_V820 = __t1643; - v_V821 = __t1645; - v_V822 = __t1646; - continue; - } + break Ok({ + let __t1501 = Value::str("implementation error in shen.triple-stack"); + rt::apply_direct( + interp, + "simple-error", + &[__t1501], + )? + }); } else { - { - let __t1626 = Value::bool(true); - if match rt::is_truthy(interp, &__t1626) - { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1625 = Value::str("implementation error in shen.triple-stack"); - rt::apply_direct( - interp, - "simple-error", - &[__t1625], - )? - }); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } + break Err(ShenError::new( + "cond: no clause matched", + )); } } } @@ -8300,155 +7572,6 @@ fn install_shen_x2e_triple_x2d_stack(interp: &mut Interp) { interp.register_aot_direct("shen.triple-stack", aot_shen_x2e_triple_x2d_stack); } -/// AOT-compiled from KL `(defun shen.custom-pattern-triple-stack ...)` -pub fn aot_shen_x2e_custom_x2d_pattern_x2d_triple_x2d_stack( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 6 { - return Err(ShenError::new(format!( - "shen.custom-pattern-triple-stack: expected 6 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V823 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V824 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V825 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V826 = args[3].clone(); - #[allow(unused_mut)] - let mut v_V827 = args[4].clone(); - #[allow(unused_mut)] - let mut v_V828 = args[5].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W829 = { - let __t1830 = { - let __t1828 = v_V824.clone(); - let __t1829 = v_V826.clone(); - rt::apply_direct(interp, "@p", &[__t1828, __t1829])? - }; - rt::apply_direct(interp, "shen.custom-pattern-reducer", &[__t1830])? - }; - { - let __t1832 = { - let __t1831 = v_W829.clone(); - rt::apply_direct(interp, "tuple?", &[__t1831])? - }; - if match rt::is_truthy(interp, &__t1832) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W830 = { - let __t1833 = v_W829.clone(); - rt::apply_direct(interp, "fst", &[__t1833])? - }; - { - let v_W831 = { - let __t1834 = v_W829.clone(); - rt::apply_direct(interp, "snd", &[__t1834])? - }; - break Ok({ - let __t1838 = { - let __t1836 = { - let __t1835 = v_W830.clone(); - rt::apply_direct(interp, "reverse", &[__t1835])? - }; - let __t1837 = v_V823.clone(); - rt::apply_direct(interp, "append", &[__t1836, __t1837])? - }; - let __t1844 = { - let __t1842 = { - let __t1840 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z832 = args[0].clone(); - Ok({ - let __t1839 = v_Z832.clone(); - rt::apply_direct(interp, "fst", &[__t1839])? - }) - }, - Vec::new(), - interp, - ) - }; - let __t1841 = v_W831.clone(); - rt::apply_direct(interp, "map", &[__t1840, __t1841])? - }; - let __t1843 = v_V825.clone(); - rt::apply_direct(interp, "append", &[__t1842, __t1843])? - }; - let __t1850 = { - let __t1848 = { - let __t1846 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z833 = args[0].clone(); - Ok({ - let __t1845 = v_Z833.clone(); - rt::apply_direct(interp, "snd", &[__t1845])? - }) - }, - Vec::new(), - interp, - ) - }; - let __t1847 = v_W831.clone(); - rt::apply_direct(interp, "map", &[__t1846, __t1847])? - }; - let __t1849 = v_V827.clone(); - rt::apply_direct(interp, "append", &[__t1848, __t1849])? - }; - let __t1854 = { - let __t1851 = v_V824.clone(); - let __t1852 = v_V826.clone(); - let __t1853 = v_V828.clone(); - rt::apply_direct( - interp, - "shen.beta", - &[__t1851, __t1852, __t1853], - )? - }; - rt::apply_direct( - interp, - "shen.triple-stack", - &[__t1838, __t1844, __t1850, __t1854], - )? - }); - } - } - } else { - break Ok({ - let __t1855 = v_V824.clone(); - rt::apply_direct(interp, "shen.constructor-error", &[__t1855])? - }); - } - } - } - } -} - -fn install_shen_x2e_custom_x2d_pattern_x2d_triple_x2d_stack(interp: &mut Interp) { - interp.register_native( - "shen.custom-pattern-triple-stack", - 6, - aot_shen_x2e_custom_x2d_pattern_x2d_triple_x2d_stack, - ); - interp.register_aot_direct( - "shen.custom-pattern-triple-stack", - aot_shen_x2e_custom_x2d_pattern_x2d_triple_x2d_stack, - ); -} - /// AOT-compiled from KL `(defun shen.rectify-test ...)` pub fn aot_shen_x2e_rectify_x2d_test(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { @@ -8458,111 +7581,111 @@ pub fn aot_shen_x2e_rectify_x2d_test(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V836 = args[0].clone(); + let mut v_V813 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1883 = { - let __t1881 = Value::nil(); - let __t1882 = v_V836.clone(); - rt::eq(&__t1881, &__t1882) + let __t1706 = { + let __t1704 = Value::nil(); + let __t1705 = v_V813.clone(); + rt::eq(&__t1704, &__t1705) }; - if match rt::is_truthy(interp, &__t1883) { + if match rt::is_truthy(interp, &__t1706) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1880 = { - let __t1877 = { - let __t1873 = v_V836.clone(); - rt::is_cons(&__t1873) + let __t1703 = { + let __t1700 = { + let __t1696 = v_V813.clone(); + rt::is_cons(&__t1696) }; - if !rt::is_truthy(interp, &__t1877)? { + if !rt::is_truthy(interp, &__t1700)? { Value::bool(false) } else { - let __t1878 = { - let __t1874 = Value::nil(); - let __t1876 = { - let __t1875 = v_V836.clone(); - rt::tl(&__t1875)? + let __t1701 = { + let __t1697 = Value::nil(); + let __t1699 = { + let __t1698 = v_V813.clone(); + rt::tl(&__t1698)? }; - rt::eq(&__t1874, &__t1876) + rt::eq(&__t1697, &__t1699) }; - Value::bool(rt::is_truthy(interp, &__t1878)?) + Value::bool(rt::is_truthy(interp, &__t1701)?) } }; - if match rt::is_truthy(interp, &__t1880) { + if match rt::is_truthy(interp, &__t1703) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1879 = v_V836.clone(); - rt::hd(&__t1879)? + let __t1702 = v_V813.clone(); + rt::hd(&__t1702)? }); } else { { - let __t1872 = { - let __t1861 = { - let __t1858 = v_V836.clone(); - rt::is_cons(&__t1858) + let __t1695 = { + let __t1684 = { + let __t1681 = v_V813.clone(); + rt::is_cons(&__t1681) }; - if !rt::is_truthy(interp, &__t1861)? { + if !rt::is_truthy(interp, &__t1684)? { Value::bool(false) } else { - let __t1862 = { - let __t1860 = { - let __t1859 = v_V836.clone(); - rt::tl(&__t1859)? + let __t1685 = { + let __t1683 = { + let __t1682 = v_V813.clone(); + rt::tl(&__t1682)? }; - rt::is_cons(&__t1860) + rt::is_cons(&__t1683) }; - Value::bool(rt::is_truthy(interp, &__t1862)?) + Value::bool(rt::is_truthy(interp, &__t1685)?) } }; - if match rt::is_truthy(interp, &__t1872) { + if match rt::is_truthy(interp, &__t1695) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1863 = Value::sym(interp.intern("and")); - let __t1871 = { - let __t1865 = { - let __t1864 = v_V836.clone(); - rt::hd(&__t1864)? + let __t1686 = Value::sym(interp.intern("and")); + let __t1694 = { + let __t1688 = { + let __t1687 = v_V813.clone(); + rt::hd(&__t1687)? }; - let __t1870 = { - let __t1868 = { - let __t1867 = { - let __t1866 = v_V836.clone(); - rt::tl(&__t1866)? + let __t1693 = { + let __t1691 = { + let __t1690 = { + let __t1689 = v_V813.clone(); + rt::tl(&__t1689)? }; rt::apply_direct( interp, "shen.rectify-test", - &[__t1867], + &[__t1690], )? }; - let __t1869 = Value::nil(); - rt::cons(&__t1868, &__t1869) + let __t1692 = Value::nil(); + rt::cons(&__t1691, &__t1692) }; - rt::cons(&__t1865, &__t1870) + rt::cons(&__t1688, &__t1693) }; - rt::cons(&__t1863, &__t1871) + rt::cons(&__t1686, &__t1694) }); } else { { - let __t1857 = Value::bool(true); - if match rt::is_truthy(interp, &__t1857) { + let __t1680 = Value::bool(true); + if match rt::is_truthy(interp, &__t1680) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1856 = Value::str( + let __t1679 = Value::str( "implementation error in shen.rectify-test", ); - rt::apply_direct(interp, "simple-error", &[__t1856])? + rt::apply_direct(interp, "simple-error", &[__t1679])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -8591,363 +7714,363 @@ pub fn aot_shen_x2e_beta(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V847.clone()); + break Ok(v_V824.clone()); } else { { - let __t1975 = { - let __t1973 = { - let __t1947 = v_V848.clone(); - rt::is_cons(&__t1947) + let __t1798 = { + let __t1796 = { + let __t1770 = v_V825.clone(); + rt::is_cons(&__t1770) }; - if !rt::is_truthy(interp, &__t1973)? { + if !rt::is_truthy(interp, &__t1796)? { Value::bool(false) } else { - let __t1974 = { - let __t1971 = { - let __t1948 = Value::sym(interp.intern("lambda")); - let __t1950 = { - let __t1949 = v_V848.clone(); - rt::hd(&__t1949)? + let __t1797 = { + let __t1794 = { + let __t1771 = Value::sym(interp.intern("lambda")); + let __t1773 = { + let __t1772 = v_V825.clone(); + rt::hd(&__t1772)? }; - rt::eq(&__t1948, &__t1950) + rt::eq(&__t1771, &__t1773) }; - if !rt::is_truthy(interp, &__t1971)? { + if !rt::is_truthy(interp, &__t1794)? { Value::bool(false) } else { - let __t1972 = { - let __t1969 = { - let __t1952 = { - let __t1951 = v_V848.clone(); - rt::tl(&__t1951)? + let __t1795 = { + let __t1792 = { + let __t1775 = { + let __t1774 = v_V825.clone(); + rt::tl(&__t1774)? }; - rt::is_cons(&__t1952) + rt::is_cons(&__t1775) }; - if !rt::is_truthy(interp, &__t1969)? { + if !rt::is_truthy(interp, &__t1792)? { Value::bool(false) } else { - let __t1970 = { - let __t1967 = { - let __t1955 = { - let __t1954 = { - let __t1953 = v_V848.clone(); - rt::tl(&__t1953)? + let __t1793 = { + let __t1790 = { + let __t1778 = { + let __t1777 = { + let __t1776 = v_V825.clone(); + rt::tl(&__t1776)? }; - rt::tl(&__t1954)? + rt::tl(&__t1777)? }; - rt::is_cons(&__t1955) + rt::is_cons(&__t1778) }; - if !rt::is_truthy(interp, &__t1967)? { + if !rt::is_truthy(interp, &__t1790)? { Value::bool(false) } else { - let __t1968 = { - let __t1965 = { - let __t1956 = Value::nil(); - let __t1960 = { - let __t1959 = { - let __t1958 = { - let __t1957 = - v_V848.clone(); - rt::tl(&__t1957)? + let __t1791 = { + let __t1788 = { + let __t1779 = Value::nil(); + let __t1783 = { + let __t1782 = { + let __t1781 = { + let __t1780 = + v_V825.clone(); + rt::tl(&__t1780)? }; - rt::tl(&__t1958)? + rt::tl(&__t1781)? }; - rt::tl(&__t1959)? + rt::tl(&__t1782)? }; - rt::eq(&__t1956, &__t1960) + rt::eq(&__t1779, &__t1783) }; - if !rt::is_truthy(interp, &__t1965)? { + if !rt::is_truthy(interp, &__t1788)? { Value::bool(false) } else { - let __t1966 = { - let __t1961 = v_V846.clone(); - let __t1964 = { - let __t1963 = { - let __t1962 = - v_V848.clone(); - rt::tl(&__t1962)? + let __t1789 = { + let __t1784 = v_V823.clone(); + let __t1787 = { + let __t1786 = { + let __t1785 = + v_V825.clone(); + rt::tl(&__t1785)? }; - rt::hd(&__t1963)? + rt::hd(&__t1786)? }; - rt::eq(&__t1961, &__t1964) + rt::eq(&__t1784, &__t1787) }; Value::bool(rt::is_truthy( - interp, &__t1966, + interp, &__t1789, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1968)?) + Value::bool(rt::is_truthy(interp, &__t1791)?) } }; - Value::bool(rt::is_truthy(interp, &__t1970)?) + Value::bool(rt::is_truthy(interp, &__t1793)?) } }; - Value::bool(rt::is_truthy(interp, &__t1972)?) + Value::bool(rt::is_truthy(interp, &__t1795)?) } }; - Value::bool(rt::is_truthy(interp, &__t1974)?) + Value::bool(rt::is_truthy(interp, &__t1797)?) } }; - if match rt::is_truthy(interp, &__t1975) { + if match rt::is_truthy(interp, &__t1798) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V848.clone()); + break Ok(v_V825.clone()); } else { { - let __t1946 = { - let __t1925 = { - let __t1892 = v_V848.clone(); - rt::is_cons(&__t1892) + let __t1769 = { + let __t1748 = { + let __t1715 = v_V825.clone(); + rt::is_cons(&__t1715) }; - if !rt::is_truthy(interp, &__t1925)? { + if !rt::is_truthy(interp, &__t1748)? { Value::bool(false) } else { - let __t1926 = { - let __t1923 = { - let __t1893 = Value::sym(interp.intern("let")); - let __t1895 = { - let __t1894 = v_V848.clone(); - rt::hd(&__t1894)? + let __t1749 = { + let __t1746 = { + let __t1716 = Value::sym(interp.intern("let")); + let __t1718 = { + let __t1717 = v_V825.clone(); + rt::hd(&__t1717)? }; - rt::eq(&__t1893, &__t1895) + rt::eq(&__t1716, &__t1718) }; - if !rt::is_truthy(interp, &__t1923)? { + if !rt::is_truthy(interp, &__t1746)? { Value::bool(false) } else { - let __t1924 = { - let __t1921 = { - let __t1897 = { - let __t1896 = v_V848.clone(); - rt::tl(&__t1896)? + let __t1747 = { + let __t1744 = { + let __t1720 = { + let __t1719 = v_V825.clone(); + rt::tl(&__t1719)? }; - rt::is_cons(&__t1897) + rt::is_cons(&__t1720) }; - if !rt::is_truthy(interp, &__t1921)? { + if !rt::is_truthy(interp, &__t1744)? { Value::bool(false) } else { - let __t1922 = { - let __t1919 = { - let __t1900 = { - let __t1899 = { - let __t1898 = v_V848.clone(); - rt::tl(&__t1898)? + let __t1745 = { + let __t1742 = { + let __t1723 = { + let __t1722 = { + let __t1721 = v_V825.clone(); + rt::tl(&__t1721)? }; - rt::tl(&__t1899)? + rt::tl(&__t1722)? }; - rt::is_cons(&__t1900) + rt::is_cons(&__t1723) }; - if !rt::is_truthy(interp, &__t1919)? { + if !rt::is_truthy(interp, &__t1742)? { Value::bool(false) } else { - let __t1920 = { - let __t1917 = { - let __t1904 = { - let __t1903 = { - let __t1902 = { - let __t1901 = - v_V848.clone(); - rt::tl(&__t1901)? + let __t1743 = { + let __t1740 = { + let __t1727 = { + let __t1726 = { + let __t1725 = { + let __t1724 = + v_V825.clone(); + rt::tl(&__t1724)? }; - rt::tl(&__t1902)? + rt::tl(&__t1725)? }; - rt::tl(&__t1903)? + rt::tl(&__t1726)? }; - rt::is_cons(&__t1904) + rt::is_cons(&__t1727) }; - if !rt::is_truthy(interp, &__t1917)? + if !rt::is_truthy(interp, &__t1740)? { Value::bool(false) } else { - let __t1918 = { - let __t1915 = { - let __t1905 = + let __t1741 = { + let __t1738 = { + let __t1728 = Value::nil(); - let __t1910 = { - let __t1909 = { - let __t1908 = { - let __t1907 = { - let __t1906 = v_V848.clone(); - rt::tl(&__t1906)? + let __t1733 = { + let __t1732 = { + let __t1731 = { + let __t1730 = { + let __t1729 = v_V825.clone(); + rt::tl(&__t1729)? }; - rt::tl(&__t1907)? + rt::tl(&__t1730)? }; rt::tl( - &__t1908, + &__t1731, )? }; - rt::tl(&__t1909)? + rt::tl(&__t1732)? }; rt::eq( - &__t1905, &__t1910, + &__t1728, &__t1733, ) }; if !rt::is_truthy( - interp, &__t1915, + interp, &__t1738, )? { Value::bool(false) } else { - let __t1916 = { - let __t1911 = - v_V846.clone(); - let __t1914 = { - let __t1913 = { - let __t1912 = v_V848.clone(); - rt::tl(&__t1912)? + let __t1739 = { + let __t1734 = + v_V823.clone(); + let __t1737 = { + let __t1736 = { + let __t1735 = v_V825.clone(); + rt::tl(&__t1735)? }; rt::hd( - &__t1913, + &__t1736, )? }; rt::eq( - &__t1911, - &__t1914, + &__t1734, + &__t1737, ) }; Value::bool( rt::is_truthy( interp, - &__t1916, + &__t1739, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t1918, + interp, &__t1741, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1920, + interp, &__t1743, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1922)?) + Value::bool(rt::is_truthy(interp, &__t1745)?) } }; - Value::bool(rt::is_truthy(interp, &__t1924)?) + Value::bool(rt::is_truthy(interp, &__t1747)?) } }; - Value::bool(rt::is_truthy(interp, &__t1926)?) + Value::bool(rt::is_truthy(interp, &__t1749)?) } }; - if match rt::is_truthy(interp, &__t1946) { + if match rt::is_truthy(interp, &__t1769) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1927 = Value::sym(interp.intern("let")); - let __t1945 = { - let __t1930 = { - let __t1929 = { - let __t1928 = v_V848.clone(); - rt::tl(&__t1928)? + let __t1750 = Value::sym(interp.intern("let")); + let __t1768 = { + let __t1753 = { + let __t1752 = { + let __t1751 = v_V825.clone(); + rt::tl(&__t1751)? }; - rt::hd(&__t1929)? + rt::hd(&__t1752)? }; - let __t1944 = { - let __t1939 = { - let __t1933 = { - let __t1932 = { - let __t1931 = v_V848.clone(); - rt::tl(&__t1931)? + let __t1767 = { + let __t1762 = { + let __t1756 = { + let __t1755 = { + let __t1754 = v_V825.clone(); + rt::tl(&__t1754)? }; - rt::hd(&__t1932)? + rt::hd(&__t1755)? }; - let __t1934 = v_V847.clone(); - let __t1938 = { - let __t1937 = { - let __t1936 = { - let __t1935 = v_V848.clone(); - rt::tl(&__t1935)? + let __t1757 = v_V824.clone(); + let __t1761 = { + let __t1760 = { + let __t1759 = { + let __t1758 = v_V825.clone(); + rt::tl(&__t1758)? }; - rt::tl(&__t1936)? + rt::tl(&__t1759)? }; - rt::hd(&__t1937)? + rt::hd(&__t1760)? }; rt::apply_direct( interp, "shen.beta", - &[__t1933, __t1934, __t1938], + &[__t1756, __t1757, __t1761], )? }; - let __t1943 = { - let __t1942 = { - let __t1941 = { - let __t1940 = v_V848.clone(); - rt::tl(&__t1940)? + let __t1766 = { + let __t1765 = { + let __t1764 = { + let __t1763 = v_V825.clone(); + rt::tl(&__t1763)? }; - rt::tl(&__t1941)? + rt::tl(&__t1764)? }; - rt::tl(&__t1942)? + rt::tl(&__t1765)? }; - rt::cons(&__t1939, &__t1943) + rt::cons(&__t1762, &__t1766) }; - rt::cons(&__t1930, &__t1944) + rt::cons(&__t1753, &__t1767) }; - rt::cons(&__t1927, &__t1945) + rt::cons(&__t1750, &__t1768) }); } else { { - let __t1891 = { - let __t1885 = v_V848.clone(); - rt::is_cons(&__t1885) + let __t1714 = { + let __t1708 = v_V825.clone(); + rt::is_cons(&__t1708) }; - if match rt::is_truthy(interp, &__t1891) { + if match rt::is_truthy(interp, &__t1714) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1889 = { - let v_V846 = v_V846.clone(); - let v_V847 = v_V847.clone(); + let __t1712 = { + let v_V823 = v_V823.clone(); + let v_V824 = v_V824.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z849 = args[0].clone(); + let v_Z826 = args[0].clone(); Ok({ - let __t1886 = v_V846.clone(); - let __t1887 = v_V847.clone(); - let __t1888 = v_Z849.clone(); + let __t1709 = v_V823.clone(); + let __t1710 = v_V824.clone(); + let __t1711 = v_Z826.clone(); rt::apply_direct( interp, "shen.beta", - &[__t1886, __t1887, __t1888], + &[__t1709, __t1710, __t1711], )? }) }, - vec![v_V846, v_V847], + vec![v_V823, v_V824], interp, ) }; - let __t1890 = v_V848.clone(); - rt::apply_direct(interp, "map", &[__t1889, __t1890])? + let __t1713 = v_V825.clone(); + rt::apply_direct(interp, "map", &[__t1712, __t1713])? }); } else { { - let __t1884 = Value::bool(true); - if match rt::is_truthy(interp, &__t1884) { + let __t1707 = Value::bool(true); + if match rt::is_truthy(interp, &__t1707) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V848.clone()); + break Ok(v_V825.clone()); } else { break Err(ShenError::new( "cond: no clause matched", @@ -8979,71 +8102,71 @@ pub fn aot_shen_x2e_op1(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("hd"))); } else { { - let __t1989 = { - let __t1987 = Value::sym(interp.intern("@s")); - let __t1988 = v_V852.clone(); - rt::eq(&__t1987, &__t1988) + let __t1812 = { + let __t1810 = Value::sym(interp.intern("@s")); + let __t1811 = v_V829.clone(); + rt::eq(&__t1810, &__t1811) }; - if match rt::is_truthy(interp, &__t1989) { + if match rt::is_truthy(interp, &__t1812) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("hdstr"))); } else { { - let __t1986 = { - let __t1984 = Value::sym(interp.intern("@p")); - let __t1985 = v_V852.clone(); - rt::eq(&__t1984, &__t1985) + let __t1809 = { + let __t1807 = Value::sym(interp.intern("@p")); + let __t1808 = v_V829.clone(); + rt::eq(&__t1807, &__t1808) }; - if match rt::is_truthy(interp, &__t1986) { + if match rt::is_truthy(interp, &__t1809) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("fst"))); } else { { - let __t1983 = { - let __t1981 = Value::sym(interp.intern("@v")); - let __t1982 = v_V852.clone(); - rt::eq(&__t1981, &__t1982) + let __t1806 = { + let __t1804 = Value::sym(interp.intern("@v")); + let __t1805 = v_V829.clone(); + rt::eq(&__t1804, &__t1805) }; - if match rt::is_truthy(interp, &__t1983) { + if match rt::is_truthy(interp, &__t1806) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("hdv"))); } else { { - let __t1980 = Value::bool(true); - if match rt::is_truthy(interp, &__t1980) { + let __t1803 = Value::bool(true); + if match rt::is_truthy(interp, &__t1803) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1979 = Value::str( + let __t1802 = Value::str( "implementation error in shen.op1", ); rt::apply_direct( interp, "simple-error", - &[__t1979], + &[__t1802], )? }); } else { @@ -9077,71 +8200,71 @@ pub fn aot_shen_x2e_op2(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("tl"))); } else { { - let __t2003 = { - let __t2001 = Value::sym(interp.intern("@s")); - let __t2002 = v_V855.clone(); - rt::eq(&__t2001, &__t2002) + let __t1826 = { + let __t1824 = Value::sym(interp.intern("@s")); + let __t1825 = v_V832.clone(); + rt::eq(&__t1824, &__t1825) }; - if match rt::is_truthy(interp, &__t2003) { + if match rt::is_truthy(interp, &__t1826) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("tlstr"))); } else { { - let __t2000 = { - let __t1998 = Value::sym(interp.intern("@p")); - let __t1999 = v_V855.clone(); - rt::eq(&__t1998, &__t1999) + let __t1823 = { + let __t1821 = Value::sym(interp.intern("@p")); + let __t1822 = v_V832.clone(); + rt::eq(&__t1821, &__t1822) }; - if match rt::is_truthy(interp, &__t2000) { + if match rt::is_truthy(interp, &__t1823) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("snd"))); } else { { - let __t1997 = { - let __t1995 = Value::sym(interp.intern("@v")); - let __t1996 = v_V855.clone(); - rt::eq(&__t1995, &__t1996) + let __t1820 = { + let __t1818 = Value::sym(interp.intern("@v")); + let __t1819 = v_V832.clone(); + rt::eq(&__t1818, &__t1819) }; - if match rt::is_truthy(interp, &__t1997) { + if match rt::is_truthy(interp, &__t1820) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("tlv"))); } else { { - let __t1994 = Value::bool(true); - if match rt::is_truthy(interp, &__t1994) { + let __t1817 = Value::bool(true); + if match rt::is_truthy(interp, &__t1817) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1993 = Value::str( + let __t1816 = Value::str( "implementation error in shen.op2", ); rt::apply_direct( interp, "simple-error", - &[__t1993], + &[__t1816], )? }); } else { @@ -9175,71 +8298,71 @@ pub fn aot_shen_x2e_op_x2d_test(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V858 = args[0].clone(); + let mut v_V835 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2020 = { - let __t2018 = Value::sym(interp.intern("cons")); - let __t2019 = v_V858.clone(); - rt::eq(&__t2018, &__t2019) + let __t1843 = { + let __t1841 = Value::sym(interp.intern("cons")); + let __t1842 = v_V835.clone(); + rt::eq(&__t1841, &__t1842) }; - if match rt::is_truthy(interp, &__t2020) { + if match rt::is_truthy(interp, &__t1843) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("cons?"))); } else { { - let __t2017 = { - let __t2015 = Value::sym(interp.intern("@s")); - let __t2016 = v_V858.clone(); - rt::eq(&__t2015, &__t2016) + let __t1840 = { + let __t1838 = Value::sym(interp.intern("@s")); + let __t1839 = v_V835.clone(); + rt::eq(&__t1838, &__t1839) }; - if match rt::is_truthy(interp, &__t2017) { + if match rt::is_truthy(interp, &__t1840) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.+string?"))); } else { { - let __t2014 = { - let __t2012 = Value::sym(interp.intern("@p")); - let __t2013 = v_V858.clone(); - rt::eq(&__t2012, &__t2013) + let __t1837 = { + let __t1835 = Value::sym(interp.intern("@p")); + let __t1836 = v_V835.clone(); + rt::eq(&__t1835, &__t1836) }; - if match rt::is_truthy(interp, &__t2014) { + if match rt::is_truthy(interp, &__t1837) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("tuple?"))); } else { { - let __t2011 = { - let __t2009 = Value::sym(interp.intern("@v")); - let __t2010 = v_V858.clone(); - rt::eq(&__t2009, &__t2010) + let __t1834 = { + let __t1832 = Value::sym(interp.intern("@v")); + let __t1833 = v_V835.clone(); + rt::eq(&__t1832, &__t1833) }; - if match rt::is_truthy(interp, &__t2011) { + if match rt::is_truthy(interp, &__t1834) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.+vector?"))); } else { { - let __t2008 = Value::bool(true); - if match rt::is_truthy(interp, &__t2008) { + let __t1831 = Value::bool(true); + if match rt::is_truthy(interp, &__t1831) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2007 = Value::str( + let __t1830 = Value::str( "implementation error in shen.op-test", ); rt::apply_direct( interp, "simple-error", - &[__t2007], + &[__t1830], )? }); } else { @@ -9273,30 +8396,30 @@ pub fn aot_shen_x2e__x2b_string_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V859 = args[0].clone(); + let mut v_V836 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2025 = { - let __t2023 = Value::str(""); - let __t2024 = v_V859.clone(); - rt::eq(&__t2023, &__t2024) + let __t1848 = { + let __t1846 = Value::str(""); + let __t1847 = v_V836.clone(); + rt::eq(&__t1846, &__t1847) }; - if match rt::is_truthy(interp, &__t2025) { + if match rt::is_truthy(interp, &__t1848) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2022 = Value::bool(true); - if match rt::is_truthy(interp, &__t2022) { + let __t1845 = Value::bool(true); + if match rt::is_truthy(interp, &__t1845) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2021 = v_V859.clone(); - rt::is_string(&__t2021) + let __t1844 = v_V836.clone(); + rt::is_string(&__t1844) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9321,33 +8444,33 @@ pub fn aot_shen_x2e__x2b_vector_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V860 = args[0].clone(); + let mut v_V837 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2031 = { - let __t2028 = v_V860.clone(); - let __t2030 = { - let __t2029 = Value::int(0i64); - rt::apply_direct(interp, "vector", &[__t2029])? + let __t1854 = { + let __t1851 = v_V837.clone(); + let __t1853 = { + let __t1852 = Value::int(0i64); + rt::apply_direct(interp, "vector", &[__t1852])? }; - rt::eq(&__t2028, &__t2030) + rt::eq(&__t1851, &__t1853) }; - if match rt::is_truthy(interp, &__t2031) { + if match rt::is_truthy(interp, &__t1854) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2027 = Value::bool(true); - if match rt::is_truthy(interp, &__t2027) { + let __t1850 = Value::bool(true); + if match rt::is_truthy(interp, &__t1850) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2026 = v_V860.clone(); - rt::is_absvector(&__t2026) + let __t1849 = v_V837.clone(); + rt::is_absvector(&__t1849) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9372,50 +8495,50 @@ pub fn aot_factorise(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V863 = args[0].clone(); + let mut v_V840 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2043 = { - let __t2039 = Value::sym(interp.intern("+")); - let __t2040 = v_V863.clone(); - rt::eq(&__t2039, &__t2040) + let __t1866 = { + let __t1862 = Value::sym(interp.intern("+")); + let __t1863 = v_V840.clone(); + rt::eq(&__t1862, &__t1863) }; - if match rt::is_truthy(interp, &__t2043) { + if match rt::is_truthy(interp, &__t1866) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2041 = Value::sym(interp.intern("shen.*factorise?*")); - let __t2042 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t2041, __t2042])? + let __t1864 = Value::sym(interp.intern("shen.*factorise?*")); + let __t1865 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t1864, __t1865])? }); } else { { - let __t2038 = { - let __t2034 = Value::sym(interp.intern("-")); - let __t2035 = v_V863.clone(); - rt::eq(&__t2034, &__t2035) + let __t1861 = { + let __t1857 = Value::sym(interp.intern("-")); + let __t1858 = v_V840.clone(); + rt::eq(&__t1857, &__t1858) }; - if match rt::is_truthy(interp, &__t2038) { + if match rt::is_truthy(interp, &__t1861) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2036 = Value::sym(interp.intern("shen.*factorise?*")); - let __t2037 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t2036, __t2037])? + let __t1859 = Value::sym(interp.intern("shen.*factorise?*")); + let __t1860 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t1859, __t1860])? }); } else { { - let __t2033 = Value::bool(true); - if match rt::is_truthy(interp, &__t2033) { + let __t1856 = Value::bool(true); + if match rt::is_truthy(interp, &__t1856) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2032 = Value::str("factorise expects a + or a -\n"); - rt::apply_direct(interp, "simple-error", &[__t2032])? + let __t1855 = Value::str("factorise expects a + or a -\n"); + rt::apply_direct(interp, "simple-error", &[__t1855])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9442,30 +8565,30 @@ pub fn aot_shen_x2e_factorise_x2d_code(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V864 = args[0].clone(); + let mut v_V841 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2047 = { - let __t2045 = Value::sym(interp.intern("shen.*factorise?*")); - rt::apply_direct(interp, "value", &[__t2045])? + let __t1870 = { + let __t1868 = Value::sym(interp.intern("shen.*factorise?*")); + rt::apply_direct(interp, "value", &[__t1868])? }; - if match rt::is_truthy(interp, &__t2047) { + if match rt::is_truthy(interp, &__t1870) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2046 = v_V864.clone(); - rt::apply_direct(interp, "shen.factor", &[__t2046])? + let __t1869 = v_V841.clone(); + rt::apply_direct(interp, "shen.factor", &[__t1869])? }); } else { { - let __t2044 = Value::bool(true); - if match rt::is_truthy(interp, &__t2044) { + let __t1867 = Value::bool(true); + if match rt::is_truthy(interp, &__t1867) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V864.clone()); + break Ok(v_V841.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -9489,228 +8612,228 @@ pub fn aot_shen_x2e_factor(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t2094 = Value::sym(interp.intern("defun")); - let __t2112 = { - let __t2097 = { - let __t2096 = { - let __t2095 = v_V865.clone(); - rt::tl(&__t2095)? - }; - rt::hd(&__t2096)? + let __t1917 = Value::sym(interp.intern("defun")); + let __t1935 = { + let __t1920 = { + let __t1919 = { + let __t1918 = v_V842.clone(); + rt::tl(&__t1918)? + }; + rt::hd(&__t1919)? }; - let __t2111 = { - let __t2101 = { - let __t2100 = { - let __t2099 = { - let __t2098 = v_V865.clone(); - rt::tl(&__t2098)? + let __t1934 = { + let __t1924 = { + let __t1923 = { + let __t1922 = { + let __t1921 = v_V842.clone(); + rt::tl(&__t1921)? }; - rt::tl(&__t2099)? + rt::tl(&__t1922)? }; - rt::hd(&__t2100)? - }; - let __t2110 = { - let __t2108 = { - let __t2107 = { - let __t2106 = { - let __t2105 = { - let __t2104 = { - let __t2103 = { - let __t2102 = v_V865.clone(); - rt::tl(&__t2102)? + rt::hd(&__t1923)? + }; + let __t1933 = { + let __t1931 = { + let __t1930 = { + let __t1929 = { + let __t1928 = { + let __t1927 = { + let __t1926 = { + let __t1925 = v_V842.clone(); + rt::tl(&__t1925)? }; - rt::tl(&__t2103)? + rt::tl(&__t1926)? }; - rt::tl(&__t2104)? + rt::tl(&__t1927)? }; - rt::hd(&__t2105)? + rt::hd(&__t1928)? }; - rt::tl(&__t2106)? + rt::tl(&__t1929)? }; - rt::apply_direct(interp, "shen.factor-recognisors", &[__t2107])? + rt::apply_direct(interp, "shen.factor-recognisors", &[__t1930])? }; - let __t2109 = Value::nil(); - rt::cons(&__t2108, &__t2109) + let __t1932 = Value::nil(); + rt::cons(&__t1931, &__t1932) }; - rt::cons(&__t2101, &__t2110) + rt::cons(&__t1924, &__t1933) }; - rt::cons(&__t2097, &__t2111) + rt::cons(&__t1920, &__t1934) }; - rt::cons(&__t2094, &__t2112) + rt::cons(&__t1917, &__t1935) }); } else { { - let __t2048 = Value::bool(true); - if match rt::is_truthy(interp, &__t2048) { + let __t1871 = Value::bool(true); + if match rt::is_truthy(interp, &__t1871) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V865.clone()); + break Ok(v_V842.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -9737,540 +8860,540 @@ pub fn aot_shen_x2e_factor_x2d_recognisors( ))); } #[allow(unused_mut)] - let mut v_V868 = args[0].clone(); + let mut v_V845 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2302 = { - let __t2297 = { - let __t2276 = v_V868.clone(); - rt::is_cons(&__t2276) + let __t2125 = { + let __t2120 = { + let __t2099 = v_V845.clone(); + rt::is_cons(&__t2099) }; - if !rt::is_truthy(interp, &__t2297)? { + if !rt::is_truthy(interp, &__t2120)? { Value::bool(false) } else { - let __t2298 = { - let __t2295 = { - let __t2278 = { - let __t2277 = v_V868.clone(); - rt::hd(&__t2277)? + let __t2121 = { + let __t2118 = { + let __t2101 = { + let __t2100 = v_V845.clone(); + rt::hd(&__t2100)? }; - rt::is_cons(&__t2278) + rt::is_cons(&__t2101) }; - if !rt::is_truthy(interp, &__t2295)? { + if !rt::is_truthy(interp, &__t2118)? { Value::bool(false) } else { - let __t2296 = { - let __t2293 = { - let __t2279 = Value::bool(true); - let __t2282 = { - let __t2281 = { - let __t2280 = v_V868.clone(); - rt::hd(&__t2280)? + let __t2119 = { + let __t2116 = { + let __t2102 = Value::bool(true); + let __t2105 = { + let __t2104 = { + let __t2103 = v_V845.clone(); + rt::hd(&__t2103)? }; - rt::hd(&__t2281)? + rt::hd(&__t2104)? }; - rt::eq(&__t2279, &__t2282) + rt::eq(&__t2102, &__t2105) }; - if !rt::is_truthy(interp, &__t2293)? { + if !rt::is_truthy(interp, &__t2116)? { Value::bool(false) } else { - let __t2294 = { - let __t2291 = { - let __t2285 = { - let __t2284 = { - let __t2283 = v_V868.clone(); - rt::hd(&__t2283)? + let __t2117 = { + let __t2114 = { + let __t2108 = { + let __t2107 = { + let __t2106 = v_V845.clone(); + rt::hd(&__t2106)? }; - rt::tl(&__t2284)? + rt::tl(&__t2107)? }; - rt::is_cons(&__t2285) + rt::is_cons(&__t2108) }; - if !rt::is_truthy(interp, &__t2291)? { + if !rt::is_truthy(interp, &__t2114)? { Value::bool(false) } else { - let __t2292 = { - let __t2286 = Value::nil(); - let __t2290 = { - let __t2289 = { - let __t2288 = { - let __t2287 = v_V868.clone(); - rt::hd(&__t2287)? + let __t2115 = { + let __t2109 = Value::nil(); + let __t2113 = { + let __t2112 = { + let __t2111 = { + let __t2110 = v_V845.clone(); + rt::hd(&__t2110)? }; - rt::tl(&__t2288)? + rt::tl(&__t2111)? }; - rt::tl(&__t2289)? + rt::tl(&__t2112)? }; - rt::eq(&__t2286, &__t2290) + rt::eq(&__t2109, &__t2113) }; - Value::bool(rt::is_truthy(interp, &__t2292)?) + Value::bool(rt::is_truthy(interp, &__t2115)?) } }; - Value::bool(rt::is_truthy(interp, &__t2294)?) + Value::bool(rt::is_truthy(interp, &__t2117)?) } }; - Value::bool(rt::is_truthy(interp, &__t2296)?) + Value::bool(rt::is_truthy(interp, &__t2119)?) } }; - Value::bool(rt::is_truthy(interp, &__t2298)?) + Value::bool(rt::is_truthy(interp, &__t2121)?) } }; - if match rt::is_truthy(interp, &__t2302) { + if match rt::is_truthy(interp, &__t2125) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2301 = { - let __t2300 = { - let __t2299 = v_V868.clone(); - rt::hd(&__t2299)? + let __t2124 = { + let __t2123 = { + let __t2122 = v_V845.clone(); + rt::hd(&__t2122)? }; - rt::tl(&__t2300)? + rt::tl(&__t2123)? }; - rt::hd(&__t2301)? + rt::hd(&__t2124)? }); } else { { - let __t2275 = { - let __t2198 = { - let __t2149 = v_V868.clone(); - rt::is_cons(&__t2149) + let __t2098 = { + let __t2021 = { + let __t1972 = v_V845.clone(); + rt::is_cons(&__t1972) }; - if !rt::is_truthy(interp, &__t2198)? { + if !rt::is_truthy(interp, &__t2021)? { Value::bool(false) } else { - let __t2199 = { - let __t2196 = { - let __t2151 = { - let __t2150 = v_V868.clone(); - rt::hd(&__t2150)? + let __t2022 = { + let __t2019 = { + let __t1974 = { + let __t1973 = v_V845.clone(); + rt::hd(&__t1973)? }; - rt::is_cons(&__t2151) + rt::is_cons(&__t1974) }; - if !rt::is_truthy(interp, &__t2196)? { + if !rt::is_truthy(interp, &__t2019)? { Value::bool(false) } else { - let __t2197 = { - let __t2194 = { - let __t2154 = { - let __t2153 = { - let __t2152 = v_V868.clone(); - rt::hd(&__t2152)? + let __t2020 = { + let __t2017 = { + let __t1977 = { + let __t1976 = { + let __t1975 = v_V845.clone(); + rt::hd(&__t1975)? }; - rt::hd(&__t2153)? + rt::hd(&__t1976)? }; - rt::is_cons(&__t2154) + rt::is_cons(&__t1977) }; - if !rt::is_truthy(interp, &__t2194)? { + if !rt::is_truthy(interp, &__t2017)? { Value::bool(false) } else { - let __t2195 = { - let __t2192 = { - let __t2155 = Value::sym(interp.intern("and")); - let __t2159 = { - let __t2158 = { - let __t2157 = { - let __t2156 = v_V868.clone(); - rt::hd(&__t2156)? + let __t2018 = { + let __t2015 = { + let __t1978 = Value::sym(interp.intern("and")); + let __t1982 = { + let __t1981 = { + let __t1980 = { + let __t1979 = v_V845.clone(); + rt::hd(&__t1979)? }; - rt::hd(&__t2157)? + rt::hd(&__t1980)? }; - rt::hd(&__t2158)? + rt::hd(&__t1981)? }; - rt::eq(&__t2155, &__t2159) + rt::eq(&__t1978, &__t1982) }; - if !rt::is_truthy(interp, &__t2192)? { + if !rt::is_truthy(interp, &__t2015)? { Value::bool(false) } else { - let __t2193 = { - let __t2190 = { - let __t2163 = { - let __t2162 = { - let __t2161 = { - let __t2160 = - v_V868.clone(); - rt::hd(&__t2160)? + let __t2016 = { + let __t2013 = { + let __t1986 = { + let __t1985 = { + let __t1984 = { + let __t1983 = + v_V845.clone(); + rt::hd(&__t1983)? }; - rt::hd(&__t2161)? + rt::hd(&__t1984)? }; - rt::tl(&__t2162)? + rt::tl(&__t1985)? }; - rt::is_cons(&__t2163) + rt::is_cons(&__t1986) }; - if !rt::is_truthy(interp, &__t2190)? { + if !rt::is_truthy(interp, &__t2013)? { Value::bool(false) } else { - let __t2191 = { - let __t2188 = { - let __t2168 = { - let __t2167 = { - let __t2166 = { - let __t2165 = { - let __t2164 = - v_V868 + let __t2014 = { + let __t2011 = { + let __t1991 = { + let __t1990 = { + let __t1989 = { + let __t1988 = { + let __t1987 = + v_V845 .clone( ); rt::hd( - &__t2164, + &__t1987, )? }; - rt::hd(&__t2165)? + rt::hd(&__t1988)? }; - rt::tl(&__t2166)? + rt::tl(&__t1989)? }; - rt::tl(&__t2167)? + rt::tl(&__t1990)? }; - rt::is_cons(&__t2168) + rt::is_cons(&__t1991) }; - if !rt::is_truthy(interp, &__t2188)? + if !rt::is_truthy(interp, &__t2011)? { Value::bool(false) } else { - let __t2189 = { - let __t2186 = { - let __t2169 = + let __t2012 = { + let __t2009 = { + let __t1992 = Value::nil(); - let __t2175 = { - let __t2174 = { - let __t2173 = { - let __t2172 = { - let __t2171 = { - let __t2170 = v_V868.clone(); - rt::hd(&__t2170)? + let __t1998 = { + let __t1997 = { + let __t1996 = { + let __t1995 = { + let __t1994 = { + let __t1993 = v_V845.clone(); + rt::hd(&__t1993)? }; - rt::hd(&__t2171)? + rt::hd(&__t1994)? }; - rt::tl(&__t2172)? + rt::tl(&__t1995)? }; rt::tl( - &__t2173, + &__t1996, )? }; - rt::tl(&__t2174)? + rt::tl(&__t1997)? }; rt::eq( - &__t2169, &__t2175, + &__t1992, &__t1998, ) }; if !rt::is_truthy( - interp, &__t2186, + interp, &__t2009, )? { Value::bool(false) } else { - let __t2187 = { - let __t2184 = { - let __t2178 = { - let __t2177 = { - let __t2176 = v_V868.clone(); - rt::hd(&__t2176)? + let __t2010 = { + let __t2007 = { + let __t2001 = { + let __t2000 = { + let __t1999 = v_V845.clone(); + rt::hd(&__t1999)? }; - rt::tl(&__t2177)? + rt::tl(&__t2000)? }; rt::is_cons( - &__t2178, + &__t2001, ) }; if !rt::is_truthy( interp, - &__t2184, + &__t2007, )? { Value::bool( false, ) } else { - let __t2185 = { - let __t2179 = Value::nil(); - let __t2183 = { - let __t2182 = { - let __t2181 = { let __t2180 = v_V868.clone(); rt::hd(&__t2180)? }; - rt::tl(&__t2181)? + let __t2008 = { + let __t2002 = Value::nil(); + let __t2006 = { + let __t2005 = { + let __t2004 = { let __t2003 = v_V845.clone(); rt::hd(&__t2003)? }; + rt::tl(&__t2004)? }; - rt::tl(&__t2182)? + rt::tl(&__t2005)? }; - rt::eq(&__t2179, &__t2183) + rt::eq(&__t2002, &__t2006) }; - Value::bool(rt::is_truthy(interp, &__t2185)?) + Value::bool(rt::is_truthy(interp, &__t2008)?) } }; Value::bool( rt::is_truthy( interp, - &__t2187, + &__t2010, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2189, + interp, &__t2012, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2191, + interp, &__t2014, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2193)?) + Value::bool(rt::is_truthy(interp, &__t2016)?) } }; - Value::bool(rt::is_truthy(interp, &__t2195)?) + Value::bool(rt::is_truthy(interp, &__t2018)?) } }; - Value::bool(rt::is_truthy(interp, &__t2197)?) + Value::bool(rt::is_truthy(interp, &__t2020)?) } }; - Value::bool(rt::is_truthy(interp, &__t2199)?) + Value::bool(rt::is_truthy(interp, &__t2022)?) } }; - if match rt::is_truthy(interp, &__t2275) { + if match rt::is_truthy(interp, &__t2098) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W869 = { - let __t2204 = { - let __t2203 = { - let __t2202 = { - let __t2201 = { - let __t2200 = v_V868.clone(); - rt::hd(&__t2200)? + let v_W846 = { + let __t2027 = { + let __t2026 = { + let __t2025 = { + let __t2024 = { + let __t2023 = v_V845.clone(); + rt::hd(&__t2023)? }; - rt::hd(&__t2201)? + rt::hd(&__t2024)? }; - rt::tl(&__t2202)? + rt::tl(&__t2025)? }; - rt::hd(&__t2203)? + rt::hd(&__t2026)? }; - let __t2205 = v_V868.clone(); - let __t2206 = Value::nil(); + let __t2028 = v_V845.clone(); + let __t2029 = Value::nil(); rt::apply_direct( interp, "shen.pivot-on", - &[__t2204, __t2205, __t2206], + &[__t2027, __t2028, __t2029], )? }; { - let v_W870 = { - let __t2207 = v_W869.clone(); - rt::apply_direct(interp, "fst", &[__t2207])? + let v_W847 = { + let __t2030 = v_W846.clone(); + rt::apply_direct(interp, "fst", &[__t2030])? }; { - let __t2209 = { - let __t2208 = v_W870.clone(); - rt::apply_direct(interp, "shen.bad-pivot?", &[__t2208])? + let __t2032 = { + let __t2031 = v_W847.clone(); + rt::apply_direct(interp, "shen.bad-pivot?", &[__t2031])? }; - if match rt::is_truthy(interp, &__t2209) { + if match rt::is_truthy(interp, &__t2032) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2210 = Value::sym(interp.intern("if")); - let __t2224 = { - let __t2213 = { - let __t2212 = { - let __t2211 = v_V868.clone(); - rt::hd(&__t2211)? + let __t2033 = Value::sym(interp.intern("if")); + let __t2047 = { + let __t2036 = { + let __t2035 = { + let __t2034 = v_V845.clone(); + rt::hd(&__t2034)? }; - rt::hd(&__t2212)? + rt::hd(&__t2035)? }; - let __t2223 = { - let __t2217 = { - let __t2216 = { - let __t2215 = { - let __t2214 = v_V868.clone(); - rt::hd(&__t2214)? + let __t2046 = { + let __t2040 = { + let __t2039 = { + let __t2038 = { + let __t2037 = v_V845.clone(); + rt::hd(&__t2037)? }; - rt::tl(&__t2215)? + rt::tl(&__t2038)? }; - rt::hd(&__t2216)? + rt::hd(&__t2039)? }; - let __t2222 = { - let __t2220 = { - let __t2219 = { - let __t2218 = v_V868.clone(); - rt::tl(&__t2218)? + let __t2045 = { + let __t2043 = { + let __t2042 = { + let __t2041 = v_V845.clone(); + rt::tl(&__t2041)? }; rt::apply_direct( interp, "shen.factor-recognisors", - &[__t2219], + &[__t2042], )? }; - let __t2221 = Value::nil(); - rt::cons(&__t2220, &__t2221) + let __t2044 = Value::nil(); + rt::cons(&__t2043, &__t2044) }; - rt::cons(&__t2217, &__t2222) + rt::cons(&__t2040, &__t2045) }; - rt::cons(&__t2213, &__t2223) + rt::cons(&__t2036, &__t2046) }; - rt::cons(&__t2210, &__t2224) + rt::cons(&__t2033, &__t2047) }); } else { { - let v_W871 = { - let __t2225 = v_W869.clone(); - rt::apply_direct(interp, "snd", &[__t2225])? + let v_W848 = { + let __t2048 = v_W846.clone(); + rt::apply_direct(interp, "snd", &[__t2048])? }; { - let v_W872 = { - let __t2226 = v_W871.clone(); + let v_W849 = { + let __t2049 = v_W848.clone(); rt::apply_direct( interp, "shen.factor-recognisors", - &[__t2226], + &[__t2049], )? }; { - let v_W873 = { - let __t2227 = + let v_W850 = { + let __t2050 = Value::sym(interp.intern("GoTo")); rt::apply_direct( interp, "gensym", - &[__t2227], + &[__t2050], )? }; { - let v_W874 = { - let __t2238 = { - let __t2236 = { - let __t2228 = Value::bool(true); - let __t2235 = { - let __t2233 = { - let __t2229 = + let v_W851 = { + let __t2061 = { + let __t2059 = { + let __t2051 = Value::bool(true); + let __t2058 = { + let __t2056 = { + let __t2052 = Value::sym( interp.intern( "thaw", ), ); - let __t2232 = { - let __t2230 = - v_W873.clone(); - let __t2231 = + let __t2055 = { + let __t2053 = + v_W850.clone(); + let __t2054 = Value::nil(); rt::cons( - &__t2230, - &__t2231, + &__t2053, + &__t2054, ) }; rt::cons( - &__t2229, &__t2232, + &__t2052, &__t2055, ) }; - let __t2234 = Value::nil(); - rt::cons(&__t2233, &__t2234) + let __t2057 = Value::nil(); + rt::cons(&__t2056, &__t2057) }; - rt::cons(&__t2228, &__t2235) + rt::cons(&__t2051, &__t2058) }; - let __t2237 = v_W870.clone(); - rt::cons(&__t2236, &__t2237) + let __t2060 = v_W847.clone(); + rt::cons(&__t2059, &__t2060) }; rt::apply_direct( interp, "reverse", - &[__t2238], + &[__t2061], )? }; { - let v_W875 = { - let __t2239 = Value::sym( + let v_W852 = { + let __t2062 = Value::sym( interp.intern("let"), ); - let __t2273 = { - let __t2240 = v_W873.clone(); - let __t2272 = { - let __t2245 = { - let __t2241 = + let __t2096 = { + let __t2063 = v_W850.clone(); + let __t2095 = { + let __t2068 = { + let __t2064 = Value::sym( interp.intern( "freeze", ), ); - let __t2244 = { - let __t2242 = - v_W872.clone(); - let __t2243 = + let __t2067 = { + let __t2065 = + v_W849.clone(); + let __t2066 = Value::nil(); rt::cons( - &__t2242, - &__t2243, + &__t2065, + &__t2066, ) }; rt::cons( - &__t2241, &__t2244, + &__t2064, &__t2067, ) }; - let __t2271 = { - let __t2269 = { - let __t2246 = + let __t2094 = { + let __t2092 = { + let __t2069 = Value::sym( interp .intern( "if", ), ); - let __t2268 = { - let __t2251 = { - let __t2250 = { - let __t2249 = { - let __t2248 = { let __t2247 = v_V868.clone(); rt::hd(&__t2247)? }; - rt::hd(&__t2248)? + let __t2091 = { + let __t2074 = { + let __t2073 = { + let __t2072 = { + let __t2071 = { let __t2070 = v_V845.clone(); rt::hd(&__t2070)? }; + rt::hd(&__t2071)? }; - rt::tl(&__t2249)? + rt::tl(&__t2072)? }; - rt::hd(&__t2250)? + rt::hd(&__t2073)? }; - let __t2267 = { - let __t2259 = { - let __t2256 = { - let __t2255 = { let __t2254 = { let __t2253 = { let __t2252 = v_V868.clone(); rt::hd(&__t2252)? }; rt::hd(&__t2253)? }; rt::tl(&__t2254)? }; - rt::hd(&__t2255)? + let __t2090 = { + let __t2082 = { + let __t2079 = { + let __t2078 = { let __t2077 = { let __t2076 = { let __t2075 = v_V845.clone(); rt::hd(&__t2075)? }; rt::hd(&__t2076)? }; rt::tl(&__t2077)? }; + rt::hd(&__t2078)? }; - let __t2258 = { - let __t2257 = v_W874.clone(); - rt::apply_direct(interp, "shen.factor-recognisors", &[__t2257])? + let __t2081 = { + let __t2080 = v_W851.clone(); + rt::apply_direct(interp, "shen.factor-recognisors", &[__t2080])? }; - rt::apply_direct(interp, "shen.factor-selectors", &[__t2256, __t2258])? + rt::apply_direct(interp, "shen.factor-selectors", &[__t2079, __t2081])? }; - let __t2266 = { - let __t2264 = { - let __t2260 = Value::sym(interp.intern("thaw")); - let __t2263 = { let __t2261 = v_W873.clone(); let __t2262 = Value::nil(); rt::cons(&__t2261, &__t2262) }; - rt::cons(&__t2260, &__t2263) + let __t2089 = { + let __t2087 = { + let __t2083 = Value::sym(interp.intern("thaw")); + let __t2086 = { let __t2084 = v_W850.clone(); let __t2085 = Value::nil(); rt::cons(&__t2084, &__t2085) }; + rt::cons(&__t2083, &__t2086) }; - let __t2265 = Value::nil(); - rt::cons(&__t2264, &__t2265) + let __t2088 = Value::nil(); + rt::cons(&__t2087, &__t2088) }; - rt::cons(&__t2259, &__t2266) + rt::cons(&__t2082, &__t2089) }; rt::cons( - &__t2251, - &__t2267, + &__t2074, + &__t2090, ) }; rt::cons( - &__t2246, - &__t2268, + &__t2069, + &__t2091, ) }; - let __t2270 = + let __t2093 = Value::nil(); rt::cons( - &__t2269, &__t2270, + &__t2092, &__t2093, ) }; - rt::cons(&__t2245, &__t2271) + rt::cons(&__t2068, &__t2094) }; - rt::cons(&__t2240, &__t2272) + rt::cons(&__t2063, &__t2095) }; - rt::cons(&__t2239, &__t2273) + rt::cons(&__t2062, &__t2096) }; break Ok({ - let __t2274 = v_W875.clone(); + let __t2097 = v_W852.clone(); rt::apply_direct( interp, "shen.remove-indirection", - &[__t2274], + &[__t2097], )? }); } @@ -10284,120 +9407,120 @@ pub fn aot_shen_x2e_factor_x2d_recognisors( } } else { { - let __t2148 = { - let __t2131 = { - let __t2116 = v_V868.clone(); - rt::is_cons(&__t2116) + let __t1971 = { + let __t1954 = { + let __t1939 = v_V845.clone(); + rt::is_cons(&__t1939) }; - if !rt::is_truthy(interp, &__t2131)? { + if !rt::is_truthy(interp, &__t1954)? { Value::bool(false) } else { - let __t2132 = { - let __t2129 = { - let __t2118 = { - let __t2117 = v_V868.clone(); - rt::hd(&__t2117)? + let __t1955 = { + let __t1952 = { + let __t1941 = { + let __t1940 = v_V845.clone(); + rt::hd(&__t1940)? }; - rt::is_cons(&__t2118) + rt::is_cons(&__t1941) }; - if !rt::is_truthy(interp, &__t2129)? { + if !rt::is_truthy(interp, &__t1952)? { Value::bool(false) } else { - let __t2130 = { - let __t2127 = { - let __t2121 = { - let __t2120 = { - let __t2119 = v_V868.clone(); - rt::hd(&__t2119)? + let __t1953 = { + let __t1950 = { + let __t1944 = { + let __t1943 = { + let __t1942 = v_V845.clone(); + rt::hd(&__t1942)? }; - rt::tl(&__t2120)? + rt::tl(&__t1943)? }; - rt::is_cons(&__t2121) + rt::is_cons(&__t1944) }; - if !rt::is_truthy(interp, &__t2127)? { + if !rt::is_truthy(interp, &__t1950)? { Value::bool(false) } else { - let __t2128 = { - let __t2122 = Value::nil(); - let __t2126 = { - let __t2125 = { - let __t2124 = { - let __t2123 = v_V868.clone(); - rt::hd(&__t2123)? + let __t1951 = { + let __t1945 = Value::nil(); + let __t1949 = { + let __t1948 = { + let __t1947 = { + let __t1946 = v_V845.clone(); + rt::hd(&__t1946)? }; - rt::tl(&__t2124)? + rt::tl(&__t1947)? }; - rt::tl(&__t2125)? + rt::tl(&__t1948)? }; - rt::eq(&__t2122, &__t2126) + rt::eq(&__t1945, &__t1949) }; - Value::bool(rt::is_truthy(interp, &__t2128)?) + Value::bool(rt::is_truthy(interp, &__t1951)?) } }; - Value::bool(rt::is_truthy(interp, &__t2130)?) + Value::bool(rt::is_truthy(interp, &__t1953)?) } }; - Value::bool(rt::is_truthy(interp, &__t2132)?) + Value::bool(rt::is_truthy(interp, &__t1955)?) } }; - if match rt::is_truthy(interp, &__t2148) { + if match rt::is_truthy(interp, &__t1971) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2133 = Value::sym(interp.intern("if")); - let __t2147 = { - let __t2136 = { - let __t2135 = { - let __t2134 = v_V868.clone(); - rt::hd(&__t2134)? + let __t1956 = Value::sym(interp.intern("if")); + let __t1970 = { + let __t1959 = { + let __t1958 = { + let __t1957 = v_V845.clone(); + rt::hd(&__t1957)? }; - rt::hd(&__t2135)? + rt::hd(&__t1958)? }; - let __t2146 = { - let __t2140 = { - let __t2139 = { - let __t2138 = { - let __t2137 = v_V868.clone(); - rt::hd(&__t2137)? + let __t1969 = { + let __t1963 = { + let __t1962 = { + let __t1961 = { + let __t1960 = v_V845.clone(); + rt::hd(&__t1960)? }; - rt::tl(&__t2138)? + rt::tl(&__t1961)? }; - rt::hd(&__t2139)? + rt::hd(&__t1962)? }; - let __t2145 = { - let __t2143 = { - let __t2142 = { - let __t2141 = v_V868.clone(); - rt::tl(&__t2141)? + let __t1968 = { + let __t1966 = { + let __t1965 = { + let __t1964 = v_V845.clone(); + rt::tl(&__t1964)? }; rt::apply_direct( interp, "shen.factor-recognisors", - &[__t2142], + &[__t1965], )? }; - let __t2144 = Value::nil(); - rt::cons(&__t2143, &__t2144) + let __t1967 = Value::nil(); + rt::cons(&__t1966, &__t1967) }; - rt::cons(&__t2140, &__t2145) + rt::cons(&__t1963, &__t1968) }; - rt::cons(&__t2136, &__t2146) + rt::cons(&__t1959, &__t1969) }; - rt::cons(&__t2133, &__t2147) + rt::cons(&__t1956, &__t1970) }); } else { { - let __t2115 = Value::bool(true); - if match rt::is_truthy(interp, &__t2115) { + let __t1938 = Value::bool(true); + if match rt::is_truthy(interp, &__t1938) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2114 = Value::sym( - interp.intern("shen.factor-recognisors"), + let __t1937 = Value::str( + "partial function shen.factor-recognisors", ); - rt::apply_direct(interp, "shen.f-error", &[__t2114])? + rt::apply_direct(interp, "simple-error", &[__t1937])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -10433,38 +9556,38 @@ pub fn aot_shen_x2e_bad_x2d_pivot_x3f_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V880 = args[0].clone(); + let mut v_V857 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2310 = { - let __t2308 = { - let __t2304 = v_V880.clone(); - rt::is_cons(&__t2304) + let __t2133 = { + let __t2131 = { + let __t2127 = v_V857.clone(); + rt::is_cons(&__t2127) }; - if !rt::is_truthy(interp, &__t2308)? { + if !rt::is_truthy(interp, &__t2131)? { Value::bool(false) } else { - let __t2309 = { - let __t2305 = Value::nil(); - let __t2307 = { - let __t2306 = v_V880.clone(); - rt::tl(&__t2306)? + let __t2132 = { + let __t2128 = Value::nil(); + let __t2130 = { + let __t2129 = v_V857.clone(); + rt::tl(&__t2129)? }; - rt::eq(&__t2305, &__t2307) + rt::eq(&__t2128, &__t2130) }; - Value::bool(rt::is_truthy(interp, &__t2309)?) + Value::bool(rt::is_truthy(interp, &__t2132)?) } }; - if match rt::is_truthy(interp, &__t2310) { + if match rt::is_truthy(interp, &__t2133) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2303 = Value::bool(true); - if match rt::is_truthy(interp, &__t2303) { + let __t2126 = Value::bool(true); + if match rt::is_truthy(interp, &__t2126) { Ok(b) => b, Err(e) => break Err(e), } { @@ -10495,277 +9618,277 @@ pub fn aot_shen_x2e_remove_x2d_indirection( ))); } #[allow(unused_mut)] - let mut v_V881 = args[0].clone(); + let mut v_V858 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2435 = { - let __t2417 = { - let __t2312 = v_V881.clone(); - rt::is_cons(&__t2312) + let __t2258 = { + let __t2240 = { + let __t2135 = v_V858.clone(); + rt::is_cons(&__t2135) }; - if !rt::is_truthy(interp, &__t2417)? { + if !rt::is_truthy(interp, &__t2240)? { Value::bool(false) } else { - let __t2418 = { - let __t2415 = { - let __t2313 = Value::sym(interp.intern("let")); - let __t2315 = { - let __t2314 = v_V881.clone(); - rt::hd(&__t2314)? - }; - rt::eq(&__t2313, &__t2315) + let __t2241 = { + let __t2238 = { + let __t2136 = Value::sym(interp.intern("let")); + let __t2138 = { + let __t2137 = v_V858.clone(); + rt::hd(&__t2137)? + }; + rt::eq(&__t2136, &__t2138) }; - if !rt::is_truthy(interp, &__t2415)? { + if !rt::is_truthy(interp, &__t2238)? { Value::bool(false) } else { - let __t2416 = { - let __t2413 = { - let __t2317 = { - let __t2316 = v_V881.clone(); - rt::tl(&__t2316)? + let __t2239 = { + let __t2236 = { + let __t2140 = { + let __t2139 = v_V858.clone(); + rt::tl(&__t2139)? }; - rt::is_cons(&__t2317) + rt::is_cons(&__t2140) }; - if !rt::is_truthy(interp, &__t2413)? { + if !rt::is_truthy(interp, &__t2236)? { Value::bool(false) } else { - let __t2414 = { - let __t2411 = { - let __t2320 = { - let __t2319 = { - let __t2318 = v_V881.clone(); - rt::tl(&__t2318)? + let __t2237 = { + let __t2234 = { + let __t2143 = { + let __t2142 = { + let __t2141 = v_V858.clone(); + rt::tl(&__t2141)? }; - rt::tl(&__t2319)? + rt::tl(&__t2142)? }; - rt::is_cons(&__t2320) + rt::is_cons(&__t2143) }; - if !rt::is_truthy(interp, &__t2411)? { + if !rt::is_truthy(interp, &__t2234)? { Value::bool(false) } else { - let __t2412 = { - let __t2409 = { - let __t2324 = { - let __t2323 = { - let __t2322 = { - let __t2321 = v_V881.clone(); - rt::tl(&__t2321)? + let __t2235 = { + let __t2232 = { + let __t2147 = { + let __t2146 = { + let __t2145 = { + let __t2144 = v_V858.clone(); + rt::tl(&__t2144)? }; - rt::tl(&__t2322)? + rt::tl(&__t2145)? }; - rt::hd(&__t2323)? + rt::hd(&__t2146)? }; - rt::is_cons(&__t2324) + rt::is_cons(&__t2147) }; - if !rt::is_truthy(interp, &__t2409)? { + if !rt::is_truthy(interp, &__t2232)? { Value::bool(false) } else { - let __t2410 = { - let __t2407 = { - let __t2325 = + let __t2233 = { + let __t2230 = { + let __t2148 = Value::sym(interp.intern("freeze")); - let __t2330 = { - let __t2329 = { - let __t2328 = { - let __t2327 = { - let __t2326 = - v_V881.clone(); - rt::tl(&__t2326)? + let __t2153 = { + let __t2152 = { + let __t2151 = { + let __t2150 = { + let __t2149 = + v_V858.clone(); + rt::tl(&__t2149)? }; - rt::tl(&__t2327)? + rt::tl(&__t2150)? }; - rt::hd(&__t2328)? + rt::hd(&__t2151)? }; - rt::hd(&__t2329)? + rt::hd(&__t2152)? }; - rt::eq(&__t2325, &__t2330) + rt::eq(&__t2148, &__t2153) }; - if !rt::is_truthy(interp, &__t2407)? { + if !rt::is_truthy(interp, &__t2230)? { Value::bool(false) } else { - let __t2408 = { - let __t2405 = { - let __t2335 = { - let __t2334 = { - let __t2333 = { - let __t2332 = { - let __t2331 = - v_V881 + let __t2231 = { + let __t2228 = { + let __t2158 = { + let __t2157 = { + let __t2156 = { + let __t2155 = { + let __t2154 = + v_V858 .clone( ); rt::tl( - &__t2331, + &__t2154, )? }; - rt::tl(&__t2332)? + rt::tl(&__t2155)? }; - rt::hd(&__t2333)? + rt::hd(&__t2156)? }; - rt::tl(&__t2334)? + rt::tl(&__t2157)? }; - rt::is_cons(&__t2335) + rt::is_cons(&__t2158) }; - if !rt::is_truthy(interp, &__t2405)? + if !rt::is_truthy(interp, &__t2228)? { Value::bool(false) } else { - let __t2406 = { - let __t2403 = { - let __t2341 = { - let __t2340 = { - let __t2339 = { - let __t2338 = { - let __t2337 = { - let __t2336 = v_V881.clone(); - rt::tl(&__t2336)? + let __t2229 = { + let __t2226 = { + let __t2164 = { + let __t2163 = { + let __t2162 = { + let __t2161 = { + let __t2160 = { + let __t2159 = v_V858.clone(); + rt::tl(&__t2159)? }; - rt::tl(&__t2337)? + rt::tl(&__t2160)? }; - rt::hd(&__t2338)? + rt::hd(&__t2161)? }; rt::tl( - &__t2339, + &__t2162, )? }; - rt::hd(&__t2340)? + rt::hd(&__t2163)? }; - rt::is_cons(&__t2341) + rt::is_cons(&__t2164) }; if !rt::is_truthy( - interp, &__t2403, + interp, &__t2226, )? { Value::bool(false) } else { - let __t2404 = { - let __t2401 = { - let __t2342 = Value::sym(interp.intern("thaw")); - let __t2349 = { - let __t2348 = { - let __t2347 = { - let __t2346 = { let __t2345 = { let __t2344 = { let __t2343 = v_V881.clone(); rt::tl(&__t2343)? }; rt::tl(&__t2344)? }; rt::hd(&__t2345)? }; - rt::tl(&__t2346)? + let __t2227 = { + let __t2224 = { + let __t2165 = Value::sym(interp.intern("thaw")); + let __t2172 = { + let __t2171 = { + let __t2170 = { + let __t2169 = { let __t2168 = { let __t2167 = { let __t2166 = v_V858.clone(); rt::tl(&__t2166)? }; rt::tl(&__t2167)? }; rt::hd(&__t2168)? }; + rt::tl(&__t2169)? }; - rt::hd(&__t2347)? + rt::hd(&__t2170)? }; - rt::hd(&__t2348)? + rt::hd(&__t2171)? }; rt::eq( - &__t2342, - &__t2349, + &__t2165, + &__t2172, ) }; if !rt::is_truthy( interp, - &__t2401, + &__t2224, )? { Value::bool( false, ) } else { - let __t2402 = { - let __t2399 = { - let __t2356 = { - let __t2355 = { let __t2354 = { let __t2353 = { let __t2352 = { let __t2351 = { let __t2350 = v_V881.clone(); rt::tl(&__t2350)? }; rt::tl(&__t2351)? }; rt::hd(&__t2352)? }; rt::tl(&__t2353)? }; rt::hd(&__t2354)? }; - rt::tl(&__t2355)? + let __t2225 = { + let __t2222 = { + let __t2179 = { + let __t2178 = { let __t2177 = { let __t2176 = { let __t2175 = { let __t2174 = { let __t2173 = v_V858.clone(); rt::tl(&__t2173)? }; rt::tl(&__t2174)? }; rt::hd(&__t2175)? }; rt::tl(&__t2176)? }; rt::hd(&__t2177)? }; + rt::tl(&__t2178)? }; - rt::is_cons(&__t2356) + rt::is_cons(&__t2179) }; - if !rt::is_truthy(interp, &__t2399)? { Value::bool(false) } else { let __t2400 = { let __t2397 = { let __t2357 = Value::nil(); let __t2365 = { let __t2364 = { let __t2363 = { let __t2362 = { let __t2361 = { let __t2360 = { let __t2359 = { let __t2358 = v_V881.clone(); rt::tl(&__t2358)? }; rt::tl(&__t2359)? }; rt::hd(&__t2360)? }; rt::tl(&__t2361)? }; rt::hd(&__t2362)? }; rt::tl(&__t2363)? }; rt::tl(&__t2364)? }; rt::eq(&__t2357, &__t2365) }; if !rt::is_truthy(interp, &__t2397)? { Value::bool(false) } else { let __t2398 = { let __t2395 = { let __t2366 = Value::nil(); let __t2372 = { let __t2371 = { let __t2370 = { let __t2369 = { let __t2368 = { let __t2367 = v_V881.clone(); rt::tl(&__t2367)? }; rt::tl(&__t2368)? }; rt::hd(&__t2369)? }; rt::tl(&__t2370)? }; rt::tl(&__t2371)? }; rt::eq(&__t2366, &__t2372) }; if !rt::is_truthy(interp, &__t2395)? { Value::bool(false) } else { let __t2396 = { let __t2393 = { let __t2376 = { let __t2375 = { let __t2374 = { let __t2373 = v_V881.clone(); rt::tl(&__t2373)? }; rt::tl(&__t2374)? }; rt::tl(&__t2375)? }; rt::is_cons(&__t2376) }; if !rt::is_truthy(interp, &__t2393)? { Value::bool(false) } else { let __t2394 = { let __t2391 = { let __t2377 = Value::nil(); let __t2382 = { let __t2381 = { let __t2380 = { let __t2379 = { let __t2378 = v_V881.clone(); rt::tl(&__t2378)? }; rt::tl(&__t2379)? }; rt::tl(&__t2380)? }; rt::tl(&__t2381)? }; rt::eq(&__t2377, &__t2382) }; if !rt::is_truthy(interp, &__t2391)? { Value::bool(false) } else { let __t2392 = { let __t2390 = { let __t2389 = { let __t2388 = { let __t2387 = { let __t2386 = { let __t2385 = { let __t2384 = { let __t2383 = v_V881.clone(); rt::tl(&__t2383)? }; rt::tl(&__t2384)? }; rt::hd(&__t2385)? }; rt::tl(&__t2386)? }; rt::hd(&__t2387)? }; rt::tl(&__t2388)? }; rt::hd(&__t2389)? }; rt::is_symbol(&__t2390) }; Value::bool(rt::is_truthy(interp, &__t2392)?) } }; Value::bool(rt::is_truthy(interp, &__t2394)?) } }; Value::bool(rt::is_truthy(interp, &__t2396)?) } }; Value::bool(rt::is_truthy(interp, &__t2398)?) } }; Value::bool(rt::is_truthy(interp, &__t2400)?) } + if !rt::is_truthy(interp, &__t2222)? { Value::bool(false) } else { let __t2223 = { let __t2220 = { let __t2180 = Value::nil(); let __t2188 = { let __t2187 = { let __t2186 = { let __t2185 = { let __t2184 = { let __t2183 = { let __t2182 = { let __t2181 = v_V858.clone(); rt::tl(&__t2181)? }; rt::tl(&__t2182)? }; rt::hd(&__t2183)? }; rt::tl(&__t2184)? }; rt::hd(&__t2185)? }; rt::tl(&__t2186)? }; rt::tl(&__t2187)? }; rt::eq(&__t2180, &__t2188) }; if !rt::is_truthy(interp, &__t2220)? { Value::bool(false) } else { let __t2221 = { let __t2218 = { let __t2189 = Value::nil(); let __t2195 = { let __t2194 = { let __t2193 = { let __t2192 = { let __t2191 = { let __t2190 = v_V858.clone(); rt::tl(&__t2190)? }; rt::tl(&__t2191)? }; rt::hd(&__t2192)? }; rt::tl(&__t2193)? }; rt::tl(&__t2194)? }; rt::eq(&__t2189, &__t2195) }; if !rt::is_truthy(interp, &__t2218)? { Value::bool(false) } else { let __t2219 = { let __t2216 = { let __t2199 = { let __t2198 = { let __t2197 = { let __t2196 = v_V858.clone(); rt::tl(&__t2196)? }; rt::tl(&__t2197)? }; rt::tl(&__t2198)? }; rt::is_cons(&__t2199) }; if !rt::is_truthy(interp, &__t2216)? { Value::bool(false) } else { let __t2217 = { let __t2214 = { let __t2200 = Value::nil(); let __t2205 = { let __t2204 = { let __t2203 = { let __t2202 = { let __t2201 = v_V858.clone(); rt::tl(&__t2201)? }; rt::tl(&__t2202)? }; rt::tl(&__t2203)? }; rt::tl(&__t2204)? }; rt::eq(&__t2200, &__t2205) }; if !rt::is_truthy(interp, &__t2214)? { Value::bool(false) } else { let __t2215 = { let __t2213 = { let __t2212 = { let __t2211 = { let __t2210 = { let __t2209 = { let __t2208 = { let __t2207 = { let __t2206 = v_V858.clone(); rt::tl(&__t2206)? }; rt::tl(&__t2207)? }; rt::hd(&__t2208)? }; rt::tl(&__t2209)? }; rt::hd(&__t2210)? }; rt::tl(&__t2211)? }; rt::hd(&__t2212)? }; rt::is_symbol(&__t2213) }; Value::bool(rt::is_truthy(interp, &__t2215)?) } }; Value::bool(rt::is_truthy(interp, &__t2217)?) } }; Value::bool(rt::is_truthy(interp, &__t2219)?) } }; Value::bool(rt::is_truthy(interp, &__t2221)?) } }; Value::bool(rt::is_truthy(interp, &__t2223)?) } }; - Value::bool(rt::is_truthy(interp, &__t2402)?) + Value::bool(rt::is_truthy(interp, &__t2225)?) } }; Value::bool( rt::is_truthy( interp, - &__t2404, + &__t2227, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2406, + interp, &__t2229, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2408, + interp, &__t2231, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2410)?) + Value::bool(rt::is_truthy(interp, &__t2233)?) } }; - Value::bool(rt::is_truthy(interp, &__t2412)?) + Value::bool(rt::is_truthy(interp, &__t2235)?) } }; - Value::bool(rt::is_truthy(interp, &__t2414)?) + Value::bool(rt::is_truthy(interp, &__t2237)?) } }; - Value::bool(rt::is_truthy(interp, &__t2416)?) + Value::bool(rt::is_truthy(interp, &__t2239)?) } }; - Value::bool(rt::is_truthy(interp, &__t2418)?) + Value::bool(rt::is_truthy(interp, &__t2241)?) } }; - if match rt::is_truthy(interp, &__t2435) { + if match rt::is_truthy(interp, &__t2258) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2426 = { - let __t2425 = { - let __t2424 = { - let __t2423 = { - let __t2422 = { - let __t2421 = { - let __t2420 = { - let __t2419 = v_V881.clone(); - rt::tl(&__t2419)? + let __t2249 = { + let __t2248 = { + let __t2247 = { + let __t2246 = { + let __t2245 = { + let __t2244 = { + let __t2243 = { + let __t2242 = v_V858.clone(); + rt::tl(&__t2242)? }; - rt::tl(&__t2420)? + rt::tl(&__t2243)? }; - rt::hd(&__t2421)? + rt::hd(&__t2244)? }; - rt::tl(&__t2422)? + rt::tl(&__t2245)? }; - rt::hd(&__t2423)? + rt::hd(&__t2246)? }; - rt::tl(&__t2424)? + rt::tl(&__t2247)? }; - rt::hd(&__t2425)? + rt::hd(&__t2248)? }; - let __t2429 = { - let __t2428 = { - let __t2427 = v_V881.clone(); - rt::tl(&__t2427)? + let __t2252 = { + let __t2251 = { + let __t2250 = v_V858.clone(); + rt::tl(&__t2250)? }; - rt::hd(&__t2428)? + rt::hd(&__t2251)? }; - let __t2434 = { - let __t2433 = { - let __t2432 = { - let __t2431 = { - let __t2430 = v_V881.clone(); - rt::tl(&__t2430)? + let __t2257 = { + let __t2256 = { + let __t2255 = { + let __t2254 = { + let __t2253 = v_V858.clone(); + rt::tl(&__t2253)? }; - rt::tl(&__t2431)? + rt::tl(&__t2254)? }; - rt::tl(&__t2432)? + rt::tl(&__t2255)? }; - rt::hd(&__t2433)? + rt::hd(&__t2256)? }; - rt::apply_direct(interp, "subst", &[__t2426, __t2429, __t2434])? + rt::apply_direct(interp, "subst", &[__t2249, __t2252, __t2257])? }); } else { { - let __t2311 = Value::bool(true); - if match rt::is_truthy(interp, &__t2311) { + let __t2134 = Value::bool(true); + if match rt::is_truthy(interp, &__t2134) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V881.clone()); + break Ok(v_V858.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -10796,406 +9919,406 @@ pub fn aot_shen_x2e_pivot_x2d_on(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V884 = args[0].clone(); + let mut v_V861 = args[0].clone(); #[allow(unused_mut)] - let mut v_V885 = args[1].clone(); + let mut v_V862 = args[1].clone(); #[allow(unused_mut)] - let mut v_V886 = args[2].clone(); + let mut v_V863 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t2553 = { - let __t2532 = { - let __t2475 = v_V885.clone(); - rt::is_cons(&__t2475) + let __t2376 = { + let __t2355 = { + let __t2298 = v_V862.clone(); + rt::is_cons(&__t2298) }; - if !rt::is_truthy(interp, &__t2532)? { + if !rt::is_truthy(interp, &__t2355)? { Value::bool(false) } else { - let __t2533 = { - let __t2530 = { - let __t2477 = { - let __t2476 = v_V885.clone(); - rt::hd(&__t2476)? + let __t2356 = { + let __t2353 = { + let __t2300 = { + let __t2299 = v_V862.clone(); + rt::hd(&__t2299)? }; - rt::is_cons(&__t2477) + rt::is_cons(&__t2300) }; - if !rt::is_truthy(interp, &__t2530)? { + if !rt::is_truthy(interp, &__t2353)? { Value::bool(false) } else { - let __t2531 = { - let __t2528 = { - let __t2480 = { - let __t2479 = { - let __t2478 = v_V885.clone(); - rt::hd(&__t2478)? + let __t2354 = { + let __t2351 = { + let __t2303 = { + let __t2302 = { + let __t2301 = v_V862.clone(); + rt::hd(&__t2301)? }; - rt::hd(&__t2479)? + rt::hd(&__t2302)? }; - rt::is_cons(&__t2480) + rt::is_cons(&__t2303) }; - if !rt::is_truthy(interp, &__t2528)? { + if !rt::is_truthy(interp, &__t2351)? { Value::bool(false) } else { - let __t2529 = { - let __t2526 = { - let __t2481 = Value::sym(interp.intern("and")); - let __t2485 = { - let __t2484 = { - let __t2483 = { - let __t2482 = v_V885.clone(); - rt::hd(&__t2482)? + let __t2352 = { + let __t2349 = { + let __t2304 = Value::sym(interp.intern("and")); + let __t2308 = { + let __t2307 = { + let __t2306 = { + let __t2305 = v_V862.clone(); + rt::hd(&__t2305)? }; - rt::hd(&__t2483)? + rt::hd(&__t2306)? }; - rt::hd(&__t2484)? + rt::hd(&__t2307)? }; - rt::eq(&__t2481, &__t2485) + rt::eq(&__t2304, &__t2308) }; - if !rt::is_truthy(interp, &__t2526)? { + if !rt::is_truthy(interp, &__t2349)? { Value::bool(false) } else { - let __t2527 = { - let __t2524 = { - let __t2489 = { - let __t2488 = { - let __t2487 = { - let __t2486 = v_V885.clone(); - rt::hd(&__t2486)? + let __t2350 = { + let __t2347 = { + let __t2312 = { + let __t2311 = { + let __t2310 = { + let __t2309 = v_V862.clone(); + rt::hd(&__t2309)? }; - rt::hd(&__t2487)? + rt::hd(&__t2310)? }; - rt::tl(&__t2488)? + rt::tl(&__t2311)? }; - rt::is_cons(&__t2489) + rt::is_cons(&__t2312) }; - if !rt::is_truthy(interp, &__t2524)? { + if !rt::is_truthy(interp, &__t2347)? { Value::bool(false) } else { - let __t2525 = { - let __t2522 = { - let __t2494 = { - let __t2493 = { - let __t2492 = { - let __t2491 = { - let __t2490 = - v_V885.clone(); - rt::hd(&__t2490)? + let __t2348 = { + let __t2345 = { + let __t2317 = { + let __t2316 = { + let __t2315 = { + let __t2314 = { + let __t2313 = + v_V862.clone(); + rt::hd(&__t2313)? }; - rt::hd(&__t2491)? + rt::hd(&__t2314)? }; - rt::tl(&__t2492)? + rt::tl(&__t2315)? }; - rt::tl(&__t2493)? + rt::tl(&__t2316)? }; - rt::is_cons(&__t2494) + rt::is_cons(&__t2317) }; - if !rt::is_truthy(interp, &__t2522)? { + if !rt::is_truthy(interp, &__t2345)? { Value::bool(false) } else { - let __t2523 = { - let __t2520 = { - let __t2495 = Value::nil(); - let __t2501 = { - let __t2500 = { - let __t2499 = { - let __t2498 = { - let __t2497 = { - let __t2496 = v_V885.clone(); - rt::hd(&__t2496)? + let __t2346 = { + let __t2343 = { + let __t2318 = Value::nil(); + let __t2324 = { + let __t2323 = { + let __t2322 = { + let __t2321 = { + let __t2320 = { + let __t2319 = v_V862.clone(); + rt::hd(&__t2319)? }; rt::hd( - &__t2497, + &__t2320, )? }; - rt::tl(&__t2498)? + rt::tl(&__t2321)? }; - rt::tl(&__t2499)? + rt::tl(&__t2322)? }; - rt::tl(&__t2500)? + rt::tl(&__t2323)? }; - rt::eq(&__t2495, &__t2501) + rt::eq(&__t2318, &__t2324) }; - if !rt::is_truthy(interp, &__t2520)? + if !rt::is_truthy(interp, &__t2343)? { Value::bool(false) } else { - let __t2521 = { - let __t2518 = { - let __t2504 = { - let __t2503 = { - let __t2502 = - v_V885 + let __t2344 = { + let __t2341 = { + let __t2327 = { + let __t2326 = { + let __t2325 = + v_V862 .clone( ); rt::hd( - &__t2502, + &__t2325, )? }; - rt::tl(&__t2503)? + rt::tl(&__t2326)? }; - rt::is_cons(&__t2504) + rt::is_cons(&__t2327) }; if !rt::is_truthy( - interp, &__t2518, + interp, &__t2341, )? { Value::bool(false) } else { - let __t2519 = { - let __t2516 = { - let __t2505 = + let __t2342 = { + let __t2339 = { + let __t2328 = Value::nil( ); - let __t2509 = { - let __t2508 = { - let __t2507 = { - let __t2506 = v_V885.clone(); - rt::hd(&__t2506)? + let __t2332 = { + let __t2331 = { + let __t2330 = { + let __t2329 = v_V862.clone(); + rt::hd(&__t2329)? }; - rt::tl(&__t2507)? + rt::tl(&__t2330)? }; - rt::tl(&__t2508)? + rt::tl(&__t2331)? }; rt::eq( - &__t2505, - &__t2509, + &__t2328, + &__t2332, ) }; if !rt::is_truthy( interp, - &__t2516, + &__t2339, )? { Value::bool( false, ) } else { - let __t2517 = { - let __t2510 = v_V884.clone(); - let __t2515 = { - let __t2514 = { - let __t2513 = { let __t2512 = { let __t2511 = v_V885.clone(); rt::hd(&__t2511)? }; rt::hd(&__t2512)? }; - rt::tl(&__t2513)? + let __t2340 = { + let __t2333 = v_V861.clone(); + let __t2338 = { + let __t2337 = { + let __t2336 = { let __t2335 = { let __t2334 = v_V862.clone(); rt::hd(&__t2334)? }; rt::hd(&__t2335)? }; + rt::tl(&__t2336)? }; - rt::hd(&__t2514)? + rt::hd(&__t2337)? }; - rt::eq(&__t2510, &__t2515) + rt::eq(&__t2333, &__t2338) }; - Value::bool(rt::is_truthy(interp, &__t2517)?) + Value::bool(rt::is_truthy(interp, &__t2340)?) } }; Value::bool( rt::is_truthy( interp, - &__t2519, + &__t2342, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2521, + interp, &__t2344, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2523, + interp, &__t2346, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2525)?) + Value::bool(rt::is_truthy(interp, &__t2348)?) } }; - Value::bool(rt::is_truthy(interp, &__t2527)?) + Value::bool(rt::is_truthy(interp, &__t2350)?) } }; - Value::bool(rt::is_truthy(interp, &__t2529)?) + Value::bool(rt::is_truthy(interp, &__t2352)?) } }; - Value::bool(rt::is_truthy(interp, &__t2531)?) + Value::bool(rt::is_truthy(interp, &__t2354)?) } }; - Value::bool(rt::is_truthy(interp, &__t2533)?) + Value::bool(rt::is_truthy(interp, &__t2356)?) } }; - if match rt::is_truthy(interp, &__t2553) { + if match rt::is_truthy(interp, &__t2376) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2538 = { - let __t2537 = { - let __t2536 = { - let __t2535 = { - let __t2534 = v_V885.clone(); - rt::hd(&__t2534)? + let __t2361 = { + let __t2360 = { + let __t2359 = { + let __t2358 = { + let __t2357 = v_V862.clone(); + rt::hd(&__t2357)? }; - rt::hd(&__t2535)? + rt::hd(&__t2358)? }; - rt::tl(&__t2536)? + rt::tl(&__t2359)? }; - rt::hd(&__t2537)? + rt::hd(&__t2360)? }; - let __t2540 = { - let __t2539 = v_V885.clone(); - rt::tl(&__t2539)? + let __t2363 = { + let __t2362 = v_V862.clone(); + rt::tl(&__t2362)? }; - let __t2552 = { - let __t2550 = { - let __t2546 = { - let __t2545 = { - let __t2544 = { - let __t2543 = { - let __t2542 = { - let __t2541 = v_V885.clone(); - rt::hd(&__t2541)? + let __t2375 = { + let __t2373 = { + let __t2369 = { + let __t2368 = { + let __t2367 = { + let __t2366 = { + let __t2365 = { + let __t2364 = v_V862.clone(); + rt::hd(&__t2364)? }; - rt::hd(&__t2542)? + rt::hd(&__t2365)? }; - rt::tl(&__t2543)? + rt::tl(&__t2366)? }; - rt::tl(&__t2544)? + rt::tl(&__t2367)? }; - rt::hd(&__t2545)? + rt::hd(&__t2368)? }; - let __t2549 = { - let __t2548 = { - let __t2547 = v_V885.clone(); - rt::hd(&__t2547)? + let __t2372 = { + let __t2371 = { + let __t2370 = v_V862.clone(); + rt::hd(&__t2370)? }; - rt::tl(&__t2548)? + rt::tl(&__t2371)? }; - rt::cons(&__t2546, &__t2549) + rt::cons(&__t2369, &__t2372) }; - let __t2551 = v_V886.clone(); - rt::cons(&__t2550, &__t2551) + let __t2374 = v_V863.clone(); + rt::cons(&__t2373, &__t2374) }; - v_V884 = __t2538; - v_V885 = __t2540; - v_V886 = __t2552; + v_V861 = __t2361; + v_V862 = __t2363; + v_V863 = __t2375; continue; } } else { { - let __t2474 = { - let __t2460 = { - let __t2439 = v_V885.clone(); - rt::is_cons(&__t2439) + let __t2297 = { + let __t2283 = { + let __t2262 = v_V862.clone(); + rt::is_cons(&__t2262) }; - if !rt::is_truthy(interp, &__t2460)? { + if !rt::is_truthy(interp, &__t2283)? { Value::bool(false) } else { - let __t2461 = { - let __t2458 = { - let __t2441 = { - let __t2440 = v_V885.clone(); - rt::hd(&__t2440)? + let __t2284 = { + let __t2281 = { + let __t2264 = { + let __t2263 = v_V862.clone(); + rt::hd(&__t2263)? }; - rt::is_cons(&__t2441) + rt::is_cons(&__t2264) }; - if !rt::is_truthy(interp, &__t2458)? { + if !rt::is_truthy(interp, &__t2281)? { Value::bool(false) } else { - let __t2459 = { - let __t2456 = { - let __t2444 = { - let __t2443 = { - let __t2442 = v_V885.clone(); - rt::hd(&__t2442)? + let __t2282 = { + let __t2279 = { + let __t2267 = { + let __t2266 = { + let __t2265 = v_V862.clone(); + rt::hd(&__t2265)? }; - rt::tl(&__t2443)? + rt::tl(&__t2266)? }; - rt::is_cons(&__t2444) + rt::is_cons(&__t2267) }; - if !rt::is_truthy(interp, &__t2456)? { + if !rt::is_truthy(interp, &__t2279)? { Value::bool(false) } else { - let __t2457 = { - let __t2454 = { - let __t2445 = Value::nil(); - let __t2449 = { - let __t2448 = { - let __t2447 = { - let __t2446 = v_V885.clone(); - rt::hd(&__t2446)? + let __t2280 = { + let __t2277 = { + let __t2268 = Value::nil(); + let __t2272 = { + let __t2271 = { + let __t2270 = { + let __t2269 = v_V862.clone(); + rt::hd(&__t2269)? }; - rt::tl(&__t2447)? + rt::tl(&__t2270)? }; - rt::tl(&__t2448)? + rt::tl(&__t2271)? }; - rt::eq(&__t2445, &__t2449) + rt::eq(&__t2268, &__t2272) }; - if !rt::is_truthy(interp, &__t2454)? { + if !rt::is_truthy(interp, &__t2277)? { Value::bool(false) } else { - let __t2455 = { - let __t2450 = v_V884.clone(); - let __t2453 = { - let __t2452 = { - let __t2451 = v_V885.clone(); - rt::hd(&__t2451)? + let __t2278 = { + let __t2273 = v_V861.clone(); + let __t2276 = { + let __t2275 = { + let __t2274 = v_V862.clone(); + rt::hd(&__t2274)? }; - rt::hd(&__t2452)? + rt::hd(&__t2275)? }; - rt::eq(&__t2450, &__t2453) + rt::eq(&__t2273, &__t2276) }; - Value::bool(rt::is_truthy(interp, &__t2455)?) + Value::bool(rt::is_truthy(interp, &__t2278)?) } }; - Value::bool(rt::is_truthy(interp, &__t2457)?) + Value::bool(rt::is_truthy(interp, &__t2280)?) } }; - Value::bool(rt::is_truthy(interp, &__t2459)?) + Value::bool(rt::is_truthy(interp, &__t2282)?) } }; - Value::bool(rt::is_truthy(interp, &__t2461)?) + Value::bool(rt::is_truthy(interp, &__t2284)?) } }; - if match rt::is_truthy(interp, &__t2474) { + if match rt::is_truthy(interp, &__t2297) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2464 = { - let __t2463 = { - let __t2462 = v_V885.clone(); - rt::hd(&__t2462)? + let __t2287 = { + let __t2286 = { + let __t2285 = v_V862.clone(); + rt::hd(&__t2285)? }; - rt::hd(&__t2463)? + rt::hd(&__t2286)? }; - let __t2466 = { - let __t2465 = v_V885.clone(); - rt::tl(&__t2465)? + let __t2289 = { + let __t2288 = v_V862.clone(); + rt::tl(&__t2288)? }; - let __t2473 = { - let __t2471 = { - let __t2467 = Value::bool(true); - let __t2470 = { - let __t2469 = { - let __t2468 = v_V885.clone(); - rt::hd(&__t2468)? + let __t2296 = { + let __t2294 = { + let __t2290 = Value::bool(true); + let __t2293 = { + let __t2292 = { + let __t2291 = v_V862.clone(); + rt::hd(&__t2291)? }; - rt::tl(&__t2469)? + rt::tl(&__t2292)? }; - rt::cons(&__t2467, &__t2470) + rt::cons(&__t2290, &__t2293) }; - let __t2472 = v_V886.clone(); - rt::cons(&__t2471, &__t2472) + let __t2295 = v_V863.clone(); + rt::cons(&__t2294, &__t2295) }; - v_V884 = __t2464; - v_V885 = __t2466; - v_V886 = __t2473; + v_V861 = __t2287; + v_V862 = __t2289; + v_V863 = __t2296; continue; } } else { { - let __t2438 = Value::bool(true); - if match rt::is_truthy(interp, &__t2438) { + let __t2261 = Value::bool(true); + if match rt::is_truthy(interp, &__t2261) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2436 = v_V886.clone(); - let __t2437 = v_V885.clone(); - rt::apply_direct(interp, "@p", &[__t2436, __t2437])? + let __t2259 = v_V863.clone(); + let __t2260 = v_V862.clone(); + rt::apply_direct(interp, "@p", &[__t2259, __t2260])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -11222,107 +10345,107 @@ pub fn aot_shen_x2e_factor_x2d_selectors(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V889 = args[0].clone(); + let mut v_V866 = args[0].clone(); #[allow(unused_mut)] - let mut v_V890 = args[1].clone(); + let mut v_V867 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2585 = { - let __t2564 = { - let __t2555 = v_V889.clone(); - rt::is_cons(&__t2555) + let __t2408 = { + let __t2387 = { + let __t2378 = v_V866.clone(); + rt::is_cons(&__t2378) }; - if !rt::is_truthy(interp, &__t2564)? { + if !rt::is_truthy(interp, &__t2387)? { Value::bool(false) } else { - let __t2565 = { - let __t2562 = { - let __t2557 = { - let __t2556 = v_V889.clone(); - rt::tl(&__t2556)? + let __t2388 = { + let __t2385 = { + let __t2380 = { + let __t2379 = v_V866.clone(); + rt::tl(&__t2379)? }; - rt::is_cons(&__t2557) + rt::is_cons(&__t2380) }; - if !rt::is_truthy(interp, &__t2562)? { + if !rt::is_truthy(interp, &__t2385)? { Value::bool(false) } else { - let __t2563 = { - let __t2558 = Value::nil(); - let __t2561 = { - let __t2560 = { - let __t2559 = v_V889.clone(); - rt::tl(&__t2559)? + let __t2386 = { + let __t2381 = Value::nil(); + let __t2384 = { + let __t2383 = { + let __t2382 = v_V866.clone(); + rt::tl(&__t2382)? }; - rt::tl(&__t2560)? + rt::tl(&__t2383)? }; - rt::eq(&__t2558, &__t2561) + rt::eq(&__t2381, &__t2384) }; - Value::bool(rt::is_truthy(interp, &__t2563)?) + Value::bool(rt::is_truthy(interp, &__t2386)?) } }; - Value::bool(rt::is_truthy(interp, &__t2565)?) + Value::bool(rt::is_truthy(interp, &__t2388)?) } }; - if match rt::is_truthy(interp, &__t2585) { + if match rt::is_truthy(interp, &__t2408) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W891 = { - let __t2567 = { - let __t2566 = v_V889.clone(); - rt::hd(&__t2566)? + let v_W868 = { + let __t2390 = { + let __t2389 = v_V866.clone(); + rt::hd(&__t2389)? }; - rt::apply_direct(interp, "shen.op", &[__t2567])? + rt::apply_direct(interp, "shen.op", &[__t2390])? }; { - let __t2570 = { - let __t2568 = Value::sym(interp.intern("shen.skip")); - let __t2569 = v_W891.clone(); - rt::eq(&__t2568, &__t2569) + let __t2393 = { + let __t2391 = Value::sym(interp.intern("shen.skip")); + let __t2392 = v_W868.clone(); + rt::eq(&__t2391, &__t2392) }; - if match rt::is_truthy(interp, &__t2570) { + if match rt::is_truthy(interp, &__t2393) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V890.clone()); + break Ok(v_V867.clone()); } else { break Ok({ - let __t2583 = { - let __t2575 = { - let __t2572 = { - let __t2571 = v_W891.clone(); - rt::apply_direct(interp, "shen.op1", &[__t2571])? + let __t2406 = { + let __t2398 = { + let __t2395 = { + let __t2394 = v_W868.clone(); + rt::apply_direct(interp, "shen.op1", &[__t2394])? }; - let __t2574 = { - let __t2573 = v_V889.clone(); - rt::tl(&__t2573)? + let __t2397 = { + let __t2396 = v_V866.clone(); + rt::tl(&__t2396)? }; - rt::cons(&__t2572, &__t2574) + rt::cons(&__t2395, &__t2397) }; - let __t2582 = { - let __t2580 = { - let __t2577 = { - let __t2576 = v_W891.clone(); - rt::apply_direct(interp, "shen.op2", &[__t2576])? + let __t2405 = { + let __t2403 = { + let __t2400 = { + let __t2399 = v_W868.clone(); + rt::apply_direct(interp, "shen.op2", &[__t2399])? }; - let __t2579 = { - let __t2578 = v_V889.clone(); - rt::tl(&__t2578)? + let __t2402 = { + let __t2401 = v_V866.clone(); + rt::tl(&__t2401)? }; - rt::cons(&__t2577, &__t2579) + rt::cons(&__t2400, &__t2402) }; - let __t2581 = Value::nil(); - rt::cons(&__t2580, &__t2581) + let __t2404 = Value::nil(); + rt::cons(&__t2403, &__t2404) }; - rt::cons(&__t2575, &__t2582) + rt::cons(&__t2398, &__t2405) }; - let __t2584 = v_V890.clone(); + let __t2407 = v_V867.clone(); rt::apply_direct( interp, "shen.factor-selectors-h", - &[__t2583, __t2584], + &[__t2406, __t2407], )? }); } @@ -11330,12 +10453,12 @@ pub fn aot_shen_x2e_factor_x2d_selectors(interp: &mut Interp, args: &[Value]) -> } } else { { - let __t2554 = Value::bool(true); - if match rt::is_truthy(interp, &__t2554) { + let __t2377 = Value::bool(true); + if match rt::is_truthy(interp, &__t2377) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V890.clone()); + break Ok(v_V867.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -11363,60 +10486,60 @@ pub fn aot_shen_x2e_op(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V894 = args[0].clone(); + let mut v_V871 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2598 = { - let __t2596 = Value::sym(interp.intern("cons?")); - let __t2597 = v_V894.clone(); - rt::eq(&__t2596, &__t2597) + let __t2421 = { + let __t2419 = Value::sym(interp.intern("cons?")); + let __t2420 = v_V871.clone(); + rt::eq(&__t2419, &__t2420) }; - if match rt::is_truthy(interp, &__t2598) { + if match rt::is_truthy(interp, &__t2421) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("cons"))); } else { { - let __t2595 = { - let __t2593 = Value::sym(interp.intern("shen.+string?")); - let __t2594 = v_V894.clone(); - rt::eq(&__t2593, &__t2594) + let __t2418 = { + let __t2416 = Value::sym(interp.intern("shen.+string?")); + let __t2417 = v_V871.clone(); + rt::eq(&__t2416, &__t2417) }; - if match rt::is_truthy(interp, &__t2595) { + if match rt::is_truthy(interp, &__t2418) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("@s"))); } else { { - let __t2592 = { - let __t2590 = Value::sym(interp.intern("shen.+vector?")); - let __t2591 = v_V894.clone(); - rt::eq(&__t2590, &__t2591) + let __t2415 = { + let __t2413 = Value::sym(interp.intern("shen.+vector?")); + let __t2414 = v_V871.clone(); + rt::eq(&__t2413, &__t2414) }; - if match rt::is_truthy(interp, &__t2592) { + if match rt::is_truthy(interp, &__t2415) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("@v"))); } else { { - let __t2589 = { - let __t2587 = Value::sym(interp.intern("tuple?")); - let __t2588 = v_V894.clone(); - rt::eq(&__t2587, &__t2588) + let __t2412 = { + let __t2410 = Value::sym(interp.intern("tuple?")); + let __t2411 = v_V871.clone(); + rt::eq(&__t2410, &__t2411) }; - if match rt::is_truthy(interp, &__t2589) { + if match rt::is_truthy(interp, &__t2412) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("@p"))); } else { { - let __t2586 = Value::bool(true); - if match rt::is_truthy(interp, &__t2586) { + let __t2409 = Value::bool(true); + if match rt::is_truthy(interp, &__t2409) { Ok(b) => b, Err(e) => break Err(e), } { @@ -11455,122 +10578,122 @@ pub fn aot_shen_x2e_factor_x2d_selectors_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V895 = args[0].clone(); + let mut v_V872 = args[0].clone(); #[allow(unused_mut)] - let mut v_V896 = args[1].clone(); + let mut v_V873 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2631 = { - let __t2629 = Value::nil(); - let __t2630 = v_V895.clone(); - rt::eq(&__t2629, &__t2630) + let __t2454 = { + let __t2452 = Value::nil(); + let __t2453 = v_V872.clone(); + rt::eq(&__t2452, &__t2453) }; - if match rt::is_truthy(interp, &__t2631) { + if match rt::is_truthy(interp, &__t2454) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V896.clone()); + break Ok(v_V873.clone()); } else { { - let __t2628 = { - let __t2601 = v_V895.clone(); - rt::is_cons(&__t2601) + let __t2451 = { + let __t2424 = v_V872.clone(); + rt::is_cons(&__t2424) }; - if match rt::is_truthy(interp, &__t2628) { + if match rt::is_truthy(interp, &__t2451) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2607 = { - let __t2605 = { - let __t2603 = { - let __t2602 = v_V895.clone(); - rt::hd(&__t2602)? + let __t2430 = { + let __t2428 = { + let __t2426 = { + let __t2425 = v_V872.clone(); + rt::hd(&__t2425)? }; - let __t2604 = v_V896.clone(); - rt::apply_direct(interp, "occurrences", &[__t2603, __t2604])? + let __t2427 = v_V873.clone(); + rt::apply_direct(interp, "occurrences", &[__t2426, __t2427])? }; - let __t2606 = Value::int(1i64); - rt::gt(&__t2605, &__t2606)? + let __t2429 = Value::int(1i64); + rt::gt(&__t2428, &__t2429)? }; - if match rt::is_truthy(interp, &__t2607) { + if match rt::is_truthy(interp, &__t2430) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W897 = { - let __t2608 = Value::sym(interp.intern("Select")); - rt::apply_direct(interp, "gensym", &[__t2608])? + let v_W874 = { + let __t2431 = Value::sym(interp.intern("Select")); + rt::apply_direct(interp, "gensym", &[__t2431])? }; break Ok({ - let __t2609 = Value::sym(interp.intern("let")); - let __t2624 = { - let __t2610 = v_W897.clone(); - let __t2623 = { - let __t2612 = { - let __t2611 = v_V895.clone(); - rt::hd(&__t2611)? + let __t2432 = Value::sym(interp.intern("let")); + let __t2447 = { + let __t2433 = v_W874.clone(); + let __t2446 = { + let __t2435 = { + let __t2434 = v_V872.clone(); + rt::hd(&__t2434)? }; - let __t2622 = { - let __t2620 = { - let __t2614 = { - let __t2613 = v_V895.clone(); - rt::tl(&__t2613)? + let __t2445 = { + let __t2443 = { + let __t2437 = { + let __t2436 = v_V872.clone(); + rt::tl(&__t2436)? }; - let __t2619 = { - let __t2615 = v_W897.clone(); - let __t2617 = { - let __t2616 = v_V895.clone(); - rt::hd(&__t2616)? + let __t2442 = { + let __t2438 = v_W874.clone(); + let __t2440 = { + let __t2439 = v_V872.clone(); + rt::hd(&__t2439)? }; - let __t2618 = v_V896.clone(); + let __t2441 = v_V873.clone(); rt::apply_direct( interp, "subst", - &[__t2615, __t2617, __t2618], + &[__t2438, __t2440, __t2441], )? }; rt::apply_direct( interp, "shen.factor-selectors-h", - &[__t2614, __t2619], + &[__t2437, __t2442], )? }; - let __t2621 = Value::nil(); - rt::cons(&__t2620, &__t2621) + let __t2444 = Value::nil(); + rt::cons(&__t2443, &__t2444) }; - rt::cons(&__t2612, &__t2622) + rt::cons(&__t2435, &__t2445) }; - rt::cons(&__t2610, &__t2623) + rt::cons(&__t2433, &__t2446) }; - rt::cons(&__t2609, &__t2624) + rt::cons(&__t2432, &__t2447) }); } } else { { - let __t2626 = { - let __t2625 = v_V895.clone(); - rt::tl(&__t2625)? + let __t2449 = { + let __t2448 = v_V872.clone(); + rt::tl(&__t2448)? }; - let __t2627 = v_V896.clone(); - v_V895 = __t2626; - v_V896 = __t2627; + let __t2450 = v_V873.clone(); + v_V872 = __t2449; + v_V873 = __t2450; continue; } } } } else { { - let __t2600 = Value::bool(true); - if match rt::is_truthy(interp, &__t2600) { + let __t2423 = Value::bool(true); + if match rt::is_truthy(interp, &__t2423) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2599 = - Value::sym(interp.intern("shen.factor-selectors-h")); - rt::apply_direct(interp, "shen.f-error", &[__t2599])? + let __t2422 = + Value::str("partial function shen.factor-selectors-h"); + rt::apply_direct(interp, "simple-error", &[__t2422])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -11616,13 +10739,6 @@ pub fn install(interp: &mut Interp) { install_shen_x2e__x3c_constructor_x3e_(interp); install_shen_x2e_constructor_x3f_(interp); install_shen_x2e_constructor_x2d_error(interp); - install_shen_x2e_custom_x2d_pattern_x2d_compiler(interp); - install_shen_x2e_custom_x2d_pattern_x2d_reducer(interp); - install_shen_x2e_compound_x2d_pattern(interp); - install_shen_x2e_compound_x2d_pattern_x2d_h(interp); - install_shen_x2e_compile_x2d_pattern_x2d_fragment(interp); - install_shen_x2e_custom_x2d_pattern_x3f_(interp); - install_shen_x2e_custom_x2d_pattern_x2d_body(interp); install_shen_x2e__x3c_simple_x2d_pattern_x3e_(interp); install_shen_x2e__x3c_pattern1_x3e_(interp); install_shen_x2e__x3c_pattern2_x3e_(interp); @@ -11642,10 +10758,9 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_choicepoint_x3f_(interp); install_shen_x2e_choicepoint(interp); install_shen_x2e_rep_x2d_X(interp); - install_shen_x2e_alpha_x2d_convert(interp); install_shen_x2e_kl_x2d_body(interp); + install_shen_x2e_alpha_x2d_convert(interp); install_shen_x2e_triple_x2d_stack(interp); - install_shen_x2e_custom_x2d_pattern_x2d_triple_x2d_stack(interp); install_shen_x2e_rectify_x2d_test(interp); install_shen_x2e_beta(interp); install_shen_x2e_op1(interp); diff --git a/crates/shen-rust/src/aot/kernel/declarations.rs b/crates/shen-rust/src/aot/kernel/declarations.rs index 4f8fdb5..af88e71 100644 --- a/crates/shen-rust/src/aot/kernel/declarations.rs +++ b/crates/shen-rust/src/aot/kernel/declarations.rs @@ -39,9 +39,9 @@ pub fn aot_datatypes(interp: &mut Interp, args: &[Value]) -> ShenResult { "", 1, move |interp, args| { - let v_Z904 = args[0].clone(); + let v_Z5718 = args[0].clone(); Ok({ - let __t0 = v_Z904.clone(); + let __t0 = v_Z5718.clone(); rt::apply_direct(interp, "shen.typename", &[__t0])? }) }, @@ -63,11 +63,11 @@ fn install_datatypes(interp: &mut Interp) { interp.register_aot_direct("datatypes", aot_datatypes); } -/// AOT-compiled from KL `(defun shen.included ...)` -pub fn aot_shen_x2e_included(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun included ...)` +pub fn aot_included(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { return Err(ShenError::new(format!( - "shen.included: expected 0 args, got {}", + "included: expected 0 args, got {}", args.len() ))); } @@ -79,9 +79,9 @@ pub fn aot_shen_x2e_included(interp: &mut Interp, args: &[Value]) -> ShenResult< "", 1, move |interp, args| { - let v_Z905 = args[0].clone(); + let v_Z5719 = args[0].clone(); Ok({ - let __t4 = v_Z905.clone(); + let __t4 = v_Z5719.clone(); rt::apply_direct(interp, "shen.typename", &[__t4])? }) }, @@ -98,9 +98,9 @@ pub fn aot_shen_x2e_included(interp: &mut Interp, args: &[Value]) -> ShenResult< } } -fn install_shen_x2e_included(interp: &mut Interp) { - interp.register_native("shen.included", 0, aot_shen_x2e_included); - interp.register_aot_direct("shen.included", aot_shen_x2e_included); +fn install_included(interp: &mut Interp) { + interp.register_native("included", 0, aot_included); + interp.register_aot_direct("included", aot_included); } /// AOT-compiled from KL `(defun shen.typename ...)` @@ -112,12 +112,12 @@ pub fn aot_shen_x2e_typename(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V908 = args[0].clone(); + let mut v_V5722 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t15 = { - let __t10 = v_V908.clone(); + let __t10 = v_V5722.clone(); rt::is_cons(&__t10) }; if match rt::is_truthy(interp, &__t15) { @@ -128,7 +128,7 @@ pub fn aot_shen_x2e_typename(interp: &mut Interp, args: &[Value]) -> ShenResult< let __t14 = { let __t13 = { let __t12 = { - let __t11 = v_V908.clone(); + let __t11 = v_V5722.clone(); rt::hd(&__t11)? }; rt::apply_direct(interp, "str", &[__t12])? @@ -145,8 +145,8 @@ pub fn aot_shen_x2e_typename(interp: &mut Interp, args: &[Value]) -> ShenResult< Err(e) => break Err(e), } { break Ok({ - let __t8 = Value::sym(interp.intern("shen.typename")); - rt::apply_direct(interp, "shen.f-error", &[__t8])? + let __t8 = Value::str("partial function shen.typename"); + rt::apply_direct(interp, "simple-error", &[__t8])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -171,13 +171,13 @@ pub fn aot_shen_x2e_typename_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V909 = args[0].clone(); + let mut v_V5723 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t27 = { let __t25 = Value::str("#type"); - let __t26 = v_V909.clone(); + let __t26 = v_V5723.clone(); rt::eq(&__t25, &__t26) }; if match rt::is_truthy(interp, &__t27) { @@ -188,7 +188,7 @@ pub fn aot_shen_x2e_typename_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenR } else { { let __t24 = { - let __t18 = v_V909.clone(); + let __t18 = v_V5723.clone(); rt::apply_direct(interp, "shen.+string?", &[__t18])? }; if match rt::is_truthy(interp, &__t24) { @@ -197,12 +197,12 @@ pub fn aot_shen_x2e_typename_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenR } { break Ok({ let __t20 = { - let __t19 = v_V909.clone(); + let __t19 = v_V5723.clone(); rt::apply_direct(interp, "hdstr", &[__t19])? }; let __t23 = { let __t22 = { - let __t21 = v_V909.clone(); + let __t21 = v_V5723.clone(); rt::apply_direct(interp, "tlstr", &[__t21])? }; rt::apply_direct(interp, "shen.typename-h", &[__t22])? @@ -217,8 +217,8 @@ pub fn aot_shen_x2e_typename_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { break Ok({ - let __t16 = Value::sym(interp.intern("shen.typename-h")); - rt::apply_direct(interp, "shen.f-error", &[__t16])? + let __t16 = Value::str("partial function shen.typename-h"); + rt::apply_direct(interp, "simple-error", &[__t16])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -245,12 +245,12 @@ pub fn aot_prolog_x2d_memory(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V910 = args[0].clone(); + let mut v_V5724 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t30 = { - let __t28 = v_V910.clone(); + let __t28 = v_V5724.clone(); let __t29 = Value::int(0i64); rt::lt(&__t28, &__t29)? }; @@ -265,7 +265,7 @@ pub fn aot_prolog_x2d_memory(interp: &mut Interp, args: &[Value]) -> ShenResult< } else { { let __t33 = { - let __t32 = v_V910.clone(); + let __t32 = v_V5724.clone(); rt::apply_direct(interp, "integer?", &[__t32])? }; if match rt::is_truthy(interp, &__t33) { @@ -274,7 +274,7 @@ pub fn aot_prolog_x2d_memory(interp: &mut Interp, args: &[Value]) -> ShenResult< } { break Ok({ let __t34 = Value::sym(interp.intern("shen.*prolog-memory*")); - let __t35 = v_V910.clone(); + let __t35 = v_V5724.clone(); rt::apply_direct(interp, "set", &[__t34, __t35])? }); } else { @@ -294,6 +294,123 @@ fn install_prolog_x2d_memory(interp: &mut Interp) { interp.register_aot_direct("prolog-memory", aot_prolog_x2d_memory); } +/// AOT-compiled from KL `(defun shen.initialise-lambda-tables ...)` +pub fn aot_shen_x2e_initialise_x2d_lambda_x2d_tables( + interp: &mut Interp, + args: &[Value], +) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "shen.initialise-lambda-tables: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5727 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t58 = { + let __t56 = Value::nil(); + let __t57 = v_V5727.clone(); + rt::eq(&__t56, &__t57) + }; + if match rt::is_truthy(interp, &__t58) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::nil()); + } else { + { + let __t55 = { + let __t42 = { + let __t39 = v_V5727.clone(); + rt::is_cons(&__t39) + }; + if !rt::is_truthy(interp, &__t42)? { + Value::bool(false) + } else { + let __t43 = { + let __t41 = { + let __t40 = v_V5727.clone(); + rt::tl(&__t40)? + }; + rt::is_cons(&__t41) + }; + Value::bool(rt::is_truthy(interp, &__t43)?) + } + }; + if match rt::is_truthy(interp, &__t55) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let v_W5728 = { + let __t45 = { + let __t44 = v_V5727.clone(); + rt::hd(&__t44)? + }; + let __t46 = Value::sym(interp.intern("arity")); + let __t49 = { + let __t48 = { + let __t47 = v_V5727.clone(); + rt::tl(&__t47)? + }; + rt::hd(&__t48)? + }; + let __t51 = { + let __t50 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t50])? + }; + rt::apply_direct(interp, "put", &[__t45, __t46, __t49, __t51])? + }; + break Ok({ + let __t54 = { + let __t53 = { + let __t52 = v_V5727.clone(); + rt::tl(&__t52)? + }; + rt::tl(&__t53)? + }; + rt::apply_direct(interp, "shen.initialise-arity-table", &[__t54])? + }); + } + } else { + { + let __t38 = Value::bool(true); + if match rt::is_truthy(interp, &__t38) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t37 = Value::str( + "implementation error in shen.initialise-arity-table", + ); + rt::apply_direct(interp, "simple-error", &[__t37])? + }); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } + } + } +} + +fn install_shen_x2e_initialise_x2d_lambda_x2d_tables(interp: &mut Interp) { + interp.register_native( + "shen.initialise-lambda-tables", + 1, + aot_shen_x2e_initialise_x2d_lambda_x2d_tables, + ); + interp.register_aot_direct( + "shen.initialise-lambda-tables", + aot_shen_x2e_initialise_x2d_lambda_x2d_tables, + ); +} + /// AOT-compiled from KL `(defun arity ...)` pub fn aot_arity(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { @@ -303,19 +420,19 @@ pub fn aot_arity(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V911 = args[0].clone(); + let mut v_V5729 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t37 = v_V911.clone(); - let __t38 = Value::sym(interp.intern("arity")); - let __t40 = { - let __t39 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t39])? + let __t59 = v_V5729.clone(); + let __t60 = Value::sym(interp.intern("arity")); + let __t62 = { + let __t61 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t61])? }; - rt::apply_direct(interp, "get", &[__t37, __t38, __t40])? + rt::apply_direct(interp, "get", &[__t59, __t60, __t62])? }) })() { Ok(v) => v, @@ -325,7 +442,7 @@ pub fn aot_arity(interp: &mut Interp, args: &[Value]) -> ShenResult { "", 1, move |interp, args| { - let v_Z912 = args[0].clone(); + let v_Z5730 = args[0].clone(); Ok(Value::int(-1i64)) }, Vec::new(), @@ -357,88 +474,88 @@ pub fn aot_shen_x2e_initialise_x2d_arity_x2d_table( ))); } #[allow(unused_mut)] - let mut v_V915 = args[0].clone(); + let mut v_V5733 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t62 = { - let __t60 = Value::nil(); - let __t61 = v_V915.clone(); - rt::eq(&__t60, &__t61) + let __t84 = { + let __t82 = Value::nil(); + let __t83 = v_V5733.clone(); + rt::eq(&__t82, &__t83) }; - if match rt::is_truthy(interp, &__t62) { + if match rt::is_truthy(interp, &__t84) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t59 = { - let __t46 = { - let __t43 = v_V915.clone(); - rt::is_cons(&__t43) + let __t81 = { + let __t68 = { + let __t65 = v_V5733.clone(); + rt::is_cons(&__t65) }; - if !rt::is_truthy(interp, &__t46)? { + if !rt::is_truthy(interp, &__t68)? { Value::bool(false) } else { - let __t47 = { - let __t45 = { - let __t44 = v_V915.clone(); - rt::tl(&__t44)? + let __t69 = { + let __t67 = { + let __t66 = v_V5733.clone(); + rt::tl(&__t66)? }; - rt::is_cons(&__t45) + rt::is_cons(&__t67) }; - Value::bool(rt::is_truthy(interp, &__t47)?) + Value::bool(rt::is_truthy(interp, &__t69)?) } }; - if match rt::is_truthy(interp, &__t59) { + if match rt::is_truthy(interp, &__t81) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W916 = { - let __t49 = { - let __t48 = v_V915.clone(); - rt::hd(&__t48)? + let v_W5734 = { + let __t71 = { + let __t70 = v_V5733.clone(); + rt::hd(&__t70)? }; - let __t50 = Value::sym(interp.intern("arity")); - let __t53 = { - let __t52 = { - let __t51 = v_V915.clone(); - rt::tl(&__t51)? + let __t72 = Value::sym(interp.intern("arity")); + let __t75 = { + let __t74 = { + let __t73 = v_V5733.clone(); + rt::tl(&__t73)? }; - rt::hd(&__t52)? + rt::hd(&__t74)? }; - let __t55 = { - let __t54 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t54])? + let __t77 = { + let __t76 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t76])? }; - rt::apply_direct(interp, "put", &[__t49, __t50, __t53, __t55])? + rt::apply_direct(interp, "put", &[__t71, __t72, __t75, __t77])? }; { - let __t58 = { - let __t57 = { - let __t56 = v_V915.clone(); - rt::tl(&__t56)? + let __t80 = { + let __t79 = { + let __t78 = v_V5733.clone(); + rt::tl(&__t78)? }; - rt::tl(&__t57)? + rt::tl(&__t79)? }; - v_V915 = __t58; + v_V5733 = __t80; continue; } } } else { { - let __t42 = Value::bool(true); - if match rt::is_truthy(interp, &__t42) { + let __t64 = Value::bool(true); + if match rt::is_truthy(interp, &__t64) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t41 = Value::str( + let __t63 = Value::str( "implementation error in shen.initialise-arity-table", ); - rt::apply_direct(interp, "simple-error", &[__t41])? + rt::apply_direct(interp, "simple-error", &[__t63])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -472,35 +589,35 @@ pub fn aot_systemf(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V917 = args[0].clone(); + let mut v_V5735 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W918 = { - let __t63 = Value::sym(interp.intern("shen")); - let __t64 = Value::sym(interp.intern("shen.external-symbols")); - let __t66 = { - let __t65 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t65])? + let v_W5736 = { + let __t85 = Value::sym(interp.intern("shen")); + let __t86 = Value::sym(interp.intern("shen.external-symbols")); + let __t88 = { + let __t87 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t87])? }; - rt::apply_direct(interp, "get", &[__t63, __t64, __t66])? + rt::apply_direct(interp, "get", &[__t85, __t86, __t88])? }; { - let v_W919 = { - let __t67 = Value::sym(interp.intern("shen")); - let __t68 = Value::sym(interp.intern("shen.external-symbols")); - let __t71 = { - let __t69 = v_V917.clone(); - let __t70 = v_W918.clone(); - rt::apply_direct(interp, "adjoin", &[__t69, __t70])? + let v_W5737 = { + let __t89 = Value::sym(interp.intern("shen")); + let __t90 = Value::sym(interp.intern("shen.external-symbols")); + let __t93 = { + let __t91 = v_V5735.clone(); + let __t92 = v_W5736.clone(); + rt::apply_direct(interp, "adjoin", &[__t91, __t92])? }; - let __t73 = { - let __t72 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t72])? + let __t95 = { + let __t94 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t94])? }; - rt::apply_direct(interp, "put", &[__t67, __t68, __t71, __t73])? + rt::apply_direct(interp, "put", &[__t89, __t90, __t93, __t95])? }; - break Ok(v_V917.clone()); + break Ok(v_V5735.clone()); } } } @@ -520,27 +637,27 @@ pub fn aot_adjoin(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V920 = args[0].clone(); + let mut v_V5738 = args[0].clone(); #[allow(unused_mut)] - let mut v_V921 = args[1].clone(); + let mut v_V5739 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t76 = { - let __t74 = v_V920.clone(); - let __t75 = v_V921.clone(); - rt::apply_direct(interp, "element?", &[__t74, __t75])? + let __t98 = { + let __t96 = v_V5738.clone(); + let __t97 = v_V5739.clone(); + rt::apply_direct(interp, "element?", &[__t96, __t97])? }; - if match rt::is_truthy(interp, &__t76) { + if match rt::is_truthy(interp, &__t98) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V921.clone()); + break Ok(v_V5739.clone()); } else { break Ok({ - let __t77 = v_V920.clone(); - let __t78 = v_V921.clone(); - rt::cons(&__t77, &__t78) + let __t99 = v_V5738.clone(); + let __t100 = v_V5739.clone(); + rt::cons(&__t99, &__t100) }); } } @@ -561,53 +678,53 @@ pub fn aot_shen_x2e_lambda_x2d_entry(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V922 = args[0].clone(); + let mut v_V5740 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W923 = { - let __t79 = v_V922.clone(); - rt::apply_direct(interp, "arity", &[__t79])? + let v_W5741 = { + let __t101 = v_V5740.clone(); + rt::apply_direct(interp, "arity", &[__t101])? }; { - let __t86 = { - let __t84 = { - let __t80 = v_W923.clone(); - let __t81 = Value::int(-1i64); - rt::eq(&__t80, &__t81) + let __t108 = { + let __t106 = { + let __t102 = v_W5741.clone(); + let __t103 = Value::int(-1i64); + rt::eq(&__t102, &__t103) }; - if rt::is_truthy(interp, &__t84)? { + if rt::is_truthy(interp, &__t106)? { Value::bool(true) } else { - let __t85 = { - let __t82 = v_W923.clone(); - let __t83 = Value::int(0i64); - rt::eq(&__t82, &__t83) + let __t107 = { + let __t104 = v_W5741.clone(); + let __t105 = Value::int(0i64); + rt::eq(&__t104, &__t105) }; - Value::bool(rt::is_truthy(interp, &__t85)?) + Value::bool(rt::is_truthy(interp, &__t107)?) } }; - if match rt::is_truthy(interp, &__t86) { + if match rt::is_truthy(interp, &__t108) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { break Ok({ - let __t87 = v_V922.clone(); - let __t93 = { - let __t92 = { - let __t90 = { - let __t88 = v_V922.clone(); - let __t89 = Value::nil(); - rt::cons(&__t88, &__t89) + let __t109 = v_V5740.clone(); + let __t115 = { + let __t114 = { + let __t112 = { + let __t110 = v_V5740.clone(); + let __t111 = Value::nil(); + rt::cons(&__t110, &__t111) }; - let __t91 = v_W923.clone(); - rt::apply_direct(interp, "shen.lambda-function", &[__t90, __t91])? + let __t113 = v_W5741.clone(); + rt::apply_direct(interp, "shen.lambda-function", &[__t112, __t113])? }; - rt::apply_direct(interp, "eval-kl", &[__t92])? + rt::apply_direct(interp, "eval-kl", &[__t114])? }; - rt::cons(&__t87, &__t93) + rt::cons(&__t109, &__t115) }); } } @@ -620,78 +737,6 @@ fn install_shen_x2e_lambda_x2d_entry(interp: &mut Interp) { interp.register_aot_direct("shen.lambda-entry", aot_shen_x2e_lambda_x2d_entry); } -/// AOT-compiled from KL `(defun shen.set-lambda-form-entry ...)` -pub fn aot_shen_x2e_set_x2d_lambda_x2d_form_x2d_entry( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.set-lambda-form-entry: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V924 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t104 = { - let __t96 = v_V924.clone(); - rt::is_cons(&__t96) - }; - if match rt::is_truthy(interp, &__t104) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t98 = { - let __t97 = v_V924.clone(); - rt::hd(&__t97)? - }; - let __t99 = Value::sym(interp.intern("shen.lambda-form")); - let __t101 = { - let __t100 = v_V924.clone(); - rt::tl(&__t100)? - }; - let __t103 = { - let __t102 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t102])? - }; - rt::apply_direct(interp, "put", &[__t98, __t99, __t101, __t103])? - }); - } else { - { - let __t95 = Value::bool(true); - if match rt::is_truthy(interp, &__t95) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t94 = Value::sym(interp.intern("shen.set-lambda-form-entry")); - rt::apply_direct(interp, "shen.f-error", &[__t94])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2e_set_x2d_lambda_x2d_form_x2d_entry(interp: &mut Interp) { - interp.register_native( - "shen.set-lambda-form-entry", - 1, - aot_shen_x2e_set_x2d_lambda_x2d_form_x2d_entry, - ); - interp.register_aot_direct( - "shen.set-lambda-form-entry", - aot_shen_x2e_set_x2d_lambda_x2d_form_x2d_entry, - ); -} - /// AOT-compiled from KL `(defun shen.build-lambda-table ...)` pub fn aot_shen_x2e_build_x2d_lambda_x2d_table( interp: &mut Interp, @@ -704,100 +749,86 @@ pub fn aot_shen_x2e_build_x2d_lambda_x2d_table( ))); } #[allow(unused_mut)] - let mut v_V925 = args[0].clone(); + let mut v_V5742 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W926 = { - let __t106 = { + let v_W5743 = { + let __t117 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z927 = args[0].clone(); + let v_Z5744 = args[0].clone(); Ok({ - let __t105 = v_Z927.clone(); - rt::apply_direct(interp, "shen.lambda-entry", &[__t105])? + let __t116 = v_Z5744.clone(); + rt::apply_direct(interp, "shen.lambda-entry", &[__t116])? }) }, Vec::new(), interp, ) }; - let __t107 = v_V925.clone(); - rt::apply_direct(interp, "map", &[__t106, __t107])? + let __t118 = v_V5742.clone(); + rt::apply_direct(interp, "map", &[__t117, __t118])? }; break Ok({ - let __t109 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z928 = args[0].clone(); - Ok({ - let __t108 = v_Z928.clone(); - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t108])? - }) - }, - Vec::new(), - interp, - ) - }; - let __t140 = { - let __t113 = { - let __t110 = Value::sym(interp.intern("shen.tuple")); - let __t112 = { + let __t119 = Value::sym(interp.intern("shen.*lambdatable*")); + let __t145 = { + let __t123 = { + let __t120 = Value::sym(interp.intern("shen.tuple")); + let __t122 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z929 = args[0].clone(); + let v_Z5745 = args[0].clone(); Ok({ - let __t111 = v_Z929.clone(); - rt::apply_direct(interp, "shen.tuple", &[__t111])? + let __t121 = v_Z5745.clone(); + rt::apply_direct(interp, "shen.tuple", &[__t121])? }) }, Vec::new(), interp, ) }; - rt::cons(&__t110, &__t112) + rt::cons(&__t120, &__t122) }; - let __t139 = { - let __t117 = { - let __t114 = Value::sym(interp.intern("shen.pvar")); - let __t116 = { + let __t144 = { + let __t127 = { + let __t124 = Value::sym(interp.intern("shen.pvar")); + let __t126 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z930 = args[0].clone(); + let v_Z5746 = args[0].clone(); Ok({ - let __t115 = v_Z930.clone(); - rt::apply_direct(interp, "shen.pvar", &[__t115])? + let __t125 = v_Z5746.clone(); + rt::apply_direct(interp, "shen.pvar", &[__t125])? }) }, Vec::new(), interp, ) }; - rt::cons(&__t114, &__t116) + rt::cons(&__t124, &__t126) }; - let __t138 = { - let __t121 = { - let __t118 = Value::sym(interp.intern("shen.dictionary")); - let __t120 = { + let __t143 = { + let __t131 = { + let __t128 = Value::sym(interp.intern("shen.print-prolog-vector")); + let __t130 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z931 = args[0].clone(); + let v_Z5747 = args[0].clone(); Ok({ - let __t119 = v_Z931.clone(); + let __t129 = v_Z5747.clone(); rt::apply_direct( interp, - "shen.dictionary", - &[__t119], + "shen.print-prolog-vector", + &[__t129], )? }) }, @@ -805,24 +836,23 @@ pub fn aot_shen_x2e_build_x2d_lambda_x2d_table( interp, ) }; - rt::cons(&__t118, &__t120) + rt::cons(&__t128, &__t130) }; - let __t137 = { - let __t125 = { - let __t122 = - Value::sym(interp.intern("shen.print-prolog-vector")); - let __t124 = { + let __t142 = { + let __t135 = { + let __t132 = Value::sym(interp.intern("shen.print-freshterm")); + let __t134 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z932 = args[0].clone(); + let v_Z5748 = args[0].clone(); Ok({ - let __t123 = v_Z932.clone(); + let __t133 = v_Z5748.clone(); rt::apply_direct( interp, - "shen.print-prolog-vector", - &[__t123], + "shen.print-freshterm", + &[__t133], )? }) }, @@ -830,24 +860,23 @@ pub fn aot_shen_x2e_build_x2d_lambda_x2d_table( interp, ) }; - rt::cons(&__t122, &__t124) + rt::cons(&__t132, &__t134) }; - let __t136 = { - let __t129 = { - let __t126 = - Value::sym(interp.intern("shen.print-freshterm")); - let __t128 = { + let __t141 = { + let __t139 = { + let __t136 = Value::sym(interp.intern("shen.printF")); + let __t138 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z933 = args[0].clone(); + let v_Z5749 = args[0].clone(); Ok({ - let __t127 = v_Z933.clone(); + let __t137 = v_Z5749.clone(); rt::apply_direct( interp, - "shen.print-freshterm", - &[__t127], + "shen.printF", + &[__t137], )? }) }, @@ -855,46 +884,20 @@ pub fn aot_shen_x2e_build_x2d_lambda_x2d_table( interp, ) }; - rt::cons(&__t126, &__t128) - }; - let __t135 = { - let __t133 = { - let __t130 = Value::sym(interp.intern("shen.printF")); - let __t132 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z934 = args[0].clone(); - Ok({ - let __t131 = v_Z934.clone(); - rt::apply_direct( - interp, - "shen.printF", - &[__t131], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t130, &__t132) - }; - let __t134 = v_W926.clone(); - rt::cons(&__t133, &__t134) + rt::cons(&__t136, &__t138) }; - rt::cons(&__t129, &__t135) + let __t140 = v_W5743.clone(); + rt::cons(&__t139, &__t140) }; - rt::cons(&__t125, &__t136) + rt::cons(&__t135, &__t141) }; - rt::cons(&__t121, &__t137) + rt::cons(&__t131, &__t142) }; - rt::cons(&__t117, &__t138) + rt::cons(&__t127, &__t143) }; - rt::cons(&__t113, &__t139) + rt::cons(&__t123, &__t144) }; - rt::apply_direct(interp, "shen.for-each", &[__t109, __t140])? + rt::apply_direct(interp, "set", &[__t119, __t145])? }); } } @@ -916,15 +919,15 @@ fn install_shen_x2e_build_x2d_lambda_x2d_table(interp: &mut Interp) { /// boot so these names override the tree-walked defuns. pub fn install(interp: &mut Interp) { install_datatypes(interp); - install_shen_x2e_included(interp); + install_included(interp); install_shen_x2e_typename(interp); install_shen_x2e_typename_x2d_h(interp); install_prolog_x2d_memory(interp); + install_shen_x2e_initialise_x2d_lambda_x2d_tables(interp); install_arity(interp); install_shen_x2e_initialise_x2d_arity_x2d_table(interp); install_systemf(interp); install_adjoin(interp); install_shen_x2e_lambda_x2d_entry(interp); - install_shen_x2e_set_x2d_lambda_x2d_form_x2d_entry(interp); install_shen_x2e_build_x2d_lambda_x2d_table(interp); } diff --git a/crates/shen-rust/src/aot/kernel/dict.rs b/crates/shen-rust/src/aot/kernel/dict.rs deleted file mode 100644 index 1f07200..0000000 --- a/crates/shen-rust/src/aot/kernel/dict.rs +++ /dev/null @@ -1,1031 +0,0 @@ -//! Auto-generated by `klcompile` from kernel/klambda/dict.kl. -//! -//! DO NOT EDIT. Re-run klcompile to regenerate. - -#![allow( - unused_variables, - unused_braces, - unused_imports, - clippy::let_and_return, - clippy::needless_question_mark, - clippy::redundant_clone, - clippy::needless_late_init, - clippy::len_zero, - clippy::needless_borrow, - clippy::approx_constant, - clippy::redundant_closure_call, - non_snake_case -)] - -use crate::aot::runtime as rt; -use crate::error::{ShenError, ShenResult}; -use crate::interp::eval::Interp; -use crate::value::Value; -use std::rc::Rc; - -/// AOT-compiled from KL `(defun shen.dict ...)` -pub fn aot_shen_x2e_dict(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4162 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t27 = { - let __t19 = v_V4162.clone(); - let __t20 = Value::int(1i64); - rt::lt(&__t19, &__t20)? - }; - if match rt::is_truthy(interp, &__t27) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t26 = { - let __t21 = Value::str("invalid initial dict size: "); - let __t25 = { - let __t22 = v_V4162.clone(); - let __t23 = Value::str(""); - let __t24 = Value::sym(interp.intern("shen.s")); - rt::apply_direct(interp, "shen.app", &[__t22, __t23, __t24])? - }; - rt::apply_direct(interp, "cn", &[__t21, __t25])? - }; - rt::apply_direct(interp, "simple-error", &[__t26])? - }); - } else { - { - let __t18 = Value::bool(true); - if match rt::is_truthy(interp, &__t18) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W4163 = { - let __t2 = { - let __t0 = Value::int(3i64); - let __t1 = v_V4162.clone(); - rt::add(&__t0, &__t1)? - }; - rt::apply_direct(interp, "absvector", &[__t2])? - }; - { - let v_W4164 = { - let __t3 = v_W4163.clone(); - let __t4 = Value::int(0i64); - let __t5 = Value::sym(interp.intern("shen.dictionary")); - rt::apply_direct(interp, "address->", &[__t3, __t4, __t5])? - }; - { - let v_W4165 = { - let __t6 = v_W4163.clone(); - let __t7 = Value::int(1i64); - let __t8 = v_V4162.clone(); - rt::apply_direct(interp, "address->", &[__t6, __t7, __t8])? - }; - { - let v_W4166 = { - let __t9 = v_W4163.clone(); - let __t10 = Value::int(2i64); - let __t11 = Value::int(0i64); - rt::apply_direct( - interp, - "address->", - &[__t9, __t10, __t11], - )? - }; - { - let v_W4167 = { - let __t12 = v_W4163.clone(); - let __t13 = Value::int(3i64); - let __t16 = { - let __t14 = Value::int(2i64); - let __t15 = v_V4162.clone(); - rt::add(&__t14, &__t15)? - }; - let __t17 = Value::nil(); - rt::apply_direct( - interp, - "shen.fillvector", - &[__t12, __t13, __t16, __t17], - )? - }; - break Ok(v_W4163.clone()); - } - } - } - } - } - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2e_dict(interp: &mut Interp) { - interp.register_native("shen.dict", 1, aot_shen_x2e_dict); - interp.register_aot_direct("shen.dict", aot_shen_x2e_dict); -} - -/// AOT-compiled from KL `(defun shen.dict? ...)` -pub fn aot_shen_x2e_dict_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict?: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4168 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t29 = { - let __t28 = v_V4168.clone(); - rt::is_absvector(&__t28) - }; - if !match rt::is_truthy(interp, &__t29) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Ok({ - let __t32 = match (|| -> ShenResult { - Ok({ - let __t30 = v_V4168.clone(); - let __t31 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t30, __t31])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4169 = args[0].clone(); - Ok(Value::sym(interp.intern("shen.not-dictionary"))) - }, - Vec::new(), - interp, - ) - }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? - } - }; - let __t33 = Value::sym(interp.intern("shen.dictionary")); - rt::eq(&__t32, &__t33) - }); - } - } - } -} - -fn install_shen_x2e_dict_x3f_(interp: &mut Interp) { - interp.register_native("shen.dict?", 1, aot_shen_x2e_dict_x3f_); - interp.register_aot_direct("shen.dict?", aot_shen_x2e_dict_x3f_); -} - -/// AOT-compiled from KL `(defun shen.dict-capacity ...)` -pub fn aot_shen_x2e_dict_x2d_capacity(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict-capacity: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4170 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t34 = v_V4170.clone(); - let __t35 = Value::int(1i64); - rt::apply_direct(interp, "<-address", &[__t34, __t35])? - }); - } -} - -fn install_shen_x2e_dict_x2d_capacity(interp: &mut Interp) { - interp.register_native("shen.dict-capacity", 1, aot_shen_x2e_dict_x2d_capacity); - interp.register_aot_direct("shen.dict-capacity", aot_shen_x2e_dict_x2d_capacity); -} - -/// AOT-compiled from KL `(defun shen.dict-count ...)` -pub fn aot_shen_x2e_dict_x2d_count(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict-count: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4171 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t36 = v_V4171.clone(); - let __t37 = Value::int(2i64); - rt::apply_direct(interp, "<-address", &[__t36, __t37])? - }); - } -} - -fn install_shen_x2e_dict_x2d_count(interp: &mut Interp) { - interp.register_native("shen.dict-count", 1, aot_shen_x2e_dict_x2d_count); - interp.register_aot_direct("shen.dict-count", aot_shen_x2e_dict_x2d_count); -} - -/// AOT-compiled from KL `(defun shen.dict-count-> ...)` -pub fn aot_shen_x2e_dict_x2d_count_x2d__x3e_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.dict-count->: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4172 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4173 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t38 = v_V4172.clone(); - let __t39 = Value::int(2i64); - let __t40 = v_V4173.clone(); - rt::apply_direct(interp, "address->", &[__t38, __t39, __t40])? - }); - } -} - -fn install_shen_x2e_dict_x2d_count_x2d__x3e_(interp: &mut Interp) { - interp.register_native( - "shen.dict-count->", - 2, - aot_shen_x2e_dict_x2d_count_x2d__x3e_, - ); - interp.register_aot_direct("shen.dict-count->", aot_shen_x2e_dict_x2d_count_x2d__x3e_); -} - -/// AOT-compiled from KL `(defun shen.<-dict-bucket ...)` -pub fn aot_shen_x2e__x3c__x2d_dict_x2d_bucket( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.<-dict-bucket: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4174 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4175 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t41 = v_V4174.clone(); - let __t44 = { - let __t42 = Value::int(3i64); - let __t43 = v_V4175.clone(); - rt::add(&__t42, &__t43)? - }; - rt::apply_direct(interp, "<-address", &[__t41, __t44])? - }); - } -} - -fn install_shen_x2e__x3c__x2d_dict_x2d_bucket(interp: &mut Interp) { - interp.register_native( - "shen.<-dict-bucket", - 2, - aot_shen_x2e__x3c__x2d_dict_x2d_bucket, - ); - interp.register_aot_direct("shen.<-dict-bucket", aot_shen_x2e__x3c__x2d_dict_x2d_bucket); -} - -/// AOT-compiled from KL `(defun shen.dict-bucket-> ...)` -pub fn aot_shen_x2e_dict_x2d_bucket_x2d__x3e_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.dict-bucket->: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4176 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4177 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4178 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t45 = v_V4176.clone(); - let __t48 = { - let __t46 = Value::int(3i64); - let __t47 = v_V4177.clone(); - rt::add(&__t46, &__t47)? - }; - let __t49 = v_V4178.clone(); - rt::apply_direct(interp, "address->", &[__t45, __t48, __t49])? - }); - } -} - -fn install_shen_x2e_dict_x2d_bucket_x2d__x3e_(interp: &mut Interp) { - interp.register_native( - "shen.dict-bucket->", - 3, - aot_shen_x2e_dict_x2d_bucket_x2d__x3e_, - ); - interp.register_aot_direct("shen.dict-bucket->", aot_shen_x2e_dict_x2d_bucket_x2d__x3e_); -} - -/// AOT-compiled from KL `(defun shen.dict-update-count ...)` -pub fn aot_shen_x2e_dict_x2d_update_x2d_count( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.dict-update-count: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4179 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4180 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4181 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W4182 = { - let __t51 = { - let __t50 = v_V4181.clone(); - rt::apply_direct(interp, "length", &[__t50])? - }; - let __t53 = { - let __t52 = v_V4180.clone(); - rt::apply_direct(interp, "length", &[__t52])? - }; - rt::sub(&__t51, &__t53)? - }; - break Ok({ - let __t54 = v_V4179.clone(); - let __t58 = { - let __t55 = v_W4182.clone(); - let __t57 = { - let __t56 = v_V4179.clone(); - rt::apply_direct(interp, "shen.dict-count", &[__t56])? - }; - rt::add(&__t55, &__t57)? - }; - rt::apply_direct(interp, "shen.dict-count->", &[__t54, __t58])? - }); - } - } -} - -fn install_shen_x2e_dict_x2d_update_x2d_count(interp: &mut Interp) { - interp.register_native( - "shen.dict-update-count", - 3, - aot_shen_x2e_dict_x2d_update_x2d_count, - ); - interp.register_aot_direct( - "shen.dict-update-count", - aot_shen_x2e_dict_x2d_update_x2d_count, - ); -} - -/// AOT-compiled from KL `(defun shen.dict-> ...)` -pub fn aot_shen_x2e_dict_x2d__x3e_(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.dict->: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4183 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4184 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4185 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W4186 = { - let __t59 = v_V4184.clone(); - let __t61 = { - let __t60 = v_V4183.clone(); - rt::apply_direct(interp, "shen.dict-capacity", &[__t60])? - }; - rt::apply_direct(interp, "hash", &[__t59, __t61])? - }; - { - let v_W4187 = { - let __t62 = v_V4183.clone(); - let __t63 = v_W4186.clone(); - rt::apply_direct(interp, "shen.<-dict-bucket", &[__t62, __t63])? - }; - { - let v_W4188 = { - let __t64 = v_V4184.clone(); - let __t65 = v_V4185.clone(); - let __t66 = v_W4187.clone(); - rt::apply_direct(interp, "shen.assoc-set", &[__t64, __t65, __t66])? - }; - { - let v_W4189 = { - let __t67 = v_V4183.clone(); - let __t68 = v_W4186.clone(); - let __t69 = v_W4188.clone(); - rt::apply_direct(interp, "shen.dict-bucket->", &[__t67, __t68, __t69])? - }; - { - let v_W4190 = { - let __t70 = v_V4183.clone(); - let __t71 = v_W4187.clone(); - let __t72 = v_W4188.clone(); - rt::apply_direct( - interp, - "shen.dict-update-count", - &[__t70, __t71, __t72], - )? - }; - break Ok(v_V4185.clone()); - } - } - } - } - } - } -} - -fn install_shen_x2e_dict_x2d__x3e_(interp: &mut Interp) { - interp.register_native("shen.dict->", 3, aot_shen_x2e_dict_x2d__x3e_); - interp.register_aot_direct("shen.dict->", aot_shen_x2e_dict_x2d__x3e_); -} - -/// AOT-compiled from KL `(defun shen.<-dict ...)` -pub fn aot_shen_x2e__x3c__x2d_dict(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.<-dict: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4191 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4192 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W4193 = { - let __t73 = v_V4192.clone(); - let __t75 = { - let __t74 = v_V4191.clone(); - rt::apply_direct(interp, "shen.dict-capacity", &[__t74])? - }; - rt::apply_direct(interp, "hash", &[__t73, __t75])? - }; - { - let v_W4194 = { - let __t76 = v_V4191.clone(); - let __t77 = v_W4193.clone(); - rt::apply_direct(interp, "shen.<-dict-bucket", &[__t76, __t77])? - }; - { - let v_W4195 = { - let __t78 = v_V4192.clone(); - let __t79 = v_W4194.clone(); - rt::apply_direct(interp, "assoc", &[__t78, __t79])? - }; - { - let __t81 = { - let __t80 = v_W4195.clone(); - rt::apply_direct(interp, "empty?", &[__t80])? - }; - if match rt::is_truthy(interp, &__t81) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t87 = { - let __t82 = Value::str("value "); - let __t86 = { - let __t83 = v_V4192.clone(); - let __t84 = Value::str(" not found in dict\n"); - let __t85 = Value::sym(interp.intern("shen.a")); - rt::apply_direct( - interp, - "shen.app", - &[__t83, __t84, __t85], - )? - }; - rt::apply_direct(interp, "cn", &[__t82, __t86])? - }; - rt::apply_direct(interp, "simple-error", &[__t87])? - }); - } else { - break Ok({ - let __t88 = v_W4195.clone(); - rt::tl(&__t88)? - }); - } - } - } - } - } - } -} - -fn install_shen_x2e__x3c__x2d_dict(interp: &mut Interp) { - interp.register_native("shen.<-dict", 2, aot_shen_x2e__x3c__x2d_dict); - interp.register_aot_direct("shen.<-dict", aot_shen_x2e__x3c__x2d_dict); -} - -/// AOT-compiled from KL `(defun shen.dict-rm ...)` -pub fn aot_shen_x2e_dict_x2d_rm(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.dict-rm: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4196 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4197 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W4198 = { - let __t89 = v_V4197.clone(); - let __t91 = { - let __t90 = v_V4196.clone(); - rt::apply_direct(interp, "shen.dict-capacity", &[__t90])? - }; - rt::apply_direct(interp, "hash", &[__t89, __t91])? - }; - { - let v_W4199 = { - let __t92 = v_V4196.clone(); - let __t93 = v_W4198.clone(); - rt::apply_direct(interp, "shen.<-dict-bucket", &[__t92, __t93])? - }; - { - let v_W4200 = { - let __t94 = v_V4197.clone(); - let __t95 = v_W4199.clone(); - rt::apply_direct(interp, "shen.assoc-rm", &[__t94, __t95])? - }; - { - let v_W4201 = { - let __t96 = v_V4196.clone(); - let __t97 = v_W4198.clone(); - let __t98 = v_W4200.clone(); - rt::apply_direct(interp, "shen.dict-bucket->", &[__t96, __t97, __t98])? - }; - { - let v_W4202 = { - let __t99 = v_V4196.clone(); - let __t100 = v_W4199.clone(); - let __t101 = v_W4200.clone(); - rt::apply_direct( - interp, - "shen.dict-update-count", - &[__t99, __t100, __t101], - )? - }; - break Ok(v_V4197.clone()); - } - } - } - } - } - } -} - -fn install_shen_x2e_dict_x2d_rm(interp: &mut Interp) { - interp.register_native("shen.dict-rm", 2, aot_shen_x2e_dict_x2d_rm); - interp.register_aot_direct("shen.dict-rm", aot_shen_x2e_dict_x2d_rm); -} - -/// AOT-compiled from KL `(defun shen.dict-fold ...)` -pub fn aot_shen_x2e_dict_x2d_fold(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.dict-fold: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4203 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4204 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4205 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let v_W4206 = { - let __t102 = v_V4204.clone(); - rt::apply_direct(interp, "shen.dict-capacity", &[__t102])? - }; - break Ok({ - let __t103 = v_V4203.clone(); - let __t104 = v_V4204.clone(); - let __t105 = v_V4205.clone(); - let __t106 = Value::int(0i64); - let __t107 = v_W4206.clone(); - rt::apply_direct( - interp, - "shen.dict-fold-h", - &[__t103, __t104, __t105, __t106, __t107], - )? - }); - } - } -} - -fn install_shen_x2e_dict_x2d_fold(interp: &mut Interp) { - interp.register_native("shen.dict-fold", 3, aot_shen_x2e_dict_x2d_fold); - interp.register_aot_direct("shen.dict-fold", aot_shen_x2e_dict_x2d_fold); -} - -/// AOT-compiled from KL `(defun shen.dict-fold-h ...)` -pub fn aot_shen_x2e_dict_x2d_fold_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 5 { - return Err(ShenError::new(format!( - "shen.dict-fold-h: expected 5 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4208 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4209 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4210 = args[2].clone(); - #[allow(unused_mut)] - let mut v_V4211 = args[3].clone(); - #[allow(unused_mut)] - let mut v_V4212 = args[4].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t123 = { - let __t121 = v_V4211.clone(); - let __t122 = v_V4212.clone(); - rt::eq(&__t121, &__t122) - }; - if match rt::is_truthy(interp, &__t123) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V4210.clone()); - } else { - { - let __t120 = Value::bool(true); - if match rt::is_truthy(interp, &__t120) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W4213 = { - let __t108 = v_V4209.clone(); - let __t109 = v_V4211.clone(); - rt::apply_direct(interp, "shen.<-dict-bucket", &[__t108, __t109])? - }; - { - let v_W4214 = { - let __t110 = v_V4208.clone(); - let __t111 = v_W4213.clone(); - let __t112 = v_V4210.clone(); - rt::apply_direct( - interp, - "shen.bucket-fold", - &[__t110, __t111, __t112], - )? - }; - { - let __t113 = v_V4208.clone(); - let __t114 = v_V4209.clone(); - let __t115 = v_W4214.clone(); - let __t118 = { - let __t116 = Value::int(1i64); - let __t117 = v_V4211.clone(); - rt::add(&__t116, &__t117)? - }; - let __t119 = v_V4212.clone(); - v_V4208 = __t113; - v_V4209 = __t114; - v_V4210 = __t115; - v_V4211 = __t118; - v_V4212 = __t119; - continue; - } - } - } - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } -} - -fn install_shen_x2e_dict_x2d_fold_x2d_h(interp: &mut Interp) { - interp.register_native("shen.dict-fold-h", 5, aot_shen_x2e_dict_x2d_fold_x2d_h); - interp.register_aot_direct("shen.dict-fold-h", aot_shen_x2e_dict_x2d_fold_x2d_h); -} - -/// AOT-compiled from KL `(defun shen.bucket-fold ...)` -pub fn aot_shen_x2e_bucket_x2d_fold(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.bucket-fold: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4215 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4216 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V4217 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t147 = { - let __t145 = Value::nil(); - let __t146 = v_V4216.clone(); - rt::eq(&__t145, &__t146) - }; - if match rt::is_truthy(interp, &__t147) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V4217.clone()); - } else { - { - let __t144 = { - let __t129 = { - let __t126 = v_V4216.clone(); - rt::is_cons(&__t126) - }; - if !rt::is_truthy(interp, &__t129)? { - Value::bool(false) - } else { - let __t130 = { - let __t128 = { - let __t127 = v_V4216.clone(); - rt::hd(&__t127)? - }; - rt::is_cons(&__t128) - }; - Value::bool(rt::is_truthy(interp, &__t130)?) - } - }; - if match rt::is_truthy(interp, &__t144) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t138 = { - let __t134 = { - let __t133 = { - let __t132 = { - let __t131 = v_V4216.clone(); - rt::hd(&__t131)? - }; - rt::hd(&__t132)? - }; - rt::apply_value(interp, v_V4215.clone(), &[__t133])? - }; - let __t137 = { - let __t136 = { - let __t135 = v_V4216.clone(); - rt::hd(&__t135)? - }; - rt::tl(&__t136)? - }; - rt::apply_value(interp, __t134, &[__t137])? - }; - let __t143 = { - let __t139 = v_V4215.clone(); - let __t141 = { - let __t140 = v_V4216.clone(); - rt::tl(&__t140)? - }; - let __t142 = v_V4217.clone(); - rt::apply_direct( - interp, - "shen.bucket-fold", - &[__t139, __t141, __t142], - )? - }; - rt::apply_value(interp, __t138, &[__t143])? - }); - } else { - { - let __t125 = Value::bool(true); - if match rt::is_truthy(interp, &__t125) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t124 = Value::sym(interp.intern("shen.bucket-fold")); - rt::apply_direct(interp, "shen.f-error", &[__t124])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2e_bucket_x2d_fold(interp: &mut Interp) { - interp.register_native("shen.bucket-fold", 3, aot_shen_x2e_bucket_x2d_fold); - interp.register_aot_direct("shen.bucket-fold", aot_shen_x2e_bucket_x2d_fold); -} - -/// AOT-compiled from KL `(defun shen.dict-keys ...)` -pub fn aot_shen_x2e_dict_x2d_keys(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict-keys: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4218 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t150 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4219 = args[0].clone(); - Ok({ - let v_Z4219 = v_Z4219.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4220 = args[0].clone(); - Ok({ - let v_Z4219 = v_Z4219.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4221 = args[0].clone(); - Ok({ - let __t148 = v_Z4219.clone(); - let __t149 = v_Z4221.clone(); - rt::cons(&__t148, &__t149) - }) - }, - vec![v_Z4219], - interp, - ) - }) - }, - vec![v_Z4219], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t151 = v_V4218.clone(); - let __t152 = Value::nil(); - rt::apply_direct(interp, "shen.dict-fold", &[__t150, __t151, __t152])? - }); - } -} - -fn install_shen_x2e_dict_x2d_keys(interp: &mut Interp) { - interp.register_native("shen.dict-keys", 1, aot_shen_x2e_dict_x2d_keys); - interp.register_aot_direct("shen.dict-keys", aot_shen_x2e_dict_x2d_keys); -} - -/// AOT-compiled from KL `(defun shen.dict-values ...)` -pub fn aot_shen_x2e_dict_x2d_values(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dict-values: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4222 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t155 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4223 = args[0].clone(); - Ok({ - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4224 = args[0].clone(); - Ok({ - let v_Z4224 = v_Z4224.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4225 = args[0].clone(); - Ok({ - let __t153 = v_Z4224.clone(); - let __t154 = v_Z4225.clone(); - rt::cons(&__t153, &__t154) - }) - }, - vec![v_Z4224], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t156 = v_V4222.clone(); - let __t157 = Value::nil(); - rt::apply_direct(interp, "shen.dict-fold", &[__t155, __t156, __t157])? - }); - } -} - -fn install_shen_x2e_dict_x2d_values(interp: &mut Interp) { - interp.register_native("shen.dict-values", 1, aot_shen_x2e_dict_x2d_values); - interp.register_aot_direct("shen.dict-values", aot_shen_x2e_dict_x2d_values); -} - -/// Register every AOT-compiled function on `interp`. Call after kernel -/// boot so these names override the tree-walked defuns. -pub fn install(interp: &mut Interp) { - install_shen_x2e_dict(interp); - install_shen_x2e_dict_x3f_(interp); - install_shen_x2e_dict_x2d_capacity(interp); - install_shen_x2e_dict_x2d_count(interp); - install_shen_x2e_dict_x2d_count_x2d__x3e_(interp); - install_shen_x2e__x3c__x2d_dict_x2d_bucket(interp); - install_shen_x2e_dict_x2d_bucket_x2d__x3e_(interp); - install_shen_x2e_dict_x2d_update_x2d_count(interp); - install_shen_x2e_dict_x2d__x3e_(interp); - install_shen_x2e__x3c__x2d_dict(interp); - install_shen_x2e_dict_x2d_rm(interp); - install_shen_x2e_dict_x2d_fold(interp); - install_shen_x2e_dict_x2d_fold_x2d_h(interp); - install_shen_x2e_bucket_x2d_fold(interp); - install_shen_x2e_dict_x2d_keys(interp); - install_shen_x2e_dict_x2d_values(interp); -} diff --git a/crates/shen-rust/src/aot/kernel/init.rs b/crates/shen-rust/src/aot/kernel/init.rs deleted file mode 100644 index a5329c3..0000000 --- a/crates/shen-rust/src/aot/kernel/init.rs +++ /dev/null @@ -1,2890 +0,0 @@ -//! Auto-generated by `klcompile` from kernel/klambda/init.kl. -//! -//! DO NOT EDIT. Re-run klcompile to regenerate. - -#![allow( - unused_variables, - unused_braces, - unused_imports, - clippy::let_and_return, - clippy::needless_question_mark, - clippy::redundant_clone, - clippy::needless_late_init, - clippy::len_zero, - clippy::needless_borrow, - clippy::approx_constant, - clippy::redundant_closure_call, - non_snake_case -)] - -use crate::aot::runtime as rt; -use crate::error::{ShenError, ShenResult}; -use crate::interp::eval::Interp; -use crate::value::Value; -use std::rc::Rc; - -/// AOT-compiled from KL `(defun shen.initialise-environment ...)` -pub fn aot_shen_x2e_initialise_x2d_environment( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "shen.initialise-environment: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - { - let _ = { - let __t0 = Value::sym(interp.intern("shen.*history*")); - let __t1 = Value::nil(); - rt::apply_direct(interp, "set", &[__t0, __t1])? - }; - { - let _ = { - let __t2 = Value::sym(interp.intern("shen.*tc*")); - let __t3 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t2, __t3])? - }; - { - let _ = { - let __t4 = Value::sym(interp.intern("*property-vector*")); - let __t6 = { - let __t5 = Value::int(20000i64); - rt::apply_direct(interp, "shen.dict", &[__t5])? - }; - rt::apply_direct(interp, "set", &[__t4, __t6])? - }; - { - let _ = { - let __t7 = Value::sym(interp.intern("*macros*")); - let __t13 = { - let __t11 = { - let __t8 = Value::sym(interp.intern("shen.macros")); - let __t10 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_X = args[0].clone(); - Ok({ - let __t9 = v_X.clone(); - rt::apply_direct( - interp, - "shen.macros", - &[__t9], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t8, &__t10) - }; - let __t12 = Value::nil(); - rt::cons(&__t11, &__t12) - }; - rt::apply_direct(interp, "set", &[__t7, __t13])? - }; - { - let _ = { - let __t14 = Value::sym(interp.intern("shen.*gensym*")); - let __t15 = Value::int(0i64); - rt::apply_direct(interp, "set", &[__t14, __t15])? - }; - { - let _ = { - let __t16 = Value::sym(interp.intern("shen.*tracking*")); - let __t17 = Value::nil(); - rt::apply_direct(interp, "set", &[__t16, __t17])? - }; - { - let _ = { - let __t18 = Value::sym(interp.intern("shen.*profiled*")); - let __t19 = Value::nil(); - rt::apply_direct(interp, "set", &[__t18, __t19])? - }; - { - let _ = { - let __t20 = Value::sym(interp.intern("shen.*special*")); - let __t43 = { - let __t21 = Value::sym(interp.intern("@p")); - let __t42 = { - let __t22 = Value::sym(interp.intern("@s")); - let __t41 = { - let __t23 = Value::sym(interp.intern("@v")); - let __t40 = { - let __t24 = - Value::sym(interp.intern("cons")); - let __t39 = { - let __t25 = Value::sym( - interp.intern("lambda"), - ); - let __t38 = { - let __t26 = Value::sym( - interp.intern("let"), - ); - let __t37 = { - let __t27 = Value::sym( - interp.intern("where"), - ); - let __t36 = { - let __t28 = Value::sym( - interp - .intern("set"), - ); - let __t35 = { - let __t29 = - Value::sym( - interp - .intern( - "open", - ), - ); - let __t34 = { - let __t30 = Value::sym(interp.intern("input+")); - let __t33 = { - let __t31 = Value::sym(interp.intern("type")); - let __t32 = Value::nil(); - rt::cons( - &__t31, - &__t32, - ) - }; - rt::cons( - &__t30, - &__t33, - ) - }; - rt::cons( - &__t29, &__t34, - ) - }; - rt::cons(&__t28, &__t35) - }; - rt::cons(&__t27, &__t36) - }; - rt::cons(&__t26, &__t37) - }; - rt::cons(&__t25, &__t38) - }; - rt::cons(&__t24, &__t39) - }; - rt::cons(&__t23, &__t40) - }; - rt::cons(&__t22, &__t41) - }; - rt::cons(&__t21, &__t42) - }; - rt::apply_direct(interp, "set", &[__t20, __t43])? - }; - { - let _ = { - let __t44 = Value::sym( - interp.intern("shen.*extraspecial*"), - ); - let __t45 = Value::nil(); - rt::apply_direct(interp, "set", &[__t44, __t45])? - }; - { - let _ = { - let __t46 = - Value::sym(interp.intern("shen.*spy*")); - let __t47 = Value::bool(false); - rt::apply_direct( - interp, - "set", - &[__t46, __t47], - )? - }; - { - let _ = { - let __t48 = Value::sym( - interp.intern("shen.*datatypes*"), - ); - let __t49 = Value::nil(); - rt::apply_direct( - interp, - "set", - &[__t48, __t49], - )? - }; - { - let _ = { - let __t50 = Value::sym( - interp - .intern("shen.*alldatatypes*"), - ); - let __t51 = Value::nil(); - rt::apply_direct( - interp, - "set", - &[__t50, __t51], - )? - }; - { - let _ = { - let __t52 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); - let __t53 = Value::bool(true); - rt::apply_direct( - interp, - "set", - &[__t52, __t53], - )? - }; - { - let _ = { - let __t54 = - Value::sym(interp.intern( - "shen.*package*", - )); - let __t55 = Value::sym( - interp.intern("null"), - ); - rt::apply_direct( - interp, - "set", - &[__t54, __t55], - )? - }; - { - let _ = { - let __t56 = Value::sym( - interp.intern( - "shen.*synonyms*", - ), - ); - let __t57 = Value::nil(); - rt::apply_direct( - interp, - "set", - &[__t56, __t57], - )? - }; - { - let _ = { - let __t58 = Value::sym( - interp.intern( - "shen.*system*", - ), - ); - let __t59 = - Value::nil(); - rt::apply_direct( - interp, - "set", - &[__t58, __t59], - )? - }; - { - let _ = { - let __t60 = Value::sym(interp.intern("shen.*occurs*")); - let __t61 = - Value::bool( - true, - ); - rt::apply_direct( - interp, - "set", - &[__t60, __t61], - )? - }; - { - let _ = { - let __t62 = Value::sym(interp.intern("shen.*factorise?*")); - let __t63 = - Value::bool( - false, - ); - rt::apply_direct(interp, "set", &[__t62, __t63])? - }; - { - let _ = { - let __t64 = Value::sym(interp.intern("shen.*maxinferences*")); - let __t65 = Value::int(1000000i64); - rt::apply_direct(interp, "set", &[__t64, __t65])? - }; - { - let _ = { - let __t66 = Value::sym(interp.intern("*maximum-print-sequence-size*")); - let __t67 = Value::int(20i64); - rt::apply_direct(interp, "set", &[__t66, __t67])? - }; - { - let _ = { - let __t68 = Value::sym(interp.intern("shen.*call*")); - let __t69 = Value::int(0i64); - rt::apply_direct(interp, "set", &[__t68, __t69])? - }; - { - let _ = { let __t70 = Value::sym(interp.intern("shen.*infs*")); let __t71 = Value::int(0i64); rt::apply_direct(interp, "set", &[__t70, __t71])? }; - { - let _ = { let __t72 = Value::sym(interp.intern("*hush*")); let __t73 = Value::bool(false); rt::apply_direct(interp, "set", &[__t72, __t73])? }; - { - let _ = { let __t74 = Value::sym(interp.intern("shen.*optimise*")); let __t75 = Value::bool(false); rt::apply_direct(interp, "set", &[__t74, __t75])? }; - { - let _ = { let __t76 = Value::sym(interp.intern("*version*")); let __t77 = Value::str("41.2"); rt::apply_direct(interp, "set", &[__t76, __t77])? }; - { - let _ = { let __t78 = Value::sym(interp.intern("shen.*names*")); let __t79 = Value::nil(); rt::apply_direct(interp, "set", &[__t78, __t79])? }; - { - let _ = { let __t80 = Value::sym(interp.intern("shen.*step*")); let __t81 = Value::bool(false); rt::apply_direct(interp, "set", &[__t80, __t81])? }; - { - let _ = { let __t82 = Value::sym(interp.intern("shen.*it*")); let __t83 = Value::str(""); rt::apply_direct(interp, "set", &[__t82, __t83])? }; - { - let _ = { let __t84 = Value::sym(interp.intern("shen.*residue*")); let __t85 = Value::nil(); rt::apply_direct(interp, "set", &[__t84, __t85])? }; - { - let _ = { let __t86 = Value::sym(interp.intern("*absolute*")); let __t87 = Value::nil(); rt::apply_direct(interp, "set", &[__t86, __t87])? }; - { - let _ = { let __t88 = Value::sym(interp.intern("shen.*prolog-memory*")); let __t89 = Value::int(1000i64); rt::apply_direct(interp, "set", &[__t88, __t89])? }; - { - let _ = { let __t90 = Value::sym(interp.intern("shen.*loading?*")); let __t91 = Value::bool(false); rt::apply_direct(interp, "set", &[__t90, __t91])? }; - { - let _ = { let __t92 = Value::sym(interp.intern("shen.*userdefs*")); let __t93 = Value::nil(); rt::apply_direct(interp, "set", &[__t92, __t93])? }; - { - let _ = { let __t94 = Value::sym(interp.intern("shen.*demodulation-function*")); let __t95 = { rt::make_aot_closure("", 1, move |interp, args| { let v_X = args[0].clone(); Ok(v_X.clone()) }, Vec::new(), interp) }; rt::apply_direct(interp, "set", &[__t94, __t95])? }; - { - let _ = { let __t96 = Value::sym(interp.intern("shen.*custom-pattern-compiler*")); let __t97 = Value::bool(false); rt::apply_direct(interp, "set", &[__t96, __t97])? }; - { - let _ = { let __t98 = Value::sym(interp.intern("shen.*custom-pattern-reducer*")); let __t99 = Value::bool(false); rt::apply_direct(interp, "set", &[__t98, __t99])? }; - { - let _ = { let __t104 = { let __t101 = { let __t100 = Value::sym(interp.intern("*home-directory*")); rt::apply_direct(interp, "bound?", &[__t100])? }; rt::apply_direct(interp, "not", &[__t101])? }; if rt::is_truthy(interp, &__t104)? { { let __t102 = Value::sym(interp.intern("*home-directory*")); let __t103 = Value::str(""); rt::apply_direct(interp, "set", &[__t102, __t103])? } } else { Value::sym(interp.intern("shen.skip")) } }; - { - let _ = { let __t110 = { let __t106 = { let __t105 = Value::sym(interp.intern("*sterror*")); rt::apply_direct(interp, "bound?", &[__t105])? }; rt::apply_direct(interp, "not", &[__t106])? }; if rt::is_truthy(interp, &__t110)? { { let __t107 = Value::sym(interp.intern("*sterror*")); let __t109 = { let __t108 = Value::sym(interp.intern("*stoutput*")); rt::apply_direct(interp, "value", &[__t108])? }; rt::apply_direct(interp, "set", &[__t107, __t109])? } } else { Value::sym(interp.intern("shen.skip")) } }; - { - let _ = { let __t111 = Value::int(10000i64); rt::apply_direct(interp, "prolog-memory", &[__t111])? }; - { - let _ = { let __t112 = Value::sym(interp.intern("shen.*loading?*")); let __t113 = Value::bool(false); rt::apply_direct(interp, "set", &[__t112, __t113])? }; - { - let _ = { let __t922 = { let __t114 = Value::sym(interp.intern("abort")); let __t921 = { let __t115 = Value::int(0i64); let __t920 = { let __t116 = Value::sym(interp.intern("absolute")); let __t919 = { let __t117 = Value::int(1i64); let __t918 = { let __t118 = Value::sym(interp.intern("absvector?")); let __t917 = { let __t119 = Value::int(1i64); let __t916 = { let __t120 = Value::sym(interp.intern("absvector")); let __t915 = { let __t121 = Value::int(1i64); let __t914 = { let __t122 = Value::sym(interp.intern("address->")); let __t913 = { let __t123 = Value::int(3i64); let __t912 = { let __t124 = Value::sym(interp.intern("adjoin")); let __t911 = { let __t125 = Value::int(2i64); let __t910 = { let __t126 = Value::sym(interp.intern("and")); let __t909 = { let __t127 = Value::int(2i64); let __t908 = { let __t128 = Value::sym(interp.intern("append")); let __t907 = { let __t129 = Value::int(2i64); let __t906 = { let __t130 = Value::sym(interp.intern("arity")); let __t905 = { let __t131 = Value::int(1i64); let __t904 = { let __t132 = Value::sym(interp.intern("assoc")); let __t903 = { let __t133 = Value::int(2i64); let __t902 = { let __t134 = Value::sym(interp.intern("atom?")); let __t901 = { let __t135 = Value::int(1i64); let __t900 = { let __t136 = Value::sym(interp.intern("boolean?")); let __t899 = { let __t137 = Value::int(1i64); let __t898 = { let __t138 = Value::sym(interp.intern("bootstrap")); let __t897 = { let __t139 = Value::int(1i64); let __t896 = { let __t140 = Value::sym(interp.intern("bound?")); let __t895 = { let __t141 = Value::int(1i64); let __t894 = { let __t142 = Value::sym(interp.intern("bind")); let __t893 = { let __t143 = Value::int(6i64); let __t892 = { let __t144 = Value::sym(interp.intern("call")); let __t891 = { let __t145 = Value::int(5i64); let __t890 = { let __t146 = Value::sym(interp.intern("cd")); let __t889 = { let __t147 = Value::int(1i64); let __t888 = { let __t148 = Value::sym(interp.intern("compile")); let __t887 = { let __t149 = Value::int(2i64); let __t886 = { let __t150 = Value::sym(interp.intern("concat")); let __t885 = { let __t151 = Value::int(2i64); let __t884 = { let __t152 = Value::sym(interp.intern("cons")); let __t883 = { let __t153 = Value::int(2i64); let __t882 = { let __t154 = Value::sym(interp.intern("cons?")); let __t881 = { let __t155 = Value::int(1i64); let __t880 = { let __t156 = Value::sym(interp.intern("cn")); let __t879 = { let __t157 = Value::int(2i64); let __t878 = { let __t158 = Value::sym(interp.intern("close")); let __t877 = { let __t159 = Value::int(1i64); let __t876 = { let __t160 = Value::sym(interp.intern("datatypes")); let __t875 = { let __t161 = Value::int(0i64); let __t874 = { let __t162 = Value::sym(interp.intern("declare")); let __t873 = { let __t163 = Value::int(2i64); let __t872 = { let __t164 = Value::sym(interp.intern("destroy")); let __t871 = { let __t165 = Value::int(1i64); let __t870 = { let __t166 = Value::sym(interp.intern("difference")); let __t869 = { let __t167 = Value::int(2i64); let __t868 = { let __t168 = Value::sym(interp.intern("do")); let __t867 = { let __t169 = Value::int(2i64); let __t866 = { let __t170 = Value::sym(interp.intern("element?")); let __t865 = { let __t171 = Value::int(2i64); let __t864 = { let __t172 = Value::sym(interp.intern("empty?")); let __t863 = { let __t173 = Value::int(1i64); let __t862 = { let __t174 = Value::sym(interp.intern("enable-type-theory")); let __t861 = { let __t175 = Value::int(1i64); let __t860 = { let __t176 = Value::sym(interp.intern("external")); let __t859 = { let __t177 = Value::int(1i64); let __t858 = { let __t178 = Value::sym(interp.intern("error-to-string")); let __t857 = { let __t179 = Value::int(1i64); let __t856 = { let __t180 = Value::sym(interp.intern("eval")); let __t855 = { let __t181 = Value::int(1i64); let __t854 = { let __t182 = Value::sym(interp.intern("eval-kl")); let __t853 = { let __t183 = Value::int(1i64); let __t852 = { let __t184 = Value::sym(interp.intern("explode")); let __t851 = { let __t185 = Value::int(1i64); let __t850 = { let __t186 = Value::sym(interp.intern("external")); let __t849 = { let __t187 = Value::int(1i64); let __t848 = { let __t188 = Value::sym(interp.intern("factorise")); let __t847 = { let __t189 = Value::int(1i64); let __t846 = { let __t190 = Value::sym(interp.intern("factorise?")); let __t845 = { let __t191 = Value::int(0i64); let __t844 = { let __t192 = Value::sym(interp.intern("fail-if")); let __t843 = { let __t193 = Value::int(2i64); let __t842 = { let __t194 = Value::sym(interp.intern("fail")); let __t841 = { let __t195 = Value::int(0i64); let __t840 = { let __t196 = Value::sym(interp.intern("fix")); let __t839 = { let __t197 = Value::int(2i64); let __t838 = { let __t198 = Value::sym(interp.intern("findall")); let __t837 = { let __t199 = Value::int(7i64); let __t836 = { let __t200 = Value::sym(interp.intern("foreign")); let __t835 = { let __t201 = Value::int(1i64); let __t834 = { let __t202 = Value::sym(interp.intern("fork")); let __t833 = { let __t203 = Value::int(5i64); let __t832 = { let __t204 = Value::sym(interp.intern("freeze")); let __t831 = { let __t205 = Value::int(1i64); let __t830 = { let __t206 = Value::sym(interp.intern("fresh")); let __t829 = { let __t207 = Value::int(0i64); let __t828 = { let __t208 = Value::sym(interp.intern("fst")); let __t827 = { let __t209 = Value::int(1i64); let __t826 = { let __t210 = Value::sym(interp.intern("fn")); let __t825 = { let __t211 = Value::int(1i64); let __t824 = { let __t212 = Value::sym(interp.intern("function")); let __t823 = { let __t213 = Value::int(1i64); let __t822 = { let __t214 = Value::sym(interp.intern("gensym")); let __t821 = { let __t215 = Value::int(1i64); let __t820 = { let __t216 = Value::sym(interp.intern("get")); let __t819 = { let __t217 = Value::int(3i64); let __t818 = { let __t218 = Value::sym(interp.intern("get-time")); let __t817 = { let __t219 = Value::int(1i64); let __t816 = { let __t220 = Value::sym(interp.intern("address->")); let __t815 = { let __t221 = Value::int(3i64); let __t814 = { let __t222 = Value::sym(interp.intern("<-address")); let __t813 = { let __t223 = Value::int(2i64); let __t812 = { let __t224 = Value::sym(interp.intern("<-vector")); let __t811 = { let __t225 = Value::int(2i64); let __t810 = { let __t226 = Value::sym(interp.intern(">")); let __t809 = { let __t227 = Value::int(2i64); let __t808 = { let __t228 = Value::sym(interp.intern(">=")); let __t807 = { let __t229 = Value::int(2i64); let __t806 = { let __t230 = Value::sym(interp.intern("=")); let __t805 = { let __t231 = Value::int(2i64); let __t804 = { let __t232 = Value::sym(interp.intern("hash")); let __t803 = { let __t233 = Value::int(2i64); let __t802 = { let __t234 = Value::sym(interp.intern("hd")); let __t801 = { let __t235 = Value::int(1i64); let __t800 = { let __t236 = Value::sym(interp.intern("hdv")); let __t799 = { let __t237 = Value::int(1i64); let __t798 = { let __t238 = Value::sym(interp.intern("hdstr")); let __t797 = { let __t239 = Value::int(1i64); let __t796 = { let __t240 = Value::sym(interp.intern("head")); let __t795 = { let __t241 = Value::int(1i64); let __t794 = { let __t242 = Value::sym(interp.intern("hush?")); let __t793 = { let __t243 = Value::int(0i64); let __t792 = { let __t244 = Value::sym(interp.intern("hush")); let __t791 = { let __t245 = Value::int(1i64); let __t790 = { let __t246 = Value::sym(interp.intern("if")); let __t789 = { let __t247 = Value::int(3i64); let __t788 = { let __t248 = Value::sym(interp.intern("include")); let __t787 = { let __t249 = Value::int(1i64); let __t786 = { let __t250 = Value::sym(interp.intern("shen.included")); let __t785 = { let __t251 = Value::int(0i64); let __t784 = { let __t252 = Value::sym(interp.intern("in-package")); let __t783 = { let __t253 = Value::int(1i64); let __t782 = { let __t254 = Value::sym(interp.intern("integer?")); let __t781 = { let __t255 = Value::int(1i64); let __t780 = { let __t256 = Value::sym(interp.intern("internal")); let __t779 = { let __t257 = Value::int(1i64); let __t778 = { let __t258 = Value::sym(interp.intern("intern")); let __t777 = { let __t259 = Value::int(1i64); let __t776 = { let __t260 = Value::sym(interp.intern("inferences")); let __t775 = { let __t261 = Value::int(0i64); let __t774 = { let __t262 = Value::sym(interp.intern("input")); let __t773 = { let __t263 = Value::int(1i64); let __t772 = { let __t264 = Value::sym(interp.intern("input+")); let __t771 = { let __t265 = Value::int(2i64); let __t770 = { let __t266 = Value::sym(interp.intern("implementation")); let __t769 = { let __t267 = Value::int(0i64); let __t768 = { let __t268 = Value::sym(interp.intern("include-all-but")); let __t767 = { let __t269 = Value::int(1i64); let __t766 = { let __t270 = Value::sym(interp.intern("intersection")); let __t765 = { let __t271 = Value::int(2i64); let __t764 = { let __t272 = Value::sym(interp.intern("internal")); let __t763 = { let __t273 = Value::int(1i64); let __t762 = { let __t274 = Value::sym(interp.intern("it")); let __t761 = { let __t275 = Value::int(0i64); let __t760 = { let __t276 = Value::sym(interp.intern("is")); let __t759 = { let __t277 = Value::int(6i64); let __t758 = { let __t278 = Value::sym(interp.intern("is!")); let __t757 = { let __t279 = Value::int(6i64); let __t756 = { let __t280 = Value::sym(interp.intern("language")); let __t755 = { let __t281 = Value::int(0i64); let __t754 = { let __t282 = Value::sym(interp.intern("length")); let __t753 = { let __t283 = Value::int(1i64); let __t752 = { let __t284 = Value::sym(interp.intern("limit")); let __t751 = { let __t285 = Value::int(1i64); let __t750 = { let __t286 = Value::sym(interp.intern("lineread")); let __t749 = { let __t287 = Value::int(1i64); let __t748 = { let __t288 = Value::sym(interp.intern("list")); let __t747 = { let __t289 = Value::int(1i64); let __t746 = { let __t290 = Value::sym(interp.intern("load")); let __t745 = { let __t291 = Value::int(1i64); let __t744 = { let __t292 = Value::sym(interp.intern("<")); let __t743 = { let __t293 = Value::int(2i64); let __t742 = { let __t294 = Value::sym(interp.intern("<=")); let __t741 = { let __t295 = Value::int(2i64); let __t740 = { let __t296 = Value::sym(interp.intern("vector")); let __t739 = { let __t297 = Value::int(1i64); let __t738 = { let __t298 = Value::sym(interp.intern("macroexpand")); let __t737 = { let __t299 = Value::int(1i64); let __t736 = { let __t300 = Value::sym(interp.intern("map")); let __t735 = { let __t301 = Value::int(2i64); let __t734 = { let __t302 = Value::sym(interp.intern("mapcan")); let __t733 = { let __t303 = Value::int(2i64); let __t732 = { let __t304 = Value::sym(interp.intern("maxinferences")); let __t731 = { let __t305 = Value::int(1i64); let __t730 = { let __t306 = Value::sym(interp.intern("nl")); let __t729 = { let __t307 = Value::int(1i64); let __t728 = { let __t308 = Value::sym(interp.intern("not")); let __t727 = { let __t309 = Value::int(1i64); let __t726 = { let __t310 = Value::sym(interp.intern("nth")); let __t725 = { let __t311 = Value::int(2i64); let __t724 = { let __t312 = Value::sym(interp.intern("n->string")); let __t723 = { let __t313 = Value::int(1i64); let __t722 = { let __t314 = Value::sym(interp.intern("number?")); let __t721 = { let __t315 = Value::int(1i64); let __t720 = { let __t316 = Value::sym(interp.intern("occurs-check")); let __t719 = { let __t317 = Value::int(1i64); let __t718 = { let __t318 = Value::sym(interp.intern("occurrences")); let __t717 = { let __t319 = Value::int(2i64); let __t716 = { let __t320 = Value::sym(interp.intern("occurs?")); let __t715 = { let __t321 = Value::int(0i64); let __t714 = { let __t322 = Value::sym(interp.intern("occurs-check")); let __t713 = { let __t323 = Value::int(1i64); let __t712 = { let __t324 = Value::sym(interp.intern("open")); let __t711 = { let __t325 = Value::int(2i64); let __t710 = { let __t326 = Value::sym(interp.intern("optimise")); let __t709 = { let __t327 = Value::int(1i64); let __t708 = { let __t328 = Value::sym(interp.intern("optimise?")); let __t707 = { let __t329 = Value::int(0i64); let __t706 = { let __t330 = Value::sym(interp.intern("or")); let __t705 = { let __t331 = Value::int(2i64); let __t704 = { let __t332 = Value::sym(interp.intern("os")); let __t703 = { let __t333 = Value::int(0i64); let __t702 = { let __t334 = Value::sym(interp.intern("package")); let __t701 = { let __t335 = Value::int(3i64); let __t700 = { let __t336 = Value::sym(interp.intern("package?")); let __t699 = { let __t337 = Value::int(1i64); let __t698 = { let __t338 = Value::sym(interp.intern("port")); let __t697 = { let __t339 = Value::int(0i64); let __t696 = { let __t340 = Value::sym(interp.intern("porters")); let __t695 = { let __t341 = Value::int(0i64); let __t694 = { let __t342 = Value::sym(interp.intern("pos")); let __t693 = { let __t343 = Value::int(2i64); let __t692 = { let __t344 = Value::sym(interp.intern("preclude-all-but")); let __t691 = { let __t345 = Value::int(1i64); let __t690 = { let __t346 = Value::sym(interp.intern("print")); let __t689 = { let __t347 = Value::int(1i64); let __t688 = { let __t348 = Value::sym(interp.intern("profile")); let __t687 = { let __t349 = Value::int(1i64); let __t686 = { let __t350 = Value::sym(interp.intern("shen.print-prolog-vector")); let __t685 = { let __t351 = Value::int(1i64); let __t684 = { let __t352 = Value::sym(interp.intern("shen.print-freshterm")); let __t683 = { let __t353 = Value::int(1i64); let __t682 = { let __t354 = Value::sym(interp.intern("shen.printF")); let __t681 = { let __t355 = Value::int(1i64); let __t680 = { let __t356 = Value::sym(interp.intern("prolog-memory")); let __t679 = { let __t357 = Value::int(1i64); let __t678 = { let __t358 = Value::sym(interp.intern("profile-results")); let __t677 = { let __t359 = Value::int(1i64); let __t676 = { let __t360 = Value::sym(interp.intern("pr")); let __t675 = { let __t361 = Value::int(2i64); let __t674 = { let __t362 = Value::sym(interp.intern("ps")); let __t673 = { let __t363 = Value::int(1i64); let __t672 = { let __t364 = Value::sym(interp.intern("preclude")); let __t671 = { let __t365 = Value::int(1i64); let __t670 = { let __t366 = Value::sym(interp.intern("preclude-all-but")); let __t669 = { let __t367 = Value::int(1i64); let __t668 = { let __t368 = Value::sym(interp.intern("protect")); let __t667 = { let __t369 = Value::int(1i64); let __t666 = { let __t370 = Value::sym(interp.intern("put")); let __t665 = { let __t371 = Value::int(4i64); let __t664 = { let __t372 = Value::sym(interp.intern("read-file-as-string")); let __t663 = { let __t373 = Value::int(1i64); let __t662 = { let __t374 = Value::sym(interp.intern("read-file-as-bytelist")); let __t661 = { let __t375 = Value::int(1i64); let __t660 = { let __t376 = Value::sym(interp.intern("read-file")); let __t659 = { let __t377 = Value::int(1i64); let __t658 = { let __t378 = Value::sym(interp.intern("read")); let __t657 = { let __t379 = Value::int(1i64); let __t656 = { let __t380 = Value::sym(interp.intern("read-byte")); let __t655 = { let __t381 = Value::int(1i64); let __t654 = { let __t382 = Value::sym(interp.intern("read-from-string")); let __t653 = { let __t383 = Value::int(1i64); let __t652 = { let __t384 = Value::sym(interp.intern("read-from-string-unprocessed")); let __t651 = { let __t385 = Value::int(1i64); let __t650 = { let __t386 = Value::sym(interp.intern("shen.read-unit-string")); let __t649 = { let __t387 = Value::int(1i64); let __t648 = { let __t388 = Value::sym(interp.intern("receive")); let __t647 = { let __t389 = Value::int(1i64); let __t646 = { let __t390 = Value::sym(interp.intern("release")); let __t645 = { let __t391 = Value::int(0i64); let __t644 = { let __t392 = Value::sym(interp.intern("remove")); let __t643 = { let __t393 = Value::int(2i64); let __t642 = { let __t394 = Value::sym(interp.intern("reverse")); let __t641 = { let __t395 = Value::int(1i64); let __t640 = { let __t396 = Value::sym(interp.intern("set")); let __t639 = { let __t397 = Value::int(2i64); let __t638 = { let __t398 = Value::sym(interp.intern("simple-error")); let __t637 = { let __t399 = Value::int(1i64); let __t636 = { let __t400 = Value::sym(interp.intern("snd")); let __t635 = { let __t401 = Value::int(1i64); let __t634 = { let __t402 = Value::sym(interp.intern("specialise")); let __t633 = { let __t403 = Value::int(2i64); let __t632 = { let __t404 = Value::sym(interp.intern("spy")); let __t631 = { let __t405 = Value::int(1i64); let __t630 = { let __t406 = Value::sym(interp.intern("shen.spy?")); let __t629 = { let __t407 = Value::int(0i64); let __t628 = { let __t408 = Value::sym(interp.intern("step")); let __t627 = { let __t409 = Value::int(1i64); let __t626 = { let __t410 = Value::sym(interp.intern("shen.step?")); let __t625 = { let __t411 = Value::int(0i64); let __t624 = { let __t412 = Value::sym(interp.intern("stinput")); let __t623 = { let __t413 = Value::int(0i64); let __t622 = { let __t414 = Value::sym(interp.intern("stoutput")); let __t621 = { let __t415 = Value::int(0i64); let __t620 = { let __t416 = Value::sym(interp.intern("str")); let __t619 = { let __t417 = Value::int(1i64); let __t618 = { let __t418 = Value::sym(interp.intern("string->n")); let __t617 = { let __t419 = Value::int(1i64); let __t616 = { let __t420 = Value::sym(interp.intern("string->symbol")); let __t615 = { let __t421 = Value::int(1i64); let __t614 = { let __t422 = Value::sym(interp.intern("string?")); let __t613 = { let __t423 = Value::int(1i64); let __t612 = { let __t424 = Value::sym(interp.intern("subst")); let __t611 = { let __t425 = Value::int(3i64); let __t610 = { let __t426 = Value::sym(interp.intern("sum")); let __t609 = { let __t427 = Value::int(1i64); let __t608 = { let __t428 = Value::sym(interp.intern("symbol?")); let __t607 = { let __t429 = Value::int(1i64); let __t606 = { let __t430 = Value::sym(interp.intern("systemf")); let __t605 = { let __t431 = Value::int(1i64); let __t604 = { let __t432 = Value::sym(interp.intern("tail")); let __t603 = { let __t433 = Value::int(1i64); let __t602 = { let __t434 = Value::sym(interp.intern("tl")); let __t601 = { let __t435 = Value::int(1i64); let __t600 = { let __t436 = Value::sym(interp.intern("tc")); let __t599 = { let __t437 = Value::int(1i64); let __t598 = { let __t438 = Value::sym(interp.intern("tc?")); let __t597 = { let __t439 = Value::int(0i64); let __t596 = { let __t440 = Value::sym(interp.intern("thaw")); let __t595 = { let __t441 = Value::int(1i64); let __t594 = { let __t442 = Value::sym(interp.intern("tlstr")); let __t593 = { let __t443 = Value::int(1i64); let __t592 = { let __t444 = Value::sym(interp.intern("track")); let __t591 = { let __t445 = Value::int(1i64); let __t590 = { let __t446 = Value::sym(interp.intern("tracked")); let __t589 = { let __t447 = Value::int(0i64); let __t588 = { let __t448 = Value::sym(interp.intern("trap-error")); let __t587 = { let __t449 = Value::int(2i64); let __t586 = { let __t450 = Value::sym(interp.intern("tuple?")); let __t585 = { let __t451 = Value::int(1i64); let __t584 = { let __t452 = Value::sym(interp.intern("type")); let __t583 = { let __t453 = Value::int(2i64); let __t582 = { let __t454 = Value::sym(interp.intern("return")); let __t581 = { let __t455 = Value::int(5i64); let __t580 = { let __t456 = Value::sym(interp.intern("unabsolute")); let __t579 = { let __t457 = Value::int(1i64); let __t578 = { let __t458 = Value::sym(interp.intern("undefmacro")); let __t577 = { let __t459 = Value::int(1i64); let __t576 = { let __t460 = Value::sym(interp.intern("unput")); let __t575 = { let __t461 = Value::int(3i64); let __t574 = { let __t462 = Value::sym(interp.intern("unprofile")); let __t573 = { let __t463 = Value::int(1i64); let __t572 = { let __t464 = Value::sym(interp.intern("union")); let __t571 = { let __t465 = Value::int(2i64); let __t570 = { let __t466 = Value::sym(interp.intern("untrack")); let __t569 = { let __t467 = Value::int(1i64); let __t568 = { let __t468 = Value::sym(interp.intern("undefmacro")); let __t567 = { let __t469 = Value::int(1i64); let __t566 = { let __t470 = Value::sym(interp.intern("update-lambda-table")); let __t565 = { let __t471 = Value::int(2i64); let __t564 = { let __t472 = Value::sym(interp.intern("userdefs")); let __t563 = { let __t473 = Value::int(0i64); let __t562 = { let __t474 = Value::sym(interp.intern("vector")); let __t561 = { let __t475 = Value::int(1i64); let __t560 = { let __t476 = Value::sym(interp.intern("vector?")); let __t559 = { let __t477 = Value::int(1i64); let __t558 = { let __t478 = Value::sym(interp.intern("vector->")); let __t557 = { let __t479 = Value::int(3i64); let __t556 = { let __t480 = Value::sym(interp.intern("value")); let __t555 = { let __t481 = Value::int(1i64); let __t554 = { let __t482 = Value::sym(interp.intern("variable?")); let __t553 = { let __t483 = Value::int(1i64); let __t552 = { let __t484 = Value::sym(interp.intern("var?")); let __t551 = { let __t485 = Value::int(5i64); let __t550 = { let __t486 = Value::sym(interp.intern("version")); let __t549 = { let __t487 = Value::int(0i64); let __t548 = { let __t488 = Value::sym(interp.intern("when")); let __t547 = { let __t489 = Value::int(5i64); let __t546 = { let __t490 = Value::sym(interp.intern("write-byte")); let __t545 = { let __t491 = Value::int(2i64); let __t544 = { let __t492 = Value::sym(interp.intern("write-to-file")); let __t543 = { let __t493 = Value::int(2i64); let __t542 = { let __t494 = Value::sym(interp.intern("y-or-n?")); let __t541 = { let __t495 = Value::int(1i64); let __t540 = { let __t496 = Value::sym(interp.intern("+")); let __t539 = { let __t497 = Value::int(2i64); let __t538 = { let __t498 = Value::sym(interp.intern("*")); let __t537 = { let __t499 = Value::int(2i64); let __t536 = { let __t500 = Value::sym(interp.intern("/")); let __t535 = { let __t501 = Value::int(2i64); let __t534 = { let __t502 = Value::sym(interp.intern("-")); let __t533 = { let __t503 = Value::int(2i64); let __t532 = { let __t504 = Value::sym(interp.intern("==")); let __t531 = { let __t505 = Value::int(2i64); let __t530 = { let __t506 = Value::sym(interp.intern("")); let __t529 = { let __t507 = Value::int(1i64); let __t528 = { let __t508 = Value::sym(interp.intern("")); let __t527 = { let __t509 = Value::int(1i64); let __t526 = { let __t510 = Value::sym(interp.intern("")); let __t525 = { let __t511 = Value::int(1i64); let __t524 = { let __t512 = Value::sym(interp.intern("@p")); let __t523 = { let __t513 = Value::int(2i64); let __t522 = { let __t514 = Value::sym(interp.intern("@v")); let __t521 = { let __t515 = Value::int(2i64); let __t520 = { let __t516 = Value::sym(interp.intern("@s")); let __t519 = { let __t517 = Value::int(2i64); let __t518 = Value::nil(); rt::cons(&__t517, &__t518) }; rt::cons(&__t516, &__t519) }; rt::cons(&__t515, &__t520) }; rt::cons(&__t514, &__t521) }; rt::cons(&__t513, &__t522) }; rt::cons(&__t512, &__t523) }; rt::cons(&__t511, &__t524) }; rt::cons(&__t510, &__t525) }; rt::cons(&__t509, &__t526) }; rt::cons(&__t508, &__t527) }; rt::cons(&__t507, &__t528) }; rt::cons(&__t506, &__t529) }; rt::cons(&__t505, &__t530) }; rt::cons(&__t504, &__t531) }; rt::cons(&__t503, &__t532) }; rt::cons(&__t502, &__t533) }; rt::cons(&__t501, &__t534) }; rt::cons(&__t500, &__t535) }; rt::cons(&__t499, &__t536) }; rt::cons(&__t498, &__t537) }; rt::cons(&__t497, &__t538) }; rt::cons(&__t496, &__t539) }; rt::cons(&__t495, &__t540) }; rt::cons(&__t494, &__t541) }; rt::cons(&__t493, &__t542) }; rt::cons(&__t492, &__t543) }; rt::cons(&__t491, &__t544) }; rt::cons(&__t490, &__t545) }; rt::cons(&__t489, &__t546) }; rt::cons(&__t488, &__t547) }; rt::cons(&__t487, &__t548) }; rt::cons(&__t486, &__t549) }; rt::cons(&__t485, &__t550) }; rt::cons(&__t484, &__t551) }; rt::cons(&__t483, &__t552) }; rt::cons(&__t482, &__t553) }; rt::cons(&__t481, &__t554) }; rt::cons(&__t480, &__t555) }; rt::cons(&__t479, &__t556) }; rt::cons(&__t478, &__t557) }; rt::cons(&__t477, &__t558) }; rt::cons(&__t476, &__t559) }; rt::cons(&__t475, &__t560) }; rt::cons(&__t474, &__t561) }; rt::cons(&__t473, &__t562) }; rt::cons(&__t472, &__t563) }; rt::cons(&__t471, &__t564) }; rt::cons(&__t470, &__t565) }; rt::cons(&__t469, &__t566) }; rt::cons(&__t468, &__t567) }; rt::cons(&__t467, &__t568) }; rt::cons(&__t466, &__t569) }; rt::cons(&__t465, &__t570) }; rt::cons(&__t464, &__t571) }; rt::cons(&__t463, &__t572) }; rt::cons(&__t462, &__t573) }; rt::cons(&__t461, &__t574) }; rt::cons(&__t460, &__t575) }; rt::cons(&__t459, &__t576) }; rt::cons(&__t458, &__t577) }; rt::cons(&__t457, &__t578) }; rt::cons(&__t456, &__t579) }; rt::cons(&__t455, &__t580) }; rt::cons(&__t454, &__t581) }; rt::cons(&__t453, &__t582) }; rt::cons(&__t452, &__t583) }; rt::cons(&__t451, &__t584) }; rt::cons(&__t450, &__t585) }; rt::cons(&__t449, &__t586) }; rt::cons(&__t448, &__t587) }; rt::cons(&__t447, &__t588) }; rt::cons(&__t446, &__t589) }; rt::cons(&__t445, &__t590) }; rt::cons(&__t444, &__t591) }; rt::cons(&__t443, &__t592) }; rt::cons(&__t442, &__t593) }; rt::cons(&__t441, &__t594) }; rt::cons(&__t440, &__t595) }; rt::cons(&__t439, &__t596) }; rt::cons(&__t438, &__t597) }; rt::cons(&__t437, &__t598) }; rt::cons(&__t436, &__t599) }; rt::cons(&__t435, &__t600) }; rt::cons(&__t434, &__t601) }; rt::cons(&__t433, &__t602) }; rt::cons(&__t432, &__t603) }; rt::cons(&__t431, &__t604) }; rt::cons(&__t430, &__t605) }; rt::cons(&__t429, &__t606) }; rt::cons(&__t428, &__t607) }; rt::cons(&__t427, &__t608) }; rt::cons(&__t426, &__t609) }; rt::cons(&__t425, &__t610) }; rt::cons(&__t424, &__t611) }; rt::cons(&__t423, &__t612) }; rt::cons(&__t422, &__t613) }; rt::cons(&__t421, &__t614) }; rt::cons(&__t420, &__t615) }; rt::cons(&__t419, &__t616) }; rt::cons(&__t418, &__t617) }; rt::cons(&__t417, &__t618) }; rt::cons(&__t416, &__t619) }; rt::cons(&__t415, &__t620) }; rt::cons(&__t414, &__t621) }; rt::cons(&__t413, &__t622) }; rt::cons(&__t412, &__t623) }; rt::cons(&__t411, &__t624) }; rt::cons(&__t410, &__t625) }; rt::cons(&__t409, &__t626) }; rt::cons(&__t408, &__t627) }; rt::cons(&__t407, &__t628) }; rt::cons(&__t406, &__t629) }; rt::cons(&__t405, &__t630) }; rt::cons(&__t404, &__t631) }; rt::cons(&__t403, &__t632) }; rt::cons(&__t402, &__t633) }; rt::cons(&__t401, &__t634) }; rt::cons(&__t400, &__t635) }; rt::cons(&__t399, &__t636) }; rt::cons(&__t398, &__t637) }; rt::cons(&__t397, &__t638) }; rt::cons(&__t396, &__t639) }; rt::cons(&__t395, &__t640) }; rt::cons(&__t394, &__t641) }; rt::cons(&__t393, &__t642) }; rt::cons(&__t392, &__t643) }; rt::cons(&__t391, &__t644) }; rt::cons(&__t390, &__t645) }; rt::cons(&__t389, &__t646) }; rt::cons(&__t388, &__t647) }; rt::cons(&__t387, &__t648) }; rt::cons(&__t386, &__t649) }; rt::cons(&__t385, &__t650) }; rt::cons(&__t384, &__t651) }; rt::cons(&__t383, &__t652) }; rt::cons(&__t382, &__t653) }; rt::cons(&__t381, &__t654) }; rt::cons(&__t380, &__t655) }; rt::cons(&__t379, &__t656) }; rt::cons(&__t378, &__t657) }; rt::cons(&__t377, &__t658) }; rt::cons(&__t376, &__t659) }; rt::cons(&__t375, &__t660) }; rt::cons(&__t374, &__t661) }; rt::cons(&__t373, &__t662) }; rt::cons(&__t372, &__t663) }; rt::cons(&__t371, &__t664) }; rt::cons(&__t370, &__t665) }; rt::cons(&__t369, &__t666) }; rt::cons(&__t368, &__t667) }; rt::cons(&__t367, &__t668) }; rt::cons(&__t366, &__t669) }; rt::cons(&__t365, &__t670) }; rt::cons(&__t364, &__t671) }; rt::cons(&__t363, &__t672) }; rt::cons(&__t362, &__t673) }; rt::cons(&__t361, &__t674) }; rt::cons(&__t360, &__t675) }; rt::cons(&__t359, &__t676) }; rt::cons(&__t358, &__t677) }; rt::cons(&__t357, &__t678) }; rt::cons(&__t356, &__t679) }; rt::cons(&__t355, &__t680) }; rt::cons(&__t354, &__t681) }; rt::cons(&__t353, &__t682) }; rt::cons(&__t352, &__t683) }; rt::cons(&__t351, &__t684) }; rt::cons(&__t350, &__t685) }; rt::cons(&__t349, &__t686) }; rt::cons(&__t348, &__t687) }; rt::cons(&__t347, &__t688) }; rt::cons(&__t346, &__t689) }; rt::cons(&__t345, &__t690) }; rt::cons(&__t344, &__t691) }; rt::cons(&__t343, &__t692) }; rt::cons(&__t342, &__t693) }; rt::cons(&__t341, &__t694) }; rt::cons(&__t340, &__t695) }; rt::cons(&__t339, &__t696) }; rt::cons(&__t338, &__t697) }; rt::cons(&__t337, &__t698) }; rt::cons(&__t336, &__t699) }; rt::cons(&__t335, &__t700) }; rt::cons(&__t334, &__t701) }; rt::cons(&__t333, &__t702) }; rt::cons(&__t332, &__t703) }; rt::cons(&__t331, &__t704) }; rt::cons(&__t330, &__t705) }; rt::cons(&__t329, &__t706) }; rt::cons(&__t328, &__t707) }; rt::cons(&__t327, &__t708) }; rt::cons(&__t326, &__t709) }; rt::cons(&__t325, &__t710) }; rt::cons(&__t324, &__t711) }; rt::cons(&__t323, &__t712) }; rt::cons(&__t322, &__t713) }; rt::cons(&__t321, &__t714) }; rt::cons(&__t320, &__t715) }; rt::cons(&__t319, &__t716) }; rt::cons(&__t318, &__t717) }; rt::cons(&__t317, &__t718) }; rt::cons(&__t316, &__t719) }; rt::cons(&__t315, &__t720) }; rt::cons(&__t314, &__t721) }; rt::cons(&__t313, &__t722) }; rt::cons(&__t312, &__t723) }; rt::cons(&__t311, &__t724) }; rt::cons(&__t310, &__t725) }; rt::cons(&__t309, &__t726) }; rt::cons(&__t308, &__t727) }; rt::cons(&__t307, &__t728) }; rt::cons(&__t306, &__t729) }; rt::cons(&__t305, &__t730) }; rt::cons(&__t304, &__t731) }; rt::cons(&__t303, &__t732) }; rt::cons(&__t302, &__t733) }; rt::cons(&__t301, &__t734) }; rt::cons(&__t300, &__t735) }; rt::cons(&__t299, &__t736) }; rt::cons(&__t298, &__t737) }; rt::cons(&__t297, &__t738) }; rt::cons(&__t296, &__t739) }; rt::cons(&__t295, &__t740) }; rt::cons(&__t294, &__t741) }; rt::cons(&__t293, &__t742) }; rt::cons(&__t292, &__t743) }; rt::cons(&__t291, &__t744) }; rt::cons(&__t290, &__t745) }; rt::cons(&__t289, &__t746) }; rt::cons(&__t288, &__t747) }; rt::cons(&__t287, &__t748) }; rt::cons(&__t286, &__t749) }; rt::cons(&__t285, &__t750) }; rt::cons(&__t284, &__t751) }; rt::cons(&__t283, &__t752) }; rt::cons(&__t282, &__t753) }; rt::cons(&__t281, &__t754) }; rt::cons(&__t280, &__t755) }; rt::cons(&__t279, &__t756) }; rt::cons(&__t278, &__t757) }; rt::cons(&__t277, &__t758) }; rt::cons(&__t276, &__t759) }; rt::cons(&__t275, &__t760) }; rt::cons(&__t274, &__t761) }; rt::cons(&__t273, &__t762) }; rt::cons(&__t272, &__t763) }; rt::cons(&__t271, &__t764) }; rt::cons(&__t270, &__t765) }; rt::cons(&__t269, &__t766) }; rt::cons(&__t268, &__t767) }; rt::cons(&__t267, &__t768) }; rt::cons(&__t266, &__t769) }; rt::cons(&__t265, &__t770) }; rt::cons(&__t264, &__t771) }; rt::cons(&__t263, &__t772) }; rt::cons(&__t262, &__t773) }; rt::cons(&__t261, &__t774) }; rt::cons(&__t260, &__t775) }; rt::cons(&__t259, &__t776) }; rt::cons(&__t258, &__t777) }; rt::cons(&__t257, &__t778) }; rt::cons(&__t256, &__t779) }; rt::cons(&__t255, &__t780) }; rt::cons(&__t254, &__t781) }; rt::cons(&__t253, &__t782) }; rt::cons(&__t252, &__t783) }; rt::cons(&__t251, &__t784) }; rt::cons(&__t250, &__t785) }; rt::cons(&__t249, &__t786) }; rt::cons(&__t248, &__t787) }; rt::cons(&__t247, &__t788) }; rt::cons(&__t246, &__t789) }; rt::cons(&__t245, &__t790) }; rt::cons(&__t244, &__t791) }; rt::cons(&__t243, &__t792) }; rt::cons(&__t242, &__t793) }; rt::cons(&__t241, &__t794) }; rt::cons(&__t240, &__t795) }; rt::cons(&__t239, &__t796) }; rt::cons(&__t238, &__t797) }; rt::cons(&__t237, &__t798) }; rt::cons(&__t236, &__t799) }; rt::cons(&__t235, &__t800) }; rt::cons(&__t234, &__t801) }; rt::cons(&__t233, &__t802) }; rt::cons(&__t232, &__t803) }; rt::cons(&__t231, &__t804) }; rt::cons(&__t230, &__t805) }; rt::cons(&__t229, &__t806) }; rt::cons(&__t228, &__t807) }; rt::cons(&__t227, &__t808) }; rt::cons(&__t226, &__t809) }; rt::cons(&__t225, &__t810) }; rt::cons(&__t224, &__t811) }; rt::cons(&__t223, &__t812) }; rt::cons(&__t222, &__t813) }; rt::cons(&__t221, &__t814) }; rt::cons(&__t220, &__t815) }; rt::cons(&__t219, &__t816) }; rt::cons(&__t218, &__t817) }; rt::cons(&__t217, &__t818) }; rt::cons(&__t216, &__t819) }; rt::cons(&__t215, &__t820) }; rt::cons(&__t214, &__t821) }; rt::cons(&__t213, &__t822) }; rt::cons(&__t212, &__t823) }; rt::cons(&__t211, &__t824) }; rt::cons(&__t210, &__t825) }; rt::cons(&__t209, &__t826) }; rt::cons(&__t208, &__t827) }; rt::cons(&__t207, &__t828) }; rt::cons(&__t206, &__t829) }; rt::cons(&__t205, &__t830) }; rt::cons(&__t204, &__t831) }; rt::cons(&__t203, &__t832) }; rt::cons(&__t202, &__t833) }; rt::cons(&__t201, &__t834) }; rt::cons(&__t200, &__t835) }; rt::cons(&__t199, &__t836) }; rt::cons(&__t198, &__t837) }; rt::cons(&__t197, &__t838) }; rt::cons(&__t196, &__t839) }; rt::cons(&__t195, &__t840) }; rt::cons(&__t194, &__t841) }; rt::cons(&__t193, &__t842) }; rt::cons(&__t192, &__t843) }; rt::cons(&__t191, &__t844) }; rt::cons(&__t190, &__t845) }; rt::cons(&__t189, &__t846) }; rt::cons(&__t188, &__t847) }; rt::cons(&__t187, &__t848) }; rt::cons(&__t186, &__t849) }; rt::cons(&__t185, &__t850) }; rt::cons(&__t184, &__t851) }; rt::cons(&__t183, &__t852) }; rt::cons(&__t182, &__t853) }; rt::cons(&__t181, &__t854) }; rt::cons(&__t180, &__t855) }; rt::cons(&__t179, &__t856) }; rt::cons(&__t178, &__t857) }; rt::cons(&__t177, &__t858) }; rt::cons(&__t176, &__t859) }; rt::cons(&__t175, &__t860) }; rt::cons(&__t174, &__t861) }; rt::cons(&__t173, &__t862) }; rt::cons(&__t172, &__t863) }; rt::cons(&__t171, &__t864) }; rt::cons(&__t170, &__t865) }; rt::cons(&__t169, &__t866) }; rt::cons(&__t168, &__t867) }; rt::cons(&__t167, &__t868) }; rt::cons(&__t166, &__t869) }; rt::cons(&__t165, &__t870) }; rt::cons(&__t164, &__t871) }; rt::cons(&__t163, &__t872) }; rt::cons(&__t162, &__t873) }; rt::cons(&__t161, &__t874) }; rt::cons(&__t160, &__t875) }; rt::cons(&__t159, &__t876) }; rt::cons(&__t158, &__t877) }; rt::cons(&__t157, &__t878) }; rt::cons(&__t156, &__t879) }; rt::cons(&__t155, &__t880) }; rt::cons(&__t154, &__t881) }; rt::cons(&__t153, &__t882) }; rt::cons(&__t152, &__t883) }; rt::cons(&__t151, &__t884) }; rt::cons(&__t150, &__t885) }; rt::cons(&__t149, &__t886) }; rt::cons(&__t148, &__t887) }; rt::cons(&__t147, &__t888) }; rt::cons(&__t146, &__t889) }; rt::cons(&__t145, &__t890) }; rt::cons(&__t144, &__t891) }; rt::cons(&__t143, &__t892) }; rt::cons(&__t142, &__t893) }; rt::cons(&__t141, &__t894) }; rt::cons(&__t140, &__t895) }; rt::cons(&__t139, &__t896) }; rt::cons(&__t138, &__t897) }; rt::cons(&__t137, &__t898) }; rt::cons(&__t136, &__t899) }; rt::cons(&__t135, &__t900) }; rt::cons(&__t134, &__t901) }; rt::cons(&__t133, &__t902) }; rt::cons(&__t132, &__t903) }; rt::cons(&__t131, &__t904) }; rt::cons(&__t130, &__t905) }; rt::cons(&__t129, &__t906) }; rt::cons(&__t128, &__t907) }; rt::cons(&__t127, &__t908) }; rt::cons(&__t126, &__t909) }; rt::cons(&__t125, &__t910) }; rt::cons(&__t124, &__t911) }; rt::cons(&__t123, &__t912) }; rt::cons(&__t122, &__t913) }; rt::cons(&__t121, &__t914) }; rt::cons(&__t120, &__t915) }; rt::cons(&__t119, &__t916) }; rt::cons(&__t118, &__t917) }; rt::cons(&__t117, &__t918) }; rt::cons(&__t116, &__t919) }; rt::cons(&__t115, &__t920) }; rt::cons(&__t114, &__t921) }; rt::apply_direct(interp, "shen.initialise-arity-table", &[__t922])? }; - { - let _ = { let __t923 = Value::sym(interp.intern("shen")); let __t924 = Value::sym(interp.intern("shen.external-symbols")); let __t1457 = { let __t925 = Value::sym(interp.intern("!")); let __t1456 = { let __t926 = Value::sym(interp.intern("}")); let __t1455 = { let __t927 = Value::sym(interp.intern("{")); let __t1454 = { let __t928 = Value::sym(interp.intern("-->")); let __t1453 = { let __t929 = Value::sym(interp.intern("<--")); let __t1452 = { let __t930 = Value::sym(interp.intern("&&")); let __t1451 = { let __t932 = { let __t931 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t931])? }; let __t1450 = { let __t934 = { let __t933 = Value::str(";"); rt::apply_direct(interp, "intern", &[__t933])? }; let __t1449 = { let __t936 = { let __t935 = Value::str(":="); rt::apply_direct(interp, "intern", &[__t935])? }; let __t1448 = { let __t938 = { let __t937 = Value::str(","); rt::apply_direct(interp, "intern", &[__t937])? }; let __t1447 = { let __t939 = Value::sym(interp.intern("_")); let __t1446 = { let __t940 = Value::sym(interp.intern("*language*")); let __t1445 = { let __t941 = Value::sym(interp.intern("*implementation*")); let __t1444 = { let __t942 = Value::sym(interp.intern("*stinput*")); let __t1443 = { let __t943 = Value::sym(interp.intern("*sterror*")); let __t1442 = { let __t944 = Value::sym(interp.intern("*stoutput*")); let __t1441 = { let __t945 = Value::sym(interp.intern("*home-directory*")); let __t1440 = { let __t946 = Value::sym(interp.intern("*version*")); let __t1439 = { let __t947 = Value::sym(interp.intern("*maximum-print-sequence-size*")); let __t1438 = { let __t948 = Value::sym(interp.intern("*macros*")); let __t1437 = { let __t949 = Value::sym(interp.intern("*os*")); let __t1436 = { let __t950 = Value::sym(interp.intern("*release*")); let __t1435 = { let __t951 = Value::sym(interp.intern("*property-vector*")); let __t1434 = { let __t952 = Value::sym(interp.intern("@v")); let __t1433 = { let __t953 = Value::sym(interp.intern("@p")); let __t1432 = { let __t954 = Value::sym(interp.intern("@s")); let __t1431 = { let __t955 = Value::sym(interp.intern("*port*")); let __t1430 = { let __t956 = Value::sym(interp.intern("*porters*")); let __t1429 = { let __t957 = Value::sym(interp.intern("*hush*")); let __t1428 = { let __t958 = Value::sym(interp.intern("<-")); let __t1427 = { let __t959 = Value::sym(interp.intern("->")); let __t1426 = { let __t960 = Value::sym(interp.intern("")); let __t1425 = { let __t961 = Value::sym(interp.intern("==")); let __t1424 = { let __t962 = Value::sym(interp.intern("=")); let __t1423 = { let __t963 = Value::sym(interp.intern(">=")); let __t1422 = { let __t964 = Value::sym(interp.intern(">")); let __t1421 = { let __t965 = Value::sym(interp.intern("==>")); let __t1420 = { let __t966 = Value::sym(interp.intern("/.")); let __t1419 = { let __t967 = Value::sym(interp.intern("")); let __t1418 = { let __t968 = Value::sym(interp.intern("")); let __t1417 = { let __t969 = Value::sym(interp.intern("$")); let __t1416 = { let __t970 = Value::sym(interp.intern("-")); let __t1415 = { let __t971 = Value::sym(interp.intern("/")); let __t1414 = { let __t972 = Value::sym(interp.intern("*")); let __t1413 = { let __t973 = Value::sym(interp.intern("+")); let __t1412 = { let __t974 = Value::sym(interp.intern("<=")); let __t1411 = { let __t975 = Value::sym(interp.intern("<")); let __t1410 = { let __t976 = Value::sym(interp.intern(">>")); let __t1409 = { let __t978 = { let __t977 = Value::int(0i64); rt::apply_direct(interp, "vector", &[__t977])? }; let __t1408 = { let __t979 = Value::sym(interp.intern("y-or-n?")); let __t1407 = { let __t980 = Value::sym(interp.intern("write-to-file")); let __t1406 = { let __t981 = Value::sym(interp.intern("write-byte")); let __t1405 = { let __t982 = Value::sym(interp.intern("where")); let __t1404 = { let __t983 = Value::sym(interp.intern("when")); let __t1403 = { let __t984 = Value::sym(interp.intern("warn")); let __t1402 = { let __t985 = Value::sym(interp.intern("version")); let __t1401 = { let __t986 = Value::sym(interp.intern("verified")); let __t1400 = { let __t987 = Value::sym(interp.intern("variable?")); let __t1399 = { let __t988 = Value::sym(interp.intern("var?")); let __t1398 = { let __t989 = Value::sym(interp.intern("value")); let __t1397 = { let __t990 = Value::sym(interp.intern("vector->")); let __t1396 = { let __t991 = Value::sym(interp.intern("<-vector")); let __t1395 = { let __t992 = Value::sym(interp.intern("vector")); let __t1394 = { let __t993 = Value::sym(interp.intern("vector?")); let __t1393 = { let __t994 = Value::sym(interp.intern("u!")); let __t1392 = { let __t995 = Value::sym(interp.intern("update-lambda-table")); let __t1391 = { let __t996 = Value::sym(interp.intern("unspecialise")); let __t1390 = { let __t997 = Value::sym(interp.intern("untrack")); let __t1389 = { let __t998 = Value::sym(interp.intern("unit")); let __t1388 = { let __t999 = Value::sym(interp.intern("shen.unix")); let __t1387 = { let __t1000 = Value::sym(interp.intern("union")); let __t1386 = { let __t1001 = Value::sym(interp.intern("unput")); let __t1385 = { let __t1002 = Value::sym(interp.intern("unprofile")); let __t1384 = { let __t1003 = Value::sym(interp.intern("undefmacro")); let __t1383 = { let __t1004 = Value::sym(interp.intern("unabsolute")); let __t1382 = { let __t1005 = Value::sym(interp.intern("return")); let __t1381 = { let __t1006 = Value::sym(interp.intern("type")); let __t1380 = { let __t1007 = Value::sym(interp.intern("tuple?")); let __t1379 = { let __t1008 = Value::bool(true); let __t1378 = { let __t1009 = Value::sym(interp.intern("trap-error")); let __t1377 = { let __t1010 = Value::sym(interp.intern("track")); let __t1376 = { let __t1011 = Value::sym(interp.intern("time")); let __t1375 = { let __t1012 = Value::sym(interp.intern("thaw")); let __t1374 = { let __t1013 = Value::sym(interp.intern("tc?")); let __t1373 = { let __t1014 = Value::sym(interp.intern("tc")); let __t1372 = { let __t1015 = Value::sym(interp.intern("tl")); let __t1371 = { let __t1016 = Value::sym(interp.intern("tlstr")); let __t1370 = { let __t1017 = Value::sym(interp.intern("tlv")); let __t1369 = { let __t1018 = Value::sym(interp.intern("tail")); let __t1368 = { let __t1019 = Value::sym(interp.intern("systemf")); let __t1367 = { let __t1020 = Value::sym(interp.intern("synonyms")); let __t1366 = { let __t1021 = Value::sym(interp.intern("symbol")); let __t1365 = { let __t1022 = Value::sym(interp.intern("symbol?")); let __t1364 = { let __t1023 = Value::sym(interp.intern("string->symbol")); let __t1363 = { let __t1024 = Value::sym(interp.intern("sum")); let __t1362 = { let __t1025 = Value::sym(interp.intern("subst")); let __t1361 = { let __t1026 = Value::sym(interp.intern("string?")); let __t1360 = { let __t1027 = Value::sym(interp.intern("string->n")); let __t1359 = { let __t1028 = Value::sym(interp.intern("stream")); let __t1358 = { let __t1029 = Value::sym(interp.intern("string")); let __t1357 = { let __t1030 = Value::sym(interp.intern("stinput")); let __t1356 = { let __t1031 = Value::sym(interp.intern("sterror")); let __t1355 = { let __t1032 = Value::sym(interp.intern("stoutput")); let __t1354 = { let __t1033 = Value::sym(interp.intern("step")); let __t1353 = { let __t1034 = Value::sym(interp.intern("spy")); let __t1352 = { let __t1035 = Value::sym(interp.intern("specialise")); let __t1351 = { let __t1036 = Value::sym(interp.intern("snd")); let __t1350 = { let __t1037 = Value::sym(interp.intern("simple-error")); let __t1349 = { let __t1038 = Value::sym(interp.intern("set")); let __t1348 = { let __t1039 = Value::sym(interp.intern("save")); let __t1347 = { let __t1040 = Value::sym(interp.intern("str")); let __t1346 = { let __t1041 = Value::sym(interp.intern("run")); let __t1345 = { let __t1042 = Value::sym(interp.intern("reverse")); let __t1344 = { let __t1043 = Value::sym(interp.intern("retract")); let __t1343 = { let __t1044 = Value::sym(interp.intern("remove")); let __t1342 = { let __t1045 = Value::sym(interp.intern("release")); let __t1341 = { let __t1046 = Value::sym(interp.intern("read")); let __t1340 = { let __t1047 = Value::sym(interp.intern("receive")); let __t1339 = { let __t1048 = Value::sym(interp.intern("read-file")); let __t1338 = { let __t1049 = Value::sym(interp.intern("read-file-as-bytelist")); let __t1337 = { let __t1050 = Value::sym(interp.intern("read-file-as-string")); let __t1336 = { let __t1051 = Value::sym(interp.intern("read-byte")); let __t1335 = { let __t1052 = Value::sym(interp.intern("read-from-string")); let __t1334 = { let __t1053 = Value::sym(interp.intern("read-from-string-unprocessed")); let __t1333 = { let __t1054 = Value::sym(interp.intern("package?")); let __t1332 = { let __t1055 = Value::sym(interp.intern("put")); let __t1331 = { let __t1056 = Value::sym(interp.intern("preclude")); let __t1330 = { let __t1057 = Value::sym(interp.intern("preclude-all-but")); let __t1329 = { let __t1058 = Value::sym(interp.intern("ps")); let __t1328 = { let __t1059 = Value::sym(interp.intern("prolog?")); let __t1327 = { let __t1060 = Value::sym(interp.intern("protect")); let __t1326 = { let __t1061 = Value::sym(interp.intern("profile-results")); let __t1325 = { let __t1062 = Value::sym(interp.intern("profile")); let __t1324 = { let __t1063 = Value::sym(interp.intern("prolog-memory")); let __t1323 = { let __t1064 = Value::sym(interp.intern("print")); let __t1322 = { let __t1065 = Value::sym(interp.intern("pr")); let __t1321 = { let __t1066 = Value::sym(interp.intern("pos")); let __t1320 = { let __t1067 = Value::sym(interp.intern("porters")); let __t1319 = { let __t1068 = Value::sym(interp.intern("port")); let __t1318 = { let __t1069 = Value::sym(interp.intern("package")); let __t1317 = { let __t1070 = Value::sym(interp.intern("output")); let __t1316 = { let __t1071 = Value::sym(interp.intern("out")); let __t1315 = { let __t1072 = Value::sym(interp.intern("os")); let __t1314 = { let __t1073 = Value::sym(interp.intern("or")); let __t1313 = { let __t1074 = Value::sym(interp.intern("optimise")); let __t1312 = { let __t1075 = Value::sym(interp.intern("open")); let __t1311 = { let __t1076 = Value::sym(interp.intern("occurrences")); let __t1310 = { let __t1077 = Value::sym(interp.intern("occurs-check")); let __t1309 = { let __t1078 = Value::sym(interp.intern("n->string")); let __t1308 = { let __t1079 = Value::sym(interp.intern("number?")); let __t1307 = { let __t1080 = Value::sym(interp.intern("number")); let __t1306 = { let __t1081 = Value::sym(interp.intern("null")); let __t1305 = { let __t1082 = Value::sym(interp.intern("nth")); let __t1304 = { let __t1083 = Value::sym(interp.intern("not")); let __t1303 = { let __t1084 = Value::sym(interp.intern("nl")); let __t1302 = { let __t1085 = Value::sym(interp.intern("mode")); let __t1301 = { let __t1086 = Value::sym(interp.intern("macroexpand")); let __t1300 = { let __t1087 = Value::sym(interp.intern("maxinferences")); let __t1299 = { let __t1088 = Value::sym(interp.intern("mapcan")); let __t1298 = { let __t1089 = Value::sym(interp.intern("map")); let __t1297 = { let __t1090 = Value::sym(interp.intern("make-string")); let __t1296 = { let __t1091 = Value::sym(interp.intern("load")); let __t1295 = { let __t1092 = Value::sym(interp.intern("loaded")); let __t1294 = { let __t1093 = Value::sym(interp.intern("list")); let __t1293 = { let __t1094 = Value::sym(interp.intern("lineread")); let __t1292 = { let __t1095 = Value::sym(interp.intern("limit")); let __t1291 = { let __t1096 = Value::sym(interp.intern("length")); let __t1290 = { let __t1097 = Value::sym(interp.intern("let")); let __t1289 = { let __t1098 = Value::sym(interp.intern("lazy")); let __t1288 = { let __t1099 = Value::sym(interp.intern("lambda")); let __t1287 = { let __t1100 = Value::sym(interp.intern("language")); let __t1286 = { let __t1101 = Value::sym(interp.intern("is")); let __t1285 = { let __t1102 = Value::sym(interp.intern("intersection")); let __t1284 = { let __t1103 = Value::sym(interp.intern("inferences")); let __t1283 = { let __t1104 = Value::sym(interp.intern("intern")); let __t1282 = { let __t1105 = Value::sym(interp.intern("integer?")); let __t1281 = { let __t1106 = Value::sym(interp.intern("input")); let __t1280 = { let __t1107 = Value::sym(interp.intern("input+")); let __t1279 = { let __t1108 = Value::sym(interp.intern("inline")); let __t1278 = { let __t1109 = Value::sym(interp.intern("include")); let __t1277 = { let __t1110 = Value::sym(interp.intern("include-all-but")); let __t1276 = { let __t1111 = Value::sym(interp.intern("it")); let __t1275 = { let __t1112 = Value::sym(interp.intern("is")); let __t1274 = { let __t1113 = Value::sym(interp.intern("is!")); let __t1273 = { let __t1114 = Value::sym(interp.intern("in")); let __t1272 = { let __t1115 = Value::sym(interp.intern("in-package")); let __t1271 = { let __t1116 = Value::sym(interp.intern("internal")); let __t1270 = { let __t1117 = Value::sym(interp.intern("implementation")); let __t1269 = { let __t1118 = Value::sym(interp.intern("if")); let __t1268 = { let __t1119 = Value::sym(interp.intern("head")); let __t1267 = { let __t1120 = Value::sym(interp.intern("hd")); let __t1266 = { let __t1121 = Value::sym(interp.intern("hdv")); let __t1265 = { let __t1122 = Value::sym(interp.intern("hdstr")); let __t1264 = { let __t1123 = Value::sym(interp.intern("hash")); let __t1263 = { let __t1124 = Value::sym(interp.intern("get")); let __t1262 = { let __t1125 = Value::sym(interp.intern("get-time")); let __t1261 = { let __t1126 = Value::sym(interp.intern("gensym")); let __t1260 = { let __t1127 = Value::sym(interp.intern("fn")); let __t1259 = { let __t1128 = Value::sym(interp.intern("function")); let __t1258 = { let __t1129 = Value::sym(interp.intern("fst")); let __t1257 = { let __t1130 = Value::sym(interp.intern("freeze")); let __t1256 = { let __t1131 = Value::sym(interp.intern("fresh")); let __t1255 = { let __t1132 = Value::sym(interp.intern("fork")); let __t1254 = { let __t1133 = Value::sym(interp.intern("foreign")); let __t1253 = { let __t1134 = Value::sym(interp.intern("fix")); let __t1252 = { let __t1135 = Value::sym(interp.intern("file")); let __t1251 = { let __t1136 = Value::sym(interp.intern("fail")); let __t1250 = { let __t1137 = Value::sym(interp.intern("fail-if")); let __t1249 = { let __t1138 = Value::sym(interp.intern("factorise")); let __t1248 = { let __t1139 = Value::sym(interp.intern("findall")); let __t1247 = { let __t1140 = Value::bool(false); let __t1246 = { let __t1141 = Value::sym(interp.intern("enable-type-theory")); let __t1245 = { let __t1142 = Value::sym(interp.intern("explode")); let __t1244 = { let __t1143 = Value::sym(interp.intern("external")); let __t1243 = { let __t1144 = Value::sym(interp.intern("exception")); let __t1242 = { let __t1145 = Value::sym(interp.intern("eval-kl")); let __t1241 = { let __t1146 = Value::sym(interp.intern("eval")); let __t1240 = { let __t1147 = Value::sym(interp.intern("error-to-string")); let __t1239 = { let __t1148 = Value::sym(interp.intern("error")); let __t1238 = { let __t1149 = Value::sym(interp.intern("empty?")); let __t1237 = { let __t1150 = Value::sym(interp.intern("element?")); let __t1236 = { let __t1151 = Value::sym(interp.intern("do")); let __t1235 = { let __t1152 = Value::sym(interp.intern("difference")); let __t1234 = { let __t1153 = Value::sym(interp.intern("destroy")); let __t1233 = { let __t1154 = Value::sym(interp.intern("defun")); let __t1232 = { let __t1155 = Value::sym(interp.intern("define")); let __t1231 = { let __t1156 = Value::sym(interp.intern("defmacro")); let __t1230 = { let __t1157 = Value::sym(interp.intern("defcc")); let __t1229 = { let __t1158 = Value::sym(interp.intern("defprolog")); let __t1228 = { let __t1159 = Value::sym(interp.intern("declare")); let __t1227 = { let __t1160 = Value::sym(interp.intern("datatype")); let __t1226 = { let __t1161 = Value::sym(interp.intern("datatypes")); let __t1225 = { let __t1162 = Value::sym(interp.intern("shen.ctxt")); let __t1224 = { let __t1163 = Value::sym(interp.intern("cn")); let __t1223 = { let __t1164 = Value::sym(interp.intern("cons?")); let __t1222 = { let __t1165 = Value::sym(interp.intern("cons")); let __t1221 = { let __t1166 = Value::sym(interp.intern("cond")); let __t1220 = { let __t1167 = Value::sym(interp.intern("concat")); let __t1219 = { let __t1168 = Value::sym(interp.intern("compile")); let __t1218 = { let __t1169 = Value::sym(interp.intern("cd")); let __t1217 = { let __t1170 = Value::sym(interp.intern("cases")); let __t1216 = { let __t1171 = Value::sym(interp.intern("call")); let __t1215 = { let __t1172 = Value::sym(interp.intern("close")); let __t1214 = { let __t1173 = Value::sym(interp.intern("bind")); let __t1213 = { let __t1174 = Value::sym(interp.intern("bound?")); let __t1212 = { let __t1175 = Value::sym(interp.intern("boolean?")); let __t1211 = { let __t1176 = Value::sym(interp.intern("boolean")); let __t1210 = { let __t1177 = Value::sym(interp.intern("bootstrap")); let __t1209 = { let __t1179 = { let __t1178 = Value::str("bar!"); rt::apply_direct(interp, "intern", &[__t1178])? }; let __t1208 = { let __t1180 = Value::sym(interp.intern("atom?")); let __t1207 = { let __t1181 = Value::sym(interp.intern("asserta")); let __t1206 = { let __t1182 = Value::sym(interp.intern("assertz")); let __t1205 = { let __t1183 = Value::sym(interp.intern("assoc")); let __t1204 = { let __t1184 = Value::sym(interp.intern("arity")); let __t1203 = { let __t1185 = Value::sym(interp.intern("append")); let __t1202 = { let __t1186 = Value::sym(interp.intern("and")); let __t1201 = { let __t1187 = Value::sym(interp.intern("adjoin")); let __t1200 = { let __t1188 = Value::sym(interp.intern("<-address")); let __t1199 = { let __t1189 = Value::sym(interp.intern("address->")); let __t1198 = { let __t1190 = Value::sym(interp.intern("absvector?")); let __t1197 = { let __t1191 = Value::sym(interp.intern("absvector")); let __t1196 = { let __t1192 = Value::sym(interp.intern("absolute")); let __t1195 = { let __t1193 = Value::sym(interp.intern("abort")); let __t1194 = Value::nil(); rt::cons(&__t1193, &__t1194) }; rt::cons(&__t1192, &__t1195) }; rt::cons(&__t1191, &__t1196) }; rt::cons(&__t1190, &__t1197) }; rt::cons(&__t1189, &__t1198) }; rt::cons(&__t1188, &__t1199) }; rt::cons(&__t1187, &__t1200) }; rt::cons(&__t1186, &__t1201) }; rt::cons(&__t1185, &__t1202) }; rt::cons(&__t1184, &__t1203) }; rt::cons(&__t1183, &__t1204) }; rt::cons(&__t1182, &__t1205) }; rt::cons(&__t1181, &__t1206) }; rt::cons(&__t1180, &__t1207) }; rt::cons(&__t1179, &__t1208) }; rt::cons(&__t1177, &__t1209) }; rt::cons(&__t1176, &__t1210) }; rt::cons(&__t1175, &__t1211) }; rt::cons(&__t1174, &__t1212) }; rt::cons(&__t1173, &__t1213) }; rt::cons(&__t1172, &__t1214) }; rt::cons(&__t1171, &__t1215) }; rt::cons(&__t1170, &__t1216) }; rt::cons(&__t1169, &__t1217) }; rt::cons(&__t1168, &__t1218) }; rt::cons(&__t1167, &__t1219) }; rt::cons(&__t1166, &__t1220) }; rt::cons(&__t1165, &__t1221) }; rt::cons(&__t1164, &__t1222) }; rt::cons(&__t1163, &__t1223) }; rt::cons(&__t1162, &__t1224) }; rt::cons(&__t1161, &__t1225) }; rt::cons(&__t1160, &__t1226) }; rt::cons(&__t1159, &__t1227) }; rt::cons(&__t1158, &__t1228) }; rt::cons(&__t1157, &__t1229) }; rt::cons(&__t1156, &__t1230) }; rt::cons(&__t1155, &__t1231) }; rt::cons(&__t1154, &__t1232) }; rt::cons(&__t1153, &__t1233) }; rt::cons(&__t1152, &__t1234) }; rt::cons(&__t1151, &__t1235) }; rt::cons(&__t1150, &__t1236) }; rt::cons(&__t1149, &__t1237) }; rt::cons(&__t1148, &__t1238) }; rt::cons(&__t1147, &__t1239) }; rt::cons(&__t1146, &__t1240) }; rt::cons(&__t1145, &__t1241) }; rt::cons(&__t1144, &__t1242) }; rt::cons(&__t1143, &__t1243) }; rt::cons(&__t1142, &__t1244) }; rt::cons(&__t1141, &__t1245) }; rt::cons(&__t1140, &__t1246) }; rt::cons(&__t1139, &__t1247) }; rt::cons(&__t1138, &__t1248) }; rt::cons(&__t1137, &__t1249) }; rt::cons(&__t1136, &__t1250) }; rt::cons(&__t1135, &__t1251) }; rt::cons(&__t1134, &__t1252) }; rt::cons(&__t1133, &__t1253) }; rt::cons(&__t1132, &__t1254) }; rt::cons(&__t1131, &__t1255) }; rt::cons(&__t1130, &__t1256) }; rt::cons(&__t1129, &__t1257) }; rt::cons(&__t1128, &__t1258) }; rt::cons(&__t1127, &__t1259) }; rt::cons(&__t1126, &__t1260) }; rt::cons(&__t1125, &__t1261) }; rt::cons(&__t1124, &__t1262) }; rt::cons(&__t1123, &__t1263) }; rt::cons(&__t1122, &__t1264) }; rt::cons(&__t1121, &__t1265) }; rt::cons(&__t1120, &__t1266) }; rt::cons(&__t1119, &__t1267) }; rt::cons(&__t1118, &__t1268) }; rt::cons(&__t1117, &__t1269) }; rt::cons(&__t1116, &__t1270) }; rt::cons(&__t1115, &__t1271) }; rt::cons(&__t1114, &__t1272) }; rt::cons(&__t1113, &__t1273) }; rt::cons(&__t1112, &__t1274) }; rt::cons(&__t1111, &__t1275) }; rt::cons(&__t1110, &__t1276) }; rt::cons(&__t1109, &__t1277) }; rt::cons(&__t1108, &__t1278) }; rt::cons(&__t1107, &__t1279) }; rt::cons(&__t1106, &__t1280) }; rt::cons(&__t1105, &__t1281) }; rt::cons(&__t1104, &__t1282) }; rt::cons(&__t1103, &__t1283) }; rt::cons(&__t1102, &__t1284) }; rt::cons(&__t1101, &__t1285) }; rt::cons(&__t1100, &__t1286) }; rt::cons(&__t1099, &__t1287) }; rt::cons(&__t1098, &__t1288) }; rt::cons(&__t1097, &__t1289) }; rt::cons(&__t1096, &__t1290) }; rt::cons(&__t1095, &__t1291) }; rt::cons(&__t1094, &__t1292) }; rt::cons(&__t1093, &__t1293) }; rt::cons(&__t1092, &__t1294) }; rt::cons(&__t1091, &__t1295) }; rt::cons(&__t1090, &__t1296) }; rt::cons(&__t1089, &__t1297) }; rt::cons(&__t1088, &__t1298) }; rt::cons(&__t1087, &__t1299) }; rt::cons(&__t1086, &__t1300) }; rt::cons(&__t1085, &__t1301) }; rt::cons(&__t1084, &__t1302) }; rt::cons(&__t1083, &__t1303) }; rt::cons(&__t1082, &__t1304) }; rt::cons(&__t1081, &__t1305) }; rt::cons(&__t1080, &__t1306) }; rt::cons(&__t1079, &__t1307) }; rt::cons(&__t1078, &__t1308) }; rt::cons(&__t1077, &__t1309) }; rt::cons(&__t1076, &__t1310) }; rt::cons(&__t1075, &__t1311) }; rt::cons(&__t1074, &__t1312) }; rt::cons(&__t1073, &__t1313) }; rt::cons(&__t1072, &__t1314) }; rt::cons(&__t1071, &__t1315) }; rt::cons(&__t1070, &__t1316) }; rt::cons(&__t1069, &__t1317) }; rt::cons(&__t1068, &__t1318) }; rt::cons(&__t1067, &__t1319) }; rt::cons(&__t1066, &__t1320) }; rt::cons(&__t1065, &__t1321) }; rt::cons(&__t1064, &__t1322) }; rt::cons(&__t1063, &__t1323) }; rt::cons(&__t1062, &__t1324) }; rt::cons(&__t1061, &__t1325) }; rt::cons(&__t1060, &__t1326) }; rt::cons(&__t1059, &__t1327) }; rt::cons(&__t1058, &__t1328) }; rt::cons(&__t1057, &__t1329) }; rt::cons(&__t1056, &__t1330) }; rt::cons(&__t1055, &__t1331) }; rt::cons(&__t1054, &__t1332) }; rt::cons(&__t1053, &__t1333) }; rt::cons(&__t1052, &__t1334) }; rt::cons(&__t1051, &__t1335) }; rt::cons(&__t1050, &__t1336) }; rt::cons(&__t1049, &__t1337) }; rt::cons(&__t1048, &__t1338) }; rt::cons(&__t1047, &__t1339) }; rt::cons(&__t1046, &__t1340) }; rt::cons(&__t1045, &__t1341) }; rt::cons(&__t1044, &__t1342) }; rt::cons(&__t1043, &__t1343) }; rt::cons(&__t1042, &__t1344) }; rt::cons(&__t1041, &__t1345) }; rt::cons(&__t1040, &__t1346) }; rt::cons(&__t1039, &__t1347) }; rt::cons(&__t1038, &__t1348) }; rt::cons(&__t1037, &__t1349) }; rt::cons(&__t1036, &__t1350) }; rt::cons(&__t1035, &__t1351) }; rt::cons(&__t1034, &__t1352) }; rt::cons(&__t1033, &__t1353) }; rt::cons(&__t1032, &__t1354) }; rt::cons(&__t1031, &__t1355) }; rt::cons(&__t1030, &__t1356) }; rt::cons(&__t1029, &__t1357) }; rt::cons(&__t1028, &__t1358) }; rt::cons(&__t1027, &__t1359) }; rt::cons(&__t1026, &__t1360) }; rt::cons(&__t1025, &__t1361) }; rt::cons(&__t1024, &__t1362) }; rt::cons(&__t1023, &__t1363) }; rt::cons(&__t1022, &__t1364) }; rt::cons(&__t1021, &__t1365) }; rt::cons(&__t1020, &__t1366) }; rt::cons(&__t1019, &__t1367) }; rt::cons(&__t1018, &__t1368) }; rt::cons(&__t1017, &__t1369) }; rt::cons(&__t1016, &__t1370) }; rt::cons(&__t1015, &__t1371) }; rt::cons(&__t1014, &__t1372) }; rt::cons(&__t1013, &__t1373) }; rt::cons(&__t1012, &__t1374) }; rt::cons(&__t1011, &__t1375) }; rt::cons(&__t1010, &__t1376) }; rt::cons(&__t1009, &__t1377) }; rt::cons(&__t1008, &__t1378) }; rt::cons(&__t1007, &__t1379) }; rt::cons(&__t1006, &__t1380) }; rt::cons(&__t1005, &__t1381) }; rt::cons(&__t1004, &__t1382) }; rt::cons(&__t1003, &__t1383) }; rt::cons(&__t1002, &__t1384) }; rt::cons(&__t1001, &__t1385) }; rt::cons(&__t1000, &__t1386) }; rt::cons(&__t999, &__t1387) }; rt::cons(&__t998, &__t1388) }; rt::cons(&__t997, &__t1389) }; rt::cons(&__t996, &__t1390) }; rt::cons(&__t995, &__t1391) }; rt::cons(&__t994, &__t1392) }; rt::cons(&__t993, &__t1393) }; rt::cons(&__t992, &__t1394) }; rt::cons(&__t991, &__t1395) }; rt::cons(&__t990, &__t1396) }; rt::cons(&__t989, &__t1397) }; rt::cons(&__t988, &__t1398) }; rt::cons(&__t987, &__t1399) }; rt::cons(&__t986, &__t1400) }; rt::cons(&__t985, &__t1401) }; rt::cons(&__t984, &__t1402) }; rt::cons(&__t983, &__t1403) }; rt::cons(&__t982, &__t1404) }; rt::cons(&__t981, &__t1405) }; rt::cons(&__t980, &__t1406) }; rt::cons(&__t979, &__t1407) }; rt::cons(&__t978, &__t1408) }; rt::cons(&__t976, &__t1409) }; rt::cons(&__t975, &__t1410) }; rt::cons(&__t974, &__t1411) }; rt::cons(&__t973, &__t1412) }; rt::cons(&__t972, &__t1413) }; rt::cons(&__t971, &__t1414) }; rt::cons(&__t970, &__t1415) }; rt::cons(&__t969, &__t1416) }; rt::cons(&__t968, &__t1417) }; rt::cons(&__t967, &__t1418) }; rt::cons(&__t966, &__t1419) }; rt::cons(&__t965, &__t1420) }; rt::cons(&__t964, &__t1421) }; rt::cons(&__t963, &__t1422) }; rt::cons(&__t962, &__t1423) }; rt::cons(&__t961, &__t1424) }; rt::cons(&__t960, &__t1425) }; rt::cons(&__t959, &__t1426) }; rt::cons(&__t958, &__t1427) }; rt::cons(&__t957, &__t1428) }; rt::cons(&__t956, &__t1429) }; rt::cons(&__t955, &__t1430) }; rt::cons(&__t954, &__t1431) }; rt::cons(&__t953, &__t1432) }; rt::cons(&__t952, &__t1433) }; rt::cons(&__t951, &__t1434) }; rt::cons(&__t950, &__t1435) }; rt::cons(&__t949, &__t1436) }; rt::cons(&__t948, &__t1437) }; rt::cons(&__t947, &__t1438) }; rt::cons(&__t946, &__t1439) }; rt::cons(&__t945, &__t1440) }; rt::cons(&__t944, &__t1441) }; rt::cons(&__t943, &__t1442) }; rt::cons(&__t942, &__t1443) }; rt::cons(&__t941, &__t1444) }; rt::cons(&__t940, &__t1445) }; rt::cons(&__t939, &__t1446) }; rt::cons(&__t938, &__t1447) }; rt::cons(&__t936, &__t1448) }; rt::cons(&__t934, &__t1449) }; rt::cons(&__t932, &__t1450) }; rt::cons(&__t930, &__t1451) }; rt::cons(&__t929, &__t1452) }; rt::cons(&__t928, &__t1453) }; rt::cons(&__t927, &__t1454) }; rt::cons(&__t926, &__t1455) }; rt::cons(&__t925, &__t1456) }; let __t1459 = { let __t1458 = Value::sym(interp.intern("*property-vector*")); rt::apply_direct(interp, "value", &[__t1458])? }; rt::apply_direct(interp, "put", &[__t923, __t924, __t1457, __t1459])? }; - break Ok({ let __t1460 = Value::sym(interp.intern("shen.*empty-absvector*")); let __t1462 = { let __t1461 = Value::int(0i64); rt::apply_direct(interp, "absvector", &[__t1461])? }; rt::apply_direct(interp, "set", &[__t1460, __t1462])? }); - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_initialise_x2d_environment(interp: &mut Interp) { - interp.register_native( - "shen.initialise-environment", - 0, - aot_shen_x2e_initialise_x2d_environment, - ); - interp.register_aot_direct( - "shen.initialise-environment", - aot_shen_x2e_initialise_x2d_environment, - ); -} - -/// AOT-compiled from KL `(defun shen.initialise-signedfuncs ...)` -pub fn aot_shen_x2e_initialise_x2d_signedfuncs( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "shen.initialise-signedfuncs: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - { - let _ = { - let __t1463 = Value::sym(interp.intern("shen.*sigf*")); - let __t1464 = Value::nil(); - rt::apply_direct(interp, "set", &[__t1463, __t1464])? - }; - { - let _ = { - let __t1465 = Value::sym(interp.intern("shen.*sigf*")); - let __t1483 = { - let __t1466 = Value::sym(interp.intern("abort")); - let __t1480 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5951 = args[0].clone(); - Ok({ - let v_V5951 = v_V5951.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5947 = args[0].clone(); - Ok({ - let v_B5947 = v_B5947.clone(); - let v_V5951 = v_V5951.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5948 = args[0].clone(); - Ok({ - let v_B5947 = v_B5947.clone(); - let v_L5948 = v_L5948.clone(); - let v_V5951 = v_V5951.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Key5949 = - args[0].clone(); - Ok({ - let v_B5947 = - v_B5947.clone(); - let v_Key5949 = - v_Key5949.clone(); - let v_L5948 = - v_L5948.clone(); - let v_V5951 = - v_V5951.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_C5950 = args[0].clone(); Ok({ let v_A = { let __t1467 = v_B5947.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1467])? }; { let __t1468 = v_B5947.clone(); let __t1479 = { let __t1469 = v_V5951.clone(); let __t1474 = { let __t1470 = Value::sym(interp.intern("-->")); let __t1473 = { let __t1471 = v_A.clone(); let __t1472 = Value::nil(); rt::cons(&__t1471, &__t1472) }; rt::cons(&__t1470, &__t1473) }; let __t1475 = v_B5947.clone(); let __t1476 = v_L5948.clone(); let __t1477 = v_Key5949.clone(); let __t1478 = v_C5950.clone(); rt::apply_direct(interp, "is!", &[__t1469, __t1474, __t1475, __t1476, __t1477, __t1478])? }; rt::apply_direct(interp, "shen.gc", &[__t1468, __t1479])? } }) }, vec![v_B5947, v_Key5949, v_L5948, v_V5951], interp) - }) - }, - vec![v_B5947, v_L5948, v_V5951], - interp, - ) - }) - }, - vec![v_B5947, v_V5951], - interp, - ) - }) - }, - vec![v_V5951], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1482 = { - let __t1481 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1481])? - }; - rt::apply_direct(interp, "shen.assoc->", &[__t1466, __t1480, __t1482])? - }; - rt::apply_direct(interp, "set", &[__t1465, __t1483])? - }; - { - let _ = { - let __t1484 = Value::sym(interp.intern("shen.*sigf*")); - let __t1505 = { - let __t1485 = Value::sym(interp.intern("absolute")); - let __t1502 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5956 = args[0].clone(); - Ok({ - let v_V5956 = v_V5956.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5952 = args[0].clone(); - Ok({ - let v_B5952 = v_B5952.clone(); - let v_V5956 = v_V5956.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5953 = args[0].clone(); - Ok({ - let v_B5952 = v_B5952.clone(); - let v_L5953 = v_L5953.clone(); - let v_V5956 = v_V5956.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Key5954 = - args[0].clone(); - Ok({ - let v_B5952 = - v_B5952.clone(); - let v_Key5954 = - v_Key5954 - .clone(); - let v_L5953 = - v_L5953.clone(); - let v_V5956 = - v_V5956.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_C5955 = args[0].clone(); Ok({ let __t1486 = v_V5956.clone(); let __t1497 = { let __t1487 = Value::sym(interp.intern("string")); let __t1496 = { let __t1488 = Value::sym(interp.intern("-->")); let __t1495 = { let __t1493 = { let __t1489 = Value::sym(interp.intern("list")); let __t1492 = { let __t1490 = Value::sym(interp.intern("string")); let __t1491 = Value::nil(); rt::cons(&__t1490, &__t1491) }; rt::cons(&__t1489, &__t1492) }; let __t1494 = Value::nil(); rt::cons(&__t1493, &__t1494) }; rt::cons(&__t1488, &__t1495) }; rt::cons(&__t1487, &__t1496) }; let __t1498 = v_B5952.clone(); let __t1499 = v_L5953.clone(); let __t1500 = v_Key5954.clone(); let __t1501 = v_C5955.clone(); rt::apply_direct(interp, "is!", &[__t1486, __t1497, __t1498, __t1499, __t1500, __t1501])? }) }, vec![v_B5952, v_Key5954, v_L5953, v_V5956], interp) - }) - }, - vec![ - v_B5952, v_L5953, - v_V5956, - ], - interp, - ) - }) - }, - vec![v_B5952, v_V5956], - interp, - ) - }) - }, - vec![v_V5956], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1504 = { - let __t1503 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1503])? - }; - rt::apply_direct(interp, "shen.assoc->", &[__t1485, __t1502, __t1504])? - }; - rt::apply_direct(interp, "set", &[__t1484, __t1505])? - }; - { - let _ = { - let __t1506 = Value::sym(interp.intern("shen.*sigf*")); - let __t1526 = { - let __t1507 = Value::sym(interp.intern("absvector?")); - let __t1523 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5961 = args[0].clone(); - Ok({ - let v_V5961 = v_V5961.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5957 = args[0].clone(); - Ok({ - let v_B5957 = v_B5957.clone(); - let v_V5961 = v_V5961.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5958 = args[0].clone(); - Ok({ - let v_B5957 = - v_B5957.clone(); - let v_L5958 = - v_L5958.clone(); - let v_V5961 = - v_V5961.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Key5959 = - args[0].clone(); - Ok({ - let v_B5957 = - v_B5957 - .clone( - ); - let v_Key5959 = - v_Key5959 - .clone(); - let v_L5958 = - v_L5958 - .clone( - ); - let v_V5961 = - v_V5961 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_C5960 = args[0].clone(); Ok({ let v_A = { let __t1508 = v_B5957.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1508])? }; { let __t1509 = v_B5957.clone(); let __t1522 = { let __t1510 = v_V5961.clone(); let __t1517 = { let __t1511 = v_A.clone(); let __t1516 = { let __t1512 = Value::sym(interp.intern("-->")); let __t1515 = { let __t1513 = Value::sym(interp.intern("boolean")); let __t1514 = Value::nil(); rt::cons(&__t1513, &__t1514) }; rt::cons(&__t1512, &__t1515) }; rt::cons(&__t1511, &__t1516) }; let __t1518 = v_B5957.clone(); let __t1519 = v_L5958.clone(); let __t1520 = v_Key5959.clone(); let __t1521 = v_C5960.clone(); rt::apply_direct(interp, "is!", &[__t1510, __t1517, __t1518, __t1519, __t1520, __t1521])? }; rt::apply_direct(interp, "shen.gc", &[__t1509, __t1522])? } }) }, vec![v_B5957, v_Key5959, v_L5958, v_V5961], interp) - }) - }, - vec![ - v_B5957, v_L5958, - v_V5961, - ], - interp, - ) - }) - }, - vec![v_B5957, v_V5961], - interp, - ) - }) - }, - vec![v_V5961], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1525 = { - let __t1524 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1524])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1507, __t1523, __t1525], - )? - }; - rt::apply_direct(interp, "set", &[__t1506, __t1526])? - }; - { - let _ = { - let __t1527 = Value::sym(interp.intern("shen.*sigf*")); - let __t1561 = { - let __t1528 = Value::sym(interp.intern("adjoin")); - let __t1558 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5966 = args[0].clone(); - Ok({ - let v_V5966 = v_V5966.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5962 = args[0].clone(); - Ok({ - let v_B5962 = v_B5962.clone(); - let v_V5966 = v_V5966.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5963 = - args[0].clone(); - Ok({ - let v_B5962 = - v_B5962.clone(); - let v_L5963 = - v_L5963.clone(); - let v_V5966 = - v_V5966.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Key5964 = args[0].clone(); Ok({ let v_B5962 = v_B5962.clone(); let v_Key5964 = v_Key5964.clone(); let v_L5963 = v_L5963.clone(); let v_V5966 = v_V5966.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5965 = args[0].clone(); Ok({ let v_A = { let __t1529 = v_B5962.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1529])? }; { let __t1530 = v_B5962.clone(); let __t1557 = { let __t1531 = v_V5966.clone(); let __t1552 = { let __t1532 = v_A.clone(); let __t1551 = { let __t1533 = Value::sym(interp.intern("-->")); let __t1550 = { let __t1548 = { let __t1538 = { let __t1534 = Value::sym(interp.intern("list")); let __t1537 = { let __t1535 = v_A.clone(); let __t1536 = Value::nil(); rt::cons(&__t1535, &__t1536) }; rt::cons(&__t1534, &__t1537) }; let __t1547 = { let __t1539 = Value::sym(interp.intern("-->")); let __t1546 = { let __t1544 = { let __t1540 = Value::sym(interp.intern("list")); let __t1543 = { let __t1541 = v_A.clone(); let __t1542 = Value::nil(); rt::cons(&__t1541, &__t1542) }; rt::cons(&__t1540, &__t1543) }; let __t1545 = Value::nil(); rt::cons(&__t1544, &__t1545) }; rt::cons(&__t1539, &__t1546) }; rt::cons(&__t1538, &__t1547) }; let __t1549 = Value::nil(); rt::cons(&__t1548, &__t1549) }; rt::cons(&__t1533, &__t1550) }; rt::cons(&__t1532, &__t1551) }; let __t1553 = v_B5962.clone(); let __t1554 = v_L5963.clone(); let __t1555 = v_Key5964.clone(); let __t1556 = v_C5965.clone(); rt::apply_direct(interp, "is!", &[__t1531, __t1552, __t1553, __t1554, __t1555, __t1556])? }; rt::apply_direct(interp, "shen.gc", &[__t1530, __t1557])? } }) }, vec![v_B5962, v_Key5964, v_L5963, v_V5966], interp) }) }, vec![v_B5962, v_L5963, v_V5966], interp) - }) - }, - vec![v_B5962, v_V5966], - interp, - ) - }) - }, - vec![v_V5966], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1560 = { - let __t1559 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1559])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1528, __t1558, __t1560], - )? - }; - rt::apply_direct(interp, "set", &[__t1527, __t1561])? - }; - { - let _ = { - let __t1562 = Value::sym(interp.intern("shen.*sigf*")); - let __t1585 = { - let __t1563 = Value::sym(interp.intern("and")); - let __t1582 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5971 = args[0].clone(); - Ok({ - let v_V5971 = v_V5971.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5967 = args[0].clone(); - Ok({ - let v_B5967 = v_B5967.clone(); - let v_V5971 = v_V5971.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5968 = - args[0].clone(); - Ok({ - let v_B5967 = - v_B5967.clone(); - let v_L5968 = - v_L5968.clone(); - let v_V5971 = - v_V5971.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Key5969 = args[0].clone(); Ok({ let v_B5967 = v_B5967.clone(); let v_Key5969 = v_Key5969.clone(); let v_L5968 = v_L5968.clone(); let v_V5971 = v_V5971.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5970 = args[0].clone(); Ok({ let __t1564 = v_V5971.clone(); let __t1577 = { let __t1565 = Value::sym(interp.intern("boolean")); let __t1576 = { let __t1566 = Value::sym(interp.intern("-->")); let __t1575 = { let __t1573 = { let __t1567 = Value::sym(interp.intern("boolean")); let __t1572 = { let __t1568 = Value::sym(interp.intern("-->")); let __t1571 = { let __t1569 = Value::sym(interp.intern("boolean")); let __t1570 = Value::nil(); rt::cons(&__t1569, &__t1570) }; rt::cons(&__t1568, &__t1571) }; rt::cons(&__t1567, &__t1572) }; let __t1574 = Value::nil(); rt::cons(&__t1573, &__t1574) }; rt::cons(&__t1566, &__t1575) }; rt::cons(&__t1565, &__t1576) }; let __t1578 = v_B5967.clone(); let __t1579 = v_L5968.clone(); let __t1580 = v_Key5969.clone(); let __t1581 = v_C5970.clone(); rt::apply_direct(interp, "is!", &[__t1564, __t1577, __t1578, __t1579, __t1580, __t1581])? }) }, vec![v_B5967, v_Key5969, v_L5968, v_V5971], interp) }) }, vec![v_B5967, v_L5968, v_V5971], interp) - }) - }, - vec![v_B5967, v_V5971], - interp, - ) - }) - }, - vec![v_V5971], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1584 = { - let __t1583 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1583])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1563, __t1582, __t1584], - )? - }; - rt::apply_direct(interp, "set", &[__t1562, __t1585])? - }; - { - let _ = { - let __t1586 = Value::sym(interp.intern("shen.*sigf*")); - let __t1618 = { - let __t1587 = Value::sym(interp.intern("shen.app")); - let __t1615 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5976 = args[0].clone(); - Ok({ - let v_V5976 = v_V5976.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5972 = args[0].clone(); - Ok({ - let v_B5972 = - v_B5972.clone(); - let v_V5976 = - v_V5976.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_L5973 = - args[0].clone(); - Ok({ - let v_B5972 = - v_B5972 - .clone( - ); - let v_L5973 = - v_L5973 - .clone( - ); - let v_V5976 = - v_V5976 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_Key5974 = args[0].clone(); Ok({ let v_B5972 = v_B5972.clone(); let v_Key5974 = v_Key5974.clone(); let v_L5973 = v_L5973.clone(); let v_V5976 = v_V5976.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5975 = args[0].clone(); Ok({ let v_A = { let __t1588 = v_B5972.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1588])? }; { let __t1589 = v_B5972.clone(); let __t1614 = { let __t1590 = v_V5976.clone(); let __t1609 = { let __t1591 = v_A.clone(); let __t1608 = { let __t1592 = Value::sym(interp.intern("-->")); let __t1607 = { let __t1605 = { let __t1593 = Value::sym(interp.intern("string")); let __t1604 = { let __t1594 = Value::sym(interp.intern("-->")); let __t1603 = { let __t1601 = { let __t1595 = Value::sym(interp.intern("symbol")); let __t1600 = { let __t1596 = Value::sym(interp.intern("-->")); let __t1599 = { let __t1597 = Value::sym(interp.intern("string")); let __t1598 = Value::nil(); rt::cons(&__t1597, &__t1598) }; rt::cons(&__t1596, &__t1599) }; rt::cons(&__t1595, &__t1600) }; let __t1602 = Value::nil(); rt::cons(&__t1601, &__t1602) }; rt::cons(&__t1594, &__t1603) }; rt::cons(&__t1593, &__t1604) }; let __t1606 = Value::nil(); rt::cons(&__t1605, &__t1606) }; rt::cons(&__t1592, &__t1607) }; rt::cons(&__t1591, &__t1608) }; let __t1610 = v_B5972.clone(); let __t1611 = v_L5973.clone(); let __t1612 = v_Key5974.clone(); let __t1613 = v_C5975.clone(); rt::apply_direct(interp, "is!", &[__t1590, __t1609, __t1610, __t1611, __t1612, __t1613])? }; rt::apply_direct(interp, "shen.gc", &[__t1589, __t1614])? } }) }, vec![v_B5972, v_Key5974, v_L5973, v_V5976], interp) }) }, vec![v_B5972, v_L5973, v_V5976], interp) - }) - }, - vec![v_B5972, v_V5976], - interp, - ) - }) - }, - vec![v_V5976], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1617 = { - let __t1616 = - Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1616])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1587, __t1615, __t1617], - )? - }; - rt::apply_direct(interp, "set", &[__t1586, __t1618])? - }; - { - let _ = { - let __t1619 = Value::sym(interp.intern("shen.*sigf*")); - let __t1657 = { - let __t1620 = Value::sym(interp.intern("append")); - let __t1654 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5981 = args[0].clone(); - Ok({ - let v_V5981 = v_V5981.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5977 = - args[0].clone(); - Ok({ - let v_B5977 = - v_B5977.clone(); - let v_V5981 = - v_V5981.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_L5978 = args[0].clone(); Ok({ let v_B5977 = v_B5977.clone(); let v_L5978 = v_L5978.clone(); let v_V5981 = v_V5981.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key5979 = args[0].clone(); Ok({ let v_B5977 = v_B5977.clone(); let v_Key5979 = v_Key5979.clone(); let v_L5978 = v_L5978.clone(); let v_V5981 = v_V5981.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5980 = args[0].clone(); Ok({ let v_A = { let __t1621 = v_B5977.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1621])? }; { let __t1622 = v_B5977.clone(); let __t1653 = { let __t1623 = v_V5981.clone(); let __t1648 = { let __t1628 = { let __t1624 = Value::sym(interp.intern("list")); let __t1627 = { let __t1625 = v_A.clone(); let __t1626 = Value::nil(); rt::cons(&__t1625, &__t1626) }; rt::cons(&__t1624, &__t1627) }; let __t1647 = { let __t1629 = Value::sym(interp.intern("-->")); let __t1646 = { let __t1644 = { let __t1634 = { let __t1630 = Value::sym(interp.intern("list")); let __t1633 = { let __t1631 = v_A.clone(); let __t1632 = Value::nil(); rt::cons(&__t1631, &__t1632) }; rt::cons(&__t1630, &__t1633) }; let __t1643 = { let __t1635 = Value::sym(interp.intern("-->")); let __t1642 = { let __t1640 = { let __t1636 = Value::sym(interp.intern("list")); let __t1639 = { let __t1637 = v_A.clone(); let __t1638 = Value::nil(); rt::cons(&__t1637, &__t1638) }; rt::cons(&__t1636, &__t1639) }; let __t1641 = Value::nil(); rt::cons(&__t1640, &__t1641) }; rt::cons(&__t1635, &__t1642) }; rt::cons(&__t1634, &__t1643) }; let __t1645 = Value::nil(); rt::cons(&__t1644, &__t1645) }; rt::cons(&__t1629, &__t1646) }; rt::cons(&__t1628, &__t1647) }; let __t1649 = v_B5977.clone(); let __t1650 = v_L5978.clone(); let __t1651 = v_Key5979.clone(); let __t1652 = v_C5980.clone(); rt::apply_direct(interp, "is!", &[__t1623, __t1648, __t1649, __t1650, __t1651, __t1652])? }; rt::apply_direct(interp, "shen.gc", &[__t1622, __t1653])? } }) }, vec![v_B5977, v_Key5979, v_L5978, v_V5981], interp) }) }, vec![v_B5977, v_L5978, v_V5981], interp) }) }, vec![v_B5977, v_V5981], interp) - }) - }, - vec![v_V5981], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1656 = { - let __t1655 = - Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1655])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1620, __t1654, __t1656], - )? - }; - rt::apply_direct(interp, "set", &[__t1619, __t1657])? - }; - { - let _ = { - let __t1658 = - Value::sym(interp.intern("shen.*sigf*")); - let __t1678 = { - let __t1659 = - Value::sym(interp.intern("arity")); - let __t1675 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5986 = args[0].clone(); - Ok({ - let v_V5986 = v_V5986.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5982 = - args[0].clone(); - Ok({ - let v_B5982 = - v_B5982.clone(); - let v_V5986 = - v_V5986.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_L5983 = args[0].clone(); Ok({ let v_B5982 = v_B5982.clone(); let v_L5983 = v_L5983.clone(); let v_V5986 = v_V5986.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key5984 = args[0].clone(); Ok({ let v_B5982 = v_B5982.clone(); let v_Key5984 = v_Key5984.clone(); let v_L5983 = v_L5983.clone(); let v_V5986 = v_V5986.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5985 = args[0].clone(); Ok({ let v_A = { let __t1660 = v_B5982.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1660])? }; { let __t1661 = v_B5982.clone(); let __t1674 = { let __t1662 = v_V5986.clone(); let __t1669 = { let __t1663 = v_A.clone(); let __t1668 = { let __t1664 = Value::sym(interp.intern("-->")); let __t1667 = { let __t1665 = Value::sym(interp.intern("number")); let __t1666 = Value::nil(); rt::cons(&__t1665, &__t1666) }; rt::cons(&__t1664, &__t1667) }; rt::cons(&__t1663, &__t1668) }; let __t1670 = v_B5982.clone(); let __t1671 = v_L5983.clone(); let __t1672 = v_Key5984.clone(); let __t1673 = v_C5985.clone(); rt::apply_direct(interp, "is!", &[__t1662, __t1669, __t1670, __t1671, __t1672, __t1673])? }; rt::apply_direct(interp, "shen.gc", &[__t1661, __t1674])? } }) }, vec![v_B5982, v_Key5984, v_L5983, v_V5986], interp) }) }, vec![v_B5982, v_L5983, v_V5986], interp) }) }, vec![v_B5982, v_V5986], interp) - }) - }, - vec![v_V5986], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1677 = { - let __t1676 = Value::sym( - interp.intern("shen.*sigf*"), - ); - rt::apply_direct( - interp, - "value", - &[__t1676], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1659, __t1675, __t1677], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1658, __t1678], - )? - }; - { - let _ = { - let __t1679 = - Value::sym(interp.intern("shen.*sigf*")); - let __t1717 = { - let __t1680 = - Value::sym(interp.intern("assoc")); - let __t1714 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5991 = args[0].clone(); - Ok({ - let v_V5991 = - v_V5991.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_B5987 = - args[0].clone(); - Ok({ - let v_B5987 = - v_B5987 - .clone( - ); - let v_V5991 = - v_V5991 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_L5988 = args[0].clone(); Ok({ let v_B5987 = v_B5987.clone(); let v_L5988 = v_L5988.clone(); let v_V5991 = v_V5991.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key5989 = args[0].clone(); Ok({ let v_B5987 = v_B5987.clone(); let v_Key5989 = v_Key5989.clone(); let v_L5988 = v_L5988.clone(); let v_V5991 = v_V5991.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5990 = args[0].clone(); Ok({ let v_A = { let __t1681 = v_B5987.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1681])? }; { let __t1682 = v_B5987.clone(); let __t1713 = { let __t1683 = v_V5991.clone(); let __t1708 = { let __t1684 = v_A.clone(); let __t1707 = { let __t1685 = Value::sym(interp.intern("-->")); let __t1706 = { let __t1704 = { let __t1694 = { let __t1686 = Value::sym(interp.intern("list")); let __t1693 = { let __t1691 = { let __t1687 = Value::sym(interp.intern("list")); let __t1690 = { let __t1688 = v_A.clone(); let __t1689 = Value::nil(); rt::cons(&__t1688, &__t1689) }; rt::cons(&__t1687, &__t1690) }; let __t1692 = Value::nil(); rt::cons(&__t1691, &__t1692) }; rt::cons(&__t1686, &__t1693) }; let __t1703 = { let __t1695 = Value::sym(interp.intern("-->")); let __t1702 = { let __t1700 = { let __t1696 = Value::sym(interp.intern("list")); let __t1699 = { let __t1697 = v_A.clone(); let __t1698 = Value::nil(); rt::cons(&__t1697, &__t1698) }; rt::cons(&__t1696, &__t1699) }; let __t1701 = Value::nil(); rt::cons(&__t1700, &__t1701) }; rt::cons(&__t1695, &__t1702) }; rt::cons(&__t1694, &__t1703) }; let __t1705 = Value::nil(); rt::cons(&__t1704, &__t1705) }; rt::cons(&__t1685, &__t1706) }; rt::cons(&__t1684, &__t1707) }; let __t1709 = v_B5987.clone(); let __t1710 = v_L5988.clone(); let __t1711 = v_Key5989.clone(); let __t1712 = v_C5990.clone(); rt::apply_direct(interp, "is!", &[__t1683, __t1708, __t1709, __t1710, __t1711, __t1712])? }; rt::apply_direct(interp, "shen.gc", &[__t1682, __t1713])? } }) }, vec![v_B5987, v_Key5989, v_L5988, v_V5991], interp) }) }, vec![v_B5987, v_L5988, v_V5991], interp) }) }, vec![v_B5987, v_V5991], interp) - }) - }, - vec![v_V5991], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1716 = { - let __t1715 = Value::sym( - interp.intern("shen.*sigf*"), - ); - rt::apply_direct( - interp, - "value", - &[__t1715], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1680, __t1714, __t1716], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1679, __t1717], - )? - }; - { - let _ = { - let __t1718 = Value::sym( - interp.intern("shen.*sigf*"), - ); - let __t1738 = { - let __t1719 = - Value::sym(interp.intern("atom?")); - let __t1735 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V5996 = - args[0].clone(); - Ok({ - let v_V5996 = - v_V5996.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_B5992 = args[0].clone(); Ok({ let v_B5992 = v_B5992.clone(); let v_V5996 = v_V5996.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L5993 = args[0].clone(); Ok({ let v_B5992 = v_B5992.clone(); let v_L5993 = v_L5993.clone(); let v_V5996 = v_V5996.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key5994 = args[0].clone(); Ok({ let v_B5992 = v_B5992.clone(); let v_Key5994 = v_Key5994.clone(); let v_L5993 = v_L5993.clone(); let v_V5996 = v_V5996.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C5995 = args[0].clone(); Ok({ let v_A = { let __t1720 = v_B5992.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1720])? }; { let __t1721 = v_B5992.clone(); let __t1734 = { let __t1722 = v_V5996.clone(); let __t1729 = { let __t1723 = v_A.clone(); let __t1728 = { let __t1724 = Value::sym(interp.intern("-->")); let __t1727 = { let __t1725 = Value::sym(interp.intern("boolean")); let __t1726 = Value::nil(); rt::cons(&__t1725, &__t1726) }; rt::cons(&__t1724, &__t1727) }; rt::cons(&__t1723, &__t1728) }; let __t1730 = v_B5992.clone(); let __t1731 = v_L5993.clone(); let __t1732 = v_Key5994.clone(); let __t1733 = v_C5995.clone(); rt::apply_direct(interp, "is!", &[__t1722, __t1729, __t1730, __t1731, __t1732, __t1733])? }; rt::apply_direct(interp, "shen.gc", &[__t1721, __t1734])? } }) }, vec![v_B5992, v_Key5994, v_L5993, v_V5996], interp) }) }, vec![v_B5992, v_L5993, v_V5996], interp) }) }, vec![v_B5992, v_V5996], interp) }) }, vec![v_V5996], interp) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1737 = { - let __t1736 = Value::sym( - interp.intern("shen.*sigf*"), - ); - rt::apply_direct( - interp, - "value", - &[__t1736], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1719, __t1735, __t1737], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1718, __t1738], - )? - }; - { - let _ = { - let __t1739 = Value::sym( - interp.intern("shen.*sigf*"), - ); - let __t1759 = { - let __t1740 = Value::sym( - interp.intern("boolean?"), - ); - let __t1756 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V6001 = - args[0].clone(); - Ok({ - let v_V6001 = - v_V6001.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_B5997 = args[0].clone(); Ok({ let v_B5997 = v_B5997.clone(); let v_V6001 = v_V6001.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L5998 = args[0].clone(); Ok({ let v_B5997 = v_B5997.clone(); let v_L5998 = v_L5998.clone(); let v_V6001 = v_V6001.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key5999 = args[0].clone(); Ok({ let v_B5997 = v_B5997.clone(); let v_Key5999 = v_Key5999.clone(); let v_L5998 = v_L5998.clone(); let v_V6001 = v_V6001.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6000 = args[0].clone(); Ok({ let v_A = { let __t1741 = v_B5997.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1741])? }; { let __t1742 = v_B5997.clone(); let __t1755 = { let __t1743 = v_V6001.clone(); let __t1750 = { let __t1744 = v_A.clone(); let __t1749 = { let __t1745 = Value::sym(interp.intern("-->")); let __t1748 = { let __t1746 = Value::sym(interp.intern("boolean")); let __t1747 = Value::nil(); rt::cons(&__t1746, &__t1747) }; rt::cons(&__t1745, &__t1748) }; rt::cons(&__t1744, &__t1749) }; let __t1751 = v_B5997.clone(); let __t1752 = v_L5998.clone(); let __t1753 = v_Key5999.clone(); let __t1754 = v_C6000.clone(); rt::apply_direct(interp, "is!", &[__t1743, __t1750, __t1751, __t1752, __t1753, __t1754])? }; rt::apply_direct(interp, "shen.gc", &[__t1742, __t1755])? } }) }, vec![v_B5997, v_Key5999, v_L5998, v_V6001], interp) }) }, vec![v_B5997, v_L5998, v_V6001], interp) }) }, vec![v_B5997, v_V6001], interp) }) }, vec![v_V6001], interp) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1758 = { - let __t1757 = Value::sym( - interp - .intern("shen.*sigf*"), - ); - rt::apply_direct( - interp, - "value", - &[__t1757], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[__t1740, __t1756, __t1758], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1739, __t1759], - )? - }; - { - let _ = { - let __t1760 = Value::sym( - interp.intern("shen.*sigf*"), - ); - let __t1777 = { - let __t1761 = Value::sym( - interp.intern("bootstrap"), - ); - let __t1774 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_V6006 = - args[0].clone(); - Ok({ - let v_V6006 = - v_V6006 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_B6002 = args[0].clone(); Ok({ let v_B6002 = v_B6002.clone(); let v_V6006 = v_V6006.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6003 = args[0].clone(); Ok({ let v_B6002 = v_B6002.clone(); let v_L6003 = v_L6003.clone(); let v_V6006 = v_V6006.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6004 = args[0].clone(); Ok({ let v_B6002 = v_B6002.clone(); let v_Key6004 = v_Key6004.clone(); let v_L6003 = v_L6003.clone(); let v_V6006 = v_V6006.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6005 = args[0].clone(); Ok({ let __t1762 = v_V6006.clone(); let __t1769 = { let __t1763 = Value::sym(interp.intern("string")); let __t1768 = { let __t1764 = Value::sym(interp.intern("-->")); let __t1767 = { let __t1765 = Value::sym(interp.intern("string")); let __t1766 = Value::nil(); rt::cons(&__t1765, &__t1766) }; rt::cons(&__t1764, &__t1767) }; rt::cons(&__t1763, &__t1768) }; let __t1770 = v_B6002.clone(); let __t1771 = v_L6003.clone(); let __t1772 = v_Key6004.clone(); let __t1773 = v_C6005.clone(); rt::apply_direct(interp, "is!", &[__t1762, __t1769, __t1770, __t1771, __t1772, __t1773])? }) }, vec![v_B6002, v_Key6004, v_L6003, v_V6006], interp) }) }, vec![v_B6002, v_L6003, v_V6006], interp) }) }, vec![v_B6002, v_V6006], interp) }) }, vec![v_V6006], interp) - }) - }, - Vec::new(), - interp, - ) - }; - let __t1776 = { - let __t1775 = Value::sym( - interp.intern( - "shen.*sigf*", - ), - ); - rt::apply_direct( - interp, - "value", - &[__t1775], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[ - __t1761, __t1774, - __t1776, - ], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1760, __t1777], - )? - }; - { - let _ = { - let __t1778 = Value::sym( - interp - .intern("shen.*sigf*"), - ); - let __t1795 = { - let __t1779 = Value::sym( - interp.intern("bound?"), - ); - let __t1792 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6011 = args[0].clone(); Ok({ let v_V6011 = v_V6011.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6007 = args[0].clone(); Ok({ let v_B6007 = v_B6007.clone(); let v_V6011 = v_V6011.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6008 = args[0].clone(); Ok({ let v_B6007 = v_B6007.clone(); let v_L6008 = v_L6008.clone(); let v_V6011 = v_V6011.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6009 = args[0].clone(); Ok({ let v_B6007 = v_B6007.clone(); let v_Key6009 = v_Key6009.clone(); let v_L6008 = v_L6008.clone(); let v_V6011 = v_V6011.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6010 = args[0].clone(); Ok({ let __t1780 = v_V6011.clone(); let __t1787 = { let __t1781 = Value::sym(interp.intern("symbol")); let __t1786 = { let __t1782 = Value::sym(interp.intern("-->")); let __t1785 = { let __t1783 = Value::sym(interp.intern("boolean")); let __t1784 = Value::nil(); rt::cons(&__t1783, &__t1784) }; rt::cons(&__t1782, &__t1785) }; rt::cons(&__t1781, &__t1786) }; let __t1788 = v_B6007.clone(); let __t1789 = v_L6008.clone(); let __t1790 = v_Key6009.clone(); let __t1791 = v_C6010.clone(); rt::apply_direct(interp, "is!", &[__t1780, __t1787, __t1788, __t1789, __t1790, __t1791])? }) }, vec![v_B6007, v_Key6009, v_L6008, v_V6011], interp) }) }, vec![v_B6007, v_L6008, v_V6011], interp) }) }, vec![v_B6007, v_V6011], interp) }) }, vec![v_V6011], interp) }) }, Vec::new(), interp) - }; - let __t1794 = { - let __t1793 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct( - interp, - "value", - &[__t1793], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[ - __t1779, __t1792, - __t1794, - ], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1778, __t1795], - )? - }; - { - let _ = { - let __t1796 = Value::sym( - interp.intern( - "shen.*sigf*", - ), - ); - let __t1820 = { - let __t1797 = Value::sym(interp.intern("shen.ccons?")); - let __t1817 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6016 = args[0].clone(); Ok({ let v_V6016 = v_V6016.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6012 = args[0].clone(); Ok({ let v_B6012 = v_B6012.clone(); let v_V6016 = v_V6016.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6013 = args[0].clone(); Ok({ let v_B6012 = v_B6012.clone(); let v_L6013 = v_L6013.clone(); let v_V6016 = v_V6016.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6014 = args[0].clone(); Ok({ let v_B6012 = v_B6012.clone(); let v_Key6014 = v_Key6014.clone(); let v_L6013 = v_L6013.clone(); let v_V6016 = v_V6016.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6015 = args[0].clone(); Ok({ let v_A = { let __t1798 = v_B6012.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1798])? }; { let __t1799 = v_B6012.clone(); let __t1816 = { let __t1800 = v_V6016.clone(); let __t1811 = { let __t1805 = { let __t1801 = Value::sym(interp.intern("list")); let __t1804 = { let __t1802 = v_A.clone(); let __t1803 = Value::nil(); rt::cons(&__t1802, &__t1803) }; rt::cons(&__t1801, &__t1804) }; let __t1810 = { let __t1806 = Value::sym(interp.intern("-->")); let __t1809 = { let __t1807 = Value::sym(interp.intern("boolean")); let __t1808 = Value::nil(); rt::cons(&__t1807, &__t1808) }; rt::cons(&__t1806, &__t1809) }; rt::cons(&__t1805, &__t1810) }; let __t1812 = v_B6012.clone(); let __t1813 = v_L6013.clone(); let __t1814 = v_Key6014.clone(); let __t1815 = v_C6015.clone(); rt::apply_direct(interp, "is!", &[__t1800, __t1811, __t1812, __t1813, __t1814, __t1815])? }; rt::apply_direct(interp, "shen.gc", &[__t1799, __t1816])? } }) }, vec![v_B6012, v_Key6014, v_L6013, v_V6016], interp) }) }, vec![v_B6012, v_L6013, v_V6016], interp) }) }, vec![v_B6012, v_V6016], interp) }) }, vec![v_V6016], interp) }) }, Vec::new(), interp) - }; - let __t1819 = { - let __t1818 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct( - interp, - "value", - &[__t1818], - )? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[ - __t1797, - __t1817, - __t1819, - ], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1796, __t1820], - )? - }; - { - let _ = { - let __t1821 = Value::sym(interp.intern("shen.*sigf*")); - let __t1838 = { - let __t1822 = - Value::sym( - interp - .intern( - "cd", - ), - ); - let __t1835 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6021 = args[0].clone(); Ok({ let v_V6021 = v_V6021.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6017 = args[0].clone(); Ok({ let v_B6017 = v_B6017.clone(); let v_V6021 = v_V6021.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6018 = args[0].clone(); Ok({ let v_B6017 = v_B6017.clone(); let v_L6018 = v_L6018.clone(); let v_V6021 = v_V6021.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6019 = args[0].clone(); Ok({ let v_B6017 = v_B6017.clone(); let v_Key6019 = v_Key6019.clone(); let v_L6018 = v_L6018.clone(); let v_V6021 = v_V6021.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6020 = args[0].clone(); Ok({ let __t1823 = v_V6021.clone(); let __t1830 = { let __t1824 = Value::sym(interp.intern("string")); let __t1829 = { let __t1825 = Value::sym(interp.intern("-->")); let __t1828 = { let __t1826 = Value::sym(interp.intern("string")); let __t1827 = Value::nil(); rt::cons(&__t1826, &__t1827) }; rt::cons(&__t1825, &__t1828) }; rt::cons(&__t1824, &__t1829) }; let __t1831 = v_B6017.clone(); let __t1832 = v_L6018.clone(); let __t1833 = v_Key6019.clone(); let __t1834 = v_C6020.clone(); rt::apply_direct(interp, "is!", &[__t1823, __t1830, __t1831, __t1832, __t1833, __t1834])? }) }, vec![v_B6017, v_Key6019, v_L6018, v_V6021], interp) }) }, vec![v_B6017, v_L6018, v_V6021], interp) }) }, vec![v_B6017, v_V6021], interp) }) }, vec![v_V6021], interp) }) }, Vec::new(), interp) - }; - let __t1837 = { - let __t1836 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1836])? - }; - rt::apply_direct( - interp, - "shen.assoc->", - &[ - __t1822, - __t1835, - __t1837, - ], - )? - }; - rt::apply_direct( - interp, - "set", - &[__t1821, __t1838], - )? - }; - { - let _ = { - let __t1839 = Value::sym(interp.intern("shen.*sigf*")); - let __t1870 = { - let __t1840 = Value::sym(interp.intern("close")); - let __t1867 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6026 = args[0].clone(); Ok({ let v_V6026 = v_V6026.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6022 = args[0].clone(); Ok({ let v_B6022 = v_B6022.clone(); let v_V6026 = v_V6026.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6023 = args[0].clone(); Ok({ let v_B6022 = v_B6022.clone(); let v_L6023 = v_L6023.clone(); let v_V6026 = v_V6026.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6024 = args[0].clone(); Ok({ let v_B6022 = v_B6022.clone(); let v_Key6024 = v_Key6024.clone(); let v_L6023 = v_L6023.clone(); let v_V6026 = v_V6026.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6025 = args[0].clone(); Ok({ let v_A = { let __t1841 = v_B6022.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1841])? }; { let __t1842 = v_B6022.clone(); let __t1866 = { let v_B = { let __t1843 = v_B6022.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1843])? }; { let __t1844 = v_B6022.clone(); let __t1865 = { let __t1845 = v_V6026.clone(); let __t1860 = { let __t1850 = { let __t1846 = Value::sym(interp.intern("stream")); let __t1849 = { let __t1847 = v_A.clone(); let __t1848 = Value::nil(); rt::cons(&__t1847, &__t1848) }; rt::cons(&__t1846, &__t1849) }; let __t1859 = { let __t1851 = Value::sym(interp.intern("-->")); let __t1858 = { let __t1856 = { let __t1852 = Value::sym(interp.intern("list")); let __t1855 = { let __t1853 = v_B.clone(); let __t1854 = Value::nil(); rt::cons(&__t1853, &__t1854) }; rt::cons(&__t1852, &__t1855) }; let __t1857 = Value::nil(); rt::cons(&__t1856, &__t1857) }; rt::cons(&__t1851, &__t1858) }; rt::cons(&__t1850, &__t1859) }; let __t1861 = v_B6022.clone(); let __t1862 = v_L6023.clone(); let __t1863 = v_Key6024.clone(); let __t1864 = v_C6025.clone(); rt::apply_direct(interp, "is!", &[__t1845, __t1860, __t1861, __t1862, __t1863, __t1864])? }; rt::apply_direct(interp, "shen.gc", &[__t1844, __t1865])? } }; rt::apply_direct(interp, "shen.gc", &[__t1842, __t1866])? } }) }, vec![v_B6022, v_Key6024, v_L6023, v_V6026], interp) }) }, vec![v_B6022, v_L6023, v_V6026], interp) }) }, vec![v_B6022, v_V6026], interp) }) }, vec![v_V6026], interp) }) }, Vec::new(), interp) - }; - let __t1869 = { - let __t1868 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1868])? - }; - rt::apply_direct(interp, "shen.assoc->", &[__t1840, __t1867, __t1869])? - }; - rt::apply_direct( - interp, - "set", - &[ - __t1839, - __t1870, - ], - )? - }; - { - let _ = { - let __t1871 = Value::sym(interp.intern("shen.*sigf*")); - let __t1894 = { - let __t1872 = Value::sym(interp.intern("cn")); - let __t1891 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6031 = args[0].clone(); Ok({ let v_V6031 = v_V6031.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6027 = args[0].clone(); Ok({ let v_B6027 = v_B6027.clone(); let v_V6031 = v_V6031.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6028 = args[0].clone(); Ok({ let v_B6027 = v_B6027.clone(); let v_L6028 = v_L6028.clone(); let v_V6031 = v_V6031.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6029 = args[0].clone(); Ok({ let v_B6027 = v_B6027.clone(); let v_Key6029 = v_Key6029.clone(); let v_L6028 = v_L6028.clone(); let v_V6031 = v_V6031.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6030 = args[0].clone(); Ok({ let __t1873 = v_V6031.clone(); let __t1886 = { let __t1874 = Value::sym(interp.intern("string")); let __t1885 = { let __t1875 = Value::sym(interp.intern("-->")); let __t1884 = { let __t1882 = { let __t1876 = Value::sym(interp.intern("string")); let __t1881 = { let __t1877 = Value::sym(interp.intern("-->")); let __t1880 = { let __t1878 = Value::sym(interp.intern("string")); let __t1879 = Value::nil(); rt::cons(&__t1878, &__t1879) }; rt::cons(&__t1877, &__t1880) }; rt::cons(&__t1876, &__t1881) }; let __t1883 = Value::nil(); rt::cons(&__t1882, &__t1883) }; rt::cons(&__t1875, &__t1884) }; rt::cons(&__t1874, &__t1885) }; let __t1887 = v_B6027.clone(); let __t1888 = v_L6028.clone(); let __t1889 = v_Key6029.clone(); let __t1890 = v_C6030.clone(); rt::apply_direct(interp, "is!", &[__t1873, __t1886, __t1887, __t1888, __t1889, __t1890])? }) }, vec![v_B6027, v_Key6029, v_L6028, v_V6031], interp) }) }, vec![v_B6027, v_L6028, v_V6031], interp) }) }, vec![v_B6027, v_V6031], interp) }) }, vec![v_V6031], interp) }) }, Vec::new(), interp) - }; - let __t1893 = { - let __t1892 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1892])? - }; - rt::apply_direct(interp, "shen.assoc->", &[__t1872, __t1891, __t1893])? - }; - rt::apply_direct(interp, "set", &[__t1871, __t1894])? - }; - { - let _ = { - let __t1895 = Value::sym(interp.intern("shen.*sigf*")); - let __t1948 = { - let __t1896 = Value::sym(interp.intern("compile")); - let __t1945 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_V6036 = args[0].clone(); Ok({ let v_V6036 = v_V6036.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6032 = args[0].clone(); Ok({ let v_B6032 = v_B6032.clone(); let v_V6036 = v_V6036.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6033 = args[0].clone(); Ok({ let v_B6032 = v_B6032.clone(); let v_L6033 = v_L6033.clone(); let v_V6036 = v_V6036.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6034 = args[0].clone(); Ok({ let v_B6032 = v_B6032.clone(); let v_Key6034 = v_Key6034.clone(); let v_L6033 = v_L6033.clone(); let v_V6036 = v_V6036.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6035 = args[0].clone(); Ok({ let v_A = { let __t1897 = v_B6032.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1897])? }; { let __t1898 = v_B6032.clone(); let __t1944 = { let v_B = { let __t1899 = v_B6032.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1899])? }; { let __t1900 = v_B6032.clone(); let __t1943 = { let __t1901 = v_V6036.clone(); let __t1938 = { let __t1922 = { let __t1906 = { let __t1902 = Value::sym(interp.intern("list")); let __t1905 = { let __t1903 = v_A.clone(); let __t1904 = Value::nil(); rt::cons(&__t1903, &__t1904) }; rt::cons(&__t1902, &__t1905) }; let __t1921 = { let __t1907 = Value::sym(interp.intern("-->")); let __t1920 = { let __t1918 = { let __t1908 = Value::sym(interp.intern("str")); let __t1917 = { let __t1913 = { let __t1909 = Value::sym(interp.intern("list")); let __t1912 = { let __t1910 = v_A.clone(); let __t1911 = Value::nil(); rt::cons(&__t1910, &__t1911) }; rt::cons(&__t1909, &__t1912) }; let __t1916 = { let __t1914 = v_B.clone(); let __t1915 = Value::nil(); rt::cons(&__t1914, &__t1915) }; rt::cons(&__t1913, &__t1916) }; rt::cons(&__t1908, &__t1917) }; let __t1919 = Value::nil(); rt::cons(&__t1918, &__t1919) }; rt::cons(&__t1907, &__t1920) }; rt::cons(&__t1906, &__t1921) }; let __t1937 = { let __t1923 = Value::sym(interp.intern("-->")); let __t1936 = { let __t1934 = { let __t1928 = { let __t1924 = Value::sym(interp.intern("list")); let __t1927 = { let __t1925 = v_A.clone(); let __t1926 = Value::nil(); rt::cons(&__t1925, &__t1926) }; rt::cons(&__t1924, &__t1927) }; let __t1933 = { let __t1929 = Value::sym(interp.intern("-->")); let __t1932 = { let __t1930 = v_B.clone(); let __t1931 = Value::nil(); rt::cons(&__t1930, &__t1931) }; rt::cons(&__t1929, &__t1932) }; rt::cons(&__t1928, &__t1933) }; let __t1935 = Value::nil(); rt::cons(&__t1934, &__t1935) }; rt::cons(&__t1923, &__t1936) }; rt::cons(&__t1922, &__t1937) }; let __t1939 = v_B6032.clone(); let __t1940 = v_L6033.clone(); let __t1941 = v_Key6034.clone(); let __t1942 = v_C6035.clone(); rt::apply_direct(interp, "is!", &[__t1901, __t1938, __t1939, __t1940, __t1941, __t1942])? }; rt::apply_direct(interp, "shen.gc", &[__t1900, __t1943])? } }; rt::apply_direct(interp, "shen.gc", &[__t1898, __t1944])? } }) }, vec![v_B6032, v_Key6034, v_L6033, v_V6036], interp) }) }, vec![v_B6032, v_L6033, v_V6036], interp) }) }, vec![v_B6032, v_V6036], interp) }) }, vec![v_V6036], interp) }) }, Vec::new(), interp) - }; - let __t1947 = { - let __t1946 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t1946])? - }; - rt::apply_direct(interp, "shen.assoc->", &[__t1896, __t1945, __t1947])? - }; - rt::apply_direct(interp, "set", &[__t1895, __t1948])? - }; - { - let _ = { - let __t1949 = Value::sym(interp.intern("shen.*sigf*")); - let __t1969 = { - let __t1950 = Value::sym(interp.intern("cons?")); - let __t1966 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6041 = args[0].clone(); Ok({ let v_V6041 = v_V6041.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6037 = args[0].clone(); Ok({ let v_B6037 = v_B6037.clone(); let v_V6041 = v_V6041.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6038 = args[0].clone(); Ok({ let v_B6037 = v_B6037.clone(); let v_L6038 = v_L6038.clone(); let v_V6041 = v_V6041.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6039 = args[0].clone(); Ok({ let v_B6037 = v_B6037.clone(); let v_Key6039 = v_Key6039.clone(); let v_L6038 = v_L6038.clone(); let v_V6041 = v_V6041.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6040 = args[0].clone(); Ok({ let v_A = { let __t1951 = v_B6037.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1951])? }; { let __t1952 = v_B6037.clone(); let __t1965 = { let __t1953 = v_V6041.clone(); let __t1960 = { let __t1954 = v_A.clone(); let __t1959 = { let __t1955 = Value::sym(interp.intern("-->")); let __t1958 = { let __t1956 = Value::sym(interp.intern("boolean")); let __t1957 = Value::nil(); rt::cons(&__t1956, &__t1957) }; rt::cons(&__t1955, &__t1958) }; rt::cons(&__t1954, &__t1959) }; let __t1961 = v_B6037.clone(); let __t1962 = v_L6038.clone(); let __t1963 = v_Key6039.clone(); let __t1964 = v_C6040.clone(); rt::apply_direct(interp, "is!", &[__t1953, __t1960, __t1961, __t1962, __t1963, __t1964])? }; rt::apply_direct(interp, "shen.gc", &[__t1952, __t1965])? } }) }, vec![v_B6037, v_Key6039, v_L6038, v_V6041], interp) }) }, vec![v_B6037, v_L6038, v_V6041], interp) }) }, vec![v_B6037, v_V6041], interp) }) }, vec![v_V6041], interp) }) }, Vec::new(), interp) }; - let __t1968 = { let __t1967 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t1967])? }; - rt::apply_direct(interp, "shen.assoc->", &[__t1950, __t1966, __t1968])? - }; - rt::apply_direct(interp, "set", &[__t1949, __t1969])? - }; - { - let _ = { - let __t1970 = Value::sym(interp.intern("shen.*sigf*")); - let __t1989 = { let __t1971 = Value::sym(interp.intern("datatypes")); let __t1986 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6046 = args[0].clone(); Ok({ let v_V6046 = v_V6046.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6042 = args[0].clone(); Ok({ let v_B6042 = v_B6042.clone(); let v_V6046 = v_V6046.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6043 = args[0].clone(); Ok({ let v_B6042 = v_B6042.clone(); let v_L6043 = v_L6043.clone(); let v_V6046 = v_V6046.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6044 = args[0].clone(); Ok({ let v_B6042 = v_B6042.clone(); let v_Key6044 = v_Key6044.clone(); let v_L6043 = v_L6043.clone(); let v_V6046 = v_V6046.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6045 = args[0].clone(); Ok({ let __t1972 = v_V6046.clone(); let __t1981 = { let __t1973 = Value::sym(interp.intern("-->")); let __t1980 = { let __t1978 = { let __t1974 = Value::sym(interp.intern("list")); let __t1977 = { let __t1975 = Value::sym(interp.intern("symbol")); let __t1976 = Value::nil(); rt::cons(&__t1975, &__t1976) }; rt::cons(&__t1974, &__t1977) }; let __t1979 = Value::nil(); rt::cons(&__t1978, &__t1979) }; rt::cons(&__t1973, &__t1980) }; let __t1982 = v_B6042.clone(); let __t1983 = v_L6043.clone(); let __t1984 = v_Key6044.clone(); let __t1985 = v_C6045.clone(); rt::apply_direct(interp, "is!", &[__t1972, __t1981, __t1982, __t1983, __t1984, __t1985])? }) }, vec![v_B6042, v_Key6044, v_L6043, v_V6046], interp) }) }, vec![v_B6042, v_L6043, v_V6046], interp) }) }, vec![v_B6042, v_V6046], interp) }) }, vec![v_V6046], interp) }) }, Vec::new(), interp) }; let __t1988 = { let __t1987 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t1987])? }; rt::apply_direct(interp, "shen.assoc->", &[__t1971, __t1986, __t1988])? }; - rt::apply_direct(interp, "set", &[__t1970, __t1989])? - }; - { - let _ = { let __t1990 = Value::sym(interp.intern("shen.*sigf*")); let __t2007 = { let __t1991 = Value::sym(interp.intern("destroy")); let __t2004 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6051 = args[0].clone(); Ok({ let v_V6051 = v_V6051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6047 = args[0].clone(); Ok({ let v_B6047 = v_B6047.clone(); let v_V6051 = v_V6051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6048 = args[0].clone(); Ok({ let v_B6047 = v_B6047.clone(); let v_L6048 = v_L6048.clone(); let v_V6051 = v_V6051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6049 = args[0].clone(); Ok({ let v_B6047 = v_B6047.clone(); let v_Key6049 = v_Key6049.clone(); let v_L6048 = v_L6048.clone(); let v_V6051 = v_V6051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6050 = args[0].clone(); Ok({ let __t1992 = v_V6051.clone(); let __t1999 = { let __t1993 = Value::sym(interp.intern("symbol")); let __t1998 = { let __t1994 = Value::sym(interp.intern("-->")); let __t1997 = { let __t1995 = Value::sym(interp.intern("symbol")); let __t1996 = Value::nil(); rt::cons(&__t1995, &__t1996) }; rt::cons(&__t1994, &__t1997) }; rt::cons(&__t1993, &__t1998) }; let __t2000 = v_B6047.clone(); let __t2001 = v_L6048.clone(); let __t2002 = v_Key6049.clone(); let __t2003 = v_C6050.clone(); rt::apply_direct(interp, "is!", &[__t1992, __t1999, __t2000, __t2001, __t2002, __t2003])? }) }, vec![v_B6047, v_Key6049, v_L6048, v_V6051], interp) }) }, vec![v_B6047, v_L6048, v_V6051], interp) }) }, vec![v_B6047, v_V6051], interp) }) }, vec![v_V6051], interp) }) }, Vec::new(), interp) }; let __t2006 = { let __t2005 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2005])? }; rt::apply_direct(interp, "shen.assoc->", &[__t1991, __t2004, __t2006])? }; rt::apply_direct(interp, "set", &[__t1990, __t2007])? }; - { - let _ = { let __t2008 = Value::sym(interp.intern("shen.*sigf*")); let __t2046 = { let __t2009 = Value::sym(interp.intern("difference")); let __t2043 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6056 = args[0].clone(); Ok({ let v_V6056 = v_V6056.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6052 = args[0].clone(); Ok({ let v_B6052 = v_B6052.clone(); let v_V6056 = v_V6056.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6053 = args[0].clone(); Ok({ let v_B6052 = v_B6052.clone(); let v_L6053 = v_L6053.clone(); let v_V6056 = v_V6056.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6054 = args[0].clone(); Ok({ let v_B6052 = v_B6052.clone(); let v_Key6054 = v_Key6054.clone(); let v_L6053 = v_L6053.clone(); let v_V6056 = v_V6056.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6055 = args[0].clone(); Ok({ let v_A = { let __t2010 = v_B6052.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2010])? }; { let __t2011 = v_B6052.clone(); let __t2042 = { let __t2012 = v_V6056.clone(); let __t2037 = { let __t2017 = { let __t2013 = Value::sym(interp.intern("list")); let __t2016 = { let __t2014 = v_A.clone(); let __t2015 = Value::nil(); rt::cons(&__t2014, &__t2015) }; rt::cons(&__t2013, &__t2016) }; let __t2036 = { let __t2018 = Value::sym(interp.intern("-->")); let __t2035 = { let __t2033 = { let __t2023 = { let __t2019 = Value::sym(interp.intern("list")); let __t2022 = { let __t2020 = v_A.clone(); let __t2021 = Value::nil(); rt::cons(&__t2020, &__t2021) }; rt::cons(&__t2019, &__t2022) }; let __t2032 = { let __t2024 = Value::sym(interp.intern("-->")); let __t2031 = { let __t2029 = { let __t2025 = Value::sym(interp.intern("list")); let __t2028 = { let __t2026 = v_A.clone(); let __t2027 = Value::nil(); rt::cons(&__t2026, &__t2027) }; rt::cons(&__t2025, &__t2028) }; let __t2030 = Value::nil(); rt::cons(&__t2029, &__t2030) }; rt::cons(&__t2024, &__t2031) }; rt::cons(&__t2023, &__t2032) }; let __t2034 = Value::nil(); rt::cons(&__t2033, &__t2034) }; rt::cons(&__t2018, &__t2035) }; rt::cons(&__t2017, &__t2036) }; let __t2038 = v_B6052.clone(); let __t2039 = v_L6053.clone(); let __t2040 = v_Key6054.clone(); let __t2041 = v_C6055.clone(); rt::apply_direct(interp, "is!", &[__t2012, __t2037, __t2038, __t2039, __t2040, __t2041])? }; rt::apply_direct(interp, "shen.gc", &[__t2011, __t2042])? } }) }, vec![v_B6052, v_Key6054, v_L6053, v_V6056], interp) }) }, vec![v_B6052, v_L6053, v_V6056], interp) }) }, vec![v_B6052, v_V6056], interp) }) }, vec![v_V6056], interp) }) }, Vec::new(), interp) }; let __t2045 = { let __t2044 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2044])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2009, __t2043, __t2045])? }; rt::apply_direct(interp, "set", &[__t2008, __t2046])? }; - { - let _ = { let __t2047 = Value::sym(interp.intern("shen.*sigf*")); let __t2076 = { let __t2048 = Value::sym(interp.intern("do")); let __t2073 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6061 = args[0].clone(); Ok({ let v_V6061 = v_V6061.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6057 = args[0].clone(); Ok({ let v_B6057 = v_B6057.clone(); let v_V6061 = v_V6061.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6058 = args[0].clone(); Ok({ let v_B6057 = v_B6057.clone(); let v_L6058 = v_L6058.clone(); let v_V6061 = v_V6061.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6059 = args[0].clone(); Ok({ let v_B6057 = v_B6057.clone(); let v_Key6059 = v_Key6059.clone(); let v_L6058 = v_L6058.clone(); let v_V6061 = v_V6061.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6060 = args[0].clone(); Ok({ let v_A = { let __t2049 = v_B6057.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2049])? }; { let __t2050 = v_B6057.clone(); let __t2072 = { let v_B = { let __t2051 = v_B6057.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2051])? }; { let __t2052 = v_B6057.clone(); let __t2071 = { let __t2053 = v_V6061.clone(); let __t2066 = { let __t2054 = v_A.clone(); let __t2065 = { let __t2055 = Value::sym(interp.intern("-->")); let __t2064 = { let __t2062 = { let __t2056 = v_B.clone(); let __t2061 = { let __t2057 = Value::sym(interp.intern("-->")); let __t2060 = { let __t2058 = v_B.clone(); let __t2059 = Value::nil(); rt::cons(&__t2058, &__t2059) }; rt::cons(&__t2057, &__t2060) }; rt::cons(&__t2056, &__t2061) }; let __t2063 = Value::nil(); rt::cons(&__t2062, &__t2063) }; rt::cons(&__t2055, &__t2064) }; rt::cons(&__t2054, &__t2065) }; let __t2067 = v_B6057.clone(); let __t2068 = v_L6058.clone(); let __t2069 = v_Key6059.clone(); let __t2070 = v_C6060.clone(); rt::apply_direct(interp, "is!", &[__t2053, __t2066, __t2067, __t2068, __t2069, __t2070])? }; rt::apply_direct(interp, "shen.gc", &[__t2052, __t2071])? } }; rt::apply_direct(interp, "shen.gc", &[__t2050, __t2072])? } }) }, vec![v_B6057, v_Key6059, v_L6058, v_V6061], interp) }) }, vec![v_B6057, v_L6058, v_V6061], interp) }) }, vec![v_B6057, v_V6061], interp) }) }, vec![v_V6061], interp) }) }, Vec::new(), interp) }; let __t2075 = { let __t2074 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2074])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2048, __t2073, __t2075])? }; rt::apply_direct(interp, "set", &[__t2047, __t2076])? }; - { - let _ = { let __t2077 = Value::sym(interp.intern("shen.*sigf*")); let __t2118 = { let __t2078 = Value::sym(interp.intern("")); let __t2115 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6066 = args[0].clone(); Ok({ let v_V6066 = v_V6066.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6062 = args[0].clone(); Ok({ let v_B6062 = v_B6062.clone(); let v_V6066 = v_V6066.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6063 = args[0].clone(); Ok({ let v_B6062 = v_B6062.clone(); let v_L6063 = v_L6063.clone(); let v_V6066 = v_V6066.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6064 = args[0].clone(); Ok({ let v_B6062 = v_B6062.clone(); let v_Key6064 = v_Key6064.clone(); let v_L6063 = v_L6063.clone(); let v_V6066 = v_V6066.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6065 = args[0].clone(); Ok({ let v_A = { let __t2079 = v_B6062.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2079])? }; { let __t2080 = v_B6062.clone(); let __t2114 = { let v_B = { let __t2081 = v_B6062.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2081])? }; { let __t2082 = v_B6062.clone(); let __t2113 = { let __t2083 = v_V6066.clone(); let __t2108 = { let __t2088 = { let __t2084 = Value::sym(interp.intern("list")); let __t2087 = { let __t2085 = v_A.clone(); let __t2086 = Value::nil(); rt::cons(&__t2085, &__t2086) }; rt::cons(&__t2084, &__t2087) }; let __t2107 = { let __t2089 = Value::sym(interp.intern("-->")); let __t2106 = { let __t2104 = { let __t2090 = Value::sym(interp.intern("str")); let __t2103 = { let __t2095 = { let __t2091 = Value::sym(interp.intern("list")); let __t2094 = { let __t2092 = v_A.clone(); let __t2093 = Value::nil(); rt::cons(&__t2092, &__t2093) }; rt::cons(&__t2091, &__t2094) }; let __t2102 = { let __t2100 = { let __t2096 = Value::sym(interp.intern("list")); let __t2099 = { let __t2097 = v_B.clone(); let __t2098 = Value::nil(); rt::cons(&__t2097, &__t2098) }; rt::cons(&__t2096, &__t2099) }; let __t2101 = Value::nil(); rt::cons(&__t2100, &__t2101) }; rt::cons(&__t2095, &__t2102) }; rt::cons(&__t2090, &__t2103) }; let __t2105 = Value::nil(); rt::cons(&__t2104, &__t2105) }; rt::cons(&__t2089, &__t2106) }; rt::cons(&__t2088, &__t2107) }; let __t2109 = v_B6062.clone(); let __t2110 = v_L6063.clone(); let __t2111 = v_Key6064.clone(); let __t2112 = v_C6065.clone(); rt::apply_direct(interp, "is!", &[__t2083, __t2108, __t2109, __t2110, __t2111, __t2112])? }; rt::apply_direct(interp, "shen.gc", &[__t2082, __t2113])? } }; rt::apply_direct(interp, "shen.gc", &[__t2080, __t2114])? } }) }, vec![v_B6062, v_Key6064, v_L6063, v_V6066], interp) }) }, vec![v_B6062, v_L6063, v_V6066], interp) }) }, vec![v_B6062, v_V6066], interp) }) }, vec![v_V6066], interp) }) }, Vec::new(), interp) }; let __t2117 = { let __t2116 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2116])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2078, __t2115, __t2117])? }; rt::apply_direct(interp, "set", &[__t2077, __t2118])? }; - { - let _ = { let __t2119 = Value::sym(interp.intern("shen.*sigf*")); let __t2160 = { let __t2120 = Value::sym(interp.intern("")); let __t2157 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6071 = args[0].clone(); Ok({ let v_V6071 = v_V6071.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6067 = args[0].clone(); Ok({ let v_B6067 = v_B6067.clone(); let v_V6071 = v_V6071.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6068 = args[0].clone(); Ok({ let v_B6067 = v_B6067.clone(); let v_L6068 = v_L6068.clone(); let v_V6071 = v_V6071.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6069 = args[0].clone(); Ok({ let v_B6067 = v_B6067.clone(); let v_Key6069 = v_Key6069.clone(); let v_L6068 = v_L6068.clone(); let v_V6071 = v_V6071.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6070 = args[0].clone(); Ok({ let v_B = { let __t2121 = v_B6067.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2121])? }; { let __t2122 = v_B6067.clone(); let __t2156 = { let v_A = { let __t2123 = v_B6067.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2123])? }; { let __t2124 = v_B6067.clone(); let __t2155 = { let __t2125 = v_V6071.clone(); let __t2150 = { let __t2130 = { let __t2126 = Value::sym(interp.intern("list")); let __t2129 = { let __t2127 = v_A.clone(); let __t2128 = Value::nil(); rt::cons(&__t2127, &__t2128) }; rt::cons(&__t2126, &__t2129) }; let __t2149 = { let __t2131 = Value::sym(interp.intern("-->")); let __t2148 = { let __t2146 = { let __t2132 = Value::sym(interp.intern("str")); let __t2145 = { let __t2137 = { let __t2133 = Value::sym(interp.intern("list")); let __t2136 = { let __t2134 = v_B.clone(); let __t2135 = Value::nil(); rt::cons(&__t2134, &__t2135) }; rt::cons(&__t2133, &__t2136) }; let __t2144 = { let __t2142 = { let __t2138 = Value::sym(interp.intern("list")); let __t2141 = { let __t2139 = v_A.clone(); let __t2140 = Value::nil(); rt::cons(&__t2139, &__t2140) }; rt::cons(&__t2138, &__t2141) }; let __t2143 = Value::nil(); rt::cons(&__t2142, &__t2143) }; rt::cons(&__t2137, &__t2144) }; rt::cons(&__t2132, &__t2145) }; let __t2147 = Value::nil(); rt::cons(&__t2146, &__t2147) }; rt::cons(&__t2131, &__t2148) }; rt::cons(&__t2130, &__t2149) }; let __t2151 = v_B6067.clone(); let __t2152 = v_L6068.clone(); let __t2153 = v_Key6069.clone(); let __t2154 = v_C6070.clone(); rt::apply_direct(interp, "is!", &[__t2125, __t2150, __t2151, __t2152, __t2153, __t2154])? }; rt::apply_direct(interp, "shen.gc", &[__t2124, __t2155])? } }; rt::apply_direct(interp, "shen.gc", &[__t2122, __t2156])? } }) }, vec![v_B6067, v_Key6069, v_L6068, v_V6071], interp) }) }, vec![v_B6067, v_L6068, v_V6071], interp) }) }, vec![v_B6067, v_V6071], interp) }) }, vec![v_V6071], interp) }) }, Vec::new(), interp) }; let __t2159 = { let __t2158 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2158])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2120, __t2157, __t2159])? }; rt::apply_direct(interp, "set", &[__t2119, __t2160])? }; - { - let _ = { let __t2161 = Value::sym(interp.intern("shen.*sigf*")); let __t2202 = { let __t2162 = Value::sym(interp.intern("")); let __t2199 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6076 = args[0].clone(); Ok({ let v_V6076 = v_V6076.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6072 = args[0].clone(); Ok({ let v_B6072 = v_B6072.clone(); let v_V6076 = v_V6076.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6073 = args[0].clone(); Ok({ let v_B6072 = v_B6072.clone(); let v_L6073 = v_L6073.clone(); let v_V6076 = v_V6076.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6074 = args[0].clone(); Ok({ let v_B6072 = v_B6072.clone(); let v_Key6074 = v_Key6074.clone(); let v_L6073 = v_L6073.clone(); let v_V6076 = v_V6076.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6075 = args[0].clone(); Ok({ let v_A = { let __t2163 = v_B6072.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2163])? }; { let __t2164 = v_B6072.clone(); let __t2198 = { let v_B = { let __t2165 = v_B6072.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2165])? }; { let __t2166 = v_B6072.clone(); let __t2197 = { let __t2167 = v_V6076.clone(); let __t2192 = { let __t2172 = { let __t2168 = Value::sym(interp.intern("list")); let __t2171 = { let __t2169 = v_A.clone(); let __t2170 = Value::nil(); rt::cons(&__t2169, &__t2170) }; rt::cons(&__t2168, &__t2171) }; let __t2191 = { let __t2173 = Value::sym(interp.intern("-->")); let __t2190 = { let __t2188 = { let __t2174 = Value::sym(interp.intern("str")); let __t2187 = { let __t2179 = { let __t2175 = Value::sym(interp.intern("list")); let __t2178 = { let __t2176 = v_A.clone(); let __t2177 = Value::nil(); rt::cons(&__t2176, &__t2177) }; rt::cons(&__t2175, &__t2178) }; let __t2186 = { let __t2184 = { let __t2180 = Value::sym(interp.intern("list")); let __t2183 = { let __t2181 = v_B.clone(); let __t2182 = Value::nil(); rt::cons(&__t2181, &__t2182) }; rt::cons(&__t2180, &__t2183) }; let __t2185 = Value::nil(); rt::cons(&__t2184, &__t2185) }; rt::cons(&__t2179, &__t2186) }; rt::cons(&__t2174, &__t2187) }; let __t2189 = Value::nil(); rt::cons(&__t2188, &__t2189) }; rt::cons(&__t2173, &__t2190) }; rt::cons(&__t2172, &__t2191) }; let __t2193 = v_B6072.clone(); let __t2194 = v_L6073.clone(); let __t2195 = v_Key6074.clone(); let __t2196 = v_C6075.clone(); rt::apply_direct(interp, "is!", &[__t2167, __t2192, __t2193, __t2194, __t2195, __t2196])? }; rt::apply_direct(interp, "shen.gc", &[__t2166, __t2197])? } }; rt::apply_direct(interp, "shen.gc", &[__t2164, __t2198])? } }) }, vec![v_B6072, v_Key6074, v_L6073, v_V6076], interp) }) }, vec![v_B6072, v_L6073, v_V6076], interp) }) }, vec![v_B6072, v_V6076], interp) }) }, vec![v_V6076], interp) }) }, Vec::new(), interp) }; let __t2201 = { let __t2200 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2200])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2162, __t2199, __t2201])? }; rt::apply_direct(interp, "set", &[__t2161, __t2202])? }; - { - let _ = { let __t2203 = Value::sym(interp.intern("shen.*sigf*")); let __t2236 = { let __t2204 = Value::sym(interp.intern("shen.parse-failure?")); let __t2233 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6081 = args[0].clone(); Ok({ let v_V6081 = v_V6081.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6077 = args[0].clone(); Ok({ let v_B6077 = v_B6077.clone(); let v_V6081 = v_V6081.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6078 = args[0].clone(); Ok({ let v_B6077 = v_B6077.clone(); let v_L6078 = v_L6078.clone(); let v_V6081 = v_V6081.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6079 = args[0].clone(); Ok({ let v_B6077 = v_B6077.clone(); let v_Key6079 = v_Key6079.clone(); let v_L6078 = v_L6078.clone(); let v_V6081 = v_V6081.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6080 = args[0].clone(); Ok({ let v_A = { let __t2205 = v_B6077.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2205])? }; { let __t2206 = v_B6077.clone(); let __t2232 = { let v_B = { let __t2207 = v_B6077.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2207])? }; { let __t2208 = v_B6077.clone(); let __t2231 = { let __t2209 = v_V6081.clone(); let __t2226 = { let __t2220 = { let __t2210 = Value::sym(interp.intern("str")); let __t2219 = { let __t2215 = { let __t2211 = Value::sym(interp.intern("list")); let __t2214 = { let __t2212 = v_A.clone(); let __t2213 = Value::nil(); rt::cons(&__t2212, &__t2213) }; rt::cons(&__t2211, &__t2214) }; let __t2218 = { let __t2216 = v_B.clone(); let __t2217 = Value::nil(); rt::cons(&__t2216, &__t2217) }; rt::cons(&__t2215, &__t2218) }; rt::cons(&__t2210, &__t2219) }; let __t2225 = { let __t2221 = Value::sym(interp.intern("-->")); let __t2224 = { let __t2222 = Value::sym(interp.intern("boolean")); let __t2223 = Value::nil(); rt::cons(&__t2222, &__t2223) }; rt::cons(&__t2221, &__t2224) }; rt::cons(&__t2220, &__t2225) }; let __t2227 = v_B6077.clone(); let __t2228 = v_L6078.clone(); let __t2229 = v_Key6079.clone(); let __t2230 = v_C6080.clone(); rt::apply_direct(interp, "is!", &[__t2209, __t2226, __t2227, __t2228, __t2229, __t2230])? }; rt::apply_direct(interp, "shen.gc", &[__t2208, __t2231])? } }; rt::apply_direct(interp, "shen.gc", &[__t2206, __t2232])? } }) }, vec![v_B6077, v_Key6079, v_L6078, v_V6081], interp) }) }, vec![v_B6077, v_L6078, v_V6081], interp) }) }, vec![v_B6077, v_V6081], interp) }) }, vec![v_V6081], interp) }) }, Vec::new(), interp) }; let __t2235 = { let __t2234 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2234])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2204, __t2233, __t2235])? }; rt::apply_direct(interp, "set", &[__t2203, __t2236])? }; - { - let _ = { let __t2237 = Value::sym(interp.intern("shen.*sigf*")); let __t2268 = { let __t2238 = Value::sym(interp.intern("shen.parse-failure")); let __t2265 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6086 = args[0].clone(); Ok({ let v_V6086 = v_V6086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6082 = args[0].clone(); Ok({ let v_B6082 = v_B6082.clone(); let v_V6086 = v_V6086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6083 = args[0].clone(); Ok({ let v_B6082 = v_B6082.clone(); let v_L6083 = v_L6083.clone(); let v_V6086 = v_V6086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6084 = args[0].clone(); Ok({ let v_B6082 = v_B6082.clone(); let v_Key6084 = v_Key6084.clone(); let v_L6083 = v_L6083.clone(); let v_V6086 = v_V6086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6085 = args[0].clone(); Ok({ let v_A = { let __t2239 = v_B6082.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2239])? }; { let __t2240 = v_B6082.clone(); let __t2264 = { let v_B = { let __t2241 = v_B6082.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2241])? }; { let __t2242 = v_B6082.clone(); let __t2263 = { let __t2243 = v_V6086.clone(); let __t2258 = { let __t2244 = Value::sym(interp.intern("-->")); let __t2257 = { let __t2255 = { let __t2245 = Value::sym(interp.intern("str")); let __t2254 = { let __t2250 = { let __t2246 = Value::sym(interp.intern("list")); let __t2249 = { let __t2247 = v_A.clone(); let __t2248 = Value::nil(); rt::cons(&__t2247, &__t2248) }; rt::cons(&__t2246, &__t2249) }; let __t2253 = { let __t2251 = v_B.clone(); let __t2252 = Value::nil(); rt::cons(&__t2251, &__t2252) }; rt::cons(&__t2250, &__t2253) }; rt::cons(&__t2245, &__t2254) }; let __t2256 = Value::nil(); rt::cons(&__t2255, &__t2256) }; rt::cons(&__t2244, &__t2257) }; let __t2259 = v_B6082.clone(); let __t2260 = v_L6083.clone(); let __t2261 = v_Key6084.clone(); let __t2262 = v_C6085.clone(); rt::apply_direct(interp, "is!", &[__t2243, __t2258, __t2259, __t2260, __t2261, __t2262])? }; rt::apply_direct(interp, "shen.gc", &[__t2242, __t2263])? } }; rt::apply_direct(interp, "shen.gc", &[__t2240, __t2264])? } }) }, vec![v_B6082, v_Key6084, v_L6083, v_V6086], interp) }) }, vec![v_B6082, v_L6083, v_V6086], interp) }) }, vec![v_B6082, v_V6086], interp) }) }, vec![v_V6086], interp) }) }, Vec::new(), interp) }; let __t2267 = { let __t2266 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2266])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2238, __t2265, __t2267])? }; rt::apply_direct(interp, "set", &[__t2237, __t2268])? }; - { - let _ = { let __t2269 = Value::sym(interp.intern("shen.*sigf*")); let __t2302 = { let __t2270 = Value::sym(interp.intern("shen.<-out")); let __t2299 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6091 = args[0].clone(); Ok({ let v_V6091 = v_V6091.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6087 = args[0].clone(); Ok({ let v_B6087 = v_B6087.clone(); let v_V6091 = v_V6091.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6088 = args[0].clone(); Ok({ let v_B6087 = v_B6087.clone(); let v_L6088 = v_L6088.clone(); let v_V6091 = v_V6091.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6089 = args[0].clone(); Ok({ let v_B6087 = v_B6087.clone(); let v_Key6089 = v_Key6089.clone(); let v_L6088 = v_L6088.clone(); let v_V6091 = v_V6091.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6090 = args[0].clone(); Ok({ let v_A = { let __t2271 = v_B6087.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2271])? }; { let __t2272 = v_B6087.clone(); let __t2298 = { let v_B = { let __t2273 = v_B6087.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2273])? }; { let __t2274 = v_B6087.clone(); let __t2297 = { let __t2275 = v_V6091.clone(); let __t2292 = { let __t2286 = { let __t2276 = Value::sym(interp.intern("str")); let __t2285 = { let __t2281 = { let __t2277 = Value::sym(interp.intern("list")); let __t2280 = { let __t2278 = v_A.clone(); let __t2279 = Value::nil(); rt::cons(&__t2278, &__t2279) }; rt::cons(&__t2277, &__t2280) }; let __t2284 = { let __t2282 = v_B.clone(); let __t2283 = Value::nil(); rt::cons(&__t2282, &__t2283) }; rt::cons(&__t2281, &__t2284) }; rt::cons(&__t2276, &__t2285) }; let __t2291 = { let __t2287 = Value::sym(interp.intern("-->")); let __t2290 = { let __t2288 = v_B.clone(); let __t2289 = Value::nil(); rt::cons(&__t2288, &__t2289) }; rt::cons(&__t2287, &__t2290) }; rt::cons(&__t2286, &__t2291) }; let __t2293 = v_B6087.clone(); let __t2294 = v_L6088.clone(); let __t2295 = v_Key6089.clone(); let __t2296 = v_C6090.clone(); rt::apply_direct(interp, "is!", &[__t2275, __t2292, __t2293, __t2294, __t2295, __t2296])? }; rt::apply_direct(interp, "shen.gc", &[__t2274, __t2297])? } }; rt::apply_direct(interp, "shen.gc", &[__t2272, __t2298])? } }) }, vec![v_B6087, v_Key6089, v_L6088, v_V6091], interp) }) }, vec![v_B6087, v_L6088, v_V6091], interp) }) }, vec![v_B6087, v_V6091], interp) }) }, vec![v_V6091], interp) }) }, Vec::new(), interp) }; let __t2301 = { let __t2300 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2300])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2270, __t2299, __t2301])? }; rt::apply_direct(interp, "set", &[__t2269, __t2302])? }; - { - let _ = { let __t2303 = Value::sym(interp.intern("shen.*sigf*")); let __t2340 = { let __t2304 = Value::sym(interp.intern("shen.in->")); let __t2337 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6096 = args[0].clone(); Ok({ let v_V6096 = v_V6096.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6092 = args[0].clone(); Ok({ let v_B6092 = v_B6092.clone(); let v_V6096 = v_V6096.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6093 = args[0].clone(); Ok({ let v_B6092 = v_B6092.clone(); let v_L6093 = v_L6093.clone(); let v_V6096 = v_V6096.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6094 = args[0].clone(); Ok({ let v_B6092 = v_B6092.clone(); let v_Key6094 = v_Key6094.clone(); let v_L6093 = v_L6093.clone(); let v_V6096 = v_V6096.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6095 = args[0].clone(); Ok({ let v_B = { let __t2305 = v_B6092.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2305])? }; { let __t2306 = v_B6092.clone(); let __t2336 = { let v_A = { let __t2307 = v_B6092.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2307])? }; { let __t2308 = v_B6092.clone(); let __t2335 = { let __t2309 = v_V6096.clone(); let __t2330 = { let __t2320 = { let __t2310 = Value::sym(interp.intern("str")); let __t2319 = { let __t2315 = { let __t2311 = Value::sym(interp.intern("list")); let __t2314 = { let __t2312 = v_A.clone(); let __t2313 = Value::nil(); rt::cons(&__t2312, &__t2313) }; rt::cons(&__t2311, &__t2314) }; let __t2318 = { let __t2316 = v_B.clone(); let __t2317 = Value::nil(); rt::cons(&__t2316, &__t2317) }; rt::cons(&__t2315, &__t2318) }; rt::cons(&__t2310, &__t2319) }; let __t2329 = { let __t2321 = Value::sym(interp.intern("-->")); let __t2328 = { let __t2326 = { let __t2322 = Value::sym(interp.intern("list")); let __t2325 = { let __t2323 = v_A.clone(); let __t2324 = Value::nil(); rt::cons(&__t2323, &__t2324) }; rt::cons(&__t2322, &__t2325) }; let __t2327 = Value::nil(); rt::cons(&__t2326, &__t2327) }; rt::cons(&__t2321, &__t2328) }; rt::cons(&__t2320, &__t2329) }; let __t2331 = v_B6092.clone(); let __t2332 = v_L6093.clone(); let __t2333 = v_Key6094.clone(); let __t2334 = v_C6095.clone(); rt::apply_direct(interp, "is!", &[__t2309, __t2330, __t2331, __t2332, __t2333, __t2334])? }; rt::apply_direct(interp, "shen.gc", &[__t2308, __t2335])? } }; rt::apply_direct(interp, "shen.gc", &[__t2306, __t2336])? } }) }, vec![v_B6092, v_Key6094, v_L6093, v_V6096], interp) }) }, vec![v_B6092, v_L6093, v_V6096], interp) }) }, vec![v_B6092, v_V6096], interp) }) }, vec![v_V6096], interp) }) }, Vec::new(), interp) }; let __t2339 = { let __t2338 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2338])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2304, __t2337, __t2339])? }; rt::apply_direct(interp, "set", &[__t2303, __t2340])? }; - { - let _ = { let __t2341 = Value::sym(interp.intern("shen.*sigf*")); let __t2384 = { let __t2342 = Value::sym(interp.intern("shen.comb")); let __t2381 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6101 = args[0].clone(); Ok({ let v_V6101 = v_V6101.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6097 = args[0].clone(); Ok({ let v_B6097 = v_B6097.clone(); let v_V6101 = v_V6101.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6098 = args[0].clone(); Ok({ let v_B6097 = v_B6097.clone(); let v_L6098 = v_L6098.clone(); let v_V6101 = v_V6101.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6099 = args[0].clone(); Ok({ let v_B6097 = v_B6097.clone(); let v_Key6099 = v_Key6099.clone(); let v_L6098 = v_L6098.clone(); let v_V6101 = v_V6101.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6100 = args[0].clone(); Ok({ let v_A = { let __t2343 = v_B6097.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2343])? }; { let __t2344 = v_B6097.clone(); let __t2380 = { let v_B = { let __t2345 = v_B6097.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2345])? }; { let __t2346 = v_B6097.clone(); let __t2379 = { let __t2347 = v_V6101.clone(); let __t2374 = { let __t2352 = { let __t2348 = Value::sym(interp.intern("list")); let __t2351 = { let __t2349 = v_A.clone(); let __t2350 = Value::nil(); rt::cons(&__t2349, &__t2350) }; rt::cons(&__t2348, &__t2351) }; let __t2373 = { let __t2353 = Value::sym(interp.intern("-->")); let __t2372 = { let __t2370 = { let __t2354 = v_B.clone(); let __t2369 = { let __t2355 = Value::sym(interp.intern("-->")); let __t2368 = { let __t2366 = { let __t2356 = Value::sym(interp.intern("str")); let __t2365 = { let __t2361 = { let __t2357 = Value::sym(interp.intern("list")); let __t2360 = { let __t2358 = v_A.clone(); let __t2359 = Value::nil(); rt::cons(&__t2358, &__t2359) }; rt::cons(&__t2357, &__t2360) }; let __t2364 = { let __t2362 = v_B.clone(); let __t2363 = Value::nil(); rt::cons(&__t2362, &__t2363) }; rt::cons(&__t2361, &__t2364) }; rt::cons(&__t2356, &__t2365) }; let __t2367 = Value::nil(); rt::cons(&__t2366, &__t2367) }; rt::cons(&__t2355, &__t2368) }; rt::cons(&__t2354, &__t2369) }; let __t2371 = Value::nil(); rt::cons(&__t2370, &__t2371) }; rt::cons(&__t2353, &__t2372) }; rt::cons(&__t2352, &__t2373) }; let __t2375 = v_B6097.clone(); let __t2376 = v_L6098.clone(); let __t2377 = v_Key6099.clone(); let __t2378 = v_C6100.clone(); rt::apply_direct(interp, "is!", &[__t2347, __t2374, __t2375, __t2376, __t2377, __t2378])? }; rt::apply_direct(interp, "shen.gc", &[__t2346, __t2379])? } }; rt::apply_direct(interp, "shen.gc", &[__t2344, __t2380])? } }) }, vec![v_B6097, v_Key6099, v_L6098, v_V6101], interp) }) }, vec![v_B6097, v_L6098, v_V6101], interp) }) }, vec![v_B6097, v_V6101], interp) }) }, vec![v_V6101], interp) }) }, Vec::new(), interp) }; let __t2383 = { let __t2382 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2382])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2342, __t2381, __t2383])? }; rt::apply_direct(interp, "set", &[__t2341, __t2384])? }; - { - let _ = { let __t2385 = Value::sym(interp.intern("shen.*sigf*")); let __t2415 = { let __t2386 = Value::sym(interp.intern("element?")); let __t2412 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6106 = args[0].clone(); Ok({ let v_V6106 = v_V6106.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6102 = args[0].clone(); Ok({ let v_B6102 = v_B6102.clone(); let v_V6106 = v_V6106.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6103 = args[0].clone(); Ok({ let v_B6102 = v_B6102.clone(); let v_L6103 = v_L6103.clone(); let v_V6106 = v_V6106.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6104 = args[0].clone(); Ok({ let v_B6102 = v_B6102.clone(); let v_Key6104 = v_Key6104.clone(); let v_L6103 = v_L6103.clone(); let v_V6106 = v_V6106.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6105 = args[0].clone(); Ok({ let v_A = { let __t2387 = v_B6102.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2387])? }; { let __t2388 = v_B6102.clone(); let __t2411 = { let __t2389 = v_V6106.clone(); let __t2406 = { let __t2390 = v_A.clone(); let __t2405 = { let __t2391 = Value::sym(interp.intern("-->")); let __t2404 = { let __t2402 = { let __t2396 = { let __t2392 = Value::sym(interp.intern("list")); let __t2395 = { let __t2393 = v_A.clone(); let __t2394 = Value::nil(); rt::cons(&__t2393, &__t2394) }; rt::cons(&__t2392, &__t2395) }; let __t2401 = { let __t2397 = Value::sym(interp.intern("-->")); let __t2400 = { let __t2398 = Value::sym(interp.intern("boolean")); let __t2399 = Value::nil(); rt::cons(&__t2398, &__t2399) }; rt::cons(&__t2397, &__t2400) }; rt::cons(&__t2396, &__t2401) }; let __t2403 = Value::nil(); rt::cons(&__t2402, &__t2403) }; rt::cons(&__t2391, &__t2404) }; rt::cons(&__t2390, &__t2405) }; let __t2407 = v_B6102.clone(); let __t2408 = v_L6103.clone(); let __t2409 = v_Key6104.clone(); let __t2410 = v_C6105.clone(); rt::apply_direct(interp, "is!", &[__t2389, __t2406, __t2407, __t2408, __t2409, __t2410])? }; rt::apply_direct(interp, "shen.gc", &[__t2388, __t2411])? } }) }, vec![v_B6102, v_Key6104, v_L6103, v_V6106], interp) }) }, vec![v_B6102, v_L6103, v_V6106], interp) }) }, vec![v_B6102, v_V6106], interp) }) }, vec![v_V6106], interp) }) }, Vec::new(), interp) }; let __t2414 = { let __t2413 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2413])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2386, __t2412, __t2414])? }; rt::apply_direct(interp, "set", &[__t2385, __t2415])? }; - { - let _ = { let __t2416 = Value::sym(interp.intern("shen.*sigf*")); let __t2436 = { let __t2417 = Value::sym(interp.intern("empty?")); let __t2433 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6111 = args[0].clone(); Ok({ let v_V6111 = v_V6111.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6107 = args[0].clone(); Ok({ let v_B6107 = v_B6107.clone(); let v_V6111 = v_V6111.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6108 = args[0].clone(); Ok({ let v_B6107 = v_B6107.clone(); let v_L6108 = v_L6108.clone(); let v_V6111 = v_V6111.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6109 = args[0].clone(); Ok({ let v_B6107 = v_B6107.clone(); let v_Key6109 = v_Key6109.clone(); let v_L6108 = v_L6108.clone(); let v_V6111 = v_V6111.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6110 = args[0].clone(); Ok({ let v_A = { let __t2418 = v_B6107.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2418])? }; { let __t2419 = v_B6107.clone(); let __t2432 = { let __t2420 = v_V6111.clone(); let __t2427 = { let __t2421 = v_A.clone(); let __t2426 = { let __t2422 = Value::sym(interp.intern("-->")); let __t2425 = { let __t2423 = Value::sym(interp.intern("boolean")); let __t2424 = Value::nil(); rt::cons(&__t2423, &__t2424) }; rt::cons(&__t2422, &__t2425) }; rt::cons(&__t2421, &__t2426) }; let __t2428 = v_B6107.clone(); let __t2429 = v_L6108.clone(); let __t2430 = v_Key6109.clone(); let __t2431 = v_C6110.clone(); rt::apply_direct(interp, "is!", &[__t2420, __t2427, __t2428, __t2429, __t2430, __t2431])? }; rt::apply_direct(interp, "shen.gc", &[__t2419, __t2432])? } }) }, vec![v_B6107, v_Key6109, v_L6108, v_V6111], interp) }) }, vec![v_B6107, v_L6108, v_V6111], interp) }) }, vec![v_B6107, v_V6111], interp) }) }, vec![v_V6111], interp) }) }, Vec::new(), interp) }; let __t2435 = { let __t2434 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2434])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2417, __t2433, __t2435])? }; rt::apply_direct(interp, "set", &[__t2416, __t2436])? }; - { - let _ = { let __t2437 = Value::sym(interp.intern("shen.*sigf*")); let __t2454 = { let __t2438 = Value::sym(interp.intern("enable-type-theory")); let __t2451 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6116 = args[0].clone(); Ok({ let v_V6116 = v_V6116.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6112 = args[0].clone(); Ok({ let v_B6112 = v_B6112.clone(); let v_V6116 = v_V6116.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6113 = args[0].clone(); Ok({ let v_B6112 = v_B6112.clone(); let v_L6113 = v_L6113.clone(); let v_V6116 = v_V6116.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6114 = args[0].clone(); Ok({ let v_B6112 = v_B6112.clone(); let v_Key6114 = v_Key6114.clone(); let v_L6113 = v_L6113.clone(); let v_V6116 = v_V6116.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6115 = args[0].clone(); Ok({ let __t2439 = v_V6116.clone(); let __t2446 = { let __t2440 = Value::sym(interp.intern("symbol")); let __t2445 = { let __t2441 = Value::sym(interp.intern("-->")); let __t2444 = { let __t2442 = Value::sym(interp.intern("boolean")); let __t2443 = Value::nil(); rt::cons(&__t2442, &__t2443) }; rt::cons(&__t2441, &__t2444) }; rt::cons(&__t2440, &__t2445) }; let __t2447 = v_B6112.clone(); let __t2448 = v_L6113.clone(); let __t2449 = v_Key6114.clone(); let __t2450 = v_C6115.clone(); rt::apply_direct(interp, "is!", &[__t2439, __t2446, __t2447, __t2448, __t2449, __t2450])? }) }, vec![v_B6112, v_Key6114, v_L6113, v_V6116], interp) }) }, vec![v_B6112, v_L6113, v_V6116], interp) }) }, vec![v_B6112, v_V6116], interp) }) }, vec![v_V6116], interp) }) }, Vec::new(), interp) }; let __t2453 = { let __t2452 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2452])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2438, __t2451, __t2453])? }; rt::apply_direct(interp, "set", &[__t2437, __t2454])? }; - { - let _ = { let __t2455 = Value::sym(interp.intern("shen.*sigf*")); let __t2476 = { let __t2456 = Value::sym(interp.intern("external")); let __t2473 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6121 = args[0].clone(); Ok({ let v_V6121 = v_V6121.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6117 = args[0].clone(); Ok({ let v_B6117 = v_B6117.clone(); let v_V6121 = v_V6121.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6118 = args[0].clone(); Ok({ let v_B6117 = v_B6117.clone(); let v_L6118 = v_L6118.clone(); let v_V6121 = v_V6121.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6119 = args[0].clone(); Ok({ let v_B6117 = v_B6117.clone(); let v_Key6119 = v_Key6119.clone(); let v_L6118 = v_L6118.clone(); let v_V6121 = v_V6121.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6120 = args[0].clone(); Ok({ let __t2457 = v_V6121.clone(); let __t2468 = { let __t2458 = Value::sym(interp.intern("symbol")); let __t2467 = { let __t2459 = Value::sym(interp.intern("-->")); let __t2466 = { let __t2464 = { let __t2460 = Value::sym(interp.intern("list")); let __t2463 = { let __t2461 = Value::sym(interp.intern("symbol")); let __t2462 = Value::nil(); rt::cons(&__t2461, &__t2462) }; rt::cons(&__t2460, &__t2463) }; let __t2465 = Value::nil(); rt::cons(&__t2464, &__t2465) }; rt::cons(&__t2459, &__t2466) }; rt::cons(&__t2458, &__t2467) }; let __t2469 = v_B6117.clone(); let __t2470 = v_L6118.clone(); let __t2471 = v_Key6119.clone(); let __t2472 = v_C6120.clone(); rt::apply_direct(interp, "is!", &[__t2457, __t2468, __t2469, __t2470, __t2471, __t2472])? }) }, vec![v_B6117, v_Key6119, v_L6118, v_V6121], interp) }) }, vec![v_B6117, v_L6118, v_V6121], interp) }) }, vec![v_B6117, v_V6121], interp) }) }, vec![v_V6121], interp) }) }, Vec::new(), interp) }; let __t2475 = { let __t2474 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2474])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2456, __t2473, __t2475])? }; rt::apply_direct(interp, "set", &[__t2455, __t2476])? }; - { - let _ = { let __t2477 = Value::sym(interp.intern("shen.*sigf*")); let __t2494 = { let __t2478 = Value::sym(interp.intern("error-to-string")); let __t2491 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6126 = args[0].clone(); Ok({ let v_V6126 = v_V6126.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6122 = args[0].clone(); Ok({ let v_B6122 = v_B6122.clone(); let v_V6126 = v_V6126.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6123 = args[0].clone(); Ok({ let v_B6122 = v_B6122.clone(); let v_L6123 = v_L6123.clone(); let v_V6126 = v_V6126.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6124 = args[0].clone(); Ok({ let v_B6122 = v_B6122.clone(); let v_Key6124 = v_Key6124.clone(); let v_L6123 = v_L6123.clone(); let v_V6126 = v_V6126.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6125 = args[0].clone(); Ok({ let __t2479 = v_V6126.clone(); let __t2486 = { let __t2480 = Value::sym(interp.intern("exception")); let __t2485 = { let __t2481 = Value::sym(interp.intern("-->")); let __t2484 = { let __t2482 = Value::sym(interp.intern("string")); let __t2483 = Value::nil(); rt::cons(&__t2482, &__t2483) }; rt::cons(&__t2481, &__t2484) }; rt::cons(&__t2480, &__t2485) }; let __t2487 = v_B6122.clone(); let __t2488 = v_L6123.clone(); let __t2489 = v_Key6124.clone(); let __t2490 = v_C6125.clone(); rt::apply_direct(interp, "is!", &[__t2479, __t2486, __t2487, __t2488, __t2489, __t2490])? }) }, vec![v_B6122, v_Key6124, v_L6123, v_V6126], interp) }) }, vec![v_B6122, v_L6123, v_V6126], interp) }) }, vec![v_B6122, v_V6126], interp) }) }, vec![v_V6126], interp) }) }, Vec::new(), interp) }; let __t2493 = { let __t2492 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2492])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2478, __t2491, __t2493])? }; rt::apply_direct(interp, "set", &[__t2477, __t2494])? }; - { - let _ = { let __t2495 = Value::sym(interp.intern("shen.*sigf*")); let __t2519 = { let __t2496 = Value::sym(interp.intern("explode")); let __t2516 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6131 = args[0].clone(); Ok({ let v_V6131 = v_V6131.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6127 = args[0].clone(); Ok({ let v_B6127 = v_B6127.clone(); let v_V6131 = v_V6131.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6128 = args[0].clone(); Ok({ let v_B6127 = v_B6127.clone(); let v_L6128 = v_L6128.clone(); let v_V6131 = v_V6131.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6129 = args[0].clone(); Ok({ let v_B6127 = v_B6127.clone(); let v_Key6129 = v_Key6129.clone(); let v_L6128 = v_L6128.clone(); let v_V6131 = v_V6131.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6130 = args[0].clone(); Ok({ let v_A = { let __t2497 = v_B6127.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2497])? }; { let __t2498 = v_B6127.clone(); let __t2515 = { let __t2499 = v_V6131.clone(); let __t2510 = { let __t2500 = v_A.clone(); let __t2509 = { let __t2501 = Value::sym(interp.intern("-->")); let __t2508 = { let __t2506 = { let __t2502 = Value::sym(interp.intern("list")); let __t2505 = { let __t2503 = Value::sym(interp.intern("string")); let __t2504 = Value::nil(); rt::cons(&__t2503, &__t2504) }; rt::cons(&__t2502, &__t2505) }; let __t2507 = Value::nil(); rt::cons(&__t2506, &__t2507) }; rt::cons(&__t2501, &__t2508) }; rt::cons(&__t2500, &__t2509) }; let __t2511 = v_B6127.clone(); let __t2512 = v_L6128.clone(); let __t2513 = v_Key6129.clone(); let __t2514 = v_C6130.clone(); rt::apply_direct(interp, "is!", &[__t2499, __t2510, __t2511, __t2512, __t2513, __t2514])? }; rt::apply_direct(interp, "shen.gc", &[__t2498, __t2515])? } }) }, vec![v_B6127, v_Key6129, v_L6128, v_V6131], interp) }) }, vec![v_B6127, v_L6128, v_V6131], interp) }) }, vec![v_B6127, v_V6131], interp) }) }, vec![v_V6131], interp) }) }, Vec::new(), interp) }; let __t2518 = { let __t2517 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2517])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2496, __t2516, __t2518])? }; rt::apply_direct(interp, "set", &[__t2495, __t2519])? }; - { - let _ = { let __t2520 = Value::sym(interp.intern("shen.*sigf*")); let __t2537 = { let __t2521 = Value::sym(interp.intern("factorise")); let __t2534 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6136 = args[0].clone(); Ok({ let v_V6136 = v_V6136.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6132 = args[0].clone(); Ok({ let v_B6132 = v_B6132.clone(); let v_V6136 = v_V6136.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6133 = args[0].clone(); Ok({ let v_B6132 = v_B6132.clone(); let v_L6133 = v_L6133.clone(); let v_V6136 = v_V6136.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6134 = args[0].clone(); Ok({ let v_B6132 = v_B6132.clone(); let v_Key6134 = v_Key6134.clone(); let v_L6133 = v_L6133.clone(); let v_V6136 = v_V6136.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6135 = args[0].clone(); Ok({ let __t2522 = v_V6136.clone(); let __t2529 = { let __t2523 = Value::sym(interp.intern("symbol")); let __t2528 = { let __t2524 = Value::sym(interp.intern("-->")); let __t2527 = { let __t2525 = Value::sym(interp.intern("symbol")); let __t2526 = Value::nil(); rt::cons(&__t2525, &__t2526) }; rt::cons(&__t2524, &__t2527) }; rt::cons(&__t2523, &__t2528) }; let __t2530 = v_B6132.clone(); let __t2531 = v_L6133.clone(); let __t2532 = v_Key6134.clone(); let __t2533 = v_C6135.clone(); rt::apply_direct(interp, "is!", &[__t2522, __t2529, __t2530, __t2531, __t2532, __t2533])? }) }, vec![v_B6132, v_Key6134, v_L6133, v_V6136], interp) }) }, vec![v_B6132, v_L6133, v_V6136], interp) }) }, vec![v_B6132, v_V6136], interp) }) }, vec![v_V6136], interp) }) }, Vec::new(), interp) }; let __t2536 = { let __t2535 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2535])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2521, __t2534, __t2536])? }; rt::apply_direct(interp, "set", &[__t2520, __t2537])? }; - { - let _ = { let __t2538 = Value::sym(interp.intern("shen.*sigf*")); let __t2553 = { let __t2539 = Value::sym(interp.intern("factorise?")); let __t2550 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6141 = args[0].clone(); Ok({ let v_V6141 = v_V6141.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6137 = args[0].clone(); Ok({ let v_B6137 = v_B6137.clone(); let v_V6141 = v_V6141.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6138 = args[0].clone(); Ok({ let v_B6137 = v_B6137.clone(); let v_L6138 = v_L6138.clone(); let v_V6141 = v_V6141.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6139 = args[0].clone(); Ok({ let v_B6137 = v_B6137.clone(); let v_Key6139 = v_Key6139.clone(); let v_L6138 = v_L6138.clone(); let v_V6141 = v_V6141.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6140 = args[0].clone(); Ok({ let __t2540 = v_V6141.clone(); let __t2545 = { let __t2541 = Value::sym(interp.intern("-->")); let __t2544 = { let __t2542 = Value::sym(interp.intern("boolean")); let __t2543 = Value::nil(); rt::cons(&__t2542, &__t2543) }; rt::cons(&__t2541, &__t2544) }; let __t2546 = v_B6137.clone(); let __t2547 = v_L6138.clone(); let __t2548 = v_Key6139.clone(); let __t2549 = v_C6140.clone(); rt::apply_direct(interp, "is!", &[__t2540, __t2545, __t2546, __t2547, __t2548, __t2549])? }) }, vec![v_B6137, v_Key6139, v_L6138, v_V6141], interp) }) }, vec![v_B6137, v_L6138, v_V6141], interp) }) }, vec![v_B6137, v_V6141], interp) }) }, vec![v_V6141], interp) }) }, Vec::new(), interp) }; let __t2552 = { let __t2551 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2551])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2539, __t2550, __t2552])? }; rt::apply_direct(interp, "set", &[__t2538, __t2553])? }; - { - let _ = { let __t2554 = Value::sym(interp.intern("shen.*sigf*")); let __t2569 = { let __t2555 = Value::sym(interp.intern("fail")); let __t2566 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6146 = args[0].clone(); Ok({ let v_V6146 = v_V6146.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6142 = args[0].clone(); Ok({ let v_B6142 = v_B6142.clone(); let v_V6146 = v_V6146.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6143 = args[0].clone(); Ok({ let v_B6142 = v_B6142.clone(); let v_L6143 = v_L6143.clone(); let v_V6146 = v_V6146.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6144 = args[0].clone(); Ok({ let v_B6142 = v_B6142.clone(); let v_Key6144 = v_Key6144.clone(); let v_L6143 = v_L6143.clone(); let v_V6146 = v_V6146.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6145 = args[0].clone(); Ok({ let __t2556 = v_V6146.clone(); let __t2561 = { let __t2557 = Value::sym(interp.intern("-->")); let __t2560 = { let __t2558 = Value::sym(interp.intern("symbol")); let __t2559 = Value::nil(); rt::cons(&__t2558, &__t2559) }; rt::cons(&__t2557, &__t2560) }; let __t2562 = v_B6142.clone(); let __t2563 = v_L6143.clone(); let __t2564 = v_Key6144.clone(); let __t2565 = v_C6145.clone(); rt::apply_direct(interp, "is!", &[__t2556, __t2561, __t2562, __t2563, __t2564, __t2565])? }) }, vec![v_B6142, v_Key6144, v_L6143, v_V6146], interp) }) }, vec![v_B6142, v_L6143, v_V6146], interp) }) }, vec![v_B6142, v_V6146], interp) }) }, vec![v_V6146], interp) }) }, Vec::new(), interp) }; let __t2568 = { let __t2567 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2567])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2555, __t2566, __t2568])? }; rt::apply_direct(interp, "set", &[__t2554, __t2569])? }; - { - let _ = { let __t2570 = Value::sym(interp.intern("shen.*sigf*")); let __t2602 = { let __t2571 = Value::sym(interp.intern("fix")); let __t2599 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6151 = args[0].clone(); Ok({ let v_V6151 = v_V6151.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6147 = args[0].clone(); Ok({ let v_B6147 = v_B6147.clone(); let v_V6151 = v_V6151.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6148 = args[0].clone(); Ok({ let v_B6147 = v_B6147.clone(); let v_L6148 = v_L6148.clone(); let v_V6151 = v_V6151.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6149 = args[0].clone(); Ok({ let v_B6147 = v_B6147.clone(); let v_Key6149 = v_Key6149.clone(); let v_L6148 = v_L6148.clone(); let v_V6151 = v_V6151.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6150 = args[0].clone(); Ok({ let v_A = { let __t2572 = v_B6147.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2572])? }; { let __t2573 = v_B6147.clone(); let __t2598 = { let __t2574 = v_V6151.clone(); let __t2593 = { let __t2581 = { let __t2575 = v_A.clone(); let __t2580 = { let __t2576 = Value::sym(interp.intern("-->")); let __t2579 = { let __t2577 = v_A.clone(); let __t2578 = Value::nil(); rt::cons(&__t2577, &__t2578) }; rt::cons(&__t2576, &__t2579) }; rt::cons(&__t2575, &__t2580) }; let __t2592 = { let __t2582 = Value::sym(interp.intern("-->")); let __t2591 = { let __t2589 = { let __t2583 = v_A.clone(); let __t2588 = { let __t2584 = Value::sym(interp.intern("-->")); let __t2587 = { let __t2585 = v_A.clone(); let __t2586 = Value::nil(); rt::cons(&__t2585, &__t2586) }; rt::cons(&__t2584, &__t2587) }; rt::cons(&__t2583, &__t2588) }; let __t2590 = Value::nil(); rt::cons(&__t2589, &__t2590) }; rt::cons(&__t2582, &__t2591) }; rt::cons(&__t2581, &__t2592) }; let __t2594 = v_B6147.clone(); let __t2595 = v_L6148.clone(); let __t2596 = v_Key6149.clone(); let __t2597 = v_C6150.clone(); rt::apply_direct(interp, "is!", &[__t2574, __t2593, __t2594, __t2595, __t2596, __t2597])? }; rt::apply_direct(interp, "shen.gc", &[__t2573, __t2598])? } }) }, vec![v_B6147, v_Key6149, v_L6148, v_V6151], interp) }) }, vec![v_B6147, v_L6148, v_V6151], interp) }) }, vec![v_B6147, v_V6151], interp) }) }, vec![v_V6151], interp) }) }, Vec::new(), interp) }; let __t2601 = { let __t2600 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2600])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2571, __t2599, __t2601])? }; rt::apply_direct(interp, "set", &[__t2570, __t2602])? }; - { - let _ = { let __t2603 = Value::sym(interp.intern("shen.*sigf*")); let __t2627 = { let __t2604 = Value::sym(interp.intern("freeze")); let __t2624 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6156 = args[0].clone(); Ok({ let v_V6156 = v_V6156.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6152 = args[0].clone(); Ok({ let v_B6152 = v_B6152.clone(); let v_V6156 = v_V6156.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6153 = args[0].clone(); Ok({ let v_B6152 = v_B6152.clone(); let v_L6153 = v_L6153.clone(); let v_V6156 = v_V6156.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6154 = args[0].clone(); Ok({ let v_B6152 = v_B6152.clone(); let v_Key6154 = v_Key6154.clone(); let v_L6153 = v_L6153.clone(); let v_V6156 = v_V6156.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6155 = args[0].clone(); Ok({ let v_A = { let __t2605 = v_B6152.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2605])? }; { let __t2606 = v_B6152.clone(); let __t2623 = { let __t2607 = v_V6156.clone(); let __t2618 = { let __t2608 = v_A.clone(); let __t2617 = { let __t2609 = Value::sym(interp.intern("-->")); let __t2616 = { let __t2614 = { let __t2610 = Value::sym(interp.intern("lazy")); let __t2613 = { let __t2611 = v_A.clone(); let __t2612 = Value::nil(); rt::cons(&__t2611, &__t2612) }; rt::cons(&__t2610, &__t2613) }; let __t2615 = Value::nil(); rt::cons(&__t2614, &__t2615) }; rt::cons(&__t2609, &__t2616) }; rt::cons(&__t2608, &__t2617) }; let __t2619 = v_B6152.clone(); let __t2620 = v_L6153.clone(); let __t2621 = v_Key6154.clone(); let __t2622 = v_C6155.clone(); rt::apply_direct(interp, "is!", &[__t2607, __t2618, __t2619, __t2620, __t2621, __t2622])? }; rt::apply_direct(interp, "shen.gc", &[__t2606, __t2623])? } }) }, vec![v_B6152, v_Key6154, v_L6153, v_V6156], interp) }) }, vec![v_B6152, v_L6153, v_V6156], interp) }) }, vec![v_B6152, v_V6156], interp) }) }, vec![v_V6156], interp) }) }, Vec::new(), interp) }; let __t2626 = { let __t2625 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2625])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2604, __t2624, __t2626])? }; rt::apply_direct(interp, "set", &[__t2603, __t2627])? }; - { - let _ = { let __t2628 = Value::sym(interp.intern("shen.*sigf*")); let __t2657 = { let __t2629 = Value::sym(interp.intern("fst")); let __t2654 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6161 = args[0].clone(); Ok({ let v_V6161 = v_V6161.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6157 = args[0].clone(); Ok({ let v_B6157 = v_B6157.clone(); let v_V6161 = v_V6161.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6158 = args[0].clone(); Ok({ let v_B6157 = v_B6157.clone(); let v_L6158 = v_L6158.clone(); let v_V6161 = v_V6161.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6159 = args[0].clone(); Ok({ let v_B6157 = v_B6157.clone(); let v_Key6159 = v_Key6159.clone(); let v_L6158 = v_L6158.clone(); let v_V6161 = v_V6161.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6160 = args[0].clone(); Ok({ let v_B = { let __t2630 = v_B6157.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2630])? }; { let __t2631 = v_B6157.clone(); let __t2653 = { let v_A = { let __t2632 = v_B6157.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2632])? }; { let __t2633 = v_B6157.clone(); let __t2652 = { let __t2634 = v_V6161.clone(); let __t2647 = { let __t2641 = { let __t2635 = v_A.clone(); let __t2640 = { let __t2636 = Value::sym(interp.intern("*")); let __t2639 = { let __t2637 = v_B.clone(); let __t2638 = Value::nil(); rt::cons(&__t2637, &__t2638) }; rt::cons(&__t2636, &__t2639) }; rt::cons(&__t2635, &__t2640) }; let __t2646 = { let __t2642 = Value::sym(interp.intern("-->")); let __t2645 = { let __t2643 = v_A.clone(); let __t2644 = Value::nil(); rt::cons(&__t2643, &__t2644) }; rt::cons(&__t2642, &__t2645) }; rt::cons(&__t2641, &__t2646) }; let __t2648 = v_B6157.clone(); let __t2649 = v_L6158.clone(); let __t2650 = v_Key6159.clone(); let __t2651 = v_C6160.clone(); rt::apply_direct(interp, "is!", &[__t2634, __t2647, __t2648, __t2649, __t2650, __t2651])? }; rt::apply_direct(interp, "shen.gc", &[__t2633, __t2652])? } }; rt::apply_direct(interp, "shen.gc", &[__t2631, __t2653])? } }) }, vec![v_B6157, v_Key6159, v_L6158, v_V6161], interp) }) }, vec![v_B6157, v_L6158, v_V6161], interp) }) }, vec![v_B6157, v_V6161], interp) }) }, vec![v_V6161], interp) }) }, Vec::new(), interp) }; let __t2656 = { let __t2655 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2655])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2629, __t2654, __t2656])? }; rt::apply_direct(interp, "set", &[__t2628, __t2657])? }; - { - let _ = { let __t2658 = Value::sym(interp.intern("shen.*sigf*")); let __t2675 = { let __t2659 = Value::sym(interp.intern("gensym")); let __t2672 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6166 = args[0].clone(); Ok({ let v_V6166 = v_V6166.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6162 = args[0].clone(); Ok({ let v_B6162 = v_B6162.clone(); let v_V6166 = v_V6166.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6163 = args[0].clone(); Ok({ let v_B6162 = v_B6162.clone(); let v_L6163 = v_L6163.clone(); let v_V6166 = v_V6166.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6164 = args[0].clone(); Ok({ let v_B6162 = v_B6162.clone(); let v_Key6164 = v_Key6164.clone(); let v_L6163 = v_L6163.clone(); let v_V6166 = v_V6166.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6165 = args[0].clone(); Ok({ let __t2660 = v_V6166.clone(); let __t2667 = { let __t2661 = Value::sym(interp.intern("symbol")); let __t2666 = { let __t2662 = Value::sym(interp.intern("-->")); let __t2665 = { let __t2663 = Value::sym(interp.intern("symbol")); let __t2664 = Value::nil(); rt::cons(&__t2663, &__t2664) }; rt::cons(&__t2662, &__t2665) }; rt::cons(&__t2661, &__t2666) }; let __t2668 = v_B6162.clone(); let __t2669 = v_L6163.clone(); let __t2670 = v_Key6164.clone(); let __t2671 = v_C6165.clone(); rt::apply_direct(interp, "is!", &[__t2660, __t2667, __t2668, __t2669, __t2670, __t2671])? }) }, vec![v_B6162, v_Key6164, v_L6163, v_V6166], interp) }) }, vec![v_B6162, v_L6163, v_V6166], interp) }) }, vec![v_B6162, v_V6166], interp) }) }, vec![v_V6166], interp) }) }, Vec::new(), interp) }; let __t2674 = { let __t2673 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2673])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2659, __t2672, __t2674])? }; rt::apply_direct(interp, "set", &[__t2658, __t2675])? }; - { - let _ = { let __t2676 = Value::sym(interp.intern("shen.*sigf*")); let __t2706 = { let __t2677 = Value::sym(interp.intern("shen.hds=?")); let __t2703 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6171 = args[0].clone(); Ok({ let v_V6171 = v_V6171.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6167 = args[0].clone(); Ok({ let v_B6167 = v_B6167.clone(); let v_V6171 = v_V6171.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6168 = args[0].clone(); Ok({ let v_B6167 = v_B6167.clone(); let v_L6168 = v_L6168.clone(); let v_V6171 = v_V6171.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6169 = args[0].clone(); Ok({ let v_B6167 = v_B6167.clone(); let v_Key6169 = v_Key6169.clone(); let v_L6168 = v_L6168.clone(); let v_V6171 = v_V6171.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6170 = args[0].clone(); Ok({ let v_A = { let __t2678 = v_B6167.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2678])? }; { let __t2679 = v_B6167.clone(); let __t2702 = { let __t2680 = v_V6171.clone(); let __t2697 = { let __t2685 = { let __t2681 = Value::sym(interp.intern("list")); let __t2684 = { let __t2682 = v_A.clone(); let __t2683 = Value::nil(); rt::cons(&__t2682, &__t2683) }; rt::cons(&__t2681, &__t2684) }; let __t2696 = { let __t2686 = Value::sym(interp.intern("-->")); let __t2695 = { let __t2693 = { let __t2687 = v_A.clone(); let __t2692 = { let __t2688 = Value::sym(interp.intern("-->")); let __t2691 = { let __t2689 = Value::sym(interp.intern("boolean")); let __t2690 = Value::nil(); rt::cons(&__t2689, &__t2690) }; rt::cons(&__t2688, &__t2691) }; rt::cons(&__t2687, &__t2692) }; let __t2694 = Value::nil(); rt::cons(&__t2693, &__t2694) }; rt::cons(&__t2686, &__t2695) }; rt::cons(&__t2685, &__t2696) }; let __t2698 = v_B6167.clone(); let __t2699 = v_L6168.clone(); let __t2700 = v_Key6169.clone(); let __t2701 = v_C6170.clone(); rt::apply_direct(interp, "is!", &[__t2680, __t2697, __t2698, __t2699, __t2700, __t2701])? }; rt::apply_direct(interp, "shen.gc", &[__t2679, __t2702])? } }) }, vec![v_B6167, v_Key6169, v_L6168, v_V6171], interp) }) }, vec![v_B6167, v_L6168, v_V6171], interp) }) }, vec![v_B6167, v_V6171], interp) }) }, vec![v_V6171], interp) }) }, Vec::new(), interp) }; let __t2705 = { let __t2704 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2704])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2677, __t2703, __t2705])? }; rt::apply_direct(interp, "set", &[__t2676, __t2706])? }; - { - let _ = { let __t2707 = Value::sym(interp.intern("shen.*sigf*")); let __t2724 = { let __t2708 = Value::sym(interp.intern("hush")); let __t2721 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6176 = args[0].clone(); Ok({ let v_V6176 = v_V6176.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6172 = args[0].clone(); Ok({ let v_B6172 = v_B6172.clone(); let v_V6176 = v_V6176.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6173 = args[0].clone(); Ok({ let v_B6172 = v_B6172.clone(); let v_L6173 = v_L6173.clone(); let v_V6176 = v_V6176.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6174 = args[0].clone(); Ok({ let v_B6172 = v_B6172.clone(); let v_Key6174 = v_Key6174.clone(); let v_L6173 = v_L6173.clone(); let v_V6176 = v_V6176.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6175 = args[0].clone(); Ok({ let __t2709 = v_V6176.clone(); let __t2716 = { let __t2710 = Value::sym(interp.intern("symbol")); let __t2715 = { let __t2711 = Value::sym(interp.intern("-->")); let __t2714 = { let __t2712 = Value::sym(interp.intern("boolean")); let __t2713 = Value::nil(); rt::cons(&__t2712, &__t2713) }; rt::cons(&__t2711, &__t2714) }; rt::cons(&__t2710, &__t2715) }; let __t2717 = v_B6172.clone(); let __t2718 = v_L6173.clone(); let __t2719 = v_Key6174.clone(); let __t2720 = v_C6175.clone(); rt::apply_direct(interp, "is!", &[__t2709, __t2716, __t2717, __t2718, __t2719, __t2720])? }) }, vec![v_B6172, v_Key6174, v_L6173, v_V6176], interp) }) }, vec![v_B6172, v_L6173, v_V6176], interp) }) }, vec![v_B6172, v_V6176], interp) }) }, vec![v_V6176], interp) }) }, Vec::new(), interp) }; let __t2723 = { let __t2722 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2722])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2708, __t2721, __t2723])? }; rt::apply_direct(interp, "set", &[__t2707, __t2724])? }; - { - let _ = { let __t2725 = Value::sym(interp.intern("shen.*sigf*")); let __t2740 = { let __t2726 = Value::sym(interp.intern("hush?")); let __t2737 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6181 = args[0].clone(); Ok({ let v_V6181 = v_V6181.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6177 = args[0].clone(); Ok({ let v_B6177 = v_B6177.clone(); let v_V6181 = v_V6181.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6178 = args[0].clone(); Ok({ let v_B6177 = v_B6177.clone(); let v_L6178 = v_L6178.clone(); let v_V6181 = v_V6181.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6179 = args[0].clone(); Ok({ let v_B6177 = v_B6177.clone(); let v_Key6179 = v_Key6179.clone(); let v_L6178 = v_L6178.clone(); let v_V6181 = v_V6181.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6180 = args[0].clone(); Ok({ let __t2727 = v_V6181.clone(); let __t2732 = { let __t2728 = Value::sym(interp.intern("-->")); let __t2731 = { let __t2729 = Value::sym(interp.intern("boolean")); let __t2730 = Value::nil(); rt::cons(&__t2729, &__t2730) }; rt::cons(&__t2728, &__t2731) }; let __t2733 = v_B6177.clone(); let __t2734 = v_L6178.clone(); let __t2735 = v_Key6179.clone(); let __t2736 = v_C6180.clone(); rt::apply_direct(interp, "is!", &[__t2727, __t2732, __t2733, __t2734, __t2735, __t2736])? }) }, vec![v_B6177, v_Key6179, v_L6178, v_V6181], interp) }) }, vec![v_B6177, v_L6178, v_V6181], interp) }) }, vec![v_B6177, v_V6181], interp) }) }, vec![v_V6181], interp) }) }, Vec::new(), interp) }; let __t2739 = { let __t2738 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2738])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2726, __t2737, __t2739])? }; rt::apply_direct(interp, "set", &[__t2725, __t2740])? }; - { - let _ = { let __t2741 = Value::sym(interp.intern("shen.*sigf*")); let __t2771 = { let __t2742 = Value::sym(interp.intern("<-vector")); let __t2768 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6186 = args[0].clone(); Ok({ let v_V6186 = v_V6186.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6182 = args[0].clone(); Ok({ let v_B6182 = v_B6182.clone(); let v_V6186 = v_V6186.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6183 = args[0].clone(); Ok({ let v_B6182 = v_B6182.clone(); let v_L6183 = v_L6183.clone(); let v_V6186 = v_V6186.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6184 = args[0].clone(); Ok({ let v_B6182 = v_B6182.clone(); let v_Key6184 = v_Key6184.clone(); let v_L6183 = v_L6183.clone(); let v_V6186 = v_V6186.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6185 = args[0].clone(); Ok({ let v_A = { let __t2743 = v_B6182.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2743])? }; { let __t2744 = v_B6182.clone(); let __t2767 = { let __t2745 = v_V6186.clone(); let __t2762 = { let __t2750 = { let __t2746 = Value::sym(interp.intern("vector")); let __t2749 = { let __t2747 = v_A.clone(); let __t2748 = Value::nil(); rt::cons(&__t2747, &__t2748) }; rt::cons(&__t2746, &__t2749) }; let __t2761 = { let __t2751 = Value::sym(interp.intern("-->")); let __t2760 = { let __t2758 = { let __t2752 = Value::sym(interp.intern("number")); let __t2757 = { let __t2753 = Value::sym(interp.intern("-->")); let __t2756 = { let __t2754 = v_A.clone(); let __t2755 = Value::nil(); rt::cons(&__t2754, &__t2755) }; rt::cons(&__t2753, &__t2756) }; rt::cons(&__t2752, &__t2757) }; let __t2759 = Value::nil(); rt::cons(&__t2758, &__t2759) }; rt::cons(&__t2751, &__t2760) }; rt::cons(&__t2750, &__t2761) }; let __t2763 = v_B6182.clone(); let __t2764 = v_L6183.clone(); let __t2765 = v_Key6184.clone(); let __t2766 = v_C6185.clone(); rt::apply_direct(interp, "is!", &[__t2745, __t2762, __t2763, __t2764, __t2765, __t2766])? }; rt::apply_direct(interp, "shen.gc", &[__t2744, __t2767])? } }) }, vec![v_B6182, v_Key6184, v_L6183, v_V6186], interp) }) }, vec![v_B6182, v_L6183, v_V6186], interp) }) }, vec![v_B6182, v_V6186], interp) }) }, vec![v_V6186], interp) }) }, Vec::new(), interp) }; let __t2770 = { let __t2769 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2769])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2742, __t2768, __t2770])? }; rt::apply_direct(interp, "set", &[__t2741, __t2771])? }; - { - let _ = { let __t2772 = Value::sym(interp.intern("shen.*sigf*")); let __t2812 = { let __t2773 = Value::sym(interp.intern("vector->")); let __t2809 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6191 = args[0].clone(); Ok({ let v_V6191 = v_V6191.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6187 = args[0].clone(); Ok({ let v_B6187 = v_B6187.clone(); let v_V6191 = v_V6191.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6188 = args[0].clone(); Ok({ let v_B6187 = v_B6187.clone(); let v_L6188 = v_L6188.clone(); let v_V6191 = v_V6191.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6189 = args[0].clone(); Ok({ let v_B6187 = v_B6187.clone(); let v_Key6189 = v_Key6189.clone(); let v_L6188 = v_L6188.clone(); let v_V6191 = v_V6191.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6190 = args[0].clone(); Ok({ let v_A = { let __t2774 = v_B6187.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2774])? }; { let __t2775 = v_B6187.clone(); let __t2808 = { let __t2776 = v_V6191.clone(); let __t2803 = { let __t2781 = { let __t2777 = Value::sym(interp.intern("vector")); let __t2780 = { let __t2778 = v_A.clone(); let __t2779 = Value::nil(); rt::cons(&__t2778, &__t2779) }; rt::cons(&__t2777, &__t2780) }; let __t2802 = { let __t2782 = Value::sym(interp.intern("-->")); let __t2801 = { let __t2799 = { let __t2783 = Value::sym(interp.intern("number")); let __t2798 = { let __t2784 = Value::sym(interp.intern("-->")); let __t2797 = { let __t2795 = { let __t2785 = v_A.clone(); let __t2794 = { let __t2786 = Value::sym(interp.intern("-->")); let __t2793 = { let __t2791 = { let __t2787 = Value::sym(interp.intern("vector")); let __t2790 = { let __t2788 = v_A.clone(); let __t2789 = Value::nil(); rt::cons(&__t2788, &__t2789) }; rt::cons(&__t2787, &__t2790) }; let __t2792 = Value::nil(); rt::cons(&__t2791, &__t2792) }; rt::cons(&__t2786, &__t2793) }; rt::cons(&__t2785, &__t2794) }; let __t2796 = Value::nil(); rt::cons(&__t2795, &__t2796) }; rt::cons(&__t2784, &__t2797) }; rt::cons(&__t2783, &__t2798) }; let __t2800 = Value::nil(); rt::cons(&__t2799, &__t2800) }; rt::cons(&__t2782, &__t2801) }; rt::cons(&__t2781, &__t2802) }; let __t2804 = v_B6187.clone(); let __t2805 = v_L6188.clone(); let __t2806 = v_Key6189.clone(); let __t2807 = v_C6190.clone(); rt::apply_direct(interp, "is!", &[__t2776, __t2803, __t2804, __t2805, __t2806, __t2807])? }; rt::apply_direct(interp, "shen.gc", &[__t2775, __t2808])? } }) }, vec![v_B6187, v_Key6189, v_L6188, v_V6191], interp) }) }, vec![v_B6187, v_L6188, v_V6191], interp) }) }, vec![v_B6187, v_V6191], interp) }) }, vec![v_V6191], interp) }) }, Vec::new(), interp) }; let __t2811 = { let __t2810 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2810])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2773, __t2809, __t2811])? }; rt::apply_direct(interp, "set", &[__t2772, __t2812])? }; - { - let _ = { let __t2813 = Value::sym(interp.intern("shen.*sigf*")); let __t2837 = { let __t2814 = Value::sym(interp.intern("vector")); let __t2834 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6196 = args[0].clone(); Ok({ let v_V6196 = v_V6196.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6192 = args[0].clone(); Ok({ let v_B6192 = v_B6192.clone(); let v_V6196 = v_V6196.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6193 = args[0].clone(); Ok({ let v_B6192 = v_B6192.clone(); let v_L6193 = v_L6193.clone(); let v_V6196 = v_V6196.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6194 = args[0].clone(); Ok({ let v_B6192 = v_B6192.clone(); let v_Key6194 = v_Key6194.clone(); let v_L6193 = v_L6193.clone(); let v_V6196 = v_V6196.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6195 = args[0].clone(); Ok({ let v_A = { let __t2815 = v_B6192.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2815])? }; { let __t2816 = v_B6192.clone(); let __t2833 = { let __t2817 = v_V6196.clone(); let __t2828 = { let __t2818 = Value::sym(interp.intern("number")); let __t2827 = { let __t2819 = Value::sym(interp.intern("-->")); let __t2826 = { let __t2824 = { let __t2820 = Value::sym(interp.intern("vector")); let __t2823 = { let __t2821 = v_A.clone(); let __t2822 = Value::nil(); rt::cons(&__t2821, &__t2822) }; rt::cons(&__t2820, &__t2823) }; let __t2825 = Value::nil(); rt::cons(&__t2824, &__t2825) }; rt::cons(&__t2819, &__t2826) }; rt::cons(&__t2818, &__t2827) }; let __t2829 = v_B6192.clone(); let __t2830 = v_L6193.clone(); let __t2831 = v_Key6194.clone(); let __t2832 = v_C6195.clone(); rt::apply_direct(interp, "is!", &[__t2817, __t2828, __t2829, __t2830, __t2831, __t2832])? }; rt::apply_direct(interp, "shen.gc", &[__t2816, __t2833])? } }) }, vec![v_B6192, v_Key6194, v_L6193, v_V6196], interp) }) }, vec![v_B6192, v_L6193, v_V6196], interp) }) }, vec![v_B6192, v_V6196], interp) }) }, vec![v_V6196], interp) }) }, Vec::new(), interp) }; let __t2836 = { let __t2835 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2835])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2814, __t2834, __t2836])? }; rt::apply_direct(interp, "set", &[__t2813, __t2837])? }; - { - let _ = { let __t2838 = Value::sym(interp.intern("shen.*sigf*")); let __t2855 = { let __t2839 = Value::sym(interp.intern("get-time")); let __t2852 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6201 = args[0].clone(); Ok({ let v_V6201 = v_V6201.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6197 = args[0].clone(); Ok({ let v_B6197 = v_B6197.clone(); let v_V6201 = v_V6201.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6198 = args[0].clone(); Ok({ let v_B6197 = v_B6197.clone(); let v_L6198 = v_L6198.clone(); let v_V6201 = v_V6201.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6199 = args[0].clone(); Ok({ let v_B6197 = v_B6197.clone(); let v_Key6199 = v_Key6199.clone(); let v_L6198 = v_L6198.clone(); let v_V6201 = v_V6201.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6200 = args[0].clone(); Ok({ let __t2840 = v_V6201.clone(); let __t2847 = { let __t2841 = Value::sym(interp.intern("symbol")); let __t2846 = { let __t2842 = Value::sym(interp.intern("-->")); let __t2845 = { let __t2843 = Value::sym(interp.intern("number")); let __t2844 = Value::nil(); rt::cons(&__t2843, &__t2844) }; rt::cons(&__t2842, &__t2845) }; rt::cons(&__t2841, &__t2846) }; let __t2848 = v_B6197.clone(); let __t2849 = v_L6198.clone(); let __t2850 = v_Key6199.clone(); let __t2851 = v_C6200.clone(); rt::apply_direct(interp, "is!", &[__t2840, __t2847, __t2848, __t2849, __t2850, __t2851])? }) }, vec![v_B6197, v_Key6199, v_L6198, v_V6201], interp) }) }, vec![v_B6197, v_L6198, v_V6201], interp) }) }, vec![v_B6197, v_V6201], interp) }) }, vec![v_V6201], interp) }) }, Vec::new(), interp) }; let __t2854 = { let __t2853 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2853])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2839, __t2852, __t2854])? }; rt::apply_direct(interp, "set", &[__t2838, __t2855])? }; - { - let _ = { let __t2856 = Value::sym(interp.intern("shen.*sigf*")); let __t2882 = { let __t2857 = Value::sym(interp.intern("hash")); let __t2879 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6206 = args[0].clone(); Ok({ let v_V6206 = v_V6206.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6202 = args[0].clone(); Ok({ let v_B6202 = v_B6202.clone(); let v_V6206 = v_V6206.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6203 = args[0].clone(); Ok({ let v_B6202 = v_B6202.clone(); let v_L6203 = v_L6203.clone(); let v_V6206 = v_V6206.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6204 = args[0].clone(); Ok({ let v_B6202 = v_B6202.clone(); let v_Key6204 = v_Key6204.clone(); let v_L6203 = v_L6203.clone(); let v_V6206 = v_V6206.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6205 = args[0].clone(); Ok({ let v_A = { let __t2858 = v_B6202.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2858])? }; { let __t2859 = v_B6202.clone(); let __t2878 = { let __t2860 = v_V6206.clone(); let __t2873 = { let __t2861 = v_A.clone(); let __t2872 = { let __t2862 = Value::sym(interp.intern("-->")); let __t2871 = { let __t2869 = { let __t2863 = Value::sym(interp.intern("number")); let __t2868 = { let __t2864 = Value::sym(interp.intern("-->")); let __t2867 = { let __t2865 = Value::sym(interp.intern("number")); let __t2866 = Value::nil(); rt::cons(&__t2865, &__t2866) }; rt::cons(&__t2864, &__t2867) }; rt::cons(&__t2863, &__t2868) }; let __t2870 = Value::nil(); rt::cons(&__t2869, &__t2870) }; rt::cons(&__t2862, &__t2871) }; rt::cons(&__t2861, &__t2872) }; let __t2874 = v_B6202.clone(); let __t2875 = v_L6203.clone(); let __t2876 = v_Key6204.clone(); let __t2877 = v_C6205.clone(); rt::apply_direct(interp, "is!", &[__t2860, __t2873, __t2874, __t2875, __t2876, __t2877])? }; rt::apply_direct(interp, "shen.gc", &[__t2859, __t2878])? } }) }, vec![v_B6202, v_Key6204, v_L6203, v_V6206], interp) }) }, vec![v_B6202, v_L6203, v_V6206], interp) }) }, vec![v_B6202, v_V6206], interp) }) }, vec![v_V6206], interp) }) }, Vec::new(), interp) }; let __t2881 = { let __t2880 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2880])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2857, __t2879, __t2881])? }; rt::apply_direct(interp, "set", &[__t2856, __t2882])? }; - { - let _ = { let __t2883 = Value::sym(interp.intern("shen.*sigf*")); let __t2907 = { let __t2884 = Value::sym(interp.intern("head")); let __t2904 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6211 = args[0].clone(); Ok({ let v_V6211 = v_V6211.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6207 = args[0].clone(); Ok({ let v_B6207 = v_B6207.clone(); let v_V6211 = v_V6211.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6208 = args[0].clone(); Ok({ let v_B6207 = v_B6207.clone(); let v_L6208 = v_L6208.clone(); let v_V6211 = v_V6211.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6209 = args[0].clone(); Ok({ let v_B6207 = v_B6207.clone(); let v_Key6209 = v_Key6209.clone(); let v_L6208 = v_L6208.clone(); let v_V6211 = v_V6211.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6210 = args[0].clone(); Ok({ let v_A = { let __t2885 = v_B6207.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2885])? }; { let __t2886 = v_B6207.clone(); let __t2903 = { let __t2887 = v_V6211.clone(); let __t2898 = { let __t2892 = { let __t2888 = Value::sym(interp.intern("list")); let __t2891 = { let __t2889 = v_A.clone(); let __t2890 = Value::nil(); rt::cons(&__t2889, &__t2890) }; rt::cons(&__t2888, &__t2891) }; let __t2897 = { let __t2893 = Value::sym(interp.intern("-->")); let __t2896 = { let __t2894 = v_A.clone(); let __t2895 = Value::nil(); rt::cons(&__t2894, &__t2895) }; rt::cons(&__t2893, &__t2896) }; rt::cons(&__t2892, &__t2897) }; let __t2899 = v_B6207.clone(); let __t2900 = v_L6208.clone(); let __t2901 = v_Key6209.clone(); let __t2902 = v_C6210.clone(); rt::apply_direct(interp, "is!", &[__t2887, __t2898, __t2899, __t2900, __t2901, __t2902])? }; rt::apply_direct(interp, "shen.gc", &[__t2886, __t2903])? } }) }, vec![v_B6207, v_Key6209, v_L6208, v_V6211], interp) }) }, vec![v_B6207, v_L6208, v_V6211], interp) }) }, vec![v_B6207, v_V6211], interp) }) }, vec![v_V6211], interp) }) }, Vec::new(), interp) }; let __t2906 = { let __t2905 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2905])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2884, __t2904, __t2906])? }; rt::apply_direct(interp, "set", &[__t2883, __t2907])? }; - { - let _ = { let __t2908 = Value::sym(interp.intern("shen.*sigf*")); let __t2932 = { let __t2909 = Value::sym(interp.intern("hdv")); let __t2929 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6216 = args[0].clone(); Ok({ let v_V6216 = v_V6216.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6212 = args[0].clone(); Ok({ let v_B6212 = v_B6212.clone(); let v_V6216 = v_V6216.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6213 = args[0].clone(); Ok({ let v_B6212 = v_B6212.clone(); let v_L6213 = v_L6213.clone(); let v_V6216 = v_V6216.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6214 = args[0].clone(); Ok({ let v_B6212 = v_B6212.clone(); let v_Key6214 = v_Key6214.clone(); let v_L6213 = v_L6213.clone(); let v_V6216 = v_V6216.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6215 = args[0].clone(); Ok({ let v_A = { let __t2910 = v_B6212.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2910])? }; { let __t2911 = v_B6212.clone(); let __t2928 = { let __t2912 = v_V6216.clone(); let __t2923 = { let __t2917 = { let __t2913 = Value::sym(interp.intern("vector")); let __t2916 = { let __t2914 = v_A.clone(); let __t2915 = Value::nil(); rt::cons(&__t2914, &__t2915) }; rt::cons(&__t2913, &__t2916) }; let __t2922 = { let __t2918 = Value::sym(interp.intern("-->")); let __t2921 = { let __t2919 = v_A.clone(); let __t2920 = Value::nil(); rt::cons(&__t2919, &__t2920) }; rt::cons(&__t2918, &__t2921) }; rt::cons(&__t2917, &__t2922) }; let __t2924 = v_B6212.clone(); let __t2925 = v_L6213.clone(); let __t2926 = v_Key6214.clone(); let __t2927 = v_C6215.clone(); rt::apply_direct(interp, "is!", &[__t2912, __t2923, __t2924, __t2925, __t2926, __t2927])? }; rt::apply_direct(interp, "shen.gc", &[__t2911, __t2928])? } }) }, vec![v_B6212, v_Key6214, v_L6213, v_V6216], interp) }) }, vec![v_B6212, v_L6213, v_V6216], interp) }) }, vec![v_B6212, v_V6216], interp) }) }, vec![v_V6216], interp) }) }, Vec::new(), interp) }; let __t2931 = { let __t2930 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2930])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2909, __t2929, __t2931])? }; rt::apply_direct(interp, "set", &[__t2908, __t2932])? }; - { - let _ = { let __t2933 = Value::sym(interp.intern("shen.*sigf*")); let __t2950 = { let __t2934 = Value::sym(interp.intern("hdstr")); let __t2947 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6221 = args[0].clone(); Ok({ let v_V6221 = v_V6221.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6217 = args[0].clone(); Ok({ let v_B6217 = v_B6217.clone(); let v_V6221 = v_V6221.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6218 = args[0].clone(); Ok({ let v_B6217 = v_B6217.clone(); let v_L6218 = v_L6218.clone(); let v_V6221 = v_V6221.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6219 = args[0].clone(); Ok({ let v_B6217 = v_B6217.clone(); let v_Key6219 = v_Key6219.clone(); let v_L6218 = v_L6218.clone(); let v_V6221 = v_V6221.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6220 = args[0].clone(); Ok({ let __t2935 = v_V6221.clone(); let __t2942 = { let __t2936 = Value::sym(interp.intern("string")); let __t2941 = { let __t2937 = Value::sym(interp.intern("-->")); let __t2940 = { let __t2938 = Value::sym(interp.intern("string")); let __t2939 = Value::nil(); rt::cons(&__t2938, &__t2939) }; rt::cons(&__t2937, &__t2940) }; rt::cons(&__t2936, &__t2941) }; let __t2943 = v_B6217.clone(); let __t2944 = v_L6218.clone(); let __t2945 = v_Key6219.clone(); let __t2946 = v_C6220.clone(); rt::apply_direct(interp, "is!", &[__t2935, __t2942, __t2943, __t2944, __t2945, __t2946])? }) }, vec![v_B6217, v_Key6219, v_L6218, v_V6221], interp) }) }, vec![v_B6217, v_L6218, v_V6221], interp) }) }, vec![v_B6217, v_V6221], interp) }) }, vec![v_V6221], interp) }) }, Vec::new(), interp) }; let __t2949 = { let __t2948 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2948])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2934, __t2947, __t2949])? }; rt::apply_direct(interp, "set", &[__t2933, __t2950])? }; - { - let _ = { let __t2951 = Value::sym(interp.intern("shen.*sigf*")); let __t2983 = { let __t2952 = Value::sym(interp.intern("if")); let __t2980 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6226 = args[0].clone(); Ok({ let v_V6226 = v_V6226.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6222 = args[0].clone(); Ok({ let v_B6222 = v_B6222.clone(); let v_V6226 = v_V6226.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6223 = args[0].clone(); Ok({ let v_B6222 = v_B6222.clone(); let v_L6223 = v_L6223.clone(); let v_V6226 = v_V6226.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6224 = args[0].clone(); Ok({ let v_B6222 = v_B6222.clone(); let v_Key6224 = v_Key6224.clone(); let v_L6223 = v_L6223.clone(); let v_V6226 = v_V6226.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6225 = args[0].clone(); Ok({ let v_A = { let __t2953 = v_B6222.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2953])? }; { let __t2954 = v_B6222.clone(); let __t2979 = { let __t2955 = v_V6226.clone(); let __t2974 = { let __t2956 = Value::sym(interp.intern("boolean")); let __t2973 = { let __t2957 = Value::sym(interp.intern("-->")); let __t2972 = { let __t2970 = { let __t2958 = v_A.clone(); let __t2969 = { let __t2959 = Value::sym(interp.intern("-->")); let __t2968 = { let __t2966 = { let __t2960 = v_A.clone(); let __t2965 = { let __t2961 = Value::sym(interp.intern("-->")); let __t2964 = { let __t2962 = v_A.clone(); let __t2963 = Value::nil(); rt::cons(&__t2962, &__t2963) }; rt::cons(&__t2961, &__t2964) }; rt::cons(&__t2960, &__t2965) }; let __t2967 = Value::nil(); rt::cons(&__t2966, &__t2967) }; rt::cons(&__t2959, &__t2968) }; rt::cons(&__t2958, &__t2969) }; let __t2971 = Value::nil(); rt::cons(&__t2970, &__t2971) }; rt::cons(&__t2957, &__t2972) }; rt::cons(&__t2956, &__t2973) }; let __t2975 = v_B6222.clone(); let __t2976 = v_L6223.clone(); let __t2977 = v_Key6224.clone(); let __t2978 = v_C6225.clone(); rt::apply_direct(interp, "is!", &[__t2955, __t2974, __t2975, __t2976, __t2977, __t2978])? }; rt::apply_direct(interp, "shen.gc", &[__t2954, __t2979])? } }) }, vec![v_B6222, v_Key6224, v_L6223, v_V6226], interp) }) }, vec![v_B6222, v_L6223, v_V6226], interp) }) }, vec![v_B6222, v_V6226], interp) }) }, vec![v_V6226], interp) }) }, Vec::new(), interp) }; let __t2982 = { let __t2981 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2981])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2952, __t2980, __t2982])? }; rt::apply_direct(interp, "set", &[__t2951, __t2983])? }; - { - let _ = { let __t2984 = Value::sym(interp.intern("shen.*sigf*")); let __t3001 = { let __t2985 = Value::sym(interp.intern("in-package")); let __t2998 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6231 = args[0].clone(); Ok({ let v_V6231 = v_V6231.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6227 = args[0].clone(); Ok({ let v_B6227 = v_B6227.clone(); let v_V6231 = v_V6231.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6228 = args[0].clone(); Ok({ let v_B6227 = v_B6227.clone(); let v_L6228 = v_L6228.clone(); let v_V6231 = v_V6231.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6229 = args[0].clone(); Ok({ let v_B6227 = v_B6227.clone(); let v_Key6229 = v_Key6229.clone(); let v_L6228 = v_L6228.clone(); let v_V6231 = v_V6231.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6230 = args[0].clone(); Ok({ let __t2986 = v_V6231.clone(); let __t2993 = { let __t2987 = Value::sym(interp.intern("symbol")); let __t2992 = { let __t2988 = Value::sym(interp.intern("-->")); let __t2991 = { let __t2989 = Value::sym(interp.intern("symbol")); let __t2990 = Value::nil(); rt::cons(&__t2989, &__t2990) }; rt::cons(&__t2988, &__t2991) }; rt::cons(&__t2987, &__t2992) }; let __t2994 = v_B6227.clone(); let __t2995 = v_L6228.clone(); let __t2996 = v_Key6229.clone(); let __t2997 = v_C6230.clone(); rt::apply_direct(interp, "is!", &[__t2986, __t2993, __t2994, __t2995, __t2996, __t2997])? }) }, vec![v_B6227, v_Key6229, v_L6228, v_V6231], interp) }) }, vec![v_B6227, v_L6228, v_V6231], interp) }) }, vec![v_B6227, v_V6231], interp) }) }, vec![v_V6231], interp) }) }, Vec::new(), interp) }; let __t3000 = { let __t2999 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t2999])? }; rt::apply_direct(interp, "shen.assoc->", &[__t2985, __t2998, __t3000])? }; rt::apply_direct(interp, "set", &[__t2984, __t3001])? }; - { - let _ = { let __t3002 = Value::sym(interp.intern("shen.*sigf*")); let __t3017 = { let __t3003 = Value::sym(interp.intern("it")); let __t3014 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6236 = args[0].clone(); Ok({ let v_V6236 = v_V6236.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6232 = args[0].clone(); Ok({ let v_B6232 = v_B6232.clone(); let v_V6236 = v_V6236.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6233 = args[0].clone(); Ok({ let v_B6232 = v_B6232.clone(); let v_L6233 = v_L6233.clone(); let v_V6236 = v_V6236.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6234 = args[0].clone(); Ok({ let v_B6232 = v_B6232.clone(); let v_Key6234 = v_Key6234.clone(); let v_L6233 = v_L6233.clone(); let v_V6236 = v_V6236.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6235 = args[0].clone(); Ok({ let __t3004 = v_V6236.clone(); let __t3009 = { let __t3005 = Value::sym(interp.intern("-->")); let __t3008 = { let __t3006 = Value::sym(interp.intern("string")); let __t3007 = Value::nil(); rt::cons(&__t3006, &__t3007) }; rt::cons(&__t3005, &__t3008) }; let __t3010 = v_B6232.clone(); let __t3011 = v_L6233.clone(); let __t3012 = v_Key6234.clone(); let __t3013 = v_C6235.clone(); rt::apply_direct(interp, "is!", &[__t3004, __t3009, __t3010, __t3011, __t3012, __t3013])? }) }, vec![v_B6232, v_Key6234, v_L6233, v_V6236], interp) }) }, vec![v_B6232, v_L6233, v_V6236], interp) }) }, vec![v_B6232, v_V6236], interp) }) }, vec![v_V6236], interp) }) }, Vec::new(), interp) }; let __t3016 = { let __t3015 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3015])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3003, __t3014, __t3016])? }; rt::apply_direct(interp, "set", &[__t3002, __t3017])? }; - { - let _ = { let __t3018 = Value::sym(interp.intern("shen.*sigf*")); let __t3033 = { let __t3019 = Value::sym(interp.intern("implementation")); let __t3030 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6241 = args[0].clone(); Ok({ let v_V6241 = v_V6241.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6237 = args[0].clone(); Ok({ let v_B6237 = v_B6237.clone(); let v_V6241 = v_V6241.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6238 = args[0].clone(); Ok({ let v_B6237 = v_B6237.clone(); let v_L6238 = v_L6238.clone(); let v_V6241 = v_V6241.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6239 = args[0].clone(); Ok({ let v_B6237 = v_B6237.clone(); let v_Key6239 = v_Key6239.clone(); let v_L6238 = v_L6238.clone(); let v_V6241 = v_V6241.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6240 = args[0].clone(); Ok({ let __t3020 = v_V6241.clone(); let __t3025 = { let __t3021 = Value::sym(interp.intern("-->")); let __t3024 = { let __t3022 = Value::sym(interp.intern("string")); let __t3023 = Value::nil(); rt::cons(&__t3022, &__t3023) }; rt::cons(&__t3021, &__t3024) }; let __t3026 = v_B6237.clone(); let __t3027 = v_L6238.clone(); let __t3028 = v_Key6239.clone(); let __t3029 = v_C6240.clone(); rt::apply_direct(interp, "is!", &[__t3020, __t3025, __t3026, __t3027, __t3028, __t3029])? }) }, vec![v_B6237, v_Key6239, v_L6238, v_V6241], interp) }) }, vec![v_B6237, v_L6238, v_V6241], interp) }) }, vec![v_B6237, v_V6241], interp) }) }, vec![v_V6241], interp) }) }, Vec::new(), interp) }; let __t3032 = { let __t3031 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3031])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3019, __t3030, __t3032])? }; rt::apply_direct(interp, "set", &[__t3018, __t3033])? }; - { - let _ = { let __t3034 = Value::sym(interp.intern("shen.*sigf*")); let __t3059 = { let __t3035 = Value::sym(interp.intern("include")); let __t3056 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6246 = args[0].clone(); Ok({ let v_V6246 = v_V6246.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6242 = args[0].clone(); Ok({ let v_B6242 = v_B6242.clone(); let v_V6246 = v_V6246.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6243 = args[0].clone(); Ok({ let v_B6242 = v_B6242.clone(); let v_L6243 = v_L6243.clone(); let v_V6246 = v_V6246.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6244 = args[0].clone(); Ok({ let v_B6242 = v_B6242.clone(); let v_Key6244 = v_Key6244.clone(); let v_L6243 = v_L6243.clone(); let v_V6246 = v_V6246.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6245 = args[0].clone(); Ok({ let __t3036 = v_V6246.clone(); let __t3051 = { let __t3041 = { let __t3037 = Value::sym(interp.intern("list")); let __t3040 = { let __t3038 = Value::sym(interp.intern("symbol")); let __t3039 = Value::nil(); rt::cons(&__t3038, &__t3039) }; rt::cons(&__t3037, &__t3040) }; let __t3050 = { let __t3042 = Value::sym(interp.intern("-->")); let __t3049 = { let __t3047 = { let __t3043 = Value::sym(interp.intern("list")); let __t3046 = { let __t3044 = Value::sym(interp.intern("symbol")); let __t3045 = Value::nil(); rt::cons(&__t3044, &__t3045) }; rt::cons(&__t3043, &__t3046) }; let __t3048 = Value::nil(); rt::cons(&__t3047, &__t3048) }; rt::cons(&__t3042, &__t3049) }; rt::cons(&__t3041, &__t3050) }; let __t3052 = v_B6242.clone(); let __t3053 = v_L6243.clone(); let __t3054 = v_Key6244.clone(); let __t3055 = v_C6245.clone(); rt::apply_direct(interp, "is!", &[__t3036, __t3051, __t3052, __t3053, __t3054, __t3055])? }) }, vec![v_B6242, v_Key6244, v_L6243, v_V6246], interp) }) }, vec![v_B6242, v_L6243, v_V6246], interp) }) }, vec![v_B6242, v_V6246], interp) }) }, vec![v_V6246], interp) }) }, Vec::new(), interp) }; let __t3058 = { let __t3057 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3057])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3035, __t3056, __t3058])? }; rt::apply_direct(interp, "set", &[__t3034, __t3059])? }; - { - let _ = { let __t3060 = Value::sym(interp.intern("shen.*sigf*")); let __t3085 = { let __t3061 = Value::sym(interp.intern("include-all-but")); let __t3082 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6251 = args[0].clone(); Ok({ let v_V6251 = v_V6251.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6247 = args[0].clone(); Ok({ let v_B6247 = v_B6247.clone(); let v_V6251 = v_V6251.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6248 = args[0].clone(); Ok({ let v_B6247 = v_B6247.clone(); let v_L6248 = v_L6248.clone(); let v_V6251 = v_V6251.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6249 = args[0].clone(); Ok({ let v_B6247 = v_B6247.clone(); let v_Key6249 = v_Key6249.clone(); let v_L6248 = v_L6248.clone(); let v_V6251 = v_V6251.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6250 = args[0].clone(); Ok({ let __t3062 = v_V6251.clone(); let __t3077 = { let __t3067 = { let __t3063 = Value::sym(interp.intern("list")); let __t3066 = { let __t3064 = Value::sym(interp.intern("symbol")); let __t3065 = Value::nil(); rt::cons(&__t3064, &__t3065) }; rt::cons(&__t3063, &__t3066) }; let __t3076 = { let __t3068 = Value::sym(interp.intern("-->")); let __t3075 = { let __t3073 = { let __t3069 = Value::sym(interp.intern("list")); let __t3072 = { let __t3070 = Value::sym(interp.intern("symbol")); let __t3071 = Value::nil(); rt::cons(&__t3070, &__t3071) }; rt::cons(&__t3069, &__t3072) }; let __t3074 = Value::nil(); rt::cons(&__t3073, &__t3074) }; rt::cons(&__t3068, &__t3075) }; rt::cons(&__t3067, &__t3076) }; let __t3078 = v_B6247.clone(); let __t3079 = v_L6248.clone(); let __t3080 = v_Key6249.clone(); let __t3081 = v_C6250.clone(); rt::apply_direct(interp, "is!", &[__t3062, __t3077, __t3078, __t3079, __t3080, __t3081])? }) }, vec![v_B6247, v_Key6249, v_L6248, v_V6251], interp) }) }, vec![v_B6247, v_L6248, v_V6251], interp) }) }, vec![v_B6247, v_V6251], interp) }) }, vec![v_V6251], interp) }) }, Vec::new(), interp) }; let __t3084 = { let __t3083 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3083])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3061, __t3082, __t3084])? }; rt::apply_direct(interp, "set", &[__t3060, __t3085])? }; - { - let _ = { let __t3086 = Value::sym(interp.intern("shen.*sigf*")); let __t3105 = { let __t3087 = Value::sym(interp.intern("included")); let __t3102 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6256 = args[0].clone(); Ok({ let v_V6256 = v_V6256.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6252 = args[0].clone(); Ok({ let v_B6252 = v_B6252.clone(); let v_V6256 = v_V6256.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6253 = args[0].clone(); Ok({ let v_B6252 = v_B6252.clone(); let v_L6253 = v_L6253.clone(); let v_V6256 = v_V6256.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6254 = args[0].clone(); Ok({ let v_B6252 = v_B6252.clone(); let v_Key6254 = v_Key6254.clone(); let v_L6253 = v_L6253.clone(); let v_V6256 = v_V6256.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6255 = args[0].clone(); Ok({ let __t3088 = v_V6256.clone(); let __t3097 = { let __t3089 = Value::sym(interp.intern("-->")); let __t3096 = { let __t3094 = { let __t3090 = Value::sym(interp.intern("list")); let __t3093 = { let __t3091 = Value::sym(interp.intern("symbol")); let __t3092 = Value::nil(); rt::cons(&__t3091, &__t3092) }; rt::cons(&__t3090, &__t3093) }; let __t3095 = Value::nil(); rt::cons(&__t3094, &__t3095) }; rt::cons(&__t3089, &__t3096) }; let __t3098 = v_B6252.clone(); let __t3099 = v_L6253.clone(); let __t3100 = v_Key6254.clone(); let __t3101 = v_C6255.clone(); rt::apply_direct(interp, "is!", &[__t3088, __t3097, __t3098, __t3099, __t3100, __t3101])? }) }, vec![v_B6252, v_Key6254, v_L6253, v_V6256], interp) }) }, vec![v_B6252, v_L6253, v_V6256], interp) }) }, vec![v_B6252, v_V6256], interp) }) }, vec![v_V6256], interp) }) }, Vec::new(), interp) }; let __t3104 = { let __t3103 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3103])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3087, __t3102, __t3104])? }; rt::apply_direct(interp, "set", &[__t3086, __t3105])? }; - { - let _ = { let __t3106 = Value::sym(interp.intern("shen.*sigf*")); let __t3121 = { let __t3107 = Value::sym(interp.intern("inferences")); let __t3118 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6261 = args[0].clone(); Ok({ let v_V6261 = v_V6261.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6257 = args[0].clone(); Ok({ let v_B6257 = v_B6257.clone(); let v_V6261 = v_V6261.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6258 = args[0].clone(); Ok({ let v_B6257 = v_B6257.clone(); let v_L6258 = v_L6258.clone(); let v_V6261 = v_V6261.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6259 = args[0].clone(); Ok({ let v_B6257 = v_B6257.clone(); let v_Key6259 = v_Key6259.clone(); let v_L6258 = v_L6258.clone(); let v_V6261 = v_V6261.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6260 = args[0].clone(); Ok({ let __t3108 = v_V6261.clone(); let __t3113 = { let __t3109 = Value::sym(interp.intern("-->")); let __t3112 = { let __t3110 = Value::sym(interp.intern("number")); let __t3111 = Value::nil(); rt::cons(&__t3110, &__t3111) }; rt::cons(&__t3109, &__t3112) }; let __t3114 = v_B6257.clone(); let __t3115 = v_L6258.clone(); let __t3116 = v_Key6259.clone(); let __t3117 = v_C6260.clone(); rt::apply_direct(interp, "is!", &[__t3108, __t3113, __t3114, __t3115, __t3116, __t3117])? }) }, vec![v_B6257, v_Key6259, v_L6258, v_V6261], interp) }) }, vec![v_B6257, v_L6258, v_V6261], interp) }) }, vec![v_B6257, v_V6261], interp) }) }, vec![v_V6261], interp) }) }, Vec::new(), interp) }; let __t3120 = { let __t3119 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3119])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3107, __t3118, __t3120])? }; rt::apply_direct(interp, "set", &[__t3106, __t3121])? }; - { - let _ = { let __t3122 = Value::sym(interp.intern("shen.*sigf*")); let __t3148 = { let __t3123 = Value::sym(interp.intern("shen.insert")); let __t3145 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6266 = args[0].clone(); Ok({ let v_V6266 = v_V6266.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6262 = args[0].clone(); Ok({ let v_B6262 = v_B6262.clone(); let v_V6266 = v_V6266.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6263 = args[0].clone(); Ok({ let v_B6262 = v_B6262.clone(); let v_L6263 = v_L6263.clone(); let v_V6266 = v_V6266.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6264 = args[0].clone(); Ok({ let v_B6262 = v_B6262.clone(); let v_Key6264 = v_Key6264.clone(); let v_L6263 = v_L6263.clone(); let v_V6266 = v_V6266.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6265 = args[0].clone(); Ok({ let v_A = { let __t3124 = v_B6262.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3124])? }; { let __t3125 = v_B6262.clone(); let __t3144 = { let __t3126 = v_V6266.clone(); let __t3139 = { let __t3127 = v_A.clone(); let __t3138 = { let __t3128 = Value::sym(interp.intern("-->")); let __t3137 = { let __t3135 = { let __t3129 = Value::sym(interp.intern("string")); let __t3134 = { let __t3130 = Value::sym(interp.intern("-->")); let __t3133 = { let __t3131 = Value::sym(interp.intern("string")); let __t3132 = Value::nil(); rt::cons(&__t3131, &__t3132) }; rt::cons(&__t3130, &__t3133) }; rt::cons(&__t3129, &__t3134) }; let __t3136 = Value::nil(); rt::cons(&__t3135, &__t3136) }; rt::cons(&__t3128, &__t3137) }; rt::cons(&__t3127, &__t3138) }; let __t3140 = v_B6262.clone(); let __t3141 = v_L6263.clone(); let __t3142 = v_Key6264.clone(); let __t3143 = v_C6265.clone(); rt::apply_direct(interp, "is!", &[__t3126, __t3139, __t3140, __t3141, __t3142, __t3143])? }; rt::apply_direct(interp, "shen.gc", &[__t3125, __t3144])? } }) }, vec![v_B6262, v_Key6264, v_L6263, v_V6266], interp) }) }, vec![v_B6262, v_L6263, v_V6266], interp) }) }, vec![v_B6262, v_V6266], interp) }) }, vec![v_V6266], interp) }) }, Vec::new(), interp) }; let __t3147 = { let __t3146 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3146])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3123, __t3145, __t3147])? }; rt::apply_direct(interp, "set", &[__t3122, __t3148])? }; - { - let _ = { let __t3149 = Value::sym(interp.intern("shen.*sigf*")); let __t3169 = { let __t3150 = Value::sym(interp.intern("integer?")); let __t3166 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6271 = args[0].clone(); Ok({ let v_V6271 = v_V6271.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6267 = args[0].clone(); Ok({ let v_B6267 = v_B6267.clone(); let v_V6271 = v_V6271.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6268 = args[0].clone(); Ok({ let v_B6267 = v_B6267.clone(); let v_L6268 = v_L6268.clone(); let v_V6271 = v_V6271.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6269 = args[0].clone(); Ok({ let v_B6267 = v_B6267.clone(); let v_Key6269 = v_Key6269.clone(); let v_L6268 = v_L6268.clone(); let v_V6271 = v_V6271.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6270 = args[0].clone(); Ok({ let v_A = { let __t3151 = v_B6267.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3151])? }; { let __t3152 = v_B6267.clone(); let __t3165 = { let __t3153 = v_V6271.clone(); let __t3160 = { let __t3154 = v_A.clone(); let __t3159 = { let __t3155 = Value::sym(interp.intern("-->")); let __t3158 = { let __t3156 = Value::sym(interp.intern("boolean")); let __t3157 = Value::nil(); rt::cons(&__t3156, &__t3157) }; rt::cons(&__t3155, &__t3158) }; rt::cons(&__t3154, &__t3159) }; let __t3161 = v_B6267.clone(); let __t3162 = v_L6268.clone(); let __t3163 = v_Key6269.clone(); let __t3164 = v_C6270.clone(); rt::apply_direct(interp, "is!", &[__t3153, __t3160, __t3161, __t3162, __t3163, __t3164])? }; rt::apply_direct(interp, "shen.gc", &[__t3152, __t3165])? } }) }, vec![v_B6267, v_Key6269, v_L6268, v_V6271], interp) }) }, vec![v_B6267, v_L6268, v_V6271], interp) }) }, vec![v_B6267, v_V6271], interp) }) }, vec![v_V6271], interp) }) }, Vec::new(), interp) }; let __t3168 = { let __t3167 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3167])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3150, __t3166, __t3168])? }; rt::apply_direct(interp, "set", &[__t3149, __t3169])? }; - { - let _ = { let __t3170 = Value::sym(interp.intern("shen.*sigf*")); let __t3191 = { let __t3171 = Value::sym(interp.intern("internal")); let __t3188 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6276 = args[0].clone(); Ok({ let v_V6276 = v_V6276.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6272 = args[0].clone(); Ok({ let v_B6272 = v_B6272.clone(); let v_V6276 = v_V6276.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6273 = args[0].clone(); Ok({ let v_B6272 = v_B6272.clone(); let v_L6273 = v_L6273.clone(); let v_V6276 = v_V6276.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6274 = args[0].clone(); Ok({ let v_B6272 = v_B6272.clone(); let v_Key6274 = v_Key6274.clone(); let v_L6273 = v_L6273.clone(); let v_V6276 = v_V6276.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6275 = args[0].clone(); Ok({ let __t3172 = v_V6276.clone(); let __t3183 = { let __t3173 = Value::sym(interp.intern("symbol")); let __t3182 = { let __t3174 = Value::sym(interp.intern("-->")); let __t3181 = { let __t3179 = { let __t3175 = Value::sym(interp.intern("list")); let __t3178 = { let __t3176 = Value::sym(interp.intern("symbol")); let __t3177 = Value::nil(); rt::cons(&__t3176, &__t3177) }; rt::cons(&__t3175, &__t3178) }; let __t3180 = Value::nil(); rt::cons(&__t3179, &__t3180) }; rt::cons(&__t3174, &__t3181) }; rt::cons(&__t3173, &__t3182) }; let __t3184 = v_B6272.clone(); let __t3185 = v_L6273.clone(); let __t3186 = v_Key6274.clone(); let __t3187 = v_C6275.clone(); rt::apply_direct(interp, "is!", &[__t3172, __t3183, __t3184, __t3185, __t3186, __t3187])? }) }, vec![v_B6272, v_Key6274, v_L6273, v_V6276], interp) }) }, vec![v_B6272, v_L6273, v_V6276], interp) }) }, vec![v_B6272, v_V6276], interp) }) }, vec![v_V6276], interp) }) }, Vec::new(), interp) }; let __t3190 = { let __t3189 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3189])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3171, __t3188, __t3190])? }; rt::apply_direct(interp, "set", &[__t3170, __t3191])? }; - { - let _ = { let __t3192 = Value::sym(interp.intern("shen.*sigf*")); let __t3230 = { let __t3193 = Value::sym(interp.intern("intersection")); let __t3227 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6281 = args[0].clone(); Ok({ let v_V6281 = v_V6281.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6277 = args[0].clone(); Ok({ let v_B6277 = v_B6277.clone(); let v_V6281 = v_V6281.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6278 = args[0].clone(); Ok({ let v_B6277 = v_B6277.clone(); let v_L6278 = v_L6278.clone(); let v_V6281 = v_V6281.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6279 = args[0].clone(); Ok({ let v_B6277 = v_B6277.clone(); let v_Key6279 = v_Key6279.clone(); let v_L6278 = v_L6278.clone(); let v_V6281 = v_V6281.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6280 = args[0].clone(); Ok({ let v_A = { let __t3194 = v_B6277.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3194])? }; { let __t3195 = v_B6277.clone(); let __t3226 = { let __t3196 = v_V6281.clone(); let __t3221 = { let __t3201 = { let __t3197 = Value::sym(interp.intern("list")); let __t3200 = { let __t3198 = v_A.clone(); let __t3199 = Value::nil(); rt::cons(&__t3198, &__t3199) }; rt::cons(&__t3197, &__t3200) }; let __t3220 = { let __t3202 = Value::sym(interp.intern("-->")); let __t3219 = { let __t3217 = { let __t3207 = { let __t3203 = Value::sym(interp.intern("list")); let __t3206 = { let __t3204 = v_A.clone(); let __t3205 = Value::nil(); rt::cons(&__t3204, &__t3205) }; rt::cons(&__t3203, &__t3206) }; let __t3216 = { let __t3208 = Value::sym(interp.intern("-->")); let __t3215 = { let __t3213 = { let __t3209 = Value::sym(interp.intern("list")); let __t3212 = { let __t3210 = v_A.clone(); let __t3211 = Value::nil(); rt::cons(&__t3210, &__t3211) }; rt::cons(&__t3209, &__t3212) }; let __t3214 = Value::nil(); rt::cons(&__t3213, &__t3214) }; rt::cons(&__t3208, &__t3215) }; rt::cons(&__t3207, &__t3216) }; let __t3218 = Value::nil(); rt::cons(&__t3217, &__t3218) }; rt::cons(&__t3202, &__t3219) }; rt::cons(&__t3201, &__t3220) }; let __t3222 = v_B6277.clone(); let __t3223 = v_L6278.clone(); let __t3224 = v_Key6279.clone(); let __t3225 = v_C6280.clone(); rt::apply_direct(interp, "is!", &[__t3196, __t3221, __t3222, __t3223, __t3224, __t3225])? }; rt::apply_direct(interp, "shen.gc", &[__t3195, __t3226])? } }) }, vec![v_B6277, v_Key6279, v_L6278, v_V6281], interp) }) }, vec![v_B6277, v_L6278, v_V6281], interp) }) }, vec![v_B6277, v_V6281], interp) }) }, vec![v_V6281], interp) }) }, Vec::new(), interp) }; let __t3229 = { let __t3228 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3228])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3193, __t3227, __t3229])? }; rt::apply_direct(interp, "set", &[__t3192, __t3230])? }; - { - let _ = { let __t3231 = Value::sym(interp.intern("shen.*sigf*")); let __t3246 = { let __t3232 = Value::sym(interp.intern("language")); let __t3243 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6286 = args[0].clone(); Ok({ let v_V6286 = v_V6286.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6282 = args[0].clone(); Ok({ let v_B6282 = v_B6282.clone(); let v_V6286 = v_V6286.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6283 = args[0].clone(); Ok({ let v_B6282 = v_B6282.clone(); let v_L6283 = v_L6283.clone(); let v_V6286 = v_V6286.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6284 = args[0].clone(); Ok({ let v_B6282 = v_B6282.clone(); let v_Key6284 = v_Key6284.clone(); let v_L6283 = v_L6283.clone(); let v_V6286 = v_V6286.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6285 = args[0].clone(); Ok({ let __t3233 = v_V6286.clone(); let __t3238 = { let __t3234 = Value::sym(interp.intern("-->")); let __t3237 = { let __t3235 = Value::sym(interp.intern("string")); let __t3236 = Value::nil(); rt::cons(&__t3235, &__t3236) }; rt::cons(&__t3234, &__t3237) }; let __t3239 = v_B6282.clone(); let __t3240 = v_L6283.clone(); let __t3241 = v_Key6284.clone(); let __t3242 = v_C6285.clone(); rt::apply_direct(interp, "is!", &[__t3233, __t3238, __t3239, __t3240, __t3241, __t3242])? }) }, vec![v_B6282, v_Key6284, v_L6283, v_V6286], interp) }) }, vec![v_B6282, v_L6283, v_V6286], interp) }) }, vec![v_B6282, v_V6286], interp) }) }, vec![v_V6286], interp) }) }, Vec::new(), interp) }; let __t3245 = { let __t3244 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3244])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3232, __t3243, __t3245])? }; rt::apply_direct(interp, "set", &[__t3231, __t3246])? }; - { - let _ = { let __t3247 = Value::sym(interp.intern("shen.*sigf*")); let __t3271 = { let __t3248 = Value::sym(interp.intern("length")); let __t3268 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6291 = args[0].clone(); Ok({ let v_V6291 = v_V6291.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6287 = args[0].clone(); Ok({ let v_B6287 = v_B6287.clone(); let v_V6291 = v_V6291.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6288 = args[0].clone(); Ok({ let v_B6287 = v_B6287.clone(); let v_L6288 = v_L6288.clone(); let v_V6291 = v_V6291.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6289 = args[0].clone(); Ok({ let v_B6287 = v_B6287.clone(); let v_Key6289 = v_Key6289.clone(); let v_L6288 = v_L6288.clone(); let v_V6291 = v_V6291.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6290 = args[0].clone(); Ok({ let v_A = { let __t3249 = v_B6287.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3249])? }; { let __t3250 = v_B6287.clone(); let __t3267 = { let __t3251 = v_V6291.clone(); let __t3262 = { let __t3256 = { let __t3252 = Value::sym(interp.intern("list")); let __t3255 = { let __t3253 = v_A.clone(); let __t3254 = Value::nil(); rt::cons(&__t3253, &__t3254) }; rt::cons(&__t3252, &__t3255) }; let __t3261 = { let __t3257 = Value::sym(interp.intern("-->")); let __t3260 = { let __t3258 = Value::sym(interp.intern("number")); let __t3259 = Value::nil(); rt::cons(&__t3258, &__t3259) }; rt::cons(&__t3257, &__t3260) }; rt::cons(&__t3256, &__t3261) }; let __t3263 = v_B6287.clone(); let __t3264 = v_L6288.clone(); let __t3265 = v_Key6289.clone(); let __t3266 = v_C6290.clone(); rt::apply_direct(interp, "is!", &[__t3251, __t3262, __t3263, __t3264, __t3265, __t3266])? }; rt::apply_direct(interp, "shen.gc", &[__t3250, __t3267])? } }) }, vec![v_B6287, v_Key6289, v_L6288, v_V6291], interp) }) }, vec![v_B6287, v_L6288, v_V6291], interp) }) }, vec![v_B6287, v_V6291], interp) }) }, vec![v_V6291], interp) }) }, Vec::new(), interp) }; let __t3270 = { let __t3269 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3269])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3248, __t3268, __t3270])? }; rt::apply_direct(interp, "set", &[__t3247, __t3271])? }; - { - let _ = { let __t3272 = Value::sym(interp.intern("shen.*sigf*")); let __t3296 = { let __t3273 = Value::sym(interp.intern("limit")); let __t3293 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6296 = args[0].clone(); Ok({ let v_V6296 = v_V6296.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6292 = args[0].clone(); Ok({ let v_B6292 = v_B6292.clone(); let v_V6296 = v_V6296.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6293 = args[0].clone(); Ok({ let v_B6292 = v_B6292.clone(); let v_L6293 = v_L6293.clone(); let v_V6296 = v_V6296.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6294 = args[0].clone(); Ok({ let v_B6292 = v_B6292.clone(); let v_Key6294 = v_Key6294.clone(); let v_L6293 = v_L6293.clone(); let v_V6296 = v_V6296.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6295 = args[0].clone(); Ok({ let v_A = { let __t3274 = v_B6292.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3274])? }; { let __t3275 = v_B6292.clone(); let __t3292 = { let __t3276 = v_V6296.clone(); let __t3287 = { let __t3281 = { let __t3277 = Value::sym(interp.intern("vector")); let __t3280 = { let __t3278 = v_A.clone(); let __t3279 = Value::nil(); rt::cons(&__t3278, &__t3279) }; rt::cons(&__t3277, &__t3280) }; let __t3286 = { let __t3282 = Value::sym(interp.intern("-->")); let __t3285 = { let __t3283 = Value::sym(interp.intern("number")); let __t3284 = Value::nil(); rt::cons(&__t3283, &__t3284) }; rt::cons(&__t3282, &__t3285) }; rt::cons(&__t3281, &__t3286) }; let __t3288 = v_B6292.clone(); let __t3289 = v_L6293.clone(); let __t3290 = v_Key6294.clone(); let __t3291 = v_C6295.clone(); rt::apply_direct(interp, "is!", &[__t3276, __t3287, __t3288, __t3289, __t3290, __t3291])? }; rt::apply_direct(interp, "shen.gc", &[__t3275, __t3292])? } }) }, vec![v_B6292, v_Key6294, v_L6293, v_V6296], interp) }) }, vec![v_B6292, v_L6293, v_V6296], interp) }) }, vec![v_B6292, v_V6296], interp) }) }, vec![v_V6296], interp) }) }, Vec::new(), interp) }; let __t3295 = { let __t3294 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3294])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3273, __t3293, __t3295])? }; rt::apply_direct(interp, "set", &[__t3272, __t3296])? }; - { - let _ = { let __t3297 = Value::sym(interp.intern("shen.*sigf*")); let __t3322 = { let __t3298 = Value::sym(interp.intern("lineread")); let __t3319 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6301 = args[0].clone(); Ok({ let v_V6301 = v_V6301.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6297 = args[0].clone(); Ok({ let v_B6297 = v_B6297.clone(); let v_V6301 = v_V6301.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6298 = args[0].clone(); Ok({ let v_B6297 = v_B6297.clone(); let v_L6298 = v_L6298.clone(); let v_V6301 = v_V6301.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6299 = args[0].clone(); Ok({ let v_B6297 = v_B6297.clone(); let v_Key6299 = v_Key6299.clone(); let v_L6298 = v_L6298.clone(); let v_V6301 = v_V6301.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6300 = args[0].clone(); Ok({ let __t3299 = v_V6301.clone(); let __t3314 = { let __t3304 = { let __t3300 = Value::sym(interp.intern("stream")); let __t3303 = { let __t3301 = Value::sym(interp.intern("in")); let __t3302 = Value::nil(); rt::cons(&__t3301, &__t3302) }; rt::cons(&__t3300, &__t3303) }; let __t3313 = { let __t3305 = Value::sym(interp.intern("-->")); let __t3312 = { let __t3310 = { let __t3306 = Value::sym(interp.intern("list")); let __t3309 = { let __t3307 = Value::sym(interp.intern("unit")); let __t3308 = Value::nil(); rt::cons(&__t3307, &__t3308) }; rt::cons(&__t3306, &__t3309) }; let __t3311 = Value::nil(); rt::cons(&__t3310, &__t3311) }; rt::cons(&__t3305, &__t3312) }; rt::cons(&__t3304, &__t3313) }; let __t3315 = v_B6297.clone(); let __t3316 = v_L6298.clone(); let __t3317 = v_Key6299.clone(); let __t3318 = v_C6300.clone(); rt::apply_direct(interp, "is!", &[__t3299, __t3314, __t3315, __t3316, __t3317, __t3318])? }) }, vec![v_B6297, v_Key6299, v_L6298, v_V6301], interp) }) }, vec![v_B6297, v_L6298, v_V6301], interp) }) }, vec![v_B6297, v_V6301], interp) }) }, vec![v_V6301], interp) }) }, Vec::new(), interp) }; let __t3321 = { let __t3320 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3320])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3298, __t3319, __t3321])? }; rt::apply_direct(interp, "set", &[__t3297, __t3322])? }; - { - let _ = { let __t3323 = Value::sym(interp.intern("shen.*sigf*")); let __t3340 = { let __t3324 = Value::sym(interp.intern("load")); let __t3337 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6306 = args[0].clone(); Ok({ let v_V6306 = v_V6306.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6302 = args[0].clone(); Ok({ let v_B6302 = v_B6302.clone(); let v_V6306 = v_V6306.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6303 = args[0].clone(); Ok({ let v_B6302 = v_B6302.clone(); let v_L6303 = v_L6303.clone(); let v_V6306 = v_V6306.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6304 = args[0].clone(); Ok({ let v_B6302 = v_B6302.clone(); let v_Key6304 = v_Key6304.clone(); let v_L6303 = v_L6303.clone(); let v_V6306 = v_V6306.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6305 = args[0].clone(); Ok({ let __t3325 = v_V6306.clone(); let __t3332 = { let __t3326 = Value::sym(interp.intern("string")); let __t3331 = { let __t3327 = Value::sym(interp.intern("-->")); let __t3330 = { let __t3328 = Value::sym(interp.intern("symbol")); let __t3329 = Value::nil(); rt::cons(&__t3328, &__t3329) }; rt::cons(&__t3327, &__t3330) }; rt::cons(&__t3326, &__t3331) }; let __t3333 = v_B6302.clone(); let __t3334 = v_L6303.clone(); let __t3335 = v_Key6304.clone(); let __t3336 = v_C6305.clone(); rt::apply_direct(interp, "is!", &[__t3325, __t3332, __t3333, __t3334, __t3335, __t3336])? }) }, vec![v_B6302, v_Key6304, v_L6303, v_V6306], interp) }) }, vec![v_B6302, v_L6303, v_V6306], interp) }) }, vec![v_B6302, v_V6306], interp) }) }, vec![v_V6306], interp) }) }, Vec::new(), interp) }; let __t3339 = { let __t3338 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3338])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3324, __t3337, __t3339])? }; rt::apply_direct(interp, "set", &[__t3323, __t3340])? }; - { - let _ = { let __t3341 = Value::sym(interp.intern("shen.*sigf*")); let __t3384 = { let __t3342 = Value::sym(interp.intern("map")); let __t3381 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6311 = args[0].clone(); Ok({ let v_V6311 = v_V6311.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6307 = args[0].clone(); Ok({ let v_B6307 = v_B6307.clone(); let v_V6311 = v_V6311.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6308 = args[0].clone(); Ok({ let v_B6307 = v_B6307.clone(); let v_L6308 = v_L6308.clone(); let v_V6311 = v_V6311.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6309 = args[0].clone(); Ok({ let v_B6307 = v_B6307.clone(); let v_Key6309 = v_Key6309.clone(); let v_L6308 = v_L6308.clone(); let v_V6311 = v_V6311.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6310 = args[0].clone(); Ok({ let v_A = { let __t3343 = v_B6307.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3343])? }; { let __t3344 = v_B6307.clone(); let __t3380 = { let v_B = { let __t3345 = v_B6307.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3345])? }; { let __t3346 = v_B6307.clone(); let __t3379 = { let __t3347 = v_V6311.clone(); let __t3374 = { let __t3354 = { let __t3348 = v_A.clone(); let __t3353 = { let __t3349 = Value::sym(interp.intern("-->")); let __t3352 = { let __t3350 = v_B.clone(); let __t3351 = Value::nil(); rt::cons(&__t3350, &__t3351) }; rt::cons(&__t3349, &__t3352) }; rt::cons(&__t3348, &__t3353) }; let __t3373 = { let __t3355 = Value::sym(interp.intern("-->")); let __t3372 = { let __t3370 = { let __t3360 = { let __t3356 = Value::sym(interp.intern("list")); let __t3359 = { let __t3357 = v_A.clone(); let __t3358 = Value::nil(); rt::cons(&__t3357, &__t3358) }; rt::cons(&__t3356, &__t3359) }; let __t3369 = { let __t3361 = Value::sym(interp.intern("-->")); let __t3368 = { let __t3366 = { let __t3362 = Value::sym(interp.intern("list")); let __t3365 = { let __t3363 = v_B.clone(); let __t3364 = Value::nil(); rt::cons(&__t3363, &__t3364) }; rt::cons(&__t3362, &__t3365) }; let __t3367 = Value::nil(); rt::cons(&__t3366, &__t3367) }; rt::cons(&__t3361, &__t3368) }; rt::cons(&__t3360, &__t3369) }; let __t3371 = Value::nil(); rt::cons(&__t3370, &__t3371) }; rt::cons(&__t3355, &__t3372) }; rt::cons(&__t3354, &__t3373) }; let __t3375 = v_B6307.clone(); let __t3376 = v_L6308.clone(); let __t3377 = v_Key6309.clone(); let __t3378 = v_C6310.clone(); rt::apply_direct(interp, "is!", &[__t3347, __t3374, __t3375, __t3376, __t3377, __t3378])? }; rt::apply_direct(interp, "shen.gc", &[__t3346, __t3379])? } }; rt::apply_direct(interp, "shen.gc", &[__t3344, __t3380])? } }) }, vec![v_B6307, v_Key6309, v_L6308, v_V6311], interp) }) }, vec![v_B6307, v_L6308, v_V6311], interp) }) }, vec![v_B6307, v_V6311], interp) }) }, vec![v_V6311], interp) }) }, Vec::new(), interp) }; let __t3383 = { let __t3382 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3382])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3342, __t3381, __t3383])? }; rt::apply_direct(interp, "set", &[__t3341, __t3384])? }; - { - let _ = { let __t3385 = Value::sym(interp.intern("shen.*sigf*")); let __t3432 = { let __t3386 = Value::sym(interp.intern("mapcan")); let __t3429 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6316 = args[0].clone(); Ok({ let v_V6316 = v_V6316.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6312 = args[0].clone(); Ok({ let v_B6312 = v_B6312.clone(); let v_V6316 = v_V6316.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6313 = args[0].clone(); Ok({ let v_B6312 = v_B6312.clone(); let v_L6313 = v_L6313.clone(); let v_V6316 = v_V6316.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6314 = args[0].clone(); Ok({ let v_B6312 = v_B6312.clone(); let v_Key6314 = v_Key6314.clone(); let v_L6313 = v_L6313.clone(); let v_V6316 = v_V6316.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6315 = args[0].clone(); Ok({ let v_A = { let __t3387 = v_B6312.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3387])? }; { let __t3388 = v_B6312.clone(); let __t3428 = { let v_B = { let __t3389 = v_B6312.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3389])? }; { let __t3390 = v_B6312.clone(); let __t3427 = { let __t3391 = v_V6316.clone(); let __t3422 = { let __t3402 = { let __t3392 = v_A.clone(); let __t3401 = { let __t3393 = Value::sym(interp.intern("-->")); let __t3400 = { let __t3398 = { let __t3394 = Value::sym(interp.intern("list")); let __t3397 = { let __t3395 = v_B.clone(); let __t3396 = Value::nil(); rt::cons(&__t3395, &__t3396) }; rt::cons(&__t3394, &__t3397) }; let __t3399 = Value::nil(); rt::cons(&__t3398, &__t3399) }; rt::cons(&__t3393, &__t3400) }; rt::cons(&__t3392, &__t3401) }; let __t3421 = { let __t3403 = Value::sym(interp.intern("-->")); let __t3420 = { let __t3418 = { let __t3408 = { let __t3404 = Value::sym(interp.intern("list")); let __t3407 = { let __t3405 = v_A.clone(); let __t3406 = Value::nil(); rt::cons(&__t3405, &__t3406) }; rt::cons(&__t3404, &__t3407) }; let __t3417 = { let __t3409 = Value::sym(interp.intern("-->")); let __t3416 = { let __t3414 = { let __t3410 = Value::sym(interp.intern("list")); let __t3413 = { let __t3411 = v_B.clone(); let __t3412 = Value::nil(); rt::cons(&__t3411, &__t3412) }; rt::cons(&__t3410, &__t3413) }; let __t3415 = Value::nil(); rt::cons(&__t3414, &__t3415) }; rt::cons(&__t3409, &__t3416) }; rt::cons(&__t3408, &__t3417) }; let __t3419 = Value::nil(); rt::cons(&__t3418, &__t3419) }; rt::cons(&__t3403, &__t3420) }; rt::cons(&__t3402, &__t3421) }; let __t3423 = v_B6312.clone(); let __t3424 = v_L6313.clone(); let __t3425 = v_Key6314.clone(); let __t3426 = v_C6315.clone(); rt::apply_direct(interp, "is!", &[__t3391, __t3422, __t3423, __t3424, __t3425, __t3426])? }; rt::apply_direct(interp, "shen.gc", &[__t3390, __t3427])? } }; rt::apply_direct(interp, "shen.gc", &[__t3388, __t3428])? } }) }, vec![v_B6312, v_Key6314, v_L6313, v_V6316], interp) }) }, vec![v_B6312, v_L6313, v_V6316], interp) }) }, vec![v_B6312, v_V6316], interp) }) }, vec![v_V6316], interp) }) }, Vec::new(), interp) }; let __t3431 = { let __t3430 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3430])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3386, __t3429, __t3431])? }; rt::apply_direct(interp, "set", &[__t3385, __t3432])? }; - { - let _ = { let __t3433 = Value::sym(interp.intern("shen.*sigf*")); let __t3450 = { let __t3434 = Value::sym(interp.intern("maxinferences")); let __t3447 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6321 = args[0].clone(); Ok({ let v_V6321 = v_V6321.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6317 = args[0].clone(); Ok({ let v_B6317 = v_B6317.clone(); let v_V6321 = v_V6321.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6318 = args[0].clone(); Ok({ let v_B6317 = v_B6317.clone(); let v_L6318 = v_L6318.clone(); let v_V6321 = v_V6321.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6319 = args[0].clone(); Ok({ let v_B6317 = v_B6317.clone(); let v_Key6319 = v_Key6319.clone(); let v_L6318 = v_L6318.clone(); let v_V6321 = v_V6321.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6320 = args[0].clone(); Ok({ let __t3435 = v_V6321.clone(); let __t3442 = { let __t3436 = Value::sym(interp.intern("number")); let __t3441 = { let __t3437 = Value::sym(interp.intern("-->")); let __t3440 = { let __t3438 = Value::sym(interp.intern("number")); let __t3439 = Value::nil(); rt::cons(&__t3438, &__t3439) }; rt::cons(&__t3437, &__t3440) }; rt::cons(&__t3436, &__t3441) }; let __t3443 = v_B6317.clone(); let __t3444 = v_L6318.clone(); let __t3445 = v_Key6319.clone(); let __t3446 = v_C6320.clone(); rt::apply_direct(interp, "is!", &[__t3435, __t3442, __t3443, __t3444, __t3445, __t3446])? }) }, vec![v_B6317, v_Key6319, v_L6318, v_V6321], interp) }) }, vec![v_B6317, v_L6318, v_V6321], interp) }) }, vec![v_B6317, v_V6321], interp) }) }, vec![v_V6321], interp) }) }, Vec::new(), interp) }; let __t3449 = { let __t3448 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3448])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3434, __t3447, __t3449])? }; rt::apply_direct(interp, "set", &[__t3433, __t3450])? }; - { - let _ = { let __t3451 = Value::sym(interp.intern("shen.*sigf*")); let __t3468 = { let __t3452 = Value::sym(interp.intern("n->string")); let __t3465 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6326 = args[0].clone(); Ok({ let v_V6326 = v_V6326.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6322 = args[0].clone(); Ok({ let v_B6322 = v_B6322.clone(); let v_V6326 = v_V6326.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6323 = args[0].clone(); Ok({ let v_B6322 = v_B6322.clone(); let v_L6323 = v_L6323.clone(); let v_V6326 = v_V6326.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6324 = args[0].clone(); Ok({ let v_B6322 = v_B6322.clone(); let v_Key6324 = v_Key6324.clone(); let v_L6323 = v_L6323.clone(); let v_V6326 = v_V6326.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6325 = args[0].clone(); Ok({ let __t3453 = v_V6326.clone(); let __t3460 = { let __t3454 = Value::sym(interp.intern("number")); let __t3459 = { let __t3455 = Value::sym(interp.intern("-->")); let __t3458 = { let __t3456 = Value::sym(interp.intern("string")); let __t3457 = Value::nil(); rt::cons(&__t3456, &__t3457) }; rt::cons(&__t3455, &__t3458) }; rt::cons(&__t3454, &__t3459) }; let __t3461 = v_B6322.clone(); let __t3462 = v_L6323.clone(); let __t3463 = v_Key6324.clone(); let __t3464 = v_C6325.clone(); rt::apply_direct(interp, "is!", &[__t3453, __t3460, __t3461, __t3462, __t3463, __t3464])? }) }, vec![v_B6322, v_Key6324, v_L6323, v_V6326], interp) }) }, vec![v_B6322, v_L6323, v_V6326], interp) }) }, vec![v_B6322, v_V6326], interp) }) }, vec![v_V6326], interp) }) }, Vec::new(), interp) }; let __t3467 = { let __t3466 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3466])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3452, __t3465, __t3467])? }; rt::apply_direct(interp, "set", &[__t3451, __t3468])? }; - { - let _ = { let __t3469 = Value::sym(interp.intern("shen.*sigf*")); let __t3486 = { let __t3470 = Value::sym(interp.intern("nl")); let __t3483 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6331 = args[0].clone(); Ok({ let v_V6331 = v_V6331.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6327 = args[0].clone(); Ok({ let v_B6327 = v_B6327.clone(); let v_V6331 = v_V6331.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6328 = args[0].clone(); Ok({ let v_B6327 = v_B6327.clone(); let v_L6328 = v_L6328.clone(); let v_V6331 = v_V6331.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6329 = args[0].clone(); Ok({ let v_B6327 = v_B6327.clone(); let v_Key6329 = v_Key6329.clone(); let v_L6328 = v_L6328.clone(); let v_V6331 = v_V6331.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6330 = args[0].clone(); Ok({ let __t3471 = v_V6331.clone(); let __t3478 = { let __t3472 = Value::sym(interp.intern("number")); let __t3477 = { let __t3473 = Value::sym(interp.intern("-->")); let __t3476 = { let __t3474 = Value::sym(interp.intern("number")); let __t3475 = Value::nil(); rt::cons(&__t3474, &__t3475) }; rt::cons(&__t3473, &__t3476) }; rt::cons(&__t3472, &__t3477) }; let __t3479 = v_B6327.clone(); let __t3480 = v_L6328.clone(); let __t3481 = v_Key6329.clone(); let __t3482 = v_C6330.clone(); rt::apply_direct(interp, "is!", &[__t3471, __t3478, __t3479, __t3480, __t3481, __t3482])? }) }, vec![v_B6327, v_Key6329, v_L6328, v_V6331], interp) }) }, vec![v_B6327, v_L6328, v_V6331], interp) }) }, vec![v_B6327, v_V6331], interp) }) }, vec![v_V6331], interp) }) }, Vec::new(), interp) }; let __t3485 = { let __t3484 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3484])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3470, __t3483, __t3485])? }; rt::apply_direct(interp, "set", &[__t3469, __t3486])? }; - { - let _ = { let __t3487 = Value::sym(interp.intern("shen.*sigf*")); let __t3504 = { let __t3488 = Value::sym(interp.intern("not")); let __t3501 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6336 = args[0].clone(); Ok({ let v_V6336 = v_V6336.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6332 = args[0].clone(); Ok({ let v_B6332 = v_B6332.clone(); let v_V6336 = v_V6336.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6333 = args[0].clone(); Ok({ let v_B6332 = v_B6332.clone(); let v_L6333 = v_L6333.clone(); let v_V6336 = v_V6336.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6334 = args[0].clone(); Ok({ let v_B6332 = v_B6332.clone(); let v_Key6334 = v_Key6334.clone(); let v_L6333 = v_L6333.clone(); let v_V6336 = v_V6336.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6335 = args[0].clone(); Ok({ let __t3489 = v_V6336.clone(); let __t3496 = { let __t3490 = Value::sym(interp.intern("boolean")); let __t3495 = { let __t3491 = Value::sym(interp.intern("-->")); let __t3494 = { let __t3492 = Value::sym(interp.intern("boolean")); let __t3493 = Value::nil(); rt::cons(&__t3492, &__t3493) }; rt::cons(&__t3491, &__t3494) }; rt::cons(&__t3490, &__t3495) }; let __t3497 = v_B6332.clone(); let __t3498 = v_L6333.clone(); let __t3499 = v_Key6334.clone(); let __t3500 = v_C6335.clone(); rt::apply_direct(interp, "is!", &[__t3489, __t3496, __t3497, __t3498, __t3499, __t3500])? }) }, vec![v_B6332, v_Key6334, v_L6333, v_V6336], interp) }) }, vec![v_B6332, v_L6333, v_V6336], interp) }) }, vec![v_B6332, v_V6336], interp) }) }, vec![v_V6336], interp) }) }, Vec::new(), interp) }; let __t3503 = { let __t3502 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3502])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3488, __t3501, __t3503])? }; rt::apply_direct(interp, "set", &[__t3487, __t3504])? }; - { - let _ = { let __t3505 = Value::sym(interp.intern("shen.*sigf*")); let __t3535 = { let __t3506 = Value::sym(interp.intern("nth")); let __t3532 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6341 = args[0].clone(); Ok({ let v_V6341 = v_V6341.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6337 = args[0].clone(); Ok({ let v_B6337 = v_B6337.clone(); let v_V6341 = v_V6341.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6338 = args[0].clone(); Ok({ let v_B6337 = v_B6337.clone(); let v_L6338 = v_L6338.clone(); let v_V6341 = v_V6341.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6339 = args[0].clone(); Ok({ let v_B6337 = v_B6337.clone(); let v_Key6339 = v_Key6339.clone(); let v_L6338 = v_L6338.clone(); let v_V6341 = v_V6341.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6340 = args[0].clone(); Ok({ let v_A = { let __t3507 = v_B6337.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3507])? }; { let __t3508 = v_B6337.clone(); let __t3531 = { let __t3509 = v_V6341.clone(); let __t3526 = { let __t3510 = Value::sym(interp.intern("number")); let __t3525 = { let __t3511 = Value::sym(interp.intern("-->")); let __t3524 = { let __t3522 = { let __t3516 = { let __t3512 = Value::sym(interp.intern("list")); let __t3515 = { let __t3513 = v_A.clone(); let __t3514 = Value::nil(); rt::cons(&__t3513, &__t3514) }; rt::cons(&__t3512, &__t3515) }; let __t3521 = { let __t3517 = Value::sym(interp.intern("-->")); let __t3520 = { let __t3518 = v_A.clone(); let __t3519 = Value::nil(); rt::cons(&__t3518, &__t3519) }; rt::cons(&__t3517, &__t3520) }; rt::cons(&__t3516, &__t3521) }; let __t3523 = Value::nil(); rt::cons(&__t3522, &__t3523) }; rt::cons(&__t3511, &__t3524) }; rt::cons(&__t3510, &__t3525) }; let __t3527 = v_B6337.clone(); let __t3528 = v_L6338.clone(); let __t3529 = v_Key6339.clone(); let __t3530 = v_C6340.clone(); rt::apply_direct(interp, "is!", &[__t3509, __t3526, __t3527, __t3528, __t3529, __t3530])? }; rt::apply_direct(interp, "shen.gc", &[__t3508, __t3531])? } }) }, vec![v_B6337, v_Key6339, v_L6338, v_V6341], interp) }) }, vec![v_B6337, v_L6338, v_V6341], interp) }) }, vec![v_B6337, v_V6341], interp) }) }, vec![v_V6341], interp) }) }, Vec::new(), interp) }; let __t3534 = { let __t3533 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3533])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3506, __t3532, __t3534])? }; rt::apply_direct(interp, "set", &[__t3505, __t3535])? }; - { - let _ = { let __t3536 = Value::sym(interp.intern("shen.*sigf*")); let __t3556 = { let __t3537 = Value::sym(interp.intern("number?")); let __t3553 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6346 = args[0].clone(); Ok({ let v_V6346 = v_V6346.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6342 = args[0].clone(); Ok({ let v_B6342 = v_B6342.clone(); let v_V6346 = v_V6346.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6343 = args[0].clone(); Ok({ let v_B6342 = v_B6342.clone(); let v_L6343 = v_L6343.clone(); let v_V6346 = v_V6346.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6344 = args[0].clone(); Ok({ let v_B6342 = v_B6342.clone(); let v_Key6344 = v_Key6344.clone(); let v_L6343 = v_L6343.clone(); let v_V6346 = v_V6346.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6345 = args[0].clone(); Ok({ let v_A = { let __t3538 = v_B6342.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3538])? }; { let __t3539 = v_B6342.clone(); let __t3552 = { let __t3540 = v_V6346.clone(); let __t3547 = { let __t3541 = v_A.clone(); let __t3546 = { let __t3542 = Value::sym(interp.intern("-->")); let __t3545 = { let __t3543 = Value::sym(interp.intern("boolean")); let __t3544 = Value::nil(); rt::cons(&__t3543, &__t3544) }; rt::cons(&__t3542, &__t3545) }; rt::cons(&__t3541, &__t3546) }; let __t3548 = v_B6342.clone(); let __t3549 = v_L6343.clone(); let __t3550 = v_Key6344.clone(); let __t3551 = v_C6345.clone(); rt::apply_direct(interp, "is!", &[__t3540, __t3547, __t3548, __t3549, __t3550, __t3551])? }; rt::apply_direct(interp, "shen.gc", &[__t3539, __t3552])? } }) }, vec![v_B6342, v_Key6344, v_L6343, v_V6346], interp) }) }, vec![v_B6342, v_L6343, v_V6346], interp) }) }, vec![v_B6342, v_V6346], interp) }) }, vec![v_V6346], interp) }) }, Vec::new(), interp) }; let __t3555 = { let __t3554 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3554])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3537, __t3553, __t3555])? }; rt::apply_direct(interp, "set", &[__t3536, __t3556])? }; - { - let _ = { let __t3557 = Value::sym(interp.intern("shen.*sigf*")); let __t3586 = { let __t3558 = Value::sym(interp.intern("occurrences")); let __t3583 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6351 = args[0].clone(); Ok({ let v_V6351 = v_V6351.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6347 = args[0].clone(); Ok({ let v_B6347 = v_B6347.clone(); let v_V6351 = v_V6351.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6348 = args[0].clone(); Ok({ let v_B6347 = v_B6347.clone(); let v_L6348 = v_L6348.clone(); let v_V6351 = v_V6351.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6349 = args[0].clone(); Ok({ let v_B6347 = v_B6347.clone(); let v_Key6349 = v_Key6349.clone(); let v_L6348 = v_L6348.clone(); let v_V6351 = v_V6351.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6350 = args[0].clone(); Ok({ let v_A = { let __t3559 = v_B6347.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3559])? }; { let __t3560 = v_B6347.clone(); let __t3582 = { let v_B = { let __t3561 = v_B6347.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3561])? }; { let __t3562 = v_B6347.clone(); let __t3581 = { let __t3563 = v_V6351.clone(); let __t3576 = { let __t3564 = v_A.clone(); let __t3575 = { let __t3565 = Value::sym(interp.intern("-->")); let __t3574 = { let __t3572 = { let __t3566 = v_B.clone(); let __t3571 = { let __t3567 = Value::sym(interp.intern("-->")); let __t3570 = { let __t3568 = Value::sym(interp.intern("number")); let __t3569 = Value::nil(); rt::cons(&__t3568, &__t3569) }; rt::cons(&__t3567, &__t3570) }; rt::cons(&__t3566, &__t3571) }; let __t3573 = Value::nil(); rt::cons(&__t3572, &__t3573) }; rt::cons(&__t3565, &__t3574) }; rt::cons(&__t3564, &__t3575) }; let __t3577 = v_B6347.clone(); let __t3578 = v_L6348.clone(); let __t3579 = v_Key6349.clone(); let __t3580 = v_C6350.clone(); rt::apply_direct(interp, "is!", &[__t3563, __t3576, __t3577, __t3578, __t3579, __t3580])? }; rt::apply_direct(interp, "shen.gc", &[__t3562, __t3581])? } }; rt::apply_direct(interp, "shen.gc", &[__t3560, __t3582])? } }) }, vec![v_B6347, v_Key6349, v_L6348, v_V6351], interp) }) }, vec![v_B6347, v_L6348, v_V6351], interp) }) }, vec![v_B6347, v_V6351], interp) }) }, vec![v_V6351], interp) }) }, Vec::new(), interp) }; let __t3585 = { let __t3584 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3584])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3558, __t3583, __t3585])? }; rt::apply_direct(interp, "set", &[__t3557, __t3586])? }; - { - let _ = { let __t3587 = Value::sym(interp.intern("shen.*sigf*")); let __t3604 = { let __t3588 = Value::sym(interp.intern("occurs-check")); let __t3601 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6356 = args[0].clone(); Ok({ let v_V6356 = v_V6356.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6352 = args[0].clone(); Ok({ let v_B6352 = v_B6352.clone(); let v_V6356 = v_V6356.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6353 = args[0].clone(); Ok({ let v_B6352 = v_B6352.clone(); let v_L6353 = v_L6353.clone(); let v_V6356 = v_V6356.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6354 = args[0].clone(); Ok({ let v_B6352 = v_B6352.clone(); let v_Key6354 = v_Key6354.clone(); let v_L6353 = v_L6353.clone(); let v_V6356 = v_V6356.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6355 = args[0].clone(); Ok({ let __t3589 = v_V6356.clone(); let __t3596 = { let __t3590 = Value::sym(interp.intern("symbol")); let __t3595 = { let __t3591 = Value::sym(interp.intern("-->")); let __t3594 = { let __t3592 = Value::sym(interp.intern("boolean")); let __t3593 = Value::nil(); rt::cons(&__t3592, &__t3593) }; rt::cons(&__t3591, &__t3594) }; rt::cons(&__t3590, &__t3595) }; let __t3597 = v_B6352.clone(); let __t3598 = v_L6353.clone(); let __t3599 = v_Key6354.clone(); let __t3600 = v_C6355.clone(); rt::apply_direct(interp, "is!", &[__t3589, __t3596, __t3597, __t3598, __t3599, __t3600])? }) }, vec![v_B6352, v_Key6354, v_L6353, v_V6356], interp) }) }, vec![v_B6352, v_L6353, v_V6356], interp) }) }, vec![v_B6352, v_V6356], interp) }) }, vec![v_V6356], interp) }) }, Vec::new(), interp) }; let __t3603 = { let __t3602 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3602])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3588, __t3601, __t3603])? }; rt::apply_direct(interp, "set", &[__t3587, __t3604])? }; - { - let _ = { let __t3605 = Value::sym(interp.intern("shen.*sigf*")); let __t3620 = { let __t3606 = Value::sym(interp.intern("occurs?")); let __t3617 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6361 = args[0].clone(); Ok({ let v_V6361 = v_V6361.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6357 = args[0].clone(); Ok({ let v_B6357 = v_B6357.clone(); let v_V6361 = v_V6361.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6358 = args[0].clone(); Ok({ let v_B6357 = v_B6357.clone(); let v_L6358 = v_L6358.clone(); let v_V6361 = v_V6361.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6359 = args[0].clone(); Ok({ let v_B6357 = v_B6357.clone(); let v_Key6359 = v_Key6359.clone(); let v_L6358 = v_L6358.clone(); let v_V6361 = v_V6361.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6360 = args[0].clone(); Ok({ let __t3607 = v_V6361.clone(); let __t3612 = { let __t3608 = Value::sym(interp.intern("-->")); let __t3611 = { let __t3609 = Value::sym(interp.intern("boolean")); let __t3610 = Value::nil(); rt::cons(&__t3609, &__t3610) }; rt::cons(&__t3608, &__t3611) }; let __t3613 = v_B6357.clone(); let __t3614 = v_L6358.clone(); let __t3615 = v_Key6359.clone(); let __t3616 = v_C6360.clone(); rt::apply_direct(interp, "is!", &[__t3607, __t3612, __t3613, __t3614, __t3615, __t3616])? }) }, vec![v_B6357, v_Key6359, v_L6358, v_V6361], interp) }) }, vec![v_B6357, v_L6358, v_V6361], interp) }) }, vec![v_B6357, v_V6361], interp) }) }, vec![v_V6361], interp) }) }, Vec::new(), interp) }; let __t3619 = { let __t3618 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3618])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3606, __t3617, __t3619])? }; rt::apply_direct(interp, "set", &[__t3605, __t3620])? }; - { - let _ = { let __t3621 = Value::sym(interp.intern("shen.*sigf*")); let __t3638 = { let __t3622 = Value::sym(interp.intern("optimise")); let __t3635 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6366 = args[0].clone(); Ok({ let v_V6366 = v_V6366.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6362 = args[0].clone(); Ok({ let v_B6362 = v_B6362.clone(); let v_V6366 = v_V6366.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6363 = args[0].clone(); Ok({ let v_B6362 = v_B6362.clone(); let v_L6363 = v_L6363.clone(); let v_V6366 = v_V6366.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6364 = args[0].clone(); Ok({ let v_B6362 = v_B6362.clone(); let v_Key6364 = v_Key6364.clone(); let v_L6363 = v_L6363.clone(); let v_V6366 = v_V6366.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6365 = args[0].clone(); Ok({ let __t3623 = v_V6366.clone(); let __t3630 = { let __t3624 = Value::sym(interp.intern("symbol")); let __t3629 = { let __t3625 = Value::sym(interp.intern("-->")); let __t3628 = { let __t3626 = Value::sym(interp.intern("boolean")); let __t3627 = Value::nil(); rt::cons(&__t3626, &__t3627) }; rt::cons(&__t3625, &__t3628) }; rt::cons(&__t3624, &__t3629) }; let __t3631 = v_B6362.clone(); let __t3632 = v_L6363.clone(); let __t3633 = v_Key6364.clone(); let __t3634 = v_C6365.clone(); rt::apply_direct(interp, "is!", &[__t3623, __t3630, __t3631, __t3632, __t3633, __t3634])? }) }, vec![v_B6362, v_Key6364, v_L6363, v_V6366], interp) }) }, vec![v_B6362, v_L6363, v_V6366], interp) }) }, vec![v_B6362, v_V6366], interp) }) }, vec![v_V6366], interp) }) }, Vec::new(), interp) }; let __t3637 = { let __t3636 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3636])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3622, __t3635, __t3637])? }; rt::apply_direct(interp, "set", &[__t3621, __t3638])? }; - { - let _ = { let __t3639 = Value::sym(interp.intern("shen.*sigf*")); let __t3654 = { let __t3640 = Value::sym(interp.intern("optimise?")); let __t3651 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6371 = args[0].clone(); Ok({ let v_V6371 = v_V6371.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6367 = args[0].clone(); Ok({ let v_B6367 = v_B6367.clone(); let v_V6371 = v_V6371.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6368 = args[0].clone(); Ok({ let v_B6367 = v_B6367.clone(); let v_L6368 = v_L6368.clone(); let v_V6371 = v_V6371.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6369 = args[0].clone(); Ok({ let v_B6367 = v_B6367.clone(); let v_Key6369 = v_Key6369.clone(); let v_L6368 = v_L6368.clone(); let v_V6371 = v_V6371.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6370 = args[0].clone(); Ok({ let __t3641 = v_V6371.clone(); let __t3646 = { let __t3642 = Value::sym(interp.intern("-->")); let __t3645 = { let __t3643 = Value::sym(interp.intern("boolean")); let __t3644 = Value::nil(); rt::cons(&__t3643, &__t3644) }; rt::cons(&__t3642, &__t3645) }; let __t3647 = v_B6367.clone(); let __t3648 = v_L6368.clone(); let __t3649 = v_Key6369.clone(); let __t3650 = v_C6370.clone(); rt::apply_direct(interp, "is!", &[__t3641, __t3646, __t3647, __t3648, __t3649, __t3650])? }) }, vec![v_B6367, v_Key6369, v_L6368, v_V6371], interp) }) }, vec![v_B6367, v_L6368, v_V6371], interp) }) }, vec![v_B6367, v_V6371], interp) }) }, vec![v_V6371], interp) }) }, Vec::new(), interp) }; let __t3653 = { let __t3652 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3652])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3640, __t3651, __t3653])? }; rt::apply_direct(interp, "set", &[__t3639, __t3654])? }; - { - let _ = { let __t3655 = Value::sym(interp.intern("shen.*sigf*")); let __t3678 = { let __t3656 = Value::sym(interp.intern("or")); let __t3675 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6376 = args[0].clone(); Ok({ let v_V6376 = v_V6376.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6372 = args[0].clone(); Ok({ let v_B6372 = v_B6372.clone(); let v_V6376 = v_V6376.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6373 = args[0].clone(); Ok({ let v_B6372 = v_B6372.clone(); let v_L6373 = v_L6373.clone(); let v_V6376 = v_V6376.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6374 = args[0].clone(); Ok({ let v_B6372 = v_B6372.clone(); let v_Key6374 = v_Key6374.clone(); let v_L6373 = v_L6373.clone(); let v_V6376 = v_V6376.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6375 = args[0].clone(); Ok({ let __t3657 = v_V6376.clone(); let __t3670 = { let __t3658 = Value::sym(interp.intern("boolean")); let __t3669 = { let __t3659 = Value::sym(interp.intern("-->")); let __t3668 = { let __t3666 = { let __t3660 = Value::sym(interp.intern("boolean")); let __t3665 = { let __t3661 = Value::sym(interp.intern("-->")); let __t3664 = { let __t3662 = Value::sym(interp.intern("boolean")); let __t3663 = Value::nil(); rt::cons(&__t3662, &__t3663) }; rt::cons(&__t3661, &__t3664) }; rt::cons(&__t3660, &__t3665) }; let __t3667 = Value::nil(); rt::cons(&__t3666, &__t3667) }; rt::cons(&__t3659, &__t3668) }; rt::cons(&__t3658, &__t3669) }; let __t3671 = v_B6372.clone(); let __t3672 = v_L6373.clone(); let __t3673 = v_Key6374.clone(); let __t3674 = v_C6375.clone(); rt::apply_direct(interp, "is!", &[__t3657, __t3670, __t3671, __t3672, __t3673, __t3674])? }) }, vec![v_B6372, v_Key6374, v_L6373, v_V6376], interp) }) }, vec![v_B6372, v_L6373, v_V6376], interp) }) }, vec![v_B6372, v_V6376], interp) }) }, vec![v_V6376], interp) }) }, Vec::new(), interp) }; let __t3677 = { let __t3676 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3676])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3656, __t3675, __t3677])? }; rt::apply_direct(interp, "set", &[__t3655, __t3678])? }; - { - let _ = { let __t3679 = Value::sym(interp.intern("shen.*sigf*")); let __t3694 = { let __t3680 = Value::sym(interp.intern("os")); let __t3691 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6381 = args[0].clone(); Ok({ let v_V6381 = v_V6381.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6377 = args[0].clone(); Ok({ let v_B6377 = v_B6377.clone(); let v_V6381 = v_V6381.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6378 = args[0].clone(); Ok({ let v_B6377 = v_B6377.clone(); let v_L6378 = v_L6378.clone(); let v_V6381 = v_V6381.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6379 = args[0].clone(); Ok({ let v_B6377 = v_B6377.clone(); let v_Key6379 = v_Key6379.clone(); let v_L6378 = v_L6378.clone(); let v_V6381 = v_V6381.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6380 = args[0].clone(); Ok({ let __t3681 = v_V6381.clone(); let __t3686 = { let __t3682 = Value::sym(interp.intern("-->")); let __t3685 = { let __t3683 = Value::sym(interp.intern("string")); let __t3684 = Value::nil(); rt::cons(&__t3683, &__t3684) }; rt::cons(&__t3682, &__t3685) }; let __t3687 = v_B6377.clone(); let __t3688 = v_L6378.clone(); let __t3689 = v_Key6379.clone(); let __t3690 = v_C6380.clone(); rt::apply_direct(interp, "is!", &[__t3681, __t3686, __t3687, __t3688, __t3689, __t3690])? }) }, vec![v_B6377, v_Key6379, v_L6378, v_V6381], interp) }) }, vec![v_B6377, v_L6378, v_V6381], interp) }) }, vec![v_B6377, v_V6381], interp) }) }, vec![v_V6381], interp) }) }, Vec::new(), interp) }; let __t3693 = { let __t3692 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3692])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3680, __t3691, __t3693])? }; rt::apply_direct(interp, "set", &[__t3679, __t3694])? }; - { - let _ = { let __t3695 = Value::sym(interp.intern("shen.*sigf*")); let __t3712 = { let __t3696 = Value::sym(interp.intern("package?")); let __t3709 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6386 = args[0].clone(); Ok({ let v_V6386 = v_V6386.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6382 = args[0].clone(); Ok({ let v_B6382 = v_B6382.clone(); let v_V6386 = v_V6386.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6383 = args[0].clone(); Ok({ let v_B6382 = v_B6382.clone(); let v_L6383 = v_L6383.clone(); let v_V6386 = v_V6386.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6384 = args[0].clone(); Ok({ let v_B6382 = v_B6382.clone(); let v_Key6384 = v_Key6384.clone(); let v_L6383 = v_L6383.clone(); let v_V6386 = v_V6386.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6385 = args[0].clone(); Ok({ let __t3697 = v_V6386.clone(); let __t3704 = { let __t3698 = Value::sym(interp.intern("symbol")); let __t3703 = { let __t3699 = Value::sym(interp.intern("-->")); let __t3702 = { let __t3700 = Value::sym(interp.intern("boolean")); let __t3701 = Value::nil(); rt::cons(&__t3700, &__t3701) }; rt::cons(&__t3699, &__t3702) }; rt::cons(&__t3698, &__t3703) }; let __t3705 = v_B6382.clone(); let __t3706 = v_L6383.clone(); let __t3707 = v_Key6384.clone(); let __t3708 = v_C6385.clone(); rt::apply_direct(interp, "is!", &[__t3697, __t3704, __t3705, __t3706, __t3707, __t3708])? }) }, vec![v_B6382, v_Key6384, v_L6383, v_V6386], interp) }) }, vec![v_B6382, v_L6383, v_V6386], interp) }) }, vec![v_B6382, v_V6386], interp) }) }, vec![v_V6386], interp) }) }, Vec::new(), interp) }; let __t3711 = { let __t3710 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3710])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3696, __t3709, __t3711])? }; rt::apply_direct(interp, "set", &[__t3695, __t3712])? }; - { - let _ = { let __t3713 = Value::sym(interp.intern("shen.*sigf*")); let __t3728 = { let __t3714 = Value::sym(interp.intern("port")); let __t3725 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6391 = args[0].clone(); Ok({ let v_V6391 = v_V6391.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6387 = args[0].clone(); Ok({ let v_B6387 = v_B6387.clone(); let v_V6391 = v_V6391.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6388 = args[0].clone(); Ok({ let v_B6387 = v_B6387.clone(); let v_L6388 = v_L6388.clone(); let v_V6391 = v_V6391.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6389 = args[0].clone(); Ok({ let v_B6387 = v_B6387.clone(); let v_Key6389 = v_Key6389.clone(); let v_L6388 = v_L6388.clone(); let v_V6391 = v_V6391.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6390 = args[0].clone(); Ok({ let __t3715 = v_V6391.clone(); let __t3720 = { let __t3716 = Value::sym(interp.intern("-->")); let __t3719 = { let __t3717 = Value::sym(interp.intern("string")); let __t3718 = Value::nil(); rt::cons(&__t3717, &__t3718) }; rt::cons(&__t3716, &__t3719) }; let __t3721 = v_B6387.clone(); let __t3722 = v_L6388.clone(); let __t3723 = v_Key6389.clone(); let __t3724 = v_C6390.clone(); rt::apply_direct(interp, "is!", &[__t3715, __t3720, __t3721, __t3722, __t3723, __t3724])? }) }, vec![v_B6387, v_Key6389, v_L6388, v_V6391], interp) }) }, vec![v_B6387, v_L6388, v_V6391], interp) }) }, vec![v_B6387, v_V6391], interp) }) }, vec![v_V6391], interp) }) }, Vec::new(), interp) }; let __t3727 = { let __t3726 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3726])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3714, __t3725, __t3727])? }; rt::apply_direct(interp, "set", &[__t3713, __t3728])? }; - { - let _ = { let __t3729 = Value::sym(interp.intern("shen.*sigf*")); let __t3744 = { let __t3730 = Value::sym(interp.intern("porters")); let __t3741 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6396 = args[0].clone(); Ok({ let v_V6396 = v_V6396.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6392 = args[0].clone(); Ok({ let v_B6392 = v_B6392.clone(); let v_V6396 = v_V6396.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6393 = args[0].clone(); Ok({ let v_B6392 = v_B6392.clone(); let v_L6393 = v_L6393.clone(); let v_V6396 = v_V6396.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6394 = args[0].clone(); Ok({ let v_B6392 = v_B6392.clone(); let v_Key6394 = v_Key6394.clone(); let v_L6393 = v_L6393.clone(); let v_V6396 = v_V6396.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6395 = args[0].clone(); Ok({ let __t3731 = v_V6396.clone(); let __t3736 = { let __t3732 = Value::sym(interp.intern("-->")); let __t3735 = { let __t3733 = Value::sym(interp.intern("string")); let __t3734 = Value::nil(); rt::cons(&__t3733, &__t3734) }; rt::cons(&__t3732, &__t3735) }; let __t3737 = v_B6392.clone(); let __t3738 = v_L6393.clone(); let __t3739 = v_Key6394.clone(); let __t3740 = v_C6395.clone(); rt::apply_direct(interp, "is!", &[__t3731, __t3736, __t3737, __t3738, __t3739, __t3740])? }) }, vec![v_B6392, v_Key6394, v_L6393, v_V6396], interp) }) }, vec![v_B6392, v_L6393, v_V6396], interp) }) }, vec![v_B6392, v_V6396], interp) }) }, vec![v_V6396], interp) }) }, Vec::new(), interp) }; let __t3743 = { let __t3742 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3742])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3730, __t3741, __t3743])? }; rt::apply_direct(interp, "set", &[__t3729, __t3744])? }; - { - let _ = { let __t3745 = Value::sym(interp.intern("shen.*sigf*")); let __t3768 = { let __t3746 = Value::sym(interp.intern("pos")); let __t3765 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6401 = args[0].clone(); Ok({ let v_V6401 = v_V6401.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6397 = args[0].clone(); Ok({ let v_B6397 = v_B6397.clone(); let v_V6401 = v_V6401.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6398 = args[0].clone(); Ok({ let v_B6397 = v_B6397.clone(); let v_L6398 = v_L6398.clone(); let v_V6401 = v_V6401.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6399 = args[0].clone(); Ok({ let v_B6397 = v_B6397.clone(); let v_Key6399 = v_Key6399.clone(); let v_L6398 = v_L6398.clone(); let v_V6401 = v_V6401.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6400 = args[0].clone(); Ok({ let __t3747 = v_V6401.clone(); let __t3760 = { let __t3748 = Value::sym(interp.intern("string")); let __t3759 = { let __t3749 = Value::sym(interp.intern("-->")); let __t3758 = { let __t3756 = { let __t3750 = Value::sym(interp.intern("number")); let __t3755 = { let __t3751 = Value::sym(interp.intern("-->")); let __t3754 = { let __t3752 = Value::sym(interp.intern("string")); let __t3753 = Value::nil(); rt::cons(&__t3752, &__t3753) }; rt::cons(&__t3751, &__t3754) }; rt::cons(&__t3750, &__t3755) }; let __t3757 = Value::nil(); rt::cons(&__t3756, &__t3757) }; rt::cons(&__t3749, &__t3758) }; rt::cons(&__t3748, &__t3759) }; let __t3761 = v_B6397.clone(); let __t3762 = v_L6398.clone(); let __t3763 = v_Key6399.clone(); let __t3764 = v_C6400.clone(); rt::apply_direct(interp, "is!", &[__t3747, __t3760, __t3761, __t3762, __t3763, __t3764])? }) }, vec![v_B6397, v_Key6399, v_L6398, v_V6401], interp) }) }, vec![v_B6397, v_L6398, v_V6401], interp) }) }, vec![v_B6397, v_V6401], interp) }) }, vec![v_V6401], interp) }) }, Vec::new(), interp) }; let __t3767 = { let __t3766 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3766])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3746, __t3765, __t3767])? }; rt::apply_direct(interp, "set", &[__t3745, __t3768])? }; - { - let _ = { let __t3769 = Value::sym(interp.intern("shen.*sigf*")); let __t3796 = { let __t3770 = Value::sym(interp.intern("pr")); let __t3793 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6406 = args[0].clone(); Ok({ let v_V6406 = v_V6406.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6402 = args[0].clone(); Ok({ let v_B6402 = v_B6402.clone(); let v_V6406 = v_V6406.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6403 = args[0].clone(); Ok({ let v_B6402 = v_B6402.clone(); let v_L6403 = v_L6403.clone(); let v_V6406 = v_V6406.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6404 = args[0].clone(); Ok({ let v_B6402 = v_B6402.clone(); let v_Key6404 = v_Key6404.clone(); let v_L6403 = v_L6403.clone(); let v_V6406 = v_V6406.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6405 = args[0].clone(); Ok({ let __t3771 = v_V6406.clone(); let __t3788 = { let __t3772 = Value::sym(interp.intern("string")); let __t3787 = { let __t3773 = Value::sym(interp.intern("-->")); let __t3786 = { let __t3784 = { let __t3778 = { let __t3774 = Value::sym(interp.intern("stream")); let __t3777 = { let __t3775 = Value::sym(interp.intern("out")); let __t3776 = Value::nil(); rt::cons(&__t3775, &__t3776) }; rt::cons(&__t3774, &__t3777) }; let __t3783 = { let __t3779 = Value::sym(interp.intern("-->")); let __t3782 = { let __t3780 = Value::sym(interp.intern("string")); let __t3781 = Value::nil(); rt::cons(&__t3780, &__t3781) }; rt::cons(&__t3779, &__t3782) }; rt::cons(&__t3778, &__t3783) }; let __t3785 = Value::nil(); rt::cons(&__t3784, &__t3785) }; rt::cons(&__t3773, &__t3786) }; rt::cons(&__t3772, &__t3787) }; let __t3789 = v_B6402.clone(); let __t3790 = v_L6403.clone(); let __t3791 = v_Key6404.clone(); let __t3792 = v_C6405.clone(); rt::apply_direct(interp, "is!", &[__t3771, __t3788, __t3789, __t3790, __t3791, __t3792])? }) }, vec![v_B6402, v_Key6404, v_L6403, v_V6406], interp) }) }, vec![v_B6402, v_L6403, v_V6406], interp) }) }, vec![v_B6402, v_V6406], interp) }) }, vec![v_V6406], interp) }) }, Vec::new(), interp) }; let __t3795 = { let __t3794 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3794])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3770, __t3793, __t3795])? }; rt::apply_direct(interp, "set", &[__t3769, __t3796])? }; - { - let _ = { let __t3797 = Value::sym(interp.intern("shen.*sigf*")); let __t3817 = { let __t3798 = Value::sym(interp.intern("print")); let __t3814 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6411 = args[0].clone(); Ok({ let v_V6411 = v_V6411.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6407 = args[0].clone(); Ok({ let v_B6407 = v_B6407.clone(); let v_V6411 = v_V6411.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6408 = args[0].clone(); Ok({ let v_B6407 = v_B6407.clone(); let v_L6408 = v_L6408.clone(); let v_V6411 = v_V6411.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6409 = args[0].clone(); Ok({ let v_B6407 = v_B6407.clone(); let v_Key6409 = v_Key6409.clone(); let v_L6408 = v_L6408.clone(); let v_V6411 = v_V6411.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6410 = args[0].clone(); Ok({ let v_A = { let __t3799 = v_B6407.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3799])? }; { let __t3800 = v_B6407.clone(); let __t3813 = { let __t3801 = v_V6411.clone(); let __t3808 = { let __t3802 = v_A.clone(); let __t3807 = { let __t3803 = Value::sym(interp.intern("-->")); let __t3806 = { let __t3804 = v_A.clone(); let __t3805 = Value::nil(); rt::cons(&__t3804, &__t3805) }; rt::cons(&__t3803, &__t3806) }; rt::cons(&__t3802, &__t3807) }; let __t3809 = v_B6407.clone(); let __t3810 = v_L6408.clone(); let __t3811 = v_Key6409.clone(); let __t3812 = v_C6410.clone(); rt::apply_direct(interp, "is!", &[__t3801, __t3808, __t3809, __t3810, __t3811, __t3812])? }; rt::apply_direct(interp, "shen.gc", &[__t3800, __t3813])? } }) }, vec![v_B6407, v_Key6409, v_L6408, v_V6411], interp) }) }, vec![v_B6407, v_L6408, v_V6411], interp) }) }, vec![v_B6407, v_V6411], interp) }) }, vec![v_V6411], interp) }) }, Vec::new(), interp) }; let __t3816 = { let __t3815 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3815])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3798, __t3814, __t3816])? }; rt::apply_direct(interp, "set", &[__t3797, __t3817])? }; - { - let _ = { let __t3818 = Value::sym(interp.intern("shen.*sigf*")); let __t3835 = { let __t3819 = Value::sym(interp.intern("profile")); let __t3832 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6416 = args[0].clone(); Ok({ let v_V6416 = v_V6416.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6412 = args[0].clone(); Ok({ let v_B6412 = v_B6412.clone(); let v_V6416 = v_V6416.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6413 = args[0].clone(); Ok({ let v_B6412 = v_B6412.clone(); let v_L6413 = v_L6413.clone(); let v_V6416 = v_V6416.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6414 = args[0].clone(); Ok({ let v_B6412 = v_B6412.clone(); let v_Key6414 = v_Key6414.clone(); let v_L6413 = v_L6413.clone(); let v_V6416 = v_V6416.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6415 = args[0].clone(); Ok({ let __t3820 = v_V6416.clone(); let __t3827 = { let __t3821 = Value::sym(interp.intern("symbol")); let __t3826 = { let __t3822 = Value::sym(interp.intern("-->")); let __t3825 = { let __t3823 = Value::sym(interp.intern("symbol")); let __t3824 = Value::nil(); rt::cons(&__t3823, &__t3824) }; rt::cons(&__t3822, &__t3825) }; rt::cons(&__t3821, &__t3826) }; let __t3828 = v_B6412.clone(); let __t3829 = v_L6413.clone(); let __t3830 = v_Key6414.clone(); let __t3831 = v_C6415.clone(); rt::apply_direct(interp, "is!", &[__t3820, __t3827, __t3828, __t3829, __t3830, __t3831])? }) }, vec![v_B6412, v_Key6414, v_L6413, v_V6416], interp) }) }, vec![v_B6412, v_L6413, v_V6416], interp) }) }, vec![v_B6412, v_V6416], interp) }) }, vec![v_V6416], interp) }) }, Vec::new(), interp) }; let __t3834 = { let __t3833 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3833])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3819, __t3832, __t3834])? }; rt::apply_direct(interp, "set", &[__t3818, __t3835])? }; - { - let _ = { let __t3836 = Value::sym(interp.intern("shen.*sigf*")); let __t3861 = { let __t3837 = Value::sym(interp.intern("preclude")); let __t3858 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6421 = args[0].clone(); Ok({ let v_V6421 = v_V6421.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6417 = args[0].clone(); Ok({ let v_B6417 = v_B6417.clone(); let v_V6421 = v_V6421.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6418 = args[0].clone(); Ok({ let v_B6417 = v_B6417.clone(); let v_L6418 = v_L6418.clone(); let v_V6421 = v_V6421.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6419 = args[0].clone(); Ok({ let v_B6417 = v_B6417.clone(); let v_Key6419 = v_Key6419.clone(); let v_L6418 = v_L6418.clone(); let v_V6421 = v_V6421.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6420 = args[0].clone(); Ok({ let __t3838 = v_V6421.clone(); let __t3853 = { let __t3843 = { let __t3839 = Value::sym(interp.intern("list")); let __t3842 = { let __t3840 = Value::sym(interp.intern("symbol")); let __t3841 = Value::nil(); rt::cons(&__t3840, &__t3841) }; rt::cons(&__t3839, &__t3842) }; let __t3852 = { let __t3844 = Value::sym(interp.intern("-->")); let __t3851 = { let __t3849 = { let __t3845 = Value::sym(interp.intern("list")); let __t3848 = { let __t3846 = Value::sym(interp.intern("symbol")); let __t3847 = Value::nil(); rt::cons(&__t3846, &__t3847) }; rt::cons(&__t3845, &__t3848) }; let __t3850 = Value::nil(); rt::cons(&__t3849, &__t3850) }; rt::cons(&__t3844, &__t3851) }; rt::cons(&__t3843, &__t3852) }; let __t3854 = v_B6417.clone(); let __t3855 = v_L6418.clone(); let __t3856 = v_Key6419.clone(); let __t3857 = v_C6420.clone(); rt::apply_direct(interp, "is!", &[__t3838, __t3853, __t3854, __t3855, __t3856, __t3857])? }) }, vec![v_B6417, v_Key6419, v_L6418, v_V6421], interp) }) }, vec![v_B6417, v_L6418, v_V6421], interp) }) }, vec![v_B6417, v_V6421], interp) }) }, vec![v_V6421], interp) }) }, Vec::new(), interp) }; let __t3860 = { let __t3859 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3859])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3837, __t3858, __t3860])? }; rt::apply_direct(interp, "set", &[__t3836, __t3861])? }; - { - let _ = { let __t3862 = Value::sym(interp.intern("shen.*sigf*")); let __t3879 = { let __t3863 = Value::sym(interp.intern("shen.proc-nl")); let __t3876 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6426 = args[0].clone(); Ok({ let v_V6426 = v_V6426.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6422 = args[0].clone(); Ok({ let v_B6422 = v_B6422.clone(); let v_V6426 = v_V6426.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6423 = args[0].clone(); Ok({ let v_B6422 = v_B6422.clone(); let v_L6423 = v_L6423.clone(); let v_V6426 = v_V6426.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6424 = args[0].clone(); Ok({ let v_B6422 = v_B6422.clone(); let v_Key6424 = v_Key6424.clone(); let v_L6423 = v_L6423.clone(); let v_V6426 = v_V6426.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6425 = args[0].clone(); Ok({ let __t3864 = v_V6426.clone(); let __t3871 = { let __t3865 = Value::sym(interp.intern("string")); let __t3870 = { let __t3866 = Value::sym(interp.intern("-->")); let __t3869 = { let __t3867 = Value::sym(interp.intern("string")); let __t3868 = Value::nil(); rt::cons(&__t3867, &__t3868) }; rt::cons(&__t3866, &__t3869) }; rt::cons(&__t3865, &__t3870) }; let __t3872 = v_B6422.clone(); let __t3873 = v_L6423.clone(); let __t3874 = v_Key6424.clone(); let __t3875 = v_C6425.clone(); rt::apply_direct(interp, "is!", &[__t3864, __t3871, __t3872, __t3873, __t3874, __t3875])? }) }, vec![v_B6422, v_Key6424, v_L6423, v_V6426], interp) }) }, vec![v_B6422, v_L6423, v_V6426], interp) }) }, vec![v_B6422, v_V6426], interp) }) }, vec![v_V6426], interp) }) }, Vec::new(), interp) }; let __t3878 = { let __t3877 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3877])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3863, __t3876, __t3878])? }; rt::apply_direct(interp, "set", &[__t3862, __t3879])? }; - { - let _ = { let __t3880 = Value::sym(interp.intern("shen.*sigf*")); let __t3903 = { let __t3881 = Value::sym(interp.intern("profile-results")); let __t3900 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6431 = args[0].clone(); Ok({ let v_V6431 = v_V6431.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6427 = args[0].clone(); Ok({ let v_B6427 = v_B6427.clone(); let v_V6431 = v_V6431.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6428 = args[0].clone(); Ok({ let v_B6427 = v_B6427.clone(); let v_L6428 = v_L6428.clone(); let v_V6431 = v_V6431.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6429 = args[0].clone(); Ok({ let v_B6427 = v_B6427.clone(); let v_Key6429 = v_Key6429.clone(); let v_L6428 = v_L6428.clone(); let v_V6431 = v_V6431.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6430 = args[0].clone(); Ok({ let __t3882 = v_V6431.clone(); let __t3895 = { let __t3883 = Value::sym(interp.intern("symbol")); let __t3894 = { let __t3884 = Value::sym(interp.intern("-->")); let __t3893 = { let __t3891 = { let __t3885 = Value::sym(interp.intern("symbol")); let __t3890 = { let __t3886 = Value::sym(interp.intern("*")); let __t3889 = { let __t3887 = Value::sym(interp.intern("number")); let __t3888 = Value::nil(); rt::cons(&__t3887, &__t3888) }; rt::cons(&__t3886, &__t3889) }; rt::cons(&__t3885, &__t3890) }; let __t3892 = Value::nil(); rt::cons(&__t3891, &__t3892) }; rt::cons(&__t3884, &__t3893) }; rt::cons(&__t3883, &__t3894) }; let __t3896 = v_B6427.clone(); let __t3897 = v_L6428.clone(); let __t3898 = v_Key6429.clone(); let __t3899 = v_C6430.clone(); rt::apply_direct(interp, "is!", &[__t3882, __t3895, __t3896, __t3897, __t3898, __t3899])? }) }, vec![v_B6427, v_Key6429, v_L6428, v_V6431], interp) }) }, vec![v_B6427, v_L6428, v_V6431], interp) }) }, vec![v_B6427, v_V6431], interp) }) }, vec![v_V6431], interp) }) }, Vec::new(), interp) }; let __t3902 = { let __t3901 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3901])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3881, __t3900, __t3902])? }; rt::apply_direct(interp, "set", &[__t3880, __t3903])? }; - { - let _ = { let __t3904 = Value::sym(interp.intern("shen.*sigf*")); let __t3924 = { let __t3905 = Value::sym(interp.intern("protect")); let __t3921 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6436 = args[0].clone(); Ok({ let v_V6436 = v_V6436.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6432 = args[0].clone(); Ok({ let v_B6432 = v_B6432.clone(); let v_V6436 = v_V6436.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6433 = args[0].clone(); Ok({ let v_B6432 = v_B6432.clone(); let v_L6433 = v_L6433.clone(); let v_V6436 = v_V6436.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6434 = args[0].clone(); Ok({ let v_B6432 = v_B6432.clone(); let v_Key6434 = v_Key6434.clone(); let v_L6433 = v_L6433.clone(); let v_V6436 = v_V6436.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6435 = args[0].clone(); Ok({ let v_A = { let __t3906 = v_B6432.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3906])? }; { let __t3907 = v_B6432.clone(); let __t3920 = { let __t3908 = v_V6436.clone(); let __t3915 = { let __t3909 = v_A.clone(); let __t3914 = { let __t3910 = Value::sym(interp.intern("-->")); let __t3913 = { let __t3911 = v_A.clone(); let __t3912 = Value::nil(); rt::cons(&__t3911, &__t3912) }; rt::cons(&__t3910, &__t3913) }; rt::cons(&__t3909, &__t3914) }; let __t3916 = v_B6432.clone(); let __t3917 = v_L6433.clone(); let __t3918 = v_Key6434.clone(); let __t3919 = v_C6435.clone(); rt::apply_direct(interp, "is!", &[__t3908, __t3915, __t3916, __t3917, __t3918, __t3919])? }; rt::apply_direct(interp, "shen.gc", &[__t3907, __t3920])? } }) }, vec![v_B6432, v_Key6434, v_L6433, v_V6436], interp) }) }, vec![v_B6432, v_L6433, v_V6436], interp) }) }, vec![v_B6432, v_V6436], interp) }) }, vec![v_V6436], interp) }) }, Vec::new(), interp) }; let __t3923 = { let __t3922 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3922])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3905, __t3921, __t3923])? }; rt::apply_direct(interp, "set", &[__t3904, __t3924])? }; - { - let _ = { let __t3925 = Value::sym(interp.intern("shen.*sigf*")); let __t3950 = { let __t3926 = Value::sym(interp.intern("preclude-all-but")); let __t3947 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6441 = args[0].clone(); Ok({ let v_V6441 = v_V6441.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6437 = args[0].clone(); Ok({ let v_B6437 = v_B6437.clone(); let v_V6441 = v_V6441.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6438 = args[0].clone(); Ok({ let v_B6437 = v_B6437.clone(); let v_L6438 = v_L6438.clone(); let v_V6441 = v_V6441.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6439 = args[0].clone(); Ok({ let v_B6437 = v_B6437.clone(); let v_Key6439 = v_Key6439.clone(); let v_L6438 = v_L6438.clone(); let v_V6441 = v_V6441.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6440 = args[0].clone(); Ok({ let __t3927 = v_V6441.clone(); let __t3942 = { let __t3932 = { let __t3928 = Value::sym(interp.intern("list")); let __t3931 = { let __t3929 = Value::sym(interp.intern("symbol")); let __t3930 = Value::nil(); rt::cons(&__t3929, &__t3930) }; rt::cons(&__t3928, &__t3931) }; let __t3941 = { let __t3933 = Value::sym(interp.intern("-->")); let __t3940 = { let __t3938 = { let __t3934 = Value::sym(interp.intern("list")); let __t3937 = { let __t3935 = Value::sym(interp.intern("symbol")); let __t3936 = Value::nil(); rt::cons(&__t3935, &__t3936) }; rt::cons(&__t3934, &__t3937) }; let __t3939 = Value::nil(); rt::cons(&__t3938, &__t3939) }; rt::cons(&__t3933, &__t3940) }; rt::cons(&__t3932, &__t3941) }; let __t3943 = v_B6437.clone(); let __t3944 = v_L6438.clone(); let __t3945 = v_Key6439.clone(); let __t3946 = v_C6440.clone(); rt::apply_direct(interp, "is!", &[__t3927, __t3942, __t3943, __t3944, __t3945, __t3946])? }) }, vec![v_B6437, v_Key6439, v_L6438, v_V6441], interp) }) }, vec![v_B6437, v_L6438, v_V6441], interp) }) }, vec![v_B6437, v_V6441], interp) }) }, vec![v_V6441], interp) }) }, Vec::new(), interp) }; let __t3949 = { let __t3948 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3948])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3926, __t3947, __t3949])? }; rt::apply_direct(interp, "set", &[__t3925, __t3950])? }; - { - let _ = { let __t3951 = Value::sym(interp.intern("shen.*sigf*")); let __t3978 = { let __t3952 = Value::sym(interp.intern("shen.prhush")); let __t3975 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6446 = args[0].clone(); Ok({ let v_V6446 = v_V6446.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6442 = args[0].clone(); Ok({ let v_B6442 = v_B6442.clone(); let v_V6446 = v_V6446.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6443 = args[0].clone(); Ok({ let v_B6442 = v_B6442.clone(); let v_L6443 = v_L6443.clone(); let v_V6446 = v_V6446.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6444 = args[0].clone(); Ok({ let v_B6442 = v_B6442.clone(); let v_Key6444 = v_Key6444.clone(); let v_L6443 = v_L6443.clone(); let v_V6446 = v_V6446.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6445 = args[0].clone(); Ok({ let __t3953 = v_V6446.clone(); let __t3970 = { let __t3954 = Value::sym(interp.intern("string")); let __t3969 = { let __t3955 = Value::sym(interp.intern("-->")); let __t3968 = { let __t3966 = { let __t3960 = { let __t3956 = Value::sym(interp.intern("stream")); let __t3959 = { let __t3957 = Value::sym(interp.intern("out")); let __t3958 = Value::nil(); rt::cons(&__t3957, &__t3958) }; rt::cons(&__t3956, &__t3959) }; let __t3965 = { let __t3961 = Value::sym(interp.intern("-->")); let __t3964 = { let __t3962 = Value::sym(interp.intern("string")); let __t3963 = Value::nil(); rt::cons(&__t3962, &__t3963) }; rt::cons(&__t3961, &__t3964) }; rt::cons(&__t3960, &__t3965) }; let __t3967 = Value::nil(); rt::cons(&__t3966, &__t3967) }; rt::cons(&__t3955, &__t3968) }; rt::cons(&__t3954, &__t3969) }; let __t3971 = v_B6442.clone(); let __t3972 = v_L6443.clone(); let __t3973 = v_Key6444.clone(); let __t3974 = v_C6445.clone(); rt::apply_direct(interp, "is!", &[__t3953, __t3970, __t3971, __t3972, __t3973, __t3974])? }) }, vec![v_B6442, v_Key6444, v_L6443, v_V6446], interp) }) }, vec![v_B6442, v_L6443, v_V6446], interp) }) }, vec![v_B6442, v_V6446], interp) }) }, vec![v_V6446], interp) }) }, Vec::new(), interp) }; let __t3977 = { let __t3976 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3976])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3952, __t3975, __t3977])? }; rt::apply_direct(interp, "set", &[__t3951, __t3978])? }; - { - let _ = { let __t3979 = Value::sym(interp.intern("shen.*sigf*")); let __t3996 = { let __t3980 = Value::sym(interp.intern("prolog-memory")); let __t3993 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6451 = args[0].clone(); Ok({ let v_V6451 = v_V6451.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6447 = args[0].clone(); Ok({ let v_B6447 = v_B6447.clone(); let v_V6451 = v_V6451.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6448 = args[0].clone(); Ok({ let v_B6447 = v_B6447.clone(); let v_L6448 = v_L6448.clone(); let v_V6451 = v_V6451.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6449 = args[0].clone(); Ok({ let v_B6447 = v_B6447.clone(); let v_Key6449 = v_Key6449.clone(); let v_L6448 = v_L6448.clone(); let v_V6451 = v_V6451.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6450 = args[0].clone(); Ok({ let __t3981 = v_V6451.clone(); let __t3988 = { let __t3982 = Value::sym(interp.intern("number")); let __t3987 = { let __t3983 = Value::sym(interp.intern("-->")); let __t3986 = { let __t3984 = Value::sym(interp.intern("number")); let __t3985 = Value::nil(); rt::cons(&__t3984, &__t3985) }; rt::cons(&__t3983, &__t3986) }; rt::cons(&__t3982, &__t3987) }; let __t3989 = v_B6447.clone(); let __t3990 = v_L6448.clone(); let __t3991 = v_Key6449.clone(); let __t3992 = v_C6450.clone(); rt::apply_direct(interp, "is!", &[__t3981, __t3988, __t3989, __t3990, __t3991, __t3992])? }) }, vec![v_B6447, v_Key6449, v_L6448, v_V6451], interp) }) }, vec![v_B6447, v_L6448, v_V6451], interp) }) }, vec![v_B6447, v_V6451], interp) }) }, vec![v_V6451], interp) }) }, Vec::new(), interp) }; let __t3995 = { let __t3994 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t3994])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3980, __t3993, __t3995])? }; rt::apply_direct(interp, "set", &[__t3979, __t3996])? }; - { - let _ = { let __t3997 = Value::sym(interp.intern("shen.*sigf*")); let __t4018 = { let __t3998 = Value::sym(interp.intern("ps")); let __t4015 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6456 = args[0].clone(); Ok({ let v_V6456 = v_V6456.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6452 = args[0].clone(); Ok({ let v_B6452 = v_B6452.clone(); let v_V6456 = v_V6456.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6453 = args[0].clone(); Ok({ let v_B6452 = v_B6452.clone(); let v_L6453 = v_L6453.clone(); let v_V6456 = v_V6456.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6454 = args[0].clone(); Ok({ let v_B6452 = v_B6452.clone(); let v_Key6454 = v_Key6454.clone(); let v_L6453 = v_L6453.clone(); let v_V6456 = v_V6456.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6455 = args[0].clone(); Ok({ let __t3999 = v_V6456.clone(); let __t4010 = { let __t4000 = Value::sym(interp.intern("symbol")); let __t4009 = { let __t4001 = Value::sym(interp.intern("-->")); let __t4008 = { let __t4006 = { let __t4002 = Value::sym(interp.intern("list")); let __t4005 = { let __t4003 = Value::sym(interp.intern("unit")); let __t4004 = Value::nil(); rt::cons(&__t4003, &__t4004) }; rt::cons(&__t4002, &__t4005) }; let __t4007 = Value::nil(); rt::cons(&__t4006, &__t4007) }; rt::cons(&__t4001, &__t4008) }; rt::cons(&__t4000, &__t4009) }; let __t4011 = v_B6452.clone(); let __t4012 = v_L6453.clone(); let __t4013 = v_Key6454.clone(); let __t4014 = v_C6455.clone(); rt::apply_direct(interp, "is!", &[__t3999, __t4010, __t4011, __t4012, __t4013, __t4014])? }) }, vec![v_B6452, v_Key6454, v_L6453, v_V6456], interp) }) }, vec![v_B6452, v_L6453, v_V6456], interp) }) }, vec![v_B6452, v_V6456], interp) }) }, vec![v_V6456], interp) }) }, Vec::new(), interp) }; let __t4017 = { let __t4016 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4016])? }; rt::apply_direct(interp, "shen.assoc->", &[__t3998, __t4015, __t4017])? }; rt::apply_direct(interp, "set", &[__t3997, __t4018])? }; - { - let _ = { let __t4019 = Value::sym(interp.intern("shen.*sigf*")); let __t4040 = { let __t4020 = Value::sym(interp.intern("read")); let __t4037 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6461 = args[0].clone(); Ok({ let v_V6461 = v_V6461.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6457 = args[0].clone(); Ok({ let v_B6457 = v_B6457.clone(); let v_V6461 = v_V6461.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6458 = args[0].clone(); Ok({ let v_B6457 = v_B6457.clone(); let v_L6458 = v_L6458.clone(); let v_V6461 = v_V6461.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6459 = args[0].clone(); Ok({ let v_B6457 = v_B6457.clone(); let v_Key6459 = v_Key6459.clone(); let v_L6458 = v_L6458.clone(); let v_V6461 = v_V6461.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6460 = args[0].clone(); Ok({ let __t4021 = v_V6461.clone(); let __t4032 = { let __t4026 = { let __t4022 = Value::sym(interp.intern("stream")); let __t4025 = { let __t4023 = Value::sym(interp.intern("in")); let __t4024 = Value::nil(); rt::cons(&__t4023, &__t4024) }; rt::cons(&__t4022, &__t4025) }; let __t4031 = { let __t4027 = Value::sym(interp.intern("-->")); let __t4030 = { let __t4028 = Value::sym(interp.intern("unit")); let __t4029 = Value::nil(); rt::cons(&__t4028, &__t4029) }; rt::cons(&__t4027, &__t4030) }; rt::cons(&__t4026, &__t4031) }; let __t4033 = v_B6457.clone(); let __t4034 = v_L6458.clone(); let __t4035 = v_Key6459.clone(); let __t4036 = v_C6460.clone(); rt::apply_direct(interp, "is!", &[__t4021, __t4032, __t4033, __t4034, __t4035, __t4036])? }) }, vec![v_B6457, v_Key6459, v_L6458, v_V6461], interp) }) }, vec![v_B6457, v_L6458, v_V6461], interp) }) }, vec![v_B6457, v_V6461], interp) }) }, vec![v_V6461], interp) }) }, Vec::new(), interp) }; let __t4039 = { let __t4038 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4038])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4020, __t4037, __t4039])? }; rt::apply_direct(interp, "set", &[__t4019, __t4040])? }; - { - let _ = { let __t4041 = Value::sym(interp.intern("shen.*sigf*")); let __t4062 = { let __t4042 = Value::sym(interp.intern("read-byte")); let __t4059 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6466 = args[0].clone(); Ok({ let v_V6466 = v_V6466.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6462 = args[0].clone(); Ok({ let v_B6462 = v_B6462.clone(); let v_V6466 = v_V6466.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6463 = args[0].clone(); Ok({ let v_B6462 = v_B6462.clone(); let v_L6463 = v_L6463.clone(); let v_V6466 = v_V6466.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6464 = args[0].clone(); Ok({ let v_B6462 = v_B6462.clone(); let v_Key6464 = v_Key6464.clone(); let v_L6463 = v_L6463.clone(); let v_V6466 = v_V6466.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6465 = args[0].clone(); Ok({ let __t4043 = v_V6466.clone(); let __t4054 = { let __t4048 = { let __t4044 = Value::sym(interp.intern("stream")); let __t4047 = { let __t4045 = Value::sym(interp.intern("in")); let __t4046 = Value::nil(); rt::cons(&__t4045, &__t4046) }; rt::cons(&__t4044, &__t4047) }; let __t4053 = { let __t4049 = Value::sym(interp.intern("-->")); let __t4052 = { let __t4050 = Value::sym(interp.intern("number")); let __t4051 = Value::nil(); rt::cons(&__t4050, &__t4051) }; rt::cons(&__t4049, &__t4052) }; rt::cons(&__t4048, &__t4053) }; let __t4055 = v_B6462.clone(); let __t4056 = v_L6463.clone(); let __t4057 = v_Key6464.clone(); let __t4058 = v_C6465.clone(); rt::apply_direct(interp, "is!", &[__t4043, __t4054, __t4055, __t4056, __t4057, __t4058])? }) }, vec![v_B6462, v_Key6464, v_L6463, v_V6466], interp) }) }, vec![v_B6462, v_L6463, v_V6466], interp) }) }, vec![v_B6462, v_V6466], interp) }) }, vec![v_V6466], interp) }) }, Vec::new(), interp) }; let __t4061 = { let __t4060 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4060])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4042, __t4059, __t4061])? }; rt::apply_direct(interp, "set", &[__t4041, __t4062])? }; - { - let _ = { let __t4063 = Value::sym(interp.intern("shen.*sigf*")); let __t4084 = { let __t4064 = Value::sym(interp.intern("read-file-as-bytelist")); let __t4081 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6471 = args[0].clone(); Ok({ let v_V6471 = v_V6471.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6467 = args[0].clone(); Ok({ let v_B6467 = v_B6467.clone(); let v_V6471 = v_V6471.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6468 = args[0].clone(); Ok({ let v_B6467 = v_B6467.clone(); let v_L6468 = v_L6468.clone(); let v_V6471 = v_V6471.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6469 = args[0].clone(); Ok({ let v_B6467 = v_B6467.clone(); let v_Key6469 = v_Key6469.clone(); let v_L6468 = v_L6468.clone(); let v_V6471 = v_V6471.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6470 = args[0].clone(); Ok({ let __t4065 = v_V6471.clone(); let __t4076 = { let __t4066 = Value::sym(interp.intern("string")); let __t4075 = { let __t4067 = Value::sym(interp.intern("-->")); let __t4074 = { let __t4072 = { let __t4068 = Value::sym(interp.intern("list")); let __t4071 = { let __t4069 = Value::sym(interp.intern("number")); let __t4070 = Value::nil(); rt::cons(&__t4069, &__t4070) }; rt::cons(&__t4068, &__t4071) }; let __t4073 = Value::nil(); rt::cons(&__t4072, &__t4073) }; rt::cons(&__t4067, &__t4074) }; rt::cons(&__t4066, &__t4075) }; let __t4077 = v_B6467.clone(); let __t4078 = v_L6468.clone(); let __t4079 = v_Key6469.clone(); let __t4080 = v_C6470.clone(); rt::apply_direct(interp, "is!", &[__t4065, __t4076, __t4077, __t4078, __t4079, __t4080])? }) }, vec![v_B6467, v_Key6469, v_L6468, v_V6471], interp) }) }, vec![v_B6467, v_L6468, v_V6471], interp) }) }, vec![v_B6467, v_V6471], interp) }) }, vec![v_V6471], interp) }) }, Vec::new(), interp) }; let __t4083 = { let __t4082 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4082])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4064, __t4081, __t4083])? }; rt::apply_direct(interp, "set", &[__t4063, __t4084])? }; - { - let _ = { let __t4085 = Value::sym(interp.intern("shen.*sigf*")); let __t4102 = { let __t4086 = Value::sym(interp.intern("read-file-as-string")); let __t4099 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6476 = args[0].clone(); Ok({ let v_V6476 = v_V6476.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6472 = args[0].clone(); Ok({ let v_B6472 = v_B6472.clone(); let v_V6476 = v_V6476.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6473 = args[0].clone(); Ok({ let v_B6472 = v_B6472.clone(); let v_L6473 = v_L6473.clone(); let v_V6476 = v_V6476.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6474 = args[0].clone(); Ok({ let v_B6472 = v_B6472.clone(); let v_Key6474 = v_Key6474.clone(); let v_L6473 = v_L6473.clone(); let v_V6476 = v_V6476.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6475 = args[0].clone(); Ok({ let __t4087 = v_V6476.clone(); let __t4094 = { let __t4088 = Value::sym(interp.intern("string")); let __t4093 = { let __t4089 = Value::sym(interp.intern("-->")); let __t4092 = { let __t4090 = Value::sym(interp.intern("string")); let __t4091 = Value::nil(); rt::cons(&__t4090, &__t4091) }; rt::cons(&__t4089, &__t4092) }; rt::cons(&__t4088, &__t4093) }; let __t4095 = v_B6472.clone(); let __t4096 = v_L6473.clone(); let __t4097 = v_Key6474.clone(); let __t4098 = v_C6475.clone(); rt::apply_direct(interp, "is!", &[__t4087, __t4094, __t4095, __t4096, __t4097, __t4098])? }) }, vec![v_B6472, v_Key6474, v_L6473, v_V6476], interp) }) }, vec![v_B6472, v_L6473, v_V6476], interp) }) }, vec![v_B6472, v_V6476], interp) }) }, vec![v_V6476], interp) }) }, Vec::new(), interp) }; let __t4101 = { let __t4100 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4100])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4086, __t4099, __t4101])? }; rt::apply_direct(interp, "set", &[__t4085, __t4102])? }; - { - let _ = { let __t4103 = Value::sym(interp.intern("shen.*sigf*")); let __t4124 = { let __t4104 = Value::sym(interp.intern("read-file")); let __t4121 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6481 = args[0].clone(); Ok({ let v_V6481 = v_V6481.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6477 = args[0].clone(); Ok({ let v_B6477 = v_B6477.clone(); let v_V6481 = v_V6481.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6478 = args[0].clone(); Ok({ let v_B6477 = v_B6477.clone(); let v_L6478 = v_L6478.clone(); let v_V6481 = v_V6481.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6479 = args[0].clone(); Ok({ let v_B6477 = v_B6477.clone(); let v_Key6479 = v_Key6479.clone(); let v_L6478 = v_L6478.clone(); let v_V6481 = v_V6481.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6480 = args[0].clone(); Ok({ let __t4105 = v_V6481.clone(); let __t4116 = { let __t4106 = Value::sym(interp.intern("string")); let __t4115 = { let __t4107 = Value::sym(interp.intern("-->")); let __t4114 = { let __t4112 = { let __t4108 = Value::sym(interp.intern("list")); let __t4111 = { let __t4109 = Value::sym(interp.intern("unit")); let __t4110 = Value::nil(); rt::cons(&__t4109, &__t4110) }; rt::cons(&__t4108, &__t4111) }; let __t4113 = Value::nil(); rt::cons(&__t4112, &__t4113) }; rt::cons(&__t4107, &__t4114) }; rt::cons(&__t4106, &__t4115) }; let __t4117 = v_B6477.clone(); let __t4118 = v_L6478.clone(); let __t4119 = v_Key6479.clone(); let __t4120 = v_C6480.clone(); rt::apply_direct(interp, "is!", &[__t4105, __t4116, __t4117, __t4118, __t4119, __t4120])? }) }, vec![v_B6477, v_Key6479, v_L6478, v_V6481], interp) }) }, vec![v_B6477, v_L6478, v_V6481], interp) }) }, vec![v_B6477, v_V6481], interp) }) }, vec![v_V6481], interp) }) }, Vec::new(), interp) }; let __t4123 = { let __t4122 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4122])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4104, __t4121, __t4123])? }; rt::apply_direct(interp, "set", &[__t4103, __t4124])? }; - { - let _ = { let __t4125 = Value::sym(interp.intern("shen.*sigf*")); let __t4146 = { let __t4126 = Value::sym(interp.intern("read-from-string")); let __t4143 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6486 = args[0].clone(); Ok({ let v_V6486 = v_V6486.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6482 = args[0].clone(); Ok({ let v_B6482 = v_B6482.clone(); let v_V6486 = v_V6486.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6483 = args[0].clone(); Ok({ let v_B6482 = v_B6482.clone(); let v_L6483 = v_L6483.clone(); let v_V6486 = v_V6486.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6484 = args[0].clone(); Ok({ let v_B6482 = v_B6482.clone(); let v_Key6484 = v_Key6484.clone(); let v_L6483 = v_L6483.clone(); let v_V6486 = v_V6486.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6485 = args[0].clone(); Ok({ let __t4127 = v_V6486.clone(); let __t4138 = { let __t4128 = Value::sym(interp.intern("string")); let __t4137 = { let __t4129 = Value::sym(interp.intern("-->")); let __t4136 = { let __t4134 = { let __t4130 = Value::sym(interp.intern("list")); let __t4133 = { let __t4131 = Value::sym(interp.intern("unit")); let __t4132 = Value::nil(); rt::cons(&__t4131, &__t4132) }; rt::cons(&__t4130, &__t4133) }; let __t4135 = Value::nil(); rt::cons(&__t4134, &__t4135) }; rt::cons(&__t4129, &__t4136) }; rt::cons(&__t4128, &__t4137) }; let __t4139 = v_B6482.clone(); let __t4140 = v_L6483.clone(); let __t4141 = v_Key6484.clone(); let __t4142 = v_C6485.clone(); rt::apply_direct(interp, "is!", &[__t4127, __t4138, __t4139, __t4140, __t4141, __t4142])? }) }, vec![v_B6482, v_Key6484, v_L6483, v_V6486], interp) }) }, vec![v_B6482, v_L6483, v_V6486], interp) }) }, vec![v_B6482, v_V6486], interp) }) }, vec![v_V6486], interp) }) }, Vec::new(), interp) }; let __t4145 = { let __t4144 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4144])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4126, __t4143, __t4145])? }; rt::apply_direct(interp, "set", &[__t4125, __t4146])? }; - { - let _ = { let __t4147 = Value::sym(interp.intern("shen.*sigf*")); let __t4168 = { let __t4148 = Value::sym(interp.intern("read-from-string-unprocessed")); let __t4165 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6491 = args[0].clone(); Ok({ let v_V6491 = v_V6491.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6487 = args[0].clone(); Ok({ let v_B6487 = v_B6487.clone(); let v_V6491 = v_V6491.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6488 = args[0].clone(); Ok({ let v_B6487 = v_B6487.clone(); let v_L6488 = v_L6488.clone(); let v_V6491 = v_V6491.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6489 = args[0].clone(); Ok({ let v_B6487 = v_B6487.clone(); let v_Key6489 = v_Key6489.clone(); let v_L6488 = v_L6488.clone(); let v_V6491 = v_V6491.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6490 = args[0].clone(); Ok({ let __t4149 = v_V6491.clone(); let __t4160 = { let __t4150 = Value::sym(interp.intern("string")); let __t4159 = { let __t4151 = Value::sym(interp.intern("-->")); let __t4158 = { let __t4156 = { let __t4152 = Value::sym(interp.intern("list")); let __t4155 = { let __t4153 = Value::sym(interp.intern("unit")); let __t4154 = Value::nil(); rt::cons(&__t4153, &__t4154) }; rt::cons(&__t4152, &__t4155) }; let __t4157 = Value::nil(); rt::cons(&__t4156, &__t4157) }; rt::cons(&__t4151, &__t4158) }; rt::cons(&__t4150, &__t4159) }; let __t4161 = v_B6487.clone(); let __t4162 = v_L6488.clone(); let __t4163 = v_Key6489.clone(); let __t4164 = v_C6490.clone(); rt::apply_direct(interp, "is!", &[__t4149, __t4160, __t4161, __t4162, __t4163, __t4164])? }) }, vec![v_B6487, v_Key6489, v_L6488, v_V6491], interp) }) }, vec![v_B6487, v_L6488, v_V6491], interp) }) }, vec![v_B6487, v_V6491], interp) }) }, vec![v_V6491], interp) }) }, Vec::new(), interp) }; let __t4167 = { let __t4166 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4166])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4148, __t4165, __t4167])? }; rt::apply_direct(interp, "set", &[__t4147, __t4168])? }; - { - let _ = { let __t4169 = Value::sym(interp.intern("shen.*sigf*")); let __t4184 = { let __t4170 = Value::sym(interp.intern("release")); let __t4181 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6496 = args[0].clone(); Ok({ let v_V6496 = v_V6496.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6492 = args[0].clone(); Ok({ let v_B6492 = v_B6492.clone(); let v_V6496 = v_V6496.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6493 = args[0].clone(); Ok({ let v_B6492 = v_B6492.clone(); let v_L6493 = v_L6493.clone(); let v_V6496 = v_V6496.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6494 = args[0].clone(); Ok({ let v_B6492 = v_B6492.clone(); let v_Key6494 = v_Key6494.clone(); let v_L6493 = v_L6493.clone(); let v_V6496 = v_V6496.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6495 = args[0].clone(); Ok({ let __t4171 = v_V6496.clone(); let __t4176 = { let __t4172 = Value::sym(interp.intern("-->")); let __t4175 = { let __t4173 = Value::sym(interp.intern("string")); let __t4174 = Value::nil(); rt::cons(&__t4173, &__t4174) }; rt::cons(&__t4172, &__t4175) }; let __t4177 = v_B6492.clone(); let __t4178 = v_L6493.clone(); let __t4179 = v_Key6494.clone(); let __t4180 = v_C6495.clone(); rt::apply_direct(interp, "is!", &[__t4171, __t4176, __t4177, __t4178, __t4179, __t4180])? }) }, vec![v_B6492, v_Key6494, v_L6493, v_V6496], interp) }) }, vec![v_B6492, v_L6493, v_V6496], interp) }) }, vec![v_B6492, v_V6496], interp) }) }, vec![v_V6496], interp) }) }, Vec::new(), interp) }; let __t4183 = { let __t4182 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4182])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4170, __t4181, __t4183])? }; rt::apply_direct(interp, "set", &[__t4169, __t4184])? }; - { - let _ = { let __t4185 = Value::sym(interp.intern("shen.*sigf*")); let __t4219 = { let __t4186 = Value::sym(interp.intern("remove")); let __t4216 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6501 = args[0].clone(); Ok({ let v_V6501 = v_V6501.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6497 = args[0].clone(); Ok({ let v_B6497 = v_B6497.clone(); let v_V6501 = v_V6501.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6498 = args[0].clone(); Ok({ let v_B6497 = v_B6497.clone(); let v_L6498 = v_L6498.clone(); let v_V6501 = v_V6501.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6499 = args[0].clone(); Ok({ let v_B6497 = v_B6497.clone(); let v_Key6499 = v_Key6499.clone(); let v_L6498 = v_L6498.clone(); let v_V6501 = v_V6501.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6500 = args[0].clone(); Ok({ let v_A = { let __t4187 = v_B6497.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4187])? }; { let __t4188 = v_B6497.clone(); let __t4215 = { let __t4189 = v_V6501.clone(); let __t4210 = { let __t4190 = v_A.clone(); let __t4209 = { let __t4191 = Value::sym(interp.intern("-->")); let __t4208 = { let __t4206 = { let __t4196 = { let __t4192 = Value::sym(interp.intern("list")); let __t4195 = { let __t4193 = v_A.clone(); let __t4194 = Value::nil(); rt::cons(&__t4193, &__t4194) }; rt::cons(&__t4192, &__t4195) }; let __t4205 = { let __t4197 = Value::sym(interp.intern("-->")); let __t4204 = { let __t4202 = { let __t4198 = Value::sym(interp.intern("list")); let __t4201 = { let __t4199 = v_A.clone(); let __t4200 = Value::nil(); rt::cons(&__t4199, &__t4200) }; rt::cons(&__t4198, &__t4201) }; let __t4203 = Value::nil(); rt::cons(&__t4202, &__t4203) }; rt::cons(&__t4197, &__t4204) }; rt::cons(&__t4196, &__t4205) }; let __t4207 = Value::nil(); rt::cons(&__t4206, &__t4207) }; rt::cons(&__t4191, &__t4208) }; rt::cons(&__t4190, &__t4209) }; let __t4211 = v_B6497.clone(); let __t4212 = v_L6498.clone(); let __t4213 = v_Key6499.clone(); let __t4214 = v_C6500.clone(); rt::apply_direct(interp, "is!", &[__t4189, __t4210, __t4211, __t4212, __t4213, __t4214])? }; rt::apply_direct(interp, "shen.gc", &[__t4188, __t4215])? } }) }, vec![v_B6497, v_Key6499, v_L6498, v_V6501], interp) }) }, vec![v_B6497, v_L6498, v_V6501], interp) }) }, vec![v_B6497, v_V6501], interp) }) }, vec![v_V6501], interp) }) }, Vec::new(), interp) }; let __t4218 = { let __t4217 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4217])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4186, __t4216, __t4218])? }; rt::apply_direct(interp, "set", &[__t4185, __t4219])? }; - { - let _ = { let __t4220 = Value::sym(interp.intern("shen.*sigf*")); let __t4248 = { let __t4221 = Value::sym(interp.intern("reverse")); let __t4245 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6506 = args[0].clone(); Ok({ let v_V6506 = v_V6506.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6502 = args[0].clone(); Ok({ let v_B6502 = v_B6502.clone(); let v_V6506 = v_V6506.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6503 = args[0].clone(); Ok({ let v_B6502 = v_B6502.clone(); let v_L6503 = v_L6503.clone(); let v_V6506 = v_V6506.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6504 = args[0].clone(); Ok({ let v_B6502 = v_B6502.clone(); let v_Key6504 = v_Key6504.clone(); let v_L6503 = v_L6503.clone(); let v_V6506 = v_V6506.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6505 = args[0].clone(); Ok({ let v_A = { let __t4222 = v_B6502.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4222])? }; { let __t4223 = v_B6502.clone(); let __t4244 = { let __t4224 = v_V6506.clone(); let __t4239 = { let __t4229 = { let __t4225 = Value::sym(interp.intern("list")); let __t4228 = { let __t4226 = v_A.clone(); let __t4227 = Value::nil(); rt::cons(&__t4226, &__t4227) }; rt::cons(&__t4225, &__t4228) }; let __t4238 = { let __t4230 = Value::sym(interp.intern("-->")); let __t4237 = { let __t4235 = { let __t4231 = Value::sym(interp.intern("list")); let __t4234 = { let __t4232 = v_A.clone(); let __t4233 = Value::nil(); rt::cons(&__t4232, &__t4233) }; rt::cons(&__t4231, &__t4234) }; let __t4236 = Value::nil(); rt::cons(&__t4235, &__t4236) }; rt::cons(&__t4230, &__t4237) }; rt::cons(&__t4229, &__t4238) }; let __t4240 = v_B6502.clone(); let __t4241 = v_L6503.clone(); let __t4242 = v_Key6504.clone(); let __t4243 = v_C6505.clone(); rt::apply_direct(interp, "is!", &[__t4224, __t4239, __t4240, __t4241, __t4242, __t4243])? }; rt::apply_direct(interp, "shen.gc", &[__t4223, __t4244])? } }) }, vec![v_B6502, v_Key6504, v_L6503, v_V6506], interp) }) }, vec![v_B6502, v_L6503, v_V6506], interp) }) }, vec![v_B6502, v_V6506], interp) }) }, vec![v_V6506], interp) }) }, Vec::new(), interp) }; let __t4247 = { let __t4246 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4246])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4221, __t4245, __t4247])? }; rt::apply_direct(interp, "set", &[__t4220, __t4248])? }; - { - let _ = { let __t4249 = Value::sym(interp.intern("shen.*sigf*")); let __t4269 = { let __t4250 = Value::sym(interp.intern("simple-error")); let __t4266 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6511 = args[0].clone(); Ok({ let v_V6511 = v_V6511.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6507 = args[0].clone(); Ok({ let v_B6507 = v_B6507.clone(); let v_V6511 = v_V6511.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6508 = args[0].clone(); Ok({ let v_B6507 = v_B6507.clone(); let v_L6508 = v_L6508.clone(); let v_V6511 = v_V6511.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6509 = args[0].clone(); Ok({ let v_B6507 = v_B6507.clone(); let v_Key6509 = v_Key6509.clone(); let v_L6508 = v_L6508.clone(); let v_V6511 = v_V6511.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6510 = args[0].clone(); Ok({ let v_A = { let __t4251 = v_B6507.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4251])? }; { let __t4252 = v_B6507.clone(); let __t4265 = { let __t4253 = v_V6511.clone(); let __t4260 = { let __t4254 = Value::sym(interp.intern("string")); let __t4259 = { let __t4255 = Value::sym(interp.intern("-->")); let __t4258 = { let __t4256 = v_A.clone(); let __t4257 = Value::nil(); rt::cons(&__t4256, &__t4257) }; rt::cons(&__t4255, &__t4258) }; rt::cons(&__t4254, &__t4259) }; let __t4261 = v_B6507.clone(); let __t4262 = v_L6508.clone(); let __t4263 = v_Key6509.clone(); let __t4264 = v_C6510.clone(); rt::apply_direct(interp, "is!", &[__t4253, __t4260, __t4261, __t4262, __t4263, __t4264])? }; rt::apply_direct(interp, "shen.gc", &[__t4252, __t4265])? } }) }, vec![v_B6507, v_Key6509, v_L6508, v_V6511], interp) }) }, vec![v_B6507, v_L6508, v_V6511], interp) }) }, vec![v_B6507, v_V6511], interp) }) }, vec![v_V6511], interp) }) }, Vec::new(), interp) }; let __t4268 = { let __t4267 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4267])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4250, __t4266, __t4268])? }; rt::apply_direct(interp, "set", &[__t4249, __t4269])? }; - { - let _ = { let __t4270 = Value::sym(interp.intern("shen.*sigf*")); let __t4299 = { let __t4271 = Value::sym(interp.intern("snd")); let __t4296 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6516 = args[0].clone(); Ok({ let v_V6516 = v_V6516.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6512 = args[0].clone(); Ok({ let v_B6512 = v_B6512.clone(); let v_V6516 = v_V6516.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6513 = args[0].clone(); Ok({ let v_B6512 = v_B6512.clone(); let v_L6513 = v_L6513.clone(); let v_V6516 = v_V6516.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6514 = args[0].clone(); Ok({ let v_B6512 = v_B6512.clone(); let v_Key6514 = v_Key6514.clone(); let v_L6513 = v_L6513.clone(); let v_V6516 = v_V6516.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6515 = args[0].clone(); Ok({ let v_A = { let __t4272 = v_B6512.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4272])? }; { let __t4273 = v_B6512.clone(); let __t4295 = { let v_B = { let __t4274 = v_B6512.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4274])? }; { let __t4275 = v_B6512.clone(); let __t4294 = { let __t4276 = v_V6516.clone(); let __t4289 = { let __t4283 = { let __t4277 = v_A.clone(); let __t4282 = { let __t4278 = Value::sym(interp.intern("*")); let __t4281 = { let __t4279 = v_B.clone(); let __t4280 = Value::nil(); rt::cons(&__t4279, &__t4280) }; rt::cons(&__t4278, &__t4281) }; rt::cons(&__t4277, &__t4282) }; let __t4288 = { let __t4284 = Value::sym(interp.intern("-->")); let __t4287 = { let __t4285 = v_B.clone(); let __t4286 = Value::nil(); rt::cons(&__t4285, &__t4286) }; rt::cons(&__t4284, &__t4287) }; rt::cons(&__t4283, &__t4288) }; let __t4290 = v_B6512.clone(); let __t4291 = v_L6513.clone(); let __t4292 = v_Key6514.clone(); let __t4293 = v_C6515.clone(); rt::apply_direct(interp, "is!", &[__t4276, __t4289, __t4290, __t4291, __t4292, __t4293])? }; rt::apply_direct(interp, "shen.gc", &[__t4275, __t4294])? } }; rt::apply_direct(interp, "shen.gc", &[__t4273, __t4295])? } }) }, vec![v_B6512, v_Key6514, v_L6513, v_V6516], interp) }) }, vec![v_B6512, v_L6513, v_V6516], interp) }) }, vec![v_B6512, v_V6516], interp) }) }, vec![v_V6516], interp) }) }, Vec::new(), interp) }; let __t4298 = { let __t4297 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4297])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4271, __t4296, __t4298])? }; rt::apply_direct(interp, "set", &[__t4270, __t4299])? }; - { - let _ = { let __t4300 = Value::sym(interp.intern("shen.*sigf*")); let __t4323 = { let __t4301 = Value::sym(interp.intern("specialise")); let __t4320 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6521 = args[0].clone(); Ok({ let v_V6521 = v_V6521.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6517 = args[0].clone(); Ok({ let v_B6517 = v_B6517.clone(); let v_V6521 = v_V6521.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6518 = args[0].clone(); Ok({ let v_B6517 = v_B6517.clone(); let v_L6518 = v_L6518.clone(); let v_V6521 = v_V6521.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6519 = args[0].clone(); Ok({ let v_B6517 = v_B6517.clone(); let v_Key6519 = v_Key6519.clone(); let v_L6518 = v_L6518.clone(); let v_V6521 = v_V6521.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6520 = args[0].clone(); Ok({ let __t4302 = v_V6521.clone(); let __t4315 = { let __t4303 = Value::sym(interp.intern("symbol")); let __t4314 = { let __t4304 = Value::sym(interp.intern("-->")); let __t4313 = { let __t4311 = { let __t4305 = Value::sym(interp.intern("number")); let __t4310 = { let __t4306 = Value::sym(interp.intern("-->")); let __t4309 = { let __t4307 = Value::sym(interp.intern("symbol")); let __t4308 = Value::nil(); rt::cons(&__t4307, &__t4308) }; rt::cons(&__t4306, &__t4309) }; rt::cons(&__t4305, &__t4310) }; let __t4312 = Value::nil(); rt::cons(&__t4311, &__t4312) }; rt::cons(&__t4304, &__t4313) }; rt::cons(&__t4303, &__t4314) }; let __t4316 = v_B6517.clone(); let __t4317 = v_L6518.clone(); let __t4318 = v_Key6519.clone(); let __t4319 = v_C6520.clone(); rt::apply_direct(interp, "is!", &[__t4302, __t4315, __t4316, __t4317, __t4318, __t4319])? }) }, vec![v_B6517, v_Key6519, v_L6518, v_V6521], interp) }) }, vec![v_B6517, v_L6518, v_V6521], interp) }) }, vec![v_B6517, v_V6521], interp) }) }, vec![v_V6521], interp) }) }, Vec::new(), interp) }; let __t4322 = { let __t4321 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4321])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4301, __t4320, __t4322])? }; rt::apply_direct(interp, "set", &[__t4300, __t4323])? }; - { - let _ = { let __t4324 = Value::sym(interp.intern("shen.*sigf*")); let __t4341 = { let __t4325 = Value::sym(interp.intern("spy")); let __t4338 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6526 = args[0].clone(); Ok({ let v_V6526 = v_V6526.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6522 = args[0].clone(); Ok({ let v_B6522 = v_B6522.clone(); let v_V6526 = v_V6526.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6523 = args[0].clone(); Ok({ let v_B6522 = v_B6522.clone(); let v_L6523 = v_L6523.clone(); let v_V6526 = v_V6526.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6524 = args[0].clone(); Ok({ let v_B6522 = v_B6522.clone(); let v_Key6524 = v_Key6524.clone(); let v_L6523 = v_L6523.clone(); let v_V6526 = v_V6526.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6525 = args[0].clone(); Ok({ let __t4326 = v_V6526.clone(); let __t4333 = { let __t4327 = Value::sym(interp.intern("symbol")); let __t4332 = { let __t4328 = Value::sym(interp.intern("-->")); let __t4331 = { let __t4329 = Value::sym(interp.intern("boolean")); let __t4330 = Value::nil(); rt::cons(&__t4329, &__t4330) }; rt::cons(&__t4328, &__t4331) }; rt::cons(&__t4327, &__t4332) }; let __t4334 = v_B6522.clone(); let __t4335 = v_L6523.clone(); let __t4336 = v_Key6524.clone(); let __t4337 = v_C6525.clone(); rt::apply_direct(interp, "is!", &[__t4326, __t4333, __t4334, __t4335, __t4336, __t4337])? }) }, vec![v_B6522, v_Key6524, v_L6523, v_V6526], interp) }) }, vec![v_B6522, v_L6523, v_V6526], interp) }) }, vec![v_B6522, v_V6526], interp) }) }, vec![v_V6526], interp) }) }, Vec::new(), interp) }; let __t4340 = { let __t4339 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4339])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4325, __t4338, __t4340])? }; rt::apply_direct(interp, "set", &[__t4324, __t4341])? }; - { - let _ = { let __t4342 = Value::sym(interp.intern("shen.*sigf*")); let __t4357 = { let __t4343 = Value::sym(interp.intern("shen.spy?")); let __t4354 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6531 = args[0].clone(); Ok({ let v_V6531 = v_V6531.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6527 = args[0].clone(); Ok({ let v_B6527 = v_B6527.clone(); let v_V6531 = v_V6531.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6528 = args[0].clone(); Ok({ let v_B6527 = v_B6527.clone(); let v_L6528 = v_L6528.clone(); let v_V6531 = v_V6531.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6529 = args[0].clone(); Ok({ let v_B6527 = v_B6527.clone(); let v_Key6529 = v_Key6529.clone(); let v_L6528 = v_L6528.clone(); let v_V6531 = v_V6531.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6530 = args[0].clone(); Ok({ let __t4344 = v_V6531.clone(); let __t4349 = { let __t4345 = Value::sym(interp.intern("-->")); let __t4348 = { let __t4346 = Value::sym(interp.intern("boolean")); let __t4347 = Value::nil(); rt::cons(&__t4346, &__t4347) }; rt::cons(&__t4345, &__t4348) }; let __t4350 = v_B6527.clone(); let __t4351 = v_L6528.clone(); let __t4352 = v_Key6529.clone(); let __t4353 = v_C6530.clone(); rt::apply_direct(interp, "is!", &[__t4344, __t4349, __t4350, __t4351, __t4352, __t4353])? }) }, vec![v_B6527, v_Key6529, v_L6528, v_V6531], interp) }) }, vec![v_B6527, v_L6528, v_V6531], interp) }) }, vec![v_B6527, v_V6531], interp) }) }, vec![v_V6531], interp) }) }, Vec::new(), interp) }; let __t4356 = { let __t4355 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4355])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4343, __t4354, __t4356])? }; rt::apply_direct(interp, "set", &[__t4342, __t4357])? }; - { - let _ = { let __t4358 = Value::sym(interp.intern("shen.*sigf*")); let __t4375 = { let __t4359 = Value::sym(interp.intern("step")); let __t4372 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6536 = args[0].clone(); Ok({ let v_V6536 = v_V6536.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6532 = args[0].clone(); Ok({ let v_B6532 = v_B6532.clone(); let v_V6536 = v_V6536.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6533 = args[0].clone(); Ok({ let v_B6532 = v_B6532.clone(); let v_L6533 = v_L6533.clone(); let v_V6536 = v_V6536.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6534 = args[0].clone(); Ok({ let v_B6532 = v_B6532.clone(); let v_Key6534 = v_Key6534.clone(); let v_L6533 = v_L6533.clone(); let v_V6536 = v_V6536.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6535 = args[0].clone(); Ok({ let __t4360 = v_V6536.clone(); let __t4367 = { let __t4361 = Value::sym(interp.intern("symbol")); let __t4366 = { let __t4362 = Value::sym(interp.intern("-->")); let __t4365 = { let __t4363 = Value::sym(interp.intern("boolean")); let __t4364 = Value::nil(); rt::cons(&__t4363, &__t4364) }; rt::cons(&__t4362, &__t4365) }; rt::cons(&__t4361, &__t4366) }; let __t4368 = v_B6532.clone(); let __t4369 = v_L6533.clone(); let __t4370 = v_Key6534.clone(); let __t4371 = v_C6535.clone(); rt::apply_direct(interp, "is!", &[__t4360, __t4367, __t4368, __t4369, __t4370, __t4371])? }) }, vec![v_B6532, v_Key6534, v_L6533, v_V6536], interp) }) }, vec![v_B6532, v_L6533, v_V6536], interp) }) }, vec![v_B6532, v_V6536], interp) }) }, vec![v_V6536], interp) }) }, Vec::new(), interp) }; let __t4374 = { let __t4373 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4373])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4359, __t4372, __t4374])? }; rt::apply_direct(interp, "set", &[__t4358, __t4375])? }; - { - let _ = { let __t4376 = Value::sym(interp.intern("shen.*sigf*")); let __t4391 = { let __t4377 = Value::sym(interp.intern("shen.step?")); let __t4388 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6541 = args[0].clone(); Ok({ let v_V6541 = v_V6541.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6537 = args[0].clone(); Ok({ let v_B6537 = v_B6537.clone(); let v_V6541 = v_V6541.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6538 = args[0].clone(); Ok({ let v_B6537 = v_B6537.clone(); let v_L6538 = v_L6538.clone(); let v_V6541 = v_V6541.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6539 = args[0].clone(); Ok({ let v_B6537 = v_B6537.clone(); let v_Key6539 = v_Key6539.clone(); let v_L6538 = v_L6538.clone(); let v_V6541 = v_V6541.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6540 = args[0].clone(); Ok({ let __t4378 = v_V6541.clone(); let __t4383 = { let __t4379 = Value::sym(interp.intern("-->")); let __t4382 = { let __t4380 = Value::sym(interp.intern("boolean")); let __t4381 = Value::nil(); rt::cons(&__t4380, &__t4381) }; rt::cons(&__t4379, &__t4382) }; let __t4384 = v_B6537.clone(); let __t4385 = v_L6538.clone(); let __t4386 = v_Key6539.clone(); let __t4387 = v_C6540.clone(); rt::apply_direct(interp, "is!", &[__t4378, __t4383, __t4384, __t4385, __t4386, __t4387])? }) }, vec![v_B6537, v_Key6539, v_L6538, v_V6541], interp) }) }, vec![v_B6537, v_L6538, v_V6541], interp) }) }, vec![v_B6537, v_V6541], interp) }) }, vec![v_V6541], interp) }) }, Vec::new(), interp) }; let __t4390 = { let __t4389 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4389])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4377, __t4388, __t4390])? }; rt::apply_direct(interp, "set", &[__t4376, __t4391])? }; - { - let _ = { let __t4392 = Value::sym(interp.intern("shen.*sigf*")); let __t4411 = { let __t4393 = Value::sym(interp.intern("stinput")); let __t4408 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6546 = args[0].clone(); Ok({ let v_V6546 = v_V6546.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6542 = args[0].clone(); Ok({ let v_B6542 = v_B6542.clone(); let v_V6546 = v_V6546.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6543 = args[0].clone(); Ok({ let v_B6542 = v_B6542.clone(); let v_L6543 = v_L6543.clone(); let v_V6546 = v_V6546.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6544 = args[0].clone(); Ok({ let v_B6542 = v_B6542.clone(); let v_Key6544 = v_Key6544.clone(); let v_L6543 = v_L6543.clone(); let v_V6546 = v_V6546.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6545 = args[0].clone(); Ok({ let __t4394 = v_V6546.clone(); let __t4403 = { let __t4395 = Value::sym(interp.intern("-->")); let __t4402 = { let __t4400 = { let __t4396 = Value::sym(interp.intern("stream")); let __t4399 = { let __t4397 = Value::sym(interp.intern("in")); let __t4398 = Value::nil(); rt::cons(&__t4397, &__t4398) }; rt::cons(&__t4396, &__t4399) }; let __t4401 = Value::nil(); rt::cons(&__t4400, &__t4401) }; rt::cons(&__t4395, &__t4402) }; let __t4404 = v_B6542.clone(); let __t4405 = v_L6543.clone(); let __t4406 = v_Key6544.clone(); let __t4407 = v_C6545.clone(); rt::apply_direct(interp, "is!", &[__t4394, __t4403, __t4404, __t4405, __t4406, __t4407])? }) }, vec![v_B6542, v_Key6544, v_L6543, v_V6546], interp) }) }, vec![v_B6542, v_L6543, v_V6546], interp) }) }, vec![v_B6542, v_V6546], interp) }) }, vec![v_V6546], interp) }) }, Vec::new(), interp) }; let __t4410 = { let __t4409 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4409])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4393, __t4408, __t4410])? }; rt::apply_direct(interp, "set", &[__t4392, __t4411])? }; - { - let _ = { let __t4412 = Value::sym(interp.intern("shen.*sigf*")); let __t4431 = { let __t4413 = Value::sym(interp.intern("sterror")); let __t4428 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6551 = args[0].clone(); Ok({ let v_V6551 = v_V6551.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6547 = args[0].clone(); Ok({ let v_B6547 = v_B6547.clone(); let v_V6551 = v_V6551.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6548 = args[0].clone(); Ok({ let v_B6547 = v_B6547.clone(); let v_L6548 = v_L6548.clone(); let v_V6551 = v_V6551.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6549 = args[0].clone(); Ok({ let v_B6547 = v_B6547.clone(); let v_Key6549 = v_Key6549.clone(); let v_L6548 = v_L6548.clone(); let v_V6551 = v_V6551.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6550 = args[0].clone(); Ok({ let __t4414 = v_V6551.clone(); let __t4423 = { let __t4415 = Value::sym(interp.intern("-->")); let __t4422 = { let __t4420 = { let __t4416 = Value::sym(interp.intern("stream")); let __t4419 = { let __t4417 = Value::sym(interp.intern("out")); let __t4418 = Value::nil(); rt::cons(&__t4417, &__t4418) }; rt::cons(&__t4416, &__t4419) }; let __t4421 = Value::nil(); rt::cons(&__t4420, &__t4421) }; rt::cons(&__t4415, &__t4422) }; let __t4424 = v_B6547.clone(); let __t4425 = v_L6548.clone(); let __t4426 = v_Key6549.clone(); let __t4427 = v_C6550.clone(); rt::apply_direct(interp, "is!", &[__t4414, __t4423, __t4424, __t4425, __t4426, __t4427])? }) }, vec![v_B6547, v_Key6549, v_L6548, v_V6551], interp) }) }, vec![v_B6547, v_L6548, v_V6551], interp) }) }, vec![v_B6547, v_V6551], interp) }) }, vec![v_V6551], interp) }) }, Vec::new(), interp) }; let __t4430 = { let __t4429 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4429])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4413, __t4428, __t4430])? }; rt::apply_direct(interp, "set", &[__t4412, __t4431])? }; - { - let _ = { let __t4432 = Value::sym(interp.intern("shen.*sigf*")); let __t4451 = { let __t4433 = Value::sym(interp.intern("stoutput")); let __t4448 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6556 = args[0].clone(); Ok({ let v_V6556 = v_V6556.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6552 = args[0].clone(); Ok({ let v_B6552 = v_B6552.clone(); let v_V6556 = v_V6556.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6553 = args[0].clone(); Ok({ let v_B6552 = v_B6552.clone(); let v_L6553 = v_L6553.clone(); let v_V6556 = v_V6556.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6554 = args[0].clone(); Ok({ let v_B6552 = v_B6552.clone(); let v_Key6554 = v_Key6554.clone(); let v_L6553 = v_L6553.clone(); let v_V6556 = v_V6556.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6555 = args[0].clone(); Ok({ let __t4434 = v_V6556.clone(); let __t4443 = { let __t4435 = Value::sym(interp.intern("-->")); let __t4442 = { let __t4440 = { let __t4436 = Value::sym(interp.intern("stream")); let __t4439 = { let __t4437 = Value::sym(interp.intern("out")); let __t4438 = Value::nil(); rt::cons(&__t4437, &__t4438) }; rt::cons(&__t4436, &__t4439) }; let __t4441 = Value::nil(); rt::cons(&__t4440, &__t4441) }; rt::cons(&__t4435, &__t4442) }; let __t4444 = v_B6552.clone(); let __t4445 = v_L6553.clone(); let __t4446 = v_Key6554.clone(); let __t4447 = v_C6555.clone(); rt::apply_direct(interp, "is!", &[__t4434, __t4443, __t4444, __t4445, __t4446, __t4447])? }) }, vec![v_B6552, v_Key6554, v_L6553, v_V6556], interp) }) }, vec![v_B6552, v_L6553, v_V6556], interp) }) }, vec![v_B6552, v_V6556], interp) }) }, vec![v_V6556], interp) }) }, Vec::new(), interp) }; let __t4450 = { let __t4449 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4449])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4433, __t4448, __t4450])? }; rt::apply_direct(interp, "set", &[__t4432, __t4451])? }; - { - let _ = { let __t4452 = Value::sym(interp.intern("shen.*sigf*")); let __t4472 = { let __t4453 = Value::sym(interp.intern("string?")); let __t4469 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6561 = args[0].clone(); Ok({ let v_V6561 = v_V6561.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6557 = args[0].clone(); Ok({ let v_B6557 = v_B6557.clone(); let v_V6561 = v_V6561.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6558 = args[0].clone(); Ok({ let v_B6557 = v_B6557.clone(); let v_L6558 = v_L6558.clone(); let v_V6561 = v_V6561.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6559 = args[0].clone(); Ok({ let v_B6557 = v_B6557.clone(); let v_Key6559 = v_Key6559.clone(); let v_L6558 = v_L6558.clone(); let v_V6561 = v_V6561.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6560 = args[0].clone(); Ok({ let v_A = { let __t4454 = v_B6557.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4454])? }; { let __t4455 = v_B6557.clone(); let __t4468 = { let __t4456 = v_V6561.clone(); let __t4463 = { let __t4457 = v_A.clone(); let __t4462 = { let __t4458 = Value::sym(interp.intern("-->")); let __t4461 = { let __t4459 = Value::sym(interp.intern("boolean")); let __t4460 = Value::nil(); rt::cons(&__t4459, &__t4460) }; rt::cons(&__t4458, &__t4461) }; rt::cons(&__t4457, &__t4462) }; let __t4464 = v_B6557.clone(); let __t4465 = v_L6558.clone(); let __t4466 = v_Key6559.clone(); let __t4467 = v_C6560.clone(); rt::apply_direct(interp, "is!", &[__t4456, __t4463, __t4464, __t4465, __t4466, __t4467])? }; rt::apply_direct(interp, "shen.gc", &[__t4455, __t4468])? } }) }, vec![v_B6557, v_Key6559, v_L6558, v_V6561], interp) }) }, vec![v_B6557, v_L6558, v_V6561], interp) }) }, vec![v_B6557, v_V6561], interp) }) }, vec![v_V6561], interp) }) }, Vec::new(), interp) }; let __t4471 = { let __t4470 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4470])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4453, __t4469, __t4471])? }; rt::apply_direct(interp, "set", &[__t4452, __t4472])? }; - { - let _ = { let __t4473 = Value::sym(interp.intern("shen.*sigf*")); let __t4493 = { let __t4474 = Value::sym(interp.intern("str")); let __t4490 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6566 = args[0].clone(); Ok({ let v_V6566 = v_V6566.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6562 = args[0].clone(); Ok({ let v_B6562 = v_B6562.clone(); let v_V6566 = v_V6566.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6563 = args[0].clone(); Ok({ let v_B6562 = v_B6562.clone(); let v_L6563 = v_L6563.clone(); let v_V6566 = v_V6566.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6564 = args[0].clone(); Ok({ let v_B6562 = v_B6562.clone(); let v_Key6564 = v_Key6564.clone(); let v_L6563 = v_L6563.clone(); let v_V6566 = v_V6566.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6565 = args[0].clone(); Ok({ let v_A = { let __t4475 = v_B6562.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4475])? }; { let __t4476 = v_B6562.clone(); let __t4489 = { let __t4477 = v_V6566.clone(); let __t4484 = { let __t4478 = v_A.clone(); let __t4483 = { let __t4479 = Value::sym(interp.intern("-->")); let __t4482 = { let __t4480 = Value::sym(interp.intern("string")); let __t4481 = Value::nil(); rt::cons(&__t4480, &__t4481) }; rt::cons(&__t4479, &__t4482) }; rt::cons(&__t4478, &__t4483) }; let __t4485 = v_B6562.clone(); let __t4486 = v_L6563.clone(); let __t4487 = v_Key6564.clone(); let __t4488 = v_C6565.clone(); rt::apply_direct(interp, "is!", &[__t4477, __t4484, __t4485, __t4486, __t4487, __t4488])? }; rt::apply_direct(interp, "shen.gc", &[__t4476, __t4489])? } }) }, vec![v_B6562, v_Key6564, v_L6563, v_V6566], interp) }) }, vec![v_B6562, v_L6563, v_V6566], interp) }) }, vec![v_B6562, v_V6566], interp) }) }, vec![v_V6566], interp) }) }, Vec::new(), interp) }; let __t4492 = { let __t4491 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4491])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4474, __t4490, __t4492])? }; rt::apply_direct(interp, "set", &[__t4473, __t4493])? }; - { - let _ = { let __t4494 = Value::sym(interp.intern("shen.*sigf*")); let __t4511 = { let __t4495 = Value::sym(interp.intern("string->n")); let __t4508 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6571 = args[0].clone(); Ok({ let v_V6571 = v_V6571.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6567 = args[0].clone(); Ok({ let v_B6567 = v_B6567.clone(); let v_V6571 = v_V6571.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6568 = args[0].clone(); Ok({ let v_B6567 = v_B6567.clone(); let v_L6568 = v_L6568.clone(); let v_V6571 = v_V6571.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6569 = args[0].clone(); Ok({ let v_B6567 = v_B6567.clone(); let v_Key6569 = v_Key6569.clone(); let v_L6568 = v_L6568.clone(); let v_V6571 = v_V6571.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6570 = args[0].clone(); Ok({ let __t4496 = v_V6571.clone(); let __t4503 = { let __t4497 = Value::sym(interp.intern("string")); let __t4502 = { let __t4498 = Value::sym(interp.intern("-->")); let __t4501 = { let __t4499 = Value::sym(interp.intern("number")); let __t4500 = Value::nil(); rt::cons(&__t4499, &__t4500) }; rt::cons(&__t4498, &__t4501) }; rt::cons(&__t4497, &__t4502) }; let __t4504 = v_B6567.clone(); let __t4505 = v_L6568.clone(); let __t4506 = v_Key6569.clone(); let __t4507 = v_C6570.clone(); rt::apply_direct(interp, "is!", &[__t4496, __t4503, __t4504, __t4505, __t4506, __t4507])? }) }, vec![v_B6567, v_Key6569, v_L6568, v_V6571], interp) }) }, vec![v_B6567, v_L6568, v_V6571], interp) }) }, vec![v_B6567, v_V6571], interp) }) }, vec![v_V6571], interp) }) }, Vec::new(), interp) }; let __t4510 = { let __t4509 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4509])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4495, __t4508, __t4510])? }; rt::apply_direct(interp, "set", &[__t4494, __t4511])? }; - { - let _ = { let __t4512 = Value::sym(interp.intern("shen.*sigf*")); let __t4529 = { let __t4513 = Value::sym(interp.intern("string->symbol")); let __t4526 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6576 = args[0].clone(); Ok({ let v_V6576 = v_V6576.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6572 = args[0].clone(); Ok({ let v_B6572 = v_B6572.clone(); let v_V6576 = v_V6576.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6573 = args[0].clone(); Ok({ let v_B6572 = v_B6572.clone(); let v_L6573 = v_L6573.clone(); let v_V6576 = v_V6576.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6574 = args[0].clone(); Ok({ let v_B6572 = v_B6572.clone(); let v_Key6574 = v_Key6574.clone(); let v_L6573 = v_L6573.clone(); let v_V6576 = v_V6576.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6575 = args[0].clone(); Ok({ let __t4514 = v_V6576.clone(); let __t4521 = { let __t4515 = Value::sym(interp.intern("string")); let __t4520 = { let __t4516 = Value::sym(interp.intern("-->")); let __t4519 = { let __t4517 = Value::sym(interp.intern("symbol")); let __t4518 = Value::nil(); rt::cons(&__t4517, &__t4518) }; rt::cons(&__t4516, &__t4519) }; rt::cons(&__t4515, &__t4520) }; let __t4522 = v_B6572.clone(); let __t4523 = v_L6573.clone(); let __t4524 = v_Key6574.clone(); let __t4525 = v_C6575.clone(); rt::apply_direct(interp, "is!", &[__t4514, __t4521, __t4522, __t4523, __t4524, __t4525])? }) }, vec![v_B6572, v_Key6574, v_L6573, v_V6576], interp) }) }, vec![v_B6572, v_L6573, v_V6576], interp) }) }, vec![v_B6572, v_V6576], interp) }) }, vec![v_V6576], interp) }) }, Vec::new(), interp) }; let __t4528 = { let __t4527 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4527])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4513, __t4526, __t4528])? }; rt::apply_direct(interp, "set", &[__t4512, __t4529])? }; - { - let _ = { let __t4530 = Value::sym(interp.intern("shen.*sigf*")); let __t4551 = { let __t4531 = Value::sym(interp.intern("sum")); let __t4548 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6581 = args[0].clone(); Ok({ let v_V6581 = v_V6581.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6577 = args[0].clone(); Ok({ let v_B6577 = v_B6577.clone(); let v_V6581 = v_V6581.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6578 = args[0].clone(); Ok({ let v_B6577 = v_B6577.clone(); let v_L6578 = v_L6578.clone(); let v_V6581 = v_V6581.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6579 = args[0].clone(); Ok({ let v_B6577 = v_B6577.clone(); let v_Key6579 = v_Key6579.clone(); let v_L6578 = v_L6578.clone(); let v_V6581 = v_V6581.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6580 = args[0].clone(); Ok({ let __t4532 = v_V6581.clone(); let __t4543 = { let __t4537 = { let __t4533 = Value::sym(interp.intern("list")); let __t4536 = { let __t4534 = Value::sym(interp.intern("number")); let __t4535 = Value::nil(); rt::cons(&__t4534, &__t4535) }; rt::cons(&__t4533, &__t4536) }; let __t4542 = { let __t4538 = Value::sym(interp.intern("-->")); let __t4541 = { let __t4539 = Value::sym(interp.intern("number")); let __t4540 = Value::nil(); rt::cons(&__t4539, &__t4540) }; rt::cons(&__t4538, &__t4541) }; rt::cons(&__t4537, &__t4542) }; let __t4544 = v_B6577.clone(); let __t4545 = v_L6578.clone(); let __t4546 = v_Key6579.clone(); let __t4547 = v_C6580.clone(); rt::apply_direct(interp, "is!", &[__t4532, __t4543, __t4544, __t4545, __t4546, __t4547])? }) }, vec![v_B6577, v_Key6579, v_L6578, v_V6581], interp) }) }, vec![v_B6577, v_L6578, v_V6581], interp) }) }, vec![v_B6577, v_V6581], interp) }) }, vec![v_V6581], interp) }) }, Vec::new(), interp) }; let __t4550 = { let __t4549 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4549])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4531, __t4548, __t4550])? }; rt::apply_direct(interp, "set", &[__t4530, __t4551])? }; - { - let _ = { let __t4552 = Value::sym(interp.intern("shen.*sigf*")); let __t4572 = { let __t4553 = Value::sym(interp.intern("symbol?")); let __t4569 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6586 = args[0].clone(); Ok({ let v_V6586 = v_V6586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6582 = args[0].clone(); Ok({ let v_B6582 = v_B6582.clone(); let v_V6586 = v_V6586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6583 = args[0].clone(); Ok({ let v_B6582 = v_B6582.clone(); let v_L6583 = v_L6583.clone(); let v_V6586 = v_V6586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6584 = args[0].clone(); Ok({ let v_B6582 = v_B6582.clone(); let v_Key6584 = v_Key6584.clone(); let v_L6583 = v_L6583.clone(); let v_V6586 = v_V6586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6585 = args[0].clone(); Ok({ let v_A = { let __t4554 = v_B6582.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4554])? }; { let __t4555 = v_B6582.clone(); let __t4568 = { let __t4556 = v_V6586.clone(); let __t4563 = { let __t4557 = v_A.clone(); let __t4562 = { let __t4558 = Value::sym(interp.intern("-->")); let __t4561 = { let __t4559 = Value::sym(interp.intern("boolean")); let __t4560 = Value::nil(); rt::cons(&__t4559, &__t4560) }; rt::cons(&__t4558, &__t4561) }; rt::cons(&__t4557, &__t4562) }; let __t4564 = v_B6582.clone(); let __t4565 = v_L6583.clone(); let __t4566 = v_Key6584.clone(); let __t4567 = v_C6585.clone(); rt::apply_direct(interp, "is!", &[__t4556, __t4563, __t4564, __t4565, __t4566, __t4567])? }; rt::apply_direct(interp, "shen.gc", &[__t4555, __t4568])? } }) }, vec![v_B6582, v_Key6584, v_L6583, v_V6586], interp) }) }, vec![v_B6582, v_L6583, v_V6586], interp) }) }, vec![v_B6582, v_V6586], interp) }) }, vec![v_V6586], interp) }) }, Vec::new(), interp) }; let __t4571 = { let __t4570 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4570])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4553, __t4569, __t4571])? }; rt::apply_direct(interp, "set", &[__t4552, __t4572])? }; - { - let _ = { let __t4573 = Value::sym(interp.intern("shen.*sigf*")); let __t4590 = { let __t4574 = Value::sym(interp.intern("systemf")); let __t4587 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6591 = args[0].clone(); Ok({ let v_V6591 = v_V6591.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6587 = args[0].clone(); Ok({ let v_B6587 = v_B6587.clone(); let v_V6591 = v_V6591.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6588 = args[0].clone(); Ok({ let v_B6587 = v_B6587.clone(); let v_L6588 = v_L6588.clone(); let v_V6591 = v_V6591.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6589 = args[0].clone(); Ok({ let v_B6587 = v_B6587.clone(); let v_Key6589 = v_Key6589.clone(); let v_L6588 = v_L6588.clone(); let v_V6591 = v_V6591.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6590 = args[0].clone(); Ok({ let __t4575 = v_V6591.clone(); let __t4582 = { let __t4576 = Value::sym(interp.intern("symbol")); let __t4581 = { let __t4577 = Value::sym(interp.intern("-->")); let __t4580 = { let __t4578 = Value::sym(interp.intern("symbol")); let __t4579 = Value::nil(); rt::cons(&__t4578, &__t4579) }; rt::cons(&__t4577, &__t4580) }; rt::cons(&__t4576, &__t4581) }; let __t4583 = v_B6587.clone(); let __t4584 = v_L6588.clone(); let __t4585 = v_Key6589.clone(); let __t4586 = v_C6590.clone(); rt::apply_direct(interp, "is!", &[__t4575, __t4582, __t4583, __t4584, __t4585, __t4586])? }) }, vec![v_B6587, v_Key6589, v_L6588, v_V6591], interp) }) }, vec![v_B6587, v_L6588, v_V6591], interp) }) }, vec![v_B6587, v_V6591], interp) }) }, vec![v_V6591], interp) }) }, Vec::new(), interp) }; let __t4589 = { let __t4588 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4588])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4574, __t4587, __t4589])? }; rt::apply_direct(interp, "set", &[__t4573, __t4590])? }; - { - let _ = { let __t4591 = Value::sym(interp.intern("shen.*sigf*")); let __t4606 = { let __t4592 = Value::sym(interp.intern("system-S?")); let __t4603 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6596 = args[0].clone(); Ok({ let v_V6596 = v_V6596.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6592 = args[0].clone(); Ok({ let v_B6592 = v_B6592.clone(); let v_V6596 = v_V6596.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6593 = args[0].clone(); Ok({ let v_B6592 = v_B6592.clone(); let v_L6593 = v_L6593.clone(); let v_V6596 = v_V6596.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6594 = args[0].clone(); Ok({ let v_B6592 = v_B6592.clone(); let v_Key6594 = v_Key6594.clone(); let v_L6593 = v_L6593.clone(); let v_V6596 = v_V6596.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6595 = args[0].clone(); Ok({ let __t4593 = v_V6596.clone(); let __t4598 = { let __t4594 = Value::sym(interp.intern("-->")); let __t4597 = { let __t4595 = Value::sym(interp.intern("boolean")); let __t4596 = Value::nil(); rt::cons(&__t4595, &__t4596) }; rt::cons(&__t4594, &__t4597) }; let __t4599 = v_B6592.clone(); let __t4600 = v_L6593.clone(); let __t4601 = v_Key6594.clone(); let __t4602 = v_C6595.clone(); rt::apply_direct(interp, "is!", &[__t4593, __t4598, __t4599, __t4600, __t4601, __t4602])? }) }, vec![v_B6592, v_Key6594, v_L6593, v_V6596], interp) }) }, vec![v_B6592, v_L6593, v_V6596], interp) }) }, vec![v_B6592, v_V6596], interp) }) }, vec![v_V6596], interp) }) }, Vec::new(), interp) }; let __t4605 = { let __t4604 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4604])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4592, __t4603, __t4605])? }; rt::apply_direct(interp, "set", &[__t4591, __t4606])? }; - { - let _ = { let __t4607 = Value::sym(interp.intern("shen.*sigf*")); let __t4635 = { let __t4608 = Value::sym(interp.intern("tail")); let __t4632 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6601 = args[0].clone(); Ok({ let v_V6601 = v_V6601.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6597 = args[0].clone(); Ok({ let v_B6597 = v_B6597.clone(); let v_V6601 = v_V6601.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6598 = args[0].clone(); Ok({ let v_B6597 = v_B6597.clone(); let v_L6598 = v_L6598.clone(); let v_V6601 = v_V6601.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6599 = args[0].clone(); Ok({ let v_B6597 = v_B6597.clone(); let v_Key6599 = v_Key6599.clone(); let v_L6598 = v_L6598.clone(); let v_V6601 = v_V6601.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6600 = args[0].clone(); Ok({ let v_A = { let __t4609 = v_B6597.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4609])? }; { let __t4610 = v_B6597.clone(); let __t4631 = { let __t4611 = v_V6601.clone(); let __t4626 = { let __t4616 = { let __t4612 = Value::sym(interp.intern("list")); let __t4615 = { let __t4613 = v_A.clone(); let __t4614 = Value::nil(); rt::cons(&__t4613, &__t4614) }; rt::cons(&__t4612, &__t4615) }; let __t4625 = { let __t4617 = Value::sym(interp.intern("-->")); let __t4624 = { let __t4622 = { let __t4618 = Value::sym(interp.intern("list")); let __t4621 = { let __t4619 = v_A.clone(); let __t4620 = Value::nil(); rt::cons(&__t4619, &__t4620) }; rt::cons(&__t4618, &__t4621) }; let __t4623 = Value::nil(); rt::cons(&__t4622, &__t4623) }; rt::cons(&__t4617, &__t4624) }; rt::cons(&__t4616, &__t4625) }; let __t4627 = v_B6597.clone(); let __t4628 = v_L6598.clone(); let __t4629 = v_Key6599.clone(); let __t4630 = v_C6600.clone(); rt::apply_direct(interp, "is!", &[__t4611, __t4626, __t4627, __t4628, __t4629, __t4630])? }; rt::apply_direct(interp, "shen.gc", &[__t4610, __t4631])? } }) }, vec![v_B6597, v_Key6599, v_L6598, v_V6601], interp) }) }, vec![v_B6597, v_L6598, v_V6601], interp) }) }, vec![v_B6597, v_V6601], interp) }) }, vec![v_V6601], interp) }) }, Vec::new(), interp) }; let __t4634 = { let __t4633 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4633])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4608, __t4632, __t4634])? }; rt::apply_direct(interp, "set", &[__t4607, __t4635])? }; - { - let _ = { let __t4636 = Value::sym(interp.intern("shen.*sigf*")); let __t4653 = { let __t4637 = Value::sym(interp.intern("tlstr")); let __t4650 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6606 = args[0].clone(); Ok({ let v_V6606 = v_V6606.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6602 = args[0].clone(); Ok({ let v_B6602 = v_B6602.clone(); let v_V6606 = v_V6606.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6603 = args[0].clone(); Ok({ let v_B6602 = v_B6602.clone(); let v_L6603 = v_L6603.clone(); let v_V6606 = v_V6606.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6604 = args[0].clone(); Ok({ let v_B6602 = v_B6602.clone(); let v_Key6604 = v_Key6604.clone(); let v_L6603 = v_L6603.clone(); let v_V6606 = v_V6606.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6605 = args[0].clone(); Ok({ let __t4638 = v_V6606.clone(); let __t4645 = { let __t4639 = Value::sym(interp.intern("string")); let __t4644 = { let __t4640 = Value::sym(interp.intern("-->")); let __t4643 = { let __t4641 = Value::sym(interp.intern("string")); let __t4642 = Value::nil(); rt::cons(&__t4641, &__t4642) }; rt::cons(&__t4640, &__t4643) }; rt::cons(&__t4639, &__t4644) }; let __t4646 = v_B6602.clone(); let __t4647 = v_L6603.clone(); let __t4648 = v_Key6604.clone(); let __t4649 = v_C6605.clone(); rt::apply_direct(interp, "is!", &[__t4638, __t4645, __t4646, __t4647, __t4648, __t4649])? }) }, vec![v_B6602, v_Key6604, v_L6603, v_V6606], interp) }) }, vec![v_B6602, v_L6603, v_V6606], interp) }) }, vec![v_B6602, v_V6606], interp) }) }, vec![v_V6606], interp) }) }, Vec::new(), interp) }; let __t4652 = { let __t4651 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4651])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4637, __t4650, __t4652])? }; rt::apply_direct(interp, "set", &[__t4636, __t4653])? }; - { - let _ = { let __t4654 = Value::sym(interp.intern("shen.*sigf*")); let __t4682 = { let __t4655 = Value::sym(interp.intern("tlv")); let __t4679 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6611 = args[0].clone(); Ok({ let v_V6611 = v_V6611.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6607 = args[0].clone(); Ok({ let v_B6607 = v_B6607.clone(); let v_V6611 = v_V6611.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6608 = args[0].clone(); Ok({ let v_B6607 = v_B6607.clone(); let v_L6608 = v_L6608.clone(); let v_V6611 = v_V6611.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6609 = args[0].clone(); Ok({ let v_B6607 = v_B6607.clone(); let v_Key6609 = v_Key6609.clone(); let v_L6608 = v_L6608.clone(); let v_V6611 = v_V6611.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6610 = args[0].clone(); Ok({ let v_A = { let __t4656 = v_B6607.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4656])? }; { let __t4657 = v_B6607.clone(); let __t4678 = { let __t4658 = v_V6611.clone(); let __t4673 = { let __t4663 = { let __t4659 = Value::sym(interp.intern("vector")); let __t4662 = { let __t4660 = v_A.clone(); let __t4661 = Value::nil(); rt::cons(&__t4660, &__t4661) }; rt::cons(&__t4659, &__t4662) }; let __t4672 = { let __t4664 = Value::sym(interp.intern("-->")); let __t4671 = { let __t4669 = { let __t4665 = Value::sym(interp.intern("vector")); let __t4668 = { let __t4666 = v_A.clone(); let __t4667 = Value::nil(); rt::cons(&__t4666, &__t4667) }; rt::cons(&__t4665, &__t4668) }; let __t4670 = Value::nil(); rt::cons(&__t4669, &__t4670) }; rt::cons(&__t4664, &__t4671) }; rt::cons(&__t4663, &__t4672) }; let __t4674 = v_B6607.clone(); let __t4675 = v_L6608.clone(); let __t4676 = v_Key6609.clone(); let __t4677 = v_C6610.clone(); rt::apply_direct(interp, "is!", &[__t4658, __t4673, __t4674, __t4675, __t4676, __t4677])? }; rt::apply_direct(interp, "shen.gc", &[__t4657, __t4678])? } }) }, vec![v_B6607, v_Key6609, v_L6608, v_V6611], interp) }) }, vec![v_B6607, v_L6608, v_V6611], interp) }) }, vec![v_B6607, v_V6611], interp) }) }, vec![v_V6611], interp) }) }, Vec::new(), interp) }; let __t4681 = { let __t4680 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4680])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4655, __t4679, __t4681])? }; rt::apply_direct(interp, "set", &[__t4654, __t4682])? }; - { - let _ = { let __t4683 = Value::sym(interp.intern("shen.*sigf*")); let __t4700 = { let __t4684 = Value::sym(interp.intern("tc")); let __t4697 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6616 = args[0].clone(); Ok({ let v_V6616 = v_V6616.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6612 = args[0].clone(); Ok({ let v_B6612 = v_B6612.clone(); let v_V6616 = v_V6616.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6613 = args[0].clone(); Ok({ let v_B6612 = v_B6612.clone(); let v_L6613 = v_L6613.clone(); let v_V6616 = v_V6616.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6614 = args[0].clone(); Ok({ let v_B6612 = v_B6612.clone(); let v_Key6614 = v_Key6614.clone(); let v_L6613 = v_L6613.clone(); let v_V6616 = v_V6616.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6615 = args[0].clone(); Ok({ let __t4685 = v_V6616.clone(); let __t4692 = { let __t4686 = Value::sym(interp.intern("symbol")); let __t4691 = { let __t4687 = Value::sym(interp.intern("-->")); let __t4690 = { let __t4688 = Value::sym(interp.intern("boolean")); let __t4689 = Value::nil(); rt::cons(&__t4688, &__t4689) }; rt::cons(&__t4687, &__t4690) }; rt::cons(&__t4686, &__t4691) }; let __t4693 = v_B6612.clone(); let __t4694 = v_L6613.clone(); let __t4695 = v_Key6614.clone(); let __t4696 = v_C6615.clone(); rt::apply_direct(interp, "is!", &[__t4685, __t4692, __t4693, __t4694, __t4695, __t4696])? }) }, vec![v_B6612, v_Key6614, v_L6613, v_V6616], interp) }) }, vec![v_B6612, v_L6613, v_V6616], interp) }) }, vec![v_B6612, v_V6616], interp) }) }, vec![v_V6616], interp) }) }, Vec::new(), interp) }; let __t4699 = { let __t4698 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4698])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4684, __t4697, __t4699])? }; rt::apply_direct(interp, "set", &[__t4683, __t4700])? }; - { - let _ = { let __t4701 = Value::sym(interp.intern("shen.*sigf*")); let __t4716 = { let __t4702 = Value::sym(interp.intern("tc?")); let __t4713 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6621 = args[0].clone(); Ok({ let v_V6621 = v_V6621.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6617 = args[0].clone(); Ok({ let v_B6617 = v_B6617.clone(); let v_V6621 = v_V6621.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6618 = args[0].clone(); Ok({ let v_B6617 = v_B6617.clone(); let v_L6618 = v_L6618.clone(); let v_V6621 = v_V6621.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6619 = args[0].clone(); Ok({ let v_B6617 = v_B6617.clone(); let v_Key6619 = v_Key6619.clone(); let v_L6618 = v_L6618.clone(); let v_V6621 = v_V6621.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6620 = args[0].clone(); Ok({ let __t4703 = v_V6621.clone(); let __t4708 = { let __t4704 = Value::sym(interp.intern("-->")); let __t4707 = { let __t4705 = Value::sym(interp.intern("boolean")); let __t4706 = Value::nil(); rt::cons(&__t4705, &__t4706) }; rt::cons(&__t4704, &__t4707) }; let __t4709 = v_B6617.clone(); let __t4710 = v_L6618.clone(); let __t4711 = v_Key6619.clone(); let __t4712 = v_C6620.clone(); rt::apply_direct(interp, "is!", &[__t4703, __t4708, __t4709, __t4710, __t4711, __t4712])? }) }, vec![v_B6617, v_Key6619, v_L6618, v_V6621], interp) }) }, vec![v_B6617, v_L6618, v_V6621], interp) }) }, vec![v_B6617, v_V6621], interp) }) }, vec![v_V6621], interp) }) }, Vec::new(), interp) }; let __t4715 = { let __t4714 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4714])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4702, __t4713, __t4715])? }; rt::apply_direct(interp, "set", &[__t4701, __t4716])? }; - { - let _ = { let __t4717 = Value::sym(interp.intern("shen.*sigf*")); let __t4741 = { let __t4718 = Value::sym(interp.intern("thaw")); let __t4738 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6626 = args[0].clone(); Ok({ let v_V6626 = v_V6626.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6622 = args[0].clone(); Ok({ let v_B6622 = v_B6622.clone(); let v_V6626 = v_V6626.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6623 = args[0].clone(); Ok({ let v_B6622 = v_B6622.clone(); let v_L6623 = v_L6623.clone(); let v_V6626 = v_V6626.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6624 = args[0].clone(); Ok({ let v_B6622 = v_B6622.clone(); let v_Key6624 = v_Key6624.clone(); let v_L6623 = v_L6623.clone(); let v_V6626 = v_V6626.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6625 = args[0].clone(); Ok({ let v_A = { let __t4719 = v_B6622.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4719])? }; { let __t4720 = v_B6622.clone(); let __t4737 = { let __t4721 = v_V6626.clone(); let __t4732 = { let __t4726 = { let __t4722 = Value::sym(interp.intern("lazy")); let __t4725 = { let __t4723 = v_A.clone(); let __t4724 = Value::nil(); rt::cons(&__t4723, &__t4724) }; rt::cons(&__t4722, &__t4725) }; let __t4731 = { let __t4727 = Value::sym(interp.intern("-->")); let __t4730 = { let __t4728 = v_A.clone(); let __t4729 = Value::nil(); rt::cons(&__t4728, &__t4729) }; rt::cons(&__t4727, &__t4730) }; rt::cons(&__t4726, &__t4731) }; let __t4733 = v_B6622.clone(); let __t4734 = v_L6623.clone(); let __t4735 = v_Key6624.clone(); let __t4736 = v_C6625.clone(); rt::apply_direct(interp, "is!", &[__t4721, __t4732, __t4733, __t4734, __t4735, __t4736])? }; rt::apply_direct(interp, "shen.gc", &[__t4720, __t4737])? } }) }, vec![v_B6622, v_Key6624, v_L6623, v_V6626], interp) }) }, vec![v_B6622, v_L6623, v_V6626], interp) }) }, vec![v_B6622, v_V6626], interp) }) }, vec![v_V6626], interp) }) }, Vec::new(), interp) }; let __t4740 = { let __t4739 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4739])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4718, __t4738, __t4740])? }; rt::apply_direct(interp, "set", &[__t4717, __t4741])? }; - { - let _ = { let __t4742 = Value::sym(interp.intern("shen.*sigf*")); let __t4759 = { let __t4743 = Value::sym(interp.intern("track")); let __t4756 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6631 = args[0].clone(); Ok({ let v_V6631 = v_V6631.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6627 = args[0].clone(); Ok({ let v_B6627 = v_B6627.clone(); let v_V6631 = v_V6631.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6628 = args[0].clone(); Ok({ let v_B6627 = v_B6627.clone(); let v_L6628 = v_L6628.clone(); let v_V6631 = v_V6631.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6629 = args[0].clone(); Ok({ let v_B6627 = v_B6627.clone(); let v_Key6629 = v_Key6629.clone(); let v_L6628 = v_L6628.clone(); let v_V6631 = v_V6631.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6630 = args[0].clone(); Ok({ let __t4744 = v_V6631.clone(); let __t4751 = { let __t4745 = Value::sym(interp.intern("symbol")); let __t4750 = { let __t4746 = Value::sym(interp.intern("-->")); let __t4749 = { let __t4747 = Value::sym(interp.intern("symbol")); let __t4748 = Value::nil(); rt::cons(&__t4747, &__t4748) }; rt::cons(&__t4746, &__t4749) }; rt::cons(&__t4745, &__t4750) }; let __t4752 = v_B6627.clone(); let __t4753 = v_L6628.clone(); let __t4754 = v_Key6629.clone(); let __t4755 = v_C6630.clone(); rt::apply_direct(interp, "is!", &[__t4744, __t4751, __t4752, __t4753, __t4754, __t4755])? }) }, vec![v_B6627, v_Key6629, v_L6628, v_V6631], interp) }) }, vec![v_B6627, v_L6628, v_V6631], interp) }) }, vec![v_B6627, v_V6631], interp) }) }, vec![v_V6631], interp) }) }, Vec::new(), interp) }; let __t4758 = { let __t4757 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4757])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4743, __t4756, __t4758])? }; rt::apply_direct(interp, "set", &[__t4742, __t4759])? }; - { - let _ = { let __t4760 = Value::sym(interp.intern("shen.*sigf*")); let __t4779 = { let __t4761 = Value::sym(interp.intern("tracked")); let __t4776 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6636 = args[0].clone(); Ok({ let v_V6636 = v_V6636.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6632 = args[0].clone(); Ok({ let v_B6632 = v_B6632.clone(); let v_V6636 = v_V6636.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6633 = args[0].clone(); Ok({ let v_B6632 = v_B6632.clone(); let v_L6633 = v_L6633.clone(); let v_V6636 = v_V6636.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6634 = args[0].clone(); Ok({ let v_B6632 = v_B6632.clone(); let v_Key6634 = v_Key6634.clone(); let v_L6633 = v_L6633.clone(); let v_V6636 = v_V6636.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6635 = args[0].clone(); Ok({ let __t4762 = v_V6636.clone(); let __t4771 = { let __t4763 = Value::sym(interp.intern("-->")); let __t4770 = { let __t4768 = { let __t4764 = Value::sym(interp.intern("list")); let __t4767 = { let __t4765 = Value::sym(interp.intern("symbol")); let __t4766 = Value::nil(); rt::cons(&__t4765, &__t4766) }; rt::cons(&__t4764, &__t4767) }; let __t4769 = Value::nil(); rt::cons(&__t4768, &__t4769) }; rt::cons(&__t4763, &__t4770) }; let __t4772 = v_B6632.clone(); let __t4773 = v_L6633.clone(); let __t4774 = v_Key6634.clone(); let __t4775 = v_C6635.clone(); rt::apply_direct(interp, "is!", &[__t4762, __t4771, __t4772, __t4773, __t4774, __t4775])? }) }, vec![v_B6632, v_Key6634, v_L6633, v_V6636], interp) }) }, vec![v_B6632, v_L6633, v_V6636], interp) }) }, vec![v_B6632, v_V6636], interp) }) }, vec![v_V6636], interp) }) }, Vec::new(), interp) }; let __t4778 = { let __t4777 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4777])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4761, __t4776, __t4778])? }; rt::apply_direct(interp, "set", &[__t4760, __t4779])? }; - { - let _ = { let __t4780 = Value::sym(interp.intern("shen.*sigf*")); let __t4812 = { let __t4781 = Value::sym(interp.intern("trap-error")); let __t4809 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6641 = args[0].clone(); Ok({ let v_V6641 = v_V6641.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6637 = args[0].clone(); Ok({ let v_B6637 = v_B6637.clone(); let v_V6641 = v_V6641.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6638 = args[0].clone(); Ok({ let v_B6637 = v_B6637.clone(); let v_L6638 = v_L6638.clone(); let v_V6641 = v_V6641.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6639 = args[0].clone(); Ok({ let v_B6637 = v_B6637.clone(); let v_Key6639 = v_Key6639.clone(); let v_L6638 = v_L6638.clone(); let v_V6641 = v_V6641.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6640 = args[0].clone(); Ok({ let v_A = { let __t4782 = v_B6637.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4782])? }; { let __t4783 = v_B6637.clone(); let __t4808 = { let __t4784 = v_V6641.clone(); let __t4803 = { let __t4785 = v_A.clone(); let __t4802 = { let __t4786 = Value::sym(interp.intern("-->")); let __t4801 = { let __t4799 = { let __t4793 = { let __t4787 = Value::sym(interp.intern("exception")); let __t4792 = { let __t4788 = Value::sym(interp.intern("-->")); let __t4791 = { let __t4789 = v_A.clone(); let __t4790 = Value::nil(); rt::cons(&__t4789, &__t4790) }; rt::cons(&__t4788, &__t4791) }; rt::cons(&__t4787, &__t4792) }; let __t4798 = { let __t4794 = Value::sym(interp.intern("-->")); let __t4797 = { let __t4795 = v_A.clone(); let __t4796 = Value::nil(); rt::cons(&__t4795, &__t4796) }; rt::cons(&__t4794, &__t4797) }; rt::cons(&__t4793, &__t4798) }; let __t4800 = Value::nil(); rt::cons(&__t4799, &__t4800) }; rt::cons(&__t4786, &__t4801) }; rt::cons(&__t4785, &__t4802) }; let __t4804 = v_B6637.clone(); let __t4805 = v_L6638.clone(); let __t4806 = v_Key6639.clone(); let __t4807 = v_C6640.clone(); rt::apply_direct(interp, "is!", &[__t4784, __t4803, __t4804, __t4805, __t4806, __t4807])? }; rt::apply_direct(interp, "shen.gc", &[__t4783, __t4808])? } }) }, vec![v_B6637, v_Key6639, v_L6638, v_V6641], interp) }) }, vec![v_B6637, v_L6638, v_V6641], interp) }) }, vec![v_B6637, v_V6641], interp) }) }, vec![v_V6641], interp) }) }, Vec::new(), interp) }; let __t4811 = { let __t4810 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4810])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4781, __t4809, __t4811])? }; rt::apply_direct(interp, "set", &[__t4780, __t4812])? }; - { - let _ = { let __t4813 = Value::sym(interp.intern("shen.*sigf*")); let __t4833 = { let __t4814 = Value::sym(interp.intern("tuple?")); let __t4830 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6646 = args[0].clone(); Ok({ let v_V6646 = v_V6646.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6642 = args[0].clone(); Ok({ let v_B6642 = v_B6642.clone(); let v_V6646 = v_V6646.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6643 = args[0].clone(); Ok({ let v_B6642 = v_B6642.clone(); let v_L6643 = v_L6643.clone(); let v_V6646 = v_V6646.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6644 = args[0].clone(); Ok({ let v_B6642 = v_B6642.clone(); let v_Key6644 = v_Key6644.clone(); let v_L6643 = v_L6643.clone(); let v_V6646 = v_V6646.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6645 = args[0].clone(); Ok({ let v_A = { let __t4815 = v_B6642.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4815])? }; { let __t4816 = v_B6642.clone(); let __t4829 = { let __t4817 = v_V6646.clone(); let __t4824 = { let __t4818 = v_A.clone(); let __t4823 = { let __t4819 = Value::sym(interp.intern("-->")); let __t4822 = { let __t4820 = Value::sym(interp.intern("boolean")); let __t4821 = Value::nil(); rt::cons(&__t4820, &__t4821) }; rt::cons(&__t4819, &__t4822) }; rt::cons(&__t4818, &__t4823) }; let __t4825 = v_B6642.clone(); let __t4826 = v_L6643.clone(); let __t4827 = v_Key6644.clone(); let __t4828 = v_C6645.clone(); rt::apply_direct(interp, "is!", &[__t4817, __t4824, __t4825, __t4826, __t4827, __t4828])? }; rt::apply_direct(interp, "shen.gc", &[__t4816, __t4829])? } }) }, vec![v_B6642, v_Key6644, v_L6643, v_V6646], interp) }) }, vec![v_B6642, v_L6643, v_V6646], interp) }) }, vec![v_B6642, v_V6646], interp) }) }, vec![v_V6646], interp) }) }, Vec::new(), interp) }; let __t4832 = { let __t4831 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4831])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4814, __t4830, __t4832])? }; rt::apply_direct(interp, "set", &[__t4813, __t4833])? }; - { - let _ = { let __t4834 = Value::sym(interp.intern("shen.*sigf*")); let __t4855 = { let __t4835 = Value::sym(interp.intern("unabsolute")); let __t4852 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6651 = args[0].clone(); Ok({ let v_V6651 = v_V6651.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6647 = args[0].clone(); Ok({ let v_B6647 = v_B6647.clone(); let v_V6651 = v_V6651.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6648 = args[0].clone(); Ok({ let v_B6647 = v_B6647.clone(); let v_L6648 = v_L6648.clone(); let v_V6651 = v_V6651.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6649 = args[0].clone(); Ok({ let v_B6647 = v_B6647.clone(); let v_Key6649 = v_Key6649.clone(); let v_L6648 = v_L6648.clone(); let v_V6651 = v_V6651.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6650 = args[0].clone(); Ok({ let __t4836 = v_V6651.clone(); let __t4847 = { let __t4837 = Value::sym(interp.intern("string")); let __t4846 = { let __t4838 = Value::sym(interp.intern("-->")); let __t4845 = { let __t4843 = { let __t4839 = Value::sym(interp.intern("list")); let __t4842 = { let __t4840 = Value::sym(interp.intern("string")); let __t4841 = Value::nil(); rt::cons(&__t4840, &__t4841) }; rt::cons(&__t4839, &__t4842) }; let __t4844 = Value::nil(); rt::cons(&__t4843, &__t4844) }; rt::cons(&__t4838, &__t4845) }; rt::cons(&__t4837, &__t4846) }; let __t4848 = v_B6647.clone(); let __t4849 = v_L6648.clone(); let __t4850 = v_Key6649.clone(); let __t4851 = v_C6650.clone(); rt::apply_direct(interp, "is!", &[__t4836, __t4847, __t4848, __t4849, __t4850, __t4851])? }) }, vec![v_B6647, v_Key6649, v_L6648, v_V6651], interp) }) }, vec![v_B6647, v_L6648, v_V6651], interp) }) }, vec![v_B6647, v_V6651], interp) }) }, vec![v_V6651], interp) }) }, Vec::new(), interp) }; let __t4854 = { let __t4853 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4853])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4835, __t4852, __t4854])? }; rt::apply_direct(interp, "set", &[__t4834, __t4855])? }; - { - let _ = { let __t4856 = Value::sym(interp.intern("shen.*sigf*")); let __t4873 = { let __t4857 = Value::sym(interp.intern("undefmacro")); let __t4870 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6656 = args[0].clone(); Ok({ let v_V6656 = v_V6656.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6652 = args[0].clone(); Ok({ let v_B6652 = v_B6652.clone(); let v_V6656 = v_V6656.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6653 = args[0].clone(); Ok({ let v_B6652 = v_B6652.clone(); let v_L6653 = v_L6653.clone(); let v_V6656 = v_V6656.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6654 = args[0].clone(); Ok({ let v_B6652 = v_B6652.clone(); let v_Key6654 = v_Key6654.clone(); let v_L6653 = v_L6653.clone(); let v_V6656 = v_V6656.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6655 = args[0].clone(); Ok({ let __t4858 = v_V6656.clone(); let __t4865 = { let __t4859 = Value::sym(interp.intern("symbol")); let __t4864 = { let __t4860 = Value::sym(interp.intern("-->")); let __t4863 = { let __t4861 = Value::sym(interp.intern("symbol")); let __t4862 = Value::nil(); rt::cons(&__t4861, &__t4862) }; rt::cons(&__t4860, &__t4863) }; rt::cons(&__t4859, &__t4864) }; let __t4866 = v_B6652.clone(); let __t4867 = v_L6653.clone(); let __t4868 = v_Key6654.clone(); let __t4869 = v_C6655.clone(); rt::apply_direct(interp, "is!", &[__t4858, __t4865, __t4866, __t4867, __t4868, __t4869])? }) }, vec![v_B6652, v_Key6654, v_L6653, v_V6656], interp) }) }, vec![v_B6652, v_L6653, v_V6656], interp) }) }, vec![v_B6652, v_V6656], interp) }) }, vec![v_V6656], interp) }) }, Vec::new(), interp) }; let __t4872 = { let __t4871 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4871])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4857, __t4870, __t4872])? }; rt::apply_direct(interp, "set", &[__t4856, __t4873])? }; - { - let _ = { let __t4874 = Value::sym(interp.intern("shen.*sigf*")); let __t4912 = { let __t4875 = Value::sym(interp.intern("union")); let __t4909 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6661 = args[0].clone(); Ok({ let v_V6661 = v_V6661.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6657 = args[0].clone(); Ok({ let v_B6657 = v_B6657.clone(); let v_V6661 = v_V6661.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6658 = args[0].clone(); Ok({ let v_B6657 = v_B6657.clone(); let v_L6658 = v_L6658.clone(); let v_V6661 = v_V6661.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6659 = args[0].clone(); Ok({ let v_B6657 = v_B6657.clone(); let v_Key6659 = v_Key6659.clone(); let v_L6658 = v_L6658.clone(); let v_V6661 = v_V6661.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6660 = args[0].clone(); Ok({ let v_A = { let __t4876 = v_B6657.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4876])? }; { let __t4877 = v_B6657.clone(); let __t4908 = { let __t4878 = v_V6661.clone(); let __t4903 = { let __t4883 = { let __t4879 = Value::sym(interp.intern("list")); let __t4882 = { let __t4880 = v_A.clone(); let __t4881 = Value::nil(); rt::cons(&__t4880, &__t4881) }; rt::cons(&__t4879, &__t4882) }; let __t4902 = { let __t4884 = Value::sym(interp.intern("-->")); let __t4901 = { let __t4899 = { let __t4889 = { let __t4885 = Value::sym(interp.intern("list")); let __t4888 = { let __t4886 = v_A.clone(); let __t4887 = Value::nil(); rt::cons(&__t4886, &__t4887) }; rt::cons(&__t4885, &__t4888) }; let __t4898 = { let __t4890 = Value::sym(interp.intern("-->")); let __t4897 = { let __t4895 = { let __t4891 = Value::sym(interp.intern("list")); let __t4894 = { let __t4892 = v_A.clone(); let __t4893 = Value::nil(); rt::cons(&__t4892, &__t4893) }; rt::cons(&__t4891, &__t4894) }; let __t4896 = Value::nil(); rt::cons(&__t4895, &__t4896) }; rt::cons(&__t4890, &__t4897) }; rt::cons(&__t4889, &__t4898) }; let __t4900 = Value::nil(); rt::cons(&__t4899, &__t4900) }; rt::cons(&__t4884, &__t4901) }; rt::cons(&__t4883, &__t4902) }; let __t4904 = v_B6657.clone(); let __t4905 = v_L6658.clone(); let __t4906 = v_Key6659.clone(); let __t4907 = v_C6660.clone(); rt::apply_direct(interp, "is!", &[__t4878, __t4903, __t4904, __t4905, __t4906, __t4907])? }; rt::apply_direct(interp, "shen.gc", &[__t4877, __t4908])? } }) }, vec![v_B6657, v_Key6659, v_L6658, v_V6661], interp) }) }, vec![v_B6657, v_L6658, v_V6661], interp) }) }, vec![v_B6657, v_V6661], interp) }) }, vec![v_V6661], interp) }) }, Vec::new(), interp) }; let __t4911 = { let __t4910 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4910])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4875, __t4909, __t4911])? }; rt::apply_direct(interp, "set", &[__t4874, __t4912])? }; - { - let _ = { let __t4913 = Value::sym(interp.intern("shen.*sigf*")); let __t4930 = { let __t4914 = Value::sym(interp.intern("unprofile")); let __t4927 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6666 = args[0].clone(); Ok({ let v_V6666 = v_V6666.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6662 = args[0].clone(); Ok({ let v_B6662 = v_B6662.clone(); let v_V6666 = v_V6666.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6663 = args[0].clone(); Ok({ let v_B6662 = v_B6662.clone(); let v_L6663 = v_L6663.clone(); let v_V6666 = v_V6666.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6664 = args[0].clone(); Ok({ let v_B6662 = v_B6662.clone(); let v_Key6664 = v_Key6664.clone(); let v_L6663 = v_L6663.clone(); let v_V6666 = v_V6666.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6665 = args[0].clone(); Ok({ let __t4915 = v_V6666.clone(); let __t4922 = { let __t4916 = Value::sym(interp.intern("symbol")); let __t4921 = { let __t4917 = Value::sym(interp.intern("-->")); let __t4920 = { let __t4918 = Value::sym(interp.intern("symbol")); let __t4919 = Value::nil(); rt::cons(&__t4918, &__t4919) }; rt::cons(&__t4917, &__t4920) }; rt::cons(&__t4916, &__t4921) }; let __t4923 = v_B6662.clone(); let __t4924 = v_L6663.clone(); let __t4925 = v_Key6664.clone(); let __t4926 = v_C6665.clone(); rt::apply_direct(interp, "is!", &[__t4915, __t4922, __t4923, __t4924, __t4925, __t4926])? }) }, vec![v_B6662, v_Key6664, v_L6663, v_V6666], interp) }) }, vec![v_B6662, v_L6663, v_V6666], interp) }) }, vec![v_B6662, v_V6666], interp) }) }, vec![v_V6666], interp) }) }, Vec::new(), interp) }; let __t4929 = { let __t4928 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4928])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4914, __t4927, __t4929])? }; rt::apply_direct(interp, "set", &[__t4913, __t4930])? }; - { - let _ = { let __t4931 = Value::sym(interp.intern("shen.*sigf*")); let __t4948 = { let __t4932 = Value::sym(interp.intern("untrack")); let __t4945 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6671 = args[0].clone(); Ok({ let v_V6671 = v_V6671.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6667 = args[0].clone(); Ok({ let v_B6667 = v_B6667.clone(); let v_V6671 = v_V6671.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6668 = args[0].clone(); Ok({ let v_B6667 = v_B6667.clone(); let v_L6668 = v_L6668.clone(); let v_V6671 = v_V6671.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6669 = args[0].clone(); Ok({ let v_B6667 = v_B6667.clone(); let v_Key6669 = v_Key6669.clone(); let v_L6668 = v_L6668.clone(); let v_V6671 = v_V6671.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6670 = args[0].clone(); Ok({ let __t4933 = v_V6671.clone(); let __t4940 = { let __t4934 = Value::sym(interp.intern("symbol")); let __t4939 = { let __t4935 = Value::sym(interp.intern("-->")); let __t4938 = { let __t4936 = Value::sym(interp.intern("symbol")); let __t4937 = Value::nil(); rt::cons(&__t4936, &__t4937) }; rt::cons(&__t4935, &__t4938) }; rt::cons(&__t4934, &__t4939) }; let __t4941 = v_B6667.clone(); let __t4942 = v_L6668.clone(); let __t4943 = v_Key6669.clone(); let __t4944 = v_C6670.clone(); rt::apply_direct(interp, "is!", &[__t4933, __t4940, __t4941, __t4942, __t4943, __t4944])? }) }, vec![v_B6667, v_Key6669, v_L6668, v_V6671], interp) }) }, vec![v_B6667, v_L6668, v_V6671], interp) }) }, vec![v_B6667, v_V6671], interp) }) }, vec![v_V6671], interp) }) }, Vec::new(), interp) }; let __t4947 = { let __t4946 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4946])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4932, __t4945, __t4947])? }; rt::apply_direct(interp, "set", &[__t4931, __t4948])? }; - { - let _ = { let __t4949 = Value::sym(interp.intern("shen.*sigf*")); let __t4968 = { let __t4950 = Value::sym(interp.intern("userdefs")); let __t4965 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6676 = args[0].clone(); Ok({ let v_V6676 = v_V6676.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6672 = args[0].clone(); Ok({ let v_B6672 = v_B6672.clone(); let v_V6676 = v_V6676.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6673 = args[0].clone(); Ok({ let v_B6672 = v_B6672.clone(); let v_L6673 = v_L6673.clone(); let v_V6676 = v_V6676.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6674 = args[0].clone(); Ok({ let v_B6672 = v_B6672.clone(); let v_Key6674 = v_Key6674.clone(); let v_L6673 = v_L6673.clone(); let v_V6676 = v_V6676.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6675 = args[0].clone(); Ok({ let __t4951 = v_V6676.clone(); let __t4960 = { let __t4952 = Value::sym(interp.intern("-->")); let __t4959 = { let __t4957 = { let __t4953 = Value::sym(interp.intern("list")); let __t4956 = { let __t4954 = Value::sym(interp.intern("symbol")); let __t4955 = Value::nil(); rt::cons(&__t4954, &__t4955) }; rt::cons(&__t4953, &__t4956) }; let __t4958 = Value::nil(); rt::cons(&__t4957, &__t4958) }; rt::cons(&__t4952, &__t4959) }; let __t4961 = v_B6672.clone(); let __t4962 = v_L6673.clone(); let __t4963 = v_Key6674.clone(); let __t4964 = v_C6675.clone(); rt::apply_direct(interp, "is!", &[__t4951, __t4960, __t4961, __t4962, __t4963, __t4964])? }) }, vec![v_B6672, v_Key6674, v_L6673, v_V6676], interp) }) }, vec![v_B6672, v_L6673, v_V6676], interp) }) }, vec![v_B6672, v_V6676], interp) }) }, vec![v_V6676], interp) }) }, Vec::new(), interp) }; let __t4967 = { let __t4966 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4966])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4950, __t4965, __t4967])? }; rt::apply_direct(interp, "set", &[__t4949, __t4968])? }; - { - let _ = { let __t4969 = Value::sym(interp.intern("shen.*sigf*")); let __t4989 = { let __t4970 = Value::sym(interp.intern("variable?")); let __t4986 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6681 = args[0].clone(); Ok({ let v_V6681 = v_V6681.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6677 = args[0].clone(); Ok({ let v_B6677 = v_B6677.clone(); let v_V6681 = v_V6681.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6678 = args[0].clone(); Ok({ let v_B6677 = v_B6677.clone(); let v_L6678 = v_L6678.clone(); let v_V6681 = v_V6681.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6679 = args[0].clone(); Ok({ let v_B6677 = v_B6677.clone(); let v_Key6679 = v_Key6679.clone(); let v_L6678 = v_L6678.clone(); let v_V6681 = v_V6681.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6680 = args[0].clone(); Ok({ let v_A = { let __t4971 = v_B6677.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4971])? }; { let __t4972 = v_B6677.clone(); let __t4985 = { let __t4973 = v_V6681.clone(); let __t4980 = { let __t4974 = v_A.clone(); let __t4979 = { let __t4975 = Value::sym(interp.intern("-->")); let __t4978 = { let __t4976 = Value::sym(interp.intern("boolean")); let __t4977 = Value::nil(); rt::cons(&__t4976, &__t4977) }; rt::cons(&__t4975, &__t4978) }; rt::cons(&__t4974, &__t4979) }; let __t4981 = v_B6677.clone(); let __t4982 = v_L6678.clone(); let __t4983 = v_Key6679.clone(); let __t4984 = v_C6680.clone(); rt::apply_direct(interp, "is!", &[__t4973, __t4980, __t4981, __t4982, __t4983, __t4984])? }; rt::apply_direct(interp, "shen.gc", &[__t4972, __t4985])? } }) }, vec![v_B6677, v_Key6679, v_L6678, v_V6681], interp) }) }, vec![v_B6677, v_L6678, v_V6681], interp) }) }, vec![v_B6677, v_V6681], interp) }) }, vec![v_V6681], interp) }) }, Vec::new(), interp) }; let __t4988 = { let __t4987 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t4987])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4970, __t4986, __t4988])? }; rt::apply_direct(interp, "set", &[__t4969, __t4989])? }; - { - let _ = { let __t4990 = Value::sym(interp.intern("shen.*sigf*")); let __t5010 = { let __t4991 = Value::sym(interp.intern("vector?")); let __t5007 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6686 = args[0].clone(); Ok({ let v_V6686 = v_V6686.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6682 = args[0].clone(); Ok({ let v_B6682 = v_B6682.clone(); let v_V6686 = v_V6686.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6683 = args[0].clone(); Ok({ let v_B6682 = v_B6682.clone(); let v_L6683 = v_L6683.clone(); let v_V6686 = v_V6686.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6684 = args[0].clone(); Ok({ let v_B6682 = v_B6682.clone(); let v_Key6684 = v_Key6684.clone(); let v_L6683 = v_L6683.clone(); let v_V6686 = v_V6686.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6685 = args[0].clone(); Ok({ let v_A = { let __t4992 = v_B6682.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4992])? }; { let __t4993 = v_B6682.clone(); let __t5006 = { let __t4994 = v_V6686.clone(); let __t5001 = { let __t4995 = v_A.clone(); let __t5000 = { let __t4996 = Value::sym(interp.intern("-->")); let __t4999 = { let __t4997 = Value::sym(interp.intern("boolean")); let __t4998 = Value::nil(); rt::cons(&__t4997, &__t4998) }; rt::cons(&__t4996, &__t4999) }; rt::cons(&__t4995, &__t5000) }; let __t5002 = v_B6682.clone(); let __t5003 = v_L6683.clone(); let __t5004 = v_Key6684.clone(); let __t5005 = v_C6685.clone(); rt::apply_direct(interp, "is!", &[__t4994, __t5001, __t5002, __t5003, __t5004, __t5005])? }; rt::apply_direct(interp, "shen.gc", &[__t4993, __t5006])? } }) }, vec![v_B6682, v_Key6684, v_L6683, v_V6686], interp) }) }, vec![v_B6682, v_L6683, v_V6686], interp) }) }, vec![v_B6682, v_V6686], interp) }) }, vec![v_V6686], interp) }) }, Vec::new(), interp) }; let __t5009 = { let __t5008 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5008])? }; rt::apply_direct(interp, "shen.assoc->", &[__t4991, __t5007, __t5009])? }; rt::apply_direct(interp, "set", &[__t4990, __t5010])? }; - { - let _ = { let __t5011 = Value::sym(interp.intern("shen.*sigf*")); let __t5026 = { let __t5012 = Value::sym(interp.intern("version")); let __t5023 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6691 = args[0].clone(); Ok({ let v_V6691 = v_V6691.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6687 = args[0].clone(); Ok({ let v_B6687 = v_B6687.clone(); let v_V6691 = v_V6691.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6688 = args[0].clone(); Ok({ let v_B6687 = v_B6687.clone(); let v_L6688 = v_L6688.clone(); let v_V6691 = v_V6691.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6689 = args[0].clone(); Ok({ let v_B6687 = v_B6687.clone(); let v_Key6689 = v_Key6689.clone(); let v_L6688 = v_L6688.clone(); let v_V6691 = v_V6691.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6690 = args[0].clone(); Ok({ let __t5013 = v_V6691.clone(); let __t5018 = { let __t5014 = Value::sym(interp.intern("-->")); let __t5017 = { let __t5015 = Value::sym(interp.intern("string")); let __t5016 = Value::nil(); rt::cons(&__t5015, &__t5016) }; rt::cons(&__t5014, &__t5017) }; let __t5019 = v_B6687.clone(); let __t5020 = v_L6688.clone(); let __t5021 = v_Key6689.clone(); let __t5022 = v_C6690.clone(); rt::apply_direct(interp, "is!", &[__t5013, __t5018, __t5019, __t5020, __t5021, __t5022])? }) }, vec![v_B6687, v_Key6689, v_L6688, v_V6691], interp) }) }, vec![v_B6687, v_L6688, v_V6691], interp) }) }, vec![v_B6687, v_V6691], interp) }) }, vec![v_V6691], interp) }) }, Vec::new(), interp) }; let __t5025 = { let __t5024 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5024])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5012, __t5023, __t5025])? }; rt::apply_direct(interp, "set", &[__t5011, __t5026])? }; - { - let _ = { let __t5027 = Value::sym(interp.intern("shen.*sigf*")); let __t5053 = { let __t5028 = Value::sym(interp.intern("write-to-file")); let __t5050 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6696 = args[0].clone(); Ok({ let v_V6696 = v_V6696.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6692 = args[0].clone(); Ok({ let v_B6692 = v_B6692.clone(); let v_V6696 = v_V6696.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6693 = args[0].clone(); Ok({ let v_B6692 = v_B6692.clone(); let v_L6693 = v_L6693.clone(); let v_V6696 = v_V6696.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6694 = args[0].clone(); Ok({ let v_B6692 = v_B6692.clone(); let v_Key6694 = v_Key6694.clone(); let v_L6693 = v_L6693.clone(); let v_V6696 = v_V6696.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6695 = args[0].clone(); Ok({ let v_A = { let __t5029 = v_B6692.clone(); rt::apply_direct(interp, "shen.newpv", &[__t5029])? }; { let __t5030 = v_B6692.clone(); let __t5049 = { let __t5031 = v_V6696.clone(); let __t5044 = { let __t5032 = Value::sym(interp.intern("string")); let __t5043 = { let __t5033 = Value::sym(interp.intern("-->")); let __t5042 = { let __t5040 = { let __t5034 = v_A.clone(); let __t5039 = { let __t5035 = Value::sym(interp.intern("-->")); let __t5038 = { let __t5036 = v_A.clone(); let __t5037 = Value::nil(); rt::cons(&__t5036, &__t5037) }; rt::cons(&__t5035, &__t5038) }; rt::cons(&__t5034, &__t5039) }; let __t5041 = Value::nil(); rt::cons(&__t5040, &__t5041) }; rt::cons(&__t5033, &__t5042) }; rt::cons(&__t5032, &__t5043) }; let __t5045 = v_B6692.clone(); let __t5046 = v_L6693.clone(); let __t5047 = v_Key6694.clone(); let __t5048 = v_C6695.clone(); rt::apply_direct(interp, "is!", &[__t5031, __t5044, __t5045, __t5046, __t5047, __t5048])? }; rt::apply_direct(interp, "shen.gc", &[__t5030, __t5049])? } }) }, vec![v_B6692, v_Key6694, v_L6693, v_V6696], interp) }) }, vec![v_B6692, v_L6693, v_V6696], interp) }) }, vec![v_B6692, v_V6696], interp) }) }, vec![v_V6696], interp) }) }, Vec::new(), interp) }; let __t5052 = { let __t5051 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5051])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5028, __t5050, __t5052])? }; rt::apply_direct(interp, "set", &[__t5027, __t5053])? }; - { - let _ = { let __t5054 = Value::sym(interp.intern("shen.*sigf*")); let __t5081 = { let __t5055 = Value::sym(interp.intern("write-byte")); let __t5078 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6701 = args[0].clone(); Ok({ let v_V6701 = v_V6701.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6697 = args[0].clone(); Ok({ let v_B6697 = v_B6697.clone(); let v_V6701 = v_V6701.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6698 = args[0].clone(); Ok({ let v_B6697 = v_B6697.clone(); let v_L6698 = v_L6698.clone(); let v_V6701 = v_V6701.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6699 = args[0].clone(); Ok({ let v_B6697 = v_B6697.clone(); let v_Key6699 = v_Key6699.clone(); let v_L6698 = v_L6698.clone(); let v_V6701 = v_V6701.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6700 = args[0].clone(); Ok({ let __t5056 = v_V6701.clone(); let __t5073 = { let __t5057 = Value::sym(interp.intern("number")); let __t5072 = { let __t5058 = Value::sym(interp.intern("-->")); let __t5071 = { let __t5069 = { let __t5063 = { let __t5059 = Value::sym(interp.intern("stream")); let __t5062 = { let __t5060 = Value::sym(interp.intern("out")); let __t5061 = Value::nil(); rt::cons(&__t5060, &__t5061) }; rt::cons(&__t5059, &__t5062) }; let __t5068 = { let __t5064 = Value::sym(interp.intern("-->")); let __t5067 = { let __t5065 = Value::sym(interp.intern("number")); let __t5066 = Value::nil(); rt::cons(&__t5065, &__t5066) }; rt::cons(&__t5064, &__t5067) }; rt::cons(&__t5063, &__t5068) }; let __t5070 = Value::nil(); rt::cons(&__t5069, &__t5070) }; rt::cons(&__t5058, &__t5071) }; rt::cons(&__t5057, &__t5072) }; let __t5074 = v_B6697.clone(); let __t5075 = v_L6698.clone(); let __t5076 = v_Key6699.clone(); let __t5077 = v_C6700.clone(); rt::apply_direct(interp, "is!", &[__t5056, __t5073, __t5074, __t5075, __t5076, __t5077])? }) }, vec![v_B6697, v_Key6699, v_L6698, v_V6701], interp) }) }, vec![v_B6697, v_L6698, v_V6701], interp) }) }, vec![v_B6697, v_V6701], interp) }) }, vec![v_V6701], interp) }) }, Vec::new(), interp) }; let __t5080 = { let __t5079 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5079])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5055, __t5078, __t5080])? }; rt::apply_direct(interp, "set", &[__t5054, __t5081])? }; - { - let _ = { let __t5082 = Value::sym(interp.intern("shen.*sigf*")); let __t5099 = { let __t5083 = Value::sym(interp.intern("y-or-n?")); let __t5096 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6706 = args[0].clone(); Ok({ let v_V6706 = v_V6706.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6702 = args[0].clone(); Ok({ let v_B6702 = v_B6702.clone(); let v_V6706 = v_V6706.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6703 = args[0].clone(); Ok({ let v_B6702 = v_B6702.clone(); let v_L6703 = v_L6703.clone(); let v_V6706 = v_V6706.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6704 = args[0].clone(); Ok({ let v_B6702 = v_B6702.clone(); let v_Key6704 = v_Key6704.clone(); let v_L6703 = v_L6703.clone(); let v_V6706 = v_V6706.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6705 = args[0].clone(); Ok({ let __t5084 = v_V6706.clone(); let __t5091 = { let __t5085 = Value::sym(interp.intern("string")); let __t5090 = { let __t5086 = Value::sym(interp.intern("-->")); let __t5089 = { let __t5087 = Value::sym(interp.intern("boolean")); let __t5088 = Value::nil(); rt::cons(&__t5087, &__t5088) }; rt::cons(&__t5086, &__t5089) }; rt::cons(&__t5085, &__t5090) }; let __t5092 = v_B6702.clone(); let __t5093 = v_L6703.clone(); let __t5094 = v_Key6704.clone(); let __t5095 = v_C6705.clone(); rt::apply_direct(interp, "is!", &[__t5084, __t5091, __t5092, __t5093, __t5094, __t5095])? }) }, vec![v_B6702, v_Key6704, v_L6703, v_V6706], interp) }) }, vec![v_B6702, v_L6703, v_V6706], interp) }) }, vec![v_B6702, v_V6706], interp) }) }, vec![v_V6706], interp) }) }, Vec::new(), interp) }; let __t5098 = { let __t5097 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5097])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5083, __t5096, __t5098])? }; rt::apply_direct(interp, "set", &[__t5082, __t5099])? }; - { - let _ = { let __t5100 = Value::sym(interp.intern("shen.*sigf*")); let __t5123 = { let __t5101 = Value::sym(interp.intern(">")); let __t5120 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6711 = args[0].clone(); Ok({ let v_V6711 = v_V6711.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6707 = args[0].clone(); Ok({ let v_B6707 = v_B6707.clone(); let v_V6711 = v_V6711.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6708 = args[0].clone(); Ok({ let v_B6707 = v_B6707.clone(); let v_L6708 = v_L6708.clone(); let v_V6711 = v_V6711.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6709 = args[0].clone(); Ok({ let v_B6707 = v_B6707.clone(); let v_Key6709 = v_Key6709.clone(); let v_L6708 = v_L6708.clone(); let v_V6711 = v_V6711.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6710 = args[0].clone(); Ok({ let __t5102 = v_V6711.clone(); let __t5115 = { let __t5103 = Value::sym(interp.intern("number")); let __t5114 = { let __t5104 = Value::sym(interp.intern("-->")); let __t5113 = { let __t5111 = { let __t5105 = Value::sym(interp.intern("number")); let __t5110 = { let __t5106 = Value::sym(interp.intern("-->")); let __t5109 = { let __t5107 = Value::sym(interp.intern("boolean")); let __t5108 = Value::nil(); rt::cons(&__t5107, &__t5108) }; rt::cons(&__t5106, &__t5109) }; rt::cons(&__t5105, &__t5110) }; let __t5112 = Value::nil(); rt::cons(&__t5111, &__t5112) }; rt::cons(&__t5104, &__t5113) }; rt::cons(&__t5103, &__t5114) }; let __t5116 = v_B6707.clone(); let __t5117 = v_L6708.clone(); let __t5118 = v_Key6709.clone(); let __t5119 = v_C6710.clone(); rt::apply_direct(interp, "is!", &[__t5102, __t5115, __t5116, __t5117, __t5118, __t5119])? }) }, vec![v_B6707, v_Key6709, v_L6708, v_V6711], interp) }) }, vec![v_B6707, v_L6708, v_V6711], interp) }) }, vec![v_B6707, v_V6711], interp) }) }, vec![v_V6711], interp) }) }, Vec::new(), interp) }; let __t5122 = { let __t5121 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5121])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5101, __t5120, __t5122])? }; rt::apply_direct(interp, "set", &[__t5100, __t5123])? }; - { - let _ = { let __t5124 = Value::sym(interp.intern("shen.*sigf*")); let __t5147 = { let __t5125 = Value::sym(interp.intern("<")); let __t5144 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6716 = args[0].clone(); Ok({ let v_V6716 = v_V6716.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6712 = args[0].clone(); Ok({ let v_B6712 = v_B6712.clone(); let v_V6716 = v_V6716.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6713 = args[0].clone(); Ok({ let v_B6712 = v_B6712.clone(); let v_L6713 = v_L6713.clone(); let v_V6716 = v_V6716.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6714 = args[0].clone(); Ok({ let v_B6712 = v_B6712.clone(); let v_Key6714 = v_Key6714.clone(); let v_L6713 = v_L6713.clone(); let v_V6716 = v_V6716.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6715 = args[0].clone(); Ok({ let __t5126 = v_V6716.clone(); let __t5139 = { let __t5127 = Value::sym(interp.intern("number")); let __t5138 = { let __t5128 = Value::sym(interp.intern("-->")); let __t5137 = { let __t5135 = { let __t5129 = Value::sym(interp.intern("number")); let __t5134 = { let __t5130 = Value::sym(interp.intern("-->")); let __t5133 = { let __t5131 = Value::sym(interp.intern("boolean")); let __t5132 = Value::nil(); rt::cons(&__t5131, &__t5132) }; rt::cons(&__t5130, &__t5133) }; rt::cons(&__t5129, &__t5134) }; let __t5136 = Value::nil(); rt::cons(&__t5135, &__t5136) }; rt::cons(&__t5128, &__t5137) }; rt::cons(&__t5127, &__t5138) }; let __t5140 = v_B6712.clone(); let __t5141 = v_L6713.clone(); let __t5142 = v_Key6714.clone(); let __t5143 = v_C6715.clone(); rt::apply_direct(interp, "is!", &[__t5126, __t5139, __t5140, __t5141, __t5142, __t5143])? }) }, vec![v_B6712, v_Key6714, v_L6713, v_V6716], interp) }) }, vec![v_B6712, v_L6713, v_V6716], interp) }) }, vec![v_B6712, v_V6716], interp) }) }, vec![v_V6716], interp) }) }, Vec::new(), interp) }; let __t5146 = { let __t5145 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5145])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5125, __t5144, __t5146])? }; rt::apply_direct(interp, "set", &[__t5124, __t5147])? }; - { - let _ = { let __t5148 = Value::sym(interp.intern("shen.*sigf*")); let __t5171 = { let __t5149 = Value::sym(interp.intern(">=")); let __t5168 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6721 = args[0].clone(); Ok({ let v_V6721 = v_V6721.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6717 = args[0].clone(); Ok({ let v_B6717 = v_B6717.clone(); let v_V6721 = v_V6721.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6718 = args[0].clone(); Ok({ let v_B6717 = v_B6717.clone(); let v_L6718 = v_L6718.clone(); let v_V6721 = v_V6721.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6719 = args[0].clone(); Ok({ let v_B6717 = v_B6717.clone(); let v_Key6719 = v_Key6719.clone(); let v_L6718 = v_L6718.clone(); let v_V6721 = v_V6721.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6720 = args[0].clone(); Ok({ let __t5150 = v_V6721.clone(); let __t5163 = { let __t5151 = Value::sym(interp.intern("number")); let __t5162 = { let __t5152 = Value::sym(interp.intern("-->")); let __t5161 = { let __t5159 = { let __t5153 = Value::sym(interp.intern("number")); let __t5158 = { let __t5154 = Value::sym(interp.intern("-->")); let __t5157 = { let __t5155 = Value::sym(interp.intern("boolean")); let __t5156 = Value::nil(); rt::cons(&__t5155, &__t5156) }; rt::cons(&__t5154, &__t5157) }; rt::cons(&__t5153, &__t5158) }; let __t5160 = Value::nil(); rt::cons(&__t5159, &__t5160) }; rt::cons(&__t5152, &__t5161) }; rt::cons(&__t5151, &__t5162) }; let __t5164 = v_B6717.clone(); let __t5165 = v_L6718.clone(); let __t5166 = v_Key6719.clone(); let __t5167 = v_C6720.clone(); rt::apply_direct(interp, "is!", &[__t5150, __t5163, __t5164, __t5165, __t5166, __t5167])? }) }, vec![v_B6717, v_Key6719, v_L6718, v_V6721], interp) }) }, vec![v_B6717, v_L6718, v_V6721], interp) }) }, vec![v_B6717, v_V6721], interp) }) }, vec![v_V6721], interp) }) }, Vec::new(), interp) }; let __t5170 = { let __t5169 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5169])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5149, __t5168, __t5170])? }; rt::apply_direct(interp, "set", &[__t5148, __t5171])? }; - { - let _ = { let __t5172 = Value::sym(interp.intern("shen.*sigf*")); let __t5195 = { let __t5173 = Value::sym(interp.intern("<=")); let __t5192 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6726 = args[0].clone(); Ok({ let v_V6726 = v_V6726.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6722 = args[0].clone(); Ok({ let v_B6722 = v_B6722.clone(); let v_V6726 = v_V6726.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6723 = args[0].clone(); Ok({ let v_B6722 = v_B6722.clone(); let v_L6723 = v_L6723.clone(); let v_V6726 = v_V6726.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6724 = args[0].clone(); Ok({ let v_B6722 = v_B6722.clone(); let v_Key6724 = v_Key6724.clone(); let v_L6723 = v_L6723.clone(); let v_V6726 = v_V6726.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6725 = args[0].clone(); Ok({ let __t5174 = v_V6726.clone(); let __t5187 = { let __t5175 = Value::sym(interp.intern("number")); let __t5186 = { let __t5176 = Value::sym(interp.intern("-->")); let __t5185 = { let __t5183 = { let __t5177 = Value::sym(interp.intern("number")); let __t5182 = { let __t5178 = Value::sym(interp.intern("-->")); let __t5181 = { let __t5179 = Value::sym(interp.intern("boolean")); let __t5180 = Value::nil(); rt::cons(&__t5179, &__t5180) }; rt::cons(&__t5178, &__t5181) }; rt::cons(&__t5177, &__t5182) }; let __t5184 = Value::nil(); rt::cons(&__t5183, &__t5184) }; rt::cons(&__t5176, &__t5185) }; rt::cons(&__t5175, &__t5186) }; let __t5188 = v_B6722.clone(); let __t5189 = v_L6723.clone(); let __t5190 = v_Key6724.clone(); let __t5191 = v_C6725.clone(); rt::apply_direct(interp, "is!", &[__t5174, __t5187, __t5188, __t5189, __t5190, __t5191])? }) }, vec![v_B6722, v_Key6724, v_L6723, v_V6726], interp) }) }, vec![v_B6722, v_L6723, v_V6726], interp) }) }, vec![v_B6722, v_V6726], interp) }) }, vec![v_V6726], interp) }) }, Vec::new(), interp) }; let __t5194 = { let __t5193 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5193])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5173, __t5192, __t5194])? }; rt::apply_direct(interp, "set", &[__t5172, __t5195])? }; - { - let _ = { let __t5196 = Value::sym(interp.intern("shen.*sigf*")); let __t5222 = { let __t5197 = Value::sym(interp.intern("=")); let __t5219 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6731 = args[0].clone(); Ok({ let v_V6731 = v_V6731.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6727 = args[0].clone(); Ok({ let v_B6727 = v_B6727.clone(); let v_V6731 = v_V6731.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6728 = args[0].clone(); Ok({ let v_B6727 = v_B6727.clone(); let v_L6728 = v_L6728.clone(); let v_V6731 = v_V6731.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6729 = args[0].clone(); Ok({ let v_B6727 = v_B6727.clone(); let v_Key6729 = v_Key6729.clone(); let v_L6728 = v_L6728.clone(); let v_V6731 = v_V6731.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6730 = args[0].clone(); Ok({ let v_A = { let __t5198 = v_B6727.clone(); rt::apply_direct(interp, "shen.newpv", &[__t5198])? }; { let __t5199 = v_B6727.clone(); let __t5218 = { let __t5200 = v_V6731.clone(); let __t5213 = { let __t5201 = v_A.clone(); let __t5212 = { let __t5202 = Value::sym(interp.intern("-->")); let __t5211 = { let __t5209 = { let __t5203 = v_A.clone(); let __t5208 = { let __t5204 = Value::sym(interp.intern("-->")); let __t5207 = { let __t5205 = Value::sym(interp.intern("boolean")); let __t5206 = Value::nil(); rt::cons(&__t5205, &__t5206) }; rt::cons(&__t5204, &__t5207) }; rt::cons(&__t5203, &__t5208) }; let __t5210 = Value::nil(); rt::cons(&__t5209, &__t5210) }; rt::cons(&__t5202, &__t5211) }; rt::cons(&__t5201, &__t5212) }; let __t5214 = v_B6727.clone(); let __t5215 = v_L6728.clone(); let __t5216 = v_Key6729.clone(); let __t5217 = v_C6730.clone(); rt::apply_direct(interp, "is!", &[__t5200, __t5213, __t5214, __t5215, __t5216, __t5217])? }; rt::apply_direct(interp, "shen.gc", &[__t5199, __t5218])? } }) }, vec![v_B6727, v_Key6729, v_L6728, v_V6731], interp) }) }, vec![v_B6727, v_L6728, v_V6731], interp) }) }, vec![v_B6727, v_V6731], interp) }) }, vec![v_V6731], interp) }) }, Vec::new(), interp) }; let __t5221 = { let __t5220 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5220])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5197, __t5219, __t5221])? }; rt::apply_direct(interp, "set", &[__t5196, __t5222])? }; - { - let _ = { let __t5223 = Value::sym(interp.intern("shen.*sigf*")); let __t5246 = { let __t5224 = Value::sym(interp.intern("+")); let __t5243 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6736 = args[0].clone(); Ok({ let v_V6736 = v_V6736.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6732 = args[0].clone(); Ok({ let v_B6732 = v_B6732.clone(); let v_V6736 = v_V6736.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6733 = args[0].clone(); Ok({ let v_B6732 = v_B6732.clone(); let v_L6733 = v_L6733.clone(); let v_V6736 = v_V6736.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6734 = args[0].clone(); Ok({ let v_B6732 = v_B6732.clone(); let v_Key6734 = v_Key6734.clone(); let v_L6733 = v_L6733.clone(); let v_V6736 = v_V6736.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6735 = args[0].clone(); Ok({ let __t5225 = v_V6736.clone(); let __t5238 = { let __t5226 = Value::sym(interp.intern("number")); let __t5237 = { let __t5227 = Value::sym(interp.intern("-->")); let __t5236 = { let __t5234 = { let __t5228 = Value::sym(interp.intern("number")); let __t5233 = { let __t5229 = Value::sym(interp.intern("-->")); let __t5232 = { let __t5230 = Value::sym(interp.intern("number")); let __t5231 = Value::nil(); rt::cons(&__t5230, &__t5231) }; rt::cons(&__t5229, &__t5232) }; rt::cons(&__t5228, &__t5233) }; let __t5235 = Value::nil(); rt::cons(&__t5234, &__t5235) }; rt::cons(&__t5227, &__t5236) }; rt::cons(&__t5226, &__t5237) }; let __t5239 = v_B6732.clone(); let __t5240 = v_L6733.clone(); let __t5241 = v_Key6734.clone(); let __t5242 = v_C6735.clone(); rt::apply_direct(interp, "is!", &[__t5225, __t5238, __t5239, __t5240, __t5241, __t5242])? }) }, vec![v_B6732, v_Key6734, v_L6733, v_V6736], interp) }) }, vec![v_B6732, v_L6733, v_V6736], interp) }) }, vec![v_B6732, v_V6736], interp) }) }, vec![v_V6736], interp) }) }, Vec::new(), interp) }; let __t5245 = { let __t5244 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5244])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5224, __t5243, __t5245])? }; rt::apply_direct(interp, "set", &[__t5223, __t5246])? }; - { - let _ = { let __t5247 = Value::sym(interp.intern("shen.*sigf*")); let __t5270 = { let __t5248 = Value::sym(interp.intern("/")); let __t5267 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6741 = args[0].clone(); Ok({ let v_V6741 = v_V6741.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6737 = args[0].clone(); Ok({ let v_B6737 = v_B6737.clone(); let v_V6741 = v_V6741.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6738 = args[0].clone(); Ok({ let v_B6737 = v_B6737.clone(); let v_L6738 = v_L6738.clone(); let v_V6741 = v_V6741.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6739 = args[0].clone(); Ok({ let v_B6737 = v_B6737.clone(); let v_Key6739 = v_Key6739.clone(); let v_L6738 = v_L6738.clone(); let v_V6741 = v_V6741.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6740 = args[0].clone(); Ok({ let __t5249 = v_V6741.clone(); let __t5262 = { let __t5250 = Value::sym(interp.intern("number")); let __t5261 = { let __t5251 = Value::sym(interp.intern("-->")); let __t5260 = { let __t5258 = { let __t5252 = Value::sym(interp.intern("number")); let __t5257 = { let __t5253 = Value::sym(interp.intern("-->")); let __t5256 = { let __t5254 = Value::sym(interp.intern("number")); let __t5255 = Value::nil(); rt::cons(&__t5254, &__t5255) }; rt::cons(&__t5253, &__t5256) }; rt::cons(&__t5252, &__t5257) }; let __t5259 = Value::nil(); rt::cons(&__t5258, &__t5259) }; rt::cons(&__t5251, &__t5260) }; rt::cons(&__t5250, &__t5261) }; let __t5263 = v_B6737.clone(); let __t5264 = v_L6738.clone(); let __t5265 = v_Key6739.clone(); let __t5266 = v_C6740.clone(); rt::apply_direct(interp, "is!", &[__t5249, __t5262, __t5263, __t5264, __t5265, __t5266])? }) }, vec![v_B6737, v_Key6739, v_L6738, v_V6741], interp) }) }, vec![v_B6737, v_L6738, v_V6741], interp) }) }, vec![v_B6737, v_V6741], interp) }) }, vec![v_V6741], interp) }) }, Vec::new(), interp) }; let __t5269 = { let __t5268 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5268])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5248, __t5267, __t5269])? }; rt::apply_direct(interp, "set", &[__t5247, __t5270])? }; - { - let _ = { let __t5271 = Value::sym(interp.intern("shen.*sigf*")); let __t5294 = { let __t5272 = Value::sym(interp.intern("-")); let __t5291 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6746 = args[0].clone(); Ok({ let v_V6746 = v_V6746.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6742 = args[0].clone(); Ok({ let v_B6742 = v_B6742.clone(); let v_V6746 = v_V6746.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6743 = args[0].clone(); Ok({ let v_B6742 = v_B6742.clone(); let v_L6743 = v_L6743.clone(); let v_V6746 = v_V6746.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6744 = args[0].clone(); Ok({ let v_B6742 = v_B6742.clone(); let v_Key6744 = v_Key6744.clone(); let v_L6743 = v_L6743.clone(); let v_V6746 = v_V6746.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6745 = args[0].clone(); Ok({ let __t5273 = v_V6746.clone(); let __t5286 = { let __t5274 = Value::sym(interp.intern("number")); let __t5285 = { let __t5275 = Value::sym(interp.intern("-->")); let __t5284 = { let __t5282 = { let __t5276 = Value::sym(interp.intern("number")); let __t5281 = { let __t5277 = Value::sym(interp.intern("-->")); let __t5280 = { let __t5278 = Value::sym(interp.intern("number")); let __t5279 = Value::nil(); rt::cons(&__t5278, &__t5279) }; rt::cons(&__t5277, &__t5280) }; rt::cons(&__t5276, &__t5281) }; let __t5283 = Value::nil(); rt::cons(&__t5282, &__t5283) }; rt::cons(&__t5275, &__t5284) }; rt::cons(&__t5274, &__t5285) }; let __t5287 = v_B6742.clone(); let __t5288 = v_L6743.clone(); let __t5289 = v_Key6744.clone(); let __t5290 = v_C6745.clone(); rt::apply_direct(interp, "is!", &[__t5273, __t5286, __t5287, __t5288, __t5289, __t5290])? }) }, vec![v_B6742, v_Key6744, v_L6743, v_V6746], interp) }) }, vec![v_B6742, v_L6743, v_V6746], interp) }) }, vec![v_B6742, v_V6746], interp) }) }, vec![v_V6746], interp) }) }, Vec::new(), interp) }; let __t5293 = { let __t5292 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5292])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5272, __t5291, __t5293])? }; rt::apply_direct(interp, "set", &[__t5271, __t5294])? }; - { - let _ = { let __t5295 = Value::sym(interp.intern("shen.*sigf*")); let __t5318 = { let __t5296 = Value::sym(interp.intern("*")); let __t5315 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6751 = args[0].clone(); Ok({ let v_V6751 = v_V6751.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6747 = args[0].clone(); Ok({ let v_B6747 = v_B6747.clone(); let v_V6751 = v_V6751.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6748 = args[0].clone(); Ok({ let v_B6747 = v_B6747.clone(); let v_L6748 = v_L6748.clone(); let v_V6751 = v_V6751.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6749 = args[0].clone(); Ok({ let v_B6747 = v_B6747.clone(); let v_Key6749 = v_Key6749.clone(); let v_L6748 = v_L6748.clone(); let v_V6751 = v_V6751.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6750 = args[0].clone(); Ok({ let __t5297 = v_V6751.clone(); let __t5310 = { let __t5298 = Value::sym(interp.intern("number")); let __t5309 = { let __t5299 = Value::sym(interp.intern("-->")); let __t5308 = { let __t5306 = { let __t5300 = Value::sym(interp.intern("number")); let __t5305 = { let __t5301 = Value::sym(interp.intern("-->")); let __t5304 = { let __t5302 = Value::sym(interp.intern("number")); let __t5303 = Value::nil(); rt::cons(&__t5302, &__t5303) }; rt::cons(&__t5301, &__t5304) }; rt::cons(&__t5300, &__t5305) }; let __t5307 = Value::nil(); rt::cons(&__t5306, &__t5307) }; rt::cons(&__t5299, &__t5308) }; rt::cons(&__t5298, &__t5309) }; let __t5311 = v_B6747.clone(); let __t5312 = v_L6748.clone(); let __t5313 = v_Key6749.clone(); let __t5314 = v_C6750.clone(); rt::apply_direct(interp, "is!", &[__t5297, __t5310, __t5311, __t5312, __t5313, __t5314])? }) }, vec![v_B6747, v_Key6749, v_L6748, v_V6751], interp) }) }, vec![v_B6747, v_L6748, v_V6751], interp) }) }, vec![v_B6747, v_V6751], interp) }) }, vec![v_V6751], interp) }) }, Vec::new(), interp) }; let __t5317 = { let __t5316 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5316])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5296, __t5315, __t5317])? }; rt::apply_direct(interp, "set", &[__t5295, __t5318])? }; - break Ok({ let __t5319 = Value::sym(interp.intern("shen.*sigf*")); let __t5348 = { let __t5320 = Value::sym(interp.intern("==")); let __t5345 = { rt::make_aot_closure("", 1, move |interp, args| { let v_V6756 = args[0].clone(); Ok({ let v_V6756 = v_V6756.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_B6752 = args[0].clone(); Ok({ let v_B6752 = v_B6752.clone(); let v_V6756 = v_V6756.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_L6753 = args[0].clone(); Ok({ let v_B6752 = v_B6752.clone(); let v_L6753 = v_L6753.clone(); let v_V6756 = v_V6756.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Key6754 = args[0].clone(); Ok({ let v_B6752 = v_B6752.clone(); let v_Key6754 = v_Key6754.clone(); let v_L6753 = v_L6753.clone(); let v_V6756 = v_V6756.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_C6755 = args[0].clone(); Ok({ let v_A = { let __t5321 = v_B6752.clone(); rt::apply_direct(interp, "shen.newpv", &[__t5321])? }; { let __t5322 = v_B6752.clone(); let __t5344 = { let v_B = { let __t5323 = v_B6752.clone(); rt::apply_direct(interp, "shen.newpv", &[__t5323])? }; { let __t5324 = v_B6752.clone(); let __t5343 = { let __t5325 = v_V6756.clone(); let __t5338 = { let __t5326 = v_A.clone(); let __t5337 = { let __t5327 = Value::sym(interp.intern("-->")); let __t5336 = { let __t5334 = { let __t5328 = v_B.clone(); let __t5333 = { let __t5329 = Value::sym(interp.intern("-->")); let __t5332 = { let __t5330 = Value::sym(interp.intern("boolean")); let __t5331 = Value::nil(); rt::cons(&__t5330, &__t5331) }; rt::cons(&__t5329, &__t5332) }; rt::cons(&__t5328, &__t5333) }; let __t5335 = Value::nil(); rt::cons(&__t5334, &__t5335) }; rt::cons(&__t5327, &__t5336) }; rt::cons(&__t5326, &__t5337) }; let __t5339 = v_B6752.clone(); let __t5340 = v_L6753.clone(); let __t5341 = v_Key6754.clone(); let __t5342 = v_C6755.clone(); rt::apply_direct(interp, "is!", &[__t5325, __t5338, __t5339, __t5340, __t5341, __t5342])? }; rt::apply_direct(interp, "shen.gc", &[__t5324, __t5343])? } }; rt::apply_direct(interp, "shen.gc", &[__t5322, __t5344])? } }) }, vec![v_B6752, v_Key6754, v_L6753, v_V6756], interp) }) }, vec![v_B6752, v_L6753, v_V6756], interp) }) }, vec![v_B6752, v_V6756], interp) }) }, vec![v_V6756], interp) }) }, Vec::new(), interp) }; let __t5347 = { let __t5346 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t5346])? }; rt::apply_direct(interp, "shen.assoc->", &[__t5320, __t5345, __t5347])? }; rt::apply_direct(interp, "set", &[__t5319, __t5348])? }); - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_initialise_x2d_signedfuncs(interp: &mut Interp) { - interp.register_native( - "shen.initialise-signedfuncs", - 0, - aot_shen_x2e_initialise_x2d_signedfuncs, - ); - interp.register_aot_direct( - "shen.initialise-signedfuncs", - aot_shen_x2e_initialise_x2d_signedfuncs, - ); -} - -/// AOT-compiled from KL `(defun shen.initialise-lambda-forms ...)` -pub fn aot_shen_x2e_initialise_x2d_lambda_x2d_forms( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "shen.initialise-lambda-forms: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - { - let _ = { - let __t5352 = { - let __t5349 = Value::sym(interp.intern("shen.tuple")); - let __t5351 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1220 = args[0].clone(); - Ok({ - let __t5350 = v_Y1220.clone(); - rt::apply_direct(interp, "shen.tuple", &[__t5350])? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5349, &__t5351) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5352])? - }; - { - let _ = { - let __t5356 = { - let __t5353 = Value::sym(interp.intern("shen.pvar")); - let __t5355 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1219 = args[0].clone(); - Ok({ - let __t5354 = v_Y1219.clone(); - rt::apply_direct(interp, "shen.pvar", &[__t5354])? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5353, &__t5355) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5356])? - }; - { - let _ = { - let __t5360 = { - let __t5357 = Value::sym(interp.intern("shen.dictionary")); - let __t5359 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1218 = args[0].clone(); - Ok({ - let __t5358 = v_Y1218.clone(); - rt::apply_direct(interp, "shen.dictionary", &[__t5358])? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5357, &__t5359) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5360])? - }; - { - let _ = { - let __t5364 = { - let __t5361 = Value::sym(interp.intern("shen.print-prolog-vector")); - let __t5363 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1217 = args[0].clone(); - Ok({ - let __t5362 = v_Y1217.clone(); - rt::apply_direct( - interp, - "shen.print-prolog-vector", - &[__t5362], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5361, &__t5363) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5364])? - }; - { - let _ = { - let __t5368 = { - let __t5365 = Value::sym(interp.intern("shen.print-freshterm")); - let __t5367 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1216 = args[0].clone(); - Ok({ - let __t5366 = v_Y1216.clone(); - rt::apply_direct( - interp, - "shen.print-freshterm", - &[__t5366], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5365, &__t5367) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5368])? - }; - { - let _ = { - let __t5372 = { - let __t5369 = Value::sym(interp.intern("shen.printF")); - let __t5371 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1215 = args[0].clone(); - Ok({ - let __t5370 = v_Y1215.clone(); - rt::apply_direct( - interp, - "shen.printF", - &[__t5370], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5369, &__t5371) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5372], - )? - }; - { - let _ = { - let __t5376 = { - let __t5373 = Value::sym(interp.intern("absolute")); - let __t5375 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1214 = args[0].clone(); - Ok({ - let __t5374 = v_Y1214.clone(); - rt::apply_direct( - interp, - "absolute", - &[__t5374], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5373, &__t5375) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5376], - )? - }; - { - let _ = { - let __t5380 = { - let __t5377 = - Value::sym(interp.intern("absvector?")); - let __t5379 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1213 = args[0].clone(); - Ok({ - let __t5378 = v_Y1213.clone(); - rt::is_absvector(&__t5378) - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5377, &__t5379) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5380], - )? - }; - { - let _ = { - let __t5384 = { - let __t5381 = - Value::sym(interp.intern("absvector")); - let __t5383 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1212 = args[0].clone(); - Ok({ - let __t5382 = v_Y1212.clone(); - rt::apply_direct( - interp, - "absvector", - &[__t5382], - )? - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5381, &__t5383) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5384], - )? - }; - { - let _ = { - let __t5390 = { - let __t5385 = - Value::sym(interp.intern("address->")); - let __t5389 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1209 = args[0].clone(); - Ok({ - let v_Y1209 = - v_Y1209.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1210 = - args[0].clone(); - Ok({ - let v_Y1209 = - v_Y1209 - .clone( - ); - let v_Y1210 = - v_Y1210 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1211 = args[0].clone(); Ok({ let __t5386 = v_Y1209.clone(); let __t5387 = v_Y1210.clone(); let __t5388 = v_Y1211.clone(); rt::apply_direct(interp, "address->", &[__t5386, __t5387, __t5388])? }) }, vec![v_Y1209, v_Y1210], interp) - }) - }, - vec![v_Y1209], - interp, - ) - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5385, &__t5389) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5390], - )? - }; - { - let _ = { - let __t5395 = { - let __t5391 = - Value::sym(interp.intern("adjoin")); - let __t5394 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1207 = - args[0].clone(); - Ok({ - let v_Y1207 = - v_Y1207.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1208 = args[0].clone(); Ok({ let __t5392 = v_Y1207.clone(); let __t5393 = v_Y1208.clone(); rt::apply_direct(interp, "adjoin", &[__t5392, __t5393])? }) }, vec![v_Y1207], interp) - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5391, &__t5394) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5395], - )? - }; - { - let _ = { - let __t5400 = { - let __t5396 = Value::sym( - interp.intern("and"), - ); - let __t5399 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1205 = - args[0].clone(); - Ok({ - let v_Y1205 = - v_Y1205.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1206 = args[0].clone(); Ok({ let __t5397 = v_Y1205.clone(); if !rt::is_truthy(interp, &__t5397)? { Value::bool(false) } else { let __t5398 = v_Y1206.clone(); Value::bool(rt::is_truthy(interp, &__t5398)?) } }) }, vec![v_Y1205], interp) - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5396, &__t5399) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5400], - )? - }; - { - let _ = { - let __t5405 = { - let __t5401 = Value::sym( - interp.intern("append"), - ); - let __t5404 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Y1203 = - args[0].clone(); - Ok({ - let v_Y1203 = - v_Y1203 - .clone( - ); - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1204 = args[0].clone(); Ok({ let __t5402 = v_Y1203.clone(); let __t5403 = v_Y1204.clone(); rt::apply_direct(interp, "append", &[__t5402, __t5403])? }) }, vec![v_Y1203], interp) - }) - }, - Vec::new(), - interp, - ) - }; - rt::cons(&__t5401, &__t5404) - }; - rt::apply_direct( - interp, - "shen.set-lambda-form-entry", - &[__t5405], - )? - }; - { - let _ = { - let __t5409 = { - let __t5406 = Value::sym( - interp.intern("arity"), - ); - let __t5408 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1202 = args[0].clone(); Ok({ let __t5407 = v_Y1202.clone(); rt::apply_direct(interp, "arity", &[__t5407])? }) }, Vec::new(), interp) - }; - rt::cons(&__t5406, &__t5408) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5409])? - }; - { - let _ = { - let __t5414 = { - let __t5410 = - Value::sym( - interp.intern( - "assoc", - ), - ); - let __t5413 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1200 = args[0].clone(); Ok({ let v_Y1200 = v_Y1200.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1201 = args[0].clone(); Ok({ let __t5411 = v_Y1200.clone(); let __t5412 = v_Y1201.clone(); rt::apply_direct(interp, "assoc", &[__t5411, __t5412])? }) }, vec![v_Y1200], interp) }) }, Vec::new(), interp) - }; - rt::cons( - &__t5410, &__t5413, - ) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5414])? - }; - { - let _ = { - let __t5418 = { - let __t5415 = - Value::sym( - interp - .intern( - "atom?", - ), - ); - let __t5417 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1199 = args[0].clone(); Ok({ let __t5416 = v_Y1199.clone(); rt::apply_direct(interp, "atom?", &[__t5416])? }) }, Vec::new(), interp) - }; - rt::cons( - &__t5415, - &__t5417, - ) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5418])? - }; - { - let _ = { - let __t5422 = { - let __t5419 = Value::sym(interp.intern("boolean?")); - let __t5421 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1198 = args[0].clone(); Ok({ let __t5420 = v_Y1198.clone(); rt::apply_direct(interp, "boolean?", &[__t5420])? }) }, Vec::new(), interp) - }; - rt::cons( - &__t5419, - &__t5421, - ) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5422])? - }; - { - let _ = { - let __t5426 = { - let __t5423 = Value::sym(interp.intern("bootstrap")); - let __t5425 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1197 = args[0].clone(); Ok({ let __t5424 = v_Y1197.clone(); rt::apply_direct(interp, "bootstrap", &[__t5424])? }) }, Vec::new(), interp) - }; - rt::cons(&__t5423, &__t5425) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5426])? - }; - { - let _ = { - let __t5430 = { - let __t5427 = Value::sym(interp.intern("bound?")); - let __t5429 = { - rt::make_aot_closure("", 1, move |interp, args| { let v_Y1196 = args[0].clone(); Ok({ let __t5428 = v_Y1196.clone(); rt::apply_direct(interp, "bound?", &[__t5428])? }) }, Vec::new(), interp) - }; - rt::cons(&__t5427, &__t5429) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5430])? - }; - { - let _ = { - let __t5439 = { - let __t5431 = Value::sym(interp.intern("bind")); - let __t5438 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1190 = args[0].clone(); Ok({ let v_Y1190 = v_Y1190.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1191 = args[0].clone(); Ok({ let v_Y1190 = v_Y1190.clone(); let v_Y1191 = v_Y1191.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1192 = args[0].clone(); Ok({ let v_Y1190 = v_Y1190.clone(); let v_Y1191 = v_Y1191.clone(); let v_Y1192 = v_Y1192.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1193 = args[0].clone(); Ok({ let v_Y1190 = v_Y1190.clone(); let v_Y1191 = v_Y1191.clone(); let v_Y1192 = v_Y1192.clone(); let v_Y1193 = v_Y1193.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1194 = args[0].clone(); Ok({ let v_Y1190 = v_Y1190.clone(); let v_Y1191 = v_Y1191.clone(); let v_Y1192 = v_Y1192.clone(); let v_Y1193 = v_Y1193.clone(); let v_Y1194 = v_Y1194.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1195 = args[0].clone(); Ok({ let __t5432 = v_Y1190.clone(); let __t5433 = v_Y1191.clone(); let __t5434 = v_Y1192.clone(); let __t5435 = v_Y1193.clone(); let __t5436 = v_Y1194.clone(); let __t5437 = v_Y1195.clone(); rt::apply_direct(interp, "bind", &[__t5432, __t5433, __t5434, __t5435, __t5436, __t5437])? }) }, vec![v_Y1190, v_Y1191, v_Y1192, v_Y1193, v_Y1194], interp) }) }, vec![v_Y1190, v_Y1191, v_Y1192, v_Y1193], interp) }) }, vec![v_Y1190, v_Y1191, v_Y1192], interp) }) }, vec![v_Y1190, v_Y1191], interp) }) }, vec![v_Y1190], interp) }) }, Vec::new(), interp) }; - rt::cons(&__t5431, &__t5438) - }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5439])? - }; - { - let _ = { - let __t5447 = { let __t5440 = Value::sym(interp.intern("call")); let __t5446 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1185 = args[0].clone(); Ok({ let v_Y1185 = v_Y1185.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1186 = args[0].clone(); Ok({ let v_Y1185 = v_Y1185.clone(); let v_Y1186 = v_Y1186.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1187 = args[0].clone(); Ok({ let v_Y1185 = v_Y1185.clone(); let v_Y1186 = v_Y1186.clone(); let v_Y1187 = v_Y1187.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1188 = args[0].clone(); Ok({ let v_Y1185 = v_Y1185.clone(); let v_Y1186 = v_Y1186.clone(); let v_Y1187 = v_Y1187.clone(); let v_Y1188 = v_Y1188.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1189 = args[0].clone(); Ok({ let __t5441 = v_Y1185.clone(); let __t5442 = v_Y1186.clone(); let __t5443 = v_Y1187.clone(); let __t5444 = v_Y1188.clone(); let __t5445 = v_Y1189.clone(); rt::apply_direct(interp, "call", &[__t5441, __t5442, __t5443, __t5444, __t5445])? }) }, vec![v_Y1185, v_Y1186, v_Y1187, v_Y1188], interp) }) }, vec![v_Y1185, v_Y1186, v_Y1187], interp) }) }, vec![v_Y1185, v_Y1186], interp) }) }, vec![v_Y1185], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5440, &__t5446) }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5447])? - }; - { - let _ = { let __t5451 = { let __t5448 = Value::sym(interp.intern("cd")); let __t5450 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1184 = args[0].clone(); Ok({ let __t5449 = v_Y1184.clone(); rt::apply_direct(interp, "cd", &[__t5449])? }) }, Vec::new(), interp) }; rt::cons(&__t5448, &__t5450) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5451])? }; - { - let _ = { let __t5456 = { let __t5452 = Value::sym(interp.intern("compile")); let __t5455 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1182 = args[0].clone(); Ok({ let v_Y1182 = v_Y1182.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1183 = args[0].clone(); Ok({ let __t5453 = v_Y1182.clone(); let __t5454 = v_Y1183.clone(); rt::apply_direct(interp, "compile", &[__t5453, __t5454])? }) }, vec![v_Y1182], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5452, &__t5455) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5456])? }; - { - let _ = { let __t5461 = { let __t5457 = Value::sym(interp.intern("concat")); let __t5460 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1180 = args[0].clone(); Ok({ let v_Y1180 = v_Y1180.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1181 = args[0].clone(); Ok({ let __t5458 = v_Y1180.clone(); let __t5459 = v_Y1181.clone(); rt::apply_direct(interp, "concat", &[__t5458, __t5459])? }) }, vec![v_Y1180], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5457, &__t5460) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5461])? }; - { - let _ = { let __t5466 = { let __t5462 = Value::sym(interp.intern("cons")); let __t5465 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1178 = args[0].clone(); Ok({ let v_Y1178 = v_Y1178.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1179 = args[0].clone(); Ok({ let __t5463 = v_Y1178.clone(); let __t5464 = v_Y1179.clone(); rt::cons(&__t5463, &__t5464) }) }, vec![v_Y1178], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5462, &__t5465) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5466])? }; - { - let _ = { let __t5470 = { let __t5467 = Value::sym(interp.intern("cons?")); let __t5469 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1177 = args[0].clone(); Ok({ let __t5468 = v_Y1177.clone(); rt::is_cons(&__t5468) }) }, Vec::new(), interp) }; rt::cons(&__t5467, &__t5469) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5470])? }; - { - let _ = { let __t5475 = { let __t5471 = Value::sym(interp.intern("cn")); let __t5474 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1175 = args[0].clone(); Ok({ let v_Y1175 = v_Y1175.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1176 = args[0].clone(); Ok({ let __t5472 = v_Y1175.clone(); let __t5473 = v_Y1176.clone(); rt::apply_direct(interp, "cn", &[__t5472, __t5473])? }) }, vec![v_Y1175], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5471, &__t5474) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5475])? }; - { - let _ = { let __t5479 = { let __t5476 = Value::sym(interp.intern("close")); let __t5478 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1174 = args[0].clone(); Ok({ let __t5477 = v_Y1174.clone(); rt::apply_direct(interp, "close", &[__t5477])? }) }, Vec::new(), interp) }; rt::cons(&__t5476, &__t5478) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5479])? }; - { - let _ = { let __t5484 = { let __t5480 = Value::sym(interp.intern("declare")); let __t5483 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1172 = args[0].clone(); Ok({ let v_Y1172 = v_Y1172.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1173 = args[0].clone(); Ok({ let __t5481 = v_Y1172.clone(); let __t5482 = v_Y1173.clone(); rt::apply_direct(interp, "declare", &[__t5481, __t5482])? }) }, vec![v_Y1172], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5480, &__t5483) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5484])? }; - { - let _ = { let __t5488 = { let __t5485 = Value::sym(interp.intern("destroy")); let __t5487 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1171 = args[0].clone(); Ok({ let __t5486 = v_Y1171.clone(); rt::apply_direct(interp, "destroy", &[__t5486])? }) }, Vec::new(), interp) }; rt::cons(&__t5485, &__t5487) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5488])? }; - { - let _ = { let __t5493 = { let __t5489 = Value::sym(interp.intern("difference")); let __t5492 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1169 = args[0].clone(); Ok({ let v_Y1169 = v_Y1169.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1170 = args[0].clone(); Ok({ let __t5490 = v_Y1169.clone(); let __t5491 = v_Y1170.clone(); rt::apply_direct(interp, "difference", &[__t5490, __t5491])? }) }, vec![v_Y1169], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5489, &__t5492) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5493])? }; - { - let _ = { let __t5496 = { let __t5494 = Value::sym(interp.intern("do")); let __t5495 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1167 = args[0].clone(); Ok({ let v_Y1167 = v_Y1167.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1168 = args[0].clone(); Ok({ let _ = v_Y1167.clone(); v_Y1168.clone() }) }, vec![v_Y1167], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5494, &__t5495) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5496])? }; - { - let _ = { let __t5501 = { let __t5497 = Value::sym(interp.intern("element?")); let __t5500 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1165 = args[0].clone(); Ok({ let v_Y1165 = v_Y1165.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1166 = args[0].clone(); Ok({ let __t5498 = v_Y1165.clone(); let __t5499 = v_Y1166.clone(); rt::apply_direct(interp, "element?", &[__t5498, __t5499])? }) }, vec![v_Y1165], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5497, &__t5500) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5501])? }; - { - let _ = { let __t5505 = { let __t5502 = Value::sym(interp.intern("empty?")); let __t5504 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1164 = args[0].clone(); Ok({ let __t5503 = v_Y1164.clone(); rt::apply_direct(interp, "empty?", &[__t5503])? }) }, Vec::new(), interp) }; rt::cons(&__t5502, &__t5504) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5505])? }; - { - let _ = { let __t5509 = { let __t5506 = Value::sym(interp.intern("enable-type-theory")); let __t5508 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1163 = args[0].clone(); Ok({ let __t5507 = v_Y1163.clone(); rt::apply_direct(interp, "enable-type-theory", &[__t5507])? }) }, Vec::new(), interp) }; rt::cons(&__t5506, &__t5508) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5509])? }; - { - let _ = { let __t5513 = { let __t5510 = Value::sym(interp.intern("external")); let __t5512 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1162 = args[0].clone(); Ok({ let __t5511 = v_Y1162.clone(); rt::apply_direct(interp, "external", &[__t5511])? }) }, Vec::new(), interp) }; rt::cons(&__t5510, &__t5512) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5513])? }; - { - let _ = { let __t5517 = { let __t5514 = Value::sym(interp.intern("error-to-string")); let __t5516 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1161 = args[0].clone(); Ok({ let __t5515 = v_Y1161.clone(); rt::apply_direct(interp, "error-to-string", &[__t5515])? }) }, Vec::new(), interp) }; rt::cons(&__t5514, &__t5516) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5517])? }; - { - let _ = { let __t5521 = { let __t5518 = Value::sym(interp.intern("eval")); let __t5520 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1160 = args[0].clone(); Ok({ let __t5519 = v_Y1160.clone(); rt::apply_direct(interp, "eval", &[__t5519])? }) }, Vec::new(), interp) }; rt::cons(&__t5518, &__t5520) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5521])? }; - { - let _ = { let __t5525 = { let __t5522 = Value::sym(interp.intern("eval-kl")); let __t5524 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1159 = args[0].clone(); Ok({ let __t5523 = v_Y1159.clone(); rt::apply_direct(interp, "eval-kl", &[__t5523])? }) }, Vec::new(), interp) }; rt::cons(&__t5522, &__t5524) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5525])? }; - { - let _ = { let __t5529 = { let __t5526 = Value::sym(interp.intern("explode")); let __t5528 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1158 = args[0].clone(); Ok({ let __t5527 = v_Y1158.clone(); rt::apply_direct(interp, "explode", &[__t5527])? }) }, Vec::new(), interp) }; rt::cons(&__t5526, &__t5528) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5529])? }; - { - let _ = { let __t5533 = { let __t5530 = Value::sym(interp.intern("external")); let __t5532 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1157 = args[0].clone(); Ok({ let __t5531 = v_Y1157.clone(); rt::apply_direct(interp, "external", &[__t5531])? }) }, Vec::new(), interp) }; rt::cons(&__t5530, &__t5532) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5533])? }; - { - let _ = { let __t5537 = { let __t5534 = Value::sym(interp.intern("factorise")); let __t5536 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1156 = args[0].clone(); Ok({ let __t5535 = v_Y1156.clone(); rt::apply_direct(interp, "factorise", &[__t5535])? }) }, Vec::new(), interp) }; rt::cons(&__t5534, &__t5536) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5537])? }; - { - let _ = { let __t5542 = { let __t5538 = Value::sym(interp.intern("fail-if")); let __t5541 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1154 = args[0].clone(); Ok({ let v_Y1154 = v_Y1154.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1155 = args[0].clone(); Ok({ let __t5539 = v_Y1154.clone(); let __t5540 = v_Y1155.clone(); rt::apply_direct(interp, "fail-if", &[__t5539, __t5540])? }) }, vec![v_Y1154], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5538, &__t5541) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5542])? }; - { - let _ = { let __t5547 = { let __t5543 = Value::sym(interp.intern("fix")); let __t5546 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1152 = args[0].clone(); Ok({ let v_Y1152 = v_Y1152.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1153 = args[0].clone(); Ok({ let __t5544 = v_Y1152.clone(); let __t5545 = v_Y1153.clone(); rt::apply_direct(interp, "fix", &[__t5544, __t5545])? }) }, vec![v_Y1152], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5543, &__t5546) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5547])? }; - { - let _ = { let __t5557 = { let __t5548 = Value::sym(interp.intern("findall")); let __t5556 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1145 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1146 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); let v_Y1146 = v_Y1146.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1147 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); let v_Y1146 = v_Y1146.clone(); let v_Y1147 = v_Y1147.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1148 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); let v_Y1146 = v_Y1146.clone(); let v_Y1147 = v_Y1147.clone(); let v_Y1148 = v_Y1148.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1149 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); let v_Y1146 = v_Y1146.clone(); let v_Y1147 = v_Y1147.clone(); let v_Y1148 = v_Y1148.clone(); let v_Y1149 = v_Y1149.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1150 = args[0].clone(); Ok({ let v_Y1145 = v_Y1145.clone(); let v_Y1146 = v_Y1146.clone(); let v_Y1147 = v_Y1147.clone(); let v_Y1148 = v_Y1148.clone(); let v_Y1149 = v_Y1149.clone(); let v_Y1150 = v_Y1150.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1151 = args[0].clone(); Ok({ let __t5549 = v_Y1145.clone(); let __t5550 = v_Y1146.clone(); let __t5551 = v_Y1147.clone(); let __t5552 = v_Y1148.clone(); let __t5553 = v_Y1149.clone(); let __t5554 = v_Y1150.clone(); let __t5555 = v_Y1151.clone(); rt::apply_direct(interp, "findall", &[__t5549, __t5550, __t5551, __t5552, __t5553, __t5554, __t5555])? }) }, vec![v_Y1145, v_Y1146, v_Y1147, v_Y1148, v_Y1149, v_Y1150], interp) }) }, vec![v_Y1145, v_Y1146, v_Y1147, v_Y1148, v_Y1149], interp) }) }, vec![v_Y1145, v_Y1146, v_Y1147, v_Y1148], interp) }) }, vec![v_Y1145, v_Y1146, v_Y1147], interp) }) }, vec![v_Y1145, v_Y1146], interp) }) }, vec![v_Y1145], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5548, &__t5556) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5557])? }; - { - let _ = { let __t5565 = { let __t5558 = Value::sym(interp.intern("fork")); let __t5564 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1140 = args[0].clone(); Ok({ let v_Y1140 = v_Y1140.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1141 = args[0].clone(); Ok({ let v_Y1140 = v_Y1140.clone(); let v_Y1141 = v_Y1141.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1142 = args[0].clone(); Ok({ let v_Y1140 = v_Y1140.clone(); let v_Y1141 = v_Y1141.clone(); let v_Y1142 = v_Y1142.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1143 = args[0].clone(); Ok({ let v_Y1140 = v_Y1140.clone(); let v_Y1141 = v_Y1141.clone(); let v_Y1142 = v_Y1142.clone(); let v_Y1143 = v_Y1143.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1144 = args[0].clone(); Ok({ let __t5559 = v_Y1140.clone(); let __t5560 = v_Y1141.clone(); let __t5561 = v_Y1142.clone(); let __t5562 = v_Y1143.clone(); let __t5563 = v_Y1144.clone(); rt::apply_direct(interp, "fork", &[__t5559, __t5560, __t5561, __t5562, __t5563])? }) }, vec![v_Y1140, v_Y1141, v_Y1142, v_Y1143], interp) }) }, vec![v_Y1140, v_Y1141, v_Y1142], interp) }) }, vec![v_Y1140, v_Y1141], interp) }) }, vec![v_Y1140], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5558, &__t5564) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5565])? }; - { - let _ = { let __t5568 = { let __t5566 = Value::sym(interp.intern("freeze")); let __t5567 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1139 = args[0].clone(); Ok({ let v_Y1139 = v_Y1139.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok(v_Y1139.clone()), vec![v_Y1139], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5566, &__t5567) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5568])? }; - { - let _ = { let __t5572 = { let __t5569 = Value::sym(interp.intern("fst")); let __t5571 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1138 = args[0].clone(); Ok({ let __t5570 = v_Y1138.clone(); rt::apply_direct(interp, "fst", &[__t5570])? }) }, Vec::new(), interp) }; rt::cons(&__t5569, &__t5571) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5572])? }; - { - let _ = { let __t5576 = { let __t5573 = Value::sym(interp.intern("fn")); let __t5575 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1137 = args[0].clone(); Ok({ let __t5574 = v_Y1137.clone(); rt::apply_direct(interp, "fn", &[__t5574])? }) }, Vec::new(), interp) }; rt::cons(&__t5573, &__t5575) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5576])? }; - { - let _ = { let __t5580 = { let __t5577 = Value::sym(interp.intern("function")); let __t5579 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1136 = args[0].clone(); Ok({ let __t5578 = v_Y1136.clone(); rt::apply_direct(interp, "function", &[__t5578])? }) }, Vec::new(), interp) }; rt::cons(&__t5577, &__t5579) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5580])? }; - { - let _ = { let __t5584 = { let __t5581 = Value::sym(interp.intern("gensym")); let __t5583 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1135 = args[0].clone(); Ok({ let __t5582 = v_Y1135.clone(); rt::apply_direct(interp, "gensym", &[__t5582])? }) }, Vec::new(), interp) }; rt::cons(&__t5581, &__t5583) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5584])? }; - { - let _ = { let __t5590 = { let __t5585 = Value::sym(interp.intern("get")); let __t5589 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1132 = args[0].clone(); Ok({ let v_Y1132 = v_Y1132.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1133 = args[0].clone(); Ok({ let v_Y1132 = v_Y1132.clone(); let v_Y1133 = v_Y1133.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1134 = args[0].clone(); Ok({ let __t5586 = v_Y1132.clone(); let __t5587 = v_Y1133.clone(); let __t5588 = v_Y1134.clone(); rt::apply_direct(interp, "get", &[__t5586, __t5587, __t5588])? }) }, vec![v_Y1132, v_Y1133], interp) }) }, vec![v_Y1132], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5585, &__t5589) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5590])? }; - { - let _ = { let __t5594 = { let __t5591 = Value::sym(interp.intern("get-time")); let __t5593 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1131 = args[0].clone(); Ok({ let __t5592 = v_Y1131.clone(); rt::apply_direct(interp, "get-time", &[__t5592])? }) }, Vec::new(), interp) }; rt::cons(&__t5591, &__t5593) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5594])? }; - { - let _ = { let __t5600 = { let __t5595 = Value::sym(interp.intern("address->")); let __t5599 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1128 = args[0].clone(); Ok({ let v_Y1128 = v_Y1128.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1129 = args[0].clone(); Ok({ let v_Y1128 = v_Y1128.clone(); let v_Y1129 = v_Y1129.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1130 = args[0].clone(); Ok({ let __t5596 = v_Y1128.clone(); let __t5597 = v_Y1129.clone(); let __t5598 = v_Y1130.clone(); rt::apply_direct(interp, "address->", &[__t5596, __t5597, __t5598])? }) }, vec![v_Y1128, v_Y1129], interp) }) }, vec![v_Y1128], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5595, &__t5599) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5600])? }; - { - let _ = { let __t5605 = { let __t5601 = Value::sym(interp.intern("<-address")); let __t5604 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1126 = args[0].clone(); Ok({ let v_Y1126 = v_Y1126.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1127 = args[0].clone(); Ok({ let __t5602 = v_Y1126.clone(); let __t5603 = v_Y1127.clone(); rt::apply_direct(interp, "<-address", &[__t5602, __t5603])? }) }, vec![v_Y1126], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5601, &__t5604) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5605])? }; - { - let _ = { let __t5610 = { let __t5606 = Value::sym(interp.intern("<-vector")); let __t5609 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1124 = args[0].clone(); Ok({ let v_Y1124 = v_Y1124.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1125 = args[0].clone(); Ok({ let __t5607 = v_Y1124.clone(); let __t5608 = v_Y1125.clone(); rt::apply_direct(interp, "<-vector", &[__t5607, __t5608])? }) }, vec![v_Y1124], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5606, &__t5609) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5610])? }; - { - let _ = { let __t5615 = { let __t5611 = Value::sym(interp.intern(">")); let __t5614 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1122 = args[0].clone(); Ok({ let v_Y1122 = v_Y1122.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1123 = args[0].clone(); Ok({ let __t5612 = v_Y1122.clone(); let __t5613 = v_Y1123.clone(); rt::gt(&__t5612, &__t5613)? }) }, vec![v_Y1122], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5611, &__t5614) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5615])? }; - { - let _ = { let __t5620 = { let __t5616 = Value::sym(interp.intern(">=")); let __t5619 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1120 = args[0].clone(); Ok({ let v_Y1120 = v_Y1120.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1121 = args[0].clone(); Ok({ let __t5617 = v_Y1120.clone(); let __t5618 = v_Y1121.clone(); rt::gte(&__t5617, &__t5618)? }) }, vec![v_Y1120], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5616, &__t5619) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5620])? }; - { - let _ = { let __t5625 = { let __t5621 = Value::sym(interp.intern("=")); let __t5624 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1118 = args[0].clone(); Ok({ let v_Y1118 = v_Y1118.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1119 = args[0].clone(); Ok({ let __t5622 = v_Y1118.clone(); let __t5623 = v_Y1119.clone(); rt::eq(&__t5622, &__t5623) }) }, vec![v_Y1118], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5621, &__t5624) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5625])? }; - { - let _ = { let __t5630 = { let __t5626 = Value::sym(interp.intern("hash")); let __t5629 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1116 = args[0].clone(); Ok({ let v_Y1116 = v_Y1116.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1117 = args[0].clone(); Ok({ let __t5627 = v_Y1116.clone(); let __t5628 = v_Y1117.clone(); rt::apply_direct(interp, "hash", &[__t5627, __t5628])? }) }, vec![v_Y1116], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5626, &__t5629) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5630])? }; - { - let _ = { let __t5634 = { let __t5631 = Value::sym(interp.intern("hd")); let __t5633 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1115 = args[0].clone(); Ok({ let __t5632 = v_Y1115.clone(); rt::hd(&__t5632)? }) }, Vec::new(), interp) }; rt::cons(&__t5631, &__t5633) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5634])? }; - { - let _ = { let __t5638 = { let __t5635 = Value::sym(interp.intern("hdv")); let __t5637 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1114 = args[0].clone(); Ok({ let __t5636 = v_Y1114.clone(); rt::apply_direct(interp, "hdv", &[__t5636])? }) }, Vec::new(), interp) }; rt::cons(&__t5635, &__t5637) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5638])? }; - { - let _ = { let __t5642 = { let __t5639 = Value::sym(interp.intern("hdstr")); let __t5641 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1113 = args[0].clone(); Ok({ let __t5640 = v_Y1113.clone(); rt::apply_direct(interp, "hdstr", &[__t5640])? }) }, Vec::new(), interp) }; rt::cons(&__t5639, &__t5641) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5642])? }; - { - let _ = { let __t5646 = { let __t5643 = Value::sym(interp.intern("head")); let __t5645 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1112 = args[0].clone(); Ok({ let __t5644 = v_Y1112.clone(); rt::apply_direct(interp, "head", &[__t5644])? }) }, Vec::new(), interp) }; rt::cons(&__t5643, &__t5645) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5646])? }; - { - let _ = { let __t5650 = { let __t5647 = Value::sym(interp.intern("hush")); let __t5649 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1111 = args[0].clone(); Ok({ let __t5648 = v_Y1111.clone(); rt::apply_direct(interp, "hush", &[__t5648])? }) }, Vec::new(), interp) }; rt::cons(&__t5647, &__t5649) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5650])? }; - { - let _ = { let __t5654 = { let __t5651 = Value::sym(interp.intern("if")); let __t5653 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1108 = args[0].clone(); Ok({ let v_Y1108 = v_Y1108.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1109 = args[0].clone(); Ok({ let v_Y1108 = v_Y1108.clone(); let v_Y1109 = v_Y1109.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1110 = args[0].clone(); Ok({ let __t5652 = v_Y1108.clone(); if rt::is_truthy(interp, &__t5652)? { v_Y1109.clone() } else { v_Y1110.clone() } }) }, vec![v_Y1108, v_Y1109], interp) }) }, vec![v_Y1108], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5651, &__t5653) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5654])? }; - { - let _ = { let __t5658 = { let __t5655 = Value::sym(interp.intern("include")); let __t5657 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1107 = args[0].clone(); Ok({ let __t5656 = v_Y1107.clone(); rt::apply_direct(interp, "include", &[__t5656])? }) }, Vec::new(), interp) }; rt::cons(&__t5655, &__t5657) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5658])? }; - { - let _ = { let __t5662 = { let __t5659 = Value::sym(interp.intern("in-package")); let __t5661 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1106 = args[0].clone(); Ok({ let __t5660 = v_Y1106.clone(); rt::apply_direct(interp, "in-package", &[__t5660])? }) }, Vec::new(), interp) }; rt::cons(&__t5659, &__t5661) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5662])? }; - { - let _ = { let __t5666 = { let __t5663 = Value::sym(interp.intern("integer?")); let __t5665 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1105 = args[0].clone(); Ok({ let __t5664 = v_Y1105.clone(); rt::apply_direct(interp, "integer?", &[__t5664])? }) }, Vec::new(), interp) }; rt::cons(&__t5663, &__t5665) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5666])? }; - { - let _ = { let __t5670 = { let __t5667 = Value::sym(interp.intern("internal")); let __t5669 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1104 = args[0].clone(); Ok({ let __t5668 = v_Y1104.clone(); rt::apply_direct(interp, "internal", &[__t5668])? }) }, Vec::new(), interp) }; rt::cons(&__t5667, &__t5669) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5670])? }; - { - let _ = { let __t5674 = { let __t5671 = Value::sym(interp.intern("intern")); let __t5673 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1103 = args[0].clone(); Ok({ let __t5672 = v_Y1103.clone(); rt::apply_direct(interp, "intern", &[__t5672])? }) }, Vec::new(), interp) }; rt::cons(&__t5671, &__t5673) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5674])? }; - { - let _ = { let __t5678 = { let __t5675 = Value::sym(interp.intern("input")); let __t5677 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1102 = args[0].clone(); Ok({ let __t5676 = v_Y1102.clone(); rt::apply_direct(interp, "input", &[__t5676])? }) }, Vec::new(), interp) }; rt::cons(&__t5675, &__t5677) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5678])? }; - { - let _ = { let __t5683 = { let __t5679 = Value::sym(interp.intern("input+")); let __t5682 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1100 = args[0].clone(); Ok({ let v_Y1100 = v_Y1100.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1101 = args[0].clone(); Ok({ let __t5680 = v_Y1100.clone(); let __t5681 = v_Y1101.clone(); rt::apply_direct(interp, "input+", &[__t5680, __t5681])? }) }, vec![v_Y1100], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5679, &__t5682) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5683])? }; - { - let _ = { let __t5687 = { let __t5684 = Value::sym(interp.intern("include-all-but")); let __t5686 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1099 = args[0].clone(); Ok({ let __t5685 = v_Y1099.clone(); rt::apply_direct(interp, "include-all-but", &[__t5685])? }) }, Vec::new(), interp) }; rt::cons(&__t5684, &__t5686) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5687])? }; - { - let _ = { let __t5692 = { let __t5688 = Value::sym(interp.intern("intersection")); let __t5691 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1097 = args[0].clone(); Ok({ let v_Y1097 = v_Y1097.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1098 = args[0].clone(); Ok({ let __t5689 = v_Y1097.clone(); let __t5690 = v_Y1098.clone(); rt::apply_direct(interp, "intersection", &[__t5689, __t5690])? }) }, vec![v_Y1097], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5688, &__t5691) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5692])? }; - { - let _ = { let __t5696 = { let __t5693 = Value::sym(interp.intern("internal")); let __t5695 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1096 = args[0].clone(); Ok({ let __t5694 = v_Y1096.clone(); rt::apply_direct(interp, "internal", &[__t5694])? }) }, Vec::new(), interp) }; rt::cons(&__t5693, &__t5695) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5696])? }; - { - let _ = { let __t5705 = { let __t5697 = Value::sym(interp.intern("is")); let __t5704 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1090 = args[0].clone(); Ok({ let v_Y1090 = v_Y1090.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1091 = args[0].clone(); Ok({ let v_Y1090 = v_Y1090.clone(); let v_Y1091 = v_Y1091.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1092 = args[0].clone(); Ok({ let v_Y1090 = v_Y1090.clone(); let v_Y1091 = v_Y1091.clone(); let v_Y1092 = v_Y1092.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1093 = args[0].clone(); Ok({ let v_Y1090 = v_Y1090.clone(); let v_Y1091 = v_Y1091.clone(); let v_Y1092 = v_Y1092.clone(); let v_Y1093 = v_Y1093.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1094 = args[0].clone(); Ok({ let v_Y1090 = v_Y1090.clone(); let v_Y1091 = v_Y1091.clone(); let v_Y1092 = v_Y1092.clone(); let v_Y1093 = v_Y1093.clone(); let v_Y1094 = v_Y1094.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1095 = args[0].clone(); Ok({ let __t5698 = v_Y1090.clone(); let __t5699 = v_Y1091.clone(); let __t5700 = v_Y1092.clone(); let __t5701 = v_Y1093.clone(); let __t5702 = v_Y1094.clone(); let __t5703 = v_Y1095.clone(); rt::apply_direct(interp, "is", &[__t5698, __t5699, __t5700, __t5701, __t5702, __t5703])? }) }, vec![v_Y1090, v_Y1091, v_Y1092, v_Y1093, v_Y1094], interp) }) }, vec![v_Y1090, v_Y1091, v_Y1092, v_Y1093], interp) }) }, vec![v_Y1090, v_Y1091, v_Y1092], interp) }) }, vec![v_Y1090, v_Y1091], interp) }) }, vec![v_Y1090], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5697, &__t5704) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5705])? }; - { - let _ = { let __t5714 = { let __t5706 = Value::sym(interp.intern("is!")); let __t5713 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1084 = args[0].clone(); Ok({ let v_Y1084 = v_Y1084.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1085 = args[0].clone(); Ok({ let v_Y1084 = v_Y1084.clone(); let v_Y1085 = v_Y1085.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1086 = args[0].clone(); Ok({ let v_Y1084 = v_Y1084.clone(); let v_Y1085 = v_Y1085.clone(); let v_Y1086 = v_Y1086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1087 = args[0].clone(); Ok({ let v_Y1084 = v_Y1084.clone(); let v_Y1085 = v_Y1085.clone(); let v_Y1086 = v_Y1086.clone(); let v_Y1087 = v_Y1087.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1088 = args[0].clone(); Ok({ let v_Y1084 = v_Y1084.clone(); let v_Y1085 = v_Y1085.clone(); let v_Y1086 = v_Y1086.clone(); let v_Y1087 = v_Y1087.clone(); let v_Y1088 = v_Y1088.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1089 = args[0].clone(); Ok({ let __t5707 = v_Y1084.clone(); let __t5708 = v_Y1085.clone(); let __t5709 = v_Y1086.clone(); let __t5710 = v_Y1087.clone(); let __t5711 = v_Y1088.clone(); let __t5712 = v_Y1089.clone(); rt::apply_direct(interp, "is!", &[__t5707, __t5708, __t5709, __t5710, __t5711, __t5712])? }) }, vec![v_Y1084, v_Y1085, v_Y1086, v_Y1087, v_Y1088], interp) }) }, vec![v_Y1084, v_Y1085, v_Y1086, v_Y1087], interp) }) }, vec![v_Y1084, v_Y1085, v_Y1086], interp) }) }, vec![v_Y1084, v_Y1085], interp) }) }, vec![v_Y1084], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5706, &__t5713) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5714])? }; - { - let _ = { let __t5718 = { let __t5715 = Value::sym(interp.intern("length")); let __t5717 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1083 = args[0].clone(); Ok({ let __t5716 = v_Y1083.clone(); rt::apply_direct(interp, "length", &[__t5716])? }) }, Vec::new(), interp) }; rt::cons(&__t5715, &__t5717) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5718])? }; - { - let _ = { let __t5722 = { let __t5719 = Value::sym(interp.intern("limit")); let __t5721 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1082 = args[0].clone(); Ok({ let __t5720 = v_Y1082.clone(); rt::apply_direct(interp, "limit", &[__t5720])? }) }, Vec::new(), interp) }; rt::cons(&__t5719, &__t5721) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5722])? }; - { - let _ = { let __t5726 = { let __t5723 = Value::sym(interp.intern("lineread")); let __t5725 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1081 = args[0].clone(); Ok({ let __t5724 = v_Y1081.clone(); rt::apply_direct(interp, "lineread", &[__t5724])? }) }, Vec::new(), interp) }; rt::cons(&__t5723, &__t5725) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5726])? }; - { - let _ = { let __t5730 = { let __t5727 = Value::sym(interp.intern("load")); let __t5729 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1080 = args[0].clone(); Ok({ let __t5728 = v_Y1080.clone(); rt::apply_direct(interp, "load", &[__t5728])? }) }, Vec::new(), interp) }; rt::cons(&__t5727, &__t5729) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5730])? }; - { - let _ = { let __t5735 = { let __t5731 = Value::sym(interp.intern("<")); let __t5734 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1078 = args[0].clone(); Ok({ let v_Y1078 = v_Y1078.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1079 = args[0].clone(); Ok({ let __t5732 = v_Y1078.clone(); let __t5733 = v_Y1079.clone(); rt::lt(&__t5732, &__t5733)? }) }, vec![v_Y1078], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5731, &__t5734) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5735])? }; - { - let _ = { let __t5740 = { let __t5736 = Value::sym(interp.intern("<=")); let __t5739 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1076 = args[0].clone(); Ok({ let v_Y1076 = v_Y1076.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1077 = args[0].clone(); Ok({ let __t5737 = v_Y1076.clone(); let __t5738 = v_Y1077.clone(); rt::lte(&__t5737, &__t5738)? }) }, vec![v_Y1076], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5736, &__t5739) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5740])? }; - { - let _ = { let __t5744 = { let __t5741 = Value::sym(interp.intern("vector")); let __t5743 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1075 = args[0].clone(); Ok({ let __t5742 = v_Y1075.clone(); rt::apply_direct(interp, "vector", &[__t5742])? }) }, Vec::new(), interp) }; rt::cons(&__t5741, &__t5743) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5744])? }; - { - let _ = { let __t5748 = { let __t5745 = Value::sym(interp.intern("macroexpand")); let __t5747 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1074 = args[0].clone(); Ok({ let __t5746 = v_Y1074.clone(); rt::apply_direct(interp, "macroexpand", &[__t5746])? }) }, Vec::new(), interp) }; rt::cons(&__t5745, &__t5747) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5748])? }; - { - let _ = { let __t5753 = { let __t5749 = Value::sym(interp.intern("map")); let __t5752 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1072 = args[0].clone(); Ok({ let v_Y1072 = v_Y1072.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1073 = args[0].clone(); Ok({ let __t5750 = v_Y1072.clone(); let __t5751 = v_Y1073.clone(); rt::apply_direct(interp, "map", &[__t5750, __t5751])? }) }, vec![v_Y1072], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5749, &__t5752) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5753])? }; - { - let _ = { let __t5758 = { let __t5754 = Value::sym(interp.intern("mapcan")); let __t5757 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1070 = args[0].clone(); Ok({ let v_Y1070 = v_Y1070.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1071 = args[0].clone(); Ok({ let __t5755 = v_Y1070.clone(); let __t5756 = v_Y1071.clone(); rt::apply_direct(interp, "mapcan", &[__t5755, __t5756])? }) }, vec![v_Y1070], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5754, &__t5757) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5758])? }; - { - let _ = { let __t5762 = { let __t5759 = Value::sym(interp.intern("maxinferences")); let __t5761 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1069 = args[0].clone(); Ok({ let __t5760 = v_Y1069.clone(); rt::apply_direct(interp, "maxinferences", &[__t5760])? }) }, Vec::new(), interp) }; rt::cons(&__t5759, &__t5761) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5762])? }; - { - let _ = { let __t5766 = { let __t5763 = Value::sym(interp.intern("nl")); let __t5765 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1068 = args[0].clone(); Ok({ let __t5764 = v_Y1068.clone(); rt::apply_direct(interp, "nl", &[__t5764])? }) }, Vec::new(), interp) }; rt::cons(&__t5763, &__t5765) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5766])? }; - { - let _ = { let __t5770 = { let __t5767 = Value::sym(interp.intern("not")); let __t5769 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1067 = args[0].clone(); Ok({ let __t5768 = v_Y1067.clone(); rt::apply_direct(interp, "not", &[__t5768])? }) }, Vec::new(), interp) }; rt::cons(&__t5767, &__t5769) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5770])? }; - { - let _ = { let __t5775 = { let __t5771 = Value::sym(interp.intern("nth")); let __t5774 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1065 = args[0].clone(); Ok({ let v_Y1065 = v_Y1065.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1066 = args[0].clone(); Ok({ let __t5772 = v_Y1065.clone(); let __t5773 = v_Y1066.clone(); rt::apply_direct(interp, "nth", &[__t5772, __t5773])? }) }, vec![v_Y1065], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5771, &__t5774) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5775])? }; - { - let _ = { let __t5779 = { let __t5776 = Value::sym(interp.intern("n->string")); let __t5778 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1064 = args[0].clone(); Ok({ let __t5777 = v_Y1064.clone(); rt::apply_direct(interp, "n->string", &[__t5777])? }) }, Vec::new(), interp) }; rt::cons(&__t5776, &__t5778) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5779])? }; - { - let _ = { let __t5783 = { let __t5780 = Value::sym(interp.intern("number?")); let __t5782 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1063 = args[0].clone(); Ok({ let __t5781 = v_Y1063.clone(); rt::is_number(&__t5781) }) }, Vec::new(), interp) }; rt::cons(&__t5780, &__t5782) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5783])? }; - { - let _ = { let __t5787 = { let __t5784 = Value::sym(interp.intern("occurs-check")); let __t5786 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1062 = args[0].clone(); Ok({ let __t5785 = v_Y1062.clone(); rt::apply_direct(interp, "occurs-check", &[__t5785])? }) }, Vec::new(), interp) }; rt::cons(&__t5784, &__t5786) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5787])? }; - { - let _ = { let __t5792 = { let __t5788 = Value::sym(interp.intern("occurrences")); let __t5791 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1060 = args[0].clone(); Ok({ let v_Y1060 = v_Y1060.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1061 = args[0].clone(); Ok({ let __t5789 = v_Y1060.clone(); let __t5790 = v_Y1061.clone(); rt::apply_direct(interp, "occurrences", &[__t5789, __t5790])? }) }, vec![v_Y1060], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5788, &__t5791) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5792])? }; - { - let _ = { let __t5796 = { let __t5793 = Value::sym(interp.intern("occurs-check")); let __t5795 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1059 = args[0].clone(); Ok({ let __t5794 = v_Y1059.clone(); rt::apply_direct(interp, "occurs-check", &[__t5794])? }) }, Vec::new(), interp) }; rt::cons(&__t5793, &__t5795) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5796])? }; - { - let _ = { let __t5801 = { let __t5797 = Value::sym(interp.intern("open")); let __t5800 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1057 = args[0].clone(); Ok({ let v_Y1057 = v_Y1057.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1058 = args[0].clone(); Ok({ let __t5798 = v_Y1057.clone(); let __t5799 = v_Y1058.clone(); rt::apply_direct(interp, "open", &[__t5798, __t5799])? }) }, vec![v_Y1057], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5797, &__t5800) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5801])? }; - { - let _ = { let __t5805 = { let __t5802 = Value::sym(interp.intern("optimise")); let __t5804 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1056 = args[0].clone(); Ok({ let __t5803 = v_Y1056.clone(); rt::apply_direct(interp, "optimise", &[__t5803])? }) }, Vec::new(), interp) }; rt::cons(&__t5802, &__t5804) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5805])? }; - { - let _ = { let __t5810 = { let __t5806 = Value::sym(interp.intern("or")); let __t5809 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1054 = args[0].clone(); Ok({ let v_Y1054 = v_Y1054.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1055 = args[0].clone(); Ok({ let __t5807 = v_Y1054.clone(); if rt::is_truthy(interp, &__t5807)? { Value::bool(true) } else { let __t5808 = v_Y1055.clone(); Value::bool(rt::is_truthy(interp, &__t5808)?) } }) }, vec![v_Y1054], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5806, &__t5809) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5810])? }; - { - let _ = { let __t5814 = { let __t5811 = Value::sym(interp.intern("package?")); let __t5813 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1053 = args[0].clone(); Ok({ let __t5812 = v_Y1053.clone(); rt::apply_direct(interp, "package?", &[__t5812])? }) }, Vec::new(), interp) }; rt::cons(&__t5811, &__t5813) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5814])? }; - { - let _ = { let __t5819 = { let __t5815 = Value::sym(interp.intern("pos")); let __t5818 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1051 = args[0].clone(); Ok({ let v_Y1051 = v_Y1051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1052 = args[0].clone(); Ok({ let __t5816 = v_Y1051.clone(); let __t5817 = v_Y1052.clone(); rt::apply_direct(interp, "pos", &[__t5816, __t5817])? }) }, vec![v_Y1051], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5815, &__t5818) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5819])? }; - { - let _ = { let __t5823 = { let __t5820 = Value::sym(interp.intern("preclude-all-but")); let __t5822 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1050 = args[0].clone(); Ok({ let __t5821 = v_Y1050.clone(); rt::apply_direct(interp, "preclude-all-but", &[__t5821])? }) }, Vec::new(), interp) }; rt::cons(&__t5820, &__t5822) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5823])? }; - { - let _ = { let __t5827 = { let __t5824 = Value::sym(interp.intern("print")); let __t5826 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1049 = args[0].clone(); Ok({ let __t5825 = v_Y1049.clone(); rt::apply_direct(interp, "print", &[__t5825])? }) }, Vec::new(), interp) }; rt::cons(&__t5824, &__t5826) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5827])? }; - { - let _ = { let __t5831 = { let __t5828 = Value::sym(interp.intern("profile")); let __t5830 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1048 = args[0].clone(); Ok({ let __t5829 = v_Y1048.clone(); rt::apply_direct(interp, "profile", &[__t5829])? }) }, Vec::new(), interp) }; rt::cons(&__t5828, &__t5830) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5831])? }; - { - let _ = { let __t5835 = { let __t5832 = Value::sym(interp.intern("shen.print-prolog-vector")); let __t5834 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1047 = args[0].clone(); Ok({ let __t5833 = v_Y1047.clone(); rt::apply_direct(interp, "shen.print-prolog-vector", &[__t5833])? }) }, Vec::new(), interp) }; rt::cons(&__t5832, &__t5834) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5835])? }; - { - let _ = { let __t5839 = { let __t5836 = Value::sym(interp.intern("shen.print-freshterm")); let __t5838 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1046 = args[0].clone(); Ok({ let __t5837 = v_Y1046.clone(); rt::apply_direct(interp, "shen.print-freshterm", &[__t5837])? }) }, Vec::new(), interp) }; rt::cons(&__t5836, &__t5838) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5839])? }; - { - let _ = { let __t5843 = { let __t5840 = Value::sym(interp.intern("shen.printF")); let __t5842 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1045 = args[0].clone(); Ok({ let __t5841 = v_Y1045.clone(); rt::apply_direct(interp, "shen.printF", &[__t5841])? }) }, Vec::new(), interp) }; rt::cons(&__t5840, &__t5842) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5843])? }; - { - let _ = { let __t5847 = { let __t5844 = Value::sym(interp.intern("prolog-memory")); let __t5846 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1044 = args[0].clone(); Ok({ let __t5845 = v_Y1044.clone(); rt::apply_direct(interp, "prolog-memory", &[__t5845])? }) }, Vec::new(), interp) }; rt::cons(&__t5844, &__t5846) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5847])? }; - { - let _ = { let __t5851 = { let __t5848 = Value::sym(interp.intern("profile-results")); let __t5850 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1043 = args[0].clone(); Ok({ let __t5849 = v_Y1043.clone(); rt::apply_direct(interp, "profile-results", &[__t5849])? }) }, Vec::new(), interp) }; rt::cons(&__t5848, &__t5850) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5851])? }; - { - let _ = { let __t5856 = { let __t5852 = Value::sym(interp.intern("pr")); let __t5855 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1041 = args[0].clone(); Ok({ let v_Y1041 = v_Y1041.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1042 = args[0].clone(); Ok({ let __t5853 = v_Y1041.clone(); let __t5854 = v_Y1042.clone(); rt::apply_direct(interp, "pr", &[__t5853, __t5854])? }) }, vec![v_Y1041], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5852, &__t5855) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5856])? }; - { - let _ = { let __t5860 = { let __t5857 = Value::sym(interp.intern("ps")); let __t5859 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1040 = args[0].clone(); Ok({ let __t5858 = v_Y1040.clone(); rt::apply_direct(interp, "ps", &[__t5858])? }) }, Vec::new(), interp) }; rt::cons(&__t5857, &__t5859) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5860])? }; - { - let _ = { let __t5864 = { let __t5861 = Value::sym(interp.intern("preclude")); let __t5863 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1039 = args[0].clone(); Ok({ let __t5862 = v_Y1039.clone(); rt::apply_direct(interp, "preclude", &[__t5862])? }) }, Vec::new(), interp) }; rt::cons(&__t5861, &__t5863) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5864])? }; - { - let _ = { let __t5868 = { let __t5865 = Value::sym(interp.intern("preclude-all-but")); let __t5867 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1038 = args[0].clone(); Ok({ let __t5866 = v_Y1038.clone(); rt::apply_direct(interp, "preclude-all-but", &[__t5866])? }) }, Vec::new(), interp) }; rt::cons(&__t5865, &__t5867) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5868])? }; - { - let _ = { let __t5872 = { let __t5869 = Value::sym(interp.intern("protect")); let __t5871 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1037 = args[0].clone(); Ok({ let __t5870 = v_Y1037.clone(); rt::apply_direct(interp, "protect", &[__t5870])? }) }, Vec::new(), interp) }; rt::cons(&__t5869, &__t5871) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5872])? }; - { - let _ = { let __t5879 = { let __t5873 = Value::sym(interp.intern("put")); let __t5878 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1033 = args[0].clone(); Ok({ let v_Y1033 = v_Y1033.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1034 = args[0].clone(); Ok({ let v_Y1033 = v_Y1033.clone(); let v_Y1034 = v_Y1034.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1035 = args[0].clone(); Ok({ let v_Y1033 = v_Y1033.clone(); let v_Y1034 = v_Y1034.clone(); let v_Y1035 = v_Y1035.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1036 = args[0].clone(); Ok({ let __t5874 = v_Y1033.clone(); let __t5875 = v_Y1034.clone(); let __t5876 = v_Y1035.clone(); let __t5877 = v_Y1036.clone(); rt::apply_direct(interp, "put", &[__t5874, __t5875, __t5876, __t5877])? }) }, vec![v_Y1033, v_Y1034, v_Y1035], interp) }) }, vec![v_Y1033, v_Y1034], interp) }) }, vec![v_Y1033], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5873, &__t5878) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5879])? }; - { - let _ = { let __t5883 = { let __t5880 = Value::sym(interp.intern("read-file-as-string")); let __t5882 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1032 = args[0].clone(); Ok({ let __t5881 = v_Y1032.clone(); rt::apply_direct(interp, "read-file-as-string", &[__t5881])? }) }, Vec::new(), interp) }; rt::cons(&__t5880, &__t5882) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5883])? }; - { - let _ = { let __t5887 = { let __t5884 = Value::sym(interp.intern("read-file-as-bytelist")); let __t5886 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1031 = args[0].clone(); Ok({ let __t5885 = v_Y1031.clone(); rt::apply_direct(interp, "read-file-as-bytelist", &[__t5885])? }) }, Vec::new(), interp) }; rt::cons(&__t5884, &__t5886) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5887])? }; - { - let _ = { let __t5891 = { let __t5888 = Value::sym(interp.intern("read-file")); let __t5890 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1030 = args[0].clone(); Ok({ let __t5889 = v_Y1030.clone(); rt::apply_direct(interp, "read-file", &[__t5889])? }) }, Vec::new(), interp) }; rt::cons(&__t5888, &__t5890) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5891])? }; - { - let _ = { let __t5895 = { let __t5892 = Value::sym(interp.intern("read")); let __t5894 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1029 = args[0].clone(); Ok({ let __t5893 = v_Y1029.clone(); rt::apply_direct(interp, "read", &[__t5893])? }) }, Vec::new(), interp) }; rt::cons(&__t5892, &__t5894) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5895])? }; - { - let _ = { let __t5899 = { let __t5896 = Value::sym(interp.intern("read-byte")); let __t5898 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1028 = args[0].clone(); Ok({ let __t5897 = v_Y1028.clone(); rt::apply_direct(interp, "read-byte", &[__t5897])? }) }, Vec::new(), interp) }; rt::cons(&__t5896, &__t5898) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5899])? }; - { - let _ = { let __t5903 = { let __t5900 = Value::sym(interp.intern("read-from-string")); let __t5902 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1027 = args[0].clone(); Ok({ let __t5901 = v_Y1027.clone(); rt::apply_direct(interp, "read-from-string", &[__t5901])? }) }, Vec::new(), interp) }; rt::cons(&__t5900, &__t5902) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5903])? }; - { - let _ = { let __t5907 = { let __t5904 = Value::sym(interp.intern("read-from-string-unprocessed")); let __t5906 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1026 = args[0].clone(); Ok({ let __t5905 = v_Y1026.clone(); rt::apply_direct(interp, "read-from-string-unprocessed", &[__t5905])? }) }, Vec::new(), interp) }; rt::cons(&__t5904, &__t5906) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5907])? }; - { - let _ = { let __t5911 = { let __t5908 = Value::sym(interp.intern("shen.read-unit-string")); let __t5910 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1025 = args[0].clone(); Ok({ let __t5909 = v_Y1025.clone(); rt::apply_direct(interp, "shen.read-unit-string", &[__t5909])? }) }, Vec::new(), interp) }; rt::cons(&__t5908, &__t5910) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5911])? }; - { - let _ = { let __t5916 = { let __t5912 = Value::sym(interp.intern("remove")); let __t5915 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1023 = args[0].clone(); Ok({ let v_Y1023 = v_Y1023.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1024 = args[0].clone(); Ok({ let __t5913 = v_Y1023.clone(); let __t5914 = v_Y1024.clone(); rt::apply_direct(interp, "remove", &[__t5913, __t5914])? }) }, vec![v_Y1023], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5912, &__t5915) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5916])? }; - { - let _ = { let __t5920 = { let __t5917 = Value::sym(interp.intern("reverse")); let __t5919 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1022 = args[0].clone(); Ok({ let __t5918 = v_Y1022.clone(); rt::apply_direct(interp, "reverse", &[__t5918])? }) }, Vec::new(), interp) }; rt::cons(&__t5917, &__t5919) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5920])? }; - { - let _ = { let __t5925 = { let __t5921 = Value::sym(interp.intern("set")); let __t5924 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1020 = args[0].clone(); Ok({ let v_Y1020 = v_Y1020.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1021 = args[0].clone(); Ok({ let __t5922 = v_Y1020.clone(); let __t5923 = v_Y1021.clone(); rt::apply_direct(interp, "set", &[__t5922, __t5923])? }) }, vec![v_Y1020], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5921, &__t5924) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5925])? }; - { - let _ = { let __t5929 = { let __t5926 = Value::sym(interp.intern("simple-error")); let __t5928 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1019 = args[0].clone(); Ok({ let __t5927 = v_Y1019.clone(); rt::apply_direct(interp, "simple-error", &[__t5927])? }) }, Vec::new(), interp) }; rt::cons(&__t5926, &__t5928) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5929])? }; - { - let _ = { let __t5933 = { let __t5930 = Value::sym(interp.intern("snd")); let __t5932 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1018 = args[0].clone(); Ok({ let __t5931 = v_Y1018.clone(); rt::apply_direct(interp, "snd", &[__t5931])? }) }, Vec::new(), interp) }; rt::cons(&__t5930, &__t5932) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5933])? }; - { - let _ = { let __t5938 = { let __t5934 = Value::sym(interp.intern("specialise")); let __t5937 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1016 = args[0].clone(); Ok({ let v_Y1016 = v_Y1016.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1017 = args[0].clone(); Ok({ let __t5935 = v_Y1016.clone(); let __t5936 = v_Y1017.clone(); rt::apply_direct(interp, "specialise", &[__t5935, __t5936])? }) }, vec![v_Y1016], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5934, &__t5937) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5938])? }; - { - let _ = { let __t5942 = { let __t5939 = Value::sym(interp.intern("spy")); let __t5941 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1015 = args[0].clone(); Ok({ let __t5940 = v_Y1015.clone(); rt::apply_direct(interp, "spy", &[__t5940])? }) }, Vec::new(), interp) }; rt::cons(&__t5939, &__t5941) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5942])? }; - { - let _ = { let __t5946 = { let __t5943 = Value::sym(interp.intern("step")); let __t5945 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1014 = args[0].clone(); Ok({ let __t5944 = v_Y1014.clone(); rt::apply_direct(interp, "step", &[__t5944])? }) }, Vec::new(), interp) }; rt::cons(&__t5943, &__t5945) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5946])? }; - { - let _ = { let __t5950 = { let __t5947 = Value::sym(interp.intern("str")); let __t5949 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1013 = args[0].clone(); Ok({ let __t5948 = v_Y1013.clone(); rt::apply_direct(interp, "str", &[__t5948])? }) }, Vec::new(), interp) }; rt::cons(&__t5947, &__t5949) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5950])? }; - { - let _ = { let __t5954 = { let __t5951 = Value::sym(interp.intern("string->n")); let __t5953 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1012 = args[0].clone(); Ok({ let __t5952 = v_Y1012.clone(); rt::apply_direct(interp, "string->n", &[__t5952])? }) }, Vec::new(), interp) }; rt::cons(&__t5951, &__t5953) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5954])? }; - { - let _ = { let __t5958 = { let __t5955 = Value::sym(interp.intern("string->symbol")); let __t5957 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1011 = args[0].clone(); Ok({ let __t5956 = v_Y1011.clone(); rt::apply_direct(interp, "string->symbol", &[__t5956])? }) }, Vec::new(), interp) }; rt::cons(&__t5955, &__t5957) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5958])? }; - { - let _ = { let __t5962 = { let __t5959 = Value::sym(interp.intern("string?")); let __t5961 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1010 = args[0].clone(); Ok({ let __t5960 = v_Y1010.clone(); rt::is_string(&__t5960) }) }, Vec::new(), interp) }; rt::cons(&__t5959, &__t5961) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5962])? }; - { - let _ = { let __t5968 = { let __t5963 = Value::sym(interp.intern("subst")); let __t5967 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1007 = args[0].clone(); Ok({ let v_Y1007 = v_Y1007.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1008 = args[0].clone(); Ok({ let v_Y1007 = v_Y1007.clone(); let v_Y1008 = v_Y1008.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y1009 = args[0].clone(); Ok({ let __t5964 = v_Y1007.clone(); let __t5965 = v_Y1008.clone(); let __t5966 = v_Y1009.clone(); rt::apply_direct(interp, "subst", &[__t5964, __t5965, __t5966])? }) }, vec![v_Y1007, v_Y1008], interp) }) }, vec![v_Y1007], interp) }) }, Vec::new(), interp) }; rt::cons(&__t5963, &__t5967) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5968])? }; - { - let _ = { let __t5972 = { let __t5969 = Value::sym(interp.intern("sum")); let __t5971 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1006 = args[0].clone(); Ok({ let __t5970 = v_Y1006.clone(); rt::apply_direct(interp, "sum", &[__t5970])? }) }, Vec::new(), interp) }; rt::cons(&__t5969, &__t5971) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5972])? }; - { - let _ = { let __t5976 = { let __t5973 = Value::sym(interp.intern("symbol?")); let __t5975 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1005 = args[0].clone(); Ok({ let __t5974 = v_Y1005.clone(); rt::is_symbol(&__t5974) }) }, Vec::new(), interp) }; rt::cons(&__t5973, &__t5975) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5976])? }; - { - let _ = { let __t5980 = { let __t5977 = Value::sym(interp.intern("systemf")); let __t5979 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1004 = args[0].clone(); Ok({ let __t5978 = v_Y1004.clone(); rt::apply_direct(interp, "systemf", &[__t5978])? }) }, Vec::new(), interp) }; rt::cons(&__t5977, &__t5979) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5980])? }; - { - let _ = { let __t5984 = { let __t5981 = Value::sym(interp.intern("tail")); let __t5983 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1003 = args[0].clone(); Ok({ let __t5982 = v_Y1003.clone(); rt::apply_direct(interp, "tail", &[__t5982])? }) }, Vec::new(), interp) }; rt::cons(&__t5981, &__t5983) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5984])? }; - { - let _ = { let __t5988 = { let __t5985 = Value::sym(interp.intern("tl")); let __t5987 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1002 = args[0].clone(); Ok({ let __t5986 = v_Y1002.clone(); rt::tl(&__t5986)? }) }, Vec::new(), interp) }; rt::cons(&__t5985, &__t5987) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5988])? }; - { - let _ = { let __t5992 = { let __t5989 = Value::sym(interp.intern("tc")); let __t5991 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1001 = args[0].clone(); Ok({ let __t5990 = v_Y1001.clone(); rt::apply_direct(interp, "tc", &[__t5990])? }) }, Vec::new(), interp) }; rt::cons(&__t5989, &__t5991) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5992])? }; - { - let _ = { let __t5995 = { let __t5993 = Value::sym(interp.intern("thaw")); let __t5994 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y1000 = args[0].clone(); Ok(rt::apply_value(interp, v_Y1000.clone(), &[])?) }, Vec::new(), interp) }; rt::cons(&__t5993, &__t5994) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5995])? }; - { - let _ = { let __t5999 = { let __t5996 = Value::sym(interp.intern("tlstr")); let __t5998 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y999 = args[0].clone(); Ok({ let __t5997 = v_Y999.clone(); rt::apply_direct(interp, "tlstr", &[__t5997])? }) }, Vec::new(), interp) }; rt::cons(&__t5996, &__t5998) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t5999])? }; - { - let _ = { let __t6003 = { let __t6000 = Value::sym(interp.intern("track")); let __t6002 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y998 = args[0].clone(); Ok({ let __t6001 = v_Y998.clone(); rt::apply_direct(interp, "track", &[__t6001])? }) }, Vec::new(), interp) }; rt::cons(&__t6000, &__t6002) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6003])? }; - { - let _ = { let __t6006 = { let __t6004 = Value::sym(interp.intern("trap-error")); let __t6005 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y996 = args[0].clone(); Ok({ let v_Y996 = v_Y996.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y997 = args[0].clone(); Ok(match (|| -> ShenResult { Ok(v_Y996.clone()) })() { Ok(v) => v, Err(e) => { let __h = v_Y997.clone(); let __err = Value::err(e.message.clone()); rt::apply_value(interp, __h, &[__err])? } }) }, vec![v_Y996], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6004, &__t6005) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6006])? }; - { - let _ = { let __t6010 = { let __t6007 = Value::sym(interp.intern("tuple?")); let __t6009 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y995 = args[0].clone(); Ok({ let __t6008 = v_Y995.clone(); rt::apply_direct(interp, "tuple?", &[__t6008])? }) }, Vec::new(), interp) }; rt::cons(&__t6007, &__t6009) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6010])? }; - { - let _ = { let __t6013 = { let __t6011 = Value::sym(interp.intern("type")); let __t6012 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y993 = args[0].clone(); Ok({ let v_Y993 = v_Y993.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y994 = args[0].clone(); Ok(v_Y993.clone()) }, vec![v_Y993], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6011, &__t6012) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6013])? }; - { - let _ = { let __t6021 = { let __t6014 = Value::sym(interp.intern("return")); let __t6020 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y988 = args[0].clone(); Ok({ let v_Y988 = v_Y988.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y989 = args[0].clone(); Ok({ let v_Y988 = v_Y988.clone(); let v_Y989 = v_Y989.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y990 = args[0].clone(); Ok({ let v_Y988 = v_Y988.clone(); let v_Y989 = v_Y989.clone(); let v_Y990 = v_Y990.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y991 = args[0].clone(); Ok({ let v_Y988 = v_Y988.clone(); let v_Y989 = v_Y989.clone(); let v_Y990 = v_Y990.clone(); let v_Y991 = v_Y991.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y992 = args[0].clone(); Ok({ let __t6015 = v_Y988.clone(); let __t6016 = v_Y989.clone(); let __t6017 = v_Y990.clone(); let __t6018 = v_Y991.clone(); let __t6019 = v_Y992.clone(); rt::apply_direct(interp, "return", &[__t6015, __t6016, __t6017, __t6018, __t6019])? }) }, vec![v_Y988, v_Y989, v_Y990, v_Y991], interp) }) }, vec![v_Y988, v_Y989, v_Y990], interp) }) }, vec![v_Y988, v_Y989], interp) }) }, vec![v_Y988], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6014, &__t6020) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6021])? }; - { - let _ = { let __t6025 = { let __t6022 = Value::sym(interp.intern("unabsolute")); let __t6024 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y987 = args[0].clone(); Ok({ let __t6023 = v_Y987.clone(); rt::apply_direct(interp, "unabsolute", &[__t6023])? }) }, Vec::new(), interp) }; rt::cons(&__t6022, &__t6024) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6025])? }; - { - let _ = { let __t6029 = { let __t6026 = Value::sym(interp.intern("undefmacro")); let __t6028 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y986 = args[0].clone(); Ok({ let __t6027 = v_Y986.clone(); rt::apply_direct(interp, "undefmacro", &[__t6027])? }) }, Vec::new(), interp) }; rt::cons(&__t6026, &__t6028) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6029])? }; - { - let _ = { let __t6035 = { let __t6030 = Value::sym(interp.intern("unput")); let __t6034 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y983 = args[0].clone(); Ok({ let v_Y983 = v_Y983.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y984 = args[0].clone(); Ok({ let v_Y983 = v_Y983.clone(); let v_Y984 = v_Y984.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y985 = args[0].clone(); Ok({ let __t6031 = v_Y983.clone(); let __t6032 = v_Y984.clone(); let __t6033 = v_Y985.clone(); rt::apply_direct(interp, "unput", &[__t6031, __t6032, __t6033])? }) }, vec![v_Y983, v_Y984], interp) }) }, vec![v_Y983], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6030, &__t6034) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6035])? }; - { - let _ = { let __t6039 = { let __t6036 = Value::sym(interp.intern("unprofile")); let __t6038 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y982 = args[0].clone(); Ok({ let __t6037 = v_Y982.clone(); rt::apply_direct(interp, "unprofile", &[__t6037])? }) }, Vec::new(), interp) }; rt::cons(&__t6036, &__t6038) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6039])? }; - { - let _ = { let __t6044 = { let __t6040 = Value::sym(interp.intern("union")); let __t6043 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y980 = args[0].clone(); Ok({ let v_Y980 = v_Y980.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y981 = args[0].clone(); Ok({ let __t6041 = v_Y980.clone(); let __t6042 = v_Y981.clone(); rt::apply_direct(interp, "union", &[__t6041, __t6042])? }) }, vec![v_Y980], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6040, &__t6043) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6044])? }; - { - let _ = { let __t6048 = { let __t6045 = Value::sym(interp.intern("untrack")); let __t6047 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y979 = args[0].clone(); Ok({ let __t6046 = v_Y979.clone(); rt::apply_direct(interp, "untrack", &[__t6046])? }) }, Vec::new(), interp) }; rt::cons(&__t6045, &__t6047) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6048])? }; - { - let _ = { let __t6052 = { let __t6049 = Value::sym(interp.intern("undefmacro")); let __t6051 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y978 = args[0].clone(); Ok({ let __t6050 = v_Y978.clone(); rt::apply_direct(interp, "undefmacro", &[__t6050])? }) }, Vec::new(), interp) }; rt::cons(&__t6049, &__t6051) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6052])? }; - { - let _ = { let __t6057 = { let __t6053 = Value::sym(interp.intern("update-lambda-table")); let __t6056 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y976 = args[0].clone(); Ok({ let v_Y976 = v_Y976.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y977 = args[0].clone(); Ok({ let __t6054 = v_Y976.clone(); let __t6055 = v_Y977.clone(); rt::apply_direct(interp, "update-lambda-table", &[__t6054, __t6055])? }) }, vec![v_Y976], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6053, &__t6056) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6057])? }; - { - let _ = { let __t6061 = { let __t6058 = Value::sym(interp.intern("vector")); let __t6060 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y975 = args[0].clone(); Ok({ let __t6059 = v_Y975.clone(); rt::apply_direct(interp, "vector", &[__t6059])? }) }, Vec::new(), interp) }; rt::cons(&__t6058, &__t6060) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6061])? }; - { - let _ = { let __t6065 = { let __t6062 = Value::sym(interp.intern("vector?")); let __t6064 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y974 = args[0].clone(); Ok({ let __t6063 = v_Y974.clone(); rt::is_absvector(&__t6063) }) }, Vec::new(), interp) }; rt::cons(&__t6062, &__t6064) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6065])? }; - { - let _ = { let __t6071 = { let __t6066 = Value::sym(interp.intern("vector->")); let __t6070 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y971 = args[0].clone(); Ok({ let v_Y971 = v_Y971.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y972 = args[0].clone(); Ok({ let v_Y971 = v_Y971.clone(); let v_Y972 = v_Y972.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y973 = args[0].clone(); Ok({ let __t6067 = v_Y971.clone(); let __t6068 = v_Y972.clone(); let __t6069 = v_Y973.clone(); rt::apply_direct(interp, "vector->", &[__t6067, __t6068, __t6069])? }) }, vec![v_Y971, v_Y972], interp) }) }, vec![v_Y971], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6066, &__t6070) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6071])? }; - { - let _ = { let __t6075 = { let __t6072 = Value::sym(interp.intern("value")); let __t6074 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y970 = args[0].clone(); Ok({ let __t6073 = v_Y970.clone(); rt::apply_direct(interp, "value", &[__t6073])? }) }, Vec::new(), interp) }; rt::cons(&__t6072, &__t6074) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6075])? }; - { - let _ = { let __t6079 = { let __t6076 = Value::sym(interp.intern("variable?")); let __t6078 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y969 = args[0].clone(); Ok({ let __t6077 = v_Y969.clone(); rt::apply_direct(interp, "variable?", &[__t6077])? }) }, Vec::new(), interp) }; rt::cons(&__t6076, &__t6078) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6079])? }; - { - let _ = { let __t6087 = { let __t6080 = Value::sym(interp.intern("var?")); let __t6086 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y964 = args[0].clone(); Ok({ let v_Y964 = v_Y964.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y965 = args[0].clone(); Ok({ let v_Y964 = v_Y964.clone(); let v_Y965 = v_Y965.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y966 = args[0].clone(); Ok({ let v_Y964 = v_Y964.clone(); let v_Y965 = v_Y965.clone(); let v_Y966 = v_Y966.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y967 = args[0].clone(); Ok({ let v_Y964 = v_Y964.clone(); let v_Y965 = v_Y965.clone(); let v_Y966 = v_Y966.clone(); let v_Y967 = v_Y967.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y968 = args[0].clone(); Ok({ let __t6081 = v_Y964.clone(); let __t6082 = v_Y965.clone(); let __t6083 = v_Y966.clone(); let __t6084 = v_Y967.clone(); let __t6085 = v_Y968.clone(); rt::apply_direct(interp, "var?", &[__t6081, __t6082, __t6083, __t6084, __t6085])? }) }, vec![v_Y964, v_Y965, v_Y966, v_Y967], interp) }) }, vec![v_Y964, v_Y965, v_Y966], interp) }) }, vec![v_Y964, v_Y965], interp) }) }, vec![v_Y964], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6080, &__t6086) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6087])? }; - { - let _ = { let __t6095 = { let __t6088 = Value::sym(interp.intern("when")); let __t6094 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y959 = args[0].clone(); Ok({ let v_Y959 = v_Y959.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y960 = args[0].clone(); Ok({ let v_Y959 = v_Y959.clone(); let v_Y960 = v_Y960.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y961 = args[0].clone(); Ok({ let v_Y959 = v_Y959.clone(); let v_Y960 = v_Y960.clone(); let v_Y961 = v_Y961.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y962 = args[0].clone(); Ok({ let v_Y959 = v_Y959.clone(); let v_Y960 = v_Y960.clone(); let v_Y961 = v_Y961.clone(); let v_Y962 = v_Y962.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y963 = args[0].clone(); Ok({ let __t6089 = v_Y959.clone(); let __t6090 = v_Y960.clone(); let __t6091 = v_Y961.clone(); let __t6092 = v_Y962.clone(); let __t6093 = v_Y963.clone(); rt::apply_direct(interp, "when", &[__t6089, __t6090, __t6091, __t6092, __t6093])? }) }, vec![v_Y959, v_Y960, v_Y961, v_Y962], interp) }) }, vec![v_Y959, v_Y960, v_Y961], interp) }) }, vec![v_Y959, v_Y960], interp) }) }, vec![v_Y959], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6088, &__t6094) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6095])? }; - { - let _ = { let __t6100 = { let __t6096 = Value::sym(interp.intern("write-byte")); let __t6099 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y957 = args[0].clone(); Ok({ let v_Y957 = v_Y957.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y958 = args[0].clone(); Ok({ let __t6097 = v_Y957.clone(); let __t6098 = v_Y958.clone(); rt::apply_direct(interp, "write-byte", &[__t6097, __t6098])? }) }, vec![v_Y957], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6096, &__t6099) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6100])? }; - { - let _ = { let __t6105 = { let __t6101 = Value::sym(interp.intern("write-to-file")); let __t6104 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y955 = args[0].clone(); Ok({ let v_Y955 = v_Y955.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y956 = args[0].clone(); Ok({ let __t6102 = v_Y955.clone(); let __t6103 = v_Y956.clone(); rt::apply_direct(interp, "write-to-file", &[__t6102, __t6103])? }) }, vec![v_Y955], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6101, &__t6104) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6105])? }; - { - let _ = { let __t6109 = { let __t6106 = Value::sym(interp.intern("y-or-n?")); let __t6108 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y954 = args[0].clone(); Ok({ let __t6107 = v_Y954.clone(); rt::apply_direct(interp, "y-or-n?", &[__t6107])? }) }, Vec::new(), interp) }; rt::cons(&__t6106, &__t6108) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6109])? }; - { - let _ = { let __t6114 = { let __t6110 = Value::sym(interp.intern("+")); let __t6113 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y952 = args[0].clone(); Ok({ let v_Y952 = v_Y952.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y953 = args[0].clone(); Ok({ let __t6111 = v_Y952.clone(); let __t6112 = v_Y953.clone(); rt::add(&__t6111, &__t6112)? }) }, vec![v_Y952], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6110, &__t6113) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6114])? }; - { - let _ = { let __t6119 = { let __t6115 = Value::sym(interp.intern("*")); let __t6118 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y950 = args[0].clone(); Ok({ let v_Y950 = v_Y950.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y951 = args[0].clone(); Ok({ let __t6116 = v_Y950.clone(); let __t6117 = v_Y951.clone(); rt::mul(&__t6116, &__t6117)? }) }, vec![v_Y950], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6115, &__t6118) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6119])? }; - { - let _ = { let __t6124 = { let __t6120 = Value::sym(interp.intern("/")); let __t6123 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y948 = args[0].clone(); Ok({ let v_Y948 = v_Y948.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y949 = args[0].clone(); Ok({ let __t6121 = v_Y948.clone(); let __t6122 = v_Y949.clone(); rt::div(&__t6121, &__t6122)? }) }, vec![v_Y948], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6120, &__t6123) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6124])? }; - { - let _ = { let __t6129 = { let __t6125 = Value::sym(interp.intern("-")); let __t6128 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y946 = args[0].clone(); Ok({ let v_Y946 = v_Y946.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y947 = args[0].clone(); Ok({ let __t6126 = v_Y946.clone(); let __t6127 = v_Y947.clone(); rt::sub(&__t6126, &__t6127)? }) }, vec![v_Y946], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6125, &__t6128) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6129])? }; - { - let _ = { let __t6134 = { let __t6130 = Value::sym(interp.intern("==")); let __t6133 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y944 = args[0].clone(); Ok({ let v_Y944 = v_Y944.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y945 = args[0].clone(); Ok({ let __t6131 = v_Y944.clone(); let __t6132 = v_Y945.clone(); rt::apply_direct(interp, "==", &[__t6131, __t6132])? }) }, vec![v_Y944], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6130, &__t6133) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6134])? }; - { - let _ = { let __t6138 = { let __t6135 = Value::sym(interp.intern("")); let __t6137 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y943 = args[0].clone(); Ok({ let __t6136 = v_Y943.clone(); rt::apply_direct(interp, "", &[__t6136])? }) }, Vec::new(), interp) }; rt::cons(&__t6135, &__t6137) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6138])? }; - { - let _ = { let __t6142 = { let __t6139 = Value::sym(interp.intern("")); let __t6141 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y942 = args[0].clone(); Ok({ let __t6140 = v_Y942.clone(); rt::apply_direct(interp, "", &[__t6140])? }) }, Vec::new(), interp) }; rt::cons(&__t6139, &__t6141) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6142])? }; - { - let _ = { let __t6146 = { let __t6143 = Value::sym(interp.intern("")); let __t6145 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y941 = args[0].clone(); Ok({ let __t6144 = v_Y941.clone(); rt::apply_direct(interp, "", &[__t6144])? }) }, Vec::new(), interp) }; rt::cons(&__t6143, &__t6145) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6146])? }; - { - let _ = { let __t6151 = { let __t6147 = Value::sym(interp.intern("@p")); let __t6150 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y939 = args[0].clone(); Ok({ let v_Y939 = v_Y939.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y940 = args[0].clone(); Ok({ let __t6148 = v_Y939.clone(); let __t6149 = v_Y940.clone(); rt::apply_direct(interp, "@p", &[__t6148, __t6149])? }) }, vec![v_Y939], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6147, &__t6150) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6151])? }; - { - let _ = { let __t6156 = { let __t6152 = Value::sym(interp.intern("@v")); let __t6155 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y937 = args[0].clone(); Ok({ let v_Y937 = v_Y937.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y938 = args[0].clone(); Ok({ let __t6153 = v_Y937.clone(); let __t6154 = v_Y938.clone(); rt::apply_direct(interp, "@v", &[__t6153, __t6154])? }) }, vec![v_Y937], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6152, &__t6155) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6156])? }; - break Ok({ let __t6161 = { let __t6157 = Value::sym(interp.intern("@s")); let __t6160 = { rt::make_aot_closure("", 1, move |interp, args| { let v_Y935 = args[0].clone(); Ok({ let v_Y935 = v_Y935.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Y936 = args[0].clone(); Ok({ let __t6158 = v_Y935.clone(); let __t6159 = v_Y936.clone(); rt::apply_direct(interp, "@s", &[__t6158, __t6159])? }) }, vec![v_Y935], interp) }) }, Vec::new(), interp) }; rt::cons(&__t6157, &__t6160) }; rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t6161])? }); - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_initialise_x2d_lambda_x2d_forms(interp: &mut Interp) { - interp.register_native( - "shen.initialise-lambda-forms", - 0, - aot_shen_x2e_initialise_x2d_lambda_x2d_forms, - ); - interp.register_aot_direct( - "shen.initialise-lambda-forms", - aot_shen_x2e_initialise_x2d_lambda_x2d_forms, - ); -} - -/// AOT-compiled from KL `(defun shen.initialise ...)` -pub fn aot_shen_x2e_initialise(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "shen.initialise: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - { - let _ = { rt::apply_direct(interp, "shen.initialise-environment", &[])? }; - { - let _ = { rt::apply_direct(interp, "shen.initialise-lambda-forms", &[])? }; - break Ok({ rt::apply_direct(interp, "shen.initialise-signedfuncs", &[])? }); - } - } - } -} - -fn install_shen_x2e_initialise(interp: &mut Interp) { - interp.register_native("shen.initialise", 0, aot_shen_x2e_initialise); - interp.register_aot_direct("shen.initialise", aot_shen_x2e_initialise); -} - -/// Register every AOT-compiled function on `interp`. Call after kernel -/// boot so these names override the tree-walked defuns. -pub fn install(interp: &mut Interp) { - install_shen_x2e_initialise_x2d_environment(interp); - install_shen_x2e_initialise_x2d_signedfuncs(interp); - install_shen_x2e_initialise_x2d_lambda_x2d_forms(interp); - install_shen_x2e_initialise(interp); -} diff --git a/crates/shen-rust/src/aot/kernel/load.rs b/crates/shen-rust/src/aot/kernel/load.rs index 6058c3b..e6bb07e 100644 --- a/crates/shen-rust/src/aot/kernel/load.rs +++ b/crates/shen-rust/src/aot/kernel/load.rs @@ -32,47 +32,47 @@ pub fn aot_load(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1239 = args[0].clone(); + let mut v_V893 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1240 = { + let v_W894 = { let __t0 = Value::sym(interp.intern("shen.*tc*")); rt::apply_direct(interp, "value", &[__t0])? }; { - let v_W1241 = { - let v_W1242 = { + let v_W895 = { + let v_W896 = { let __t1 = Value::sym(interp.intern("run")); rt::apply_direct(interp, "get-time", &[__t1])? }; { - let v_W1243 = { - let __t2 = v_W1240.clone(); + let v_W897 = { + let __t2 = v_W894.clone(); let __t4 = { - let __t3 = v_V1239.clone(); + let __t3 = v_V893.clone(); rt::apply_direct(interp, "read-file", &[__t3])? }; rt::apply_direct(interp, "shen.load-help", &[__t2, __t4])? }; { - let v_W1244 = { + let v_W898 = { let __t5 = Value::sym(interp.intern("run")); rt::apply_direct(interp, "get-time", &[__t5])? }; { - let v_W1245 = { - let __t6 = v_W1244.clone(); - let __t7 = v_W1242.clone(); + let v_W899 = { + let __t6 = v_W898.clone(); + let __t7 = v_W896.clone(); rt::sub(&__t6, &__t7)? }; { - let v_W1246 = { + let v_W900 = { let __t13 = { let __t8 = Value::str("\nrun time: "); let __t12 = { let __t10 = { - let __t9 = v_W1245.clone(); + let __t9 = v_W899.clone(); rt::apply_direct(interp, "str", &[__t9])? }; let __t11 = Value::str(" secs\n"); @@ -83,15 +83,15 @@ pub fn aot_load(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t14 = { rt::apply_direct(interp, "stoutput", &[])? }; rt::apply_direct(interp, "pr", &[__t13, __t14])? }; - v_W1243.clone() + v_W897.clone() } } } } }; { - let v_W1247 = { - let __t22 = v_W1240.clone(); + let v_W901 = { + let __t22 = v_W894.clone(); if rt::is_truthy(interp, &__t22)? { { let __t20 = { @@ -137,15 +137,15 @@ pub fn aot_shen_x2e_load_x2d_help(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V1250 = args[0].clone(); + let mut v_V904 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1251 = args[1].clone(); + let mut v_V905 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t28 = { let __t25 = Value::bool(false); - let __t26 = v_V1250.clone(); + let __t26 = v_V904.clone(); rt::eq(&__t25, &__t26) }; if match rt::is_truthy(interp, &__t28) { @@ -153,7 +153,7 @@ pub fn aot_shen_x2e_load_x2d_help(interp: &mut Interp, args: &[Value]) -> ShenRe Err(e) => break Err(e), } { break Ok({ - let __t27 = v_V1251.clone(); + let __t27 = v_V905.clone(); rt::apply_direct(interp, "shen.eval-and-print", &[__t27])? }); } else { @@ -164,7 +164,7 @@ pub fn aot_shen_x2e_load_x2d_help(interp: &mut Interp, args: &[Value]) -> ShenRe Err(e) => break Err(e), } { break Ok({ - let __t23 = v_V1251.clone(); + let __t23 = v_V905.clone(); rt::apply_direct(interp, "shen.check-eval-and-print", &[__t23])? }); } else { @@ -193,7 +193,7 @@ pub fn aot_shen_x2e_eval_x2d_and_x2d_print( ))); } #[allow(unused_mut)] - let mut v_V1252 = args[0].clone(); + let mut v_V906 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -202,12 +202,12 @@ pub fn aot_shen_x2e_eval_x2d_and_x2d_print( "", 1, move |interp, args| { - let v_Z1253 = args[0].clone(); + let v_Z907 = args[0].clone(); Ok({ let __t34 = { let __t31 = { let __t30 = { - let __t29 = v_Z1253.clone(); + let __t29 = v_Z907.clone(); rt::apply_direct(interp, "shen.shen->kl", &[__t29])? }; rt::apply_direct(interp, "eval-kl", &[__t30])? @@ -224,8 +224,8 @@ pub fn aot_shen_x2e_eval_x2d_and_x2d_print( interp, ) }; - let __t37 = v_V1252.clone(); - rt::apply_direct(interp, "shen.for-each", &[__t36, __t37])? + let __t37 = v_V906.clone(); + rt::apply_direct(interp, "map", &[__t36, __t37])? }); } } @@ -251,19 +251,19 @@ pub fn aot_shen_x2e_check_x2d_eval_x2d_and_x2d_print( ))); } #[allow(unused_mut)] - let mut v_V1254 = args[0].clone(); + let mut v_V908 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1255 = { + let v_W909 = { let __t39 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1256 = args[0].clone(); + let v_Z910 = args[0].clone(); Ok({ - let __t38 = v_Z1256.clone(); + let __t38 = v_Z910.clone(); rt::apply_direct(interp, "shen.typetable", &[__t38])? }) }, @@ -271,28 +271,28 @@ pub fn aot_shen_x2e_check_x2d_eval_x2d_and_x2d_print( interp, ) }; - let __t40 = v_V1254.clone(); + let __t40 = v_V908.clone(); rt::apply_direct(interp, "mapcan", &[__t39, __t40])? }; { - let v_W1257 = match (|| -> ShenResult { + let v_W911 = match (|| -> ShenResult { Ok({ - let __t41 = v_W1255.clone(); + let __t41 = v_W909.clone(); rt::apply_direct(interp, "shen.assumetypes", &[__t41])? }) })() { Ok(v) => v, Err(e) => { let __h = { - let v_W1255 = v_W1255.clone(); + let v_W909 = v_W909.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1258 = args[0].clone(); + let v_Z912 = args[0].clone(); Ok({ - let __t42 = v_Z1258.clone(); - let __t43 = v_W1255.clone(); + let __t42 = v_Z912.clone(); + let __t43 = v_W909.clone(); rt::apply_direct( interp, "shen.unwind-types", @@ -300,7 +300,7 @@ pub fn aot_shen_x2e_check_x2d_eval_x2d_and_x2d_print( )? }) }, - vec![v_W1255], + vec![v_W909], interp, ) }; @@ -311,22 +311,22 @@ pub fn aot_shen_x2e_check_x2d_eval_x2d_and_x2d_print( break Ok( match (|| -> ShenResult { Ok({ - let __t44 = v_V1254.clone(); + let __t44 = v_V908.clone(); rt::apply_direct(interp, "shen.work-through", &[__t44])? }) })() { Ok(v) => v, Err(e) => { let __h = { - let v_W1255 = v_W1255.clone(); + let v_W909 = v_W909.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1259 = args[0].clone(); + let v_Z913 = args[0].clone(); Ok({ - let __t45 = v_Z1259.clone(); - let __t46 = v_W1255.clone(); + let __t45 = v_Z913.clone(); + let __t46 = v_W909.clone(); rt::apply_direct( interp, "shen.unwind-types", @@ -334,7 +334,7 @@ pub fn aot_shen_x2e_check_x2d_eval_x2d_and_x2d_print( )? }) }, - vec![v_W1255], + vec![v_W909], interp, ) }; @@ -369,13 +369,13 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V1264 = args[0].clone(); + let mut v_V918 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t103 = { let __t87 = { - let __t67 = v_V1264.clone(); + let __t67 = v_V918.clone(); rt::is_cons(&__t67) }; if !rt::is_truthy(interp, &__t87)? { @@ -385,7 +385,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t85 = { let __t68 = Value::sym(interp.intern("define")); let __t70 = { - let __t69 = v_V1264.clone(); + let __t69 = v_V918.clone(); rt::hd(&__t69)? }; rt::eq(&__t68, &__t70) @@ -396,7 +396,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t86 = { let __t83 = { let __t72 = { - let __t71 = v_V1264.clone(); + let __t71 = v_V918.clone(); rt::tl(&__t71)? }; rt::is_cons(&__t72) @@ -408,7 +408,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t81 = { let __t75 = { let __t74 = { - let __t73 = v_V1264.clone(); + let __t73 = v_V918.clone(); rt::tl(&__t73)? }; rt::tl(&__t74)? @@ -423,7 +423,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t80 = { let __t79 = { let __t78 = { - let __t77 = v_V1264.clone(); + let __t77 = v_V918.clone(); rt::tl(&__t77)? }; rt::tl(&__t78)? @@ -451,7 +451,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult break Ok({ let __t91 = { let __t90 = { - let __t89 = v_V1264.clone(); + let __t89 = v_V918.clone(); rt::tl(&__t89)? }; rt::hd(&__t90)? @@ -461,7 +461,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t99 = { let __t94 = { let __t93 = { - let __t92 = v_V1264.clone(); + let __t92 = v_V918.clone(); rt::tl(&__t92)? }; rt::hd(&__t93)? @@ -469,7 +469,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t98 = { let __t97 = { let __t96 = { - let __t95 = v_V1264.clone(); + let __t95 = v_V918.clone(); rt::tl(&__t95)? }; rt::tl(&__t96)? @@ -489,7 +489,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t66 = { let __t56 = { - let __t48 = v_V1264.clone(); + let __t48 = v_V918.clone(); rt::is_cons(&__t48) }; if !rt::is_truthy(interp, &__t56)? { @@ -499,7 +499,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t54 = { let __t49 = Value::sym(interp.intern("define")); let __t51 = { - let __t50 = v_V1264.clone(); + let __t50 = v_V918.clone(); rt::hd(&__t50)? }; rt::eq(&__t49, &__t51) @@ -509,7 +509,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult } else { let __t55 = { let __t53 = { - let __t52 = v_V1264.clone(); + let __t52 = v_V918.clone(); rt::tl(&__t52)? }; rt::is_cons(&__t53) @@ -530,7 +530,7 @@ pub fn aot_shen_x2e_typetable(interp: &mut Interp, args: &[Value]) -> ShenResult let __t64 = { let __t61 = { let __t60 = { - let __t59 = v_V1264.clone(); + let __t59 = v_V918.clone(); rt::tl(&__t59)? }; rt::hd(&__t60)? @@ -576,15 +576,15 @@ pub fn aot_shen_x2e_type_x2d_F(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V1271 = args[0].clone(); + let mut v_V925 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1272 = args[1].clone(); + let mut v_V926 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t125 = { let __t123 = { - let __t119 = v_V1272.clone(); + let __t119 = v_V926.clone(); rt::is_cons(&__t119) }; if !rt::is_truthy(interp, &__t123)? { @@ -593,7 +593,7 @@ pub fn aot_shen_x2e_type_x2d_F(interp: &mut Interp, args: &[Value]) -> ShenResul let __t124 = { let __t120 = Value::sym(interp.intern("}")); let __t122 = { - let __t121 = v_V1272.clone(); + let __t121 = v_V926.clone(); rt::hd(&__t121)? }; rt::eq(&__t120, &__t122) @@ -609,7 +609,7 @@ pub fn aot_shen_x2e_type_x2d_F(interp: &mut Interp, args: &[Value]) -> ShenResul } else { { let __t118 = { - let __t111 = v_V1272.clone(); + let __t111 = v_V926.clone(); rt::is_cons(&__t111) }; if match rt::is_truthy(interp, &__t118) { @@ -618,13 +618,13 @@ pub fn aot_shen_x2e_type_x2d_F(interp: &mut Interp, args: &[Value]) -> ShenResul } { break Ok({ let __t113 = { - let __t112 = v_V1272.clone(); + let __t112 = v_V926.clone(); rt::hd(&__t112)? }; let __t117 = { - let __t114 = v_V1271.clone(); + let __t114 = v_V925.clone(); let __t116 = { - let __t115 = v_V1272.clone(); + let __t115 = v_V926.clone(); rt::tl(&__t115)? }; rt::apply_direct(interp, "shen.type-F", &[__t114, __t116])? @@ -642,7 +642,7 @@ pub fn aot_shen_x2e_type_x2d_F(interp: &mut Interp, args: &[Value]) -> ShenResul let __t109 = { let __t104 = Value::str("missing } in "); let __t108 = { - let __t105 = v_V1271.clone(); + let __t105 = v_V925.clone(); let __t106 = Value::str("\n"); let __t107 = Value::sym(interp.intern("shen.a")); rt::apply_direct( @@ -680,13 +680,13 @@ pub fn aot_shen_x2e_assumetypes(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V1275 = args[0].clone(); + let mut v_V929 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t144 = { let __t142 = Value::nil(); - let __t143 = v_V1275.clone(); + let __t143 = v_V929.clone(); rt::eq(&__t142, &__t143) }; if match rt::is_truthy(interp, &__t144) { @@ -698,7 +698,7 @@ pub fn aot_shen_x2e_assumetypes(interp: &mut Interp, args: &[Value]) -> ShenResu { let __t141 = { let __t131 = { - let __t128 = v_V1275.clone(); + let __t128 = v_V929.clone(); rt::is_cons(&__t128) }; if !rt::is_truthy(interp, &__t131)? { @@ -706,7 +706,7 @@ pub fn aot_shen_x2e_assumetypes(interp: &mut Interp, args: &[Value]) -> ShenResu } else { let __t132 = { let __t130 = { - let __t129 = v_V1275.clone(); + let __t129 = v_V929.clone(); rt::tl(&__t129)? }; rt::is_cons(&__t130) @@ -721,12 +721,12 @@ pub fn aot_shen_x2e_assumetypes(interp: &mut Interp, args: &[Value]) -> ShenResu { let _ = { let __t134 = { - let __t133 = v_V1275.clone(); + let __t133 = v_V929.clone(); rt::hd(&__t133)? }; let __t137 = { let __t136 = { - let __t135 = v_V1275.clone(); + let __t135 = v_V929.clone(); rt::tl(&__t135)? }; rt::hd(&__t136)? @@ -736,12 +736,12 @@ pub fn aot_shen_x2e_assumetypes(interp: &mut Interp, args: &[Value]) -> ShenResu { let __t140 = { let __t139 = { - let __t138 = v_V1275.clone(); + let __t138 = v_V929.clone(); rt::tl(&__t138)? }; rt::tl(&__t139)? }; - v_V1275 = __t140; + v_V929 = __t140; continue; } } @@ -782,15 +782,15 @@ pub fn aot_shen_x2e_unwind_x2d_types(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1280 = args[0].clone(); + let mut v_V934 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1281 = args[1].clone(); + let mut v_V935 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t159 = { let __t151 = { - let __t148 = v_V1281.clone(); + let __t148 = v_V935.clone(); rt::is_cons(&__t148) }; if !rt::is_truthy(interp, &__t151)? { @@ -798,7 +798,7 @@ pub fn aot_shen_x2e_unwind_x2d_types(interp: &mut Interp, args: &[Value]) -> She } else { let __t152 = { let __t150 = { - let __t149 = v_V1281.clone(); + let __t149 = v_V935.clone(); rt::tl(&__t149)? }; rt::is_cons(&__t150) @@ -813,22 +813,22 @@ pub fn aot_shen_x2e_unwind_x2d_types(interp: &mut Interp, args: &[Value]) -> She { let _ = { let __t154 = { - let __t153 = v_V1281.clone(); + let __t153 = v_V935.clone(); rt::hd(&__t153)? }; rt::apply_direct(interp, "destroy", &[__t154])? }; { - let __t155 = v_V1280.clone(); + let __t155 = v_V934.clone(); let __t158 = { let __t157 = { - let __t156 = v_V1281.clone(); + let __t156 = v_V935.clone(); rt::tl(&__t156)? }; rt::tl(&__t157)? }; - v_V1280 = __t155; - v_V1281 = __t158; + v_V934 = __t155; + v_V935 = __t158; continue; } } @@ -841,7 +841,7 @@ pub fn aot_shen_x2e_unwind_x2d_types(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ let __t146 = { - let __t145 = v_V1280.clone(); + let __t145 = v_V934.clone(); rt::apply_direct(interp, "error-to-string", &[__t145])? }; rt::apply_direct(interp, "simple-error", &[__t146])? @@ -869,13 +869,13 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1284 = args[0].clone(); + let mut v_V938 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t221 = { let __t219 = Value::nil(); - let __t220 = v_V1284.clone(); + let __t220 = v_V938.clone(); rt::eq(&__t219, &__t220) }; if match rt::is_truthy(interp, &__t221) { @@ -887,7 +887,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She { let __t218 = { let __t189 = { - let __t174 = v_V1284.clone(); + let __t174 = v_V938.clone(); rt::is_cons(&__t174) }; if !rt::is_truthy(interp, &__t189)? { @@ -896,7 +896,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She let __t190 = { let __t187 = { let __t176 = { - let __t175 = v_V1284.clone(); + let __t175 = v_V938.clone(); rt::tl(&__t175)? }; rt::is_cons(&__t176) @@ -908,7 +908,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She let __t185 = { let __t179 = { let __t178 = { - let __t177 = v_V1284.clone(); + let __t177 = v_V938.clone(); rt::tl(&__t177)? }; rt::tl(&__t178)? @@ -921,7 +921,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She let __t186 = { let __t182 = { let __t181 = { - let __t180 = v_V1284.clone(); + let __t180 = v_V938.clone(); rt::tl(&__t180)? }; rt::hd(&__t181)? @@ -946,15 +946,15 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1285 = { + let v_W939 = { let __t192 = { - let __t191 = v_V1284.clone(); + let __t191 = v_V938.clone(); rt::hd(&__t191)? }; let __t196 = { let __t195 = { let __t194 = { - let __t193 = v_V1284.clone(); + let __t193 = v_V938.clone(); rt::tl(&__t193)? }; rt::tl(&__t194)? @@ -965,7 +965,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She }; { let __t199 = { - let __t197 = v_W1285.clone(); + let __t197 = v_W939.clone(); let __t198 = Value::bool(false); rt::eq(&__t197, &__t198) }; @@ -978,10 +978,10 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She }); } else { { - let v_W1286 = { + let v_W940 = { let __t202 = { let __t201 = { - let __t200 = v_V1284.clone(); + let __t200 = v_V938.clone(); rt::hd(&__t200)? }; rt::apply_direct( @@ -993,14 +993,14 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She rt::apply_direct(interp, "eval-kl", &[__t202])? }; { - let v_W1287 = { + let v_W941 = { let __t212 = { - let __t203 = v_W1286.clone(); + let __t203 = v_W940.clone(); let __t210 = { let __t204 = Value::str(" : "); let __t209 = { let __t206 = { - let __t205 = v_W1285.clone(); + let __t205 = v_W939.clone(); rt::apply_direct( interp, "shen.pretty-type", @@ -1038,14 +1038,14 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She let __t217 = { let __t216 = { let __t215 = { - let __t214 = v_V1284.clone(); + let __t214 = v_V938.clone(); rt::tl(&__t214)? }; rt::tl(&__t215)? }; rt::tl(&__t216)? }; - v_V1284 = __t217; + v_V938 = __t217; continue; } } @@ -1056,7 +1056,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She } else { { let __t173 = { - let __t162 = v_V1284.clone(); + let __t162 = v_V938.clone(); rt::is_cons(&__t162) }; if match rt::is_truthy(interp, &__t173) { @@ -1066,7 +1066,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She { let __t172 = { let __t164 = { - let __t163 = v_V1284.clone(); + let __t163 = v_V938.clone(); rt::hd(&__t163)? }; let __t171 = { @@ -1077,7 +1077,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She let __t170 = { let __t167 = Value::sym(interp.intern("A")); let __t169 = { - let __t168 = v_V1284.clone(); + let __t168 = v_V938.clone(); rt::tl(&__t168)? }; rt::cons(&__t167, &__t169) @@ -1086,7 +1086,7 @@ pub fn aot_shen_x2e_work_x2d_through(interp: &mut Interp, args: &[Value]) -> She }; rt::cons(&__t164, &__t171) }; - v_V1284 = __t172; + v_V938 = __t172; continue; } } else { @@ -1129,13 +1129,13 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1289 = args[0].clone(); + let mut v_V943 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t378 = { let __t362 = { - let __t228 = v_V1289.clone(); + let __t228 = v_V943.clone(); rt::is_cons(&__t228) }; if !rt::is_truthy(interp, &__t362)? { @@ -1144,7 +1144,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t363 = { let __t360 = { let __t230 = { - let __t229 = v_V1289.clone(); + let __t229 = v_V943.clone(); rt::hd(&__t229)? }; rt::is_cons(&__t230) @@ -1157,7 +1157,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t231 = Value::sym(interp.intern("list")); let __t234 = { let __t233 = { - let __t232 = v_V1289.clone(); + let __t232 = v_V943.clone(); rt::hd(&__t232)? }; rt::hd(&__t233)? @@ -1171,7 +1171,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t356 = { let __t237 = { let __t236 = { - let __t235 = v_V1289.clone(); + let __t235 = v_V943.clone(); rt::hd(&__t235)? }; rt::tl(&__t236)? @@ -1187,7 +1187,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t242 = { let __t241 = { let __t240 = { - let __t239 = v_V1289.clone(); + let __t239 = v_V943.clone(); rt::hd(&__t239)? }; rt::tl(&__t240)? @@ -1202,7 +1202,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t355 = { let __t352 = { let __t244 = { - let __t243 = v_V1289.clone(); + let __t243 = v_V943.clone(); rt::tl(&__t243)? }; rt::is_cons(&__t244) @@ -1218,7 +1218,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t248 = { let __t247 = { let __t246 = - v_V1289.clone(); + v_V943.clone(); rt::tl(&__t246)? }; rt::hd(&__t247)? @@ -1234,7 +1234,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t251 = { let __t250 = { let __t249 = - v_V1289 + v_V943 .clone( ); rt::tl(&__t249)? @@ -1253,7 +1253,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t255 = { let __t254 = { let __t253 = { - let __t252 = v_V1289.clone(); + let __t252 = v_V943.clone(); rt::tl(&__t252)? }; rt::tl(&__t253)? @@ -1277,12 +1277,12 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t344 = { let __t256 = Value::sym(interp.intern("str")); let __t261 = { - let __t260 = { let __t259 = { let __t258 = { let __t257 = v_V1289.clone(); rt::tl(&__t257)? }; rt::tl(&__t258)? }; rt::hd(&__t259)? }; + let __t260 = { let __t259 = { let __t258 = { let __t257 = v_V943.clone(); rt::tl(&__t257)? }; rt::tl(&__t258)? }; rt::hd(&__t259)? }; rt::hd(&__t260)? }; rt::eq(&__t256, &__t261) }; - if !rt::is_truthy(interp, &__t344)? { Value::bool(false) } else { let __t345 = { let __t342 = { let __t266 = { let __t265 = { let __t264 = { let __t263 = { let __t262 = v_V1289.clone(); rt::tl(&__t262)? }; rt::tl(&__t263)? }; rt::hd(&__t264)? }; rt::tl(&__t265)? }; rt::is_cons(&__t266) }; if !rt::is_truthy(interp, &__t342)? { Value::bool(false) } else { let __t343 = { let __t340 = { let __t272 = { let __t271 = { let __t270 = { let __t269 = { let __t268 = { let __t267 = v_V1289.clone(); rt::tl(&__t267)? }; rt::tl(&__t268)? }; rt::hd(&__t269)? }; rt::tl(&__t270)? }; rt::hd(&__t271)? }; rt::is_cons(&__t272) }; if !rt::is_truthy(interp, &__t340)? { Value::bool(false) } else { let __t341 = { let __t338 = { let __t273 = Value::sym(interp.intern("list")); let __t280 = { let __t279 = { let __t278 = { let __t277 = { let __t276 = { let __t275 = { let __t274 = v_V1289.clone(); rt::tl(&__t274)? }; rt::tl(&__t275)? }; rt::hd(&__t276)? }; rt::tl(&__t277)? }; rt::hd(&__t278)? }; rt::hd(&__t279)? }; rt::eq(&__t273, &__t280) }; if !rt::is_truthy(interp, &__t338)? { Value::bool(false) } else { let __t339 = { let __t336 = { let __t287 = { let __t286 = { let __t285 = { let __t284 = { let __t283 = { let __t282 = { let __t281 = v_V1289.clone(); rt::tl(&__t281)? }; rt::tl(&__t282)? }; rt::hd(&__t283)? }; rt::tl(&__t284)? }; rt::hd(&__t285)? }; rt::tl(&__t286)? }; rt::is_cons(&__t287) }; if !rt::is_truthy(interp, &__t336)? { Value::bool(false) } else { let __t337 = { let __t334 = { let __t288 = Value::nil(); let __t296 = { let __t295 = { let __t294 = { let __t293 = { let __t292 = { let __t291 = { let __t290 = { let __t289 = v_V1289.clone(); rt::tl(&__t289)? }; rt::tl(&__t290)? }; rt::hd(&__t291)? }; rt::tl(&__t292)? }; rt::hd(&__t293)? }; rt::tl(&__t294)? }; rt::tl(&__t295)? }; rt::eq(&__t288, &__t296) }; if !rt::is_truthy(interp, &__t334)? { Value::bool(false) } else { let __t335 = { let __t332 = { let __t302 = { let __t301 = { let __t300 = { let __t299 = { let __t298 = { let __t297 = v_V1289.clone(); rt::tl(&__t297)? }; rt::tl(&__t298)? }; rt::hd(&__t299)? }; rt::tl(&__t300)? }; rt::tl(&__t301)? }; rt::is_cons(&__t302) }; if !rt::is_truthy(interp, &__t332)? { Value::bool(false) } else { let __t333 = { let __t330 = { let __t303 = Value::nil(); let __t310 = { let __t309 = { let __t308 = { let __t307 = { let __t306 = { let __t305 = { let __t304 = v_V1289.clone(); rt::tl(&__t304)? }; rt::tl(&__t305)? }; rt::hd(&__t306)? }; rt::tl(&__t307)? }; rt::tl(&__t308)? }; rt::tl(&__t309)? }; rt::eq(&__t303, &__t310) }; if !rt::is_truthy(interp, &__t330)? { Value::bool(false) } else { let __t331 = { let __t328 = { let __t311 = Value::nil(); let __t315 = { let __t314 = { let __t313 = { let __t312 = v_V1289.clone(); rt::tl(&__t312)? }; rt::tl(&__t313)? }; rt::tl(&__t314)? }; rt::eq(&__t311, &__t315) }; if !rt::is_truthy(interp, &__t328)? { Value::bool(false) } else { let __t329 = { let __t319 = { let __t318 = { let __t317 = { let __t316 = v_V1289.clone(); rt::hd(&__t316)? }; rt::tl(&__t317)? }; rt::hd(&__t318)? }; let __t327 = { let __t326 = { let __t325 = { let __t324 = { let __t323 = { let __t322 = { let __t321 = { let __t320 = v_V1289.clone(); rt::tl(&__t320)? }; rt::tl(&__t321)? }; rt::hd(&__t322)? }; rt::tl(&__t323)? }; rt::hd(&__t324)? }; rt::tl(&__t325)? }; rt::hd(&__t326)? }; rt::eq(&__t319, &__t327) }; Value::bool(rt::is_truthy(interp, &__t329)?) } }; Value::bool(rt::is_truthy(interp, &__t331)?) } }; Value::bool(rt::is_truthy(interp, &__t333)?) } }; Value::bool(rt::is_truthy(interp, &__t335)?) } }; Value::bool(rt::is_truthy(interp, &__t337)?) } }; Value::bool(rt::is_truthy(interp, &__t339)?) } }; Value::bool(rt::is_truthy(interp, &__t341)?) } }; Value::bool(rt::is_truthy(interp, &__t343)?) } }; Value::bool(rt::is_truthy(interp, &__t345)?) } + if !rt::is_truthy(interp, &__t344)? { Value::bool(false) } else { let __t345 = { let __t342 = { let __t266 = { let __t265 = { let __t264 = { let __t263 = { let __t262 = v_V943.clone(); rt::tl(&__t262)? }; rt::tl(&__t263)? }; rt::hd(&__t264)? }; rt::tl(&__t265)? }; rt::is_cons(&__t266) }; if !rt::is_truthy(interp, &__t342)? { Value::bool(false) } else { let __t343 = { let __t340 = { let __t272 = { let __t271 = { let __t270 = { let __t269 = { let __t268 = { let __t267 = v_V943.clone(); rt::tl(&__t267)? }; rt::tl(&__t268)? }; rt::hd(&__t269)? }; rt::tl(&__t270)? }; rt::hd(&__t271)? }; rt::is_cons(&__t272) }; if !rt::is_truthy(interp, &__t340)? { Value::bool(false) } else { let __t341 = { let __t338 = { let __t273 = Value::sym(interp.intern("list")); let __t280 = { let __t279 = { let __t278 = { let __t277 = { let __t276 = { let __t275 = { let __t274 = v_V943.clone(); rt::tl(&__t274)? }; rt::tl(&__t275)? }; rt::hd(&__t276)? }; rt::tl(&__t277)? }; rt::hd(&__t278)? }; rt::hd(&__t279)? }; rt::eq(&__t273, &__t280) }; if !rt::is_truthy(interp, &__t338)? { Value::bool(false) } else { let __t339 = { let __t336 = { let __t287 = { let __t286 = { let __t285 = { let __t284 = { let __t283 = { let __t282 = { let __t281 = v_V943.clone(); rt::tl(&__t281)? }; rt::tl(&__t282)? }; rt::hd(&__t283)? }; rt::tl(&__t284)? }; rt::hd(&__t285)? }; rt::tl(&__t286)? }; rt::is_cons(&__t287) }; if !rt::is_truthy(interp, &__t336)? { Value::bool(false) } else { let __t337 = { let __t334 = { let __t288 = Value::nil(); let __t296 = { let __t295 = { let __t294 = { let __t293 = { let __t292 = { let __t291 = { let __t290 = { let __t289 = v_V943.clone(); rt::tl(&__t289)? }; rt::tl(&__t290)? }; rt::hd(&__t291)? }; rt::tl(&__t292)? }; rt::hd(&__t293)? }; rt::tl(&__t294)? }; rt::tl(&__t295)? }; rt::eq(&__t288, &__t296) }; if !rt::is_truthy(interp, &__t334)? { Value::bool(false) } else { let __t335 = { let __t332 = { let __t302 = { let __t301 = { let __t300 = { let __t299 = { let __t298 = { let __t297 = v_V943.clone(); rt::tl(&__t297)? }; rt::tl(&__t298)? }; rt::hd(&__t299)? }; rt::tl(&__t300)? }; rt::tl(&__t301)? }; rt::is_cons(&__t302) }; if !rt::is_truthy(interp, &__t332)? { Value::bool(false) } else { let __t333 = { let __t330 = { let __t303 = Value::nil(); let __t310 = { let __t309 = { let __t308 = { let __t307 = { let __t306 = { let __t305 = { let __t304 = v_V943.clone(); rt::tl(&__t304)? }; rt::tl(&__t305)? }; rt::hd(&__t306)? }; rt::tl(&__t307)? }; rt::tl(&__t308)? }; rt::tl(&__t309)? }; rt::eq(&__t303, &__t310) }; if !rt::is_truthy(interp, &__t330)? { Value::bool(false) } else { let __t331 = { let __t328 = { let __t311 = Value::nil(); let __t315 = { let __t314 = { let __t313 = { let __t312 = v_V943.clone(); rt::tl(&__t312)? }; rt::tl(&__t313)? }; rt::tl(&__t314)? }; rt::eq(&__t311, &__t315) }; if !rt::is_truthy(interp, &__t328)? { Value::bool(false) } else { let __t329 = { let __t319 = { let __t318 = { let __t317 = { let __t316 = v_V943.clone(); rt::hd(&__t316)? }; rt::tl(&__t317)? }; rt::hd(&__t318)? }; let __t327 = { let __t326 = { let __t325 = { let __t324 = { let __t323 = { let __t322 = { let __t321 = { let __t320 = v_V943.clone(); rt::tl(&__t320)? }; rt::tl(&__t321)? }; rt::hd(&__t322)? }; rt::tl(&__t323)? }; rt::hd(&__t324)? }; rt::tl(&__t325)? }; rt::hd(&__t326)? }; rt::eq(&__t319, &__t327) }; Value::bool(rt::is_truthy(interp, &__t329)?) } }; Value::bool(rt::is_truthy(interp, &__t331)?) } }; Value::bool(rt::is_truthy(interp, &__t333)?) } }; Value::bool(rt::is_truthy(interp, &__t335)?) } }; Value::bool(rt::is_truthy(interp, &__t337)?) } }; Value::bool(rt::is_truthy(interp, &__t339)?) } }; Value::bool(rt::is_truthy(interp, &__t341)?) } }; Value::bool(rt::is_truthy(interp, &__t343)?) } }; Value::bool(rt::is_truthy(interp, &__t345)?) } }; Value::bool(rt::is_truthy(interp, &__t347)?) } @@ -1329,7 +1329,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t367 = { let __t366 = { let __t365 = { - let __t364 = v_V1289.clone(); + let __t364 = v_V943.clone(); rt::tl(&__t364)? }; rt::tl(&__t365)? @@ -1347,7 +1347,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen let __t374 = { let __t373 = { let __t372 = { - let __t371 = v_V1289.clone(); + let __t371 = v_V943.clone(); rt::tl(&__t371)? }; rt::tl(&__t372)? @@ -1365,7 +1365,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen } else { { let __t227 = { - let __t223 = v_V1289.clone(); + let __t223 = v_V943.clone(); rt::is_cons(&__t223) }; if match rt::is_truthy(interp, &__t227) { @@ -1378,9 +1378,9 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen "", 1, move |interp, args| { - let v_Z1290 = args[0].clone(); + let v_Z944 = args[0].clone(); Ok({ - let __t224 = v_Z1290.clone(); + let __t224 = v_Z944.clone(); rt::apply_direct(interp, "shen.pretty-type", &[__t224])? }) }, @@ -1388,7 +1388,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen interp, ) }; - let __t226 = v_V1289.clone(); + let __t226 = v_V943.clone(); rt::apply_direct(interp, "map", &[__t225, __t226])? }); } else { @@ -1398,7 +1398,7 @@ pub fn aot_shen_x2e_pretty_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1289.clone()); + break Ok(v_V943.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -1446,36 +1446,36 @@ pub fn aot_bootstrap(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1291 = args[0].clone(); + let mut v_V945 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1292 = { - let __t380 = v_V1291.clone(); + let v_W946 = { + let __t380 = v_V945.clone(); rt::apply_direct(interp, "shen.klfile", &[__t380])? }; { - let v_W1293 = { - let __t381 = v_V1291.clone(); + let v_W947 = { + let __t381 = v_V945.clone(); rt::apply_direct(interp, "read-file", &[__t381])? }; { - let v_W1294 = { - let __t382 = v_W1292.clone(); + let v_W948 = { + let __t382 = v_W946.clone(); let __t383 = Value::sym(interp.intern("out")); rt::apply_direct(interp, "open", &[__t382, __t383])? }; { - let v_W1295 = { + let v_W949 = { let __t386 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1296 = args[0].clone(); + let v_Z950 = args[0].clone(); Ok({ let __t385 = { - let __t384 = v_Z1296.clone(); + let __t384 = v_Z950.clone(); rt::apply_direct( interp, "shen.shen->kl-h", @@ -1489,16 +1489,16 @@ pub fn aot_bootstrap(interp: &mut Interp, args: &[Value]) -> ShenResult { interp, ) }; - let __t387 = v_W1293.clone(); + let __t387 = v_W947.clone(); rt::apply_direct(interp, "map", &[__t386, __t387])? }; { - let v_W1297 = { - let __t388 = v_W1295.clone(); - let __t389 = v_W1294.clone(); + let v_W951 = { + let __t388 = v_W949.clone(); + let __t389 = v_W948.clone(); rt::apply_direct(interp, "shen.write-kl", &[__t388, __t389])? }; - break Ok(v_W1292.clone()); + break Ok(v_W946.clone()); } } } @@ -1521,13 +1521,13 @@ pub fn aot_shen_x2e_partial(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult", 1, move |interp, args| { - let v_Z1299 = args[0].clone(); + let v_Z953 = args[0].clone(); Ok({ - let __t392 = v_Z1299.clone(); + let __t392 = v_Z953.clone(); rt::apply_direct(interp, "shen.partial", &[__t392])? }) }, @@ -1628,7 +1628,7 @@ pub fn aot_shen_x2e_partial(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V1298.clone()); + break Ok(v_V952.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -1664,15 +1664,15 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V1302 = args[0].clone(); + let mut v_V956 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1303 = args[1].clone(); + let mut v_V957 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t444 = { let __t441 = Value::nil(); - let __t442 = v_V1302.clone(); + let __t442 = v_V956.clone(); rt::eq(&__t441, &__t442) }; if match rt::is_truthy(interp, &__t444) { @@ -1680,14 +1680,14 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t443 = v_V1303.clone(); + let __t443 = v_V957.clone(); rt::apply_direct(interp, "close", &[__t443])? }); } else { { let __t440 = { let __t432 = { - let __t429 = v_V1302.clone(); + let __t429 = v_V956.clone(); rt::is_cons(&__t429) }; if !rt::is_truthy(interp, &__t432)? { @@ -1695,7 +1695,7 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes } else { let __t433 = { let __t431 = { - let __t430 = v_V1302.clone(); + let __t430 = v_V956.clone(); rt::hd(&__t430)? }; rt::is_cons(&__t431) @@ -1709,28 +1709,28 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes } { { let __t435 = { - let __t434 = v_V1302.clone(); + let __t434 = v_V956.clone(); rt::tl(&__t434)? }; let __t439 = { let _ = { let __t437 = { - let __t436 = v_V1302.clone(); + let __t436 = v_V956.clone(); rt::hd(&__t436)? }; - let __t438 = v_V1303.clone(); + let __t438 = v_V957.clone(); rt::apply_direct(interp, "shen.write-kl-h", &[__t437, __t438])? }; - v_V1303.clone() + v_V957.clone() }; - v_V1302 = __t435; - v_V1303 = __t439; + v_V956 = __t435; + v_V957 = __t439; continue; } } else { { let __t428 = { - let __t424 = v_V1302.clone(); + let __t424 = v_V956.clone(); rt::is_cons(&__t424) }; if match rt::is_truthy(interp, &__t428) { @@ -1739,12 +1739,12 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes } { { let __t426 = { - let __t425 = v_V1302.clone(); + let __t425 = v_V956.clone(); rt::tl(&__t425)? }; - let __t427 = v_V1303.clone(); - v_V1302 = __t426; - v_V1303 = __t427; + let __t427 = v_V957.clone(); + v_V956 = __t426; + v_V957 = __t427; continue; } } else { @@ -1755,8 +1755,9 @@ pub fn aot_shen_x2e_write_x2d_kl(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t422 = Value::sym(interp.intern("shen.write-kl")); - rt::apply_direct(interp, "shen.f-error", &[__t422])? + let __t422 = + Value::str("partial function shen.write-kl"); + rt::apply_direct(interp, "simple-error", &[__t422])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1785,15 +1786,15 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V1306 = args[0].clone(); + let mut v_V960 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1307 = args[1].clone(); + let mut v_V961 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t495 = { let __t491 = { - let __t451 = v_V1306.clone(); + let __t451 = v_V960.clone(); rt::is_cons(&__t451) }; if !rt::is_truthy(interp, &__t491)? { @@ -1803,7 +1804,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t489 = { let __t452 = Value::sym(interp.intern("defun")); let __t454 = { - let __t453 = v_V1306.clone(); + let __t453 = v_V960.clone(); rt::hd(&__t453)? }; rt::eq(&__t452, &__t454) @@ -1814,7 +1815,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t490 = { let __t487 = { let __t456 = { - let __t455 = v_V1306.clone(); + let __t455 = v_V960.clone(); rt::tl(&__t455)? }; rt::is_cons(&__t456) @@ -1827,7 +1828,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t457 = Value::sym(interp.intern("fail")); let __t460 = { let __t459 = { - let __t458 = v_V1306.clone(); + let __t458 = v_V960.clone(); rt::tl(&__t458)? }; rt::hd(&__t459)? @@ -1841,7 +1842,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t483 = { let __t463 = { let __t462 = { - let __t461 = v_V1306.clone(); + let __t461 = v_V960.clone(); rt::tl(&__t461)? }; rt::tl(&__t462)? @@ -1857,8 +1858,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t468 = { let __t467 = { let __t466 = { - let __t465 = - v_V1306.clone(); + let __t465 = v_V960.clone(); rt::tl(&__t465)? }; rt::tl(&__t466)? @@ -1876,7 +1876,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t471 = { let __t470 = { let __t469 = - v_V1306.clone(); + v_V960.clone(); rt::tl(&__t469)? }; rt::tl(&__t470)? @@ -1895,7 +1895,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S let __t477 = { let __t476 = { let __t475 = { - let __t474 = v_V1306.clone(); + let __t474 = v_V960.clone(); rt::tl( &__t474, )? @@ -1939,7 +1939,7 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ let __t493 = Value::str("(defun fail () shen.fail!)"); - let __t494 = v_V1307.clone(); + let __t494 = v_V961.clone(); rt::apply_direct(interp, "pr", &[__t493, __t494])? }); } else { @@ -1951,12 +1951,12 @@ pub fn aot_shen_x2e_write_x2d_kl_x2d_h(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ let __t448 = { - let __t445 = v_V1306.clone(); + let __t445 = v_V960.clone(); let __t446 = Value::str("\n\n"); let __t447 = Value::sym(interp.intern("shen.r")); rt::apply_direct(interp, "shen.app", &[__t445, __t446, __t447])? }; - let __t449 = v_V1307.clone(); + let __t449 = v_V961.clone(); rt::apply_direct(interp, "pr", &[__t448, __t449])? }); } else { @@ -1982,13 +1982,13 @@ pub fn aot_shen_x2e_klfile(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t496 = Value::sym(interp.intern("shen.klfile")); - rt::apply_direct(interp, "shen.f-error", &[__t496])? + let __t496 = Value::str("partial function shen.klfile"); + rt::apply_direct(interp, "simple-error", &[__t496])? }); } else { break Err(ShenError::new("cond: no clause matched")); diff --git a/crates/shen-rust/src/aot/kernel/macros.rs b/crates/shen-rust/src/aot/kernel/macros.rs index 9990ba7..1fa90b2 100644 --- a/crates/shen-rust/src/aot/kernel/macros.rs +++ b/crates/shen-rust/src/aot/kernel/macros.rs @@ -32,19 +32,19 @@ pub fn aot_macroexpand(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V6939 = args[0].clone(); + let mut v_V5783 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W6940 = { + let v_W5784 = { let __t1 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z6941 = args[0].clone(); + let v_Z5785 = args[0].clone(); Ok({ - let __t0 = v_Z6941.clone(); + let __t0 = v_Z5785.clone(); rt::tl(&__t0)? }) }, @@ -59,9 +59,9 @@ pub fn aot_macroexpand(interp: &mut Interp, args: &[Value]) -> ShenResult rt::apply_direct(interp, "map", &[__t1, __t3])? }; break Ok({ - let __t4 = v_V6939.clone(); - let __t5 = v_W6940.clone(); - let __t6 = v_W6940.clone(); + let __t4 = v_V5783.clone(); + let __t5 = v_W5784.clone(); + let __t6 = v_W5784.clone(); rt::apply_direct(interp, "shen.macroexpand-h", &[__t4, __t5, __t6])? }); } @@ -82,28 +82,28 @@ pub fn aot_shen_x2e_macroexpand_x2d_h(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V6950 = args[0].clone(); + let mut v_V5794 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6951 = args[1].clone(); + let mut v_V5795 = args[1].clone(); #[allow(unused_mut)] - let mut v_V6952 = args[2].clone(); + let mut v_V5796 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t9 = { let __t7 = Value::nil(); - let __t8 = v_V6951.clone(); + let __t8 = v_V5795.clone(); rt::eq(&__t7, &__t8) }; if match rt::is_truthy(interp, &__t9) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6950.clone()); + break Ok(v_V5794.clone()); } else { { let __t11 = { - let __t10 = v_V6951.clone(); + let __t10 = v_V5795.clone(); rt::is_cons(&__t10) }; if match rt::is_truthy(interp, &__t11) { @@ -111,18 +111,18 @@ pub fn aot_shen_x2e_macroexpand_x2d_h(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { { - let v_W6953 = { + let v_W5797 = { let __t13 = { - let __t12 = v_V6951.clone(); + let __t12 = v_V5795.clone(); rt::hd(&__t12)? }; - let __t14 = v_V6950.clone(); + let __t14 = v_V5794.clone(); rt::apply_direct(interp, "shen.walk", &[__t13, __t14])? }; { let __t17 = { - let __t15 = v_V6950.clone(); - let __t16 = v_W6953.clone(); + let __t15 = v_V5794.clone(); + let __t16 = v_W5797.clone(); rt::eq(&__t15, &__t16) }; if match rt::is_truthy(interp, &__t17) { @@ -130,25 +130,25 @@ pub fn aot_shen_x2e_macroexpand_x2d_h(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { { - let __t18 = v_V6950.clone(); + let __t18 = v_V5794.clone(); let __t20 = { - let __t19 = v_V6951.clone(); + let __t19 = v_V5795.clone(); rt::tl(&__t19)? }; - let __t21 = v_V6952.clone(); - v_V6950 = __t18; - v_V6951 = __t20; - v_V6952 = __t21; + let __t21 = v_V5796.clone(); + v_V5794 = __t18; + v_V5795 = __t20; + v_V5796 = __t21; continue; } } else { { - let __t22 = v_W6953.clone(); - let __t23 = v_V6952.clone(); - let __t24 = v_V6952.clone(); - v_V6950 = __t22; - v_V6951 = __t23; - v_V6952 = __t24; + let __t22 = v_W5797.clone(); + let __t23 = v_V5796.clone(); + let __t24 = v_V5796.clone(); + v_V5794 = __t22; + v_V5795 = __t23; + v_V5796 = __t24; continue; } } @@ -180,14 +180,14 @@ pub fn aot_shen_x2e_walk(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult", 1, move |interp, args| { - let v_Z6956 = args[0].clone(); + let v_Z5800 = args[0].clone(); Ok({ - let __t28 = v_V6954.clone(); - let __t29 = v_Z6956.clone(); + let __t28 = v_V5798.clone(); + let __t29 = v_Z5800.clone(); rt::apply_direct(interp, "shen.walk", &[__t28, __t29])? }) }, - vec![v_V6954], + vec![v_V5798], interp, ) }; - let __t31 = v_V6955.clone(); + let __t31 = v_V5799.clone(); rt::apply_direct(interp, "map", &[__t30, __t31])? }; - rt::apply_value(interp, v_V6954.clone(), &[__t32])? + rt::apply_value(interp, v_V5798.clone(), &[__t32])? }); } else { break Ok({ - let __t33 = v_V6955.clone(); - rt::apply_value(interp, v_V6954.clone(), &[__t33])? + let __t33 = v_V5799.clone(); + rt::apply_value(interp, v_V5798.clone(), &[__t33])? }); } } @@ -242,23 +242,23 @@ pub fn aot_shen_x2e_macros(interp: &mut Interp, args: &[Value]) -> ShenResult", 0, - move |interp, _args| Ok(v_V6957.clone()), - vec![v_V6957], + move |interp, _args| Ok(v_V5801.clone()), + vec![v_V5801], interp, ) }; { let __t35 = { - let __t34 = v_V6957.clone(); + let __t34 = v_V5801.clone(); rt::is_cons(&__t34) }; if match rt::is_truthy(interp, &__t35) { @@ -266,27 +266,27 @@ pub fn aot_shen_x2e_macros(interp: &mut Interp, args: &[Value]) -> ShenResult break Err(e), } { { - let v_Select6963 = { - let __t36 = v_V6957.clone(); + let v_Select5807 = { + let __t36 = v_V5801.clone(); rt::hd(&__t36)? }; { - let v_Select6964 = { - let __t37 = v_V6957.clone(); + let v_Select5808 = { + let __t37 = v_V5801.clone(); rt::tl(&__t37)? }; { let __t43 = { let __t41 = { let __t38 = Value::sym(interp.intern("defmacro")); - let __t39 = v_Select6963.clone(); + let __t39 = v_Select5807.clone(); rt::eq(&__t38, &__t39) }; if !rt::is_truthy(interp, &__t41)? { Value::bool(false) } else { let __t42 = { - let __t40 = v_Select6964.clone(); + let __t40 = v_Select5808.clone(); rt::is_cons(&__t40) }; Value::bool(rt::is_truthy(interp, &__t42)?) @@ -298,11 +298,11 @@ pub fn aot_shen_x2e_macros(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t51 = v_Select6964.clone(); + let __t51 = v_Select5808.clone(); rt::apply_direct( interp, "shen.yacc->shen", @@ -335,7 +335,7 @@ pub fn aot_shen_x2e_macros(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult b, Err(e) => break Err(e), } { break Ok({ let __t128 = { let __t127 = v_Select6964.clone(); rt::hd(&__t127)? }; let __t130 = { let __t129 = v_Select6964.clone(); rt::tl(&__t129)? }; rt::apply_direct(interp, "shen.mkstr", &[__t128, __t130])? }); } else { { let __t137 = { let __t135 = { let __t131 = Value::sym(interp.intern("lineread")); let __t132 = v_Select6963.clone(); rt::eq(&__t131, &__t132) }; if !rt::is_truthy(interp, &__t135)? { Value::bool(false) } else { let __t136 = { let __t133 = Value::nil(); let __t134 = v_Select6964.clone(); rt::eq(&__t133, &__t134) }; Value::bool(rt::is_truthy(interp, &__t136)?) } }; if match rt::is_truthy(interp, &__t137) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t138 = Value::sym(interp.intern("lineread")); let __t143 = { let __t141 = { let __t139 = Value::sym(interp.intern("stinput")); let __t140 = Value::nil(); rt::cons(&__t139, &__t140) }; let __t142 = Value::nil(); rt::cons(&__t141, &__t142) }; rt::cons(&__t138, &__t143) }); } else { { let __t150 = { let __t148 = { let __t144 = Value::sym(interp.intern("input")); let __t145 = v_Select6963.clone(); rt::eq(&__t144, &__t145) }; if !rt::is_truthy(interp, &__t148)? { Value::bool(false) } else { let __t149 = { let __t146 = Value::nil(); let __t147 = v_Select6964.clone(); rt::eq(&__t146, &__t147) }; Value::bool(rt::is_truthy(interp, &__t149)?) } }; if match rt::is_truthy(interp, &__t150) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t151 = Value::sym(interp.intern("input")); let __t156 = { let __t154 = { let __t152 = Value::sym(interp.intern("stinput")); let __t153 = Value::nil(); rt::cons(&__t152, &__t153) }; let __t155 = Value::nil(); rt::cons(&__t154, &__t155) }; rt::cons(&__t151, &__t156) }); } else { { let __t163 = { let __t161 = { let __t157 = Value::sym(interp.intern("read")); let __t158 = v_Select6963.clone(); rt::eq(&__t157, &__t158) }; if !rt::is_truthy(interp, &__t161)? { Value::bool(false) } else { let __t162 = { let __t159 = Value::nil(); let __t160 = v_Select6964.clone(); rt::eq(&__t159, &__t160) }; Value::bool(rt::is_truthy(interp, &__t162)?) } }; if match rt::is_truthy(interp, &__t163) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t164 = Value::sym(interp.intern("read")); let __t169 = { let __t167 = { let __t165 = Value::sym(interp.intern("stinput")); let __t166 = Value::nil(); rt::cons(&__t165, &__t166) }; let __t168 = Value::nil(); rt::cons(&__t167, &__t168) }; rt::cons(&__t164, &__t169) }); } else { { let __t180 = { let __t178 = { let __t170 = Value::sym(interp.intern("input+")); let __t171 = v_Select6963.clone(); rt::eq(&__t170, &__t171) }; if !rt::is_truthy(interp, &__t178)? { Value::bool(false) } else { let __t179 = { let __t176 = { let __t172 = v_Select6964.clone(); rt::is_cons(&__t172) }; if !rt::is_truthy(interp, &__t176)? { Value::bool(false) } else { let __t177 = { let __t173 = Value::nil(); let __t175 = { let __t174 = v_Select6964.clone(); rt::tl(&__t174)? }; rt::eq(&__t173, &__t175) }; Value::bool(rt::is_truthy(interp, &__t177)?) } }; Value::bool(rt::is_truthy(interp, &__t179)?) } }; if match rt::is_truthy(interp, &__t180) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t181 = Value::sym(interp.intern("input+")); let __t189 = { let __t183 = { let __t182 = v_Select6964.clone(); rt::hd(&__t182)? }; let __t188 = { let __t186 = { let __t184 = Value::sym(interp.intern("stinput")); let __t185 = Value::nil(); rt::cons(&__t184, &__t185) }; let __t187 = Value::nil(); rt::cons(&__t186, &__t187) }; rt::cons(&__t183, &__t188) }; rt::cons(&__t181, &__t189) }); } else { { let __t196 = { let __t194 = { let __t190 = Value::sym(interp.intern("read-byte")); let __t191 = v_Select6963.clone(); rt::eq(&__t190, &__t191) }; if !rt::is_truthy(interp, &__t194)? { Value::bool(false) } else { let __t195 = { let __t192 = Value::nil(); let __t193 = v_Select6964.clone(); rt::eq(&__t192, &__t193) }; Value::bool(rt::is_truthy(interp, &__t195)?) } }; if match rt::is_truthy(interp, &__t196) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.process-read-byte", &[])? }); } else { { let __t199 = { let __t197 = Value::sym(interp.intern("prolog?")); let __t198 = v_Select6963.clone(); rt::eq(&__t197, &__t198) }; if match rt::is_truthy(interp, &__t199) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t200 = v_Select6964.clone(); rt::apply_direct(interp, "shen.call-prolog", &[__t200])? }); } else { { let __t206 = { let __t204 = { let __t201 = Value::sym(interp.intern("defprolog")); let __t202 = v_Select6963.clone(); rt::eq(&__t201, &__t202) }; if !rt::is_truthy(interp, &__t204)? { Value::bool(false) } else { let __t205 = { let __t203 = v_Select6964.clone(); rt::is_cons(&__t203) }; Value::bool(rt::is_truthy(interp, &__t205)?) } }; if match rt::is_truthy(interp, &__t206) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t208 = { let __t207 = v_Select6964.clone(); rt::hd(&__t207)? }; let __t210 = { let __t209 = v_Select6964.clone(); rt::tl(&__t209)? }; rt::apply_direct(interp, "shen.compile-prolog", &[__t208, __t210])? }); } else { { let __t216 = { let __t214 = { let __t211 = Value::sym(interp.intern("datatype")); let __t212 = v_Select6963.clone(); rt::eq(&__t211, &__t212) }; if !rt::is_truthy(interp, &__t214)? { Value::bool(false) } else { let __t215 = { let __t213 = v_Select6964.clone(); rt::is_cons(&__t213) }; Value::bool(rt::is_truthy(interp, &__t215)?) } }; if match rt::is_truthy(interp, &__t216) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t218 = { let __t217 = v_Select6964.clone(); rt::hd(&__t217)? }; let __t220 = { let __t219 = v_Select6964.clone(); rt::tl(&__t219)? }; rt::apply_direct(interp, "shen.process-datatype", &[__t218, __t220])? }); } else { { let __t223 = { let __t221 = Value::sym(interp.intern("@s")); let __t222 = v_Select6963.clone(); rt::eq(&__t221, &__t222) }; if match rt::is_truthy(interp, &__t223) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t224 = v_V6957.clone(); rt::apply_direct(interp, "shen.process-@s", &[__t224])? }); } else { { let __t227 = { let __t225 = Value::sym(interp.intern("synonyms")); let __t226 = v_Select6963.clone(); rt::eq(&__t225, &__t226) }; if match rt::is_truthy(interp, &__t227) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t228 = v_Select6964.clone(); rt::apply_direct(interp, "shen.process-synonyms", &[__t228])? }); } else { { let __t235 = { let __t233 = { let __t229 = Value::sym(interp.intern("nl")); let __t230 = v_Select6963.clone(); rt::eq(&__t229, &__t230) }; if !rt::is_truthy(interp, &__t233)? { Value::bool(false) } else { let __t234 = { let __t231 = Value::nil(); let __t232 = v_Select6964.clone(); rt::eq(&__t231, &__t232) }; Value::bool(rt::is_truthy(interp, &__t234)?) } }; if match rt::is_truthy(interp, &__t235) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t236 = Value::sym(interp.intern("nl")); let __t239 = { let __t237 = Value::int(1i64); let __t238 = Value::nil(); rt::cons(&__t237, &__t238) }; rt::cons(&__t236, &__t239) }); } else { { let __t242 = { let __t240 = Value::sym(interp.intern("let")); let __t241 = v_Select6963.clone(); rt::eq(&__t240, &__t241) }; if match rt::is_truthy(interp, &__t242) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t243 = v_V6957.clone(); rt::apply_direct(interp, "shen.process-let", &[__t243])? }); } else { { let __t246 = { let __t244 = Value::sym(interp.intern("/.")); let __t245 = v_Select6963.clone(); rt::eq(&__t244, &__t245) }; if match rt::is_truthy(interp, &__t246) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t247 = v_V6957.clone(); rt::apply_direct(interp, "shen.process-lambda", &[__t247])? }); } else { { let __t250 = { let __t248 = Value::sym(interp.intern("cases")); let __t249 = v_Select6963.clone(); rt::eq(&__t248, &__t249) }; if match rt::is_truthy(interp, &__t250) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t251 = v_V6957.clone(); rt::apply_direct(interp, "shen.process-cases", &[__t251])? }); } else { { let __t262 = { let __t260 = { let __t252 = Value::sym(interp.intern("time")); let __t253 = v_Select6963.clone(); rt::eq(&__t252, &__t253) }; if !rt::is_truthy(interp, &__t260)? { Value::bool(false) } else { let __t261 = { let __t258 = { let __t254 = v_Select6964.clone(); rt::is_cons(&__t254) }; if !rt::is_truthy(interp, &__t258)? { Value::bool(false) } else { let __t259 = { let __t255 = Value::nil(); let __t257 = { let __t256 = v_Select6964.clone(); rt::tl(&__t256)? }; rt::eq(&__t255, &__t257) }; Value::bool(rt::is_truthy(interp, &__t259)?) } }; Value::bool(rt::is_truthy(interp, &__t261)?) } }; if match rt::is_truthy(interp, &__t262) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t264 = { let __t263 = v_Select6964.clone(); rt::hd(&__t263)? }; rt::apply_direct(interp, "shen.process-time", &[__t264])? }); } else { { let __t286 = { let __t284 = { let __t265 = Value::sym(interp.intern("put")); let __t266 = v_Select6963.clone(); rt::eq(&__t265, &__t266) }; if !rt::is_truthy(interp, &__t284)? { Value::bool(false) } else { let __t285 = { let __t282 = { let __t267 = v_Select6964.clone(); rt::is_cons(&__t267) }; if !rt::is_truthy(interp, &__t282)? { Value::bool(false) } else { let __t283 = { let __t280 = { let __t269 = { let __t268 = v_Select6964.clone(); rt::tl(&__t268)? }; rt::is_cons(&__t269) }; if !rt::is_truthy(interp, &__t280)? { Value::bool(false) } else { let __t281 = { let __t278 = { let __t272 = { let __t271 = { let __t270 = v_Select6964.clone(); rt::tl(&__t270)? }; rt::tl(&__t271)? }; rt::is_cons(&__t272) }; if !rt::is_truthy(interp, &__t278)? { Value::bool(false) } else { let __t279 = { let __t273 = Value::nil(); let __t277 = { let __t276 = { let __t275 = { let __t274 = v_Select6964.clone(); rt::tl(&__t274)? }; rt::tl(&__t275)? }; rt::tl(&__t276)? }; rt::eq(&__t273, &__t277) }; Value::bool(rt::is_truthy(interp, &__t279)?) } }; Value::bool(rt::is_truthy(interp, &__t281)?) } }; Value::bool(rt::is_truthy(interp, &__t283)?) } }; Value::bool(rt::is_truthy(interp, &__t285)?) } }; if match rt::is_truthy(interp, &__t286) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t287 = Value::sym(interp.intern("put")); let __t306 = { let __t289 = { let __t288 = v_Select6964.clone(); rt::hd(&__t288)? }; let __t305 = { let __t292 = { let __t291 = { let __t290 = v_Select6964.clone(); rt::tl(&__t290)? }; rt::hd(&__t291)? }; let __t304 = { let __t296 = { let __t295 = { let __t294 = { let __t293 = v_Select6964.clone(); rt::tl(&__t293)? }; rt::tl(&__t294)? }; rt::hd(&__t295)? }; let __t303 = { let __t301 = { let __t297 = Value::sym(interp.intern("value")); let __t300 = { let __t298 = Value::sym(interp.intern("*property-vector*")); let __t299 = Value::nil(); rt::cons(&__t298, &__t299) }; rt::cons(&__t297, &__t300) }; let __t302 = Value::nil(); rt::cons(&__t301, &__t302) }; rt::cons(&__t296, &__t303) }; rt::cons(&__t292, &__t304) }; rt::cons(&__t289, &__t305) }; rt::cons(&__t287, &__t306) }); } else { { let __t322 = { let __t320 = { let __t307 = Value::sym(interp.intern("get")); let __t308 = v_Select6963.clone(); rt::eq(&__t307, &__t308) }; if !rt::is_truthy(interp, &__t320)? { Value::bool(false) } else { let __t321 = { let __t318 = { let __t309 = v_Select6964.clone(); rt::is_cons(&__t309) }; if !rt::is_truthy(interp, &__t318)? { Value::bool(false) } else { let __t319 = { let __t316 = { let __t311 = { let __t310 = v_Select6964.clone(); rt::tl(&__t310)? }; rt::is_cons(&__t311) }; if !rt::is_truthy(interp, &__t316)? { Value::bool(false) } else { let __t317 = { let __t312 = Value::nil(); let __t315 = { let __t314 = { let __t313 = v_Select6964.clone(); rt::tl(&__t313)? }; rt::tl(&__t314)? }; rt::eq(&__t312, &__t315) }; Value::bool(rt::is_truthy(interp, &__t317)?) } }; Value::bool(rt::is_truthy(interp, &__t319)?) } }; Value::bool(rt::is_truthy(interp, &__t321)?) } }; if match rt::is_truthy(interp, &__t322) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t323 = Value::sym(interp.intern("get")); let __t337 = { let __t325 = { let __t324 = v_Select6964.clone(); rt::hd(&__t324)? }; let __t336 = { let __t328 = { let __t327 = { let __t326 = v_Select6964.clone(); rt::tl(&__t326)? }; rt::hd(&__t327)? }; let __t335 = { let __t333 = { let __t329 = Value::sym(interp.intern("value")); let __t332 = { let __t330 = Value::sym(interp.intern("*property-vector*")); let __t331 = Value::nil(); rt::cons(&__t330, &__t331) }; rt::cons(&__t329, &__t332) }; let __t334 = Value::nil(); rt::cons(&__t333, &__t334) }; rt::cons(&__t328, &__t335) }; rt::cons(&__t325, &__t336) }; rt::cons(&__t323, &__t337) }); } else { { let __t353 = { let __t351 = { let __t338 = Value::sym(interp.intern("unput")); let __t339 = v_Select6963.clone(); rt::eq(&__t338, &__t339) }; if !rt::is_truthy(interp, &__t351)? { Value::bool(false) } else { let __t352 = { let __t349 = { let __t340 = v_Select6964.clone(); rt::is_cons(&__t340) }; if !rt::is_truthy(interp, &__t349)? { Value::bool(false) } else { let __t350 = { let __t347 = { let __t342 = { let __t341 = v_Select6964.clone(); rt::tl(&__t341)? }; rt::is_cons(&__t342) }; if !rt::is_truthy(interp, &__t347)? { Value::bool(false) } else { let __t348 = { let __t343 = Value::nil(); let __t346 = { let __t345 = { let __t344 = v_Select6964.clone(); rt::tl(&__t344)? }; rt::tl(&__t345)? }; rt::eq(&__t343, &__t346) }; Value::bool(rt::is_truthy(interp, &__t348)?) } }; Value::bool(rt::is_truthy(interp, &__t350)?) } }; Value::bool(rt::is_truthy(interp, &__t352)?) } }; if match rt::is_truthy(interp, &__t353) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t354 = Value::sym(interp.intern("unput")); let __t368 = { let __t356 = { let __t355 = v_Select6964.clone(); rt::hd(&__t355)? }; let __t367 = { let __t359 = { let __t358 = { let __t357 = v_Select6964.clone(); rt::tl(&__t357)? }; rt::hd(&__t358)? }; let __t366 = { let __t364 = { let __t360 = Value::sym(interp.intern("value")); let __t363 = { let __t361 = Value::sym(interp.intern("*property-vector*")); let __t362 = Value::nil(); rt::cons(&__t361, &__t362) }; rt::cons(&__t360, &__t363) }; let __t365 = Value::nil(); rt::cons(&__t364, &__t365) }; rt::cons(&__t359, &__t366) }; rt::cons(&__t356, &__t367) }; rt::cons(&__t354, &__t368) }); } else { { let __t379 = { let __t377 = { let __t369 = Value::sym(interp.intern("shen.@c")); let __t370 = v_Select6963.clone(); rt::eq(&__t369, &__t370) }; if !rt::is_truthy(interp, &__t377)? { Value::bool(false) } else { let __t378 = { let __t375 = { let __t371 = v_Select6964.clone(); rt::is_cons(&__t371) }; if !rt::is_truthy(interp, &__t375)? { Value::bool(false) } else { let __t376 = { let __t372 = Value::nil(); let __t374 = { let __t373 = v_Select6964.clone(); rt::tl(&__t373)? }; rt::eq(&__t372, &__t374) }; Value::bool(rt::is_truthy(interp, &__t376)?) } }; Value::bool(rt::is_truthy(interp, &__t378)?) } }; if match rt::is_truthy(interp, &__t379) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t381 = { let __t380 = v_Select6964.clone(); rt::hd(&__t380)? }; rt::apply_direct(interp, "shen.rcons_form", &[__t381])? }); } else { { let v_GoTo6959 = { let v_GoTo6958 = v_GoTo6958.clone(); let v_Select6963 = v_Select6963.clone(); let v_Select6964 = v_Select6964.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t423 = { let __t410 = { let __t382 = v_Select6964.clone(); rt::is_cons(&__t382) }; if !rt::is_truthy(interp, &__t410)? { Value::bool(false) } else { let __t411 = { let __t408 = { let __t384 = { let __t383 = v_Select6964.clone(); rt::tl(&__t383)? }; rt::is_cons(&__t384) }; if !rt::is_truthy(interp, &__t408)? { Value::bool(false) } else { let __t409 = { let __t406 = { let __t387 = { let __t386 = { let __t385 = v_Select6964.clone(); rt::tl(&__t385)? }; rt::tl(&__t386)? }; rt::is_cons(&__t387) }; if !rt::is_truthy(interp, &__t406)? { Value::bool(false) } else { let __t407 = { let __t388 = v_Select6963.clone(); let __t405 = { let __t389 = Value::sym(interp.intern("@p")); let __t404 = { let __t390 = Value::sym(interp.intern("@v")); let __t403 = { let __t391 = Value::sym(interp.intern("append")); let __t402 = { let __t392 = Value::sym(interp.intern("and")); let __t401 = { let __t393 = Value::sym(interp.intern("or")); let __t400 = { let __t394 = Value::sym(interp.intern("+")); let __t399 = { let __t395 = Value::sym(interp.intern("*")); let __t398 = { let __t396 = Value::sym(interp.intern("do")); let __t397 = Value::nil(); rt::cons(&__t396, &__t397) }; rt::cons(&__t395, &__t398) }; rt::cons(&__t394, &__t399) }; rt::cons(&__t393, &__t400) }; rt::cons(&__t392, &__t401) }; rt::cons(&__t391, &__t402) }; rt::cons(&__t390, &__t403) }; rt::cons(&__t389, &__t404) }; rt::apply_direct(interp, "element?", &[__t388, __t405])? }; Value::bool(rt::is_truthy(interp, &__t407)?) } }; Value::bool(rt::is_truthy(interp, &__t409)?) } }; Value::bool(rt::is_truthy(interp, &__t411)?) } }; if rt::is_truthy(interp, &__t423)? { { let __t412 = v_Select6963.clone(); let __t422 = { let __t414 = { let __t413 = v_Select6964.clone(); rt::hd(&__t413)? }; let __t421 = { let __t419 = { let __t418 = { let __t415 = v_Select6963.clone(); let __t417 = { let __t416 = v_Select6964.clone(); rt::tl(&__t416)? }; rt::cons(&__t415, &__t417) }; rt::apply_direct(interp, "shen.process-assoc", &[__t418])? }; let __t420 = Value::nil(); rt::cons(&__t419, &__t420) }; rt::cons(&__t414, &__t421) }; rt::cons(&__t412, &__t422) } } else { rt::apply_value(interp, v_GoTo6958.clone(), &[])? } }), vec![v_GoTo6958, v_Select6963, v_Select6964], interp) }; { let __t426 = { let __t424 = Value::sym(interp.intern("shen.@ch")); let __t425 = v_Select6963.clone(); rt::eq(&__t424, &__t425) }; if match rt::is_truthy(interp, &__t426) { Ok(b) => b, Err(e) => break Err(e), } { { let __t428 = { let __t427 = v_Select6964.clone(); rt::is_cons(&__t427) }; if match rt::is_truthy(interp, &__t428) { Ok(b) => b, Err(e) => break Err(e), } { { let v_Select6961 = { let __t429 = v_Select6964.clone(); rt::hd(&__t429)? }; { let v_Select6962 = { let __t430 = v_Select6964.clone(); rt::tl(&__t430)? }; { let __t459 = { let __t457 = { let __t431 = v_Select6961.clone(); rt::is_cons(&__t431) }; if !rt::is_truthy(interp, &__t457)? { Value::bool(false) } else { let __t458 = { let __t455 = { let __t433 = { let __t432 = v_Select6961.clone(); rt::tl(&__t432)? }; rt::is_cons(&__t433) }; if !rt::is_truthy(interp, &__t455)? { Value::bool(false) } else { let __t456 = { let __t453 = { let __t436 = { let __t435 = { let __t434 = v_Select6961.clone(); rt::tl(&__t434)? }; rt::tl(&__t435)? }; rt::is_cons(&__t436) }; if !rt::is_truthy(interp, &__t453)? { Value::bool(false) } else { let __t454 = { let __t451 = { let __t437 = Value::nil(); let __t441 = { let __t440 = { let __t439 = { let __t438 = v_Select6961.clone(); rt::tl(&__t438)? }; rt::tl(&__t439)? }; rt::tl(&__t440)? }; rt::eq(&__t437, &__t441) }; if !rt::is_truthy(interp, &__t451)? { Value::bool(false) } else { let __t452 = { let __t449 = { let __t442 = Value::nil(); let __t443 = v_Select6962.clone(); rt::eq(&__t442, &__t443) }; if !rt::is_truthy(interp, &__t449)? { Value::bool(false) } else { let __t450 = { let __t446 = { let __t445 = { let __t444 = v_Select6961.clone(); rt::tl(&__t444)? }; rt::hd(&__t445)? }; let __t448 = { let __t447 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t447])? }; rt::eq(&__t446, &__t448) }; Value::bool(rt::is_truthy(interp, &__t450)?) } }; Value::bool(rt::is_truthy(interp, &__t452)?) } }; Value::bool(rt::is_truthy(interp, &__t454)?) } }; Value::bool(rt::is_truthy(interp, &__t456)?) } }; Value::bool(rt::is_truthy(interp, &__t458)?) } }; if match rt::is_truthy(interp, &__t459) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t477 = { let __t460 = Value::sym(interp.intern("-")); let __t476 = { let __t474 = { let __t462 = { let __t461 = v_Select6961.clone(); rt::hd(&__t461)? }; let __t473 = { let __t465 = { let __t464 = { let __t463 = v_Select6961.clone(); rt::tl(&__t463)? }; rt::hd(&__t464)? }; let __t472 = { let __t470 = { let __t466 = Value::sym(interp.intern("+")); let __t469 = { let __t468 = { let __t467 = v_Select6961.clone(); rt::tl(&__t467)? }; rt::tl(&__t468)? }; rt::cons(&__t466, &__t469) }; let __t471 = Value::nil(); rt::cons(&__t470, &__t471) }; rt::cons(&__t465, &__t472) }; rt::cons(&__t462, &__t473) }; let __t475 = Value::nil(); rt::cons(&__t474, &__t475) }; rt::cons(&__t460, &__t476) }; rt::apply_direct(interp, "shen.cons-form-respect-modes", &[__t477])? }); } else { { let __t480 = { let __t478 = Value::nil(); let __t479 = v_Select6962.clone(); rt::eq(&__t478, &__t479) }; if match rt::is_truthy(interp, &__t480) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t481 = v_Select6961.clone(); rt::apply_direct(interp, "shen.cons-form-respect-modes", &[__t481])? }); } else { break Ok(rt::apply_value(interp, v_GoTo6959.clone(), &[])?); } } } } } } } else { break Ok(rt::apply_value(interp, v_GoTo6959.clone(), &[])?); } } } else { break Ok(rt::apply_value(interp, v_GoTo6959.clone(), &[])?); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } + if match rt::is_truthy(interp, &__t126) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t128 = { let __t127 = v_Select5808.clone(); rt::hd(&__t127)? }; let __t130 = { let __t129 = v_Select5808.clone(); rt::tl(&__t129)? }; rt::apply_direct(interp, "shen.mkstr", &[__t128, __t130])? }); } else { { let __t137 = { let __t135 = { let __t131 = Value::sym(interp.intern("lineread")); let __t132 = v_Select5807.clone(); rt::eq(&__t131, &__t132) }; if !rt::is_truthy(interp, &__t135)? { Value::bool(false) } else { let __t136 = { let __t133 = Value::nil(); let __t134 = v_Select5808.clone(); rt::eq(&__t133, &__t134) }; Value::bool(rt::is_truthy(interp, &__t136)?) } }; if match rt::is_truthy(interp, &__t137) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t138 = Value::sym(interp.intern("lineread")); let __t143 = { let __t141 = { let __t139 = Value::sym(interp.intern("stinput")); let __t140 = Value::nil(); rt::cons(&__t139, &__t140) }; let __t142 = Value::nil(); rt::cons(&__t141, &__t142) }; rt::cons(&__t138, &__t143) }); } else { { let __t150 = { let __t148 = { let __t144 = Value::sym(interp.intern("input")); let __t145 = v_Select5807.clone(); rt::eq(&__t144, &__t145) }; if !rt::is_truthy(interp, &__t148)? { Value::bool(false) } else { let __t149 = { let __t146 = Value::nil(); let __t147 = v_Select5808.clone(); rt::eq(&__t146, &__t147) }; Value::bool(rt::is_truthy(interp, &__t149)?) } }; if match rt::is_truthy(interp, &__t150) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t151 = Value::sym(interp.intern("input")); let __t156 = { let __t154 = { let __t152 = Value::sym(interp.intern("stinput")); let __t153 = Value::nil(); rt::cons(&__t152, &__t153) }; let __t155 = Value::nil(); rt::cons(&__t154, &__t155) }; rt::cons(&__t151, &__t156) }); } else { { let __t163 = { let __t161 = { let __t157 = Value::sym(interp.intern("read")); let __t158 = v_Select5807.clone(); rt::eq(&__t157, &__t158) }; if !rt::is_truthy(interp, &__t161)? { Value::bool(false) } else { let __t162 = { let __t159 = Value::nil(); let __t160 = v_Select5808.clone(); rt::eq(&__t159, &__t160) }; Value::bool(rt::is_truthy(interp, &__t162)?) } }; if match rt::is_truthy(interp, &__t163) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t164 = Value::sym(interp.intern("read")); let __t169 = { let __t167 = { let __t165 = Value::sym(interp.intern("stinput")); let __t166 = Value::nil(); rt::cons(&__t165, &__t166) }; let __t168 = Value::nil(); rt::cons(&__t167, &__t168) }; rt::cons(&__t164, &__t169) }); } else { { let __t175 = { let __t173 = { let __t170 = Value::sym(interp.intern("input+")); let __t171 = v_Select5807.clone(); rt::eq(&__t170, &__t171) }; if !rt::is_truthy(interp, &__t173)? { Value::bool(false) } else { let __t174 = { let __t172 = v_Select5808.clone(); rt::is_cons(&__t172) }; Value::bool(rt::is_truthy(interp, &__t174)?) } }; if match rt::is_truthy(interp, &__t175) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t176 = v_V5801.clone(); rt::apply_direct(interp, "shen.process-input+", &[__t176])? }); } else { { let __t183 = { let __t181 = { let __t177 = Value::sym(interp.intern("read-byte")); let __t178 = v_Select5807.clone(); rt::eq(&__t177, &__t178) }; if !rt::is_truthy(interp, &__t181)? { Value::bool(false) } else { let __t182 = { let __t179 = Value::nil(); let __t180 = v_Select5808.clone(); rt::eq(&__t179, &__t180) }; Value::bool(rt::is_truthy(interp, &__t182)?) } }; if match rt::is_truthy(interp, &__t183) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.process-read-byte", &[])? }); } else { { let __t186 = { let __t184 = Value::sym(interp.intern("prolog?")); let __t185 = v_Select5807.clone(); rt::eq(&__t184, &__t185) }; if match rt::is_truthy(interp, &__t186) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t187 = v_Select5808.clone(); rt::apply_direct(interp, "shen.call-prolog", &[__t187])? }); } else { { let __t193 = { let __t191 = { let __t188 = Value::sym(interp.intern("defprolog")); let __t189 = v_Select5807.clone(); rt::eq(&__t188, &__t189) }; if !rt::is_truthy(interp, &__t191)? { Value::bool(false) } else { let __t192 = { let __t190 = v_Select5808.clone(); rt::is_cons(&__t190) }; Value::bool(rt::is_truthy(interp, &__t192)?) } }; if match rt::is_truthy(interp, &__t193) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t195 = { let __t194 = v_Select5808.clone(); rt::hd(&__t194)? }; let __t197 = { let __t196 = v_Select5808.clone(); rt::tl(&__t196)? }; rt::apply_direct(interp, "shen.compile-prolog", &[__t195, __t197])? }); } else { { let __t203 = { let __t201 = { let __t198 = Value::sym(interp.intern("datatype")); let __t199 = v_Select5807.clone(); rt::eq(&__t198, &__t199) }; if !rt::is_truthy(interp, &__t201)? { Value::bool(false) } else { let __t202 = { let __t200 = v_Select5808.clone(); rt::is_cons(&__t200) }; Value::bool(rt::is_truthy(interp, &__t202)?) } }; if match rt::is_truthy(interp, &__t203) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t205 = { let __t204 = v_Select5808.clone(); rt::hd(&__t204)? }; let __t207 = { let __t206 = v_Select5808.clone(); rt::tl(&__t206)? }; rt::apply_direct(interp, "shen.process-datatype", &[__t205, __t207])? }); } else { { let __t210 = { let __t208 = Value::sym(interp.intern("@s")); let __t209 = v_Select5807.clone(); rt::eq(&__t208, &__t209) }; if match rt::is_truthy(interp, &__t210) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t211 = v_V5801.clone(); rt::apply_direct(interp, "shen.process-@s", &[__t211])? }); } else { { let __t214 = { let __t212 = Value::sym(interp.intern("synonyms")); let __t213 = v_Select5807.clone(); rt::eq(&__t212, &__t213) }; if match rt::is_truthy(interp, &__t214) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t215 = v_Select5808.clone(); rt::apply_direct(interp, "shen.process-synonyms", &[__t215])? }); } else { { let __t222 = { let __t220 = { let __t216 = Value::sym(interp.intern("nl")); let __t217 = v_Select5807.clone(); rt::eq(&__t216, &__t217) }; if !rt::is_truthy(interp, &__t220)? { Value::bool(false) } else { let __t221 = { let __t218 = Value::nil(); let __t219 = v_Select5808.clone(); rt::eq(&__t218, &__t219) }; Value::bool(rt::is_truthy(interp, &__t221)?) } }; if match rt::is_truthy(interp, &__t222) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t223 = Value::sym(interp.intern("nl")); let __t226 = { let __t224 = Value::int(1i64); let __t225 = Value::nil(); rt::cons(&__t224, &__t225) }; rt::cons(&__t223, &__t226) }); } else { { let __t229 = { let __t227 = Value::sym(interp.intern("let")); let __t228 = v_Select5807.clone(); rt::eq(&__t227, &__t228) }; if match rt::is_truthy(interp, &__t229) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t230 = v_V5801.clone(); rt::apply_direct(interp, "shen.process-let", &[__t230])? }); } else { { let __t233 = { let __t231 = Value::sym(interp.intern("/.")); let __t232 = v_Select5807.clone(); rt::eq(&__t231, &__t232) }; if match rt::is_truthy(interp, &__t233) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t234 = v_V5801.clone(); rt::apply_direct(interp, "shen.process-lambda", &[__t234])? }); } else { { let __t237 = { let __t235 = Value::sym(interp.intern("cases")); let __t236 = v_Select5807.clone(); rt::eq(&__t235, &__t236) }; if match rt::is_truthy(interp, &__t237) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t238 = v_V5801.clone(); rt::apply_direct(interp, "shen.process-cases", &[__t238])? }); } else { { let __t249 = { let __t247 = { let __t239 = Value::sym(interp.intern("time")); let __t240 = v_Select5807.clone(); rt::eq(&__t239, &__t240) }; if !rt::is_truthy(interp, &__t247)? { Value::bool(false) } else { let __t248 = { let __t245 = { let __t241 = v_Select5808.clone(); rt::is_cons(&__t241) }; if !rt::is_truthy(interp, &__t245)? { Value::bool(false) } else { let __t246 = { let __t242 = Value::nil(); let __t244 = { let __t243 = v_Select5808.clone(); rt::tl(&__t243)? }; rt::eq(&__t242, &__t244) }; Value::bool(rt::is_truthy(interp, &__t246)?) } }; Value::bool(rt::is_truthy(interp, &__t248)?) } }; if match rt::is_truthy(interp, &__t249) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t251 = { let __t250 = v_Select5808.clone(); rt::hd(&__t250)? }; rt::apply_direct(interp, "shen.process-time", &[__t251])? }); } else { { let __t273 = { let __t271 = { let __t252 = Value::sym(interp.intern("put")); let __t253 = v_Select5807.clone(); rt::eq(&__t252, &__t253) }; if !rt::is_truthy(interp, &__t271)? { Value::bool(false) } else { let __t272 = { let __t269 = { let __t254 = v_Select5808.clone(); rt::is_cons(&__t254) }; if !rt::is_truthy(interp, &__t269)? { Value::bool(false) } else { let __t270 = { let __t267 = { let __t256 = { let __t255 = v_Select5808.clone(); rt::tl(&__t255)? }; rt::is_cons(&__t256) }; if !rt::is_truthy(interp, &__t267)? { Value::bool(false) } else { let __t268 = { let __t265 = { let __t259 = { let __t258 = { let __t257 = v_Select5808.clone(); rt::tl(&__t257)? }; rt::tl(&__t258)? }; rt::is_cons(&__t259) }; if !rt::is_truthy(interp, &__t265)? { Value::bool(false) } else { let __t266 = { let __t260 = Value::nil(); let __t264 = { let __t263 = { let __t262 = { let __t261 = v_Select5808.clone(); rt::tl(&__t261)? }; rt::tl(&__t262)? }; rt::tl(&__t263)? }; rt::eq(&__t260, &__t264) }; Value::bool(rt::is_truthy(interp, &__t266)?) } }; Value::bool(rt::is_truthy(interp, &__t268)?) } }; Value::bool(rt::is_truthy(interp, &__t270)?) } }; Value::bool(rt::is_truthy(interp, &__t272)?) } }; if match rt::is_truthy(interp, &__t273) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t274 = Value::sym(interp.intern("put")); let __t293 = { let __t276 = { let __t275 = v_Select5808.clone(); rt::hd(&__t275)? }; let __t292 = { let __t279 = { let __t278 = { let __t277 = v_Select5808.clone(); rt::tl(&__t277)? }; rt::hd(&__t278)? }; let __t291 = { let __t283 = { let __t282 = { let __t281 = { let __t280 = v_Select5808.clone(); rt::tl(&__t280)? }; rt::tl(&__t281)? }; rt::hd(&__t282)? }; let __t290 = { let __t288 = { let __t284 = Value::sym(interp.intern("value")); let __t287 = { let __t285 = Value::sym(interp.intern("*property-vector*")); let __t286 = Value::nil(); rt::cons(&__t285, &__t286) }; rt::cons(&__t284, &__t287) }; let __t289 = Value::nil(); rt::cons(&__t288, &__t289) }; rt::cons(&__t283, &__t290) }; rt::cons(&__t279, &__t291) }; rt::cons(&__t276, &__t292) }; rt::cons(&__t274, &__t293) }); } else { { let __t309 = { let __t307 = { let __t294 = Value::sym(interp.intern("get")); let __t295 = v_Select5807.clone(); rt::eq(&__t294, &__t295) }; if !rt::is_truthy(interp, &__t307)? { Value::bool(false) } else { let __t308 = { let __t305 = { let __t296 = v_Select5808.clone(); rt::is_cons(&__t296) }; if !rt::is_truthy(interp, &__t305)? { Value::bool(false) } else { let __t306 = { let __t303 = { let __t298 = { let __t297 = v_Select5808.clone(); rt::tl(&__t297)? }; rt::is_cons(&__t298) }; if !rt::is_truthy(interp, &__t303)? { Value::bool(false) } else { let __t304 = { let __t299 = Value::nil(); let __t302 = { let __t301 = { let __t300 = v_Select5808.clone(); rt::tl(&__t300)? }; rt::tl(&__t301)? }; rt::eq(&__t299, &__t302) }; Value::bool(rt::is_truthy(interp, &__t304)?) } }; Value::bool(rt::is_truthy(interp, &__t306)?) } }; Value::bool(rt::is_truthy(interp, &__t308)?) } }; if match rt::is_truthy(interp, &__t309) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t310 = Value::sym(interp.intern("get")); let __t324 = { let __t312 = { let __t311 = v_Select5808.clone(); rt::hd(&__t311)? }; let __t323 = { let __t315 = { let __t314 = { let __t313 = v_Select5808.clone(); rt::tl(&__t313)? }; rt::hd(&__t314)? }; let __t322 = { let __t320 = { let __t316 = Value::sym(interp.intern("value")); let __t319 = { let __t317 = Value::sym(interp.intern("*property-vector*")); let __t318 = Value::nil(); rt::cons(&__t317, &__t318) }; rt::cons(&__t316, &__t319) }; let __t321 = Value::nil(); rt::cons(&__t320, &__t321) }; rt::cons(&__t315, &__t322) }; rt::cons(&__t312, &__t323) }; rt::cons(&__t310, &__t324) }); } else { { let __t340 = { let __t338 = { let __t325 = Value::sym(interp.intern("unput")); let __t326 = v_Select5807.clone(); rt::eq(&__t325, &__t326) }; if !rt::is_truthy(interp, &__t338)? { Value::bool(false) } else { let __t339 = { let __t336 = { let __t327 = v_Select5808.clone(); rt::is_cons(&__t327) }; if !rt::is_truthy(interp, &__t336)? { Value::bool(false) } else { let __t337 = { let __t334 = { let __t329 = { let __t328 = v_Select5808.clone(); rt::tl(&__t328)? }; rt::is_cons(&__t329) }; if !rt::is_truthy(interp, &__t334)? { Value::bool(false) } else { let __t335 = { let __t330 = Value::nil(); let __t333 = { let __t332 = { let __t331 = v_Select5808.clone(); rt::tl(&__t331)? }; rt::tl(&__t332)? }; rt::eq(&__t330, &__t333) }; Value::bool(rt::is_truthy(interp, &__t335)?) } }; Value::bool(rt::is_truthy(interp, &__t337)?) } }; Value::bool(rt::is_truthy(interp, &__t339)?) } }; if match rt::is_truthy(interp, &__t340) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t341 = Value::sym(interp.intern("unput")); let __t355 = { let __t343 = { let __t342 = v_Select5808.clone(); rt::hd(&__t342)? }; let __t354 = { let __t346 = { let __t345 = { let __t344 = v_Select5808.clone(); rt::tl(&__t344)? }; rt::hd(&__t345)? }; let __t353 = { let __t351 = { let __t347 = Value::sym(interp.intern("value")); let __t350 = { let __t348 = Value::sym(interp.intern("*property-vector*")); let __t349 = Value::nil(); rt::cons(&__t348, &__t349) }; rt::cons(&__t347, &__t350) }; let __t352 = Value::nil(); rt::cons(&__t351, &__t352) }; rt::cons(&__t346, &__t353) }; rt::cons(&__t343, &__t354) }; rt::cons(&__t341, &__t355) }); } else { { let __t366 = { let __t364 = { let __t356 = Value::sym(interp.intern("shen.@c")); let __t357 = v_Select5807.clone(); rt::eq(&__t356, &__t357) }; if !rt::is_truthy(interp, &__t364)? { Value::bool(false) } else { let __t365 = { let __t362 = { let __t358 = v_Select5808.clone(); rt::is_cons(&__t358) }; if !rt::is_truthy(interp, &__t362)? { Value::bool(false) } else { let __t363 = { let __t359 = Value::nil(); let __t361 = { let __t360 = v_Select5808.clone(); rt::tl(&__t360)? }; rt::eq(&__t359, &__t361) }; Value::bool(rt::is_truthy(interp, &__t363)?) } }; Value::bool(rt::is_truthy(interp, &__t365)?) } }; if match rt::is_truthy(interp, &__t366) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t368 = { let __t367 = v_Select5808.clone(); rt::hd(&__t367)? }; rt::apply_direct(interp, "shen.rcons_form", &[__t368])? }); } else { { let v_GoTo5803 = { let v_GoTo5802 = v_GoTo5802.clone(); let v_Select5807 = v_Select5807.clone(); let v_Select5808 = v_Select5808.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t410 = { let __t397 = { let __t369 = v_Select5808.clone(); rt::is_cons(&__t369) }; if !rt::is_truthy(interp, &__t397)? { Value::bool(false) } else { let __t398 = { let __t395 = { let __t371 = { let __t370 = v_Select5808.clone(); rt::tl(&__t370)? }; rt::is_cons(&__t371) }; if !rt::is_truthy(interp, &__t395)? { Value::bool(false) } else { let __t396 = { let __t393 = { let __t374 = { let __t373 = { let __t372 = v_Select5808.clone(); rt::tl(&__t372)? }; rt::tl(&__t373)? }; rt::is_cons(&__t374) }; if !rt::is_truthy(interp, &__t393)? { Value::bool(false) } else { let __t394 = { let __t375 = v_Select5807.clone(); let __t392 = { let __t376 = Value::sym(interp.intern("@p")); let __t391 = { let __t377 = Value::sym(interp.intern("@v")); let __t390 = { let __t378 = Value::sym(interp.intern("append")); let __t389 = { let __t379 = Value::sym(interp.intern("and")); let __t388 = { let __t380 = Value::sym(interp.intern("or")); let __t387 = { let __t381 = Value::sym(interp.intern("+")); let __t386 = { let __t382 = Value::sym(interp.intern("*")); let __t385 = { let __t383 = Value::sym(interp.intern("do")); let __t384 = Value::nil(); rt::cons(&__t383, &__t384) }; rt::cons(&__t382, &__t385) }; rt::cons(&__t381, &__t386) }; rt::cons(&__t380, &__t387) }; rt::cons(&__t379, &__t388) }; rt::cons(&__t378, &__t389) }; rt::cons(&__t377, &__t390) }; rt::cons(&__t376, &__t391) }; rt::apply_direct(interp, "element?", &[__t375, __t392])? }; Value::bool(rt::is_truthy(interp, &__t394)?) } }; Value::bool(rt::is_truthy(interp, &__t396)?) } }; Value::bool(rt::is_truthy(interp, &__t398)?) } }; if rt::is_truthy(interp, &__t410)? { { let __t399 = v_Select5807.clone(); let __t409 = { let __t401 = { let __t400 = v_Select5808.clone(); rt::hd(&__t400)? }; let __t408 = { let __t406 = { let __t405 = { let __t402 = v_Select5807.clone(); let __t404 = { let __t403 = v_Select5808.clone(); rt::tl(&__t403)? }; rt::cons(&__t402, &__t404) }; rt::apply_direct(interp, "shen.process-assoc", &[__t405])? }; let __t407 = Value::nil(); rt::cons(&__t406, &__t407) }; rt::cons(&__t401, &__t408) }; rt::cons(&__t399, &__t409) } } else { rt::apply_value(interp, v_GoTo5802.clone(), &[])? } }), vec![v_GoTo5802, v_Select5807, v_Select5808], interp) }; { let __t413 = { let __t411 = Value::sym(interp.intern("shen.@ch")); let __t412 = v_Select5807.clone(); rt::eq(&__t411, &__t412) }; if match rt::is_truthy(interp, &__t413) { Ok(b) => b, Err(e) => break Err(e), } { { let __t415 = { let __t414 = v_Select5808.clone(); rt::is_cons(&__t414) }; if match rt::is_truthy(interp, &__t415) { Ok(b) => b, Err(e) => break Err(e), } { { let v_Select5805 = { let __t416 = v_Select5808.clone(); rt::hd(&__t416)? }; { let v_Select5806 = { let __t417 = v_Select5808.clone(); rt::tl(&__t417)? }; { let __t446 = { let __t444 = { let __t418 = v_Select5805.clone(); rt::is_cons(&__t418) }; if !rt::is_truthy(interp, &__t444)? { Value::bool(false) } else { let __t445 = { let __t442 = { let __t420 = { let __t419 = v_Select5805.clone(); rt::tl(&__t419)? }; rt::is_cons(&__t420) }; if !rt::is_truthy(interp, &__t442)? { Value::bool(false) } else { let __t443 = { let __t440 = { let __t423 = { let __t422 = { let __t421 = v_Select5805.clone(); rt::tl(&__t421)? }; rt::tl(&__t422)? }; rt::is_cons(&__t423) }; if !rt::is_truthy(interp, &__t440)? { Value::bool(false) } else { let __t441 = { let __t438 = { let __t424 = Value::nil(); let __t428 = { let __t427 = { let __t426 = { let __t425 = v_Select5805.clone(); rt::tl(&__t425)? }; rt::tl(&__t426)? }; rt::tl(&__t427)? }; rt::eq(&__t424, &__t428) }; if !rt::is_truthy(interp, &__t438)? { Value::bool(false) } else { let __t439 = { let __t436 = { let __t429 = Value::nil(); let __t430 = v_Select5806.clone(); rt::eq(&__t429, &__t430) }; if !rt::is_truthy(interp, &__t436)? { Value::bool(false) } else { let __t437 = { let __t433 = { let __t432 = { let __t431 = v_Select5805.clone(); rt::tl(&__t431)? }; rt::hd(&__t432)? }; let __t435 = { let __t434 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t434])? }; rt::eq(&__t433, &__t435) }; Value::bool(rt::is_truthy(interp, &__t437)?) } }; Value::bool(rt::is_truthy(interp, &__t439)?) } }; Value::bool(rt::is_truthy(interp, &__t441)?) } }; Value::bool(rt::is_truthy(interp, &__t443)?) } }; Value::bool(rt::is_truthy(interp, &__t445)?) } }; if match rt::is_truthy(interp, &__t446) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t464 = { let __t447 = Value::sym(interp.intern("-")); let __t463 = { let __t461 = { let __t449 = { let __t448 = v_Select5805.clone(); rt::hd(&__t448)? }; let __t460 = { let __t452 = { let __t451 = { let __t450 = v_Select5805.clone(); rt::tl(&__t450)? }; rt::hd(&__t451)? }; let __t459 = { let __t457 = { let __t453 = Value::sym(interp.intern("+")); let __t456 = { let __t455 = { let __t454 = v_Select5805.clone(); rt::tl(&__t454)? }; rt::tl(&__t455)? }; rt::cons(&__t453, &__t456) }; let __t458 = Value::nil(); rt::cons(&__t457, &__t458) }; rt::cons(&__t452, &__t459) }; rt::cons(&__t449, &__t460) }; let __t462 = Value::nil(); rt::cons(&__t461, &__t462) }; rt::cons(&__t447, &__t463) }; rt::apply_direct(interp, "shen.cons-form-respect-modes", &[__t464])? }); } else { { let __t467 = { let __t465 = Value::nil(); let __t466 = v_Select5806.clone(); rt::eq(&__t465, &__t466) }; if match rt::is_truthy(interp, &__t467) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t468 = v_Select5805.clone(); rt::apply_direct(interp, "shen.cons-form-respect-modes", &[__t468])? }); } else { break Ok(rt::apply_value(interp, v_GoTo5803.clone(), &[])?); } } } } } } } else { break Ok(rt::apply_value(interp, v_GoTo5803.clone(), &[])?); } } } else { break Ok(rt::apply_value(interp, v_GoTo5803.clone(), &[])?); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } @@ -635,7 +635,7 @@ pub fn aot_shen_x2e_macros(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "shen.process-input+: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V5809 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let v_GoTo5810 = { + rt::make_aot_closure( + "", + 0, + move |interp, _args| { + Ok({ + let __t469 = Value::str("partial function shen.process-input+"); + rt::apply_direct(interp, "simple-error", &[__t469])? + }) + }, + Vec::new(), + interp, + ) + }; + { + let __t471 = { + let __t470 = v_V5809.clone(); + rt::is_cons(&__t470) + }; + if match rt::is_truthy(interp, &__t471) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let v_Select5815 = { + let __t472 = v_V5809.clone(); + rt::tl(&__t472)? + }; + { + let __t476 = { + let __t473 = Value::sym(interp.intern("input+")); + let __t475 = { + let __t474 = v_V5809.clone(); + rt::hd(&__t474)? + }; + rt::eq(&__t473, &__t475) + }; + if match rt::is_truthy(interp, &__t476) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t478 = { + let __t477 = v_Select5815.clone(); + rt::is_cons(&__t477) + }; + if match rt::is_truthy(interp, &__t478) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let v_Select5813 = { + let __t479 = v_Select5815.clone(); + rt::hd(&__t479)? + }; + { + let v_Select5814 = { + let __t480 = v_Select5815.clone(); + rt::tl(&__t480)? + }; + { + let __t483 = { + let __t481 = Value::nil(); + let __t482 = v_Select5814.clone(); + rt::eq(&__t481, &__t482) + }; + if match rt::is_truthy(interp, &__t483) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t484 = Value::sym( + interp.intern("shen.input-h+"), + ); + let __t492 = { + let __t486 = { + let __t485 = + v_Select5813.clone(); + rt::apply_direct( + interp, + "shen.rcons_form", + &[__t485], + )? + }; + let __t491 = { + let __t489 = { + let __t487 = Value::sym( + interp + .intern("stinput"), + ); + let __t488 = Value::nil(); + rt::cons(&__t487, &__t488) + }; + let __t490 = Value::nil(); + rt::cons(&__t489, &__t490) + }; + rt::cons(&__t486, &__t491) + }; + rt::cons(&__t484, &__t492) + }); + } else { + { + let __t499 = { + let __t497 = { + let __t493 = + v_Select5814.clone(); + rt::is_cons(&__t493) + }; + if !rt::is_truthy(interp, &__t497)? + { + Value::bool(false) + } else { + let __t498 = { + let __t494 = Value::nil(); + let __t496 = { + let __t495 = + v_Select5814 + .clone(); + rt::tl(&__t495)? + }; + rt::eq(&__t494, &__t496) + }; + Value::bool(rt::is_truthy( + interp, &__t498, + )?) + } + }; + if match rt::is_truthy(interp, &__t499) + { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t500 = + Value::sym(interp.intern( + "shen.input-h+", + )); + let __t504 = { + let __t502 = { + let __t501 = + v_Select5813 + .clone(); + rt::apply_direct( + interp, + "shen.rcons_form", + &[__t501], + )? + }; + let __t503 = + v_Select5814.clone(); + rt::cons(&__t502, &__t503) + }; + rt::cons(&__t500, &__t504) + }); + } else { + break Ok(rt::apply_value( + interp, + v_GoTo5810.clone(), + &[], + )?); + } + } + } + } + } + } + } else { + break Ok(rt::apply_value( + interp, + v_GoTo5810.clone(), + &[], + )?); + } + } + } else { + break Ok(rt::apply_value(interp, v_GoTo5810.clone(), &[])?); + } + } + } + } else { + break Ok(rt::apply_value(interp, v_GoTo5810.clone(), &[])?); + } + } + } + } +} + +fn install_shen_x2e_process_x2d_input_x2b_(interp: &mut Interp) { + interp.register_native( + "shen.process-input+", + 1, + aot_shen_x2e_process_x2d_input_x2b_, + ); + interp.register_aot_direct("shen.process-input+", aot_shen_x2e_process_x2d_input_x2b_); +} + /// AOT-compiled from KL `(defun shen.cons-form-respect-modes ...)` pub fn aot_shen_x2e_cons_x2d_form_x2d_respect_x2d_modes( interp: &mut Interp, @@ -659,177 +871,177 @@ pub fn aot_shen_x2e_cons_x2d_form_x2d_respect_x2d_modes( ))); } #[allow(unused_mut)] - let mut v_V6965 = args[0].clone(); + let mut v_V5816 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_GoTo6966 = { - let v_V6965 = v_V6965.clone(); + let v_GoTo5817 = { + let v_V5816 = v_V5816.clone(); rt::make_aot_closure( "", 0, - move |interp, _args| Ok(v_V6965.clone()), - vec![v_V6965], + move |interp, _args| Ok(v_V5816.clone()), + vec![v_V5816], interp, ) }; { - let __t483 = { - let __t482 = v_V6965.clone(); - rt::is_cons(&__t482) + let __t506 = { + let __t505 = v_V5816.clone(); + rt::is_cons(&__t505) }; - if match rt::is_truthy(interp, &__t483) { + if match rt::is_truthy(interp, &__t506) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select6967 = { - let __t484 = v_V6965.clone(); - rt::hd(&__t484)? + let v_Select5818 = { + let __t507 = v_V5816.clone(); + rt::hd(&__t507)? }; { - let v_Select6968 = { - let __t485 = v_V6965.clone(); - rt::tl(&__t485)? + let v_Select5819 = { + let __t508 = v_V5816.clone(); + rt::tl(&__t508)? }; { - let __t496 = { - let __t494 = { - let __t486 = Value::sym(interp.intern("+")); - let __t487 = v_Select6967.clone(); - rt::eq(&__t486, &__t487) + let __t519 = { + let __t517 = { + let __t509 = Value::sym(interp.intern("+")); + let __t510 = v_Select5818.clone(); + rt::eq(&__t509, &__t510) }; - if !rt::is_truthy(interp, &__t494)? { + if !rt::is_truthy(interp, &__t517)? { Value::bool(false) } else { - let __t495 = { - let __t492 = { - let __t488 = v_Select6968.clone(); - rt::is_cons(&__t488) + let __t518 = { + let __t515 = { + let __t511 = v_Select5819.clone(); + rt::is_cons(&__t511) }; - if !rt::is_truthy(interp, &__t492)? { + if !rt::is_truthy(interp, &__t515)? { Value::bool(false) } else { - let __t493 = { - let __t489 = Value::nil(); - let __t491 = { - let __t490 = v_Select6968.clone(); - rt::tl(&__t490)? + let __t516 = { + let __t512 = Value::nil(); + let __t514 = { + let __t513 = v_Select5819.clone(); + rt::tl(&__t513)? }; - rt::eq(&__t489, &__t491) + rt::eq(&__t512, &__t514) }; - Value::bool(rt::is_truthy(interp, &__t493)?) + Value::bool(rt::is_truthy(interp, &__t516)?) } }; - Value::bool(rt::is_truthy(interp, &__t495)?) + Value::bool(rt::is_truthy(interp, &__t518)?) } }; - if match rt::is_truthy(interp, &__t496) { + if match rt::is_truthy(interp, &__t519) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t497 = Value::sym(interp.intern("+")); - let __t502 = { - let __t500 = { - let __t499 = { - let __t498 = v_Select6968.clone(); - rt::hd(&__t498)? + let __t520 = Value::sym(interp.intern("+")); + let __t525 = { + let __t523 = { + let __t522 = { + let __t521 = v_Select5819.clone(); + rt::hd(&__t521)? }; rt::apply_direct( interp, "shen.cons-form-respect-modes", - &[__t499], + &[__t522], )? }; - let __t501 = Value::nil(); - rt::cons(&__t500, &__t501) + let __t524 = Value::nil(); + rt::cons(&__t523, &__t524) }; - rt::cons(&__t497, &__t502) + rt::cons(&__t520, &__t525) }); } else { { - let __t513 = { - let __t511 = { - let __t503 = Value::sym(interp.intern("-")); - let __t504 = v_Select6967.clone(); - rt::eq(&__t503, &__t504) + let __t536 = { + let __t534 = { + let __t526 = Value::sym(interp.intern("-")); + let __t527 = v_Select5818.clone(); + rt::eq(&__t526, &__t527) }; - if !rt::is_truthy(interp, &__t511)? { + if !rt::is_truthy(interp, &__t534)? { Value::bool(false) } else { - let __t512 = { - let __t509 = { - let __t505 = v_Select6968.clone(); - rt::is_cons(&__t505) + let __t535 = { + let __t532 = { + let __t528 = v_Select5819.clone(); + rt::is_cons(&__t528) }; - if !rt::is_truthy(interp, &__t509)? { + if !rt::is_truthy(interp, &__t532)? { Value::bool(false) } else { - let __t510 = { - let __t506 = Value::nil(); - let __t508 = { - let __t507 = v_Select6968.clone(); - rt::tl(&__t507)? + let __t533 = { + let __t529 = Value::nil(); + let __t531 = { + let __t530 = v_Select5819.clone(); + rt::tl(&__t530)? }; - rt::eq(&__t506, &__t508) + rt::eq(&__t529, &__t531) }; - Value::bool(rt::is_truthy(interp, &__t510)?) + Value::bool(rt::is_truthy(interp, &__t533)?) } }; - Value::bool(rt::is_truthy(interp, &__t512)?) + Value::bool(rt::is_truthy(interp, &__t535)?) } }; - if match rt::is_truthy(interp, &__t513) { + if match rt::is_truthy(interp, &__t536) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t514 = Value::sym(interp.intern("-")); - let __t519 = { - let __t517 = { - let __t516 = { - let __t515 = v_Select6968.clone(); - rt::hd(&__t515)? + let __t537 = Value::sym(interp.intern("-")); + let __t542 = { + let __t540 = { + let __t539 = { + let __t538 = v_Select5819.clone(); + rt::hd(&__t538)? }; rt::apply_direct( interp, "shen.cons-form-respect-modes", - &[__t516], + &[__t539], )? }; - let __t518 = Value::nil(); - rt::cons(&__t517, &__t518) + let __t541 = Value::nil(); + rt::cons(&__t540, &__t541) }; - rt::cons(&__t514, &__t519) + rt::cons(&__t537, &__t542) }); } else { break Ok({ - let __t520 = Value::sym(interp.intern("cons")); - let __t527 = { - let __t522 = { - let __t521 = v_Select6967.clone(); + let __t543 = Value::sym(interp.intern("cons")); + let __t550 = { + let __t545 = { + let __t544 = v_Select5818.clone(); rt::apply_direct( interp, "shen.cons-form-respect-modes", - &[__t521], + &[__t544], )? }; - let __t526 = { - let __t524 = { - let __t523 = v_Select6968.clone(); + let __t549 = { + let __t547 = { + let __t546 = v_Select5819.clone(); rt::apply_direct( interp, "shen.cons-form-respect-modes", - &[__t523], + &[__t546], )? }; - let __t525 = Value::nil(); - rt::cons(&__t524, &__t525) + let __t548 = Value::nil(); + rt::cons(&__t547, &__t548) }; - rt::cons(&__t522, &__t526) + rt::cons(&__t545, &__t549) }; - rt::cons(&__t520, &__t527) + rt::cons(&__t543, &__t550) }); } } @@ -838,7 +1050,7 @@ pub fn aot_shen_x2e_cons_x2d_form_x2d_respect_x2d_modes( } } } else { - break Ok(rt::apply_value(interp, v_GoTo6966.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5817.clone(), &[])?); } } } @@ -866,52 +1078,52 @@ pub fn aot_shen_x2e_process_x2d_def(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V6969 = args[0].clone(); + let mut v_V5820 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6970 = args[1].clone(); + let mut v_V5821 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W6971 = { - let __t528 = Value::sym(interp.intern("X")); - let __t533 = { - let __t529 = Value::sym(interp.intern("->")); - let __t532 = { - let __t530 = Value::sym(interp.intern("X")); - let __t531 = Value::nil(); - rt::cons(&__t530, &__t531) + let v_W5822 = { + let __t551 = Value::sym(interp.intern("X")); + let __t556 = { + let __t552 = Value::sym(interp.intern("->")); + let __t555 = { + let __t553 = Value::sym(interp.intern("X")); + let __t554 = Value::nil(); + rt::cons(&__t553, &__t554) }; - rt::cons(&__t529, &__t532) + rt::cons(&__t552, &__t555) }; - rt::cons(&__t528, &__t533) + rt::cons(&__t551, &__t556) }; { - let v_W6972 = { - let __t540 = { - let __t534 = Value::sym(interp.intern("define")); - let __t539 = { - let __t535 = v_V6969.clone(); - let __t538 = { - let __t536 = v_V6970.clone(); - let __t537 = v_W6971.clone(); - rt::apply_direct(interp, "append", &[__t536, __t537])? + let v_W5823 = { + let __t563 = { + let __t557 = Value::sym(interp.intern("define")); + let __t562 = { + let __t558 = v_V5820.clone(); + let __t561 = { + let __t559 = v_V5821.clone(); + let __t560 = v_W5822.clone(); + rt::apply_direct(interp, "append", &[__t559, __t560])? }; - rt::cons(&__t535, &__t538) + rt::cons(&__t558, &__t561) }; - rt::cons(&__t534, &__t539) + rt::cons(&__t557, &__t562) }; - rt::apply_direct(interp, "eval", &[__t540])? + rt::apply_direct(interp, "eval", &[__t563])? }; { - let v_W6973 = { - let __t541 = v_V6969.clone(); - let __t543 = { - let __t542 = v_V6969.clone(); - rt::apply_direct(interp, "fn", &[__t542])? + let v_W5824 = { + let __t564 = v_V5820.clone(); + let __t566 = { + let __t565 = v_V5820.clone(); + rt::apply_direct(interp, "fn", &[__t565])? }; - rt::apply_direct(interp, "shen.record-macro", &[__t541, __t543])? + rt::apply_direct(interp, "shen.record-macro", &[__t564, __t566])? }; - break Ok(v_V6969.clone()); + break Ok(v_V5820.clone()); } } } @@ -932,155 +1144,155 @@ pub fn aot_shen_x2e_process_x2d_let(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V6974 = args[0].clone(); + let mut v_V5825 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t572 = { - let __t570 = { - let __t544 = v_V6974.clone(); - rt::is_cons(&__t544) + let __t595 = { + let __t593 = { + let __t567 = v_V5825.clone(); + rt::is_cons(&__t567) }; - if !rt::is_truthy(interp, &__t570)? { + if !rt::is_truthy(interp, &__t593)? { Value::bool(false) } else { - let __t571 = { - let __t568 = { - let __t545 = Value::sym(interp.intern("let")); - let __t547 = { - let __t546 = v_V6974.clone(); - rt::hd(&__t546)? + let __t594 = { + let __t591 = { + let __t568 = Value::sym(interp.intern("let")); + let __t570 = { + let __t569 = v_V5825.clone(); + rt::hd(&__t569)? }; - rt::eq(&__t545, &__t547) + rt::eq(&__t568, &__t570) }; - if !rt::is_truthy(interp, &__t568)? { + if !rt::is_truthy(interp, &__t591)? { Value::bool(false) } else { - let __t569 = { - let __t566 = { - let __t549 = { - let __t548 = v_V6974.clone(); - rt::tl(&__t548)? + let __t592 = { + let __t589 = { + let __t572 = { + let __t571 = v_V5825.clone(); + rt::tl(&__t571)? }; - rt::is_cons(&__t549) + rt::is_cons(&__t572) }; - if !rt::is_truthy(interp, &__t566)? { + if !rt::is_truthy(interp, &__t589)? { Value::bool(false) } else { - let __t567 = { - let __t564 = { - let __t552 = { - let __t551 = { - let __t550 = v_V6974.clone(); - rt::tl(&__t550)? + let __t590 = { + let __t587 = { + let __t575 = { + let __t574 = { + let __t573 = v_V5825.clone(); + rt::tl(&__t573)? }; - rt::tl(&__t551)? + rt::tl(&__t574)? }; - rt::is_cons(&__t552) + rt::is_cons(&__t575) }; - if !rt::is_truthy(interp, &__t564)? { + if !rt::is_truthy(interp, &__t587)? { Value::bool(false) } else { - let __t565 = { - let __t562 = { - let __t556 = { - let __t555 = { - let __t554 = { - let __t553 = v_V6974.clone(); - rt::tl(&__t553)? + let __t588 = { + let __t585 = { + let __t579 = { + let __t578 = { + let __t577 = { + let __t576 = v_V5825.clone(); + rt::tl(&__t576)? }; - rt::tl(&__t554)? + rt::tl(&__t577)? }; - rt::tl(&__t555)? + rt::tl(&__t578)? }; - rt::is_cons(&__t556) + rt::is_cons(&__t579) }; - if !rt::is_truthy(interp, &__t562)? { + if !rt::is_truthy(interp, &__t585)? { Value::bool(false) } else { - let __t563 = { - let __t561 = { - let __t560 = { - let __t559 = { - let __t558 = { - let __t557 = - v_V6974.clone(); - rt::tl(&__t557)? + let __t586 = { + let __t584 = { + let __t583 = { + let __t582 = { + let __t581 = { + let __t580 = + v_V5825.clone(); + rt::tl(&__t580)? }; - rt::tl(&__t558)? + rt::tl(&__t581)? }; - rt::tl(&__t559)? + rt::tl(&__t582)? }; - rt::tl(&__t560)? + rt::tl(&__t583)? }; - rt::is_cons(&__t561) + rt::is_cons(&__t584) }; - Value::bool(rt::is_truthy(interp, &__t563)?) + Value::bool(rt::is_truthy(interp, &__t586)?) } }; - Value::bool(rt::is_truthy(interp, &__t565)?) + Value::bool(rt::is_truthy(interp, &__t588)?) } }; - Value::bool(rt::is_truthy(interp, &__t567)?) + Value::bool(rt::is_truthy(interp, &__t590)?) } }; - Value::bool(rt::is_truthy(interp, &__t569)?) + Value::bool(rt::is_truthy(interp, &__t592)?) } }; - Value::bool(rt::is_truthy(interp, &__t571)?) + Value::bool(rt::is_truthy(interp, &__t594)?) } }; - if match rt::is_truthy(interp, &__t572) { + if match rt::is_truthy(interp, &__t595) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t573 = Value::sym(interp.intern("let")); - let __t590 = { - let __t576 = { - let __t575 = { - let __t574 = v_V6974.clone(); - rt::tl(&__t574)? + let __t596 = Value::sym(interp.intern("let")); + let __t613 = { + let __t599 = { + let __t598 = { + let __t597 = v_V5825.clone(); + rt::tl(&__t597)? }; - rt::hd(&__t575)? + rt::hd(&__t598)? }; - let __t589 = { - let __t580 = { - let __t579 = { - let __t578 = { - let __t577 = v_V6974.clone(); - rt::tl(&__t577)? + let __t612 = { + let __t603 = { + let __t602 = { + let __t601 = { + let __t600 = v_V5825.clone(); + rt::tl(&__t600)? }; - rt::tl(&__t578)? + rt::tl(&__t601)? }; - rt::hd(&__t579)? + rt::hd(&__t602)? }; - let __t588 = { - let __t586 = { - let __t581 = Value::sym(interp.intern("let")); - let __t585 = { - let __t584 = { - let __t583 = { - let __t582 = v_V6974.clone(); - rt::tl(&__t582)? + let __t611 = { + let __t609 = { + let __t604 = Value::sym(interp.intern("let")); + let __t608 = { + let __t607 = { + let __t606 = { + let __t605 = v_V5825.clone(); + rt::tl(&__t605)? }; - rt::tl(&__t583)? + rt::tl(&__t606)? }; - rt::tl(&__t584)? + rt::tl(&__t607)? }; - rt::cons(&__t581, &__t585) + rt::cons(&__t604, &__t608) }; - let __t587 = Value::nil(); - rt::cons(&__t586, &__t587) + let __t610 = Value::nil(); + rt::cons(&__t609, &__t610) }; - rt::cons(&__t580, &__t588) + rt::cons(&__t603, &__t611) }; - rt::cons(&__t576, &__t589) + rt::cons(&__t599, &__t612) }; - rt::cons(&__t573, &__t590) + rt::cons(&__t596, &__t613) }); } else { - break Ok(v_V6974.clone()); + break Ok(v_V5825.clone()); } } } @@ -1100,189 +1312,189 @@ pub fn aot_shen_x2e_process_x2d__x40_s(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V6975 = args[0].clone(); + let mut v_V5826 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_GoTo6977 = { - let v_V6975 = v_V6975.clone(); + let v_GoTo5828 = { + let v_V5826 = v_V5826.clone(); rt::make_aot_closure( "", 0, - move |interp, _args| Ok(v_V6975.clone()), - vec![v_V6975], + move |interp, _args| Ok(v_V5826.clone()), + vec![v_V5826], interp, ) }; { - let __t592 = { - let __t591 = v_V6975.clone(); - rt::is_cons(&__t591) + let __t615 = { + let __t614 = v_V5826.clone(); + rt::is_cons(&__t614) }; - if match rt::is_truthy(interp, &__t592) { + if match rt::is_truthy(interp, &__t615) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select6984 = { - let __t593 = v_V6975.clone(); - rt::tl(&__t593)? + let v_Select5835 = { + let __t616 = v_V5826.clone(); + rt::tl(&__t616)? }; { - let __t597 = { - let __t594 = Value::sym(interp.intern("@s")); - let __t596 = { - let __t595 = v_V6975.clone(); - rt::hd(&__t595)? + let __t620 = { + let __t617 = Value::sym(interp.intern("@s")); + let __t619 = { + let __t618 = v_V5826.clone(); + rt::hd(&__t618)? }; - rt::eq(&__t594, &__t596) + rt::eq(&__t617, &__t619) }; - if match rt::is_truthy(interp, &__t597) { + if match rt::is_truthy(interp, &__t620) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t599 = { - let __t598 = v_Select6984.clone(); - rt::is_cons(&__t598) + let __t622 = { + let __t621 = v_Select5835.clone(); + rt::is_cons(&__t621) }; - if match rt::is_truthy(interp, &__t599) { + if match rt::is_truthy(interp, &__t622) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select6982 = { - let __t600 = v_Select6984.clone(); - rt::hd(&__t600)? + let v_Select5833 = { + let __t623 = v_Select5835.clone(); + rt::hd(&__t623)? }; { - let v_Select6983 = { - let __t601 = v_Select6984.clone(); - rt::tl(&__t601)? + let v_Select5834 = { + let __t624 = v_Select5835.clone(); + rt::tl(&__t624)? }; { - let __t603 = { - let __t602 = v_Select6983.clone(); - rt::is_cons(&__t602) + let __t626 = { + let __t625 = v_Select5834.clone(); + rt::is_cons(&__t625) }; - if match rt::is_truthy(interp, &__t603) { + if match rt::is_truthy(interp, &__t626) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select6981 = { - let __t604 = v_Select6983.clone(); - rt::tl(&__t604)? + let v_Select5832 = { + let __t627 = v_Select5834.clone(); + rt::tl(&__t627)? }; { - let __t606 = { - let __t605 = - v_Select6981.clone(); - rt::is_cons(&__t605) + let __t629 = { + let __t628 = + v_Select5832.clone(); + rt::is_cons(&__t628) }; if match rt::is_truthy( - interp, &__t606, + interp, &__t629, ) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t607 = Value::sym( + let __t630 = Value::sym( interp.intern("@s"), ); - let __t615 = { - let __t608 = - v_Select6982 + let __t638 = { + let __t631 = + v_Select5833 .clone(); - let __t614 = { - let __t612 = { - let __t611 = { - let __t609 = Value::sym(interp.intern("@s")); - let __t610 = v_Select6983.clone(); + let __t637 = { + let __t635 = { + let __t634 = { + let __t632 = Value::sym(interp.intern("@s")); + let __t633 = v_Select5834.clone(); rt::cons( - &__t609, - &__t610, + &__t632, + &__t633, ) }; - rt::apply_direct(interp, "shen.process-@s", &[__t611])? + rt::apply_direct(interp, "shen.process-@s", &[__t634])? }; - let __t613 = + let __t636 = Value::nil(); rt::cons( - &__t612, - &__t613, + &__t635, + &__t636, ) }; rt::cons( - &__t608, &__t614, + &__t631, &__t637, ) }; - rt::cons(&__t607, &__t615) + rt::cons(&__t630, &__t638) }); } else { { - let __t621 = { - let __t619 = { - let __t616 = + let __t644 = { + let __t642 = { + let __t639 = Value::nil(); - let __t617 = - v_Select6981 + let __t640 = + v_Select5832 .clone(); rt::eq( - &__t616, - &__t617, + &__t639, + &__t640, ) }; if !rt::is_truthy( - interp, &__t619, + interp, &__t642, )? { Value::bool(false) } else { - let __t620 = { - let __t618 = v_Select6982.clone(); + let __t643 = { + let __t641 = v_Select5833.clone(); rt::is_string( - &__t618, + &__t641, ) }; Value::bool( rt::is_truthy( interp, - &__t620, + &__t643, )?, ) } }; if match rt::is_truthy( - interp, &__t621, + interp, &__t644, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W6976 = { - let __t622 = v_Select6982.clone(); - rt::apply_direct(interp, "explode", &[__t622])? + let v_W5827 = { + let __t645 = v_Select5833.clone(); + rt::apply_direct(interp, "explode", &[__t645])? }; { - let __t626 = { - let __t624 = { - let __t623 = v_W6976.clone(); - rt::apply_direct(interp, "length", &[__t623])? + let __t649 = { + let __t647 = { + let __t646 = v_W5827.clone(); + rt::apply_direct(interp, "length", &[__t646])? }; - let __t625 = Value::int(1i64); + let __t648 = Value::int(1i64); rt::gt( - &__t624, - &__t625, + &__t647, + &__t648, )? }; - if match rt::is_truthy(interp, &__t626) { Ok(b) => b, Err(e) => break Err(e), } { { let __t631 = { let __t627 = Value::sym(interp.intern("@s")); let __t630 = { let __t628 = v_W6976.clone(); let __t629 = v_Select6983.clone(); rt::apply_direct(interp, "append", &[__t628, __t629])? }; rt::cons(&__t627, &__t630) }; v_V6975 = __t631; continue; } } else { break Ok(v_V6975.clone()); } + if match rt::is_truthy(interp, &__t649) { Ok(b) => b, Err(e) => break Err(e), } { { let __t654 = { let __t650 = Value::sym(interp.intern("@s")); let __t653 = { let __t651 = v_W5827.clone(); let __t652 = v_Select5834.clone(); rt::apply_direct(interp, "append", &[__t651, __t652])? }; rt::cons(&__t650, &__t653) }; v_V5826 = __t654; continue; } } else { break Ok(v_V5826.clone()); } } } } else { break Ok( rt::apply_value( interp, - v_GoTo6977 + v_GoTo5828 .clone(), &[], )?, @@ -1295,7 +1507,7 @@ pub fn aot_shen_x2e_process_x2d__x40_s(interp: &mut Interp, args: &[Value]) -> S } else { break Ok(rt::apply_value( interp, - v_GoTo6977.clone(), + v_GoTo5828.clone(), &[], )?); } @@ -1305,18 +1517,18 @@ pub fn aot_shen_x2e_process_x2d__x40_s(interp: &mut Interp, args: &[Value]) -> S } else { break Ok(rt::apply_value( interp, - v_GoTo6977.clone(), + v_GoTo5828.clone(), &[], )?); } } } else { - break Ok(rt::apply_value(interp, v_GoTo6977.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5828.clone(), &[])?); } } } } else { - break Ok(rt::apply_value(interp, v_GoTo6977.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5828.clone(), &[])?); } } } @@ -1337,41 +1549,41 @@ pub fn aot_shen_x2e_process_x2d_datatype(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V6985 = args[0].clone(); + let mut v_V5836 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6986 = args[1].clone(); + let mut v_V5837 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W6987 = { - let __t632 = v_V6985.clone(); - rt::apply_direct(interp, "shen.intern-type", &[__t632])? + let v_W5838 = { + let __t655 = v_V5836.clone(); + rt::apply_direct(interp, "shen.intern-type", &[__t655])? }; { - let v_W6988 = { - let __t634 = { + let v_W5839 = { + let __t657 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z6989 = args[0].clone(); + let v_Z5840 = args[0].clone(); Ok({ - let __t633 = v_Z6989.clone(); - rt::apply_direct(interp, "shen.", &[__t633])? + let __t656 = v_Z5840.clone(); + rt::apply_direct(interp, "shen.", &[__t656])? }) }, Vec::new(), interp, ) }; - let __t637 = { - let __t635 = v_W6987.clone(); - let __t636 = v_V6986.clone(); - rt::cons(&__t635, &__t636) + let __t660 = { + let __t658 = v_W5838.clone(); + let __t659 = v_V5837.clone(); + rt::cons(&__t658, &__t659) }; - rt::apply_direct(interp, "compile", &[__t634, __t637])? + rt::apply_direct(interp, "compile", &[__t657, __t660])? }; - break Ok(v_W6987.clone()); + break Ok(v_W5838.clone()); } } } @@ -1395,19 +1607,19 @@ pub fn aot_shen_x2e_intern_x2d_type(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V6990 = args[0].clone(); + let mut v_V5841 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t641 = { - let __t639 = { - let __t638 = v_V6990.clone(); - rt::apply_direct(interp, "str", &[__t638])? + let __t664 = { + let __t662 = { + let __t661 = v_V5841.clone(); + rt::apply_direct(interp, "str", &[__t661])? }; - let __t640 = Value::str("#type"); - rt::apply_direct(interp, "cn", &[__t639, __t640])? + let __t663 = Value::str("#type"); + rt::apply_direct(interp, "cn", &[__t662, __t663])? }; - rt::apply_direct(interp, "intern", &[__t641])? + rt::apply_direct(interp, "intern", &[__t664])? }); } } @@ -1426,23 +1638,23 @@ pub fn aot_shen_x2e_process_x2d_synonyms(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V6991 = args[0].clone(); + let mut v_V5842 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t647 = { - let __t642 = Value::sym(interp.intern("shen.*synonyms*")); - let __t646 = { - let __t643 = v_V6991.clone(); - let __t645 = { - let __t644 = Value::sym(interp.intern("shen.*synonyms*")); - rt::apply_direct(interp, "value", &[__t644])? + let __t670 = { + let __t665 = Value::sym(interp.intern("shen.*synonyms*")); + let __t669 = { + let __t666 = v_V5842.clone(); + let __t668 = { + let __t667 = Value::sym(interp.intern("shen.*synonyms*")); + rt::apply_direct(interp, "value", &[__t667])? }; - rt::apply_direct(interp, "append", &[__t643, __t645])? + rt::apply_direct(interp, "append", &[__t666, __t668])? }; - rt::apply_direct(interp, "set", &[__t642, __t646])? + rt::apply_direct(interp, "set", &[__t665, __t669])? }; - rt::apply_direct(interp, "shen.synonyms-h", &[__t647])? + rt::apply_direct(interp, "shen.synonyms-h", &[__t670])? }); } } @@ -1456,225 +1668,6 @@ fn install_shen_x2e_process_x2d_synonyms(interp: &mut Interp) { interp.register_aot_direct("shen.process-synonyms", aot_shen_x2e_process_x2d_synonyms); } -/// AOT-compiled from KL `(defun shen.lambda-of-defun ...)` -pub fn aot_shen_x2e_lambda_x2d_of_x2d_defun( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.lambda-of-defun: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V6994 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t691 = { - let __t689 = { - let __t648 = v_V6994.clone(); - rt::is_cons(&__t648) - }; - if !rt::is_truthy(interp, &__t689)? { - Value::bool(false) - } else { - let __t690 = { - let __t687 = { - let __t649 = Value::sym(interp.intern("defun")); - let __t651 = { - let __t650 = v_V6994.clone(); - rt::hd(&__t650)? - }; - rt::eq(&__t649, &__t651) - }; - if !rt::is_truthy(interp, &__t687)? { - Value::bool(false) - } else { - let __t688 = { - let __t685 = { - let __t653 = { - let __t652 = v_V6994.clone(); - rt::tl(&__t652)? - }; - rt::is_cons(&__t653) - }; - if !rt::is_truthy(interp, &__t685)? { - Value::bool(false) - } else { - let __t686 = { - let __t683 = { - let __t656 = { - let __t655 = { - let __t654 = v_V6994.clone(); - rt::tl(&__t654)? - }; - rt::tl(&__t655)? - }; - rt::is_cons(&__t656) - }; - if !rt::is_truthy(interp, &__t683)? { - Value::bool(false) - } else { - let __t684 = { - let __t681 = { - let __t660 = { - let __t659 = { - let __t658 = { - let __t657 = v_V6994.clone(); - rt::tl(&__t657)? - }; - rt::tl(&__t658)? - }; - rt::hd(&__t659)? - }; - rt::is_cons(&__t660) - }; - if !rt::is_truthy(interp, &__t681)? { - Value::bool(false) - } else { - let __t682 = { - let __t679 = { - let __t661 = Value::nil(); - let __t666 = { - let __t665 = { - let __t664 = { - let __t663 = { - let __t662 = - v_V6994.clone(); - rt::tl(&__t662)? - }; - rt::tl(&__t663)? - }; - rt::hd(&__t664)? - }; - rt::tl(&__t665)? - }; - rt::eq(&__t661, &__t666) - }; - if !rt::is_truthy(interp, &__t679)? { - Value::bool(false) - } else { - let __t680 = { - let __t677 = { - let __t670 = { - let __t669 = { - let __t668 = { - let __t667 = - v_V6994.clone(); - rt::tl(&__t667)? - }; - rt::tl(&__t668)? - }; - rt::tl(&__t669)? - }; - rt::is_cons(&__t670) - }; - if !rt::is_truthy(interp, &__t677)? - { - Value::bool(false) - } else { - let __t678 = { - let __t671 = Value::nil(); - let __t676 = { - let __t675 = { - let __t674 = { - let __t673 = { - let __t672 = v_V6994.clone(); - rt::tl( - &__t672, - )? - }; - rt::tl(&__t673)? - }; - rt::tl(&__t674)? - }; - rt::tl(&__t675)? - }; - rt::eq(&__t671, &__t676) - }; - Value::bool(rt::is_truthy( - interp, &__t678, - )?) - } - }; - Value::bool(rt::is_truthy( - interp, &__t680, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t682)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t684)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t686)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t688)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t690)?) - } - }; - if match rt::is_truthy(interp, &__t691) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t703 = { - let __t692 = Value::sym(interp.intern("/.")); - let __t702 = { - let __t697 = { - let __t696 = { - let __t695 = { - let __t694 = { - let __t693 = v_V6994.clone(); - rt::tl(&__t693)? - }; - rt::tl(&__t694)? - }; - rt::hd(&__t695)? - }; - rt::hd(&__t696)? - }; - let __t701 = { - let __t700 = { - let __t699 = { - let __t698 = v_V6994.clone(); - rt::tl(&__t698)? - }; - rt::tl(&__t699)? - }; - rt::tl(&__t700)? - }; - rt::cons(&__t697, &__t701) - }; - rt::cons(&__t692, &__t702) - }; - rt::apply_direct(interp, "eval", &[__t703])? - }); - } else { - break Ok({ - let __t704 = Value::sym(interp.intern("shen.lambda-of-defun")); - rt::apply_direct(interp, "shen.f-error", &[__t704])? - }); - } - } - } -} - -fn install_shen_x2e_lambda_x2d_of_x2d_defun(interp: &mut Interp) { - interp.register_native( - "shen.lambda-of-defun", - 1, - aot_shen_x2e_lambda_x2d_of_x2d_defun, - ); - interp.register_aot_direct("shen.lambda-of-defun", aot_shen_x2e_lambda_x2d_of_x2d_defun); -} - /// AOT-compiled from KL `(defun shen.synonyms-h ...)` pub fn aot_shen_x2e_synonyms_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { @@ -1684,49 +1677,46 @@ pub fn aot_shen_x2e_synonyms_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V6995 = args[0].clone(); + let mut v_V5843 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W6996 = { - let __t706 = { + let v_W5844 = { + let __t672 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z6997 = args[0].clone(); + let v_Z5845 = args[0].clone(); Ok({ - let __t705 = v_Z6997.clone(); - rt::apply_direct(interp, "shen.curry-type", &[__t705])? + let __t671 = v_Z5845.clone(); + rt::apply_direct(interp, "shen.curry-type", &[__t671])? }) }, Vec::new(), interp, ) }; - let __t707 = v_V6995.clone(); - rt::apply_direct(interp, "map", &[__t706, __t707])? + let __t673 = v_V5843.clone(); + rt::apply_direct(interp, "map", &[__t672, __t673])? }; { - let v_W6998 = { - let __t711 = { - let __t708 = Value::sym(interp.intern("shen.demod")); - let __t710 = { - let __t709 = v_W6996.clone(); - rt::apply_direct(interp, "shen.compile-synonyms", &[__t709])? + let v_W5846 = { + let __t679 = { + let __t674 = Value::sym(interp.intern("define")); + let __t678 = { + let __t675 = Value::sym(interp.intern("shen.demod")); + let __t677 = { + let __t676 = v_W5844.clone(); + rt::apply_direct(interp, "shen.compile-synonyms", &[__t676])? + }; + rt::cons(&__t675, &__t677) }; - rt::apply_direct(interp, "shen.shendef->kldef", &[__t708, __t710])? + rt::cons(&__t674, &__t678) }; - rt::apply_direct(interp, "shen.lambda-of-defun", &[__t711])? + rt::apply_direct(interp, "eval", &[__t679])? }; - { - let v_W6999 = { - let __t712 = Value::sym(interp.intern("shen.*demodulation-function*")); - let __t713 = v_W6998.clone(); - rt::apply_direct(interp, "set", &[__t712, __t713])? - }; - break Ok(Value::sym(interp.intern("synonyms"))); - } + break Ok(Value::sym(interp.intern("synonyms"))); } } } @@ -1746,108 +1736,108 @@ pub fn aot_shen_x2e_compile_x2d_synonyms(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V7002 = args[0].clone(); + let mut v_V5849 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t716 = { - let __t714 = Value::nil(); - let __t715 = v_V7002.clone(); - rt::eq(&__t714, &__t715) + let __t682 = { + let __t680 = Value::nil(); + let __t681 = v_V5849.clone(); + rt::eq(&__t680, &__t681) }; - if match rt::is_truthy(interp, &__t716) { + if match rt::is_truthy(interp, &__t682) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W7003 = { - let __t717 = Value::sym(interp.intern("X")); - rt::apply_direct(interp, "gensym", &[__t717])? + let v_W5850 = { + let __t683 = Value::sym(interp.intern("X")); + rt::apply_direct(interp, "gensym", &[__t683])? }; break Ok({ - let __t718 = v_W7003.clone(); - let __t723 = { - let __t719 = Value::sym(interp.intern("->")); - let __t722 = { - let __t720 = v_W7003.clone(); - let __t721 = Value::nil(); - rt::cons(&__t720, &__t721) + let __t684 = v_W5850.clone(); + let __t689 = { + let __t685 = Value::sym(interp.intern("->")); + let __t688 = { + let __t686 = v_W5850.clone(); + let __t687 = Value::nil(); + rt::cons(&__t686, &__t687) }; - rt::cons(&__t719, &__t722) + rt::cons(&__t685, &__t688) }; - rt::cons(&__t718, &__t723) + rt::cons(&__t684, &__t689) }); } } else { { - let __t729 = { - let __t727 = { - let __t724 = v_V7002.clone(); - rt::is_cons(&__t724) + let __t695 = { + let __t693 = { + let __t690 = v_V5849.clone(); + rt::is_cons(&__t690) }; - if !rt::is_truthy(interp, &__t727)? { + if !rt::is_truthy(interp, &__t693)? { Value::bool(false) } else { - let __t728 = { - let __t726 = { - let __t725 = v_V7002.clone(); - rt::tl(&__t725)? + let __t694 = { + let __t692 = { + let __t691 = v_V5849.clone(); + rt::tl(&__t691)? }; - rt::is_cons(&__t726) + rt::is_cons(&__t692) }; - Value::bool(rt::is_truthy(interp, &__t728)?) + Value::bool(rt::is_truthy(interp, &__t694)?) } }; - if match rt::is_truthy(interp, &__t729) { + if match rt::is_truthy(interp, &__t695) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t732 = { - let __t731 = { - let __t730 = v_V7002.clone(); - rt::hd(&__t730)? + let __t698 = { + let __t697 = { + let __t696 = v_V5849.clone(); + rt::hd(&__t696)? }; - rt::apply_direct(interp, "shen.rcons_form", &[__t731])? + rt::apply_direct(interp, "shen.rcons_form", &[__t697])? }; - let __t743 = { - let __t733 = Value::sym(interp.intern("->")); - let __t742 = { - let __t737 = { - let __t736 = { - let __t735 = { - let __t734 = v_V7002.clone(); - rt::tl(&__t734)? + let __t709 = { + let __t699 = Value::sym(interp.intern("->")); + let __t708 = { + let __t703 = { + let __t702 = { + let __t701 = { + let __t700 = v_V5849.clone(); + rt::tl(&__t700)? }; - rt::hd(&__t735)? + rt::hd(&__t701)? }; - rt::apply_direct(interp, "shen.rcons_form", &[__t736])? + rt::apply_direct(interp, "shen.rcons_form", &[__t702])? }; - let __t741 = { - let __t740 = { - let __t739 = { - let __t738 = v_V7002.clone(); - rt::tl(&__t738)? + let __t707 = { + let __t706 = { + let __t705 = { + let __t704 = v_V5849.clone(); + rt::tl(&__t704)? }; - rt::tl(&__t739)? + rt::tl(&__t705)? }; rt::apply_direct( interp, "shen.compile-synonyms", - &[__t740], + &[__t706], )? }; - rt::cons(&__t737, &__t741) + rt::cons(&__t703, &__t707) }; - rt::cons(&__t733, &__t742) + rt::cons(&__t699, &__t708) }; - rt::cons(&__t732, &__t743) + rt::cons(&__t698, &__t709) }); } else { break Ok({ - let __t744 = + let __t710 = Value::str("synonyms requires an even number of arguments\n"); - rt::apply_direct(interp, "simple-error", &[__t744])? + rt::apply_direct(interp, "simple-error", &[__t710])? }); } } @@ -1874,153 +1864,153 @@ pub fn aot_shen_x2e_process_x2d_lambda(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V7004 = args[0].clone(); + let mut v_V5851 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_GoTo7005 = { - let v_V7004 = v_V7004.clone(); + let v_GoTo5852 = { + let v_V5851 = v_V5851.clone(); rt::make_aot_closure( "", 0, - move |interp, _args| Ok(v_V7004.clone()), - vec![v_V7004], + move |interp, _args| Ok(v_V5851.clone()), + vec![v_V5851], interp, ) }; { - let __t746 = { - let __t745 = v_V7004.clone(); - rt::is_cons(&__t745) + let __t712 = { + let __t711 = v_V5851.clone(); + rt::is_cons(&__t711) }; - if match rt::is_truthy(interp, &__t746) { + if match rt::is_truthy(interp, &__t712) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7012 = { - let __t747 = v_V7004.clone(); - rt::tl(&__t747)? + let v_Select5859 = { + let __t713 = v_V5851.clone(); + rt::tl(&__t713)? }; { - let __t751 = { - let __t748 = Value::sym(interp.intern("/.")); - let __t750 = { - let __t749 = v_V7004.clone(); - rt::hd(&__t749)? + let __t717 = { + let __t714 = Value::sym(interp.intern("/.")); + let __t716 = { + let __t715 = v_V5851.clone(); + rt::hd(&__t715)? }; - rt::eq(&__t748, &__t750) + rt::eq(&__t714, &__t716) }; - if match rt::is_truthy(interp, &__t751) { + if match rt::is_truthy(interp, &__t717) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t753 = { - let __t752 = v_Select7012.clone(); - rt::is_cons(&__t752) + let __t719 = { + let __t718 = v_Select5859.clone(); + rt::is_cons(&__t718) }; - if match rt::is_truthy(interp, &__t753) { + if match rt::is_truthy(interp, &__t719) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7010 = { - let __t754 = v_Select7012.clone(); - rt::hd(&__t754)? + let v_Select5857 = { + let __t720 = v_Select5859.clone(); + rt::hd(&__t720)? }; { - let v_Select7011 = { - let __t755 = v_Select7012.clone(); - rt::tl(&__t755)? + let v_Select5858 = { + let __t721 = v_Select5859.clone(); + rt::tl(&__t721)? }; { - let __t757 = { - let __t756 = v_Select7011.clone(); - rt::is_cons(&__t756) + let __t723 = { + let __t722 = v_Select5858.clone(); + rt::is_cons(&__t722) }; - if match rt::is_truthy(interp, &__t757) { + if match rt::is_truthy(interp, &__t723) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7009 = { - let __t758 = v_Select7011.clone(); - rt::tl(&__t758)? + let v_Select5856 = { + let __t724 = v_Select5858.clone(); + rt::tl(&__t724)? }; { - let __t760 = { - let __t759 = - v_Select7009.clone(); - rt::is_cons(&__t759) + let __t726 = { + let __t725 = + v_Select5856.clone(); + rt::is_cons(&__t725) }; if match rt::is_truthy( - interp, &__t760, + interp, &__t726, ) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t761 = Value::sym( + let __t727 = Value::sym( interp.intern("lambda"), ); - let __t769 = { - let __t762 = - v_Select7010 + let __t735 = { + let __t728 = + v_Select5857 .clone(); - let __t768 = { - let __t766 = { - let __t765 = { - let __t763 = Value::sym(interp.intern("/.")); - let __t764 = v_Select7011.clone(); + let __t734 = { + let __t732 = { + let __t731 = { + let __t729 = Value::sym(interp.intern("/.")); + let __t730 = v_Select5858.clone(); rt::cons( - &__t763, - &__t764, + &__t729, + &__t730, ) }; - rt::apply_direct(interp, "shen.process-lambda", &[__t765])? + rt::apply_direct(interp, "shen.process-lambda", &[__t731])? }; - let __t767 = + let __t733 = Value::nil(); rt::cons( - &__t766, - &__t767, + &__t732, + &__t733, ) }; rt::cons( - &__t762, &__t768, + &__t728, &__t734, ) }; - rt::cons(&__t761, &__t769) + rt::cons(&__t727, &__t735) }); } else { { - let __t772 = { - let __t770 = + let __t738 = { + let __t736 = Value::nil(); - let __t771 = - v_Select7009 + let __t737 = + v_Select5856 .clone(); - rt::eq(&__t770, &__t771) + rt::eq(&__t736, &__t737) }; if match rt::is_truthy( - interp, &__t772, + interp, &__t738, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t774 = { - let __t773 = v_Select7010.clone(); - rt::apply_direct(interp, "variable?", &[__t773])? + let __t740 = { + let __t739 = v_Select5857.clone(); + rt::apply_direct(interp, "variable?", &[__t739])? }; - if match rt::is_truthy(interp, &__t774) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t775 = Value::sym(interp.intern("lambda")); let __t776 = v_Select7012.clone(); rt::cons(&__t775, &__t776) }); } else { break Ok({ let __t780 = { let __t777 = v_Select7010.clone(); let __t778 = Value::str(" is not a variable\n"); let __t779 = Value::sym(interp.intern("shen.s")); rt::apply_direct(interp, "shen.app", &[__t777, __t778, __t779])? }; rt::apply_direct(interp, "simple-error", &[__t780])? }); } + if match rt::is_truthy(interp, &__t740) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t741 = Value::sym(interp.intern("lambda")); let __t742 = v_Select5859.clone(); rt::cons(&__t741, &__t742) }); } else { break Ok({ let __t746 = { let __t743 = v_Select5857.clone(); let __t744 = Value::str(" is not a variable\n"); let __t745 = Value::sym(interp.intern("shen.s")); rt::apply_direct(interp, "shen.app", &[__t743, __t744, __t745])? }; rt::apply_direct(interp, "simple-error", &[__t746])? }); } } } else { break Ok( rt::apply_value( interp, - v_GoTo7005 + v_GoTo5852 .clone(), &[], )?, @@ -2033,7 +2023,7 @@ pub fn aot_shen_x2e_process_x2d_lambda(interp: &mut Interp, args: &[Value]) -> S } else { break Ok(rt::apply_value( interp, - v_GoTo7005.clone(), + v_GoTo5852.clone(), &[], )?); } @@ -2043,18 +2033,18 @@ pub fn aot_shen_x2e_process_x2d_lambda(interp: &mut Interp, args: &[Value]) -> S } else { break Ok(rt::apply_value( interp, - v_GoTo7005.clone(), + v_GoTo5852.clone(), &[], )?); } } } else { - break Ok(rt::apply_value(interp, v_GoTo7005.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5852.clone(), &[])?); } } } } else { - break Ok(rt::apply_value(interp, v_GoTo7005.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5852.clone(), &[])?); } } } @@ -2075,181 +2065,181 @@ pub fn aot_shen_x2e_process_x2d_cases(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V7015 = args[0].clone(); + let mut v_V5862 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_GoTo7016 = { - let v_V7015 = v_V7015.clone(); + let v_GoTo5863 = { + let v_V5862 = v_V5862.clone(); rt::make_aot_closure( "", 0, - move |interp, _args| Ok(v_V7015.clone()), - vec![v_V7015], + move |interp, _args| Ok(v_V5862.clone()), + vec![v_V5862], interp, ) }; { - let __t782 = { - let __t781 = v_V7015.clone(); - rt::is_cons(&__t781) + let __t748 = { + let __t747 = v_V5862.clone(); + rt::is_cons(&__t747) }; - if match rt::is_truthy(interp, &__t782) { + if match rt::is_truthy(interp, &__t748) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7024 = { - let __t783 = v_V7015.clone(); - rt::tl(&__t783)? + let v_Select5871 = { + let __t749 = v_V5862.clone(); + rt::tl(&__t749)? }; { - let __t787 = { - let __t784 = Value::sym(interp.intern("cases")); - let __t786 = { - let __t785 = v_V7015.clone(); - rt::hd(&__t785)? + let __t753 = { + let __t750 = Value::sym(interp.intern("cases")); + let __t752 = { + let __t751 = v_V5862.clone(); + rt::hd(&__t751)? }; - rt::eq(&__t784, &__t786) + rt::eq(&__t750, &__t752) }; - if match rt::is_truthy(interp, &__t787) { + if match rt::is_truthy(interp, &__t753) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t789 = { - let __t788 = v_Select7024.clone(); - rt::is_cons(&__t788) + let __t755 = { + let __t754 = v_Select5871.clone(); + rt::is_cons(&__t754) }; - if match rt::is_truthy(interp, &__t789) { + if match rt::is_truthy(interp, &__t755) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7022 = { - let __t790 = v_Select7024.clone(); - rt::hd(&__t790)? + let v_Select5869 = { + let __t756 = v_Select5871.clone(); + rt::hd(&__t756)? }; { - let v_Select7023 = { - let __t791 = v_Select7024.clone(); - rt::tl(&__t791)? + let v_Select5870 = { + let __t757 = v_Select5871.clone(); + rt::tl(&__t757)? }; { - let __t797 = { - let __t795 = { - let __t792 = Value::bool(true); - let __t793 = v_Select7022.clone(); - rt::eq(&__t792, &__t793) + let __t763 = { + let __t761 = { + let __t758 = Value::bool(true); + let __t759 = v_Select5869.clone(); + rt::eq(&__t758, &__t759) }; - if !rt::is_truthy(interp, &__t795)? { + if !rt::is_truthy(interp, &__t761)? { Value::bool(false) } else { - let __t796 = { - let __t794 = v_Select7023.clone(); - rt::is_cons(&__t794) + let __t762 = { + let __t760 = v_Select5870.clone(); + rt::is_cons(&__t760) }; Value::bool(rt::is_truthy( - interp, &__t796, + interp, &__t762, )?) } }; - if match rt::is_truthy(interp, &__t797) { + if match rt::is_truthy(interp, &__t763) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t798 = v_Select7023.clone(); - rt::hd(&__t798)? + let __t764 = v_Select5870.clone(); + rt::hd(&__t764)? }); } else { { - let v_GoTo7019 = { - let v_GoTo7016 = v_GoTo7016.clone(); - let v_Select7023 = - v_Select7023.clone(); + let v_GoTo5866 = { + let v_GoTo5863 = v_GoTo5863.clone(); + let v_Select5870 = + v_Select5870.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t802 = { - let __t799 = + let __t768 = { + let __t765 = Value::nil(); - let __t800 = - v_Select7023 + let __t766 = + v_Select5870 .clone(); rt::eq( - &__t799, - &__t800, + &__t765, + &__t766, ) }; if rt::is_truthy( - interp, &__t802, + interp, &__t768, )? { { - let __t801 = Value::str("error: odd number of case elements\n"); - rt::apply_direct(interp, "simple-error", &[__t801])? + let __t767 = Value::str("error: odd number of case elements\n"); + rt::apply_direct(interp, "simple-error", &[__t767])? } } else { rt::apply_value( interp, - v_GoTo7016 + v_GoTo5863 .clone(), &[], )? } }) }, - vec![v_GoTo7016, v_Select7023], + vec![v_GoTo5863, v_Select5870], interp, ) }; { - let __t804 = { - let __t803 = - v_Select7023.clone(); - rt::is_cons(&__t803) + let __t770 = { + let __t769 = + v_Select5870.clone(); + rt::is_cons(&__t769) }; if match rt::is_truthy( - interp, &__t804, + interp, &__t770, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7020 = { - let __t805 = - v_Select7023 + let v_Select5867 = { + let __t771 = + v_Select5870 .clone(); - rt::hd(&__t805)? + rt::hd(&__t771)? }; { - let v_Select7021 = { - let __t806 = - v_Select7023 + let v_Select5868 = { + let __t772 = + v_Select5870 .clone(); - rt::tl(&__t806)? + rt::tl(&__t772)? }; { - let __t809 = { - let __t807 = + let __t775 = { + let __t773 = Value::nil( ); - let __t808 = v_Select7021.clone(); + let __t774 = v_Select5868.clone(); rt::eq( - &__t807, - &__t808, + &__t773, + &__t774, ) }; - if match rt::is_truthy(interp, &__t809) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t810 = Value::sym(interp.intern("if")); let __t821 = { let __t811 = v_Select7022.clone(); let __t820 = { let __t812 = v_Select7020.clone(); let __t819 = { let __t817 = { let __t813 = Value::sym(interp.intern("simple-error")); let __t816 = { let __t814 = Value::str("error: cases exhausted"); let __t815 = Value::nil(); rt::cons(&__t814, &__t815) }; rt::cons(&__t813, &__t816) }; let __t818 = Value::nil(); rt::cons(&__t817, &__t818) }; rt::cons(&__t812, &__t819) }; rt::cons(&__t811, &__t820) }; rt::cons(&__t810, &__t821) }); } else { break Ok({ let __t822 = Value::sym(interp.intern("if")); let __t832 = { let __t823 = v_Select7022.clone(); let __t831 = { let __t824 = v_Select7020.clone(); let __t830 = { let __t828 = { let __t827 = { let __t825 = Value::sym(interp.intern("cases")); let __t826 = v_Select7021.clone(); rt::cons(&__t825, &__t826) }; rt::apply_direct(interp, "shen.process-cases", &[__t827])? }; let __t829 = Value::nil(); rt::cons(&__t828, &__t829) }; rt::cons(&__t824, &__t830) }; rt::cons(&__t823, &__t831) }; rt::cons(&__t822, &__t832) }); } + if match rt::is_truthy(interp, &__t775) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t776 = Value::sym(interp.intern("if")); let __t787 = { let __t777 = v_Select5869.clone(); let __t786 = { let __t778 = v_Select5867.clone(); let __t785 = { let __t783 = { let __t779 = Value::sym(interp.intern("simple-error")); let __t782 = { let __t780 = Value::str("error: cases exhausted"); let __t781 = Value::nil(); rt::cons(&__t780, &__t781) }; rt::cons(&__t779, &__t782) }; let __t784 = Value::nil(); rt::cons(&__t783, &__t784) }; rt::cons(&__t778, &__t785) }; rt::cons(&__t777, &__t786) }; rt::cons(&__t776, &__t787) }); } else { break Ok({ let __t788 = Value::sym(interp.intern("if")); let __t798 = { let __t789 = v_Select5869.clone(); let __t797 = { let __t790 = v_Select5867.clone(); let __t796 = { let __t794 = { let __t793 = { let __t791 = Value::sym(interp.intern("cases")); let __t792 = v_Select5868.clone(); rt::cons(&__t791, &__t792) }; rt::apply_direct(interp, "shen.process-cases", &[__t793])? }; let __t795 = Value::nil(); rt::cons(&__t794, &__t795) }; rt::cons(&__t790, &__t796) }; rt::cons(&__t789, &__t797) }; rt::cons(&__t788, &__t798) }); } } } } } else { break Ok(rt::apply_value( interp, - v_GoTo7019.clone(), + v_GoTo5866.clone(), &[], )?); } @@ -2262,18 +2252,18 @@ pub fn aot_shen_x2e_process_x2d_cases(interp: &mut Interp, args: &[Value]) -> Sh } else { break Ok(rt::apply_value( interp, - v_GoTo7016.clone(), + v_GoTo5863.clone(), &[], )?); } } } else { - break Ok(rt::apply_value(interp, v_GoTo7016.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5863.clone(), &[])?); } } } } else { - break Ok(rt::apply_value(interp, v_GoTo7016.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5863.clone(), &[])?); } } } @@ -2294,159 +2284,159 @@ pub fn aot_shen_x2e_process_x2d_time(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V7025 = args[0].clone(); + let mut v_V5872 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t833 = Value::sym(interp.intern("let")); - let __t894 = { - let __t834 = Value::sym(interp.intern("Start")); - let __t893 = { - let __t839 = { - let __t835 = Value::sym(interp.intern("get-time")); - let __t838 = { - let __t836 = Value::sym(interp.intern("run")); - let __t837 = Value::nil(); - rt::cons(&__t836, &__t837) + let __t799 = Value::sym(interp.intern("let")); + let __t860 = { + let __t800 = Value::sym(interp.intern("Start")); + let __t859 = { + let __t805 = { + let __t801 = Value::sym(interp.intern("get-time")); + let __t804 = { + let __t802 = Value::sym(interp.intern("run")); + let __t803 = Value::nil(); + rt::cons(&__t802, &__t803) }; - rt::cons(&__t835, &__t838) + rt::cons(&__t801, &__t804) }; - let __t892 = { - let __t840 = Value::sym(interp.intern("Result")); - let __t891 = { - let __t841 = v_V7025.clone(); - let __t890 = { - let __t842 = Value::sym(interp.intern("Finish")); - let __t889 = { - let __t847 = { - let __t843 = Value::sym(interp.intern("get-time")); - let __t846 = { - let __t844 = Value::sym(interp.intern("run")); - let __t845 = Value::nil(); - rt::cons(&__t844, &__t845) + let __t858 = { + let __t806 = Value::sym(interp.intern("Result")); + let __t857 = { + let __t807 = v_V5872.clone(); + let __t856 = { + let __t808 = Value::sym(interp.intern("Finish")); + let __t855 = { + let __t813 = { + let __t809 = Value::sym(interp.intern("get-time")); + let __t812 = { + let __t810 = Value::sym(interp.intern("run")); + let __t811 = Value::nil(); + rt::cons(&__t810, &__t811) }; - rt::cons(&__t843, &__t846) + rt::cons(&__t809, &__t812) }; - let __t888 = { - let __t848 = Value::sym(interp.intern("Time")); - let __t887 = { - let __t855 = { - let __t849 = Value::sym(interp.intern("-")); - let __t854 = { - let __t850 = + let __t854 = { + let __t814 = Value::sym(interp.intern("Time")); + let __t853 = { + let __t821 = { + let __t815 = Value::sym(interp.intern("-")); + let __t820 = { + let __t816 = Value::sym(interp.intern("Finish")); - let __t853 = { - let __t851 = + let __t819 = { + let __t817 = Value::sym(interp.intern("Start")); - let __t852 = Value::nil(); - rt::cons(&__t851, &__t852) + let __t818 = Value::nil(); + rt::cons(&__t817, &__t818) }; - rt::cons(&__t850, &__t853) + rt::cons(&__t816, &__t819) }; - rt::cons(&__t849, &__t854) + rt::cons(&__t815, &__t820) }; - let __t886 = { - let __t856 = Value::sym(interp.intern("Message")); - let __t885 = { - let __t881 = { - let __t857 = + let __t852 = { + let __t822 = Value::sym(interp.intern("Message")); + let __t851 = { + let __t847 = { + let __t823 = Value::sym(interp.intern("pr")); - let __t880 = { - let __t874 = { - let __t858 = + let __t846 = { + let __t840 = { + let __t824 = Value::sym(interp.intern("cn")); - let __t873 = { - let __t859 = + let __t839 = { + let __t825 = Value::str("\nrun time: "); - let __t872 = { - let __t870 = { - let __t860 = Value::sym( + let __t838 = { + let __t836 = { + let __t826 = Value::sym( interp.intern("cn"), ); - let __t869 = { - let __t865 = { - let __t861 = Value::sym(interp.intern("str")); - let __t864 = { - let __t862 = Value::sym(interp.intern("Time")); - let __t863 = Value::nil(); + let __t835 = { + let __t831 = { + let __t827 = Value::sym(interp.intern("str")); + let __t830 = { + let __t828 = Value::sym(interp.intern("Time")); + let __t829 = Value::nil(); rt::cons( - &__t862, - &__t863, + &__t828, + &__t829, ) }; rt::cons( - &__t861, - &__t864, + &__t827, + &__t830, ) }; - let __t868 = { - let __t866 = Value::str(" secs\n"); - let __t867 = + let __t834 = { + let __t832 = Value::str(" secs\n"); + let __t833 = Value::nil( ); rt::cons( - &__t866, - &__t867, + &__t832, + &__t833, ) }; rt::cons( - &__t865, - &__t868, + &__t831, + &__t834, ) }; rt::cons( - &__t860, &__t869, + &__t826, &__t835, ) }; - let __t871 = Value::nil(); - rt::cons(&__t870, &__t871) + let __t837 = Value::nil(); + rt::cons(&__t836, &__t837) }; - rt::cons(&__t859, &__t872) + rt::cons(&__t825, &__t838) }; - rt::cons(&__t858, &__t873) + rt::cons(&__t824, &__t839) }; - let __t879 = { - let __t877 = { - let __t875 = Value::sym( + let __t845 = { + let __t843 = { + let __t841 = Value::sym( interp.intern("stoutput"), ); - let __t876 = Value::nil(); - rt::cons(&__t875, &__t876) + let __t842 = Value::nil(); + rt::cons(&__t841, &__t842) }; - let __t878 = Value::nil(); - rt::cons(&__t877, &__t878) + let __t844 = Value::nil(); + rt::cons(&__t843, &__t844) }; - rt::cons(&__t874, &__t879) + rt::cons(&__t840, &__t845) }; - rt::cons(&__t857, &__t880) + rt::cons(&__t823, &__t846) }; - let __t884 = { - let __t882 = + let __t850 = { + let __t848 = Value::sym(interp.intern("Result")); - let __t883 = Value::nil(); - rt::cons(&__t882, &__t883) + let __t849 = Value::nil(); + rt::cons(&__t848, &__t849) }; - rt::cons(&__t881, &__t884) + rt::cons(&__t847, &__t850) }; - rt::cons(&__t856, &__t885) + rt::cons(&__t822, &__t851) }; - rt::cons(&__t855, &__t886) + rt::cons(&__t821, &__t852) }; - rt::cons(&__t848, &__t887) + rt::cons(&__t814, &__t853) }; - rt::cons(&__t847, &__t888) + rt::cons(&__t813, &__t854) }; - rt::cons(&__t842, &__t889) + rt::cons(&__t808, &__t855) }; - rt::cons(&__t841, &__t890) + rt::cons(&__t807, &__t856) }; - rt::cons(&__t840, &__t891) + rt::cons(&__t806, &__t857) }; - rt::cons(&__t839, &__t892) + rt::cons(&__t805, &__t858) }; - rt::cons(&__t834, &__t893) + rt::cons(&__t800, &__t859) }; - rt::cons(&__t833, &__t894) + rt::cons(&__t799, &__t860) }); } } @@ -2465,106 +2455,106 @@ pub fn aot_shen_x2e_process_x2d_assoc(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V7026 = args[0].clone(); + let mut v_V5873 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t911 = { - let __t909 = { - let __t895 = v_V7026.clone(); - rt::is_cons(&__t895) + let __t877 = { + let __t875 = { + let __t861 = v_V5873.clone(); + rt::is_cons(&__t861) }; - if !rt::is_truthy(interp, &__t909)? { + if !rt::is_truthy(interp, &__t875)? { Value::bool(false) } else { - let __t910 = { - let __t907 = { - let __t897 = { - let __t896 = v_V7026.clone(); - rt::tl(&__t896)? + let __t876 = { + let __t873 = { + let __t863 = { + let __t862 = v_V5873.clone(); + rt::tl(&__t862)? }; - rt::is_cons(&__t897) + rt::is_cons(&__t863) }; - if !rt::is_truthy(interp, &__t907)? { + if !rt::is_truthy(interp, &__t873)? { Value::bool(false) } else { - let __t908 = { - let __t905 = { - let __t900 = { - let __t899 = { - let __t898 = v_V7026.clone(); - rt::tl(&__t898)? + let __t874 = { + let __t871 = { + let __t866 = { + let __t865 = { + let __t864 = v_V5873.clone(); + rt::tl(&__t864)? }; - rt::tl(&__t899)? + rt::tl(&__t865)? }; - rt::is_cons(&__t900) + rt::is_cons(&__t866) }; - if !rt::is_truthy(interp, &__t905)? { + if !rt::is_truthy(interp, &__t871)? { Value::bool(false) } else { - let __t906 = { - let __t904 = { - let __t903 = { - let __t902 = { - let __t901 = v_V7026.clone(); - rt::tl(&__t901)? + let __t872 = { + let __t870 = { + let __t869 = { + let __t868 = { + let __t867 = v_V5873.clone(); + rt::tl(&__t867)? }; - rt::tl(&__t902)? + rt::tl(&__t868)? }; - rt::tl(&__t903)? + rt::tl(&__t869)? }; - rt::is_cons(&__t904) + rt::is_cons(&__t870) }; - Value::bool(rt::is_truthy(interp, &__t906)?) + Value::bool(rt::is_truthy(interp, &__t872)?) } }; - Value::bool(rt::is_truthy(interp, &__t908)?) + Value::bool(rt::is_truthy(interp, &__t874)?) } }; - Value::bool(rt::is_truthy(interp, &__t910)?) + Value::bool(rt::is_truthy(interp, &__t876)?) } }; - if match rt::is_truthy(interp, &__t911) { + if match rt::is_truthy(interp, &__t877) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t913 = { - let __t912 = v_V7026.clone(); - rt::hd(&__t912)? + let __t879 = { + let __t878 = v_V5873.clone(); + rt::hd(&__t878)? }; - let __t925 = { - let __t916 = { - let __t915 = { - let __t914 = v_V7026.clone(); - rt::tl(&__t914)? + let __t891 = { + let __t882 = { + let __t881 = { + let __t880 = v_V5873.clone(); + rt::tl(&__t880)? }; - rt::hd(&__t915)? + rt::hd(&__t881)? }; - let __t924 = { - let __t922 = { - let __t918 = { - let __t917 = v_V7026.clone(); - rt::hd(&__t917)? + let __t890 = { + let __t888 = { + let __t884 = { + let __t883 = v_V5873.clone(); + rt::hd(&__t883)? }; - let __t921 = { - let __t920 = { - let __t919 = v_V7026.clone(); - rt::tl(&__t919)? + let __t887 = { + let __t886 = { + let __t885 = v_V5873.clone(); + rt::tl(&__t885)? }; - rt::tl(&__t920)? + rt::tl(&__t886)? }; - rt::cons(&__t918, &__t921) + rt::cons(&__t884, &__t887) }; - let __t923 = Value::nil(); - rt::cons(&__t922, &__t923) + let __t889 = Value::nil(); + rt::cons(&__t888, &__t889) }; - rt::cons(&__t916, &__t924) + rt::cons(&__t882, &__t890) }; - rt::cons(&__t913, &__t925) + rt::cons(&__t879, &__t891) }); } else { - break Ok(v_V7026.clone()); + break Ok(v_V5873.clone()); } } } @@ -2584,18 +2574,18 @@ pub fn aot_shen_x2e_make_x2d_uppercase(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V7027 = args[0].clone(); + let mut v_V5874 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t928 = { - let __t927 = { - let __t926 = v_V7027.clone(); - rt::apply_direct(interp, "str", &[__t926])? + let __t894 = { + let __t893 = { + let __t892 = v_V5874.clone(); + rt::apply_direct(interp, "str", &[__t892])? }; - rt::apply_direct(interp, "shen.mu-h", &[__t927])? + rt::apply_direct(interp, "shen.mu-h", &[__t893])? }; - rt::apply_direct(interp, "intern", &[__t928])? + rt::apply_direct(interp, "intern", &[__t894])? }); } } @@ -2614,93 +2604,93 @@ pub fn aot_shen_x2e_mu_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V7028 = args[0].clone(); + let mut v_V5875 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t931 = { - let __t929 = Value::str(""); - let __t930 = v_V7028.clone(); - rt::eq(&__t929, &__t930) + let __t897 = { + let __t895 = Value::str(""); + let __t896 = v_V5875.clone(); + rt::eq(&__t895, &__t896) }; - if match rt::is_truthy(interp, &__t931) { + if match rt::is_truthy(interp, &__t897) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::str("")); } else { { - let __t933 = { - let __t932 = v_V7028.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t932])? + let __t899 = { + let __t898 = v_V5875.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t898])? }; - if match rt::is_truthy(interp, &__t933) { + if match rt::is_truthy(interp, &__t899) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W7029 = { - let __t935 = { - let __t934 = v_V7028.clone(); - rt::apply_direct(interp, "hdstr", &[__t934])? + let v_W5876 = { + let __t901 = { + let __t900 = v_V5875.clone(); + rt::apply_direct(interp, "hdstr", &[__t900])? }; - rt::apply_direct(interp, "string->n", &[__t935])? + rt::apply_direct(interp, "string->n", &[__t901])? }; { - let v_W7030 = { - let __t936 = v_W7029.clone(); - let __t937 = Value::int(32i64); - rt::sub(&__t936, &__t937)? + let v_W5877 = { + let __t902 = v_W5876.clone(); + let __t903 = Value::int(32i64); + rt::sub(&__t902, &__t903)? }; { - let v_W7031 = { - let __t946 = { - let __t942 = { - let __t938 = v_W7029.clone(); - let __t939 = Value::int(97i64); - rt::gte(&__t938, &__t939)? + let v_W5878 = { + let __t912 = { + let __t908 = { + let __t904 = v_W5876.clone(); + let __t905 = Value::int(97i64); + rt::gte(&__t904, &__t905)? }; - if !rt::is_truthy(interp, &__t942)? { + if !rt::is_truthy(interp, &__t908)? { Value::bool(false) } else { - let __t943 = { - let __t940 = v_W7029.clone(); - let __t941 = Value::int(122i64); - rt::lte(&__t940, &__t941)? + let __t909 = { + let __t906 = v_W5876.clone(); + let __t907 = Value::int(122i64); + rt::lte(&__t906, &__t907)? }; - Value::bool(rt::is_truthy(interp, &__t943)?) + Value::bool(rt::is_truthy(interp, &__t909)?) } }; - if rt::is_truthy(interp, &__t946)? { + if rt::is_truthy(interp, &__t912)? { { - let __t944 = v_W7030.clone(); - rt::apply_direct(interp, "n->string", &[__t944])? + let __t910 = v_W5877.clone(); + rt::apply_direct(interp, "n->string", &[__t910])? } } else { { - let __t945 = v_V7028.clone(); - rt::apply_direct(interp, "hdstr", &[__t945])? + let __t911 = v_V5875.clone(); + rt::apply_direct(interp, "hdstr", &[__t911])? } } }; break Ok({ - let __t947 = v_W7031.clone(); - let __t950 = { - let __t949 = { - let __t948 = v_V7028.clone(); - rt::apply_direct(interp, "tlstr", &[__t948])? + let __t913 = v_W5878.clone(); + let __t916 = { + let __t915 = { + let __t914 = v_V5875.clone(); + rt::apply_direct(interp, "tlstr", &[__t914])? }; - rt::apply_direct(interp, "shen.mu-h", &[__t949])? + rt::apply_direct(interp, "shen.mu-h", &[__t915])? }; - rt::apply_direct(interp, "@s", &[__t947, __t950])? + rt::apply_direct(interp, "@s", &[__t913, __t916])? }); } } } } else { break Ok({ - let __t951 = Value::sym(interp.intern("shen.mu-h")); - rt::apply_direct(interp, "shen.f-error", &[__t951])? + let __t917 = Value::str("partial function shen.mu-h"); + rt::apply_direct(interp, "simple-error", &[__t917])? }); } } @@ -2723,23 +2713,23 @@ pub fn aot_shen_x2e_record_x2d_macro(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V7032 = args[0].clone(); + let mut v_V5879 = args[0].clone(); #[allow(unused_mut)] - let mut v_V7033 = args[1].clone(); + let mut v_V5880 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t952 = Value::sym(interp.intern("*macros*")); - let __t957 = { - let __t953 = v_V7032.clone(); - let __t954 = v_V7033.clone(); - let __t956 = { - let __t955 = Value::sym(interp.intern("*macros*")); - rt::apply_direct(interp, "value", &[__t955])? + let __t918 = Value::sym(interp.intern("*macros*")); + let __t923 = { + let __t919 = v_V5879.clone(); + let __t920 = v_V5880.clone(); + let __t922 = { + let __t921 = Value::sym(interp.intern("*macros*")); + rt::apply_direct(interp, "value", &[__t921])? }; - rt::apply_direct(interp, "shen.update-assoc", &[__t953, __t954, __t956])? + rt::apply_direct(interp, "shen.update-assoc", &[__t919, __t920, __t922])? }; - rt::apply_direct(interp, "set", &[__t952, __t957])? + rt::apply_direct(interp, "set", &[__t918, __t923])? }); } } @@ -2758,43 +2748,43 @@ pub fn aot_shen_x2e_update_x2d_assoc(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V7043 = args[0].clone(); + let mut v_V5890 = args[0].clone(); #[allow(unused_mut)] - let mut v_V7044 = args[1].clone(); + let mut v_V5891 = args[1].clone(); #[allow(unused_mut)] - let mut v_V7045 = args[2].clone(); + let mut v_V5892 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t960 = { - let __t958 = Value::nil(); - let __t959 = v_V7045.clone(); - rt::eq(&__t958, &__t959) + let __t926 = { + let __t924 = Value::nil(); + let __t925 = v_V5892.clone(); + rt::eq(&__t924, &__t925) }; - if match rt::is_truthy(interp, &__t960) { + if match rt::is_truthy(interp, &__t926) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t963 = { - let __t961 = v_V7043.clone(); - let __t962 = v_V7044.clone(); - rt::cons(&__t961, &__t962) + let __t929 = { + let __t927 = v_V5890.clone(); + let __t928 = v_V5891.clone(); + rt::cons(&__t927, &__t928) }; - let __t964 = Value::nil(); - rt::cons(&__t963, &__t964) + let __t930 = Value::nil(); + rt::cons(&__t929, &__t930) }); } else { { - let v_GoTo7046 = { + let v_GoTo5893 = { rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t965 = + let __t931 = Value::str("implementation error in shen.update-assoc"); - rt::apply_direct(interp, "simple-error", &[__t965])? + rt::apply_direct(interp, "simple-error", &[__t931])? }) }, Vec::new(), @@ -2802,81 +2792,81 @@ pub fn aot_shen_x2e_update_x2d_assoc(interp: &mut Interp, args: &[Value]) -> She ) }; { - let __t967 = { - let __t966 = v_V7045.clone(); - rt::is_cons(&__t966) + let __t933 = { + let __t932 = v_V5892.clone(); + rt::is_cons(&__t932) }; - if match rt::is_truthy(interp, &__t967) { + if match rt::is_truthy(interp, &__t933) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7047 = { - let __t968 = v_V7045.clone(); - rt::hd(&__t968)? + let v_Select5894 = { + let __t934 = v_V5892.clone(); + rt::hd(&__t934)? }; { - let v_Select7048 = { - let __t969 = v_V7045.clone(); - rt::tl(&__t969)? + let v_Select5895 = { + let __t935 = v_V5892.clone(); + rt::tl(&__t935)? }; { - let __t976 = { - let __t974 = { - let __t970 = v_Select7047.clone(); - rt::is_cons(&__t970) + let __t942 = { + let __t940 = { + let __t936 = v_Select5894.clone(); + rt::is_cons(&__t936) }; - if !rt::is_truthy(interp, &__t974)? { + if !rt::is_truthy(interp, &__t940)? { Value::bool(false) } else { - let __t975 = { - let __t971 = v_V7043.clone(); - let __t973 = { - let __t972 = v_Select7047.clone(); - rt::hd(&__t972)? + let __t941 = { + let __t937 = v_V5890.clone(); + let __t939 = { + let __t938 = v_Select5894.clone(); + rt::hd(&__t938)? }; - rt::eq(&__t971, &__t973) + rt::eq(&__t937, &__t939) }; - Value::bool(rt::is_truthy(interp, &__t975)?) + Value::bool(rt::is_truthy(interp, &__t941)?) } }; - if match rt::is_truthy(interp, &__t976) { + if match rt::is_truthy(interp, &__t942) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t980 = { - let __t978 = { - let __t977 = v_Select7047.clone(); - rt::hd(&__t977)? + let __t946 = { + let __t944 = { + let __t943 = v_Select5894.clone(); + rt::hd(&__t943)? }; - let __t979 = v_V7044.clone(); - rt::cons(&__t978, &__t979) + let __t945 = v_V5891.clone(); + rt::cons(&__t944, &__t945) }; - let __t981 = v_Select7048.clone(); - rt::cons(&__t980, &__t981) + let __t947 = v_Select5895.clone(); + rt::cons(&__t946, &__t947) }); } else { break Ok({ - let __t982 = v_Select7047.clone(); - let __t986 = { - let __t983 = v_V7043.clone(); - let __t984 = v_V7044.clone(); - let __t985 = v_Select7048.clone(); + let __t948 = v_Select5894.clone(); + let __t952 = { + let __t949 = v_V5890.clone(); + let __t950 = v_V5891.clone(); + let __t951 = v_Select5895.clone(); rt::apply_direct( interp, "shen.update-assoc", - &[__t983, __t984, __t985], + &[__t949, __t950, __t951], )? }; - rt::cons(&__t982, &__t986) + rt::cons(&__t948, &__t952) }); } } } } } else { - break Ok(rt::apply_value(interp, v_GoTo7046.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5893.clone(), &[])?); } } } @@ -2904,48 +2894,48 @@ pub fn aot_shen_x2e_process_x2d_read_x2d_byte( #[allow(clippy::never_loop)] loop { { - let __t988 = { - let __t987 = { rt::apply_direct(interp, "stinput", &[])? }; - rt::apply_direct(interp, "shen.char-stinput?", &[__t987])? + let __t954 = { + let __t953 = { rt::apply_direct(interp, "stinput", &[])? }; + rt::apply_direct(interp, "shen.char-stinput?", &[__t953])? }; - if match rt::is_truthy(interp, &__t988) { + if match rt::is_truthy(interp, &__t954) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t989 = Value::sym(interp.intern("string->n")); - let __t998 = { - let __t996 = { - let __t990 = Value::sym(interp.intern("shen.read-unit-string")); - let __t995 = { - let __t993 = { - let __t991 = Value::sym(interp.intern("stinput")); - let __t992 = Value::nil(); - rt::cons(&__t991, &__t992) + let __t955 = Value::sym(interp.intern("string->n")); + let __t964 = { + let __t962 = { + let __t956 = Value::sym(interp.intern("shen.read-unit-string")); + let __t961 = { + let __t959 = { + let __t957 = Value::sym(interp.intern("stinput")); + let __t958 = Value::nil(); + rt::cons(&__t957, &__t958) }; - let __t994 = Value::nil(); - rt::cons(&__t993, &__t994) + let __t960 = Value::nil(); + rt::cons(&__t959, &__t960) }; - rt::cons(&__t990, &__t995) + rt::cons(&__t956, &__t961) }; - let __t997 = Value::nil(); - rt::cons(&__t996, &__t997) + let __t963 = Value::nil(); + rt::cons(&__t962, &__t963) }; - rt::cons(&__t989, &__t998) + rt::cons(&__t955, &__t964) }); } else { break Ok({ - let __t999 = Value::sym(interp.intern("read-byte")); - let __t1004 = { - let __t1002 = { - let __t1000 = Value::sym(interp.intern("stinput")); - let __t1001 = Value::nil(); - rt::cons(&__t1000, &__t1001) + let __t965 = Value::sym(interp.intern("read-byte")); + let __t970 = { + let __t968 = { + let __t966 = Value::sym(interp.intern("stinput")); + let __t967 = Value::nil(); + rt::cons(&__t966, &__t967) }; - let __t1003 = Value::nil(); - rt::cons(&__t1002, &__t1003) + let __t969 = Value::nil(); + rt::cons(&__t968, &__t969) }; - rt::cons(&__t999, &__t1004) + rt::cons(&__t965, &__t970) }); } } @@ -2973,181 +2963,181 @@ pub fn aot_shen_x2e_call_x2d_prolog(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V7049 = args[0].clone(); + let mut v_V5896 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W7050 = { - let __t1005 = Value::sym(interp.intern("shen.prolog-vector")); - let __t1006 = Value::nil(); - rt::cons(&__t1005, &__t1006) + let v_W5897 = { + let __t971 = Value::sym(interp.intern("shen.prolog-vector")); + let __t972 = Value::nil(); + rt::cons(&__t971, &__t972) }; { - let v_W7051 = { - let __t1007 = Value::sym(interp.intern("@v")); - let __t1018 = { - let __t1008 = Value::bool(true); - let __t1017 = { - let __t1009 = Value::int(0i64); - let __t1016 = { - let __t1014 = { - let __t1010 = Value::sym(interp.intern("vector")); - let __t1013 = { - let __t1011 = Value::int(0i64); - let __t1012 = Value::nil(); - rt::cons(&__t1011, &__t1012) + let v_W5898 = { + let __t973 = Value::sym(interp.intern("@v")); + let __t984 = { + let __t974 = Value::bool(true); + let __t983 = { + let __t975 = Value::int(0i64); + let __t982 = { + let __t980 = { + let __t976 = Value::sym(interp.intern("vector")); + let __t979 = { + let __t977 = Value::int(0i64); + let __t978 = Value::nil(); + rt::cons(&__t977, &__t978) }; - rt::cons(&__t1010, &__t1013) + rt::cons(&__t976, &__t979) }; - let __t1015 = Value::nil(); - rt::cons(&__t1014, &__t1015) + let __t981 = Value::nil(); + rt::cons(&__t980, &__t981) }; - rt::cons(&__t1009, &__t1016) + rt::cons(&__t975, &__t982) }; - rt::cons(&__t1008, &__t1017) + rt::cons(&__t974, &__t983) }; - rt::cons(&__t1007, &__t1018) + rt::cons(&__t973, &__t984) }; { - let v_W7052 = Value::int(0i64); + let v_W5899 = Value::int(0i64); { - let v_W7053 = { - let __t1019 = Value::sym(interp.intern("freeze")); - let __t1022 = { - let __t1020 = Value::bool(true); - let __t1021 = Value::nil(); - rt::cons(&__t1020, &__t1021) + let v_W5900 = { + let __t985 = Value::sym(interp.intern("freeze")); + let __t988 = { + let __t986 = Value::bool(true); + let __t987 = Value::nil(); + rt::cons(&__t986, &__t987) }; - rt::cons(&__t1019, &__t1022) + rt::cons(&__t985, &__t988) }; { - let v_W7054 = { - let __t1024 = { + let v_W5901 = { + let __t990 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z7055 = args[0].clone(); + let v_Z5902 = args[0].clone(); Ok({ - let __t1023 = v_Z7055.clone(); - rt::apply_direct(interp, "shen.", &[__t1023])? + let __t989 = v_Z5902.clone(); + rt::apply_direct(interp, "shen.", &[__t989])? }) }, Vec::new(), interp, ) }; - let __t1025 = v_V7049.clone(); - rt::apply_direct(interp, "compile", &[__t1024, __t1025])? + let __t991 = v_V5896.clone(); + rt::apply_direct(interp, "compile", &[__t990, __t991])? }; { - let v_W7056 = { - let __t1026 = v_V7049.clone(); - rt::apply_direct(interp, "shen.received", &[__t1026])? + let v_W5903 = { + let __t992 = v_V5896.clone(); + rt::apply_direct(interp, "shen.received", &[__t992])? }; { - let v_W7057 = { - let __t1027 = Value::sym(interp.intern("V")); - rt::apply_direct(interp, "gensym", &[__t1027])? + let v_W5904 = { + let __t993 = Value::sym(interp.intern("V")); + rt::apply_direct(interp, "gensym", &[__t993])? }; { - let v_W7058 = { - let __t1028 = Value::sym(interp.intern("L")); - rt::apply_direct(interp, "gensym", &[__t1028])? + let v_W5905 = { + let __t994 = Value::sym(interp.intern("L")); + rt::apply_direct(interp, "gensym", &[__t994])? }; { - let v_W7059 = { - let __t1029 = Value::sym(interp.intern("K")); - rt::apply_direct(interp, "gensym", &[__t1029])? + let v_W5906 = { + let __t995 = Value::sym(interp.intern("K")); + rt::apply_direct(interp, "gensym", &[__t995])? }; { - let v_W7060 = { - let __t1030 = Value::sym(interp.intern("C")); - rt::apply_direct(interp, "gensym", &[__t1030])? + let v_W5907 = { + let __t996 = Value::sym(interp.intern("C")); + rt::apply_direct(interp, "gensym", &[__t996])? }; { - let v_W7061 = { - let __t1031 = + let v_W5908 = { + let __t997 = Value::sym(interp.intern("lambda")); - let __t1060 = { - let __t1032 = v_W7057.clone(); - let __t1059 = { - let __t1057 = { - let __t1033 = Value::sym( + let __t1026 = { + let __t998 = v_W5904.clone(); + let __t1025 = { + let __t1023 = { + let __t999 = Value::sym( interp.intern("lambda"), ); - let __t1056 = { - let __t1034 = - v_W7058.clone(); - let __t1055 = { - let __t1053 = { - let __t1035 = Value::sym(interp.intern("lambda")); - let __t1052 = { - let __t1036 = - v_W7059 + let __t1022 = { + let __t1000 = + v_W5905.clone(); + let __t1021 = { + let __t1019 = { + let __t1001 = Value::sym(interp.intern("lambda")); + let __t1018 = { + let __t1002 = + v_W5906 .clone( ); - let __t1051 = { - let __t1049 = { - let __t1037 = Value::sym(interp.intern("lambda")); - let __t1048 = { - let __t1038 = v_W7060.clone(); - let __t1047 = { let __t1045 = { let __t1039 = v_W7056.clone(); let __t1040 = v_W7054.clone(); let __t1041 = v_W7057.clone(); let __t1042 = v_W7058.clone(); let __t1043 = v_W7059.clone(); let __t1044 = v_W7060.clone(); rt::apply_direct(interp, "shen.continue", &[__t1039, __t1040, __t1041, __t1042, __t1043, __t1044])? }; let __t1046 = Value::nil(); rt::cons(&__t1045, &__t1046) }; - rt::cons(&__t1038, &__t1047) + let __t1017 = { + let __t1015 = { + let __t1003 = Value::sym(interp.intern("lambda")); + let __t1014 = { + let __t1004 = v_W5907.clone(); + let __t1013 = { let __t1011 = { let __t1005 = v_W5903.clone(); let __t1006 = v_W5901.clone(); let __t1007 = v_W5904.clone(); let __t1008 = v_W5905.clone(); let __t1009 = v_W5906.clone(); let __t1010 = v_W5907.clone(); rt::apply_direct(interp, "shen.continue", &[__t1005, __t1006, __t1007, __t1008, __t1009, __t1010])? }; let __t1012 = Value::nil(); rt::cons(&__t1011, &__t1012) }; + rt::cons(&__t1004, &__t1013) }; - rt::cons(&__t1037, &__t1048) + rt::cons(&__t1003, &__t1014) }; - let __t1050 = Value::nil(); - rt::cons(&__t1049, &__t1050) + let __t1016 = Value::nil(); + rt::cons(&__t1015, &__t1016) }; rt::cons( - &__t1036, - &__t1051, + &__t1002, + &__t1017, ) }; rt::cons( - &__t1035, - &__t1052, + &__t1001, + &__t1018, ) }; - let __t1054 = + let __t1020 = Value::nil(); rt::cons( - &__t1053, &__t1054, + &__t1019, &__t1020, ) }; - rt::cons(&__t1034, &__t1055) + rt::cons(&__t1000, &__t1021) }; - rt::cons(&__t1033, &__t1056) + rt::cons(&__t999, &__t1022) }; - let __t1058 = Value::nil(); - rt::cons(&__t1057, &__t1058) + let __t1024 = Value::nil(); + rt::cons(&__t1023, &__t1024) }; - rt::cons(&__t1032, &__t1059) + rt::cons(&__t998, &__t1025) }; - rt::cons(&__t1031, &__t1060) + rt::cons(&__t997, &__t1026) }; break Ok({ - let __t1061 = v_W7061.clone(); - let __t1070 = { - let __t1062 = v_W7050.clone(); - let __t1069 = { - let __t1063 = v_W7051.clone(); - let __t1068 = { - let __t1064 = v_W7052.clone(); - let __t1067 = { - let __t1065 = - v_W7053.clone(); - let __t1066 = Value::nil(); - rt::cons(&__t1065, &__t1066) + let __t1027 = v_W5908.clone(); + let __t1036 = { + let __t1028 = v_W5897.clone(); + let __t1035 = { + let __t1029 = v_W5898.clone(); + let __t1034 = { + let __t1030 = v_W5899.clone(); + let __t1033 = { + let __t1031 = + v_W5900.clone(); + let __t1032 = Value::nil(); + rt::cons(&__t1031, &__t1032) }; - rt::cons(&__t1064, &__t1067) + rt::cons(&__t1030, &__t1033) }; - rt::cons(&__t1063, &__t1068) + rt::cons(&__t1029, &__t1034) }; - rt::cons(&__t1062, &__t1069) + rt::cons(&__t1028, &__t1035) }; - rt::cons(&__t1061, &__t1070) + rt::cons(&__t1027, &__t1036) }); } } @@ -3177,11 +3167,11 @@ pub fn aot_shen_x2e_received(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V7064 = args[0].clone(); + let mut v_V5911 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_GoTo7065 = { + let v_GoTo5912 = { rt::make_aot_closure( "", 0, @@ -3191,79 +3181,79 @@ pub fn aot_shen_x2e_received(interp: &mut Interp, args: &[Value]) -> ShenResult< ) }; { - let __t1072 = { - let __t1071 = v_V7064.clone(); - rt::is_cons(&__t1071) + let __t1038 = { + let __t1037 = v_V5911.clone(); + rt::is_cons(&__t1037) }; - if match rt::is_truthy(interp, &__t1072) { + if match rt::is_truthy(interp, &__t1038) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_Select7066 = { - let __t1073 = v_V7064.clone(); - rt::hd(&__t1073)? + let v_Select5913 = { + let __t1039 = v_V5911.clone(); + rt::hd(&__t1039)? }; { - let v_Select7067 = { - let __t1074 = v_V7064.clone(); - rt::tl(&__t1074)? + let v_Select5914 = { + let __t1040 = v_V5911.clone(); + rt::tl(&__t1040)? }; { - let __t1085 = { - let __t1083 = { - let __t1075 = Value::sym(interp.intern("receive")); - let __t1076 = v_Select7066.clone(); - rt::eq(&__t1075, &__t1076) + let __t1051 = { + let __t1049 = { + let __t1041 = Value::sym(interp.intern("receive")); + let __t1042 = v_Select5913.clone(); + rt::eq(&__t1041, &__t1042) }; - if !rt::is_truthy(interp, &__t1083)? { + if !rt::is_truthy(interp, &__t1049)? { Value::bool(false) } else { - let __t1084 = { - let __t1081 = { - let __t1077 = v_Select7067.clone(); - rt::is_cons(&__t1077) + let __t1050 = { + let __t1047 = { + let __t1043 = v_Select5914.clone(); + rt::is_cons(&__t1043) }; - if !rt::is_truthy(interp, &__t1081)? { + if !rt::is_truthy(interp, &__t1047)? { Value::bool(false) } else { - let __t1082 = { - let __t1078 = Value::nil(); - let __t1080 = { - let __t1079 = v_Select7067.clone(); - rt::tl(&__t1079)? + let __t1048 = { + let __t1044 = Value::nil(); + let __t1046 = { + let __t1045 = v_Select5914.clone(); + rt::tl(&__t1045)? }; - rt::eq(&__t1078, &__t1080) + rt::eq(&__t1044, &__t1046) }; - Value::bool(rt::is_truthy(interp, &__t1082)?) + Value::bool(rt::is_truthy(interp, &__t1048)?) } }; - Value::bool(rt::is_truthy(interp, &__t1084)?) + Value::bool(rt::is_truthy(interp, &__t1050)?) } }; - if match rt::is_truthy(interp, &__t1085) { + if match rt::is_truthy(interp, &__t1051) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_Select7067.clone()); + break Ok(v_Select5914.clone()); } else { break Ok({ - let __t1087 = { - let __t1086 = v_Select7066.clone(); - rt::apply_direct(interp, "shen.received", &[__t1086])? + let __t1053 = { + let __t1052 = v_Select5913.clone(); + rt::apply_direct(interp, "shen.received", &[__t1052])? }; - let __t1089 = { - let __t1088 = v_Select7067.clone(); - rt::apply_direct(interp, "shen.received", &[__t1088])? + let __t1055 = { + let __t1054 = v_Select5914.clone(); + rt::apply_direct(interp, "shen.received", &[__t1054])? }; - rt::apply_direct(interp, "union", &[__t1087, __t1089])? + rt::apply_direct(interp, "union", &[__t1053, __t1055])? }); } } } } } else { - break Ok(rt::apply_value(interp, v_GoTo7065.clone(), &[])?); + break Ok(rt::apply_value(interp, v_GoTo5912.clone(), &[])?); } } } @@ -3286,28 +3276,28 @@ pub fn aot_shen_x2e_prolog_x2d_vector(interp: &mut Interp, args: &[Value]) -> Sh #[allow(clippy::never_loop)] loop { { - let v_W7068 = { - let __t1091 = { - let __t1090 = Value::sym(interp.intern("shen.*prolog-memory*")); - rt::apply_direct(interp, "value", &[__t1090])? + let v_W5915 = { + let __t1057 = { + let __t1056 = Value::sym(interp.intern("shen.*prolog-memory*")); + rt::apply_direct(interp, "value", &[__t1056])? }; - rt::apply_direct(interp, "absvector", &[__t1091])? + rt::apply_direct(interp, "absvector", &[__t1057])? }; { - let v_W7069 = { - let __t1092 = v_W7068.clone(); - let __t1093 = Value::int(0i64); - let __t1094 = Value::sym(interp.intern("shen.print-prolog-vector")); - rt::apply_direct(interp, "address->", &[__t1092, __t1093, __t1094])? + let v_W5916 = { + let __t1058 = v_W5915.clone(); + let __t1059 = Value::int(0i64); + let __t1060 = Value::sym(interp.intern("shen.print-prolog-vector")); + rt::apply_direct(interp, "address->", &[__t1058, __t1059, __t1060])? }; { - let v_W7070 = { - let __t1095 = v_W7068.clone(); - let __t1096 = Value::int(1i64); - let __t1097 = Value::int(2i64); - rt::apply_direct(interp, "address->", &[__t1095, __t1096, __t1097])? + let v_W5917 = { + let __t1061 = v_W5915.clone(); + let __t1062 = Value::int(1i64); + let __t1063 = Value::int(2i64); + rt::apply_direct(interp, "address->", &[__t1061, __t1062, __t1063])? }; - break Ok(v_W7070.clone()); + break Ok(v_W5917.clone()); } } } @@ -3328,10 +3318,10 @@ pub fn aot_receive(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V7071 = args[0].clone(); + let mut v_V5918 = args[0].clone(); #[allow(clippy::never_loop)] loop { - break Ok(v_V7071.clone()); + break Ok(v_V5918.clone()); } } @@ -3349,45 +3339,45 @@ pub fn aot_shen_x2e_rcons_form(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V7072 = args[0].clone(); + let mut v_V5919 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1099 = { - let __t1098 = v_V7072.clone(); - rt::is_cons(&__t1098) + let __t1065 = { + let __t1064 = v_V5919.clone(); + rt::is_cons(&__t1064) }; - if match rt::is_truthy(interp, &__t1099) { + if match rt::is_truthy(interp, &__t1065) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1100 = Value::sym(interp.intern("cons")); - let __t1109 = { - let __t1103 = { - let __t1102 = { - let __t1101 = v_V7072.clone(); - rt::hd(&__t1101)? + let __t1066 = Value::sym(interp.intern("cons")); + let __t1075 = { + let __t1069 = { + let __t1068 = { + let __t1067 = v_V5919.clone(); + rt::hd(&__t1067)? }; - rt::apply_direct(interp, "shen.rcons_form", &[__t1102])? + rt::apply_direct(interp, "shen.rcons_form", &[__t1068])? }; - let __t1108 = { - let __t1106 = { - let __t1105 = { - let __t1104 = v_V7072.clone(); - rt::tl(&__t1104)? + let __t1074 = { + let __t1072 = { + let __t1071 = { + let __t1070 = v_V5919.clone(); + rt::tl(&__t1070)? }; - rt::apply_direct(interp, "shen.rcons_form", &[__t1105])? + rt::apply_direct(interp, "shen.rcons_form", &[__t1071])? }; - let __t1107 = Value::nil(); - rt::cons(&__t1106, &__t1107) + let __t1073 = Value::nil(); + rt::cons(&__t1072, &__t1073) }; - rt::cons(&__t1103, &__t1108) + rt::cons(&__t1069, &__t1074) }; - rt::cons(&__t1100, &__t1109) + rt::cons(&__t1066, &__t1075) }); } else { - break Ok(v_V7072.clone()); + break Ok(v_V5919.clone()); } } } @@ -3407,42 +3397,42 @@ pub fn aot_shen_x2e_tuple_x2d_up(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V7073 = args[0].clone(); + let mut v_V5920 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1111 = { - let __t1110 = v_V7073.clone(); - rt::is_cons(&__t1110) + let __t1077 = { + let __t1076 = v_V5920.clone(); + rt::is_cons(&__t1076) }; - if match rt::is_truthy(interp, &__t1111) { + if match rt::is_truthy(interp, &__t1077) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1112 = Value::sym(interp.intern("@p")); - let __t1120 = { - let __t1114 = { - let __t1113 = v_V7073.clone(); - rt::hd(&__t1113)? + let __t1078 = Value::sym(interp.intern("@p")); + let __t1086 = { + let __t1080 = { + let __t1079 = v_V5920.clone(); + rt::hd(&__t1079)? }; - let __t1119 = { - let __t1117 = { - let __t1116 = { - let __t1115 = v_V7073.clone(); - rt::tl(&__t1115)? + let __t1085 = { + let __t1083 = { + let __t1082 = { + let __t1081 = v_V5920.clone(); + rt::tl(&__t1081)? }; - rt::apply_direct(interp, "shen.tuple-up", &[__t1116])? + rt::apply_direct(interp, "shen.tuple-up", &[__t1082])? }; - let __t1118 = Value::nil(); - rt::cons(&__t1117, &__t1118) + let __t1084 = Value::nil(); + rt::cons(&__t1083, &__t1084) }; - rt::cons(&__t1114, &__t1119) + rt::cons(&__t1080, &__t1085) }; - rt::cons(&__t1112, &__t1120) + rt::cons(&__t1078, &__t1086) }); } else { - break Ok(v_V7073.clone()); + break Ok(v_V5920.clone()); } } } @@ -3462,30 +3452,30 @@ pub fn aot_undefmacro(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V7074 = args[0].clone(); + let mut v_V5921 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { - let __t1121 = Value::sym(interp.intern("*macros*")); - let __t1128 = { - let __t1125 = { - let __t1122 = v_V7074.clone(); - let __t1124 = { - let __t1123 = Value::sym(interp.intern("*macros*")); - rt::apply_direct(interp, "value", &[__t1123])? + let __t1087 = Value::sym(interp.intern("*macros*")); + let __t1094 = { + let __t1091 = { + let __t1088 = v_V5921.clone(); + let __t1090 = { + let __t1089 = Value::sym(interp.intern("*macros*")); + rt::apply_direct(interp, "value", &[__t1089])? }; - rt::apply_direct(interp, "assoc", &[__t1122, __t1124])? + rt::apply_direct(interp, "assoc", &[__t1088, __t1090])? }; - let __t1127 = { - let __t1126 = Value::sym(interp.intern("*macros*")); - rt::apply_direct(interp, "value", &[__t1126])? + let __t1093 = { + let __t1092 = Value::sym(interp.intern("*macros*")); + rt::apply_direct(interp, "value", &[__t1092])? }; - rt::apply_direct(interp, "remove", &[__t1125, __t1127])? + rt::apply_direct(interp, "remove", &[__t1091, __t1093])? }; - rt::apply_direct(interp, "set", &[__t1121, __t1128])? + rt::apply_direct(interp, "set", &[__t1087, __t1094])? }; - break Ok(v_V7074.clone()); + break Ok(v_V5921.clone()); } } } @@ -3502,6 +3492,7 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_macroexpand_x2d_h(interp); install_shen_x2e_walk(interp); install_shen_x2e_macros(interp); + install_shen_x2e_process_x2d_input_x2b_(interp); install_shen_x2e_cons_x2d_form_x2d_respect_x2d_modes(interp); install_shen_x2e_process_x2d_def(interp); install_shen_x2e_process_x2d_let(interp); @@ -3509,7 +3500,6 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_process_x2d_datatype(interp); install_shen_x2e_intern_x2d_type(interp); install_shen_x2e_process_x2d_synonyms(interp); - install_shen_x2e_lambda_x2d_of_x2d_defun(interp); install_shen_x2e_synonyms_x2d_h(interp); install_shen_x2e_compile_x2d_synonyms(interp); install_shen_x2e_process_x2d_lambda(interp); diff --git a/crates/shen-rust/src/aot/kernel/mod.rs b/crates/shen-rust/src/aot/kernel/mod.rs index 11af55d..bdfc429 100644 --- a/crates/shen-rust/src/aot/kernel/mod.rs +++ b/crates/shen-rust/src/aot/kernel/mod.rs @@ -8,25 +8,23 @@ //! `install_all` calls every per-file installer in the same fixed order //! `interp::boot::KERNEL_FILES` loads the source files. Order matters //! only for diagnostic purposes (a panic in `install_macros` is easier -//! to trace than one across 21 simultaneous modules). +//! to trace than one across many simultaneous modules). //! //! To regenerate: `scripts/codegen-kernel-aot.sh`. use crate::interp::eval::Interp; -pub mod compiler; +// `backend` (the `cl.*` Common-Lisp backend) and the programmable +// pattern-matching extension are vendored + generated so the Gate 6 +// audit stays exhaustive, but deliberately NOT called from `install_all` +// — neither is part of the boot list in `interp::boot::KERNEL_FILES`. +pub mod backend; pub mod core; pub mod declarations; -pub mod dict; pub mod extension_expand_dynamic; pub mod extension_features; pub mod extension_launcher; -// Opt-in extension (new in 41.2): vendored + generated so the Gate 6 -// audit stays exhaustive, but deliberately NOT called from `install_all` -// — it is not part of the canonical 21-module boot list in -// `interp::boot::KERNEL_FILES`. pub mod extension_programmable_pattern_matching; -pub mod init; pub mod load; pub mod macros; pub mod prolog; @@ -44,26 +42,27 @@ pub mod yacc; /// Register every AOT-compiled kernel function on `interp`. Call after /// `shen.initialise` and `register_all_metadata`, so these overwrite the /// tree-walked versions while leaving property-vector setup intact. +/// +/// Order mirrors `interp::boot::KERNEL_FILES` (upstream `install.lsp` +/// runtime order for the Tarver S41.2 refresh, then the stdlib overlay +/// and extensions). `backend` is intentionally absent — see above. pub fn install_all(interp: &mut Interp) { - core::install(interp); - toplevel::install(interp); sys::install(interp); - reader::install(interp); - prolog::install(interp); - load::install(interp); writer::install(interp); - macros::install(interp); + core::install(interp); + reader::install(interp); declarations::install(interp); - types::install(interp); - t_star::install(interp); + toplevel::install(interp); + macros::install(interp); + load::install(interp); + prolog::install(interp); sequent::install(interp); track::install(interp); - dict::install(interp); - compiler::install(interp); + t_star::install(interp); + yacc::install(interp); + types::install(interp); stlib::install(interp); - init::install(interp); extension_features::install(interp); extension_expand_dynamic::install(interp); extension_launcher::install(interp); - yacc::install(interp); } diff --git a/crates/shen-rust/src/aot/kernel/prolog.rs b/crates/shen-rust/src/aot/kernel/prolog.rs index 233343a..2ede261 100644 --- a/crates/shen-rust/src/aot/kernel/prolog.rs +++ b/crates/shen-rust/src/aot/kernel/prolog.rs @@ -32,11 +32,11 @@ pub fn aot_asserta(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1577 = args[0].clone(); + let mut v_V1231 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t0 = v_V1577.clone(); + let __t0 = v_V1231.clone(); let __t1 = Value::sym(interp.intern("shen.top")); rt::apply_direct(interp, "shen.assert*", &[__t0, __t1])? }); @@ -57,11 +57,11 @@ pub fn aot_assertz(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1578 = args[0].clone(); + let mut v_V1232 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2 = v_V1578.clone(); + let __t2 = v_V1232.clone(); let __t3 = Value::sym(interp.intern("shen.bottom")); rt::apply_direct(interp, "shen.assert*", &[__t2, __t3])? }); @@ -82,15 +82,15 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V1579 = args[0].clone(); + let mut v_V1233 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1580 = args[1].clone(); + let mut v_V1234 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t42 = { let __t15 = { - let __t6 = v_V1579.clone(); + let __t6 = v_V1233.clone(); rt::is_cons(&__t6) }; if !rt::is_truthy(interp, &__t15)? { @@ -99,7 +99,7 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu let __t16 = { let __t13 = { let __t8 = { - let __t7 = v_V1579.clone(); + let __t7 = v_V1233.clone(); rt::tl(&__t7)? }; rt::is_cons(&__t8) @@ -111,7 +111,7 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu let __t9 = Value::sym(interp.intern("<--")); let __t12 = { let __t11 = { - let __t10 = v_V1579.clone(); + let __t10 = v_V1233.clone(); rt::tl(&__t10)? }; rt::hd(&__t11)? @@ -129,40 +129,40 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu Err(e) => break Err(e), } { { - let v_W1581 = { + let v_W1235 = { let __t18 = { - let __t17 = v_V1579.clone(); + let __t17 = v_V1233.clone(); rt::hd(&__t17)? }; rt::apply_direct(interp, "shen.predicate", &[__t18])? }; { - let v_W1582 = { + let v_W1236 = { let __t20 = { - let __t19 = v_V1579.clone(); + let __t19 = v_V1233.clone(); rt::hd(&__t19)? }; rt::apply_direct(interp, "shen.terms", &[__t20])? }; { - let v_W1583 = { - let __t21 = v_W1582.clone(); + let v_W1237 = { + let __t21 = v_W1236.clone(); rt::apply_direct(interp, "length", &[__t21])? }; { - let v_W1584 = { - let __t22 = v_W1583.clone(); + let v_W1238 = { + let __t22 = v_W1237.clone(); rt::apply_direct(interp, "shen.parameters", &[__t22])? }; { - let v_W1585 = { - let __t23 = v_W1581.clone(); + let v_W1239 = { + let __t23 = v_W1235.clone(); rt::apply_direct(interp, "arity", &[__t23])? }; { - let v_W1586 = { + let v_W1240 = { let __t34 = { - let __t24 = v_W1585.clone(); + let __t24 = v_W1239.clone(); let __t25 = Value::int(-1i64); rt::eq(&__t24, &__t25) }; @@ -170,8 +170,8 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu { let _ = { let __t28 = { - let __t26 = v_W1581.clone(); - let __t27 = v_W1584.clone(); + let __t26 = v_W1235.clone(); + let __t27 = v_W1238.clone(); rt::apply_direct( interp, "shen.create-skeleton", @@ -181,7 +181,7 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu rt::apply_direct(interp, "eval", &[__t28])? }; { - let __t29 = v_W1581.clone(); + let __t29 = v_W1235.clone(); let __t30 = Value::sym( interp.intern("shen.dynamic"), ); @@ -208,25 +208,25 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let v_W1587 = { - let __t35 = v_W1581.clone(); - let __t36 = v_W1582.clone(); + let v_W1241 = { + let __t35 = v_W1235.clone(); + let __t36 = v_W1236.clone(); let __t39 = { let __t38 = { - let __t37 = v_V1579.clone(); + let __t37 = v_V1233.clone(); rt::tl(&__t37)? }; rt::tl(&__t38)? }; - let __t40 = v_V1579.clone(); - let __t41 = v_V1580.clone(); + let __t40 = v_V1233.clone(); + let __t41 = v_V1234.clone(); rt::apply_direct( interp, "shen.insert-info", &[__t35, __t36, __t39, __t40, __t41], )? }; - break Ok(v_W1581.clone()); + break Ok(v_W1235.clone()); } } } @@ -242,8 +242,8 @@ pub fn aot_shen_x2e_assert_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResu Err(e) => break Err(e), } { break Ok({ - let __t4 = Value::sym(interp.intern("shen.assert*")); - rt::apply_direct(interp, "shen.f-error", &[__t4])? + let __t4 = Value::str("partial function shen.assert*"); + rt::apply_direct(interp, "simple-error", &[__t4])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -268,12 +268,12 @@ pub fn aot_shen_x2e_predicate(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V1590 = args[0].clone(); + let mut v_V1244 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t46 = { - let __t44 = v_V1590.clone(); + let __t44 = v_V1244.clone(); rt::is_cons(&__t44) }; if match rt::is_truthy(interp, &__t46) { @@ -281,7 +281,7 @@ pub fn aot_shen_x2e_predicate(interp: &mut Interp, args: &[Value]) -> ShenResult Err(e) => break Err(e), } { break Ok({ - let __t45 = v_V1590.clone(); + let __t45 = v_V1244.clone(); rt::hd(&__t45)? }); } else { @@ -291,7 +291,7 @@ pub fn aot_shen_x2e_predicate(interp: &mut Interp, args: &[Value]) -> ShenResult Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1590.clone()); + break Ok(v_V1244.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -315,12 +315,12 @@ pub fn aot_shen_x2e_terms(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult break Err(e), } { break Ok({ - let __t49 = v_V1595.clone(); + let __t49 = v_V1249.clone(); rt::tl(&__t49)? }); } else { @@ -362,18 +362,18 @@ pub fn aot_shen_x2e_create_x2d_skeleton(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V1596 = args[0].clone(); + let mut v_V1250 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1597 = args[1].clone(); + let mut v_V1251 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ let __t51 = Value::sym(interp.intern("defprolog")); let __t56 = { - let __t52 = v_V1596.clone(); + let __t52 = v_V1250.clone(); let __t55 = { - let __t53 = v_V1596.clone(); - let __t54 = v_V1597.clone(); + let __t53 = v_V1250.clone(); + let __t54 = v_V1251.clone(); rt::apply_direct(interp, "shen.dynamic-default", &[__t53, __t54])? }; rt::cons(&__t52, &__t55) @@ -397,13 +397,13 @@ pub fn aot_shen_x2e_dynamic_x2d_default(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V1598 = args[0].clone(); + let mut v_V1252 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1599 = args[1].clone(); + let mut v_V1253 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t57 = v_V1599.clone(); + let __t57 = v_V1253.clone(); let __t78 = { let __t58 = Value::sym(interp.intern("<--")); let __t77 = { @@ -411,14 +411,14 @@ pub fn aot_shen_x2e_dynamic_x2d_default(interp: &mut Interp, args: &[Value]) -> let __t59 = Value::sym(interp.intern("shen.call-dynamic")); let __t71 = { let __t61 = { - let __t60 = v_V1599.clone(); + let __t60 = v_V1253.clone(); rt::apply_direct(interp, "shen.cons-form", &[__t60])? }; let __t70 = { let __t68 = { let __t62 = Value::sym(interp.intern("get")); let __t67 = { - let __t63 = v_V1598.clone(); + let __t63 = v_V1252.clone(); let __t66 = { let __t64 = Value::sym(interp.intern("shen.dynamic")); let __t65 = Value::nil(); @@ -466,39 +466,39 @@ pub fn aot_shen_x2e_insert_x2d_info(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1600 = args[0].clone(); + let mut v_V1254 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1601 = args[1].clone(); + let mut v_V1255 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1602 = args[2].clone(); + let mut v_V1256 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1603 = args[3].clone(); + let mut v_V1257 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1604 = args[4].clone(); + let mut v_V1258 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1605 = { + let v_W1259 = { let __t79 = Value::sym(interp.intern("shen.g")); rt::apply_direct(interp, "gensym", &[__t79])? }; { - let v_W1606 = { + let v_W1260 = { let __t90 = { let __t84 = { let __t80 = Value::sym(interp.intern("defprolog")); let __t83 = { - let __t81 = v_W1605.clone(); + let __t81 = v_W1259.clone(); let __t82 = Value::nil(); rt::cons(&__t81, &__t82) }; rt::cons(&__t80, &__t83) }; let __t89 = { - let __t85 = v_V1601.clone(); + let __t85 = v_V1255.clone(); let __t88 = { let __t86 = Value::sym(interp.intern("<--")); - let __t87 = v_V1602.clone(); + let __t87 = v_V1256.clone(); rt::cons(&__t86, &__t87) }; rt::apply_direct(interp, "append", &[__t85, __t88])? @@ -508,21 +508,21 @@ pub fn aot_shen_x2e_insert_x2d_info(interp: &mut Interp, args: &[Value]) -> Shen rt::apply_direct(interp, "eval", &[__t90])? }; { - let v_W1607 = { + let v_W1261 = { let __t92 = { - let __t91 = v_W1605.clone(); + let __t91 = v_W1259.clone(); rt::apply_direct(interp, "fn", &[__t91])? }; let __t95 = { - let __t93 = v_W1605.clone(); - let __t94 = v_V1603.clone(); + let __t93 = v_W1259.clone(); + let __t94 = v_V1257.clone(); rt::cons(&__t93, &__t94) }; rt::cons(&__t92, &__t95) }; { - let v_W1608 = { - let __t96 = v_V1600.clone(); + let v_W1262 = { + let __t96 = v_V1254.clone(); let __t97 = Value::sym(interp.intern("shen.dynamic")); let __t99 = { let __t98 = Value::sym(interp.intern("*property-vector*")); @@ -531,23 +531,23 @@ pub fn aot_shen_x2e_insert_x2d_info(interp: &mut Interp, args: &[Value]) -> Shen rt::apply_direct(interp, "get", &[__t96, __t97, __t99])? }; { - let v_W1609 = { + let v_W1263 = { let __t108 = { - let __t100 = v_V1604.clone(); + let __t100 = v_V1258.clone(); let __t101 = Value::sym(interp.intern("shen.top")); rt::eq(&__t100, &__t101) }; if rt::is_truthy(interp, &__t108)? { { - let __t102 = v_W1607.clone(); - let __t103 = v_W1608.clone(); + let __t102 = v_W1261.clone(); + let __t103 = v_W1262.clone(); rt::cons(&__t102, &__t103) } } else { { - let __t104 = v_W1608.clone(); + let __t104 = v_W1262.clone(); let __t107 = { - let __t105 = v_W1607.clone(); + let __t105 = v_W1261.clone(); let __t106 = Value::nil(); rt::cons(&__t105, &__t106) }; @@ -556,9 +556,9 @@ pub fn aot_shen_x2e_insert_x2d_info(interp: &mut Interp, args: &[Value]) -> Shen } }; break Ok({ - let __t109 = v_V1600.clone(); + let __t109 = v_V1254.clone(); let __t110 = Value::sym(interp.intern("shen.dynamic")); - let __t111 = v_W1609.clone(); + let __t111 = v_W1263.clone(); let __t113 = { let __t112 = Value::sym(interp.intern("*property-vector*")); rt::apply_direct(interp, "value", &[__t112])? @@ -589,14 +589,14 @@ pub fn aot_shen_x2e_newname(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult She ))); } #[allow(unused_mut)] - let mut v_V1612 = args[0].clone(); + let mut v_V1266 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1613 = args[1].clone(); + let mut v_V1267 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1614 = args[2].clone(); + let mut v_V1268 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1615 = args[3].clone(); + let mut v_V1269 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1616 = args[4].clone(); + let mut v_V1270 = args[4].clone(); #[allow(unused_mut)] - let mut v_V1617 = args[5].clone(); + let mut v_V1271 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1618 = { + let v_W1272 = { let __t139 = { - let __t122 = v_V1615.clone(); + let __t122 = v_V1269.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t122])? }; if rt::is_truthy(interp, &__t139)? { { - let v_W1619 = { - let __t123 = v_V1613.clone(); - let __t124 = v_V1614.clone(); + let v_W1273 = { + let __t123 = v_V1267.clone(); + let __t124 = v_V1268.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t123, __t124])? }; { let __t138 = { - let __t125 = v_W1619.clone(); + let __t125 = v_W1273.clone(); rt::is_cons(&__t125) }; if rt::is_truthy(interp, &__t138)? { { - let v_W1620 = { + let v_W1274 = { let __t127 = { - let __t126 = v_W1619.clone(); + let __t126 = v_W1273.clone(); rt::hd(&__t126)? }; - let __t128 = v_V1614.clone(); + let __t128 = v_V1268.clone(); rt::apply_direct( interp, "shen.lazyderef", @@ -688,13 +688,13 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She }; { let __t137 = { - let __t129 = v_W1620.clone(); + let __t129 = v_W1274.clone(); rt::is_cons(&__t129) }; if rt::is_truthy(interp, &__t137)? { { - let v_W1621 = { - let __t130 = v_W1620.clone(); + let v_W1275 = { + let __t130 = v_W1274.clone(); rt::hd(&__t130)? }; { @@ -706,12 +706,12 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She )? }; { - let __t131 = v_W1621.clone(); - let __t132 = v_V1612.clone(); - let __t133 = v_V1614.clone(); - let __t134 = v_V1615.clone(); - let __t135 = v_V1616.clone(); - let __t136 = v_V1617.clone(); + let __t131 = v_W1275.clone(); + let __t132 = v_V1266.clone(); + let __t133 = v_V1268.clone(); + let __t134 = v_V1269.clone(); + let __t135 = v_V1270.clone(); + let __t136 = v_V1271.clone(); rt::apply_direct( interp, "shen.callrec", @@ -739,7 +739,7 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She }; { let __t142 = { - let __t140 = v_W1618.clone(); + let __t140 = v_W1272.clone(); let __t141 = Value::bool(false); rt::eq(&__t140, &__t141) }; @@ -749,7 +749,7 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She } { { let __t144 = { - let __t143 = v_V1615.clone(); + let __t143 = v_V1269.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t143])? }; if match rt::is_truthy(interp, &__t144) { @@ -757,14 +757,14 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1622 = { - let __t145 = v_V1613.clone(); - let __t146 = v_V1614.clone(); + let v_W1276 = { + let __t145 = v_V1267.clone(); + let __t146 = v_V1268.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t145, __t146])? }; { let __t148 = { - let __t147 = v_W1622.clone(); + let __t147 = v_W1276.clone(); rt::is_cons(&__t147) }; if match rt::is_truthy(interp, &__t148) { @@ -772,8 +772,8 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1623 = { - let __t149 = v_W1622.clone(); + let v_W1277 = { + let __t149 = v_W1276.clone(); rt::tl(&__t149)? }; { @@ -781,18 +781,18 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t150 = v_V1612.clone(); - let __t151 = v_W1623.clone(); - let __t152 = v_V1614.clone(); - let __t153 = v_V1615.clone(); - let __t154 = v_V1616.clone(); - let __t155 = v_V1617.clone(); - v_V1612 = __t150; - v_V1613 = __t151; - v_V1614 = __t152; - v_V1615 = __t153; - v_V1616 = __t154; - v_V1617 = __t155; + let __t150 = v_V1266.clone(); + let __t151 = v_W1277.clone(); + let __t152 = v_V1268.clone(); + let __t153 = v_V1269.clone(); + let __t154 = v_V1270.clone(); + let __t155 = v_V1271.clone(); + v_V1266 = __t150; + v_V1267 = __t151; + v_V1268 = __t152; + v_V1269 = __t153; + v_V1270 = __t154; + v_V1271 = __t155; continue; } } @@ -807,7 +807,7 @@ pub fn aot_shen_x2e_call_x2d_dynamic(interp: &mut Interp, args: &[Value]) -> She } } } else { - break Ok(v_W1618.clone()); + break Ok(v_W1272.clone()); } } } @@ -828,23 +828,23 @@ pub fn aot_shen_x2e_callrec(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t156 = Value::sym(interp.intern("shen.callrec")); - rt::apply_direct(interp, "shen.f-error", &[__t156])? + let __t156 = Value::str("partial function shen.callrec"); + rt::apply_direct(interp, "simple-error", &[__t156])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -937,13 +937,13 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1630 = args[0].clone(); + let mut v_V1284 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t205 = { let __t190 = { - let __t181 = v_V1630.clone(); + let __t181 = v_V1284.clone(); rt::is_cons(&__t181) }; if !rt::is_truthy(interp, &__t190)? { @@ -952,7 +952,7 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t191 = { let __t188 = { let __t183 = { - let __t182 = v_V1630.clone(); + let __t182 = v_V1284.clone(); rt::tl(&__t182)? }; rt::is_cons(&__t183) @@ -964,7 +964,7 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { let __t184 = Value::sym(interp.intern("<--")); let __t187 = { let __t186 = { - let __t185 = v_V1630.clone(); + let __t185 = v_V1284.clone(); rt::tl(&__t185)? }; rt::hd(&__t186)? @@ -982,16 +982,16 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { Err(e) => break Err(e), } { { - let v_W1631 = { + let v_W1285 = { let __t193 = { - let __t192 = v_V1630.clone(); + let __t192 = v_V1284.clone(); rt::hd(&__t192)? }; rt::apply_direct(interp, "shen.predicate", &[__t193])? }; { - let v_W1632 = { - let __t194 = v_W1631.clone(); + let v_W1286 = { + let __t194 = v_W1285.clone(); let __t195 = Value::sym(interp.intern("shen.dynamic")); let __t197 = { let __t196 = Value::sym(interp.intern("*property-vector*")); @@ -1000,11 +1000,11 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { rt::apply_direct(interp, "get", &[__t194, __t195, __t197])? }; break Ok({ - let __t198 = v_W1631.clone(); + let __t198 = v_W1285.clone(); let __t199 = Value::sym(interp.intern("shen.dynamic")); let __t202 = { - let __t200 = v_V1630.clone(); - let __t201 = v_W1632.clone(); + let __t200 = v_V1284.clone(); + let __t201 = v_W1286.clone(); rt::apply_direct(interp, "shen.retract-clause", &[__t200, __t201])? }; let __t204 = { @@ -1023,8 +1023,8 @@ pub fn aot_retract(interp: &mut Interp, args: &[Value]) -> ShenResult { Err(e) => break Err(e), } { break Ok({ - let __t179 = Value::sym(interp.intern("retract")); - rt::apply_direct(interp, "shen.f-error", &[__t179])? + let __t179 = Value::str("partial function retract"); + rt::apply_direct(interp, "simple-error", &[__t179])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1049,15 +1049,15 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V1638 = args[0].clone(); + let mut v_V1292 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1639 = args[1].clone(); + let mut v_V1293 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t245 = { let __t243 = Value::nil(); - let __t244 = v_V1639.clone(); + let __t244 = v_V1293.clone(); rt::eq(&__t243, &__t244) }; if match rt::is_truthy(interp, &__t245) { @@ -1069,7 +1069,7 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S { let __t242 = { let __t231 = { - let __t216 = v_V1639.clone(); + let __t216 = v_V1293.clone(); rt::is_cons(&__t216) }; if !rt::is_truthy(interp, &__t231)? { @@ -1078,7 +1078,7 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S let __t232 = { let __t229 = { let __t218 = { - let __t217 = v_V1639.clone(); + let __t217 = v_V1293.clone(); rt::hd(&__t217)? }; rt::is_cons(&__t218) @@ -1090,7 +1090,7 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S let __t227 = { let __t221 = { let __t220 = { - let __t219 = v_V1639.clone(); + let __t219 = v_V1293.clone(); rt::hd(&__t219)? }; rt::tl(&__t220)? @@ -1101,11 +1101,11 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S Value::bool(false) } else { let __t228 = { - let __t222 = v_V1638.clone(); + let __t222 = v_V1292.clone(); let __t226 = { let __t225 = { let __t224 = { - let __t223 = v_V1639.clone(); + let __t223 = v_V1293.clone(); rt::hd(&__t223)? }; rt::tl(&__t224)? @@ -1134,7 +1134,7 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S let __t237 = { let __t236 = { let __t235 = { - let __t234 = v_V1639.clone(); + let __t234 = v_V1293.clone(); rt::hd(&__t234)? }; rt::tl(&__t235)? @@ -1150,14 +1150,14 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S rt::apply_direct(interp, "set", &[__t233, __t240])? }; break Ok({ - let __t241 = v_V1639.clone(); + let __t241 = v_V1293.clone(); rt::tl(&__t241)? }); } } else { { let __t215 = { - let __t208 = v_V1639.clone(); + let __t208 = v_V1293.clone(); rt::is_cons(&__t208) }; if match rt::is_truthy(interp, &__t215) { @@ -1166,13 +1166,13 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ let __t210 = { - let __t209 = v_V1639.clone(); + let __t209 = v_V1293.clone(); rt::hd(&__t209)? }; let __t214 = { - let __t211 = v_V1638.clone(); + let __t211 = v_V1292.clone(); let __t213 = { - let __t212 = v_V1639.clone(); + let __t212 = v_V1293.clone(); rt::tl(&__t212)? }; rt::apply_direct( @@ -1192,8 +1192,8 @@ pub fn aot_shen_x2e_retract_x2d_clause(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ let __t206 = - Value::sym(interp.intern("shen.retract-clause")); - rt::apply_direct(interp, "shen.f-error", &[__t206])? + Value::str("partial function shen.retract-clause"); + rt::apply_direct(interp, "simple-error", &[__t206])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1222,9 +1222,9 @@ pub fn aot_shen_x2e_compile_x2d_prolog(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V1640 = args[0].clone(); + let mut v_V1294 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1641 = args[1].clone(); + let mut v_V1295 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -1233,9 +1233,9 @@ pub fn aot_shen_x2e_compile_x2d_prolog(interp: &mut Interp, args: &[Value]) -> S "", 1, move |interp, args| { - let v_Z1642 = args[0].clone(); + let v_Z1296 = args[0].clone(); Ok({ - let __t246 = v_Z1642.clone(); + let __t246 = v_Z1296.clone(); rt::apply_direct(interp, "shen.", &[__t246])? }) }, @@ -1244,8 +1244,8 @@ pub fn aot_shen_x2e_compile_x2d_prolog(interp: &mut Interp, args: &[Value]) -> S ) }; let __t250 = { - let __t248 = v_V1640.clone(); - let __t249 = v_V1641.clone(); + let __t248 = v_V1294.clone(); + let __t249 = v_V1295.clone(); rt::cons(&__t248, &__t249) }; rt::apply_direct(interp, "compile", &[__t247, __t250])? @@ -1267,34 +1267,34 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V1643 = args[0].clone(); + let mut v_V1297 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1644 = { + let v_W1298 = { let __t268 = { - let __t251 = v_V1643.clone(); + let __t251 = v_V1297.clone(); rt::is_cons(&__t251) }; if rt::is_truthy(interp, &__t268)? { { - let v_W1645 = { - let __t252 = v_V1643.clone(); + let v_W1299 = { + let __t252 = v_V1297.clone(); rt::apply_direct(interp, "head", &[__t252])? }; { - let v_W1646 = { - let __t253 = v_V1643.clone(); + let v_W1300 = { + let __t253 = v_V1297.clone(); rt::apply_direct(interp, "tail", &[__t253])? }; { - let v_W1647 = { - let __t254 = v_W1646.clone(); + let v_W1301 = { + let __t254 = v_W1300.clone(); rt::apply_direct(interp, "shen.", &[__t254])? }; { let __t267 = { - let __t255 = v_W1647.clone(); + let __t255 = v_W1301.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t255])? }; if rt::is_truthy(interp, &__t267)? { @@ -1303,13 +1303,13 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W1648 = { - let __t256 = v_W1647.clone(); + let v_W1302 = { + let __t256 = v_W1301.clone(); rt::apply_direct(interp, "shen.<-out", &[__t256])? }; { - let v_W1649 = { - let __t257 = v_W1647.clone(); + let v_W1303 = { + let __t257 = v_W1301.clone(); rt::apply_direct( interp, "shen.in->", @@ -1317,11 +1317,11 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> )? }; { - let __t258 = v_W1649.clone(); + let __t258 = v_W1303.clone(); let __t266 = { - let v_W1650 = { - let __t259 = v_W1645.clone(); - let __t260 = v_W1648.clone(); + let v_W1304 = { + let __t259 = v_W1299.clone(); + let __t260 = v_W1302.clone(); rt::apply_direct( interp, "shen.prolog-arity-check", @@ -1329,17 +1329,17 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> )? }; { - let v_W1651 = { + let v_W1305 = { let __t262 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1652 = + let v_Z1306 = args[0].clone(); Ok({ let __t261 = - v_Z1652.clone(); + v_Z1306.clone(); rt::apply_direct(interp, "shen.linearise-clause", &[__t261])? }) }, @@ -1347,7 +1347,7 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> interp, ) }; - let __t263 = v_W1648.clone(); + let __t263 = v_W1302.clone(); rt::apply_direct( interp, "map", @@ -1355,8 +1355,8 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> )? }; { - let __t264 = v_W1645.clone(); - let __t265 = v_W1651.clone(); + let __t264 = v_W1299.clone(); + let __t265 = v_W1305.clone(); rt::apply_direct( interp, "shen.horn-clause-procedure", @@ -1386,7 +1386,7 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> }; { let __t270 = { - let __t269 = v_W1644.clone(); + let __t269 = v_W1298.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t269])? }; if match rt::is_truthy(interp, &__t270) { @@ -1395,7 +1395,7 @@ pub fn aot_shen_x2e__x3c_defprolog_x3e_(interp: &mut Interp, args: &[Value]) -> } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1644.clone()); + break Ok(v_W1298.clone()); } } } @@ -1419,15 +1419,15 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( ))); } #[allow(unused_mut)] - let mut v_V1655 = args[0].clone(); + let mut v_V1309 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1656 = args[1].clone(); + let mut v_V1310 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t323 = { let __t318 = { - let __t298 = v_V1656.clone(); + let __t298 = v_V1310.clone(); rt::is_cons(&__t298) }; if !rt::is_truthy(interp, &__t318)? { @@ -1436,7 +1436,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t319 = { let __t316 = { let __t300 = { - let __t299 = v_V1656.clone(); + let __t299 = v_V1310.clone(); rt::hd(&__t299)? }; rt::is_cons(&__t300) @@ -1448,7 +1448,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t314 = { let __t303 = { let __t302 = { - let __t301 = v_V1656.clone(); + let __t301 = v_V1310.clone(); rt::hd(&__t301)? }; rt::tl(&__t302)? @@ -1464,7 +1464,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t308 = { let __t307 = { let __t306 = { - let __t305 = v_V1656.clone(); + let __t305 = v_V1310.clone(); rt::hd(&__t305)? }; rt::tl(&__t306)? @@ -1479,7 +1479,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t313 = { let __t309 = Value::nil(); let __t311 = { - let __t310 = v_V1656.clone(); + let __t310 = v_V1310.clone(); rt::tl(&__t310)? }; rt::eq(&__t309, &__t311) @@ -1503,7 +1503,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( break Ok({ let __t322 = { let __t321 = { - let __t320 = v_V1656.clone(); + let __t320 = v_V1310.clone(); rt::hd(&__t320)? }; rt::hd(&__t321)? @@ -1514,7 +1514,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( { let __t297 = { let __t288 = { - let __t273 = v_V1656.clone(); + let __t273 = v_V1310.clone(); rt::is_cons(&__t273) }; if !rt::is_truthy(interp, &__t288)? { @@ -1523,7 +1523,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t289 = { let __t286 = { let __t275 = { - let __t274 = v_V1656.clone(); + let __t274 = v_V1310.clone(); rt::hd(&__t274)? }; rt::is_cons(&__t275) @@ -1535,7 +1535,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t284 = { let __t278 = { let __t277 = { - let __t276 = v_V1656.clone(); + let __t276 = v_V1310.clone(); rt::hd(&__t276)? }; rt::tl(&__t277)? @@ -1550,7 +1550,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( let __t283 = { let __t282 = { let __t281 = { - let __t280 = v_V1656.clone(); + let __t280 = v_V1310.clone(); rt::hd(&__t280)? }; rt::tl(&__t281)? @@ -1573,11 +1573,11 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( Err(e) => break Err(e), } { break Ok({ - let __t290 = v_V1655.clone(); + let __t290 = v_V1309.clone(); let __t294 = { let __t293 = { let __t292 = { - let __t291 = v_V1656.clone(); + let __t291 = v_V1310.clone(); rt::hd(&__t291)? }; rt::hd(&__t292)? @@ -1585,7 +1585,7 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( rt::apply_direct(interp, "length", &[__t293])? }; let __t296 = { - let __t295 = v_V1656.clone(); + let __t295 = v_V1310.clone(); rt::tl(&__t295)? }; rt::apply_direct(interp, "shen.pac-h", &[__t290, __t294, __t296])? @@ -1599,8 +1599,8 @@ pub fn aot_shen_x2e_prolog_x2d_arity_x2d_check( } { break Ok({ let __t271 = - Value::sym(interp.intern("shen.prolog-arity-check")); - rt::apply_direct(interp, "shen.f-error", &[__t271])? + Value::str("partial function shen.prolog-arity-check"); + rt::apply_direct(interp, "simple-error", &[__t271])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1634,29 +1634,29 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V1661 = args[0].clone(); + let mut v_V1315 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1662 = args[1].clone(); + let mut v_V1316 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1663 = args[2].clone(); + let mut v_V1317 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t350 = { let __t348 = Value::nil(); - let __t349 = v_V1663.clone(); + let __t349 = v_V1317.clone(); rt::eq(&__t348, &__t349) }; if match rt::is_truthy(interp, &__t350) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1662.clone()); + break Ok(v_V1316.clone()); } else { { let __t347 = { let __t329 = { - let __t326 = v_V1663.clone(); + let __t326 = v_V1317.clone(); rt::is_cons(&__t326) }; if !rt::is_truthy(interp, &__t329)? { @@ -1664,7 +1664,7 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult } else { let __t330 = { let __t328 = { - let __t327 = v_V1663.clone(); + let __t327 = v_V1317.clone(); rt::hd(&__t327)? }; rt::is_cons(&__t328) @@ -1678,11 +1678,11 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult } { { let __t336 = { - let __t331 = v_V1662.clone(); + let __t331 = v_V1316.clone(); let __t335 = { let __t334 = { let __t333 = { - let __t332 = v_V1663.clone(); + let __t332 = v_V1317.clone(); rt::hd(&__t332)? }; rt::hd(&__t333)? @@ -1696,15 +1696,15 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult Err(e) => break Err(e), } { { - let __t337 = v_V1661.clone(); - let __t338 = v_V1662.clone(); + let __t337 = v_V1315.clone(); + let __t338 = v_V1316.clone(); let __t340 = { - let __t339 = v_V1663.clone(); + let __t339 = v_V1317.clone(); rt::tl(&__t339)? }; - v_V1661 = __t337; - v_V1662 = __t338; - v_V1663 = __t340; + v_V1315 = __t337; + v_V1316 = __t338; + v_V1317 = __t340; continue; } } else { @@ -1712,7 +1712,7 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult let __t346 = { let __t341 = Value::str("arity error in prolog procedure "); let __t345 = { - let __t342 = v_V1661.clone(); + let __t342 = v_V1315.clone(); let __t343 = Value::str("\n"); let __t344 = Value::sym(interp.intern("shen.a")); rt::apply_direct( @@ -1735,8 +1735,8 @@ pub fn aot_shen_x2e_pac_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult Err(e) => break Err(e), } { break Ok({ - let __t324 = Value::sym(interp.intern("shen.pac-h")); - rt::apply_direct(interp, "shen.f-error", &[__t324])? + let __t324 = Value::str("partial function shen.pac-h"); + rt::apply_direct(interp, "simple-error", &[__t324])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1763,18 +1763,18 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V1664 = args[0].clone(); + let mut v_V1318 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1665 = { - let v_W1666 = { - let __t351 = v_V1664.clone(); + let v_W1319 = { + let v_W1320 = { + let __t351 = v_V1318.clone(); rt::apply_direct(interp, "shen.", &[__t351])? }; { let __t364 = { - let __t352 = v_W1666.clone(); + let __t352 = v_W1320.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t352])? }; if rt::is_truthy(interp, &__t364)? { @@ -1783,23 +1783,23 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W1667 = { - let __t353 = v_W1666.clone(); + let v_W1321 = { + let __t353 = v_W1320.clone(); rt::apply_direct(interp, "shen.<-out", &[__t353])? }; { - let v_W1668 = { - let __t354 = v_W1666.clone(); + let v_W1322 = { + let __t354 = v_W1320.clone(); rt::apply_direct(interp, "shen.in->", &[__t354])? }; { - let v_W1669 = { - let __t355 = v_W1668.clone(); + let v_W1323 = { + let __t355 = v_W1322.clone(); rt::apply_direct(interp, "shen.", &[__t355])? }; { let __t363 = { - let __t356 = v_W1669.clone(); + let __t356 = v_W1323.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1812,8 +1812,8 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W1670 = { - let __t357 = v_W1669.clone(); + let v_W1324 = { + let __t357 = v_W1323.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1821,8 +1821,8 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let v_W1671 = { - let __t358 = v_W1669.clone(); + let v_W1325 = { + let __t358 = v_W1323.clone(); rt::apply_direct( interp, "shen.in->", @@ -1830,10 +1830,10 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let __t359 = v_W1671.clone(); + let __t359 = v_W1325.clone(); let __t362 = { - let __t360 = v_W1667.clone(); - let __t361 = v_W1670.clone(); + let __t360 = v_W1321.clone(); + let __t361 = v_W1324.clone(); rt::cons(&__t360, &__t361) }; rt::apply_direct( @@ -1854,7 +1854,7 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t366 = { - let __t365 = v_W1665.clone(); + let __t365 = v_W1319.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t365])? }; if match rt::is_truthy(interp, &__t366) { @@ -1862,14 +1862,14 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { { - let v_W1672 = { - let v_W1673 = { - let __t367 = v_V1664.clone(); + let v_W1326 = { + let v_W1327 = { + let __t367 = v_V1318.clone(); rt::apply_direct(interp, "", &[__t367])? }; { let __t381 = { - let __t368 = v_W1673.clone(); + let __t368 = v_W1327.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t368])? }; if rt::is_truthy(interp, &__t381)? { @@ -1878,20 +1878,20 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W1674 = { - let __t369 = v_W1673.clone(); + let v_W1328 = { + let __t369 = v_W1327.clone(); rt::apply_direct(interp, "shen.<-out", &[__t369])? }; { - let v_W1675 = { - let __t370 = v_W1673.clone(); + let v_W1329 = { + let __t370 = v_W1327.clone(); rt::apply_direct(interp, "shen.in->", &[__t370])? }; { - let __t371 = v_W1675.clone(); + let __t371 = v_W1329.clone(); let __t380 = { let __t379 = { - let __t372 = v_W1674.clone(); + let __t372 = v_W1328.clone(); rt::apply_direct( interp, "empty?", @@ -1907,7 +1907,7 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh "Prolog syntax error here:\n ", ); let __t377 = { - let __t374 = v_W1674.clone(); + let __t374 = v_W1328.clone(); let __t375 = Value::str("\n ..."); let __t376 = Value::sym( @@ -1946,7 +1946,7 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t383 = { - let __t382 = v_W1672.clone(); + let __t382 = v_W1326.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t382])? }; if match rt::is_truthy(interp, &__t383) { @@ -1955,12 +1955,12 @@ pub fn aot_shen_x2e__x3c_clauses_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1672.clone()); + break Ok(v_W1326.clone()); } } } } else { - break Ok(v_W1665.clone()); + break Ok(v_W1319.clone()); } } } @@ -1981,13 +1981,13 @@ pub fn aot_shen_x2e_linearise_x2d_clause(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V1676 = args[0].clone(); + let mut v_V1330 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t404 = { let __t395 = { - let __t386 = v_V1676.clone(); + let __t386 = v_V1330.clone(); rt::is_cons(&__t386) }; if !rt::is_truthy(interp, &__t395)? { @@ -1996,7 +1996,7 @@ pub fn aot_shen_x2e_linearise_x2d_clause(interp: &mut Interp, args: &[Value]) -> let __t396 = { let __t393 = { let __t388 = { - let __t387 = v_V1676.clone(); + let __t387 = v_V1330.clone(); rt::tl(&__t387)? }; rt::is_cons(&__t388) @@ -2008,7 +2008,7 @@ pub fn aot_shen_x2e_linearise_x2d_clause(interp: &mut Interp, args: &[Value]) -> let __t389 = Value::nil(); let __t392 = { let __t391 = { - let __t390 = v_V1676.clone(); + let __t390 = v_V1330.clone(); rt::tl(&__t390)? }; rt::tl(&__t391)? @@ -2029,12 +2029,12 @@ pub fn aot_shen_x2e_linearise_x2d_clause(interp: &mut Interp, args: &[Value]) -> let __t403 = { let __t402 = { let __t398 = { - let __t397 = v_V1676.clone(); + let __t397 = v_V1330.clone(); rt::hd(&__t397)? }; let __t401 = { let __t400 = { - let __t399 = v_V1676.clone(); + let __t399 = v_V1330.clone(); rt::tl(&__t399)? }; rt::hd(&__t400)? @@ -2053,8 +2053,8 @@ pub fn aot_shen_x2e_linearise_x2d_clause(interp: &mut Interp, args: &[Value]) -> Err(e) => break Err(e), } { break Ok({ - let __t384 = Value::sym(interp.intern("shen.linearise-clause")); - rt::apply_direct(interp, "shen.f-error", &[__t384])? + let __t384 = Value::str("partial function shen.linearise-clause"); + rt::apply_direct(interp, "simple-error", &[__t384])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2083,12 +2083,12 @@ pub fn aot_shen_x2e_lch(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t405 = Value::sym(interp.intern("shen.lch")); - rt::apply_direct(interp, "shen.f-error", &[__t405])? + let __t405 = Value::str("partial function shen.lch"); + rt::apply_direct(interp, "simple-error", &[__t405])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2147,13 +2147,13 @@ pub fn aot_shen_x2e_lchh(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V1678.clone()); + break Ok(v_V1332.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -2431,18 +2431,18 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1679 = args[0].clone(); + let mut v_V1333 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1680 = { - let v_W1681 = { - let __t487 = v_V1679.clone(); + let v_W1334 = { + let v_W1335 = { + let __t487 = v_V1333.clone(); rt::apply_direct(interp, "shen.", &[__t487])? }; { let __t510 = { - let __t488 = v_W1681.clone(); + let __t488 = v_W1335.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t488])? }; if rt::is_truthy(interp, &__t510)? { @@ -2451,30 +2451,30 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1682 = { - let __t489 = v_W1681.clone(); + let v_W1336 = { + let __t489 = v_W1335.clone(); rt::apply_direct(interp, "shen.<-out", &[__t489])? }; { - let v_W1683 = { - let __t490 = v_W1681.clone(); + let v_W1337 = { + let __t490 = v_W1335.clone(); rt::apply_direct(interp, "shen.in->", &[__t490])? }; { let __t509 = { - let __t491 = v_W1683.clone(); + let __t491 = v_W1337.clone(); let __t492 = Value::sym(interp.intern("<--")); rt::apply_direct(interp, "shen.hds=?", &[__t491, __t492])? }; if rt::is_truthy(interp, &__t509)? { { - let v_W1684 = { - let __t493 = v_W1683.clone(); + let v_W1338 = { + let __t493 = v_W1337.clone(); rt::apply_direct(interp, "tail", &[__t493])? }; { - let v_W1685 = { - let __t494 = v_W1684.clone(); + let v_W1339 = { + let __t494 = v_W1338.clone(); rt::apply_direct( interp, "shen.", @@ -2483,7 +2483,7 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t508 = { - let __t495 = v_W1685.clone(); + let __t495 = v_W1339.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2500,8 +2500,8 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1686 = { - let __t496 = v_W1685.clone(); + let v_W1340 = { + let __t496 = v_W1339.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2509,8 +2509,8 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W1687 = { - let __t497 = v_W1685.clone(); + let v_W1341 = { + let __t497 = v_W1339.clone(); rt::apply_direct( interp, "shen.in->", @@ -2518,9 +2518,9 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W1688 = { + let v_W1342 = { let __t498 = - v_W1687.clone(); + v_W1341.clone(); rt::apply_direct( interp, "shen.", @@ -2530,7 +2530,7 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She { let __t507 = { let __t499 = - v_W1688.clone(); + v_W1342.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t499])? }; if rt::is_truthy( @@ -2541,22 +2541,22 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1689 = { + let v_W1343 = { let __t500 = - v_W1688 + v_W1342 .clone( ); rt::apply_direct(interp, "shen.in->", &[__t500])? }; { let __t501 = - v_W1689 + v_W1343 .clone( ); let __t506 = { - let __t502 = v_W1682.clone(); + let __t502 = v_W1336.clone(); let __t505 = { - let __t503 = v_W1686.clone(); + let __t503 = v_W1340.clone(); let __t504 = Value::nil(); rt::cons(&__t503, &__t504) }; @@ -2590,7 +2590,7 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t512 = { - let __t511 = v_W1680.clone(); + let __t511 = v_W1334.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t511])? }; if match rt::is_truthy(interp, &__t512) { @@ -2599,7 +2599,7 @@ pub fn aot_shen_x2e__x3c_clause_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1680.clone()); + break Ok(v_W1334.clone()); } } } @@ -2620,18 +2620,18 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V1690 = args[0].clone(); + let mut v_V1344 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1691 = { - let v_W1692 = { - let __t513 = v_V1690.clone(); + let v_W1345 = { + let v_W1346 = { + let __t513 = v_V1344.clone(); rt::apply_direct(interp, "shen.", &[__t513])? }; { let __t526 = { - let __t514 = v_W1692.clone(); + let __t514 = v_W1346.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t514])? }; if rt::is_truthy(interp, &__t526)? { @@ -2640,23 +2640,23 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1693 = { - let __t515 = v_W1692.clone(); + let v_W1347 = { + let __t515 = v_W1346.clone(); rt::apply_direct(interp, "shen.<-out", &[__t515])? }; { - let v_W1694 = { - let __t516 = v_W1692.clone(); + let v_W1348 = { + let __t516 = v_W1346.clone(); rt::apply_direct(interp, "shen.in->", &[__t516])? }; { - let v_W1695 = { - let __t517 = v_W1694.clone(); + let v_W1349 = { + let __t517 = v_W1348.clone(); rt::apply_direct(interp, "shen.", &[__t517])? }; { let __t525 = { - let __t518 = v_W1695.clone(); + let __t518 = v_W1349.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2669,8 +2669,8 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1696 = { - let __t519 = v_W1695.clone(); + let v_W1350 = { + let __t519 = v_W1349.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2678,8 +2678,8 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W1697 = { - let __t520 = v_W1695.clone(); + let v_W1351 = { + let __t520 = v_W1349.clone(); rt::apply_direct( interp, "shen.in->", @@ -2687,10 +2687,10 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let __t521 = v_W1697.clone(); + let __t521 = v_W1351.clone(); let __t524 = { - let __t522 = v_W1693.clone(); - let __t523 = v_W1696.clone(); + let __t522 = v_W1347.clone(); + let __t523 = v_W1350.clone(); rt::cons(&__t522, &__t523) }; rt::apply_direct( @@ -2711,7 +2711,7 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t528 = { - let __t527 = v_W1691.clone(); + let __t527 = v_W1345.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t527])? }; if match rt::is_truthy(interp, &__t528) { @@ -2719,14 +2719,14 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W1698 = { - let v_W1699 = { - let __t529 = v_V1690.clone(); + let v_W1352 = { + let v_W1353 = { + let __t529 = v_V1344.clone(); rt::apply_direct(interp, "", &[__t529])? }; { let __t534 = { - let __t530 = v_W1699.clone(); + let __t530 = v_W1353.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t530])? }; if rt::is_truthy(interp, &__t534)? { @@ -2735,12 +2735,12 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1700 = { - let __t531 = v_W1699.clone(); + let v_W1354 = { + let __t531 = v_W1353.clone(); rt::apply_direct(interp, "shen.in->", &[__t531])? }; { - let __t532 = v_W1700.clone(); + let __t532 = v_W1354.clone(); let __t533 = Value::nil(); rt::apply_direct( interp, @@ -2754,7 +2754,7 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t536 = { - let __t535 = v_W1698.clone(); + let __t535 = v_W1352.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t535])? }; if match rt::is_truthy(interp, &__t536) { @@ -2763,12 +2763,12 @@ pub fn aot_shen_x2e__x3c_head_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1698.clone()); + break Ok(v_W1352.clone()); } } } } else { - break Ok(v_W1691.clone()); + break Ok(v_W1345.clone()); } } } @@ -2789,30 +2789,30 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1701 = args[0].clone(); + let mut v_V1355 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1702 = { + let v_W1356 = { let __t548 = { - let __t537 = v_V1701.clone(); + let __t537 = v_V1355.clone(); rt::is_cons(&__t537) }; if rt::is_truthy(interp, &__t548)? { { - let v_W1703 = { - let __t538 = v_V1701.clone(); + let v_W1357 = { + let __t538 = v_V1355.clone(); rt::apply_direct(interp, "head", &[__t538])? }; { - let v_W1704 = { - let __t539 = v_V1701.clone(); + let v_W1358 = { + let __t539 = v_V1355.clone(); rt::apply_direct(interp, "tail", &[__t539])? }; { let __t547 = { let __t543 = { - let __t540 = v_W1703.clone(); + let __t540 = v_W1357.clone(); rt::apply_direct(interp, "atom?", &[__t540])? }; if !rt::is_truthy(interp, &__t543)? { @@ -2820,7 +2820,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } else { let __t544 = { let __t542 = { - let __t541 = v_W1703.clone(); + let __t541 = v_W1357.clone(); rt::apply_direct( interp, "shen.prolog-keyword?", @@ -2834,8 +2834,8 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; if rt::is_truthy(interp, &__t547)? { { - let __t545 = v_W1704.clone(); - let __t546 = v_W1703.clone(); + let __t545 = v_W1358.clone(); + let __t546 = v_W1357.clone(); rt::apply_direct(interp, "shen.comb", &[__t545, __t546])? } } else { @@ -2854,7 +2854,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t550 = { - let __t549 = v_W1702.clone(); + let __t549 = v_W1356.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t549])? }; if match rt::is_truthy(interp, &__t550) { @@ -2862,25 +2862,25 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1705 = { + let v_W1359 = { let __t560 = { - let __t551 = v_V1701.clone(); + let __t551 = v_V1355.clone(); rt::is_cons(&__t551) }; if rt::is_truthy(interp, &__t560)? { { - let v_W1706 = { - let __t552 = v_V1701.clone(); + let v_W1360 = { + let __t552 = v_V1355.clone(); rt::apply_direct(interp, "head", &[__t552])? }; { - let v_W1707 = { - let __t553 = v_V1701.clone(); + let v_W1361 = { + let __t553 = v_V1355.clone(); rt::apply_direct(interp, "tail", &[__t553])? }; { let __t559 = { - let __t554 = v_W1706.clone(); + let __t554 = v_W1360.clone(); let __t556 = { let __t555 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t555])? @@ -2889,8 +2889,8 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; if rt::is_truthy(interp, &__t559)? { { - let __t557 = v_W1707.clone(); - let __t558 = v_W1706.clone(); + let __t557 = v_W1361.clone(); + let __t558 = v_W1360.clone(); rt::apply_direct( interp, "shen.comb", @@ -2917,7 +2917,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t562 = { - let __t561 = v_W1705.clone(); + let __t561 = v_W1359.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t561])? }; if match rt::is_truthy(interp, &__t562) { @@ -2925,25 +2925,25 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1708 = { + let v_W1362 = { let __t592 = { - let __t563 = v_V1701.clone(); + let __t563 = v_V1355.clone(); rt::apply_direct(interp, "shen.ccons?", &[__t563])? }; if rt::is_truthy(interp, &__t592)? { { - let v_W1709 = { - let __t564 = v_V1701.clone(); + let v_W1363 = { + let __t564 = v_V1355.clone(); rt::apply_direct(interp, "head", &[__t564])? }; { - let v_W1710 = { - let __t565 = v_V1701.clone(); + let v_W1364 = { + let __t565 = v_V1355.clone(); rt::apply_direct(interp, "tail", &[__t565])? }; { let __t591 = { - let __t566 = v_W1709.clone(); + let __t566 = v_W1363.clone(); let __t567 = Value::sym(interp.intern("cons")); rt::apply_direct( @@ -2954,8 +2954,8 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; if rt::is_truthy(interp, &__t591)? { { - let v_W1711 = { - let __t568 = v_W1709.clone(); + let v_W1365 = { + let __t568 = v_W1363.clone(); rt::apply_direct( interp, "tail", @@ -2963,9 +2963,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1712 = { + let v_W1366 = { let __t569 = - v_W1711.clone(); + v_W1365.clone(); rt::apply_direct( interp, "shen.", @@ -2975,7 +2975,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen { let __t590 = { let __t570 = - v_W1712.clone(); + v_W1366.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t570])? }; if rt::is_truthy( @@ -2986,29 +2986,29 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W1713 = { + let v_W1367 = { let __t571 = - v_W1712 + v_W1366 .clone( ); rt::apply_direct(interp, "shen.<-out", &[__t571])? }; { - let v_W1714 = { - let __t572 = v_W1712.clone(); + let v_W1368 = { + let __t572 = v_W1366.clone(); rt::apply_direct(interp, "shen.in->", &[__t572])? }; { - let v_W1715 = { - let __t573 = v_W1714.clone(); + let v_W1369 = { + let __t573 = v_W1368.clone(); rt::apply_direct(interp, "shen.", &[__t573])? }; { let __t589 = { - let __t574 = v_W1715.clone(); + let __t574 = v_W1369.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t574])? }; - if rt::is_truthy(interp, &__t589)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1716 = { let __t575 = v_W1715.clone(); rt::apply_direct(interp, "shen.<-out", &[__t575])? }; { let v_W1717 = { let __t576 = v_W1715.clone(); rt::apply_direct(interp, "shen.in->", &[__t576])? }; { let v_W1718 = { let __t577 = v_W1717.clone(); rt::apply_direct(interp, "", &[__t577])? }; { let __t588 = { let __t578 = v_W1718.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t578])? }; if rt::is_truthy(interp, &__t588)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1719 = { let __t579 = v_W1718.clone(); rt::apply_direct(interp, "shen.in->", &[__t579])? }; { let __t580 = v_W1710.clone(); let __t587 = { let __t581 = Value::sym(interp.intern("cons")); let __t586 = { let __t582 = v_W1713.clone(); let __t585 = { let __t583 = v_W1716.clone(); let __t584 = Value::nil(); rt::cons(&__t583, &__t584) }; rt::cons(&__t582, &__t585) }; rt::cons(&__t581, &__t586) }; rt::apply_direct(interp, "shen.comb", &[__t580, __t587])? } } } } } } } } + if rt::is_truthy(interp, &__t589)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1370 = { let __t575 = v_W1369.clone(); rt::apply_direct(interp, "shen.<-out", &[__t575])? }; { let v_W1371 = { let __t576 = v_W1369.clone(); rt::apply_direct(interp, "shen.in->", &[__t576])? }; { let v_W1372 = { let __t577 = v_W1371.clone(); rt::apply_direct(interp, "", &[__t577])? }; { let __t588 = { let __t578 = v_W1372.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t578])? }; if rt::is_truthy(interp, &__t588)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1373 = { let __t579 = v_W1372.clone(); rt::apply_direct(interp, "shen.in->", &[__t579])? }; { let __t580 = v_W1364.clone(); let __t587 = { let __t581 = Value::sym(interp.intern("cons")); let __t586 = { let __t582 = v_W1367.clone(); let __t585 = { let __t583 = v_W1370.clone(); let __t584 = Value::nil(); rt::cons(&__t583, &__t584) }; rt::cons(&__t582, &__t585) }; rt::cons(&__t581, &__t586) }; rt::apply_direct(interp, "shen.comb", &[__t580, __t587])? } } } } } } } } } } } @@ -3037,7 +3037,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t594 = { - let __t593 = v_W1708.clone(); + let __t593 = v_W1362.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3049,9 +3049,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1720 = { + let v_W1374 = { let __t617 = { - let __t595 = v_V1701.clone(); + let __t595 = v_V1355.clone(); rt::apply_direct( interp, "shen.ccons?", @@ -3060,8 +3060,8 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; if rt::is_truthy(interp, &__t617)? { { - let v_W1721 = { - let __t596 = v_V1701.clone(); + let v_W1375 = { + let __t596 = v_V1355.clone(); rt::apply_direct( interp, "head", @@ -3069,8 +3069,8 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1722 = { - let __t597 = v_V1701.clone(); + let v_W1376 = { + let __t597 = v_V1355.clone(); rt::apply_direct( interp, "tail", @@ -3080,7 +3080,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen { let __t616 = { let __t598 = - v_W1721.clone(); + v_W1375.clone(); let __t599 = Value::sym( interp.intern("+"), ); @@ -3094,9 +3094,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen interp, &__t616, )? { { - let v_W1723 = { + let v_W1377 = { let __t600 = - v_W1721.clone(); + v_W1375.clone(); rt::apply_direct( interp, "tail", @@ -3104,19 +3104,19 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1724 = { + let v_W1378 = { let __t601 = - v_W1723 + v_W1377 .clone( ); rt::apply_direct(interp, "shen.", &[__t601])? }; { let __t615 = { - let __t602 = v_W1724.clone(); + let __t602 = v_W1378.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t602])? }; - if rt::is_truthy(interp, &__t615)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1725 = { let __t603 = v_W1724.clone(); rt::apply_direct(interp, "shen.<-out", &[__t603])? }; { let v_W1726 = { let __t604 = v_W1724.clone(); rt::apply_direct(interp, "shen.in->", &[__t604])? }; { let v_W1727 = { let __t605 = v_W1726.clone(); rt::apply_direct(interp, "", &[__t605])? }; { let __t614 = { let __t606 = v_W1727.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t606])? }; if rt::is_truthy(interp, &__t614)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1728 = { let __t607 = v_W1727.clone(); rt::apply_direct(interp, "shen.in->", &[__t607])? }; { let __t608 = v_W1722.clone(); let __t613 = { let __t609 = Value::sym(interp.intern("shen.+m")); let __t612 = { let __t610 = v_W1725.clone(); let __t611 = Value::nil(); rt::cons(&__t610, &__t611) }; rt::cons(&__t609, &__t612) }; rt::apply_direct(interp, "shen.comb", &[__t608, __t613])? } } } } } } } } + if rt::is_truthy(interp, &__t615)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1379 = { let __t603 = v_W1378.clone(); rt::apply_direct(interp, "shen.<-out", &[__t603])? }; { let v_W1380 = { let __t604 = v_W1378.clone(); rt::apply_direct(interp, "shen.in->", &[__t604])? }; { let v_W1381 = { let __t605 = v_W1380.clone(); rt::apply_direct(interp, "", &[__t605])? }; { let __t614 = { let __t606 = v_W1381.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t606])? }; if rt::is_truthy(interp, &__t614)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1382 = { let __t607 = v_W1381.clone(); rt::apply_direct(interp, "shen.in->", &[__t607])? }; { let __t608 = v_W1376.clone(); let __t613 = { let __t609 = Value::sym(interp.intern("shen.+m")); let __t612 = { let __t610 = v_W1379.clone(); let __t611 = Value::nil(); rt::cons(&__t610, &__t611) }; rt::cons(&__t609, &__t612) }; rt::apply_direct(interp, "shen.comb", &[__t608, __t613])? } } } } } } } } } } } @@ -3140,7 +3140,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t619 = { - let __t618 = v_W1720.clone(); + let __t618 = v_W1374.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3152,9 +3152,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1729 = { + let v_W1383 = { let __t642 = { - let __t620 = v_V1701.clone(); + let __t620 = v_V1355.clone(); rt::apply_direct( interp, "shen.ccons?", @@ -3163,9 +3163,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; if rt::is_truthy(interp, &__t642)? { { - let v_W1730 = { + let v_W1384 = { let __t621 = - v_V1701.clone(); + v_V1355.clone(); rt::apply_direct( interp, "head", @@ -3173,9 +3173,9 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1731 = { + let v_W1385 = { let __t622 = - v_V1701.clone(); + v_V1355.clone(); rt::apply_direct( interp, "tail", @@ -3185,7 +3185,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen { let __t641 = { let __t623 = - v_W1730 + v_W1384 .clone( ); let __t624 = Value::sym(interp.intern("-")); @@ -3195,18 +3195,18 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen interp, &__t641, )? { { - let v_W1732 = { - let __t625 = v_W1730.clone(); + let v_W1386 = { + let __t625 = v_W1384.clone(); rt::apply_direct(interp, "tail", &[__t625])? }; { - let v_W1733 = { - let __t626 = v_W1732.clone(); + let v_W1387 = { + let __t626 = v_W1386.clone(); rt::apply_direct(interp, "shen.", &[__t626])? }; { - let __t640 = { let __t627 = v_W1733.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t627])? }; - if rt::is_truthy(interp, &__t640)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1734 = { let __t628 = v_W1733.clone(); rt::apply_direct(interp, "shen.<-out", &[__t628])? }; { let v_W1735 = { let __t629 = v_W1733.clone(); rt::apply_direct(interp, "shen.in->", &[__t629])? }; { let v_W1736 = { let __t630 = v_W1735.clone(); rt::apply_direct(interp, "", &[__t630])? }; { let __t639 = { let __t631 = v_W1736.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t631])? }; if rt::is_truthy(interp, &__t639)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1737 = { let __t632 = v_W1736.clone(); rt::apply_direct(interp, "shen.in->", &[__t632])? }; { let __t633 = v_W1731.clone(); let __t638 = { let __t634 = Value::sym(interp.intern("shen.-m")); let __t637 = { let __t635 = v_W1734.clone(); let __t636 = Value::nil(); rt::cons(&__t635, &__t636) }; rt::cons(&__t634, &__t637) }; rt::apply_direct(interp, "shen.comb", &[__t633, __t638])? } } } } } } } } + let __t640 = { let __t627 = v_W1387.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t627])? }; + if rt::is_truthy(interp, &__t640)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1388 = { let __t628 = v_W1387.clone(); rt::apply_direct(interp, "shen.<-out", &[__t628])? }; { let v_W1389 = { let __t629 = v_W1387.clone(); rt::apply_direct(interp, "shen.in->", &[__t629])? }; { let v_W1390 = { let __t630 = v_W1389.clone(); rt::apply_direct(interp, "", &[__t630])? }; { let __t639 = { let __t631 = v_W1390.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t631])? }; if rt::is_truthy(interp, &__t639)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1391 = { let __t632 = v_W1390.clone(); rt::apply_direct(interp, "shen.in->", &[__t632])? }; { let __t633 = v_W1385.clone(); let __t638 = { let __t634 = Value::sym(interp.intern("shen.-m")); let __t637 = { let __t635 = v_W1388.clone(); let __t636 = Value::nil(); rt::cons(&__t635, &__t636) }; rt::cons(&__t634, &__t637) }; rt::apply_direct(interp, "shen.comb", &[__t633, __t638])? } } } } } } } } } } } @@ -3230,7 +3230,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t644 = { - let __t643 = v_W1729.clone(); + let __t643 = v_W1383.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3244,10 +3244,10 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1738 = { + let v_W1392 = { let __t671 = { let __t645 = - v_V1701.clone(); + v_V1355.clone(); rt::apply_direct( interp, "shen.ccons?", @@ -3258,22 +3258,22 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen interp, &__t671, )? { { - let v_W1739 = { - let __t646 = v_V1701.clone(); + let v_W1393 = { + let __t646 = v_V1355.clone(); rt::apply_direct(interp, "head", &[__t646])? }; { - let v_W1740 = { - let __t647 = v_V1701.clone(); + let v_W1394 = { + let __t647 = v_V1355.clone(); rt::apply_direct(interp, "tail", &[__t647])? }; { let __t670 = { - let __t648 = v_W1739.clone(); + let __t648 = v_W1393.clone(); let __t649 = Value::sym(interp.intern("mode")); rt::apply_direct(interp, "shen.hds=?", &[__t648, __t649])? }; - if rt::is_truthy(interp, &__t670)? { { let v_W1741 = { let __t650 = v_W1739.clone(); rt::apply_direct(interp, "tail", &[__t650])? }; { let v_W1742 = { let __t651 = v_W1741.clone(); rt::apply_direct(interp, "shen.", &[__t651])? }; { let __t669 = { let __t652 = v_W1742.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t652])? }; if rt::is_truthy(interp, &__t669)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1743 = { let __t653 = v_W1742.clone(); rt::apply_direct(interp, "shen.<-out", &[__t653])? }; { let v_W1744 = { let __t654 = v_W1742.clone(); rt::apply_direct(interp, "shen.in->", &[__t654])? }; { let __t668 = { let __t655 = v_W1744.clone(); let __t656 = Value::sym(interp.intern("+")); rt::apply_direct(interp, "shen.hds=?", &[__t655, __t656])? }; if rt::is_truthy(interp, &__t668)? { { let v_W1745 = { let __t657 = v_W1744.clone(); rt::apply_direct(interp, "tail", &[__t657])? }; { let v_W1746 = { let __t658 = v_W1745.clone(); rt::apply_direct(interp, "", &[__t658])? }; { let __t667 = { let __t659 = v_W1746.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t659])? }; if rt::is_truthy(interp, &__t667)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1747 = { let __t660 = v_W1746.clone(); rt::apply_direct(interp, "shen.in->", &[__t660])? }; { let __t661 = v_W1740.clone(); let __t666 = { let __t662 = Value::sym(interp.intern("shen.+m")); let __t665 = { let __t663 = v_W1743.clone(); let __t664 = Value::nil(); rt::cons(&__t663, &__t664) }; rt::cons(&__t662, &__t665) }; rt::apply_direct(interp, "shen.comb", &[__t661, __t666])? } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t670)? { { let v_W1395 = { let __t650 = v_W1393.clone(); rt::apply_direct(interp, "tail", &[__t650])? }; { let v_W1396 = { let __t651 = v_W1395.clone(); rt::apply_direct(interp, "shen.", &[__t651])? }; { let __t669 = { let __t652 = v_W1396.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t652])? }; if rt::is_truthy(interp, &__t669)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1397 = { let __t653 = v_W1396.clone(); rt::apply_direct(interp, "shen.<-out", &[__t653])? }; { let v_W1398 = { let __t654 = v_W1396.clone(); rt::apply_direct(interp, "shen.in->", &[__t654])? }; { let __t668 = { let __t655 = v_W1398.clone(); let __t656 = Value::sym(interp.intern("+")); rt::apply_direct(interp, "shen.hds=?", &[__t655, __t656])? }; if rt::is_truthy(interp, &__t668)? { { let v_W1399 = { let __t657 = v_W1398.clone(); rt::apply_direct(interp, "tail", &[__t657])? }; { let v_W1400 = { let __t658 = v_W1399.clone(); rt::apply_direct(interp, "", &[__t658])? }; { let __t667 = { let __t659 = v_W1400.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t659])? }; if rt::is_truthy(interp, &__t667)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1401 = { let __t660 = v_W1400.clone(); rt::apply_direct(interp, "shen.in->", &[__t660])? }; { let __t661 = v_W1394.clone(); let __t666 = { let __t662 = Value::sym(interp.intern("shen.+m")); let __t665 = { let __t663 = v_W1397.clone(); let __t664 = Value::nil(); rt::cons(&__t663, &__t664) }; rt::cons(&__t662, &__t665) }; rt::apply_direct(interp, "shen.comb", &[__t661, __t666])? } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } @@ -3286,7 +3286,7 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen { let __t673 = { let __t672 = - v_W1738.clone(); + v_W1392.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t672])? }; if match rt::is_truthy( @@ -3298,50 +3298,50 @@ pub fn aot_shen_x2e__x3c_hterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } { { - let v_W1748 = { + let v_W1402 = { let __t700 = { - let __t674 = v_V1701.clone(); + let __t674 = v_V1355.clone(); rt::apply_direct(interp, "shen.ccons?", &[__t674])? }; - if rt::is_truthy(interp, &__t700)? { { let v_W1749 = { let __t675 = v_V1701.clone(); rt::apply_direct(interp, "head", &[__t675])? }; { let v_W1750 = { let __t676 = v_V1701.clone(); rt::apply_direct(interp, "tail", &[__t676])? }; { let __t699 = { let __t677 = v_W1749.clone(); let __t678 = Value::sym(interp.intern("mode")); rt::apply_direct(interp, "shen.hds=?", &[__t677, __t678])? }; if rt::is_truthy(interp, &__t699)? { { let v_W1751 = { let __t679 = v_W1749.clone(); rt::apply_direct(interp, "tail", &[__t679])? }; { let v_W1752 = { let __t680 = v_W1751.clone(); rt::apply_direct(interp, "shen.", &[__t680])? }; { let __t698 = { let __t681 = v_W1752.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t681])? }; if rt::is_truthy(interp, &__t698)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1753 = { let __t682 = v_W1752.clone(); rt::apply_direct(interp, "shen.<-out", &[__t682])? }; { let v_W1754 = { let __t683 = v_W1752.clone(); rt::apply_direct(interp, "shen.in->", &[__t683])? }; { let __t697 = { let __t684 = v_W1754.clone(); let __t685 = Value::sym(interp.intern("-")); rt::apply_direct(interp, "shen.hds=?", &[__t684, __t685])? }; if rt::is_truthy(interp, &__t697)? { { let v_W1755 = { let __t686 = v_W1754.clone(); rt::apply_direct(interp, "tail", &[__t686])? }; { let v_W1756 = { let __t687 = v_W1755.clone(); rt::apply_direct(interp, "", &[__t687])? }; { let __t696 = { let __t688 = v_W1756.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t688])? }; if rt::is_truthy(interp, &__t696)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1757 = { let __t689 = v_W1756.clone(); rt::apply_direct(interp, "shen.in->", &[__t689])? }; { let __t690 = v_W1750.clone(); let __t695 = { let __t691 = Value::sym(interp.intern("shen.-m")); let __t694 = { let __t692 = v_W1753.clone(); let __t693 = Value::nil(); rt::cons(&__t692, &__t693) }; rt::cons(&__t691, &__t694) }; rt::apply_direct(interp, "shen.comb", &[__t690, __t695])? } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t700)? { { let v_W1403 = { let __t675 = v_V1355.clone(); rt::apply_direct(interp, "head", &[__t675])? }; { let v_W1404 = { let __t676 = v_V1355.clone(); rt::apply_direct(interp, "tail", &[__t676])? }; { let __t699 = { let __t677 = v_W1403.clone(); let __t678 = Value::sym(interp.intern("mode")); rt::apply_direct(interp, "shen.hds=?", &[__t677, __t678])? }; if rt::is_truthy(interp, &__t699)? { { let v_W1405 = { let __t679 = v_W1403.clone(); rt::apply_direct(interp, "tail", &[__t679])? }; { let v_W1406 = { let __t680 = v_W1405.clone(); rt::apply_direct(interp, "shen.", &[__t680])? }; { let __t698 = { let __t681 = v_W1406.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t681])? }; if rt::is_truthy(interp, &__t698)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1407 = { let __t682 = v_W1406.clone(); rt::apply_direct(interp, "shen.<-out", &[__t682])? }; { let v_W1408 = { let __t683 = v_W1406.clone(); rt::apply_direct(interp, "shen.in->", &[__t683])? }; { let __t697 = { let __t684 = v_W1408.clone(); let __t685 = Value::sym(interp.intern("-")); rt::apply_direct(interp, "shen.hds=?", &[__t684, __t685])? }; if rt::is_truthy(interp, &__t697)? { { let v_W1409 = { let __t686 = v_W1408.clone(); rt::apply_direct(interp, "tail", &[__t686])? }; { let v_W1410 = { let __t687 = v_W1409.clone(); rt::apply_direct(interp, "", &[__t687])? }; { let __t696 = { let __t688 = v_W1410.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t688])? }; if rt::is_truthy(interp, &__t696)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W1411 = { let __t689 = v_W1410.clone(); rt::apply_direct(interp, "shen.in->", &[__t689])? }; { let __t690 = v_W1404.clone(); let __t695 = { let __t691 = Value::sym(interp.intern("shen.-m")); let __t694 = { let __t692 = v_W1407.clone(); let __t693 = Value::nil(); rt::cons(&__t692, &__t693) }; rt::cons(&__t691, &__t694) }; rt::apply_direct(interp, "shen.comb", &[__t690, __t695])? } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } }; { let __t702 = { - let __t701 = v_W1748.clone(); + let __t701 = v_W1402.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t701])? }; - if match rt::is_truthy(interp, &__t702) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { break Ok(v_W1748.clone()); } + if match rt::is_truthy(interp, &__t702) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { break Ok(v_W1402.clone()); } } } } else { break Ok( - v_W1738.clone() + v_W1392.clone() ); } } } } else { - break Ok(v_W1729.clone()); + break Ok(v_W1383.clone()); } } } } else { - break Ok(v_W1720.clone()); + break Ok(v_W1374.clone()); } } } } else { - break Ok(v_W1708.clone()); + break Ok(v_W1362.clone()); } } } } else { - break Ok(v_W1705.clone()); + break Ok(v_W1359.clone()); } } } } else { - break Ok(v_W1702.clone()); + break Ok(v_W1356.clone()); } } } @@ -3365,11 +3365,11 @@ pub fn aot_shen_x2e_prolog_x2d_keyword_x3f_( ))); } #[allow(unused_mut)] - let mut v_V1758 = args[0].clone(); + let mut v_V1412 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t703 = v_V1758.clone(); + let __t703 = v_V1412.clone(); let __t709 = { let __t705 = { let __t704 = Value::str(";"); @@ -3405,12 +3405,12 @@ pub fn aot_atom_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V1759 = args[0].clone(); + let mut v_V1413 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t711 = { - let __t710 = v_V1759.clone(); + let __t710 = v_V1413.clone(); rt::is_symbol(&__t710) }; if match rt::is_truthy(interp, &__t711) { @@ -3421,7 +3421,7 @@ pub fn aot_atom_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { } else { { let __t713 = { - let __t712 = v_V1759.clone(); + let __t712 = v_V1413.clone(); rt::is_string(&__t712) }; if match rt::is_truthy(interp, &__t713) { @@ -3432,7 +3432,7 @@ pub fn aot_atom_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { } else { { let __t715 = { - let __t714 = v_V1759.clone(); + let __t714 = v_V1413.clone(); rt::apply_direct(interp, "boolean?", &[__t714])? }; if match rt::is_truthy(interp, &__t715) { @@ -3443,7 +3443,7 @@ pub fn aot_atom_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { } else { { let __t717 = { - let __t716 = v_V1759.clone(); + let __t716 = v_V1413.clone(); rt::is_number(&__t716) }; if match rt::is_truthy(interp, &__t717) { @@ -3453,7 +3453,7 @@ pub fn aot_atom_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { break Ok(Value::bool(true)); } else { break Ok({ - let __t718 = v_V1759.clone(); + let __t718 = v_V1413.clone(); rt::apply_direct(interp, "empty?", &[__t718])? }); } @@ -3481,18 +3481,18 @@ pub fn aot_shen_x2e__x3c_hterm1_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1760 = args[0].clone(); + let mut v_V1414 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1761 = { - let v_W1762 = { - let __t719 = v_V1760.clone(); + let v_W1415 = { + let v_W1416 = { + let __t719 = v_V1414.clone(); rt::apply_direct(interp, "shen.", &[__t719])? }; { let __t725 = { - let __t720 = v_W1762.clone(); + let __t720 = v_W1416.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t720])? }; if rt::is_truthy(interp, &__t725)? { @@ -3501,18 +3501,18 @@ pub fn aot_shen_x2e__x3c_hterm1_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1763 = { - let __t721 = v_W1762.clone(); + let v_W1417 = { + let __t721 = v_W1416.clone(); rt::apply_direct(interp, "shen.<-out", &[__t721])? }; { - let v_W1764 = { - let __t722 = v_W1762.clone(); + let v_W1418 = { + let __t722 = v_W1416.clone(); rt::apply_direct(interp, "shen.in->", &[__t722])? }; { - let __t723 = v_W1764.clone(); - let __t724 = v_W1763.clone(); + let __t723 = v_W1418.clone(); + let __t724 = v_W1417.clone(); rt::apply_direct(interp, "shen.comb", &[__t723, __t724])? } } @@ -3522,7 +3522,7 @@ pub fn aot_shen_x2e__x3c_hterm1_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t727 = { - let __t726 = v_W1761.clone(); + let __t726 = v_W1415.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t726])? }; if match rt::is_truthy(interp, &__t727) { @@ -3531,7 +3531,7 @@ pub fn aot_shen_x2e__x3c_hterm1_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1761.clone()); + break Ok(v_W1415.clone()); } } } @@ -3552,18 +3552,18 @@ pub fn aot_shen_x2e__x3c_hterm2_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1765 = args[0].clone(); + let mut v_V1419 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1766 = { - let v_W1767 = { - let __t728 = v_V1765.clone(); + let v_W1420 = { + let v_W1421 = { + let __t728 = v_V1419.clone(); rt::apply_direct(interp, "shen.", &[__t728])? }; { let __t734 = { - let __t729 = v_W1767.clone(); + let __t729 = v_W1421.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t729])? }; if rt::is_truthy(interp, &__t734)? { @@ -3572,18 +3572,18 @@ pub fn aot_shen_x2e__x3c_hterm2_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1768 = { - let __t730 = v_W1767.clone(); + let v_W1422 = { + let __t730 = v_W1421.clone(); rt::apply_direct(interp, "shen.<-out", &[__t730])? }; { - let v_W1769 = { - let __t731 = v_W1767.clone(); + let v_W1423 = { + let __t731 = v_W1421.clone(); rt::apply_direct(interp, "shen.in->", &[__t731])? }; { - let __t732 = v_W1769.clone(); - let __t733 = v_W1768.clone(); + let __t732 = v_W1423.clone(); + let __t733 = v_W1422.clone(); rt::apply_direct(interp, "shen.comb", &[__t732, __t733])? } } @@ -3593,7 +3593,7 @@ pub fn aot_shen_x2e__x3c_hterm2_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t736 = { - let __t735 = v_W1766.clone(); + let __t735 = v_W1420.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t735])? }; if match rt::is_truthy(interp, &__t736) { @@ -3602,7 +3602,7 @@ pub fn aot_shen_x2e__x3c_hterm2_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1766.clone()); + break Ok(v_W1420.clone()); } } } @@ -3623,18 +3623,18 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V1770 = args[0].clone(); + let mut v_V1424 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1771 = { - let v_W1772 = { - let __t737 = v_V1770.clone(); + let v_W1425 = { + let v_W1426 = { + let __t737 = v_V1424.clone(); rt::apply_direct(interp, "shen.", &[__t737])? }; { let __t750 = { - let __t738 = v_W1772.clone(); + let __t738 = v_W1426.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t738])? }; if rt::is_truthy(interp, &__t750)? { @@ -3643,23 +3643,23 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1773 = { - let __t739 = v_W1772.clone(); + let v_W1427 = { + let __t739 = v_W1426.clone(); rt::apply_direct(interp, "shen.<-out", &[__t739])? }; { - let v_W1774 = { - let __t740 = v_W1772.clone(); + let v_W1428 = { + let __t740 = v_W1426.clone(); rt::apply_direct(interp, "shen.in->", &[__t740])? }; { - let v_W1775 = { - let __t741 = v_W1774.clone(); + let v_W1429 = { + let __t741 = v_W1428.clone(); rt::apply_direct(interp, "shen.", &[__t741])? }; { let __t749 = { - let __t742 = v_W1775.clone(); + let __t742 = v_W1429.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3672,8 +3672,8 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1776 = { - let __t743 = v_W1775.clone(); + let v_W1430 = { + let __t743 = v_W1429.clone(); rt::apply_direct( interp, "shen.<-out", @@ -3681,8 +3681,8 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W1777 = { - let __t744 = v_W1775.clone(); + let v_W1431 = { + let __t744 = v_W1429.clone(); rt::apply_direct( interp, "shen.in->", @@ -3690,10 +3690,10 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let __t745 = v_W1777.clone(); + let __t745 = v_W1431.clone(); let __t748 = { - let __t746 = v_W1773.clone(); - let __t747 = v_W1776.clone(); + let __t746 = v_W1427.clone(); + let __t747 = v_W1430.clone(); rt::cons(&__t746, &__t747) }; rt::apply_direct( @@ -3714,7 +3714,7 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t752 = { - let __t751 = v_W1771.clone(); + let __t751 = v_W1425.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t751])? }; if match rt::is_truthy(interp, &__t752) { @@ -3722,14 +3722,14 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W1778 = { - let v_W1779 = { - let __t753 = v_V1770.clone(); + let v_W1432 = { + let v_W1433 = { + let __t753 = v_V1424.clone(); rt::apply_direct(interp, "", &[__t753])? }; { let __t758 = { - let __t754 = v_W1779.clone(); + let __t754 = v_W1433.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t754])? }; if rt::is_truthy(interp, &__t758)? { @@ -3738,12 +3738,12 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W1780 = { - let __t755 = v_W1779.clone(); + let v_W1434 = { + let __t755 = v_W1433.clone(); rt::apply_direct(interp, "shen.in->", &[__t755])? }; { - let __t756 = v_W1780.clone(); + let __t756 = v_W1434.clone(); let __t757 = Value::nil(); rt::apply_direct( interp, @@ -3757,7 +3757,7 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t760 = { - let __t759 = v_W1778.clone(); + let __t759 = v_W1432.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t759])? }; if match rt::is_truthy(interp, &__t760) { @@ -3766,12 +3766,12 @@ pub fn aot_shen_x2e__x3c_body_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1778.clone()); + break Ok(v_W1432.clone()); } } } } else { - break Ok(v_W1771.clone()); + break Ok(v_W1425.clone()); } } } @@ -3792,24 +3792,24 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V1781 = args[0].clone(); + let mut v_V1435 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1782 = { + let v_W1436 = { let __t766 = { - let __t761 = v_V1781.clone(); + let __t761 = v_V1435.clone(); let __t762 = Value::sym(interp.intern("!")); rt::apply_direct(interp, "shen.hds=?", &[__t761, __t762])? }; if rt::is_truthy(interp, &__t766)? { { - let v_W1783 = { - let __t763 = v_V1781.clone(); + let v_W1437 = { + let __t763 = v_V1435.clone(); rt::apply_direct(interp, "tail", &[__t763])? }; { - let __t764 = v_W1783.clone(); + let __t764 = v_W1437.clone(); let __t765 = Value::sym(interp.intern("!")); rt::apply_direct(interp, "shen.comb", &[__t764, __t765])? } @@ -3822,7 +3822,7 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t768 = { - let __t767 = v_W1782.clone(); + let __t767 = v_W1436.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t767])? }; if match rt::is_truthy(interp, &__t768) { @@ -3830,25 +3830,25 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { { - let v_W1784 = { + let v_W1438 = { let __t783 = { - let __t769 = v_V1781.clone(); + let __t769 = v_V1435.clone(); rt::apply_direct(interp, "shen.ccons?", &[__t769])? }; if rt::is_truthy(interp, &__t783)? { { - let v_W1785 = { - let __t770 = v_V1781.clone(); + let v_W1439 = { + let __t770 = v_V1435.clone(); rt::apply_direct(interp, "head", &[__t770])? }; { - let v_W1786 = { - let __t771 = v_V1781.clone(); + let v_W1440 = { + let __t771 = v_V1435.clone(); rt::apply_direct(interp, "tail", &[__t771])? }; { - let v_W1787 = { - let __t772 = v_W1785.clone(); + let v_W1441 = { + let __t772 = v_W1439.clone(); rt::apply_direct( interp, "shen.", @@ -3857,7 +3857,7 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t782 = { - let __t773 = v_W1787.clone(); + let __t773 = v_W1441.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3874,8 +3874,8 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W1788 = { - let __t774 = v_W1787.clone(); + let v_W1442 = { + let __t774 = v_W1441.clone(); rt::apply_direct( interp, "shen.<-out", @@ -3883,8 +3883,8 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let v_W1789 = { - let __t775 = v_W1787.clone(); + let v_W1443 = { + let __t775 = v_W1441.clone(); rt::apply_direct( interp, "shen.in->", @@ -3892,8 +3892,8 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let v_W1790 = { - let __t776 = v_W1789.clone(); + let v_W1444 = { + let __t776 = v_W1443.clone(); rt::apply_direct( interp, "", @@ -3903,7 +3903,7 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh { let __t781 = { let __t777 = - v_W1790.clone(); + v_W1444.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3918,9 +3918,9 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W1791 = { + let v_W1445 = { let __t778 = - v_W1790.clone(); + v_W1444.clone(); rt::apply_direct( interp, "shen.in->", @@ -3929,9 +3929,9 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t779 = - v_W1786.clone(); + v_W1440.clone(); let __t780 = - v_W1788.clone(); + v_W1442.clone(); rt::apply_direct( interp, "shen.comb", @@ -3960,7 +3960,7 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t785 = { - let __t784 = v_W1784.clone(); + let __t784 = v_W1438.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t784])? }; if match rt::is_truthy(interp, &__t785) { @@ -3969,12 +3969,12 @@ pub fn aot_shen_x2e__x3c_literal_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1784.clone()); + break Ok(v_W1438.clone()); } } } } else { - break Ok(v_W1782.clone()); + break Ok(v_W1436.clone()); } } } @@ -3995,18 +3995,18 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1792 = args[0].clone(); + let mut v_V1446 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1793 = { - let v_W1794 = { - let __t786 = v_V1792.clone(); + let v_W1447 = { + let v_W1448 = { + let __t786 = v_V1446.clone(); rt::apply_direct(interp, "shen.", &[__t786])? }; { let __t799 = { - let __t787 = v_W1794.clone(); + let __t787 = v_W1448.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t787])? }; if rt::is_truthy(interp, &__t799)? { @@ -4015,23 +4015,23 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1795 = { - let __t788 = v_W1794.clone(); + let v_W1449 = { + let __t788 = v_W1448.clone(); rt::apply_direct(interp, "shen.<-out", &[__t788])? }; { - let v_W1796 = { - let __t789 = v_W1794.clone(); + let v_W1450 = { + let __t789 = v_W1448.clone(); rt::apply_direct(interp, "shen.in->", &[__t789])? }; { - let v_W1797 = { - let __t790 = v_W1796.clone(); + let v_W1451 = { + let __t790 = v_W1450.clone(); rt::apply_direct(interp, "shen.", &[__t790])? }; { let __t798 = { - let __t791 = v_W1797.clone(); + let __t791 = v_W1451.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -4044,8 +4044,8 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1798 = { - let __t792 = v_W1797.clone(); + let v_W1452 = { + let __t792 = v_W1451.clone(); rt::apply_direct( interp, "shen.<-out", @@ -4053,8 +4053,8 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W1799 = { - let __t793 = v_W1797.clone(); + let v_W1453 = { + let __t793 = v_W1451.clone(); rt::apply_direct( interp, "shen.in->", @@ -4062,10 +4062,10 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let __t794 = v_W1799.clone(); + let __t794 = v_W1453.clone(); let __t797 = { - let __t795 = v_W1795.clone(); - let __t796 = v_W1798.clone(); + let __t795 = v_W1449.clone(); + let __t796 = v_W1452.clone(); rt::cons(&__t795, &__t796) }; rt::apply_direct( @@ -4086,7 +4086,7 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t801 = { - let __t800 = v_W1793.clone(); + let __t800 = v_W1447.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t800])? }; if match rt::is_truthy(interp, &__t801) { @@ -4094,14 +4094,14 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1800 = { - let v_W1801 = { - let __t802 = v_V1792.clone(); + let v_W1454 = { + let v_W1455 = { + let __t802 = v_V1446.clone(); rt::apply_direct(interp, "", &[__t802])? }; { let __t807 = { - let __t803 = v_W1801.clone(); + let __t803 = v_W1455.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t803])? }; if rt::is_truthy(interp, &__t807)? { @@ -4110,12 +4110,12 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W1802 = { - let __t804 = v_W1801.clone(); + let v_W1456 = { + let __t804 = v_W1455.clone(); rt::apply_direct(interp, "shen.in->", &[__t804])? }; { - let __t805 = v_W1802.clone(); + let __t805 = v_W1456.clone(); let __t806 = Value::nil(); rt::apply_direct( interp, @@ -4129,7 +4129,7 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t809 = { - let __t808 = v_W1800.clone(); + let __t808 = v_W1454.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t808])? }; if match rt::is_truthy(interp, &__t809) { @@ -4138,12 +4138,12 @@ pub fn aot_shen_x2e__x3c_bterms_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1800.clone()); + break Ok(v_W1454.clone()); } } } } else { - break Ok(v_W1793.clone()); + break Ok(v_W1447.clone()); } } } @@ -4164,18 +4164,18 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1803 = args[0].clone(); + let mut v_V1457 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1804 = { - let v_W1805 = { - let __t810 = v_V1803.clone(); + let v_W1458 = { + let v_W1459 = { + let __t810 = v_V1457.clone(); rt::apply_direct(interp, "shen.", &[__t810])? }; { let __t816 = { - let __t811 = v_W1805.clone(); + let __t811 = v_W1459.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t811])? }; if rt::is_truthy(interp, &__t816)? { @@ -4184,18 +4184,18 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W1806 = { - let __t812 = v_W1805.clone(); + let v_W1460 = { + let __t812 = v_W1459.clone(); rt::apply_direct(interp, "shen.<-out", &[__t812])? }; { - let v_W1807 = { - let __t813 = v_W1805.clone(); + let v_W1461 = { + let __t813 = v_W1459.clone(); rt::apply_direct(interp, "shen.in->", &[__t813])? }; { - let __t814 = v_W1807.clone(); - let __t815 = v_W1806.clone(); + let __t814 = v_W1461.clone(); + let __t815 = v_W1460.clone(); rt::apply_direct(interp, "shen.comb", &[__t814, __t815])? } } @@ -4205,7 +4205,7 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t818 = { - let __t817 = v_W1804.clone(); + let __t817 = v_W1458.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t817])? }; if match rt::is_truthy(interp, &__t818) { @@ -4213,31 +4213,31 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1808 = { + let v_W1462 = { let __t826 = { - let __t819 = v_V1803.clone(); + let __t819 = v_V1457.clone(); rt::is_cons(&__t819) }; if rt::is_truthy(interp, &__t826)? { { - let v_W1809 = { - let __t820 = v_V1803.clone(); + let v_W1463 = { + let __t820 = v_V1457.clone(); rt::apply_direct(interp, "head", &[__t820])? }; { - let v_W1810 = { - let __t821 = v_V1803.clone(); + let v_W1464 = { + let __t821 = v_V1457.clone(); rt::apply_direct(interp, "tail", &[__t821])? }; { let __t825 = { - let __t822 = v_W1809.clone(); + let __t822 = v_W1463.clone(); rt::apply_direct(interp, "atom?", &[__t822])? }; if rt::is_truthy(interp, &__t825)? { { - let __t823 = v_W1810.clone(); - let __t824 = v_W1809.clone(); + let __t823 = v_W1464.clone(); + let __t824 = v_W1463.clone(); rt::apply_direct( interp, "shen.comb", @@ -4264,7 +4264,7 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t828 = { - let __t827 = v_W1808.clone(); + let __t827 = v_W1462.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t827])? }; if match rt::is_truthy(interp, &__t828) { @@ -4272,25 +4272,25 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W1811 = { + let v_W1465 = { let __t843 = { - let __t829 = v_V1803.clone(); + let __t829 = v_V1457.clone(); rt::apply_direct(interp, "shen.ccons?", &[__t829])? }; if rt::is_truthy(interp, &__t843)? { { - let v_W1812 = { - let __t830 = v_V1803.clone(); + let v_W1466 = { + let __t830 = v_V1457.clone(); rt::apply_direct(interp, "head", &[__t830])? }; { - let v_W1813 = { - let __t831 = v_V1803.clone(); + let v_W1467 = { + let __t831 = v_V1457.clone(); rt::apply_direct(interp, "tail", &[__t831])? }; { - let v_W1814 = { - let __t832 = v_W1812.clone(); + let v_W1468 = { + let __t832 = v_W1466.clone(); rt::apply_direct( interp, "shen.", @@ -4299,7 +4299,7 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t842 = { - let __t833 = v_W1814.clone(); + let __t833 = v_W1468.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -4316,9 +4316,9 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W1815 = { + let v_W1469 = { let __t834 = - v_W1814.clone(); + v_W1468.clone(); rt::apply_direct( interp, "shen.<-out", @@ -4326,9 +4326,9 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1816 = { + let v_W1470 = { let __t835 = - v_W1814.clone(); + v_W1468.clone(); rt::apply_direct( interp, "shen.in->", @@ -4336,9 +4336,9 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W1817 = { + let v_W1471 = { let __t836 = - v_W1816.clone(); + v_W1470.clone(); rt::apply_direct( interp, "", @@ -4348,7 +4348,7 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen { let __t841 = { let __t837 = - v_W1817 + v_W1471 .clone( ); rt::apply_direct(interp, "shen.parse-failure?", &[__t837])? @@ -4361,13 +4361,13 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W1818 = { - let __t838 = v_W1817.clone(); + let v_W1472 = { + let __t838 = v_W1471.clone(); rt::apply_direct(interp, "shen.in->", &[__t838])? }; { - let __t839 = v_W1813.clone(); - let __t840 = v_W1815.clone(); + let __t839 = v_W1467.clone(); + let __t840 = v_W1469.clone(); rt::apply_direct(interp, "shen.comb", &[__t839, __t840])? } } @@ -4389,7 +4389,7 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t845 = { - let __t844 = v_W1811.clone(); + let __t844 = v_W1465.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -4404,17 +4404,17 @@ pub fn aot_shen_x2e__x3c_bterm_x3e_(interp: &mut Interp, args: &[Value]) -> Shen rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1811.clone()); + break Ok(v_W1465.clone()); } } } } else { - break Ok(v_W1808.clone()); + break Ok(v_W1462.clone()); } } } } else { - break Ok(v_W1804.clone()); + break Ok(v_W1458.clone()); } } } @@ -4435,35 +4435,35 @@ pub fn aot_shen_x2e__x3c_wildcard_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V1819 = args[0].clone(); + let mut v_V1473 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1820 = { + let v_W1474 = { let __t855 = { - let __t846 = v_V1819.clone(); + let __t846 = v_V1473.clone(); rt::is_cons(&__t846) }; if rt::is_truthy(interp, &__t855)? { { - let v_W1821 = { - let __t847 = v_V1819.clone(); + let v_W1475 = { + let __t847 = v_V1473.clone(); rt::apply_direct(interp, "head", &[__t847])? }; { - let v_W1822 = { - let __t848 = v_V1819.clone(); + let v_W1476 = { + let __t848 = v_V1473.clone(); rt::apply_direct(interp, "tail", &[__t848])? }; { let __t854 = { - let __t849 = v_W1821.clone(); + let __t849 = v_W1475.clone(); let __t850 = Value::sym(interp.intern("_")); rt::eq(&__t849, &__t850) }; if rt::is_truthy(interp, &__t854)? { { - let __t851 = v_W1822.clone(); + let __t851 = v_W1476.clone(); let __t853 = { let __t852 = Value::sym(interp.intern("Y")); rt::apply_direct(interp, "gensym", &[__t852])? @@ -4486,7 +4486,7 @@ pub fn aot_shen_x2e__x3c_wildcard_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t857 = { - let __t856 = v_W1820.clone(); + let __t856 = v_W1474.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t856])? }; if match rt::is_truthy(interp, &__t857) { @@ -4495,7 +4495,7 @@ pub fn aot_shen_x2e__x3c_wildcard_x3e_(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1820.clone()); + break Ok(v_W1474.clone()); } } } @@ -4516,35 +4516,35 @@ pub fn aot_shen_x2e__x3c_sc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V1823 = args[0].clone(); + let mut v_V1477 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1824 = { + let v_W1478 = { let __t865 = { - let __t858 = v_V1823.clone(); + let __t858 = v_V1477.clone(); rt::is_cons(&__t858) }; if rt::is_truthy(interp, &__t865)? { { - let v_W1825 = { - let __t859 = v_V1823.clone(); + let v_W1479 = { + let __t859 = v_V1477.clone(); rt::apply_direct(interp, "head", &[__t859])? }; { - let v_W1826 = { - let __t860 = v_V1823.clone(); + let v_W1480 = { + let __t860 = v_V1477.clone(); rt::apply_direct(interp, "tail", &[__t860])? }; { let __t864 = { - let __t861 = v_W1825.clone(); + let __t861 = v_W1479.clone(); rt::apply_direct(interp, "shen.semicolon?", &[__t861])? }; if rt::is_truthy(interp, &__t864)? { { - let __t862 = v_W1826.clone(); - let __t863 = v_W1825.clone(); + let __t862 = v_W1480.clone(); + let __t863 = v_W1479.clone(); rt::apply_direct(interp, "shen.comb", &[__t862, __t863])? } } else { @@ -4563,7 +4563,7 @@ pub fn aot_shen_x2e__x3c_sc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRes }; { let __t867 = { - let __t866 = v_W1824.clone(); + let __t866 = v_W1478.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t866])? }; if match rt::is_truthy(interp, &__t867) { @@ -4572,7 +4572,7 @@ pub fn aot_shen_x2e__x3c_sc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRes } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W1824.clone()); + break Ok(v_W1478.clone()); } } } @@ -4596,50 +4596,50 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( ))); } #[allow(unused_mut)] - let mut v_V1827 = args[0].clone(); + let mut v_V1481 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1828 = args[1].clone(); + let mut v_V1482 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1829 = { + let v_W1483 = { let __t868 = Value::sym(interp.intern("B")); rt::apply_direct(interp, "gensym", &[__t868])? }; { - let v_W1830 = { + let v_W1484 = { let __t869 = Value::sym(interp.intern("L")); rt::apply_direct(interp, "gensym", &[__t869])? }; { - let v_W1831 = { + let v_W1485 = { let __t870 = Value::sym(interp.intern("K")); rt::apply_direct(interp, "gensym", &[__t870])? }; { - let v_W1832 = { + let v_W1486 = { let __t871 = Value::sym(interp.intern("C")); rt::apply_direct(interp, "gensym", &[__t871])? }; { - let v_W1833 = { - let __t872 = v_V1828.clone(); + let v_W1487 = { + let __t872 = v_V1482.clone(); rt::apply_direct(interp, "shen.prolog-parameters", &[__t872])? }; { - let v_W1834 = { - let __t873 = v_V1828.clone(); + let v_W1488 = { + let __t873 = v_V1482.clone(); rt::apply_direct(interp, "shen.hascut?", &[__t873])? }; { - let v_W1835 = { - let __t874 = v_V1828.clone(); - let __t875 = v_W1833.clone(); - let __t876 = v_W1829.clone(); - let __t877 = v_W1830.clone(); - let __t878 = v_W1831.clone(); - let __t879 = v_W1832.clone(); - let __t880 = v_W1834.clone(); + let v_W1489 = { + let __t874 = v_V1482.clone(); + let __t875 = v_W1487.clone(); + let __t876 = v_W1483.clone(); + let __t877 = v_W1484.clone(); + let __t878 = v_W1485.clone(); + let __t879 = v_W1486.clone(); + let __t880 = v_W1488.clone(); rt::apply_direct( interp, "shen.prolog-fbody", @@ -4650,19 +4650,19 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( )? }; { - let v_W1836 = { - let __t895 = v_W1834.clone(); + let v_W1490 = { + let __t895 = v_W1488.clone(); if rt::is_truthy(interp, &__t895)? { { let __t881 = Value::sym(interp.intern("let")); let __t894 = { - let __t882 = v_W1831.clone(); + let __t882 = v_W1485.clone(); let __t893 = { let __t889 = { let __t883 = Value::sym(interp.intern("+")); let __t888 = { - let __t884 = v_W1831.clone(); + let __t884 = v_W1485.clone(); let __t887 = { let __t885 = Value::int(1i64); @@ -4674,7 +4674,7 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( rt::cons(&__t883, &__t888) }; let __t892 = { - let __t890 = v_W1835.clone(); + let __t890 = v_W1489.clone(); let __t891 = Value::nil(); rt::cons(&__t890, &__t891) }; @@ -4685,27 +4685,27 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( rt::cons(&__t881, &__t894) } } else { - v_W1835.clone() + v_W1489.clone() } }; { - let v_W1837 = { + let v_W1491 = { let __t896 = Value::sym(interp.intern("define")); let __t915 = { - let __t897 = v_V1827.clone(); + let __t897 = v_V1481.clone(); let __t914 = { - let __t898 = v_W1833.clone(); + let __t898 = v_W1487.clone(); let __t913 = { let __t909 = { - let __t899 = v_W1829.clone(); + let __t899 = v_W1483.clone(); let __t908 = { - let __t900 = v_W1830.clone(); + let __t900 = v_W1484.clone(); let __t907 = { let __t901 = - v_W1831.clone(); + v_W1485.clone(); let __t906 = { let __t902 = - v_W1832.clone(); + v_W1486.clone(); let __t905 = { let __t903 = Value::sym( @@ -4732,7 +4732,7 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( rt::cons(&__t899, &__t908) }; let __t912 = { - let __t910 = v_W1836.clone(); + let __t910 = v_W1490.clone(); let __t911 = Value::nil(); rt::cons(&__t910, &__t911) }; @@ -4752,7 +4752,7 @@ pub fn aot_shen_x2e_horn_x2d_clause_x2d_procedure( }; rt::cons(&__t896, &__t915) }; - break Ok(v_W1837.clone()); + break Ok(v_W1491.clone()); } } } @@ -4786,13 +4786,13 @@ pub fn aot_shen_x2e_hascut_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V1840 = args[0].clone(); + let mut v_V1494 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t926 = { let __t924 = Value::sym(interp.intern("!")); - let __t925 = v_V1840.clone(); + let __t925 = v_V1494.clone(); rt::eq(&__t924, &__t925) }; if match rt::is_truthy(interp, &__t926) { @@ -4803,7 +4803,7 @@ pub fn aot_shen_x2e_hascut_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu } else { { let __t923 = { - let __t917 = v_V1840.clone(); + let __t917 = v_V1494.clone(); rt::is_cons(&__t917) }; if match rt::is_truthy(interp, &__t923) { @@ -4813,7 +4813,7 @@ pub fn aot_shen_x2e_hascut_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu { let __t920 = { let __t919 = { - let __t918 = v_V1840.clone(); + let __t918 = v_V1494.clone(); rt::hd(&__t918)? }; rt::apply_direct(interp, "shen.hascut?", &[__t919])? @@ -4826,10 +4826,10 @@ pub fn aot_shen_x2e_hascut_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu } else { { let __t922 = { - let __t921 = v_V1840.clone(); + let __t921 = v_V1494.clone(); rt::tl(&__t921)? }; - v_V1840 = __t922; + v_V1494 = __t922; continue; } } @@ -4870,13 +4870,13 @@ pub fn aot_shen_x2e_prolog_x2d_parameters( ))); } #[allow(unused_mut)] - let mut v_V1845 = args[0].clone(); + let mut v_V1499 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t938 = { let __t932 = { - let __t929 = v_V1845.clone(); + let __t929 = v_V1499.clone(); rt::is_cons(&__t929) }; if !rt::is_truthy(interp, &__t932)? { @@ -4884,7 +4884,7 @@ pub fn aot_shen_x2e_prolog_x2d_parameters( } else { let __t933 = { let __t931 = { - let __t930 = v_V1845.clone(); + let __t930 = v_V1499.clone(); rt::hd(&__t930)? }; rt::is_cons(&__t931) @@ -4900,7 +4900,7 @@ pub fn aot_shen_x2e_prolog_x2d_parameters( let __t937 = { let __t936 = { let __t935 = { - let __t934 = v_V1845.clone(); + let __t934 = v_V1499.clone(); rt::hd(&__t934)? }; rt::hd(&__t935)? @@ -4917,8 +4917,8 @@ pub fn aot_shen_x2e_prolog_x2d_parameters( Err(e) => break Err(e), } { break Ok({ - let __t927 = Value::sym(interp.intern("shen.prolog-parameters")); - rt::apply_direct(interp, "shen.f-error", &[__t927])? + let __t927 = Value::str("partial function shen.prolog-parameters"); + rt::apply_direct(interp, "simple-error", &[__t927])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4947,26 +4947,26 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1866 = args[0].clone(); + let mut v_V1520 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1867 = args[1].clone(); + let mut v_V1521 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1868 = args[2].clone(); + let mut v_V1522 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1869 = args[3].clone(); + let mut v_V1523 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1870 = args[4].clone(); + let mut v_V1524 = args[4].clone(); #[allow(unused_mut)] - let mut v_V1871 = args[5].clone(); + let mut v_V1525 = args[5].clone(); #[allow(unused_mut)] - let mut v_V1872 = args[6].clone(); + let mut v_V1526 = args[6].clone(); #[allow(clippy::never_loop)] loop { { let __t1089 = { let __t1081 = { let __t1077 = Value::nil(); - let __t1078 = v_V1866.clone(); + let __t1078 = v_V1520.clone(); rt::eq(&__t1077, &__t1078) }; if !rt::is_truthy(interp, &__t1081)? { @@ -4974,7 +4974,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She } else { let __t1082 = { let __t1079 = Value::bool(true); - let __t1080 = v_V1872.clone(); + let __t1080 = v_V1526.clone(); rt::eq(&__t1079, &__t1080) }; Value::bool(rt::is_truthy(interp, &__t1082)?) @@ -4987,9 +4987,9 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She break Ok({ let __t1083 = Value::sym(interp.intern("shen.unlock")); let __t1088 = { - let __t1084 = v_V1869.clone(); + let __t1084 = v_V1523.clone(); let __t1087 = { - let __t1085 = v_V1870.clone(); + let __t1085 = v_V1524.clone(); let __t1086 = Value::nil(); rt::cons(&__t1085, &__t1086) }; @@ -5001,7 +5001,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She { let __t1076 = { let __t1044 = { - let __t1020 = v_V1866.clone(); + let __t1020 = v_V1520.clone(); rt::is_cons(&__t1020) }; if !rt::is_truthy(interp, &__t1044)? { @@ -5010,7 +5010,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1045 = { let __t1042 = { let __t1022 = { - let __t1021 = v_V1866.clone(); + let __t1021 = v_V1520.clone(); rt::hd(&__t1021)? }; rt::is_cons(&__t1022) @@ -5022,7 +5022,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1040 = { let __t1025 = { let __t1024 = { - let __t1023 = v_V1866.clone(); + let __t1023 = v_V1520.clone(); rt::hd(&__t1023)? }; rt::tl(&__t1024)? @@ -5038,7 +5038,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1030 = { let __t1029 = { let __t1028 = { - let __t1027 = v_V1866.clone(); + let __t1027 = v_V1520.clone(); rt::hd(&__t1027)? }; rt::tl(&__t1028)? @@ -5054,7 +5054,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1036 = { let __t1031 = Value::nil(); let __t1033 = { - let __t1032 = v_V1866.clone(); + let __t1032 = v_V1520.clone(); rt::tl(&__t1032)? }; rt::eq(&__t1031, &__t1033) @@ -5064,7 +5064,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She } else { let __t1037 = { let __t1034 = Value::bool(false); - let __t1035 = v_V1872.clone(); + let __t1035 = v_V1526.clone(); rt::eq(&__t1034, &__t1035) }; Value::bool(rt::is_truthy( @@ -5089,10 +5089,10 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1873 = { + let v_W1527 = { let __t1048 = { let __t1047 = { - let __t1046 = v_V1866.clone(); + let __t1046 = v_V1520.clone(); rt::hd(&__t1046)? }; rt::hd(&__t1047)? @@ -5100,17 +5100,17 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1052 = { let __t1051 = { let __t1050 = { - let __t1049 = v_V1866.clone(); + let __t1049 = v_V1520.clone(); rt::hd(&__t1049)? }; rt::tl(&__t1050)? }; rt::hd(&__t1051)? }; - let __t1053 = v_V1868.clone(); - let __t1054 = v_V1869.clone(); - let __t1055 = v_V1870.clone(); - let __t1056 = v_V1871.clone(); + let __t1053 = v_V1522.clone(); + let __t1054 = v_V1523.clone(); + let __t1055 = v_V1524.clone(); + let __t1056 = v_V1525.clone(); rt::apply_direct( interp, "shen.continue", @@ -5123,7 +5123,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1062 = { let __t1058 = Value::sym(interp.intern("shen.unlocked?")); let __t1061 = { - let __t1059 = v_V1869.clone(); + let __t1059 = v_V1523.clone(); let __t1060 = Value::nil(); rt::cons(&__t1059, &__t1060) }; @@ -5134,14 +5134,14 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1063 = Value::sym(interp.intern("shen.+m")); let __t1066 = { let __t1065 = { - let __t1064 = v_V1866.clone(); + let __t1064 = v_V1520.clone(); rt::hd(&__t1064)? }; rt::hd(&__t1065)? }; - let __t1067 = v_V1867.clone(); - let __t1068 = v_V1868.clone(); - let __t1069 = v_W1873.clone(); + let __t1067 = v_V1521.clone(); + let __t1068 = v_V1522.clone(); + let __t1069 = v_W1527.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -5164,7 +5164,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She { let __t1019 = { let __t956 = { - let __t941 = v_V1866.clone(); + let __t941 = v_V1520.clone(); rt::is_cons(&__t941) }; if !rt::is_truthy(interp, &__t956)? { @@ -5173,7 +5173,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t957 = { let __t954 = { let __t943 = { - let __t942 = v_V1866.clone(); + let __t942 = v_V1520.clone(); rt::hd(&__t942)? }; rt::is_cons(&__t943) @@ -5185,7 +5185,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t952 = { let __t946 = { let __t945 = { - let __t944 = v_V1866.clone(); + let __t944 = v_V1520.clone(); rt::hd(&__t944)? }; rt::tl(&__t945)? @@ -5200,7 +5200,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t951 = { let __t950 = { let __t949 = { - let __t948 = v_V1866.clone(); + let __t948 = v_V1520.clone(); rt::hd(&__t948)? }; rt::tl(&__t949)? @@ -5223,15 +5223,15 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1874 = { + let v_W1528 = { let __t958 = Value::sym(interp.intern("C")); rt::apply_direct(interp, "gensym", &[__t958])? }; { - let v_W1875 = { + let v_W1529 = { let __t961 = { let __t960 = { - let __t959 = v_V1866.clone(); + let __t959 = v_V1520.clone(); rt::hd(&__t959)? }; rt::hd(&__t960)? @@ -5239,17 +5239,17 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t965 = { let __t964 = { let __t963 = { - let __t962 = v_V1866.clone(); + let __t962 = v_V1520.clone(); rt::hd(&__t962)? }; rt::tl(&__t963)? }; rt::hd(&__t964)? }; - let __t966 = v_V1868.clone(); - let __t967 = v_V1869.clone(); - let __t968 = v_V1870.clone(); - let __t969 = v_V1871.clone(); + let __t966 = v_V1522.clone(); + let __t967 = v_V1523.clone(); + let __t968 = v_V1524.clone(); + let __t969 = v_V1525.clone(); rt::apply_direct( interp, "shen.continue", @@ -5259,7 +5259,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She break Ok({ let __t970 = Value::sym(interp.intern("let")); let __t1018 = { - let __t971 = v_W1874.clone(); + let __t971 = v_W1528.clone(); let __t1017 = { let __t991 = { let __t972 = @@ -5270,7 +5270,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She interp.intern("shen.unlocked?"), ); let __t976 = { - let __t974 = v_V1869.clone(); + let __t974 = v_V1523.clone(); let __t975 = Value::nil(); rt::cons(&__t974, &__t975) }; @@ -5284,14 +5284,14 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t981 = { let __t980 = { let __t979 = - v_V1866.clone(); + v_V1520.clone(); rt::hd(&__t979)? }; rt::hd(&__t980)? }; - let __t982 = v_V1867.clone(); - let __t983 = v_V1868.clone(); - let __t984 = v_W1875.clone(); + let __t982 = v_V1521.clone(); + let __t983 = v_V1522.clone(); + let __t984 = v_W1529.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -5323,7 +5323,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She ); let __t998 = { let __t994 = - v_W1874.clone(); + v_W1528.clone(); let __t997 = { let __t995 = Value::bool(false); @@ -5341,21 +5341,21 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She let __t1008 = { let __t1001 = { let __t1000 = - v_V1866.clone(); + v_V1520.clone(); rt::tl(&__t1000)? }; let __t1002 = - v_V1867.clone(); + v_V1521.clone(); let __t1003 = - v_V1868.clone(); + v_V1522.clone(); let __t1004 = - v_V1869.clone(); + v_V1523.clone(); let __t1005 = - v_V1870.clone(); + v_V1524.clone(); let __t1006 = - v_V1871.clone(); + v_V1525.clone(); let __t1007 = - v_V1872.clone(); + v_V1526.clone(); rt::apply_direct( interp, "shen.prolog-fbody", @@ -5369,7 +5369,7 @@ pub fn aot_shen_x2e_prolog_x2d_fbody(interp: &mut Interp, args: &[Value]) -> She }; let __t1011 = { let __t1009 = - v_W1874.clone(); + v_W1528.clone(); let __t1010 = Value::nil(); rt::cons(&__t1009, &__t1010) }; @@ -5430,23 +5430,23 @@ pub fn aot_shen_x2e_unlock(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult break Err(e), } { break Ok({ - let __t1096 = v_V1876.clone(); + let __t1096 = v_V1530.clone(); rt::apply_direct(interp, "shen.openlock", &[__t1096])? }); } else { @@ -5481,12 +5481,12 @@ pub fn aot_shen_x2e_locked_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V1878 = args[0].clone(); + let mut v_V1532 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ let __t1098 = { - let __t1097 = v_V1878.clone(); + let __t1097 = v_V1532.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1097])? }; rt::apply_direct(interp, "not", &[__t1098])? @@ -5508,11 +5508,11 @@ pub fn aot_shen_x2e_unlocked_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V1879 = args[0].clone(); + let mut v_V1533 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1099 = v_V1879.clone(); + let __t1099 = v_V1533.clone(); let __t1100 = Value::int(1i64); rt::apply_direct(interp, "<-address", &[__t1099, __t1100])? }); @@ -5533,12 +5533,12 @@ pub fn aot_shen_x2e_openlock(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V1880 = args[0].clone(); + let mut v_V1534 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { - let __t1101 = v_V1880.clone(); + let __t1101 = v_V1534.clone(); let __t1102 = Value::int(1i64); let __t1103 = Value::bool(true); rt::apply_direct(interp, "address->", &[__t1101, __t1102, __t1103])? @@ -5562,15 +5562,15 @@ pub fn aot_shen_x2e_fits_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V1881 = args[0].clone(); + let mut v_V1535 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1882 = args[1].clone(); + let mut v_V1536 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1104 = v_V1881.clone(); + let __t1104 = v_V1535.clone(); let __t1107 = { - let __t1105 = v_V1882.clone(); + let __t1105 = v_V1536.clone(); let __t1106 = Value::int(2i64); rt::apply_direct(interp, "<-address", &[__t1105, __t1106])? }; @@ -5593,21 +5593,21 @@ pub fn aot_shen_x2e_cut(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t1114 = v_V1887.clone(); - let __t1115 = v_V1886.clone(); + let __t1114 = v_V1541.clone(); + let __t1115 = v_V1540.clone(); rt::apply_direct(interp, "shen.lock", &[__t1114, __t1115])? }); } else { - break Ok(v_W1889.clone()); + break Ok(v_W1543.clone()); } } } @@ -5652,23 +5652,23 @@ pub fn aot_shen_x2e_lock(interp: &mut Interp, args: &[Value]) -> ShenResult", &[__t1116, __t1117, __t1118])? }; { - let v_W1893 = { - let __t1119 = v_V1891.clone(); + let v_W1547 = { + let __t1119 = v_V1545.clone(); let __t1120 = Value::int(2i64); - let __t1121 = v_V1890.clone(); + let __t1121 = v_V1544.clone(); rt::apply_direct(interp, "address->", &[__t1119, __t1120, __t1121])? }; break Ok(Value::bool(false)); @@ -5691,37 +5691,37 @@ pub fn aot_shen_x2e_continue(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V1894 = args[0].clone(); + let mut v_V1548 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1895 = args[1].clone(); + let mut v_V1549 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1896 = args[2].clone(); + let mut v_V1550 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1897 = args[3].clone(); + let mut v_V1551 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1898 = args[4].clone(); + let mut v_V1552 = args[4].clone(); #[allow(unused_mut)] - let mut v_V1899 = args[5].clone(); + let mut v_V1553 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W1900 = { - let __t1122 = v_V1894.clone(); + let v_W1554 = { + let __t1122 = v_V1548.clone(); rt::apply_direct(interp, "shen.extract-vars", &[__t1122])? }; { - let v_W1901 = { - let __t1123 = v_V1895.clone(); + let v_W1555 = { + let __t1123 = v_V1549.clone(); rt::apply_direct(interp, "shen.extract-free-vars", &[__t1123])? }; { - let v_W1902 = { - let __t1124 = v_W1901.clone(); - let __t1125 = v_W1900.clone(); + let v_W1556 = { + let __t1124 = v_W1555.clone(); + let __t1125 = v_W1554.clone(); rt::apply_direct(interp, "difference", &[__t1124, __t1125])? }; { - let v_W1903 = { + let v_W1557 = { let __t1126 = Value::sym(interp.intern("do")); let __t1138 = { let __t1129 = { @@ -5731,11 +5731,11 @@ pub fn aot_shen_x2e_continue(interp: &mut Interp, args: &[Value]) -> ShenResult< }; let __t1137 = { let __t1135 = { - let __t1130 = v_V1895.clone(); - let __t1131 = v_V1896.clone(); - let __t1132 = v_V1897.clone(); - let __t1133 = v_V1898.clone(); - let __t1134 = v_V1899.clone(); + let __t1130 = v_V1549.clone(); + let __t1131 = v_V1550.clone(); + let __t1132 = v_V1551.clone(); + let __t1133 = v_V1552.clone(); + let __t1134 = v_V1553.clone(); rt::apply_direct( interp, "shen.compile-body", @@ -5750,9 +5750,9 @@ pub fn aot_shen_x2e_continue(interp: &mut Interp, args: &[Value]) -> ShenResult< rt::cons(&__t1126, &__t1138) }; break Ok({ - let __t1139 = v_W1902.clone(); - let __t1140 = v_W1903.clone(); - let __t1141 = v_V1896.clone(); + let __t1139 = v_W1556.clone(); + let __t1140 = v_W1557.clone(); + let __t1141 = v_V1550.clone(); rt::apply_direct(interp, "shen.stpart", &[__t1139, __t1140, __t1141])? }); } @@ -5779,13 +5779,13 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( ))); } #[allow(unused_mut)] - let mut v_V1906 = args[0].clone(); + let mut v_V1560 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t1185 = { let __t1175 = { - let __t1155 = v_V1906.clone(); + let __t1155 = v_V1560.clone(); rt::is_cons(&__t1155) }; if !rt::is_truthy(interp, &__t1175)? { @@ -5795,7 +5795,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( let __t1173 = { let __t1156 = Value::sym(interp.intern("lambda")); let __t1158 = { - let __t1157 = v_V1906.clone(); + let __t1157 = v_V1560.clone(); rt::hd(&__t1157)? }; rt::eq(&__t1156, &__t1158) @@ -5806,7 +5806,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( let __t1174 = { let __t1171 = { let __t1160 = { - let __t1159 = v_V1906.clone(); + let __t1159 = v_V1560.clone(); rt::tl(&__t1159)? }; rt::is_cons(&__t1160) @@ -5818,7 +5818,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( let __t1169 = { let __t1163 = { let __t1162 = { - let __t1161 = v_V1906.clone(); + let __t1161 = v_V1560.clone(); rt::tl(&__t1161)? }; rt::tl(&__t1162)? @@ -5833,7 +5833,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( let __t1168 = { let __t1167 = { let __t1166 = { - let __t1165 = v_V1906.clone(); + let __t1165 = v_V1560.clone(); rt::tl(&__t1165)? }; rt::tl(&__t1166)? @@ -5861,7 +5861,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( break Ok({ let __t1179 = { let __t1178 = { - let __t1177 = v_V1906.clone(); + let __t1177 = v_V1560.clone(); rt::tl(&__t1177)? }; rt::hd(&__t1178)? @@ -5870,7 +5870,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( let __t1183 = { let __t1182 = { let __t1181 = { - let __t1180 = v_V1906.clone(); + let __t1180 = v_V1560.clone(); rt::tl(&__t1180)? }; rt::tl(&__t1181)? @@ -5884,7 +5884,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( } else { { let __t1154 = { - let __t1147 = v_V1906.clone(); + let __t1147 = v_V1560.clone(); rt::is_cons(&__t1147) }; if match rt::is_truthy(interp, &__t1154) { @@ -5894,14 +5894,14 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( break Ok({ let __t1150 = { let __t1149 = { - let __t1148 = v_V1906.clone(); + let __t1148 = v_V1560.clone(); rt::hd(&__t1148)? }; rt::apply_direct(interp, "shen.extract-free-vars", &[__t1149])? }; let __t1153 = { let __t1152 = { - let __t1151 = v_V1906.clone(); + let __t1151 = v_V1560.clone(); rt::tl(&__t1151)? }; rt::apply_direct(interp, "shen.extract-free-vars", &[__t1152])? @@ -5911,7 +5911,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( } else { { let __t1146 = { - let __t1143 = v_V1906.clone(); + let __t1143 = v_V1560.clone(); rt::apply_direct(interp, "variable?", &[__t1143])? }; if match rt::is_truthy(interp, &__t1146) { @@ -5919,7 +5919,7 @@ pub fn aot_shen_x2e_extract_x2d_free_x2d_vars( Err(e) => break Err(e), } { break Ok({ - let __t1144 = v_V1906.clone(); + let __t1144 = v_V1560.clone(); let __t1145 = Value::nil(); rt::cons(&__t1144, &__t1145) }); @@ -5965,21 +5965,21 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1923 = args[0].clone(); + let mut v_V1577 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1924 = args[1].clone(); + let mut v_V1578 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1925 = args[2].clone(); + let mut v_V1579 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1926 = args[3].clone(); + let mut v_V1580 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1927 = args[4].clone(); + let mut v_V1581 = args[4].clone(); #[allow(clippy::never_loop)] loop { { let __t1252 = { let __t1246 = Value::nil(); - let __t1247 = v_V1923.clone(); + let __t1247 = v_V1577.clone(); rt::eq(&__t1246, &__t1247) }; if match rt::is_truthy(interp, &__t1252) { @@ -5989,7 +5989,7 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She break Ok({ let __t1248 = Value::sym(interp.intern("thaw")); let __t1251 = { - let __t1249 = v_V1927.clone(); + let __t1249 = v_V1581.clone(); let __t1250 = Value::nil(); rt::cons(&__t1249, &__t1250) }; @@ -5999,7 +5999,7 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She { let __t1245 = { let __t1233 = { - let __t1229 = v_V1923.clone(); + let __t1229 = v_V1577.clone(); rt::is_cons(&__t1229) }; if !rt::is_truthy(interp, &__t1233)? { @@ -6008,7 +6008,7 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She let __t1234 = { let __t1230 = Value::sym(interp.intern("!")); let __t1232 = { - let __t1231 = v_V1923.clone(); + let __t1231 = v_V1577.clone(); rt::hd(&__t1231)? }; rt::eq(&__t1230, &__t1232) @@ -6028,27 +6028,27 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She rt::cons(&__t1235, &__t1236) }; let __t1239 = { - let __t1238 = v_V1923.clone(); + let __t1238 = v_V1577.clone(); rt::tl(&__t1238)? }; rt::cons(&__t1237, &__t1239) }; - let __t1241 = v_V1924.clone(); - let __t1242 = v_V1925.clone(); - let __t1243 = v_V1926.clone(); - let __t1244 = v_V1927.clone(); - v_V1923 = __t1240; - v_V1924 = __t1241; - v_V1925 = __t1242; - v_V1926 = __t1243; - v_V1927 = __t1244; + let __t1241 = v_V1578.clone(); + let __t1242 = v_V1579.clone(); + let __t1243 = v_V1580.clone(); + let __t1244 = v_V1581.clone(); + v_V1577 = __t1240; + v_V1578 = __t1241; + v_V1579 = __t1242; + v_V1580 = __t1243; + v_V1581 = __t1244; continue; } } else { { let __t1228 = { let __t1213 = { - let __t1209 = v_V1923.clone(); + let __t1209 = v_V1577.clone(); rt::is_cons(&__t1209) }; if !rt::is_truthy(interp, &__t1213)? { @@ -6057,7 +6057,7 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She let __t1214 = { let __t1210 = Value::nil(); let __t1212 = { - let __t1211 = v_V1923.clone(); + let __t1211 = v_V1577.clone(); rt::tl(&__t1211)? }; rt::eq(&__t1210, &__t1212) @@ -6072,10 +6072,10 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She break Ok({ let __t1218 = { let __t1216 = { - let __t1215 = v_V1923.clone(); + let __t1215 = v_V1577.clone(); rt::hd(&__t1215)? }; - let __t1217 = v_V1924.clone(); + let __t1217 = v_V1578.clone(); rt::apply_direct( interp, "shen.deref-calls", @@ -6083,13 +6083,13 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She )? }; let __t1227 = { - let __t1219 = v_V1924.clone(); + let __t1219 = v_V1578.clone(); let __t1226 = { - let __t1220 = v_V1925.clone(); + let __t1220 = v_V1579.clone(); let __t1225 = { - let __t1221 = v_V1926.clone(); + let __t1221 = v_V1580.clone(); let __t1224 = { - let __t1222 = v_V1927.clone(); + let __t1222 = v_V1581.clone(); let __t1223 = Value::nil(); rt::cons(&__t1222, &__t1223) }; @@ -6104,7 +6104,7 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She } else { { let __t1208 = { - let __t1188 = v_V1923.clone(); + let __t1188 = v_V1577.clone(); rt::is_cons(&__t1188) }; if match rt::is_truthy(interp, &__t1208) { @@ -6112,12 +6112,12 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W1928 = { + let v_W1582 = { let __t1190 = { - let __t1189 = v_V1923.clone(); + let __t1189 = v_V1577.clone(); rt::hd(&__t1189)? }; - let __t1191 = v_V1924.clone(); + let __t1191 = v_V1578.clone(); rt::apply_direct( interp, "shen.deref-calls", @@ -6125,24 +6125,24 @@ pub fn aot_shen_x2e_compile_x2d_body(interp: &mut Interp, args: &[Value]) -> She )? }; break Ok({ - let __t1192 = v_W1928.clone(); + let __t1192 = v_W1582.clone(); let __t1207 = { - let __t1193 = v_V1924.clone(); + let __t1193 = v_V1578.clone(); let __t1206 = { - let __t1194 = v_V1925.clone(); + let __t1194 = v_V1579.clone(); let __t1205 = { - let __t1195 = v_V1926.clone(); + let __t1195 = v_V1580.clone(); let __t1204 = { let __t1202 = { let __t1197 = { let __t1196 = - v_V1923.clone(); + v_V1577.clone(); rt::tl(&__t1196)? }; - let __t1198 = v_V1924.clone(); - let __t1199 = v_V1925.clone(); - let __t1200 = v_V1926.clone(); - let __t1201 = v_V1927.clone(); + let __t1198 = v_V1578.clone(); + let __t1199 = v_V1579.clone(); + let __t1200 = v_V1580.clone(); + let __t1201 = v_V1581.clone(); rt::apply_direct( interp, "shen.freeze-literals", @@ -6215,33 +6215,33 @@ pub fn aot_shen_x2e_freeze_x2d_literals(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V1945 = args[0].clone(); + let mut v_V1599 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1946 = args[1].clone(); + let mut v_V1600 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1947 = args[2].clone(); + let mut v_V1601 = args[2].clone(); #[allow(unused_mut)] - let mut v_V1948 = args[3].clone(); + let mut v_V1602 = args[3].clone(); #[allow(unused_mut)] - let mut v_V1949 = args[4].clone(); + let mut v_V1603 = args[4].clone(); #[allow(clippy::never_loop)] loop { { let __t1299 = { let __t1297 = Value::nil(); - let __t1298 = v_V1945.clone(); + let __t1298 = v_V1599.clone(); rt::eq(&__t1297, &__t1298) }; if match rt::is_truthy(interp, &__t1299) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1949.clone()); + break Ok(v_V1603.clone()); } else { { let __t1296 = { let __t1284 = { - let __t1280 = v_V1945.clone(); + let __t1280 = v_V1599.clone(); rt::is_cons(&__t1280) }; if !rt::is_truthy(interp, &__t1284)? { @@ -6250,7 +6250,7 @@ pub fn aot_shen_x2e_freeze_x2d_literals(interp: &mut Interp, args: &[Value]) -> let __t1285 = { let __t1281 = Value::sym(interp.intern("!")); let __t1283 = { - let __t1282 = v_V1945.clone(); + let __t1282 = v_V1599.clone(); rt::hd(&__t1282)? }; rt::eq(&__t1281, &__t1283) @@ -6270,26 +6270,26 @@ pub fn aot_shen_x2e_freeze_x2d_literals(interp: &mut Interp, args: &[Value]) -> rt::cons(&__t1286, &__t1287) }; let __t1290 = { - let __t1289 = v_V1945.clone(); + let __t1289 = v_V1599.clone(); rt::tl(&__t1289)? }; rt::cons(&__t1288, &__t1290) }; - let __t1292 = v_V1946.clone(); - let __t1293 = v_V1947.clone(); - let __t1294 = v_V1948.clone(); - let __t1295 = v_V1949.clone(); - v_V1945 = __t1291; - v_V1946 = __t1292; - v_V1947 = __t1293; - v_V1948 = __t1294; - v_V1949 = __t1295; + let __t1292 = v_V1600.clone(); + let __t1293 = v_V1601.clone(); + let __t1294 = v_V1602.clone(); + let __t1295 = v_V1603.clone(); + v_V1599 = __t1291; + v_V1600 = __t1292; + v_V1601 = __t1293; + v_V1602 = __t1294; + v_V1603 = __t1295; continue; } } else { { let __t1279 = { - let __t1255 = v_V1945.clone(); + let __t1255 = v_V1599.clone(); rt::is_cons(&__t1255) }; if match rt::is_truthy(interp, &__t1279) { @@ -6297,12 +6297,12 @@ pub fn aot_shen_x2e_freeze_x2d_literals(interp: &mut Interp, args: &[Value]) -> Err(e) => break Err(e), } { { - let v_W1950 = { + let v_W1604 = { let __t1257 = { - let __t1256 = v_V1945.clone(); + let __t1256 = v_V1599.clone(); rt::hd(&__t1256)? }; - let __t1258 = v_V1946.clone(); + let __t1258 = v_V1600.clone(); rt::apply_direct( interp, "shen.deref-calls", @@ -6313,24 +6313,24 @@ pub fn aot_shen_x2e_freeze_x2d_literals(interp: &mut Interp, args: &[Value]) -> let __t1259 = Value::sym(interp.intern("freeze")); let __t1278 = { let __t1276 = { - let __t1260 = v_W1950.clone(); + let __t1260 = v_W1604.clone(); let __t1275 = { - let __t1261 = v_V1946.clone(); + let __t1261 = v_V1600.clone(); let __t1274 = { - let __t1262 = v_V1947.clone(); + let __t1262 = v_V1601.clone(); let __t1273 = { - let __t1263 = v_V1948.clone(); + let __t1263 = v_V1602.clone(); let __t1272 = { let __t1270 = { let __t1265 = { let __t1264 = - v_V1945.clone(); + v_V1599.clone(); rt::tl(&__t1264)? }; - let __t1266 = v_V1946.clone(); - let __t1267 = v_V1947.clone(); - let __t1268 = v_V1948.clone(); - let __t1269 = v_V1949.clone(); + let __t1266 = v_V1600.clone(); + let __t1267 = v_V1601.clone(); + let __t1268 = v_V1602.clone(); + let __t1269 = v_V1603.clone(); rt::apply_direct( interp, "shen.freeze-literals", @@ -6402,15 +6402,15 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1955 = args[0].clone(); + let mut v_V1609 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1956 = args[1].clone(); + let mut v_V1610 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t1325 = { let __t1316 = { - let __t1312 = v_V1955.clone(); + let __t1312 = v_V1609.clone(); rt::is_cons(&__t1312) }; if !rt::is_truthy(interp, &__t1316)? { @@ -6419,7 +6419,7 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen let __t1317 = { let __t1313 = Value::sym(interp.intern("fork")); let __t1315 = { - let __t1314 = v_V1955.clone(); + let __t1314 = v_V1609.clone(); rt::hd(&__t1314)? }; rt::eq(&__t1313, &__t1315) @@ -6436,10 +6436,10 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen let __t1324 = { let __t1322 = { let __t1320 = { - let __t1319 = v_V1955.clone(); + let __t1319 = v_V1609.clone(); rt::tl(&__t1319)? }; - let __t1321 = v_V1956.clone(); + let __t1321 = v_V1610.clone(); rt::apply_direct( interp, "shen.deref-forked-literals", @@ -6454,7 +6454,7 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen } else { { let __t1311 = { - let __t1302 = v_V1955.clone(); + let __t1302 = v_V1609.clone(); rt::is_cons(&__t1302) }; if match rt::is_truthy(interp, &__t1311) { @@ -6463,20 +6463,20 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ let __t1304 = { - let __t1303 = v_V1955.clone(); + let __t1303 = v_V1609.clone(); rt::hd(&__t1303)? }; let __t1310 = { let __t1307 = { - let v_V1956 = v_V1956.clone(); + let v_V1610 = v_V1610.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1957 = args[0].clone(); + let v_Z1611 = args[0].clone(); Ok({ - let __t1305 = v_Z1957.clone(); - let __t1306 = v_V1956.clone(); + let __t1305 = v_Z1611.clone(); + let __t1306 = v_V1610.clone(); rt::apply_direct( interp, "shen.function-calls", @@ -6484,12 +6484,12 @@ pub fn aot_shen_x2e_deref_x2d_calls(interp: &mut Interp, args: &[Value]) -> Shen )? }) }, - vec![v_V1956], + vec![v_V1610], interp, ) }; let __t1309 = { - let __t1308 = v_V1955.clone(); + let __t1308 = v_V1609.clone(); rt::tl(&__t1308)? }; rt::apply_direct(interp, "map", &[__t1307, __t1309])? @@ -6536,15 +6536,15 @@ pub fn aot_shen_x2e_deref_x2d_forked_x2d_literals( ))); } #[allow(unused_mut)] - let mut v_V1964 = args[0].clone(); + let mut v_V1618 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1965 = args[1].clone(); + let mut v_V1619 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t1344 = { let __t1342 = Value::nil(); - let __t1343 = v_V1964.clone(); + let __t1343 = v_V1618.clone(); rt::eq(&__t1342, &__t1343) }; if match rt::is_truthy(interp, &__t1344) { @@ -6555,7 +6555,7 @@ pub fn aot_shen_x2e_deref_x2d_forked_x2d_literals( } else { { let __t1341 = { - let __t1328 = v_V1964.clone(); + let __t1328 = v_V1618.clone(); rt::is_cons(&__t1328) }; if match rt::is_truthy(interp, &__t1341) { @@ -6567,10 +6567,10 @@ pub fn aot_shen_x2e_deref_x2d_forked_x2d_literals( let __t1340 = { let __t1333 = { let __t1331 = { - let __t1330 = v_V1964.clone(); + let __t1330 = v_V1618.clone(); rt::hd(&__t1330)? }; - let __t1332 = v_V1965.clone(); + let __t1332 = v_V1619.clone(); rt::apply_direct( interp, "shen.deref-calls", @@ -6580,10 +6580,10 @@ pub fn aot_shen_x2e_deref_x2d_forked_x2d_literals( let __t1339 = { let __t1337 = { let __t1335 = { - let __t1334 = v_V1964.clone(); + let __t1334 = v_V1618.clone(); rt::tl(&__t1334)? }; - let __t1336 = v_V1965.clone(); + let __t1336 = v_V1619.clone(); rt::apply_direct( interp, "shen.deref-forked-literals", @@ -6640,15 +6640,15 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V1968 = args[0].clone(); + let mut v_V1622 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1969 = args[1].clone(); + let mut v_V1623 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t1388 = { let __t1371 = { - let __t1351 = v_V1968.clone(); + let __t1351 = v_V1622.clone(); rt::is_cons(&__t1351) }; if !rt::is_truthy(interp, &__t1371)? { @@ -6658,7 +6658,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1369 = { let __t1352 = Value::sym(interp.intern("cons")); let __t1354 = { - let __t1353 = v_V1968.clone(); + let __t1353 = v_V1622.clone(); rt::hd(&__t1353)? }; rt::eq(&__t1352, &__t1354) @@ -6669,7 +6669,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1370 = { let __t1367 = { let __t1356 = { - let __t1355 = v_V1968.clone(); + let __t1355 = v_V1622.clone(); rt::tl(&__t1355)? }; rt::is_cons(&__t1356) @@ -6681,7 +6681,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1365 = { let __t1359 = { let __t1358 = { - let __t1357 = v_V1968.clone(); + let __t1357 = v_V1622.clone(); rt::tl(&__t1357)? }; rt::tl(&__t1358)? @@ -6696,7 +6696,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1364 = { let __t1363 = { let __t1362 = { - let __t1361 = v_V1968.clone(); + let __t1361 = v_V1622.clone(); rt::tl(&__t1361)? }; rt::tl(&__t1362)? @@ -6727,12 +6727,12 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1378 = { let __t1376 = { let __t1375 = { - let __t1374 = v_V1968.clone(); + let __t1374 = v_V1622.clone(); rt::tl(&__t1374)? }; rt::hd(&__t1375)? }; - let __t1377 = v_V1969.clone(); + let __t1377 = v_V1623.clone(); rt::apply_direct(interp, "shen.function-calls", &[__t1376, __t1377])? }; let __t1386 = { @@ -6740,14 +6740,14 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S let __t1382 = { let __t1381 = { let __t1380 = { - let __t1379 = v_V1968.clone(); + let __t1379 = v_V1622.clone(); rt::tl(&__t1379)? }; rt::tl(&__t1380)? }; rt::hd(&__t1381)? }; - let __t1383 = v_V1969.clone(); + let __t1383 = v_V1623.clone(); rt::apply_direct( interp, "shen.function-calls", @@ -6764,7 +6764,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S } else { { let __t1350 = { - let __t1346 = v_V1968.clone(); + let __t1346 = v_V1622.clone(); rt::is_cons(&__t1346) }; if match rt::is_truthy(interp, &__t1350) { @@ -6772,8 +6772,8 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { break Ok({ - let __t1347 = v_V1968.clone(); - let __t1348 = v_V1969.clone(); + let __t1347 = v_V1622.clone(); + let __t1348 = v_V1623.clone(); let __t1349 = Value::nil(); rt::apply_direct( interp, @@ -6788,7 +6788,7 @@ pub fn aot_shen_x2e_function_x2d_calls(interp: &mut Interp, args: &[Value]) -> S Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1968.clone()); + break Ok(v_V1622.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -6814,17 +6814,17 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V1978 = args[0].clone(); + let mut v_V1632 = args[0].clone(); #[allow(unused_mut)] - let mut v_V1979 = args[1].clone(); + let mut v_V1633 = args[1].clone(); #[allow(unused_mut)] - let mut v_V1980 = args[2].clone(); + let mut v_V1634 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t1518 = { let __t1502 = { - let __t1488 = v_V1978.clone(); + let __t1488 = v_V1632.clone(); rt::is_cons(&__t1488) }; if !rt::is_truthy(interp, &__t1502)? { @@ -6834,7 +6834,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1500 = { let __t1489 = Value::int(0i64); let __t1491 = { - let __t1490 = v_V1978.clone(); + let __t1490 = v_V1632.clone(); rt::hd(&__t1490)? }; rt::eq(&__t1489, &__t1491) @@ -6845,7 +6845,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1501 = { let __t1498 = { let __t1493 = { - let __t1492 = v_V1978.clone(); + let __t1492 = v_V1632.clone(); rt::tl(&__t1492)? }; rt::is_cons(&__t1493) @@ -6857,7 +6857,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1494 = Value::nil(); let __t1497 = { let __t1496 = { - let __t1495 = v_V1978.clone(); + let __t1495 = v_V1632.clone(); rt::tl(&__t1495)? }; rt::tl(&__t1496)? @@ -6881,7 +6881,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1507 = { let __t1506 = { let __t1505 = { - let __t1504 = v_V1978.clone(); + let __t1504 = v_V1632.clone(); rt::tl(&__t1504)? }; rt::hd(&__t1505)? @@ -6894,7 +6894,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ let __t1509 = { - let __t1508 = v_V1978.clone(); + let __t1508 = v_V1632.clone(); rt::tl(&__t1508)? }; rt::hd(&__t1509)? @@ -6906,7 +6906,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1516 = { let __t1513 = { let __t1512 = { - let __t1511 = v_V1978.clone(); + let __t1511 = v_V1632.clone(); rt::tl(&__t1511)? }; rt::hd(&__t1512)? @@ -6929,7 +6929,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen { let __t1487 = { let __t1465 = { - let __t1451 = v_V1978.clone(); + let __t1451 = v_V1632.clone(); rt::is_cons(&__t1451) }; if !rt::is_truthy(interp, &__t1465)? { @@ -6939,7 +6939,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1463 = { let __t1452 = Value::int(1i64); let __t1454 = { - let __t1453 = v_V1978.clone(); + let __t1453 = v_V1632.clone(); rt::hd(&__t1453)? }; rt::eq(&__t1452, &__t1454) @@ -6950,7 +6950,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1464 = { let __t1461 = { let __t1456 = { - let __t1455 = v_V1978.clone(); + let __t1455 = v_V1632.clone(); rt::tl(&__t1455)? }; rt::is_cons(&__t1456) @@ -6962,7 +6962,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1457 = Value::nil(); let __t1460 = { let __t1459 = { - let __t1458 = v_V1978.clone(); + let __t1458 = v_V1632.clone(); rt::tl(&__t1458)? }; rt::tl(&__t1459)? @@ -6986,7 +6986,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1470 = { let __t1469 = { let __t1468 = { - let __t1467 = v_V1978.clone(); + let __t1467 = v_V1632.clone(); rt::tl(&__t1467)? }; rt::hd(&__t1468)? @@ -7002,13 +7002,13 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1478 = { let __t1474 = { let __t1473 = { - let __t1472 = v_V1978.clone(); + let __t1472 = v_V1632.clone(); rt::tl(&__t1472)? }; rt::hd(&__t1473)? }; let __t1477 = { - let __t1475 = v_V1979.clone(); + let __t1475 = v_V1633.clone(); let __t1476 = Value::nil(); rt::cons(&__t1475, &__t1476) }; @@ -7024,7 +7024,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1485 = { let __t1482 = { let __t1481 = { - let __t1480 = v_V1978.clone(); + let __t1480 = v_V1632.clone(); rt::tl(&__t1480)? }; rt::hd(&__t1481)? @@ -7048,8 +7048,8 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1450 = { let __t1442 = { let __t1440 = { - let __t1438 = v_V1978.clone(); - let __t1439 = v_V1980.clone(); + let __t1438 = v_V1632.clone(); + let __t1439 = v_V1634.clone(); rt::apply_direct(interp, "element?", &[__t1438, __t1439])? }; rt::apply_direct(interp, "not", &[__t1440])? @@ -7058,7 +7058,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen Value::bool(false) } else { let __t1443 = { - let __t1441 = v_V1978.clone(); + let __t1441 = v_V1632.clone(); rt::apply_direct(interp, "variable?", &[__t1441])? }; Value::bool(rt::is_truthy(interp, &__t1443)?) @@ -7071,9 +7071,9 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen break Ok({ let __t1444 = Value::sym(interp.intern("shen.deref")); let __t1449 = { - let __t1445 = v_V1978.clone(); + let __t1445 = v_V1632.clone(); let __t1448 = { - let __t1446 = v_V1979.clone(); + let __t1446 = v_V1633.clone(); let __t1447 = Value::nil(); rt::cons(&__t1446, &__t1447) }; @@ -7085,7 +7085,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen { let __t1437 = { let __t1417 = { - let __t1397 = v_V1978.clone(); + let __t1397 = v_V1632.clone(); rt::is_cons(&__t1397) }; if !rt::is_truthy(interp, &__t1417)? { @@ -7096,7 +7096,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1398 = Value::sym(interp.intern("lambda")); let __t1400 = { - let __t1399 = v_V1978.clone(); + let __t1399 = v_V1632.clone(); rt::hd(&__t1399)? }; rt::eq(&__t1398, &__t1400) @@ -7107,7 +7107,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1416 = { let __t1413 = { let __t1402 = { - let __t1401 = v_V1978.clone(); + let __t1401 = v_V1632.clone(); rt::tl(&__t1401)? }; rt::is_cons(&__t1402) @@ -7120,7 +7120,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1405 = { let __t1404 = { let __t1403 = - v_V1978.clone(); + v_V1632.clone(); rt::tl(&__t1403)? }; rt::tl(&__t1404)? @@ -7137,7 +7137,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1409 = { let __t1408 = { let __t1407 = - v_V1978 + v_V1632 .clone( ); rt::tl( @@ -7175,7 +7175,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1436 = { let __t1422 = { let __t1421 = { - let __t1420 = v_V1978.clone(); + let __t1420 = v_V1632.clone(); rt::tl(&__t1420)? }; rt::hd(&__t1421)? @@ -7185,23 +7185,23 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen let __t1426 = { let __t1425 = { let __t1424 = { - let __t1423 = v_V1978.clone(); + let __t1423 = v_V1632.clone(); rt::tl(&__t1423)? }; rt::tl(&__t1424)? }; rt::hd(&__t1425)? }; - let __t1427 = v_V1979.clone(); + let __t1427 = v_V1633.clone(); let __t1432 = { let __t1430 = { let __t1429 = { - let __t1428 = v_V1978.clone(); + let __t1428 = v_V1632.clone(); rt::tl(&__t1428)? }; rt::hd(&__t1429)? }; - let __t1431 = v_V1980.clone(); + let __t1431 = v_V1634.clone(); rt::cons(&__t1430, &__t1431) }; rt::apply_direct( @@ -7220,7 +7220,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen } else { { let __t1396 = { - let __t1390 = v_V1978.clone(); + let __t1390 = v_V1632.clone(); rt::is_cons(&__t1390) }; if match rt::is_truthy(interp, &__t1396) { @@ -7229,17 +7229,17 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ let __t1394 = { - let v_V1979 = v_V1979.clone(); - let v_V1980 = v_V1980.clone(); + let v_V1633 = v_V1633.clone(); + let v_V1634 = v_V1634.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z1981 = args[0].clone(); + let v_Z1635 = args[0].clone(); Ok({ - let __t1391 = v_Z1981.clone(); - let __t1392 = v_V1979.clone(); - let __t1393 = v_V1980.clone(); + let __t1391 = v_Z1635.clone(); + let __t1392 = v_V1633.clone(); + let __t1393 = v_V1634.clone(); rt::apply_direct( interp, "shen.deref-terms", @@ -7250,11 +7250,11 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen )? }) }, - vec![v_V1979, v_V1980], + vec![v_V1633, v_V1634], interp, ) }; - let __t1395 = v_V1978.clone(); + let __t1395 = v_V1632.clone(); rt::apply_direct( interp, "map", @@ -7268,7 +7268,7 @@ pub fn aot_shen_x2e_deref_x2d_terms(interp: &mut Interp, args: &[Value]) -> Shen Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V1978.clone()); + break Ok(v_V1632.clone()); } else { break Err(ShenError::new( "cond: no clause matched", @@ -7302,22 +7302,22 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V1999 = args[0].clone(); + let mut v_V1653 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2000 = args[1].clone(); + let mut v_V1654 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2001 = args[2].clone(); + let mut v_V1655 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2002 = args[3].clone(); + let mut v_V1656 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2003 = args[4].clone(); + let mut v_V1657 = args[4].clone(); #[allow(clippy::never_loop)] loop { { let __t1764 = { let __t1762 = { let __t1758 = Value::nil(); - let __t1759 = v_V2000.clone(); + let __t1759 = v_V1654.clone(); rt::eq(&__t1758, &__t1759) }; if !rt::is_truthy(interp, &__t1762)? { @@ -7325,7 +7325,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } else { let __t1763 = { let __t1760 = Value::nil(); - let __t1761 = v_V2001.clone(); + let __t1761 = v_V1655.clone(); rt::eq(&__t1760, &__t1761) }; Value::bool(rt::is_truthy(interp, &__t1763)?) @@ -7335,12 +7335,12 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V2003.clone()); + break Ok(v_V1657.clone()); } else { { let __t1757 = { let __t1740 = { - let __t1719 = v_V2000.clone(); + let __t1719 = v_V1654.clone(); rt::is_cons(&__t1719) }; if !rt::is_truthy(interp, &__t1740)? { @@ -7349,7 +7349,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1741 = { let __t1738 = { let __t1721 = { - let __t1720 = v_V2000.clone(); + let __t1720 = v_V1654.clone(); rt::hd(&__t1720)? }; rt::is_cons(&__t1721) @@ -7362,7 +7362,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1722 = Value::sym(interp.intern("shen.+m")); let __t1725 = { let __t1724 = { - let __t1723 = v_V2000.clone(); + let __t1723 = v_V1654.clone(); rt::hd(&__t1723)? }; rt::hd(&__t1724)? @@ -7376,7 +7376,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1734 = { let __t1728 = { let __t1727 = { - let __t1726 = v_V2000.clone(); + let __t1726 = v_V1654.clone(); rt::hd(&__t1726)? }; rt::tl(&__t1727)? @@ -7391,7 +7391,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1733 = { let __t1732 = { let __t1731 = { - let __t1730 = v_V2000.clone(); + let __t1730 = v_V1654.clone(); rt::hd(&__t1730)? }; rt::tl(&__t1731)? @@ -7417,14 +7417,14 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let __t1742 = v_V1999.clone(); + let __t1742 = v_V1653.clone(); let __t1753 = { let __t1743 = Value::sym(interp.intern("shen.+m")); let __t1752 = { let __t1747 = { let __t1746 = { let __t1745 = { - let __t1744 = v_V2000.clone(); + let __t1744 = v_V1654.clone(); rt::hd(&__t1744)? }; rt::tl(&__t1745)? @@ -7432,9 +7432,9 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She rt::hd(&__t1746)? }; let __t1751 = { - let __t1748 = v_V1999.clone(); + let __t1748 = v_V1653.clone(); let __t1750 = { - let __t1749 = v_V2000.clone(); + let __t1749 = v_V1654.clone(); rt::tl(&__t1749)? }; rt::cons(&__t1748, &__t1750) @@ -7443,21 +7443,21 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She }; rt::cons(&__t1743, &__t1752) }; - let __t1754 = v_V2001.clone(); - let __t1755 = v_V2002.clone(); - let __t1756 = v_V2003.clone(); - v_V1999 = __t1742; - v_V2000 = __t1753; - v_V2001 = __t1754; - v_V2002 = __t1755; - v_V2003 = __t1756; + let __t1754 = v_V1655.clone(); + let __t1755 = v_V1656.clone(); + let __t1756 = v_V1657.clone(); + v_V1653 = __t1742; + v_V1654 = __t1753; + v_V1655 = __t1754; + v_V1656 = __t1755; + v_V1657 = __t1756; continue; } } else { { let __t1718 = { let __t1701 = { - let __t1680 = v_V2000.clone(); + let __t1680 = v_V1654.clone(); rt::is_cons(&__t1680) }; if !rt::is_truthy(interp, &__t1701)? { @@ -7466,7 +7466,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1702 = { let __t1699 = { let __t1682 = { - let __t1681 = v_V2000.clone(); + let __t1681 = v_V1654.clone(); rt::hd(&__t1681)? }; rt::is_cons(&__t1682) @@ -7480,7 +7480,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Value::sym(interp.intern("shen.-m")); let __t1686 = { let __t1685 = { - let __t1684 = v_V2000.clone(); + let __t1684 = v_V1654.clone(); rt::hd(&__t1684)? }; rt::hd(&__t1685)? @@ -7494,7 +7494,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1695 = { let __t1689 = { let __t1688 = { - let __t1687 = v_V2000.clone(); + let __t1687 = v_V1654.clone(); rt::hd(&__t1687)? }; rt::tl(&__t1688)? @@ -7510,7 +7510,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1693 = { let __t1692 = { let __t1691 = - v_V2000.clone(); + v_V1654.clone(); rt::hd(&__t1691)? }; rt::tl(&__t1692)? @@ -7538,14 +7538,14 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let __t1703 = v_V1999.clone(); + let __t1703 = v_V1653.clone(); let __t1714 = { let __t1704 = Value::sym(interp.intern("shen.-m")); let __t1713 = { let __t1708 = { let __t1707 = { let __t1706 = { - let __t1705 = v_V2000.clone(); + let __t1705 = v_V1654.clone(); rt::hd(&__t1705)? }; rt::tl(&__t1706)? @@ -7553,9 +7553,9 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She rt::hd(&__t1707)? }; let __t1712 = { - let __t1709 = v_V1999.clone(); + let __t1709 = v_V1653.clone(); let __t1711 = { - let __t1710 = v_V2000.clone(); + let __t1710 = v_V1654.clone(); rt::tl(&__t1710)? }; rt::cons(&__t1709, &__t1711) @@ -7564,21 +7564,21 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She }; rt::cons(&__t1704, &__t1713) }; - let __t1715 = v_V2001.clone(); - let __t1716 = v_V2002.clone(); - let __t1717 = v_V2003.clone(); - v_V1999 = __t1703; - v_V2000 = __t1714; - v_V2001 = __t1715; - v_V2002 = __t1716; - v_V2003 = __t1717; + let __t1715 = v_V1655.clone(); + let __t1716 = v_V1656.clone(); + let __t1717 = v_V1657.clone(); + v_V1653 = __t1703; + v_V1654 = __t1714; + v_V1655 = __t1715; + v_V1656 = __t1716; + v_V1657 = __t1717; continue; } } else { { let __t1679 = { let __t1671 = { - let __t1667 = v_V2000.clone(); + let __t1667 = v_V1654.clone(); rt::is_cons(&__t1667) }; if !rt::is_truthy(interp, &__t1671)? { @@ -7587,7 +7587,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1672 = { let __t1668 = Value::sym(interp.intern("shen.-m")); let __t1670 = { - let __t1669 = v_V2000.clone(); + let __t1669 = v_V1654.clone(); rt::hd(&__t1669)? }; rt::eq(&__t1668, &__t1670) @@ -7602,24 +7602,24 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She { let __t1673 = Value::sym(interp.intern("shen.-m")); let __t1675 = { - let __t1674 = v_V2000.clone(); + let __t1674 = v_V1654.clone(); rt::tl(&__t1674)? }; - let __t1676 = v_V2001.clone(); - let __t1677 = v_V2002.clone(); - let __t1678 = v_V2003.clone(); - v_V1999 = __t1673; - v_V2000 = __t1675; - v_V2001 = __t1676; - v_V2002 = __t1677; - v_V2003 = __t1678; + let __t1676 = v_V1655.clone(); + let __t1677 = v_V1656.clone(); + let __t1678 = v_V1657.clone(); + v_V1653 = __t1673; + v_V1654 = __t1675; + v_V1655 = __t1676; + v_V1656 = __t1677; + v_V1657 = __t1678; continue; } } else { { let __t1666 = { let __t1658 = { - let __t1654 = v_V2000.clone(); + let __t1654 = v_V1654.clone(); rt::is_cons(&__t1654) }; if !rt::is_truthy(interp, &__t1658)? { @@ -7629,7 +7629,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1655 = Value::sym(interp.intern("shen.+m")); let __t1657 = { - let __t1656 = v_V2000.clone(); + let __t1656 = v_V1654.clone(); rt::hd(&__t1656)? }; rt::eq(&__t1655, &__t1657) @@ -7645,24 +7645,24 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1660 = Value::sym(interp.intern("shen.+m")); let __t1662 = { - let __t1661 = v_V2000.clone(); + let __t1661 = v_V1654.clone(); rt::tl(&__t1661)? }; - let __t1663 = v_V2001.clone(); - let __t1664 = v_V2002.clone(); - let __t1665 = v_V2003.clone(); - v_V1999 = __t1660; - v_V2000 = __t1662; - v_V2001 = __t1663; - v_V2002 = __t1664; - v_V2003 = __t1665; + let __t1663 = v_V1655.clone(); + let __t1664 = v_V1656.clone(); + let __t1665 = v_V1657.clone(); + v_V1653 = __t1660; + v_V1654 = __t1662; + v_V1655 = __t1663; + v_V1656 = __t1664; + v_V1657 = __t1665; continue; } } else { { let __t1653 = { let __t1644 = { - let __t1638 = v_V2000.clone(); + let __t1638 = v_V1654.clone(); rt::is_cons(&__t1638) }; if !rt::is_truthy(interp, &__t1644)? { @@ -7670,7 +7670,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } else { let __t1645 = { let __t1642 = { - let __t1639 = v_V2001.clone(); + let __t1639 = v_V1655.clone(); rt::is_cons(&__t1639) }; if !rt::is_truthy(interp, &__t1642)? @@ -7680,7 +7680,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1643 = { let __t1641 = { let __t1640 = - v_V2000.clone(); + v_V1654.clone(); rt::hd(&__t1640)? }; rt::apply_direct( @@ -7704,29 +7704,29 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let __t1646 = v_V1999.clone(); + let __t1646 = v_V1653.clone(); let __t1648 = { - let __t1647 = v_V2000.clone(); + let __t1647 = v_V1654.clone(); rt::tl(&__t1647)? }; let __t1650 = { - let __t1649 = v_V2001.clone(); + let __t1649 = v_V1655.clone(); rt::tl(&__t1649)? }; - let __t1651 = v_V2002.clone(); - let __t1652 = v_V2003.clone(); - v_V1999 = __t1646; - v_V2000 = __t1648; - v_V2001 = __t1650; - v_V2002 = __t1651; - v_V2003 = __t1652; + let __t1651 = v_V1656.clone(); + let __t1652 = v_V1657.clone(); + v_V1653 = __t1646; + v_V1654 = __t1648; + v_V1655 = __t1650; + v_V1656 = __t1651; + v_V1657 = __t1652; continue; } } else { { let __t1637 = { let __t1630 = { - let __t1627 = v_V2000.clone(); + let __t1627 = v_V1654.clone(); rt::is_cons(&__t1627) }; if !rt::is_truthy(interp, &__t1630)? @@ -7736,7 +7736,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1631 = { let __t1629 = { let __t1628 = - v_V2000.clone(); + v_V1654.clone(); rt::hd(&__t1628)? }; rt::apply_direct( @@ -7756,11 +7756,11 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t1632 = v_V1999.clone(); - let __t1633 = v_V2000.clone(); - let __t1634 = v_V2001.clone(); - let __t1635 = v_V2002.clone(); - let __t1636 = v_V2003.clone(); + let __t1632 = v_V1653.clone(); + let __t1633 = v_V1654.clone(); + let __t1634 = v_V1655.clone(); + let __t1635 = v_V1656.clone(); + let __t1636 = v_V1657.clone(); rt::apply_direct( interp, "shen.variable-case", @@ -7782,7 +7782,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She ), ); let __t1614 = - v_V1999.clone(); + v_V1653.clone(); rt::eq( &__t1613, &__t1614, ) @@ -7795,7 +7795,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1621 = { let __t1618 = { let __t1615 = - v_V2000 + v_V1654 .clone( ); rt::is_cons( @@ -7812,7 +7812,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } else { let __t1619 = { let __t1617 = { - let __t1616 = v_V2000.clone(); + let __t1616 = v_V1654.clone(); rt::hd(&__t1616)? }; rt::apply_direct(interp, "atom?", &[__t1617])? @@ -7836,13 +7836,13 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ let __t1622 = - v_V2000.clone(); + v_V1654.clone(); let __t1623 = - v_V2001.clone(); + v_V1655.clone(); let __t1624 = - v_V2002.clone(); + v_V1656.clone(); let __t1625 = - v_V2003.clone(); + v_V1657.clone(); rt::apply_direct(interp, "shen.atom-case-minus", &[__t1622, __t1623, __t1624, __t1625])? }); } else { @@ -7851,7 +7851,7 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1606 = { let __t1574 = Value::sym(interp.intern("shen.-m")); let __t1575 = - v_V1999 + v_V1653 .clone( ); rt::eq( @@ -7869,10 +7869,10 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } else { let __t1607 = { let __t1604 = { - let __t1576 = v_V2000.clone(); + let __t1576 = v_V1654.clone(); rt::is_cons(&__t1576) }; - if !rt::is_truthy(interp, &__t1604)? { Value::bool(false) } else { let __t1605 = { let __t1602 = { let __t1578 = { let __t1577 = v_V2000.clone(); rt::hd(&__t1577)? }; rt::is_cons(&__t1578) }; if !rt::is_truthy(interp, &__t1602)? { Value::bool(false) } else { let __t1603 = { let __t1600 = { let __t1579 = Value::sym(interp.intern("cons")); let __t1582 = { let __t1581 = { let __t1580 = v_V2000.clone(); rt::hd(&__t1580)? }; rt::hd(&__t1581)? }; rt::eq(&__t1579, &__t1582) }; if !rt::is_truthy(interp, &__t1600)? { Value::bool(false) } else { let __t1601 = { let __t1598 = { let __t1585 = { let __t1584 = { let __t1583 = v_V2000.clone(); rt::hd(&__t1583)? }; rt::tl(&__t1584)? }; rt::is_cons(&__t1585) }; if !rt::is_truthy(interp, &__t1598)? { Value::bool(false) } else { let __t1599 = { let __t1596 = { let __t1589 = { let __t1588 = { let __t1587 = { let __t1586 = v_V2000.clone(); rt::hd(&__t1586)? }; rt::tl(&__t1587)? }; rt::tl(&__t1588)? }; rt::is_cons(&__t1589) }; if !rt::is_truthy(interp, &__t1596)? { Value::bool(false) } else { let __t1597 = { let __t1590 = Value::nil(); let __t1595 = { let __t1594 = { let __t1593 = { let __t1592 = { let __t1591 = v_V2000.clone(); rt::hd(&__t1591)? }; rt::tl(&__t1592)? }; rt::tl(&__t1593)? }; rt::tl(&__t1594)? }; rt::eq(&__t1590, &__t1595) }; Value::bool(rt::is_truthy(interp, &__t1597)?) } }; Value::bool(rt::is_truthy(interp, &__t1599)?) } }; Value::bool(rt::is_truthy(interp, &__t1601)?) } }; Value::bool(rt::is_truthy(interp, &__t1603)?) } }; Value::bool(rt::is_truthy(interp, &__t1605)?) } + if !rt::is_truthy(interp, &__t1604)? { Value::bool(false) } else { let __t1605 = { let __t1602 = { let __t1578 = { let __t1577 = v_V1654.clone(); rt::hd(&__t1577)? }; rt::is_cons(&__t1578) }; if !rt::is_truthy(interp, &__t1602)? { Value::bool(false) } else { let __t1603 = { let __t1600 = { let __t1579 = Value::sym(interp.intern("cons")); let __t1582 = { let __t1581 = { let __t1580 = v_V1654.clone(); rt::hd(&__t1580)? }; rt::hd(&__t1581)? }; rt::eq(&__t1579, &__t1582) }; if !rt::is_truthy(interp, &__t1600)? { Value::bool(false) } else { let __t1601 = { let __t1598 = { let __t1585 = { let __t1584 = { let __t1583 = v_V1654.clone(); rt::hd(&__t1583)? }; rt::tl(&__t1584)? }; rt::is_cons(&__t1585) }; if !rt::is_truthy(interp, &__t1598)? { Value::bool(false) } else { let __t1599 = { let __t1596 = { let __t1589 = { let __t1588 = { let __t1587 = { let __t1586 = v_V1654.clone(); rt::hd(&__t1586)? }; rt::tl(&__t1587)? }; rt::tl(&__t1588)? }; rt::is_cons(&__t1589) }; if !rt::is_truthy(interp, &__t1596)? { Value::bool(false) } else { let __t1597 = { let __t1590 = Value::nil(); let __t1595 = { let __t1594 = { let __t1593 = { let __t1592 = { let __t1591 = v_V1654.clone(); rt::hd(&__t1591)? }; rt::tl(&__t1592)? }; rt::tl(&__t1593)? }; rt::tl(&__t1594)? }; rt::eq(&__t1590, &__t1595) }; Value::bool(rt::is_truthy(interp, &__t1597)?) } }; Value::bool(rt::is_truthy(interp, &__t1599)?) } }; Value::bool(rt::is_truthy(interp, &__t1601)?) } }; Value::bool(rt::is_truthy(interp, &__t1603)?) } }; Value::bool(rt::is_truthy(interp, &__t1605)?) } }; Value::bool(rt::is_truthy(interp, &__t1607)?) } @@ -7887,19 +7887,19 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ let __t1608 = - v_V2000 + v_V1654 .clone( ); let __t1609 = - v_V2001 + v_V1655 .clone( ); let __t1610 = - v_V2002 + v_V1656 .clone( ); let __t1611 = - v_V2003 + v_V1657 .clone( ); rt::apply_direct(interp, "shen.cons-case-minus", &[__t1608, __t1609, __t1610, __t1611])? @@ -7909,12 +7909,12 @@ pub fn aot_shen_x2e_compile_x2d_head(interp: &mut Interp, args: &[Value]) -> She let __t1573 = { let __t1567 = { let __t1560 = Value::sym(interp.intern("shen.+m")); - let __t1561 = v_V1999.clone(); + let __t1561 = v_V1653.clone(); rt::eq(&__t1560, &__t1561) }; - if !rt::is_truthy(interp, &__t1567)? { Value::bool(false) } else { let __t1568 = { let __t1565 = { let __t1562 = v_V2000.clone(); rt::is_cons(&__t1562) }; if !rt::is_truthy(interp, &__t1565)? { Value::bool(false) } else { let __t1566 = { let __t1564 = { let __t1563 = v_V2000.clone(); rt::hd(&__t1563)? }; rt::apply_direct(interp, "atom?", &[__t1564])? }; Value::bool(rt::is_truthy(interp, &__t1566)?) } }; Value::bool(rt::is_truthy(interp, &__t1568)?) } + if !rt::is_truthy(interp, &__t1567)? { Value::bool(false) } else { let __t1568 = { let __t1565 = { let __t1562 = v_V1654.clone(); rt::is_cons(&__t1562) }; if !rt::is_truthy(interp, &__t1565)? { Value::bool(false) } else { let __t1566 = { let __t1564 = { let __t1563 = v_V1654.clone(); rt::hd(&__t1563)? }; rt::apply_direct(interp, "atom?", &[__t1564])? }; Value::bool(rt::is_truthy(interp, &__t1566)?) } }; Value::bool(rt::is_truthy(interp, &__t1568)?) } }; - if match rt::is_truthy(interp, &__t1573) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1569 = v_V2000.clone(); let __t1570 = v_V2001.clone(); let __t1571 = v_V2002.clone(); let __t1572 = v_V2003.clone(); rt::apply_direct(interp, "shen.atom-case-plus", &[__t1569, __t1570, __t1571, __t1572])? }); } else { { let __t1559 = { let __t1553 = { let __t1521 = Value::sym(interp.intern("shen.+m")); let __t1522 = v_V1999.clone(); rt::eq(&__t1521, &__t1522) }; if !rt::is_truthy(interp, &__t1553)? { Value::bool(false) } else { let __t1554 = { let __t1551 = { let __t1523 = v_V2000.clone(); rt::is_cons(&__t1523) }; if !rt::is_truthy(interp, &__t1551)? { Value::bool(false) } else { let __t1552 = { let __t1549 = { let __t1525 = { let __t1524 = v_V2000.clone(); rt::hd(&__t1524)? }; rt::is_cons(&__t1525) }; if !rt::is_truthy(interp, &__t1549)? { Value::bool(false) } else { let __t1550 = { let __t1547 = { let __t1526 = Value::sym(interp.intern("cons")); let __t1529 = { let __t1528 = { let __t1527 = v_V2000.clone(); rt::hd(&__t1527)? }; rt::hd(&__t1528)? }; rt::eq(&__t1526, &__t1529) }; if !rt::is_truthy(interp, &__t1547)? { Value::bool(false) } else { let __t1548 = { let __t1545 = { let __t1532 = { let __t1531 = { let __t1530 = v_V2000.clone(); rt::hd(&__t1530)? }; rt::tl(&__t1531)? }; rt::is_cons(&__t1532) }; if !rt::is_truthy(interp, &__t1545)? { Value::bool(false) } else { let __t1546 = { let __t1543 = { let __t1536 = { let __t1535 = { let __t1534 = { let __t1533 = v_V2000.clone(); rt::hd(&__t1533)? }; rt::tl(&__t1534)? }; rt::tl(&__t1535)? }; rt::is_cons(&__t1536) }; if !rt::is_truthy(interp, &__t1543)? { Value::bool(false) } else { let __t1544 = { let __t1537 = Value::nil(); let __t1542 = { let __t1541 = { let __t1540 = { let __t1539 = { let __t1538 = v_V2000.clone(); rt::hd(&__t1538)? }; rt::tl(&__t1539)? }; rt::tl(&__t1540)? }; rt::tl(&__t1541)? }; rt::eq(&__t1537, &__t1542) }; Value::bool(rt::is_truthy(interp, &__t1544)?) } }; Value::bool(rt::is_truthy(interp, &__t1546)?) } }; Value::bool(rt::is_truthy(interp, &__t1548)?) } }; Value::bool(rt::is_truthy(interp, &__t1550)?) } }; Value::bool(rt::is_truthy(interp, &__t1552)?) } }; Value::bool(rt::is_truthy(interp, &__t1554)?) } }; if match rt::is_truthy(interp, &__t1559) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1555 = v_V2000.clone(); let __t1556 = v_V2001.clone(); let __t1557 = v_V2002.clone(); let __t1558 = v_V2003.clone(); rt::apply_direct(interp, "shen.cons-case-plus", &[__t1555, __t1556, __t1557, __t1558])? }); } else { { let __t1520 = Value::bool(true); if match rt::is_truthy(interp, &__t1520) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1519 = Value::str("implementation error in shen.compile-head"); rt::apply_direct(interp, "simple-error", &[__t1519])? }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } + if match rt::is_truthy(interp, &__t1573) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1569 = v_V1654.clone(); let __t1570 = v_V1655.clone(); let __t1571 = v_V1656.clone(); let __t1572 = v_V1657.clone(); rt::apply_direct(interp, "shen.atom-case-plus", &[__t1569, __t1570, __t1571, __t1572])? }); } else { { let __t1559 = { let __t1553 = { let __t1521 = Value::sym(interp.intern("shen.+m")); let __t1522 = v_V1653.clone(); rt::eq(&__t1521, &__t1522) }; if !rt::is_truthy(interp, &__t1553)? { Value::bool(false) } else { let __t1554 = { let __t1551 = { let __t1523 = v_V1654.clone(); rt::is_cons(&__t1523) }; if !rt::is_truthy(interp, &__t1551)? { Value::bool(false) } else { let __t1552 = { let __t1549 = { let __t1525 = { let __t1524 = v_V1654.clone(); rt::hd(&__t1524)? }; rt::is_cons(&__t1525) }; if !rt::is_truthy(interp, &__t1549)? { Value::bool(false) } else { let __t1550 = { let __t1547 = { let __t1526 = Value::sym(interp.intern("cons")); let __t1529 = { let __t1528 = { let __t1527 = v_V1654.clone(); rt::hd(&__t1527)? }; rt::hd(&__t1528)? }; rt::eq(&__t1526, &__t1529) }; if !rt::is_truthy(interp, &__t1547)? { Value::bool(false) } else { let __t1548 = { let __t1545 = { let __t1532 = { let __t1531 = { let __t1530 = v_V1654.clone(); rt::hd(&__t1530)? }; rt::tl(&__t1531)? }; rt::is_cons(&__t1532) }; if !rt::is_truthy(interp, &__t1545)? { Value::bool(false) } else { let __t1546 = { let __t1543 = { let __t1536 = { let __t1535 = { let __t1534 = { let __t1533 = v_V1654.clone(); rt::hd(&__t1533)? }; rt::tl(&__t1534)? }; rt::tl(&__t1535)? }; rt::is_cons(&__t1536) }; if !rt::is_truthy(interp, &__t1543)? { Value::bool(false) } else { let __t1544 = { let __t1537 = Value::nil(); let __t1542 = { let __t1541 = { let __t1540 = { let __t1539 = { let __t1538 = v_V1654.clone(); rt::hd(&__t1538)? }; rt::tl(&__t1539)? }; rt::tl(&__t1540)? }; rt::tl(&__t1541)? }; rt::eq(&__t1537, &__t1542) }; Value::bool(rt::is_truthy(interp, &__t1544)?) } }; Value::bool(rt::is_truthy(interp, &__t1546)?) } }; Value::bool(rt::is_truthy(interp, &__t1548)?) } }; Value::bool(rt::is_truthy(interp, &__t1550)?) } }; Value::bool(rt::is_truthy(interp, &__t1552)?) } }; Value::bool(rt::is_truthy(interp, &__t1554)?) } }; if match rt::is_truthy(interp, &__t1559) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1555 = v_V1654.clone(); let __t1556 = v_V1655.clone(); let __t1557 = v_V1656.clone(); let __t1558 = v_V1657.clone(); rt::apply_direct(interp, "shen.cons-case-plus", &[__t1555, __t1556, __t1557, __t1558])? }); } else { { let __t1520 = Value::bool(true); if match rt::is_truthy(interp, &__t1520) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t1519 = Value::str("implementation error in shen.compile-head"); rt::apply_direct(interp, "simple-error", &[__t1519])? }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } } } @@ -7951,28 +7951,28 @@ pub fn aot_shen_x2e_variable_x2d_case(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V2014 = args[0].clone(); + let mut v_V1668 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2015 = args[1].clone(); + let mut v_V1669 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2016 = args[2].clone(); + let mut v_V1670 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2017 = args[3].clone(); + let mut v_V1671 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2018 = args[4].clone(); + let mut v_V1672 = args[4].clone(); #[allow(clippy::never_loop)] loop { { let __t1803 = { let __t1769 = { - let __t1767 = v_V2015.clone(); + let __t1767 = v_V1669.clone(); rt::is_cons(&__t1767) }; if !rt::is_truthy(interp, &__t1769)? { Value::bool(false) } else { let __t1770 = { - let __t1768 = v_V2016.clone(); + let __t1768 = v_V1670.clone(); rt::is_cons(&__t1768) }; Value::bool(rt::is_truthy(interp, &__t1770)?) @@ -7985,7 +7985,7 @@ pub fn aot_shen_x2e_variable_x2d_case(interp: &mut Interp, args: &[Value]) -> Sh { let __t1773 = { let __t1772 = { - let __t1771 = v_V2016.clone(); + let __t1771 = v_V1670.clone(); rt::hd(&__t1771)? }; rt::apply_direct(interp, "variable?", &[__t1772])? @@ -7995,26 +7995,26 @@ pub fn aot_shen_x2e_variable_x2d_case(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { break Ok({ - let __t1774 = v_V2014.clone(); + let __t1774 = v_V1668.clone(); let __t1776 = { - let __t1775 = v_V2015.clone(); + let __t1775 = v_V1669.clone(); rt::tl(&__t1775)? }; let __t1778 = { - let __t1777 = v_V2016.clone(); + let __t1777 = v_V1670.clone(); rt::tl(&__t1777)? }; - let __t1779 = v_V2017.clone(); + let __t1779 = v_V1671.clone(); let __t1785 = { let __t1781 = { - let __t1780 = v_V2016.clone(); + let __t1780 = v_V1670.clone(); rt::hd(&__t1780)? }; let __t1783 = { - let __t1782 = v_V2015.clone(); + let __t1782 = v_V1669.clone(); rt::hd(&__t1782)? }; - let __t1784 = v_V2018.clone(); + let __t1784 = v_V1672.clone(); rt::apply_direct(interp, "subst", &[__t1781, __t1783, __t1784])? }; rt::apply_direct( @@ -8028,27 +8028,27 @@ pub fn aot_shen_x2e_variable_x2d_case(interp: &mut Interp, args: &[Value]) -> Sh let __t1786 = Value::sym(interp.intern("let")); let __t1802 = { let __t1788 = { - let __t1787 = v_V2015.clone(); + let __t1787 = v_V1669.clone(); rt::hd(&__t1787)? }; let __t1801 = { let __t1790 = { - let __t1789 = v_V2016.clone(); + let __t1789 = v_V1670.clone(); rt::hd(&__t1789)? }; let __t1800 = { let __t1798 = { - let __t1791 = v_V2014.clone(); + let __t1791 = v_V1668.clone(); let __t1793 = { - let __t1792 = v_V2015.clone(); + let __t1792 = v_V1669.clone(); rt::tl(&__t1792)? }; let __t1795 = { - let __t1794 = v_V2016.clone(); + let __t1794 = v_V1670.clone(); rt::tl(&__t1794)? }; - let __t1796 = v_V2017.clone(); - let __t1797 = v_V2018.clone(); + let __t1796 = v_V1671.clone(); + let __t1797 = v_V1672.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -8103,26 +8103,26 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_minus( ))); } #[allow(unused_mut)] - let mut v_V2027 = args[0].clone(); + let mut v_V1681 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2028 = args[1].clone(); + let mut v_V1682 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2029 = args[2].clone(); + let mut v_V1683 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2030 = args[3].clone(); + let mut v_V1684 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t1848 = { let __t1808 = { - let __t1806 = v_V2027.clone(); + let __t1806 = v_V1681.clone(); rt::is_cons(&__t1806) }; if !rt::is_truthy(interp, &__t1808)? { Value::bool(false) } else { let __t1809 = { - let __t1807 = v_V2028.clone(); + let __t1807 = v_V1682.clone(); rt::is_cons(&__t1807) }; Value::bool(rt::is_truthy(interp, &__t1809)?) @@ -8133,24 +8133,24 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_minus( Err(e) => break Err(e), } { { - let v_W2031 = { + let v_W1685 = { let __t1810 = Value::sym(interp.intern("Tm")); rt::apply_direct(interp, "gensym", &[__t1810])? }; break Ok({ let __t1811 = Value::sym(interp.intern("let")); let __t1847 = { - let __t1812 = v_W2031.clone(); + let __t1812 = v_W1685.clone(); let __t1846 = { let __t1820 = { let __t1813 = Value::sym(interp.intern("shen.lazyderef")); let __t1819 = { let __t1815 = { - let __t1814 = v_V2028.clone(); + let __t1814 = v_V1682.clone(); rt::hd(&__t1814)? }; let __t1818 = { - let __t1816 = v_V2029.clone(); + let __t1816 = v_V1683.clone(); let __t1817 = Value::nil(); rt::cons(&__t1816, &__t1817) }; @@ -8165,10 +8165,10 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_minus( let __t1829 = { let __t1822 = Value::sym(interp.intern("=")); let __t1828 = { - let __t1823 = v_W2031.clone(); + let __t1823 = v_W1685.clone(); let __t1827 = { let __t1825 = { - let __t1824 = v_V2027.clone(); + let __t1824 = v_V1681.clone(); rt::hd(&__t1824)? }; let __t1826 = Value::nil(); @@ -8183,15 +8183,15 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_minus( let __t1830 = Value::sym(interp.intern("shen.-m")); let __t1832 = { - let __t1831 = v_V2027.clone(); + let __t1831 = v_V1681.clone(); rt::tl(&__t1831)? }; let __t1834 = { - let __t1833 = v_V2028.clone(); + let __t1833 = v_V1682.clone(); rt::tl(&__t1833)? }; - let __t1835 = v_V2029.clone(); - let __t1836 = v_V2030.clone(); + let __t1835 = v_V1683.clone(); + let __t1836 = v_V1684.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -8264,19 +8264,19 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( ))); } #[allow(unused_mut)] - let mut v_V2040 = args[0].clone(); + let mut v_V1694 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2041 = args[1].clone(); + let mut v_V1695 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2042 = args[2].clone(); + let mut v_V1696 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2043 = args[3].clone(); + let mut v_V1697 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t1942 = { let __t1882 = { - let __t1851 = v_V2040.clone(); + let __t1851 = v_V1694.clone(); rt::is_cons(&__t1851) }; if !rt::is_truthy(interp, &__t1882)? { @@ -8285,7 +8285,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1883 = { let __t1880 = { let __t1853 = { - let __t1852 = v_V2040.clone(); + let __t1852 = v_V1694.clone(); rt::hd(&__t1852)? }; rt::is_cons(&__t1853) @@ -8298,7 +8298,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1854 = Value::sym(interp.intern("cons")); let __t1857 = { let __t1856 = { - let __t1855 = v_V2040.clone(); + let __t1855 = v_V1694.clone(); rt::hd(&__t1855)? }; rt::hd(&__t1856)? @@ -8312,7 +8312,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1876 = { let __t1860 = { let __t1859 = { - let __t1858 = v_V2040.clone(); + let __t1858 = v_V1694.clone(); rt::hd(&__t1858)? }; rt::tl(&__t1859)? @@ -8327,7 +8327,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1864 = { let __t1863 = { let __t1862 = { - let __t1861 = v_V2040.clone(); + let __t1861 = v_V1694.clone(); rt::hd(&__t1861)? }; rt::tl(&__t1862)? @@ -8347,7 +8347,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1868 = { let __t1867 = { let __t1866 = - v_V2040.clone(); + v_V1694.clone(); rt::hd(&__t1866)? }; rt::tl(&__t1867)? @@ -8362,7 +8362,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( Value::bool(false) } else { let __t1873 = { - let __t1871 = v_V2041.clone(); + let __t1871 = v_V1695.clone(); rt::is_cons(&__t1871) }; Value::bool(rt::is_truthy( @@ -8390,24 +8390,24 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( Err(e) => break Err(e), } { { - let v_W2044 = { + let v_W1698 = { let __t1884 = Value::sym(interp.intern("Tm")); rt::apply_direct(interp, "gensym", &[__t1884])? }; break Ok({ let __t1885 = Value::sym(interp.intern("let")); let __t1941 = { - let __t1886 = v_W2044.clone(); + let __t1886 = v_W1698.clone(); let __t1940 = { let __t1894 = { let __t1887 = Value::sym(interp.intern("shen.lazyderef")); let __t1893 = { let __t1889 = { - let __t1888 = v_V2041.clone(); + let __t1888 = v_V1695.clone(); rt::hd(&__t1888)? }; let __t1892 = { - let __t1890 = v_V2042.clone(); + let __t1890 = v_V1696.clone(); let __t1891 = Value::nil(); rt::cons(&__t1890, &__t1891) }; @@ -8422,7 +8422,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1900 = { let __t1896 = Value::sym(interp.intern("cons?")); let __t1899 = { - let __t1897 = v_W2044.clone(); + let __t1897 = v_W1698.clone(); let __t1898 = Value::nil(); rt::cons(&__t1897, &__t1898) }; @@ -8436,7 +8436,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1905 = { let __t1904 = { let __t1903 = { - let __t1902 = v_V2040.clone(); + let __t1902 = v_V1694.clone(); rt::hd(&__t1902)? }; rt::tl(&__t1903)? @@ -8449,7 +8449,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1908 = { let __t1907 = { let __t1906 = - v_V2040.clone(); + v_V1694.clone(); rt::hd(&__t1906)? }; rt::tl(&__t1907)? @@ -8459,7 +8459,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( rt::hd(&__t1909)? }; let __t1912 = { - let __t1911 = v_V2040.clone(); + let __t1911 = v_V1694.clone(); rt::tl(&__t1911)? }; rt::cons(&__t1910, &__t1912) @@ -8471,7 +8471,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1915 = Value::sym(interp.intern("hd")); let __t1918 = { - let __t1916 = v_W2044.clone(); + let __t1916 = v_W1698.clone(); let __t1917 = Value::nil(); rt::cons(&__t1916, &__t1917) }; @@ -8482,22 +8482,22 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_minus( let __t1920 = Value::sym(interp.intern("tl")); let __t1923 = { - let __t1921 = v_W2044.clone(); + let __t1921 = v_W1698.clone(); let __t1922 = Value::nil(); rt::cons(&__t1921, &__t1922) }; rt::cons(&__t1920, &__t1923) }; let __t1926 = { - let __t1925 = v_V2041.clone(); + let __t1925 = v_V1695.clone(); rt::tl(&__t1925)? }; rt::cons(&__t1924, &__t1926) }; rt::cons(&__t1919, &__t1927) }; - let __t1929 = v_V2042.clone(); - let __t1930 = v_V2043.clone(); + let __t1929 = v_V1696.clone(); + let __t1930 = v_V1697.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -8570,26 +8570,26 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( ))); } #[allow(unused_mut)] - let mut v_V2053 = args[0].clone(); + let mut v_V1707 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2054 = args[1].clone(); + let mut v_V1708 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2055 = args[2].clone(); + let mut v_V1709 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2056 = args[3].clone(); + let mut v_V1710 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t2024 = { let __t1947 = { - let __t1945 = v_V2053.clone(); + let __t1945 = v_V1707.clone(); rt::is_cons(&__t1945) }; if !rt::is_truthy(interp, &__t1947)? { Value::bool(false) } else { let __t1948 = { - let __t1946 = v_V2054.clone(); + let __t1946 = v_V1708.clone(); rt::is_cons(&__t1946) }; Value::bool(rt::is_truthy(interp, &__t1948)?) @@ -8600,29 +8600,29 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( Err(e) => break Err(e), } { { - let v_W2057 = { + let v_W1711 = { let __t1949 = Value::sym(interp.intern("Tm")); rt::apply_direct(interp, "gensym", &[__t1949])? }; { - let v_W2058 = { + let v_W1712 = { let __t1950 = Value::sym(interp.intern("GoTo")); rt::apply_direct(interp, "gensym", &[__t1950])? }; break Ok({ let __t1951 = Value::sym(interp.intern("let")); let __t2023 = { - let __t1952 = v_W2057.clone(); + let __t1952 = v_W1711.clone(); let __t2022 = { let __t1960 = { let __t1953 = Value::sym(interp.intern("shen.lazyderef")); let __t1959 = { let __t1955 = { - let __t1954 = v_V2054.clone(); + let __t1954 = v_V1708.clone(); rt::hd(&__t1954)? }; let __t1958 = { - let __t1956 = v_V2055.clone(); + let __t1956 = v_V1709.clone(); let __t1957 = Value::nil(); rt::cons(&__t1956, &__t1957) }; @@ -8631,7 +8631,7 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( rt::cons(&__t1953, &__t1959) }; let __t2021 = { - let __t1961 = v_W2058.clone(); + let __t1961 = v_W1712.clone(); let __t2020 = { let __t1973 = { let __t1962 = Value::sym(interp.intern("freeze")); @@ -8640,15 +8640,15 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( let __t1963 = Value::sym(interp.intern("shen.+m")); let __t1965 = { - let __t1964 = v_V2053.clone(); + let __t1964 = v_V1707.clone(); rt::tl(&__t1964)? }; let __t1967 = { - let __t1966 = v_V2054.clone(); + let __t1966 = v_V1708.clone(); rt::tl(&__t1966)? }; - let __t1968 = v_V2055.clone(); - let __t1969 = v_V2056.clone(); + let __t1968 = v_V1709.clone(); + let __t1969 = v_V1710.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -8671,11 +8671,11 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( let __t1975 = Value::sym(interp.intern("=")); let __t1981 = { - let __t1976 = v_W2057.clone(); + let __t1976 = v_W1711.clone(); let __t1980 = { let __t1978 = { let __t1977 = - v_V2053.clone(); + v_V1707.clone(); rt::hd(&__t1977)? }; let __t1979 = Value::nil(); @@ -8691,7 +8691,7 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( interp.intern("thaw"), ); let __t1986 = { - let __t1984 = v_W2058.clone(); + let __t1984 = v_W1712.clone(); let __t1985 = Value::nil(); rt::cons(&__t1984, &__t1985) }; @@ -8707,7 +8707,7 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( let __t1989 = Value::sym(interp.intern("shen.pvar?")); let __t1992 = { let __t1990 = - v_W2057.clone(); + v_W1711.clone(); let __t1991 = Value::nil(); rt::cons( @@ -8724,21 +8724,21 @@ pub fn aot_shen_x2e_atom_x2d_case_x2d_plus( let __t1994 = Value::sym(interp.intern("shen.bind!")); let __t2005 = { let __t1995 = - v_W2057 + v_W1711 .clone( ); let __t2004 = { let __t1998 = { let __t1997 = { - let __t1996 = v_V2053.clone(); + let __t1996 = v_V1707.clone(); rt::hd(&__t1996)? }; rt::apply_direct(interp, "shen.demode", &[__t1997])? }; let __t2003 = { - let __t1999 = v_V2055.clone(); + let __t1999 = v_V1709.clone(); let __t2002 = { - let __t2000 = v_W2058.clone(); + let __t2000 = v_W1712.clone(); let __t2001 = Value::nil(); rt::cons(&__t2000, &__t2001) }; @@ -8841,19 +8841,19 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( ))); } #[allow(unused_mut)] - let mut v_V2067 = args[0].clone(); + let mut v_V1721 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2068 = args[1].clone(); + let mut v_V1722 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2069 = args[2].clone(); + let mut v_V1723 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2070 = args[3].clone(); + let mut v_V1724 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t2168 = { let __t2058 = { - let __t2027 = v_V2067.clone(); + let __t2027 = v_V1721.clone(); rt::is_cons(&__t2027) }; if !rt::is_truthy(interp, &__t2058)? { @@ -8862,7 +8862,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2059 = { let __t2056 = { let __t2029 = { - let __t2028 = v_V2067.clone(); + let __t2028 = v_V1721.clone(); rt::hd(&__t2028)? }; rt::is_cons(&__t2029) @@ -8875,7 +8875,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2030 = Value::sym(interp.intern("cons")); let __t2033 = { let __t2032 = { - let __t2031 = v_V2067.clone(); + let __t2031 = v_V1721.clone(); rt::hd(&__t2031)? }; rt::hd(&__t2032)? @@ -8889,7 +8889,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2052 = { let __t2036 = { let __t2035 = { - let __t2034 = v_V2067.clone(); + let __t2034 = v_V1721.clone(); rt::hd(&__t2034)? }; rt::tl(&__t2035)? @@ -8904,7 +8904,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2040 = { let __t2039 = { let __t2038 = { - let __t2037 = v_V2067.clone(); + let __t2037 = v_V1721.clone(); rt::hd(&__t2037)? }; rt::tl(&__t2038)? @@ -8924,7 +8924,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2044 = { let __t2043 = { let __t2042 = - v_V2067.clone(); + v_V1721.clone(); rt::hd(&__t2042)? }; rt::tl(&__t2043)? @@ -8939,7 +8939,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( Value::bool(false) } else { let __t2049 = { - let __t2047 = v_V2068.clone(); + let __t2047 = v_V1722.clone(); rt::is_cons(&__t2047) }; Value::bool(rt::is_truthy( @@ -8967,22 +8967,22 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( Err(e) => break Err(e), } { { - let v_W2071 = { + let v_W1725 = { let __t2060 = Value::sym(interp.intern("Tm")); rt::apply_direct(interp, "gensym", &[__t2060])? }; { - let v_W2072 = { + let v_W1726 = { let __t2061 = Value::sym(interp.intern("GoTo")); rt::apply_direct(interp, "gensym", &[__t2061])? }; { - let v_W2073 = { + let v_W1727 = { let __t2071 = { let __t2065 = { let __t2064 = { let __t2063 = { - let __t2062 = v_V2067.clone(); + let __t2062 = v_V1721.clone(); rt::hd(&__t2062)? }; rt::tl(&__t2063)? @@ -8993,7 +8993,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2069 = { let __t2068 = { let __t2067 = { - let __t2066 = v_V2067.clone(); + let __t2066 = v_V1721.clone(); rt::hd(&__t2066)? }; rt::tl(&__t2067)? @@ -9007,33 +9007,33 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( rt::apply_direct(interp, "shen.extract-vars", &[__t2071])? }; { - let v_W2074 = { + let v_W1728 = { let __t2073 = { - let __t2072 = v_V2067.clone(); + let __t2072 = v_V1721.clone(); rt::hd(&__t2072)? }; rt::apply_direct(interp, "shen.tame", &[__t2073])? }; { - let v_W2075 = { - let __t2074 = v_W2074.clone(); + let v_W1729 = { + let __t2074 = v_W1728.clone(); rt::apply_direct(interp, "shen.extract-vars", &[__t2074])? }; break Ok({ let __t2075 = Value::sym(interp.intern("let")); let __t2167 = { - let __t2076 = v_W2071.clone(); + let __t2076 = v_W1725.clone(); let __t2166 = { let __t2084 = { let __t2077 = Value::sym(interp.intern("shen.lazyderef")); let __t2083 = { let __t2079 = { - let __t2078 = v_V2068.clone(); + let __t2078 = v_V1722.clone(); rt::hd(&__t2078)? }; let __t2082 = { - let __t2080 = v_V2069.clone(); + let __t2080 = v_V1723.clone(); let __t2081 = Value::nil(); rt::cons(&__t2080, &__t2081) }; @@ -9042,24 +9042,24 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( rt::cons(&__t2077, &__t2083) }; let __t2165 = { - let __t2085 = v_W2072.clone(); + let __t2085 = v_W1726.clone(); let __t2164 = { let __t2095 = { - let __t2086 = v_W2073.clone(); + let __t2086 = v_W1727.clone(); let __t2094 = { let __t2087 = Value::sym( interp.intern("shen.+m"), ); let __t2089 = { - let __t2088 = v_V2067.clone(); + let __t2088 = v_V1721.clone(); rt::tl(&__t2088)? }; let __t2091 = { - let __t2090 = v_V2068.clone(); + let __t2090 = v_V1722.clone(); rt::tl(&__t2090)? }; - let __t2092 = v_V2069.clone(); - let __t2093 = v_V2070.clone(); + let __t2092 = v_V1723.clone(); + let __t2093 = v_V1724.clone(); rt::apply_direct( interp, "shen.compile-head", @@ -9086,7 +9086,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( ); let __t2100 = { let __t2098 = - v_W2071.clone(); + v_W1725.clone(); let __t2099 = Value::nil(); rt::cons( @@ -9106,7 +9106,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2105 = { let __t2104 = { let __t2103 = - v_V2067 + v_V1721 .clone( ); rt::hd( @@ -9119,7 +9119,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2110 = { let __t2106 = Value::sym(interp.intern("hd")); let __t2109 = { - let __t2107 = v_W2071.clone(); + let __t2107 = v_W1725.clone(); let __t2108 = Value::nil(); rt::cons(&__t2107, &__t2108) }; @@ -9132,7 +9132,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2115 = { let __t2111 = Value::sym(interp.intern("tl")); let __t2114 = { - let __t2112 = v_W2071.clone(); + let __t2112 = v_W1725.clone(); let __t2113 = Value::nil(); rt::cons(&__t2112, &__t2113) }; @@ -9152,12 +9152,12 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( ) }; let __t2119 = - v_V2069.clone(); + v_V1723.clone(); let __t2122 = { let __t2120 = - v_W2072.clone(); + v_W1726.clone(); let __t2121 = - v_W2073.clone(); + v_W1727.clone(); rt::apply_direct( interp, "shen.invoke", @@ -9192,7 +9192,7 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( let __t2129 = { let __t2125 = Value::sym(interp.intern("shen.pvar?")); let __t2128 = { - let __t2126 = v_W2071.clone(); + let __t2126 = v_W1725.clone(); let __t2127 = Value::nil(); rt::cons(&__t2126, &__t2127) }; @@ -9200,13 +9200,13 @@ pub fn aot_shen_x2e_cons_x2d_case_x2d_plus( }; let __t2154 = { let __t2150 = { - let __t2130 = v_W2075.clone(); + let __t2130 = v_W1729.clone(); let __t2148 = { let __t2131 = Value::sym(interp.intern("shen.bind!")); - let __t2147 = { let __t2132 = v_W2071.clone(); let __t2146 = { let __t2134 = { let __t2133 = v_W2074.clone(); rt::apply_direct(interp, "shen.demode", &[__t2133])? }; let __t2145 = { let __t2135 = v_V2069.clone(); let __t2144 = { let __t2142 = { let __t2136 = Value::sym(interp.intern("freeze")); let __t2141 = { let __t2139 = { let __t2137 = v_W2072.clone(); let __t2138 = v_W2073.clone(); rt::apply_direct(interp, "shen.invoke", &[__t2137, __t2138])? }; let __t2140 = Value::nil(); rt::cons(&__t2139, &__t2140) }; rt::cons(&__t2136, &__t2141) }; let __t2143 = Value::nil(); rt::cons(&__t2142, &__t2143) }; rt::cons(&__t2135, &__t2144) }; rt::cons(&__t2134, &__t2145) }; rt::cons(&__t2132, &__t2146) }; + let __t2147 = { let __t2132 = v_W1725.clone(); let __t2146 = { let __t2134 = { let __t2133 = v_W1728.clone(); rt::apply_direct(interp, "shen.demode", &[__t2133])? }; let __t2145 = { let __t2135 = v_V1723.clone(); let __t2144 = { let __t2142 = { let __t2136 = Value::sym(interp.intern("freeze")); let __t2141 = { let __t2139 = { let __t2137 = v_W1726.clone(); let __t2138 = v_W1727.clone(); rt::apply_direct(interp, "shen.invoke", &[__t2137, __t2138])? }; let __t2140 = Value::nil(); rt::cons(&__t2139, &__t2140) }; rt::cons(&__t2136, &__t2141) }; let __t2143 = Value::nil(); rt::cons(&__t2142, &__t2143) }; rt::cons(&__t2135, &__t2144) }; rt::cons(&__t2134, &__t2145) }; rt::cons(&__t2132, &__t2146) }; rt::cons(&__t2131, &__t2147) }; - let __t2149 = v_V2069.clone(); + let __t2149 = v_V1723.clone(); rt::apply_direct(interp, "shen.stpart", &[__t2130, __t2148, __t2149])? }; let __t2153 = { @@ -9294,13 +9294,13 @@ pub fn aot_shen_x2e_demode(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult ShenResult", 1, move |interp, args| { - let v_Z2077 = args[0].clone(); + let v_Z1731 = args[0].clone(); Ok({ - let __t2171 = v_Z2077.clone(); + let __t2171 = v_Z1731.clone(); rt::apply_direct( interp, "shen.demode", @@ -9462,7 +9462,7 @@ pub fn aot_shen_x2e_demode(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V2076.clone()); + break Ok(v_V1730.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -9500,12 +9500,12 @@ pub fn aot_shen_x2e_tame(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult", 1, move |interp, args| { - let v_Z2079 = args[0].clone(); + let v_Z1733 = args[0].clone(); Ok({ - let __t2217 = v_Z2079.clone(); + let __t2217 = v_Z1733.clone(); rt::apply_direct(interp, "shen.tame", &[__t2217])? }) }, @@ -9542,7 +9542,7 @@ pub fn aot_shen_x2e_tame(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V2078.clone()); + break Ok(v_V1732.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -9578,15 +9578,15 @@ pub fn aot_shen_x2e_goto(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t2224 = v_V2080.clone(); - let __t2225 = v_V2081.clone(); + let __t2224 = v_V1734.clone(); + let __t2225 = v_V1735.clone(); rt::apply_direct(interp, "shen.goto-h", &[__t2224, __t2225])? }); } else { @@ -9637,26 +9637,26 @@ pub fn aot_shen_x2e_goto_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V2082 = args[0].clone(); + let mut v_V1736 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2083 = args[1].clone(); + let mut v_V1737 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t2250 = { let __t2248 = Value::nil(); - let __t2249 = v_V2082.clone(); + let __t2249 = v_V1736.clone(); rt::eq(&__t2248, &__t2249) }; if match rt::is_truthy(interp, &__t2250) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V2083.clone()); + break Ok(v_V1737.clone()); } else { { let __t2247 = { - let __t2236 = v_V2082.clone(); + let __t2236 = v_V1736.clone(); rt::is_cons(&__t2236) }; if match rt::is_truthy(interp, &__t2247) { @@ -9667,16 +9667,16 @@ pub fn aot_shen_x2e_goto_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul let __t2237 = Value::sym(interp.intern("lambda")); let __t2246 = { let __t2239 = { - let __t2238 = v_V2082.clone(); + let __t2238 = v_V1736.clone(); rt::hd(&__t2238)? }; let __t2245 = { let __t2243 = { let __t2241 = { - let __t2240 = v_V2082.clone(); + let __t2240 = v_V1736.clone(); rt::tl(&__t2240)? }; - let __t2242 = v_V2083.clone(); + let __t2242 = v_V1737.clone(); rt::apply_direct( interp, "shen.goto-h", @@ -9698,8 +9698,8 @@ pub fn aot_shen_x2e_goto_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul Err(e) => break Err(e), } { break Ok({ - let __t2234 = Value::sym(interp.intern("shen.goto-h")); - rt::apply_direct(interp, "shen.f-error", &[__t2234])? + let __t2234 = Value::str("partial function shen.goto-h"); + rt::apply_direct(interp, "simple-error", &[__t2234])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9726,15 +9726,15 @@ pub fn aot_shen_x2e_invoke(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult break Err(e), } { break Ok({ - let __t2251 = v_V2084.clone(); - let __t2252 = v_V2085.clone(); + let __t2251 = v_V1738.clone(); + let __t2252 = v_V1739.clone(); rt::cons(&__t2251, &__t2252) }); } else { @@ -9785,11 +9785,11 @@ pub fn aot_shen_x2e_wildcard_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2086 = args[0].clone(); + let mut v_V1740 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2261 = v_V2086.clone(); + let __t2261 = v_V1740.clone(); let __t2262 = Value::sym(interp.intern("_")); rt::eq(&__t2261, &__t2262) }); @@ -9810,51 +9810,51 @@ pub fn aot_shen_x2e_pvar_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V2087 = args[0].clone(); + let mut v_V1741 = args[0].clone(); #[allow(clippy::never_loop)] loop { - { - let __t2264 = { - let __t2263 = v_V2087.clone(); - rt::is_absvector(&__t2263) - }; - if !match rt::is_truthy(interp, &__t2264) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Ok({ - let __t2267 = match (|| -> ShenResult { - Ok({ - let __t2265 = v_V2087.clone(); - let __t2266 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t2265, __t2266])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z2088 = args[0].clone(); - Ok(Value::sym(interp.intern("shen.not-pvar"))) - }, - Vec::new(), - interp, - ) - }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? - } + break Ok( + match (|| -> ShenResult { + Ok({ + let __t2268 = { + let __t2263 = v_V1741.clone(); + rt::is_absvector(&__t2263) }; - let __t2268 = Value::sym(interp.intern("shen.pvar")); - rt::eq(&__t2267, &__t2268) - }); - } - } + if !rt::is_truthy(interp, &__t2268)? { + Value::bool(false) + } else { + let __t2269 = { + let __t2266 = { + let __t2264 = v_V1741.clone(); + let __t2265 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t2264, __t2265])? + }; + let __t2267 = Value::sym(interp.intern("shen.pvar")); + rt::eq(&__t2266, &__t2267) + }; + Value::bool(rt::is_truthy(interp, &__t2269)?) + } + }) + })() { + Ok(v) => v, + Err(e) => { + let __h = { + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z1742 = args[0].clone(); + Ok(Value::bool(false)) + }, + Vec::new(), + interp, + ) + }; + let __err = Value::err(e.message.clone()); + rt::apply_value(interp, __h, &[__err])? + } + }, + ); } } @@ -9872,54 +9872,54 @@ pub fn aot_shen_x2e_lazyderef(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V2089 = args[0].clone(); + let mut v_V1743 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2090 = args[1].clone(); + let mut v_V1744 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2270 = { - let __t2269 = v_V2089.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2269])? + let __t2271 = { + let __t2270 = v_V1743.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2270])? }; - if match rt::is_truthy(interp, &__t2270) { + if match rt::is_truthy(interp, &__t2271) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2091 = { - let __t2271 = v_V2090.clone(); - let __t2274 = { - let __t2272 = v_V2089.clone(); - let __t2273 = Value::int(1i64); - rt::apply_direct(interp, "<-address", &[__t2272, __t2273])? + let v_W1745 = { + let __t2272 = v_V1744.clone(); + let __t2275 = { + let __t2273 = v_V1743.clone(); + let __t2274 = Value::int(1i64); + rt::apply_direct(interp, "<-address", &[__t2273, __t2274])? }; - rt::apply_direct(interp, "<-address", &[__t2271, __t2274])? + rt::apply_direct(interp, "<-address", &[__t2272, __t2275])? }; { - let __t2277 = { - let __t2275 = v_W2091.clone(); - let __t2276 = Value::sym(interp.intern("shen.-null-")); - rt::eq(&__t2275, &__t2276) + let __t2278 = { + let __t2276 = v_W1745.clone(); + let __t2277 = Value::sym(interp.intern("shen.-null-")); + rt::eq(&__t2276, &__t2277) }; - if match rt::is_truthy(interp, &__t2277) { + if match rt::is_truthy(interp, &__t2278) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V2089.clone()); + break Ok(v_V1743.clone()); } else { { - let __t2278 = v_W2091.clone(); - let __t2279 = v_V2090.clone(); - v_V2089 = __t2278; - v_V2090 = __t2279; + let __t2279 = v_W1745.clone(); + let __t2280 = v_V1744.clone(); + v_V1743 = __t2279; + v_V1744 = __t2280; continue; } } } } } else { - break Ok(v_V2089.clone()); + break Ok(v_V1743.clone()); } } } @@ -9939,93 +9939,93 @@ pub fn aot_shen_x2e_deref(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t2296 = { - let __t2294 = { - let __t2293 = v_V2092.clone(); - rt::hd(&__t2293)? + let __t2297 = { + let __t2295 = { + let __t2294 = v_V1746.clone(); + rt::hd(&__t2294)? }; - let __t2295 = v_V2093.clone(); - rt::apply_direct(interp, "shen.deref", &[__t2294, __t2295])? + let __t2296 = v_V1747.clone(); + rt::apply_direct(interp, "shen.deref", &[__t2295, __t2296])? }; - let __t2300 = { - let __t2298 = { - let __t2297 = v_V2092.clone(); - rt::tl(&__t2297)? + let __t2301 = { + let __t2299 = { + let __t2298 = v_V1746.clone(); + rt::tl(&__t2298)? }; - let __t2299 = v_V2093.clone(); - rt::apply_direct(interp, "shen.deref", &[__t2298, __t2299])? + let __t2300 = v_V1747.clone(); + rt::apply_direct(interp, "shen.deref", &[__t2299, __t2300])? }; - rt::cons(&__t2296, &__t2300) + rt::cons(&__t2297, &__t2301) }); } else { { - let __t2291 = Value::bool(true); - if match rt::is_truthy(interp, &__t2291) { + let __t2292 = Value::bool(true); + if match rt::is_truthy(interp, &__t2292) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2281 = { - let __t2280 = v_V2092.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2280])? + let __t2282 = { + let __t2281 = v_V1746.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2281])? }; - if match rt::is_truthy(interp, &__t2281) { + if match rt::is_truthy(interp, &__t2282) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2094 = { - let __t2282 = v_V2093.clone(); - let __t2285 = { - let __t2283 = v_V2092.clone(); - let __t2284 = Value::int(1i64); + let v_W1748 = { + let __t2283 = v_V1747.clone(); + let __t2286 = { + let __t2284 = v_V1746.clone(); + let __t2285 = Value::int(1i64); rt::apply_direct( interp, "<-address", - &[__t2283, __t2284], + &[__t2284, __t2285], )? }; - rt::apply_direct(interp, "<-address", &[__t2282, __t2285])? + rt::apply_direct(interp, "<-address", &[__t2283, __t2286])? }; { - let __t2288 = { - let __t2286 = v_W2094.clone(); - let __t2287 = Value::sym(interp.intern("shen.-null-")); - rt::eq(&__t2286, &__t2287) + let __t2289 = { + let __t2287 = v_W1748.clone(); + let __t2288 = Value::sym(interp.intern("shen.-null-")); + rt::eq(&__t2287, &__t2288) }; - if match rt::is_truthy(interp, &__t2288) { + if match rt::is_truthy(interp, &__t2289) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V2092.clone()); + break Ok(v_V1746.clone()); } else { { - let __t2289 = v_W2094.clone(); - let __t2290 = v_V2093.clone(); - v_V2092 = __t2289; - v_V2093 = __t2290; + let __t2290 = v_W1748.clone(); + let __t2291 = v_V1747.clone(); + v_V1746 = __t2290; + v_V1747 = __t2291; continue; } } } } } else { - break Ok(v_V2092.clone()); + break Ok(v_V1746.clone()); } } } else { @@ -10051,42 +10051,42 @@ pub fn aot_shen_x2e_bind_x21_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V2095 = args[0].clone(); + let mut v_V1749 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2096 = args[1].clone(); + let mut v_V1750 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2097 = args[2].clone(); + let mut v_V1751 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2098 = args[3].clone(); + let mut v_V1752 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2099 = { - let __t2302 = v_V2095.clone(); - let __t2303 = v_V2096.clone(); - let __t2304 = v_V2097.clone(); - rt::apply_direct(interp, "shen.bindv", &[__t2302, __t2303, __t2304])? + let v_W1753 = { + let __t2303 = v_V1749.clone(); + let __t2304 = v_V1750.clone(); + let __t2305 = v_V1751.clone(); + rt::apply_direct(interp, "shen.bindv", &[__t2303, __t2304, __t2305])? }; { - let v_W2100 = rt::apply_value(interp, v_V2098.clone(), &[])?; + let v_W1754 = rt::apply_value(interp, v_V1752.clone(), &[])?; { - let __t2307 = { - let __t2305 = v_W2100.clone(); - let __t2306 = Value::bool(false); - rt::eq(&__t2305, &__t2306) + let __t2308 = { + let __t2306 = v_W1754.clone(); + let __t2307 = Value::bool(false); + rt::eq(&__t2306, &__t2307) }; - if match rt::is_truthy(interp, &__t2307) { + if match rt::is_truthy(interp, &__t2308) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2308 = v_V2095.clone(); - let __t2309 = v_V2097.clone(); - let __t2310 = v_W2100.clone(); - rt::apply_direct(interp, "shen.unwind", &[__t2308, __t2309, __t2310])? + let __t2309 = v_V1749.clone(); + let __t2310 = v_V1751.clone(); + let __t2311 = v_W1754.clone(); + rt::apply_direct(interp, "shen.unwind", &[__t2309, __t2310, __t2311])? }); } else { - break Ok(v_W2100.clone()); + break Ok(v_W1754.clone()); } } } @@ -10108,22 +10108,22 @@ pub fn aot_shen_x2e_bindv(interp: &mut Interp, args: &[Value]) -> ShenResult", &[__t2311, __t2314, __t2315])? + let __t2316 = v_V1756.clone(); + rt::apply_direct(interp, "address->", &[__t2312, __t2315, __t2316])? }); } } @@ -10142,25 +10142,25 @@ pub fn aot_shen_x2e_unwind(interp: &mut Interp, args: &[Value]) -> ShenResult", &[__t2316, __t2319, __t2320])? + let __t2321 = Value::sym(interp.intern("shen.-null-")); + rt::apply_direct(interp, "address->", &[__t2317, __t2320, __t2321])? }; - break Ok(v_V2106.clone()); + break Ok(v_V1760.clone()); } } } @@ -10179,96 +10179,96 @@ pub fn aot_shen_x2e_stpart(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V2116.clone()); + break Ok(v_V1770.clone()); } else { { - let __t2347 = { - let __t2323 = v_V2115.clone(); - rt::is_cons(&__t2323) + let __t2348 = { + let __t2324 = v_V1769.clone(); + rt::is_cons(&__t2324) }; - if match rt::is_truthy(interp, &__t2347) { + if match rt::is_truthy(interp, &__t2348) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2324 = Value::sym(interp.intern("let")); - let __t2346 = { - let __t2326 = { - let __t2325 = v_V2115.clone(); - rt::hd(&__t2325)? + let __t2325 = Value::sym(interp.intern("let")); + let __t2347 = { + let __t2327 = { + let __t2326 = v_V1769.clone(); + rt::hd(&__t2326)? }; - let __t2345 = { - let __t2331 = { - let __t2327 = Value::sym(interp.intern("shen.newpv")); - let __t2330 = { - let __t2328 = v_V2117.clone(); - let __t2329 = Value::nil(); - rt::cons(&__t2328, &__t2329) + let __t2346 = { + let __t2332 = { + let __t2328 = Value::sym(interp.intern("shen.newpv")); + let __t2331 = { + let __t2329 = v_V1771.clone(); + let __t2330 = Value::nil(); + rt::cons(&__t2329, &__t2330) }; - rt::cons(&__t2327, &__t2330) + rt::cons(&__t2328, &__t2331) }; - let __t2344 = { - let __t2342 = { - let __t2332 = Value::sym(interp.intern("shen.gc")); - let __t2341 = { - let __t2333 = v_V2117.clone(); - let __t2340 = { - let __t2338 = { - let __t2335 = { - let __t2334 = v_V2115.clone(); - rt::tl(&__t2334)? + let __t2345 = { + let __t2343 = { + let __t2333 = Value::sym(interp.intern("shen.gc")); + let __t2342 = { + let __t2334 = v_V1771.clone(); + let __t2341 = { + let __t2339 = { + let __t2336 = { + let __t2335 = v_V1769.clone(); + rt::tl(&__t2335)? }; - let __t2336 = v_V2116.clone(); - let __t2337 = v_V2117.clone(); + let __t2337 = v_V1770.clone(); + let __t2338 = v_V1771.clone(); rt::apply_direct( interp, "shen.stpart", - &[__t2335, __t2336, __t2337], + &[__t2336, __t2337, __t2338], )? }; - let __t2339 = Value::nil(); - rt::cons(&__t2338, &__t2339) + let __t2340 = Value::nil(); + rt::cons(&__t2339, &__t2340) }; - rt::cons(&__t2333, &__t2340) + rt::cons(&__t2334, &__t2341) }; - rt::cons(&__t2332, &__t2341) + rt::cons(&__t2333, &__t2342) }; - let __t2343 = Value::nil(); - rt::cons(&__t2342, &__t2343) + let __t2344 = Value::nil(); + rt::cons(&__t2343, &__t2344) }; - rt::cons(&__t2331, &__t2344) + rt::cons(&__t2332, &__t2345) }; - rt::cons(&__t2326, &__t2345) + rt::cons(&__t2327, &__t2346) }; - rt::cons(&__t2324, &__t2346) + rt::cons(&__t2325, &__t2347) }); } else { { - let __t2322 = Value::bool(true); - if match rt::is_truthy(interp, &__t2322) { + let __t2323 = Value::bool(true); + if match rt::is_truthy(interp, &__t2323) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2321 = Value::str("implementation error in shen.stpart"); - rt::apply_direct(interp, "simple-error", &[__t2321])? + let __t2322 = Value::str("implementation error in shen.stpart"); + rt::apply_direct(interp, "simple-error", &[__t2322])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -10295,37 +10295,37 @@ pub fn aot_shen_x2e_gc(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V2118 = args[0].clone(); + let mut v_V1772 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2119 = args[1].clone(); + let mut v_V1773 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2353 = { - let __t2351 = v_V2119.clone(); - let __t2352 = Value::bool(false); - rt::eq(&__t2351, &__t2352) + let __t2354 = { + let __t2352 = v_V1773.clone(); + let __t2353 = Value::bool(false); + rt::eq(&__t2352, &__t2353) }; - if match rt::is_truthy(interp, &__t2353) { + if match rt::is_truthy(interp, &__t2354) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2120 = { - let __t2354 = v_V2118.clone(); - rt::apply_direct(interp, "shen.ticket-number", &[__t2354])? + let v_W1774 = { + let __t2355 = v_V1772.clone(); + rt::apply_direct(interp, "shen.ticket-number", &[__t2355])? }; { let _ = { - let __t2355 = v_W2120.clone(); - let __t2356 = v_V2118.clone(); - rt::apply_direct(interp, "shen.decrement-ticket", &[__t2355, __t2356])? + let __t2356 = v_W1774.clone(); + let __t2357 = v_V1772.clone(); + rt::apply_direct(interp, "shen.decrement-ticket", &[__t2356, __t2357])? }; - break Ok(v_V2119.clone()); + break Ok(v_V1773.clone()); } } } else { - break Ok(v_V2119.clone()); + break Ok(v_V1773.clone()); } } } @@ -10345,20 +10345,20 @@ pub fn aot_shen_x2e_decrement_x2d_ticket(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2121 = args[0].clone(); + let mut v_V1775 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2122 = args[1].clone(); + let mut v_V1776 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2357 = v_V2122.clone(); - let __t2358 = Value::int(1i64); - let __t2361 = { - let __t2359 = v_V2121.clone(); - let __t2360 = Value::int(1i64); - rt::sub(&__t2359, &__t2360)? + let __t2358 = v_V1776.clone(); + let __t2359 = Value::int(1i64); + let __t2362 = { + let __t2360 = v_V1775.clone(); + let __t2361 = Value::int(1i64); + rt::sub(&__t2360, &__t2361)? }; - rt::apply_direct(interp, "address->", &[__t2357, __t2358, __t2361])? + rt::apply_direct(interp, "address->", &[__t2358, __t2359, __t2362])? }); } } @@ -10381,26 +10381,26 @@ pub fn aot_shen_x2e_newpv(interp: &mut Interp, args: &[Value]) -> ShenResult Sh ))); } #[allow(unused_mut)] - let mut v_V2127 = args[0].clone(); + let mut v_V1781 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2366 = v_V2127.clone(); - let __t2367 = Value::int(1i64); - rt::apply_direct(interp, "<-address", &[__t2366, __t2367])? + let __t2367 = v_V1781.clone(); + let __t2368 = Value::int(1i64); + rt::apply_direct(interp, "<-address", &[__t2367, __t2368])? }); } } @@ -10446,27 +10446,27 @@ pub fn aot_shen_x2e_nextticket(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V2128 = args[0].clone(); + let mut v_V1782 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2129 = args[1].clone(); + let mut v_V1783 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2130 = { - let __t2368 = v_V2128.clone(); - let __t2369 = v_V2129.clone(); - let __t2370 = Value::sym(interp.intern("shen.-null-")); - rt::apply_direct(interp, "address->", &[__t2368, __t2369, __t2370])? + let v_W1784 = { + let __t2369 = v_V1782.clone(); + let __t2370 = v_V1783.clone(); + let __t2371 = Value::sym(interp.intern("shen.-null-")); + rt::apply_direct(interp, "address->", &[__t2369, __t2370, __t2371])? }; break Ok({ - let __t2371 = v_W2130.clone(); - let __t2372 = Value::int(1i64); - let __t2375 = { - let __t2373 = v_V2129.clone(); - let __t2374 = Value::int(1i64); - rt::add(&__t2373, &__t2374)? + let __t2372 = v_W1784.clone(); + let __t2373 = Value::int(1i64); + let __t2376 = { + let __t2374 = v_V1783.clone(); + let __t2375 = Value::int(1i64); + rt::add(&__t2374, &__t2375)? }; - rt::apply_direct(interp, "address->", &[__t2371, __t2372, __t2375])? + rt::apply_direct(interp, "address->", &[__t2372, __t2373, __t2376])? }); } } @@ -10489,22 +10489,22 @@ pub fn aot_shen_x2e_make_x2d_prolog_x2d_variable( ))); } #[allow(unused_mut)] - let mut v_V2131 = args[0].clone(); + let mut v_V1785 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2380 = { - let __t2377 = { - let __t2376 = Value::int(2i64); - rt::apply_direct(interp, "absvector", &[__t2376])? + let __t2381 = { + let __t2378 = { + let __t2377 = Value::int(2i64); + rt::apply_direct(interp, "absvector", &[__t2377])? }; - let __t2378 = Value::int(0i64); - let __t2379 = Value::sym(interp.intern("shen.pvar")); - rt::apply_direct(interp, "address->", &[__t2377, __t2378, __t2379])? + let __t2379 = Value::int(0i64); + let __t2380 = Value::sym(interp.intern("shen.pvar")); + rt::apply_direct(interp, "address->", &[__t2378, __t2379, __t2380])? }; - let __t2381 = Value::int(1i64); - let __t2382 = v_V2131.clone(); - rt::apply_direct(interp, "address->", &[__t2380, __t2381, __t2382])? + let __t2382 = Value::int(1i64); + let __t2383 = v_V1785.clone(); + rt::apply_direct(interp, "address->", &[__t2381, __t2382, __t2383])? }); } } @@ -10530,22 +10530,22 @@ pub fn aot_shen_x2e_pvar(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t2401 = Value::sym(interp.intern("shen.*size-prolog-vector*")); - let __t2402 = v_V2133.clone(); - rt::apply_direct(interp, "set", &[__t2401, __t2402])? + let __t2402 = Value::sym(interp.intern("shen.*size-prolog-vector*")); + let __t2403 = v_V1787.clone(); + rt::apply_direct(interp, "set", &[__t2402, __t2403])? }); } else { break Ok({ - let __t2408 = { - let __t2403 = Value::str( + let __t2409 = { + let __t2404 = Value::str( "prolog vector size: size should be a positive integer; not ", ); - let __t2407 = { - let __t2404 = v_V2133.clone(); - let __t2405 = Value::str(""); - let __t2406 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t2404, __t2405, __t2406])? + let __t2408 = { + let __t2405 = v_V1787.clone(); + let __t2406 = Value::str(""); + let __t2407 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t2405, __t2406, __t2407])? }; - rt::apply_direct(interp, "cn", &[__t2403, __t2407])? + rt::apply_direct(interp, "cn", &[__t2404, __t2408])? }; - rt::apply_direct(interp, "simple-error", &[__t2408])? + rt::apply_direct(interp, "simple-error", &[__t2409])? }); } } @@ -10668,225 +10668,225 @@ pub fn aot_shen_x2e_lzy_x3d__x21_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2145 = args[0].clone(); + let mut v_V1799 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2146 = args[1].clone(); + let mut v_V1800 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2147 = args[2].clone(); + let mut v_V1801 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2148 = args[3].clone(); + let mut v_V1802 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t2463 = { - let __t2461 = v_V2145.clone(); - let __t2462 = v_V2146.clone(); - rt::eq(&__t2461, &__t2462) + let __t2464 = { + let __t2462 = v_V1799.clone(); + let __t2463 = v_V1800.clone(); + rt::eq(&__t2462, &__t2463) }; - if match rt::is_truthy(interp, &__t2463) { + if match rt::is_truthy(interp, &__t2464) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(rt::apply_value(interp, v_V2148.clone(), &[])?); + break Ok(rt::apply_value(interp, v_V1802.clone(), &[])?); } else { { - let __t2460 = { - let __t2454 = { - let __t2448 = v_V2145.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2448])? + let __t2461 = { + let __t2455 = { + let __t2449 = v_V1799.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2449])? }; - if !rt::is_truthy(interp, &__t2454)? { + if !rt::is_truthy(interp, &__t2455)? { Value::bool(false) } else { - let __t2455 = { - let __t2453 = { - let __t2449 = v_V2145.clone(); - let __t2452 = { - let __t2450 = v_V2146.clone(); - let __t2451 = v_V2147.clone(); - rt::apply_direct(interp, "shen.deref", &[__t2450, __t2451])? + let __t2456 = { + let __t2454 = { + let __t2450 = v_V1799.clone(); + let __t2453 = { + let __t2451 = v_V1800.clone(); + let __t2452 = v_V1801.clone(); + rt::apply_direct(interp, "shen.deref", &[__t2451, __t2452])? }; rt::apply_direct( interp, "shen.occurs-check?", - &[__t2449, __t2452], + &[__t2450, __t2453], )? }; - rt::apply_direct(interp, "not", &[__t2453])? + rt::apply_direct(interp, "not", &[__t2454])? }; - Value::bool(rt::is_truthy(interp, &__t2455)?) + Value::bool(rt::is_truthy(interp, &__t2456)?) } }; - if match rt::is_truthy(interp, &__t2460) { + if match rt::is_truthy(interp, &__t2461) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2456 = v_V2145.clone(); - let __t2457 = v_V2146.clone(); - let __t2458 = v_V2147.clone(); - let __t2459 = v_V2148.clone(); + let __t2457 = v_V1799.clone(); + let __t2458 = v_V1800.clone(); + let __t2459 = v_V1801.clone(); + let __t2460 = v_V1802.clone(); rt::apply_direct( interp, "shen.bind!", - &[__t2456, __t2457, __t2458, __t2459], + &[__t2457, __t2458, __t2459, __t2460], )? }); } else { { - let __t2447 = { - let __t2441 = { - let __t2435 = v_V2146.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2435])? + let __t2448 = { + let __t2442 = { + let __t2436 = v_V1800.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2436])? }; - if !rt::is_truthy(interp, &__t2441)? { + if !rt::is_truthy(interp, &__t2442)? { Value::bool(false) } else { - let __t2442 = { - let __t2440 = { - let __t2436 = v_V2146.clone(); - let __t2439 = { - let __t2437 = v_V2145.clone(); - let __t2438 = v_V2147.clone(); + let __t2443 = { + let __t2441 = { + let __t2437 = v_V1800.clone(); + let __t2440 = { + let __t2438 = v_V1799.clone(); + let __t2439 = v_V1801.clone(); rt::apply_direct( interp, "shen.deref", - &[__t2437, __t2438], + &[__t2438, __t2439], )? }; rt::apply_direct( interp, "shen.occurs-check?", - &[__t2436, __t2439], + &[__t2437, __t2440], )? }; - rt::apply_direct(interp, "not", &[__t2440])? + rt::apply_direct(interp, "not", &[__t2441])? }; - Value::bool(rt::is_truthy(interp, &__t2442)?) + Value::bool(rt::is_truthy(interp, &__t2443)?) } }; - if match rt::is_truthy(interp, &__t2447) { + if match rt::is_truthy(interp, &__t2448) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2443 = v_V2146.clone(); - let __t2444 = v_V2145.clone(); - let __t2445 = v_V2147.clone(); - let __t2446 = v_V2148.clone(); + let __t2444 = v_V1800.clone(); + let __t2445 = v_V1799.clone(); + let __t2446 = v_V1801.clone(); + let __t2447 = v_V1802.clone(); rt::apply_direct( interp, "shen.bind!", - &[__t2443, __t2444, __t2445, __t2446], + &[__t2444, __t2445, __t2446, __t2447], )? }); } else { { - let __t2434 = { - let __t2412 = { - let __t2410 = v_V2145.clone(); - rt::is_cons(&__t2410) + let __t2435 = { + let __t2413 = { + let __t2411 = v_V1799.clone(); + rt::is_cons(&__t2411) }; - if !rt::is_truthy(interp, &__t2412)? { + if !rt::is_truthy(interp, &__t2413)? { Value::bool(false) } else { - let __t2413 = { - let __t2411 = v_V2146.clone(); - rt::is_cons(&__t2411) + let __t2414 = { + let __t2412 = v_V1800.clone(); + rt::is_cons(&__t2412) }; - Value::bool(rt::is_truthy(interp, &__t2413)?) + Value::bool(rt::is_truthy(interp, &__t2414)?) } }; - if match rt::is_truthy(interp, &__t2434) { + if match rt::is_truthy(interp, &__t2435) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2417 = { - let __t2415 = { - let __t2414 = v_V2145.clone(); - rt::hd(&__t2414)? + let __t2418 = { + let __t2416 = { + let __t2415 = v_V1799.clone(); + rt::hd(&__t2415)? }; - let __t2416 = v_V2147.clone(); + let __t2417 = v_V1801.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2415, __t2416], + &[__t2416, __t2417], )? }; - let __t2421 = { - let __t2419 = { - let __t2418 = v_V2146.clone(); - rt::hd(&__t2418)? + let __t2422 = { + let __t2420 = { + let __t2419 = v_V1800.clone(); + rt::hd(&__t2419)? }; - let __t2420 = v_V2147.clone(); + let __t2421 = v_V1801.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2419, __t2420], + &[__t2420, __t2421], )? }; - let __t2422 = v_V2147.clone(); - let __t2433 = { - let v_V2145 = v_V2145.clone(); - let v_V2146 = v_V2146.clone(); - let v_V2147 = v_V2147.clone(); - let v_V2148 = v_V2148.clone(); + let __t2423 = v_V1801.clone(); + let __t2434 = { + let v_V1799 = v_V1799.clone(); + let v_V1800 = v_V1800.clone(); + let v_V1801 = v_V1801.clone(); + let v_V1802 = v_V1802.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t2426 = { - let __t2424 = { - let __t2423 = v_V2145.clone(); - rt::tl(&__t2423)? + let __t2427 = { + let __t2425 = { + let __t2424 = v_V1799.clone(); + rt::tl(&__t2424)? }; - let __t2425 = v_V2147.clone(); + let __t2426 = v_V1801.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2424, __t2425], + &[__t2425, __t2426], )? }; - let __t2430 = { - let __t2428 = { - let __t2427 = v_V2146.clone(); - rt::tl(&__t2427)? + let __t2431 = { + let __t2429 = { + let __t2428 = v_V1800.clone(); + rt::tl(&__t2428)? }; - let __t2429 = v_V2147.clone(); + let __t2430 = v_V1801.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2428, __t2429], + &[__t2429, __t2430], )? }; - let __t2431 = v_V2147.clone(); - let __t2432 = v_V2148.clone(); + let __t2432 = v_V1801.clone(); + let __t2433 = v_V1802.clone(); rt::apply_direct( interp, "shen.lzy=!", &[ - __t2426, __t2430, __t2431, - __t2432, + __t2427, __t2431, __t2432, + __t2433, ], )? }) }, - vec![v_V2145, v_V2146, v_V2147, v_V2148], + vec![v_V1799, v_V1800, v_V1801, v_V1802], interp, ) }; - v_V2145 = __t2417; - v_V2146 = __t2421; - v_V2147 = __t2422; - v_V2148 = __t2433; + v_V1799 = __t2418; + v_V1800 = __t2422; + v_V1801 = __t2423; + v_V1802 = __t2434; continue; } } else { { - let __t2409 = Value::bool(true); - if match rt::is_truthy(interp, &__t2409) { + let __t2410 = Value::bool(true); + if match rt::is_truthy(interp, &__t2410) { Ok(b) => b, Err(e) => break Err(e), } { @@ -10922,175 +10922,175 @@ pub fn aot_shen_x2e_lzy_x3d_(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V2160 = args[0].clone(); + let mut v_V1814 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2161 = args[1].clone(); + let mut v_V1815 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2162 = args[2].clone(); + let mut v_V1816 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2163 = args[3].clone(); + let mut v_V1817 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t2504 = { - let __t2502 = v_V2160.clone(); - let __t2503 = v_V2161.clone(); - rt::eq(&__t2502, &__t2503) + let __t2505 = { + let __t2503 = v_V1814.clone(); + let __t2504 = v_V1815.clone(); + rt::eq(&__t2503, &__t2504) }; - if match rt::is_truthy(interp, &__t2504) { + if match rt::is_truthy(interp, &__t2505) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(rt::apply_value(interp, v_V2163.clone(), &[])?); + break Ok(rt::apply_value(interp, v_V1817.clone(), &[])?); } else { { - let __t2501 = { - let __t2496 = v_V2160.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2496])? + let __t2502 = { + let __t2497 = v_V1814.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2497])? }; - if match rt::is_truthy(interp, &__t2501) { + if match rt::is_truthy(interp, &__t2502) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2497 = v_V2160.clone(); - let __t2498 = v_V2161.clone(); - let __t2499 = v_V2162.clone(); - let __t2500 = v_V2163.clone(); + let __t2498 = v_V1814.clone(); + let __t2499 = v_V1815.clone(); + let __t2500 = v_V1816.clone(); + let __t2501 = v_V1817.clone(); rt::apply_direct( interp, "shen.bind!", - &[__t2497, __t2498, __t2499, __t2500], + &[__t2498, __t2499, __t2500, __t2501], )? }); } else { { - let __t2495 = { - let __t2490 = v_V2161.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2490])? + let __t2496 = { + let __t2491 = v_V1815.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2491])? }; - if match rt::is_truthy(interp, &__t2495) { + if match rt::is_truthy(interp, &__t2496) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2491 = v_V2161.clone(); - let __t2492 = v_V2160.clone(); - let __t2493 = v_V2162.clone(); - let __t2494 = v_V2163.clone(); + let __t2492 = v_V1815.clone(); + let __t2493 = v_V1814.clone(); + let __t2494 = v_V1816.clone(); + let __t2495 = v_V1817.clone(); rt::apply_direct( interp, "shen.bind!", - &[__t2491, __t2492, __t2493, __t2494], + &[__t2492, __t2493, __t2494, __t2495], )? }); } else { { - let __t2489 = { - let __t2467 = { - let __t2465 = v_V2160.clone(); - rt::is_cons(&__t2465) + let __t2490 = { + let __t2468 = { + let __t2466 = v_V1814.clone(); + rt::is_cons(&__t2466) }; - if !rt::is_truthy(interp, &__t2467)? { + if !rt::is_truthy(interp, &__t2468)? { Value::bool(false) } else { - let __t2468 = { - let __t2466 = v_V2161.clone(); - rt::is_cons(&__t2466) + let __t2469 = { + let __t2467 = v_V1815.clone(); + rt::is_cons(&__t2467) }; - Value::bool(rt::is_truthy(interp, &__t2468)?) + Value::bool(rt::is_truthy(interp, &__t2469)?) } }; - if match rt::is_truthy(interp, &__t2489) { + if match rt::is_truthy(interp, &__t2490) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2472 = { - let __t2470 = { - let __t2469 = v_V2160.clone(); - rt::hd(&__t2469)? + let __t2473 = { + let __t2471 = { + let __t2470 = v_V1814.clone(); + rt::hd(&__t2470)? }; - let __t2471 = v_V2162.clone(); + let __t2472 = v_V1816.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2470, __t2471], + &[__t2471, __t2472], )? }; - let __t2476 = { - let __t2474 = { - let __t2473 = v_V2161.clone(); - rt::hd(&__t2473)? + let __t2477 = { + let __t2475 = { + let __t2474 = v_V1815.clone(); + rt::hd(&__t2474)? }; - let __t2475 = v_V2162.clone(); + let __t2476 = v_V1816.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2474, __t2475], + &[__t2475, __t2476], )? }; - let __t2477 = v_V2162.clone(); - let __t2488 = { - let v_V2160 = v_V2160.clone(); - let v_V2161 = v_V2161.clone(); - let v_V2162 = v_V2162.clone(); - let v_V2163 = v_V2163.clone(); + let __t2478 = v_V1816.clone(); + let __t2489 = { + let v_V1814 = v_V1814.clone(); + let v_V1815 = v_V1815.clone(); + let v_V1816 = v_V1816.clone(); + let v_V1817 = v_V1817.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t2481 = { - let __t2479 = { - let __t2478 = v_V2160.clone(); - rt::tl(&__t2478)? + let __t2482 = { + let __t2480 = { + let __t2479 = v_V1814.clone(); + rt::tl(&__t2479)? }; - let __t2480 = v_V2162.clone(); + let __t2481 = v_V1816.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2479, __t2480], + &[__t2480, __t2481], )? }; - let __t2485 = { - let __t2483 = { - let __t2482 = v_V2161.clone(); - rt::tl(&__t2482)? + let __t2486 = { + let __t2484 = { + let __t2483 = v_V1815.clone(); + rt::tl(&__t2483)? }; - let __t2484 = v_V2162.clone(); + let __t2485 = v_V1816.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2483, __t2484], + &[__t2484, __t2485], )? }; - let __t2486 = v_V2162.clone(); - let __t2487 = v_V2163.clone(); + let __t2487 = v_V1816.clone(); + let __t2488 = v_V1817.clone(); rt::apply_direct( interp, "shen.lzy=", &[ - __t2481, __t2485, __t2486, - __t2487, + __t2482, __t2486, __t2487, + __t2488, ], )? }) }, - vec![v_V2160, v_V2161, v_V2162, v_V2163], + vec![v_V1814, v_V1815, v_V1816, v_V1817], interp, ) }; - v_V2160 = __t2472; - v_V2161 = __t2476; - v_V2162 = __t2477; - v_V2163 = __t2488; + v_V1814 = __t2473; + v_V1815 = __t2477; + v_V1816 = __t2478; + v_V1817 = __t2489; continue; } } else { { - let __t2464 = Value::bool(true); - if match rt::is_truthy(interp, &__t2464) { + let __t2465 = Value::bool(true); + if match rt::is_truthy(interp, &__t2465) { Ok(b) => b, Err(e) => break Err(e), } { @@ -11129,63 +11129,63 @@ pub fn aot_shen_x2e_occurs_x2d_check_x3f_( ))); } #[allow(unused_mut)] - let mut v_V2169 = args[0].clone(); + let mut v_V1823 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2170 = args[1].clone(); + let mut v_V1824 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2517 = { - let __t2515 = v_V2169.clone(); - let __t2516 = v_V2170.clone(); - rt::eq(&__t2515, &__t2516) + let __t2518 = { + let __t2516 = v_V1823.clone(); + let __t2517 = v_V1824.clone(); + rt::eq(&__t2516, &__t2517) }; - if match rt::is_truthy(interp, &__t2517) { + if match rt::is_truthy(interp, &__t2518) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2514 = { - let __t2506 = v_V2170.clone(); - rt::is_cons(&__t2506) + let __t2515 = { + let __t2507 = v_V1824.clone(); + rt::is_cons(&__t2507) }; - if match rt::is_truthy(interp, &__t2514) { + if match rt::is_truthy(interp, &__t2515) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2510 = { - let __t2507 = v_V2169.clone(); - let __t2509 = { - let __t2508 = v_V2170.clone(); - rt::hd(&__t2508)? + let __t2511 = { + let __t2508 = v_V1823.clone(); + let __t2510 = { + let __t2509 = v_V1824.clone(); + rt::hd(&__t2509)? }; - rt::apply_direct(interp, "shen.occurs-check?", &[__t2507, __t2509])? + rt::apply_direct(interp, "shen.occurs-check?", &[__t2508, __t2510])? }; - if match rt::is_truthy(interp, &__t2510) { + if match rt::is_truthy(interp, &__t2511) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2511 = v_V2169.clone(); - let __t2513 = { - let __t2512 = v_V2170.clone(); - rt::tl(&__t2512)? + let __t2512 = v_V1823.clone(); + let __t2514 = { + let __t2513 = v_V1824.clone(); + rt::tl(&__t2513)? }; - v_V2169 = __t2511; - v_V2170 = __t2513; + v_V1823 = __t2512; + v_V1824 = __t2514; continue; } } } } else { { - let __t2505 = Value::bool(true); - if match rt::is_truthy(interp, &__t2505) { + let __t2506 = Value::bool(true); + if match rt::is_truthy(interp, &__t2506) { Ok(b) => b, Err(e) => break Err(e), } { @@ -11215,32 +11215,32 @@ pub fn aot_call(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2171 = args[0].clone(); + let mut v_V1825 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2172 = args[1].clone(); + let mut v_V1826 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2173 = args[2].clone(); + let mut v_V1827 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2174 = args[3].clone(); + let mut v_V1828 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2175 = args[4].clone(); + let mut v_V1829 = args[4].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2523 = { - let __t2521 = { - let __t2519 = { - let __t2518 = v_V2172.clone(); - rt::apply_value(interp, v_V2171.clone(), &[__t2518])? + let __t2524 = { + let __t2522 = { + let __t2520 = { + let __t2519 = v_V1826.clone(); + rt::apply_value(interp, v_V1825.clone(), &[__t2519])? }; - let __t2520 = v_V2173.clone(); - rt::apply_value(interp, __t2519, &[__t2520])? + let __t2521 = v_V1827.clone(); + rt::apply_value(interp, __t2520, &[__t2521])? }; - let __t2522 = v_V2174.clone(); - rt::apply_value(interp, __t2521, &[__t2522])? + let __t2523 = v_V1828.clone(); + rt::apply_value(interp, __t2522, &[__t2523])? }; - let __t2524 = v_V2175.clone(); - rt::apply_value(interp, __t2523, &[__t2524])? + let __t2525 = v_V1829.clone(); + rt::apply_value(interp, __t2524, &[__t2525])? }); } } @@ -11259,21 +11259,21 @@ pub fn aot_return(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2182 = args[0].clone(); + let mut v_V1836 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2183 = args[1].clone(); + let mut v_V1837 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2184 = args[2].clone(); + let mut v_V1838 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2185 = args[3].clone(); + let mut v_V1839 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2186 = args[4].clone(); + let mut v_V1840 = args[4].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2525 = v_V2182.clone(); - let __t2526 = v_V2183.clone(); - rt::apply_direct(interp, "shen.deref", &[__t2525, __t2526])? + let __t2526 = v_V1836.clone(); + let __t2527 = v_V1837.clone(); + rt::apply_direct(interp, "shen.deref", &[__t2526, __t2527])? }); } } @@ -11292,24 +11292,24 @@ pub fn aot_when(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2193 = args[0].clone(); + let mut v_V1847 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2194 = args[1].clone(); + let mut v_V1848 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2195 = args[2].clone(); + let mut v_V1849 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2196 = args[3].clone(); + let mut v_V1850 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2197 = args[4].clone(); + let mut v_V1851 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t2527 = v_V2193.clone(); - if match rt::is_truthy(interp, &__t2527) { + let __t2528 = v_V1847.clone(); + if match rt::is_truthy(interp, &__t2528) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(rt::apply_value(interp, v_V2197.clone(), &[])?); + break Ok(rt::apply_value(interp, v_V1851.clone(), &[])?); } else { break Ok(Value::bool(false)); } @@ -11331,33 +11331,33 @@ pub fn aot_is(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2198 = args[0].clone(); + let mut v_V1852 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2199 = args[1].clone(); + let mut v_V1853 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2200 = args[2].clone(); + let mut v_V1854 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2201 = args[3].clone(); + let mut v_V1855 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2202 = args[4].clone(); + let mut v_V1856 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2203 = args[5].clone(); + let mut v_V1857 = args[5].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2530 = { - let __t2528 = v_V2198.clone(); - let __t2529 = v_V2200.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2528, __t2529])? + let __t2531 = { + let __t2529 = v_V1852.clone(); + let __t2530 = v_V1854.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2529, __t2530])? }; - let __t2533 = { - let __t2531 = v_V2199.clone(); - let __t2532 = v_V2200.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2531, __t2532])? + let __t2534 = { + let __t2532 = v_V1853.clone(); + let __t2533 = v_V1854.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2532, __t2533])? }; - let __t2534 = v_V2200.clone(); - let __t2535 = v_V2203.clone(); - rt::apply_direct(interp, "shen.lzy=", &[__t2530, __t2533, __t2534, __t2535])? + let __t2535 = v_V1854.clone(); + let __t2536 = v_V1857.clone(); + rt::apply_direct(interp, "shen.lzy=", &[__t2531, __t2534, __t2535, __t2536])? }); } } @@ -11376,33 +11376,33 @@ pub fn aot_is_x21_(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2204 = args[0].clone(); + let mut v_V1858 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2205 = args[1].clone(); + let mut v_V1859 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2206 = args[2].clone(); + let mut v_V1860 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2207 = args[3].clone(); + let mut v_V1861 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2208 = args[4].clone(); + let mut v_V1862 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2209 = args[5].clone(); + let mut v_V1863 = args[5].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2538 = { - let __t2536 = v_V2204.clone(); - let __t2537 = v_V2206.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2536, __t2537])? + let __t2539 = { + let __t2537 = v_V1858.clone(); + let __t2538 = v_V1860.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2537, __t2538])? }; - let __t2541 = { - let __t2539 = v_V2205.clone(); - let __t2540 = v_V2206.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2539, __t2540])? + let __t2542 = { + let __t2540 = v_V1859.clone(); + let __t2541 = v_V1860.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2540, __t2541])? }; - let __t2542 = v_V2206.clone(); - let __t2543 = v_V2209.clone(); - rt::apply_direct(interp, "shen.lzy=!", &[__t2538, __t2541, __t2542, __t2543])? + let __t2543 = v_V1860.clone(); + let __t2544 = v_V1863.clone(); + rt::apply_direct(interp, "shen.lzy=!", &[__t2539, __t2542, __t2543, __t2544])? }); } } @@ -11421,25 +11421,25 @@ pub fn aot_bind(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2214 = args[0].clone(); + let mut v_V1868 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2215 = args[1].clone(); + let mut v_V1869 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2216 = args[2].clone(); + let mut v_V1870 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2217 = args[3].clone(); + let mut v_V1871 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2218 = args[4].clone(); + let mut v_V1872 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2219 = args[5].clone(); + let mut v_V1873 = args[5].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2544 = v_V2214.clone(); - let __t2545 = v_V2215.clone(); - let __t2546 = v_V2216.clone(); - let __t2547 = v_V2219.clone(); - rt::apply_direct(interp, "shen.bind!", &[__t2544, __t2545, __t2546, __t2547])? + let __t2545 = v_V1868.clone(); + let __t2546 = v_V1869.clone(); + let __t2547 = v_V1870.clone(); + let __t2548 = v_V1873.clone(); + rt::apply_direct(interp, "shen.bind!", &[__t2545, __t2546, __t2547, __t2548])? }); } } @@ -11458,31 +11458,31 @@ pub fn aot_var_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2220 = args[0].clone(); + let mut v_V1874 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2221 = args[1].clone(); + let mut v_V1875 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2222 = args[2].clone(); + let mut v_V1876 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2223 = args[3].clone(); + let mut v_V1877 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2224 = args[4].clone(); + let mut v_V1878 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t2551 = { - let __t2550 = { - let __t2548 = v_V2220.clone(); - let __t2549 = v_V2221.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2548, __t2549])? + let __t2552 = { + let __t2551 = { + let __t2549 = v_V1874.clone(); + let __t2550 = v_V1875.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2549, __t2550])? }; - rt::apply_direct(interp, "shen.pvar?", &[__t2550])? + rt::apply_direct(interp, "shen.pvar?", &[__t2551])? }; - if match rt::is_truthy(interp, &__t2551) { + if match rt::is_truthy(interp, &__t2552) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(rt::apply_value(interp, v_V2224.clone(), &[])?); + break Ok(rt::apply_value(interp, v_V1878.clone(), &[])?); } else { break Ok(Value::bool(false)); } @@ -11507,7 +11507,7 @@ pub fn aot_shen_x2e_print_x2d_prolog_x2d_vector( ))); } #[allow(unused_mut)] - let mut v_V2227 = args[0].clone(); + let mut v_V1881 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok(Value::str("|prolog vector|")); @@ -11535,100 +11535,100 @@ pub fn aot_fork(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2246 = args[0].clone(); + let mut v_V1900 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2247 = args[1].clone(); + let mut v_V1901 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2248 = args[2].clone(); + let mut v_V1902 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2249 = args[3].clone(); + let mut v_V1903 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2250 = args[4].clone(); + let mut v_V1904 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t2576 = { - let __t2574 = Value::nil(); - let __t2575 = v_V2246.clone(); - rt::eq(&__t2574, &__t2575) + let __t2577 = { + let __t2575 = Value::nil(); + let __t2576 = v_V1900.clone(); + rt::eq(&__t2575, &__t2576) }; - if match rt::is_truthy(interp, &__t2576) { + if match rt::is_truthy(interp, &__t2577) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2573 = { - let __t2554 = v_V2246.clone(); - rt::is_cons(&__t2554) + let __t2574 = { + let __t2555 = v_V1900.clone(); + rt::is_cons(&__t2555) }; - if match rt::is_truthy(interp, &__t2573) { + if match rt::is_truthy(interp, &__t2574) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2251 = { - let __t2562 = { - let __t2560 = { - let __t2558 = { - let __t2556 = { - let __t2555 = v_V2246.clone(); - rt::hd(&__t2555)? + let v_W1905 = { + let __t2563 = { + let __t2561 = { + let __t2559 = { + let __t2557 = { + let __t2556 = v_V1900.clone(); + rt::hd(&__t2556)? }; - let __t2557 = v_V2247.clone(); - rt::apply_value(interp, __t2556, &[__t2557])? + let __t2558 = v_V1901.clone(); + rt::apply_value(interp, __t2557, &[__t2558])? }; - let __t2559 = v_V2248.clone(); - rt::apply_value(interp, __t2558, &[__t2559])? + let __t2560 = v_V1902.clone(); + rt::apply_value(interp, __t2559, &[__t2560])? }; - let __t2561 = v_V2249.clone(); - rt::apply_value(interp, __t2560, &[__t2561])? + let __t2562 = v_V1903.clone(); + rt::apply_value(interp, __t2561, &[__t2562])? }; - let __t2563 = v_V2250.clone(); - rt::apply_value(interp, __t2562, &[__t2563])? + let __t2564 = v_V1904.clone(); + rt::apply_value(interp, __t2563, &[__t2564])? }; { - let __t2566 = { - let __t2564 = v_W2251.clone(); - let __t2565 = Value::bool(false); - rt::eq(&__t2564, &__t2565) + let __t2567 = { + let __t2565 = v_W1905.clone(); + let __t2566 = Value::bool(false); + rt::eq(&__t2565, &__t2566) }; - if match rt::is_truthy(interp, &__t2566) { + if match rt::is_truthy(interp, &__t2567) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2568 = { - let __t2567 = v_V2246.clone(); - rt::tl(&__t2567)? + let __t2569 = { + let __t2568 = v_V1900.clone(); + rt::tl(&__t2568)? }; - let __t2569 = v_V2247.clone(); - let __t2570 = v_V2248.clone(); - let __t2571 = v_V2249.clone(); - let __t2572 = v_V2250.clone(); - v_V2246 = __t2568; - v_V2247 = __t2569; - v_V2248 = __t2570; - v_V2249 = __t2571; - v_V2250 = __t2572; + let __t2570 = v_V1901.clone(); + let __t2571 = v_V1902.clone(); + let __t2572 = v_V1903.clone(); + let __t2573 = v_V1904.clone(); + v_V1900 = __t2569; + v_V1901 = __t2570; + v_V1902 = __t2571; + v_V1903 = __t2572; + v_V1904 = __t2573; continue; } } else { - break Ok(v_W2251.clone()); + break Ok(v_W1905.clone()); } } } } else { { - let __t2553 = Value::bool(true); - if match rt::is_truthy(interp, &__t2553) { + let __t2554 = Value::bool(true); + if match rt::is_truthy(interp, &__t2554) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2552 = Value::str("fork expects a list of literals\n"); - rt::apply_direct(interp, "simple-error", &[__t2552])? + let __t2553 = Value::str("fork expects a list of literals\n"); + rt::apply_direct(interp, "simple-error", &[__t2553])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -11655,80 +11655,80 @@ pub fn aot_findall(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2252 = args[0].clone(); + let mut v_V1906 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2253 = args[1].clone(); + let mut v_V1907 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2254 = args[2].clone(); + let mut v_V1908 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2255 = args[3].clone(); + let mut v_V1909 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2256 = args[4].clone(); + let mut v_V1910 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2257 = args[5].clone(); + let mut v_V1911 = args[5].clone(); #[allow(unused_mut)] - let mut v_V2258 = args[6].clone(); + let mut v_V1912 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let __t2578 = { - let __t2577 = v_V2256.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2577])? + let __t2579 = { + let __t2578 = v_V1910.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2578])? }; - if match rt::is_truthy(interp, &__t2578) { + if match rt::is_truthy(interp, &__t2579) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2259 = { - let __t2579 = v_V2255.clone(); - rt::apply_direct(interp, "shen.newpv", &[__t2579])? + let v_W1913 = { + let __t2580 = v_V1909.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t2580])? }; break Ok({ - let __t2580 = v_V2255.clone(); - let __t2595 = { + let __t2581 = v_V1909.clone(); + let __t2596 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2581 = v_W2259.clone(); - let __t2582 = Value::nil(); - let __t2583 = v_V2255.clone(); - let __t2584 = v_V2256.clone(); - let __t2585 = v_V2257.clone(); - let __t2594 = { - let v_V2252 = v_V2252.clone(); - let v_V2253 = v_V2253.clone(); - let v_V2254 = v_V2254.clone(); - let v_V2255 = v_V2255.clone(); - let v_V2256 = v_V2256.clone(); - let v_V2257 = v_V2257.clone(); - let v_V2258 = v_V2258.clone(); - let v_W2259 = v_W2259.clone(); + let __t2582 = v_W1913.clone(); + let __t2583 = Value::nil(); + let __t2584 = v_V1909.clone(); + let __t2585 = v_V1910.clone(); + let __t2586 = v_V1911.clone(); + let __t2595 = { + let v_V1906 = v_V1906.clone(); + let v_V1907 = v_V1907.clone(); + let v_V1908 = v_V1908.clone(); + let v_V1909 = v_V1909.clone(); + let v_V1910 = v_V1910.clone(); + let v_V1911 = v_V1911.clone(); + let v_V1912 = v_V1912.clone(); + let v_W1913 = v_W1913.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t2586 = v_V2252.clone(); - let __t2587 = v_V2253.clone(); - let __t2588 = v_V2254.clone(); - let __t2589 = v_W2259.clone(); - let __t2590 = v_V2255.clone(); - let __t2591 = v_V2256.clone(); - let __t2592 = v_V2257.clone(); - let __t2593 = v_V2258.clone(); + let __t2587 = v_V1906.clone(); + let __t2588 = v_V1907.clone(); + let __t2589 = v_V1908.clone(); + let __t2590 = v_W1913.clone(); + let __t2591 = v_V1909.clone(); + let __t2592 = v_V1910.clone(); + let __t2593 = v_V1911.clone(); + let __t2594 = v_V1912.clone(); rt::apply_direct( interp, "shen.findall-h", &[ - __t2586, __t2587, __t2588, __t2589, - __t2590, __t2591, __t2592, __t2593, + __t2587, __t2588, __t2589, __t2590, + __t2591, __t2592, __t2593, __t2594, ], )? }) }, vec![ - v_V2252, v_V2253, v_V2254, v_V2255, v_V2256, v_V2257, - v_V2258, v_W2259, + v_V1906, v_V1907, v_V1908, v_V1909, v_V1910, v_V1911, + v_V1912, v_W1913, ], interp, ) @@ -11736,11 +11736,11 @@ pub fn aot_findall(interp: &mut Interp, args: &[Value]) -> ShenResult { rt::apply_direct( interp, "is", - &[__t2581, __t2582, __t2583, __t2584, __t2585, __t2594], + &[__t2582, __t2583, __t2584, __t2585, __t2586, __t2595], )? } }; - rt::apply_direct(interp, "shen.gc", &[__t2580, __t2595])? + rt::apply_direct(interp, "shen.gc", &[__t2581, __t2596])? }); } } else { @@ -11764,73 +11764,73 @@ pub fn aot_shen_x2e_findall_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2260 = args[0].clone(); + let mut v_V1914 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2261 = args[1].clone(); + let mut v_V1915 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2262 = args[2].clone(); + let mut v_V1916 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2263 = args[3].clone(); + let mut v_V1917 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2264 = args[4].clone(); + let mut v_V1918 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2265 = args[5].clone(); + let mut v_V1919 = args[5].clone(); #[allow(unused_mut)] - let mut v_V2266 = args[6].clone(); + let mut v_V1920 = args[6].clone(); #[allow(unused_mut)] - let mut v_V2267 = args[7].clone(); + let mut v_V1921 = args[7].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2268 = { - let __t2608 = { - let __t2596 = v_V2265.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2596])? + let v_W1922 = { + let __t2609 = { + let __t2597 = v_V1919.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2597])? }; - if rt::is_truthy(interp, &__t2608)? { + if rt::is_truthy(interp, &__t2609)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2597 = v_V2261.clone(); - let __t2598 = v_V2264.clone(); - let __t2599 = v_V2265.clone(); - let __t2600 = v_V2266.clone(); - let __t2607 = { - let v_V2260 = v_V2260.clone(); - let v_V2263 = v_V2263.clone(); - let v_V2264 = v_V2264.clone(); - let v_V2265 = v_V2265.clone(); - let v_V2266 = v_V2266.clone(); - let v_V2267 = v_V2267.clone(); + let __t2598 = v_V1915.clone(); + let __t2599 = v_V1918.clone(); + let __t2600 = v_V1919.clone(); + let __t2601 = v_V1920.clone(); + let __t2608 = { + let v_V1914 = v_V1914.clone(); + let v_V1917 = v_V1917.clone(); + let v_V1918 = v_V1918.clone(); + let v_V1919 = v_V1919.clone(); + let v_V1920 = v_V1920.clone(); + let v_V1921 = v_V1921.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t2601 = v_V2260.clone(); - let __t2602 = v_V2263.clone(); - let __t2603 = v_V2264.clone(); - let __t2604 = v_V2265.clone(); - let __t2605 = v_V2266.clone(); - let __t2606 = v_V2267.clone(); + let __t2602 = v_V1914.clone(); + let __t2603 = v_V1917.clone(); + let __t2604 = v_V1918.clone(); + let __t2605 = v_V1919.clone(); + let __t2606 = v_V1920.clone(); + let __t2607 = v_V1921.clone(); rt::apply_direct( interp, "shen.overbind", &[ - __t2601, __t2602, __t2603, __t2604, __t2605, - __t2606, + __t2602, __t2603, __t2604, __t2605, __t2606, + __t2607, ], )? }) }, - vec![v_V2260, v_V2263, v_V2264, v_V2265, v_V2266, v_V2267], + vec![v_V1914, v_V1917, v_V1918, v_V1919, v_V1920, v_V1921], interp, ) }; rt::apply_direct( interp, "call", - &[__t2597, __t2598, __t2599, __t2600, __t2607], + &[__t2598, __t2599, __t2600, __t2601, __t2608], )? } } @@ -11839,37 +11839,37 @@ pub fn aot_shen_x2e_findall_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t2611 = { - let __t2609 = v_W2268.clone(); - let __t2610 = Value::bool(false); - rt::eq(&__t2609, &__t2610) + let __t2612 = { + let __t2610 = v_W1922.clone(); + let __t2611 = Value::bool(false); + rt::eq(&__t2610, &__t2611) }; - if match rt::is_truthy(interp, &__t2611) { + if match rt::is_truthy(interp, &__t2612) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2613 = { - let __t2612 = v_V2265.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2612])? + let __t2614 = { + let __t2613 = v_V1919.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2613])? }; - if match rt::is_truthy(interp, &__t2613) { + if match rt::is_truthy(interp, &__t2614) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; break Ok({ - let __t2614 = v_V2262.clone(); - let __t2615 = v_V2263.clone(); - let __t2616 = v_V2264.clone(); - let __t2617 = v_V2265.clone(); - let __t2618 = v_V2266.clone(); - let __t2619 = v_V2267.clone(); + let __t2615 = v_V1916.clone(); + let __t2616 = v_V1917.clone(); + let __t2617 = v_V1918.clone(); + let __t2618 = v_V1919.clone(); + let __t2619 = v_V1920.clone(); + let __t2620 = v_V1921.clone(); rt::apply_direct( interp, "is!", - &[__t2614, __t2615, __t2616, __t2617, __t2618, __t2619], + &[__t2615, __t2616, __t2617, __t2618, __t2619, __t2620], )? }); } @@ -11878,7 +11878,7 @@ pub fn aot_shen_x2e_findall_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRe } } } else { - break Ok(v_W2268.clone()); + break Ok(v_W1922.clone()); } } } @@ -11899,37 +11899,37 @@ pub fn aot_shen_x2e_overbind(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V2275 = args[0].clone(); + let mut v_V1929 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2276 = args[1].clone(); + let mut v_V1930 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2277 = args[2].clone(); + let mut v_V1931 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2278 = args[3].clone(); + let mut v_V1932 = args[3].clone(); #[allow(unused_mut)] - let mut v_V2279 = args[4].clone(); + let mut v_V1933 = args[4].clone(); #[allow(unused_mut)] - let mut v_V2280 = args[5].clone(); + let mut v_V1934 = args[5].clone(); #[allow(clippy::never_loop)] loop { { let _ = { - let __t2620 = v_V2276.clone(); - let __t2627 = { - let __t2623 = { - let __t2621 = v_V2275.clone(); - let __t2622 = v_V2277.clone(); - rt::apply_direct(interp, "shen.deref", &[__t2621, __t2622])? + let __t2621 = v_V1930.clone(); + let __t2628 = { + let __t2624 = { + let __t2622 = v_V1929.clone(); + let __t2623 = v_V1931.clone(); + rt::apply_direct(interp, "shen.deref", &[__t2622, __t2623])? }; - let __t2626 = { - let __t2624 = v_V2276.clone(); - let __t2625 = v_V2277.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2624, __t2625])? + let __t2627 = { + let __t2625 = v_V1930.clone(); + let __t2626 = v_V1931.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2625, __t2626])? }; - rt::cons(&__t2623, &__t2626) + rt::cons(&__t2624, &__t2627) }; - let __t2628 = v_V2277.clone(); - rt::apply_direct(interp, "shen.bindv", &[__t2620, __t2627, __t2628])? + let __t2629 = v_V1931.clone(); + rt::apply_direct(interp, "shen.bindv", &[__t2621, __t2628, __t2629])? }; break Ok(Value::bool(false)); } @@ -11950,50 +11950,50 @@ pub fn aot_occurs_x2d_check(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t2638 = Value::sym(interp.intern("shen.*occurs*")); - let __t2639 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t2638, __t2639])? + let __t2639 = Value::sym(interp.intern("shen.*occurs*")); + let __t2640 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t2639, __t2640])? }); } else { { - let __t2635 = { - let __t2631 = Value::sym(interp.intern("-")); - let __t2632 = v_V2283.clone(); - rt::eq(&__t2631, &__t2632) + let __t2636 = { + let __t2632 = Value::sym(interp.intern("-")); + let __t2633 = v_V1937.clone(); + rt::eq(&__t2632, &__t2633) }; - if match rt::is_truthy(interp, &__t2635) { + if match rt::is_truthy(interp, &__t2636) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2633 = Value::sym(interp.intern("shen.*occurs*")); - let __t2634 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t2633, __t2634])? + let __t2634 = Value::sym(interp.intern("shen.*occurs*")); + let __t2635 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t2634, __t2635])? }); } else { { - let __t2630 = Value::bool(true); - if match rt::is_truthy(interp, &__t2630) { + let __t2631 = Value::bool(true); + if match rt::is_truthy(interp, &__t2631) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2629 = Value::str("occurs-check expects a + or a -.\n"); - rt::apply_direct(interp, "simple-error", &[__t2629])? + let __t2630 = Value::str("occurs-check expects a + or a -.\n"); + rt::apply_direct(interp, "simple-error", &[__t2630])? }); } else { break Err(ShenError::new("cond: no clause matched")); diff --git a/crates/shen-rust/src/aot/kernel/reader.rs b/crates/shen-rust/src/aot/kernel/reader.rs index e463ed0..7cffeff 100644 --- a/crates/shen-rust/src/aot/kernel/reader.rs +++ b/crates/shen-rust/src/aot/kernel/reader.rs @@ -32,25 +32,25 @@ pub fn aot_read_x2d_file(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { + let v_W2184 = match (|| -> ShenResult { Ok({ let __t2 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2531 = args[0].clone(); + let v_Z2185 = args[0].clone(); Ok({ - let __t1 = v_Z2531.clone(); + let __t1 = v_Z2185.clone(); rt::apply_direct(interp, "shen.", &[__t1])? }) }, @@ -58,7 +58,7 @@ pub fn aot_read_x2d_file(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult", 1, move |interp, args| { - let v_Z2532 = args[0].clone(); + let v_Z2186 = args[0].clone(); Ok({ let __t5 = { let __t4 = Value::sym(interp.intern("shen.*residue*")); @@ -87,11 +87,11 @@ pub fn aot_read_x2d_file(interp: &mut Interp, args: &[Value]) -> ShenResult She ))); } #[allow(unused_mut)] - let mut v_V2534 = args[0].clone(); + let mut v_V2188 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -125,7 +125,7 @@ pub fn aot_shen_x2e_reader_x2d_error(interp: &mut Interp, args: &[Value]) -> She rt::apply_direct(interp, "value", &[__t8])? }; let __t10 = Value::int(0i64); - let __t11 = v_V2534.clone(); + let __t11 = v_V2188.clone(); rt::apply_direct( interp, "shen.reader-error-message", @@ -158,17 +158,17 @@ pub fn aot_shen_x2e_reader_x2d_error_x2d_message( ))); } #[allow(unused_mut)] - let mut v_V2542 = args[0].clone(); + let mut v_V2196 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2543 = args[1].clone(); + let mut v_V2197 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2544 = args[2].clone(); + let mut v_V2198 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t34 = { let __t32 = Value::nil(); - let __t33 = v_V2544.clone(); + let __t33 = v_V2198.clone(); rt::eq(&__t32, &__t33) }; if match rt::is_truthy(interp, &__t34) { @@ -179,8 +179,8 @@ pub fn aot_shen_x2e_reader_x2d_error_x2d_message( } else { { let __t31 = { - let __t29 = v_V2542.clone(); - let __t30 = v_V2543.clone(); + let __t29 = v_V2196.clone(); + let __t30 = v_V2197.clone(); rt::eq(&__t29, &__t30) }; if match rt::is_truthy(interp, &__t31) { @@ -191,7 +191,7 @@ pub fn aot_shen_x2e_reader_x2d_error_x2d_message( } else { { let __t28 = { - let __t17 = v_V2544.clone(); + let __t17 = v_V2198.clone(); rt::is_cons(&__t17) }; if match rt::is_truthy(interp, &__t28) { @@ -201,20 +201,20 @@ pub fn aot_shen_x2e_reader_x2d_error_x2d_message( break Ok({ let __t20 = { let __t19 = { - let __t18 = v_V2544.clone(); + let __t18 = v_V2198.clone(); rt::hd(&__t18)? }; rt::apply_direct(interp, "n->string", &[__t19])? }; let __t27 = { - let __t21 = v_V2542.clone(); + let __t21 = v_V2196.clone(); let __t24 = { - let __t22 = v_V2543.clone(); + let __t22 = v_V2197.clone(); let __t23 = Value::int(1i64); rt::add(&__t22, &__t23)? }; let __t26 = { - let __t25 = v_V2544.clone(); + let __t25 = v_V2198.clone(); rt::tl(&__t25)? }; rt::apply_direct( @@ -233,10 +233,10 @@ pub fn aot_shen_x2e_reader_x2d_error_x2d_message( Err(e) => break Err(e), } { break Ok({ - let __t15 = Value::sym( - interp.intern("shen.reader-error-message"), + let __t15 = Value::str( + "partial function shen.reader-error-message", ); - rt::apply_direct(interp, "shen.f-error", &[__t15])? + rt::apply_direct(interp, "simple-error", &[__t15])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -297,24 +297,24 @@ pub fn aot_read_x2d_file_x2d_as_x2d_bytelist( ))); } #[allow(unused_mut)] - let mut v_V2545 = args[0].clone(); + let mut v_V2199 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2546 = { - let __t36 = v_V2545.clone(); + let v_W2200 = { + let __t36 = v_V2199.clone(); let __t37 = Value::sym(interp.intern("in")); rt::apply_direct(interp, "open", &[__t36, __t37])? }; { - let v_W2547 = { - let __t38 = v_W2546.clone(); + let v_W2201 = { + let __t38 = v_W2200.clone(); rt::apply_direct(interp, "read-byte", &[__t38])? }; { - let v_W2548 = { - let __t39 = v_W2546.clone(); - let __t40 = v_W2547.clone(); + let v_W2202 = { + let __t39 = v_W2200.clone(); + let __t40 = v_W2201.clone(); let __t41 = Value::nil(); rt::apply_direct( interp, @@ -323,12 +323,12 @@ pub fn aot_read_x2d_file_x2d_as_x2d_bytelist( )? }; { - let v_W2549 = { - let __t42 = v_W2546.clone(); + let v_W2203 = { + let __t42 = v_W2200.clone(); rt::apply_direct(interp, "close", &[__t42])? }; break Ok({ - let __t43 = v_W2548.clone(); + let __t43 = v_W2202.clone(); rt::apply_direct(interp, "reverse", &[__t43])? }); } @@ -362,24 +362,24 @@ pub fn aot_shen_x2e_read_x2d_file_x2d_as_x2d_bytelist_x2d_help( ))); } #[allow(unused_mut)] - let mut v_V2550 = args[0].clone(); + let mut v_V2204 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2551 = args[1].clone(); + let mut v_V2205 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2552 = args[2].clone(); + let mut v_V2206 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t53 = { let __t51 = Value::int(-1i64); - let __t52 = v_V2551.clone(); + let __t52 = v_V2205.clone(); rt::eq(&__t51, &__t52) }; if match rt::is_truthy(interp, &__t53) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V2552.clone()); + break Ok(v_V2206.clone()); } else { { let __t50 = Value::bool(true); @@ -388,19 +388,19 @@ pub fn aot_shen_x2e_read_x2d_file_x2d_as_x2d_bytelist_x2d_help( Err(e) => break Err(e), } { { - let __t44 = v_V2550.clone(); + let __t44 = v_V2204.clone(); let __t46 = { - let __t45 = v_V2550.clone(); + let __t45 = v_V2204.clone(); rt::apply_direct(interp, "read-byte", &[__t45])? }; let __t49 = { - let __t47 = v_V2551.clone(); - let __t48 = v_V2552.clone(); + let __t47 = v_V2205.clone(); + let __t48 = v_V2206.clone(); rt::cons(&__t47, &__t48) }; - v_V2550 = __t44; - v_V2551 = __t46; - v_V2552 = __t49; + v_V2204 = __t44; + v_V2205 = __t46; + v_V2206 = __t49; continue; } } else { @@ -436,19 +436,19 @@ pub fn aot_read_x2d_file_x2d_as_x2d_string( ))); } #[allow(unused_mut)] - let mut v_V2553 = args[0].clone(); + let mut v_V2207 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2554 = { - let __t54 = v_V2553.clone(); + let v_W2208 = { + let __t54 = v_V2207.clone(); let __t55 = Value::sym(interp.intern("in")); rt::apply_direct(interp, "open", &[__t54, __t55])? }; break Ok({ - let __t56 = v_W2554.clone(); + let __t56 = v_W2208.clone(); let __t58 = { - let __t57 = v_W2554.clone(); + let __t57 = v_W2208.clone(); rt::apply_direct(interp, "read-byte", &[__t57])? }; let __t59 = Value::str(""); @@ -476,17 +476,17 @@ pub fn aot_shen_x2e_rfas_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V2555 = args[0].clone(); + let mut v_V2209 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2556 = args[1].clone(); + let mut v_V2210 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2557 = args[2].clone(); + let mut v_V2211 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t71 = { let __t68 = Value::int(-1i64); - let __t69 = v_V2556.clone(); + let __t69 = v_V2210.clone(); rt::eq(&__t68, &__t69) }; if match rt::is_truthy(interp, &__t71) { @@ -495,10 +495,10 @@ pub fn aot_shen_x2e_rfas_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul } { { let _ = { - let __t70 = v_V2555.clone(); + let __t70 = v_V2209.clone(); rt::apply_direct(interp, "close", &[__t70])? }; - break Ok(v_V2557.clone()); + break Ok(v_V2211.clone()); } } else { { @@ -508,22 +508,22 @@ pub fn aot_shen_x2e_rfas_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResul Err(e) => break Err(e), } { { - let __t60 = v_V2555.clone(); + let __t60 = v_V2209.clone(); let __t62 = { - let __t61 = v_V2555.clone(); + let __t61 = v_V2209.clone(); rt::apply_direct(interp, "read-byte", &[__t61])? }; let __t66 = { - let __t63 = v_V2557.clone(); + let __t63 = v_V2211.clone(); let __t65 = { - let __t64 = v_V2556.clone(); + let __t64 = v_V2210.clone(); rt::apply_direct(interp, "n->string", &[__t64])? }; rt::apply_direct(interp, "cn", &[__t63, __t65])? }; - v_V2555 = __t60; - v_V2556 = __t62; - v_V2557 = __t66; + v_V2209 = __t60; + v_V2210 = __t62; + v_V2211 = __t66; continue; } } else { @@ -549,12 +549,12 @@ pub fn aot_input(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2558 = args[0].clone(); + let mut v_V2212 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ let __t73 = { - let __t72 = v_V2558.clone(); + let __t72 = v_V2212.clone(); rt::apply_direct(interp, "read", &[__t72])? }; rt::apply_direct(interp, "eval-kl", &[__t73])? @@ -567,77 +567,74 @@ fn install_input(interp: &mut Interp) { interp.register_aot_direct("input", aot_input); } -/// AOT-compiled from KL `(defun input+ ...)` -pub fn aot_input_x2b_(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun shen.input-h+ ...)` +pub fn aot_shen_x2e_input_x2d_h_x2b_(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 2 { return Err(ShenError::new(format!( - "input+: expected 2 args, got {}", + "shen.input-h+: expected 2 args, got {}", args.len() ))); } #[allow(unused_mut)] - let mut v_V2559 = args[0].clone(); + let mut v_V2213 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2560 = args[1].clone(); + let mut v_V2214 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2561 = { - let __t74 = v_V2559.clone(); + let v_W2215 = { + let __t74 = v_V2213.clone(); rt::apply_direct(interp, "shen.monotype", &[__t74])? }; { - let v_W2562 = { - let __t75 = v_V2560.clone(); + let v_W2216 = { + let __t75 = v_V2214.clone(); rt::apply_direct(interp, "read", &[__t75])? }; { - let __t81 = { + let __t80 = { let __t76 = Value::bool(false); - let __t80 = { - let __t77 = v_W2562.clone(); - let __t79 = { - let __t78 = v_V2559.clone(); - rt::apply_direct(interp, "shen.rectify-type", &[__t78])? - }; - rt::apply_direct(interp, "shen.typecheck", &[__t77, __t79])? + let __t79 = { + let __t77 = v_W2216.clone(); + let __t78 = v_V2213.clone(); + rt::apply_direct(interp, "shen.typecheck", &[__t77, __t78])? }; - rt::eq(&__t76, &__t80) + rt::eq(&__t76, &__t79) }; - if match rt::is_truthy(interp, &__t81) { + if match rt::is_truthy(interp, &__t80) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t92 = { - let __t82 = Value::str("type error: "); - let __t91 = { - let __t83 = v_W2562.clone(); - let __t89 = { - let __t84 = Value::str(" is not of type "); - let __t88 = { - let __t85 = v_V2559.clone(); - let __t86 = Value::str("\n"); - let __t87 = Value::sym(interp.intern("shen.r")); + let __t91 = { + let __t81 = Value::str("type error: "); + let __t90 = { + let __t82 = v_W2216.clone(); + let __t88 = { + let __t83 = Value::str(" is not of type "); + let __t87 = { + let __t84 = v_V2213.clone(); + let __t85 = Value::str("\n"); + let __t86 = Value::sym(interp.intern("shen.r")); rt::apply_direct( interp, "shen.app", - &[__t85, __t86, __t87], + &[__t84, __t85, __t86], )? }; - rt::apply_direct(interp, "cn", &[__t84, __t88])? + rt::apply_direct(interp, "cn", &[__t83, __t87])? }; - let __t90 = Value::sym(interp.intern("shen.r")); - rt::apply_direct(interp, "shen.app", &[__t83, __t89, __t90])? + let __t89 = Value::sym(interp.intern("shen.r")); + rt::apply_direct(interp, "shen.app", &[__t82, __t88, __t89])? }; - rt::apply_direct(interp, "cn", &[__t82, __t91])? + rt::apply_direct(interp, "cn", &[__t81, __t90])? }; - rt::apply_direct(interp, "simple-error", &[__t92])? + rt::apply_direct(interp, "simple-error", &[__t91])? }); } else { break Ok({ - let __t93 = v_W2562.clone(); - rt::apply_direct(interp, "eval-kl", &[__t93])? + let __t92 = v_W2216.clone(); + rt::apply_direct(interp, "eval-kl", &[__t92])? }); } } @@ -646,9 +643,9 @@ pub fn aot_input_x2b_(interp: &mut Interp, args: &[Value]) -> ShenResult } } -fn install_input_x2b_(interp: &mut Interp) { - interp.register_native("input+", 2, aot_input_x2b_); - interp.register_aot_direct("input+", aot_input_x2b_); +fn install_shen_x2e_input_x2d_h_x2b_(interp: &mut Interp) { + interp.register_native("shen.input-h+", 2, aot_shen_x2e_input_x2d_h_x2b_); + interp.register_aot_direct("shen.input-h+", aot_shen_x2e_input_x2d_h_x2b_); } /// AOT-compiled from KL `(defun shen.monotype ...)` @@ -660,72 +657,72 @@ pub fn aot_shen_x2e_monotype(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V2563 = args[0].clone(); + let mut v_V2217 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t107 = { - let __t103 = v_V2563.clone(); - rt::is_cons(&__t103) + let __t106 = { + let __t102 = v_V2217.clone(); + rt::is_cons(&__t102) }; - if match rt::is_truthy(interp, &__t107) { + if match rt::is_truthy(interp, &__t106) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t105 = { + let __t104 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2564 = args[0].clone(); + let v_Z2218 = args[0].clone(); Ok({ - let __t104 = v_Z2564.clone(); - rt::apply_direct(interp, "shen.monotype", &[__t104])? + let __t103 = v_Z2218.clone(); + rt::apply_direct(interp, "shen.monotype", &[__t103])? }) }, Vec::new(), interp, ) }; - let __t106 = v_V2563.clone(); - rt::apply_direct(interp, "map", &[__t105, __t106])? + let __t105 = v_V2217.clone(); + rt::apply_direct(interp, "map", &[__t104, __t105])? }); } else { { - let __t102 = Value::bool(true); - if match rt::is_truthy(interp, &__t102) { + let __t101 = Value::bool(true); + if match rt::is_truthy(interp, &__t101) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t95 = { - let __t94 = v_V2563.clone(); - rt::apply_direct(interp, "variable?", &[__t94])? + let __t94 = { + let __t93 = v_V2217.clone(); + rt::apply_direct(interp, "variable?", &[__t93])? }; - if match rt::is_truthy(interp, &__t95) { + if match rt::is_truthy(interp, &__t94) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t101 = { - let __t96 = Value::str("input+ expects a monotype: not "); - let __t100 = { - let __t97 = v_V2563.clone(); - let __t98 = Value::str("\n"); - let __t99 = Value::sym(interp.intern("shen.a")); + let __t100 = { + let __t95 = Value::str("input+ expects a monotype: not "); + let __t99 = { + let __t96 = v_V2217.clone(); + let __t97 = Value::str("\n"); + let __t98 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t97, __t98, __t99], + &[__t96, __t97, __t98], )? }; - rt::apply_direct(interp, "cn", &[__t96, __t100])? + rt::apply_direct(interp, "cn", &[__t95, __t99])? }; - rt::apply_direct(interp, "simple-error", &[__t101])? + rt::apply_direct(interp, "simple-error", &[__t100])? }); } else { - break Ok(v_V2563.clone()); + break Ok(v_V2217.clone()); } } } else { @@ -751,32 +748,32 @@ pub fn aot_lineread(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2565 = args[0].clone(); + let mut v_V2219 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t108 = v_V2565.clone(); - let __t110 = { - let __t109 = v_V2565.clone(); - rt::apply_direct(interp, "shen.my-read-byte", &[__t109])? + let __t107 = v_V2219.clone(); + let __t109 = { + let __t108 = v_V2219.clone(); + rt::apply_direct(interp, "shen.my-read-byte", &[__t108])? }; - let __t111 = Value::nil(); - let __t113 = { + let __t110 = Value::nil(); + let __t112 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2566 = args[0].clone(); + let v_Z2220 = args[0].clone(); Ok({ - let __t112 = v_Z2566.clone(); - rt::apply_direct(interp, "shen.return?", &[__t112])? + let __t111 = v_Z2220.clone(); + rt::apply_direct(interp, "shen.return?", &[__t111])? }) }, Vec::new(), interp, ) }; - rt::apply_direct(interp, "shen.read-loop", &[__t108, __t110, __t111, __t113])? + rt::apply_direct(interp, "shen.read-loop", &[__t107, __t109, __t110, __t112])? }); } } @@ -795,40 +792,40 @@ pub fn aot_read_x2d_from_x2d_string(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2567 = args[0].clone(); + let mut v_V2221 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2568 = { - let __t114 = v_V2567.clone(); - rt::apply_direct(interp, "shen.str->bytes", &[__t114])? + let v_W2222 = { + let __t113 = v_V2221.clone(); + rt::apply_direct(interp, "shen.str->bytes", &[__t113])? }; { - let v_W2569 = { - let __t116 = { + let v_W2223 = { + let __t115 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2570 = args[0].clone(); + let v_Z2224 = args[0].clone(); Ok({ - let __t115 = v_Z2570.clone(); - rt::apply_direct(interp, "shen.", &[__t115])? + let __t114 = v_Z2224.clone(); + rt::apply_direct(interp, "shen.", &[__t114])? }) }, Vec::new(), interp, ) }; - let __t117 = v_W2568.clone(); - rt::apply_direct(interp, "compile", &[__t116, __t117])? + let __t116 = v_W2222.clone(); + rt::apply_direct(interp, "compile", &[__t115, __t116])? }; { - let v_W2571 = { - let __t118 = v_W2569.clone(); - rt::apply_direct(interp, "shen.process-sexprs", &[__t118])? + let v_W2225 = { + let __t117 = v_W2223.clone(); + rt::apply_direct(interp, "shen.process-sexprs", &[__t117])? }; - break Ok(v_W2571.clone()); + break Ok(v_W2225.clone()); } } } @@ -852,35 +849,35 @@ pub fn aot_read_x2d_from_x2d_string_x2d_unprocessed( ))); } #[allow(unused_mut)] - let mut v_V2572 = args[0].clone(); + let mut v_V2226 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2573 = { - let __t119 = v_V2572.clone(); - rt::apply_direct(interp, "shen.str->bytes", &[__t119])? + let v_W2227 = { + let __t118 = v_V2226.clone(); + rt::apply_direct(interp, "shen.str->bytes", &[__t118])? }; { - let v_W2574 = { - let __t121 = { + let v_W2228 = { + let __t120 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2575 = args[0].clone(); + let v_Z2229 = args[0].clone(); Ok({ - let __t120 = v_Z2575.clone(); - rt::apply_direct(interp, "shen.", &[__t120])? + let __t119 = v_Z2229.clone(); + rt::apply_direct(interp, "shen.", &[__t119])? }) }, Vec::new(), interp, ) }; - let __t122 = v_W2573.clone(); - rt::apply_direct(interp, "compile", &[__t121, __t122])? + let __t121 = v_W2227.clone(); + rt::apply_direct(interp, "compile", &[__t120, __t121])? }; - break Ok(v_W2574.clone()); + break Ok(v_W2228.clone()); } } } @@ -907,57 +904,57 @@ pub fn aot_shen_x2e_str_x2d__x3e_bytes(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V2576 = args[0].clone(); + let mut v_V2230 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t135 = { - let __t133 = Value::str(""); - let __t134 = v_V2576.clone(); - rt::eq(&__t133, &__t134) + let __t134 = { + let __t132 = Value::str(""); + let __t133 = v_V2230.clone(); + rt::eq(&__t132, &__t133) }; - if match rt::is_truthy(interp, &__t135) { + if match rt::is_truthy(interp, &__t134) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t132 = { - let __t125 = v_V2576.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t125])? + let __t131 = { + let __t124 = v_V2230.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t124])? }; - if match rt::is_truthy(interp, &__t132) { + if match rt::is_truthy(interp, &__t131) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t128 = { - let __t127 = { - let __t126 = v_V2576.clone(); - rt::apply_direct(interp, "hdstr", &[__t126])? + let __t127 = { + let __t126 = { + let __t125 = v_V2230.clone(); + rt::apply_direct(interp, "hdstr", &[__t125])? }; - rt::apply_direct(interp, "string->n", &[__t127])? + rt::apply_direct(interp, "string->n", &[__t126])? }; - let __t131 = { - let __t130 = { - let __t129 = v_V2576.clone(); - rt::apply_direct(interp, "tlstr", &[__t129])? + let __t130 = { + let __t129 = { + let __t128 = v_V2230.clone(); + rt::apply_direct(interp, "tlstr", &[__t128])? }; - rt::apply_direct(interp, "shen.str->bytes", &[__t130])? + rt::apply_direct(interp, "shen.str->bytes", &[__t129])? }; - rt::cons(&__t128, &__t131) + rt::cons(&__t127, &__t130) }); } else { { - let __t124 = Value::bool(true); - if match rt::is_truthy(interp, &__t124) { + let __t123 = Value::bool(true); + if match rt::is_truthy(interp, &__t123) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t123 = Value::sym(interp.intern("shen.str->bytes")); - rt::apply_direct(interp, "shen.f-error", &[__t123])? + let __t122 = Value::str("partial function shen.str->bytes"); + rt::apply_direct(interp, "simple-error", &[__t122])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -984,35 +981,35 @@ pub fn aot_read(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V2577 = args[0].clone(); + let mut v_V2231 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t142 = { - let __t136 = v_V2577.clone(); - let __t138 = { - let __t137 = v_V2577.clone(); - rt::apply_direct(interp, "shen.my-read-byte", &[__t137])? - }; - let __t139 = Value::nil(); - let __t141 = { + let __t141 = { + let __t135 = v_V2231.clone(); + let __t137 = { + let __t136 = v_V2231.clone(); + rt::apply_direct(interp, "shen.my-read-byte", &[__t136])? + }; + let __t138 = Value::nil(); + let __t140 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2578 = args[0].clone(); + let v_Z2232 = args[0].clone(); Ok({ - let __t140 = v_Z2578.clone(); - rt::apply_direct(interp, "shen.whitespace?", &[__t140])? + let __t139 = v_Z2232.clone(); + rt::apply_direct(interp, "shen.whitespace?", &[__t139])? }) }, Vec::new(), interp, ) }; - rt::apply_direct(interp, "shen.read-loop", &[__t136, __t138, __t139, __t141])? + rt::apply_direct(interp, "shen.read-loop", &[__t135, __t137, __t138, __t140])? }; - rt::hd(&__t142)? + rt::hd(&__t141)? }); } } @@ -1031,29 +1028,29 @@ pub fn aot_shen_x2e_my_x2d_read_x2d_byte(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2579 = args[0].clone(); + let mut v_V2233 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t144 = { - let __t143 = v_V2579.clone(); - rt::apply_direct(interp, "shen.char-stinput?", &[__t143])? + let __t143 = { + let __t142 = v_V2233.clone(); + rt::apply_direct(interp, "shen.char-stinput?", &[__t142])? }; - if match rt::is_truthy(interp, &__t144) { + if match rt::is_truthy(interp, &__t143) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t146 = { - let __t145 = v_V2579.clone(); - rt::apply_direct(interp, "shen.read-unit-string", &[__t145])? + let __t145 = { + let __t144 = v_V2233.clone(); + rt::apply_direct(interp, "shen.read-unit-string", &[__t144])? }; - rt::apply_direct(interp, "string->n", &[__t146])? + rt::apply_direct(interp, "string->n", &[__t145])? }); } else { break Ok({ - let __t147 = v_V2579.clone(); - rt::apply_direct(interp, "read-byte", &[__t147])? + let __t146 = v_V2233.clone(); + rt::apply_direct(interp, "read-byte", &[__t146])? }); } } @@ -1074,67 +1071,67 @@ pub fn aot_shen_x2e_read_x2d_loop(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2584 = args[0].clone(); + let mut v_V2238 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2585 = args[1].clone(); + let mut v_V2239 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2586 = args[2].clone(); + let mut v_V2240 = args[2].clone(); #[allow(unused_mut)] - let mut v_V2587 = args[3].clone(); + let mut v_V2241 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t193 = { - let __t190 = Value::int(94i64); - let __t191 = v_V2585.clone(); - rt::eq(&__t190, &__t191) + let __t192 = { + let __t189 = Value::int(94i64); + let __t190 = v_V2239.clone(); + rt::eq(&__t189, &__t190) }; - if match rt::is_truthy(interp, &__t193) { + if match rt::is_truthy(interp, &__t192) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t192 = Value::str("read aborted"); - rt::apply_direct(interp, "simple-error", &[__t192])? + let __t191 = Value::str("read aborted"); + rt::apply_direct(interp, "simple-error", &[__t191])? }); } else { { - let __t189 = { - let __t181 = Value::int(-1i64); - let __t182 = v_V2585.clone(); - rt::eq(&__t181, &__t182) + let __t188 = { + let __t180 = Value::int(-1i64); + let __t181 = v_V2239.clone(); + rt::eq(&__t180, &__t181) }; - if match rt::is_truthy(interp, &__t189) { + if match rt::is_truthy(interp, &__t188) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t184 = { - let __t183 = v_V2586.clone(); - rt::apply_direct(interp, "empty?", &[__t183])? + let __t183 = { + let __t182 = v_V2240.clone(); + rt::apply_direct(interp, "empty?", &[__t182])? }; - if match rt::is_truthy(interp, &__t184) { + if match rt::is_truthy(interp, &__t183) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t185 = Value::str("error: empty stream"); - rt::apply_direct(interp, "simple-error", &[__t185])? + let __t184 = Value::str("error: empty stream"); + rt::apply_direct(interp, "simple-error", &[__t184])? }); } else { break Ok({ - let __t187 = { + let __t186 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2588 = args[0].clone(); + let v_Z2242 = args[0].clone(); Ok({ - let __t186 = v_Z2588.clone(); + let __t185 = v_Z2242.clone(); rt::apply_direct( interp, "shen.", - &[__t186], + &[__t185], )? }) }, @@ -1142,149 +1139,149 @@ pub fn aot_shen_x2e_read_x2d_loop(interp: &mut Interp, args: &[Value]) -> ShenRe interp, ) }; - let __t188 = v_V2586.clone(); - rt::apply_direct(interp, "compile", &[__t187, __t188])? + let __t187 = v_V2240.clone(); + rt::apply_direct(interp, "compile", &[__t186, __t187])? }); } } } else { { - let __t180 = { - let __t173 = Value::int(0i64); - let __t174 = v_V2585.clone(); - rt::eq(&__t173, &__t174) + let __t179 = { + let __t172 = Value::int(0i64); + let __t173 = v_V2239.clone(); + rt::eq(&__t172, &__t173) }; - if match rt::is_truthy(interp, &__t180) { + if match rt::is_truthy(interp, &__t179) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t175 = v_V2584.clone(); - let __t177 = { - let __t176 = v_V2584.clone(); - rt::apply_direct(interp, "shen.my-read-byte", &[__t176])? + let __t174 = v_V2238.clone(); + let __t176 = { + let __t175 = v_V2238.clone(); + rt::apply_direct(interp, "shen.my-read-byte", &[__t175])? }; - let __t178 = v_V2586.clone(); - let __t179 = v_V2587.clone(); - v_V2584 = __t175; - v_V2585 = __t177; - v_V2586 = __t178; - v_V2587 = __t179; + let __t177 = v_V2240.clone(); + let __t178 = v_V2241.clone(); + v_V2238 = __t174; + v_V2239 = __t176; + v_V2240 = __t177; + v_V2241 = __t178; continue; } } else { { - let __t172 = Value::bool(true); - if match rt::is_truthy(interp, &__t172) { + let __t171 = Value::bool(true); + if match rt::is_truthy(interp, &__t171) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t149 = { - let __t148 = v_V2585.clone(); - rt::apply_value(interp, v_V2587.clone(), &[__t148])? + let __t148 = { + let __t147 = v_V2239.clone(); + rt::apply_value(interp, v_V2241.clone(), &[__t147])? }; - if match rt::is_truthy(interp, &__t149) { + if match rt::is_truthy(interp, &__t148) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2589 = { - let __t150 = v_V2586.clone(); + let v_W2243 = { + let __t149 = v_V2240.clone(); rt::apply_direct( interp, "shen.try-parse", - &[__t150], + &[__t149], )? }; { - let __t152 = { - let __t151 = v_W2589.clone(); + let __t151 = { + let __t150 = v_W2243.clone(); rt::apply_direct( interp, "shen.nothing-doing?", - &[__t151], + &[__t150], )? }; - if match rt::is_truthy(interp, &__t152) { + if match rt::is_truthy(interp, &__t151) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t153 = v_V2584.clone(); - let __t155 = { - let __t154 = v_V2584.clone(); + let __t152 = v_V2238.clone(); + let __t154 = { + let __t153 = v_V2238.clone(); rt::apply_direct( interp, "shen.my-read-byte", - &[__t154], + &[__t153], )? }; - let __t160 = { - let __t156 = v_V2586.clone(); - let __t159 = { - let __t157 = - v_V2585.clone(); - let __t158 = Value::nil(); - rt::cons(&__t157, &__t158) + let __t159 = { + let __t155 = v_V2240.clone(); + let __t158 = { + let __t156 = + v_V2239.clone(); + let __t157 = Value::nil(); + rt::cons(&__t156, &__t157) }; rt::apply_direct( interp, "append", - &[__t156, __t159], + &[__t155, __t158], )? }; - let __t161 = v_V2587.clone(); - v_V2584 = __t153; - v_V2585 = __t155; - v_V2586 = __t160; - v_V2587 = __t161; + let __t160 = v_V2241.clone(); + v_V2238 = __t152; + v_V2239 = __t154; + v_V2240 = __t159; + v_V2241 = __t160; continue; } } else { { let _ = { - let __t162 = v_V2586.clone(); + let __t161 = v_V2240.clone(); rt::apply_direct( interp, "shen.record-it", - &[__t162], + &[__t161], )? }; - break Ok(v_W2589.clone()); + break Ok(v_W2243.clone()); } } } } } else { { - let __t163 = v_V2584.clone(); - let __t165 = { - let __t164 = v_V2584.clone(); + let __t162 = v_V2238.clone(); + let __t164 = { + let __t163 = v_V2238.clone(); rt::apply_direct( interp, "shen.my-read-byte", - &[__t164], + &[__t163], )? }; - let __t170 = { - let __t166 = v_V2586.clone(); - let __t169 = { - let __t167 = v_V2585.clone(); - let __t168 = Value::nil(); - rt::cons(&__t167, &__t168) + let __t169 = { + let __t165 = v_V2240.clone(); + let __t168 = { + let __t166 = v_V2239.clone(); + let __t167 = Value::nil(); + rt::cons(&__t166, &__t167) }; rt::apply_direct( interp, "append", - &[__t166, __t169], + &[__t165, __t168], )? }; - let __t171 = v_V2587.clone(); - v_V2584 = __t163; - v_V2585 = __t165; - v_V2586 = __t170; - v_V2587 = __t171; + let __t170 = v_V2241.clone(); + v_V2238 = __t162; + v_V2239 = __t164; + v_V2240 = __t169; + v_V2241 = __t170; continue; } } @@ -1316,29 +1313,29 @@ pub fn aot_shen_x2e_try_x2d_parse(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2590 = args[0].clone(); + let mut v_V2244 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2591 = match (|| -> ShenResult { + let v_W2245 = match (|| -> ShenResult { Ok({ - let __t195 = { + let __t194 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2592 = args[0].clone(); + let v_Z2246 = args[0].clone(); Ok({ - let __t194 = v_Z2592.clone(); - rt::apply_direct(interp, "shen.", &[__t194])? + let __t193 = v_Z2246.clone(); + rt::apply_direct(interp, "shen.", &[__t193])? }) }, Vec::new(), interp, ) }; - let __t196 = v_V2590.clone(); - rt::apply_direct(interp, "compile", &[__t195, __t196])? + let __t195 = v_V2244.clone(); + rt::apply_direct(interp, "compile", &[__t194, __t195])? }) })() { Ok(v) => v, @@ -1348,7 +1345,7 @@ pub fn aot_shen_x2e_try_x2d_parse(interp: &mut Interp, args: &[Value]) -> ShenRe "", 1, move |interp, args| { - let v_Z2593 = args[0].clone(); + let v_Z2247 = args[0].clone(); Ok(Value::sym(interp.intern("shen.i-failed!"))) }, Vec::new(), @@ -1360,19 +1357,19 @@ pub fn aot_shen_x2e_try_x2d_parse(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t198 = { - let __t197 = v_W2591.clone(); - rt::apply_direct(interp, "shen.nothing-doing?", &[__t197])? + let __t197 = { + let __t196 = v_W2245.clone(); + rt::apply_direct(interp, "shen.nothing-doing?", &[__t196])? }; - if match rt::is_truthy(interp, &__t198) { + if match rt::is_truthy(interp, &__t197) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.i-failed!"))); } else { break Ok({ - let __t199 = v_W2591.clone(); - rt::apply_direct(interp, "shen.process-sexprs", &[__t199])? + let __t198 = v_W2245.clone(); + rt::apply_direct(interp, "shen.process-sexprs", &[__t198])? }); } } @@ -1397,36 +1394,36 @@ pub fn aot_shen_x2e_nothing_x2d_doing_x3f_( ))); } #[allow(unused_mut)] - let mut v_V2596 = args[0].clone(); + let mut v_V2250 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t206 = { - let __t204 = Value::sym(interp.intern("shen.i-failed!")); - let __t205 = v_V2596.clone(); - rt::eq(&__t204, &__t205) + let __t205 = { + let __t203 = Value::sym(interp.intern("shen.i-failed!")); + let __t204 = v_V2250.clone(); + rt::eq(&__t203, &__t204) }; - if match rt::is_truthy(interp, &__t206) { + if match rt::is_truthy(interp, &__t205) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t203 = { - let __t201 = Value::nil(); - let __t202 = v_V2596.clone(); - rt::eq(&__t201, &__t202) + let __t202 = { + let __t200 = Value::nil(); + let __t201 = v_V2250.clone(); + rt::eq(&__t200, &__t201) }; - if match rt::is_truthy(interp, &__t203) { + if match rt::is_truthy(interp, &__t202) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t200 = Value::bool(true); - if match rt::is_truthy(interp, &__t200) { + let __t199 = Value::bool(true); + if match rt::is_truthy(interp, &__t199) { Ok(b) => b, Err(e) => break Err(e), } { @@ -1460,16 +1457,16 @@ pub fn aot_shen_x2e_record_x2d_it(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2597 = args[0].clone(); + let mut v_V2251 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t207 = Value::sym(interp.intern("shen.*it*")); - let __t209 = { - let __t208 = v_V2597.clone(); - rt::apply_direct(interp, "shen.bytes->string", &[__t208])? + let __t206 = Value::sym(interp.intern("shen.*it*")); + let __t208 = { + let __t207 = v_V2251.clone(); + rt::apply_direct(interp, "shen.bytes->string", &[__t207])? }; - rt::apply_direct(interp, "set", &[__t207, __t209])? + rt::apply_direct(interp, "set", &[__t206, __t208])? }); } } @@ -1491,57 +1488,57 @@ pub fn aot_shen_x2e_bytes_x2d__x3e_string( ))); } #[allow(unused_mut)] - let mut v_V2598 = args[0].clone(); + let mut v_V2252 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t222 = { - let __t220 = Value::nil(); - let __t221 = v_V2598.clone(); - rt::eq(&__t220, &__t221) + let __t221 = { + let __t219 = Value::nil(); + let __t220 = v_V2252.clone(); + rt::eq(&__t219, &__t220) }; - if match rt::is_truthy(interp, &__t222) { + if match rt::is_truthy(interp, &__t221) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::str("")); } else { { - let __t219 = { - let __t212 = v_V2598.clone(); - rt::is_cons(&__t212) + let __t218 = { + let __t211 = v_V2252.clone(); + rt::is_cons(&__t211) }; - if match rt::is_truthy(interp, &__t219) { + if match rt::is_truthy(interp, &__t218) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t215 = { - let __t214 = { - let __t213 = v_V2598.clone(); - rt::hd(&__t213)? + let __t214 = { + let __t213 = { + let __t212 = v_V2252.clone(); + rt::hd(&__t212)? }; - rt::apply_direct(interp, "n->string", &[__t214])? + rt::apply_direct(interp, "n->string", &[__t213])? }; - let __t218 = { - let __t217 = { - let __t216 = v_V2598.clone(); - rt::tl(&__t216)? + let __t217 = { + let __t216 = { + let __t215 = v_V2252.clone(); + rt::tl(&__t215)? }; - rt::apply_direct(interp, "shen.bytes->string", &[__t217])? + rt::apply_direct(interp, "shen.bytes->string", &[__t216])? }; - rt::apply_direct(interp, "cn", &[__t215, __t218])? + rt::apply_direct(interp, "cn", &[__t214, __t217])? }); } else { { - let __t211 = Value::bool(true); - if match rt::is_truthy(interp, &__t211) { + let __t210 = Value::bool(true); + if match rt::is_truthy(interp, &__t210) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t210 = Value::sym(interp.intern("shen.bytes->string")); - rt::apply_direct(interp, "shen.f-error", &[__t210])? + let __t209 = Value::str("partial function shen.bytes->string"); + rt::apply_direct(interp, "simple-error", &[__t209])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1568,48 +1565,48 @@ pub fn aot_shen_x2e_process_x2d_sexprs(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V2599 = args[0].clone(); + let mut v_V2253 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2600 = { - let __t223 = v_V2599.clone(); - rt::apply_direct(interp, "shen.unpackage¯oexpand", &[__t223])? + let v_W2254 = { + let __t222 = v_V2253.clone(); + rt::apply_direct(interp, "shen.unpackage¯oexpand", &[__t222])? }; { - let v_W2601 = { - let __t224 = v_W2600.clone(); - rt::apply_direct(interp, "shen.find-arities", &[__t224])? + let v_W2255 = { + let __t223 = v_W2254.clone(); + rt::apply_direct(interp, "shen.find-arities", &[__t223])? }; { - let v_W2602 = { - let __t225 = v_W2600.clone(); - rt::apply_direct(interp, "shen.find-types", &[__t225])? + let v_W2256 = { + let __t224 = v_W2254.clone(); + rt::apply_direct(interp, "shen.find-types", &[__t224])? }; break Ok({ - let __t228 = { - let v_W2602 = v_W2602.clone(); + let __t227 = { + let v_W2256 = v_W2256.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2603 = args[0].clone(); + let v_Z2257 = args[0].clone(); Ok({ - let __t226 = v_Z2603.clone(); - let __t227 = v_W2602.clone(); + let __t225 = v_Z2257.clone(); + let __t226 = v_W2256.clone(); rt::apply_direct( interp, "shen.process-applications", - &[__t226, __t227], + &[__t225, __t226], )? }) }, - vec![v_W2602], + vec![v_W2256], interp, ) }; - let __t229 = v_W2600.clone(); - rt::apply_direct(interp, "map", &[__t228, __t229])? + let __t228 = v_W2254.clone(); + rt::apply_direct(interp, "map", &[__t227, __t228])? }); } } @@ -1631,101 +1628,101 @@ pub fn aot_shen_x2e_find_x2d_types(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2604 = args[0].clone(); + let mut v_V2258 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t257 = { - let __t248 = { - let __t239 = v_V2604.clone(); - rt::is_cons(&__t239) + let __t256 = { + let __t247 = { + let __t238 = v_V2258.clone(); + rt::is_cons(&__t238) }; - if !rt::is_truthy(interp, &__t248)? { + if !rt::is_truthy(interp, &__t247)? { Value::bool(false) } else { - let __t249 = { - let __t246 = { - let __t241 = { - let __t240 = v_V2604.clone(); - rt::tl(&__t240)? + let __t248 = { + let __t245 = { + let __t240 = { + let __t239 = v_V2258.clone(); + rt::tl(&__t239)? }; - rt::is_cons(&__t241) + rt::is_cons(&__t240) }; - if !rt::is_truthy(interp, &__t246)? { + if !rt::is_truthy(interp, &__t245)? { Value::bool(false) } else { - let __t247 = { - let __t243 = { - let __t242 = v_V2604.clone(); - rt::hd(&__t242)? + let __t246 = { + let __t242 = { + let __t241 = v_V2258.clone(); + rt::hd(&__t241)? }; - let __t245 = { - let __t244 = Value::str(":"); - rt::apply_direct(interp, "intern", &[__t244])? + let __t244 = { + let __t243 = Value::str(":"); + rt::apply_direct(interp, "intern", &[__t243])? }; - rt::eq(&__t243, &__t245) + rt::eq(&__t242, &__t244) }; - Value::bool(rt::is_truthy(interp, &__t247)?) + Value::bool(rt::is_truthy(interp, &__t246)?) } }; - Value::bool(rt::is_truthy(interp, &__t249)?) + Value::bool(rt::is_truthy(interp, &__t248)?) } }; - if match rt::is_truthy(interp, &__t257) { + if match rt::is_truthy(interp, &__t256) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t252 = { - let __t251 = { - let __t250 = v_V2604.clone(); - rt::tl(&__t250)? + let __t251 = { + let __t250 = { + let __t249 = v_V2258.clone(); + rt::tl(&__t249)? }; - rt::hd(&__t251)? + rt::hd(&__t250)? }; - let __t256 = { - let __t255 = { - let __t254 = { - let __t253 = v_V2604.clone(); - rt::tl(&__t253)? + let __t255 = { + let __t254 = { + let __t253 = { + let __t252 = v_V2258.clone(); + rt::tl(&__t252)? }; - rt::tl(&__t254)? + rt::tl(&__t253)? }; - rt::apply_direct(interp, "shen.find-types", &[__t255])? + rt::apply_direct(interp, "shen.find-types", &[__t254])? }; - rt::cons(&__t252, &__t256) + rt::cons(&__t251, &__t255) }); } else { { - let __t238 = { - let __t231 = v_V2604.clone(); - rt::is_cons(&__t231) + let __t237 = { + let __t230 = v_V2258.clone(); + rt::is_cons(&__t230) }; - if match rt::is_truthy(interp, &__t238) { + if match rt::is_truthy(interp, &__t237) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t234 = { - let __t233 = { - let __t232 = v_V2604.clone(); - rt::hd(&__t232)? + let __t233 = { + let __t232 = { + let __t231 = v_V2258.clone(); + rt::hd(&__t231)? }; - rt::apply_direct(interp, "shen.find-types", &[__t233])? + rt::apply_direct(interp, "shen.find-types", &[__t232])? }; - let __t237 = { - let __t236 = { - let __t235 = v_V2604.clone(); - rt::tl(&__t235)? + let __t236 = { + let __t235 = { + let __t234 = v_V2258.clone(); + rt::tl(&__t234)? }; - rt::apply_direct(interp, "shen.find-types", &[__t236])? + rt::apply_direct(interp, "shen.find-types", &[__t235])? }; - rt::apply_direct(interp, "append", &[__t234, __t237])? + rt::apply_direct(interp, "append", &[__t233, __t236])? }); } else { { - let __t230 = Value::bool(true); - if match rt::is_truthy(interp, &__t230) { + let __t229 = Value::bool(true); + if match rt::is_truthy(interp, &__t229) { Ok(b) => b, Err(e) => break Err(e), } { @@ -1755,210 +1752,210 @@ pub fn aot_shen_x2e_find_x2d_arities(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2607 = args[0].clone(); + let mut v_V2261 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t320 = { - let __t306 = { - let __t286 = v_V2607.clone(); - rt::is_cons(&__t286) + let __t319 = { + let __t305 = { + let __t285 = v_V2261.clone(); + rt::is_cons(&__t285) }; - if !rt::is_truthy(interp, &__t306)? { + if !rt::is_truthy(interp, &__t305)? { Value::bool(false) } else { - let __t307 = { - let __t304 = { - let __t287 = Value::sym(interp.intern("define")); - let __t289 = { - let __t288 = v_V2607.clone(); - rt::hd(&__t288)? - }; - rt::eq(&__t287, &__t289) + let __t306 = { + let __t303 = { + let __t286 = Value::sym(interp.intern("define")); + let __t288 = { + let __t287 = v_V2261.clone(); + rt::hd(&__t287)? + }; + rt::eq(&__t286, &__t288) }; - if !rt::is_truthy(interp, &__t304)? { + if !rt::is_truthy(interp, &__t303)? { Value::bool(false) } else { - let __t305 = { - let __t302 = { - let __t291 = { - let __t290 = v_V2607.clone(); - rt::tl(&__t290)? + let __t304 = { + let __t301 = { + let __t290 = { + let __t289 = v_V2261.clone(); + rt::tl(&__t289)? }; - rt::is_cons(&__t291) + rt::is_cons(&__t290) }; - if !rt::is_truthy(interp, &__t302)? { + if !rt::is_truthy(interp, &__t301)? { Value::bool(false) } else { - let __t303 = { - let __t300 = { - let __t294 = { - let __t293 = { - let __t292 = v_V2607.clone(); - rt::tl(&__t292)? + let __t302 = { + let __t299 = { + let __t293 = { + let __t292 = { + let __t291 = v_V2261.clone(); + rt::tl(&__t291)? }; - rt::tl(&__t293)? + rt::tl(&__t292)? }; - rt::is_cons(&__t294) + rt::is_cons(&__t293) }; - if !rt::is_truthy(interp, &__t300)? { + if !rt::is_truthy(interp, &__t299)? { Value::bool(false) } else { - let __t301 = { - let __t295 = Value::sym(interp.intern("{")); - let __t299 = { - let __t298 = { - let __t297 = { - let __t296 = v_V2607.clone(); - rt::tl(&__t296)? + let __t300 = { + let __t294 = Value::sym(interp.intern("{")); + let __t298 = { + let __t297 = { + let __t296 = { + let __t295 = v_V2261.clone(); + rt::tl(&__t295)? }; - rt::tl(&__t297)? + rt::tl(&__t296)? }; - rt::hd(&__t298)? + rt::hd(&__t297)? }; - rt::eq(&__t295, &__t299) + rt::eq(&__t294, &__t298) }; - Value::bool(rt::is_truthy(interp, &__t301)?) + Value::bool(rt::is_truthy(interp, &__t300)?) } }; - Value::bool(rt::is_truthy(interp, &__t303)?) + Value::bool(rt::is_truthy(interp, &__t302)?) } }; - Value::bool(rt::is_truthy(interp, &__t305)?) + Value::bool(rt::is_truthy(interp, &__t304)?) } }; - Value::bool(rt::is_truthy(interp, &__t307)?) + Value::bool(rt::is_truthy(interp, &__t306)?) } }; - if match rt::is_truthy(interp, &__t320) { + if match rt::is_truthy(interp, &__t319) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t310 = { - let __t309 = { - let __t308 = v_V2607.clone(); - rt::tl(&__t308)? + let __t309 = { + let __t308 = { + let __t307 = v_V2261.clone(); + rt::tl(&__t307)? }; - rt::hd(&__t309)? + rt::hd(&__t308)? }; - let __t319 = { - let __t313 = { - let __t312 = { - let __t311 = v_V2607.clone(); - rt::tl(&__t311)? + let __t318 = { + let __t312 = { + let __t311 = { + let __t310 = v_V2261.clone(); + rt::tl(&__t310)? }; - rt::hd(&__t312)? + rt::hd(&__t311)? }; - let __t314 = Value::int(1i64); - let __t318 = { - let __t317 = { - let __t316 = { - let __t315 = v_V2607.clone(); - rt::tl(&__t315)? + let __t313 = Value::int(1i64); + let __t317 = { + let __t316 = { + let __t315 = { + let __t314 = v_V2261.clone(); + rt::tl(&__t314)? }; - rt::tl(&__t316)? + rt::tl(&__t315)? }; - rt::tl(&__t317)? + rt::tl(&__t316)? }; - rt::apply_direct(interp, "shen.find-arity", &[__t313, __t314, __t318])? + rt::apply_direct(interp, "shen.find-arity", &[__t312, __t313, __t317])? }; - rt::apply_direct(interp, "shen.store-arity", &[__t310, __t319])? + rt::apply_direct(interp, "shen.store-arity", &[__t309, __t318])? }); } else { { - let __t285 = { - let __t272 = { - let __t264 = v_V2607.clone(); - rt::is_cons(&__t264) + let __t284 = { + let __t271 = { + let __t263 = v_V2261.clone(); + rt::is_cons(&__t263) }; - if !rt::is_truthy(interp, &__t272)? { + if !rt::is_truthy(interp, &__t271)? { Value::bool(false) } else { - let __t273 = { - let __t270 = { - let __t265 = Value::sym(interp.intern("define")); - let __t267 = { - let __t266 = v_V2607.clone(); - rt::hd(&__t266)? + let __t272 = { + let __t269 = { + let __t264 = Value::sym(interp.intern("define")); + let __t266 = { + let __t265 = v_V2261.clone(); + rt::hd(&__t265)? }; - rt::eq(&__t265, &__t267) + rt::eq(&__t264, &__t266) }; - if !rt::is_truthy(interp, &__t270)? { + if !rt::is_truthy(interp, &__t269)? { Value::bool(false) } else { - let __t271 = { - let __t269 = { - let __t268 = v_V2607.clone(); - rt::tl(&__t268)? + let __t270 = { + let __t268 = { + let __t267 = v_V2261.clone(); + rt::tl(&__t267)? }; - rt::is_cons(&__t269) + rt::is_cons(&__t268) }; - Value::bool(rt::is_truthy(interp, &__t271)?) + Value::bool(rt::is_truthy(interp, &__t270)?) } }; - Value::bool(rt::is_truthy(interp, &__t273)?) + Value::bool(rt::is_truthy(interp, &__t272)?) } }; - if match rt::is_truthy(interp, &__t285) { + if match rt::is_truthy(interp, &__t284) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t276 = { - let __t275 = { - let __t274 = v_V2607.clone(); - rt::tl(&__t274)? - }; - rt::hd(&__t275)? - }; - let __t284 = { - let __t279 = { - let __t278 = { - let __t277 = v_V2607.clone(); - rt::tl(&__t277)? + let __t275 = { + let __t274 = { + let __t273 = v_V2261.clone(); + rt::tl(&__t273)? + }; + rt::hd(&__t274)? + }; + let __t283 = { + let __t278 = { + let __t277 = { + let __t276 = v_V2261.clone(); + rt::tl(&__t276)? }; - rt::hd(&__t278)? + rt::hd(&__t277)? }; - let __t280 = Value::int(0i64); - let __t283 = { - let __t282 = { - let __t281 = v_V2607.clone(); - rt::tl(&__t281)? + let __t279 = Value::int(0i64); + let __t282 = { + let __t281 = { + let __t280 = v_V2261.clone(); + rt::tl(&__t280)? }; - rt::tl(&__t282)? + rt::tl(&__t281)? }; rt::apply_direct( interp, "shen.find-arity", - &[__t279, __t280, __t283], + &[__t278, __t279, __t282], )? }; - rt::apply_direct(interp, "shen.store-arity", &[__t276, __t284])? + rt::apply_direct(interp, "shen.store-arity", &[__t275, __t283])? }); } else { { - let __t263 = { - let __t259 = v_V2607.clone(); - rt::is_cons(&__t259) + let __t262 = { + let __t258 = v_V2261.clone(); + rt::is_cons(&__t258) }; - if match rt::is_truthy(interp, &__t263) { + if match rt::is_truthy(interp, &__t262) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t261 = { + let __t260 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z2608 = args[0].clone(); + let v_Z2262 = args[0].clone(); Ok({ - let __t260 = v_Z2608.clone(); + let __t259 = v_Z2262.clone(); rt::apply_direct( interp, "shen.find-arities", - &[__t260], + &[__t259], )? }) }, @@ -1966,13 +1963,13 @@ pub fn aot_shen_x2e_find_x2d_arities(interp: &mut Interp, args: &[Value]) -> She interp, ) }; - let __t262 = v_V2607.clone(); - rt::apply_direct(interp, "map", &[__t261, __t262])? + let __t261 = v_V2261.clone(); + rt::apply_direct(interp, "map", &[__t260, __t261])? }); } else { { - let __t258 = Value::bool(true); - if match rt::is_truthy(interp, &__t258) { + let __t257 = Value::bool(true); + if match rt::is_truthy(interp, &__t257) { Ok(b) => b, Err(e) => break Err(e), } { @@ -2004,95 +2001,95 @@ pub fn aot_shen_x2e_store_x2d_arity(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2609 = args[0].clone(); + let mut v_V2263 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2610 = args[1].clone(); + let mut v_V2264 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2611 = { - let __t321 = v_V2609.clone(); - rt::apply_direct(interp, "arity", &[__t321])? + let v_W2265 = { + let __t320 = v_V2263.clone(); + rt::apply_direct(interp, "arity", &[__t320])? }; { - let __t324 = { - let __t322 = v_W2611.clone(); - let __t323 = Value::int(-1i64); - rt::eq(&__t322, &__t323) + let __t323 = { + let __t321 = v_W2265.clone(); + let __t322 = Value::int(-1i64); + rt::eq(&__t321, &__t322) }; - if match rt::is_truthy(interp, &__t324) { + if match rt::is_truthy(interp, &__t323) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t325 = v_V2609.clone(); - let __t326 = v_V2610.clone(); - rt::apply_direct(interp, "shen.execute-store-arity", &[__t325, __t326])? + let __t324 = v_V2263.clone(); + let __t325 = v_V2264.clone(); + rt::apply_direct(interp, "shen.execute-store-arity", &[__t324, __t325])? }); } else { { - let __t329 = { - let __t327 = v_W2611.clone(); - let __t328 = v_V2610.clone(); - rt::eq(&__t327, &__t328) + let __t328 = { + let __t326 = v_W2265.clone(); + let __t327 = v_V2264.clone(); + rt::eq(&__t326, &__t327) }; - if match rt::is_truthy(interp, &__t329) { + if match rt::is_truthy(interp, &__t328) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.skip"))); } else { { - let __t331 = { - let __t330 = v_V2609.clone(); - rt::apply_direct(interp, "shen.sysfunc?", &[__t330])? + let __t330 = { + let __t329 = v_V2263.clone(); + rt::apply_direct(interp, "shen.sysfunc?", &[__t329])? }; - if match rt::is_truthy(interp, &__t331) { + if match rt::is_truthy(interp, &__t330) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t335 = { - let __t332 = v_V2609.clone(); - let __t333 = Value::str(" is a system function\n"); - let __t334 = Value::sym(interp.intern("shen.a")); + let __t334 = { + let __t331 = v_V2263.clone(); + let __t332 = Value::str(" is a system function\n"); + let __t333 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t332, __t333, __t334], + &[__t331, __t332, __t333], )? }; - rt::apply_direct(interp, "simple-error", &[__t335])? + rt::apply_direct(interp, "simple-error", &[__t334])? }); } else { { let _ = { - let __t341 = { - let __t336 = Value::str("changing the arity of "); - let __t340 = { - let __t337 = v_V2609.clone(); - let __t338 = Value::str(" may cause errors\n"); - let __t339 = + let __t340 = { + let __t335 = Value::str("changing the arity of "); + let __t339 = { + let __t336 = v_V2263.clone(); + let __t337 = Value::str(" may cause errors\n"); + let __t338 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t337, __t338, __t339], + &[__t336, __t337, __t338], )? }; - rt::apply_direct(interp, "cn", &[__t336, __t340])? + rt::apply_direct(interp, "cn", &[__t335, __t339])? }; - let __t342 = + let __t341 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t341, __t342])? + rt::apply_direct(interp, "pr", &[__t340, __t341])? }; break Ok({ - let __t343 = v_V2609.clone(); - let __t344 = v_V2610.clone(); + let __t342 = v_V2263.clone(); + let __t343 = v_V2264.clone(); rt::apply_direct( interp, "shen.execute-store-arity", - &[__t343, __t344], + &[__t342, __t343], )? }); } @@ -2123,56 +2120,56 @@ pub fn aot_shen_x2e_execute_x2d_store_x2d_arity( ))); } #[allow(unused_mut)] - let mut v_V2612 = args[0].clone(); + let mut v_V2266 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2613 = args[1].clone(); + let mut v_V2267 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t360 = { - let __t353 = Value::int(0i64); - let __t354 = v_V2613.clone(); - rt::eq(&__t353, &__t354) + let __t359 = { + let __t352 = Value::int(0i64); + let __t353 = v_V2267.clone(); + rt::eq(&__t352, &__t353) }; - if match rt::is_truthy(interp, &__t360) { + if match rt::is_truthy(interp, &__t359) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t355 = v_V2612.clone(); - let __t356 = Value::sym(interp.intern("arity")); - let __t357 = Value::int(0i64); - let __t359 = { - let __t358 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t358])? + let __t354 = v_V2266.clone(); + let __t355 = Value::sym(interp.intern("arity")); + let __t356 = Value::int(0i64); + let __t358 = { + let __t357 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t357])? }; - rt::apply_direct(interp, "put", &[__t355, __t356, __t357, __t359])? + rt::apply_direct(interp, "put", &[__t354, __t355, __t356, __t358])? }); } else { { - let __t352 = Value::bool(true); - if match rt::is_truthy(interp, &__t352) { + let __t351 = Value::bool(true); + if match rt::is_truthy(interp, &__t351) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t345 = v_V2612.clone(); - let __t346 = Value::sym(interp.intern("arity")); - let __t347 = v_V2613.clone(); - let __t349 = { - let __t348 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t348])? + let __t344 = v_V2266.clone(); + let __t345 = Value::sym(interp.intern("arity")); + let __t346 = v_V2267.clone(); + let __t348 = { + let __t347 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t347])? }; - rt::apply_direct(interp, "put", &[__t345, __t346, __t347, __t349])? + rt::apply_direct(interp, "put", &[__t344, __t345, __t346, __t348])? }; break Ok({ - let __t350 = v_V2612.clone(); - let __t351 = v_V2613.clone(); + let __t349 = v_V2266.clone(); + let __t350 = v_V2267.clone(); rt::apply_direct( interp, "shen.update-lambdatable", - &[__t350, __t351], + &[__t349, __t350], )? }); } @@ -2209,34 +2206,45 @@ pub fn aot_shen_x2e_update_x2d_lambdatable( ))); } #[allow(unused_mut)] - let mut v_V2614 = args[0].clone(); + let mut v_V2268 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2615 = args[1].clone(); + let mut v_V2269 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2616 = { - let __t365 = { - let __t363 = { - let __t361 = v_V2614.clone(); - let __t362 = Value::nil(); - rt::cons(&__t361, &__t362) - }; - let __t364 = v_V2615.clone(); - rt::apply_direct(interp, "shen.lambda-function", &[__t363, __t364])? - }; - rt::apply_direct(interp, "eval-kl", &[__t365])? + let v_W2270 = { + let __t360 = Value::sym(interp.intern("shen.*lambdatable*")); + rt::apply_direct(interp, "value", &[__t360])? }; { - let v_W2617 = { - let __t368 = { - let __t366 = v_V2614.clone(); - let __t367 = v_W2616.clone(); - rt::cons(&__t366, &__t367) + let v_W2271 = { + let __t365 = { + let __t363 = { + let __t361 = v_V2268.clone(); + let __t362 = Value::nil(); + rt::cons(&__t361, &__t362) + }; + let __t364 = v_V2269.clone(); + rt::apply_direct(interp, "shen.lambda-function", &[__t363, __t364])? }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t368])? + rt::apply_direct(interp, "eval-kl", &[__t365])? }; - break Ok(v_V2615.clone()); + { + let v_W2272 = { + let __t366 = v_V2268.clone(); + let __t367 = v_W2271.clone(); + let __t368 = v_W2270.clone(); + rt::apply_direct(interp, "shen.assoc->", &[__t366, __t367, __t368])? + }; + { + let v_W2273 = { + let __t369 = Value::sym(interp.intern("shen.*lambdatable*")); + let __t370 = v_W2272.clone(); + rt::apply_direct(interp, "set", &[__t369, __t370])? + }; + break Ok(v_W2273.clone()); + } + } } } } @@ -2263,108 +2271,108 @@ pub fn aot_shen_x2e_lambda_x2d_function(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2620 = args[0].clone(); + let mut v_V2276 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2621 = args[1].clone(); + let mut v_V2277 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t401 = { - let __t399 = Value::int(0i64); - let __t400 = v_V2621.clone(); - rt::eq(&__t399, &__t400) + let __t403 = { + let __t401 = Value::int(0i64); + let __t402 = v_V2277.clone(); + rt::eq(&__t401, &__t402) }; - if match rt::is_truthy(interp, &__t401) { + if match rt::is_truthy(interp, &__t403) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.skip"))); } else { { - let __t398 = { - let __t385 = Value::int(1i64); - let __t386 = v_V2621.clone(); - rt::eq(&__t385, &__t386) + let __t400 = { + let __t387 = Value::int(1i64); + let __t388 = v_V2277.clone(); + rt::eq(&__t387, &__t388) }; - if match rt::is_truthy(interp, &__t398) { + if match rt::is_truthy(interp, &__t400) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2622 = { - let __t387 = Value::sym(interp.intern("Y")); - rt::apply_direct(interp, "gensym", &[__t387])? + let v_W2278 = { + let __t389 = Value::sym(interp.intern("Y")); + rt::apply_direct(interp, "gensym", &[__t389])? }; break Ok({ - let __t388 = Value::sym(interp.intern("lambda")); - let __t397 = { - let __t389 = v_W2622.clone(); - let __t396 = { - let __t394 = { - let __t390 = v_V2620.clone(); - let __t393 = { - let __t391 = v_W2622.clone(); - let __t392 = Value::nil(); - rt::cons(&__t391, &__t392) + let __t390 = Value::sym(interp.intern("lambda")); + let __t399 = { + let __t391 = v_W2278.clone(); + let __t398 = { + let __t396 = { + let __t392 = v_V2276.clone(); + let __t395 = { + let __t393 = v_W2278.clone(); + let __t394 = Value::nil(); + rt::cons(&__t393, &__t394) }; - rt::apply_direct(interp, "append", &[__t390, __t393])? + rt::apply_direct(interp, "append", &[__t392, __t395])? }; - let __t395 = Value::nil(); - rt::cons(&__t394, &__t395) + let __t397 = Value::nil(); + rt::cons(&__t396, &__t397) }; - rt::cons(&__t389, &__t396) + rt::cons(&__t391, &__t398) }; - rt::cons(&__t388, &__t397) + rt::cons(&__t390, &__t399) }); } } else { { - let __t384 = Value::bool(true); - if match rt::is_truthy(interp, &__t384) { + let __t386 = Value::bool(true); + if match rt::is_truthy(interp, &__t386) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2623 = { - let __t369 = Value::sym(interp.intern("Y")); - rt::apply_direct(interp, "gensym", &[__t369])? + let v_W2279 = { + let __t371 = Value::sym(interp.intern("Y")); + rt::apply_direct(interp, "gensym", &[__t371])? }; break Ok({ - let __t370 = Value::sym(interp.intern("lambda")); - let __t383 = { - let __t371 = v_W2623.clone(); - let __t382 = { - let __t380 = { - let __t376 = { - let __t372 = v_V2620.clone(); - let __t375 = { - let __t373 = v_W2623.clone(); - let __t374 = Value::nil(); - rt::cons(&__t373, &__t374) + let __t372 = Value::sym(interp.intern("lambda")); + let __t385 = { + let __t373 = v_W2279.clone(); + let __t384 = { + let __t382 = { + let __t378 = { + let __t374 = v_V2276.clone(); + let __t377 = { + let __t375 = v_W2279.clone(); + let __t376 = Value::nil(); + rt::cons(&__t375, &__t376) }; rt::apply_direct( interp, "append", - &[__t372, __t375], + &[__t374, __t377], )? }; - let __t379 = { - let __t377 = v_V2621.clone(); - let __t378 = Value::int(1i64); - rt::sub(&__t377, &__t378)? + let __t381 = { + let __t379 = v_V2277.clone(); + let __t380 = Value::int(1i64); + rt::sub(&__t379, &__t380)? }; rt::apply_direct( interp, "shen.lambda-function", - &[__t376, __t379], + &[__t378, __t381], )? }; - let __t381 = Value::nil(); - rt::cons(&__t380, &__t381) + let __t383 = Value::nil(); + rt::cons(&__t382, &__t383) }; - rt::cons(&__t371, &__t382) + rt::cons(&__t373, &__t384) }; - rt::cons(&__t370, &__t383) + rt::cons(&__t372, &__t385) }); } } else { @@ -2392,133 +2400,133 @@ pub fn aot_shen_x2e_assoc_x2d__x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2633 = args[0].clone(); + let mut v_V2289 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2634 = args[1].clone(); + let mut v_V2290 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2635 = args[2].clone(); + let mut v_V2291 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t438 = { - let __t432 = Value::nil(); - let __t433 = v_V2635.clone(); - rt::eq(&__t432, &__t433) + let __t440 = { + let __t434 = Value::nil(); + let __t435 = v_V2291.clone(); + rt::eq(&__t434, &__t435) }; - if match rt::is_truthy(interp, &__t438) { + if match rt::is_truthy(interp, &__t440) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t436 = { - let __t434 = v_V2633.clone(); - let __t435 = v_V2634.clone(); - rt::cons(&__t434, &__t435) + let __t438 = { + let __t436 = v_V2289.clone(); + let __t437 = v_V2290.clone(); + rt::cons(&__t436, &__t437) }; - let __t437 = Value::nil(); - rt::cons(&__t436, &__t437) + let __t439 = Value::nil(); + rt::cons(&__t438, &__t439) }); } else { { - let __t431 = { - let __t422 = { - let __t413 = v_V2635.clone(); - rt::is_cons(&__t413) + let __t433 = { + let __t424 = { + let __t415 = v_V2291.clone(); + rt::is_cons(&__t415) }; - if !rt::is_truthy(interp, &__t422)? { + if !rt::is_truthy(interp, &__t424)? { Value::bool(false) } else { - let __t423 = { - let __t420 = { - let __t415 = { - let __t414 = v_V2635.clone(); - rt::hd(&__t414)? + let __t425 = { + let __t422 = { + let __t417 = { + let __t416 = v_V2291.clone(); + rt::hd(&__t416)? }; - rt::is_cons(&__t415) + rt::is_cons(&__t417) }; - if !rt::is_truthy(interp, &__t420)? { + if !rt::is_truthy(interp, &__t422)? { Value::bool(false) } else { - let __t421 = { - let __t416 = v_V2633.clone(); - let __t419 = { - let __t418 = { - let __t417 = v_V2635.clone(); - rt::hd(&__t417)? + let __t423 = { + let __t418 = v_V2289.clone(); + let __t421 = { + let __t420 = { + let __t419 = v_V2291.clone(); + rt::hd(&__t419)? }; - rt::hd(&__t418)? + rt::hd(&__t420)? }; - rt::eq(&__t416, &__t419) + rt::eq(&__t418, &__t421) }; - Value::bool(rt::is_truthy(interp, &__t421)?) + Value::bool(rt::is_truthy(interp, &__t423)?) } }; - Value::bool(rt::is_truthy(interp, &__t423)?) + Value::bool(rt::is_truthy(interp, &__t425)?) } }; - if match rt::is_truthy(interp, &__t431) { + if match rt::is_truthy(interp, &__t433) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t428 = { - let __t426 = { - let __t425 = { - let __t424 = v_V2635.clone(); - rt::hd(&__t424)? + let __t430 = { + let __t428 = { + let __t427 = { + let __t426 = v_V2291.clone(); + rt::hd(&__t426)? }; - rt::hd(&__t425)? + rt::hd(&__t427)? }; - let __t427 = v_V2634.clone(); - rt::cons(&__t426, &__t427) + let __t429 = v_V2290.clone(); + rt::cons(&__t428, &__t429) }; - let __t430 = { - let __t429 = v_V2635.clone(); - rt::tl(&__t429)? + let __t432 = { + let __t431 = v_V2291.clone(); + rt::tl(&__t431)? }; - rt::cons(&__t428, &__t430) + rt::cons(&__t430, &__t432) }); } else { { - let __t412 = { - let __t404 = v_V2635.clone(); - rt::is_cons(&__t404) + let __t414 = { + let __t406 = v_V2291.clone(); + rt::is_cons(&__t406) }; - if match rt::is_truthy(interp, &__t412) { + if match rt::is_truthy(interp, &__t414) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t406 = { - let __t405 = v_V2635.clone(); - rt::hd(&__t405)? + let __t408 = { + let __t407 = v_V2291.clone(); + rt::hd(&__t407)? }; - let __t411 = { - let __t407 = v_V2633.clone(); - let __t408 = v_V2634.clone(); - let __t410 = { - let __t409 = v_V2635.clone(); - rt::tl(&__t409)? + let __t413 = { + let __t409 = v_V2289.clone(); + let __t410 = v_V2290.clone(); + let __t412 = { + let __t411 = v_V2291.clone(); + rt::tl(&__t411)? }; rt::apply_direct( interp, "shen.assoc->", - &[__t407, __t408, __t410], + &[__t409, __t410, __t412], )? }; - rt::cons(&__t406, &__t411) + rt::cons(&__t408, &__t413) }); } else { { - let __t403 = Value::bool(true); - if match rt::is_truthy(interp, &__t403) { + let __t405 = Value::bool(true); + if match rt::is_truthy(interp, &__t405) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t402 = + let __t404 = Value::str("implementation error in shen.assoc->"); - rt::apply_direct(interp, "simple-error", &[__t402])? + rt::apply_direct(interp, "simple-error", &[__t404])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2547,269 +2555,269 @@ pub fn aot_shen_x2e_find_x2d_arity(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2650 = args[0].clone(); + let mut v_V2306 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2651 = args[1].clone(); + let mut v_V2307 = args[1].clone(); #[allow(unused_mut)] - let mut v_V2652 = args[2].clone(); + let mut v_V2308 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t513 = { - let __t511 = { - let __t503 = Value::int(0i64); - let __t504 = v_V2651.clone(); - rt::eq(&__t503, &__t504) + let __t515 = { + let __t513 = { + let __t505 = Value::int(0i64); + let __t506 = v_V2307.clone(); + rt::eq(&__t505, &__t506) }; - if !rt::is_truthy(interp, &__t511)? { + if !rt::is_truthy(interp, &__t513)? { Value::bool(false) } else { - let __t512 = { - let __t509 = { - let __t505 = v_V2652.clone(); - rt::is_cons(&__t505) + let __t514 = { + let __t511 = { + let __t507 = v_V2308.clone(); + rt::is_cons(&__t507) }; - if !rt::is_truthy(interp, &__t509)? { + if !rt::is_truthy(interp, &__t511)? { Value::bool(false) } else { - let __t510 = { - let __t507 = { - let __t506 = v_V2652.clone(); - rt::hd(&__t506)? + let __t512 = { + let __t509 = { + let __t508 = v_V2308.clone(); + rt::hd(&__t508)? }; - let __t508 = Value::sym(interp.intern("->")); - rt::eq(&__t507, &__t508) + let __t510 = Value::sym(interp.intern("->")); + rt::eq(&__t509, &__t510) }; - Value::bool(rt::is_truthy(interp, &__t510)?) + Value::bool(rt::is_truthy(interp, &__t512)?) } }; - Value::bool(rt::is_truthy(interp, &__t512)?) + Value::bool(rt::is_truthy(interp, &__t514)?) } }; - if match rt::is_truthy(interp, &__t513) { + if match rt::is_truthy(interp, &__t515) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t502 = { - let __t500 = { - let __t492 = Value::int(0i64); - let __t493 = v_V2651.clone(); - rt::eq(&__t492, &__t493) + let __t504 = { + let __t502 = { + let __t494 = Value::int(0i64); + let __t495 = v_V2307.clone(); + rt::eq(&__t494, &__t495) }; - if !rt::is_truthy(interp, &__t500)? { + if !rt::is_truthy(interp, &__t502)? { Value::bool(false) } else { - let __t501 = { - let __t498 = { - let __t494 = v_V2652.clone(); - rt::is_cons(&__t494) + let __t503 = { + let __t500 = { + let __t496 = v_V2308.clone(); + rt::is_cons(&__t496) }; - if !rt::is_truthy(interp, &__t498)? { + if !rt::is_truthy(interp, &__t500)? { Value::bool(false) } else { - let __t499 = { - let __t496 = { - let __t495 = v_V2652.clone(); - rt::hd(&__t495)? + let __t501 = { + let __t498 = { + let __t497 = v_V2308.clone(); + rt::hd(&__t497)? }; - let __t497 = Value::sym(interp.intern("<-")); - rt::eq(&__t496, &__t497) + let __t499 = Value::sym(interp.intern("<-")); + rt::eq(&__t498, &__t499) }; - Value::bool(rt::is_truthy(interp, &__t499)?) + Value::bool(rt::is_truthy(interp, &__t501)?) } }; - Value::bool(rt::is_truthy(interp, &__t501)?) + Value::bool(rt::is_truthy(interp, &__t503)?) } }; - if match rt::is_truthy(interp, &__t502) { + if match rt::is_truthy(interp, &__t504) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t491 = { - let __t483 = { - let __t480 = Value::int(0i64); - let __t481 = v_V2651.clone(); - rt::eq(&__t480, &__t481) + let __t493 = { + let __t485 = { + let __t482 = Value::int(0i64); + let __t483 = v_V2307.clone(); + rt::eq(&__t482, &__t483) }; - if !rt::is_truthy(interp, &__t483)? { + if !rt::is_truthy(interp, &__t485)? { Value::bool(false) } else { - let __t484 = { - let __t482 = v_V2652.clone(); - rt::is_cons(&__t482) + let __t486 = { + let __t484 = v_V2308.clone(); + rt::is_cons(&__t484) }; - Value::bool(rt::is_truthy(interp, &__t484)?) + Value::bool(rt::is_truthy(interp, &__t486)?) } }; - if match rt::is_truthy(interp, &__t491) { + if match rt::is_truthy(interp, &__t493) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t485 = Value::int(1i64); - let __t490 = { - let __t486 = v_V2650.clone(); - let __t487 = Value::int(0i64); - let __t489 = { - let __t488 = v_V2652.clone(); - rt::tl(&__t488)? + let __t487 = Value::int(1i64); + let __t492 = { + let __t488 = v_V2306.clone(); + let __t489 = Value::int(0i64); + let __t491 = { + let __t490 = v_V2308.clone(); + rt::tl(&__t490)? }; rt::apply_direct( interp, "shen.find-arity", - &[__t486, __t487, __t489], + &[__t488, __t489, __t491], )? }; - rt::add(&__t485, &__t490)? + rt::add(&__t487, &__t492)? }); } else { { - let __t479 = { - let __t473 = { - let __t465 = Value::int(1i64); - let __t466 = v_V2651.clone(); - rt::eq(&__t465, &__t466) + let __t481 = { + let __t475 = { + let __t467 = Value::int(1i64); + let __t468 = v_V2307.clone(); + rt::eq(&__t467, &__t468) }; - if !rt::is_truthy(interp, &__t473)? { + if !rt::is_truthy(interp, &__t475)? { Value::bool(false) } else { - let __t474 = { - let __t471 = { - let __t467 = v_V2652.clone(); - rt::is_cons(&__t467) + let __t476 = { + let __t473 = { + let __t469 = v_V2308.clone(); + rt::is_cons(&__t469) }; - if !rt::is_truthy(interp, &__t471)? { + if !rt::is_truthy(interp, &__t473)? { Value::bool(false) } else { - let __t472 = { - let __t468 = Value::sym(interp.intern("}")); - let __t470 = { - let __t469 = v_V2652.clone(); - rt::hd(&__t469)? + let __t474 = { + let __t470 = Value::sym(interp.intern("}")); + let __t472 = { + let __t471 = v_V2308.clone(); + rt::hd(&__t471)? }; - rt::eq(&__t468, &__t470) + rt::eq(&__t470, &__t472) }; - Value::bool(rt::is_truthy(interp, &__t472)?) + Value::bool(rt::is_truthy(interp, &__t474)?) } }; - Value::bool(rt::is_truthy(interp, &__t474)?) + Value::bool(rt::is_truthy(interp, &__t476)?) } }; - if match rt::is_truthy(interp, &__t479) { + if match rt::is_truthy(interp, &__t481) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t475 = v_V2650.clone(); - let __t476 = Value::int(0i64); - let __t478 = { - let __t477 = v_V2652.clone(); - rt::tl(&__t477)? + let __t477 = v_V2306.clone(); + let __t478 = Value::int(0i64); + let __t480 = { + let __t479 = v_V2308.clone(); + rt::tl(&__t479)? }; - v_V2650 = __t475; - v_V2651 = __t476; - v_V2652 = __t478; + v_V2306 = __t477; + v_V2307 = __t478; + v_V2308 = __t480; continue; } } else { { - let __t464 = { - let __t458 = { - let __t455 = Value::int(1i64); - let __t456 = v_V2651.clone(); - rt::eq(&__t455, &__t456) + let __t466 = { + let __t460 = { + let __t457 = Value::int(1i64); + let __t458 = v_V2307.clone(); + rt::eq(&__t457, &__t458) }; - if !rt::is_truthy(interp, &__t458)? { + if !rt::is_truthy(interp, &__t460)? { Value::bool(false) } else { - let __t459 = { - let __t457 = v_V2652.clone(); - rt::is_cons(&__t457) + let __t461 = { + let __t459 = v_V2308.clone(); + rt::is_cons(&__t459) }; - Value::bool(rt::is_truthy(interp, &__t459)?) + Value::bool(rt::is_truthy(interp, &__t461)?) } }; - if match rt::is_truthy(interp, &__t464) { + if match rt::is_truthy(interp, &__t466) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t460 = v_V2650.clone(); - let __t461 = Value::int(1i64); - let __t463 = { - let __t462 = v_V2652.clone(); - rt::tl(&__t462)? + let __t462 = v_V2306.clone(); + let __t463 = Value::int(1i64); + let __t465 = { + let __t464 = v_V2308.clone(); + rt::tl(&__t464)? }; - v_V2650 = __t460; - v_V2651 = __t461; - v_V2652 = __t463; + v_V2306 = __t462; + v_V2307 = __t463; + v_V2308 = __t465; continue; } } else { { - let __t454 = { - let __t446 = Value::int(1i64); - let __t447 = v_V2651.clone(); - rt::eq(&__t446, &__t447) + let __t456 = { + let __t448 = Value::int(1i64); + let __t449 = v_V2307.clone(); + rt::eq(&__t448, &__t449) }; - if match rt::is_truthy(interp, &__t454) { + if match rt::is_truthy(interp, &__t456) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t453 = { - let __t448 = + let __t455 = { + let __t450 = Value::str("syntax error in "); - let __t452 = { - let __t449 = v_V2650.clone(); - let __t450 = Value::str( + let __t454 = { + let __t451 = v_V2306.clone(); + let __t452 = Value::str( " definition: missing }\n", ); - let __t451 = Value::sym( + let __t453 = Value::sym( interp.intern("shen.a"), ); rt::apply_direct( interp, "shen.app", - &[__t449, __t450, __t451], + &[__t451, __t452, __t453], )? }; rt::apply_direct( interp, "cn", - &[__t448, __t452], + &[__t450, __t454], )? }; rt::apply_direct( interp, "simple-error", - &[__t453], + &[__t455], )? }); } else { { - let __t445 = Value::bool(true); - if match rt::is_truthy(interp, &__t445) + let __t447 = Value::bool(true); + if match rt::is_truthy(interp, &__t447) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t444 = { - let __t439 = Value::str( + let __t446 = { + let __t441 = Value::str( "syntax error in ", ); - let __t443 = { - let __t440 = - v_V2650.clone(); - let __t441 = Value::str(" definition: missing -> or <-\n"); - let __t442 = Value::sym( + let __t445 = { + let __t442 = + v_V2306.clone(); + let __t443 = Value::str(" definition: missing -> or <-\n"); + let __t444 = Value::sym( interp.intern( "shen.a", ), @@ -2818,21 +2826,21 @@ pub fn aot_shen_x2e_find_x2d_arity(interp: &mut Interp, args: &[Value]) -> ShenR interp, "shen.app", &[ - __t440, __t441, - __t442, + __t442, __t443, + __t444, ], )? }; rt::apply_direct( interp, "cn", - &[__t439, __t443], + &[__t441, __t445], )? }; rt::apply_direct( interp, "simple-error", - &[__t444], + &[__t446], )? }); } else { @@ -2873,78 +2881,78 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2653 = args[0].clone(); + let mut v_V2309 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2654 = { - let v_W2655 = { - let __t514 = v_V2653.clone(); - rt::apply_direct(interp, "shen.", &[__t514])? + let v_W2310 = { + let v_W2311 = { + let __t516 = v_V2309.clone(); + rt::apply_direct(interp, "shen.", &[__t516])? }; { - let __t536 = { - let __t515 = v_W2655.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t515])? + let __t538 = { + let __t517 = v_W2311.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t517])? }; - if rt::is_truthy(interp, &__t536)? { + if rt::is_truthy(interp, &__t538)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2656 = { - let __t516 = v_W2655.clone(); - rt::apply_direct(interp, "shen.in->", &[__t516])? + let v_W2312 = { + let __t518 = v_W2311.clone(); + rt::apply_direct(interp, "shen.in->", &[__t518])? }; { - let v_W2657 = { - let __t517 = v_W2656.clone(); - rt::apply_direct(interp, "shen.", &[__t517])? + let v_W2313 = { + let __t519 = v_W2312.clone(); + rt::apply_direct(interp, "shen.", &[__t519])? }; { - let __t535 = { - let __t518 = v_W2657.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t518])? + let __t537 = { + let __t520 = v_W2313.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t520])? }; - if rt::is_truthy(interp, &__t535)? { + if rt::is_truthy(interp, &__t537)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2658 = { - let __t519 = v_W2657.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t519])? + let v_W2314 = { + let __t521 = v_W2313.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t521])? }; { - let v_W2659 = { - let __t520 = v_W2657.clone(); + let v_W2315 = { + let __t522 = v_W2313.clone(); rt::apply_direct( interp, "shen.in->", - &[__t520], + &[__t522], )? }; { - let v_W2660 = { - let __t521 = v_W2659.clone(); + let v_W2316 = { + let __t523 = v_W2315.clone(); rt::apply_direct( interp, "shen.", - &[__t521], + &[__t523], )? }; { - let __t534 = { - let __t522 = v_W2660.clone(); + let __t536 = { + let __t524 = v_W2316.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t522], + &[__t524], )? }; - if rt::is_truthy(interp, &__t534)? { + if rt::is_truthy(interp, &__t536)? { { rt::apply_direct( interp, @@ -2954,61 +2962,61 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } else { { - let v_W2661 = { - let __t523 = v_W2660.clone(); + let v_W2317 = { + let __t525 = v_W2316.clone(); rt::apply_direct( interp, "shen.in->", - &[__t523], + &[__t525], )? }; { - let v_W2662 = { - let __t524 = - v_W2661.clone(); + let v_W2318 = { + let __t526 = + v_W2317.clone(); rt::apply_direct( interp, "shen.", - &[__t524], + &[__t526], )? }; { - let __t533 = { - let __t525 = - v_W2662.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t525])? + let __t535 = { + let __t527 = + v_W2318.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t527])? }; if rt::is_truthy( - interp, &__t533, + interp, &__t535, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2663 = { - let __t526 = - v_W2662 + let v_W2319 = { + let __t528 = + v_W2318 .clone( ); - rt::apply_direct(interp, "shen.<-out", &[__t526])? + rt::apply_direct(interp, "shen.<-out", &[__t528])? }; { - let v_W2664 = { - let __t527 = v_W2662.clone(); - rt::apply_direct(interp, "shen.in->", &[__t527])? + let v_W2320 = { + let __t529 = v_W2318.clone(); + rt::apply_direct(interp, "shen.in->", &[__t529])? }; { - let __t528 = v_W2664.clone(); - let __t532 = { - let __t530 = { - let __t529 = v_W2658.clone(); - rt::apply_direct(interp, "shen.cons-form", &[__t529])? + let __t530 = v_W2320.clone(); + let __t534 = { + let __t532 = { + let __t531 = v_W2314.clone(); + rt::apply_direct(interp, "shen.cons-form", &[__t531])? }; - let __t531 = v_W2663.clone(); - rt::cons(&__t530, &__t531) + let __t533 = v_W2319.clone(); + rt::cons(&__t532, &__t533) }; - rt::apply_direct(interp, "shen.comb", &[__t528, __t532])? + rt::apply_direct(interp, "shen.comb", &[__t530, __t534])? } } } @@ -3029,54 +3037,54 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t538 = { - let __t537 = v_W2654.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t537])? + let __t540 = { + let __t539 = v_W2310.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t539])? }; - if match rt::is_truthy(interp, &__t538) { + if match rt::is_truthy(interp, &__t540) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2665 = { - let v_W2666 = { - let __t539 = v_V2653.clone(); - rt::apply_direct(interp, "shen.", &[__t539])? + let v_W2321 = { + let v_W2322 = { + let __t541 = v_V2309.clone(); + rt::apply_direct(interp, "shen.", &[__t541])? }; { - let __t560 = { - let __t540 = v_W2666.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t540])? + let __t562 = { + let __t542 = v_W2322.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t542])? }; - if rt::is_truthy(interp, &__t560)? { + if rt::is_truthy(interp, &__t562)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2667 = { - let __t541 = v_W2666.clone(); - rt::apply_direct(interp, "shen.in->", &[__t541])? + let v_W2323 = { + let __t543 = v_W2322.clone(); + rt::apply_direct(interp, "shen.in->", &[__t543])? }; { - let v_W2668 = { - let __t542 = v_W2667.clone(); + let v_W2324 = { + let __t544 = v_W2323.clone(); rt::apply_direct( interp, "shen.", - &[__t542], + &[__t544], )? }; { - let __t559 = { - let __t543 = v_W2668.clone(); + let __t561 = { + let __t545 = v_W2324.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t543], + &[__t545], )? }; - if rt::is_truthy(interp, &__t559)? { + if rt::is_truthy(interp, &__t561)? { { rt::apply_direct( interp, @@ -3086,73 +3094,73 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } else { { - let v_W2669 = { - let __t544 = v_W2668.clone(); + let v_W2325 = { + let __t546 = v_W2324.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t544], + &[__t546], )? }; { - let v_W2670 = { - let __t545 = v_W2668.clone(); + let v_W2326 = { + let __t547 = v_W2324.clone(); rt::apply_direct( interp, "shen.in->", - &[__t545], + &[__t547], )? }; { - let v_W2671 = { - let __t546 = v_W2670.clone(); + let v_W2327 = { + let __t548 = v_W2326.clone(); rt::apply_direct( interp, "shen.", - &[__t546], + &[__t548], )? }; { - let __t558 = { - let __t547 = - v_W2671.clone(); + let __t560 = { + let __t549 = + v_W2327.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t547], + &[__t549], )? }; if rt::is_truthy( - interp, &__t558, + interp, &__t560, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2672 = { - let __t548 = - v_W2671.clone(); + let v_W2328 = { + let __t550 = + v_W2327.clone(); rt::apply_direct( interp, "shen.in->", - &[__t548], + &[__t550], )? }; { - let v_W2673 = { - let __t549 = - v_W2672 + let v_W2329 = { + let __t551 = + v_W2328 .clone( ); - rt::apply_direct(interp, "shen.", &[__t549])? + rt::apply_direct(interp, "shen.", &[__t551])? }; { - let __t557 = { - let __t550 = v_W2673.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t550])? + let __t559 = { + let __t552 = v_W2329.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t552])? }; - if rt::is_truthy(interp, &__t557)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2674 = { let __t551 = v_W2673.clone(); rt::apply_direct(interp, "shen.<-out", &[__t551])? }; { let v_W2675 = { let __t552 = v_W2673.clone(); rt::apply_direct(interp, "shen.in->", &[__t552])? }; { let __t553 = v_W2675.clone(); let __t556 = { let __t554 = v_W2669.clone(); let __t555 = v_W2674.clone(); rt::apply_direct(interp, "shen.add-sexpr", &[__t554, __t555])? }; rt::apply_direct(interp, "shen.comb", &[__t553, __t556])? } } } } + if rt::is_truthy(interp, &__t559)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2330 = { let __t553 = v_W2329.clone(); rt::apply_direct(interp, "shen.<-out", &[__t553])? }; { let v_W2331 = { let __t554 = v_W2329.clone(); rt::apply_direct(interp, "shen.in->", &[__t554])? }; { let __t555 = v_W2331.clone(); let __t558 = { let __t556 = v_W2325.clone(); let __t557 = v_W2330.clone(); rt::apply_direct(interp, "shen.add-sexpr", &[__t556, __t557])? }; rt::apply_direct(interp, "shen.comb", &[__t555, __t558])? } } } } } } } @@ -3169,30 +3177,30 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t562 = { - let __t561 = v_W2665.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t561])? + let __t564 = { + let __t563 = v_W2321.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t563])? }; - if match rt::is_truthy(interp, &__t562) { + if match rt::is_truthy(interp, &__t564) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2676 = { - let v_W2677 = { - let __t563 = v_V2653.clone(); - rt::apply_direct(interp, "shen.", &[__t563])? + let v_W2332 = { + let v_W2333 = { + let __t565 = v_V2309.clone(); + rt::apply_direct(interp, "shen.", &[__t565])? }; { - let __t575 = { - let __t564 = v_W2677.clone(); + let __t577 = { + let __t566 = v_W2333.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t564], + &[__t566], )? }; - if rt::is_truthy(interp, &__t575)? { + if rt::is_truthy(interp, &__t577)? { { rt::apply_direct( interp, @@ -3202,33 +3210,33 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } else { { - let v_W2678 = { - let __t565 = v_W2677.clone(); + let v_W2334 = { + let __t567 = v_W2333.clone(); rt::apply_direct( interp, "shen.in->", - &[__t565], + &[__t567], )? }; { - let v_W2679 = { - let __t566 = v_W2678.clone(); + let v_W2335 = { + let __t568 = v_W2334.clone(); rt::apply_direct( interp, "shen.", - &[__t566], + &[__t568], )? }; { - let __t574 = { - let __t567 = v_W2679.clone(); + let __t576 = { + let __t569 = v_W2335.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t567], + &[__t569], )? }; - if rt::is_truthy(interp, &__t574)? { + if rt::is_truthy(interp, &__t576)? { { rt::apply_direct( interp, @@ -3238,47 +3246,47 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } else { { - let v_W2680 = { - let __t568 = - v_W2679.clone(); + let v_W2336 = { + let __t570 = + v_W2335.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t568], + &[__t570], )? }; { - let v_W2681 = { - let __t569 = - v_W2679.clone(); + let v_W2337 = { + let __t571 = + v_W2335.clone(); rt::apply_direct( interp, "shen.in->", - &[__t569], + &[__t571], )? }; { - let __t570 = - v_W2681.clone(); - let __t573 = { - let __t571 = + let __t572 = + v_W2337.clone(); + let __t575 = { + let __t573 = Value::sym( interp .intern( "{", ), ); - let __t572 = - v_W2680.clone(); + let __t574 = + v_W2336.clone(); rt::cons( - &__t571, - &__t572, + &__t573, + &__t574, ) }; rt::apply_direct( interp, "shen.comb", - &[__t570, __t573], + &[__t572, __t575], )? } } @@ -3291,38 +3299,38 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t577 = { - let __t576 = v_W2676.clone(); + let __t579 = { + let __t578 = v_W2332.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t576], + &[__t578], )? }; - if match rt::is_truthy(interp, &__t577) { + if match rt::is_truthy(interp, &__t579) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2682 = { - let v_W2683 = { - let __t578 = v_V2653.clone(); + let v_W2338 = { + let v_W2339 = { + let __t580 = v_V2309.clone(); rt::apply_direct( interp, "shen.", - &[__t578], + &[__t580], )? }; { - let __t590 = { - let __t579 = v_W2683.clone(); + let __t592 = { + let __t581 = v_W2339.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t579], + &[__t581], )? }; - if rt::is_truthy(interp, &__t590)? { + if rt::is_truthy(interp, &__t592)? { { rt::apply_direct( interp, @@ -3332,58 +3340,58 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } else { { - let v_W2684 = { - let __t580 = v_W2683.clone(); + let v_W2340 = { + let __t582 = v_W2339.clone(); rt::apply_direct( interp, "shen.in->", - &[__t580], + &[__t582], )? }; { - let v_W2685 = { - let __t581 = - v_W2684.clone(); + let v_W2341 = { + let __t583 = + v_W2340.clone(); rt::apply_direct( interp, "shen.", - &[__t581], + &[__t583], )? }; { - let __t589 = { - let __t582 = - v_W2685.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t582])? + let __t591 = { + let __t584 = + v_W2341.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t584])? }; if rt::is_truthy( - interp, &__t589, + interp, &__t591, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2686 = { - let __t583 = - v_W2685 + let v_W2342 = { + let __t585 = + v_W2341 .clone( ); - rt::apply_direct(interp, "shen.<-out", &[__t583])? + rt::apply_direct(interp, "shen.<-out", &[__t585])? }; { - let v_W2687 = { - let __t584 = v_W2685.clone(); - rt::apply_direct(interp, "shen.in->", &[__t584])? + let v_W2343 = { + let __t586 = v_W2341.clone(); + rt::apply_direct(interp, "shen.in->", &[__t586])? }; { - let __t585 = v_W2687.clone(); - let __t588 = { - let __t586 = Value::sym(interp.intern("}")); - let __t587 = v_W2686.clone(); - rt::cons(&__t586, &__t587) + let __t587 = v_W2343.clone(); + let __t590 = { + let __t588 = Value::sym(interp.intern("}")); + let __t589 = v_W2342.clone(); + rt::cons(&__t588, &__t589) }; - rt::apply_direct(interp, "shen.comb", &[__t585, __t588])? + rt::apply_direct(interp, "shen.comb", &[__t587, __t590])? } } } @@ -3395,69 +3403,69 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t592 = { - let __t591 = v_W2682.clone(); + let __t594 = { + let __t593 = v_W2338.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t591], + &[__t593], )? }; - if match rt::is_truthy(interp, &__t592) { + if match rt::is_truthy(interp, &__t594) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2688 = { - let v_W2689 = { - let __t593 = v_V2653.clone(); + let v_W2344 = { + let v_W2345 = { + let __t595 = v_V2309.clone(); rt::apply_direct( interp, "shen.", - &[__t593], + &[__t595], )? }; { - let __t605 = { - let __t594 = - v_W2689.clone(); + let __t607 = { + let __t596 = + v_W2345.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t594], + &[__t596], )? }; if rt::is_truthy( - interp, &__t605, + interp, &__t607, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2690 = { - let __t595 = - v_W2689.clone(); + let v_W2346 = { + let __t597 = + v_W2345.clone(); rt::apply_direct( interp, "shen.in->", - &[__t595], + &[__t597], )? }; { - let v_W2691 = { - let __t596 = - v_W2690 + let v_W2347 = { + let __t598 = + v_W2346 .clone( ); - rt::apply_direct(interp, "shen.", &[__t596])? + rt::apply_direct(interp, "shen.", &[__t598])? }; { - let __t604 = { - let __t597 = v_W2691.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t597])? + let __t606 = { + let __t599 = v_W2347.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t599])? }; - if rt::is_truthy(interp, &__t604)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2692 = { let __t598 = v_W2691.clone(); rt::apply_direct(interp, "shen.<-out", &[__t598])? }; { let v_W2693 = { let __t599 = v_W2691.clone(); rt::apply_direct(interp, "shen.in->", &[__t599])? }; { let __t600 = v_W2693.clone(); let __t603 = { let __t601 = Value::sym(interp.intern("bar!")); let __t602 = v_W2692.clone(); rt::cons(&__t601, &__t602) }; rt::apply_direct(interp, "shen.comb", &[__t600, __t603])? } } } } + if rt::is_truthy(interp, &__t606)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2348 = { let __t600 = v_W2347.clone(); rt::apply_direct(interp, "shen.<-out", &[__t600])? }; { let v_W2349 = { let __t601 = v_W2347.clone(); rt::apply_direct(interp, "shen.in->", &[__t601])? }; { let __t602 = v_W2349.clone(); let __t605 = { let __t603 = Value::sym(interp.intern("bar!")); let __t604 = v_W2348.clone(); rt::cons(&__t603, &__t604) }; rt::apply_direct(interp, "shen.comb", &[__t602, __t605])? } } } } } } } @@ -3465,55 +3473,55 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t607 = { - let __t606 = v_W2688.clone(); + let __t609 = { + let __t608 = v_W2344.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t606], + &[__t608], )? }; if match rt::is_truthy( - interp, &__t607, + interp, &__t609, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2694 = { - let v_W2695 = { - let __t608 = - v_V2653.clone(); - rt::apply_direct(interp, "shen.", &[__t608])? + let v_W2350 = { + let v_W2351 = { + let __t610 = + v_V2309.clone(); + rt::apply_direct(interp, "shen.", &[__t610])? }; { - let __t621 = { - let __t609 = - v_W2695 + let __t623 = { + let __t611 = + v_W2351 .clone( ); - rt::apply_direct(interp, "shen.parse-failure?", &[__t609])? + rt::apply_direct(interp, "shen.parse-failure?", &[__t611])? }; if rt::is_truthy( - interp, &__t621, + interp, &__t623, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2696 = { - let __t610 = v_W2695.clone(); - rt::apply_direct(interp, "shen.in->", &[__t610])? + let v_W2352 = { + let __t612 = v_W2351.clone(); + rt::apply_direct(interp, "shen.in->", &[__t612])? }; { - let v_W2697 = { - let __t611 = v_W2696.clone(); - rt::apply_direct(interp, "shen.", &[__t611])? + let v_W2353 = { + let __t613 = v_W2352.clone(); + rt::apply_direct(interp, "shen.", &[__t613])? }; { - let __t620 = { let __t612 = v_W2697.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t612])? }; - if rt::is_truthy(interp, &__t620)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2698 = { let __t613 = v_W2697.clone(); rt::apply_direct(interp, "shen.<-out", &[__t613])? }; { let v_W2699 = { let __t614 = v_W2697.clone(); rt::apply_direct(interp, "shen.in->", &[__t614])? }; { let __t615 = v_W2699.clone(); let __t619 = { let __t617 = { let __t616 = Value::str(";"); rt::apply_direct(interp, "intern", &[__t616])? }; let __t618 = v_W2698.clone(); rt::cons(&__t617, &__t618) }; rt::apply_direct(interp, "shen.comb", &[__t615, __t619])? } } } } + let __t622 = { let __t614 = v_W2353.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t614])? }; + if rt::is_truthy(interp, &__t622)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2354 = { let __t615 = v_W2353.clone(); rt::apply_direct(interp, "shen.<-out", &[__t615])? }; { let v_W2355 = { let __t616 = v_W2353.clone(); rt::apply_direct(interp, "shen.in->", &[__t616])? }; { let __t617 = v_W2355.clone(); let __t621 = { let __t619 = { let __t618 = Value::str(";"); rt::apply_direct(interp, "intern", &[__t618])? }; let __t620 = v_W2354.clone(); rt::cons(&__t619, &__t620) }; rt::apply_direct(interp, "shen.comb", &[__t617, __t621])? } } } } } } } @@ -3521,13 +3529,13 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } }; { - let __t623 = { - let __t622 = - v_W2694.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t622])? + let __t625 = { + let __t624 = + v_W2350.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t624])? }; if match rt::is_truthy( - interp, &__t623, + interp, &__t625, ) { Ok(b) => b, Err(e) => { @@ -3535,56 +3543,56 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs_x3e_( } } { { - let v_W2700 = { - let v_W2701 = { - let __t624 = v_V2653.clone(); - rt::apply_direct(interp, "shen.", &[__t624])? + let v_W2356 = { + let v_W2357 = { + let __t626 = v_V2309.clone(); + rt::apply_direct(interp, "shen.", &[__t626])? }; { - let __t641 = { - let __t625 = v_W2701.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t625])? + let __t643 = { + let __t627 = v_W2357.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t627])? }; - if rt::is_truthy(interp, &__t641)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2702 = { let __t626 = v_W2701.clone(); rt::apply_direct(interp, "shen.in->", &[__t626])? }; { let v_W2703 = { let __t627 = v_W2702.clone(); rt::apply_direct(interp, "shen.", &[__t627])? }; { let __t640 = { let __t628 = v_W2703.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t628])? }; if rt::is_truthy(interp, &__t640)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2704 = { let __t629 = v_W2703.clone(); rt::apply_direct(interp, "shen.in->", &[__t629])? }; { let v_W2705 = { let __t630 = v_W2704.clone(); rt::apply_direct(interp, "shen.", &[__t630])? }; { let __t639 = { let __t631 = v_W2705.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t631])? }; if rt::is_truthy(interp, &__t639)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2706 = { let __t632 = v_W2705.clone(); rt::apply_direct(interp, "shen.<-out", &[__t632])? }; { let v_W2707 = { let __t633 = v_W2705.clone(); rt::apply_direct(interp, "shen.in->", &[__t633])? }; { let __t634 = v_W2707.clone(); let __t638 = { let __t636 = { let __t635 = Value::str(":="); rt::apply_direct(interp, "intern", &[__t635])? }; let __t637 = v_W2706.clone(); rt::cons(&__t636, &__t637) }; rt::apply_direct(interp, "shen.comb", &[__t634, __t638])? } } } } } } } } } } } } + if rt::is_truthy(interp, &__t643)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2358 = { let __t628 = v_W2357.clone(); rt::apply_direct(interp, "shen.in->", &[__t628])? }; { let v_W2359 = { let __t629 = v_W2358.clone(); rt::apply_direct(interp, "shen.", &[__t629])? }; { let __t642 = { let __t630 = v_W2359.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t630])? }; if rt::is_truthy(interp, &__t642)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2360 = { let __t631 = v_W2359.clone(); rt::apply_direct(interp, "shen.in->", &[__t631])? }; { let v_W2361 = { let __t632 = v_W2360.clone(); rt::apply_direct(interp, "shen.", &[__t632])? }; { let __t641 = { let __t633 = v_W2361.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t633])? }; if rt::is_truthy(interp, &__t641)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2362 = { let __t634 = v_W2361.clone(); rt::apply_direct(interp, "shen.<-out", &[__t634])? }; { let v_W2363 = { let __t635 = v_W2361.clone(); rt::apply_direct(interp, "shen.in->", &[__t635])? }; { let __t636 = v_W2363.clone(); let __t640 = { let __t638 = { let __t637 = Value::str(":="); rt::apply_direct(interp, "intern", &[__t637])? }; let __t639 = v_W2362.clone(); rt::cons(&__t638, &__t639) }; rt::apply_direct(interp, "shen.comb", &[__t636, __t640])? } } } } } } } } } } } } } }; { - let __t643 = { - let __t642 = v_W2700.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t642])? + let __t645 = { + let __t644 = v_W2356.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t644])? }; - if match rt::is_truthy(interp, &__t643) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2708 = { let v_W2709 = { let __t644 = v_V2653.clone(); rt::apply_direct(interp, "shen.", &[__t644])? }; { let __t657 = { let __t645 = v_W2709.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t645])? }; if rt::is_truthy(interp, &__t657)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2710 = { let __t646 = v_W2709.clone(); rt::apply_direct(interp, "shen.in->", &[__t646])? }; { let v_W2711 = { let __t647 = v_W2710.clone(); rt::apply_direct(interp, "shen.", &[__t647])? }; { let __t656 = { let __t648 = v_W2711.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t648])? }; if rt::is_truthy(interp, &__t656)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2712 = { let __t649 = v_W2711.clone(); rt::apply_direct(interp, "shen.<-out", &[__t649])? }; { let v_W2713 = { let __t650 = v_W2711.clone(); rt::apply_direct(interp, "shen.in->", &[__t650])? }; { let __t651 = v_W2713.clone(); let __t655 = { let __t653 = { let __t652 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t652])? }; let __t654 = v_W2712.clone(); rt::cons(&__t653, &__t654) }; rt::apply_direct(interp, "shen.comb", &[__t651, __t655])? } } } } } } } } } }; { let __t659 = { let __t658 = v_W2708.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t658])? }; if match rt::is_truthy(interp, &__t659) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2714 = { let v_W2715 = { let __t660 = v_V2653.clone(); rt::apply_direct(interp, "shen.", &[__t660])? }; { let __t673 = { let __t661 = v_W2715.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t661])? }; if rt::is_truthy(interp, &__t673)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2716 = { let __t662 = v_W2715.clone(); rt::apply_direct(interp, "shen.in->", &[__t662])? }; { let v_W2717 = { let __t663 = v_W2716.clone(); rt::apply_direct(interp, "shen.", &[__t663])? }; { let __t672 = { let __t664 = v_W2717.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t664])? }; if rt::is_truthy(interp, &__t672)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2718 = { let __t665 = v_W2717.clone(); rt::apply_direct(interp, "shen.<-out", &[__t665])? }; { let v_W2719 = { let __t666 = v_W2717.clone(); rt::apply_direct(interp, "shen.in->", &[__t666])? }; { let __t667 = v_W2719.clone(); let __t671 = { let __t669 = { let __t668 = Value::str(","); rt::apply_direct(interp, "intern", &[__t668])? }; let __t670 = v_W2718.clone(); rt::cons(&__t669, &__t670) }; rt::apply_direct(interp, "shen.comb", &[__t667, __t671])? } } } } } } } } } }; { let __t675 = { let __t674 = v_W2714.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t674])? }; if match rt::is_truthy(interp, &__t675) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2720 = { let v_W2721 = { let __t676 = v_V2653.clone(); rt::apply_direct(interp, "shen.", &[__t676])? }; { let __t686 = { let __t677 = v_W2721.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t677])? }; if rt::is_truthy(interp, &__t686)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2722 = { let __t678 = v_W2721.clone(); rt::apply_direct(interp, "shen.in->", &[__t678])? }; { let v_W2723 = { let __t679 = v_W2722.clone(); rt::apply_direct(interp, "shen.", &[__t679])? }; { let __t685 = { let __t680 = v_W2723.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t680])? }; if rt::is_truthy(interp, &__t685)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2724 = { let __t681 = v_W2723.clone(); rt::apply_direct(interp, "shen.<-out", &[__t681])? }; { let v_W2725 = { let __t682 = v_W2723.clone(); rt::apply_direct(interp, "shen.in->", &[__t682])? }; { let __t683 = v_W2725.clone(); let __t684 = v_W2724.clone(); rt::apply_direct(interp, "shen.comb", &[__t683, __t684])? } } } } } } } } } }; { let __t688 = { let __t687 = v_W2720.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t687])? }; if match rt::is_truthy(interp, &__t688) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2726 = { let v_W2727 = { let __t689 = v_V2653.clone(); rt::apply_direct(interp, "shen.", &[__t689])? }; { let __t702 = { let __t690 = v_W2727.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t690])? }; if rt::is_truthy(interp, &__t702)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2728 = { let __t691 = v_W2727.clone(); rt::apply_direct(interp, "shen.<-out", &[__t691])? }; { let v_W2729 = { let __t692 = v_W2727.clone(); rt::apply_direct(interp, "shen.in->", &[__t692])? }; { let v_W2730 = { let __t693 = v_W2729.clone(); rt::apply_direct(interp, "shen.", &[__t693])? }; { let __t701 = { let __t694 = v_W2730.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t694])? }; if rt::is_truthy(interp, &__t701)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2731 = { let __t695 = v_W2730.clone(); rt::apply_direct(interp, "shen.<-out", &[__t695])? }; { let v_W2732 = { let __t696 = v_W2730.clone(); rt::apply_direct(interp, "shen.in->", &[__t696])? }; { let __t697 = v_W2732.clone(); let __t700 = { let __t698 = v_W2728.clone(); let __t699 = v_W2731.clone(); rt::cons(&__t698, &__t699) }; rt::apply_direct(interp, "shen.comb", &[__t697, __t700])? } } } } } } } } } } }; { let __t704 = { let __t703 = v_W2726.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t703])? }; if match rt::is_truthy(interp, &__t704) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2733 = { let v_W2734 = { let __t705 = v_V2653.clone(); rt::apply_direct(interp, "shen.", &[__t705])? }; { let __t715 = { let __t706 = v_W2734.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t706])? }; if rt::is_truthy(interp, &__t715)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2735 = { let __t707 = v_W2734.clone(); rt::apply_direct(interp, "shen.in->", &[__t707])? }; { let v_W2736 = { let __t708 = v_W2735.clone(); rt::apply_direct(interp, "shen.", &[__t708])? }; { let __t714 = { let __t709 = v_W2736.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t709])? }; if rt::is_truthy(interp, &__t714)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2737 = { let __t710 = v_W2736.clone(); rt::apply_direct(interp, "shen.<-out", &[__t710])? }; { let v_W2738 = { let __t711 = v_W2736.clone(); rt::apply_direct(interp, "shen.in->", &[__t711])? }; { let __t712 = v_W2738.clone(); let __t713 = v_W2737.clone(); rt::apply_direct(interp, "shen.comb", &[__t712, __t713])? } } } } } } } } } }; { let __t717 = { let __t716 = v_W2733.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t716])? }; if match rt::is_truthy(interp, &__t717) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2739 = { let v_W2740 = { let __t718 = v_V2653.clone(); rt::apply_direct(interp, "", &[__t718])? }; { let __t723 = { let __t719 = v_W2740.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t719])? }; if rt::is_truthy(interp, &__t723)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2741 = { let __t720 = v_W2740.clone(); rt::apply_direct(interp, "shen.in->", &[__t720])? }; { let __t721 = v_W2741.clone(); let __t722 = Value::nil(); rt::apply_direct(interp, "shen.comb", &[__t721, __t722])? } } } } }; { let __t725 = { let __t724 = v_W2739.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t724])? }; if match rt::is_truthy(interp, &__t725) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { break Ok(v_W2739.clone()); } } } } else { break Ok(v_W2733.clone()); } } } } else { break Ok(v_W2726.clone()); } } } } else { break Ok(v_W2720.clone()); } } } } else { break Ok(v_W2714.clone()); } } } } else { break Ok(v_W2708.clone()); } } } } else { break Ok(v_W2700.clone()); } + if match rt::is_truthy(interp, &__t645) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2364 = { let v_W2365 = { let __t646 = v_V2309.clone(); rt::apply_direct(interp, "shen.", &[__t646])? }; { let __t659 = { let __t647 = v_W2365.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t647])? }; if rt::is_truthy(interp, &__t659)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2366 = { let __t648 = v_W2365.clone(); rt::apply_direct(interp, "shen.in->", &[__t648])? }; { let v_W2367 = { let __t649 = v_W2366.clone(); rt::apply_direct(interp, "shen.", &[__t649])? }; { let __t658 = { let __t650 = v_W2367.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t650])? }; if rt::is_truthy(interp, &__t658)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2368 = { let __t651 = v_W2367.clone(); rt::apply_direct(interp, "shen.<-out", &[__t651])? }; { let v_W2369 = { let __t652 = v_W2367.clone(); rt::apply_direct(interp, "shen.in->", &[__t652])? }; { let __t653 = v_W2369.clone(); let __t657 = { let __t655 = { let __t654 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t654])? }; let __t656 = v_W2368.clone(); rt::cons(&__t655, &__t656) }; rt::apply_direct(interp, "shen.comb", &[__t653, __t657])? } } } } } } } } } }; { let __t661 = { let __t660 = v_W2364.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t660])? }; if match rt::is_truthy(interp, &__t661) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2370 = { let v_W2371 = { let __t662 = v_V2309.clone(); rt::apply_direct(interp, "shen.", &[__t662])? }; { let __t675 = { let __t663 = v_W2371.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t663])? }; if rt::is_truthy(interp, &__t675)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2372 = { let __t664 = v_W2371.clone(); rt::apply_direct(interp, "shen.in->", &[__t664])? }; { let v_W2373 = { let __t665 = v_W2372.clone(); rt::apply_direct(interp, "shen.", &[__t665])? }; { let __t674 = { let __t666 = v_W2373.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t666])? }; if rt::is_truthy(interp, &__t674)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2374 = { let __t667 = v_W2373.clone(); rt::apply_direct(interp, "shen.<-out", &[__t667])? }; { let v_W2375 = { let __t668 = v_W2373.clone(); rt::apply_direct(interp, "shen.in->", &[__t668])? }; { let __t669 = v_W2375.clone(); let __t673 = { let __t671 = { let __t670 = Value::str(","); rt::apply_direct(interp, "intern", &[__t670])? }; let __t672 = v_W2374.clone(); rt::cons(&__t671, &__t672) }; rt::apply_direct(interp, "shen.comb", &[__t669, __t673])? } } } } } } } } } }; { let __t677 = { let __t676 = v_W2370.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t676])? }; if match rt::is_truthy(interp, &__t677) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2376 = { let v_W2377 = { let __t678 = v_V2309.clone(); rt::apply_direct(interp, "shen.", &[__t678])? }; { let __t688 = { let __t679 = v_W2377.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t679])? }; if rt::is_truthy(interp, &__t688)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2378 = { let __t680 = v_W2377.clone(); rt::apply_direct(interp, "shen.in->", &[__t680])? }; { let v_W2379 = { let __t681 = v_W2378.clone(); rt::apply_direct(interp, "shen.", &[__t681])? }; { let __t687 = { let __t682 = v_W2379.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t682])? }; if rt::is_truthy(interp, &__t687)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2380 = { let __t683 = v_W2379.clone(); rt::apply_direct(interp, "shen.<-out", &[__t683])? }; { let v_W2381 = { let __t684 = v_W2379.clone(); rt::apply_direct(interp, "shen.in->", &[__t684])? }; { let __t685 = v_W2381.clone(); let __t686 = v_W2380.clone(); rt::apply_direct(interp, "shen.comb", &[__t685, __t686])? } } } } } } } } } }; { let __t690 = { let __t689 = v_W2376.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t689])? }; if match rt::is_truthy(interp, &__t690) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2382 = { let v_W2383 = { let __t691 = v_V2309.clone(); rt::apply_direct(interp, "shen.", &[__t691])? }; { let __t704 = { let __t692 = v_W2383.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t692])? }; if rt::is_truthy(interp, &__t704)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2384 = { let __t693 = v_W2383.clone(); rt::apply_direct(interp, "shen.<-out", &[__t693])? }; { let v_W2385 = { let __t694 = v_W2383.clone(); rt::apply_direct(interp, "shen.in->", &[__t694])? }; { let v_W2386 = { let __t695 = v_W2385.clone(); rt::apply_direct(interp, "shen.", &[__t695])? }; { let __t703 = { let __t696 = v_W2386.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t696])? }; if rt::is_truthy(interp, &__t703)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2387 = { let __t697 = v_W2386.clone(); rt::apply_direct(interp, "shen.<-out", &[__t697])? }; { let v_W2388 = { let __t698 = v_W2386.clone(); rt::apply_direct(interp, "shen.in->", &[__t698])? }; { let __t699 = v_W2388.clone(); let __t702 = { let __t700 = v_W2384.clone(); let __t701 = v_W2387.clone(); rt::cons(&__t700, &__t701) }; rt::apply_direct(interp, "shen.comb", &[__t699, __t702])? } } } } } } } } } } }; { let __t706 = { let __t705 = v_W2382.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t705])? }; if match rt::is_truthy(interp, &__t706) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2389 = { let v_W2390 = { let __t707 = v_V2309.clone(); rt::apply_direct(interp, "shen.", &[__t707])? }; { let __t717 = { let __t708 = v_W2390.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t708])? }; if rt::is_truthy(interp, &__t717)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2391 = { let __t709 = v_W2390.clone(); rt::apply_direct(interp, "shen.in->", &[__t709])? }; { let v_W2392 = { let __t710 = v_W2391.clone(); rt::apply_direct(interp, "shen.", &[__t710])? }; { let __t716 = { let __t711 = v_W2392.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t711])? }; if rt::is_truthy(interp, &__t716)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2393 = { let __t712 = v_W2392.clone(); rt::apply_direct(interp, "shen.<-out", &[__t712])? }; { let v_W2394 = { let __t713 = v_W2392.clone(); rt::apply_direct(interp, "shen.in->", &[__t713])? }; { let __t714 = v_W2394.clone(); let __t715 = v_W2393.clone(); rt::apply_direct(interp, "shen.comb", &[__t714, __t715])? } } } } } } } } } }; { let __t719 = { let __t718 = v_W2389.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t718])? }; if match rt::is_truthy(interp, &__t719) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W2395 = { let v_W2396 = { let __t720 = v_V2309.clone(); rt::apply_direct(interp, "", &[__t720])? }; { let __t725 = { let __t721 = v_W2396.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t721])? }; if rt::is_truthy(interp, &__t725)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W2397 = { let __t722 = v_W2396.clone(); rt::apply_direct(interp, "shen.in->", &[__t722])? }; { let __t723 = v_W2397.clone(); let __t724 = Value::nil(); rt::apply_direct(interp, "shen.comb", &[__t723, __t724])? } } } } }; { let __t727 = { let __t726 = v_W2395.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t726])? }; if match rt::is_truthy(interp, &__t727) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { break Ok(v_W2395.clone()); } } } } else { break Ok(v_W2389.clone()); } } } } else { break Ok(v_W2382.clone()); } } } } else { break Ok(v_W2376.clone()); } } } } else { break Ok(v_W2370.clone()); } } } } else { break Ok(v_W2364.clone()); } } } } else { break Ok(v_W2356.clone()); } } } } else { break Ok( - v_W2694.clone() + v_W2350.clone() ); } } } } else { - break Ok(v_W2688.clone()); + break Ok(v_W2344.clone()); } } } } else { - break Ok(v_W2682.clone()); + break Ok(v_W2338.clone()); } } } } else { - break Ok(v_W2676.clone()); + break Ok(v_W2332.clone()); } } } } else { - break Ok(v_W2665.clone()); + break Ok(v_W2321.clone()); } } } } else { - break Ok(v_W2654.clone()); + break Ok(v_W2310.clone()); } } } @@ -3605,92 +3613,92 @@ pub fn aot_shen_x2e_add_x2d_sexpr(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2742 = args[0].clone(); + let mut v_V2398 = args[0].clone(); #[allow(unused_mut)] - let mut v_V2743 = args[1].clone(); + let mut v_V2399 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t750 = { - let __t743 = { - let __t729 = v_V2742.clone(); - rt::is_cons(&__t729) + let __t752 = { + let __t745 = { + let __t731 = v_V2398.clone(); + rt::is_cons(&__t731) }; - if !rt::is_truthy(interp, &__t743)? { + if !rt::is_truthy(interp, &__t745)? { Value::bool(false) } else { - let __t744 = { - let __t741 = { - let __t730 = Value::sym(interp.intern("$")); - let __t732 = { - let __t731 = v_V2742.clone(); - rt::hd(&__t731)? - }; - rt::eq(&__t730, &__t732) + let __t746 = { + let __t743 = { + let __t732 = Value::sym(interp.intern("$")); + let __t734 = { + let __t733 = v_V2398.clone(); + rt::hd(&__t733)? + }; + rt::eq(&__t732, &__t734) }; - if !rt::is_truthy(interp, &__t741)? { + if !rt::is_truthy(interp, &__t743)? { Value::bool(false) } else { - let __t742 = { - let __t739 = { - let __t734 = { - let __t733 = v_V2742.clone(); - rt::tl(&__t733)? + let __t744 = { + let __t741 = { + let __t736 = { + let __t735 = v_V2398.clone(); + rt::tl(&__t735)? }; - rt::is_cons(&__t734) + rt::is_cons(&__t736) }; - if !rt::is_truthy(interp, &__t739)? { + if !rt::is_truthy(interp, &__t741)? { Value::bool(false) } else { - let __t740 = { - let __t735 = Value::nil(); - let __t738 = { - let __t737 = { - let __t736 = v_V2742.clone(); - rt::tl(&__t736)? + let __t742 = { + let __t737 = Value::nil(); + let __t740 = { + let __t739 = { + let __t738 = v_V2398.clone(); + rt::tl(&__t738)? }; - rt::tl(&__t737)? + rt::tl(&__t739)? }; - rt::eq(&__t735, &__t738) + rt::eq(&__t737, &__t740) }; - Value::bool(rt::is_truthy(interp, &__t740)?) + Value::bool(rt::is_truthy(interp, &__t742)?) } }; - Value::bool(rt::is_truthy(interp, &__t742)?) + Value::bool(rt::is_truthy(interp, &__t744)?) } }; - Value::bool(rt::is_truthy(interp, &__t744)?) + Value::bool(rt::is_truthy(interp, &__t746)?) } }; - if match rt::is_truthy(interp, &__t750) { + if match rt::is_truthy(interp, &__t752) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t748 = { - let __t747 = { - let __t746 = { - let __t745 = v_V2742.clone(); - rt::tl(&__t745)? + let __t750 = { + let __t749 = { + let __t748 = { + let __t747 = v_V2398.clone(); + rt::tl(&__t747)? }; - rt::hd(&__t746)? + rt::hd(&__t748)? }; - rt::apply_direct(interp, "explode", &[__t747])? + rt::apply_direct(interp, "explode", &[__t749])? }; - let __t749 = v_V2743.clone(); - rt::apply_direct(interp, "append", &[__t748, __t749])? + let __t751 = v_V2399.clone(); + rt::apply_direct(interp, "append", &[__t750, __t751])? }); } else { { - let __t728 = Value::bool(true); - if match rt::is_truthy(interp, &__t728) { + let __t730 = Value::bool(true); + if match rt::is_truthy(interp, &__t730) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t726 = v_V2742.clone(); - let __t727 = v_V2743.clone(); - rt::cons(&__t726, &__t727) + let __t728 = v_V2398.clone(); + let __t729 = v_V2399.clone(); + rt::cons(&__t728, &__t729) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3715,26 +3723,26 @@ pub fn aot_shen_x2e__x3c_lsb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2744 = args[0].clone(); + let mut v_V2400 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2745 = { - let __t756 = { - let __t751 = v_V2744.clone(); - let __t752 = Value::int(91i64); - rt::apply_direct(interp, "shen.hds=?", &[__t751, __t752])? + let v_W2401 = { + let __t758 = { + let __t753 = v_V2400.clone(); + let __t754 = Value::int(91i64); + rt::apply_direct(interp, "shen.hds=?", &[__t753, __t754])? }; - if rt::is_truthy(interp, &__t756)? { + if rt::is_truthy(interp, &__t758)? { { - let v_W2746 = { - let __t753 = v_V2744.clone(); - rt::apply_direct(interp, "tail", &[__t753])? + let v_W2402 = { + let __t755 = v_V2400.clone(); + rt::apply_direct(interp, "tail", &[__t755])? }; { - let __t754 = v_W2746.clone(); - let __t755 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t754, __t755])? + let __t756 = v_W2402.clone(); + let __t757 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t756, __t757])? } } } else { @@ -3744,17 +3752,17 @@ pub fn aot_shen_x2e__x3c_lsb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t758 = { - let __t757 = v_W2745.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t757])? + let __t760 = { + let __t759 = v_W2401.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t759])? }; - if match rt::is_truthy(interp, &__t758) { + if match rt::is_truthy(interp, &__t760) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2745.clone()); + break Ok(v_W2401.clone()); } } } @@ -3775,26 +3783,26 @@ pub fn aot_shen_x2e__x3c_rsb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2747 = args[0].clone(); + let mut v_V2403 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2748 = { - let __t764 = { - let __t759 = v_V2747.clone(); - let __t760 = Value::int(93i64); - rt::apply_direct(interp, "shen.hds=?", &[__t759, __t760])? + let v_W2404 = { + let __t766 = { + let __t761 = v_V2403.clone(); + let __t762 = Value::int(93i64); + rt::apply_direct(interp, "shen.hds=?", &[__t761, __t762])? }; - if rt::is_truthy(interp, &__t764)? { + if rt::is_truthy(interp, &__t766)? { { - let v_W2749 = { - let __t761 = v_V2747.clone(); - rt::apply_direct(interp, "tail", &[__t761])? + let v_W2405 = { + let __t763 = v_V2403.clone(); + rt::apply_direct(interp, "tail", &[__t763])? }; { - let __t762 = v_W2749.clone(); - let __t763 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t762, __t763])? + let __t764 = v_W2405.clone(); + let __t765 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t764, __t765])? } } } else { @@ -3804,17 +3812,17 @@ pub fn aot_shen_x2e__x3c_rsb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t766 = { - let __t765 = v_W2748.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t765])? + let __t768 = { + let __t767 = v_W2404.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t767])? }; - if match rt::is_truthy(interp, &__t766) { + if match rt::is_truthy(interp, &__t768) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2748.clone()); + break Ok(v_W2404.clone()); } } } @@ -3838,39 +3846,39 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs1_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2750 = args[0].clone(); + let mut v_V2406 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2751 = { - let v_W2752 = { - let __t767 = v_V2750.clone(); - rt::apply_direct(interp, "shen.", &[__t767])? + let v_W2407 = { + let v_W2408 = { + let __t769 = v_V2406.clone(); + rt::apply_direct(interp, "shen.", &[__t769])? }; { - let __t773 = { - let __t768 = v_W2752.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t768])? + let __t775 = { + let __t770 = v_W2408.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t770])? }; - if rt::is_truthy(interp, &__t773)? { + if rt::is_truthy(interp, &__t775)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2753 = { - let __t769 = v_W2752.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t769])? + let v_W2409 = { + let __t771 = v_W2408.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t771])? }; { - let v_W2754 = { - let __t770 = v_W2752.clone(); - rt::apply_direct(interp, "shen.in->", &[__t770])? + let v_W2410 = { + let __t772 = v_W2408.clone(); + rt::apply_direct(interp, "shen.in->", &[__t772])? }; { - let __t771 = v_W2754.clone(); - let __t772 = v_W2753.clone(); - rt::apply_direct(interp, "shen.comb", &[__t771, __t772])? + let __t773 = v_W2410.clone(); + let __t774 = v_W2409.clone(); + rt::apply_direct(interp, "shen.comb", &[__t773, __t774])? } } } @@ -3878,17 +3886,17 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs1_x3e_( } }; { - let __t775 = { - let __t774 = v_W2751.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t774])? + let __t777 = { + let __t776 = v_W2407.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t776])? }; - if match rt::is_truthy(interp, &__t775) { + if match rt::is_truthy(interp, &__t777) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2751.clone()); + break Ok(v_W2407.clone()); } } } @@ -3912,39 +3920,39 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs2_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2755 = args[0].clone(); + let mut v_V2411 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2756 = { - let v_W2757 = { - let __t776 = v_V2755.clone(); - rt::apply_direct(interp, "shen.", &[__t776])? + let v_W2412 = { + let v_W2413 = { + let __t778 = v_V2411.clone(); + rt::apply_direct(interp, "shen.", &[__t778])? }; { - let __t782 = { - let __t777 = v_W2757.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t777])? + let __t784 = { + let __t779 = v_W2413.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t779])? }; - if rt::is_truthy(interp, &__t782)? { + if rt::is_truthy(interp, &__t784)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2758 = { - let __t778 = v_W2757.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t778])? + let v_W2414 = { + let __t780 = v_W2413.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t780])? }; { - let v_W2759 = { - let __t779 = v_W2757.clone(); - rt::apply_direct(interp, "shen.in->", &[__t779])? + let v_W2415 = { + let __t781 = v_W2413.clone(); + rt::apply_direct(interp, "shen.in->", &[__t781])? }; { - let __t780 = v_W2759.clone(); - let __t781 = v_W2758.clone(); - rt::apply_direct(interp, "shen.comb", &[__t780, __t781])? + let __t782 = v_W2415.clone(); + let __t783 = v_W2414.clone(); + rt::apply_direct(interp, "shen.comb", &[__t782, __t783])? } } } @@ -3952,17 +3960,17 @@ pub fn aot_shen_x2e__x3c_s_x2d_exprs2_x3e_( } }; { - let __t784 = { - let __t783 = v_W2756.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t783])? + let __t786 = { + let __t785 = v_W2412.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t785])? }; - if match rt::is_truthy(interp, &__t784) { + if match rt::is_truthy(interp, &__t786) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2756.clone()); + break Ok(v_W2412.clone()); } } } @@ -3983,258 +3991,259 @@ pub fn aot_shen_x2e_cons_x2d_form(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2761 = args[0].clone(); + let mut v_V2417 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t855 = { - let __t853 = Value::nil(); - let __t854 = v_V2761.clone(); - rt::eq(&__t853, &__t854) + let __t857 = { + let __t855 = Value::nil(); + let __t856 = v_V2417.clone(); + rt::eq(&__t855, &__t856) }; - if match rt::is_truthy(interp, &__t855) { + if match rt::is_truthy(interp, &__t857) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t852 = { - let __t843 = { - let __t822 = v_V2761.clone(); - rt::is_cons(&__t822) + let __t854 = { + let __t845 = { + let __t824 = v_V2417.clone(); + rt::is_cons(&__t824) }; - if !rt::is_truthy(interp, &__t843)? { + if !rt::is_truthy(interp, &__t845)? { Value::bool(false) } else { - let __t844 = { - let __t841 = { - let __t824 = { - let __t823 = v_V2761.clone(); - rt::tl(&__t823)? + let __t846 = { + let __t843 = { + let __t826 = { + let __t825 = v_V2417.clone(); + rt::tl(&__t825)? }; - rt::is_cons(&__t824) + rt::is_cons(&__t826) }; - if !rt::is_truthy(interp, &__t841)? { + if !rt::is_truthy(interp, &__t843)? { Value::bool(false) } else { - let __t842 = { - let __t839 = { - let __t827 = { - let __t826 = { - let __t825 = v_V2761.clone(); - rt::tl(&__t825)? + let __t844 = { + let __t841 = { + let __t829 = { + let __t828 = { + let __t827 = v_V2417.clone(); + rt::tl(&__t827)? }; - rt::tl(&__t826)? + rt::tl(&__t828)? }; - rt::is_cons(&__t827) + rt::is_cons(&__t829) }; - if !rt::is_truthy(interp, &__t839)? { + if !rt::is_truthy(interp, &__t841)? { Value::bool(false) } else { - let __t840 = { - let __t837 = { - let __t828 = Value::nil(); - let __t832 = { - let __t831 = { - let __t830 = { - let __t829 = v_V2761.clone(); - rt::tl(&__t829)? + let __t842 = { + let __t839 = { + let __t830 = Value::nil(); + let __t834 = { + let __t833 = { + let __t832 = { + let __t831 = v_V2417.clone(); + rt::tl(&__t831)? }; - rt::tl(&__t830)? + rt::tl(&__t832)? }; - rt::tl(&__t831)? + rt::tl(&__t833)? }; - rt::eq(&__t828, &__t832) + rt::eq(&__t830, &__t834) }; - if !rt::is_truthy(interp, &__t837)? { + if !rt::is_truthy(interp, &__t839)? { Value::bool(false) } else { - let __t838 = { - let __t835 = { - let __t834 = { - let __t833 = v_V2761.clone(); - rt::tl(&__t833)? + let __t840 = { + let __t837 = { + let __t836 = { + let __t835 = v_V2417.clone(); + rt::tl(&__t835)? }; - rt::hd(&__t834)? + rt::hd(&__t836)? }; - let __t836 = + let __t838 = Value::sym(interp.intern("bar!")); - rt::eq(&__t835, &__t836) + rt::eq(&__t837, &__t838) }; - Value::bool(rt::is_truthy(interp, &__t838)?) + Value::bool(rt::is_truthy(interp, &__t840)?) } }; - Value::bool(rt::is_truthy(interp, &__t840)?) + Value::bool(rt::is_truthy(interp, &__t842)?) } }; - Value::bool(rt::is_truthy(interp, &__t842)?) + Value::bool(rt::is_truthy(interp, &__t844)?) } }; - Value::bool(rt::is_truthy(interp, &__t844)?) + Value::bool(rt::is_truthy(interp, &__t846)?) } }; - if match rt::is_truthy(interp, &__t852) { + if match rt::is_truthy(interp, &__t854) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t845 = Value::sym(interp.intern("cons")); - let __t851 = { - let __t847 = { - let __t846 = v_V2761.clone(); - rt::hd(&__t846)? - }; - let __t850 = { - let __t849 = { - let __t848 = v_V2761.clone(); - rt::tl(&__t848)? + let __t847 = Value::sym(interp.intern("cons")); + let __t853 = { + let __t849 = { + let __t848 = v_V2417.clone(); + rt::hd(&__t848)? + }; + let __t852 = { + let __t851 = { + let __t850 = v_V2417.clone(); + rt::tl(&__t850)? }; - rt::tl(&__t849)? + rt::tl(&__t851)? }; - rt::cons(&__t847, &__t850) + rt::cons(&__t849, &__t852) }; - rt::cons(&__t845, &__t851) + rt::cons(&__t847, &__t853) }); } else { { - let __t821 = { - let __t818 = { - let __t798 = v_V2761.clone(); - rt::is_cons(&__t798) + let __t823 = { + let __t820 = { + let __t800 = v_V2417.clone(); + rt::is_cons(&__t800) }; - if !rt::is_truthy(interp, &__t818)? { + if !rt::is_truthy(interp, &__t820)? { Value::bool(false) } else { - let __t819 = { - let __t816 = { - let __t800 = { - let __t799 = v_V2761.clone(); - rt::tl(&__t799)? + let __t821 = { + let __t818 = { + let __t802 = { + let __t801 = v_V2417.clone(); + rt::tl(&__t801)? }; - rt::is_cons(&__t800) + rt::is_cons(&__t802) }; - if !rt::is_truthy(interp, &__t816)? { + if !rt::is_truthy(interp, &__t818)? { Value::bool(false) } else { - let __t817 = { - let __t814 = { - let __t803 = { - let __t802 = { - let __t801 = v_V2761.clone(); - rt::tl(&__t801)? + let __t819 = { + let __t816 = { + let __t805 = { + let __t804 = { + let __t803 = v_V2417.clone(); + rt::tl(&__t803)? }; - rt::tl(&__t802)? + rt::tl(&__t804)? }; - rt::is_cons(&__t803) + rt::is_cons(&__t805) }; - if !rt::is_truthy(interp, &__t814)? { + if !rt::is_truthy(interp, &__t816)? { Value::bool(false) } else { - let __t815 = { - let __t812 = { - let __t807 = { - let __t806 = { - let __t805 = { - let __t804 = - v_V2761.clone(); - rt::tl(&__t804)? + let __t817 = { + let __t814 = { + let __t809 = { + let __t808 = { + let __t807 = { + let __t806 = + v_V2417.clone(); + rt::tl(&__t806)? }; - rt::tl(&__t805)? + rt::tl(&__t807)? }; - rt::tl(&__t806)? + rt::tl(&__t808)? }; - rt::is_cons(&__t807) + rt::is_cons(&__t809) }; - if !rt::is_truthy(interp, &__t812)? { + if !rt::is_truthy(interp, &__t814)? { Value::bool(false) } else { - let __t813 = { - let __t810 = { - let __t809 = { - let __t808 = - v_V2761.clone(); - rt::tl(&__t808)? + let __t815 = { + let __t812 = { + let __t811 = { + let __t810 = + v_V2417.clone(); + rt::tl(&__t810)? }; - rt::hd(&__t809)? + rt::hd(&__t811)? }; - let __t811 = Value::sym( + let __t813 = Value::sym( interp.intern("bar!"), ); - rt::eq(&__t810, &__t811) + rt::eq(&__t812, &__t813) }; Value::bool(rt::is_truthy( - interp, &__t813, + interp, &__t815, )?) } }; - Value::bool(rt::is_truthy(interp, &__t815)?) + Value::bool(rt::is_truthy(interp, &__t817)?) } }; - Value::bool(rt::is_truthy(interp, &__t817)?) + Value::bool(rt::is_truthy(interp, &__t819)?) } }; - Value::bool(rt::is_truthy(interp, &__t819)?) + Value::bool(rt::is_truthy(interp, &__t821)?) } }; - if match rt::is_truthy(interp, &__t821) { + if match rt::is_truthy(interp, &__t823) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t820 = Value::str("misapplication of |\n"); - rt::apply_direct(interp, "simple-error", &[__t820])? + let __t822 = Value::str("misapplication of |\n"); + rt::apply_direct(interp, "simple-error", &[__t822])? }); } else { { - let __t797 = { - let __t787 = v_V2761.clone(); - rt::is_cons(&__t787) + let __t799 = { + let __t789 = v_V2417.clone(); + rt::is_cons(&__t789) }; - if match rt::is_truthy(interp, &__t797) { + if match rt::is_truthy(interp, &__t799) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t788 = Value::sym(interp.intern("cons")); - let __t796 = { - let __t790 = { - let __t789 = v_V2761.clone(); - rt::hd(&__t789)? + let __t790 = Value::sym(interp.intern("cons")); + let __t798 = { + let __t792 = { + let __t791 = v_V2417.clone(); + rt::hd(&__t791)? }; - let __t795 = { - let __t793 = { - let __t792 = { - let __t791 = v_V2761.clone(); - rt::tl(&__t791)? + let __t797 = { + let __t795 = { + let __t794 = { + let __t793 = v_V2417.clone(); + rt::tl(&__t793)? }; rt::apply_direct( interp, "shen.cons-form", - &[__t792], + &[__t794], )? }; - let __t794 = Value::nil(); - rt::cons(&__t793, &__t794) + let __t796 = Value::nil(); + rt::cons(&__t795, &__t796) }; - rt::cons(&__t790, &__t795) + rt::cons(&__t792, &__t797) }; - rt::cons(&__t788, &__t796) + rt::cons(&__t790, &__t798) }); } else { { - let __t786 = Value::bool(true); - if match rt::is_truthy(interp, &__t786) { + let __t788 = Value::bool(true); + if match rt::is_truthy(interp, &__t788) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t785 = - Value::sym(interp.intern("shen.cons-form")); + let __t787 = Value::str( + "partial function shen.cons-form", + ); rt::apply_direct( interp, - "shen.f-error", - &[__t785], + "simple-error", + &[__t787], )? }); } else { @@ -4268,26 +4277,26 @@ pub fn aot_shen_x2e__x3c_lrb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2762 = args[0].clone(); + let mut v_V2418 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2763 = { - let __t861 = { - let __t856 = v_V2762.clone(); - let __t857 = Value::int(40i64); - rt::apply_direct(interp, "shen.hds=?", &[__t856, __t857])? + let v_W2419 = { + let __t863 = { + let __t858 = v_V2418.clone(); + let __t859 = Value::int(40i64); + rt::apply_direct(interp, "shen.hds=?", &[__t858, __t859])? }; - if rt::is_truthy(interp, &__t861)? { + if rt::is_truthy(interp, &__t863)? { { - let v_W2764 = { - let __t858 = v_V2762.clone(); - rt::apply_direct(interp, "tail", &[__t858])? + let v_W2420 = { + let __t860 = v_V2418.clone(); + rt::apply_direct(interp, "tail", &[__t860])? }; { - let __t859 = v_W2764.clone(); - let __t860 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t859, __t860])? + let __t861 = v_W2420.clone(); + let __t862 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t861, __t862])? } } } else { @@ -4297,17 +4306,17 @@ pub fn aot_shen_x2e__x3c_lrb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t863 = { - let __t862 = v_W2763.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t862])? + let __t865 = { + let __t864 = v_W2419.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t864])? }; - if match rt::is_truthy(interp, &__t863) { + if match rt::is_truthy(interp, &__t865) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2763.clone()); + break Ok(v_W2419.clone()); } } } @@ -4328,26 +4337,26 @@ pub fn aot_shen_x2e__x3c_rrb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2765 = args[0].clone(); + let mut v_V2421 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2766 = { - let __t869 = { - let __t864 = v_V2765.clone(); - let __t865 = Value::int(41i64); - rt::apply_direct(interp, "shen.hds=?", &[__t864, __t865])? + let v_W2422 = { + let __t871 = { + let __t866 = v_V2421.clone(); + let __t867 = Value::int(41i64); + rt::apply_direct(interp, "shen.hds=?", &[__t866, __t867])? }; - if rt::is_truthy(interp, &__t869)? { + if rt::is_truthy(interp, &__t871)? { { - let v_W2767 = { - let __t866 = v_V2765.clone(); - rt::apply_direct(interp, "tail", &[__t866])? + let v_W2423 = { + let __t868 = v_V2421.clone(); + rt::apply_direct(interp, "tail", &[__t868])? }; { - let __t867 = v_W2767.clone(); - let __t868 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t867, __t868])? + let __t869 = v_W2423.clone(); + let __t870 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t869, __t870])? } } } else { @@ -4357,17 +4366,17 @@ pub fn aot_shen_x2e__x3c_rrb_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t871 = { - let __t870 = v_W2766.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t870])? + let __t873 = { + let __t872 = v_W2422.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t872])? }; - if match rt::is_truthy(interp, &__t871) { + if match rt::is_truthy(interp, &__t873) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2766.clone()); + break Ok(v_W2422.clone()); } } } @@ -4388,26 +4397,26 @@ pub fn aot_shen_x2e__x3c_lcurly_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2768 = args[0].clone(); + let mut v_V2424 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2769 = { - let __t877 = { - let __t872 = v_V2768.clone(); - let __t873 = Value::int(123i64); - rt::apply_direct(interp, "shen.hds=?", &[__t872, __t873])? + let v_W2425 = { + let __t879 = { + let __t874 = v_V2424.clone(); + let __t875 = Value::int(123i64); + rt::apply_direct(interp, "shen.hds=?", &[__t874, __t875])? }; - if rt::is_truthy(interp, &__t877)? { + if rt::is_truthy(interp, &__t879)? { { - let v_W2770 = { - let __t874 = v_V2768.clone(); - rt::apply_direct(interp, "tail", &[__t874])? + let v_W2426 = { + let __t876 = v_V2424.clone(); + rt::apply_direct(interp, "tail", &[__t876])? }; { - let __t875 = v_W2770.clone(); - let __t876 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t875, __t876])? + let __t877 = v_W2426.clone(); + let __t878 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t877, __t878])? } } } else { @@ -4417,17 +4426,17 @@ pub fn aot_shen_x2e__x3c_lcurly_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t879 = { - let __t878 = v_W2769.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t878])? + let __t881 = { + let __t880 = v_W2425.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t880])? }; - if match rt::is_truthy(interp, &__t879) { + if match rt::is_truthy(interp, &__t881) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2769.clone()); + break Ok(v_W2425.clone()); } } } @@ -4448,26 +4457,26 @@ pub fn aot_shen_x2e__x3c_rcurly_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2771 = args[0].clone(); + let mut v_V2427 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2772 = { - let __t885 = { - let __t880 = v_V2771.clone(); - let __t881 = Value::int(125i64); - rt::apply_direct(interp, "shen.hds=?", &[__t880, __t881])? + let v_W2428 = { + let __t887 = { + let __t882 = v_V2427.clone(); + let __t883 = Value::int(125i64); + rt::apply_direct(interp, "shen.hds=?", &[__t882, __t883])? }; - if rt::is_truthy(interp, &__t885)? { + if rt::is_truthy(interp, &__t887)? { { - let v_W2773 = { - let __t882 = v_V2771.clone(); - rt::apply_direct(interp, "tail", &[__t882])? + let v_W2429 = { + let __t884 = v_V2427.clone(); + rt::apply_direct(interp, "tail", &[__t884])? }; { - let __t883 = v_W2773.clone(); - let __t884 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t883, __t884])? + let __t885 = v_W2429.clone(); + let __t886 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t885, __t886])? } } } else { @@ -4477,17 +4486,17 @@ pub fn aot_shen_x2e__x3c_rcurly_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t887 = { - let __t886 = v_W2772.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t886])? + let __t889 = { + let __t888 = v_W2428.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t888])? }; - if match rt::is_truthy(interp, &__t887) { + if match rt::is_truthy(interp, &__t889) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2772.clone()); + break Ok(v_W2428.clone()); } } } @@ -4508,26 +4517,26 @@ pub fn aot_shen_x2e__x3c_bar_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2774 = args[0].clone(); + let mut v_V2430 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2775 = { - let __t893 = { - let __t888 = v_V2774.clone(); - let __t889 = Value::int(124i64); - rt::apply_direct(interp, "shen.hds=?", &[__t888, __t889])? + let v_W2431 = { + let __t895 = { + let __t890 = v_V2430.clone(); + let __t891 = Value::int(124i64); + rt::apply_direct(interp, "shen.hds=?", &[__t890, __t891])? }; - if rt::is_truthy(interp, &__t893)? { + if rt::is_truthy(interp, &__t895)? { { - let v_W2776 = { - let __t890 = v_V2774.clone(); - rt::apply_direct(interp, "tail", &[__t890])? + let v_W2432 = { + let __t892 = v_V2430.clone(); + rt::apply_direct(interp, "tail", &[__t892])? }; { - let __t891 = v_W2776.clone(); - let __t892 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t891, __t892])? + let __t893 = v_W2432.clone(); + let __t894 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t893, __t894])? } } } else { @@ -4537,17 +4546,17 @@ pub fn aot_shen_x2e__x3c_bar_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t895 = { - let __t894 = v_W2775.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t894])? + let __t897 = { + let __t896 = v_W2431.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t896])? }; - if match rt::is_truthy(interp, &__t895) { + if match rt::is_truthy(interp, &__t897) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2775.clone()); + break Ok(v_W2431.clone()); } } } @@ -4568,26 +4577,26 @@ pub fn aot_shen_x2e__x3c_semicolon_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2777 = args[0].clone(); + let mut v_V2433 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2778 = { - let __t901 = { - let __t896 = v_V2777.clone(); - let __t897 = Value::int(59i64); - rt::apply_direct(interp, "shen.hds=?", &[__t896, __t897])? + let v_W2434 = { + let __t903 = { + let __t898 = v_V2433.clone(); + let __t899 = Value::int(59i64); + rt::apply_direct(interp, "shen.hds=?", &[__t898, __t899])? }; - if rt::is_truthy(interp, &__t901)? { + if rt::is_truthy(interp, &__t903)? { { - let v_W2779 = { - let __t898 = v_V2777.clone(); - rt::apply_direct(interp, "tail", &[__t898])? + let v_W2435 = { + let __t900 = v_V2433.clone(); + rt::apply_direct(interp, "tail", &[__t900])? }; { - let __t899 = v_W2779.clone(); - let __t900 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t899, __t900])? + let __t901 = v_W2435.clone(); + let __t902 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t901, __t902])? } } } else { @@ -4597,17 +4606,17 @@ pub fn aot_shen_x2e__x3c_semicolon_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t903 = { - let __t902 = v_W2778.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t902])? + let __t905 = { + let __t904 = v_W2434.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t904])? }; - if match rt::is_truthy(interp, &__t903) { + if match rt::is_truthy(interp, &__t905) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2778.clone()); + break Ok(v_W2434.clone()); } } } @@ -4628,26 +4637,26 @@ pub fn aot_shen_x2e__x3c_colon_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2780 = args[0].clone(); + let mut v_V2436 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2781 = { - let __t909 = { - let __t904 = v_V2780.clone(); - let __t905 = Value::int(58i64); - rt::apply_direct(interp, "shen.hds=?", &[__t904, __t905])? + let v_W2437 = { + let __t911 = { + let __t906 = v_V2436.clone(); + let __t907 = Value::int(58i64); + rt::apply_direct(interp, "shen.hds=?", &[__t906, __t907])? }; - if rt::is_truthy(interp, &__t909)? { + if rt::is_truthy(interp, &__t911)? { { - let v_W2782 = { - let __t906 = v_V2780.clone(); - rt::apply_direct(interp, "tail", &[__t906])? + let v_W2438 = { + let __t908 = v_V2436.clone(); + rt::apply_direct(interp, "tail", &[__t908])? }; { - let __t907 = v_W2782.clone(); - let __t908 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t907, __t908])? + let __t909 = v_W2438.clone(); + let __t910 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t909, __t910])? } } } else { @@ -4657,17 +4666,17 @@ pub fn aot_shen_x2e__x3c_colon_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t911 = { - let __t910 = v_W2781.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t910])? + let __t913 = { + let __t912 = v_W2437.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t912])? }; - if match rt::is_truthy(interp, &__t911) { + if match rt::is_truthy(interp, &__t913) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2781.clone()); + break Ok(v_W2437.clone()); } } } @@ -4688,26 +4697,26 @@ pub fn aot_shen_x2e__x3c_comma_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2783 = args[0].clone(); + let mut v_V2439 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2784 = { - let __t917 = { - let __t912 = v_V2783.clone(); - let __t913 = Value::int(44i64); - rt::apply_direct(interp, "shen.hds=?", &[__t912, __t913])? + let v_W2440 = { + let __t919 = { + let __t914 = v_V2439.clone(); + let __t915 = Value::int(44i64); + rt::apply_direct(interp, "shen.hds=?", &[__t914, __t915])? }; - if rt::is_truthy(interp, &__t917)? { + if rt::is_truthy(interp, &__t919)? { { - let v_W2785 = { - let __t914 = v_V2783.clone(); - rt::apply_direct(interp, "tail", &[__t914])? + let v_W2441 = { + let __t916 = v_V2439.clone(); + rt::apply_direct(interp, "tail", &[__t916])? }; { - let __t915 = v_W2785.clone(); - let __t916 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t915, __t916])? + let __t917 = v_W2441.clone(); + let __t918 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t917, __t918])? } } } else { @@ -4717,17 +4726,17 @@ pub fn aot_shen_x2e__x3c_comma_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t919 = { - let __t918 = v_W2784.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t918])? + let __t921 = { + let __t920 = v_W2440.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t920])? }; - if match rt::is_truthy(interp, &__t919) { + if match rt::is_truthy(interp, &__t921) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2784.clone()); + break Ok(v_W2440.clone()); } } } @@ -4748,26 +4757,26 @@ pub fn aot_shen_x2e__x3c_equal_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2786 = args[0].clone(); + let mut v_V2442 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2787 = { - let __t925 = { - let __t920 = v_V2786.clone(); - let __t921 = Value::int(61i64); - rt::apply_direct(interp, "shen.hds=?", &[__t920, __t921])? + let v_W2443 = { + let __t927 = { + let __t922 = v_V2442.clone(); + let __t923 = Value::int(61i64); + rt::apply_direct(interp, "shen.hds=?", &[__t922, __t923])? }; - if rt::is_truthy(interp, &__t925)? { + if rt::is_truthy(interp, &__t927)? { { - let v_W2788 = { - let __t922 = v_V2786.clone(); - rt::apply_direct(interp, "tail", &[__t922])? + let v_W2444 = { + let __t924 = v_V2442.clone(); + rt::apply_direct(interp, "tail", &[__t924])? }; { - let __t923 = v_W2788.clone(); - let __t924 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t923, __t924])? + let __t925 = v_W2444.clone(); + let __t926 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t925, __t926])? } } } else { @@ -4777,17 +4786,17 @@ pub fn aot_shen_x2e__x3c_equal_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t927 = { - let __t926 = v_W2787.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t926])? + let __t929 = { + let __t928 = v_W2443.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t928])? }; - if match rt::is_truthy(interp, &__t927) { + if match rt::is_truthy(interp, &__t929) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2787.clone()); + break Ok(v_W2443.clone()); } } } @@ -4808,76 +4817,76 @@ pub fn aot_shen_x2e__x3c_comment_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V2789 = args[0].clone(); + let mut v_V2445 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2790 = { - let v_W2791 = { - let __t928 = v_V2789.clone(); - rt::apply_direct(interp, "shen.", &[__t928])? + let v_W2446 = { + let v_W2447 = { + let __t930 = v_V2445.clone(); + rt::apply_direct(interp, "shen.", &[__t930])? }; { - let __t933 = { - let __t929 = v_W2791.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t929])? + let __t935 = { + let __t931 = v_W2447.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t931])? }; - if rt::is_truthy(interp, &__t933)? { + if rt::is_truthy(interp, &__t935)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2792 = { - let __t930 = v_W2791.clone(); - rt::apply_direct(interp, "shen.in->", &[__t930])? + let v_W2448 = { + let __t932 = v_W2447.clone(); + rt::apply_direct(interp, "shen.in->", &[__t932])? }; { - let __t931 = v_W2792.clone(); - let __t932 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t931, __t932])? + let __t933 = v_W2448.clone(); + let __t934 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t933, __t934])? } } } } }; { - let __t935 = { - let __t934 = v_W2790.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t934])? + let __t937 = { + let __t936 = v_W2446.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t936])? }; - if match rt::is_truthy(interp, &__t935) { + if match rt::is_truthy(interp, &__t937) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2793 = { - let v_W2794 = { - let __t936 = v_V2789.clone(); - rt::apply_direct(interp, "shen.", &[__t936])? + let v_W2449 = { + let v_W2450 = { + let __t938 = v_V2445.clone(); + rt::apply_direct(interp, "shen.", &[__t938])? }; { - let __t941 = { - let __t937 = v_W2794.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t937])? + let __t943 = { + let __t939 = v_W2450.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t939])? }; - if rt::is_truthy(interp, &__t941)? { + if rt::is_truthy(interp, &__t943)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2795 = { - let __t938 = v_W2794.clone(); - rt::apply_direct(interp, "shen.in->", &[__t938])? + let v_W2451 = { + let __t940 = v_W2450.clone(); + rt::apply_direct(interp, "shen.in->", &[__t940])? }; { - let __t939 = v_W2795.clone(); - let __t940 = Value::sym(interp.intern("shen.skip")); + let __t941 = v_W2451.clone(); + let __t942 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t939, __t940], + &[__t941, __t942], )? } } @@ -4885,22 +4894,22 @@ pub fn aot_shen_x2e__x3c_comment_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t943 = { - let __t942 = v_W2793.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t942])? + let __t945 = { + let __t944 = v_W2449.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t944])? }; - if match rt::is_truthy(interp, &__t943) { + if match rt::is_truthy(interp, &__t945) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2793.clone()); + break Ok(v_W2449.clone()); } } } } else { - break Ok(v_W2790.clone()); + break Ok(v_W2446.clone()); } } } @@ -4921,69 +4930,69 @@ pub fn aot_shen_x2e__x3c_singleline_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2796 = args[0].clone(); + let mut v_V2452 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2797 = { - let v_W2798 = { - let __t944 = v_V2796.clone(); - rt::apply_direct(interp, "shen.", &[__t944])? + let v_W2453 = { + let v_W2454 = { + let __t946 = v_V2452.clone(); + rt::apply_direct(interp, "shen.", &[__t946])? }; { - let __t961 = { - let __t945 = v_W2798.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t945])? + let __t963 = { + let __t947 = v_W2454.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t947])? }; - if rt::is_truthy(interp, &__t961)? { + if rt::is_truthy(interp, &__t963)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2799 = { - let __t946 = v_W2798.clone(); - rt::apply_direct(interp, "shen.in->", &[__t946])? + let v_W2455 = { + let __t948 = v_W2454.clone(); + rt::apply_direct(interp, "shen.in->", &[__t948])? }; { - let v_W2800 = { - let __t947 = v_W2799.clone(); - rt::apply_direct(interp, "shen.", &[__t947])? + let v_W2456 = { + let __t949 = v_W2455.clone(); + rt::apply_direct(interp, "shen.", &[__t949])? }; { - let __t960 = { - let __t948 = v_W2800.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t948])? + let __t962 = { + let __t950 = v_W2456.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t950])? }; - if rt::is_truthy(interp, &__t960)? { + if rt::is_truthy(interp, &__t962)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2801 = { - let __t949 = v_W2800.clone(); - rt::apply_direct(interp, "shen.in->", &[__t949])? + let v_W2457 = { + let __t951 = v_W2456.clone(); + rt::apply_direct(interp, "shen.in->", &[__t951])? }; { - let v_W2802 = { - let __t950 = v_W2801.clone(); + let v_W2458 = { + let __t952 = v_W2457.clone(); rt::apply_direct( interp, "shen.", - &[__t950], + &[__t952], )? }; { - let __t959 = { - let __t951 = v_W2802.clone(); + let __t961 = { + let __t953 = v_W2458.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t951], + &[__t953], )? }; - if rt::is_truthy(interp, &__t959)? { + if rt::is_truthy(interp, &__t961)? { { rt::apply_direct( interp, @@ -4993,60 +5002,60 @@ pub fn aot_shen_x2e__x3c_singleline_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W2803 = { - let __t952 = v_W2802.clone(); + let v_W2459 = { + let __t954 = v_W2458.clone(); rt::apply_direct( interp, "shen.in->", - &[__t952], + &[__t954], )? }; { - let v_W2804 = { - let __t953 = v_W2803.clone(); + let v_W2460 = { + let __t955 = v_W2459.clone(); rt::apply_direct( interp, "shen.", - &[__t953], + &[__t955], )? }; { - let __t958 = { - let __t954 = - v_W2804.clone(); + let __t960 = { + let __t956 = + v_W2460.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t954], + &[__t956], )? }; if rt::is_truthy( - interp, &__t958, + interp, &__t960, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2805 = { - let __t955 = - v_W2804.clone(); + let v_W2461 = { + let __t957 = + v_W2460.clone(); rt::apply_direct( interp, "shen.in->", - &[__t955], + &[__t957], )? }; { - let __t956 = - v_W2805.clone(); - let __t957 = Value::sym(interp.intern("shen.skip")); + let __t958 = + v_W2461.clone(); + let __t959 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", &[ - __t956, - __t957, + __t958, + __t959, ], )? } @@ -5067,17 +5076,17 @@ pub fn aot_shen_x2e__x3c_singleline_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t963 = { - let __t962 = v_W2797.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t962])? + let __t965 = { + let __t964 = v_W2453.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t964])? }; - if match rt::is_truthy(interp, &__t963) { + if match rt::is_truthy(interp, &__t965) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2797.clone()); + break Ok(v_W2453.clone()); } } } @@ -5098,26 +5107,26 @@ pub fn aot_shen_x2e__x3c_backslash_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2806 = args[0].clone(); + let mut v_V2462 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2807 = { - let __t969 = { - let __t964 = v_V2806.clone(); - let __t965 = Value::int(92i64); - rt::apply_direct(interp, "shen.hds=?", &[__t964, __t965])? + let v_W2463 = { + let __t971 = { + let __t966 = v_V2462.clone(); + let __t967 = Value::int(92i64); + rt::apply_direct(interp, "shen.hds=?", &[__t966, __t967])? }; - if rt::is_truthy(interp, &__t969)? { + if rt::is_truthy(interp, &__t971)? { { - let v_W2808 = { - let __t966 = v_V2806.clone(); - rt::apply_direct(interp, "tail", &[__t966])? + let v_W2464 = { + let __t968 = v_V2462.clone(); + rt::apply_direct(interp, "tail", &[__t968])? }; { - let __t967 = v_W2808.clone(); - let __t968 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t967, __t968])? + let __t969 = v_W2464.clone(); + let __t970 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t969, __t970])? } } } else { @@ -5127,17 +5136,17 @@ pub fn aot_shen_x2e__x3c_backslash_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t971 = { - let __t970 = v_W2807.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t970])? + let __t973 = { + let __t972 = v_W2463.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t972])? }; - if match rt::is_truthy(interp, &__t971) { + if match rt::is_truthy(interp, &__t973) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2807.clone()); + break Ok(v_W2463.clone()); } } } @@ -5161,57 +5170,57 @@ pub fn aot_shen_x2e__x3c_shortnatters_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2809 = args[0].clone(); + let mut v_V2465 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2810 = { - let v_W2811 = { - let __t972 = v_V2809.clone(); - rt::apply_direct(interp, "shen.", &[__t972])? + let v_W2466 = { + let v_W2467 = { + let __t974 = v_V2465.clone(); + rt::apply_direct(interp, "shen.", &[__t974])? }; { - let __t981 = { - let __t973 = v_W2811.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t973])? + let __t983 = { + let __t975 = v_W2467.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t975])? }; - if rt::is_truthy(interp, &__t981)? { + if rt::is_truthy(interp, &__t983)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2812 = { - let __t974 = v_W2811.clone(); - rt::apply_direct(interp, "shen.in->", &[__t974])? + let v_W2468 = { + let __t976 = v_W2467.clone(); + rt::apply_direct(interp, "shen.in->", &[__t976])? }; { - let v_W2813 = { - let __t975 = v_W2812.clone(); - rt::apply_direct(interp, "shen.", &[__t975])? + let v_W2469 = { + let __t977 = v_W2468.clone(); + rt::apply_direct(interp, "shen.", &[__t977])? }; { - let __t980 = { - let __t976 = v_W2813.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t976])? + let __t982 = { + let __t978 = v_W2469.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t978])? }; - if rt::is_truthy(interp, &__t980)? { + if rt::is_truthy(interp, &__t982)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2814 = { - let __t977 = v_W2813.clone(); - rt::apply_direct(interp, "shen.in->", &[__t977])? + let v_W2470 = { + let __t979 = v_W2469.clone(); + rt::apply_direct(interp, "shen.in->", &[__t979])? }; { - let __t978 = v_W2814.clone(); - let __t979 = Value::sym(interp.intern("shen.skip")); + let __t980 = v_W2470.clone(); + let __t981 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t978, __t979], + &[__t980, __t981], )? } } @@ -5223,42 +5232,42 @@ pub fn aot_shen_x2e__x3c_shortnatters_x3e_( } }; { - let __t983 = { - let __t982 = v_W2810.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t982])? + let __t985 = { + let __t984 = v_W2466.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t984])? }; - if match rt::is_truthy(interp, &__t983) { + if match rt::is_truthy(interp, &__t985) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2815 = { - let v_W2816 = { - let __t984 = v_V2809.clone(); - rt::apply_direct(interp, "", &[__t984])? + let v_W2471 = { + let v_W2472 = { + let __t986 = v_V2465.clone(); + rt::apply_direct(interp, "", &[__t986])? }; { - let __t989 = { - let __t985 = v_W2816.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t985])? + let __t991 = { + let __t987 = v_W2472.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t987])? }; - if rt::is_truthy(interp, &__t989)? { + if rt::is_truthy(interp, &__t991)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2817 = { - let __t986 = v_W2816.clone(); - rt::apply_direct(interp, "shen.in->", &[__t986])? + let v_W2473 = { + let __t988 = v_W2472.clone(); + rt::apply_direct(interp, "shen.in->", &[__t988])? }; { - let __t987 = v_W2817.clone(); - let __t988 = Value::sym(interp.intern("shen.skip")); + let __t989 = v_W2473.clone(); + let __t990 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t987, __t988], + &[__t989, __t990], )? } } @@ -5266,22 +5275,22 @@ pub fn aot_shen_x2e__x3c_shortnatters_x3e_( } }; { - let __t991 = { - let __t990 = v_W2815.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t990])? + let __t993 = { + let __t992 = v_W2471.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t992])? }; - if match rt::is_truthy(interp, &__t991) { + if match rt::is_truthy(interp, &__t993) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2815.clone()); + break Ok(v_W2471.clone()); } } } } else { - break Ok(v_W2810.clone()); + break Ok(v_W2466.clone()); } } } @@ -5309,39 +5318,39 @@ pub fn aot_shen_x2e__x3c_shortnatter_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2818 = args[0].clone(); + let mut v_V2474 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2819 = { - let __t1000 = { - let __t992 = v_V2818.clone(); - rt::is_cons(&__t992) + let v_W2475 = { + let __t1002 = { + let __t994 = v_V2474.clone(); + rt::is_cons(&__t994) }; - if rt::is_truthy(interp, &__t1000)? { + if rt::is_truthy(interp, &__t1002)? { { - let v_W2820 = { - let __t993 = v_V2818.clone(); - rt::apply_direct(interp, "head", &[__t993])? + let v_W2476 = { + let __t995 = v_V2474.clone(); + rt::apply_direct(interp, "head", &[__t995])? }; { - let v_W2821 = { - let __t994 = v_V2818.clone(); - rt::apply_direct(interp, "tail", &[__t994])? + let v_W2477 = { + let __t996 = v_V2474.clone(); + rt::apply_direct(interp, "tail", &[__t996])? }; { - let __t999 = { - let __t996 = { - let __t995 = v_W2820.clone(); - rt::apply_direct(interp, "shen.return?", &[__t995])? + let __t1001 = { + let __t998 = { + let __t997 = v_W2476.clone(); + rt::apply_direct(interp, "shen.return?", &[__t997])? }; - rt::apply_direct(interp, "not", &[__t996])? + rt::apply_direct(interp, "not", &[__t998])? }; - if rt::is_truthy(interp, &__t999)? { + if rt::is_truthy(interp, &__t1001)? { { - let __t997 = v_W2821.clone(); - let __t998 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t997, __t998])? + let __t999 = v_W2477.clone(); + let __t1000 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t999, __t1000])? } } else { { @@ -5358,17 +5367,17 @@ pub fn aot_shen_x2e__x3c_shortnatter_x3e_( } }; { - let __t1002 = { - let __t1001 = v_W2819.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1001])? + let __t1004 = { + let __t1003 = v_W2475.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1003])? }; - if match rt::is_truthy(interp, &__t1002) { + if match rt::is_truthy(interp, &__t1004) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2819.clone()); + break Ok(v_W2475.clone()); } } } @@ -5389,58 +5398,58 @@ pub fn aot_shen_x2e__x3c_returns_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V2822 = args[0].clone(); + let mut v_V2478 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2823 = { - let v_W2824 = { - let __t1003 = v_V2822.clone(); - rt::apply_direct(interp, "shen.", &[__t1003])? + let v_W2479 = { + let v_W2480 = { + let __t1005 = v_V2478.clone(); + rt::apply_direct(interp, "shen.", &[__t1005])? }; { - let __t1012 = { - let __t1004 = v_W2824.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1004])? + let __t1014 = { + let __t1006 = v_W2480.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1006])? }; - if rt::is_truthy(interp, &__t1012)? { + if rt::is_truthy(interp, &__t1014)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2825 = { - let __t1005 = v_W2824.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1005])? + let v_W2481 = { + let __t1007 = v_W2480.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1007])? }; { - let v_W2826 = { - let __t1006 = v_W2825.clone(); - rt::apply_direct(interp, "shen.", &[__t1006])? + let v_W2482 = { + let __t1008 = v_W2481.clone(); + rt::apply_direct(interp, "shen.", &[__t1008])? }; { - let __t1011 = { - let __t1007 = v_W2826.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1007])? + let __t1013 = { + let __t1009 = v_W2482.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1009])? }; - if rt::is_truthy(interp, &__t1011)? { + if rt::is_truthy(interp, &__t1013)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2827 = { - let __t1008 = v_W2826.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1008])? + let v_W2483 = { + let __t1010 = v_W2482.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1010])? }; { - let __t1009 = v_W2827.clone(); - let __t1010 = + let __t1011 = v_W2483.clone(); + let __t1012 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t1009, __t1010], + &[__t1011, __t1012], )? } } @@ -5452,42 +5461,42 @@ pub fn aot_shen_x2e__x3c_returns_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t1014 = { - let __t1013 = v_W2823.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1013])? + let __t1016 = { + let __t1015 = v_W2479.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1015])? }; - if match rt::is_truthy(interp, &__t1014) { + if match rt::is_truthy(interp, &__t1016) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2828 = { - let v_W2829 = { - let __t1015 = v_V2822.clone(); - rt::apply_direct(interp, "shen.", &[__t1015])? + let v_W2484 = { + let v_W2485 = { + let __t1017 = v_V2478.clone(); + rt::apply_direct(interp, "shen.", &[__t1017])? }; { - let __t1020 = { - let __t1016 = v_W2829.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1016])? + let __t1022 = { + let __t1018 = v_W2485.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1018])? }; - if rt::is_truthy(interp, &__t1020)? { + if rt::is_truthy(interp, &__t1022)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2830 = { - let __t1017 = v_W2829.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1017])? + let v_W2486 = { + let __t1019 = v_W2485.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1019])? }; { - let __t1018 = v_W2830.clone(); - let __t1019 = Value::sym(interp.intern("shen.skip")); + let __t1020 = v_W2486.clone(); + let __t1021 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t1018, __t1019], + &[__t1020, __t1021], )? } } @@ -5495,22 +5504,22 @@ pub fn aot_shen_x2e__x3c_returns_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t1022 = { - let __t1021 = v_W2828.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1021])? + let __t1024 = { + let __t1023 = v_W2484.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1023])? }; - if match rt::is_truthy(interp, &__t1022) { + if match rt::is_truthy(interp, &__t1024) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2828.clone()); + break Ok(v_W2484.clone()); } } } } else { - break Ok(v_W2823.clone()); + break Ok(v_W2479.clone()); } } } @@ -5531,36 +5540,36 @@ pub fn aot_shen_x2e__x3c_return_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2831 = args[0].clone(); + let mut v_V2487 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2832 = { - let __t1030 = { - let __t1023 = v_V2831.clone(); - rt::is_cons(&__t1023) + let v_W2488 = { + let __t1032 = { + let __t1025 = v_V2487.clone(); + rt::is_cons(&__t1025) }; - if rt::is_truthy(interp, &__t1030)? { + if rt::is_truthy(interp, &__t1032)? { { - let v_W2833 = { - let __t1024 = v_V2831.clone(); - rt::apply_direct(interp, "head", &[__t1024])? + let v_W2489 = { + let __t1026 = v_V2487.clone(); + rt::apply_direct(interp, "head", &[__t1026])? }; { - let v_W2834 = { - let __t1025 = v_V2831.clone(); - rt::apply_direct(interp, "tail", &[__t1025])? + let v_W2490 = { + let __t1027 = v_V2487.clone(); + rt::apply_direct(interp, "tail", &[__t1027])? }; { - let __t1029 = { - let __t1026 = v_W2833.clone(); - rt::apply_direct(interp, "shen.return?", &[__t1026])? + let __t1031 = { + let __t1028 = v_W2489.clone(); + rt::apply_direct(interp, "shen.return?", &[__t1028])? }; - if rt::is_truthy(interp, &__t1029)? { + if rt::is_truthy(interp, &__t1031)? { { - let __t1027 = v_W2834.clone(); - let __t1028 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1027, __t1028])? + let __t1029 = v_W2490.clone(); + let __t1030 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1029, __t1030])? } } else { { @@ -5577,17 +5586,17 @@ pub fn aot_shen_x2e__x3c_return_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1032 = { - let __t1031 = v_W2832.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1031])? + let __t1034 = { + let __t1033 = v_W2488.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1033])? }; - if match rt::is_truthy(interp, &__t1032) { + if match rt::is_truthy(interp, &__t1034) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2832.clone()); + break Ok(v_W2488.clone()); } } } @@ -5608,25 +5617,25 @@ pub fn aot_shen_x2e_return_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V2835 = args[0].clone(); + let mut v_V2491 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1033 = v_V2835.clone(); - let __t1040 = { - let __t1034 = Value::int(9i64); - let __t1039 = { - let __t1035 = Value::int(10i64); - let __t1038 = { - let __t1036 = Value::int(13i64); - let __t1037 = Value::nil(); - rt::cons(&__t1036, &__t1037) + let __t1035 = v_V2491.clone(); + let __t1042 = { + let __t1036 = Value::int(9i64); + let __t1041 = { + let __t1037 = Value::int(10i64); + let __t1040 = { + let __t1038 = Value::int(13i64); + let __t1039 = Value::nil(); + rt::cons(&__t1038, &__t1039) }; - rt::cons(&__t1035, &__t1038) + rt::cons(&__t1037, &__t1040) }; - rt::cons(&__t1034, &__t1039) + rt::cons(&__t1036, &__t1041) }; - rt::apply_direct(interp, "element?", &[__t1033, __t1040])? + rt::apply_direct(interp, "element?", &[__t1035, __t1042])? }); } } @@ -5645,69 +5654,69 @@ pub fn aot_shen_x2e__x3c_multiline_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2836 = args[0].clone(); + let mut v_V2492 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2837 = { - let v_W2838 = { - let __t1041 = v_V2836.clone(); - rt::apply_direct(interp, "shen.", &[__t1041])? + let v_W2493 = { + let v_W2494 = { + let __t1043 = v_V2492.clone(); + rt::apply_direct(interp, "shen.", &[__t1043])? }; { - let __t1054 = { - let __t1042 = v_W2838.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1042])? + let __t1056 = { + let __t1044 = v_W2494.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1044])? }; - if rt::is_truthy(interp, &__t1054)? { + if rt::is_truthy(interp, &__t1056)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2839 = { - let __t1043 = v_W2838.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1043])? + let v_W2495 = { + let __t1045 = v_W2494.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1045])? }; { - let v_W2840 = { - let __t1044 = v_W2839.clone(); - rt::apply_direct(interp, "shen.", &[__t1044])? + let v_W2496 = { + let __t1046 = v_W2495.clone(); + rt::apply_direct(interp, "shen.", &[__t1046])? }; { - let __t1053 = { - let __t1045 = v_W2840.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1045])? + let __t1055 = { + let __t1047 = v_W2496.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1047])? }; - if rt::is_truthy(interp, &__t1053)? { + if rt::is_truthy(interp, &__t1055)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2841 = { - let __t1046 = v_W2840.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1046])? + let v_W2497 = { + let __t1048 = v_W2496.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1048])? }; { - let v_W2842 = { - let __t1047 = v_W2841.clone(); + let v_W2498 = { + let __t1049 = v_W2497.clone(); rt::apply_direct( interp, "shen.", - &[__t1047], + &[__t1049], )? }; { - let __t1052 = { - let __t1048 = v_W2842.clone(); + let __t1054 = { + let __t1050 = v_W2498.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1048], + &[__t1050], )? }; - if rt::is_truthy(interp, &__t1052)? { + if rt::is_truthy(interp, &__t1054)? { { rt::apply_direct( interp, @@ -5717,23 +5726,23 @@ pub fn aot_shen_x2e__x3c_multiline_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W2843 = { - let __t1049 = v_W2842.clone(); + let v_W2499 = { + let __t1051 = v_W2498.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1049], + &[__t1051], )? }; { - let __t1050 = v_W2843.clone(); - let __t1051 = Value::sym( + let __t1052 = v_W2499.clone(); + let __t1053 = Value::sym( interp.intern("shen.skip"), ); rt::apply_direct( interp, "shen.comb", - &[__t1050, __t1051], + &[__t1052, __t1053], )? } } @@ -5749,17 +5758,17 @@ pub fn aot_shen_x2e__x3c_multiline_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1056 = { - let __t1055 = v_W2837.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1055])? + let __t1058 = { + let __t1057 = v_W2493.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1057])? }; - if match rt::is_truthy(interp, &__t1056) { + if match rt::is_truthy(interp, &__t1058) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2837.clone()); + break Ok(v_W2493.clone()); } } } @@ -5780,26 +5789,26 @@ pub fn aot_shen_x2e__x3c_times_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2844 = args[0].clone(); + let mut v_V2500 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2845 = { - let __t1062 = { - let __t1057 = v_V2844.clone(); - let __t1058 = Value::int(42i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1057, __t1058])? + let v_W2501 = { + let __t1064 = { + let __t1059 = v_V2500.clone(); + let __t1060 = Value::int(42i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1059, __t1060])? }; - if rt::is_truthy(interp, &__t1062)? { + if rt::is_truthy(interp, &__t1064)? { { - let v_W2846 = { - let __t1059 = v_V2844.clone(); - rt::apply_direct(interp, "tail", &[__t1059])? + let v_W2502 = { + let __t1061 = v_V2500.clone(); + rt::apply_direct(interp, "tail", &[__t1061])? }; { - let __t1060 = v_W2846.clone(); - let __t1061 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1060, __t1061])? + let __t1062 = v_W2502.clone(); + let __t1063 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1062, __t1063])? } } } else { @@ -5809,17 +5818,17 @@ pub fn aot_shen_x2e__x3c_times_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1064 = { - let __t1063 = v_W2845.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1063])? + let __t1066 = { + let __t1065 = v_W2501.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1065])? }; - if match rt::is_truthy(interp, &__t1064) { + if match rt::is_truthy(interp, &__t1066) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2845.clone()); + break Ok(v_W2501.clone()); } } } @@ -5840,58 +5849,58 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2847 = args[0].clone(); + let mut v_V2503 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2848 = { - let v_W2849 = { - let __t1065 = v_V2847.clone(); - rt::apply_direct(interp, "shen.", &[__t1065])? + let v_W2504 = { + let v_W2505 = { + let __t1067 = v_V2503.clone(); + rt::apply_direct(interp, "shen.", &[__t1067])? }; { - let __t1074 = { - let __t1066 = v_W2849.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1066])? + let __t1076 = { + let __t1068 = v_W2505.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1068])? }; - if rt::is_truthy(interp, &__t1074)? { + if rt::is_truthy(interp, &__t1076)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2850 = { - let __t1067 = v_W2849.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1067])? + let v_W2506 = { + let __t1069 = v_W2505.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1069])? }; { - let v_W2851 = { - let __t1068 = v_W2850.clone(); - rt::apply_direct(interp, "shen.", &[__t1068])? + let v_W2507 = { + let __t1070 = v_W2506.clone(); + rt::apply_direct(interp, "shen.", &[__t1070])? }; { - let __t1073 = { - let __t1069 = v_W2851.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1069])? + let __t1075 = { + let __t1071 = v_W2507.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1071])? }; - if rt::is_truthy(interp, &__t1073)? { + if rt::is_truthy(interp, &__t1075)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2852 = { - let __t1070 = v_W2851.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1070])? + let v_W2508 = { + let __t1072 = v_W2507.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1072])? }; { - let __t1071 = v_W2852.clone(); - let __t1072 = + let __t1073 = v_W2508.clone(); + let __t1074 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t1071, __t1072], + &[__t1073, __t1074], )? } } @@ -5903,54 +5912,54 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1076 = { - let __t1075 = v_W2848.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1075])? + let __t1078 = { + let __t1077 = v_W2504.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1077])? }; - if match rt::is_truthy(interp, &__t1076) { + if match rt::is_truthy(interp, &__t1078) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2853 = { - let v_W2854 = { - let __t1077 = v_V2847.clone(); - rt::apply_direct(interp, "shen.", &[__t1077])? + let v_W2509 = { + let v_W2510 = { + let __t1079 = v_V2503.clone(); + rt::apply_direct(interp, "shen.", &[__t1079])? }; { - let __t1086 = { - let __t1078 = v_W2854.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1078])? + let __t1088 = { + let __t1080 = v_W2510.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1080])? }; - if rt::is_truthy(interp, &__t1086)? { + if rt::is_truthy(interp, &__t1088)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2855 = { - let __t1079 = v_W2854.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1079])? + let v_W2511 = { + let __t1081 = v_W2510.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1081])? }; { - let v_W2856 = { - let __t1080 = v_W2855.clone(); + let v_W2512 = { + let __t1082 = v_W2511.clone(); rt::apply_direct( interp, "shen.", - &[__t1080], + &[__t1082], )? }; { - let __t1085 = { - let __t1081 = v_W2856.clone(); + let __t1087 = { + let __t1083 = v_W2512.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1081], + &[__t1083], )? }; - if rt::is_truthy(interp, &__t1085)? { + if rt::is_truthy(interp, &__t1087)? { { rt::apply_direct( interp, @@ -5960,23 +5969,23 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W2857 = { - let __t1082 = v_W2856.clone(); + let v_W2513 = { + let __t1084 = v_W2512.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1082], + &[__t1084], )? }; { - let __t1083 = v_W2857.clone(); - let __t1084 = Value::sym( + let __t1085 = v_W2513.clone(); + let __t1086 = Value::sym( interp.intern("shen.skip"), ); rt::apply_direct( interp, "shen.comb", - &[__t1083, __t1084], + &[__t1085, __t1086], )? } } @@ -5988,45 +5997,45 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1088 = { - let __t1087 = v_W2853.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1087])? + let __t1090 = { + let __t1089 = v_W2509.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1089])? }; - if match rt::is_truthy(interp, &__t1088) { + if match rt::is_truthy(interp, &__t1090) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2858 = { - let __t1097 = { - let __t1089 = v_V2847.clone(); - rt::is_cons(&__t1089) + let v_W2514 = { + let __t1099 = { + let __t1091 = v_V2503.clone(); + rt::is_cons(&__t1091) }; - if rt::is_truthy(interp, &__t1097)? { + if rt::is_truthy(interp, &__t1099)? { { - let v_W2859 = { - let __t1090 = v_V2847.clone(); - rt::apply_direct(interp, "tail", &[__t1090])? + let v_W2515 = { + let __t1092 = v_V2503.clone(); + rt::apply_direct(interp, "tail", &[__t1092])? }; { - let v_W2860 = { - let __t1091 = v_W2859.clone(); + let v_W2516 = { + let __t1093 = v_W2515.clone(); rt::apply_direct( interp, "shen.", - &[__t1091], + &[__t1093], )? }; { - let __t1096 = { - let __t1092 = v_W2860.clone(); + let __t1098 = { + let __t1094 = v_W2516.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1092], + &[__t1094], )? }; - if rt::is_truthy(interp, &__t1096)? { + if rt::is_truthy(interp, &__t1098)? { { rt::apply_direct( interp, @@ -6036,23 +6045,23 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W2861 = { - let __t1093 = v_W2860.clone(); + let v_W2517 = { + let __t1095 = v_W2516.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1093], + &[__t1095], )? }; { - let __t1094 = v_W2861.clone(); - let __t1095 = Value::sym( + let __t1096 = v_W2517.clone(); + let __t1097 = Value::sym( interp.intern("shen.skip"), ); rt::apply_direct( interp, "shen.comb", - &[__t1094, __t1095], + &[__t1096, __t1097], )? } } @@ -6067,15 +6076,15 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1099 = { - let __t1098 = v_W2858.clone(); + let __t1101 = { + let __t1100 = v_W2514.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1098], + &[__t1100], )? }; - if match rt::is_truthy(interp, &__t1099) { + if match rt::is_truthy(interp, &__t1101) { Ok(b) => b, Err(e) => break Err(e), } { @@ -6083,17 +6092,17 @@ pub fn aot_shen_x2e__x3c_longnatter_x3e_(interp: &mut Interp, args: &[Value]) -> rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2858.clone()); + break Ok(v_W2514.clone()); } } } } else { - break Ok(v_W2853.clone()); + break Ok(v_W2509.clone()); } } } } else { - break Ok(v_W2848.clone()); + break Ok(v_W2504.clone()); } } } @@ -6114,39 +6123,39 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2862 = args[0].clone(); + let mut v_V2518 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2863 = { - let v_W2864 = { - let __t1100 = v_V2862.clone(); - rt::apply_direct(interp, "shen.", &[__t1100])? + let v_W2519 = { + let v_W2520 = { + let __t1102 = v_V2518.clone(); + rt::apply_direct(interp, "shen.", &[__t1102])? }; { - let __t1106 = { - let __t1101 = v_W2864.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1101])? + let __t1108 = { + let __t1103 = v_W2520.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1103])? }; - if rt::is_truthy(interp, &__t1106)? { + if rt::is_truthy(interp, &__t1108)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2865 = { - let __t1102 = v_W2864.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1102])? + let v_W2521 = { + let __t1104 = v_W2520.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1104])? }; { - let v_W2866 = { - let __t1103 = v_W2864.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1103])? + let v_W2522 = { + let __t1105 = v_W2520.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1105])? }; { - let __t1104 = v_W2866.clone(); - let __t1105 = v_W2865.clone(); - rt::apply_direct(interp, "shen.comb", &[__t1104, __t1105])? + let __t1106 = v_W2522.clone(); + let __t1107 = v_W2521.clone(); + rt::apply_direct(interp, "shen.comb", &[__t1106, __t1107])? } } } @@ -6154,47 +6163,47 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1108 = { - let __t1107 = v_W2863.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1107])? + let __t1110 = { + let __t1109 = v_W2519.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1109])? }; - if match rt::is_truthy(interp, &__t1108) { + if match rt::is_truthy(interp, &__t1110) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2867 = { - let v_W2868 = { - let __t1109 = v_V2862.clone(); - rt::apply_direct(interp, "shen.", &[__t1109])? + let v_W2523 = { + let v_W2524 = { + let __t1111 = v_V2518.clone(); + rt::apply_direct(interp, "shen.", &[__t1111])? }; { - let __t1115 = { - let __t1110 = v_W2868.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1110])? + let __t1117 = { + let __t1112 = v_W2524.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1112])? }; - if rt::is_truthy(interp, &__t1115)? { + if rt::is_truthy(interp, &__t1117)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2869 = { - let __t1111 = v_W2868.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1111])? + let v_W2525 = { + let __t1113 = v_W2524.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1113])? }; { - let v_W2870 = { - let __t1112 = v_W2868.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1112])? + let v_W2526 = { + let __t1114 = v_W2524.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1114])? }; { - let __t1113 = v_W2870.clone(); - let __t1114 = v_W2869.clone(); + let __t1115 = v_W2526.clone(); + let __t1116 = v_W2525.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1113, __t1114], + &[__t1115, __t1116], )? } } @@ -6203,30 +6212,30 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1117 = { - let __t1116 = v_W2867.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1116])? + let __t1119 = { + let __t1118 = v_W2523.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1118])? }; - if match rt::is_truthy(interp, &__t1117) { + if match rt::is_truthy(interp, &__t1119) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2871 = { - let v_W2872 = { - let __t1118 = v_V2862.clone(); - rt::apply_direct(interp, "shen.", &[__t1118])? + let v_W2527 = { + let v_W2528 = { + let __t1120 = v_V2518.clone(); + rt::apply_direct(interp, "shen.", &[__t1120])? }; { - let __t1132 = { - let __t1119 = v_W2872.clone(); + let __t1134 = { + let __t1121 = v_W2528.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1119], + &[__t1121], )? }; - if rt::is_truthy(interp, &__t1132)? { + if rt::is_truthy(interp, &__t1134)? { { rt::apply_direct( interp, @@ -6236,56 +6245,56 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W2873 = { - let __t1120 = v_W2872.clone(); + let v_W2529 = { + let __t1122 = v_W2528.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1120], + &[__t1122], )? }; { - let v_W2874 = { - let __t1121 = v_W2872.clone(); + let v_W2530 = { + let __t1123 = v_W2528.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1121], + &[__t1123], )? }; { - let __t1122 = v_W2874.clone(); - let __t1131 = { - let __t1130 = { - let __t1123 = v_W2873.clone(); - let __t1124 = Value::str("<>"); - rt::eq(&__t1123, &__t1124) + let __t1124 = v_W2530.clone(); + let __t1133 = { + let __t1132 = { + let __t1125 = v_W2529.clone(); + let __t1126 = Value::str("<>"); + rt::eq(&__t1125, &__t1126) }; - if rt::is_truthy(interp, &__t1130)? + if rt::is_truthy(interp, &__t1132)? { { - let __t1125 = Value::sym( + let __t1127 = Value::sym( interp.intern("vector"), ); - let __t1128 = { - let __t1126 = + let __t1130 = { + let __t1128 = Value::int(0i64); - let __t1127 = + let __t1129 = Value::nil(); rt::cons( - &__t1126, &__t1127, + &__t1128, &__t1129, ) }; - rt::cons(&__t1125, &__t1128) + rt::cons(&__t1127, &__t1130) } } else { { - let __t1129 = - v_W2873.clone(); + let __t1131 = + v_W2529.clone(); rt::apply_direct( interp, "intern", - &[__t1129], + &[__t1131], )? } } @@ -6293,7 +6302,7 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR rt::apply_direct( interp, "shen.comb", - &[__t1122, __t1131], + &[__t1124, __t1133], )? } } @@ -6302,15 +6311,15 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1134 = { - let __t1133 = v_W2871.clone(); + let __t1136 = { + let __t1135 = v_W2527.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1133], + &[__t1135], )? }; - if match rt::is_truthy(interp, &__t1134) { + if match rt::is_truthy(interp, &__t1136) { Ok(b) => b, Err(e) => break Err(e), } { @@ -6318,17 +6327,17 @@ pub fn aot_shen_x2e__x3c_atom_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2871.clone()); + break Ok(v_W2527.clone()); } } } } else { - break Ok(v_W2867.clone()); + break Ok(v_W2523.clone()); } } } } else { - break Ok(v_W2863.clone()); + break Ok(v_W2519.clone()); } } } @@ -6349,87 +6358,87 @@ pub fn aot_shen_x2e__x3c_sym_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2875 = args[0].clone(); + let mut v_V2531 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2876 = { - let v_W2877 = { - let __t1135 = v_V2875.clone(); - rt::apply_direct(interp, "shen.", &[__t1135])? + let v_W2532 = { + let v_W2533 = { + let __t1137 = v_V2531.clone(); + rt::apply_direct(interp, "shen.", &[__t1137])? }; { - let __t1148 = { - let __t1136 = v_W2877.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1136])? + let __t1150 = { + let __t1138 = v_W2533.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1138])? }; - if rt::is_truthy(interp, &__t1148)? { + if rt::is_truthy(interp, &__t1150)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2878 = { - let __t1137 = v_W2877.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1137])? + let v_W2534 = { + let __t1139 = v_W2533.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1139])? }; { - let v_W2879 = { - let __t1138 = v_W2877.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1138])? + let v_W2535 = { + let __t1140 = v_W2533.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1140])? }; { - let v_W2880 = { - let __t1139 = v_W2879.clone(); - rt::apply_direct(interp, "shen.", &[__t1139])? + let v_W2536 = { + let __t1141 = v_W2535.clone(); + rt::apply_direct(interp, "shen.", &[__t1141])? }; { - let __t1147 = { - let __t1140 = v_W2880.clone(); + let __t1149 = { + let __t1142 = v_W2536.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1140], + &[__t1142], )? }; - if rt::is_truthy(interp, &__t1147)? { + if rt::is_truthy(interp, &__t1149)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2881 = { - let __t1141 = v_W2880.clone(); + let v_W2537 = { + let __t1143 = v_W2536.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1141], + &[__t1143], )? }; { - let v_W2882 = { - let __t1142 = v_W2880.clone(); + let v_W2538 = { + let __t1144 = v_W2536.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1142], + &[__t1144], )? }; { - let __t1143 = v_W2882.clone(); - let __t1146 = { - let __t1144 = v_W2878.clone(); - let __t1145 = v_W2881.clone(); + let __t1145 = v_W2538.clone(); + let __t1148 = { + let __t1146 = v_W2534.clone(); + let __t1147 = v_W2537.clone(); rt::apply_direct( interp, "cn", - &[__t1144, __t1145], + &[__t1146, __t1147], )? }; rt::apply_direct( interp, "shen.comb", - &[__t1143, __t1146], + &[__t1145, __t1148], )? } } @@ -6443,17 +6452,17 @@ pub fn aot_shen_x2e__x3c_sym_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t1150 = { - let __t1149 = v_W2876.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1149])? + let __t1152 = { + let __t1151 = v_W2532.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1151])? }; - if match rt::is_truthy(interp, &__t1150) { + if match rt::is_truthy(interp, &__t1152) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2876.clone()); + break Ok(v_W2532.clone()); } } } @@ -6474,39 +6483,39 @@ pub fn aot_shen_x2e__x3c_alpha_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2883 = args[0].clone(); + let mut v_V2539 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2884 = { - let __t1159 = { - let __t1151 = v_V2883.clone(); - rt::is_cons(&__t1151) + let v_W2540 = { + let __t1161 = { + let __t1153 = v_V2539.clone(); + rt::is_cons(&__t1153) }; - if rt::is_truthy(interp, &__t1159)? { + if rt::is_truthy(interp, &__t1161)? { { - let v_W2885 = { - let __t1152 = v_V2883.clone(); - rt::apply_direct(interp, "head", &[__t1152])? + let v_W2541 = { + let __t1154 = v_V2539.clone(); + rt::apply_direct(interp, "head", &[__t1154])? }; { - let v_W2886 = { - let __t1153 = v_V2883.clone(); - rt::apply_direct(interp, "tail", &[__t1153])? + let v_W2542 = { + let __t1155 = v_V2539.clone(); + rt::apply_direct(interp, "tail", &[__t1155])? }; { - let __t1158 = { - let __t1154 = v_W2885.clone(); - rt::apply_direct(interp, "shen.alpha?", &[__t1154])? + let __t1160 = { + let __t1156 = v_W2541.clone(); + rt::apply_direct(interp, "shen.alpha?", &[__t1156])? }; - if rt::is_truthy(interp, &__t1158)? { + if rt::is_truthy(interp, &__t1160)? { { - let __t1155 = v_W2886.clone(); - let __t1157 = { - let __t1156 = v_W2885.clone(); - rt::apply_direct(interp, "n->string", &[__t1156])? + let __t1157 = v_W2542.clone(); + let __t1159 = { + let __t1158 = v_W2541.clone(); + rt::apply_direct(interp, "n->string", &[__t1158])? }; - rt::apply_direct(interp, "shen.comb", &[__t1155, __t1157])? + rt::apply_direct(interp, "shen.comb", &[__t1157, __t1159])? } } else { { @@ -6523,17 +6532,17 @@ pub fn aot_shen_x2e__x3c_alpha_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1161 = { - let __t1160 = v_W2884.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1160])? + let __t1163 = { + let __t1162 = v_W2540.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1162])? }; - if match rt::is_truthy(interp, &__t1161) { + if match rt::is_truthy(interp, &__t1163) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2884.clone()); + break Ok(v_W2540.clone()); } } } @@ -6554,34 +6563,34 @@ pub fn aot_shen_x2e_alpha_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V2887 = args[0].clone(); + let mut v_V2543 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1163 = { - let __t1162 = v_V2887.clone(); - rt::apply_direct(interp, "shen.lowercase?", &[__t1162])? + let __t1165 = { + let __t1164 = v_V2543.clone(); + rt::apply_direct(interp, "shen.lowercase?", &[__t1164])? }; - if match rt::is_truthy(interp, &__t1163) { + if match rt::is_truthy(interp, &__t1165) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1165 = { - let __t1164 = v_V2887.clone(); - rt::apply_direct(interp, "shen.uppercase?", &[__t1164])? + let __t1167 = { + let __t1166 = v_V2543.clone(); + rt::apply_direct(interp, "shen.uppercase?", &[__t1166])? }; - if match rt::is_truthy(interp, &__t1165) { + if match rt::is_truthy(interp, &__t1167) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { break Ok({ - let __t1166 = v_V2887.clone(); - rt::apply_direct(interp, "shen.misc?", &[__t1166])? + let __t1168 = v_V2543.clone(); + rt::apply_direct(interp, "shen.misc?", &[__t1168])? }); } } @@ -6604,25 +6613,25 @@ pub fn aot_shen_x2e_lowercase_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2888 = args[0].clone(); + let mut v_V2544 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1169 = { - let __t1167 = v_V2888.clone(); - let __t1168 = Value::int(97i64); - rt::gte(&__t1167, &__t1168)? + let __t1171 = { + let __t1169 = v_V2544.clone(); + let __t1170 = Value::int(97i64); + rt::gte(&__t1169, &__t1170)? }; - if !match rt::is_truthy(interp, &__t1169) { + if !match rt::is_truthy(interp, &__t1171) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t1170 = v_V2888.clone(); - let __t1171 = Value::int(122i64); - rt::lte(&__t1170, &__t1171)? + let __t1172 = v_V2544.clone(); + let __t1173 = Value::int(122i64); + rt::lte(&__t1172, &__t1173)? }); } } @@ -6643,25 +6652,25 @@ pub fn aot_shen_x2e_uppercase_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2889 = args[0].clone(); + let mut v_V2545 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1174 = { - let __t1172 = v_V2889.clone(); - let __t1173 = Value::int(65i64); - rt::gte(&__t1172, &__t1173)? + let __t1176 = { + let __t1174 = v_V2545.clone(); + let __t1175 = Value::int(65i64); + rt::gte(&__t1174, &__t1175)? }; - if !match rt::is_truthy(interp, &__t1174) { + if !match rt::is_truthy(interp, &__t1176) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t1175 = v_V2889.clone(); - let __t1176 = Value::int(90i64); - rt::lte(&__t1175, &__t1176)? + let __t1177 = v_V2545.clone(); + let __t1178 = Value::int(90i64); + rt::lte(&__t1177, &__t1178)? }); } } @@ -6682,105 +6691,105 @@ pub fn aot_shen_x2e_misc_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V2890 = args[0].clone(); + let mut v_V2546 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1177 = v_V2890.clone(); - let __t1216 = { - let __t1178 = Value::int(61i64); - let __t1215 = { - let __t1179 = Value::int(45i64); - let __t1214 = { - let __t1180 = Value::int(42i64); - let __t1213 = { - let __t1181 = Value::int(47i64); - let __t1212 = { - let __t1182 = Value::int(43i64); - let __t1211 = { - let __t1183 = Value::int(95i64); - let __t1210 = { - let __t1184 = Value::int(63i64); - let __t1209 = { - let __t1185 = Value::int(36i64); - let __t1208 = { - let __t1186 = Value::int(33i64); - let __t1207 = { - let __t1187 = Value::int(64i64); - let __t1206 = { - let __t1188 = Value::int(126i64); - let __t1205 = { - let __t1189 = Value::int(46i64); - let __t1204 = { - let __t1190 = Value::int(62i64); - let __t1203 = { - let __t1191 = Value::int(60i64); - let __t1202 = { - let __t1192 = + let __t1179 = v_V2546.clone(); + let __t1218 = { + let __t1180 = Value::int(61i64); + let __t1217 = { + let __t1181 = Value::int(45i64); + let __t1216 = { + let __t1182 = Value::int(42i64); + let __t1215 = { + let __t1183 = Value::int(47i64); + let __t1214 = { + let __t1184 = Value::int(43i64); + let __t1213 = { + let __t1185 = Value::int(95i64); + let __t1212 = { + let __t1186 = Value::int(63i64); + let __t1211 = { + let __t1187 = Value::int(36i64); + let __t1210 = { + let __t1188 = Value::int(33i64); + let __t1209 = { + let __t1189 = Value::int(64i64); + let __t1208 = { + let __t1190 = Value::int(126i64); + let __t1207 = { + let __t1191 = Value::int(46i64); + let __t1206 = { + let __t1192 = Value::int(62i64); + let __t1205 = { + let __t1193 = Value::int(60i64); + let __t1204 = { + let __t1194 = Value::int(38i64); - let __t1201 = { - let __t1193 = + let __t1203 = { + let __t1195 = Value::int(37i64); - let __t1200 = { - let __t1194 = + let __t1202 = { + let __t1196 = Value::int( 39i64, ); - let __t1199 = { - let __t1195 = + let __t1201 = { + let __t1197 = Value::int( 35i64, ); - let __t1198 = { - let __t1196 = Value::int(96i64); - let __t1197 = Value::nil(); - rt::cons(&__t1196, &__t1197) + let __t1200 = { + let __t1198 = Value::int(96i64); + let __t1199 = Value::nil(); + rt::cons(&__t1198, &__t1199) }; rt::cons( - &__t1195, - &__t1198, + &__t1197, + &__t1200, ) }; rt::cons( - &__t1194, - &__t1199, + &__t1196, + &__t1201, ) }; rt::cons( - &__t1193, &__t1200, + &__t1195, &__t1202, ) }; - rt::cons(&__t1192, &__t1201) + rt::cons(&__t1194, &__t1203) }; - rt::cons(&__t1191, &__t1202) + rt::cons(&__t1193, &__t1204) }; - rt::cons(&__t1190, &__t1203) + rt::cons(&__t1192, &__t1205) }; - rt::cons(&__t1189, &__t1204) + rt::cons(&__t1191, &__t1206) }; - rt::cons(&__t1188, &__t1205) + rt::cons(&__t1190, &__t1207) }; - rt::cons(&__t1187, &__t1206) + rt::cons(&__t1189, &__t1208) }; - rt::cons(&__t1186, &__t1207) + rt::cons(&__t1188, &__t1209) }; - rt::cons(&__t1185, &__t1208) + rt::cons(&__t1187, &__t1210) }; - rt::cons(&__t1184, &__t1209) + rt::cons(&__t1186, &__t1211) }; - rt::cons(&__t1183, &__t1210) + rt::cons(&__t1185, &__t1212) }; - rt::cons(&__t1182, &__t1211) + rt::cons(&__t1184, &__t1213) }; - rt::cons(&__t1181, &__t1212) + rt::cons(&__t1183, &__t1214) }; - rt::cons(&__t1180, &__t1213) + rt::cons(&__t1182, &__t1215) }; - rt::cons(&__t1179, &__t1214) + rt::cons(&__t1181, &__t1216) }; - rt::cons(&__t1178, &__t1215) + rt::cons(&__t1180, &__t1217) }; - rt::apply_direct(interp, "element?", &[__t1177, __t1216])? + rt::apply_direct(interp, "element?", &[__t1179, __t1218])? }); } } @@ -6799,87 +6808,87 @@ pub fn aot_shen_x2e__x3c_alphanums_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V2891 = args[0].clone(); + let mut v_V2547 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2892 = { - let v_W2893 = { - let __t1217 = v_V2891.clone(); - rt::apply_direct(interp, "shen.", &[__t1217])? + let v_W2548 = { + let v_W2549 = { + let __t1219 = v_V2547.clone(); + rt::apply_direct(interp, "shen.", &[__t1219])? }; { - let __t1230 = { - let __t1218 = v_W2893.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1218])? + let __t1232 = { + let __t1220 = v_W2549.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1220])? }; - if rt::is_truthy(interp, &__t1230)? { + if rt::is_truthy(interp, &__t1232)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2894 = { - let __t1219 = v_W2893.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1219])? + let v_W2550 = { + let __t1221 = v_W2549.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1221])? }; { - let v_W2895 = { - let __t1220 = v_W2893.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1220])? + let v_W2551 = { + let __t1222 = v_W2549.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1222])? }; { - let v_W2896 = { - let __t1221 = v_W2895.clone(); - rt::apply_direct(interp, "shen.", &[__t1221])? + let v_W2552 = { + let __t1223 = v_W2551.clone(); + rt::apply_direct(interp, "shen.", &[__t1223])? }; { - let __t1229 = { - let __t1222 = v_W2896.clone(); + let __t1231 = { + let __t1224 = v_W2552.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1222], + &[__t1224], )? }; - if rt::is_truthy(interp, &__t1229)? { + if rt::is_truthy(interp, &__t1231)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2897 = { - let __t1223 = v_W2896.clone(); + let v_W2553 = { + let __t1225 = v_W2552.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1223], + &[__t1225], )? }; { - let v_W2898 = { - let __t1224 = v_W2896.clone(); + let v_W2554 = { + let __t1226 = v_W2552.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1224], + &[__t1226], )? }; { - let __t1225 = v_W2898.clone(); - let __t1228 = { - let __t1226 = v_W2894.clone(); - let __t1227 = v_W2897.clone(); + let __t1227 = v_W2554.clone(); + let __t1230 = { + let __t1228 = v_W2550.clone(); + let __t1229 = v_W2553.clone(); rt::apply_direct( interp, "cn", - &[__t1226, __t1227], + &[__t1228, __t1229], )? }; rt::apply_direct( interp, "shen.comb", - &[__t1225, __t1228], + &[__t1227, __t1230], )? } } @@ -6893,42 +6902,42 @@ pub fn aot_shen_x2e__x3c_alphanums_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1232 = { - let __t1231 = v_W2892.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1231])? + let __t1234 = { + let __t1233 = v_W2548.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1233])? }; - if match rt::is_truthy(interp, &__t1232) { + if match rt::is_truthy(interp, &__t1234) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2899 = { - let v_W2900 = { - let __t1233 = v_V2891.clone(); - rt::apply_direct(interp, "", &[__t1233])? + let v_W2555 = { + let v_W2556 = { + let __t1235 = v_V2547.clone(); + rt::apply_direct(interp, "", &[__t1235])? }; { - let __t1238 = { - let __t1234 = v_W2900.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1234])? + let __t1240 = { + let __t1236 = v_W2556.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1236])? }; - if rt::is_truthy(interp, &__t1238)? { + if rt::is_truthy(interp, &__t1240)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2901 = { - let __t1235 = v_W2900.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1235])? + let v_W2557 = { + let __t1237 = v_W2556.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1237])? }; { - let __t1236 = v_W2901.clone(); - let __t1237 = Value::str(""); + let __t1238 = v_W2557.clone(); + let __t1239 = Value::str(""); rt::apply_direct( interp, "shen.comb", - &[__t1236, __t1237], + &[__t1238, __t1239], )? } } @@ -6936,22 +6945,22 @@ pub fn aot_shen_x2e__x3c_alphanums_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1240 = { - let __t1239 = v_W2899.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1239])? + let __t1242 = { + let __t1241 = v_W2555.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1241])? }; - if match rt::is_truthy(interp, &__t1240) { + if match rt::is_truthy(interp, &__t1242) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2899.clone()); + break Ok(v_W2555.clone()); } } } } else { - break Ok(v_W2892.clone()); + break Ok(v_W2548.clone()); } } } @@ -6972,39 +6981,39 @@ pub fn aot_shen_x2e__x3c_alphanum_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V2902 = args[0].clone(); + let mut v_V2558 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2903 = { - let v_W2904 = { - let __t1241 = v_V2902.clone(); - rt::apply_direct(interp, "shen.", &[__t1241])? + let v_W2559 = { + let v_W2560 = { + let __t1243 = v_V2558.clone(); + rt::apply_direct(interp, "shen.", &[__t1243])? }; { - let __t1247 = { - let __t1242 = v_W2904.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1242])? + let __t1249 = { + let __t1244 = v_W2560.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1244])? }; - if rt::is_truthy(interp, &__t1247)? { + if rt::is_truthy(interp, &__t1249)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2905 = { - let __t1243 = v_W2904.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1243])? + let v_W2561 = { + let __t1245 = v_W2560.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1245])? }; { - let v_W2906 = { - let __t1244 = v_W2904.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1244])? + let v_W2562 = { + let __t1246 = v_W2560.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1246])? }; { - let __t1245 = v_W2906.clone(); - let __t1246 = v_W2905.clone(); - rt::apply_direct(interp, "shen.comb", &[__t1245, __t1246])? + let __t1247 = v_W2562.clone(); + let __t1248 = v_W2561.clone(); + rt::apply_direct(interp, "shen.comb", &[__t1247, __t1248])? } } } @@ -7012,47 +7021,47 @@ pub fn aot_shen_x2e__x3c_alphanum_x3e_(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t1249 = { - let __t1248 = v_W2903.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1248])? + let __t1251 = { + let __t1250 = v_W2559.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1250])? }; - if match rt::is_truthy(interp, &__t1249) { + if match rt::is_truthy(interp, &__t1251) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2907 = { - let v_W2908 = { - let __t1250 = v_V2902.clone(); - rt::apply_direct(interp, "shen.", &[__t1250])? + let v_W2563 = { + let v_W2564 = { + let __t1252 = v_V2558.clone(); + rt::apply_direct(interp, "shen.", &[__t1252])? }; { - let __t1256 = { - let __t1251 = v_W2908.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1251])? + let __t1258 = { + let __t1253 = v_W2564.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1253])? }; - if rt::is_truthy(interp, &__t1256)? { + if rt::is_truthy(interp, &__t1258)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2909 = { - let __t1252 = v_W2908.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1252])? + let v_W2565 = { + let __t1254 = v_W2564.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1254])? }; { - let v_W2910 = { - let __t1253 = v_W2908.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1253])? + let v_W2566 = { + let __t1255 = v_W2564.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1255])? }; { - let __t1254 = v_W2910.clone(); - let __t1255 = v_W2909.clone(); + let __t1256 = v_W2566.clone(); + let __t1257 = v_W2565.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1254, __t1255], + &[__t1256, __t1257], )? } } @@ -7061,22 +7070,22 @@ pub fn aot_shen_x2e__x3c_alphanum_x3e_(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t1258 = { - let __t1257 = v_W2907.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1257])? + let __t1260 = { + let __t1259 = v_W2563.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1259])? }; - if match rt::is_truthy(interp, &__t1258) { + if match rt::is_truthy(interp, &__t1260) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2907.clone()); + break Ok(v_W2563.clone()); } } } } else { - break Ok(v_W2903.clone()); + break Ok(v_W2559.clone()); } } } @@ -7097,39 +7106,39 @@ pub fn aot_shen_x2e__x3c_numeral_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V2911 = args[0].clone(); + let mut v_V2567 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2912 = { - let __t1267 = { - let __t1259 = v_V2911.clone(); - rt::is_cons(&__t1259) + let v_W2568 = { + let __t1269 = { + let __t1261 = v_V2567.clone(); + rt::is_cons(&__t1261) }; - if rt::is_truthy(interp, &__t1267)? { + if rt::is_truthy(interp, &__t1269)? { { - let v_W2913 = { - let __t1260 = v_V2911.clone(); - rt::apply_direct(interp, "head", &[__t1260])? + let v_W2569 = { + let __t1262 = v_V2567.clone(); + rt::apply_direct(interp, "head", &[__t1262])? }; { - let v_W2914 = { - let __t1261 = v_V2911.clone(); - rt::apply_direct(interp, "tail", &[__t1261])? + let v_W2570 = { + let __t1263 = v_V2567.clone(); + rt::apply_direct(interp, "tail", &[__t1263])? }; { - let __t1266 = { - let __t1262 = v_W2913.clone(); - rt::apply_direct(interp, "shen.digit?", &[__t1262])? + let __t1268 = { + let __t1264 = v_W2569.clone(); + rt::apply_direct(interp, "shen.digit?", &[__t1264])? }; - if rt::is_truthy(interp, &__t1266)? { + if rt::is_truthy(interp, &__t1268)? { { - let __t1263 = v_W2914.clone(); - let __t1265 = { - let __t1264 = v_W2913.clone(); - rt::apply_direct(interp, "n->string", &[__t1264])? + let __t1265 = v_W2570.clone(); + let __t1267 = { + let __t1266 = v_W2569.clone(); + rt::apply_direct(interp, "n->string", &[__t1266])? }; - rt::apply_direct(interp, "shen.comb", &[__t1263, __t1265])? + rt::apply_direct(interp, "shen.comb", &[__t1265, __t1267])? } } else { { @@ -7146,17 +7155,17 @@ pub fn aot_shen_x2e__x3c_numeral_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t1269 = { - let __t1268 = v_W2912.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1268])? + let __t1271 = { + let __t1270 = v_W2568.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1270])? }; - if match rt::is_truthy(interp, &__t1269) { + if match rt::is_truthy(interp, &__t1271) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2912.clone()); + break Ok(v_W2568.clone()); } } } @@ -7177,25 +7186,25 @@ pub fn aot_shen_x2e_digit_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V2915 = args[0].clone(); + let mut v_V2571 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1272 = { - let __t1270 = v_V2915.clone(); - let __t1271 = Value::int(48i64); - rt::gte(&__t1270, &__t1271)? + let __t1274 = { + let __t1272 = v_V2571.clone(); + let __t1273 = Value::int(48i64); + rt::gte(&__t1272, &__t1273)? }; - if !match rt::is_truthy(interp, &__t1272) { + if !match rt::is_truthy(interp, &__t1274) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t1273 = v_V2915.clone(); - let __t1274 = Value::int(57i64); - rt::lte(&__t1273, &__t1274)? + let __t1275 = v_V2571.clone(); + let __t1276 = Value::int(57i64); + rt::lte(&__t1275, &__t1276)? }); } } @@ -7216,78 +7225,78 @@ pub fn aot_shen_x2e__x3c_str_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2916 = args[0].clone(); + let mut v_V2572 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2917 = { - let v_W2918 = { - let __t1275 = v_V2916.clone(); - rt::apply_direct(interp, "shen.", &[__t1275])? + let v_W2573 = { + let v_W2574 = { + let __t1277 = v_V2572.clone(); + rt::apply_direct(interp, "shen.", &[__t1277])? }; { - let __t1289 = { - let __t1276 = v_W2918.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1276])? + let __t1291 = { + let __t1278 = v_W2574.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1278])? }; - if rt::is_truthy(interp, &__t1289)? { + if rt::is_truthy(interp, &__t1291)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2919 = { - let __t1277 = v_W2918.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1277])? + let v_W2575 = { + let __t1279 = v_W2574.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1279])? }; { - let v_W2920 = { - let __t1278 = v_W2919.clone(); - rt::apply_direct(interp, "shen.", &[__t1278])? + let v_W2576 = { + let __t1280 = v_W2575.clone(); + rt::apply_direct(interp, "shen.", &[__t1280])? }; { - let __t1288 = { - let __t1279 = v_W2920.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1279])? + let __t1290 = { + let __t1281 = v_W2576.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1281])? }; - if rt::is_truthy(interp, &__t1288)? { + if rt::is_truthy(interp, &__t1290)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2921 = { - let __t1280 = v_W2920.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1280])? + let v_W2577 = { + let __t1282 = v_W2576.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1282])? }; { - let v_W2922 = { - let __t1281 = v_W2920.clone(); + let v_W2578 = { + let __t1283 = v_W2576.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1281], + &[__t1283], )? }; { - let v_W2923 = { - let __t1282 = v_W2922.clone(); + let v_W2579 = { + let __t1284 = v_W2578.clone(); rt::apply_direct( interp, "shen.", - &[__t1282], + &[__t1284], )? }; { - let __t1287 = { - let __t1283 = v_W2923.clone(); + let __t1289 = { + let __t1285 = v_W2579.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1283], + &[__t1285], )? }; - if rt::is_truthy(interp, &__t1287)? { + if rt::is_truthy(interp, &__t1289)? { { rt::apply_direct( interp, @@ -7297,21 +7306,21 @@ pub fn aot_shen_x2e__x3c_str_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W2924 = { - let __t1284 = v_W2923.clone(); + let v_W2580 = { + let __t1286 = v_W2579.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1284], + &[__t1286], )? }; { - let __t1285 = v_W2924.clone(); - let __t1286 = v_W2921.clone(); + let __t1287 = v_W2580.clone(); + let __t1288 = v_W2577.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1285, __t1286], + &[__t1287, __t1288], )? } } @@ -7328,17 +7337,17 @@ pub fn aot_shen_x2e__x3c_str_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t1291 = { - let __t1290 = v_W2917.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1290])? + let __t1293 = { + let __t1292 = v_W2573.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1292])? }; - if match rt::is_truthy(interp, &__t1291) { + if match rt::is_truthy(interp, &__t1293) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2917.clone()); + break Ok(v_W2573.clone()); } } } @@ -7359,26 +7368,26 @@ pub fn aot_shen_x2e__x3c_dbq_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V2925 = args[0].clone(); + let mut v_V2581 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2926 = { - let __t1297 = { - let __t1292 = v_V2925.clone(); - let __t1293 = Value::int(34i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1292, __t1293])? + let v_W2582 = { + let __t1299 = { + let __t1294 = v_V2581.clone(); + let __t1295 = Value::int(34i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1294, __t1295])? }; - if rt::is_truthy(interp, &__t1297)? { + if rt::is_truthy(interp, &__t1299)? { { - let v_W2927 = { - let __t1294 = v_V2925.clone(); - rt::apply_direct(interp, "tail", &[__t1294])? + let v_W2583 = { + let __t1296 = v_V2581.clone(); + rt::apply_direct(interp, "tail", &[__t1296])? }; { - let __t1295 = v_W2927.clone(); - let __t1296 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1295, __t1296])? + let __t1297 = v_W2583.clone(); + let __t1298 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1297, __t1298])? } } } else { @@ -7388,17 +7397,17 @@ pub fn aot_shen_x2e__x3c_dbq_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t1299 = { - let __t1298 = v_W2926.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1298])? + let __t1301 = { + let __t1300 = v_W2582.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1300])? }; - if match rt::is_truthy(interp, &__t1299) { + if match rt::is_truthy(interp, &__t1301) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2926.clone()); + break Ok(v_W2582.clone()); } } } @@ -7422,87 +7431,87 @@ pub fn aot_shen_x2e__x3c_strcontents_x3e_( ))); } #[allow(unused_mut)] - let mut v_V2928 = args[0].clone(); + let mut v_V2584 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2929 = { - let v_W2930 = { - let __t1300 = v_V2928.clone(); - rt::apply_direct(interp, "shen.", &[__t1300])? + let v_W2585 = { + let v_W2586 = { + let __t1302 = v_V2584.clone(); + rt::apply_direct(interp, "shen.", &[__t1302])? }; { - let __t1313 = { - let __t1301 = v_W2930.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1301])? + let __t1315 = { + let __t1303 = v_W2586.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1303])? }; - if rt::is_truthy(interp, &__t1313)? { + if rt::is_truthy(interp, &__t1315)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2931 = { - let __t1302 = v_W2930.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1302])? + let v_W2587 = { + let __t1304 = v_W2586.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1304])? }; { - let v_W2932 = { - let __t1303 = v_W2930.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1303])? + let v_W2588 = { + let __t1305 = v_W2586.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1305])? }; { - let v_W2933 = { - let __t1304 = v_W2932.clone(); - rt::apply_direct(interp, "shen.", &[__t1304])? + let v_W2589 = { + let __t1306 = v_W2588.clone(); + rt::apply_direct(interp, "shen.", &[__t1306])? }; { - let __t1312 = { - let __t1305 = v_W2933.clone(); + let __t1314 = { + let __t1307 = v_W2589.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1305], + &[__t1307], )? }; - if rt::is_truthy(interp, &__t1312)? { + if rt::is_truthy(interp, &__t1314)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2934 = { - let __t1306 = v_W2933.clone(); + let v_W2590 = { + let __t1308 = v_W2589.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1306], + &[__t1308], )? }; { - let v_W2935 = { - let __t1307 = v_W2933.clone(); + let v_W2591 = { + let __t1309 = v_W2589.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1307], + &[__t1309], )? }; { - let __t1308 = v_W2935.clone(); - let __t1311 = { - let __t1309 = v_W2931.clone(); - let __t1310 = v_W2934.clone(); + let __t1310 = v_W2591.clone(); + let __t1313 = { + let __t1311 = v_W2587.clone(); + let __t1312 = v_W2590.clone(); rt::apply_direct( interp, "cn", - &[__t1309, __t1310], + &[__t1311, __t1312], )? }; rt::apply_direct( interp, "shen.comb", - &[__t1308, __t1311], + &[__t1310, __t1313], )? } } @@ -7516,42 +7525,42 @@ pub fn aot_shen_x2e__x3c_strcontents_x3e_( } }; { - let __t1315 = { - let __t1314 = v_W2929.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1314])? + let __t1317 = { + let __t1316 = v_W2585.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1316])? }; - if match rt::is_truthy(interp, &__t1315) { + if match rt::is_truthy(interp, &__t1317) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2936 = { - let v_W2937 = { - let __t1316 = v_V2928.clone(); - rt::apply_direct(interp, "", &[__t1316])? + let v_W2592 = { + let v_W2593 = { + let __t1318 = v_V2584.clone(); + rt::apply_direct(interp, "", &[__t1318])? }; { - let __t1321 = { - let __t1317 = v_W2937.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1317])? + let __t1323 = { + let __t1319 = v_W2593.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1319])? }; - if rt::is_truthy(interp, &__t1321)? { + if rt::is_truthy(interp, &__t1323)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2938 = { - let __t1318 = v_W2937.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1318])? + let v_W2594 = { + let __t1320 = v_W2593.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1320])? }; { - let __t1319 = v_W2938.clone(); - let __t1320 = Value::str(""); + let __t1321 = v_W2594.clone(); + let __t1322 = Value::str(""); rt::apply_direct( interp, "shen.comb", - &[__t1319, __t1320], + &[__t1321, __t1322], )? } } @@ -7559,22 +7568,22 @@ pub fn aot_shen_x2e__x3c_strcontents_x3e_( } }; { - let __t1323 = { - let __t1322 = v_W2936.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1322])? + let __t1325 = { + let __t1324 = v_W2592.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1324])? }; - if match rt::is_truthy(interp, &__t1323) { + if match rt::is_truthy(interp, &__t1325) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2936.clone()); + break Ok(v_W2592.clone()); } } } } else { - break Ok(v_W2929.clone()); + break Ok(v_W2585.clone()); } } } @@ -7595,39 +7604,39 @@ pub fn aot_shen_x2e__x3c_strc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2939 = args[0].clone(); + let mut v_V2595 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2940 = { - let v_W2941 = { - let __t1324 = v_V2939.clone(); - rt::apply_direct(interp, "shen.", &[__t1324])? + let v_W2596 = { + let v_W2597 = { + let __t1326 = v_V2595.clone(); + rt::apply_direct(interp, "shen.", &[__t1326])? }; { - let __t1330 = { - let __t1325 = v_W2941.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1325])? + let __t1332 = { + let __t1327 = v_W2597.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1327])? }; - if rt::is_truthy(interp, &__t1330)? { + if rt::is_truthy(interp, &__t1332)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2942 = { - let __t1326 = v_W2941.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1326])? + let v_W2598 = { + let __t1328 = v_W2597.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1328])? }; { - let v_W2943 = { - let __t1327 = v_W2941.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1327])? + let v_W2599 = { + let __t1329 = v_W2597.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1329])? }; { - let __t1328 = v_W2943.clone(); - let __t1329 = v_W2942.clone(); - rt::apply_direct(interp, "shen.comb", &[__t1328, __t1329])? + let __t1330 = v_W2599.clone(); + let __t1331 = v_W2598.clone(); + rt::apply_direct(interp, "shen.comb", &[__t1330, __t1331])? } } } @@ -7635,47 +7644,47 @@ pub fn aot_shen_x2e__x3c_strc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1332 = { - let __t1331 = v_W2940.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1331])? + let __t1334 = { + let __t1333 = v_W2596.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1333])? }; - if match rt::is_truthy(interp, &__t1332) { + if match rt::is_truthy(interp, &__t1334) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2944 = { - let v_W2945 = { - let __t1333 = v_V2939.clone(); - rt::apply_direct(interp, "shen.", &[__t1333])? + let v_W2600 = { + let v_W2601 = { + let __t1335 = v_V2595.clone(); + rt::apply_direct(interp, "shen.", &[__t1335])? }; { - let __t1339 = { - let __t1334 = v_W2945.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1334])? + let __t1341 = { + let __t1336 = v_W2601.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1336])? }; - if rt::is_truthy(interp, &__t1339)? { + if rt::is_truthy(interp, &__t1341)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2946 = { - let __t1335 = v_W2945.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1335])? + let v_W2602 = { + let __t1337 = v_W2601.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1337])? }; { - let v_W2947 = { - let __t1336 = v_W2945.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1336])? + let v_W2603 = { + let __t1338 = v_W2601.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1338])? }; { - let __t1337 = v_W2947.clone(); - let __t1338 = v_W2946.clone(); + let __t1339 = v_W2603.clone(); + let __t1340 = v_W2602.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1337, __t1338], + &[__t1339, __t1340], )? } } @@ -7684,22 +7693,22 @@ pub fn aot_shen_x2e__x3c_strc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1341 = { - let __t1340 = v_W2944.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1340])? + let __t1343 = { + let __t1342 = v_W2600.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1342])? }; - if match rt::is_truthy(interp, &__t1341) { + if match rt::is_truthy(interp, &__t1343) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2944.clone()); + break Ok(v_W2600.clone()); } } } } else { - break Ok(v_W2940.clone()); + break Ok(v_W2596.clone()); } } } @@ -7720,69 +7729,69 @@ pub fn aot_shen_x2e__x3c_control_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V2948 = args[0].clone(); + let mut v_V2604 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2949 = { - let v_W2950 = { - let __t1342 = v_V2948.clone(); - rt::apply_direct(interp, "shen.", &[__t1342])? + let v_W2605 = { + let v_W2606 = { + let __t1344 = v_V2604.clone(); + rt::apply_direct(interp, "shen.", &[__t1344])? }; { - let __t1361 = { - let __t1343 = v_W2950.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1343])? + let __t1363 = { + let __t1345 = v_W2606.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1345])? }; - if rt::is_truthy(interp, &__t1361)? { + if rt::is_truthy(interp, &__t1363)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2951 = { - let __t1344 = v_W2950.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1344])? + let v_W2607 = { + let __t1346 = v_W2606.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1346])? }; { - let v_W2952 = { - let __t1345 = v_W2951.clone(); - rt::apply_direct(interp, "shen.", &[__t1345])? + let v_W2608 = { + let __t1347 = v_W2607.clone(); + rt::apply_direct(interp, "shen.", &[__t1347])? }; { - let __t1360 = { - let __t1346 = v_W2952.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1346])? + let __t1362 = { + let __t1348 = v_W2608.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1348])? }; - if rt::is_truthy(interp, &__t1360)? { + if rt::is_truthy(interp, &__t1362)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2953 = { - let __t1347 = v_W2952.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1347])? + let v_W2609 = { + let __t1349 = v_W2608.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1349])? }; { - let v_W2954 = { - let __t1348 = v_W2953.clone(); + let v_W2610 = { + let __t1350 = v_W2609.clone(); rt::apply_direct( interp, "shen.", - &[__t1348], + &[__t1350], )? }; { - let __t1359 = { - let __t1349 = v_W2954.clone(); + let __t1361 = { + let __t1351 = v_W2610.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1349], + &[__t1351], )? }; - if rt::is_truthy(interp, &__t1359)? { + if rt::is_truthy(interp, &__t1361)? { { rt::apply_direct( interp, @@ -7792,64 +7801,64 @@ pub fn aot_shen_x2e__x3c_control_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W2955 = { - let __t1350 = v_W2954.clone(); + let v_W2611 = { + let __t1352 = v_W2610.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1350], + &[__t1352], )? }; { - let v_W2956 = { - let __t1351 = v_W2954.clone(); + let v_W2612 = { + let __t1353 = v_W2610.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1351], + &[__t1353], )? }; { - let v_W2957 = { - let __t1352 = - v_W2956.clone(); + let v_W2613 = { + let __t1354 = + v_W2612.clone(); rt::apply_direct( interp, "shen.", - &[__t1352], + &[__t1354], )? }; { - let __t1358 = { - let __t1353 = - v_W2957.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1353])? + let __t1360 = { + let __t1355 = + v_W2613.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1355])? }; if rt::is_truthy( - interp, &__t1358, + interp, &__t1360, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2958 = { - let __t1354 = - v_W2957 + let v_W2614 = { + let __t1356 = + v_W2613 .clone( ); - rt::apply_direct(interp, "shen.in->", &[__t1354])? + rt::apply_direct(interp, "shen.in->", &[__t1356])? }; { - let __t1355 = - v_W2958 + let __t1357 = + v_W2614 .clone( ); - let __t1357 = { - let __t1356 = v_W2955.clone(); - rt::apply_direct(interp, "n->string", &[__t1356])? + let __t1359 = { + let __t1358 = v_W2611.clone(); + rt::apply_direct(interp, "n->string", &[__t1358])? }; - rt::apply_direct(interp, "shen.comb", &[__t1355, __t1357])? + rt::apply_direct(interp, "shen.comb", &[__t1357, __t1359])? } } } @@ -7869,17 +7878,17 @@ pub fn aot_shen_x2e__x3c_control_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t1363 = { - let __t1362 = v_W2949.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1362])? + let __t1365 = { + let __t1364 = v_W2605.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1364])? }; - if match rt::is_truthy(interp, &__t1363) { + if match rt::is_truthy(interp, &__t1365) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2949.clone()); + break Ok(v_W2605.clone()); } } } @@ -7900,43 +7909,43 @@ pub fn aot_shen_x2e__x3c_notdbq_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2959 = args[0].clone(); + let mut v_V2615 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2960 = { - let __t1374 = { - let __t1364 = v_V2959.clone(); - rt::is_cons(&__t1364) + let v_W2616 = { + let __t1376 = { + let __t1366 = v_V2615.clone(); + rt::is_cons(&__t1366) }; - if rt::is_truthy(interp, &__t1374)? { + if rt::is_truthy(interp, &__t1376)? { { - let v_W2961 = { - let __t1365 = v_V2959.clone(); - rt::apply_direct(interp, "head", &[__t1365])? + let v_W2617 = { + let __t1367 = v_V2615.clone(); + rt::apply_direct(interp, "head", &[__t1367])? }; { - let v_W2962 = { - let __t1366 = v_V2959.clone(); - rt::apply_direct(interp, "tail", &[__t1366])? + let v_W2618 = { + let __t1368 = v_V2615.clone(); + rt::apply_direct(interp, "tail", &[__t1368])? }; { - let __t1373 = { - let __t1369 = { - let __t1367 = v_W2961.clone(); - let __t1368 = Value::int(34i64); - rt::eq(&__t1367, &__t1368) + let __t1375 = { + let __t1371 = { + let __t1369 = v_W2617.clone(); + let __t1370 = Value::int(34i64); + rt::eq(&__t1369, &__t1370) }; - rt::apply_direct(interp, "not", &[__t1369])? + rt::apply_direct(interp, "not", &[__t1371])? }; - if rt::is_truthy(interp, &__t1373)? { + if rt::is_truthy(interp, &__t1375)? { { - let __t1370 = v_W2962.clone(); - let __t1372 = { - let __t1371 = v_W2961.clone(); - rt::apply_direct(interp, "n->string", &[__t1371])? + let __t1372 = v_W2618.clone(); + let __t1374 = { + let __t1373 = v_W2617.clone(); + rt::apply_direct(interp, "n->string", &[__t1373])? }; - rt::apply_direct(interp, "shen.comb", &[__t1370, __t1372])? + rt::apply_direct(interp, "shen.comb", &[__t1372, __t1374])? } } else { { @@ -7953,17 +7962,17 @@ pub fn aot_shen_x2e__x3c_notdbq_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1376 = { - let __t1375 = v_W2960.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1375])? + let __t1378 = { + let __t1377 = v_W2616.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1377])? }; - if match rt::is_truthy(interp, &__t1376) { + if match rt::is_truthy(interp, &__t1378) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2960.clone()); + break Ok(v_W2616.clone()); } } } @@ -7984,26 +7993,26 @@ pub fn aot_shen_x2e__x3c_lowC_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2963 = args[0].clone(); + let mut v_V2619 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2964 = { - let __t1382 = { - let __t1377 = v_V2963.clone(); - let __t1378 = Value::int(99i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1377, __t1378])? + let v_W2620 = { + let __t1384 = { + let __t1379 = v_V2619.clone(); + let __t1380 = Value::int(99i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1379, __t1380])? }; - if rt::is_truthy(interp, &__t1382)? { + if rt::is_truthy(interp, &__t1384)? { { - let v_W2965 = { - let __t1379 = v_V2963.clone(); - rt::apply_direct(interp, "tail", &[__t1379])? + let v_W2621 = { + let __t1381 = v_V2619.clone(); + rt::apply_direct(interp, "tail", &[__t1381])? }; { - let __t1380 = v_W2965.clone(); - let __t1381 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1380, __t1381])? + let __t1382 = v_W2621.clone(); + let __t1383 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1382, __t1383])? } } } else { @@ -8013,17 +8022,17 @@ pub fn aot_shen_x2e__x3c_lowC_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1384 = { - let __t1383 = v_W2964.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1383])? + let __t1386 = { + let __t1385 = v_W2620.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1385])? }; - if match rt::is_truthy(interp, &__t1384) { + if match rt::is_truthy(interp, &__t1386) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2964.clone()); + break Ok(v_W2620.clone()); } } } @@ -8044,26 +8053,26 @@ pub fn aot_shen_x2e__x3c_hash_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2966 = args[0].clone(); + let mut v_V2622 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2967 = { - let __t1390 = { - let __t1385 = v_V2966.clone(); - let __t1386 = Value::int(35i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1385, __t1386])? + let v_W2623 = { + let __t1392 = { + let __t1387 = v_V2622.clone(); + let __t1388 = Value::int(35i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1387, __t1388])? }; - if rt::is_truthy(interp, &__t1390)? { + if rt::is_truthy(interp, &__t1392)? { { - let v_W2968 = { - let __t1387 = v_V2966.clone(); - rt::apply_direct(interp, "tail", &[__t1387])? + let v_W2624 = { + let __t1389 = v_V2622.clone(); + rt::apply_direct(interp, "tail", &[__t1389])? }; { - let __t1388 = v_W2968.clone(); - let __t1389 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1388, __t1389])? + let __t1390 = v_W2624.clone(); + let __t1391 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1390, __t1391])? } } } else { @@ -8073,17 +8082,17 @@ pub fn aot_shen_x2e__x3c_hash_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1392 = { - let __t1391 = v_W2967.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1391])? + let __t1394 = { + let __t1393 = v_W2623.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1393])? }; - if match rt::is_truthy(interp, &__t1392) { + if match rt::is_truthy(interp, &__t1394) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2967.clone()); + break Ok(v_W2623.clone()); } } } @@ -8104,70 +8113,70 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V2969 = args[0].clone(); + let mut v_V2625 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2970 = { - let v_W2971 = { - let __t1393 = v_V2969.clone(); - rt::apply_direct(interp, "shen.", &[__t1393])? + let v_W2626 = { + let v_W2627 = { + let __t1395 = v_V2625.clone(); + rt::apply_direct(interp, "shen.", &[__t1395])? }; { - let __t1405 = { - let __t1394 = v_W2971.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1394])? + let __t1407 = { + let __t1396 = v_W2627.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1396])? }; - if rt::is_truthy(interp, &__t1405)? { + if rt::is_truthy(interp, &__t1407)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2972 = { - let __t1395 = v_W2971.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1395])? + let v_W2628 = { + let __t1397 = v_W2627.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1397])? }; { - let v_W2973 = { - let __t1396 = v_W2972.clone(); - rt::apply_direct(interp, "shen.", &[__t1396])? + let v_W2629 = { + let __t1398 = v_W2628.clone(); + rt::apply_direct(interp, "shen.", &[__t1398])? }; { - let __t1404 = { - let __t1397 = v_W2973.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1397])? + let __t1406 = { + let __t1399 = v_W2629.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1399])? }; - if rt::is_truthy(interp, &__t1404)? { + if rt::is_truthy(interp, &__t1406)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2974 = { - let __t1398 = v_W2973.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1398])? + let v_W2630 = { + let __t1400 = v_W2629.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1400])? }; { - let v_W2975 = { - let __t1399 = v_W2973.clone(); + let v_W2631 = { + let __t1401 = v_W2629.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1399], + &[__t1401], )? }; { - let __t1400 = v_W2975.clone(); - let __t1403 = { - let __t1401 = Value::int(0i64); - let __t1402 = v_W2974.clone(); - rt::sub(&__t1401, &__t1402)? + let __t1402 = v_W2631.clone(); + let __t1405 = { + let __t1403 = Value::int(0i64); + let __t1404 = v_W2630.clone(); + rt::sub(&__t1403, &__t1404)? }; rt::apply_direct( interp, "shen.comb", - &[__t1400, __t1403], + &[__t1402, __t1405], )? } } @@ -8180,54 +8189,54 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1407 = { - let __t1406 = v_W2970.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1406])? + let __t1409 = { + let __t1408 = v_W2626.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1408])? }; - if match rt::is_truthy(interp, &__t1407) { + if match rt::is_truthy(interp, &__t1409) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2976 = { - let v_W2977 = { - let __t1408 = v_V2969.clone(); - rt::apply_direct(interp, "shen.", &[__t1408])? + let v_W2632 = { + let v_W2633 = { + let __t1410 = v_V2625.clone(); + rt::apply_direct(interp, "shen.", &[__t1410])? }; { - let __t1418 = { - let __t1409 = v_W2977.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1409])? + let __t1420 = { + let __t1411 = v_W2633.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1411])? }; - if rt::is_truthy(interp, &__t1418)? { + if rt::is_truthy(interp, &__t1420)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2978 = { - let __t1410 = v_W2977.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1410])? + let v_W2634 = { + let __t1412 = v_W2633.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1412])? }; { - let v_W2979 = { - let __t1411 = v_W2978.clone(); + let v_W2635 = { + let __t1413 = v_W2634.clone(); rt::apply_direct( interp, "shen.", - &[__t1411], + &[__t1413], )? }; { - let __t1417 = { - let __t1412 = v_W2979.clone(); + let __t1419 = { + let __t1414 = v_W2635.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1412], + &[__t1414], )? }; - if rt::is_truthy(interp, &__t1417)? { + if rt::is_truthy(interp, &__t1419)? { { rt::apply_direct( interp, @@ -8237,30 +8246,30 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W2980 = { - let __t1413 = v_W2979.clone(); + let v_W2636 = { + let __t1415 = v_W2635.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1413], + &[__t1415], )? }; { - let v_W2981 = { - let __t1414 = v_W2979.clone(); + let v_W2637 = { + let __t1416 = v_W2635.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1414], + &[__t1416], )? }; { - let __t1415 = v_W2981.clone(); - let __t1416 = v_W2980.clone(); + let __t1417 = v_W2637.clone(); + let __t1418 = v_W2636.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1415, __t1416], + &[__t1417, __t1418], )? } } @@ -8273,30 +8282,30 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1420 = { - let __t1419 = v_W2976.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1419])? + let __t1422 = { + let __t1421 = v_W2632.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1421])? }; - if match rt::is_truthy(interp, &__t1420) { + if match rt::is_truthy(interp, &__t1422) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2982 = { - let v_W2983 = { - let __t1421 = v_V2969.clone(); - rt::apply_direct(interp, "shen.", &[__t1421])? + let v_W2638 = { + let v_W2639 = { + let __t1423 = v_V2625.clone(); + rt::apply_direct(interp, "shen.", &[__t1423])? }; { - let __t1427 = { - let __t1422 = v_W2983.clone(); + let __t1429 = { + let __t1424 = v_W2639.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1422], + &[__t1424], )? }; - if rt::is_truthy(interp, &__t1427)? { + if rt::is_truthy(interp, &__t1429)? { { rt::apply_direct( interp, @@ -8306,30 +8315,30 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W2984 = { - let __t1423 = v_W2983.clone(); + let v_W2640 = { + let __t1425 = v_W2639.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1423], + &[__t1425], )? }; { - let v_W2985 = { - let __t1424 = v_W2983.clone(); + let v_W2641 = { + let __t1426 = v_W2639.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1424], + &[__t1426], )? }; { - let __t1425 = v_W2985.clone(); - let __t1426 = v_W2984.clone(); + let __t1427 = v_W2641.clone(); + let __t1428 = v_W2640.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1425, __t1426], + &[__t1427, __t1428], )? } } @@ -8338,38 +8347,38 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1429 = { - let __t1428 = v_W2982.clone(); + let __t1431 = { + let __t1430 = v_W2638.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1428], + &[__t1430], )? }; - if match rt::is_truthy(interp, &__t1429) { + if match rt::is_truthy(interp, &__t1431) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2986 = { - let v_W2987 = { - let __t1430 = v_V2969.clone(); + let v_W2642 = { + let v_W2643 = { + let __t1432 = v_V2625.clone(); rt::apply_direct( interp, "shen.", - &[__t1430], + &[__t1432], )? }; { - let __t1436 = { - let __t1431 = v_W2987.clone(); + let __t1438 = { + let __t1433 = v_W2643.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1431], + &[__t1433], )? }; - if rt::is_truthy(interp, &__t1436)? { + if rt::is_truthy(interp, &__t1438)? { { rt::apply_direct( interp, @@ -8379,33 +8388,33 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W2988 = { - let __t1432 = v_W2987.clone(); + let v_W2644 = { + let __t1434 = v_W2643.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1432], + &[__t1434], )? }; { - let v_W2989 = { - let __t1433 = - v_W2987.clone(); + let v_W2645 = { + let __t1435 = + v_W2643.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1433], + &[__t1435], )? }; { - let __t1434 = - v_W2989.clone(); - let __t1435 = - v_W2988.clone(); + let __t1436 = + v_W2645.clone(); + let __t1437 = + v_W2644.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1434, __t1435], + &[__t1436, __t1437], )? } } @@ -8414,73 +8423,73 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1438 = { - let __t1437 = v_W2986.clone(); + let __t1440 = { + let __t1439 = v_W2642.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1437], + &[__t1439], )? }; - if match rt::is_truthy(interp, &__t1438) { + if match rt::is_truthy(interp, &__t1440) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W2990 = { - let v_W2991 = { - let __t1439 = v_V2969.clone(); + let v_W2646 = { + let v_W2647 = { + let __t1441 = v_V2625.clone(); rt::apply_direct( interp, "shen.", - &[__t1439], + &[__t1441], )? }; { - let __t1445 = { - let __t1440 = - v_W2991.clone(); + let __t1447 = { + let __t1442 = + v_W2647.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1440], + &[__t1442], )? }; if rt::is_truthy( - interp, &__t1445, + interp, &__t1447, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W2992 = { - let __t1441 = - v_W2991.clone(); + let v_W2648 = { + let __t1443 = + v_W2647.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1441], + &[__t1443], )? }; { - let v_W2993 = { - let __t1442 = - v_W2991 + let v_W2649 = { + let __t1444 = + v_W2647 .clone( ); - rt::apply_direct(interp, "shen.in->", &[__t1442])? + rt::apply_direct(interp, "shen.in->", &[__t1444])? }; { - let __t1443 = - v_W2993 + let __t1445 = + v_W2649 .clone( ); - let __t1444 = - v_W2992 + let __t1446 = + v_W2648 .clone( ); - rt::apply_direct(interp, "shen.comb", &[__t1443, __t1444])? + rt::apply_direct(interp, "shen.comb", &[__t1445, __t1446])? } } } @@ -8488,16 +8497,16 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1447 = { - let __t1446 = v_W2990.clone(); + let __t1449 = { + let __t1448 = v_W2646.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1446], + &[__t1448], )? }; if match rt::is_truthy( - interp, &__t1447, + interp, &__t1449, ) { Ok(b) => b, Err(e) => break Err(e), @@ -8510,27 +8519,27 @@ pub fn aot_shen_x2e__x3c_number_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }); } else { - break Ok(v_W2990.clone()); + break Ok(v_W2646.clone()); } } } } else { - break Ok(v_W2986.clone()); + break Ok(v_W2642.clone()); } } } } else { - break Ok(v_W2982.clone()); + break Ok(v_W2638.clone()); } } } } else { - break Ok(v_W2976.clone()); + break Ok(v_W2632.clone()); } } } } else { - break Ok(v_W2970.clone()); + break Ok(v_W2626.clone()); } } } @@ -8551,26 +8560,26 @@ pub fn aot_shen_x2e__x3c_minus_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V2994 = args[0].clone(); + let mut v_V2650 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2995 = { - let __t1453 = { - let __t1448 = v_V2994.clone(); - let __t1449 = Value::int(45i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1448, __t1449])? + let v_W2651 = { + let __t1455 = { + let __t1450 = v_V2650.clone(); + let __t1451 = Value::int(45i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1450, __t1451])? }; - if rt::is_truthy(interp, &__t1453)? { + if rt::is_truthy(interp, &__t1455)? { { - let v_W2996 = { - let __t1450 = v_V2994.clone(); - rt::apply_direct(interp, "tail", &[__t1450])? + let v_W2652 = { + let __t1452 = v_V2650.clone(); + rt::apply_direct(interp, "tail", &[__t1452])? }; { - let __t1451 = v_W2996.clone(); - let __t1452 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1451, __t1452])? + let __t1453 = v_W2652.clone(); + let __t1454 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1453, __t1454])? } } } else { @@ -8580,17 +8589,17 @@ pub fn aot_shen_x2e__x3c_minus_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1455 = { - let __t1454 = v_W2995.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1454])? + let __t1457 = { + let __t1456 = v_W2651.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1456])? }; - if match rt::is_truthy(interp, &__t1455) { + if match rt::is_truthy(interp, &__t1457) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2995.clone()); + break Ok(v_W2651.clone()); } } } @@ -8611,26 +8620,26 @@ pub fn aot_shen_x2e__x3c_plus_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V2997 = args[0].clone(); + let mut v_V2653 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W2998 = { - let __t1461 = { - let __t1456 = v_V2997.clone(); - let __t1457 = Value::int(43i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1456, __t1457])? + let v_W2654 = { + let __t1463 = { + let __t1458 = v_V2653.clone(); + let __t1459 = Value::int(43i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1458, __t1459])? }; - if rt::is_truthy(interp, &__t1461)? { + if rt::is_truthy(interp, &__t1463)? { { - let v_W2999 = { - let __t1458 = v_V2997.clone(); - rt::apply_direct(interp, "tail", &[__t1458])? + let v_W2655 = { + let __t1460 = v_V2653.clone(); + rt::apply_direct(interp, "tail", &[__t1460])? }; { - let __t1459 = v_W2999.clone(); - let __t1460 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1459, __t1460])? + let __t1461 = v_W2655.clone(); + let __t1462 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1461, __t1462])? } } } else { @@ -8640,17 +8649,17 @@ pub fn aot_shen_x2e__x3c_plus_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1463 = { - let __t1462 = v_W2998.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1462])? + let __t1465 = { + let __t1464 = v_W2654.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1464])? }; - if match rt::is_truthy(interp, &__t1463) { + if match rt::is_truthy(interp, &__t1465) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W2998.clone()); + break Ok(v_W2654.clone()); } } } @@ -8671,46 +8680,46 @@ pub fn aot_shen_x2e__x3c_integer_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3000 = args[0].clone(); + let mut v_V2656 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3001 = { - let v_W3002 = { - let __t1464 = v_V3000.clone(); - rt::apply_direct(interp, "shen.", &[__t1464])? + let v_W2657 = { + let v_W2658 = { + let __t1466 = v_V2656.clone(); + rt::apply_direct(interp, "shen.", &[__t1466])? }; { - let __t1471 = { - let __t1465 = v_W3002.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1465])? + let __t1473 = { + let __t1467 = v_W2658.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1467])? }; - if rt::is_truthy(interp, &__t1471)? { + if rt::is_truthy(interp, &__t1473)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3003 = { - let __t1466 = v_W3002.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1466])? + let v_W2659 = { + let __t1468 = v_W2658.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1468])? }; { - let v_W3004 = { - let __t1467 = v_W3002.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1467])? + let v_W2660 = { + let __t1469 = v_W2658.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1469])? }; { - let __t1468 = v_W3004.clone(); - let __t1470 = { - let __t1469 = v_W3003.clone(); + let __t1470 = v_W2660.clone(); + let __t1472 = { + let __t1471 = v_W2659.clone(); rt::apply_direct( interp, "shen.compute-integer", - &[__t1469], + &[__t1471], )? }; - rt::apply_direct(interp, "shen.comb", &[__t1468, __t1470])? + rt::apply_direct(interp, "shen.comb", &[__t1470, __t1472])? } } } @@ -8718,17 +8727,17 @@ pub fn aot_shen_x2e__x3c_integer_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t1473 = { - let __t1472 = v_W3001.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1472])? + let __t1475 = { + let __t1474 = v_W2657.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1474])? }; - if match rt::is_truthy(interp, &__t1473) { + if match rt::is_truthy(interp, &__t1475) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3001.clone()); + break Ok(v_W2657.clone()); } } } @@ -8749,83 +8758,83 @@ pub fn aot_shen_x2e__x3c_digits_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3005 = args[0].clone(); + let mut v_V2661 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3006 = { - let v_W3007 = { - let __t1474 = v_V3005.clone(); - rt::apply_direct(interp, "shen.", &[__t1474])? + let v_W2662 = { + let v_W2663 = { + let __t1476 = v_V2661.clone(); + rt::apply_direct(interp, "shen.", &[__t1476])? }; { - let __t1487 = { - let __t1475 = v_W3007.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1475])? + let __t1489 = { + let __t1477 = v_W2663.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1477])? }; - if rt::is_truthy(interp, &__t1487)? { + if rt::is_truthy(interp, &__t1489)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3008 = { - let __t1476 = v_W3007.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1476])? + let v_W2664 = { + let __t1478 = v_W2663.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1478])? }; { - let v_W3009 = { - let __t1477 = v_W3007.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1477])? + let v_W2665 = { + let __t1479 = v_W2663.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1479])? }; { - let v_W3010 = { - let __t1478 = v_W3009.clone(); - rt::apply_direct(interp, "shen.", &[__t1478])? + let v_W2666 = { + let __t1480 = v_W2665.clone(); + rt::apply_direct(interp, "shen.", &[__t1480])? }; { - let __t1486 = { - let __t1479 = v_W3010.clone(); + let __t1488 = { + let __t1481 = v_W2666.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1479], + &[__t1481], )? }; - if rt::is_truthy(interp, &__t1486)? { + if rt::is_truthy(interp, &__t1488)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3011 = { - let __t1480 = v_W3010.clone(); + let v_W2667 = { + let __t1482 = v_W2666.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1480], + &[__t1482], )? }; { - let v_W3012 = { - let __t1481 = v_W3010.clone(); + let v_W2668 = { + let __t1483 = v_W2666.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1481], + &[__t1483], )? }; { - let __t1482 = v_W3012.clone(); - let __t1485 = { - let __t1483 = v_W3008.clone(); - let __t1484 = v_W3011.clone(); - rt::cons(&__t1483, &__t1484) + let __t1484 = v_W2668.clone(); + let __t1487 = { + let __t1485 = v_W2664.clone(); + let __t1486 = v_W2667.clone(); + rt::cons(&__t1485, &__t1486) }; rt::apply_direct( interp, "shen.comb", - &[__t1482, __t1485], + &[__t1484, __t1487], )? } } @@ -8839,51 +8848,51 @@ pub fn aot_shen_x2e__x3c_digits_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1489 = { - let __t1488 = v_W3006.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1488])? + let __t1491 = { + let __t1490 = v_W2662.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1490])? }; - if match rt::is_truthy(interp, &__t1489) { + if match rt::is_truthy(interp, &__t1491) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3013 = { - let v_W3014 = { - let __t1490 = v_V3005.clone(); - rt::apply_direct(interp, "shen.", &[__t1490])? + let v_W2669 = { + let v_W2670 = { + let __t1492 = v_V2661.clone(); + rt::apply_direct(interp, "shen.", &[__t1492])? }; { - let __t1498 = { - let __t1491 = v_W3014.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1491])? + let __t1500 = { + let __t1493 = v_W2670.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1493])? }; - if rt::is_truthy(interp, &__t1498)? { + if rt::is_truthy(interp, &__t1500)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3015 = { - let __t1492 = v_W3014.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1492])? + let v_W2671 = { + let __t1494 = v_W2670.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1494])? }; { - let v_W3016 = { - let __t1493 = v_W3014.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1493])? + let v_W2672 = { + let __t1495 = v_W2670.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1495])? }; { - let __t1494 = v_W3016.clone(); - let __t1497 = { - let __t1495 = v_W3015.clone(); - let __t1496 = Value::nil(); - rt::cons(&__t1495, &__t1496) + let __t1496 = v_W2672.clone(); + let __t1499 = { + let __t1497 = v_W2671.clone(); + let __t1498 = Value::nil(); + rt::cons(&__t1497, &__t1498) }; rt::apply_direct( interp, "shen.comb", - &[__t1494, __t1497], + &[__t1496, __t1499], )? } } @@ -8892,22 +8901,22 @@ pub fn aot_shen_x2e__x3c_digits_x3e_(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t1500 = { - let __t1499 = v_W3013.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1499])? + let __t1502 = { + let __t1501 = v_W2669.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1501])? }; - if match rt::is_truthy(interp, &__t1500) { + if match rt::is_truthy(interp, &__t1502) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3013.clone()); + break Ok(v_W2669.clone()); } } } } else { - break Ok(v_W3006.clone()); + break Ok(v_W2662.clone()); } } } @@ -8928,43 +8937,43 @@ pub fn aot_shen_x2e__x3c_digit_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3017 = args[0].clone(); + let mut v_V2673 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3018 = { - let __t1509 = { - let __t1501 = v_V3017.clone(); - rt::is_cons(&__t1501) + let v_W2674 = { + let __t1511 = { + let __t1503 = v_V2673.clone(); + rt::is_cons(&__t1503) }; - if rt::is_truthy(interp, &__t1509)? { + if rt::is_truthy(interp, &__t1511)? { { - let v_W3019 = { - let __t1502 = v_V3017.clone(); - rt::apply_direct(interp, "head", &[__t1502])? + let v_W2675 = { + let __t1504 = v_V2673.clone(); + rt::apply_direct(interp, "head", &[__t1504])? }; { - let v_W3020 = { - let __t1503 = v_V3017.clone(); - rt::apply_direct(interp, "tail", &[__t1503])? + let v_W2676 = { + let __t1505 = v_V2673.clone(); + rt::apply_direct(interp, "tail", &[__t1505])? }; { - let __t1508 = { - let __t1504 = v_W3019.clone(); - rt::apply_direct(interp, "shen.digit?", &[__t1504])? + let __t1510 = { + let __t1506 = v_W2675.clone(); + rt::apply_direct(interp, "shen.digit?", &[__t1506])? }; - if rt::is_truthy(interp, &__t1508)? { + if rt::is_truthy(interp, &__t1510)? { { - let __t1505 = v_W3020.clone(); - let __t1507 = { - let __t1506 = v_W3019.clone(); + let __t1507 = v_W2676.clone(); + let __t1509 = { + let __t1508 = v_W2675.clone(); rt::apply_direct( interp, "shen.byte->digit", - &[__t1506], + &[__t1508], )? }; - rt::apply_direct(interp, "shen.comb", &[__t1505, __t1507])? + rt::apply_direct(interp, "shen.comb", &[__t1507, __t1509])? } } else { { @@ -8981,17 +8990,17 @@ pub fn aot_shen_x2e__x3c_digit_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1511 = { - let __t1510 = v_W3018.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1510])? + let __t1513 = { + let __t1512 = v_W2674.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1512])? }; - if match rt::is_truthy(interp, &__t1511) { + if match rt::is_truthy(interp, &__t1513) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3018.clone()); + break Ok(v_W2674.clone()); } } } @@ -9012,13 +9021,13 @@ pub fn aot_shen_x2e_byte_x2d__x3e_digit(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3021 = args[0].clone(); + let mut v_V2677 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1512 = v_V3021.clone(); - let __t1513 = Value::int(48i64); - rt::sub(&__t1512, &__t1513)? + let __t1514 = v_V2677.clone(); + let __t1515 = Value::int(48i64); + rt::sub(&__t1514, &__t1515)? }); } } @@ -9037,16 +9046,16 @@ pub fn aot_shen_x2e_compute_x2d_integer(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3022 = args[0].clone(); + let mut v_V2678 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1515 = { - let __t1514 = v_V3022.clone(); - rt::apply_direct(interp, "reverse", &[__t1514])? + let __t1517 = { + let __t1516 = v_V2678.clone(); + rt::apply_direct(interp, "reverse", &[__t1516])? }; - let __t1516 = Value::int(0i64); - rt::apply_direct(interp, "shen.compute-integer-h", &[__t1515, __t1516])? + let __t1518 = Value::int(0i64); + rt::apply_direct(interp, "shen.compute-integer-h", &[__t1517, __t1518])? }); } } @@ -9068,74 +9077,74 @@ pub fn aot_shen_x2e_compute_x2d_integer_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V3025 = args[0].clone(); + let mut v_V2681 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3026 = args[1].clone(); + let mut v_V2682 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1535 = { - let __t1533 = Value::nil(); - let __t1534 = v_V3025.clone(); - rt::eq(&__t1533, &__t1534) + let __t1537 = { + let __t1535 = Value::nil(); + let __t1536 = v_V2681.clone(); + rt::eq(&__t1535, &__t1536) }; - if match rt::is_truthy(interp, &__t1535) { + if match rt::is_truthy(interp, &__t1537) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t1532 = { - let __t1519 = v_V3025.clone(); - rt::is_cons(&__t1519) + let __t1534 = { + let __t1521 = v_V2681.clone(); + rt::is_cons(&__t1521) }; - if match rt::is_truthy(interp, &__t1532) { + if match rt::is_truthy(interp, &__t1534) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1525 = { - let __t1522 = { - let __t1520 = Value::int(10i64); - let __t1521 = v_V3026.clone(); - rt::apply_direct(interp, "shen.expt", &[__t1520, __t1521])? - }; + let __t1527 = { let __t1524 = { - let __t1523 = v_V3025.clone(); - rt::hd(&__t1523)? + let __t1522 = Value::int(10i64); + let __t1523 = v_V2682.clone(); + rt::apply_direct(interp, "shen.expt", &[__t1522, __t1523])? }; - rt::mul(&__t1522, &__t1524)? + let __t1526 = { + let __t1525 = v_V2681.clone(); + rt::hd(&__t1525)? + }; + rt::mul(&__t1524, &__t1526)? }; - let __t1531 = { - let __t1527 = { - let __t1526 = v_V3025.clone(); - rt::tl(&__t1526)? + let __t1533 = { + let __t1529 = { + let __t1528 = v_V2681.clone(); + rt::tl(&__t1528)? }; - let __t1530 = { - let __t1528 = v_V3026.clone(); - let __t1529 = Value::int(1i64); - rt::add(&__t1528, &__t1529)? + let __t1532 = { + let __t1530 = v_V2682.clone(); + let __t1531 = Value::int(1i64); + rt::add(&__t1530, &__t1531)? }; rt::apply_direct( interp, "shen.compute-integer-h", - &[__t1527, __t1530], + &[__t1529, __t1532], )? }; - rt::add(&__t1525, &__t1531)? + rt::add(&__t1527, &__t1533)? }); } else { { - let __t1518 = Value::bool(true); - if match rt::is_truthy(interp, &__t1518) { + let __t1520 = Value::bool(true); + if match rt::is_truthy(interp, &__t1520) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1517 = - Value::sym(interp.intern("shen.compute-integer-h")); - rt::apply_direct(interp, "shen.f-error", &[__t1517])? + let __t1519 = + Value::str("partial function shen.compute-integer-h"); + rt::apply_direct(interp, "simple-error", &[__t1519])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9169,65 +9178,65 @@ pub fn aot_shen_x2e_expt(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::int(1i64)); } else { { - let __t1551 = { - let __t1543 = v_V3030.clone(); - let __t1544 = Value::int(0i64); - rt::gt(&__t1543, &__t1544)? + let __t1553 = { + let __t1545 = v_V2686.clone(); + let __t1546 = Value::int(0i64); + rt::gt(&__t1545, &__t1546)? }; - if match rt::is_truthy(interp, &__t1551) { + if match rt::is_truthy(interp, &__t1553) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1545 = v_V3029.clone(); - let __t1550 = { - let __t1546 = v_V3029.clone(); - let __t1549 = { - let __t1547 = v_V3030.clone(); - let __t1548 = Value::int(1i64); - rt::sub(&__t1547, &__t1548)? + let __t1547 = v_V2685.clone(); + let __t1552 = { + let __t1548 = v_V2685.clone(); + let __t1551 = { + let __t1549 = v_V2686.clone(); + let __t1550 = Value::int(1i64); + rt::sub(&__t1549, &__t1550)? }; - rt::apply_direct(interp, "shen.expt", &[__t1546, __t1549])? + rt::apply_direct(interp, "shen.expt", &[__t1548, __t1551])? }; - rt::mul(&__t1545, &__t1550)? + rt::mul(&__t1547, &__t1552)? }); } else { { - let __t1542 = Value::bool(true); - if match rt::is_truthy(interp, &__t1542) { + let __t1544 = Value::bool(true); + if match rt::is_truthy(interp, &__t1544) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1540 = { - let __t1536 = v_V3029.clone(); - let __t1539 = { - let __t1537 = v_V3030.clone(); - let __t1538 = Value::int(1i64); - rt::add(&__t1537, &__t1538)? + let __t1542 = { + let __t1538 = v_V2685.clone(); + let __t1541 = { + let __t1539 = v_V2686.clone(); + let __t1540 = Value::int(1i64); + rt::add(&__t1539, &__t1540)? }; - rt::apply_direct(interp, "shen.expt", &[__t1536, __t1539])? + rt::apply_direct(interp, "shen.expt", &[__t1538, __t1541])? }; - let __t1541 = v_V3029.clone(); - rt::div(&__t1540, &__t1541)? + let __t1543 = v_V2685.clone(); + rt::div(&__t1542, &__t1543)? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9254,82 +9263,82 @@ pub fn aot_shen_x2e__x3c_float_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3031 = args[0].clone(); + let mut v_V2687 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3032 = { - let v_W3033 = { - let __t1555 = v_V3031.clone(); - rt::apply_direct(interp, "shen.", &[__t1555])? + let v_W2688 = { + let v_W2689 = { + let __t1557 = v_V2687.clone(); + rt::apply_direct(interp, "shen.", &[__t1557])? }; { - let __t1572 = { - let __t1556 = v_W3033.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1556])? + let __t1574 = { + let __t1558 = v_W2689.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1558])? }; - if rt::is_truthy(interp, &__t1572)? { + if rt::is_truthy(interp, &__t1574)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3034 = { - let __t1557 = v_W3033.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1557])? + let v_W2690 = { + let __t1559 = v_W2689.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1559])? }; { - let v_W3035 = { - let __t1558 = v_W3033.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1558])? + let v_W2691 = { + let __t1560 = v_W2689.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1560])? }; { - let v_W3036 = { - let __t1559 = v_W3035.clone(); - rt::apply_direct(interp, "shen.", &[__t1559])? + let v_W2692 = { + let __t1561 = v_W2691.clone(); + rt::apply_direct(interp, "shen.", &[__t1561])? }; { - let __t1571 = { - let __t1560 = v_W3036.clone(); + let __t1573 = { + let __t1562 = v_W2692.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1560], + &[__t1562], )? }; - if rt::is_truthy(interp, &__t1571)? { + if rt::is_truthy(interp, &__t1573)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3037 = { - let __t1561 = v_W3036.clone(); + let v_W2693 = { + let __t1563 = v_W2692.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1561], + &[__t1563], )? }; { - let v_W3038 = { - let __t1562 = v_W3037.clone(); + let v_W2694 = { + let __t1564 = v_W2693.clone(); rt::apply_direct( interp, "shen.", - &[__t1562], + &[__t1564], )? }; { - let __t1570 = { - let __t1563 = v_W3038.clone(); + let __t1572 = { + let __t1565 = v_W2694.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1563], + &[__t1565], )? }; - if rt::is_truthy(interp, &__t1570)? { + if rt::is_truthy(interp, &__t1572)? { { rt::apply_direct( interp, @@ -9339,40 +9348,40 @@ pub fn aot_shen_x2e__x3c_float_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3039 = { - let __t1564 = v_W3038.clone(); + let v_W2695 = { + let __t1566 = v_W2694.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1564], + &[__t1566], )? }; { - let v_W3040 = { - let __t1565 = - v_W3038.clone(); + let v_W2696 = { + let __t1567 = + v_W2694.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1565], + &[__t1567], )? }; { - let __t1566 = - v_W3040.clone(); - let __t1569 = { - let __t1567 = - v_W3034.clone(); - let __t1568 = - v_W3039.clone(); + let __t1568 = + v_W2696.clone(); + let __t1571 = { + let __t1569 = + v_W2690.clone(); + let __t1570 = + v_W2695.clone(); rt::add( - &__t1567, &__t1568, + &__t1569, &__t1570, )? }; rt::apply_direct( interp, "shen.comb", - &[__t1566, __t1569], + &[__t1568, __t1571], )? } } @@ -9390,54 +9399,54 @@ pub fn aot_shen_x2e__x3c_float_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1574 = { - let __t1573 = v_W3032.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1573])? + let __t1576 = { + let __t1575 = v_W2688.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1575])? }; - if match rt::is_truthy(interp, &__t1574) { + if match rt::is_truthy(interp, &__t1576) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3041 = { - let v_W3042 = { - let __t1575 = v_V3031.clone(); - rt::apply_direct(interp, "shen.", &[__t1575])? + let v_W2697 = { + let v_W2698 = { + let __t1577 = v_V2687.clone(); + rt::apply_direct(interp, "shen.", &[__t1577])? }; { - let __t1585 = { - let __t1576 = v_W3042.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1576])? + let __t1587 = { + let __t1578 = v_W2698.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1578])? }; - if rt::is_truthy(interp, &__t1585)? { + if rt::is_truthy(interp, &__t1587)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3043 = { - let __t1577 = v_W3042.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1577])? + let v_W2699 = { + let __t1579 = v_W2698.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1579])? }; { - let v_W3044 = { - let __t1578 = v_W3043.clone(); + let v_W2700 = { + let __t1580 = v_W2699.clone(); rt::apply_direct( interp, "shen.", - &[__t1578], + &[__t1580], )? }; { - let __t1584 = { - let __t1579 = v_W3044.clone(); + let __t1586 = { + let __t1581 = v_W2700.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1579], + &[__t1581], )? }; - if rt::is_truthy(interp, &__t1584)? { + if rt::is_truthy(interp, &__t1586)? { { rt::apply_direct( interp, @@ -9447,30 +9456,30 @@ pub fn aot_shen_x2e__x3c_float_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3045 = { - let __t1580 = v_W3044.clone(); + let v_W2701 = { + let __t1582 = v_W2700.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1580], + &[__t1582], )? }; { - let v_W3046 = { - let __t1581 = v_W3044.clone(); + let v_W2702 = { + let __t1583 = v_W2700.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1581], + &[__t1583], )? }; { - let __t1582 = v_W3046.clone(); - let __t1583 = v_W3045.clone(); + let __t1584 = v_W2702.clone(); + let __t1585 = v_W2701.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1582, __t1583], + &[__t1584, __t1585], )? } } @@ -9483,22 +9492,22 @@ pub fn aot_shen_x2e__x3c_float_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1587 = { - let __t1586 = v_W3041.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1586])? + let __t1589 = { + let __t1588 = v_W2697.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1588])? }; - if match rt::is_truthy(interp, &__t1587) { + if match rt::is_truthy(interp, &__t1589) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3041.clone()); + break Ok(v_W2697.clone()); } } } } else { - break Ok(v_W3032.clone()); + break Ok(v_W2688.clone()); } } } @@ -9519,26 +9528,26 @@ pub fn aot_shen_x2e__x3c_stop_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3047 = args[0].clone(); + let mut v_V2703 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3048 = { - let __t1593 = { - let __t1588 = v_V3047.clone(); - let __t1589 = Value::int(46i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1588, __t1589])? + let v_W2704 = { + let __t1595 = { + let __t1590 = v_V2703.clone(); + let __t1591 = Value::int(46i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1590, __t1591])? }; - if rt::is_truthy(interp, &__t1593)? { + if rt::is_truthy(interp, &__t1595)? { { - let v_W3049 = { - let __t1590 = v_V3047.clone(); - rt::apply_direct(interp, "tail", &[__t1590])? + let v_W2705 = { + let __t1592 = v_V2703.clone(); + rt::apply_direct(interp, "tail", &[__t1592])? }; { - let __t1591 = v_W3049.clone(); - let __t1592 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1591, __t1592])? + let __t1593 = v_W2705.clone(); + let __t1594 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1593, __t1594])? } } } else { @@ -9548,17 +9557,17 @@ pub fn aot_shen_x2e__x3c_stop_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1595 = { - let __t1594 = v_W3048.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1594])? + let __t1597 = { + let __t1596 = v_W2704.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1596])? }; - if match rt::is_truthy(interp, &__t1595) { + if match rt::is_truthy(interp, &__t1597) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3048.clone()); + break Ok(v_W2704.clone()); } } } @@ -9579,46 +9588,46 @@ pub fn aot_shen_x2e__x3c_fraction_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3050 = args[0].clone(); + let mut v_V2706 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3051 = { - let v_W3052 = { - let __t1596 = v_V3050.clone(); - rt::apply_direct(interp, "shen.", &[__t1596])? + let v_W2707 = { + let v_W2708 = { + let __t1598 = v_V2706.clone(); + rt::apply_direct(interp, "shen.", &[__t1598])? }; { - let __t1603 = { - let __t1597 = v_W3052.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1597])? + let __t1605 = { + let __t1599 = v_W2708.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1599])? }; - if rt::is_truthy(interp, &__t1603)? { + if rt::is_truthy(interp, &__t1605)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3053 = { - let __t1598 = v_W3052.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1598])? + let v_W2709 = { + let __t1600 = v_W2708.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1600])? }; { - let v_W3054 = { - let __t1599 = v_W3052.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1599])? + let v_W2710 = { + let __t1601 = v_W2708.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1601])? }; { - let __t1600 = v_W3054.clone(); - let __t1602 = { - let __t1601 = v_W3053.clone(); + let __t1602 = v_W2710.clone(); + let __t1604 = { + let __t1603 = v_W2709.clone(); rt::apply_direct( interp, "shen.compute-fraction", - &[__t1601], + &[__t1603], )? }; - rt::apply_direct(interp, "shen.comb", &[__t1600, __t1602])? + rt::apply_direct(interp, "shen.comb", &[__t1602, __t1604])? } } } @@ -9626,17 +9635,17 @@ pub fn aot_shen_x2e__x3c_fraction_x3e_(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t1605 = { - let __t1604 = v_W3051.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1604])? + let __t1607 = { + let __t1606 = v_W2707.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1606])? }; - if match rt::is_truthy(interp, &__t1605) { + if match rt::is_truthy(interp, &__t1607) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3051.clone()); + break Ok(v_W2707.clone()); } } } @@ -9657,13 +9666,13 @@ pub fn aot_shen_x2e_compute_x2d_fraction(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3055 = args[0].clone(); + let mut v_V2711 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1606 = v_V3055.clone(); - let __t1607 = Value::int(-1i64); - rt::apply_direct(interp, "shen.compute-fraction-h", &[__t1606, __t1607])? + let __t1608 = v_V2711.clone(); + let __t1609 = Value::int(-1i64); + rt::apply_direct(interp, "shen.compute-fraction-h", &[__t1608, __t1609])? }); } } @@ -9689,74 +9698,74 @@ pub fn aot_shen_x2e_compute_x2d_fraction_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V3058 = args[0].clone(); + let mut v_V2714 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3059 = args[1].clone(); + let mut v_V2715 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1626 = { - let __t1624 = Value::nil(); - let __t1625 = v_V3058.clone(); - rt::eq(&__t1624, &__t1625) + let __t1628 = { + let __t1626 = Value::nil(); + let __t1627 = v_V2714.clone(); + rt::eq(&__t1626, &__t1627) }; - if match rt::is_truthy(interp, &__t1626) { + if match rt::is_truthy(interp, &__t1628) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t1623 = { - let __t1610 = v_V3058.clone(); - rt::is_cons(&__t1610) + let __t1625 = { + let __t1612 = v_V2714.clone(); + rt::is_cons(&__t1612) }; - if match rt::is_truthy(interp, &__t1623) { + if match rt::is_truthy(interp, &__t1625) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1616 = { - let __t1613 = { - let __t1611 = Value::int(10i64); - let __t1612 = v_V3059.clone(); - rt::apply_direct(interp, "shen.expt", &[__t1611, __t1612])? - }; + let __t1618 = { let __t1615 = { - let __t1614 = v_V3058.clone(); - rt::hd(&__t1614)? + let __t1613 = Value::int(10i64); + let __t1614 = v_V2715.clone(); + rt::apply_direct(interp, "shen.expt", &[__t1613, __t1614])? + }; + let __t1617 = { + let __t1616 = v_V2714.clone(); + rt::hd(&__t1616)? }; - rt::mul(&__t1613, &__t1615)? + rt::mul(&__t1615, &__t1617)? }; - let __t1622 = { - let __t1618 = { - let __t1617 = v_V3058.clone(); - rt::tl(&__t1617)? + let __t1624 = { + let __t1620 = { + let __t1619 = v_V2714.clone(); + rt::tl(&__t1619)? }; - let __t1621 = { - let __t1619 = v_V3059.clone(); - let __t1620 = Value::int(1i64); - rt::sub(&__t1619, &__t1620)? + let __t1623 = { + let __t1621 = v_V2715.clone(); + let __t1622 = Value::int(1i64); + rt::sub(&__t1621, &__t1622)? }; rt::apply_direct( interp, "shen.compute-fraction-h", - &[__t1618, __t1621], + &[__t1620, __t1623], )? }; - rt::add(&__t1616, &__t1622)? + rt::add(&__t1618, &__t1624)? }); } else { { - let __t1609 = Value::bool(true); - if match rt::is_truthy(interp, &__t1609) { + let __t1611 = Value::bool(true); + if match rt::is_truthy(interp, &__t1611) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1608 = - Value::sym(interp.intern("shen.compute-fraction-h")); - rt::apply_direct(interp, "shen.f-error", &[__t1608])? + let __t1610 = + Value::str("partial function shen.compute-fraction-h"); + rt::apply_direct(interp, "simple-error", &[__t1610])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -9793,82 +9802,82 @@ pub fn aot_shen_x2e__x3c_e_x2d_number_x3e_( ))); } #[allow(unused_mut)] - let mut v_V3060 = args[0].clone(); + let mut v_V2716 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3061 = { - let v_W3062 = { - let __t1627 = v_V3060.clone(); - rt::apply_direct(interp, "shen.", &[__t1627])? + let v_W2717 = { + let v_W2718 = { + let __t1629 = v_V2716.clone(); + rt::apply_direct(interp, "shen.", &[__t1629])? }; { - let __t1644 = { - let __t1628 = v_W3062.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1628])? + let __t1646 = { + let __t1630 = v_W2718.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1630])? }; - if rt::is_truthy(interp, &__t1644)? { + if rt::is_truthy(interp, &__t1646)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3063 = { - let __t1629 = v_W3062.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1629])? + let v_W2719 = { + let __t1631 = v_W2718.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1631])? }; { - let v_W3064 = { - let __t1630 = v_W3062.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1630])? + let v_W2720 = { + let __t1632 = v_W2718.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1632])? }; { - let v_W3065 = { - let __t1631 = v_W3064.clone(); - rt::apply_direct(interp, "shen.", &[__t1631])? + let v_W2721 = { + let __t1633 = v_W2720.clone(); + rt::apply_direct(interp, "shen.", &[__t1633])? }; { - let __t1643 = { - let __t1632 = v_W3065.clone(); + let __t1645 = { + let __t1634 = v_W2721.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1632], + &[__t1634], )? }; - if rt::is_truthy(interp, &__t1643)? { + if rt::is_truthy(interp, &__t1645)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3066 = { - let __t1633 = v_W3065.clone(); + let v_W2722 = { + let __t1635 = v_W2721.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1633], + &[__t1635], )? }; { - let v_W3067 = { - let __t1634 = v_W3066.clone(); + let v_W2723 = { + let __t1636 = v_W2722.clone(); rt::apply_direct( interp, "shen.", - &[__t1634], + &[__t1636], )? }; { - let __t1642 = { - let __t1635 = v_W3067.clone(); + let __t1644 = { + let __t1637 = v_W2723.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1635], + &[__t1637], )? }; - if rt::is_truthy(interp, &__t1642)? { + if rt::is_truthy(interp, &__t1644)? { { rt::apply_direct( interp, @@ -9878,42 +9887,42 @@ pub fn aot_shen_x2e__x3c_e_x2d_number_x3e_( } } else { { - let v_W3068 = { - let __t1636 = v_W3067.clone(); + let v_W2724 = { + let __t1638 = v_W2723.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1636], + &[__t1638], )? }; { - let v_W3069 = { - let __t1637 = - v_W3067.clone(); + let v_W2725 = { + let __t1639 = + v_W2723.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1637], + &[__t1639], )? }; { - let __t1638 = - v_W3069.clone(); - let __t1641 = { - let __t1639 = - v_W3063.clone(); - let __t1640 = - v_W3068.clone(); + let __t1640 = + v_W2725.clone(); + let __t1643 = { + let __t1641 = + v_W2719.clone(); + let __t1642 = + v_W2724.clone(); rt::apply_direct( interp, "shen.compute-E", - &[__t1639, __t1640], + &[__t1641, __t1642], )? }; rt::apply_direct( interp, "shen.comb", - &[__t1638, __t1641], + &[__t1640, __t1643], )? } } @@ -9931,59 +9940,59 @@ pub fn aot_shen_x2e__x3c_e_x2d_number_x3e_( } }; { - let __t1646 = { - let __t1645 = v_W3061.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1645])? + let __t1648 = { + let __t1647 = v_W2717.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1647])? }; - if match rt::is_truthy(interp, &__t1646) { + if match rt::is_truthy(interp, &__t1648) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3070 = { - let v_W3071 = { - let __t1647 = v_V3060.clone(); - rt::apply_direct(interp, "shen.", &[__t1647])? + let v_W2726 = { + let v_W2727 = { + let __t1649 = v_V2716.clone(); + rt::apply_direct(interp, "shen.", &[__t1649])? }; { - let __t1664 = { - let __t1648 = v_W3071.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1648])? + let __t1666 = { + let __t1650 = v_W2727.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1650])? }; - if rt::is_truthy(interp, &__t1664)? { + if rt::is_truthy(interp, &__t1666)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3072 = { - let __t1649 = v_W3071.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1649])? + let v_W2728 = { + let __t1651 = v_W2727.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1651])? }; { - let v_W3073 = { - let __t1650 = v_W3071.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1650])? + let v_W2729 = { + let __t1652 = v_W2727.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1652])? }; { - let v_W3074 = { - let __t1651 = v_W3073.clone(); + let v_W2730 = { + let __t1653 = v_W2729.clone(); rt::apply_direct( interp, "shen.", - &[__t1651], + &[__t1653], )? }; { - let __t1663 = { - let __t1652 = v_W3074.clone(); + let __t1665 = { + let __t1654 = v_W2730.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1652], + &[__t1654], )? }; - if rt::is_truthy(interp, &__t1663)? { + if rt::is_truthy(interp, &__t1665)? { { rt::apply_direct( interp, @@ -9993,69 +10002,69 @@ pub fn aot_shen_x2e__x3c_e_x2d_number_x3e_( } } else { { - let v_W3075 = { - let __t1653 = v_W3074.clone(); + let v_W2731 = { + let __t1655 = v_W2730.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1653], + &[__t1655], )? }; { - let v_W3076 = { - let __t1654 = v_W3075.clone(); + let v_W2732 = { + let __t1656 = v_W2731.clone(); rt::apply_direct( interp, "shen.", - &[__t1654], + &[__t1656], )? }; { - let __t1662 = { - let __t1655 = - v_W3076.clone(); + let __t1664 = { + let __t1657 = + v_W2732.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1655], + &[__t1657], )? }; if rt::is_truthy( - interp, &__t1662, + interp, &__t1664, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3077 = { - let __t1656 = - v_W3076.clone(); + let v_W2733 = { + let __t1658 = + v_W2732.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1656], + &[__t1658], )? }; { - let v_W3078 = { - let __t1657 = - v_W3076 + let v_W2734 = { + let __t1659 = + v_W2732 .clone( ); - rt::apply_direct(interp, "shen.in->", &[__t1657])? + rt::apply_direct(interp, "shen.in->", &[__t1659])? }; { - let __t1658 = - v_W3078 + let __t1660 = + v_W2734 .clone( ); - let __t1661 = { - let __t1659 = v_W3072.clone(); - let __t1660 = v_W3077.clone(); - rt::apply_direct(interp, "shen.compute-E", &[__t1659, __t1660])? + let __t1663 = { + let __t1661 = v_W2728.clone(); + let __t1662 = v_W2733.clone(); + rt::apply_direct(interp, "shen.compute-E", &[__t1661, __t1662])? }; - rt::apply_direct(interp, "shen.comb", &[__t1658, __t1661])? + rt::apply_direct(interp, "shen.comb", &[__t1660, __t1663])? } } } @@ -10072,22 +10081,22 @@ pub fn aot_shen_x2e__x3c_e_x2d_number_x3e_( } }; { - let __t1666 = { - let __t1665 = v_W3070.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1665])? + let __t1668 = { + let __t1667 = v_W2726.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1667])? }; - if match rt::is_truthy(interp, &__t1666) { + if match rt::is_truthy(interp, &__t1668) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3070.clone()); + break Ok(v_W2726.clone()); } } } } else { - break Ok(v_W3061.clone()); + break Ok(v_W2717.clone()); } } } @@ -10108,66 +10117,66 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3079 = args[0].clone(); + let mut v_V2735 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3080 = { - let v_W3081 = { - let __t1667 = v_V3079.clone(); - rt::apply_direct(interp, "shen.", &[__t1667])? + let v_W2736 = { + let v_W2737 = { + let __t1669 = v_V2735.clone(); + rt::apply_direct(interp, "shen.", &[__t1669])? }; { - let __t1677 = { - let __t1668 = v_W3081.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1668])? + let __t1679 = { + let __t1670 = v_W2737.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1670])? }; - if rt::is_truthy(interp, &__t1677)? { + if rt::is_truthy(interp, &__t1679)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3082 = { - let __t1669 = v_W3081.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1669])? + let v_W2738 = { + let __t1671 = v_W2737.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1671])? }; { - let v_W3083 = { - let __t1670 = v_W3082.clone(); - rt::apply_direct(interp, "shen.", &[__t1670])? + let v_W2739 = { + let __t1672 = v_W2738.clone(); + rt::apply_direct(interp, "shen.", &[__t1672])? }; { - let __t1676 = { - let __t1671 = v_W3083.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1671])? + let __t1678 = { + let __t1673 = v_W2739.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1673])? }; - if rt::is_truthy(interp, &__t1676)? { + if rt::is_truthy(interp, &__t1678)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3084 = { - let __t1672 = v_W3083.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t1672])? + let v_W2740 = { + let __t1674 = v_W2739.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t1674])? }; { - let v_W3085 = { - let __t1673 = v_W3083.clone(); + let v_W2741 = { + let __t1675 = v_W2739.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1673], + &[__t1675], )? }; { - let __t1674 = v_W3085.clone(); - let __t1675 = v_W3084.clone(); + let __t1676 = v_W2741.clone(); + let __t1677 = v_W2740.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1674, __t1675], + &[__t1676, __t1677], )? } } @@ -10180,54 +10189,54 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1679 = { - let __t1678 = v_W3080.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1678])? + let __t1681 = { + let __t1680 = v_W2736.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1680])? }; - if match rt::is_truthy(interp, &__t1679) { + if match rt::is_truthy(interp, &__t1681) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3086 = { - let v_W3087 = { - let __t1680 = v_V3079.clone(); - rt::apply_direct(interp, "shen.", &[__t1680])? + let v_W2742 = { + let v_W2743 = { + let __t1682 = v_V2735.clone(); + rt::apply_direct(interp, "shen.", &[__t1682])? }; { - let __t1692 = { - let __t1681 = v_W3087.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1681])? + let __t1694 = { + let __t1683 = v_W2743.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1683])? }; - if rt::is_truthy(interp, &__t1692)? { + if rt::is_truthy(interp, &__t1694)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3088 = { - let __t1682 = v_W3087.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1682])? + let v_W2744 = { + let __t1684 = v_W2743.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1684])? }; { - let v_W3089 = { - let __t1683 = v_W3088.clone(); + let v_W2745 = { + let __t1685 = v_W2744.clone(); rt::apply_direct( interp, "shen.", - &[__t1683], + &[__t1685], )? }; { - let __t1691 = { - let __t1684 = v_W3089.clone(); + let __t1693 = { + let __t1686 = v_W2745.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1684], + &[__t1686], )? }; - if rt::is_truthy(interp, &__t1691)? { + if rt::is_truthy(interp, &__t1693)? { { rt::apply_direct( interp, @@ -10237,34 +10246,34 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3090 = { - let __t1685 = v_W3089.clone(); + let v_W2746 = { + let __t1687 = v_W2745.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1685], + &[__t1687], )? }; { - let v_W3091 = { - let __t1686 = v_W3089.clone(); + let v_W2747 = { + let __t1688 = v_W2745.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1686], + &[__t1688], )? }; { - let __t1687 = v_W3091.clone(); - let __t1690 = { - let __t1688 = Value::int(0i64); - let __t1689 = v_W3090.clone(); - rt::sub(&__t1688, &__t1689)? + let __t1689 = v_W2747.clone(); + let __t1692 = { + let __t1690 = Value::int(0i64); + let __t1691 = v_W2746.clone(); + rt::sub(&__t1690, &__t1691)? }; rt::apply_direct( interp, "shen.comb", - &[__t1687, __t1690], + &[__t1689, __t1692], )? } } @@ -10277,30 +10286,30 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1694 = { - let __t1693 = v_W3086.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1693])? + let __t1696 = { + let __t1695 = v_W2742.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1695])? }; - if match rt::is_truthy(interp, &__t1694) { + if match rt::is_truthy(interp, &__t1696) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3092 = { - let v_W3093 = { - let __t1695 = v_V3079.clone(); - rt::apply_direct(interp, "shen.", &[__t1695])? + let v_W2748 = { + let v_W2749 = { + let __t1697 = v_V2735.clone(); + rt::apply_direct(interp, "shen.", &[__t1697])? }; { - let __t1701 = { - let __t1696 = v_W3093.clone(); + let __t1703 = { + let __t1698 = v_W2749.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1696], + &[__t1698], )? }; - if rt::is_truthy(interp, &__t1701)? { + if rt::is_truthy(interp, &__t1703)? { { rt::apply_direct( interp, @@ -10310,30 +10319,30 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3094 = { - let __t1697 = v_W3093.clone(); + let v_W2750 = { + let __t1699 = v_W2749.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t1697], + &[__t1699], )? }; { - let v_W3095 = { - let __t1698 = v_W3093.clone(); + let v_W2751 = { + let __t1700 = v_W2749.clone(); rt::apply_direct( interp, "shen.in->", - &[__t1698], + &[__t1700], )? }; { - let __t1699 = v_W3095.clone(); - let __t1700 = v_W3094.clone(); + let __t1701 = v_W2751.clone(); + let __t1702 = v_W2750.clone(); rt::apply_direct( interp, "shen.comb", - &[__t1699, __t1700], + &[__t1701, __t1702], )? } } @@ -10342,15 +10351,15 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t1703 = { - let __t1702 = v_W3092.clone(); + let __t1705 = { + let __t1704 = v_W2748.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t1702], + &[__t1704], )? }; - if match rt::is_truthy(interp, &__t1703) { + if match rt::is_truthy(interp, &__t1705) { Ok(b) => b, Err(e) => break Err(e), } { @@ -10358,17 +10367,17 @@ pub fn aot_shen_x2e__x3c_log10_x3e_(interp: &mut Interp, args: &[Value]) -> Shen rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3092.clone()); + break Ok(v_W2748.clone()); } } } } else { - break Ok(v_W3086.clone()); + break Ok(v_W2742.clone()); } } } } else { - break Ok(v_W3080.clone()); + break Ok(v_W2736.clone()); } } } @@ -10389,26 +10398,26 @@ pub fn aot_shen_x2e__x3c_lowE_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3096 = args[0].clone(); + let mut v_V2752 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3097 = { - let __t1709 = { - let __t1704 = v_V3096.clone(); - let __t1705 = Value::int(101i64); - rt::apply_direct(interp, "shen.hds=?", &[__t1704, __t1705])? + let v_W2753 = { + let __t1711 = { + let __t1706 = v_V2752.clone(); + let __t1707 = Value::int(101i64); + rt::apply_direct(interp, "shen.hds=?", &[__t1706, __t1707])? }; - if rt::is_truthy(interp, &__t1709)? { + if rt::is_truthy(interp, &__t1711)? { { - let v_W3098 = { - let __t1706 = v_V3096.clone(); - rt::apply_direct(interp, "tail", &[__t1706])? + let v_W2754 = { + let __t1708 = v_V2752.clone(); + rt::apply_direct(interp, "tail", &[__t1708])? }; { - let __t1707 = v_W3098.clone(); - let __t1708 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1707, __t1708])? + let __t1709 = v_W2754.clone(); + let __t1710 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1709, __t1710])? } } } else { @@ -10418,17 +10427,17 @@ pub fn aot_shen_x2e__x3c_lowE_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t1711 = { - let __t1710 = v_W3097.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1710])? + let __t1713 = { + let __t1712 = v_W2753.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1712])? }; - if match rt::is_truthy(interp, &__t1711) { + if match rt::is_truthy(interp, &__t1713) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3097.clone()); + break Ok(v_W2753.clone()); } } } @@ -10449,19 +10458,19 @@ pub fn aot_shen_x2e_compute_x2d_E(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3099 = args[0].clone(); + let mut v_V2755 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3100 = args[1].clone(); + let mut v_V2756 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1712 = v_V3099.clone(); - let __t1715 = { - let __t1713 = Value::int(10i64); - let __t1714 = v_V3100.clone(); - rt::apply_direct(interp, "shen.expt", &[__t1713, __t1714])? + let __t1714 = v_V2755.clone(); + let __t1717 = { + let __t1715 = Value::int(10i64); + let __t1716 = v_V2756.clone(); + rt::apply_direct(interp, "shen.expt", &[__t1715, __t1716])? }; - rt::mul(&__t1712, &__t1715)? + rt::mul(&__t1714, &__t1717)? }); } } @@ -10483,58 +10492,58 @@ pub fn aot_shen_x2e__x3c_whitespaces_x3e_( ))); } #[allow(unused_mut)] - let mut v_V3101 = args[0].clone(); + let mut v_V2757 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3102 = { - let v_W3103 = { - let __t1716 = v_V3101.clone(); - rt::apply_direct(interp, "shen.", &[__t1716])? + let v_W2758 = { + let v_W2759 = { + let __t1718 = v_V2757.clone(); + rt::apply_direct(interp, "shen.", &[__t1718])? }; { - let __t1725 = { - let __t1717 = v_W3103.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1717])? + let __t1727 = { + let __t1719 = v_W2759.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1719])? }; - if rt::is_truthy(interp, &__t1725)? { + if rt::is_truthy(interp, &__t1727)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3104 = { - let __t1718 = v_W3103.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1718])? + let v_W2760 = { + let __t1720 = v_W2759.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1720])? }; { - let v_W3105 = { - let __t1719 = v_W3104.clone(); - rt::apply_direct(interp, "shen.", &[__t1719])? + let v_W2761 = { + let __t1721 = v_W2760.clone(); + rt::apply_direct(interp, "shen.", &[__t1721])? }; { - let __t1724 = { - let __t1720 = v_W3105.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1720])? + let __t1726 = { + let __t1722 = v_W2761.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1722])? }; - if rt::is_truthy(interp, &__t1724)? { + if rt::is_truthy(interp, &__t1726)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3106 = { - let __t1721 = v_W3105.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1721])? + let v_W2762 = { + let __t1723 = v_W2761.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1723])? }; { - let __t1722 = v_W3106.clone(); - let __t1723 = + let __t1724 = v_W2762.clone(); + let __t1725 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t1722, __t1723], + &[__t1724, __t1725], )? } } @@ -10546,42 +10555,42 @@ pub fn aot_shen_x2e__x3c_whitespaces_x3e_( } }; { - let __t1727 = { - let __t1726 = v_W3102.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1726])? + let __t1729 = { + let __t1728 = v_W2758.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1728])? }; - if match rt::is_truthy(interp, &__t1727) { + if match rt::is_truthy(interp, &__t1729) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3107 = { - let v_W3108 = { - let __t1728 = v_V3101.clone(); - rt::apply_direct(interp, "shen.", &[__t1728])? + let v_W2763 = { + let v_W2764 = { + let __t1730 = v_V2757.clone(); + rt::apply_direct(interp, "shen.", &[__t1730])? }; { - let __t1733 = { - let __t1729 = v_W3108.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1729])? + let __t1735 = { + let __t1731 = v_W2764.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1731])? }; - if rt::is_truthy(interp, &__t1733)? { + if rt::is_truthy(interp, &__t1735)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3109 = { - let __t1730 = v_W3108.clone(); - rt::apply_direct(interp, "shen.in->", &[__t1730])? + let v_W2765 = { + let __t1732 = v_W2764.clone(); + rt::apply_direct(interp, "shen.in->", &[__t1732])? }; { - let __t1731 = v_W3109.clone(); - let __t1732 = Value::sym(interp.intern("shen.skip")); + let __t1733 = v_W2765.clone(); + let __t1734 = Value::sym(interp.intern("shen.skip")); rt::apply_direct( interp, "shen.comb", - &[__t1731, __t1732], + &[__t1733, __t1734], )? } } @@ -10589,22 +10598,22 @@ pub fn aot_shen_x2e__x3c_whitespaces_x3e_( } }; { - let __t1735 = { - let __t1734 = v_W3107.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1734])? + let __t1737 = { + let __t1736 = v_W2763.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1736])? }; - if match rt::is_truthy(interp, &__t1735) { + if match rt::is_truthy(interp, &__t1737) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3107.clone()); + break Ok(v_W2763.clone()); } } } } else { - break Ok(v_W3102.clone()); + break Ok(v_W2758.clone()); } } } @@ -10625,36 +10634,36 @@ pub fn aot_shen_x2e__x3c_whitespace_x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3110 = args[0].clone(); + let mut v_V2766 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3111 = { - let __t1743 = { - let __t1736 = v_V3110.clone(); - rt::is_cons(&__t1736) + let v_W2767 = { + let __t1745 = { + let __t1738 = v_V2766.clone(); + rt::is_cons(&__t1738) }; - if rt::is_truthy(interp, &__t1743)? { + if rt::is_truthy(interp, &__t1745)? { { - let v_W3112 = { - let __t1737 = v_V3110.clone(); - rt::apply_direct(interp, "head", &[__t1737])? + let v_W2768 = { + let __t1739 = v_V2766.clone(); + rt::apply_direct(interp, "head", &[__t1739])? }; { - let v_W3113 = { - let __t1738 = v_V3110.clone(); - rt::apply_direct(interp, "tail", &[__t1738])? + let v_W2769 = { + let __t1740 = v_V2766.clone(); + rt::apply_direct(interp, "tail", &[__t1740])? }; { - let __t1742 = { - let __t1739 = v_W3112.clone(); - rt::apply_direct(interp, "shen.whitespace?", &[__t1739])? + let __t1744 = { + let __t1741 = v_W2768.clone(); + rt::apply_direct(interp, "shen.whitespace?", &[__t1741])? }; - if rt::is_truthy(interp, &__t1742)? { + if rt::is_truthy(interp, &__t1744)? { { - let __t1740 = v_W3113.clone(); - let __t1741 = Value::sym(interp.intern("shen.skip")); - rt::apply_direct(interp, "shen.comb", &[__t1740, __t1741])? + let __t1742 = v_W2769.clone(); + let __t1743 = Value::sym(interp.intern("shen.skip")); + rt::apply_direct(interp, "shen.comb", &[__t1742, __t1743])? } } else { { @@ -10671,17 +10680,17 @@ pub fn aot_shen_x2e__x3c_whitespace_x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t1745 = { - let __t1744 = v_W3111.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t1744])? + let __t1747 = { + let __t1746 = v_W2767.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t1746])? }; - if match rt::is_truthy(interp, &__t1745) { + if match rt::is_truthy(interp, &__t1747) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3111.clone()); + break Ok(v_W2767.clone()); } } } @@ -10702,60 +10711,60 @@ pub fn aot_shen_x2e_whitespace_x3f_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3116 = args[0].clone(); + let mut v_V2772 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1758 = { - let __t1756 = Value::int(32i64); - let __t1757 = v_V3116.clone(); - rt::eq(&__t1756, &__t1757) + let __t1760 = { + let __t1758 = Value::int(32i64); + let __t1759 = v_V2772.clone(); + rt::eq(&__t1758, &__t1759) }; - if match rt::is_truthy(interp, &__t1758) { + if match rt::is_truthy(interp, &__t1760) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1755 = { - let __t1753 = Value::int(13i64); - let __t1754 = v_V3116.clone(); - rt::eq(&__t1753, &__t1754) + let __t1757 = { + let __t1755 = Value::int(13i64); + let __t1756 = v_V2772.clone(); + rt::eq(&__t1755, &__t1756) }; - if match rt::is_truthy(interp, &__t1755) { + if match rt::is_truthy(interp, &__t1757) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1752 = { - let __t1750 = Value::int(10i64); - let __t1751 = v_V3116.clone(); - rt::eq(&__t1750, &__t1751) + let __t1754 = { + let __t1752 = Value::int(10i64); + let __t1753 = v_V2772.clone(); + rt::eq(&__t1752, &__t1753) }; - if match rt::is_truthy(interp, &__t1752) { + if match rt::is_truthy(interp, &__t1754) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1749 = { - let __t1747 = Value::int(9i64); - let __t1748 = v_V3116.clone(); - rt::eq(&__t1747, &__t1748) + let __t1751 = { + let __t1749 = Value::int(9i64); + let __t1750 = v_V2772.clone(); + rt::eq(&__t1749, &__t1750) }; - if match rt::is_truthy(interp, &__t1749) { + if match rt::is_truthy(interp, &__t1751) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1746 = Value::bool(true); - if match rt::is_truthy(interp, &__t1746) { + let __t1748 = Value::bool(true); + if match rt::is_truthy(interp, &__t1748) { Ok(b) => b, Err(e) => break Err(e), } { @@ -10794,132 +10803,132 @@ pub fn aot_shen_x2e_unpackage_x26_macroexpand( ))); } #[allow(unused_mut)] - let mut v_V3117 = args[0].clone(); + let mut v_V2773 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1789 = { - let __t1787 = Value::nil(); - let __t1788 = v_V3117.clone(); - rt::eq(&__t1787, &__t1788) + let __t1791 = { + let __t1789 = Value::nil(); + let __t1790 = v_V2773.clone(); + rt::eq(&__t1789, &__t1790) }; - if match rt::is_truthy(interp, &__t1789) { + if match rt::is_truthy(interp, &__t1791) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t1786 = { - let __t1778 = { - let __t1775 = v_V3117.clone(); - rt::is_cons(&__t1775) + let __t1788 = { + let __t1780 = { + let __t1777 = v_V2773.clone(); + rt::is_cons(&__t1777) }; - if !rt::is_truthy(interp, &__t1778)? { + if !rt::is_truthy(interp, &__t1780)? { Value::bool(false) } else { - let __t1779 = { - let __t1777 = { - let __t1776 = v_V3117.clone(); - rt::hd(&__t1776)? + let __t1781 = { + let __t1779 = { + let __t1778 = v_V2773.clone(); + rt::hd(&__t1778)? }; - rt::apply_direct(interp, "shen.packaged?", &[__t1777])? + rt::apply_direct(interp, "shen.packaged?", &[__t1779])? }; - Value::bool(rt::is_truthy(interp, &__t1779)?) + Value::bool(rt::is_truthy(interp, &__t1781)?) } }; - if match rt::is_truthy(interp, &__t1786) { + if match rt::is_truthy(interp, &__t1788) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1785 = { - let __t1782 = { - let __t1781 = { - let __t1780 = v_V3117.clone(); - rt::hd(&__t1780)? + let __t1787 = { + let __t1784 = { + let __t1783 = { + let __t1782 = v_V2773.clone(); + rt::hd(&__t1782)? }; - rt::apply_direct(interp, "shen.unpackage", &[__t1781])? + rt::apply_direct(interp, "shen.unpackage", &[__t1783])? }; - let __t1784 = { - let __t1783 = v_V3117.clone(); - rt::tl(&__t1783)? + let __t1786 = { + let __t1785 = v_V2773.clone(); + rt::tl(&__t1785)? }; - rt::apply_direct(interp, "append", &[__t1782, __t1784])? + rt::apply_direct(interp, "append", &[__t1784, __t1786])? }; - v_V3117 = __t1785; + v_V2773 = __t1787; continue; } } else { { - let __t1774 = { - let __t1761 = v_V3117.clone(); - rt::is_cons(&__t1761) + let __t1776 = { + let __t1763 = v_V2773.clone(); + rt::is_cons(&__t1763) }; - if match rt::is_truthy(interp, &__t1774) { + if match rt::is_truthy(interp, &__t1776) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3118 = { - let __t1763 = { - let __t1762 = v_V3117.clone(); - rt::hd(&__t1762)? + let v_W2774 = { + let __t1765 = { + let __t1764 = v_V2773.clone(); + rt::hd(&__t1764)? }; - rt::apply_direct(interp, "macroexpand", &[__t1763])? + rt::apply_direct(interp, "macroexpand", &[__t1765])? }; { - let __t1765 = { - let __t1764 = v_W3118.clone(); - rt::apply_direct(interp, "shen.packaged?", &[__t1764])? + let __t1767 = { + let __t1766 = v_W2774.clone(); + rt::apply_direct(interp, "shen.packaged?", &[__t1766])? }; - if match rt::is_truthy(interp, &__t1765) { + if match rt::is_truthy(interp, &__t1767) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1769 = { - let __t1766 = v_W3118.clone(); - let __t1768 = { - let __t1767 = v_V3117.clone(); - rt::tl(&__t1767)? + let __t1771 = { + let __t1768 = v_W2774.clone(); + let __t1770 = { + let __t1769 = v_V2773.clone(); + rt::tl(&__t1769)? }; - rt::cons(&__t1766, &__t1768) + rt::cons(&__t1768, &__t1770) }; - v_V3117 = __t1769; + v_V2773 = __t1771; continue; } } else { break Ok({ - let __t1770 = v_W3118.clone(); - let __t1773 = { - let __t1772 = { - let __t1771 = v_V3117.clone(); - rt::tl(&__t1771)? + let __t1772 = v_W2774.clone(); + let __t1775 = { + let __t1774 = { + let __t1773 = v_V2773.clone(); + rt::tl(&__t1773)? }; rt::apply_direct( interp, "shen.unpackage¯oexpand", - &[__t1772], + &[__t1774], )? }; - rt::cons(&__t1770, &__t1773) + rt::cons(&__t1772, &__t1775) }); } } } } else { { - let __t1760 = Value::bool(true); - if match rt::is_truthy(interp, &__t1760) { + let __t1762 = Value::bool(true); + if match rt::is_truthy(interp, &__t1762) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1759 = Value::sym( - interp.intern("shen.unpackage¯oexpand"), + let __t1761 = Value::str( + "partial function shen.unpackage¯oexpand", ); - rt::apply_direct(interp, "shen.f-error", &[__t1759])? + rt::apply_direct(interp, "simple-error", &[__t1761])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -10955,69 +10964,69 @@ pub fn aot_shen_x2e_packaged_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3121 = args[0].clone(); + let mut v_V2777 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1806 = { - let __t1804 = { - let __t1791 = v_V3121.clone(); - rt::is_cons(&__t1791) + let __t1808 = { + let __t1806 = { + let __t1793 = v_V2777.clone(); + rt::is_cons(&__t1793) }; - if !rt::is_truthy(interp, &__t1804)? { + if !rt::is_truthy(interp, &__t1806)? { Value::bool(false) } else { - let __t1805 = { - let __t1802 = { - let __t1792 = Value::sym(interp.intern("package")); - let __t1794 = { - let __t1793 = v_V3121.clone(); - rt::hd(&__t1793)? - }; - rt::eq(&__t1792, &__t1794) + let __t1807 = { + let __t1804 = { + let __t1794 = Value::sym(interp.intern("package")); + let __t1796 = { + let __t1795 = v_V2777.clone(); + rt::hd(&__t1795)? + }; + rt::eq(&__t1794, &__t1796) }; - if !rt::is_truthy(interp, &__t1802)? { + if !rt::is_truthy(interp, &__t1804)? { Value::bool(false) } else { - let __t1803 = { - let __t1800 = { - let __t1796 = { - let __t1795 = v_V3121.clone(); - rt::tl(&__t1795)? + let __t1805 = { + let __t1802 = { + let __t1798 = { + let __t1797 = v_V2777.clone(); + rt::tl(&__t1797)? }; - rt::is_cons(&__t1796) + rt::is_cons(&__t1798) }; - if !rt::is_truthy(interp, &__t1800)? { + if !rt::is_truthy(interp, &__t1802)? { Value::bool(false) } else { - let __t1801 = { - let __t1799 = { - let __t1798 = { - let __t1797 = v_V3121.clone(); - rt::tl(&__t1797)? + let __t1803 = { + let __t1801 = { + let __t1800 = { + let __t1799 = v_V2777.clone(); + rt::tl(&__t1799)? }; - rt::tl(&__t1798)? + rt::tl(&__t1800)? }; - rt::is_cons(&__t1799) + rt::is_cons(&__t1801) }; - Value::bool(rt::is_truthy(interp, &__t1801)?) + Value::bool(rt::is_truthy(interp, &__t1803)?) } }; - Value::bool(rt::is_truthy(interp, &__t1803)?) + Value::bool(rt::is_truthy(interp, &__t1805)?) } }; - Value::bool(rt::is_truthy(interp, &__t1805)?) + Value::bool(rt::is_truthy(interp, &__t1807)?) } }; - if match rt::is_truthy(interp, &__t1806) { + if match rt::is_truthy(interp, &__t1808) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1790 = Value::bool(true); - if match rt::is_truthy(interp, &__t1790) { + let __t1792 = Value::bool(true); + if match rt::is_truthy(interp, &__t1792) { Ok(b) => b, Err(e) => break Err(e), } { @@ -11045,248 +11054,248 @@ pub fn aot_shen_x2e_unpackage(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3124 = args[0].clone(); + let mut v_V2780 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1874 = { - let __t1869 = { - let __t1850 = v_V3124.clone(); - rt::is_cons(&__t1850) + let __t1876 = { + let __t1871 = { + let __t1852 = v_V2780.clone(); + rt::is_cons(&__t1852) }; - if !rt::is_truthy(interp, &__t1869)? { + if !rt::is_truthy(interp, &__t1871)? { Value::bool(false) } else { - let __t1870 = { - let __t1867 = { - let __t1851 = Value::sym(interp.intern("package")); - let __t1853 = { - let __t1852 = v_V3124.clone(); - rt::hd(&__t1852)? - }; - rt::eq(&__t1851, &__t1853) + let __t1872 = { + let __t1869 = { + let __t1853 = Value::sym(interp.intern("package")); + let __t1855 = { + let __t1854 = v_V2780.clone(); + rt::hd(&__t1854)? + }; + rt::eq(&__t1853, &__t1855) }; - if !rt::is_truthy(interp, &__t1867)? { + if !rt::is_truthy(interp, &__t1869)? { Value::bool(false) } else { - let __t1868 = { - let __t1865 = { - let __t1855 = { - let __t1854 = v_V3124.clone(); - rt::tl(&__t1854)? + let __t1870 = { + let __t1867 = { + let __t1857 = { + let __t1856 = v_V2780.clone(); + rt::tl(&__t1856)? }; - rt::is_cons(&__t1855) + rt::is_cons(&__t1857) }; - if !rt::is_truthy(interp, &__t1865)? { + if !rt::is_truthy(interp, &__t1867)? { Value::bool(false) } else { - let __t1866 = { - let __t1863 = { - let __t1856 = Value::sym(interp.intern("null")); - let __t1859 = { - let __t1858 = { - let __t1857 = v_V3124.clone(); - rt::tl(&__t1857)? + let __t1868 = { + let __t1865 = { + let __t1858 = Value::sym(interp.intern("null")); + let __t1861 = { + let __t1860 = { + let __t1859 = v_V2780.clone(); + rt::tl(&__t1859)? }; - rt::hd(&__t1858)? + rt::hd(&__t1860)? }; - rt::eq(&__t1856, &__t1859) + rt::eq(&__t1858, &__t1861) }; - if !rt::is_truthy(interp, &__t1863)? { + if !rt::is_truthy(interp, &__t1865)? { Value::bool(false) } else { - let __t1864 = { - let __t1862 = { - let __t1861 = { - let __t1860 = v_V3124.clone(); - rt::tl(&__t1860)? + let __t1866 = { + let __t1864 = { + let __t1863 = { + let __t1862 = v_V2780.clone(); + rt::tl(&__t1862)? }; - rt::tl(&__t1861)? + rt::tl(&__t1863)? }; - rt::is_cons(&__t1862) + rt::is_cons(&__t1864) }; - Value::bool(rt::is_truthy(interp, &__t1864)?) + Value::bool(rt::is_truthy(interp, &__t1866)?) } }; - Value::bool(rt::is_truthy(interp, &__t1866)?) + Value::bool(rt::is_truthy(interp, &__t1868)?) } }; - Value::bool(rt::is_truthy(interp, &__t1868)?) + Value::bool(rt::is_truthy(interp, &__t1870)?) } }; - Value::bool(rt::is_truthy(interp, &__t1870)?) + Value::bool(rt::is_truthy(interp, &__t1872)?) } }; - if match rt::is_truthy(interp, &__t1874) { + if match rt::is_truthy(interp, &__t1876) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1873 = { - let __t1872 = { - let __t1871 = v_V3124.clone(); - rt::tl(&__t1871)? + let __t1875 = { + let __t1874 = { + let __t1873 = v_V2780.clone(); + rt::tl(&__t1873)? }; - rt::tl(&__t1872)? + rt::tl(&__t1874)? }; - rt::tl(&__t1873)? + rt::tl(&__t1875)? }); } else { { - let __t1849 = { - let __t1822 = { - let __t1809 = v_V3124.clone(); - rt::is_cons(&__t1809) + let __t1851 = { + let __t1824 = { + let __t1811 = v_V2780.clone(); + rt::is_cons(&__t1811) }; - if !rt::is_truthy(interp, &__t1822)? { + if !rt::is_truthy(interp, &__t1824)? { Value::bool(false) } else { - let __t1823 = { - let __t1820 = { - let __t1810 = Value::sym(interp.intern("package")); - let __t1812 = { - let __t1811 = v_V3124.clone(); - rt::hd(&__t1811)? + let __t1825 = { + let __t1822 = { + let __t1812 = Value::sym(interp.intern("package")); + let __t1814 = { + let __t1813 = v_V2780.clone(); + rt::hd(&__t1813)? }; - rt::eq(&__t1810, &__t1812) + rt::eq(&__t1812, &__t1814) }; - if !rt::is_truthy(interp, &__t1820)? { + if !rt::is_truthy(interp, &__t1822)? { Value::bool(false) } else { - let __t1821 = { - let __t1818 = { - let __t1814 = { - let __t1813 = v_V3124.clone(); - rt::tl(&__t1813)? + let __t1823 = { + let __t1820 = { + let __t1816 = { + let __t1815 = v_V2780.clone(); + rt::tl(&__t1815)? }; - rt::is_cons(&__t1814) + rt::is_cons(&__t1816) }; - if !rt::is_truthy(interp, &__t1818)? { + if !rt::is_truthy(interp, &__t1820)? { Value::bool(false) } else { - let __t1819 = { - let __t1817 = { - let __t1816 = { - let __t1815 = v_V3124.clone(); - rt::tl(&__t1815)? + let __t1821 = { + let __t1819 = { + let __t1818 = { + let __t1817 = v_V2780.clone(); + rt::tl(&__t1817)? }; - rt::tl(&__t1816)? + rt::tl(&__t1818)? }; - rt::is_cons(&__t1817) + rt::is_cons(&__t1819) }; - Value::bool(rt::is_truthy(interp, &__t1819)?) + Value::bool(rt::is_truthy(interp, &__t1821)?) } }; - Value::bool(rt::is_truthy(interp, &__t1821)?) + Value::bool(rt::is_truthy(interp, &__t1823)?) } }; - Value::bool(rt::is_truthy(interp, &__t1823)?) + Value::bool(rt::is_truthy(interp, &__t1825)?) } }; - if match rt::is_truthy(interp, &__t1849) { + if match rt::is_truthy(interp, &__t1851) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3125 = { - let __t1827 = { - let __t1826 = { - let __t1825 = { - let __t1824 = v_V3124.clone(); - rt::tl(&__t1824)? + let v_W2781 = { + let __t1829 = { + let __t1828 = { + let __t1827 = { + let __t1826 = v_V2780.clone(); + rt::tl(&__t1826)? }; - rt::tl(&__t1825)? + rt::tl(&__t1827)? }; - rt::hd(&__t1826)? + rt::hd(&__t1828)? }; - rt::apply_direct(interp, "eval", &[__t1827])? + rt::apply_direct(interp, "eval", &[__t1829])? }; { - let v_W3126 = { - let __t1831 = { - let __t1830 = { - let __t1829 = { - let __t1828 = v_V3124.clone(); - rt::tl(&__t1828)? + let v_W2782 = { + let __t1833 = { + let __t1832 = { + let __t1831 = { + let __t1830 = v_V2780.clone(); + rt::tl(&__t1830)? }; - rt::hd(&__t1829)? + rt::hd(&__t1831)? }; - rt::apply_direct(interp, "str", &[__t1830])? + rt::apply_direct(interp, "str", &[__t1832])? }; - let __t1832 = v_W3125.clone(); - let __t1836 = { - let __t1835 = { - let __t1834 = { - let __t1833 = v_V3124.clone(); - rt::tl(&__t1833)? + let __t1834 = v_W2781.clone(); + let __t1838 = { + let __t1837 = { + let __t1836 = { + let __t1835 = v_V2780.clone(); + rt::tl(&__t1835)? }; - rt::tl(&__t1834)? + rt::tl(&__t1836)? }; - rt::tl(&__t1835)? + rt::tl(&__t1837)? }; rt::apply_direct( interp, "shen.package-symbols", - &[__t1831, __t1832, __t1836], + &[__t1833, __t1834, __t1838], )? }; { - let v_W3127 = { - let __t1839 = { - let __t1838 = { - let __t1837 = v_V3124.clone(); - rt::tl(&__t1837)? + let v_W2783 = { + let __t1841 = { + let __t1840 = { + let __t1839 = v_V2780.clone(); + rt::tl(&__t1839)? }; - rt::hd(&__t1838)? + rt::hd(&__t1840)? }; - let __t1840 = v_W3125.clone(); + let __t1842 = v_W2781.clone(); rt::apply_direct( interp, "shen.record-external", - &[__t1839, __t1840], + &[__t1841, __t1842], )? }; { - let v_W3128 = { - let __t1843 = { - let __t1842 = { - let __t1841 = v_V3124.clone(); - rt::tl(&__t1841)? + let v_W2784 = { + let __t1845 = { + let __t1844 = { + let __t1843 = v_V2780.clone(); + rt::tl(&__t1843)? }; - rt::hd(&__t1842)? + rt::hd(&__t1844)? }; - let __t1844 = v_W3125.clone(); - let __t1848 = { - let __t1847 = { - let __t1846 = { - let __t1845 = v_V3124.clone(); - rt::tl(&__t1845)? + let __t1846 = v_W2781.clone(); + let __t1850 = { + let __t1849 = { + let __t1848 = { + let __t1847 = v_V2780.clone(); + rt::tl(&__t1847)? }; - rt::tl(&__t1846)? + rt::tl(&__t1848)? }; - rt::tl(&__t1847)? + rt::tl(&__t1849)? }; rt::apply_direct( interp, "shen.record-internal", - &[__t1843, __t1844, __t1848], + &[__t1845, __t1846, __t1850], )? }; - break Ok(v_W3126.clone()); + break Ok(v_W2782.clone()); } } } } } else { { - let __t1808 = Value::bool(true); - if match rt::is_truthy(interp, &__t1808) { + let __t1810 = Value::bool(true); + if match rt::is_truthy(interp, &__t1810) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1807 = Value::sym(interp.intern("shen.unpackage")); - rt::apply_direct(interp, "shen.f-error", &[__t1807])? + let __t1809 = Value::str("partial function shen.unpackage"); + rt::apply_direct(interp, "simple-error", &[__t1809])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -11313,23 +11322,23 @@ pub fn aot_shen_x2e_record_x2d_internal(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3129 = args[0].clone(); + let mut v_V2785 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3130 = args[1].clone(); + let mut v_V2786 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3131 = args[2].clone(); + let mut v_V2787 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3132 = match (|| -> ShenResult { + let v_W2788 = match (|| -> ShenResult { Ok({ - let __t1875 = v_V3129.clone(); - let __t1876 = Value::sym(interp.intern("shen.internal-symbols")); - let __t1878 = { - let __t1877 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1877])? + let __t1877 = v_V2785.clone(); + let __t1878 = Value::sym(interp.intern("shen.internal-symbols")); + let __t1880 = { + let __t1879 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t1879])? }; - rt::apply_direct(interp, "get", &[__t1875, __t1876, __t1878])? + rt::apply_direct(interp, "get", &[__t1877, __t1878, __t1880])? }) })() { Ok(v) => v, @@ -11339,7 +11348,7 @@ pub fn aot_shen_x2e_record_x2d_internal(interp: &mut Interp, args: &[Value]) -> "", 1, move |interp, args| { - let v_Z3133 = args[0].clone(); + let v_Z2789 = args[0].clone(); Ok(Value::nil()) }, Vec::new(), @@ -11351,32 +11360,32 @@ pub fn aot_shen_x2e_record_x2d_internal(interp: &mut Interp, args: &[Value]) -> } }; { - let v_W3134 = { - let __t1880 = { - let __t1879 = v_V3129.clone(); - rt::apply_direct(interp, "str", &[__t1879])? + let v_W2790 = { + let __t1882 = { + let __t1881 = v_V2785.clone(); + rt::apply_direct(interp, "str", &[__t1881])? }; - let __t1881 = v_V3130.clone(); - let __t1882 = v_V3131.clone(); + let __t1883 = v_V2786.clone(); + let __t1884 = v_V2787.clone(); rt::apply_direct( interp, "shen.internal-symbols", - &[__t1880, __t1881, __t1882], + &[__t1882, __t1883, __t1884], )? }; break Ok({ - let __t1883 = v_V3129.clone(); - let __t1884 = Value::sym(interp.intern("shen.internal-symbols")); - let __t1887 = { - let __t1885 = v_W3134.clone(); - let __t1886 = v_W3132.clone(); - rt::apply_direct(interp, "union", &[__t1885, __t1886])? - }; + let __t1885 = v_V2785.clone(); + let __t1886 = Value::sym(interp.intern("shen.internal-symbols")); let __t1889 = { - let __t1888 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1888])? + let __t1887 = v_W2790.clone(); + let __t1888 = v_W2788.clone(); + rt::apply_direct(interp, "union", &[__t1887, __t1888])? }; - rt::apply_direct(interp, "put", &[__t1883, __t1884, __t1887, __t1889])? + let __t1891 = { + let __t1890 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t1890])? + }; + rt::apply_direct(interp, "put", &[__t1885, __t1886, __t1889, __t1891])? }); } } @@ -11397,80 +11406,80 @@ pub fn aot_shen_x2e_internal_x2d_symbols(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3141 = args[0].clone(); + let mut v_V2797 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3142 = args[1].clone(); + let mut v_V2798 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3143 = args[2].clone(); + let mut v_V2799 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1910 = { - let __t1899 = v_V3143.clone(); - rt::is_cons(&__t1899) + let __t1912 = { + let __t1901 = v_V2799.clone(); + rt::is_cons(&__t1901) }; - if match rt::is_truthy(interp, &__t1910) { + if match rt::is_truthy(interp, &__t1912) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1904 = { - let __t1900 = v_V3141.clone(); - let __t1901 = v_V3142.clone(); - let __t1903 = { - let __t1902 = v_V3143.clone(); - rt::hd(&__t1902)? + let __t1906 = { + let __t1902 = v_V2797.clone(); + let __t1903 = v_V2798.clone(); + let __t1905 = { + let __t1904 = v_V2799.clone(); + rt::hd(&__t1904)? }; rt::apply_direct( interp, "shen.internal-symbols", - &[__t1900, __t1901, __t1903], + &[__t1902, __t1903, __t1905], )? }; - let __t1909 = { - let __t1905 = v_V3141.clone(); - let __t1906 = v_V3142.clone(); - let __t1908 = { - let __t1907 = v_V3143.clone(); - rt::tl(&__t1907)? + let __t1911 = { + let __t1907 = v_V2797.clone(); + let __t1908 = v_V2798.clone(); + let __t1910 = { + let __t1909 = v_V2799.clone(); + rt::tl(&__t1909)? }; rt::apply_direct( interp, "shen.internal-symbols", - &[__t1905, __t1906, __t1908], + &[__t1907, __t1908, __t1910], )? }; - rt::apply_direct(interp, "union", &[__t1904, __t1909])? + rt::apply_direct(interp, "union", &[__t1906, __t1911])? }); } else { { - let __t1898 = { - let __t1891 = v_V3143.clone(); - let __t1892 = v_V3141.clone(); - let __t1893 = v_V3142.clone(); - rt::apply_direct(interp, "shen.internal?", &[__t1891, __t1892, __t1893])? + let __t1900 = { + let __t1893 = v_V2799.clone(); + let __t1894 = v_V2797.clone(); + let __t1895 = v_V2798.clone(); + rt::apply_direct(interp, "shen.internal?", &[__t1893, __t1894, __t1895])? }; - if match rt::is_truthy(interp, &__t1898) { + if match rt::is_truthy(interp, &__t1900) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1896 = { - let __t1894 = v_V3141.clone(); - let __t1895 = v_V3143.clone(); + let __t1898 = { + let __t1896 = v_V2797.clone(); + let __t1897 = v_V2799.clone(); rt::apply_direct( interp, "shen.intern-in-package", - &[__t1894, __t1895], + &[__t1896, __t1897], )? }; - let __t1897 = Value::nil(); - rt::cons(&__t1896, &__t1897) + let __t1899 = Value::nil(); + rt::cons(&__t1898, &__t1899) }); } else { { - let __t1890 = Value::bool(true); - if match rt::is_truthy(interp, &__t1890) { + let __t1892 = Value::bool(true); + if match rt::is_truthy(interp, &__t1892) { Ok(b) => b, Err(e) => break Err(e), } { @@ -11504,21 +11513,21 @@ pub fn aot_shen_x2e_record_x2d_external(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3144 = args[0].clone(); + let mut v_V2800 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3145 = args[1].clone(); + let mut v_V2801 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3146 = match (|| -> ShenResult { + let v_W2802 = match (|| -> ShenResult { Ok({ - let __t1911 = v_V3144.clone(); - let __t1912 = Value::sym(interp.intern("shen.external-symbols")); - let __t1914 = { - let __t1913 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1913])? + let __t1913 = v_V2800.clone(); + let __t1914 = Value::sym(interp.intern("shen.external-symbols")); + let __t1916 = { + let __t1915 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t1915])? }; - rt::apply_direct(interp, "get", &[__t1911, __t1912, __t1914])? + rt::apply_direct(interp, "get", &[__t1913, __t1914, __t1916])? }) })() { Ok(v) => v, @@ -11528,7 +11537,7 @@ pub fn aot_shen_x2e_record_x2d_external(interp: &mut Interp, args: &[Value]) -> "", 1, move |interp, args| { - let v_Z3147 = args[0].clone(); + let v_Z2803 = args[0].clone(); Ok(Value::nil()) }, Vec::new(), @@ -11540,18 +11549,18 @@ pub fn aot_shen_x2e_record_x2d_external(interp: &mut Interp, args: &[Value]) -> } }; break Ok({ - let __t1915 = v_V3144.clone(); - let __t1916 = Value::sym(interp.intern("shen.external-symbols")); - let __t1919 = { - let __t1917 = v_V3145.clone(); - let __t1918 = v_W3146.clone(); - rt::apply_direct(interp, "union", &[__t1917, __t1918])? - }; + let __t1917 = v_V2800.clone(); + let __t1918 = Value::sym(interp.intern("shen.external-symbols")); let __t1921 = { - let __t1920 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1920])? + let __t1919 = v_V2801.clone(); + let __t1920 = v_W2802.clone(); + rt::apply_direct(interp, "union", &[__t1919, __t1920])? + }; + let __t1923 = { + let __t1922 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t1922])? }; - rt::apply_direct(interp, "put", &[__t1915, __t1916, __t1919, __t1921])? + rt::apply_direct(interp, "put", &[__t1917, __t1918, __t1921, __t1923])? }); } } @@ -11571,74 +11580,74 @@ pub fn aot_shen_x2e_package_x2d_symbols(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3152 = args[0].clone(); + let mut v_V2808 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3153 = args[1].clone(); + let mut v_V2809 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3154 = args[2].clone(); + let mut v_V2810 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1935 = { - let __t1929 = v_V3154.clone(); - rt::is_cons(&__t1929) + let __t1937 = { + let __t1931 = v_V2810.clone(); + rt::is_cons(&__t1931) }; - if match rt::is_truthy(interp, &__t1935) { + if match rt::is_truthy(interp, &__t1937) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1933 = { - let v_V3152 = v_V3152.clone(); - let v_V3153 = v_V3153.clone(); + let __t1935 = { + let v_V2808 = v_V2808.clone(); + let v_V2809 = v_V2809.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3155 = args[0].clone(); + let v_Z2811 = args[0].clone(); Ok({ - let __t1930 = v_V3152.clone(); - let __t1931 = v_V3153.clone(); - let __t1932 = v_Z3155.clone(); + let __t1932 = v_V2808.clone(); + let __t1933 = v_V2809.clone(); + let __t1934 = v_Z2811.clone(); rt::apply_direct( interp, "shen.package-symbols", - &[__t1930, __t1931, __t1932], + &[__t1932, __t1933, __t1934], )? }) }, - vec![v_V3152, v_V3153], + vec![v_V2808, v_V2809], interp, ) }; - let __t1934 = v_V3154.clone(); - rt::apply_direct(interp, "map", &[__t1933, __t1934])? + let __t1936 = v_V2810.clone(); + rt::apply_direct(interp, "map", &[__t1935, __t1936])? }); } else { { - let __t1928 = { - let __t1923 = v_V3154.clone(); - let __t1924 = v_V3152.clone(); - let __t1925 = v_V3153.clone(); - rt::apply_direct(interp, "shen.internal?", &[__t1923, __t1924, __t1925])? + let __t1930 = { + let __t1925 = v_V2810.clone(); + let __t1926 = v_V2808.clone(); + let __t1927 = v_V2809.clone(); + rt::apply_direct(interp, "shen.internal?", &[__t1925, __t1926, __t1927])? }; - if match rt::is_truthy(interp, &__t1928) { + if match rt::is_truthy(interp, &__t1930) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1926 = v_V3152.clone(); - let __t1927 = v_V3154.clone(); - rt::apply_direct(interp, "shen.intern-in-package", &[__t1926, __t1927])? + let __t1928 = v_V2808.clone(); + let __t1929 = v_V2810.clone(); + rt::apply_direct(interp, "shen.intern-in-package", &[__t1928, __t1929])? }); } else { { - let __t1922 = Value::bool(true); - if match rt::is_truthy(interp, &__t1922) { + let __t1924 = Value::bool(true); + if match rt::is_truthy(interp, &__t1924) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3154.clone()); + break Ok(v_V2810.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -11667,25 +11676,25 @@ pub fn aot_shen_x2e_intern_x2d_in_x2d_package( ))); } #[allow(unused_mut)] - let mut v_V3156 = args[0].clone(); + let mut v_V2812 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3157 = args[1].clone(); + let mut v_V2813 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1941 = { - let __t1936 = v_V3156.clone(); - let __t1940 = { - let __t1937 = Value::str("."); - let __t1939 = { - let __t1938 = v_V3157.clone(); - rt::apply_direct(interp, "str", &[__t1938])? + let __t1943 = { + let __t1938 = v_V2812.clone(); + let __t1942 = { + let __t1939 = Value::str("."); + let __t1941 = { + let __t1940 = v_V2813.clone(); + rt::apply_direct(interp, "str", &[__t1940])? }; - rt::apply_direct(interp, "@s", &[__t1937, __t1939])? + rt::apply_direct(interp, "@s", &[__t1939, __t1941])? }; - rt::apply_direct(interp, "@s", &[__t1936, __t1940])? + rt::apply_direct(interp, "@s", &[__t1938, __t1942])? }; - rt::apply_direct(interp, "intern", &[__t1941])? + rt::apply_direct(interp, "intern", &[__t1943])? }); } } @@ -11711,129 +11720,129 @@ pub fn aot_shen_x2e_internal_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3158 = args[0].clone(); + let mut v_V2814 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3159 = args[1].clone(); + let mut v_V2815 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3160 = args[2].clone(); + let mut v_V2816 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1945 = { - let __t1944 = { - let __t1942 = v_V3158.clone(); - let __t1943 = v_V3160.clone(); - rt::apply_direct(interp, "element?", &[__t1942, __t1943])? + let __t1947 = { + let __t1946 = { + let __t1944 = v_V2814.clone(); + let __t1945 = v_V2816.clone(); + rt::apply_direct(interp, "element?", &[__t1944, __t1945])? }; - rt::apply_direct(interp, "not", &[__t1944])? + rt::apply_direct(interp, "not", &[__t1946])? }; - if !match rt::is_truthy(interp, &__t1945) { + if !match rt::is_truthy(interp, &__t1947) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1948 = { - let __t1947 = { - let __t1946 = v_V3158.clone(); - rt::apply_direct(interp, "shen.sng?", &[__t1946])? + let __t1950 = { + let __t1949 = { + let __t1948 = v_V2814.clone(); + rt::apply_direct(interp, "shen.sng?", &[__t1948])? }; - rt::apply_direct(interp, "not", &[__t1947])? + rt::apply_direct(interp, "not", &[__t1949])? }; - if !match rt::is_truthy(interp, &__t1948) { + if !match rt::is_truthy(interp, &__t1950) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1951 = { - let __t1950 = { - let __t1949 = v_V3158.clone(); - rt::apply_direct(interp, "shen.dbl?", &[__t1949])? + let __t1953 = { + let __t1952 = { + let __t1951 = v_V2814.clone(); + rt::apply_direct(interp, "shen.dbl?", &[__t1951])? }; - rt::apply_direct(interp, "not", &[__t1950])? + rt::apply_direct(interp, "not", &[__t1952])? }; - if !match rt::is_truthy(interp, &__t1951) { + if !match rt::is_truthy(interp, &__t1953) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1953 = { - let __t1952 = v_V3158.clone(); - rt::is_symbol(&__t1952) + let __t1955 = { + let __t1954 = v_V2814.clone(); + rt::is_symbol(&__t1954) }; - if !match rt::is_truthy(interp, &__t1953) { + if !match rt::is_truthy(interp, &__t1955) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1956 = { - let __t1955 = { - let __t1954 = v_V3158.clone(); + let __t1958 = { + let __t1957 = { + let __t1956 = v_V2814.clone(); rt::apply_direct( interp, "shen.sysfunc?", - &[__t1954], + &[__t1956], )? }; - rt::apply_direct(interp, "not", &[__t1955])? + rt::apply_direct(interp, "not", &[__t1957])? }; - if !match rt::is_truthy(interp, &__t1956) { + if !match rt::is_truthy(interp, &__t1958) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1959 = { - let __t1958 = { - let __t1957 = v_V3158.clone(); + let __t1961 = { + let __t1960 = { + let __t1959 = v_V2814.clone(); rt::apply_direct( interp, "variable?", - &[__t1957], + &[__t1959], )? }; - rt::apply_direct(interp, "not", &[__t1958])? + rt::apply_direct(interp, "not", &[__t1960])? }; - if !match rt::is_truthy(interp, &__t1959) { + if !match rt::is_truthy(interp, &__t1961) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1963 = { - let __t1962 = { - let __t1961 = { - let __t1960 = - v_V3158.clone(); + let __t1965 = { + let __t1964 = { + let __t1963 = { + let __t1962 = + v_V2814.clone(); rt::apply_direct( interp, "str", - &[__t1960], + &[__t1962], )? }; rt::apply_direct( interp, "shen.internal-to-shen?", - &[__t1961], + &[__t1963], )? }; rt::apply_direct( interp, "not", - &[__t1962], + &[__t1964], )? }; if !match rt::is_truthy( - interp, &__t1963, + interp, &__t1965, ) { Ok(b) => b, Err(e) => break Err(e), @@ -11841,28 +11850,28 @@ pub fn aot_shen_x2e_internal_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe break Ok(Value::bool(false)); } else { break Ok({ - let __t1967 = { - let __t1964 = - v_V3159.clone(); - let __t1966 = { - let __t1965 = - v_V3158.clone(); + let __t1969 = { + let __t1966 = + v_V2815.clone(); + let __t1968 = { + let __t1967 = + v_V2814.clone(); rt::apply_direct( interp, "str", - &[__t1965], + &[__t1967], )? }; rt::apply_direct( interp, "shen.internal-to-P?", - &[__t1964, __t1966], + &[__t1966, __t1968], )? }; rt::apply_direct( interp, "not", - &[__t1967], + &[__t1969], )? }); } @@ -11899,256 +11908,256 @@ pub fn aot_shen_x2e_internal_x2d_to_x2d_shen_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3165 = args[0].clone(); + let mut v_V2821 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2027 = { - let __t2025 = { - let __t1969 = v_V3165.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t1969])? + let __t2029 = { + let __t2027 = { + let __t1971 = v_V2821.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t1971])? }; - if !rt::is_truthy(interp, &__t2025)? { + if !rt::is_truthy(interp, &__t2027)? { Value::bool(false) } else { - let __t2026 = { - let __t2023 = { - let __t1970 = Value::str("s"); - let __t1972 = { - let __t1971 = v_V3165.clone(); - rt::apply_direct(interp, "hdstr", &[__t1971])? - }; - rt::eq(&__t1970, &__t1972) + let __t2028 = { + let __t2025 = { + let __t1972 = Value::str("s"); + let __t1974 = { + let __t1973 = v_V2821.clone(); + rt::apply_direct(interp, "hdstr", &[__t1973])? + }; + rt::eq(&__t1972, &__t1974) }; - if !rt::is_truthy(interp, &__t2023)? { + if !rt::is_truthy(interp, &__t2025)? { Value::bool(false) } else { - let __t2024 = { - let __t2021 = { - let __t1974 = { - let __t1973 = v_V3165.clone(); - rt::apply_direct(interp, "tlstr", &[__t1973])? + let __t2026 = { + let __t2023 = { + let __t1976 = { + let __t1975 = v_V2821.clone(); + rt::apply_direct(interp, "tlstr", &[__t1975])? }; - rt::apply_direct(interp, "shen.+string?", &[__t1974])? + rt::apply_direct(interp, "shen.+string?", &[__t1976])? }; - if !rt::is_truthy(interp, &__t2021)? { + if !rt::is_truthy(interp, &__t2023)? { Value::bool(false) } else { - let __t2022 = { - let __t2019 = { - let __t1975 = Value::str("h"); - let __t1978 = { - let __t1977 = { - let __t1976 = v_V3165.clone(); - rt::apply_direct(interp, "tlstr", &[__t1976])? + let __t2024 = { + let __t2021 = { + let __t1977 = Value::str("h"); + let __t1980 = { + let __t1979 = { + let __t1978 = v_V2821.clone(); + rt::apply_direct(interp, "tlstr", &[__t1978])? }; - rt::apply_direct(interp, "hdstr", &[__t1977])? + rt::apply_direct(interp, "hdstr", &[__t1979])? }; - rt::eq(&__t1975, &__t1978) + rt::eq(&__t1977, &__t1980) }; - if !rt::is_truthy(interp, &__t2019)? { + if !rt::is_truthy(interp, &__t2021)? { Value::bool(false) } else { - let __t2020 = { - let __t2017 = { - let __t1981 = { - let __t1980 = { - let __t1979 = v_V3165.clone(); + let __t2022 = { + let __t2019 = { + let __t1983 = { + let __t1982 = { + let __t1981 = v_V2821.clone(); rt::apply_direct( interp, "tlstr", - &[__t1979], + &[__t1981], )? }; rt::apply_direct( interp, "tlstr", - &[__t1980], + &[__t1982], )? }; rt::apply_direct( interp, "shen.+string?", - &[__t1981], + &[__t1983], )? }; - if !rt::is_truthy(interp, &__t2017)? { + if !rt::is_truthy(interp, &__t2019)? { Value::bool(false) } else { - let __t2018 = { - let __t2015 = { - let __t1982 = Value::str("e"); - let __t1986 = { - let __t1985 = { - let __t1984 = { - let __t1983 = - v_V3165.clone(); + let __t2020 = { + let __t2017 = { + let __t1984 = Value::str("e"); + let __t1988 = { + let __t1987 = { + let __t1986 = { + let __t1985 = + v_V2821.clone(); rt::apply_direct( interp, "tlstr", - &[__t1983], + &[__t1985], )? }; rt::apply_direct( interp, "tlstr", - &[__t1984], + &[__t1986], )? }; rt::apply_direct( interp, "hdstr", - &[__t1985], + &[__t1987], )? }; - rt::eq(&__t1982, &__t1986) + rt::eq(&__t1984, &__t1988) }; - if !rt::is_truthy(interp, &__t2015)? { + if !rt::is_truthy(interp, &__t2017)? { Value::bool(false) } else { - let __t2016 = { - let __t2013 = { - let __t1990 = { - let __t1989 = { - let __t1988 = { - let __t1987 = - v_V3165.clone(); + let __t2018 = { + let __t2015 = { + let __t1992 = { + let __t1991 = { + let __t1990 = { + let __t1989 = + v_V2821.clone(); rt::apply_direct( interp, "tlstr", - &[__t1987], + &[__t1989], )? }; rt::apply_direct( interp, "tlstr", - &[__t1988], + &[__t1990], )? }; rt::apply_direct( interp, "tlstr", - &[__t1989], + &[__t1991], )? }; rt::apply_direct( interp, "shen.+string?", - &[__t1990], + &[__t1992], )? }; - if !rt::is_truthy(interp, &__t2013)? + if !rt::is_truthy(interp, &__t2015)? { Value::bool(false) } else { - let __t2014 = { - let __t2011 = { - let __t1991 = + let __t2016 = { + let __t2013 = { + let __t1993 = Value::str("n"); - let __t1996 = { - let __t1995 = { - let __t1994 = { - let __t1993 = { - let __t1992 = v_V3165.clone(); - rt::apply_direct(interp, "tlstr", &[__t1992])? + let __t1998 = { + let __t1997 = { + let __t1996 = { + let __t1995 = { + let __t1994 = v_V2821.clone(); + rt::apply_direct(interp, "tlstr", &[__t1994])? }; - rt::apply_direct(interp, "tlstr", &[__t1993])? + rt::apply_direct(interp, "tlstr", &[__t1995])? }; - rt::apply_direct(interp, "tlstr", &[__t1994])? + rt::apply_direct(interp, "tlstr", &[__t1996])? }; rt::apply_direct( interp, "hdstr", - &[__t1995], + &[__t1997], )? }; rt::eq( - &__t1991, &__t1996, + &__t1993, &__t1998, ) }; if !rt::is_truthy( - interp, &__t2011, + interp, &__t2013, )? { Value::bool(false) } else { - let __t2012 = { - let __t2009 = { - let __t2001 = { - let __t2000 = { - let __t1999 = { - let __t1998 = { let __t1997 = v_V3165.clone(); rt::apply_direct(interp, "tlstr", &[__t1997])? }; - rt::apply_direct(interp, "tlstr", &[__t1998])? + let __t2014 = { + let __t2011 = { + let __t2003 = { + let __t2002 = { + let __t2001 = { + let __t2000 = { let __t1999 = v_V2821.clone(); rt::apply_direct(interp, "tlstr", &[__t1999])? }; + rt::apply_direct(interp, "tlstr", &[__t2000])? }; - rt::apply_direct(interp, "tlstr", &[__t1999])? + rt::apply_direct(interp, "tlstr", &[__t2001])? }; - rt::apply_direct(interp, "tlstr", &[__t2000])? + rt::apply_direct(interp, "tlstr", &[__t2002])? }; - rt::apply_direct(interp, "shen.+string?", &[__t2001])? + rt::apply_direct(interp, "shen.+string?", &[__t2003])? }; if !rt::is_truthy( interp, - &__t2009, + &__t2011, )? { Value::bool( false, ) } else { - let __t2010 = { - let __t2002 = Value::str("."); - let __t2008 = { - let __t2007 = { - let __t2006 = { let __t2005 = { let __t2004 = { let __t2003 = v_V3165.clone(); rt::apply_direct(interp, "tlstr", &[__t2003])? }; rt::apply_direct(interp, "tlstr", &[__t2004])? }; rt::apply_direct(interp, "tlstr", &[__t2005])? }; - rt::apply_direct(interp, "tlstr", &[__t2006])? + let __t2012 = { + let __t2004 = Value::str("."); + let __t2010 = { + let __t2009 = { + let __t2008 = { let __t2007 = { let __t2006 = { let __t2005 = v_V2821.clone(); rt::apply_direct(interp, "tlstr", &[__t2005])? }; rt::apply_direct(interp, "tlstr", &[__t2006])? }; rt::apply_direct(interp, "tlstr", &[__t2007])? }; + rt::apply_direct(interp, "tlstr", &[__t2008])? }; - rt::apply_direct(interp, "hdstr", &[__t2007])? + rt::apply_direct(interp, "hdstr", &[__t2009])? }; - rt::eq(&__t2002, &__t2008) + rt::eq(&__t2004, &__t2010) }; - Value::bool(rt::is_truthy(interp, &__t2010)?) + Value::bool(rt::is_truthy(interp, &__t2012)?) } }; Value::bool( rt::is_truthy( interp, - &__t2012, + &__t2014, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2014, + interp, &__t2016, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2016, + interp, &__t2018, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2018)?) + Value::bool(rt::is_truthy(interp, &__t2020)?) } }; - Value::bool(rt::is_truthy(interp, &__t2020)?) + Value::bool(rt::is_truthy(interp, &__t2022)?) } }; - Value::bool(rt::is_truthy(interp, &__t2022)?) + Value::bool(rt::is_truthy(interp, &__t2024)?) } }; - Value::bool(rt::is_truthy(interp, &__t2024)?) + Value::bool(rt::is_truthy(interp, &__t2026)?) } }; - Value::bool(rt::is_truthy(interp, &__t2026)?) + Value::bool(rt::is_truthy(interp, &__t2028)?) } }; - if match rt::is_truthy(interp, &__t2027) { + if match rt::is_truthy(interp, &__t2029) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t1968 = Value::bool(true); - if match rt::is_truthy(interp, &__t1968) { + let __t1970 = Value::bool(true); + if match rt::is_truthy(interp, &__t1970) { Ok(b) => b, Err(e) => break Err(e), } { @@ -12183,21 +12192,21 @@ pub fn aot_shen_x2e_sysfunc_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V3166 = args[0].clone(); + let mut v_V2822 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2028 = v_V3166.clone(); - let __t2033 = { - let __t2029 = Value::sym(interp.intern("shen")); - let __t2030 = Value::sym(interp.intern("shen.external-symbols")); - let __t2032 = { - let __t2031 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t2031])? - }; - rt::apply_direct(interp, "get", &[__t2029, __t2030, __t2032])? + let __t2030 = v_V2822.clone(); + let __t2035 = { + let __t2031 = Value::sym(interp.intern("shen")); + let __t2032 = Value::sym(interp.intern("shen.external-symbols")); + let __t2034 = { + let __t2033 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t2033])? + }; + rt::apply_direct(interp, "get", &[__t2031, __t2032, __t2034])? }; - rt::apply_direct(interp, "element?", &[__t2028, __t2033])? + rt::apply_direct(interp, "element?", &[__t2030, __t2035])? }); } } @@ -12219,104 +12228,104 @@ pub fn aot_shen_x2e_internal_x2d_to_x2d_P_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3174 = args[0].clone(); + let mut v_V2830 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3175 = args[1].clone(); + let mut v_V2831 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2060 = { - let __t2058 = { - let __t2050 = Value::str(""); - let __t2051 = v_V3174.clone(); - rt::eq(&__t2050, &__t2051) + let __t2062 = { + let __t2060 = { + let __t2052 = Value::str(""); + let __t2053 = v_V2830.clone(); + rt::eq(&__t2052, &__t2053) }; - if !rt::is_truthy(interp, &__t2058)? { + if !rt::is_truthy(interp, &__t2060)? { Value::bool(false) } else { - let __t2059 = { - let __t2056 = { - let __t2052 = v_V3175.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t2052])? + let __t2061 = { + let __t2058 = { + let __t2054 = v_V2831.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t2054])? }; - if !rt::is_truthy(interp, &__t2056)? { + if !rt::is_truthy(interp, &__t2058)? { Value::bool(false) } else { - let __t2057 = { - let __t2053 = Value::str("."); - let __t2055 = { - let __t2054 = v_V3175.clone(); - rt::apply_direct(interp, "hdstr", &[__t2054])? + let __t2059 = { + let __t2055 = Value::str("."); + let __t2057 = { + let __t2056 = v_V2831.clone(); + rt::apply_direct(interp, "hdstr", &[__t2056])? }; - rt::eq(&__t2053, &__t2055) + rt::eq(&__t2055, &__t2057) }; - Value::bool(rt::is_truthy(interp, &__t2057)?) + Value::bool(rt::is_truthy(interp, &__t2059)?) } }; - Value::bool(rt::is_truthy(interp, &__t2059)?) + Value::bool(rt::is_truthy(interp, &__t2061)?) } }; - if match rt::is_truthy(interp, &__t2060) { + if match rt::is_truthy(interp, &__t2062) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2049 = { - let __t2043 = { - let __t2035 = v_V3174.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t2035])? + let __t2051 = { + let __t2045 = { + let __t2037 = v_V2830.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t2037])? }; - if !rt::is_truthy(interp, &__t2043)? { + if !rt::is_truthy(interp, &__t2045)? { Value::bool(false) } else { - let __t2044 = { - let __t2041 = { - let __t2036 = v_V3175.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t2036])? + let __t2046 = { + let __t2043 = { + let __t2038 = v_V2831.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t2038])? }; - if !rt::is_truthy(interp, &__t2041)? { + if !rt::is_truthy(interp, &__t2043)? { Value::bool(false) } else { - let __t2042 = { - let __t2038 = { - let __t2037 = v_V3174.clone(); - rt::apply_direct(interp, "hdstr", &[__t2037])? - }; + let __t2044 = { let __t2040 = { - let __t2039 = v_V3175.clone(); + let __t2039 = v_V2830.clone(); rt::apply_direct(interp, "hdstr", &[__t2039])? }; - rt::eq(&__t2038, &__t2040) + let __t2042 = { + let __t2041 = v_V2831.clone(); + rt::apply_direct(interp, "hdstr", &[__t2041])? + }; + rt::eq(&__t2040, &__t2042) }; - Value::bool(rt::is_truthy(interp, &__t2042)?) + Value::bool(rt::is_truthy(interp, &__t2044)?) } }; - Value::bool(rt::is_truthy(interp, &__t2044)?) + Value::bool(rt::is_truthy(interp, &__t2046)?) } }; - if match rt::is_truthy(interp, &__t2049) { + if match rt::is_truthy(interp, &__t2051) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2046 = { - let __t2045 = v_V3174.clone(); - rt::apply_direct(interp, "tlstr", &[__t2045])? - }; let __t2048 = { - let __t2047 = v_V3175.clone(); + let __t2047 = v_V2830.clone(); rt::apply_direct(interp, "tlstr", &[__t2047])? }; - v_V3174 = __t2046; - v_V3175 = __t2048; + let __t2050 = { + let __t2049 = v_V2831.clone(); + rt::apply_direct(interp, "tlstr", &[__t2049])? + }; + v_V2830 = __t2048; + v_V2831 = __t2050; continue; } } else { { - let __t2034 = Value::bool(true); - if match rt::is_truthy(interp, &__t2034) { + let __t2036 = Value::bool(true); + if match rt::is_truthy(interp, &__t2036) { Ok(b) => b, Err(e) => break Err(e), } { @@ -12356,165 +12365,112 @@ pub fn aot_shen_x2e_process_x2d_applications( ))); } #[allow(unused_mut)] - let mut v_V3178 = args[0].clone(); + let mut v_V2834 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3179 = args[1].clone(); + let mut v_V2835 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2094 = { - let __t2092 = v_V3178.clone(); - let __t2093 = v_V3179.clone(); - rt::apply_direct(interp, "element?", &[__t2092, __t2093])? + let __t2084 = { + let __t2082 = v_V2834.clone(); + let __t2083 = v_V2835.clone(); + rt::apply_direct(interp, "element?", &[__t2082, __t2083])? }; - if match rt::is_truthy(interp, &__t2094) { + if match rt::is_truthy(interp, &__t2084) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3178.clone()); + break Ok(v_V2834.clone()); } else { { - let __t2091 = { - let __t2084 = { - let __t2080 = v_V3178.clone(); - rt::is_cons(&__t2080) + let __t2081 = { + let __t2075 = { + let __t2072 = v_V2834.clone(); + rt::is_cons(&__t2072) }; - if !rt::is_truthy(interp, &__t2084)? { + if !rt::is_truthy(interp, &__t2075)? { Value::bool(false) } else { - let __t2085 = { - let __t2081 = Value::sym(interp.intern("cond")); - let __t2083 = { - let __t2082 = v_V3178.clone(); - rt::hd(&__t2082)? + let __t2076 = { + let __t2074 = { + let __t2073 = v_V2834.clone(); + rt::hd(&__t2073)? }; - rt::eq(&__t2081, &__t2083) + rt::apply_direct(interp, "shen.non-application?", &[__t2074])? }; - Value::bool(rt::is_truthy(interp, &__t2085)?) + Value::bool(rt::is_truthy(interp, &__t2076)?) } }; - if match rt::is_truthy(interp, &__t2091) { + if match rt::is_truthy(interp, &__t2081) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2086 = Value::sym(interp.intern("cond")); - let __t2090 = { - let __t2088 = { - let __t2087 = v_V3178.clone(); - rt::tl(&__t2087)? - }; - let __t2089 = v_V3179.clone(); - rt::apply_direct( - interp, - "shen.process-cond-clauses", - &[__t2088, __t2089], - )? + let __t2078 = { + let __t2077 = v_V2834.clone(); + rt::hd(&__t2077)? }; - rt::cons(&__t2086, &__t2090) + let __t2079 = v_V2834.clone(); + let __t2080 = v_V2835.clone(); + rt::apply_direct( + interp, + "shen.special-case", + &[__t2078, __t2079, __t2080], + )? }); } else { { - let __t2079 = { - let __t2073 = { - let __t2070 = v_V3178.clone(); - rt::is_cons(&__t2070) - }; - if !rt::is_truthy(interp, &__t2073)? { - Value::bool(false) - } else { - let __t2074 = { - let __t2072 = { - let __t2071 = v_V3178.clone(); - rt::hd(&__t2071)? - }; - rt::apply_direct( - interp, - "shen.non-application?", - &[__t2072], - )? - }; - Value::bool(rt::is_truthy(interp, &__t2074)?) - } + let __t2071 = { + let __t2064 = v_V2834.clone(); + rt::is_cons(&__t2064) }; - if match rt::is_truthy(interp, &__t2079) { + if match rt::is_truthy(interp, &__t2071) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2076 = { - let __t2075 = v_V3178.clone(); - rt::hd(&__t2075)? + let __t2069 = { + let __t2067 = { + let v_V2835 = v_V2835.clone(); + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z2836 = args[0].clone(); + Ok({ + let __t2065 = v_Z2836.clone(); + let __t2066 = v_V2835.clone(); + rt::apply_direct( + interp, + "shen.process-applications", + &[__t2065, __t2066], + )? + }) + }, + vec![v_V2835], + interp, + ) + }; + let __t2068 = v_V2834.clone(); + rt::apply_direct(interp, "map", &[__t2067, __t2068])? }; - let __t2077 = v_V3178.clone(); - let __t2078 = v_V3179.clone(); + let __t2070 = v_V2835.clone(); rt::apply_direct( interp, - "shen.special-case", - &[__t2076, __t2077, __t2078], + "shen.process-application", + &[__t2069, __t2070], )? }); } else { { - let __t2069 = { - let __t2062 = v_V3178.clone(); - rt::is_cons(&__t2062) - }; - if match rt::is_truthy(interp, &__t2069) { + let __t2063 = Value::bool(true); + if match rt::is_truthy(interp, &__t2063) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - let __t2067 = { - let __t2065 = { - let v_V3179 = v_V3179.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3180 = args[0].clone(); - Ok({ - let __t2063 = v_Z3180.clone(); - let __t2064 = v_V3179.clone(); - rt::apply_direct( - interp, - "shen.process-applications", - &[__t2063, __t2064], - )? - }) - }, - vec![v_V3179], - interp, - ) - }; - let __t2066 = v_V3178.clone(); - rt::apply_direct( - interp, - "map", - &[__t2065, __t2066], - )? - }; - let __t2068 = v_V3179.clone(); - rt::apply_direct( - interp, - "shen.process-application", - &[__t2067, __t2068], - )? - }); + break Ok(v_V2834.clone()); } else { - { - let __t2061 = Value::bool(true); - if match rt::is_truthy(interp, &__t2061) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V3178.clone()); - } else { - break Err(ShenError::new( - "cond: no clause matched", - )); - } - } + break Err(ShenError::new("cond: no clause matched")); } } } @@ -12550,74 +12506,74 @@ pub fn aot_shen_x2e_non_x2d_application_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3183 = args[0].clone(); + let mut v_V2839 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2108 = { - let __t2106 = Value::sym(interp.intern("define")); - let __t2107 = v_V3183.clone(); - rt::eq(&__t2106, &__t2107) + let __t2098 = { + let __t2096 = Value::sym(interp.intern("define")); + let __t2097 = v_V2839.clone(); + rt::eq(&__t2096, &__t2097) }; - if match rt::is_truthy(interp, &__t2108) { + if match rt::is_truthy(interp, &__t2098) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2105 = { - let __t2103 = Value::sym(interp.intern("defun")); - let __t2104 = v_V3183.clone(); - rt::eq(&__t2103, &__t2104) + let __t2095 = { + let __t2093 = Value::sym(interp.intern("defun")); + let __t2094 = v_V2839.clone(); + rt::eq(&__t2093, &__t2094) }; - if match rt::is_truthy(interp, &__t2105) { + if match rt::is_truthy(interp, &__t2095) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2102 = { - let __t2100 = Value::sym(interp.intern("synonyms")); - let __t2101 = v_V3183.clone(); - rt::eq(&__t2100, &__t2101) + let __t2092 = { + let __t2090 = Value::sym(interp.intern("synonyms")); + let __t2091 = v_V2839.clone(); + rt::eq(&__t2090, &__t2091) }; - if match rt::is_truthy(interp, &__t2102) { + if match rt::is_truthy(interp, &__t2092) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2099 = { - let __t2098 = v_V3183.clone(); - rt::apply_direct(interp, "shen.special?", &[__t2098])? + let __t2089 = { + let __t2088 = v_V2839.clone(); + rt::apply_direct(interp, "shen.special?", &[__t2088])? }; - if match rt::is_truthy(interp, &__t2099) { + if match rt::is_truthy(interp, &__t2089) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2097 = { - let __t2096 = v_V3183.clone(); + let __t2087 = { + let __t2086 = v_V2839.clone(); rt::apply_direct( interp, "shen.extraspecial?", - &[__t2096], + &[__t2086], )? }; - if match rt::is_truthy(interp, &__t2097) { + if match rt::is_truthy(interp, &__t2087) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2095 = Value::bool(true); - if match rt::is_truthy(interp, &__t2095) { + let __t2085 = Value::bool(true); + if match rt::is_truthy(interp, &__t2085) { Ok(b) => b, Err(e) => break Err(e), } { @@ -12662,998 +12618,998 @@ pub fn aot_shen_x2e_special_x2d_case(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3188 = args[0].clone(); + let mut v_V2844 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3189 = args[1].clone(); + let mut v_V2845 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3190 = args[2].clone(); + let mut v_V2846 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t2411 = { - let __t2396 = { - let __t2372 = Value::sym(interp.intern("lambda")); - let __t2373 = v_V3188.clone(); - rt::eq(&__t2372, &__t2373) + let __t2401 = { + let __t2386 = { + let __t2362 = Value::sym(interp.intern("lambda")); + let __t2363 = v_V2844.clone(); + rt::eq(&__t2362, &__t2363) }; - if !rt::is_truthy(interp, &__t2396)? { + if !rt::is_truthy(interp, &__t2386)? { Value::bool(false) } else { - let __t2397 = { - let __t2394 = { - let __t2374 = v_V3189.clone(); - rt::is_cons(&__t2374) + let __t2387 = { + let __t2384 = { + let __t2364 = v_V2845.clone(); + rt::is_cons(&__t2364) }; - if !rt::is_truthy(interp, &__t2394)? { + if !rt::is_truthy(interp, &__t2384)? { Value::bool(false) } else { - let __t2395 = { - let __t2392 = { - let __t2375 = Value::sym(interp.intern("lambda")); - let __t2377 = { - let __t2376 = v_V3189.clone(); - rt::hd(&__t2376)? + let __t2385 = { + let __t2382 = { + let __t2365 = Value::sym(interp.intern("lambda")); + let __t2367 = { + let __t2366 = v_V2845.clone(); + rt::hd(&__t2366)? }; - rt::eq(&__t2375, &__t2377) + rt::eq(&__t2365, &__t2367) }; - if !rt::is_truthy(interp, &__t2392)? { + if !rt::is_truthy(interp, &__t2382)? { Value::bool(false) } else { - let __t2393 = { - let __t2390 = { - let __t2379 = { - let __t2378 = v_V3189.clone(); - rt::tl(&__t2378)? + let __t2383 = { + let __t2380 = { + let __t2369 = { + let __t2368 = v_V2845.clone(); + rt::tl(&__t2368)? }; - rt::is_cons(&__t2379) + rt::is_cons(&__t2369) }; - if !rt::is_truthy(interp, &__t2390)? { + if !rt::is_truthy(interp, &__t2380)? { Value::bool(false) } else { - let __t2391 = { - let __t2388 = { - let __t2382 = { - let __t2381 = { - let __t2380 = v_V3189.clone(); - rt::tl(&__t2380)? + let __t2381 = { + let __t2378 = { + let __t2372 = { + let __t2371 = { + let __t2370 = v_V2845.clone(); + rt::tl(&__t2370)? }; - rt::tl(&__t2381)? + rt::tl(&__t2371)? }; - rt::is_cons(&__t2382) + rt::is_cons(&__t2372) }; - if !rt::is_truthy(interp, &__t2388)? { + if !rt::is_truthy(interp, &__t2378)? { Value::bool(false) } else { - let __t2389 = { - let __t2383 = Value::nil(); - let __t2387 = { - let __t2386 = { - let __t2385 = { - let __t2384 = v_V3189.clone(); - rt::tl(&__t2384)? + let __t2379 = { + let __t2373 = Value::nil(); + let __t2377 = { + let __t2376 = { + let __t2375 = { + let __t2374 = v_V2845.clone(); + rt::tl(&__t2374)? }; - rt::tl(&__t2385)? + rt::tl(&__t2375)? }; - rt::tl(&__t2386)? + rt::tl(&__t2376)? }; - rt::eq(&__t2383, &__t2387) + rt::eq(&__t2373, &__t2377) }; - Value::bool(rt::is_truthy(interp, &__t2389)?) + Value::bool(rt::is_truthy(interp, &__t2379)?) } }; - Value::bool(rt::is_truthy(interp, &__t2391)?) + Value::bool(rt::is_truthy(interp, &__t2381)?) } }; - Value::bool(rt::is_truthy(interp, &__t2393)?) + Value::bool(rt::is_truthy(interp, &__t2383)?) } }; - Value::bool(rt::is_truthy(interp, &__t2395)?) + Value::bool(rt::is_truthy(interp, &__t2385)?) } }; - Value::bool(rt::is_truthy(interp, &__t2397)?) + Value::bool(rt::is_truthy(interp, &__t2387)?) } }; - if match rt::is_truthy(interp, &__t2411) { + if match rt::is_truthy(interp, &__t2401) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2398 = Value::sym(interp.intern("lambda")); - let __t2410 = { - let __t2401 = { - let __t2400 = { - let __t2399 = v_V3189.clone(); - rt::tl(&__t2399)? - }; - rt::hd(&__t2400)? + let __t2388 = Value::sym(interp.intern("lambda")); + let __t2400 = { + let __t2391 = { + let __t2390 = { + let __t2389 = v_V2845.clone(); + rt::tl(&__t2389)? + }; + rt::hd(&__t2390)? }; - let __t2409 = { - let __t2407 = { - let __t2405 = { - let __t2404 = { - let __t2403 = { - let __t2402 = v_V3189.clone(); - rt::tl(&__t2402)? + let __t2399 = { + let __t2397 = { + let __t2395 = { + let __t2394 = { + let __t2393 = { + let __t2392 = v_V2845.clone(); + rt::tl(&__t2392)? }; - rt::tl(&__t2403)? + rt::tl(&__t2393)? }; - rt::hd(&__t2404)? + rt::hd(&__t2394)? }; - let __t2406 = v_V3190.clone(); + let __t2396 = v_V2846.clone(); rt::apply_direct( interp, "shen.process-applications", - &[__t2405, __t2406], + &[__t2395, __t2396], )? }; - let __t2408 = Value::nil(); - rt::cons(&__t2407, &__t2408) + let __t2398 = Value::nil(); + rt::cons(&__t2397, &__t2398) }; - rt::cons(&__t2401, &__t2409) + rt::cons(&__t2391, &__t2399) }; - rt::cons(&__t2398, &__t2410) + rt::cons(&__t2388, &__t2400) }); } else { { - let __t2371 = { - let __t2348 = { - let __t2317 = Value::sym(interp.intern("let")); - let __t2318 = v_V3188.clone(); - rt::eq(&__t2317, &__t2318) + let __t2361 = { + let __t2338 = { + let __t2307 = Value::sym(interp.intern("let")); + let __t2308 = v_V2844.clone(); + rt::eq(&__t2307, &__t2308) }; - if !rt::is_truthy(interp, &__t2348)? { + if !rt::is_truthy(interp, &__t2338)? { Value::bool(false) } else { - let __t2349 = { - let __t2346 = { - let __t2319 = v_V3189.clone(); - rt::is_cons(&__t2319) + let __t2339 = { + let __t2336 = { + let __t2309 = v_V2845.clone(); + rt::is_cons(&__t2309) }; - if !rt::is_truthy(interp, &__t2346)? { + if !rt::is_truthy(interp, &__t2336)? { Value::bool(false) } else { - let __t2347 = { - let __t2344 = { - let __t2320 = Value::sym(interp.intern("let")); - let __t2322 = { - let __t2321 = v_V3189.clone(); - rt::hd(&__t2321)? + let __t2337 = { + let __t2334 = { + let __t2310 = Value::sym(interp.intern("let")); + let __t2312 = { + let __t2311 = v_V2845.clone(); + rt::hd(&__t2311)? }; - rt::eq(&__t2320, &__t2322) + rt::eq(&__t2310, &__t2312) }; - if !rt::is_truthy(interp, &__t2344)? { + if !rt::is_truthy(interp, &__t2334)? { Value::bool(false) } else { - let __t2345 = { - let __t2342 = { - let __t2324 = { - let __t2323 = v_V3189.clone(); - rt::tl(&__t2323)? + let __t2335 = { + let __t2332 = { + let __t2314 = { + let __t2313 = v_V2845.clone(); + rt::tl(&__t2313)? }; - rt::is_cons(&__t2324) + rt::is_cons(&__t2314) }; - if !rt::is_truthy(interp, &__t2342)? { + if !rt::is_truthy(interp, &__t2332)? { Value::bool(false) } else { - let __t2343 = { - let __t2340 = { - let __t2327 = { - let __t2326 = { - let __t2325 = v_V3189.clone(); - rt::tl(&__t2325)? + let __t2333 = { + let __t2330 = { + let __t2317 = { + let __t2316 = { + let __t2315 = v_V2845.clone(); + rt::tl(&__t2315)? }; - rt::tl(&__t2326)? + rt::tl(&__t2316)? }; - rt::is_cons(&__t2327) + rt::is_cons(&__t2317) }; - if !rt::is_truthy(interp, &__t2340)? { + if !rt::is_truthy(interp, &__t2330)? { Value::bool(false) } else { - let __t2341 = { - let __t2338 = { - let __t2331 = { - let __t2330 = { - let __t2329 = { - let __t2328 = - v_V3189.clone(); - rt::tl(&__t2328)? + let __t2331 = { + let __t2328 = { + let __t2321 = { + let __t2320 = { + let __t2319 = { + let __t2318 = + v_V2845.clone(); + rt::tl(&__t2318)? }; - rt::tl(&__t2329)? + rt::tl(&__t2319)? }; - rt::tl(&__t2330)? + rt::tl(&__t2320)? }; - rt::is_cons(&__t2331) + rt::is_cons(&__t2321) }; - if !rt::is_truthy(interp, &__t2338)? + if !rt::is_truthy(interp, &__t2328)? { Value::bool(false) } else { - let __t2339 = { - let __t2332 = Value::nil(); - let __t2337 = { - let __t2336 = { - let __t2335 = { - let __t2334 = { - let __t2333 = v_V3189.clone(); - rt::tl(&__t2333)? + let __t2329 = { + let __t2322 = Value::nil(); + let __t2327 = { + let __t2326 = { + let __t2325 = { + let __t2324 = { + let __t2323 = v_V2845.clone(); + rt::tl(&__t2323)? }; rt::tl( - &__t2334, + &__t2324, )? }; - rt::tl(&__t2335)? + rt::tl(&__t2325)? }; - rt::tl(&__t2336)? + rt::tl(&__t2326)? }; - rt::eq(&__t2332, &__t2337) + rt::eq(&__t2322, &__t2327) }; Value::bool(rt::is_truthy( - interp, &__t2339, + interp, &__t2329, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2341, + interp, &__t2331, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2343)?) + Value::bool(rt::is_truthy(interp, &__t2333)?) } }; - Value::bool(rt::is_truthy(interp, &__t2345)?) + Value::bool(rt::is_truthy(interp, &__t2335)?) } }; - Value::bool(rt::is_truthy(interp, &__t2347)?) + Value::bool(rt::is_truthy(interp, &__t2337)?) } }; - Value::bool(rt::is_truthy(interp, &__t2349)?) + Value::bool(rt::is_truthy(interp, &__t2339)?) } }; - if match rt::is_truthy(interp, &__t2371) { + if match rt::is_truthy(interp, &__t2361) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2350 = Value::sym(interp.intern("let")); - let __t2370 = { - let __t2353 = { - let __t2352 = { - let __t2351 = v_V3189.clone(); - rt::tl(&__t2351)? + let __t2340 = Value::sym(interp.intern("let")); + let __t2360 = { + let __t2343 = { + let __t2342 = { + let __t2341 = v_V2845.clone(); + rt::tl(&__t2341)? }; - rt::hd(&__t2352)? - }; - let __t2369 = { - let __t2359 = { - let __t2357 = { - let __t2356 = { - let __t2355 = { - let __t2354 = v_V3189.clone(); - rt::tl(&__t2354)? + rt::hd(&__t2342)? + }; + let __t2359 = { + let __t2349 = { + let __t2347 = { + let __t2346 = { + let __t2345 = { + let __t2344 = v_V2845.clone(); + rt::tl(&__t2344)? }; - rt::tl(&__t2355)? + rt::tl(&__t2345)? }; - rt::hd(&__t2356)? + rt::hd(&__t2346)? }; - let __t2358 = v_V3190.clone(); + let __t2348 = v_V2846.clone(); rt::apply_direct( interp, "shen.process-applications", - &[__t2357, __t2358], + &[__t2347, __t2348], )? }; - let __t2368 = { - let __t2366 = { - let __t2364 = { - let __t2363 = { - let __t2362 = { - let __t2361 = { - let __t2360 = v_V3189.clone(); - rt::tl(&__t2360)? + let __t2358 = { + let __t2356 = { + let __t2354 = { + let __t2353 = { + let __t2352 = { + let __t2351 = { + let __t2350 = v_V2845.clone(); + rt::tl(&__t2350)? }; - rt::tl(&__t2361)? + rt::tl(&__t2351)? }; - rt::tl(&__t2362)? + rt::tl(&__t2352)? }; - rt::hd(&__t2363)? + rt::hd(&__t2353)? }; - let __t2365 = v_V3190.clone(); + let __t2355 = v_V2846.clone(); rt::apply_direct( interp, "shen.process-applications", - &[__t2364, __t2365], + &[__t2354, __t2355], )? }; - let __t2367 = Value::nil(); - rt::cons(&__t2366, &__t2367) + let __t2357 = Value::nil(); + rt::cons(&__t2356, &__t2357) }; - rt::cons(&__t2359, &__t2368) + rt::cons(&__t2349, &__t2358) }; - rt::cons(&__t2353, &__t2369) + rt::cons(&__t2343, &__t2359) }; - rt::cons(&__t2350, &__t2370) + rt::cons(&__t2340, &__t2360) }); } else { { - let __t2316 = { - let __t2314 = { - let __t2283 = Value::sym(interp.intern("defun")); - let __t2284 = v_V3188.clone(); - rt::eq(&__t2283, &__t2284) + let __t2306 = { + let __t2304 = { + let __t2273 = Value::sym(interp.intern("defun")); + let __t2274 = v_V2844.clone(); + rt::eq(&__t2273, &__t2274) }; - if !rt::is_truthy(interp, &__t2314)? { + if !rt::is_truthy(interp, &__t2304)? { Value::bool(false) } else { - let __t2315 = { - let __t2312 = { - let __t2285 = v_V3189.clone(); - rt::is_cons(&__t2285) + let __t2305 = { + let __t2302 = { + let __t2275 = v_V2845.clone(); + rt::is_cons(&__t2275) }; - if !rt::is_truthy(interp, &__t2312)? { + if !rt::is_truthy(interp, &__t2302)? { Value::bool(false) } else { - let __t2313 = { - let __t2310 = { - let __t2286 = + let __t2303 = { + let __t2300 = { + let __t2276 = Value::sym(interp.intern("defun")); - let __t2288 = { - let __t2287 = v_V3189.clone(); - rt::hd(&__t2287)? + let __t2278 = { + let __t2277 = v_V2845.clone(); + rt::hd(&__t2277)? }; - rt::eq(&__t2286, &__t2288) + rt::eq(&__t2276, &__t2278) }; - if !rt::is_truthy(interp, &__t2310)? { + if !rt::is_truthy(interp, &__t2300)? { Value::bool(false) } else { - let __t2311 = { - let __t2308 = { - let __t2290 = { - let __t2289 = v_V3189.clone(); - rt::tl(&__t2289)? + let __t2301 = { + let __t2298 = { + let __t2280 = { + let __t2279 = v_V2845.clone(); + rt::tl(&__t2279)? }; - rt::is_cons(&__t2290) + rt::is_cons(&__t2280) }; - if !rt::is_truthy(interp, &__t2308)? { + if !rt::is_truthy(interp, &__t2298)? { Value::bool(false) } else { - let __t2309 = { - let __t2306 = { - let __t2293 = { - let __t2292 = { - let __t2291 = - v_V3189.clone(); - rt::tl(&__t2291)? + let __t2299 = { + let __t2296 = { + let __t2283 = { + let __t2282 = { + let __t2281 = + v_V2845.clone(); + rt::tl(&__t2281)? }; - rt::tl(&__t2292)? + rt::tl(&__t2282)? }; - rt::is_cons(&__t2293) + rt::is_cons(&__t2283) }; - if !rt::is_truthy(interp, &__t2306)? + if !rt::is_truthy(interp, &__t2296)? { Value::bool(false) } else { - let __t2307 = { - let __t2304 = { - let __t2297 = { - let __t2296 = { - let __t2295 = { - let __t2294 = v_V3189.clone(); - rt::tl(&__t2294)? + let __t2297 = { + let __t2294 = { + let __t2287 = { + let __t2286 = { + let __t2285 = { + let __t2284 = v_V2845.clone(); + rt::tl(&__t2284)? }; rt::tl( - &__t2295, + &__t2285, )? }; - rt::tl(&__t2296)? + rt::tl(&__t2286)? }; - rt::is_cons(&__t2297) + rt::is_cons(&__t2287) }; if !rt::is_truthy( - interp, &__t2304, + interp, &__t2294, )? { Value::bool(false) } else { - let __t2305 = { - let __t2298 = + let __t2295 = { + let __t2288 = Value::nil(); - let __t2303 = { - let __t2302 = { - let __t2301 = { - let __t2300 = { - let __t2299 = v_V3189.clone(); - rt::tl(&__t2299)? + let __t2293 = { + let __t2292 = { + let __t2291 = { + let __t2290 = { + let __t2289 = v_V2845.clone(); + rt::tl(&__t2289)? }; - rt::tl(&__t2300)? + rt::tl(&__t2290)? }; - rt::tl(&__t2301)? + rt::tl(&__t2291)? }; rt::tl( - &__t2302, + &__t2292, )? }; rt::eq( - &__t2298, - &__t2303, + &__t2288, + &__t2293, ) }; Value::bool( rt::is_truthy( interp, - &__t2305, + &__t2295, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2307, + interp, &__t2297, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2309, + interp, &__t2299, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2311)?) + Value::bool(rt::is_truthy(interp, &__t2301)?) } }; - Value::bool(rt::is_truthy(interp, &__t2313)?) + Value::bool(rt::is_truthy(interp, &__t2303)?) } }; - Value::bool(rt::is_truthy(interp, &__t2315)?) + Value::bool(rt::is_truthy(interp, &__t2305)?) } }; - if match rt::is_truthy(interp, &__t2316) { + if match rt::is_truthy(interp, &__t2306) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3189.clone()); + break Ok(v_V2845.clone()); } else { { - let __t2282 = { - let __t2264 = { - let __t2240 = Value::sym(interp.intern("define")); - let __t2241 = v_V3188.clone(); - rt::eq(&__t2240, &__t2241) + let __t2272 = { + let __t2254 = { + let __t2230 = Value::sym(interp.intern("define")); + let __t2231 = v_V2844.clone(); + rt::eq(&__t2230, &__t2231) }; - if !rt::is_truthy(interp, &__t2264)? { + if !rt::is_truthy(interp, &__t2254)? { Value::bool(false) } else { - let __t2265 = { - let __t2262 = { - let __t2242 = v_V3189.clone(); - rt::is_cons(&__t2242) + let __t2255 = { + let __t2252 = { + let __t2232 = v_V2845.clone(); + rt::is_cons(&__t2232) }; - if !rt::is_truthy(interp, &__t2262)? { + if !rt::is_truthy(interp, &__t2252)? { Value::bool(false) } else { - let __t2263 = { - let __t2260 = { - let __t2243 = + let __t2253 = { + let __t2250 = { + let __t2233 = Value::sym(interp.intern("define")); - let __t2245 = { - let __t2244 = v_V3189.clone(); - rt::hd(&__t2244)? + let __t2235 = { + let __t2234 = v_V2845.clone(); + rt::hd(&__t2234)? }; - rt::eq(&__t2243, &__t2245) + rt::eq(&__t2233, &__t2235) }; - if !rt::is_truthy(interp, &__t2260)? { + if !rt::is_truthy(interp, &__t2250)? { Value::bool(false) } else { - let __t2261 = { - let __t2258 = { - let __t2247 = { - let __t2246 = - v_V3189.clone(); - rt::tl(&__t2246)? + let __t2251 = { + let __t2248 = { + let __t2237 = { + let __t2236 = + v_V2845.clone(); + rt::tl(&__t2236)? }; - rt::is_cons(&__t2247) + rt::is_cons(&__t2237) }; - if !rt::is_truthy(interp, &__t2258)? + if !rt::is_truthy(interp, &__t2248)? { Value::bool(false) } else { - let __t2259 = { - let __t2256 = { - let __t2250 = { - let __t2249 = { - let __t2248 = - v_V3189 + let __t2249 = { + let __t2246 = { + let __t2240 = { + let __t2239 = { + let __t2238 = + v_V2845 .clone( ); rt::tl( - &__t2248, + &__t2238, )? }; - rt::tl(&__t2249)? + rt::tl(&__t2239)? }; - rt::is_cons(&__t2250) + rt::is_cons(&__t2240) }; if !rt::is_truthy( - interp, &__t2256, + interp, &__t2246, )? { Value::bool(false) } else { - let __t2257 = { - let __t2251 = + let __t2247 = { + let __t2241 = Value::sym( interp .intern( "{", ), ); - let __t2255 = { - let __t2254 = { - let __t2253 = { - let __t2252 = v_V3189.clone(); - rt::tl(&__t2252)? + let __t2245 = { + let __t2244 = { + let __t2243 = { + let __t2242 = v_V2845.clone(); + rt::tl(&__t2242)? }; - rt::tl(&__t2253)? + rt::tl(&__t2243)? }; rt::hd( - &__t2254, + &__t2244, )? }; rt::eq( - &__t2251, - &__t2255, + &__t2241, + &__t2245, ) }; Value::bool( rt::is_truthy( interp, - &__t2257, + &__t2247, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2259, + interp, &__t2249, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2261, + interp, &__t2251, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2263)?) + Value::bool(rt::is_truthy(interp, &__t2253)?) } }; - Value::bool(rt::is_truthy(interp, &__t2265)?) + Value::bool(rt::is_truthy(interp, &__t2255)?) } }; - if match rt::is_truthy(interp, &__t2282) { + if match rt::is_truthy(interp, &__t2272) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2266 = Value::sym(interp.intern("define")); - let __t2281 = { - let __t2269 = { - let __t2268 = { - let __t2267 = v_V3189.clone(); - rt::tl(&__t2267)? + let __t2256 = Value::sym(interp.intern("define")); + let __t2271 = { + let __t2259 = { + let __t2258 = { + let __t2257 = v_V2845.clone(); + rt::tl(&__t2257)? }; - rt::hd(&__t2268)? + rt::hd(&__t2258)? }; - let __t2280 = { - let __t2270 = Value::sym(interp.intern("{")); - let __t2279 = { - let __t2273 = { - let __t2272 = { - let __t2271 = v_V3189.clone(); - rt::tl(&__t2271)? + let __t2270 = { + let __t2260 = Value::sym(interp.intern("{")); + let __t2269 = { + let __t2263 = { + let __t2262 = { + let __t2261 = v_V2845.clone(); + rt::tl(&__t2261)? }; - rt::hd(&__t2272)? + rt::hd(&__t2262)? }; - let __t2277 = { - let __t2276 = { - let __t2275 = { - let __t2274 = v_V3189.clone(); - rt::tl(&__t2274)? + let __t2267 = { + let __t2266 = { + let __t2265 = { + let __t2264 = v_V2845.clone(); + rt::tl(&__t2264)? }; - rt::tl(&__t2275)? + rt::tl(&__t2265)? }; - rt::tl(&__t2276)? + rt::tl(&__t2266)? }; - let __t2278 = v_V3190.clone(); + let __t2268 = v_V2846.clone(); rt::apply_direct( interp, "shen.process-after-type", - &[__t2273, __t2277, __t2278], + &[__t2263, __t2267, __t2268], )? }; - rt::cons(&__t2270, &__t2279) + rt::cons(&__t2260, &__t2269) }; - rt::cons(&__t2269, &__t2280) + rt::cons(&__t2259, &__t2270) }; - rt::cons(&__t2266, &__t2281) + rt::cons(&__t2256, &__t2271) }); } else { { - let __t2239 = { - let __t2225 = { - let __t2213 = + let __t2229 = { + let __t2215 = { + let __t2203 = Value::sym(interp.intern("define")); - let __t2214 = v_V3188.clone(); - rt::eq(&__t2213, &__t2214) + let __t2204 = v_V2844.clone(); + rt::eq(&__t2203, &__t2204) }; - if !rt::is_truthy(interp, &__t2225)? { + if !rt::is_truthy(interp, &__t2215)? { Value::bool(false) } else { - let __t2226 = { - let __t2223 = { - let __t2215 = v_V3189.clone(); - rt::is_cons(&__t2215) + let __t2216 = { + let __t2213 = { + let __t2205 = v_V2845.clone(); + rt::is_cons(&__t2205) }; - if !rt::is_truthy(interp, &__t2223)? { + if !rt::is_truthy(interp, &__t2213)? { Value::bool(false) } else { - let __t2224 = { - let __t2221 = { - let __t2216 = Value::sym( + let __t2214 = { + let __t2211 = { + let __t2206 = Value::sym( interp.intern("define"), ); - let __t2218 = { - let __t2217 = - v_V3189.clone(); - rt::hd(&__t2217)? + let __t2208 = { + let __t2207 = + v_V2845.clone(); + rt::hd(&__t2207)? }; - rt::eq(&__t2216, &__t2218) + rt::eq(&__t2206, &__t2208) }; - if !rt::is_truthy(interp, &__t2221)? + if !rt::is_truthy(interp, &__t2211)? { Value::bool(false) } else { - let __t2222 = { - let __t2220 = { - let __t2219 = - v_V3189.clone(); - rt::tl(&__t2219)? + let __t2212 = { + let __t2210 = { + let __t2209 = + v_V2845.clone(); + rt::tl(&__t2209)? }; - rt::is_cons(&__t2220) + rt::is_cons(&__t2210) }; Value::bool(rt::is_truthy( - interp, &__t2222, + interp, &__t2212, )?) } }; Value::bool(rt::is_truthy( - interp, &__t2224, + interp, &__t2214, )?) } }; - Value::bool(rt::is_truthy(interp, &__t2226)?) + Value::bool(rt::is_truthy(interp, &__t2216)?) } }; - if match rt::is_truthy(interp, &__t2239) { + if match rt::is_truthy(interp, &__t2229) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2227 = + let __t2217 = Value::sym(interp.intern("define")); - let __t2238 = { - let __t2230 = { - let __t2229 = { - let __t2228 = v_V3189.clone(); - rt::tl(&__t2228)? + let __t2228 = { + let __t2220 = { + let __t2219 = { + let __t2218 = v_V2845.clone(); + rt::tl(&__t2218)? }; - rt::hd(&__t2229)? + rt::hd(&__t2219)? }; - let __t2237 = { - let __t2233 = { - let v_V3190 = v_V3190.clone(); + let __t2227 = { + let __t2223 = { + let v_V2846 = v_V2846.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3191 = + let v_Z2847 = args[0].clone(); Ok({ - let __t2231 = - v_Z3191.clone(); - let __t2232 = - v_V3190.clone(); - rt::apply_direct(interp, "shen.process-applications", &[__t2231, __t2232])? + let __t2221 = + v_Z2847.clone(); + let __t2222 = + v_V2846.clone(); + rt::apply_direct(interp, "shen.process-applications", &[__t2221, __t2222])? }) }, - vec![v_V3190], + vec![v_V2846], interp, ) }; - let __t2236 = { - let __t2235 = { - let __t2234 = v_V3189.clone(); - rt::tl(&__t2234)? + let __t2226 = { + let __t2225 = { + let __t2224 = v_V2845.clone(); + rt::tl(&__t2224)? }; - rt::tl(&__t2235)? + rt::tl(&__t2225)? }; rt::apply_direct( interp, "map", - &[__t2233, __t2236], + &[__t2223, __t2226], )? }; - rt::cons(&__t2230, &__t2237) + rt::cons(&__t2220, &__t2227) }; - rt::cons(&__t2227, &__t2238) + rt::cons(&__t2217, &__t2228) }); } else { { - let __t2212 = { - let __t2208 = + let __t2202 = { + let __t2198 = Value::sym(interp.intern("synonyms")); - let __t2209 = v_V3188.clone(); - rt::eq(&__t2208, &__t2209) + let __t2199 = v_V2844.clone(); + rt::eq(&__t2198, &__t2199) }; - if match rt::is_truthy(interp, &__t2212) { + if match rt::is_truthy(interp, &__t2202) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2210 = Value::sym( + let __t2200 = Value::sym( interp.intern("synonyms"), ); - let __t2211 = v_V3189.clone(); - rt::cons(&__t2210, &__t2211) + let __t2201 = v_V2845.clone(); + rt::cons(&__t2200, &__t2201) }); } else { { - let __t2207 = { - let __t2195 = { - let __t2171 = Value::sym( + let __t2197 = { + let __t2185 = { + let __t2161 = Value::sym( interp.intern("type"), ); - let __t2172 = v_V3188.clone(); - rt::eq(&__t2171, &__t2172) + let __t2162 = v_V2844.clone(); + rt::eq(&__t2161, &__t2162) }; - if !rt::is_truthy(interp, &__t2195)? + if !rt::is_truthy(interp, &__t2185)? { Value::bool(false) } else { - let __t2196 = { - let __t2193 = { - let __t2173 = - v_V3189.clone(); - rt::is_cons(&__t2173) + let __t2186 = { + let __t2183 = { + let __t2163 = + v_V2845.clone(); + rt::is_cons(&__t2163) }; if !rt::is_truthy( - interp, &__t2193, + interp, &__t2183, )? { Value::bool(false) } else { - let __t2194 = { - let __t2191 = { - let __t2174 = Value::sym(interp.intern("type")); - let __t2176 = { - let __t2175 = v_V3189.clone(); - rt::hd(&__t2175)? + let __t2184 = { + let __t2181 = { + let __t2164 = Value::sym(interp.intern("type")); + let __t2166 = { + let __t2165 = v_V2845.clone(); + rt::hd(&__t2165)? }; rt::eq( - &__t2174, - &__t2176, + &__t2164, + &__t2166, ) }; if !rt::is_truthy( interp, - &__t2191, + &__t2181, )? { Value::bool( false, ) } else { - let __t2192 = { - let __t2189 = { - let __t2178 = { - let __t2177 = v_V3189.clone(); - rt::tl(&__t2177)? + let __t2182 = { + let __t2179 = { + let __t2168 = { + let __t2167 = v_V2845.clone(); + rt::tl(&__t2167)? }; - rt::is_cons(&__t2178) + rt::is_cons(&__t2168) }; - if !rt::is_truthy(interp, &__t2189)? { Value::bool(false) } else { let __t2190 = { let __t2187 = { let __t2181 = { let __t2180 = { let __t2179 = v_V3189.clone(); rt::tl(&__t2179)? }; rt::tl(&__t2180)? }; rt::is_cons(&__t2181) }; if !rt::is_truthy(interp, &__t2187)? { Value::bool(false) } else { let __t2188 = { let __t2182 = Value::nil(); let __t2186 = { let __t2185 = { let __t2184 = { let __t2183 = v_V3189.clone(); rt::tl(&__t2183)? }; rt::tl(&__t2184)? }; rt::tl(&__t2185)? }; rt::eq(&__t2182, &__t2186) }; Value::bool(rt::is_truthy(interp, &__t2188)?) } }; Value::bool(rt::is_truthy(interp, &__t2190)?) } + if !rt::is_truthy(interp, &__t2179)? { Value::bool(false) } else { let __t2180 = { let __t2177 = { let __t2171 = { let __t2170 = { let __t2169 = v_V2845.clone(); rt::tl(&__t2169)? }; rt::tl(&__t2170)? }; rt::is_cons(&__t2171) }; if !rt::is_truthy(interp, &__t2177)? { Value::bool(false) } else { let __t2178 = { let __t2172 = Value::nil(); let __t2176 = { let __t2175 = { let __t2174 = { let __t2173 = v_V2845.clone(); rt::tl(&__t2173)? }; rt::tl(&__t2174)? }; rt::tl(&__t2175)? }; rt::eq(&__t2172, &__t2176) }; Value::bool(rt::is_truthy(interp, &__t2178)?) } }; Value::bool(rt::is_truthy(interp, &__t2180)?) } }; - Value::bool(rt::is_truthy(interp, &__t2192)?) + Value::bool(rt::is_truthy(interp, &__t2182)?) } }; Value::bool( rt::is_truthy( interp, - &__t2194, + &__t2184, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t2196, + interp, &__t2186, )?) } }; - if match rt::is_truthy(interp, &__t2207) + if match rt::is_truthy(interp, &__t2197) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2197 = Value::sym( + let __t2187 = Value::sym( interp.intern("type"), ); - let __t2206 = { - let __t2202 = { - let __t2200 = { - let __t2199 = { - let __t2198 = - v_V3189 + let __t2196 = { + let __t2192 = { + let __t2190 = { + let __t2189 = { + let __t2188 = + v_V2845 .clone( ); rt::tl( - &__t2198, + &__t2188, )? }; - rt::hd(&__t2199)? + rt::hd(&__t2189)? }; - let __t2201 = - v_V3190.clone(); - rt::apply_direct(interp, "shen.process-applications", &[__t2200, __t2201])? + let __t2191 = + v_V2846.clone(); + rt::apply_direct(interp, "shen.process-applications", &[__t2190, __t2191])? }; - let __t2205 = { - let __t2204 = { - let __t2203 = - v_V3189.clone(); - rt::tl(&__t2203)? + let __t2195 = { + let __t2194 = { + let __t2193 = + v_V2845.clone(); + rt::tl(&__t2193)? }; - rt::tl(&__t2204)? + rt::tl(&__t2194)? }; - rt::cons(&__t2202, &__t2205) + rt::cons(&__t2192, &__t2195) }; - rt::cons(&__t2197, &__t2206) + rt::cons(&__t2187, &__t2196) }); } else { { - let __t2170 = { - let __t2155 = { - let __t2131 = + let __t2160 = { + let __t2145 = { + let __t2121 = Value::sym( interp.intern( "input+", ), ); - let __t2132 = - v_V3188.clone(); + let __t2122 = + v_V2844.clone(); rt::eq( - &__t2131, &__t2132, + &__t2121, &__t2122, ) }; if !rt::is_truthy( - interp, &__t2155, + interp, &__t2145, )? { Value::bool(false) } else { - let __t2156 = { - let __t2153 = { - let __t2133 = - v_V3189 + let __t2146 = { + let __t2143 = { + let __t2123 = + v_V2845 .clone( ); rt::is_cons( - &__t2133, + &__t2123, ) }; if !rt::is_truthy( interp, - &__t2153, + &__t2143, )? { Value::bool( false, ) } else { - let __t2154 = { - let __t2151 = { - let __t2134 = Value::sym(interp.intern("input+")); - let __t2136 = { - let __t2135 = v_V3189.clone(); - rt::hd(&__t2135)? + let __t2144 = { + let __t2141 = { + let __t2124 = Value::sym(interp.intern("input+")); + let __t2126 = { + let __t2125 = v_V2845.clone(); + rt::hd(&__t2125)? }; - rt::eq(&__t2134, &__t2136) + rt::eq(&__t2124, &__t2126) }; - if !rt::is_truthy(interp, &__t2151)? { Value::bool(false) } else { let __t2152 = { let __t2149 = { let __t2138 = { let __t2137 = v_V3189.clone(); rt::tl(&__t2137)? }; rt::is_cons(&__t2138) }; if !rt::is_truthy(interp, &__t2149)? { Value::bool(false) } else { let __t2150 = { let __t2147 = { let __t2141 = { let __t2140 = { let __t2139 = v_V3189.clone(); rt::tl(&__t2139)? }; rt::tl(&__t2140)? }; rt::is_cons(&__t2141) }; if !rt::is_truthy(interp, &__t2147)? { Value::bool(false) } else { let __t2148 = { let __t2142 = Value::nil(); let __t2146 = { let __t2145 = { let __t2144 = { let __t2143 = v_V3189.clone(); rt::tl(&__t2143)? }; rt::tl(&__t2144)? }; rt::tl(&__t2145)? }; rt::eq(&__t2142, &__t2146) }; Value::bool(rt::is_truthy(interp, &__t2148)?) } }; Value::bool(rt::is_truthy(interp, &__t2150)?) } }; Value::bool(rt::is_truthy(interp, &__t2152)?) } + if !rt::is_truthy(interp, &__t2141)? { Value::bool(false) } else { let __t2142 = { let __t2139 = { let __t2128 = { let __t2127 = v_V2845.clone(); rt::tl(&__t2127)? }; rt::is_cons(&__t2128) }; if !rt::is_truthy(interp, &__t2139)? { Value::bool(false) } else { let __t2140 = { let __t2137 = { let __t2131 = { let __t2130 = { let __t2129 = v_V2845.clone(); rt::tl(&__t2129)? }; rt::tl(&__t2130)? }; rt::is_cons(&__t2131) }; if !rt::is_truthy(interp, &__t2137)? { Value::bool(false) } else { let __t2138 = { let __t2132 = Value::nil(); let __t2136 = { let __t2135 = { let __t2134 = { let __t2133 = v_V2845.clone(); rt::tl(&__t2133)? }; rt::tl(&__t2134)? }; rt::tl(&__t2135)? }; rt::eq(&__t2132, &__t2136) }; Value::bool(rt::is_truthy(interp, &__t2138)?) } }; Value::bool(rt::is_truthy(interp, &__t2140)?) } }; Value::bool(rt::is_truthy(interp, &__t2142)?) } }; - Value::bool(rt::is_truthy(interp, &__t2154)?) + Value::bool(rt::is_truthy(interp, &__t2144)?) } }; Value::bool( rt::is_truthy( interp, - &__t2156, + &__t2146, )?, ) } }; if match rt::is_truthy( - interp, &__t2170, + interp, &__t2160, ) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2157 = + let __t2147 = Value::sym( interp.intern( "input+", ), ); - let __t2169 = { - let __t2160 = { - let __t2159 = { - let __t2158 = v_V3189.clone(); - rt::tl(&__t2158)? + let __t2159 = { + let __t2150 = { + let __t2149 = { + let __t2148 = v_V2845.clone(); + rt::tl(&__t2148)? }; rt::hd( - &__t2159, + &__t2149, )? }; - let __t2168 = { - let __t2166 = { - let __t2164 = { - let __t2163 = { - let __t2162 = { let __t2161 = v_V3189.clone(); rt::tl(&__t2161)? }; - rt::tl(&__t2162)? + let __t2158 = { + let __t2156 = { + let __t2154 = { + let __t2153 = { + let __t2152 = { let __t2151 = v_V2845.clone(); rt::tl(&__t2151)? }; + rt::tl(&__t2152)? }; - rt::hd(&__t2163)? + rt::hd(&__t2153)? }; - let __t2165 = v_V3190.clone(); - rt::apply_direct(interp, "shen.process-applications", &[__t2164, __t2165])? + let __t2155 = v_V2846.clone(); + rt::apply_direct(interp, "shen.process-applications", &[__t2154, __t2155])? }; - let __t2167 = + let __t2157 = Value::nil( ); rt::cons( - &__t2166, - &__t2167, + &__t2156, + &__t2157, ) }; rt::cons( - &__t2160, - &__t2168, + &__t2150, + &__t2158, ) }; rt::cons( - &__t2157, &__t2169, + &__t2147, &__t2159, ) }); } else { { - let __t2130 = { - let __t2120 = { - let __t2117 = - v_V3189 + let __t2120 = { + let __t2110 = { + let __t2107 = + v_V2845 .clone( ); rt::is_cons( - &__t2117, + &__t2107, ) }; if !rt::is_truthy( interp, - &__t2120, + &__t2110, )? { Value::bool( false, ) } else { - let __t2121 = { - let __t2119 = { - let __t2118 = v_V3189.clone(); - rt::hd(&__t2118)? + let __t2111 = { + let __t2109 = { + let __t2108 = v_V2845.clone(); + rt::hd(&__t2108)? }; - rt::apply_direct(interp, "shen.special?", &[__t2119])? + rt::apply_direct(interp, "shen.special?", &[__t2109])? }; - Value::bool(rt::is_truthy(interp, &__t2121)?) + Value::bool(rt::is_truthy(interp, &__t2111)?) } }; if match rt::is_truthy( - interp, &__t2130, + interp, &__t2120, ) { Ok(b) => b, Err(e) => { @@ -13661,36 +13617,36 @@ pub fn aot_shen_x2e_special_x2d_case(interp: &mut Interp, args: &[Value]) -> She } } { break Ok({ - let __t2123 = { - let __t2122 = v_V3189.clone(); - rt::hd(&__t2122)? + let __t2113 = { + let __t2112 = v_V2845.clone(); + rt::hd(&__t2112)? }; - let __t2129 = { - let __t2126 = { - let v_V3190 = v_V3190.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z3192 = args[0].clone(); Ok({ let __t2124 = v_Z3192.clone(); let __t2125 = v_V3190.clone(); rt::apply_direct(interp, "shen.process-applications", &[__t2124, __t2125])? }) }, vec![v_V3190], interp) + let __t2119 = { + let __t2116 = { + let v_V2846 = v_V2846.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z2848 = args[0].clone(); Ok({ let __t2114 = v_Z2848.clone(); let __t2115 = v_V2846.clone(); rt::apply_direct(interp, "shen.process-applications", &[__t2114, __t2115])? }) }, vec![v_V2846], interp) }; - let __t2128 = { - let __t2127 = v_V3189.clone(); - rt::tl(&__t2127)? + let __t2118 = { + let __t2117 = v_V2845.clone(); + rt::tl(&__t2117)? }; - rt::apply_direct(interp, "map", &[__t2126, __t2128])? + rt::apply_direct(interp, "map", &[__t2116, __t2118])? }; rt::cons( - &__t2123, - &__t2129, + &__t2113, + &__t2119, ) }); } else { { - let __t2116 = { - let __t2114 = { - let __t2111 = v_V3189.clone(); - rt::is_cons(&__t2111) + let __t2106 = { + let __t2104 = { + let __t2101 = v_V2845.clone(); + rt::is_cons(&__t2101) }; - if !rt::is_truthy(interp, &__t2114)? { Value::bool(false) } else { let __t2115 = { let __t2113 = { let __t2112 = v_V3189.clone(); rt::hd(&__t2112)? }; rt::apply_direct(interp, "shen.extraspecial?", &[__t2113])? }; Value::bool(rt::is_truthy(interp, &__t2115)?) } + if !rt::is_truthy(interp, &__t2104)? { Value::bool(false) } else { let __t2105 = { let __t2103 = { let __t2102 = v_V2845.clone(); rt::hd(&__t2102)? }; rt::apply_direct(interp, "shen.extraspecial?", &[__t2103])? }; Value::bool(rt::is_truthy(interp, &__t2105)?) } }; - if match rt::is_truthy(interp, &__t2116) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V3189.clone()); } else { { let __t2110 = Value::bool(true); if match rt::is_truthy(interp, &__t2110) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2109 = Value::sym(interp.intern("shen.special-case")); rt::apply_direct(interp, "shen.f-error", &[__t2109])? }); } else { break Err(ShenError::new("cond: no clause matched")); } } } + if match rt::is_truthy(interp, &__t2106) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(v_V2845.clone()); } else { { let __t2100 = Value::bool(true); if match rt::is_truthy(interp, &__t2100) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2099 = Value::str("partial function shen.special-case"); rt::apply_direct(interp, "simple-error", &[__t2099])? }); } else { break Err(ShenError::new("cond: no clause matched")); } } } } } } @@ -13718,186 +13674,6 @@ fn install_shen_x2e_special_x2d_case(interp: &mut Interp) { interp.register_aot_direct("shen.special-case", aot_shen_x2e_special_x2d_case); } -/// AOT-compiled from KL `(defun shen.process-cond-clauses ...)` -pub fn aot_shen_x2e_process_x2d_cond_x2d_clauses( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.process-cond-clauses: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V3195 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V3196 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t2452 = { - let __t2450 = Value::nil(); - let __t2451 = v_V3195.clone(); - rt::eq(&__t2450, &__t2451) - }; - if match rt::is_truthy(interp, &__t2452) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::nil()); - } else { - { - let __t2449 = { - let __t2429 = { - let __t2414 = v_V3195.clone(); - rt::is_cons(&__t2414) - }; - if !rt::is_truthy(interp, &__t2429)? { - Value::bool(false) - } else { - let __t2430 = { - let __t2427 = { - let __t2416 = { - let __t2415 = v_V3195.clone(); - rt::hd(&__t2415)? - }; - rt::is_cons(&__t2416) - }; - if !rt::is_truthy(interp, &__t2427)? { - Value::bool(false) - } else { - let __t2428 = { - let __t2425 = { - let __t2419 = { - let __t2418 = { - let __t2417 = v_V3195.clone(); - rt::hd(&__t2417)? - }; - rt::tl(&__t2418)? - }; - rt::is_cons(&__t2419) - }; - if !rt::is_truthy(interp, &__t2425)? { - Value::bool(false) - } else { - let __t2426 = { - let __t2420 = Value::nil(); - let __t2424 = { - let __t2423 = { - let __t2422 = { - let __t2421 = v_V3195.clone(); - rt::hd(&__t2421)? - }; - rt::tl(&__t2422)? - }; - rt::tl(&__t2423)? - }; - rt::eq(&__t2420, &__t2424) - }; - Value::bool(rt::is_truthy(interp, &__t2426)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2428)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t2430)?) - } - }; - if match rt::is_truthy(interp, &__t2449) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2444 = { - let __t2435 = { - let __t2433 = { - let __t2432 = { - let __t2431 = v_V3195.clone(); - rt::hd(&__t2431)? - }; - rt::hd(&__t2432)? - }; - let __t2434 = v_V3196.clone(); - rt::apply_direct( - interp, - "shen.process-applications", - &[__t2433, __t2434], - )? - }; - let __t2443 = { - let __t2441 = { - let __t2439 = { - let __t2438 = { - let __t2437 = { - let __t2436 = v_V3195.clone(); - rt::hd(&__t2436)? - }; - rt::tl(&__t2437)? - }; - rt::hd(&__t2438)? - }; - let __t2440 = v_V3196.clone(); - rt::apply_direct( - interp, - "shen.process-applications", - &[__t2439, __t2440], - )? - }; - let __t2442 = Value::nil(); - rt::cons(&__t2441, &__t2442) - }; - rt::cons(&__t2435, &__t2443) - }; - let __t2448 = { - let __t2446 = { - let __t2445 = v_V3195.clone(); - rt::tl(&__t2445)? - }; - let __t2447 = v_V3196.clone(); - rt::apply_direct( - interp, - "shen.process-cond-clauses", - &[__t2446, __t2447], - )? - }; - rt::cons(&__t2444, &__t2448) - }); - } else { - { - let __t2413 = Value::bool(true); - if match rt::is_truthy(interp, &__t2413) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t2412 = - Value::sym(interp.intern("shen.process-cond-clauses")); - rt::apply_direct(interp, "shen.f-error", &[__t2412])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2e_process_x2d_cond_x2d_clauses(interp: &mut Interp) { - interp.register_native( - "shen.process-cond-clauses", - 2, - aot_shen_x2e_process_x2d_cond_x2d_clauses, - ); - interp.register_aot_direct( - "shen.process-cond-clauses", - aot_shen_x2e_process_x2d_cond_x2d_clauses, - ); -} - /// AOT-compiled from KL `(defun shen.process-after-type ...)` pub fn aot_shen_x2e_process_x2d_after_x2d_type( interp: &mut Interp, @@ -13910,122 +13686,122 @@ pub fn aot_shen_x2e_process_x2d_after_x2d_type( ))); } #[allow(unused_mut)] - let mut v_V3199 = args[0].clone(); + let mut v_V2851 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3200 = args[1].clone(); + let mut v_V2852 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3201 = args[2].clone(); + let mut v_V2853 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t2482 = { - let __t2473 = { - let __t2469 = v_V3200.clone(); - rt::is_cons(&__t2469) + let __t2431 = { + let __t2422 = { + let __t2418 = v_V2852.clone(); + rt::is_cons(&__t2418) }; - if !rt::is_truthy(interp, &__t2473)? { + if !rt::is_truthy(interp, &__t2422)? { Value::bool(false) } else { - let __t2474 = { - let __t2470 = Value::sym(interp.intern("}")); - let __t2472 = { - let __t2471 = v_V3200.clone(); - rt::hd(&__t2471)? + let __t2423 = { + let __t2419 = Value::sym(interp.intern("}")); + let __t2421 = { + let __t2420 = v_V2852.clone(); + rt::hd(&__t2420)? }; - rt::eq(&__t2470, &__t2472) + rt::eq(&__t2419, &__t2421) }; - Value::bool(rt::is_truthy(interp, &__t2474)?) + Value::bool(rt::is_truthy(interp, &__t2423)?) } }; - if match rt::is_truthy(interp, &__t2482) { + if match rt::is_truthy(interp, &__t2431) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2475 = Value::sym(interp.intern("}")); - let __t2481 = { - let __t2478 = { - let v_V3201 = v_V3201.clone(); + let __t2424 = Value::sym(interp.intern("}")); + let __t2430 = { + let __t2427 = { + let v_V2853 = v_V2853.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3202 = args[0].clone(); + let v_Z2854 = args[0].clone(); Ok({ - let __t2476 = v_Z3202.clone(); - let __t2477 = v_V3201.clone(); + let __t2425 = v_Z2854.clone(); + let __t2426 = v_V2853.clone(); rt::apply_direct( interp, "shen.process-applications", - &[__t2476, __t2477], + &[__t2425, __t2426], )? }) }, - vec![v_V3201], + vec![v_V2853], interp, ) }; - let __t2480 = { - let __t2479 = v_V3200.clone(); - rt::tl(&__t2479)? + let __t2429 = { + let __t2428 = v_V2852.clone(); + rt::tl(&__t2428)? }; - rt::apply_direct(interp, "map", &[__t2478, __t2480])? + rt::apply_direct(interp, "map", &[__t2427, __t2429])? }; - rt::cons(&__t2475, &__t2481) + rt::cons(&__t2424, &__t2430) }); } else { { - let __t2468 = { - let __t2460 = v_V3200.clone(); - rt::is_cons(&__t2460) + let __t2417 = { + let __t2409 = v_V2852.clone(); + rt::is_cons(&__t2409) }; - if match rt::is_truthy(interp, &__t2468) { + if match rt::is_truthy(interp, &__t2417) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2462 = { - let __t2461 = v_V3200.clone(); - rt::hd(&__t2461)? - }; - let __t2467 = { - let __t2463 = v_V3199.clone(); - let __t2465 = { - let __t2464 = v_V3200.clone(); - rt::tl(&__t2464)? + let __t2411 = { + let __t2410 = v_V2852.clone(); + rt::hd(&__t2410)? + }; + let __t2416 = { + let __t2412 = v_V2851.clone(); + let __t2414 = { + let __t2413 = v_V2852.clone(); + rt::tl(&__t2413)? }; - let __t2466 = v_V3201.clone(); + let __t2415 = v_V2853.clone(); rt::apply_direct( interp, "shen.process-after-type", - &[__t2463, __t2465, __t2466], + &[__t2412, __t2414, __t2415], )? }; - rt::cons(&__t2462, &__t2467) + rt::cons(&__t2411, &__t2416) }); } else { { - let __t2459 = Value::bool(true); - if match rt::is_truthy(interp, &__t2459) { + let __t2408 = Value::bool(true); + if match rt::is_truthy(interp, &__t2408) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2458 = { - let __t2453 = Value::str("missing } in "); - let __t2457 = { - let __t2454 = v_V3199.clone(); - let __t2455 = Value::str("\n"); - let __t2456 = Value::sym(interp.intern("shen.a")); + let __t2407 = { + let __t2402 = Value::str("missing } in "); + let __t2406 = { + let __t2403 = v_V2851.clone(); + let __t2404 = Value::str("\n"); + let __t2405 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t2454, __t2455, __t2456], + &[__t2403, __t2404, __t2405], )? }; - rt::apply_direct(interp, "cn", &[__t2453, __t2457])? + rt::apply_direct(interp, "cn", &[__t2402, __t2406])? }; - rt::apply_direct(interp, "simple-error", &[__t2458])? + rt::apply_direct(interp, "simple-error", &[__t2407])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -14062,200 +13838,200 @@ pub fn aot_shen_x2e_process_x2d_application( ))); } #[allow(unused_mut)] - let mut v_V3203 = args[0].clone(); + let mut v_V2855 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3204 = args[1].clone(); + let mut v_V2856 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2548 = { - let __t2485 = v_V3203.clone(); - rt::is_cons(&__t2485) + let __t2497 = { + let __t2434 = v_V2855.clone(); + rt::is_cons(&__t2434) }; - if match rt::is_truthy(interp, &__t2548) { + if match rt::is_truthy(interp, &__t2497) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3205 = { - let __t2487 = { - let __t2486 = v_V3203.clone(); - rt::hd(&__t2486)? + let v_W2857 = { + let __t2436 = { + let __t2435 = v_V2855.clone(); + rt::hd(&__t2435)? }; - rt::apply_direct(interp, "arity", &[__t2487])? + rt::apply_direct(interp, "arity", &[__t2436])? }; { - let v_W3206 = { - let __t2489 = { - let __t2488 = v_V3203.clone(); - rt::tl(&__t2488)? + let v_W2858 = { + let __t2438 = { + let __t2437 = v_V2855.clone(); + rt::tl(&__t2437)? }; - rt::apply_direct(interp, "length", &[__t2489])? + rt::apply_direct(interp, "length", &[__t2438])? }; { - let __t2492 = { - let __t2490 = v_V3203.clone(); - let __t2491 = v_V3204.clone(); - rt::apply_direct(interp, "element?", &[__t2490, __t2491])? + let __t2441 = { + let __t2439 = v_V2855.clone(); + let __t2440 = v_V2856.clone(); + rt::apply_direct(interp, "element?", &[__t2439, __t2440])? }; - if match rt::is_truthy(interp, &__t2492) { + if match rt::is_truthy(interp, &__t2441) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3203.clone()); + break Ok(v_V2855.clone()); } else { { - let __t2495 = { - let __t2494 = { - let __t2493 = v_V3203.clone(); - rt::hd(&__t2493)? + let __t2444 = { + let __t2443 = { + let __t2442 = v_V2855.clone(); + rt::hd(&__t2442)? }; - rt::apply_direct(interp, "shen.shen-call?", &[__t2494])? + rt::apply_direct(interp, "shen.shen-call?", &[__t2443])? }; - if match rt::is_truthy(interp, &__t2495) { + if match rt::is_truthy(interp, &__t2444) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3203.clone()); + break Ok(v_V2855.clone()); } else { { - let __t2497 = { - let __t2496 = v_V3203.clone(); + let __t2446 = { + let __t2445 = v_V2855.clone(); rt::apply_direct( interp, "shen.foreign?", - &[__t2496], + &[__t2445], )? }; - if match rt::is_truthy(interp, &__t2497) { + if match rt::is_truthy(interp, &__t2446) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2498 = v_V3203.clone(); + let __t2447 = v_V2855.clone(); rt::apply_direct( interp, "shen.unpack-foreign", - &[__t2498], + &[__t2447], )? }); } else { { - let __t2500 = { - let __t2499 = v_V3203.clone(); + let __t2449 = { + let __t2448 = v_V2855.clone(); rt::apply_direct( interp, "shen.fn-call?", - &[__t2499], + &[__t2448], )? }; - if match rt::is_truthy(interp, &__t2500) { + if match rt::is_truthy(interp, &__t2449) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2501 = v_V3203.clone(); + let __t2450 = v_V2855.clone(); rt::apply_direct( interp, "shen.fn-call", - &[__t2501], + &[__t2450], )? }); } else { { - let __t2503 = { - let __t2502 = v_V3203.clone(); + let __t2452 = { + let __t2451 = v_V2855.clone(); rt::apply_direct( interp, "shen.zero-place?", - &[__t2502], + &[__t2451], )? }; - if match rt::is_truthy(interp, &__t2503) + if match rt::is_truthy(interp, &__t2452) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3203.clone()); + break Ok(v_V2855.clone()); } else { { - let __t2507 = { - let __t2505 = { - let __t2504 = - v_V3203.clone(); - rt::hd(&__t2504)? + let __t2456 = { + let __t2454 = { + let __t2453 = + v_V2855.clone(); + rt::hd(&__t2453)? }; - let __t2506 = - v_W3205.clone(); + let __t2455 = + v_W2857.clone(); rt::apply_direct( interp, "shen.undefined-f?", - &[__t2505, __t2506], + &[__t2454, __t2455], )? }; if match rt::is_truthy( - interp, &__t2507, + interp, &__t2456, ) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2516 = { - let __t2513 = { - let __t2508 = Value::sym(interp.intern("fn")); - let __t2512 = { - let __t2510 = { - let __t2509 = v_V3203.clone(); - rt::hd(&__t2509)? + let __t2465 = { + let __t2462 = { + let __t2457 = Value::sym(interp.intern("fn")); + let __t2461 = { + let __t2459 = { + let __t2458 = v_V2855.clone(); + rt::hd(&__t2458)? }; - let __t2511 = Value::nil(); - rt::cons(&__t2510, &__t2511) + let __t2460 = Value::nil(); + rt::cons(&__t2459, &__t2460) }; rt::cons( - &__t2508, - &__t2512, + &__t2457, + &__t2461, ) }; - let __t2515 = { - let __t2514 = - v_V3203 + let __t2464 = { + let __t2463 = + v_V2855 .clone( ); rt::tl( - &__t2514, + &__t2463, )? }; rt::cons( - &__t2513, - &__t2515, + &__t2462, + &__t2464, ) }; rt::apply_direct( interp, "shen.simple-curry", - &[__t2516], + &[__t2465], )? }); } else { { - let __t2519 = { - let __t2518 = { - let __t2517 = - v_V3203 + let __t2468 = { + let __t2467 = { + let __t2466 = + v_V2855 .clone( ); rt::hd( - &__t2517, + &__t2466, )? }; rt::apply_direct( interp, "variable?", - &[__t2518], + &[__t2467], )? }; if match rt::is_truthy( - interp, &__t2519, + interp, &__t2468, ) { Ok(b) => b, Err(e) => { @@ -14263,22 +14039,22 @@ pub fn aot_shen_x2e_process_x2d_application( } } { break Ok({ - let __t2520 = - v_V3203 + let __t2469 = + v_V2855 .clone( ); - rt::apply_direct(interp, "shen.simple-curry", &[__t2520])? + rt::apply_direct(interp, "shen.simple-curry", &[__t2469])? }); } else { { - let __t2523 = { - let __t2522 = { - let __t2521 = v_V3203.clone(); - rt::hd(&__t2521)? + let __t2472 = { + let __t2471 = { + let __t2470 = v_V2855.clone(); + rt::hd(&__t2470)? }; - rt::apply_direct(interp, "shen.application?", &[__t2522])? + rt::apply_direct(interp, "shen.application?", &[__t2471])? }; - if match rt::is_truthy(interp, &__t2523) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2524 = v_V3203.clone(); rt::apply_direct(interp, "shen.simple-curry", &[__t2524])? }); } else { { let __t2529 = { let __t2526 = { let __t2525 = v_V3203.clone(); rt::hd(&__t2525)? }; let __t2527 = v_W3205.clone(); let __t2528 = v_W3206.clone(); rt::apply_direct(interp, "shen.partial-application*?", &[__t2526, __t2527, __t2528])? }; if match rt::is_truthy(interp, &__t2529) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2530 = v_V3203.clone(); let __t2533 = { let __t2531 = v_W3205.clone(); let __t2532 = v_W3206.clone(); rt::sub(&__t2531, &__t2532)? }; rt::apply_direct(interp, "shen.lambda-function", &[__t2530, __t2533])? }); } else { { let __t2538 = { let __t2535 = { let __t2534 = v_V3203.clone(); rt::hd(&__t2534)? }; let __t2536 = v_W3205.clone(); let __t2537 = v_W3206.clone(); rt::apply_direct(interp, "shen.overapplication?", &[__t2535, __t2536, __t2537])? }; if match rt::is_truthy(interp, &__t2538) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2547 = { let __t2544 = { let __t2539 = Value::sym(interp.intern("fn")); let __t2543 = { let __t2541 = { let __t2540 = v_V3203.clone(); rt::hd(&__t2540)? }; let __t2542 = Value::nil(); rt::cons(&__t2541, &__t2542) }; rt::cons(&__t2539, &__t2543) }; let __t2546 = { let __t2545 = v_V3203.clone(); rt::tl(&__t2545)? }; rt::cons(&__t2544, &__t2546) }; rt::apply_direct(interp, "shen.simple-curry", &[__t2547])? }); } else { break Ok(v_V3203.clone()); } } } } } + if match rt::is_truthy(interp, &__t2472) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2473 = v_V2855.clone(); rt::apply_direct(interp, "shen.simple-curry", &[__t2473])? }); } else { { let __t2478 = { let __t2475 = { let __t2474 = v_V2855.clone(); rt::hd(&__t2474)? }; let __t2476 = v_W2857.clone(); let __t2477 = v_W2858.clone(); rt::apply_direct(interp, "shen.partial-application*?", &[__t2475, __t2476, __t2477])? }; if match rt::is_truthy(interp, &__t2478) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2479 = v_V2855.clone(); let __t2482 = { let __t2480 = v_W2857.clone(); let __t2481 = v_W2858.clone(); rt::sub(&__t2480, &__t2481)? }; rt::apply_direct(interp, "shen.lambda-function", &[__t2479, __t2482])? }); } else { { let __t2487 = { let __t2484 = { let __t2483 = v_V2855.clone(); rt::hd(&__t2483)? }; let __t2485 = v_W2857.clone(); let __t2486 = v_W2858.clone(); rt::apply_direct(interp, "shen.overapplication?", &[__t2484, __t2485, __t2486])? }; if match rt::is_truthy(interp, &__t2487) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2496 = { let __t2493 = { let __t2488 = Value::sym(interp.intern("fn")); let __t2492 = { let __t2490 = { let __t2489 = v_V2855.clone(); rt::hd(&__t2489)? }; let __t2491 = Value::nil(); rt::cons(&__t2490, &__t2491) }; rt::cons(&__t2488, &__t2492) }; let __t2495 = { let __t2494 = v_V2855.clone(); rt::tl(&__t2494)? }; rt::cons(&__t2493, &__t2495) }; rt::apply_direct(interp, "shen.simple-curry", &[__t2496])? }); } else { break Ok(v_V2855.clone()); } } } } } } } } @@ -14298,14 +14074,14 @@ pub fn aot_shen_x2e_process_x2d_application( } } else { { - let __t2484 = Value::bool(true); - if match rt::is_truthy(interp, &__t2484) { + let __t2433 = Value::bool(true); + if match rt::is_truthy(interp, &__t2433) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2483 = Value::sym(interp.intern("shen.process-application")); - rt::apply_direct(interp, "shen.f-error", &[__t2483])? + let __t2432 = Value::str("partial function shen.process-application"); + rt::apply_direct(interp, "simple-error", &[__t2432])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -14337,115 +14113,115 @@ pub fn aot_shen_x2e_unpack_x2d_foreign(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3207 = args[0].clone(); + let mut v_V2859 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2580 = { - let __t2572 = { - let __t2551 = v_V3207.clone(); - rt::is_cons(&__t2551) + let __t2529 = { + let __t2521 = { + let __t2500 = v_V2859.clone(); + rt::is_cons(&__t2500) }; - if !rt::is_truthy(interp, &__t2572)? { + if !rt::is_truthy(interp, &__t2521)? { Value::bool(false) } else { - let __t2573 = { - let __t2570 = { - let __t2553 = { - let __t2552 = v_V3207.clone(); - rt::hd(&__t2552)? + let __t2522 = { + let __t2519 = { + let __t2502 = { + let __t2501 = v_V2859.clone(); + rt::hd(&__t2501)? }; - rt::is_cons(&__t2553) + rt::is_cons(&__t2502) }; - if !rt::is_truthy(interp, &__t2570)? { + if !rt::is_truthy(interp, &__t2519)? { Value::bool(false) } else { - let __t2571 = { - let __t2568 = { - let __t2554 = Value::sym(interp.intern("foreign")); - let __t2557 = { - let __t2556 = { - let __t2555 = v_V3207.clone(); - rt::hd(&__t2555)? + let __t2520 = { + let __t2517 = { + let __t2503 = Value::sym(interp.intern("foreign")); + let __t2506 = { + let __t2505 = { + let __t2504 = v_V2859.clone(); + rt::hd(&__t2504)? }; - rt::hd(&__t2556)? + rt::hd(&__t2505)? }; - rt::eq(&__t2554, &__t2557) + rt::eq(&__t2503, &__t2506) }; - if !rt::is_truthy(interp, &__t2568)? { + if !rt::is_truthy(interp, &__t2517)? { Value::bool(false) } else { - let __t2569 = { - let __t2566 = { - let __t2560 = { - let __t2559 = { - let __t2558 = v_V3207.clone(); - rt::hd(&__t2558)? + let __t2518 = { + let __t2515 = { + let __t2509 = { + let __t2508 = { + let __t2507 = v_V2859.clone(); + rt::hd(&__t2507)? }; - rt::tl(&__t2559)? + rt::tl(&__t2508)? }; - rt::is_cons(&__t2560) + rt::is_cons(&__t2509) }; - if !rt::is_truthy(interp, &__t2566)? { + if !rt::is_truthy(interp, &__t2515)? { Value::bool(false) } else { - let __t2567 = { - let __t2561 = Value::nil(); - let __t2565 = { - let __t2564 = { - let __t2563 = { - let __t2562 = v_V3207.clone(); - rt::hd(&__t2562)? + let __t2516 = { + let __t2510 = Value::nil(); + let __t2514 = { + let __t2513 = { + let __t2512 = { + let __t2511 = v_V2859.clone(); + rt::hd(&__t2511)? }; - rt::tl(&__t2563)? + rt::tl(&__t2512)? }; - rt::tl(&__t2564)? + rt::tl(&__t2513)? }; - rt::eq(&__t2561, &__t2565) + rt::eq(&__t2510, &__t2514) }; - Value::bool(rt::is_truthy(interp, &__t2567)?) + Value::bool(rt::is_truthy(interp, &__t2516)?) } }; - Value::bool(rt::is_truthy(interp, &__t2569)?) + Value::bool(rt::is_truthy(interp, &__t2518)?) } }; - Value::bool(rt::is_truthy(interp, &__t2571)?) + Value::bool(rt::is_truthy(interp, &__t2520)?) } }; - Value::bool(rt::is_truthy(interp, &__t2573)?) + Value::bool(rt::is_truthy(interp, &__t2522)?) } }; - if match rt::is_truthy(interp, &__t2580) { + if match rt::is_truthy(interp, &__t2529) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2577 = { - let __t2576 = { - let __t2575 = { - let __t2574 = v_V3207.clone(); - rt::hd(&__t2574)? + let __t2526 = { + let __t2525 = { + let __t2524 = { + let __t2523 = v_V2859.clone(); + rt::hd(&__t2523)? }; - rt::tl(&__t2575)? + rt::tl(&__t2524)? }; - rt::hd(&__t2576)? + rt::hd(&__t2525)? }; - let __t2579 = { - let __t2578 = v_V3207.clone(); - rt::tl(&__t2578)? + let __t2528 = { + let __t2527 = v_V2859.clone(); + rt::tl(&__t2527)? }; - rt::cons(&__t2577, &__t2579) + rt::cons(&__t2526, &__t2528) }); } else { { - let __t2550 = Value::bool(true); - if match rt::is_truthy(interp, &__t2550) { + let __t2499 = Value::bool(true); + if match rt::is_truthy(interp, &__t2499) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2549 = Value::sym(interp.intern("shen.unpack-foreign")); - rt::apply_direct(interp, "shen.f-error", &[__t2549])? + let __t2498 = Value::str("partial function shen.unpack-foreign"); + rt::apply_direct(interp, "simple-error", &[__t2498])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -14470,93 +14246,93 @@ pub fn aot_shen_x2e_foreign_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V3210 = args[0].clone(); + let mut v_V2862 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2605 = { - let __t2603 = { - let __t2582 = v_V3210.clone(); - rt::is_cons(&__t2582) + let __t2554 = { + let __t2552 = { + let __t2531 = v_V2862.clone(); + rt::is_cons(&__t2531) }; - if !rt::is_truthy(interp, &__t2603)? { + if !rt::is_truthy(interp, &__t2552)? { Value::bool(false) } else { - let __t2604 = { - let __t2601 = { - let __t2584 = { - let __t2583 = v_V3210.clone(); - rt::hd(&__t2583)? + let __t2553 = { + let __t2550 = { + let __t2533 = { + let __t2532 = v_V2862.clone(); + rt::hd(&__t2532)? }; - rt::is_cons(&__t2584) + rt::is_cons(&__t2533) }; - if !rt::is_truthy(interp, &__t2601)? { + if !rt::is_truthy(interp, &__t2550)? { Value::bool(false) } else { - let __t2602 = { - let __t2599 = { - let __t2585 = Value::sym(interp.intern("foreign")); - let __t2588 = { - let __t2587 = { - let __t2586 = v_V3210.clone(); - rt::hd(&__t2586)? + let __t2551 = { + let __t2548 = { + let __t2534 = Value::sym(interp.intern("foreign")); + let __t2537 = { + let __t2536 = { + let __t2535 = v_V2862.clone(); + rt::hd(&__t2535)? }; - rt::hd(&__t2587)? + rt::hd(&__t2536)? }; - rt::eq(&__t2585, &__t2588) + rt::eq(&__t2534, &__t2537) }; - if !rt::is_truthy(interp, &__t2599)? { + if !rt::is_truthy(interp, &__t2548)? { Value::bool(false) } else { - let __t2600 = { - let __t2597 = { - let __t2591 = { - let __t2590 = { - let __t2589 = v_V3210.clone(); - rt::hd(&__t2589)? + let __t2549 = { + let __t2546 = { + let __t2540 = { + let __t2539 = { + let __t2538 = v_V2862.clone(); + rt::hd(&__t2538)? }; - rt::tl(&__t2590)? + rt::tl(&__t2539)? }; - rt::is_cons(&__t2591) + rt::is_cons(&__t2540) }; - if !rt::is_truthy(interp, &__t2597)? { + if !rt::is_truthy(interp, &__t2546)? { Value::bool(false) } else { - let __t2598 = { - let __t2592 = Value::nil(); - let __t2596 = { - let __t2595 = { - let __t2594 = { - let __t2593 = v_V3210.clone(); - rt::hd(&__t2593)? + let __t2547 = { + let __t2541 = Value::nil(); + let __t2545 = { + let __t2544 = { + let __t2543 = { + let __t2542 = v_V2862.clone(); + rt::hd(&__t2542)? }; - rt::tl(&__t2594)? + rt::tl(&__t2543)? }; - rt::tl(&__t2595)? + rt::tl(&__t2544)? }; - rt::eq(&__t2592, &__t2596) + rt::eq(&__t2541, &__t2545) }; - Value::bool(rt::is_truthy(interp, &__t2598)?) + Value::bool(rt::is_truthy(interp, &__t2547)?) } }; - Value::bool(rt::is_truthy(interp, &__t2600)?) + Value::bool(rt::is_truthy(interp, &__t2549)?) } }; - Value::bool(rt::is_truthy(interp, &__t2602)?) + Value::bool(rt::is_truthy(interp, &__t2551)?) } }; - Value::bool(rt::is_truthy(interp, &__t2604)?) + Value::bool(rt::is_truthy(interp, &__t2553)?) } }; - if match rt::is_truthy(interp, &__t2605) { + if match rt::is_truthy(interp, &__t2554) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2581 = Value::bool(true); - if match rt::is_truthy(interp, &__t2581) { + let __t2530 = Value::bool(true); + if match rt::is_truthy(interp, &__t2530) { Ok(b) => b, Err(e) => break Err(e), } { @@ -14584,38 +14360,38 @@ pub fn aot_shen_x2e_zero_x2d_place_x3f_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3213 = args[0].clone(); + let mut v_V2865 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2613 = { - let __t2611 = { - let __t2607 = v_V3213.clone(); - rt::is_cons(&__t2607) + let __t2562 = { + let __t2560 = { + let __t2556 = v_V2865.clone(); + rt::is_cons(&__t2556) }; - if !rt::is_truthy(interp, &__t2611)? { + if !rt::is_truthy(interp, &__t2560)? { Value::bool(false) } else { - let __t2612 = { - let __t2608 = Value::nil(); - let __t2610 = { - let __t2609 = v_V3213.clone(); - rt::tl(&__t2609)? + let __t2561 = { + let __t2557 = Value::nil(); + let __t2559 = { + let __t2558 = v_V2865.clone(); + rt::tl(&__t2558)? }; - rt::eq(&__t2608, &__t2610) + rt::eq(&__t2557, &__t2559) }; - Value::bool(rt::is_truthy(interp, &__t2612)?) + Value::bool(rt::is_truthy(interp, &__t2561)?) } }; - if match rt::is_truthy(interp, &__t2613) { + if match rt::is_truthy(interp, &__t2562) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2606 = Value::bool(true); - if match rt::is_truthy(interp, &__t2606) { + let __t2555 = Value::bool(true); + if match rt::is_truthy(interp, &__t2555) { Ok(b) => b, Err(e) => break Err(e), } { @@ -14643,26 +14419,26 @@ pub fn aot_shen_x2e_shen_x2d_call_x3f_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3214 = args[0].clone(); + let mut v_V2866 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2615 = { - let __t2614 = v_V3214.clone(); - rt::is_symbol(&__t2614) + let __t2564 = { + let __t2563 = v_V2866.clone(); + rt::is_symbol(&__t2563) }; - if !match rt::is_truthy(interp, &__t2615) { + if !match rt::is_truthy(interp, &__t2564) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t2617 = { - let __t2616 = v_V3214.clone(); - rt::apply_direct(interp, "str", &[__t2616])? + let __t2566 = { + let __t2565 = v_V2866.clone(); + rt::apply_direct(interp, "str", &[__t2565])? }; - rt::apply_direct(interp, "shen.internal-to-shen?", &[__t2617])? + rt::apply_direct(interp, "shen.internal-to-shen?", &[__t2566])? }); } } @@ -14683,134 +14459,134 @@ pub fn aot_shen_x2e_application_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3219 = args[0].clone(); + let mut v_V2871 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2653 = { - let __t2651 = { - let __t2637 = v_V3219.clone(); - rt::is_cons(&__t2637) + let __t2602 = { + let __t2600 = { + let __t2586 = v_V2871.clone(); + rt::is_cons(&__t2586) }; - if !rt::is_truthy(interp, &__t2651)? { + if !rt::is_truthy(interp, &__t2600)? { Value::bool(false) } else { - let __t2652 = { - let __t2649 = { - let __t2638 = Value::sym(interp.intern("protect")); - let __t2640 = { - let __t2639 = v_V3219.clone(); - rt::hd(&__t2639)? - }; - rt::eq(&__t2638, &__t2640) + let __t2601 = { + let __t2598 = { + let __t2587 = Value::sym(interp.intern("protect")); + let __t2589 = { + let __t2588 = v_V2871.clone(); + rt::hd(&__t2588)? + }; + rt::eq(&__t2587, &__t2589) }; - if !rt::is_truthy(interp, &__t2649)? { + if !rt::is_truthy(interp, &__t2598)? { Value::bool(false) } else { - let __t2650 = { - let __t2647 = { - let __t2642 = { - let __t2641 = v_V3219.clone(); - rt::tl(&__t2641)? + let __t2599 = { + let __t2596 = { + let __t2591 = { + let __t2590 = v_V2871.clone(); + rt::tl(&__t2590)? }; - rt::is_cons(&__t2642) + rt::is_cons(&__t2591) }; - if !rt::is_truthy(interp, &__t2647)? { + if !rt::is_truthy(interp, &__t2596)? { Value::bool(false) } else { - let __t2648 = { - let __t2643 = Value::nil(); - let __t2646 = { - let __t2645 = { - let __t2644 = v_V3219.clone(); - rt::tl(&__t2644)? + let __t2597 = { + let __t2592 = Value::nil(); + let __t2595 = { + let __t2594 = { + let __t2593 = v_V2871.clone(); + rt::tl(&__t2593)? }; - rt::tl(&__t2645)? + rt::tl(&__t2594)? }; - rt::eq(&__t2643, &__t2646) + rt::eq(&__t2592, &__t2595) }; - Value::bool(rt::is_truthy(interp, &__t2648)?) + Value::bool(rt::is_truthy(interp, &__t2597)?) } }; - Value::bool(rt::is_truthy(interp, &__t2650)?) + Value::bool(rt::is_truthy(interp, &__t2599)?) } }; - Value::bool(rt::is_truthy(interp, &__t2652)?) + Value::bool(rt::is_truthy(interp, &__t2601)?) } }; - if match rt::is_truthy(interp, &__t2653) { + if match rt::is_truthy(interp, &__t2602) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2636 = { - let __t2634 = { - let __t2620 = v_V3219.clone(); - rt::is_cons(&__t2620) + let __t2585 = { + let __t2583 = { + let __t2569 = v_V2871.clone(); + rt::is_cons(&__t2569) }; - if !rt::is_truthy(interp, &__t2634)? { + if !rt::is_truthy(interp, &__t2583)? { Value::bool(false) } else { - let __t2635 = { - let __t2632 = { - let __t2621 = Value::sym(interp.intern("foreign")); - let __t2623 = { - let __t2622 = v_V3219.clone(); - rt::hd(&__t2622)? + let __t2584 = { + let __t2581 = { + let __t2570 = Value::sym(interp.intern("foreign")); + let __t2572 = { + let __t2571 = v_V2871.clone(); + rt::hd(&__t2571)? }; - rt::eq(&__t2621, &__t2623) + rt::eq(&__t2570, &__t2572) }; - if !rt::is_truthy(interp, &__t2632)? { + if !rt::is_truthy(interp, &__t2581)? { Value::bool(false) } else { - let __t2633 = { - let __t2630 = { - let __t2625 = { - let __t2624 = v_V3219.clone(); - rt::tl(&__t2624)? + let __t2582 = { + let __t2579 = { + let __t2574 = { + let __t2573 = v_V2871.clone(); + rt::tl(&__t2573)? }; - rt::is_cons(&__t2625) + rt::is_cons(&__t2574) }; - if !rt::is_truthy(interp, &__t2630)? { + if !rt::is_truthy(interp, &__t2579)? { Value::bool(false) } else { - let __t2631 = { - let __t2626 = Value::nil(); - let __t2629 = { - let __t2628 = { - let __t2627 = v_V3219.clone(); - rt::tl(&__t2627)? + let __t2580 = { + let __t2575 = Value::nil(); + let __t2578 = { + let __t2577 = { + let __t2576 = v_V2871.clone(); + rt::tl(&__t2576)? }; - rt::tl(&__t2628)? + rt::tl(&__t2577)? }; - rt::eq(&__t2626, &__t2629) + rt::eq(&__t2575, &__t2578) }; - Value::bool(rt::is_truthy(interp, &__t2631)?) + Value::bool(rt::is_truthy(interp, &__t2580)?) } }; - Value::bool(rt::is_truthy(interp, &__t2633)?) + Value::bool(rt::is_truthy(interp, &__t2582)?) } }; - Value::bool(rt::is_truthy(interp, &__t2635)?) + Value::bool(rt::is_truthy(interp, &__t2584)?) } }; - if match rt::is_truthy(interp, &__t2636) { + if match rt::is_truthy(interp, &__t2585) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2619 = Value::bool(true); - if match rt::is_truthy(interp, &__t2619) { + let __t2568 = Value::bool(true); + if match rt::is_truthy(interp, &__t2568) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2618 = v_V3219.clone(); - rt::is_cons(&__t2618) + let __t2567 = v_V2871.clone(); + rt::is_cons(&__t2567) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -14837,49 +14613,49 @@ pub fn aot_shen_x2e_undefined_x2d_f_x3f_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3224 = args[0].clone(); + let mut v_V2876 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3225 = args[1].clone(); + let mut v_V2877 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t2663 = { - let __t2655 = Value::int(-1i64); - let __t2656 = v_V3225.clone(); - rt::eq(&__t2655, &__t2656) + let __t2612 = { + let __t2604 = Value::int(-1i64); + let __t2605 = v_V2877.clone(); + rt::eq(&__t2604, &__t2605) }; - if match rt::is_truthy(interp, &__t2663) { + if match rt::is_truthy(interp, &__t2612) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2658 = { - let __t2657 = v_V3224.clone(); - rt::apply_direct(interp, "shen.lowercase-symbol?", &[__t2657])? + let __t2607 = { + let __t2606 = v_V2876.clone(); + rt::apply_direct(interp, "shen.lowercase-symbol?", &[__t2606])? }; - if !match rt::is_truthy(interp, &__t2658) { + if !match rt::is_truthy(interp, &__t2607) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t2662 = { - let __t2659 = v_V3224.clone(); - let __t2661 = { - let __t2660 = Value::sym(interp.intern("shen")); - rt::apply_direct(interp, "external", &[__t2660])? + let __t2611 = { + let __t2608 = v_V2876.clone(); + let __t2610 = { + let __t2609 = Value::sym(interp.intern("shen")); + rt::apply_direct(interp, "external", &[__t2609])? }; - rt::apply_direct(interp, "element?", &[__t2659, __t2661])? + rt::apply_direct(interp, "element?", &[__t2608, __t2610])? }; - rt::apply_direct(interp, "not", &[__t2662])? + rt::apply_direct(interp, "not", &[__t2611])? }); } } } else { { - let __t2654 = Value::bool(true); - if match rt::is_truthy(interp, &__t2654) { + let __t2603 = Value::bool(true); + if match rt::is_truthy(interp, &__t2603) { Ok(b) => b, Err(e) => break Err(e), } { @@ -14910,26 +14686,26 @@ pub fn aot_shen_x2e_lowercase_x2d_symbol_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3226 = args[0].clone(); + let mut v_V2878 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2665 = { - let __t2664 = v_V3226.clone(); - rt::is_symbol(&__t2664) + let __t2614 = { + let __t2613 = v_V2878.clone(); + rt::is_symbol(&__t2613) }; - if !match rt::is_truthy(interp, &__t2665) { + if !match rt::is_truthy(interp, &__t2614) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t2667 = { - let __t2666 = v_V3226.clone(); - rt::apply_direct(interp, "variable?", &[__t2666])? + let __t2616 = { + let __t2615 = v_V2878.clone(); + rt::apply_direct(interp, "variable?", &[__t2615])? }; - rt::apply_direct(interp, "not", &[__t2667])? + rt::apply_direct(interp, "not", &[__t2616])? }); } } @@ -14957,132 +14733,132 @@ pub fn aot_shen_x2e_simple_x2d_curry(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3227 = args[0].clone(); + let mut v_V2879 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2703 = { - let __t2701 = { - let __t2692 = v_V3227.clone(); - rt::is_cons(&__t2692) + let __t2652 = { + let __t2650 = { + let __t2641 = v_V2879.clone(); + rt::is_cons(&__t2641) }; - if !rt::is_truthy(interp, &__t2701)? { + if !rt::is_truthy(interp, &__t2650)? { Value::bool(false) } else { - let __t2702 = { - let __t2699 = { - let __t2694 = { - let __t2693 = v_V3227.clone(); - rt::tl(&__t2693)? + let __t2651 = { + let __t2648 = { + let __t2643 = { + let __t2642 = v_V2879.clone(); + rt::tl(&__t2642)? }; - rt::is_cons(&__t2694) + rt::is_cons(&__t2643) }; - if !rt::is_truthy(interp, &__t2699)? { + if !rt::is_truthy(interp, &__t2648)? { Value::bool(false) } else { - let __t2700 = { - let __t2695 = Value::nil(); - let __t2698 = { - let __t2697 = { - let __t2696 = v_V3227.clone(); - rt::tl(&__t2696)? + let __t2649 = { + let __t2644 = Value::nil(); + let __t2647 = { + let __t2646 = { + let __t2645 = v_V2879.clone(); + rt::tl(&__t2645)? }; - rt::tl(&__t2697)? + rt::tl(&__t2646)? }; - rt::eq(&__t2695, &__t2698) + rt::eq(&__t2644, &__t2647) }; - Value::bool(rt::is_truthy(interp, &__t2700)?) + Value::bool(rt::is_truthy(interp, &__t2649)?) } }; - Value::bool(rt::is_truthy(interp, &__t2702)?) + Value::bool(rt::is_truthy(interp, &__t2651)?) } }; - if match rt::is_truthy(interp, &__t2703) { + if match rt::is_truthy(interp, &__t2652) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3227.clone()); + break Ok(v_V2879.clone()); } else { { - let __t2691 = { - let __t2677 = { - let __t2669 = v_V3227.clone(); - rt::is_cons(&__t2669) + let __t2640 = { + let __t2626 = { + let __t2618 = v_V2879.clone(); + rt::is_cons(&__t2618) }; - if !rt::is_truthy(interp, &__t2677)? { + if !rt::is_truthy(interp, &__t2626)? { Value::bool(false) } else { - let __t2678 = { - let __t2675 = { - let __t2671 = { - let __t2670 = v_V3227.clone(); - rt::tl(&__t2670)? + let __t2627 = { + let __t2624 = { + let __t2620 = { + let __t2619 = v_V2879.clone(); + rt::tl(&__t2619)? }; - rt::is_cons(&__t2671) + rt::is_cons(&__t2620) }; - if !rt::is_truthy(interp, &__t2675)? { + if !rt::is_truthy(interp, &__t2624)? { Value::bool(false) } else { - let __t2676 = { - let __t2674 = { - let __t2673 = { - let __t2672 = v_V3227.clone(); - rt::tl(&__t2672)? + let __t2625 = { + let __t2623 = { + let __t2622 = { + let __t2621 = v_V2879.clone(); + rt::tl(&__t2621)? }; - rt::tl(&__t2673)? + rt::tl(&__t2622)? }; - rt::is_cons(&__t2674) + rt::is_cons(&__t2623) }; - Value::bool(rt::is_truthy(interp, &__t2676)?) + Value::bool(rt::is_truthy(interp, &__t2625)?) } }; - Value::bool(rt::is_truthy(interp, &__t2678)?) + Value::bool(rt::is_truthy(interp, &__t2627)?) } }; - if match rt::is_truthy(interp, &__t2691) { + if match rt::is_truthy(interp, &__t2640) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2690 = { - let __t2686 = { - let __t2680 = { - let __t2679 = v_V3227.clone(); - rt::hd(&__t2679)? + let __t2639 = { + let __t2635 = { + let __t2629 = { + let __t2628 = v_V2879.clone(); + rt::hd(&__t2628)? }; - let __t2685 = { - let __t2683 = { - let __t2682 = { - let __t2681 = v_V3227.clone(); - rt::tl(&__t2681)? + let __t2634 = { + let __t2632 = { + let __t2631 = { + let __t2630 = v_V2879.clone(); + rt::tl(&__t2630)? }; - rt::hd(&__t2682)? + rt::hd(&__t2631)? }; - let __t2684 = Value::nil(); - rt::cons(&__t2683, &__t2684) + let __t2633 = Value::nil(); + rt::cons(&__t2632, &__t2633) }; - rt::cons(&__t2680, &__t2685) + rt::cons(&__t2629, &__t2634) }; - let __t2689 = { - let __t2688 = { - let __t2687 = v_V3227.clone(); - rt::tl(&__t2687)? + let __t2638 = { + let __t2637 = { + let __t2636 = v_V2879.clone(); + rt::tl(&__t2636)? }; - rt::tl(&__t2688)? + rt::tl(&__t2637)? }; - rt::cons(&__t2686, &__t2689) + rt::cons(&__t2635, &__t2638) }; - v_V3227 = __t2690; + v_V2879 = __t2639; continue; } } else { { - let __t2668 = Value::bool(true); - if match rt::is_truthy(interp, &__t2668) { + let __t2617 = Value::bool(true); + if match rt::is_truthy(interp, &__t2617) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3227.clone()); + break Ok(v_V2879.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -15108,12 +14884,12 @@ pub fn aot_function(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3228 = args[0].clone(); + let mut v_V2880 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2704 = v_V3228.clone(); - rt::apply_direct(interp, "fn", &[__t2704])? + let __t2653 = v_V2880.clone(); + rt::apply_direct(interp, "fn", &[__t2653])? }); } } @@ -15132,89 +14908,73 @@ pub fn aot_fn(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3229 = args[0].clone(); + let mut v_V2881 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2719 = { - let __t2717 = { - let __t2716 = v_V3229.clone(); - rt::apply_direct(interp, "arity", &[__t2716])? + let __t2670 = { + let __t2668 = { + let __t2667 = v_V2881.clone(); + rt::apply_direct(interp, "arity", &[__t2667])? }; - let __t2718 = Value::int(0i64); - rt::eq(&__t2717, &__t2718) + let __t2669 = Value::int(0i64); + rt::eq(&__t2668, &__t2669) }; - if match rt::is_truthy(interp, &__t2719) { + if match rt::is_truthy(interp, &__t2670) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ rt::apply_value(interp, v_V3229.clone(), &[])? }); + break Ok({ rt::apply_value(interp, v_V2881.clone(), &[])? }); } else { { - let __t2715 = Value::bool(true); - if match rt::is_truthy(interp, &__t2715) { + let __t2666 = Value::bool(true); + if match rt::is_truthy(interp, &__t2666) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok( - match (|| -> ShenResult { - Ok({ - let __t2705 = v_V3229.clone(); - let __t2706 = Value::sym(interp.intern("shen.lambda-form")); - let __t2708 = { - let __t2707 = - Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t2707])? - }; - rt::apply_direct(interp, "get", &[__t2705, __t2706, __t2708])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - let v_V3229 = v_V3229.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3230 = args[0].clone(); - Ok({ - let __t2714 = { - let __t2709 = Value::str("fn: "); - let __t2713 = { - let __t2710 = v_V3229.clone(); - let __t2711 = - Value::str(" is undefined\n"); - let __t2712 = - Value::sym(interp.intern("shen.a")); - rt::apply_direct( - interp, - "shen.app", - &[__t2710, __t2711, __t2712], - )? - }; - rt::apply_direct( - interp, - "cn", - &[__t2709, __t2713], - )? - }; - rt::apply_direct( - interp, - "simple-error", - &[__t2714], - )? - }) - }, - vec![v_V3229], - interp, - ) - }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? + { + let v_W2882 = { + let __t2654 = v_V2881.clone(); + let __t2656 = { + let __t2655 = Value::sym(interp.intern("shen.*lambdatable*")); + rt::apply_direct(interp, "value", &[__t2655])? + }; + rt::apply_direct(interp, "assoc", &[__t2654, __t2656])? + }; + { + let __t2658 = { + let __t2657 = v_W2882.clone(); + rt::apply_direct(interp, "empty?", &[__t2657])? + }; + if match rt::is_truthy(interp, &__t2658) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t2664 = { + let __t2659 = Value::str("fn: "); + let __t2663 = { + let __t2660 = v_V2881.clone(); + let __t2661 = Value::str(" is undefined\n"); + let __t2662 = Value::sym(interp.intern("shen.a")); + rt::apply_direct( + interp, + "shen.app", + &[__t2660, __t2661, __t2662], + )? + }; + rt::apply_direct(interp, "cn", &[__t2659, __t2663])? + }; + rt::apply_direct(interp, "simple-error", &[__t2664])? + }); + } else { + break Ok({ + let __t2665 = v_W2882.clone(); + rt::tl(&__t2665)? + }); } - }, - ); + } + } } else { break Err(ShenError::new("cond: no clause matched")); } @@ -15238,128 +14998,128 @@ pub fn aot_shen_x2e_fn_x2d_call_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3233 = args[0].clone(); + let mut v_V2885 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2754 = { - let __t2752 = { - let __t2738 = v_V3233.clone(); - rt::is_cons(&__t2738) + let __t2705 = { + let __t2703 = { + let __t2689 = v_V2885.clone(); + rt::is_cons(&__t2689) }; - if !rt::is_truthy(interp, &__t2752)? { + if !rt::is_truthy(interp, &__t2703)? { Value::bool(false) } else { - let __t2753 = { - let __t2750 = { - let __t2739 = Value::sym(interp.intern("fn")); - let __t2741 = { - let __t2740 = v_V3233.clone(); - rt::hd(&__t2740)? - }; - rt::eq(&__t2739, &__t2741) + let __t2704 = { + let __t2701 = { + let __t2690 = Value::sym(interp.intern("fn")); + let __t2692 = { + let __t2691 = v_V2885.clone(); + rt::hd(&__t2691)? + }; + rt::eq(&__t2690, &__t2692) }; - if !rt::is_truthy(interp, &__t2750)? { + if !rt::is_truthy(interp, &__t2701)? { Value::bool(false) } else { - let __t2751 = { - let __t2748 = { - let __t2743 = { - let __t2742 = v_V3233.clone(); - rt::tl(&__t2742)? + let __t2702 = { + let __t2699 = { + let __t2694 = { + let __t2693 = v_V2885.clone(); + rt::tl(&__t2693)? }; - rt::is_cons(&__t2743) + rt::is_cons(&__t2694) }; - if !rt::is_truthy(interp, &__t2748)? { + if !rt::is_truthy(interp, &__t2699)? { Value::bool(false) } else { - let __t2749 = { - let __t2744 = Value::nil(); - let __t2747 = { - let __t2746 = { - let __t2745 = v_V3233.clone(); - rt::tl(&__t2745)? + let __t2700 = { + let __t2695 = Value::nil(); + let __t2698 = { + let __t2697 = { + let __t2696 = v_V2885.clone(); + rt::tl(&__t2696)? }; - rt::tl(&__t2746)? + rt::tl(&__t2697)? }; - rt::eq(&__t2744, &__t2747) + rt::eq(&__t2695, &__t2698) }; - Value::bool(rt::is_truthy(interp, &__t2749)?) + Value::bool(rt::is_truthy(interp, &__t2700)?) } }; - Value::bool(rt::is_truthy(interp, &__t2751)?) + Value::bool(rt::is_truthy(interp, &__t2702)?) } }; - Value::bool(rt::is_truthy(interp, &__t2753)?) + Value::bool(rt::is_truthy(interp, &__t2704)?) } }; - if match rt::is_truthy(interp, &__t2754) { + if match rt::is_truthy(interp, &__t2705) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2737 = { - let __t2735 = { - let __t2721 = v_V3233.clone(); - rt::is_cons(&__t2721) + let __t2688 = { + let __t2686 = { + let __t2672 = v_V2885.clone(); + rt::is_cons(&__t2672) }; - if !rt::is_truthy(interp, &__t2735)? { + if !rt::is_truthy(interp, &__t2686)? { Value::bool(false) } else { - let __t2736 = { - let __t2733 = { - let __t2722 = Value::sym(interp.intern("function")); - let __t2724 = { - let __t2723 = v_V3233.clone(); - rt::hd(&__t2723)? + let __t2687 = { + let __t2684 = { + let __t2673 = Value::sym(interp.intern("function")); + let __t2675 = { + let __t2674 = v_V2885.clone(); + rt::hd(&__t2674)? }; - rt::eq(&__t2722, &__t2724) + rt::eq(&__t2673, &__t2675) }; - if !rt::is_truthy(interp, &__t2733)? { + if !rt::is_truthy(interp, &__t2684)? { Value::bool(false) } else { - let __t2734 = { - let __t2731 = { - let __t2726 = { - let __t2725 = v_V3233.clone(); - rt::tl(&__t2725)? + let __t2685 = { + let __t2682 = { + let __t2677 = { + let __t2676 = v_V2885.clone(); + rt::tl(&__t2676)? }; - rt::is_cons(&__t2726) + rt::is_cons(&__t2677) }; - if !rt::is_truthy(interp, &__t2731)? { + if !rt::is_truthy(interp, &__t2682)? { Value::bool(false) } else { - let __t2732 = { - let __t2727 = Value::nil(); - let __t2730 = { - let __t2729 = { - let __t2728 = v_V3233.clone(); - rt::tl(&__t2728)? + let __t2683 = { + let __t2678 = Value::nil(); + let __t2681 = { + let __t2680 = { + let __t2679 = v_V2885.clone(); + rt::tl(&__t2679)? }; - rt::tl(&__t2729)? + rt::tl(&__t2680)? }; - rt::eq(&__t2727, &__t2730) + rt::eq(&__t2678, &__t2681) }; - Value::bool(rt::is_truthy(interp, &__t2732)?) + Value::bool(rt::is_truthy(interp, &__t2683)?) } }; - Value::bool(rt::is_truthy(interp, &__t2734)?) + Value::bool(rt::is_truthy(interp, &__t2685)?) } }; - Value::bool(rt::is_truthy(interp, &__t2736)?) + Value::bool(rt::is_truthy(interp, &__t2687)?) } }; - if match rt::is_truthy(interp, &__t2737) { + if match rt::is_truthy(interp, &__t2688) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t2720 = Value::bool(true); - if match rt::is_truthy(interp, &__t2720) { + let __t2671 = Value::bool(true); + if match rt::is_truthy(interp, &__t2671) { Ok(b) => b, Err(e) => break Err(e), } { @@ -15389,182 +15149,182 @@ pub fn aot_shen_x2e_fn_x2d_call(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V3234 = args[0].clone(); + let mut v_V2886 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t2807 = { - let __t2801 = { - let __t2787 = v_V3234.clone(); - rt::is_cons(&__t2787) + let __t2758 = { + let __t2752 = { + let __t2738 = v_V2886.clone(); + rt::is_cons(&__t2738) }; - if !rt::is_truthy(interp, &__t2801)? { + if !rt::is_truthy(interp, &__t2752)? { Value::bool(false) } else { - let __t2802 = { - let __t2799 = { - let __t2788 = Value::sym(interp.intern("function")); - let __t2790 = { - let __t2789 = v_V3234.clone(); - rt::hd(&__t2789)? - }; - rt::eq(&__t2788, &__t2790) + let __t2753 = { + let __t2750 = { + let __t2739 = Value::sym(interp.intern("function")); + let __t2741 = { + let __t2740 = v_V2886.clone(); + rt::hd(&__t2740)? + }; + rt::eq(&__t2739, &__t2741) }; - if !rt::is_truthy(interp, &__t2799)? { + if !rt::is_truthy(interp, &__t2750)? { Value::bool(false) } else { - let __t2800 = { - let __t2797 = { - let __t2792 = { - let __t2791 = v_V3234.clone(); - rt::tl(&__t2791)? + let __t2751 = { + let __t2748 = { + let __t2743 = { + let __t2742 = v_V2886.clone(); + rt::tl(&__t2742)? }; - rt::is_cons(&__t2792) + rt::is_cons(&__t2743) }; - if !rt::is_truthy(interp, &__t2797)? { + if !rt::is_truthy(interp, &__t2748)? { Value::bool(false) } else { - let __t2798 = { - let __t2793 = Value::nil(); - let __t2796 = { - let __t2795 = { - let __t2794 = v_V3234.clone(); - rt::tl(&__t2794)? + let __t2749 = { + let __t2744 = Value::nil(); + let __t2747 = { + let __t2746 = { + let __t2745 = v_V2886.clone(); + rt::tl(&__t2745)? }; - rt::tl(&__t2795)? + rt::tl(&__t2746)? }; - rt::eq(&__t2793, &__t2796) + rt::eq(&__t2744, &__t2747) }; - Value::bool(rt::is_truthy(interp, &__t2798)?) + Value::bool(rt::is_truthy(interp, &__t2749)?) } }; - Value::bool(rt::is_truthy(interp, &__t2800)?) + Value::bool(rt::is_truthy(interp, &__t2751)?) } }; - Value::bool(rt::is_truthy(interp, &__t2802)?) + Value::bool(rt::is_truthy(interp, &__t2753)?) } }; - if match rt::is_truthy(interp, &__t2807) { + if match rt::is_truthy(interp, &__t2758) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2806 = { - let __t2803 = Value::sym(interp.intern("fn")); - let __t2805 = { - let __t2804 = v_V3234.clone(); - rt::tl(&__t2804)? + let __t2757 = { + let __t2754 = Value::sym(interp.intern("fn")); + let __t2756 = { + let __t2755 = v_V2886.clone(); + rt::tl(&__t2755)? }; - rt::cons(&__t2803, &__t2805) + rt::cons(&__t2754, &__t2756) }; - v_V3234 = __t2806; + v_V2886 = __t2757; continue; } } else { { - let __t2786 = { - let __t2771 = { - let __t2757 = v_V3234.clone(); - rt::is_cons(&__t2757) + let __t2737 = { + let __t2722 = { + let __t2708 = v_V2886.clone(); + rt::is_cons(&__t2708) }; - if !rt::is_truthy(interp, &__t2771)? { + if !rt::is_truthy(interp, &__t2722)? { Value::bool(false) } else { - let __t2772 = { - let __t2769 = { - let __t2758 = Value::sym(interp.intern("fn")); - let __t2760 = { - let __t2759 = v_V3234.clone(); - rt::hd(&__t2759)? + let __t2723 = { + let __t2720 = { + let __t2709 = Value::sym(interp.intern("fn")); + let __t2711 = { + let __t2710 = v_V2886.clone(); + rt::hd(&__t2710)? }; - rt::eq(&__t2758, &__t2760) + rt::eq(&__t2709, &__t2711) }; - if !rt::is_truthy(interp, &__t2769)? { + if !rt::is_truthy(interp, &__t2720)? { Value::bool(false) } else { - let __t2770 = { - let __t2767 = { - let __t2762 = { - let __t2761 = v_V3234.clone(); - rt::tl(&__t2761)? + let __t2721 = { + let __t2718 = { + let __t2713 = { + let __t2712 = v_V2886.clone(); + rt::tl(&__t2712)? }; - rt::is_cons(&__t2762) + rt::is_cons(&__t2713) }; - if !rt::is_truthy(interp, &__t2767)? { + if !rt::is_truthy(interp, &__t2718)? { Value::bool(false) } else { - let __t2768 = { - let __t2763 = Value::nil(); - let __t2766 = { - let __t2765 = { - let __t2764 = v_V3234.clone(); - rt::tl(&__t2764)? + let __t2719 = { + let __t2714 = Value::nil(); + let __t2717 = { + let __t2716 = { + let __t2715 = v_V2886.clone(); + rt::tl(&__t2715)? }; - rt::tl(&__t2765)? + rt::tl(&__t2716)? }; - rt::eq(&__t2763, &__t2766) + rt::eq(&__t2714, &__t2717) }; - Value::bool(rt::is_truthy(interp, &__t2768)?) + Value::bool(rt::is_truthy(interp, &__t2719)?) } }; - Value::bool(rt::is_truthy(interp, &__t2770)?) + Value::bool(rt::is_truthy(interp, &__t2721)?) } }; - Value::bool(rt::is_truthy(interp, &__t2772)?) + Value::bool(rt::is_truthy(interp, &__t2723)?) } }; - if match rt::is_truthy(interp, &__t2786) { + if match rt::is_truthy(interp, &__t2737) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3235 = { - let __t2775 = { - let __t2774 = { - let __t2773 = v_V3234.clone(); - rt::tl(&__t2773)? + let v_W2887 = { + let __t2726 = { + let __t2725 = { + let __t2724 = v_V2886.clone(); + rt::tl(&__t2724)? }; - rt::hd(&__t2774)? + rt::hd(&__t2725)? }; - rt::apply_direct(interp, "arity", &[__t2775])? + rt::apply_direct(interp, "arity", &[__t2726])? }; { - let __t2778 = { - let __t2776 = v_W3235.clone(); - let __t2777 = Value::int(-1i64); - rt::eq(&__t2776, &__t2777) + let __t2729 = { + let __t2727 = v_W2887.clone(); + let __t2728 = Value::int(-1i64); + rt::eq(&__t2727, &__t2728) }; - if match rt::is_truthy(interp, &__t2778) { + if match rt::is_truthy(interp, &__t2729) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3234.clone()); + break Ok(v_V2886.clone()); } else { { - let __t2781 = { - let __t2779 = v_W3235.clone(); - let __t2780 = Value::int(0i64); - rt::eq(&__t2779, &__t2780) + let __t2732 = { + let __t2730 = v_W2887.clone(); + let __t2731 = Value::int(0i64); + rt::eq(&__t2730, &__t2731) }; - if match rt::is_truthy(interp, &__t2781) { + if match rt::is_truthy(interp, &__t2732) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2782 = v_V3234.clone(); - rt::tl(&__t2782)? + let __t2733 = v_V2886.clone(); + rt::tl(&__t2733)? }); } else { break Ok({ - let __t2784 = { - let __t2783 = v_V3234.clone(); - rt::tl(&__t2783)? + let __t2735 = { + let __t2734 = v_V2886.clone(); + rt::tl(&__t2734)? }; - let __t2785 = v_W3235.clone(); + let __t2736 = v_W2887.clone(); rt::apply_direct( interp, "shen.lambda-function", - &[__t2784, __t2785], + &[__t2735, __t2736], )? }); } @@ -15574,14 +15334,14 @@ pub fn aot_shen_x2e_fn_x2d_call(interp: &mut Interp, args: &[Value]) -> ShenResu } } else { { - let __t2756 = Value::bool(true); - if match rt::is_truthy(interp, &__t2756) { + let __t2707 = Value::bool(true); + if match rt::is_truthy(interp, &__t2707) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t2755 = Value::sym(interp.intern("shen.fn-call")); - rt::apply_direct(interp, "shen.f-error", &[__t2755])? + let __t2706 = Value::str("partial function shen.fn-call"); + rt::apply_direct(interp, "simple-error", &[__t2706])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -15611,81 +15371,81 @@ pub fn aot_shen_x2e_partial_x2d_application_x2a__x3f_( ))); } #[allow(unused_mut)] - let mut v_V3236 = args[0].clone(); + let mut v_V2888 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3237 = args[1].clone(); + let mut v_V2889 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3238 = args[2].clone(); + let mut v_V2890 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3239 = { - let __t2808 = v_V3237.clone(); - let __t2809 = v_V3238.clone(); - rt::gt(&__t2808, &__t2809)? + let v_W2891 = { + let __t2759 = v_V2889.clone(); + let __t2760 = v_V2890.clone(); + rt::gt(&__t2759, &__t2760)? }; { - let v_W3240 = { - let __t2828 = { - let __t2819 = v_W3239.clone(); - if !rt::is_truthy(interp, &__t2819)? { + let v_W2892 = { + let __t2779 = { + let __t2770 = v_W2891.clone(); + if !rt::is_truthy(interp, &__t2770)? { Value::bool(false) } else { - let __t2820 = { - let __t2817 = { rt::apply_direct(interp, "shen.loading?", &[])? }; - if !rt::is_truthy(interp, &__t2817)? { + let __t2771 = { + let __t2768 = { rt::apply_direct(interp, "shen.loading?", &[])? }; + if !rt::is_truthy(interp, &__t2768)? { Value::bool(false) } else { - let __t2818 = { - let __t2816 = { - let __t2810 = v_V3236.clone(); - let __t2815 = { - let __t2811 = Value::sym(interp.intern("+")); - let __t2814 = { - let __t2812 = Value::sym(interp.intern("-")); - let __t2813 = Value::nil(); - rt::cons(&__t2812, &__t2813) + let __t2769 = { + let __t2767 = { + let __t2761 = v_V2888.clone(); + let __t2766 = { + let __t2762 = Value::sym(interp.intern("+")); + let __t2765 = { + let __t2763 = Value::sym(interp.intern("-")); + let __t2764 = Value::nil(); + rt::cons(&__t2763, &__t2764) }; - rt::cons(&__t2811, &__t2814) + rt::cons(&__t2762, &__t2765) }; rt::apply_direct( interp, "element?", - &[__t2810, __t2815], + &[__t2761, __t2766], )? }; - rt::apply_direct(interp, "not", &[__t2816])? + rt::apply_direct(interp, "not", &[__t2767])? }; - Value::bool(rt::is_truthy(interp, &__t2818)?) + Value::bool(rt::is_truthy(interp, &__t2769)?) } }; - Value::bool(rt::is_truthy(interp, &__t2820)?) + Value::bool(rt::is_truthy(interp, &__t2771)?) } }; - if rt::is_truthy(interp, &__t2828)? { - { - let __t2826 = { - let __t2821 = Value::str("partial application of "); - let __t2825 = { - let __t2822 = v_V3236.clone(); - let __t2823 = Value::str("\n"); - let __t2824 = Value::sym(interp.intern("shen.a")); + if rt::is_truthy(interp, &__t2779)? { + { + let __t2777 = { + let __t2772 = Value::str("partial application of "); + let __t2776 = { + let __t2773 = v_V2888.clone(); + let __t2774 = Value::str("\n"); + let __t2775 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t2822, __t2823, __t2824], + &[__t2773, __t2774, __t2775], )? }; - rt::apply_direct(interp, "cn", &[__t2821, __t2825])? + rt::apply_direct(interp, "cn", &[__t2772, __t2776])? }; - let __t2827 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t2826, __t2827])? + let __t2778 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t2777, __t2778])? } } else { Value::sym(interp.intern("shen.skip")) } }; - break Ok(v_W3239.clone()); + break Ok(v_W2891.clone()); } } } @@ -15714,8 +15474,8 @@ pub fn aot_shen_x2e_loading_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRes #[allow(clippy::never_loop)] loop { break Ok({ - let __t2829 = Value::sym(interp.intern("shen.*loading?*")); - rt::apply_direct(interp, "value", &[__t2829])? + let __t2780 = Value::sym(interp.intern("shen.*loading?*")); + rt::apply_direct(interp, "value", &[__t2780])? }); } } @@ -15734,122 +15494,122 @@ pub fn aot_shen_x2e_overapplication_x3f_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3245 = args[0].clone(); + let mut v_V2897 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3246 = args[1].clone(); + let mut v_V2898 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3247 = args[2].clone(); + let mut v_V2899 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t2856 = { - let __t2854 = Value::int(-1i64); - let __t2855 = v_V3246.clone(); - rt::eq(&__t2854, &__t2855) + let __t2807 = { + let __t2805 = Value::int(-1i64); + let __t2806 = v_V2898.clone(); + rt::eq(&__t2805, &__t2806) }; - if match rt::is_truthy(interp, &__t2856) { + if match rt::is_truthy(interp, &__t2807) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t2853 = Value::bool(true); - if match rt::is_truthy(interp, &__t2853) { + let __t2804 = Value::bool(true); + if match rt::is_truthy(interp, &__t2804) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3248 = { - let __t2830 = v_V3246.clone(); - let __t2831 = v_V3247.clone(); - rt::lt(&__t2830, &__t2831)? + let v_W2900 = { + let __t2781 = v_V2898.clone(); + let __t2782 = v_V2899.clone(); + rt::lt(&__t2781, &__t2782)? }; { - let v_W3249 = { - let __t2852 = { - let __t2832 = v_W3248.clone(); - if !rt::is_truthy(interp, &__t2832)? { + let v_W2901 = { + let __t2803 = { + let __t2783 = v_W2900.clone(); + if !rt::is_truthy(interp, &__t2783)? { Value::bool(false) } else { - let __t2833 = + let __t2784 = { rt::apply_direct(interp, "shen.loading?", &[])? }; - Value::bool(rt::is_truthy(interp, &__t2833)?) + Value::bool(rt::is_truthy(interp, &__t2784)?) } }; - if rt::is_truthy(interp, &__t2852)? { + if rt::is_truthy(interp, &__t2803)? { { - let __t2850 = { - let __t2834 = v_V3245.clone(); - let __t2848 = { - let __t2835 = Value::str(" might not like "); - let __t2847 = { - let __t2836 = v_V3247.clone(); - let __t2845 = { - let __t2837 = Value::str(" argument"); - let __t2844 = { - let __t2841 = { - let __t2840 = { - let __t2838 = - v_V3247.clone(); - let __t2839 = + let __t2801 = { + let __t2785 = v_V2897.clone(); + let __t2799 = { + let __t2786 = Value::str(" might not like "); + let __t2798 = { + let __t2787 = v_V2899.clone(); + let __t2796 = { + let __t2788 = Value::str(" argument"); + let __t2795 = { + let __t2792 = { + let __t2791 = { + let __t2789 = + v_V2899.clone(); + let __t2790 = Value::int(1i64); - rt::eq(&__t2838, &__t2839) + rt::eq(&__t2789, &__t2790) }; if rt::is_truthy( - interp, &__t2840, + interp, &__t2791, )? { Value::str("") } else { Value::str("s") } }; - let __t2842 = Value::str("\n"); - let __t2843 = Value::sym( + let __t2793 = Value::str("\n"); + let __t2794 = Value::sym( interp.intern("shen.a"), ); rt::apply_direct( interp, "shen.app", - &[__t2841, __t2842, __t2843], + &[__t2792, __t2793, __t2794], )? }; rt::apply_direct( interp, "cn", - &[__t2837, __t2844], + &[__t2788, __t2795], )? }; - let __t2846 = + let __t2797 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t2836, __t2845, __t2846], + &[__t2787, __t2796, __t2797], )? }; rt::apply_direct( interp, "cn", - &[__t2835, __t2847], + &[__t2786, __t2798], )? }; - let __t2849 = Value::sym(interp.intern("shen.a")); + let __t2800 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t2834, __t2848, __t2849], + &[__t2785, __t2799, __t2800], )? }; - let __t2851 = + let __t2802 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t2850, __t2851])? + rt::apply_direct(interp, "pr", &[__t2801, __t2802])? } } else { Value::sym(interp.intern("shen.skip")) } }; - break Ok(v_W3248.clone()); + break Ok(v_W2900.clone()); } } } else { @@ -15882,7 +15642,7 @@ pub fn install(interp: &mut Interp) { install_read_x2d_file_x2d_as_x2d_string(interp); install_shen_x2e_rfas_x2d_h(interp); install_input(interp); - install_input_x2b_(interp); + install_shen_x2e_input_x2d_h_x2b_(interp); install_shen_x2e_monotype(interp); install_lineread(interp); install_read_x2d_from_x2d_string(interp); @@ -15987,7 +15747,6 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_process_x2d_applications(interp); install_shen_x2e_non_x2d_application_x3f_(interp); install_shen_x2e_special_x2d_case(interp); - install_shen_x2e_process_x2d_cond_x2d_clauses(interp); install_shen_x2e_process_x2d_after_x2d_type(interp); install_shen_x2e_process_x2d_application(interp); install_shen_x2e_unpack_x2d_foreign(interp); diff --git a/crates/shen-rust/src/aot/kernel/sequent.rs b/crates/shen-rust/src/aot/kernel/sequent.rs index 7d171c9..657c0ff 100644 --- a/crates/shen-rust/src/aot/kernel/sequent.rs +++ b/crates/shen-rust/src/aot/kernel/sequent.rs @@ -32,34 +32,34 @@ pub fn aot_shen_x2e__x3c_datatype_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3365 = args[0].clone(); + let mut v_V3019 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3366 = { + let v_W3020 = { let __t15 = { - let __t0 = v_V3365.clone(); + let __t0 = v_V3019.clone(); rt::is_cons(&__t0) }; if rt::is_truthy(interp, &__t15)? { { - let v_W3367 = { - let __t1 = v_V3365.clone(); + let v_W3021 = { + let __t1 = v_V3019.clone(); rt::apply_direct(interp, "head", &[__t1])? }; { - let v_W3368 = { - let __t2 = v_V3365.clone(); + let v_W3022 = { + let __t2 = v_V3019.clone(); rt::apply_direct(interp, "tail", &[__t2])? }; { - let v_W3369 = { - let __t3 = v_W3368.clone(); + let v_W3023 = { + let __t3 = v_W3022.clone(); rt::apply_direct(interp, "shen.", &[__t3])? }; { let __t14 = { - let __t4 = v_W3369.clone(); + let __t4 = v_W3023.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t4])? }; if rt::is_truthy(interp, &__t14)? { @@ -68,21 +68,21 @@ pub fn aot_shen_x2e__x3c_datatype_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3370 = { - let __t5 = v_W3369.clone(); + let v_W3024 = { + let __t5 = v_W3023.clone(); rt::apply_direct(interp, "shen.<-out", &[__t5])? }; { - let v_W3371 = { - let __t6 = v_W3369.clone(); + let v_W3025 = { + let __t6 = v_W3023.clone(); rt::apply_direct(interp, "shen.in->", &[__t6])? }; { - let __t7 = v_W3371.clone(); + let __t7 = v_W3025.clone(); let __t13 = { - let v_W3372 = { - let __t8 = v_W3367.clone(); - let __t9 = v_W3370.clone(); + let v_W3026 = { + let __t8 = v_W3021.clone(); + let __t9 = v_W3024.clone(); rt::apply_direct( interp, "shen.rules->prolog", @@ -90,9 +90,9 @@ pub fn aot_shen_x2e__x3c_datatype_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let __t10 = v_W3367.clone(); + let __t10 = v_W3021.clone(); let __t12 = { - let __t11 = v_W3367.clone(); + let __t11 = v_W3021.clone(); rt::apply_direct( interp, "fn", @@ -127,7 +127,7 @@ pub fn aot_shen_x2e__x3c_datatype_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t17 = { - let __t16 = v_W3366.clone(); + let __t16 = v_W3020.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t16])? }; if match rt::is_truthy(interp, &__t17) { @@ -136,7 +136,7 @@ pub fn aot_shen_x2e__x3c_datatype_x3e_(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3366.clone()); + break Ok(v_W3020.clone()); } } } @@ -160,17 +160,17 @@ pub fn aot_shen_x2e_remember_x2d_datatype( ))); } #[allow(unused_mut)] - let mut v_V3373 = args[0].clone(); + let mut v_V3027 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3374 = args[1].clone(); + let mut v_V3028 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let _ = { let __t18 = Value::sym(interp.intern("shen.*datatypes*")); let __t23 = { - let __t19 = v_V3373.clone(); - let __t20 = v_V3374.clone(); + let __t19 = v_V3027.clone(); + let __t20 = v_V3028.clone(); let __t22 = { let __t21 = Value::sym(interp.intern("shen.*datatypes*")); rt::apply_direct(interp, "value", &[__t21])? @@ -183,8 +183,8 @@ pub fn aot_shen_x2e_remember_x2d_datatype( let _ = { let __t24 = Value::sym(interp.intern("shen.*alldatatypes*")); let __t29 = { - let __t25 = v_V3373.clone(); - let __t26 = v_V3374.clone(); + let __t25 = v_V3027.clone(); + let __t26 = v_V3028.clone(); let __t28 = { let __t27 = Value::sym(interp.intern("shen.*alldatatypes*")); rt::apply_direct(interp, "value", &[__t27])? @@ -193,7 +193,7 @@ pub fn aot_shen_x2e_remember_x2d_datatype( }; rt::apply_direct(interp, "set", &[__t24, __t29])? }; - break Ok(v_V3373.clone()); + break Ok(v_V3027.clone()); } } } @@ -220,18 +220,18 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( ))); } #[allow(unused_mut)] - let mut v_V3375 = args[0].clone(); + let mut v_V3029 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3376 = { - let v_W3377 = { - let __t30 = v_V3375.clone(); + let v_W3030 = { + let v_W3031 = { + let __t30 = v_V3029.clone(); rt::apply_direct(interp, "shen.", &[__t30])? }; { let __t43 = { - let __t31 = v_W3377.clone(); + let __t31 = v_W3031.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t31])? }; if rt::is_truthy(interp, &__t43)? { @@ -240,23 +240,23 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( } } else { { - let v_W3378 = { - let __t32 = v_W3377.clone(); + let v_W3032 = { + let __t32 = v_W3031.clone(); rt::apply_direct(interp, "shen.<-out", &[__t32])? }; { - let v_W3379 = { - let __t33 = v_W3377.clone(); + let v_W3033 = { + let __t33 = v_W3031.clone(); rt::apply_direct(interp, "shen.in->", &[__t33])? }; { - let v_W3380 = { - let __t34 = v_W3379.clone(); + let v_W3034 = { + let __t34 = v_W3033.clone(); rt::apply_direct(interp, "shen.", &[__t34])? }; { let __t42 = { - let __t35 = v_W3380.clone(); + let __t35 = v_W3034.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -269,8 +269,8 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( } } else { { - let v_W3381 = { - let __t36 = v_W3380.clone(); + let v_W3035 = { + let __t36 = v_W3034.clone(); rt::apply_direct( interp, "shen.<-out", @@ -278,8 +278,8 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( )? }; { - let v_W3382 = { - let __t37 = v_W3380.clone(); + let v_W3036 = { + let __t37 = v_W3034.clone(); rt::apply_direct( interp, "shen.in->", @@ -287,10 +287,10 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( )? }; { - let __t38 = v_W3382.clone(); + let __t38 = v_W3036.clone(); let __t41 = { - let __t39 = v_W3378.clone(); - let __t40 = v_W3381.clone(); + let __t39 = v_W3032.clone(); + let __t40 = v_W3035.clone(); rt::apply_direct( interp, "append", @@ -315,7 +315,7 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( }; { let __t45 = { - let __t44 = v_W3376.clone(); + let __t44 = v_W3030.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t44])? }; if match rt::is_truthy(interp, &__t45) { @@ -323,14 +323,14 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( Err(e) => break Err(e), } { { - let v_W3383 = { - let v_W3384 = { - let __t46 = v_V3375.clone(); + let v_W3037 = { + let v_W3038 = { + let __t46 = v_V3029.clone(); rt::apply_direct(interp, "", &[__t46])? }; { let __t60 = { - let __t47 = v_W3384.clone(); + let __t47 = v_W3038.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t47])? }; if rt::is_truthy(interp, &__t60)? { @@ -339,20 +339,20 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( } } else { { - let v_W3385 = { - let __t48 = v_W3384.clone(); + let v_W3039 = { + let __t48 = v_W3038.clone(); rt::apply_direct(interp, "shen.<-out", &[__t48])? }; { - let v_W3386 = { - let __t49 = v_W3384.clone(); + let v_W3040 = { + let __t49 = v_W3038.clone(); rt::apply_direct(interp, "shen.in->", &[__t49])? }; { - let __t50 = v_W3386.clone(); + let __t50 = v_W3040.clone(); let __t59 = { let __t58 = { - let __t51 = v_W3385.clone(); + let __t51 = v_W3039.clone(); rt::apply_direct( interp, "empty?", @@ -366,7 +366,7 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( let __t57 = { let __t52 = Value::str("datatype syntax error here:\n "); let __t56 = { - let __t53 = v_W3385.clone(); + let __t53 = v_W3039.clone(); let __t54 = Value::str("\n ..."); let __t55 = Value::sym( @@ -405,7 +405,7 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( }; { let __t62 = { - let __t61 = v_W3383.clone(); + let __t61 = v_W3037.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t61])? }; if match rt::is_truthy(interp, &__t62) { @@ -414,12 +414,12 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rules_x3e_( } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3383.clone()); + break Ok(v_W3037.clone()); } } } } else { - break Ok(v_W3376.clone()); + break Ok(v_W3030.clone()); } } } @@ -450,18 +450,18 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( ))); } #[allow(unused_mut)] - let mut v_V3387 = args[0].clone(); + let mut v_V3041 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3388 = { - let v_W3389 = { - let __t63 = v_V3387.clone(); + let v_W3042 = { + let v_W3043 = { + let __t63 = v_V3041.clone(); rt::apply_direct(interp, "shen.", &[__t63])? }; { let __t69 = { - let __t64 = v_W3389.clone(); + let __t64 = v_W3043.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t64])? }; if rt::is_truthy(interp, &__t69)? { @@ -470,18 +470,18 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( } } else { { - let v_W3390 = { - let __t65 = v_W3389.clone(); + let v_W3044 = { + let __t65 = v_W3043.clone(); rt::apply_direct(interp, "shen.<-out", &[__t65])? }; { - let v_W3391 = { - let __t66 = v_W3389.clone(); + let v_W3045 = { + let __t66 = v_W3043.clone(); rt::apply_direct(interp, "shen.in->", &[__t66])? }; { - let __t67 = v_W3391.clone(); - let __t68 = v_W3390.clone(); + let __t67 = v_W3045.clone(); + let __t68 = v_W3044.clone(); rt::apply_direct(interp, "shen.comb", &[__t67, __t68])? } } @@ -491,7 +491,7 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( }; { let __t71 = { - let __t70 = v_W3388.clone(); + let __t70 = v_W3042.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t70])? }; if match rt::is_truthy(interp, &__t71) { @@ -499,14 +499,14 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( Err(e) => break Err(e), } { { - let v_W3392 = { - let v_W3393 = { - let __t72 = v_V3387.clone(); + let v_W3046 = { + let v_W3047 = { + let __t72 = v_V3041.clone(); rt::apply_direct(interp, "shen.", &[__t72])? }; { let __t78 = { - let __t73 = v_W3393.clone(); + let __t73 = v_W3047.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t73])? }; if rt::is_truthy(interp, &__t78)? { @@ -515,18 +515,18 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( } } else { { - let v_W3394 = { - let __t74 = v_W3393.clone(); + let v_W3048 = { + let __t74 = v_W3047.clone(); rt::apply_direct(interp, "shen.<-out", &[__t74])? }; { - let v_W3395 = { - let __t75 = v_W3393.clone(); + let v_W3049 = { + let __t75 = v_W3047.clone(); rt::apply_direct(interp, "shen.in->", &[__t75])? }; { - let __t76 = v_W3395.clone(); - let __t77 = v_W3394.clone(); + let __t76 = v_W3049.clone(); + let __t77 = v_W3048.clone(); rt::apply_direct( interp, "shen.comb", @@ -540,7 +540,7 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( }; { let __t80 = { - let __t79 = v_W3392.clone(); + let __t79 = v_W3046.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t79])? }; if match rt::is_truthy(interp, &__t80) { @@ -549,12 +549,12 @@ pub fn aot_shen_x2e__x3c_datatype_x2d_rule_x3e_( } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3392.clone()); + break Ok(v_W3046.clone()); } } } } else { - break Ok(v_W3388.clone()); + break Ok(v_W3042.clone()); } } } @@ -582,18 +582,18 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3396 = args[0].clone(); + let mut v_V3050 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3397 = { - let v_W3398 = { - let __t81 = v_V3396.clone(); + let v_W3051 = { + let v_W3052 = { + let __t81 = v_V3050.clone(); rt::apply_direct(interp, "shen.", &[__t81])? }; { let __t113 = { - let __t82 = v_W3398.clone(); + let __t82 = v_W3052.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t82])? }; if rt::is_truthy(interp, &__t113)? { @@ -602,23 +602,23 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3399 = { - let __t83 = v_W3398.clone(); + let v_W3053 = { + let __t83 = v_W3052.clone(); rt::apply_direct(interp, "shen.<-out", &[__t83])? }; { - let v_W3400 = { - let __t84 = v_W3398.clone(); + let v_W3054 = { + let __t84 = v_W3052.clone(); rt::apply_direct(interp, "shen.in->", &[__t84])? }; { - let v_W3401 = { - let __t85 = v_W3400.clone(); + let v_W3055 = { + let __t85 = v_W3054.clone(); rt::apply_direct(interp, "shen.", &[__t85])? }; { let __t112 = { - let __t86 = v_W3401.clone(); + let __t86 = v_W3055.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -631,8 +631,8 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3402 = { - let __t87 = v_W3401.clone(); + let v_W3056 = { + let __t87 = v_W3055.clone(); rt::apply_direct( interp, "shen.<-out", @@ -640,8 +640,8 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3403 = { - let __t88 = v_W3401.clone(); + let v_W3057 = { + let __t88 = v_W3055.clone(); rt::apply_direct( interp, "shen.in->", @@ -649,8 +649,8 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3404 = { - let __t89 = v_W3403.clone(); + let v_W3058 = { + let __t89 = v_W3057.clone(); rt::apply_direct( interp, "shen.", @@ -659,7 +659,7 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t111 = { - let __t90 = v_W3404.clone(); + let __t90 = v_W3058.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -676,8 +676,8 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3405 = { - let __t91 = v_W3404.clone(); + let v_W3059 = { + let __t91 = v_W3058.clone(); rt::apply_direct( interp, "shen.in->", @@ -685,9 +685,9 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3406 = { + let v_W3060 = { let __t92 = - v_W3405.clone(); + v_W3059.clone(); rt::apply_direct( interp, "shen.", @@ -697,7 +697,7 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She { let __t110 = { let __t93 = - v_W3406.clone(); + v_W3060.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t93])? }; if rt::is_truthy( @@ -708,23 +708,23 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3407 = { - let __t94 = v_W3406.clone(); + let v_W3061 = { + let __t94 = v_W3060.clone(); rt::apply_direct(interp, "shen.<-out", &[__t94])? }; { - let v_W3408 = { - let __t95 = v_W3406.clone(); + let v_W3062 = { + let __t95 = v_W3060.clone(); rt::apply_direct(interp, "shen.in->", &[__t95])? }; { - let v_W3409 = { - let __t96 = v_W3408.clone(); + let v_W3063 = { + let __t96 = v_W3062.clone(); rt::apply_direct(interp, "shen.", &[__t96])? }; { - let __t109 = { let __t97 = v_W3409.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t97])? }; - if rt::is_truthy(interp, &__t109)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W3410 = { let __t98 = v_W3409.clone(); rt::apply_direct(interp, "shen.in->", &[__t98])? }; { let __t99 = v_W3410.clone(); let __t108 = { let __t106 = { let __t100 = v_W3399.clone(); let __t105 = { let __t101 = v_W3402.clone(); let __t104 = { let __t102 = v_W3407.clone(); let __t103 = Value::nil(); rt::cons(&__t102, &__t103) }; rt::cons(&__t101, &__t104) }; rt::cons(&__t100, &__t105) }; let __t107 = Value::nil(); rt::cons(&__t106, &__t107) }; rt::apply_direct(interp, "shen.comb", &[__t99, __t108])? } } } + let __t109 = { let __t97 = v_W3063.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t97])? }; + if rt::is_truthy(interp, &__t109)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W3064 = { let __t98 = v_W3063.clone(); rt::apply_direct(interp, "shen.in->", &[__t98])? }; { let __t99 = v_W3064.clone(); let __t108 = { let __t106 = { let __t100 = v_W3053.clone(); let __t105 = { let __t101 = v_W3056.clone(); let __t104 = { let __t102 = v_W3061.clone(); let __t103 = Value::nil(); rt::cons(&__t102, &__t103) }; rt::cons(&__t101, &__t104) }; rt::cons(&__t100, &__t105) }; let __t107 = Value::nil(); rt::cons(&__t106, &__t107) }; rt::apply_direct(interp, "shen.comb", &[__t99, __t108])? } } } } } } @@ -748,7 +748,7 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t115 = { - let __t114 = v_W3397.clone(); + let __t114 = v_W3051.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t114])? }; if match rt::is_truthy(interp, &__t115) { @@ -757,7 +757,7 @@ pub fn aot_shen_x2e__x3c_single_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3397.clone()); + break Ok(v_W3051.clone()); } } } @@ -778,18 +778,18 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3411 = args[0].clone(); + let mut v_V3065 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3412 = { - let v_W3413 = { - let __t116 = v_V3411.clone(); + let v_W3066 = { + let v_W3067 = { + let __t116 = v_V3065.clone(); rt::apply_direct(interp, "shen.", &[__t116])? }; { let __t147 = { - let __t117 = v_W3413.clone(); + let __t117 = v_W3067.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t117])? }; if rt::is_truthy(interp, &__t147)? { @@ -798,23 +798,23 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3414 = { - let __t118 = v_W3413.clone(); + let v_W3068 = { + let __t118 = v_W3067.clone(); rt::apply_direct(interp, "shen.<-out", &[__t118])? }; { - let v_W3415 = { - let __t119 = v_W3413.clone(); + let v_W3069 = { + let __t119 = v_W3067.clone(); rt::apply_direct(interp, "shen.in->", &[__t119])? }; { - let v_W3416 = { - let __t120 = v_W3415.clone(); + let v_W3070 = { + let __t120 = v_W3069.clone(); rt::apply_direct(interp, "shen.", &[__t120])? }; { let __t146 = { - let __t121 = v_W3416.clone(); + let __t121 = v_W3070.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -827,8 +827,8 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3417 = { - let __t122 = v_W3416.clone(); + let v_W3071 = { + let __t122 = v_W3070.clone(); rt::apply_direct( interp, "shen.<-out", @@ -836,8 +836,8 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3418 = { - let __t123 = v_W3416.clone(); + let v_W3072 = { + let __t123 = v_W3070.clone(); rt::apply_direct( interp, "shen.in->", @@ -845,8 +845,8 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3419 = { - let __t124 = v_W3418.clone(); + let v_W3073 = { + let __t124 = v_W3072.clone(); rt::apply_direct( interp, "shen.", @@ -855,7 +855,7 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t145 = { - let __t125 = v_W3419.clone(); + let __t125 = v_W3073.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -872,9 +872,9 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3420 = { + let v_W3074 = { let __t126 = - v_W3419.clone(); + v_W3073.clone(); rt::apply_direct( interp, "shen.in->", @@ -882,9 +882,9 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She )? }; { - let v_W3421 = { + let v_W3075 = { let __t127 = - v_W3420.clone(); + v_W3074.clone(); rt::apply_direct( interp, "shen.", @@ -894,7 +894,7 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She { let __t144 = { let __t128 = - v_W3421.clone(); + v_W3075.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t128])? }; if rt::is_truthy( @@ -905,23 +905,23 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She } } else { { - let v_W3422 = { - let __t129 = v_W3421.clone(); + let v_W3076 = { + let __t129 = v_W3075.clone(); rt::apply_direct(interp, "shen.<-out", &[__t129])? }; { - let v_W3423 = { - let __t130 = v_W3421.clone(); + let v_W3077 = { + let __t130 = v_W3075.clone(); rt::apply_direct(interp, "shen.in->", &[__t130])? }; { - let v_W3424 = { - let __t131 = v_W3423.clone(); + let v_W3078 = { + let __t131 = v_W3077.clone(); rt::apply_direct(interp, "shen.", &[__t131])? }; { - let __t143 = { let __t132 = v_W3424.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t132])? }; - if rt::is_truthy(interp, &__t143)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W3425 = { let __t133 = v_W3424.clone(); rt::apply_direct(interp, "shen.in->", &[__t133])? }; { let __t134 = v_W3425.clone(); let __t142 = { let __t135 = v_W3414.clone(); let __t136 = v_W3417.clone(); let __t141 = { let __t137 = Value::nil(); let __t140 = { let __t138 = v_W3422.clone(); let __t139 = Value::nil(); rt::cons(&__t138, &__t139) }; rt::cons(&__t137, &__t140) }; rt::apply_direct(interp, "shen.lr-rule", &[__t135, __t136, __t141])? }; rt::apply_direct(interp, "shen.comb", &[__t134, __t142])? } } } + let __t143 = { let __t132 = v_W3078.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t132])? }; + if rt::is_truthy(interp, &__t143)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { let v_W3079 = { let __t133 = v_W3078.clone(); rt::apply_direct(interp, "shen.in->", &[__t133])? }; { let __t134 = v_W3079.clone(); let __t142 = { let __t135 = v_W3068.clone(); let __t136 = v_W3071.clone(); let __t141 = { let __t137 = Value::nil(); let __t140 = { let __t138 = v_W3076.clone(); let __t139 = Value::nil(); rt::cons(&__t138, &__t139) }; rt::cons(&__t137, &__t140) }; rt::apply_direct(interp, "shen.lr-rule", &[__t135, __t136, __t141])? }; rt::apply_direct(interp, "shen.comb", &[__t134, __t142])? } } } } } } @@ -945,7 +945,7 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She }; { let __t149 = { - let __t148 = v_W3412.clone(); + let __t148 = v_W3066.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t148])? }; if match rt::is_truthy(interp, &__t149) { @@ -954,7 +954,7 @@ pub fn aot_shen_x2e__x3c_double_x3e_(interp: &mut Interp, args: &[Value]) -> She } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3412.clone()); + break Ok(v_W3066.clone()); } } } @@ -975,18 +975,18 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3426 = args[0].clone(); + let mut v_V3080 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3427 = { - let v_W3428 = { - let __t150 = v_V3426.clone(); + let v_W3081 = { + let v_W3082 = { + let __t150 = v_V3080.clone(); rt::apply_direct(interp, "shen.", &[__t150])? }; { let __t171 = { - let __t151 = v_W3428.clone(); + let __t151 = v_W3082.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t151])? }; if rt::is_truthy(interp, &__t171)? { @@ -995,23 +995,23 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3429 = { - let __t152 = v_W3428.clone(); + let v_W3083 = { + let __t152 = v_W3082.clone(); rt::apply_direct(interp, "shen.<-out", &[__t152])? }; { - let v_W3430 = { - let __t153 = v_W3428.clone(); + let v_W3084 = { + let __t153 = v_W3082.clone(); rt::apply_direct(interp, "shen.in->", &[__t153])? }; { - let v_W3431 = { - let __t154 = v_W3430.clone(); + let v_W3085 = { + let __t154 = v_W3084.clone(); rt::apply_direct(interp, "shen.", &[__t154])? }; { let __t170 = { - let __t155 = v_W3431.clone(); + let __t155 = v_W3085.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1024,8 +1024,8 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3432 = { - let __t156 = v_W3431.clone(); + let v_W3086 = { + let __t156 = v_W3085.clone(); rt::apply_direct( interp, "shen.in->", @@ -1033,8 +1033,8 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let v_W3433 = { - let __t157 = v_W3432.clone(); + let v_W3087 = { + let __t157 = v_W3086.clone(); rt::apply_direct( interp, "shen.", @@ -1043,7 +1043,7 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t169 = { - let __t158 = v_W3433.clone(); + let __t158 = v_W3087.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1060,8 +1060,8 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3434 = { - let __t159 = v_W3433.clone(); + let v_W3088 = { + let __t159 = v_W3087.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1069,9 +1069,9 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let v_W3435 = { + let v_W3089 = { let __t160 = - v_W3433.clone(); + v_W3087.clone(); rt::apply_direct( interp, "shen.in->", @@ -1080,14 +1080,14 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t161 = - v_W3435.clone(); + v_W3089.clone(); let __t168 = { let __t166 = { let __t162 = Value::nil(); let __t165 = { let __t163 = - v_W3429 + v_W3083 .clone( ); let __t164 = @@ -1104,7 +1104,7 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S ) }; let __t167 = - v_W3434.clone(); + v_W3088.clone(); rt::cons( &__t166, &__t167, ) @@ -1131,7 +1131,7 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t173 = { - let __t172 = v_W3427.clone(); + let __t172 = v_W3081.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t172])? }; if match rt::is_truthy(interp, &__t173) { @@ -1139,14 +1139,14 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { { - let v_W3436 = { - let v_W3437 = { - let __t174 = v_V3426.clone(); + let v_W3090 = { + let v_W3091 = { + let __t174 = v_V3080.clone(); rt::apply_direct(interp, "shen.", &[__t174])? }; { let __t190 = { - let __t175 = v_W3437.clone(); + let __t175 = v_W3091.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t175])? }; if rt::is_truthy(interp, &__t190)? { @@ -1155,18 +1155,18 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3438 = { - let __t176 = v_W3437.clone(); + let v_W3092 = { + let __t176 = v_W3091.clone(); rt::apply_direct(interp, "shen.<-out", &[__t176])? }; { - let v_W3439 = { - let __t177 = v_W3437.clone(); + let v_W3093 = { + let __t177 = v_W3091.clone(); rt::apply_direct(interp, "shen.in->", &[__t177])? }; { - let v_W3440 = { - let __t178 = v_W3439.clone(); + let v_W3094 = { + let __t178 = v_W3093.clone(); rt::apply_direct( interp, "shen.", @@ -1175,7 +1175,7 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t189 = { - let __t179 = v_W3440.clone(); + let __t179 = v_W3094.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1192,8 +1192,8 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } } else { { - let v_W3441 = { - let __t180 = v_W3440.clone(); + let v_W3095 = { + let __t180 = v_W3094.clone(); rt::apply_direct( interp, "shen.in->", @@ -1201,13 +1201,13 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S )? }; { - let __t181 = v_W3441.clone(); + let __t181 = v_W3095.clone(); let __t188 = { let __t186 = { let __t182 = Value::nil(); let __t185 = { let __t183 = - v_W3438.clone(); + v_W3092.clone(); let __t184 = Value::nil(); rt::cons( @@ -1236,7 +1236,7 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S }; { let __t192 = { - let __t191 = v_W3436.clone(); + let __t191 = v_W3090.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t191])? }; if match rt::is_truthy(interp, &__t192) { @@ -1245,12 +1245,12 @@ pub fn aot_shen_x2e__x3c_formulae_x3e_(interp: &mut Interp, args: &[Value]) -> S } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3436.clone()); + break Ok(v_W3090.clone()); } } } } else { - break Ok(v_W3427.clone()); + break Ok(v_W3081.clone()); } } } @@ -1271,18 +1271,18 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3442 = args[0].clone(); + let mut v_V3096 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3443 = { - let v_W3444 = { - let __t193 = v_V3442.clone(); + let v_W3097 = { + let v_W3098 = { + let __t193 = v_V3096.clone(); rt::apply_direct(interp, "shen.", &[__t193])? }; { let __t212 = { - let __t194 = v_W3444.clone(); + let __t194 = v_W3098.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t194])? }; if rt::is_truthy(interp, &__t212)? { @@ -1291,30 +1291,30 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3445 = { - let __t195 = v_W3444.clone(); + let v_W3099 = { + let __t195 = v_W3098.clone(); rt::apply_direct(interp, "shen.<-out", &[__t195])? }; { - let v_W3446 = { - let __t196 = v_W3444.clone(); + let v_W3100 = { + let __t196 = v_W3098.clone(); rt::apply_direct(interp, "shen.in->", &[__t196])? }; { let __t211 = { - let __t197 = v_W3446.clone(); + let __t197 = v_W3100.clone(); let __t198 = Value::sym(interp.intern(">>")); rt::apply_direct(interp, "shen.hds=?", &[__t197, __t198])? }; if rt::is_truthy(interp, &__t211)? { { - let v_W3447 = { - let __t199 = v_W3446.clone(); + let v_W3101 = { + let __t199 = v_W3100.clone(); rt::apply_direct(interp, "tail", &[__t199])? }; { - let v_W3448 = { - let __t200 = v_W3447.clone(); + let v_W3102 = { + let __t200 = v_W3101.clone(); rt::apply_direct( interp, "shen.", @@ -1323,7 +1323,7 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t210 = { - let __t201 = v_W3448.clone(); + let __t201 = v_W3102.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1340,8 +1340,8 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3449 = { - let __t202 = v_W3448.clone(); + let v_W3103 = { + let __t202 = v_W3102.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1349,8 +1349,8 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3450 = { - let __t203 = v_W3448.clone(); + let v_W3104 = { + let __t203 = v_W3102.clone(); rt::apply_direct( interp, "shen.in->", @@ -1358,13 +1358,13 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let __t204 = v_W3450.clone(); + let __t204 = v_W3104.clone(); let __t209 = { let __t205 = - v_W3445.clone(); + v_W3099.clone(); let __t208 = { let __t206 = - v_W3449.clone(); + v_W3103.clone(); let __t207 = Value::nil(); rt::cons( @@ -1398,7 +1398,7 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t214 = { - let __t213 = v_W3443.clone(); + let __t213 = v_W3097.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t213])? }; if match rt::is_truthy(interp, &__t214) { @@ -1406,14 +1406,14 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W3451 = { - let v_W3452 = { - let __t215 = v_V3442.clone(); + let v_W3105 = { + let v_W3106 = { + let __t215 = v_V3096.clone(); rt::apply_direct(interp, "shen.", &[__t215])? }; { let __t225 = { - let __t216 = v_W3452.clone(); + let __t216 = v_W3106.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t216])? }; if rt::is_truthy(interp, &__t225)? { @@ -1422,21 +1422,21 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3453 = { - let __t217 = v_W3452.clone(); + let v_W3107 = { + let __t217 = v_W3106.clone(); rt::apply_direct(interp, "shen.<-out", &[__t217])? }; { - let v_W3454 = { - let __t218 = v_W3452.clone(); + let v_W3108 = { + let __t218 = v_W3106.clone(); rt::apply_direct(interp, "shen.in->", &[__t218])? }; { - let __t219 = v_W3454.clone(); + let __t219 = v_W3108.clone(); let __t224 = { let __t220 = Value::nil(); let __t223 = { - let __t221 = v_W3453.clone(); + let __t221 = v_W3107.clone(); let __t222 = Value::nil(); rt::cons(&__t221, &__t222) }; @@ -1455,7 +1455,7 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t227 = { - let __t226 = v_W3451.clone(); + let __t226 = v_W3105.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t226])? }; if match rt::is_truthy(interp, &__t227) { @@ -1464,12 +1464,12 @@ pub fn aot_shen_x2e__x3c_conc_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3451.clone()); + break Ok(v_W3105.clone()); } } } } else { - break Ok(v_W3443.clone()); + break Ok(v_W3097.clone()); } } } @@ -1490,18 +1490,18 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3455 = args[0].clone(); + let mut v_V3109 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3456 = { - let v_W3457 = { - let __t228 = v_V3455.clone(); + let v_W3110 = { + let v_W3111 = { + let __t228 = v_V3109.clone(); rt::apply_direct(interp, "shen.", &[__t228])? }; { let __t245 = { - let __t229 = v_W3457.clone(); + let __t229 = v_W3111.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t229])? }; if rt::is_truthy(interp, &__t245)? { @@ -1510,23 +1510,23 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3458 = { - let __t230 = v_W3457.clone(); + let v_W3112 = { + let __t230 = v_W3111.clone(); rt::apply_direct(interp, "shen.<-out", &[__t230])? }; { - let v_W3459 = { - let __t231 = v_W3457.clone(); + let v_W3113 = { + let __t231 = v_W3111.clone(); rt::apply_direct(interp, "shen.in->", &[__t231])? }; { - let v_W3460 = { - let __t232 = v_W3459.clone(); + let v_W3114 = { + let __t232 = v_W3113.clone(); rt::apply_direct(interp, "shen.", &[__t232])? }; { let __t244 = { - let __t233 = v_W3460.clone(); + let __t233 = v_W3114.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1539,8 +1539,8 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3461 = { - let __t234 = v_W3460.clone(); + let v_W3115 = { + let __t234 = v_W3114.clone(); rt::apply_direct( interp, "shen.in->", @@ -1548,8 +1548,8 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W3462 = { - let __t235 = v_W3461.clone(); + let v_W3116 = { + let __t235 = v_W3115.clone(); rt::apply_direct( interp, "shen.", @@ -1558,7 +1558,7 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t243 = { - let __t236 = v_W3462.clone(); + let __t236 = v_W3116.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1575,8 +1575,8 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3463 = { - let __t237 = v_W3462.clone(); + let v_W3117 = { + let __t237 = v_W3116.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1584,9 +1584,9 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W3464 = { + let v_W3118 = { let __t238 = - v_W3462.clone(); + v_W3116.clone(); rt::apply_direct( interp, "shen.in->", @@ -1595,12 +1595,12 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t239 = - v_W3464.clone(); + v_W3118.clone(); let __t242 = { let __t240 = - v_W3458.clone(); + v_W3112.clone(); let __t241 = - v_W3463.clone(); + v_W3117.clone(); rt::cons( &__t240, &__t241, ) @@ -1627,7 +1627,7 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t247 = { - let __t246 = v_W3456.clone(); + let __t246 = v_W3110.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t246])? }; if match rt::is_truthy(interp, &__t247) { @@ -1635,14 +1635,14 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W3465 = { - let v_W3466 = { - let __t248 = v_V3455.clone(); + let v_W3119 = { + let v_W3120 = { + let __t248 = v_V3109.clone(); rt::apply_direct(interp, "", &[__t248])? }; { let __t253 = { - let __t249 = v_W3466.clone(); + let __t249 = v_W3120.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t249])? }; if rt::is_truthy(interp, &__t253)? { @@ -1651,12 +1651,12 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3467 = { - let __t250 = v_W3466.clone(); + let v_W3121 = { + let __t250 = v_W3120.clone(); rt::apply_direct(interp, "shen.in->", &[__t250])? }; { - let __t251 = v_W3467.clone(); + let __t251 = v_W3121.clone(); let __t252 = Value::nil(); rt::apply_direct( interp, @@ -1670,7 +1670,7 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t255 = { - let __t254 = v_W3465.clone(); + let __t254 = v_W3119.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t254])? }; if match rt::is_truthy(interp, &__t255) { @@ -1679,12 +1679,12 @@ pub fn aot_shen_x2e__x3c_prems_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3465.clone()); + break Ok(v_W3119.clone()); } } } } else { - break Ok(v_W3456.clone()); + break Ok(v_W3110.clone()); } } } @@ -1705,24 +1705,24 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3468 = args[0].clone(); + let mut v_V3122 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3469 = { + let v_W3123 = { let __t261 = { - let __t256 = v_V3468.clone(); + let __t256 = v_V3122.clone(); let __t257 = Value::sym(interp.intern("!")); rt::apply_direct(interp, "shen.hds=?", &[__t256, __t257])? }; if rt::is_truthy(interp, &__t261)? { { - let v_W3470 = { - let __t258 = v_V3468.clone(); + let v_W3124 = { + let __t258 = v_V3122.clone(); rt::apply_direct(interp, "tail", &[__t258])? }; { - let __t259 = v_W3470.clone(); + let __t259 = v_W3124.clone(); let __t260 = Value::sym(interp.intern("!")); rt::apply_direct(interp, "shen.comb", &[__t259, __t260])? } @@ -1735,7 +1735,7 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t263 = { - let __t262 = v_W3469.clone(); + let __t262 = v_W3123.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t262])? }; if match rt::is_truthy(interp, &__t263) { @@ -1743,14 +1743,14 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W3471 = { - let v_W3472 = { - let __t264 = v_V3468.clone(); + let v_W3125 = { + let v_W3126 = { + let __t264 = v_V3122.clone(); rt::apply_direct(interp, "shen.", &[__t264])? }; { let __t283 = { - let __t265 = v_W3472.clone(); + let __t265 = v_W3126.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t265])? }; if rt::is_truthy(interp, &__t283)? { @@ -1759,18 +1759,18 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3473 = { - let __t266 = v_W3472.clone(); + let v_W3127 = { + let __t266 = v_W3126.clone(); rt::apply_direct(interp, "shen.<-out", &[__t266])? }; { - let v_W3474 = { - let __t267 = v_W3472.clone(); + let v_W3128 = { + let __t267 = v_W3126.clone(); rt::apply_direct(interp, "shen.in->", &[__t267])? }; { let __t282 = { - let __t268 = v_W3474.clone(); + let __t268 = v_W3128.clone(); let __t269 = Value::sym(interp.intern(">>")); rt::apply_direct( interp, @@ -1780,8 +1780,8 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; if rt::is_truthy(interp, &__t282)? { { - let v_W3475 = { - let __t270 = v_W3474.clone(); + let v_W3129 = { + let __t270 = v_W3128.clone(); rt::apply_direct( interp, "tail", @@ -1789,8 +1789,8 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3476 = { - let __t271 = v_W3475.clone(); + let v_W3130 = { + let __t271 = v_W3129.clone(); rt::apply_direct( interp, "shen.", @@ -1799,7 +1799,7 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t281 = { - let __t272 = v_W3476.clone(); + let __t272 = v_W3130.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1816,9 +1816,9 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3477 = { + let v_W3131 = { let __t273 = - v_W3476.clone(); + v_W3130.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1826,9 +1826,9 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3478 = { + let v_W3132 = { let __t274 = - v_W3476.clone(); + v_W3130.clone(); rt::apply_direct( interp, "shen.in->", @@ -1837,14 +1837,14 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t275 = - v_W3478.clone(); + v_W3132.clone(); let __t280 = { let __t276 = - v_W3473 + v_W3127 .clone( ); let __t279 = { - let __t277 = v_W3477.clone(); + let __t277 = v_W3131.clone(); let __t278 = Value::nil(); rt::cons( &__t277, @@ -1888,7 +1888,7 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t285 = { - let __t284 = v_W3471.clone(); + let __t284 = v_W3125.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t284])? }; if match rt::is_truthy(interp, &__t285) { @@ -1896,14 +1896,14 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W3479 = { - let v_W3480 = { - let __t286 = v_V3468.clone(); + let v_W3133 = { + let v_W3134 = { + let __t286 = v_V3122.clone(); rt::apply_direct(interp, "shen.", &[__t286])? }; { let __t296 = { - let __t287 = v_W3480.clone(); + let __t287 = v_W3134.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1920,8 +1920,8 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let v_W3481 = { - let __t288 = v_W3480.clone(); + let v_W3135 = { + let __t288 = v_W3134.clone(); rt::apply_direct( interp, "shen.<-out", @@ -1929,8 +1929,8 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3482 = { - let __t289 = v_W3480.clone(); + let v_W3136 = { + let __t289 = v_W3134.clone(); rt::apply_direct( interp, "shen.in->", @@ -1938,11 +1938,11 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let __t290 = v_W3482.clone(); + let __t290 = v_W3136.clone(); let __t295 = { let __t291 = Value::nil(); let __t294 = { - let __t292 = v_W3481.clone(); + let __t292 = v_W3135.clone(); let __t293 = Value::nil(); rt::cons(&__t292, &__t293) }; @@ -1961,7 +1961,7 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t298 = { - let __t297 = v_W3479.clone(); + let __t297 = v_W3133.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -1976,17 +1976,17 @@ pub fn aot_shen_x2e__x3c_prem_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3479.clone()); + break Ok(v_W3133.clone()); } } } } else { - break Ok(v_W3471.clone()); + break Ok(v_W3125.clone()); } } } } else { - break Ok(v_W3469.clone()); + break Ok(v_W3123.clone()); } } } @@ -2007,18 +2007,18 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3483 = args[0].clone(); + let mut v_V3137 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3484 = { - let v_W3485 = { - let __t299 = v_V3483.clone(); + let v_W3138 = { + let v_W3139 = { + let __t299 = v_V3137.clone(); rt::apply_direct(interp, "shen.", &[__t299])? }; { let __t316 = { - let __t300 = v_W3485.clone(); + let __t300 = v_W3139.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t300])? }; if rt::is_truthy(interp, &__t316)? { @@ -2027,23 +2027,23 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W3486 = { - let __t301 = v_W3485.clone(); + let v_W3140 = { + let __t301 = v_W3139.clone(); rt::apply_direct(interp, "shen.<-out", &[__t301])? }; { - let v_W3487 = { - let __t302 = v_W3485.clone(); + let v_W3141 = { + let __t302 = v_W3139.clone(); rt::apply_direct(interp, "shen.in->", &[__t302])? }; { - let v_W3488 = { - let __t303 = v_W3487.clone(); + let v_W3142 = { + let __t303 = v_W3141.clone(); rt::apply_direct(interp, "shen.", &[__t303])? }; { let __t315 = { - let __t304 = v_W3488.clone(); + let __t304 = v_W3142.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2056,8 +2056,8 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W3489 = { - let __t305 = v_W3488.clone(); + let v_W3143 = { + let __t305 = v_W3142.clone(); rt::apply_direct( interp, "shen.in->", @@ -2065,8 +2065,8 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe )? }; { - let v_W3490 = { - let __t306 = v_W3489.clone(); + let v_W3144 = { + let __t306 = v_W3143.clone(); rt::apply_direct( interp, "shen.", @@ -2075,7 +2075,7 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe }; { let __t314 = { - let __t307 = v_W3490.clone(); + let __t307 = v_W3144.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2092,8 +2092,8 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W3491 = { - let __t308 = v_W3490.clone(); + let v_W3145 = { + let __t308 = v_W3144.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2101,9 +2101,9 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe )? }; { - let v_W3492 = { + let v_W3146 = { let __t309 = - v_W3490.clone(); + v_W3144.clone(); rt::apply_direct( interp, "shen.in->", @@ -2112,12 +2112,12 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe }; { let __t310 = - v_W3492.clone(); + v_W3146.clone(); let __t313 = { let __t311 = - v_W3486.clone(); + v_W3140.clone(); let __t312 = - v_W3491.clone(); + v_W3145.clone(); rt::cons( &__t311, &__t312, ) @@ -2144,7 +2144,7 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe }; { let __t318 = { - let __t317 = v_W3484.clone(); + let __t317 = v_W3138.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t317])? }; if match rt::is_truthy(interp, &__t318) { @@ -2152,14 +2152,14 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe Err(e) => break Err(e), } { { - let v_W3493 = { - let v_W3494 = { - let __t319 = v_V3483.clone(); + let v_W3147 = { + let v_W3148 = { + let __t319 = v_V3137.clone(); rt::apply_direct(interp, "shen.", &[__t319])? }; { let __t327 = { - let __t320 = v_W3494.clone(); + let __t320 = v_W3148.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t320])? }; if rt::is_truthy(interp, &__t327)? { @@ -2168,19 +2168,19 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W3495 = { - let __t321 = v_W3494.clone(); + let v_W3149 = { + let __t321 = v_W3148.clone(); rt::apply_direct(interp, "shen.<-out", &[__t321])? }; { - let v_W3496 = { - let __t322 = v_W3494.clone(); + let v_W3150 = { + let __t322 = v_W3148.clone(); rt::apply_direct(interp, "shen.in->", &[__t322])? }; { - let __t323 = v_W3496.clone(); + let __t323 = v_W3150.clone(); let __t326 = { - let __t324 = v_W3495.clone(); + let __t324 = v_W3149.clone(); let __t325 = Value::nil(); rt::cons(&__t324, &__t325) }; @@ -2197,7 +2197,7 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe }; { let __t329 = { - let __t328 = v_W3493.clone(); + let __t328 = v_W3147.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t328])? }; if match rt::is_truthy(interp, &__t329) { @@ -2205,14 +2205,14 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe Err(e) => break Err(e), } { { - let v_W3497 = { - let v_W3498 = { - let __t330 = v_V3483.clone(); + let v_W3151 = { + let v_W3152 = { + let __t330 = v_V3137.clone(); rt::apply_direct(interp, "", &[__t330])? }; { let __t335 = { - let __t331 = v_W3498.clone(); + let __t331 = v_W3152.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2229,8 +2229,8 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } } else { { - let v_W3499 = { - let __t332 = v_W3498.clone(); + let v_W3153 = { + let __t332 = v_W3152.clone(); rt::apply_direct( interp, "shen.in->", @@ -2238,7 +2238,7 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe )? }; { - let __t333 = v_W3499.clone(); + let __t333 = v_W3153.clone(); let __t334 = Value::nil(); rt::apply_direct( interp, @@ -2252,7 +2252,7 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe }; { let __t337 = { - let __t336 = v_W3497.clone(); + let __t336 = v_W3151.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2267,17 +2267,17 @@ pub fn aot_shen_x2e__x3c_ass_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3497.clone()); + break Ok(v_W3151.clone()); } } } } else { - break Ok(v_W3493.clone()); + break Ok(v_W3147.clone()); } } } } else { - break Ok(v_W3484.clone()); + break Ok(v_W3138.clone()); } } } @@ -2298,29 +2298,29 @@ pub fn aot_shen_x2e__x3c_iscomma_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3500 = args[0].clone(); + let mut v_V3154 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3501 = { + let v_W3155 = { let __t347 = { - let __t338 = v_V3500.clone(); + let __t338 = v_V3154.clone(); rt::is_cons(&__t338) }; if rt::is_truthy(interp, &__t347)? { { - let v_W3502 = { - let __t339 = v_V3500.clone(); + let v_W3156 = { + let __t339 = v_V3154.clone(); rt::apply_direct(interp, "head", &[__t339])? }; { - let v_W3503 = { - let __t340 = v_V3500.clone(); + let v_W3157 = { + let __t340 = v_V3154.clone(); rt::apply_direct(interp, "tail", &[__t340])? }; { let __t346 = { - let __t341 = v_W3502.clone(); + let __t341 = v_W3156.clone(); let __t343 = { let __t342 = Value::str(","); rt::apply_direct(interp, "intern", &[__t342])? @@ -2329,7 +2329,7 @@ pub fn aot_shen_x2e__x3c_iscomma_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; if rt::is_truthy(interp, &__t346)? { { - let __t344 = v_W3503.clone(); + let __t344 = v_W3157.clone(); let __t345 = Value::sym(interp.intern("shen.skip")); rt::apply_direct(interp, "shen.comb", &[__t344, __t345])? } @@ -2349,7 +2349,7 @@ pub fn aot_shen_x2e__x3c_iscomma_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t349 = { - let __t348 = v_W3501.clone(); + let __t348 = v_W3155.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t348])? }; if match rt::is_truthy(interp, &__t349) { @@ -2358,7 +2358,7 @@ pub fn aot_shen_x2e__x3c_iscomma_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3501.clone()); + break Ok(v_W3155.clone()); } } } @@ -2379,18 +2379,18 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3504 = args[0].clone(); + let mut v_V3158 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3505 = { - let v_W3506 = { - let __t350 = v_V3504.clone(); + let v_W3159 = { + let v_W3160 = { + let __t350 = v_V3158.clone(); rt::apply_direct(interp, "shen.", &[__t350])? }; { let __t374 = { - let __t351 = v_W3506.clone(); + let __t351 = v_W3160.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t351])? }; if rt::is_truthy(interp, &__t374)? { @@ -2399,23 +2399,23 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W3507 = { - let __t352 = v_W3506.clone(); + let v_W3161 = { + let __t352 = v_W3160.clone(); rt::apply_direct(interp, "shen.<-out", &[__t352])? }; { - let v_W3508 = { - let __t353 = v_W3506.clone(); + let v_W3162 = { + let __t353 = v_W3160.clone(); rt::apply_direct(interp, "shen.in->", &[__t353])? }; { - let v_W3509 = { - let __t354 = v_W3508.clone(); + let v_W3163 = { + let __t354 = v_W3162.clone(); rt::apply_direct(interp, "shen.", &[__t354])? }; { let __t373 = { - let __t355 = v_W3509.clone(); + let __t355 = v_W3163.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2428,8 +2428,8 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W3510 = { - let __t356 = v_W3509.clone(); + let v_W3164 = { + let __t356 = v_W3163.clone(); rt::apply_direct( interp, "shen.in->", @@ -2437,8 +2437,8 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let v_W3511 = { - let __t357 = v_W3510.clone(); + let v_W3165 = { + let __t357 = v_W3164.clone(); rt::apply_direct( interp, "shen.", @@ -2447,7 +2447,7 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t372 = { - let __t358 = v_W3511.clone(); + let __t358 = v_W3165.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2464,8 +2464,8 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W3512 = { - let __t359 = v_W3511.clone(); + let v_W3166 = { + let __t359 = v_W3165.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2473,9 +2473,9 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh )? }; { - let v_W3513 = { + let v_W3167 = { let __t360 = - v_W3511.clone(); + v_W3165.clone(); rt::apply_direct( interp, "shen.in->", @@ -2484,11 +2484,11 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t361 = - v_W3513.clone(); + v_W3167.clone(); let __t371 = { let __t363 = { let __t362 = - v_W3507.clone(); + v_W3161.clone(); rt::apply_direct( interp, "shen.curry", @@ -2505,7 +2505,7 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; let __t369 = { let __t367 = { - let __t366 = v_W3512.clone(); + let __t366 = v_W3166.clone(); rt::apply_direct(interp, "shen.rectify-type", &[__t366])? }; let __t368 = @@ -2547,7 +2547,7 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t376 = { - let __t375 = v_W3505.clone(); + let __t375 = v_W3159.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t375])? }; if match rt::is_truthy(interp, &__t376) { @@ -2555,14 +2555,14 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh Err(e) => break Err(e), } { { - let v_W3514 = { - let v_W3515 = { - let __t377 = v_V3504.clone(); + let v_W3168 = { + let v_W3169 = { + let __t377 = v_V3158.clone(); rt::apply_direct(interp, "shen.", &[__t377])? }; { let __t383 = { - let __t378 = v_W3515.clone(); + let __t378 = v_W3169.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t378])? }; if rt::is_truthy(interp, &__t383)? { @@ -2571,18 +2571,18 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } } else { { - let v_W3516 = { - let __t379 = v_W3515.clone(); + let v_W3170 = { + let __t379 = v_W3169.clone(); rt::apply_direct(interp, "shen.<-out", &[__t379])? }; { - let v_W3517 = { - let __t380 = v_W3515.clone(); + let v_W3171 = { + let __t380 = v_W3169.clone(); rt::apply_direct(interp, "shen.in->", &[__t380])? }; { - let __t381 = v_W3517.clone(); - let __t382 = v_W3516.clone(); + let __t381 = v_W3171.clone(); + let __t382 = v_W3170.clone(); rt::apply_direct( interp, "shen.comb", @@ -2596,7 +2596,7 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t385 = { - let __t384 = v_W3514.clone(); + let __t384 = v_W3168.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t384])? }; if match rt::is_truthy(interp, &__t385) { @@ -2605,12 +2605,12 @@ pub fn aot_shen_x2e__x3c_formula_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3514.clone()); + break Ok(v_W3168.clone()); } } } } else { - break Ok(v_W3505.clone()); + break Ok(v_W3159.clone()); } } } @@ -2631,29 +2631,29 @@ pub fn aot_shen_x2e__x3c_iscolon_x3e_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3518 = args[0].clone(); + let mut v_V3172 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3519 = { + let v_W3173 = { let __t395 = { - let __t386 = v_V3518.clone(); + let __t386 = v_V3172.clone(); rt::is_cons(&__t386) }; if rt::is_truthy(interp, &__t395)? { { - let v_W3520 = { - let __t387 = v_V3518.clone(); + let v_W3174 = { + let __t387 = v_V3172.clone(); rt::apply_direct(interp, "head", &[__t387])? }; { - let v_W3521 = { - let __t388 = v_V3518.clone(); + let v_W3175 = { + let __t388 = v_V3172.clone(); rt::apply_direct(interp, "tail", &[__t388])? }; { let __t394 = { - let __t389 = v_W3520.clone(); + let __t389 = v_W3174.clone(); let __t391 = { let __t390 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t390])? @@ -2662,7 +2662,7 @@ pub fn aot_shen_x2e__x3c_iscolon_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; if rt::is_truthy(interp, &__t394)? { { - let __t392 = v_W3521.clone(); + let __t392 = v_W3175.clone(); let __t393 = Value::sym(interp.intern("shen.skip")); rt::apply_direct(interp, "shen.comb", &[__t392, __t393])? } @@ -2682,7 +2682,7 @@ pub fn aot_shen_x2e__x3c_iscolon_x3e_(interp: &mut Interp, args: &[Value]) -> Sh }; { let __t397 = { - let __t396 = v_W3519.clone(); + let __t396 = v_W3173.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t396])? }; if match rt::is_truthy(interp, &__t397) { @@ -2691,7 +2691,7 @@ pub fn aot_shen_x2e__x3c_iscolon_x3e_(interp: &mut Interp, args: &[Value]) -> Sh } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3519.clone()); + break Ok(v_W3173.clone()); } } } @@ -2712,18 +2712,18 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3522 = args[0].clone(); + let mut v_V3176 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3523 = { - let v_W3524 = { - let __t398 = v_V3522.clone(); + let v_W3177 = { + let v_W3178 = { + let __t398 = v_V3176.clone(); rt::apply_direct(interp, "shen.", &[__t398])? }; { let __t411 = { - let __t399 = v_W3524.clone(); + let __t399 = v_W3178.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t399])? }; if rt::is_truthy(interp, &__t411)? { @@ -2732,23 +2732,23 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3525 = { - let __t400 = v_W3524.clone(); + let v_W3179 = { + let __t400 = v_W3178.clone(); rt::apply_direct(interp, "shen.<-out", &[__t400])? }; { - let v_W3526 = { - let __t401 = v_W3524.clone(); + let v_W3180 = { + let __t401 = v_W3178.clone(); rt::apply_direct(interp, "shen.in->", &[__t401])? }; { - let v_W3527 = { - let __t402 = v_W3526.clone(); + let v_W3181 = { + let __t402 = v_W3180.clone(); rt::apply_direct(interp, "shen.", &[__t402])? }; { let __t410 = { - let __t403 = v_W3527.clone(); + let __t403 = v_W3181.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -2761,8 +2761,8 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3528 = { - let __t404 = v_W3527.clone(); + let v_W3182 = { + let __t404 = v_W3181.clone(); rt::apply_direct( interp, "shen.<-out", @@ -2770,8 +2770,8 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let v_W3529 = { - let __t405 = v_W3527.clone(); + let v_W3183 = { + let __t405 = v_W3181.clone(); rt::apply_direct( interp, "shen.in->", @@ -2779,10 +2779,10 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen )? }; { - let __t406 = v_W3529.clone(); + let __t406 = v_W3183.clone(); let __t409 = { - let __t407 = v_W3525.clone(); - let __t408 = v_W3528.clone(); + let __t407 = v_W3179.clone(); + let __t408 = v_W3182.clone(); rt::cons(&__t407, &__t408) }; rt::apply_direct( @@ -2803,7 +2803,7 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t413 = { - let __t412 = v_W3523.clone(); + let __t412 = v_W3177.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t412])? }; if match rt::is_truthy(interp, &__t413) { @@ -2811,14 +2811,14 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let v_W3530 = { - let v_W3531 = { - let __t414 = v_V3522.clone(); + let v_W3184 = { + let v_W3185 = { + let __t414 = v_V3176.clone(); rt::apply_direct(interp, "", &[__t414])? }; { let __t419 = { - let __t415 = v_W3531.clone(); + let __t415 = v_W3185.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t415])? }; if rt::is_truthy(interp, &__t419)? { @@ -2827,12 +2827,12 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } } else { { - let v_W3532 = { - let __t416 = v_W3531.clone(); + let v_W3186 = { + let __t416 = v_W3185.clone(); rt::apply_direct(interp, "shen.in->", &[__t416])? }; { - let __t417 = v_W3532.clone(); + let __t417 = v_W3186.clone(); let __t418 = Value::nil(); rt::apply_direct( interp, @@ -2846,7 +2846,7 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen }; { let __t421 = { - let __t420 = v_W3530.clone(); + let __t420 = v_W3184.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t420])? }; if match rt::is_truthy(interp, &__t421) { @@ -2855,12 +2855,12 @@ pub fn aot_shen_x2e__x3c_sides_x3e_(interp: &mut Interp, args: &[Value]) -> Shen } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3530.clone()); + break Ok(v_W3184.clone()); } } } } else { - break Ok(v_W3523.clone()); + break Ok(v_W3177.clone()); } } } @@ -2881,44 +2881,44 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3533 = args[0].clone(); + let mut v_V3187 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3534 = { + let v_W3188 = { let __t435 = { - let __t422 = v_V3533.clone(); + let __t422 = v_V3187.clone(); let __t423 = Value::sym(interp.intern("if")); rt::apply_direct(interp, "shen.hds=?", &[__t422, __t423])? }; if rt::is_truthy(interp, &__t435)? { { - let v_W3535 = { - let __t424 = v_V3533.clone(); + let v_W3189 = { + let __t424 = v_V3187.clone(); rt::apply_direct(interp, "tail", &[__t424])? }; { let __t434 = { - let __t425 = v_W3535.clone(); + let __t425 = v_W3189.clone(); rt::is_cons(&__t425) }; if rt::is_truthy(interp, &__t434)? { { - let v_W3536 = { - let __t426 = v_W3535.clone(); + let v_W3190 = { + let __t426 = v_W3189.clone(); rt::apply_direct(interp, "head", &[__t426])? }; { - let v_W3537 = { - let __t427 = v_W3535.clone(); + let v_W3191 = { + let __t427 = v_W3189.clone(); rt::apply_direct(interp, "tail", &[__t427])? }; { - let __t428 = v_W3537.clone(); + let __t428 = v_W3191.clone(); let __t433 = { let __t429 = Value::sym(interp.intern("if")); let __t432 = { - let __t430 = v_W3536.clone(); + let __t430 = v_W3190.clone(); let __t431 = Value::nil(); rt::cons(&__t430, &__t431) }; @@ -2947,7 +2947,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t437 = { - let __t436 = v_W3534.clone(); + let __t436 = v_W3188.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t436])? }; if match rt::is_truthy(interp, &__t437) { @@ -2955,43 +2955,43 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W3538 = { + let v_W3192 = { let __t457 = { - let __t438 = v_V3533.clone(); + let __t438 = v_V3187.clone(); let __t439 = Value::sym(interp.intern("let")); rt::apply_direct(interp, "shen.hds=?", &[__t438, __t439])? }; if rt::is_truthy(interp, &__t457)? { { - let v_W3539 = { - let __t440 = v_V3533.clone(); + let v_W3193 = { + let __t440 = v_V3187.clone(); rt::apply_direct(interp, "tail", &[__t440])? }; { let __t456 = { - let __t441 = v_W3539.clone(); + let __t441 = v_W3193.clone(); rt::is_cons(&__t441) }; if rt::is_truthy(interp, &__t456)? { { - let v_W3540 = { - let __t442 = v_W3539.clone(); + let v_W3194 = { + let __t442 = v_W3193.clone(); rt::apply_direct(interp, "head", &[__t442])? }; { - let v_W3541 = { - let __t443 = v_W3539.clone(); + let v_W3195 = { + let __t443 = v_W3193.clone(); rt::apply_direct(interp, "tail", &[__t443])? }; { let __t455 = { - let __t444 = v_W3541.clone(); + let __t444 = v_W3195.clone(); rt::is_cons(&__t444) }; if rt::is_truthy(interp, &__t455)? { { - let v_W3542 = { - let __t445 = v_W3541.clone(); + let v_W3196 = { + let __t445 = v_W3195.clone(); rt::apply_direct( interp, "head", @@ -2999,9 +2999,9 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3543 = { + let v_W3197 = { let __t446 = - v_W3541.clone(); + v_W3195.clone(); rt::apply_direct( interp, "tail", @@ -3010,7 +3010,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t447 = - v_W3543.clone(); + v_W3197.clone(); let __t454 = { let __t448 = Value::sym( interp @@ -3018,10 +3018,10 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ); let __t453 = { let __t449 = - v_W3540.clone(); + v_W3194.clone(); let __t452 = { let __t450 = - v_W3542 + v_W3196 .clone( ); let __t451 = @@ -3076,7 +3076,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t459 = { - let __t458 = v_W3538.clone(); + let __t458 = v_W3192.clone(); rt::apply_direct(interp, "shen.parse-failure?", &[__t458])? }; if match rt::is_truthy(interp, &__t459) { @@ -3084,9 +3084,9 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W3544 = { + let v_W3198 = { let __t475 = { - let __t460 = v_V3533.clone(); + let __t460 = v_V3187.clone(); let __t461 = Value::sym(interp.intern("ctxt")); rt::apply_direct( interp, @@ -3096,19 +3096,19 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; if rt::is_truthy(interp, &__t475)? { { - let v_W3545 = { - let __t462 = v_V3533.clone(); + let v_W3199 = { + let __t462 = v_V3187.clone(); rt::apply_direct(interp, "tail", &[__t462])? }; { let __t474 = { - let __t463 = v_W3545.clone(); + let __t463 = v_W3199.clone(); rt::is_cons(&__t463) }; if rt::is_truthy(interp, &__t474)? { { - let v_W3546 = { - let __t464 = v_W3545.clone(); + let v_W3200 = { + let __t464 = v_W3199.clone(); rt::apply_direct( interp, "head", @@ -3116,8 +3116,8 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let v_W3547 = { - let __t465 = v_W3545.clone(); + let v_W3201 = { + let __t465 = v_W3199.clone(); rt::apply_direct( interp, "tail", @@ -3127,7 +3127,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR { let __t473 = { let __t466 = - v_W3546.clone(); + v_W3200.clone(); rt::apply_direct( interp, "variable?", @@ -3139,7 +3139,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR )? { { let __t467 = - v_W3547.clone(); + v_W3201.clone(); let __t472 = { let __t468 = Value::sym( @@ -3150,7 +3150,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ); let __t471 = { let __t469 = - v_W3546 + v_W3200 .clone( ); let __t470 = @@ -3199,7 +3199,7 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t477 = { - let __t476 = v_W3544.clone(); + let __t476 = v_W3198.clone(); rt::apply_direct( interp, "shen.parse-failure?", @@ -3210,21 +3210,144 @@ pub fn aot_shen_x2e__x3c_side_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - rt::apply_direct(interp, "shen.parse-failure", &[])? - }); + { + let v_W3202 = { + let __t493 = { + let __t478 = v_V3187.clone(); + let __t479 = + Value::sym(interp.intern("sqts")); + rt::apply_direct( + interp, + "shen.hds=?", + &[__t478, __t479], + )? + }; + if rt::is_truthy(interp, &__t493)? { + { + let v_W3203 = { + let __t480 = v_V3187.clone(); + rt::apply_direct( + interp, + "tail", + &[__t480], + )? + }; + { + let __t492 = { + let __t481 = v_W3203.clone(); + rt::is_cons(&__t481) + }; + if rt::is_truthy(interp, &__t492)? { + { + let v_W3204 = { + let __t482 = + v_W3203.clone(); + rt::apply_direct( + interp, + "head", + &[__t482], + )? + }; + { + let v_W3205 = { + let __t483 = + v_W3203.clone(); + rt::apply_direct( + interp, + "tail", + &[__t483], + )? + }; + { + let __t491 = { + let __t484 = + v_W3204 + .clone( + ); + rt::apply_direct(interp, "variable?", &[__t484])? + }; + if rt::is_truthy( + interp, &__t491, + )? { + { + let __t485 = v_W3205.clone(); + let __t490 = { + let __t486 = Value::sym(interp.intern("sqts")); + let __t489 = { + let __t487 = v_W3204.clone(); + let __t488 = Value::nil(); + rt::cons(&__t487, &__t488) + }; + rt::cons(&__t486, &__t489) + }; + rt::apply_direct(interp, "shen.comb", &[__t485, __t490])? + } + } else { + { + rt::apply_direct(interp, "shen.parse-failure", &[])? + } + } + } + } + } + } else { + { + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + } + } + } + } + } else { + { + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + } + } + }; + { + let __t495 = { + let __t494 = v_W3202.clone(); + rt::apply_direct( + interp, + "shen.parse-failure?", + &[__t494], + )? + }; + if match rt::is_truthy(interp, &__t495) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + rt::apply_direct( + interp, + "shen.parse-failure", + &[], + )? + }); + } else { + break Ok(v_W3202.clone()); + } + } + } } else { - break Ok(v_W3544.clone()); + break Ok(v_W3198.clone()); } } } } else { - break Ok(v_W3538.clone()); + break Ok(v_W3192.clone()); } } } } else { - break Ok(v_W3534.clone()); + break Ok(v_W3188.clone()); } } } @@ -3245,140 +3368,140 @@ pub fn aot_shen_x2e_lr_x2d_rule(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V3554 = args[0].clone(); + let mut v_V3212 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3555 = args[1].clone(); + let mut v_V3213 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3556 = args[2].clone(); + let mut v_V3214 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t525 = { - let __t494 = { - let __t480 = v_V3556.clone(); - rt::is_cons(&__t480) + let __t543 = { + let __t512 = { + let __t498 = v_V3214.clone(); + rt::is_cons(&__t498) }; - if !rt::is_truthy(interp, &__t494)? { + if !rt::is_truthy(interp, &__t512)? { Value::bool(false) } else { - let __t495 = { - let __t492 = { - let __t481 = Value::nil(); - let __t483 = { - let __t482 = v_V3556.clone(); - rt::hd(&__t482)? + let __t513 = { + let __t510 = { + let __t499 = Value::nil(); + let __t501 = { + let __t500 = v_V3214.clone(); + rt::hd(&__t500)? }; - rt::eq(&__t481, &__t483) + rt::eq(&__t499, &__t501) }; - if !rt::is_truthy(interp, &__t492)? { + if !rt::is_truthy(interp, &__t510)? { Value::bool(false) } else { - let __t493 = { - let __t490 = { - let __t485 = { - let __t484 = v_V3556.clone(); - rt::tl(&__t484)? + let __t511 = { + let __t508 = { + let __t503 = { + let __t502 = v_V3214.clone(); + rt::tl(&__t502)? }; - rt::is_cons(&__t485) + rt::is_cons(&__t503) }; - if !rt::is_truthy(interp, &__t490)? { + if !rt::is_truthy(interp, &__t508)? { Value::bool(false) } else { - let __t491 = { - let __t486 = Value::nil(); - let __t489 = { - let __t488 = { - let __t487 = v_V3556.clone(); - rt::tl(&__t487)? + let __t509 = { + let __t504 = Value::nil(); + let __t507 = { + let __t506 = { + let __t505 = v_V3214.clone(); + rt::tl(&__t505)? }; - rt::tl(&__t488)? + rt::tl(&__t506)? }; - rt::eq(&__t486, &__t489) + rt::eq(&__t504, &__t507) }; - Value::bool(rt::is_truthy(interp, &__t491)?) + Value::bool(rt::is_truthy(interp, &__t509)?) } }; - Value::bool(rt::is_truthy(interp, &__t493)?) + Value::bool(rt::is_truthy(interp, &__t511)?) } }; - Value::bool(rt::is_truthy(interp, &__t495)?) + Value::bool(rt::is_truthy(interp, &__t513)?) } }; - if match rt::is_truthy(interp, &__t525) { + if match rt::is_truthy(interp, &__t543) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3557 = { - let __t496 = Value::sym(interp.intern("P")); - rt::apply_direct(interp, "gensym", &[__t496])? + let v_W3215 = { + let __t514 = Value::sym(interp.intern("P")); + rt::apply_direct(interp, "gensym", &[__t514])? }; { - let v_W3558 = { - let __t498 = { - let __t497 = v_V3556.clone(); - rt::tl(&__t497)? + let v_W3216 = { + let __t516 = { + let __t515 = v_V3214.clone(); + rt::tl(&__t515)? }; - let __t501 = { - let __t499 = v_W3557.clone(); - let __t500 = Value::nil(); - rt::cons(&__t499, &__t500) + let __t519 = { + let __t517 = v_W3215.clone(); + let __t518 = Value::nil(); + rt::cons(&__t517, &__t518) }; - rt::cons(&__t498, &__t501) + rt::cons(&__t516, &__t519) }; { - let v_W3559 = { - let __t503 = { - let __t502 = v_V3555.clone(); - rt::apply_direct(interp, "shen.coll-formulae", &[__t502])? + let v_W3217 = { + let __t521 = { + let __t520 = v_V3213.clone(); + rt::apply_direct(interp, "shen.coll-formulae", &[__t520])? }; - let __t506 = { - let __t504 = v_W3557.clone(); - let __t505 = Value::nil(); - rt::cons(&__t504, &__t505) + let __t524 = { + let __t522 = v_W3215.clone(); + let __t523 = Value::nil(); + rt::cons(&__t522, &__t523) }; - rt::cons(&__t503, &__t506) + rt::cons(&__t521, &__t524) }; { - let v_W3560 = { - let __t507 = v_V3554.clone(); - let __t514 = { - let __t510 = { - let __t508 = v_W3559.clone(); - let __t509 = Value::nil(); - rt::cons(&__t508, &__t509) + let v_W3218 = { + let __t525 = v_V3212.clone(); + let __t532 = { + let __t528 = { + let __t526 = v_W3217.clone(); + let __t527 = Value::nil(); + rt::cons(&__t526, &__t527) }; - let __t513 = { - let __t511 = v_W3558.clone(); - let __t512 = Value::nil(); - rt::cons(&__t511, &__t512) + let __t531 = { + let __t529 = v_W3216.clone(); + let __t530 = Value::nil(); + rt::cons(&__t529, &__t530) }; - rt::cons(&__t510, &__t513) + rt::cons(&__t528, &__t531) }; - rt::cons(&__t507, &__t514) + rt::cons(&__t525, &__t532) }; { - let v_W3561 = { - let __t515 = v_V3554.clone(); - let __t520 = { - let __t516 = v_V3555.clone(); - let __t519 = { - let __t517 = v_V3556.clone(); - let __t518 = Value::nil(); - rt::cons(&__t517, &__t518) + let v_W3219 = { + let __t533 = v_V3212.clone(); + let __t538 = { + let __t534 = v_V3213.clone(); + let __t537 = { + let __t535 = v_V3214.clone(); + let __t536 = Value::nil(); + rt::cons(&__t535, &__t536) }; - rt::cons(&__t516, &__t519) + rt::cons(&__t534, &__t537) }; - rt::cons(&__t515, &__t520) + rt::cons(&__t533, &__t538) }; break Ok({ - let __t521 = v_W3561.clone(); - let __t524 = { - let __t522 = v_W3560.clone(); - let __t523 = Value::nil(); - rt::cons(&__t522, &__t523) + let __t539 = v_W3219.clone(); + let __t542 = { + let __t540 = v_W3218.clone(); + let __t541 = Value::nil(); + rt::cons(&__t540, &__t541) }; - rt::cons(&__t521, &__t524) + rt::cons(&__t539, &__t542) }); } } @@ -3387,14 +3510,14 @@ pub fn aot_shen_x2e_lr_x2d_rule(interp: &mut Interp, args: &[Value]) -> ShenResu } } else { { - let __t479 = Value::bool(true); - if match rt::is_truthy(interp, &__t479) { + let __t497 = Value::bool(true); + if match rt::is_truthy(interp, &__t497) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t478 = Value::str("implementation error in shen.lr-rule"); - rt::apply_direct(interp, "simple-error", &[__t478])? + let __t496 = Value::str("implementation error in shen.lr-rule"); + rt::apply_direct(interp, "simple-error", &[__t496])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3419,131 +3542,131 @@ pub fn aot_shen_x2e_coll_x2d_formulae(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3564 = args[0].clone(); + let mut v_V3222 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t561 = { - let __t559 = Value::nil(); - let __t560 = v_V3564.clone(); - rt::eq(&__t559, &__t560) + let __t579 = { + let __t577 = Value::nil(); + let __t578 = v_V3222.clone(); + rt::eq(&__t577, &__t578) }; - if match rt::is_truthy(interp, &__t561) { + if match rt::is_truthy(interp, &__t579) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t558 = { - let __t549 = { - let __t528 = v_V3564.clone(); - rt::is_cons(&__t528) + let __t576 = { + let __t567 = { + let __t546 = v_V3222.clone(); + rt::is_cons(&__t546) }; - if !rt::is_truthy(interp, &__t549)? { + if !rt::is_truthy(interp, &__t567)? { Value::bool(false) } else { - let __t550 = { - let __t547 = { - let __t530 = { - let __t529 = v_V3564.clone(); - rt::hd(&__t529)? + let __t568 = { + let __t565 = { + let __t548 = { + let __t547 = v_V3222.clone(); + rt::hd(&__t547)? }; - rt::is_cons(&__t530) + rt::is_cons(&__t548) }; - if !rt::is_truthy(interp, &__t547)? { + if !rt::is_truthy(interp, &__t565)? { Value::bool(false) } else { - let __t548 = { - let __t545 = { - let __t531 = Value::nil(); - let __t534 = { - let __t533 = { - let __t532 = v_V3564.clone(); - rt::hd(&__t532)? + let __t566 = { + let __t563 = { + let __t549 = Value::nil(); + let __t552 = { + let __t551 = { + let __t550 = v_V3222.clone(); + rt::hd(&__t550)? }; - rt::hd(&__t533)? + rt::hd(&__t551)? }; - rt::eq(&__t531, &__t534) + rt::eq(&__t549, &__t552) }; - if !rt::is_truthy(interp, &__t545)? { + if !rt::is_truthy(interp, &__t563)? { Value::bool(false) } else { - let __t546 = { - let __t543 = { - let __t537 = { - let __t536 = { - let __t535 = v_V3564.clone(); - rt::hd(&__t535)? + let __t564 = { + let __t561 = { + let __t555 = { + let __t554 = { + let __t553 = v_V3222.clone(); + rt::hd(&__t553)? }; - rt::tl(&__t536)? + rt::tl(&__t554)? }; - rt::is_cons(&__t537) + rt::is_cons(&__t555) }; - if !rt::is_truthy(interp, &__t543)? { + if !rt::is_truthy(interp, &__t561)? { Value::bool(false) } else { - let __t544 = { - let __t538 = Value::nil(); - let __t542 = { - let __t541 = { - let __t540 = { - let __t539 = v_V3564.clone(); - rt::hd(&__t539)? + let __t562 = { + let __t556 = Value::nil(); + let __t560 = { + let __t559 = { + let __t558 = { + let __t557 = v_V3222.clone(); + rt::hd(&__t557)? }; - rt::tl(&__t540)? + rt::tl(&__t558)? }; - rt::tl(&__t541)? + rt::tl(&__t559)? }; - rt::eq(&__t538, &__t542) + rt::eq(&__t556, &__t560) }; - Value::bool(rt::is_truthy(interp, &__t544)?) + Value::bool(rt::is_truthy(interp, &__t562)?) } }; - Value::bool(rt::is_truthy(interp, &__t546)?) + Value::bool(rt::is_truthy(interp, &__t564)?) } }; - Value::bool(rt::is_truthy(interp, &__t548)?) + Value::bool(rt::is_truthy(interp, &__t566)?) } }; - Value::bool(rt::is_truthy(interp, &__t550)?) + Value::bool(rt::is_truthy(interp, &__t568)?) } }; - if match rt::is_truthy(interp, &__t558) { + if match rt::is_truthy(interp, &__t576) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t554 = { - let __t553 = { - let __t552 = { - let __t551 = v_V3564.clone(); - rt::hd(&__t551)? + let __t572 = { + let __t571 = { + let __t570 = { + let __t569 = v_V3222.clone(); + rt::hd(&__t569)? }; - rt::tl(&__t552)? + rt::tl(&__t570)? }; - rt::hd(&__t553)? + rt::hd(&__t571)? }; - let __t557 = { - let __t556 = { - let __t555 = v_V3564.clone(); - rt::tl(&__t555)? + let __t575 = { + let __t574 = { + let __t573 = v_V3222.clone(); + rt::tl(&__t573)? }; - rt::apply_direct(interp, "shen.coll-formulae", &[__t556])? + rt::apply_direct(interp, "shen.coll-formulae", &[__t574])? }; - rt::cons(&__t554, &__t557) + rt::cons(&__t572, &__t575) }); } else { { - let __t527 = Value::bool(true); - if match rt::is_truthy(interp, &__t527) { + let __t545 = Value::bool(true); + if match rt::is_truthy(interp, &__t545) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t526 = + let __t544 = Value::str("implementation error in shen.coll-formulae"); - rt::apply_direct(interp, "simple-error", &[__t526])? + rt::apply_direct(interp, "simple-error", &[__t544])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3570,46 +3693,46 @@ pub fn aot_shen_x2e__x3c_expr_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3565 = args[0].clone(); + let mut v_V3223 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3566 = { - let __t571 = { - let __t562 = v_V3565.clone(); - rt::is_cons(&__t562) + let v_W3224 = { + let __t589 = { + let __t580 = v_V3223.clone(); + rt::is_cons(&__t580) }; - if rt::is_truthy(interp, &__t571)? { + if rt::is_truthy(interp, &__t589)? { { - let v_W3567 = { - let __t563 = v_V3565.clone(); - rt::apply_direct(interp, "head", &[__t563])? + let v_W3225 = { + let __t581 = v_V3223.clone(); + rt::apply_direct(interp, "head", &[__t581])? }; { - let v_W3568 = { - let __t564 = v_V3565.clone(); - rt::apply_direct(interp, "tail", &[__t564])? + let v_W3226 = { + let __t582 = v_V3223.clone(); + rt::apply_direct(interp, "tail", &[__t582])? }; { - let __t570 = { - let __t566 = { - let __t565 = v_W3567.clone(); + let __t588 = { + let __t584 = { + let __t583 = v_W3225.clone(); rt::apply_direct( interp, "shen.key-in-sequent-calculus?", - &[__t565], + &[__t583], )? }; - rt::apply_direct(interp, "not", &[__t566])? + rt::apply_direct(interp, "not", &[__t584])? }; - if rt::is_truthy(interp, &__t570)? { + if rt::is_truthy(interp, &__t588)? { { - let __t567 = v_W3568.clone(); - let __t569 = { - let __t568 = v_W3567.clone(); - rt::apply_direct(interp, "macroexpand", &[__t568])? + let __t585 = v_W3226.clone(); + let __t587 = { + let __t586 = v_W3225.clone(); + rt::apply_direct(interp, "macroexpand", &[__t586])? }; - rt::apply_direct(interp, "shen.comb", &[__t567, __t569])? + rt::apply_direct(interp, "shen.comb", &[__t585, __t587])? } } else { { @@ -3626,17 +3749,17 @@ pub fn aot_shen_x2e__x3c_expr_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t573 = { - let __t572 = v_W3566.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t572])? + let __t591 = { + let __t590 = v_W3224.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t590])? }; - if match rt::is_truthy(interp, &__t573) { + if match rt::is_truthy(interp, &__t591) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3566.clone()); + break Ok(v_W3224.clone()); } } } @@ -3660,64 +3783,64 @@ pub fn aot_shen_x2e_key_x2d_in_x2d_sequent_x2d_calculus_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3569 = args[0].clone(); + let mut v_V3227 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t589 = { - let __t574 = v_V3569.clone(); - let __t588 = { - let __t575 = Value::sym(interp.intern(">>")); - let __t587 = { - let __t577 = { - let __t576 = Value::str(";"); - rt::apply_direct(interp, "intern", &[__t576])? + let __t607 = { + let __t592 = v_V3227.clone(); + let __t606 = { + let __t593 = Value::sym(interp.intern(">>")); + let __t605 = { + let __t595 = { + let __t594 = Value::str(";"); + rt::apply_direct(interp, "intern", &[__t594])? }; - let __t586 = { - let __t579 = { - let __t578 = Value::str(","); - rt::apply_direct(interp, "intern", &[__t578])? + let __t604 = { + let __t597 = { + let __t596 = Value::str(","); + rt::apply_direct(interp, "intern", &[__t596])? }; - let __t585 = { - let __t581 = { - let __t580 = Value::str(":"); - rt::apply_direct(interp, "intern", &[__t580])? + let __t603 = { + let __t599 = { + let __t598 = Value::str(":"); + rt::apply_direct(interp, "intern", &[__t598])? }; - let __t584 = { - let __t582 = Value::sym(interp.intern("<--")); - let __t583 = Value::nil(); - rt::cons(&__t582, &__t583) + let __t602 = { + let __t600 = Value::sym(interp.intern("<--")); + let __t601 = Value::nil(); + rt::cons(&__t600, &__t601) }; - rt::cons(&__t581, &__t584) + rt::cons(&__t599, &__t602) }; - rt::cons(&__t579, &__t585) + rt::cons(&__t597, &__t603) }; - rt::cons(&__t577, &__t586) + rt::cons(&__t595, &__t604) }; - rt::cons(&__t575, &__t587) + rt::cons(&__t593, &__t605) }; - rt::apply_direct(interp, "element?", &[__t574, __t588])? + rt::apply_direct(interp, "element?", &[__t592, __t606])? }; - if match rt::is_truthy(interp, &__t589) { + if match rt::is_truthy(interp, &__t607) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t591 = { - let __t590 = v_V3569.clone(); - rt::apply_direct(interp, "shen.sng?", &[__t590])? + let __t609 = { + let __t608 = v_V3227.clone(); + rt::apply_direct(interp, "shen.sng?", &[__t608])? }; - if match rt::is_truthy(interp, &__t591) { + if match rt::is_truthy(interp, &__t609) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { break Ok({ - let __t592 = v_V3569.clone(); - rt::apply_direct(interp, "shen.dbl?", &[__t592])? + let __t610 = v_V3227.clone(); + rt::apply_direct(interp, "shen.dbl?", &[__t610])? }); } } @@ -3747,39 +3870,39 @@ pub fn aot_shen_x2e__x3c_type_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3570 = args[0].clone(); + let mut v_V3228 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3571 = { - let v_W3572 = { - let __t593 = v_V3570.clone(); - rt::apply_direct(interp, "shen.", &[__t593])? + let v_W3229 = { + let v_W3230 = { + let __t611 = v_V3228.clone(); + rt::apply_direct(interp, "shen.", &[__t611])? }; { - let __t599 = { - let __t594 = v_W3572.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t594])? + let __t617 = { + let __t612 = v_W3230.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t612])? }; - if rt::is_truthy(interp, &__t599)? { + if rt::is_truthy(interp, &__t617)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W3573 = { - let __t595 = v_W3572.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t595])? + let v_W3231 = { + let __t613 = v_W3230.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t613])? }; { - let v_W3574 = { - let __t596 = v_W3572.clone(); - rt::apply_direct(interp, "shen.in->", &[__t596])? + let v_W3232 = { + let __t614 = v_W3230.clone(); + rt::apply_direct(interp, "shen.in->", &[__t614])? }; { - let __t597 = v_W3574.clone(); - let __t598 = v_W3573.clone(); - rt::apply_direct(interp, "shen.comb", &[__t597, __t598])? + let __t615 = v_W3232.clone(); + let __t616 = v_W3231.clone(); + rt::apply_direct(interp, "shen.comb", &[__t615, __t616])? } } } @@ -3787,17 +3910,17 @@ pub fn aot_shen_x2e__x3c_type_x3e_(interp: &mut Interp, args: &[Value]) -> ShenR } }; { - let __t601 = { - let __t600 = v_W3571.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t600])? + let __t619 = { + let __t618 = v_W3229.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t618])? }; - if match rt::is_truthy(interp, &__t601) { + if match rt::is_truthy(interp, &__t619) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3571.clone()); + break Ok(v_W3229.clone()); } } } @@ -3818,36 +3941,36 @@ pub fn aot_shen_x2e__x3c_dbl_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3575 = args[0].clone(); + let mut v_V3233 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3576 = { - let __t609 = { - let __t602 = v_V3575.clone(); - rt::is_cons(&__t602) + let v_W3234 = { + let __t627 = { + let __t620 = v_V3233.clone(); + rt::is_cons(&__t620) }; - if rt::is_truthy(interp, &__t609)? { + if rt::is_truthy(interp, &__t627)? { { - let v_W3577 = { - let __t603 = v_V3575.clone(); - rt::apply_direct(interp, "head", &[__t603])? + let v_W3235 = { + let __t621 = v_V3233.clone(); + rt::apply_direct(interp, "head", &[__t621])? }; { - let v_W3578 = { - let __t604 = v_V3575.clone(); - rt::apply_direct(interp, "tail", &[__t604])? + let v_W3236 = { + let __t622 = v_V3233.clone(); + rt::apply_direct(interp, "tail", &[__t622])? }; { - let __t608 = { - let __t605 = v_W3577.clone(); - rt::apply_direct(interp, "shen.dbl?", &[__t605])? + let __t626 = { + let __t623 = v_W3235.clone(); + rt::apply_direct(interp, "shen.dbl?", &[__t623])? }; - if rt::is_truthy(interp, &__t608)? { + if rt::is_truthy(interp, &__t626)? { { - let __t606 = v_W3578.clone(); - let __t607 = v_W3577.clone(); - rt::apply_direct(interp, "shen.comb", &[__t606, __t607])? + let __t624 = v_W3236.clone(); + let __t625 = v_W3235.clone(); + rt::apply_direct(interp, "shen.comb", &[__t624, __t625])? } } else { { @@ -3864,17 +3987,17 @@ pub fn aot_shen_x2e__x3c_dbl_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t611 = { - let __t610 = v_W3576.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t610])? + let __t629 = { + let __t628 = v_W3234.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t628])? }; - if match rt::is_truthy(interp, &__t611) { + if match rt::is_truthy(interp, &__t629) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3576.clone()); + break Ok(v_W3234.clone()); } } } @@ -3895,36 +4018,36 @@ pub fn aot_shen_x2e__x3c_sng_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V3579 = args[0].clone(); + let mut v_V3237 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3580 = { - let __t619 = { - let __t612 = v_V3579.clone(); - rt::is_cons(&__t612) + let v_W3238 = { + let __t637 = { + let __t630 = v_V3237.clone(); + rt::is_cons(&__t630) }; - if rt::is_truthy(interp, &__t619)? { + if rt::is_truthy(interp, &__t637)? { { - let v_W3581 = { - let __t613 = v_V3579.clone(); - rt::apply_direct(interp, "head", &[__t613])? + let v_W3239 = { + let __t631 = v_V3237.clone(); + rt::apply_direct(interp, "head", &[__t631])? }; { - let v_W3582 = { - let __t614 = v_V3579.clone(); - rt::apply_direct(interp, "tail", &[__t614])? + let v_W3240 = { + let __t632 = v_V3237.clone(); + rt::apply_direct(interp, "tail", &[__t632])? }; { - let __t618 = { - let __t615 = v_W3581.clone(); - rt::apply_direct(interp, "shen.sng?", &[__t615])? + let __t636 = { + let __t633 = v_W3239.clone(); + rt::apply_direct(interp, "shen.sng?", &[__t633])? }; - if rt::is_truthy(interp, &__t618)? { + if rt::is_truthy(interp, &__t636)? { { - let __t616 = v_W3582.clone(); - let __t617 = v_W3581.clone(); - rt::apply_direct(interp, "shen.comb", &[__t616, __t617])? + let __t634 = v_W3240.clone(); + let __t635 = v_W3239.clone(); + rt::apply_direct(interp, "shen.comb", &[__t634, __t635])? } } else { { @@ -3941,17 +4064,17 @@ pub fn aot_shen_x2e__x3c_sng_x3e_(interp: &mut Interp, args: &[Value]) -> ShenRe } }; { - let __t621 = { - let __t620 = v_W3580.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t620])? + let __t639 = { + let __t638 = v_W3238.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t638])? }; - if match rt::is_truthy(interp, &__t621) { + if match rt::is_truthy(interp, &__t639) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W3580.clone()); + break Ok(v_W3238.clone()); } } } @@ -3972,26 +4095,26 @@ pub fn aot_shen_x2e_sng_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V3583 = args[0].clone(); + let mut v_V3241 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t623 = { - let __t622 = v_V3583.clone(); - rt::is_symbol(&__t622) + let __t641 = { + let __t640 = v_V3241.clone(); + rt::is_symbol(&__t640) }; - if !match rt::is_truthy(interp, &__t623) { + if !match rt::is_truthy(interp, &__t641) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t625 = { - let __t624 = v_V3583.clone(); - rt::apply_direct(interp, "str", &[__t624])? + let __t643 = { + let __t642 = v_V3241.clone(); + rt::apply_direct(interp, "str", &[__t642])? }; - rt::apply_direct(interp, "shen.sng-h?", &[__t625])? + rt::apply_direct(interp, "shen.sng-h?", &[__t643])? }); } } @@ -4012,57 +4135,57 @@ pub fn aot_shen_x2e_sng_x2d_h_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3586 = args[0].clone(); + let mut v_V3244 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t638 = { - let __t636 = Value::str("___"); - let __t637 = v_V3586.clone(); - rt::eq(&__t636, &__t637) + let __t656 = { + let __t654 = Value::str("___"); + let __t655 = v_V3244.clone(); + rt::eq(&__t654, &__t655) }; - if match rt::is_truthy(interp, &__t638) { + if match rt::is_truthy(interp, &__t656) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t635 = { - let __t631 = { - let __t627 = v_V3586.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t627])? + let __t653 = { + let __t649 = { + let __t645 = v_V3244.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t645])? }; - if !rt::is_truthy(interp, &__t631)? { + if !rt::is_truthy(interp, &__t649)? { Value::bool(false) } else { - let __t632 = { - let __t628 = Value::str("_"); - let __t630 = { - let __t629 = v_V3586.clone(); - rt::apply_direct(interp, "hdstr", &[__t629])? + let __t650 = { + let __t646 = Value::str("_"); + let __t648 = { + let __t647 = v_V3244.clone(); + rt::apply_direct(interp, "hdstr", &[__t647])? }; - rt::eq(&__t628, &__t630) + rt::eq(&__t646, &__t648) }; - Value::bool(rt::is_truthy(interp, &__t632)?) + Value::bool(rt::is_truthy(interp, &__t650)?) } }; - if match rt::is_truthy(interp, &__t635) { + if match rt::is_truthy(interp, &__t653) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t634 = { - let __t633 = v_V3586.clone(); - rt::apply_direct(interp, "tlstr", &[__t633])? + let __t652 = { + let __t651 = v_V3244.clone(); + rt::apply_direct(interp, "tlstr", &[__t651])? }; - v_V3586 = __t634; + v_V3244 = __t652; continue; } } else { { - let __t626 = Value::bool(true); - if match rt::is_truthy(interp, &__t626) { + let __t644 = Value::bool(true); + if match rt::is_truthy(interp, &__t644) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4092,26 +4215,26 @@ pub fn aot_shen_x2e_dbl_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V3587 = args[0].clone(); + let mut v_V3245 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t640 = { - let __t639 = v_V3587.clone(); - rt::is_symbol(&__t639) + let __t658 = { + let __t657 = v_V3245.clone(); + rt::is_symbol(&__t657) }; - if !match rt::is_truthy(interp, &__t640) { + if !match rt::is_truthy(interp, &__t658) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t642 = { - let __t641 = v_V3587.clone(); - rt::apply_direct(interp, "str", &[__t641])? + let __t660 = { + let __t659 = v_V3245.clone(); + rt::apply_direct(interp, "str", &[__t659])? }; - rt::apply_direct(interp, "shen.dbl-h?", &[__t642])? + rt::apply_direct(interp, "shen.dbl-h?", &[__t660])? }); } } @@ -4132,57 +4255,57 @@ pub fn aot_shen_x2e_dbl_x2d_h_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3590 = args[0].clone(); + let mut v_V3248 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t655 = { - let __t653 = Value::str("==="); - let __t654 = v_V3590.clone(); - rt::eq(&__t653, &__t654) + let __t673 = { + let __t671 = Value::str("==="); + let __t672 = v_V3248.clone(); + rt::eq(&__t671, &__t672) }; - if match rt::is_truthy(interp, &__t655) { + if match rt::is_truthy(interp, &__t673) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t652 = { - let __t648 = { - let __t644 = v_V3590.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t644])? + let __t670 = { + let __t666 = { + let __t662 = v_V3248.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t662])? }; - if !rt::is_truthy(interp, &__t648)? { + if !rt::is_truthy(interp, &__t666)? { Value::bool(false) } else { - let __t649 = { - let __t645 = Value::str("="); - let __t647 = { - let __t646 = v_V3590.clone(); - rt::apply_direct(interp, "hdstr", &[__t646])? + let __t667 = { + let __t663 = Value::str("="); + let __t665 = { + let __t664 = v_V3248.clone(); + rt::apply_direct(interp, "hdstr", &[__t664])? }; - rt::eq(&__t645, &__t647) + rt::eq(&__t663, &__t665) }; - Value::bool(rt::is_truthy(interp, &__t649)?) + Value::bool(rt::is_truthy(interp, &__t667)?) } }; - if match rt::is_truthy(interp, &__t652) { + if match rt::is_truthy(interp, &__t670) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t651 = { - let __t650 = v_V3590.clone(); - rt::apply_direct(interp, "tlstr", &[__t650])? + let __t669 = { + let __t668 = v_V3248.clone(); + rt::apply_direct(interp, "tlstr", &[__t668])? }; - v_V3590 = __t651; + v_V3248 = __t669; continue; } } else { { - let __t643 = Value::bool(true); - if match rt::is_truthy(interp, &__t643) { + let __t661 = Value::bool(true); + if match rt::is_truthy(interp, &__t661) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4215,44 +4338,44 @@ pub fn aot_shen_x2e_rules_x2d__x3e_prolog( ))); } #[allow(unused_mut)] - let mut v_V3591 = args[0].clone(); + let mut v_V3249 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3592 = args[1].clone(); + let mut v_V3250 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3593 = { - let __t657 = { + let v_W3251 = { + let __t675 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3594 = args[0].clone(); + let v_Z3252 = args[0].clone(); Ok({ - let __t656 = v_Z3594.clone(); - rt::apply_direct(interp, "shen.rule->clause", &[__t656])? + let __t674 = v_Z3252.clone(); + rt::apply_direct(interp, "shen.rule->clause", &[__t674])? }) }, Vec::new(), interp, ) }; - let __t658 = v_V3592.clone(); - rt::apply_direct(interp, "mapcan", &[__t657, __t658])? + let __t676 = v_V3250.clone(); + rt::apply_direct(interp, "mapcan", &[__t675, __t676])? }; { - let v_W3595 = { - let __t659 = Value::sym(interp.intern("defprolog")); - let __t662 = { - let __t660 = v_V3591.clone(); - let __t661 = v_W3593.clone(); - rt::cons(&__t660, &__t661) + let v_W3253 = { + let __t677 = Value::sym(interp.intern("defprolog")); + let __t680 = { + let __t678 = v_V3249.clone(); + let __t679 = v_W3251.clone(); + rt::cons(&__t678, &__t679) }; - rt::cons(&__t659, &__t662) + rt::cons(&__t677, &__t680) }; break Ok({ - let __t663 = v_W3595.clone(); - rt::apply_direct(interp, "eval", &[__t663])? + let __t681 = v_W3253.clone(); + rt::apply_direct(interp, "eval", &[__t681])? }); } } @@ -4273,238 +4396,238 @@ pub fn aot_shen_x2e_rule_x2d__x3e_clause(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3596 = args[0].clone(); + let mut v_V3254 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t735 = { - let __t703 = { - let __t666 = v_V3596.clone(); - rt::is_cons(&__t666) + let __t753 = { + let __t721 = { + let __t684 = v_V3254.clone(); + rt::is_cons(&__t684) }; - if !rt::is_truthy(interp, &__t703)? { + if !rt::is_truthy(interp, &__t721)? { Value::bool(false) } else { - let __t704 = { - let __t701 = { - let __t668 = { - let __t667 = v_V3596.clone(); - rt::tl(&__t667)? + let __t722 = { + let __t719 = { + let __t686 = { + let __t685 = v_V3254.clone(); + rt::tl(&__t685)? }; - rt::is_cons(&__t668) + rt::is_cons(&__t686) }; - if !rt::is_truthy(interp, &__t701)? { + if !rt::is_truthy(interp, &__t719)? { Value::bool(false) } else { - let __t702 = { - let __t699 = { - let __t671 = { - let __t670 = { - let __t669 = v_V3596.clone(); - rt::tl(&__t669)? + let __t720 = { + let __t717 = { + let __t689 = { + let __t688 = { + let __t687 = v_V3254.clone(); + rt::tl(&__t687)? }; - rt::tl(&__t670)? + rt::tl(&__t688)? }; - rt::is_cons(&__t671) + rt::is_cons(&__t689) }; - if !rt::is_truthy(interp, &__t699)? { + if !rt::is_truthy(interp, &__t717)? { Value::bool(false) } else { - let __t700 = { - let __t697 = { - let __t675 = { - let __t674 = { - let __t673 = { - let __t672 = v_V3596.clone(); - rt::tl(&__t672)? + let __t718 = { + let __t715 = { + let __t693 = { + let __t692 = { + let __t691 = { + let __t690 = v_V3254.clone(); + rt::tl(&__t690)? }; - rt::tl(&__t673)? + rt::tl(&__t691)? }; - rt::hd(&__t674)? + rt::hd(&__t692)? }; - rt::is_cons(&__t675) + rt::is_cons(&__t693) }; - if !rt::is_truthy(interp, &__t697)? { + if !rt::is_truthy(interp, &__t715)? { Value::bool(false) } else { - let __t698 = { - let __t695 = { - let __t680 = { - let __t679 = { - let __t678 = { - let __t677 = { - let __t676 = v_V3596.clone(); - rt::tl(&__t676)? + let __t716 = { + let __t713 = { + let __t698 = { + let __t697 = { + let __t696 = { + let __t695 = { + let __t694 = v_V3254.clone(); + rt::tl(&__t694)? }; - rt::tl(&__t677)? + rt::tl(&__t695)? }; - rt::hd(&__t678)? + rt::hd(&__t696)? }; - rt::tl(&__t679)? + rt::tl(&__t697)? }; - rt::is_cons(&__t680) + rt::is_cons(&__t698) }; - if !rt::is_truthy(interp, &__t695)? { + if !rt::is_truthy(interp, &__t713)? { Value::bool(false) } else { - let __t696 = { - let __t693 = { - let __t681 = Value::nil(); - let __t687 = { - let __t686 = { - let __t685 = { - let __t684 = { - let __t683 = { - let __t682 = - v_V3596.clone(); - rt::tl(&__t682)? + let __t714 = { + let __t711 = { + let __t699 = Value::nil(); + let __t705 = { + let __t704 = { + let __t703 = { + let __t702 = { + let __t701 = { + let __t700 = + v_V3254.clone(); + rt::tl(&__t700)? }; - rt::tl(&__t683)? + rt::tl(&__t701)? }; - rt::hd(&__t684)? + rt::hd(&__t702)? }; - rt::tl(&__t685)? + rt::tl(&__t703)? }; - rt::tl(&__t686)? + rt::tl(&__t704)? }; - rt::eq(&__t681, &__t687) + rt::eq(&__t699, &__t705) }; - if !rt::is_truthy(interp, &__t693)? { + if !rt::is_truthy(interp, &__t711)? { Value::bool(false) } else { - let __t694 = { - let __t688 = Value::nil(); - let __t692 = { - let __t691 = { - let __t690 = { - let __t689 = - v_V3596.clone(); - rt::tl(&__t689)? + let __t712 = { + let __t706 = Value::nil(); + let __t710 = { + let __t709 = { + let __t708 = { + let __t707 = + v_V3254.clone(); + rt::tl(&__t707)? }; - rt::tl(&__t690)? + rt::tl(&__t708)? }; - rt::tl(&__t691)? + rt::tl(&__t709)? }; - rt::eq(&__t688, &__t692) + rt::eq(&__t706, &__t710) }; Value::bool(rt::is_truthy( - interp, &__t694, + interp, &__t712, )?) } }; - Value::bool(rt::is_truthy(interp, &__t696)?) + Value::bool(rt::is_truthy(interp, &__t714)?) } }; - Value::bool(rt::is_truthy(interp, &__t698)?) + Value::bool(rt::is_truthy(interp, &__t716)?) } }; - Value::bool(rt::is_truthy(interp, &__t700)?) + Value::bool(rt::is_truthy(interp, &__t718)?) } }; - Value::bool(rt::is_truthy(interp, &__t702)?) + Value::bool(rt::is_truthy(interp, &__t720)?) } }; - Value::bool(rt::is_truthy(interp, &__t704)?) + Value::bool(rt::is_truthy(interp, &__t722)?) } }; - if match rt::is_truthy(interp, &__t735) { + if match rt::is_truthy(interp, &__t753) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3597 = { - let __t710 = { - let __t709 = { - let __t708 = { - let __t707 = { - let __t706 = { - let __t705 = v_V3596.clone(); - rt::tl(&__t705)? + let v_W3255 = { + let __t728 = { + let __t727 = { + let __t726 = { + let __t725 = { + let __t724 = { + let __t723 = v_V3254.clone(); + rt::tl(&__t723)? }; - rt::tl(&__t706)? + rt::tl(&__t724)? }; - rt::hd(&__t707)? + rt::hd(&__t725)? }; - rt::tl(&__t708)? + rt::tl(&__t726)? }; - rt::hd(&__t709)? + rt::hd(&__t727)? }; - rt::apply_direct(interp, "shen.extract-vars", &[__t710])? + rt::apply_direct(interp, "shen.extract-vars", &[__t728])? }; break Ok({ - let __t717 = { - let __t716 = { - let __t715 = { - let __t714 = { - let __t713 = { - let __t712 = { - let __t711 = v_V3596.clone(); - rt::tl(&__t711)? + let __t735 = { + let __t734 = { + let __t733 = { + let __t732 = { + let __t731 = { + let __t730 = { + let __t729 = v_V3254.clone(); + rt::tl(&__t729)? }; - rt::tl(&__t712)? + rt::tl(&__t730)? }; - rt::hd(&__t713)? + rt::hd(&__t731)? }; - rt::tl(&__t714)? + rt::tl(&__t732)? }; - rt::hd(&__t715)? + rt::hd(&__t733)? }; - rt::apply_direct(interp, "shen.rule->head", &[__t716])? + rt::apply_direct(interp, "shen.rule->head", &[__t734])? }; - let __t734 = { - let __t720 = { - let __t718 = Value::sym(interp.intern("<--")); - let __t719 = Value::nil(); - rt::cons(&__t718, &__t719) + let __t752 = { + let __t738 = { + let __t736 = Value::sym(interp.intern("<--")); + let __t737 = Value::nil(); + rt::cons(&__t736, &__t737) }; - let __t733 = { - let __t721 = v_W3597.clone(); - let __t722 = Value::sym(interp.intern("Assumptions")); - let __t724 = { - let __t723 = v_V3596.clone(); - rt::hd(&__t723)? + let __t751 = { + let __t739 = v_W3255.clone(); + let __t740 = Value::sym(interp.intern("Assumptions")); + let __t742 = { + let __t741 = v_V3254.clone(); + rt::hd(&__t741)? }; - let __t727 = { - let __t726 = { - let __t725 = v_V3596.clone(); - rt::tl(&__t725)? + let __t745 = { + let __t744 = { + let __t743 = v_V3254.clone(); + rt::tl(&__t743)? }; - rt::hd(&__t726)? + rt::hd(&__t744)? }; - let __t732 = { - let __t731 = { - let __t730 = { - let __t729 = { - let __t728 = v_V3596.clone(); - rt::tl(&__t728)? + let __t750 = { + let __t749 = { + let __t748 = { + let __t747 = { + let __t746 = v_V3254.clone(); + rt::tl(&__t746)? }; - rt::tl(&__t729)? + rt::tl(&__t747)? }; - rt::hd(&__t730)? + rt::hd(&__t748)? }; - rt::hd(&__t731)? + rt::hd(&__t749)? }; rt::apply_direct( interp, "shen.rule->body", - &[__t721, __t722, __t724, __t727, __t732], + &[__t739, __t740, __t742, __t745, __t750], )? }; - rt::apply_direct(interp, "append", &[__t720, __t733])? + rt::apply_direct(interp, "append", &[__t738, __t751])? }; - rt::apply_direct(interp, "append", &[__t717, __t734])? + rt::apply_direct(interp, "append", &[__t735, __t752])? }); } } else { { - let __t665 = Value::bool(true); - if match rt::is_truthy(interp, &__t665) { + let __t683 = Value::bool(true); + if match rt::is_truthy(interp, &__t683) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t664 = Value::sym(interp.intern("shen.rule->clause")); - rt::apply_direct(interp, "shen.f-error", &[__t664])? + let __t682 = Value::str("partial function shen.rule->clause"); + rt::apply_direct(interp, "simple-error", &[__t682])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4529,20 +4652,20 @@ pub fn aot_shen_x2e_rule_x2d__x3e_head(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3598 = args[0].clone(); + let mut v_V3256 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t737 = { - let __t736 = v_V3598.clone(); - rt::apply_direct(interp, "shen.macro-@ch", &[__t736])? + let __t755 = { + let __t754 = v_V3256.clone(); + rt::apply_direct(interp, "shen.macro-@ch", &[__t754])? }; - let __t740 = { - let __t738 = Value::sym(interp.intern("Assumptions")); - let __t739 = Value::nil(); - rt::cons(&__t738, &__t739) + let __t758 = { + let __t756 = Value::sym(interp.intern("Assumptions")); + let __t757 = Value::nil(); + rt::cons(&__t756, &__t757) }; - rt::cons(&__t737, &__t740) + rt::cons(&__t755, &__t758) }); } } @@ -4561,17 +4684,17 @@ pub fn aot_shen_x2e_macro_x2d__x40_ch(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3599 = args[0].clone(); + let mut v_V3257 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t741 = Value::sym(interp.intern("shen.@ch")); - let __t744 = { - let __t742 = v_V3599.clone(); - let __t743 = Value::nil(); - rt::cons(&__t742, &__t743) + let __t759 = Value::sym(interp.intern("shen.@ch")); + let __t762 = { + let __t760 = v_V3257.clone(); + let __t761 = Value::nil(); + rt::cons(&__t760, &__t761) }; - rt::cons(&__t741, &__t744) + rt::cons(&__t759, &__t762) }); } } @@ -4590,17 +4713,17 @@ pub fn aot_shen_x2e_macro_x2d__x40_c(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3600 = args[0].clone(); + let mut v_V3258 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t745 = Value::sym(interp.intern("shen.@c")); - let __t748 = { - let __t746 = v_V3600.clone(); - let __t747 = Value::nil(); - rt::cons(&__t746, &__t747) + let __t763 = Value::sym(interp.intern("shen.@c")); + let __t766 = { + let __t764 = v_V3258.clone(); + let __t765 = Value::nil(); + rt::cons(&__t764, &__t765) }; - rt::cons(&__t745, &__t748) + rt::cons(&__t763, &__t766) }); } } @@ -4619,229 +4742,229 @@ pub fn aot_shen_x2e_rule_x2d__x3e_body(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3601 = args[0].clone(); + let mut v_V3259 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3602 = args[1].clone(); + let mut v_V3260 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3603 = args[2].clone(); + let mut v_V3261 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3604 = args[3].clone(); + let mut v_V3262 = args[3].clone(); #[allow(unused_mut)] - let mut v_V3605 = args[4].clone(); + let mut v_V3263 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t812 = { - let __t805 = Value::nil(); - let __t806 = v_V3605.clone(); - rt::eq(&__t805, &__t806) + let __t830 = { + let __t823 = Value::nil(); + let __t824 = v_V3263.clone(); + rt::eq(&__t823, &__t824) }; - if match rt::is_truthy(interp, &__t812) { + if match rt::is_truthy(interp, &__t830) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t807 = Value::nil(); - let __t808 = v_V3601.clone(); - let __t809 = v_V3602.clone(); - let __t810 = v_V3603.clone(); - let __t811 = v_V3604.clone(); + let __t825 = Value::nil(); + let __t826 = v_V3259.clone(); + let __t827 = v_V3260.clone(); + let __t828 = v_V3261.clone(); + let __t829 = v_V3262.clone(); rt::apply_direct( interp, "shen.side-conditions->goals", - &[__t807, __t808, __t809, __t810, __t811], + &[__t825, __t826, __t827, __t828, __t829], )? }); } else { { - let __t804 = { - let __t784 = { - let __t776 = Value::nil(); - let __t777 = v_V3604.clone(); - rt::eq(&__t776, &__t777) + let __t822 = { + let __t802 = { + let __t794 = Value::nil(); + let __t795 = v_V3262.clone(); + rt::eq(&__t794, &__t795) }; - if !rt::is_truthy(interp, &__t784)? { + if !rt::is_truthy(interp, &__t802)? { Value::bool(false) } else { - let __t785 = { - let __t782 = { - let __t778 = v_V3605.clone(); - rt::is_cons(&__t778) + let __t803 = { + let __t800 = { + let __t796 = v_V3263.clone(); + rt::is_cons(&__t796) }; - if !rt::is_truthy(interp, &__t782)? { + if !rt::is_truthy(interp, &__t800)? { Value::bool(false) } else { - let __t783 = { - let __t779 = Value::nil(); - let __t781 = { - let __t780 = v_V3605.clone(); - rt::tl(&__t780)? + let __t801 = { + let __t797 = Value::nil(); + let __t799 = { + let __t798 = v_V3263.clone(); + rt::tl(&__t798)? }; - rt::eq(&__t779, &__t781) + rt::eq(&__t797, &__t799) }; - Value::bool(rt::is_truthy(interp, &__t783)?) + Value::bool(rt::is_truthy(interp, &__t801)?) } }; - Value::bool(rt::is_truthy(interp, &__t785)?) + Value::bool(rt::is_truthy(interp, &__t803)?) } }; - if match rt::is_truthy(interp, &__t804) { + if match rt::is_truthy(interp, &__t822) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3606 = { - let __t787 = { - let __t786 = v_V3605.clone(); - rt::hd(&__t786)? + let v_W3264 = { + let __t805 = { + let __t804 = v_V3263.clone(); + rt::hd(&__t804)? }; - let __t788 = v_V3601.clone(); + let __t806 = v_V3259.clone(); rt::apply_direct( interp, "shen.passive-variables", - &[__t787, __t788], + &[__t805, __t806], )? }; { - let v_W3607 = { - let __t789 = v_V3601.clone(); - let __t791 = { - let __t790 = v_V3605.clone(); - rt::hd(&__t790)? + let v_W3265 = { + let __t807 = v_V3259.clone(); + let __t809 = { + let __t808 = v_V3263.clone(); + rt::hd(&__t808)? }; rt::apply_direct( interp, "shen.remove-bystanders", - &[__t789, __t791], + &[__t807, __t809], )? }; break Ok({ - let __t797 = { - let __t793 = { - let __t792 = v_V3605.clone(); - rt::hd(&__t792)? + let __t815 = { + let __t811 = { + let __t810 = v_V3263.clone(); + rt::hd(&__t810)? }; - let __t794 = v_V3602.clone(); - let __t795 = v_W3607.clone(); - let __t796 = v_W3606.clone(); + let __t812 = v_V3260.clone(); + let __t813 = v_W3265.clone(); + let __t814 = v_W3264.clone(); rt::apply_direct( interp, "shen.specialise-member", - &[__t793, __t794, __t795, __t796], + &[__t811, __t812, __t813, __t814], )? }; - let __t803 = { - let __t798 = Value::nil(); - let __t799 = v_V3601.clone(); - let __t800 = v_V3602.clone(); - let __t801 = v_V3603.clone(); - let __t802 = Value::nil(); + let __t821 = { + let __t816 = Value::nil(); + let __t817 = v_V3259.clone(); + let __t818 = v_V3260.clone(); + let __t819 = v_V3261.clone(); + let __t820 = Value::nil(); rt::apply_direct( interp, "shen.side-conditions->goals", - &[__t798, __t799, __t800, __t801, __t802], + &[__t816, __t817, __t818, __t819, __t820], )? }; - rt::cons(&__t797, &__t803) + rt::cons(&__t815, &__t821) }); } } } else { { - let __t775 = { - let __t751 = v_V3605.clone(); - rt::is_cons(&__t751) + let __t793 = { + let __t769 = v_V3263.clone(); + rt::is_cons(&__t769) }; - if match rt::is_truthy(interp, &__t775) { + if match rt::is_truthy(interp, &__t793) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3608 = { - let __t752 = Value::sym(interp.intern("NewAssumptions")); - rt::apply_direct(interp, "gensym", &[__t752])? + let v_W3266 = { + let __t770 = Value::sym(interp.intern("NewAssumptions")); + rt::apply_direct(interp, "gensym", &[__t770])? }; { - let v_W3609 = { - let __t754 = { - let __t753 = v_V3605.clone(); - rt::hd(&__t753)? + let v_W3267 = { + let __t772 = { + let __t771 = v_V3263.clone(); + rt::hd(&__t771)? }; - let __t755 = v_V3601.clone(); + let __t773 = v_V3259.clone(); rt::apply_direct( interp, "shen.passive-variables", - &[__t754, __t755], + &[__t772, __t773], )? }; { - let v_W3610 = { - let __t756 = v_V3601.clone(); - let __t758 = { - let __t757 = v_V3605.clone(); - rt::hd(&__t757)? + let v_W3268 = { + let __t774 = v_V3259.clone(); + let __t776 = { + let __t775 = v_V3263.clone(); + rt::hd(&__t775)? }; rt::apply_direct( interp, "shen.remove-bystanders", - &[__t756, __t758], + &[__t774, __t776], )? }; break Ok({ - let __t765 = { - let __t760 = { - let __t759 = v_V3605.clone(); - rt::hd(&__t759)? + let __t783 = { + let __t778 = { + let __t777 = v_V3263.clone(); + rt::hd(&__t777)? }; - let __t761 = v_V3602.clone(); - let __t762 = v_W3610.clone(); - let __t763 = v_W3609.clone(); - let __t764 = v_W3608.clone(); + let __t779 = v_V3260.clone(); + let __t780 = v_W3268.clone(); + let __t781 = v_W3267.clone(); + let __t782 = v_W3266.clone(); rt::apply_direct( interp, "shen.specialise-consume", - &[__t760, __t761, __t762, __t763, __t764], + &[__t778, __t779, __t780, __t781, __t782], )? }; - let __t774 = { - let __t768 = { - let __t766 = v_V3601.clone(); - let __t767 = v_W3609.clone(); + let __t792 = { + let __t786 = { + let __t784 = v_V3259.clone(); + let __t785 = v_W3267.clone(); rt::apply_direct( interp, "append", - &[__t766, __t767], + &[__t784, __t785], )? }; - let __t769 = v_W3608.clone(); - let __t770 = v_V3603.clone(); - let __t771 = v_V3604.clone(); - let __t773 = { - let __t772 = v_V3605.clone(); - rt::tl(&__t772)? + let __t787 = v_W3266.clone(); + let __t788 = v_V3261.clone(); + let __t789 = v_V3262.clone(); + let __t791 = { + let __t790 = v_V3263.clone(); + rt::tl(&__t790)? }; rt::apply_direct( interp, "shen.rule->body", - &[__t768, __t769, __t770, __t771, __t773], + &[__t786, __t787, __t788, __t789, __t791], )? }; - rt::cons(&__t765, &__t774) + rt::cons(&__t783, &__t792) }); } } } } else { { - let __t750 = Value::bool(true); - if match rt::is_truthy(interp, &__t750) { + let __t768 = Value::bool(true); + if match rt::is_truthy(interp, &__t768) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t749 = - Value::sym(interp.intern("shen.rule->body")); - rt::apply_direct(interp, "shen.f-error", &[__t749])? + let __t767 = + Value::str("partial function shen.rule->body"); + rt::apply_direct(interp, "simple-error", &[__t767])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4873,44 +4996,44 @@ pub fn aot_shen_x2e_specialise_x2d_member( ))); } #[allow(unused_mut)] - let mut v_V3611 = args[0].clone(); + let mut v_V3269 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3612 = args[1].clone(); + let mut v_V3270 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3613 = args[2].clone(); + let mut v_V3271 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3614 = args[3].clone(); + let mut v_V3272 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3615 = { - let __t813 = Value::sym(interp.intern("shen.member")); - rt::apply_direct(interp, "gensym", &[__t813])? + let v_W3273 = { + let __t831 = Value::sym(interp.intern("shen.member")); + rt::apply_direct(interp, "gensym", &[__t831])? }; { - let v_W3616 = { - let __t814 = v_W3615.clone(); - let __t815 = v_V3611.clone(); - let __t816 = v_V3613.clone(); - let __t817 = v_V3614.clone(); + let v_W3274 = { + let __t832 = v_W3273.clone(); + let __t833 = v_V3269.clone(); + let __t834 = v_V3271.clone(); + let __t835 = v_V3272.clone(); rt::apply_direct( interp, "shen.member-clause", - &[__t814, __t815, __t816, __t817], + &[__t832, __t833, __t834, __t835], )? }; break Ok({ - let __t818 = v_W3615.clone(); - let __t823 = { - let __t819 = v_V3612.clone(); - let __t822 = { - let __t820 = v_V3613.clone(); - let __t821 = v_V3614.clone(); - rt::apply_direct(interp, "append", &[__t820, __t821])? + let __t836 = v_W3273.clone(); + let __t841 = { + let __t837 = v_V3270.clone(); + let __t840 = { + let __t838 = v_V3271.clone(); + let __t839 = v_V3272.clone(); + rt::apply_direct(interp, "append", &[__t838, __t839])? }; - rt::cons(&__t819, &__t822) + rt::cons(&__t837, &__t840) }; - rt::cons(&__t818, &__t823) + rt::cons(&__t836, &__t841) }); } } @@ -4938,97 +5061,98 @@ pub fn aot_shen_x2e_remove_x2d_bystanders( ))); } #[allow(unused_mut)] - let mut v_V3619 = args[0].clone(); + let mut v_V3277 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3620 = args[1].clone(); + let mut v_V3278 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t846 = { - let __t844 = Value::nil(); - let __t845 = v_V3619.clone(); - rt::eq(&__t844, &__t845) + let __t864 = { + let __t862 = Value::nil(); + let __t863 = v_V3277.clone(); + rt::eq(&__t862, &__t863) }; - if match rt::is_truthy(interp, &__t846) { + if match rt::is_truthy(interp, &__t864) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t843 = { - let __t835 = { - let __t831 = v_V3619.clone(); - rt::is_cons(&__t831) + let __t861 = { + let __t853 = { + let __t849 = v_V3277.clone(); + rt::is_cons(&__t849) }; - if !rt::is_truthy(interp, &__t835)? { + if !rt::is_truthy(interp, &__t853)? { Value::bool(false) } else { - let __t836 = { - let __t833 = { - let __t832 = v_V3619.clone(); - rt::hd(&__t832)? + let __t854 = { + let __t851 = { + let __t850 = v_V3277.clone(); + rt::hd(&__t850)? }; - let __t834 = v_V3620.clone(); - rt::apply_direct(interp, "shen.occurs-check?", &[__t833, __t834])? + let __t852 = v_V3278.clone(); + rt::apply_direct(interp, "shen.occurs-check?", &[__t851, __t852])? }; - Value::bool(rt::is_truthy(interp, &__t836)?) + Value::bool(rt::is_truthy(interp, &__t854)?) } }; - if match rt::is_truthy(interp, &__t843) { + if match rt::is_truthy(interp, &__t861) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t838 = { - let __t837 = v_V3619.clone(); - rt::hd(&__t837)? + let __t856 = { + let __t855 = v_V3277.clone(); + rt::hd(&__t855)? }; - let __t842 = { - let __t840 = { - let __t839 = v_V3619.clone(); - rt::tl(&__t839)? + let __t860 = { + let __t858 = { + let __t857 = v_V3277.clone(); + rt::tl(&__t857)? }; - let __t841 = v_V3620.clone(); + let __t859 = v_V3278.clone(); rt::apply_direct( interp, "shen.remove-bystanders", - &[__t840, __t841], + &[__t858, __t859], )? }; - rt::cons(&__t838, &__t842) + rt::cons(&__t856, &__t860) }); } else { { - let __t830 = { - let __t826 = v_V3619.clone(); - rt::is_cons(&__t826) + let __t848 = { + let __t844 = v_V3277.clone(); + rt::is_cons(&__t844) }; - if match rt::is_truthy(interp, &__t830) { + if match rt::is_truthy(interp, &__t848) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t828 = { - let __t827 = v_V3619.clone(); - rt::tl(&__t827)? + let __t846 = { + let __t845 = v_V3277.clone(); + rt::tl(&__t845)? }; - let __t829 = v_V3620.clone(); - v_V3619 = __t828; - v_V3620 = __t829; + let __t847 = v_V3278.clone(); + v_V3277 = __t846; + v_V3278 = __t847; continue; } } else { { - let __t825 = Value::bool(true); - if match rt::is_truthy(interp, &__t825) { + let __t843 = Value::bool(true); + if match rt::is_truthy(interp, &__t843) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t824 = - Value::sym(interp.intern("shen.remove-bystanders")); - rt::apply_direct(interp, "shen.f-error", &[__t824])? + let __t842 = Value::str( + "partial function shen.remove-bystanders", + ); + rt::apply_direct(interp, "simple-error", &[__t842])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5061,200 +5185,200 @@ pub fn aot_shen_x2e_member_x2d_clause(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V3621 = args[0].clone(); + let mut v_V3279 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3622 = args[1].clone(); + let mut v_V3280 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3623 = args[2].clone(); + let mut v_V3281 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3624 = args[3].clone(); + let mut v_V3282 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3625 = { - let __t848 = { - let __t847 = v_V3624.clone(); - rt::apply_direct(interp, "length", &[__t847])? + let v_W3283 = { + let __t866 = { + let __t865 = v_V3282.clone(); + rt::apply_direct(interp, "length", &[__t865])? }; - rt::apply_direct(interp, "shen.nvars", &[__t848])? + rt::apply_direct(interp, "shen.nvars", &[__t866])? }; { - let v_W3626 = { - let __t862 = { - let __t860 = { - let __t849 = Value::sym(interp.intern("-")); - let __t859 = { - let __t857 = { - let __t850 = Value::sym(interp.intern("cons")); - let __t856 = { - let __t852 = { - let __t851 = v_V3622.clone(); - rt::apply_direct(interp, "shen.macro-@ch", &[__t851])? + let v_W3284 = { + let __t880 = { + let __t878 = { + let __t867 = Value::sym(interp.intern("-")); + let __t877 = { + let __t875 = { + let __t868 = Value::sym(interp.intern("cons")); + let __t874 = { + let __t870 = { + let __t869 = v_V3280.clone(); + rt::apply_direct(interp, "shen.macro-@ch", &[__t869])? }; - let __t855 = { - let __t853 = Value::sym(interp.intern("_")); - let __t854 = Value::nil(); - rt::cons(&__t853, &__t854) + let __t873 = { + let __t871 = Value::sym(interp.intern("_")); + let __t872 = Value::nil(); + rt::cons(&__t871, &__t872) }; - rt::cons(&__t852, &__t855) + rt::cons(&__t870, &__t873) }; - rt::cons(&__t850, &__t856) + rt::cons(&__t868, &__t874) }; - let __t858 = Value::nil(); - rt::cons(&__t857, &__t858) + let __t876 = Value::nil(); + rt::cons(&__t875, &__t876) }; - rt::cons(&__t849, &__t859) + rt::cons(&__t867, &__t877) }; - let __t861 = Value::nil(); - rt::cons(&__t860, &__t861) + let __t879 = Value::nil(); + rt::cons(&__t878, &__t879) }; - let __t878 = { - let __t863 = v_V3623.clone(); - let __t877 = { - let __t864 = v_W3625.clone(); - let __t876 = { - let __t867 = { - let __t865 = Value::sym(interp.intern("<--")); - let __t866 = Value::nil(); - rt::cons(&__t865, &__t866) + let __t896 = { + let __t881 = v_V3281.clone(); + let __t895 = { + let __t882 = v_W3283.clone(); + let __t894 = { + let __t885 = { + let __t883 = Value::sym(interp.intern("<--")); + let __t884 = Value::nil(); + rt::cons(&__t883, &__t884) }; - let __t875 = { - let __t870 = { - let __t868 = v_V3624.clone(); - let __t869 = v_W3625.clone(); + let __t893 = { + let __t888 = { + let __t886 = v_V3282.clone(); + let __t887 = v_W3283.clone(); rt::apply_direct( interp, "shen.passive-bind", - &[__t868, __t869], + &[__t886, __t887], )? }; - let __t874 = { - let __t872 = { - let __t871 = Value::str(";"); - rt::apply_direct(interp, "intern", &[__t871])? + let __t892 = { + let __t890 = { + let __t889 = Value::str(";"); + rt::apply_direct(interp, "intern", &[__t889])? }; - let __t873 = Value::nil(); - rt::cons(&__t872, &__t873) + let __t891 = Value::nil(); + rt::cons(&__t890, &__t891) }; - rt::apply_direct(interp, "append", &[__t870, __t874])? + rt::apply_direct(interp, "append", &[__t888, __t892])? }; - rt::apply_direct(interp, "append", &[__t867, __t875])? + rt::apply_direct(interp, "append", &[__t885, __t893])? }; - rt::apply_direct(interp, "append", &[__t864, __t876])? + rt::apply_direct(interp, "append", &[__t882, __t894])? }; - rt::apply_direct(interp, "append", &[__t863, __t877])? + rt::apply_direct(interp, "append", &[__t881, __t895])? }; - rt::apply_direct(interp, "append", &[__t862, __t878])? + rt::apply_direct(interp, "append", &[__t880, __t896])? }; { - let v_W3627 = { - let v_W3628 = { - let __t879 = Value::sym(interp.intern("Hypotheses")); - rt::apply_direct(interp, "gensym", &[__t879])? + let v_W3285 = { + let v_W3286 = { + let __t897 = Value::sym(interp.intern("Hypotheses")); + rt::apply_direct(interp, "gensym", &[__t897])? }; { - let v_W3629 = { - let __t880 = v_V3623.clone(); - let __t881 = v_V3624.clone(); - rt::apply_direct(interp, "append", &[__t880, __t881])? + let v_W3287 = { + let __t898 = v_V3281.clone(); + let __t899 = v_V3282.clone(); + rt::apply_direct(interp, "append", &[__t898, __t899])? }; { - let v_W3630 = { - let __t894 = { - let __t892 = { - let __t882 = Value::sym(interp.intern("-")); - let __t891 = { - let __t889 = { - let __t883 = Value::sym(interp.intern("cons")); - let __t888 = { - let __t884 = Value::sym(interp.intern("_")); - let __t887 = { - let __t885 = v_W3628.clone(); - let __t886 = Value::nil(); - rt::cons(&__t885, &__t886) + let v_W3288 = { + let __t912 = { + let __t910 = { + let __t900 = Value::sym(interp.intern("-")); + let __t909 = { + let __t907 = { + let __t901 = Value::sym(interp.intern("cons")); + let __t906 = { + let __t902 = Value::sym(interp.intern("_")); + let __t905 = { + let __t903 = v_W3286.clone(); + let __t904 = Value::nil(); + rt::cons(&__t903, &__t904) }; - rt::cons(&__t884, &__t887) + rt::cons(&__t902, &__t905) }; - rt::cons(&__t883, &__t888) + rt::cons(&__t901, &__t906) }; - let __t890 = Value::nil(); - rt::cons(&__t889, &__t890) + let __t908 = Value::nil(); + rt::cons(&__t907, &__t908) }; - rt::cons(&__t882, &__t891) + rt::cons(&__t900, &__t909) }; - let __t893 = Value::nil(); - rt::cons(&__t892, &__t893) + let __t911 = Value::nil(); + rt::cons(&__t910, &__t911) }; - let __t895 = v_W3629.clone(); - rt::apply_direct(interp, "append", &[__t894, __t895])? + let __t913 = v_W3287.clone(); + rt::apply_direct(interp, "append", &[__t912, __t913])? }; { - let v_W3631 = { - let __t900 = { - let __t896 = v_V3621.clone(); - let __t899 = { - let __t897 = v_W3628.clone(); - let __t898 = v_W3629.clone(); - rt::cons(&__t897, &__t898) + let v_W3289 = { + let __t918 = { + let __t914 = v_V3279.clone(); + let __t917 = { + let __t915 = v_W3286.clone(); + let __t916 = v_W3287.clone(); + rt::cons(&__t915, &__t916) }; - rt::cons(&__t896, &__t899) + rt::cons(&__t914, &__t917) }; - let __t901 = Value::nil(); - rt::cons(&__t900, &__t901) + let __t919 = Value::nil(); + rt::cons(&__t918, &__t919) }; { - let __t902 = v_W3630.clone(); - let __t912 = { - let __t905 = { - let __t903 = Value::sym(interp.intern("<--")); - let __t904 = Value::nil(); - rt::cons(&__t903, &__t904) + let __t920 = v_W3288.clone(); + let __t930 = { + let __t923 = { + let __t921 = Value::sym(interp.intern("<--")); + let __t922 = Value::nil(); + rt::cons(&__t921, &__t922) }; - let __t911 = { - let __t906 = v_W3631.clone(); - let __t910 = { - let __t908 = { - let __t907 = Value::str(";"); + let __t929 = { + let __t924 = v_W3289.clone(); + let __t928 = { + let __t926 = { + let __t925 = Value::str(";"); rt::apply_direct( interp, "intern", - &[__t907], + &[__t925], )? }; - let __t909 = Value::nil(); - rt::cons(&__t908, &__t909) + let __t927 = Value::nil(); + rt::cons(&__t926, &__t927) }; rt::apply_direct( interp, "append", - &[__t906, __t910], + &[__t924, __t928], )? }; - rt::apply_direct(interp, "append", &[__t905, __t911])? + rt::apply_direct(interp, "append", &[__t923, __t929])? }; - rt::apply_direct(interp, "append", &[__t902, __t912])? + rt::apply_direct(interp, "append", &[__t920, __t930])? } } } } }; { - let v_W3632 = { - let __t913 = Value::sym(interp.intern("defprolog")); - let __t918 = { - let __t914 = v_V3621.clone(); - let __t917 = { - let __t915 = v_W3626.clone(); - let __t916 = v_W3627.clone(); - rt::apply_direct(interp, "append", &[__t915, __t916])? + let v_W3290 = { + let __t931 = Value::sym(interp.intern("defprolog")); + let __t936 = { + let __t932 = v_V3279.clone(); + let __t935 = { + let __t933 = v_W3284.clone(); + let __t934 = v_W3285.clone(); + rt::apply_direct(interp, "append", &[__t933, __t934])? }; - rt::cons(&__t914, &__t917) + rt::cons(&__t932, &__t935) }; - rt::cons(&__t913, &__t918) + rt::cons(&__t931, &__t936) }; break Ok({ - let __t919 = v_W3632.clone(); - rt::apply_direct(interp, "eval", &[__t919])? + let __t937 = v_W3290.clone(); + rt::apply_direct(interp, "eval", &[__t937])? }); } } @@ -5277,41 +5401,41 @@ pub fn aot_shen_x2e_nvars(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t926 = Value::bool(true); - if match rt::is_truthy(interp, &__t926) { + let __t944 = Value::bool(true); + if match rt::is_truthy(interp, &__t944) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t921 = { - let __t920 = Value::sym(interp.intern("NewV")); - rt::apply_direct(interp, "gensym", &[__t920])? + let __t939 = { + let __t938 = Value::sym(interp.intern("NewV")); + rt::apply_direct(interp, "gensym", &[__t938])? }; - let __t925 = { - let __t924 = { - let __t922 = v_V3633.clone(); - let __t923 = Value::int(1i64); - rt::sub(&__t922, &__t923)? + let __t943 = { + let __t942 = { + let __t940 = v_V3291.clone(); + let __t941 = Value::int(1i64); + rt::sub(&__t940, &__t941)? }; - rt::apply_direct(interp, "shen.nvars", &[__t924])? + rt::apply_direct(interp, "shen.nvars", &[__t942])? }; - rt::cons(&__t921, &__t925) + rt::cons(&__t939, &__t943) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5336,98 +5460,98 @@ pub fn aot_shen_x2e_passive_x2d_bind(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3634 = args[0].clone(); + let mut v_V3292 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3635 = args[1].clone(); + let mut v_V3293 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t957 = { - let __t955 = { - let __t951 = Value::nil(); - let __t952 = v_V3634.clone(); - rt::eq(&__t951, &__t952) + let __t975 = { + let __t973 = { + let __t969 = Value::nil(); + let __t970 = v_V3292.clone(); + rt::eq(&__t969, &__t970) }; - if !rt::is_truthy(interp, &__t955)? { + if !rt::is_truthy(interp, &__t973)? { Value::bool(false) } else { - let __t956 = { - let __t953 = Value::nil(); - let __t954 = v_V3635.clone(); - rt::eq(&__t953, &__t954) + let __t974 = { + let __t971 = Value::nil(); + let __t972 = v_V3293.clone(); + rt::eq(&__t971, &__t972) }; - Value::bool(rt::is_truthy(interp, &__t956)?) + Value::bool(rt::is_truthy(interp, &__t974)?) } }; - if match rt::is_truthy(interp, &__t957) { + if match rt::is_truthy(interp, &__t975) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t950 = { - let __t934 = { - let __t932 = v_V3634.clone(); - rt::is_cons(&__t932) + let __t968 = { + let __t952 = { + let __t950 = v_V3292.clone(); + rt::is_cons(&__t950) }; - if !rt::is_truthy(interp, &__t934)? { + if !rt::is_truthy(interp, &__t952)? { Value::bool(false) } else { - let __t935 = { - let __t933 = v_V3635.clone(); - rt::is_cons(&__t933) + let __t953 = { + let __t951 = v_V3293.clone(); + rt::is_cons(&__t951) }; - Value::bool(rt::is_truthy(interp, &__t935)?) + Value::bool(rt::is_truthy(interp, &__t953)?) } }; - if match rt::is_truthy(interp, &__t950) { + if match rt::is_truthy(interp, &__t968) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t944 = { - let __t936 = Value::sym(interp.intern("bind")); - let __t943 = { - let __t938 = { - let __t937 = v_V3635.clone(); - rt::hd(&__t937)? + let __t962 = { + let __t954 = Value::sym(interp.intern("bind")); + let __t961 = { + let __t956 = { + let __t955 = v_V3293.clone(); + rt::hd(&__t955)? }; - let __t942 = { - let __t940 = { - let __t939 = v_V3634.clone(); - rt::hd(&__t939)? + let __t960 = { + let __t958 = { + let __t957 = v_V3292.clone(); + rt::hd(&__t957)? }; - let __t941 = Value::nil(); - rt::cons(&__t940, &__t941) + let __t959 = Value::nil(); + rt::cons(&__t958, &__t959) }; - rt::cons(&__t938, &__t942) + rt::cons(&__t956, &__t960) }; - rt::cons(&__t936, &__t943) + rt::cons(&__t954, &__t961) }; - let __t949 = { - let __t946 = { - let __t945 = v_V3634.clone(); - rt::tl(&__t945)? + let __t967 = { + let __t964 = { + let __t963 = v_V3292.clone(); + rt::tl(&__t963)? }; - let __t948 = { - let __t947 = v_V3635.clone(); - rt::tl(&__t947)? + let __t966 = { + let __t965 = v_V3293.clone(); + rt::tl(&__t965)? }; - rt::apply_direct(interp, "shen.passive-bind", &[__t946, __t948])? + rt::apply_direct(interp, "shen.passive-bind", &[__t964, __t966])? }; - rt::cons(&__t944, &__t949) + rt::cons(&__t962, &__t967) }); } else { { - let __t931 = Value::bool(true); - if match rt::is_truthy(interp, &__t931) { + let __t949 = Value::bool(true); + if match rt::is_truthy(interp, &__t949) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t930 = Value::sym(interp.intern("shen.passive-bind")); - rt::apply_direct(interp, "shen.f-error", &[__t930])? + let __t948 = Value::str("partial function shen.passive-bind"); + rt::apply_direct(interp, "simple-error", &[__t948])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5457,51 +5581,51 @@ pub fn aot_shen_x2e_specialise_x2d_consume( ))); } #[allow(unused_mut)] - let mut v_V3636 = args[0].clone(); + let mut v_V3294 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3637 = args[1].clone(); + let mut v_V3295 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3638 = args[2].clone(); + let mut v_V3296 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3639 = args[3].clone(); + let mut v_V3297 = args[3].clone(); #[allow(unused_mut)] - let mut v_V3640 = args[4].clone(); + let mut v_V3298 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3641 = { - let __t958 = Value::sym(interp.intern("shen.consume")); - rt::apply_direct(interp, "gensym", &[__t958])? + let v_W3299 = { + let __t976 = Value::sym(interp.intern("shen.consume")); + rt::apply_direct(interp, "gensym", &[__t976])? }; { - let v_W3642 = { - let __t959 = v_W3641.clone(); - let __t960 = v_V3636.clone(); - let __t961 = v_V3638.clone(); - let __t962 = v_V3639.clone(); - let __t963 = v_V3640.clone(); + let v_W3300 = { + let __t977 = v_W3299.clone(); + let __t978 = v_V3294.clone(); + let __t979 = v_V3296.clone(); + let __t980 = v_V3297.clone(); + let __t981 = v_V3298.clone(); rt::apply_direct( interp, "shen.consume-clause", - &[__t959, __t960, __t961, __t962, __t963], + &[__t977, __t978, __t979, __t980, __t981], )? }; break Ok({ - let __t964 = v_W3641.clone(); - let __t971 = { - let __t965 = v_V3637.clone(); - let __t970 = { - let __t966 = v_V3640.clone(); - let __t969 = { - let __t967 = v_V3638.clone(); - let __t968 = v_V3639.clone(); - rt::apply_direct(interp, "append", &[__t967, __t968])? + let __t982 = v_W3299.clone(); + let __t989 = { + let __t983 = v_V3295.clone(); + let __t988 = { + let __t984 = v_V3298.clone(); + let __t987 = { + let __t985 = v_V3296.clone(); + let __t986 = v_V3297.clone(); + rt::apply_direct(interp, "append", &[__t985, __t986])? }; - rt::cons(&__t966, &__t969) + rt::cons(&__t984, &__t987) }; - rt::cons(&__t965, &__t970) + rt::cons(&__t983, &__t988) }; - rt::cons(&__t964, &__t971) + rt::cons(&__t982, &__t989) }); } } @@ -5529,251 +5653,251 @@ pub fn aot_shen_x2e_consume_x2d_clause(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3643 = args[0].clone(); + let mut v_V3301 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3644 = args[1].clone(); + let mut v_V3302 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3645 = args[2].clone(); + let mut v_V3303 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3646 = args[3].clone(); + let mut v_V3304 = args[3].clone(); #[allow(unused_mut)] - let mut v_V3647 = args[4].clone(); + let mut v_V3305 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3648 = { - let __t973 = { - let __t972 = v_V3646.clone(); - rt::apply_direct(interp, "length", &[__t972])? + let v_W3306 = { + let __t991 = { + let __t990 = v_V3304.clone(); + rt::apply_direct(interp, "length", &[__t990])? }; - rt::apply_direct(interp, "shen.nvars", &[__t973])? + rt::apply_direct(interp, "shen.nvars", &[__t991])? }; { - let v_W3649 = { - let __t974 = Value::sym(interp.intern("Assumption")); - rt::apply_direct(interp, "gensym", &[__t974])? + let v_W3307 = { + let __t992 = Value::sym(interp.intern("Assumption")); + rt::apply_direct(interp, "gensym", &[__t992])? }; { - let v_W3650 = { - let __t986 = { - let __t975 = Value::sym(interp.intern("-")); - let __t985 = { - let __t983 = { - let __t976 = Value::sym(interp.intern("cons")); - let __t982 = { - let __t978 = { - let __t977 = v_V3644.clone(); - rt::apply_direct(interp, "shen.macro-@ch", &[__t977])? + let v_W3308 = { + let __t1004 = { + let __t993 = Value::sym(interp.intern("-")); + let __t1003 = { + let __t1001 = { + let __t994 = Value::sym(interp.intern("cons")); + let __t1000 = { + let __t996 = { + let __t995 = v_V3302.clone(); + rt::apply_direct(interp, "shen.macro-@ch", &[__t995])? }; - let __t981 = { - let __t979 = v_W3649.clone(); - let __t980 = Value::nil(); - rt::cons(&__t979, &__t980) + let __t999 = { + let __t997 = v_W3307.clone(); + let __t998 = Value::nil(); + rt::cons(&__t997, &__t998) }; - rt::cons(&__t978, &__t981) + rt::cons(&__t996, &__t999) }; - rt::cons(&__t976, &__t982) + rt::cons(&__t994, &__t1000) }; - let __t984 = Value::nil(); - rt::cons(&__t983, &__t984) + let __t1002 = Value::nil(); + rt::cons(&__t1001, &__t1002) }; - rt::cons(&__t975, &__t985) + rt::cons(&__t993, &__t1003) }; - let __t1012 = { - let __t987 = v_V3647.clone(); - let __t1011 = { - let __t988 = v_V3645.clone(); - let __t1010 = { - let __t989 = v_W3648.clone(); - let __t1009 = { - let __t992 = { - let __t990 = Value::sym(interp.intern("<--")); - let __t991 = Value::nil(); - rt::cons(&__t990, &__t991) + let __t1030 = { + let __t1005 = v_V3305.clone(); + let __t1029 = { + let __t1006 = v_V3303.clone(); + let __t1028 = { + let __t1007 = v_W3306.clone(); + let __t1027 = { + let __t1010 = { + let __t1008 = Value::sym(interp.intern("<--")); + let __t1009 = Value::nil(); + rt::cons(&__t1008, &__t1009) }; - let __t1008 = { - let __t995 = { - let __t993 = v_V3646.clone(); - let __t994 = v_W3648.clone(); + let __t1026 = { + let __t1013 = { + let __t1011 = v_V3304.clone(); + let __t1012 = v_W3306.clone(); rt::apply_direct( interp, "shen.passive-bind", - &[__t993, __t994], + &[__t1011, __t1012], )? }; - let __t1007 = { - let __t1002 = { - let __t996 = Value::sym(interp.intern("bind")); - let __t1001 = { - let __t997 = v_V3647.clone(); - let __t1000 = { - let __t998 = v_W3649.clone(); - let __t999 = Value::nil(); - rt::cons(&__t998, &__t999) + let __t1025 = { + let __t1020 = { + let __t1014 = Value::sym(interp.intern("bind")); + let __t1019 = { + let __t1015 = v_V3305.clone(); + let __t1018 = { + let __t1016 = v_W3307.clone(); + let __t1017 = Value::nil(); + rt::cons(&__t1016, &__t1017) }; - rt::cons(&__t997, &__t1000) + rt::cons(&__t1015, &__t1018) }; - rt::cons(&__t996, &__t1001) + rt::cons(&__t1014, &__t1019) }; - let __t1006 = { - let __t1004 = { - let __t1003 = Value::str(";"); + let __t1024 = { + let __t1022 = { + let __t1021 = Value::str(";"); rt::apply_direct( interp, "intern", - &[__t1003], + &[__t1021], )? }; - let __t1005 = Value::nil(); - rt::cons(&__t1004, &__t1005) + let __t1023 = Value::nil(); + rt::cons(&__t1022, &__t1023) }; - rt::cons(&__t1002, &__t1006) + rt::cons(&__t1020, &__t1024) }; - rt::apply_direct(interp, "append", &[__t995, __t1007])? + rt::apply_direct(interp, "append", &[__t1013, __t1025])? }; - rt::apply_direct(interp, "append", &[__t992, __t1008])? + rt::apply_direct(interp, "append", &[__t1010, __t1026])? }; - rt::apply_direct(interp, "append", &[__t989, __t1009])? + rt::apply_direct(interp, "append", &[__t1007, __t1027])? }; - rt::apply_direct(interp, "append", &[__t988, __t1010])? + rt::apply_direct(interp, "append", &[__t1006, __t1028])? }; - rt::cons(&__t987, &__t1011) + rt::cons(&__t1005, &__t1029) }; - rt::cons(&__t986, &__t1012) + rt::cons(&__t1004, &__t1030) }; { - let v_W3651 = { - let v_W3652 = { - let __t1013 = Value::sym(interp.intern("Hypotheses")); - rt::apply_direct(interp, "gensym", &[__t1013])? + let v_W3309 = { + let v_W3310 = { + let __t1031 = Value::sym(interp.intern("Hypotheses")); + rt::apply_direct(interp, "gensym", &[__t1031])? }; { - let v_W3653 = { - let __t1014 = v_V3645.clone(); - let __t1015 = v_V3646.clone(); - rt::apply_direct(interp, "append", &[__t1014, __t1015])? + let v_W3311 = { + let __t1032 = v_V3303.clone(); + let __t1033 = v_V3304.clone(); + rt::apply_direct(interp, "append", &[__t1032, __t1033])? }; { - let v_W3654 = { - let __t1016 = Value::sym(interp.intern("Assumptions")); - rt::apply_direct(interp, "gensym", &[__t1016])? + let v_W3312 = { + let __t1034 = Value::sym(interp.intern("Assumptions")); + rt::apply_direct(interp, "gensym", &[__t1034])? }; { - let v_W3655 = { - let __t1027 = { - let __t1017 = Value::sym(interp.intern("-")); - let __t1026 = { - let __t1024 = { - let __t1018 = + let v_W3313 = { + let __t1045 = { + let __t1035 = Value::sym(interp.intern("-")); + let __t1044 = { + let __t1042 = { + let __t1036 = Value::sym(interp.intern("cons")); - let __t1023 = { - let __t1019 = v_W3649.clone(); - let __t1022 = { - let __t1020 = v_W3652.clone(); - let __t1021 = Value::nil(); - rt::cons(&__t1020, &__t1021) + let __t1041 = { + let __t1037 = v_W3307.clone(); + let __t1040 = { + let __t1038 = v_W3310.clone(); + let __t1039 = Value::nil(); + rt::cons(&__t1038, &__t1039) }; - rt::cons(&__t1019, &__t1022) + rt::cons(&__t1037, &__t1040) }; - rt::cons(&__t1018, &__t1023) + rt::cons(&__t1036, &__t1041) }; - let __t1025 = Value::nil(); - rt::cons(&__t1024, &__t1025) + let __t1043 = Value::nil(); + rt::cons(&__t1042, &__t1043) }; - rt::cons(&__t1017, &__t1026) + rt::cons(&__t1035, &__t1044) }; - let __t1036 = { - let __t1034 = { - let __t1028 = Value::sym(interp.intern("cons")); - let __t1033 = { - let __t1029 = v_W3654.clone(); - let __t1032 = { - let __t1030 = v_V3647.clone(); - let __t1031 = Value::nil(); - rt::cons(&__t1030, &__t1031) + let __t1054 = { + let __t1052 = { + let __t1046 = Value::sym(interp.intern("cons")); + let __t1051 = { + let __t1047 = v_W3312.clone(); + let __t1050 = { + let __t1048 = v_V3305.clone(); + let __t1049 = Value::nil(); + rt::cons(&__t1048, &__t1049) }; - rt::cons(&__t1029, &__t1032) + rt::cons(&__t1047, &__t1050) }; - rt::cons(&__t1028, &__t1033) + rt::cons(&__t1046, &__t1051) }; - let __t1035 = v_W3653.clone(); - rt::cons(&__t1034, &__t1035) + let __t1053 = v_W3311.clone(); + rt::cons(&__t1052, &__t1053) }; - rt::cons(&__t1027, &__t1036) + rt::cons(&__t1045, &__t1054) }; { - let v_W3656 = { - let __t1043 = { - let __t1037 = Value::sym(interp.intern("bind")); - let __t1042 = { - let __t1038 = v_W3654.clone(); - let __t1041 = { - let __t1039 = v_W3649.clone(); - let __t1040 = Value::nil(); - rt::cons(&__t1039, &__t1040) + let v_W3314 = { + let __t1061 = { + let __t1055 = Value::sym(interp.intern("bind")); + let __t1060 = { + let __t1056 = v_W3312.clone(); + let __t1059 = { + let __t1057 = v_W3307.clone(); + let __t1058 = Value::nil(); + rt::cons(&__t1057, &__t1058) }; - rt::cons(&__t1038, &__t1041) + rt::cons(&__t1056, &__t1059) }; - rt::cons(&__t1037, &__t1042) + rt::cons(&__t1055, &__t1060) }; - let __t1052 = { - let __t1050 = { - let __t1044 = v_V3643.clone(); - let __t1049 = { - let __t1045 = v_W3652.clone(); - let __t1048 = { - let __t1046 = v_V3647.clone(); - let __t1047 = v_W3653.clone(); - rt::cons(&__t1046, &__t1047) + let __t1070 = { + let __t1068 = { + let __t1062 = v_V3301.clone(); + let __t1067 = { + let __t1063 = v_W3310.clone(); + let __t1066 = { + let __t1064 = v_V3305.clone(); + let __t1065 = v_W3311.clone(); + rt::cons(&__t1064, &__t1065) }; - rt::cons(&__t1045, &__t1048) + rt::cons(&__t1063, &__t1066) }; - rt::cons(&__t1044, &__t1049) + rt::cons(&__t1062, &__t1067) }; - let __t1051 = Value::nil(); - rt::cons(&__t1050, &__t1051) + let __t1069 = Value::nil(); + rt::cons(&__t1068, &__t1069) }; - rt::cons(&__t1043, &__t1052) + rt::cons(&__t1061, &__t1070) }; { - let __t1053 = v_W3655.clone(); - let __t1063 = { - let __t1056 = { - let __t1054 = + let __t1071 = v_W3313.clone(); + let __t1081 = { + let __t1074 = { + let __t1072 = Value::sym(interp.intern("<--")); - let __t1055 = Value::nil(); - rt::cons(&__t1054, &__t1055) + let __t1073 = Value::nil(); + rt::cons(&__t1072, &__t1073) }; - let __t1062 = { - let __t1057 = v_W3656.clone(); - let __t1061 = { - let __t1059 = { - let __t1058 = Value::str(";"); + let __t1080 = { + let __t1075 = v_W3314.clone(); + let __t1079 = { + let __t1077 = { + let __t1076 = Value::str(";"); rt::apply_direct( interp, "intern", - &[__t1058], + &[__t1076], )? }; - let __t1060 = Value::nil(); - rt::cons(&__t1059, &__t1060) + let __t1078 = Value::nil(); + rt::cons(&__t1077, &__t1078) }; rt::apply_direct( interp, "append", - &[__t1057, __t1061], + &[__t1075, __t1079], )? }; rt::apply_direct( interp, "append", - &[__t1056, __t1062], + &[__t1074, __t1080], )? }; rt::apply_direct( interp, "append", - &[__t1053, __t1063], + &[__t1071, __t1081], )? } } @@ -5782,22 +5906,22 @@ pub fn aot_shen_x2e_consume_x2d_clause(interp: &mut Interp, args: &[Value]) -> S } }; { - let v_W3657 = { - let __t1064 = Value::sym(interp.intern("defprolog")); - let __t1069 = { - let __t1065 = v_V3643.clone(); - let __t1068 = { - let __t1066 = v_W3650.clone(); - let __t1067 = v_W3651.clone(); - rt::apply_direct(interp, "append", &[__t1066, __t1067])? + let v_W3315 = { + let __t1082 = Value::sym(interp.intern("defprolog")); + let __t1087 = { + let __t1083 = v_V3301.clone(); + let __t1086 = { + let __t1084 = v_W3308.clone(); + let __t1085 = v_W3309.clone(); + rt::apply_direct(interp, "append", &[__t1084, __t1085])? }; - rt::cons(&__t1065, &__t1068) + rt::cons(&__t1083, &__t1086) }; - rt::cons(&__t1064, &__t1069) + rt::cons(&__t1082, &__t1087) }; break Ok({ - let __t1070 = v_W3657.clone(); - rt::apply_direct(interp, "eval", &[__t1070])? + let __t1088 = v_W3315.clone(); + rt::apply_direct(interp, "eval", &[__t1088])? }); } } @@ -5824,18 +5948,18 @@ pub fn aot_shen_x2e_passive_x2d_variables( ))); } #[allow(unused_mut)] - let mut v_V3658 = args[0].clone(); + let mut v_V3316 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3659 = args[1].clone(); + let mut v_V3317 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1072 = { - let __t1071 = v_V3658.clone(); - rt::apply_direct(interp, "shen.extract-vars", &[__t1071])? + let __t1090 = { + let __t1089 = v_V3316.clone(); + rt::apply_direct(interp, "shen.extract-vars", &[__t1089])? }; - let __t1073 = v_V3659.clone(); - rt::apply_direct(interp, "difference", &[__t1072, __t1073])? + let __t1091 = v_V3317.clone(); + rt::apply_direct(interp, "difference", &[__t1090, __t1091])? }); } } @@ -5861,597 +5985,718 @@ pub fn aot_shen_x2e_side_x2d_conditions_x2d__x3e_goals( ))); } #[allow(unused_mut)] - let mut v_V3662 = args[0].clone(); + let mut v_V3322 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3663 = args[1].clone(); + let mut v_V3323 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3664 = args[2].clone(); + let mut v_V3324 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3665 = args[3].clone(); + let mut v_V3325 = args[3].clone(); #[allow(unused_mut)] - let mut v_V3666 = args[4].clone(); + let mut v_V3326 = args[4].clone(); #[allow(clippy::never_loop)] loop { { - let __t1254 = { - let __t1249 = Value::nil(); - let __t1250 = v_V3665.clone(); - rt::eq(&__t1249, &__t1250) + let __t1302 = { + let __t1297 = Value::nil(); + let __t1298 = v_V3325.clone(); + rt::eq(&__t1297, &__t1298) }; - if match rt::is_truthy(interp, &__t1254) { + if match rt::is_truthy(interp, &__t1302) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1251 = v_V3662.clone(); - let __t1252 = v_V3664.clone(); - let __t1253 = v_V3666.clone(); - rt::apply_direct(interp, "shen.premises->goals", &[__t1251, __t1252, __t1253])? + let __t1299 = v_V3322.clone(); + let __t1300 = v_V3324.clone(); + let __t1301 = v_V3326.clone(); + rt::apply_direct(interp, "shen.premises->goals", &[__t1299, __t1300, __t1301])? }); } else { { - let __t1248 = { - let __t1234 = { - let __t1213 = v_V3665.clone(); - rt::is_cons(&__t1213) + let __t1296 = { + let __t1282 = { + let __t1261 = v_V3325.clone(); + rt::is_cons(&__t1261) }; - if !rt::is_truthy(interp, &__t1234)? { + if !rt::is_truthy(interp, &__t1282)? { Value::bool(false) } else { - let __t1235 = { - let __t1232 = { - let __t1215 = { - let __t1214 = v_V3665.clone(); - rt::hd(&__t1214)? + let __t1283 = { + let __t1280 = { + let __t1263 = { + let __t1262 = v_V3325.clone(); + rt::hd(&__t1262)? }; - rt::is_cons(&__t1215) + rt::is_cons(&__t1263) }; - if !rt::is_truthy(interp, &__t1232)? { + if !rt::is_truthy(interp, &__t1280)? { Value::bool(false) } else { - let __t1233 = { - let __t1230 = { - let __t1216 = Value::sym(interp.intern("if")); - let __t1219 = { - let __t1218 = { - let __t1217 = v_V3665.clone(); - rt::hd(&__t1217)? + let __t1281 = { + let __t1278 = { + let __t1264 = Value::sym(interp.intern("if")); + let __t1267 = { + let __t1266 = { + let __t1265 = v_V3325.clone(); + rt::hd(&__t1265)? }; - rt::hd(&__t1218)? + rt::hd(&__t1266)? }; - rt::eq(&__t1216, &__t1219) + rt::eq(&__t1264, &__t1267) }; - if !rt::is_truthy(interp, &__t1230)? { + if !rt::is_truthy(interp, &__t1278)? { Value::bool(false) } else { - let __t1231 = { - let __t1228 = { - let __t1222 = { - let __t1221 = { - let __t1220 = v_V3665.clone(); - rt::hd(&__t1220)? + let __t1279 = { + let __t1276 = { + let __t1270 = { + let __t1269 = { + let __t1268 = v_V3325.clone(); + rt::hd(&__t1268)? }; - rt::tl(&__t1221)? + rt::tl(&__t1269)? }; - rt::is_cons(&__t1222) + rt::is_cons(&__t1270) }; - if !rt::is_truthy(interp, &__t1228)? { + if !rt::is_truthy(interp, &__t1276)? { Value::bool(false) } else { - let __t1229 = { - let __t1223 = Value::nil(); - let __t1227 = { - let __t1226 = { - let __t1225 = { - let __t1224 = v_V3665.clone(); - rt::hd(&__t1224)? + let __t1277 = { + let __t1271 = Value::nil(); + let __t1275 = { + let __t1274 = { + let __t1273 = { + let __t1272 = v_V3325.clone(); + rt::hd(&__t1272)? }; - rt::tl(&__t1225)? + rt::tl(&__t1273)? }; - rt::tl(&__t1226)? + rt::tl(&__t1274)? }; - rt::eq(&__t1223, &__t1227) + rt::eq(&__t1271, &__t1275) }; - Value::bool(rt::is_truthy(interp, &__t1229)?) + Value::bool(rt::is_truthy(interp, &__t1277)?) } }; - Value::bool(rt::is_truthy(interp, &__t1231)?) + Value::bool(rt::is_truthy(interp, &__t1279)?) } }; - Value::bool(rt::is_truthy(interp, &__t1233)?) + Value::bool(rt::is_truthy(interp, &__t1281)?) } }; - Value::bool(rt::is_truthy(interp, &__t1235)?) + Value::bool(rt::is_truthy(interp, &__t1283)?) } }; - if match rt::is_truthy(interp, &__t1248) { + if match rt::is_truthy(interp, &__t1296) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1240 = { - let __t1236 = Value::sym(interp.intern("when")); - let __t1239 = { - let __t1238 = { - let __t1237 = v_V3665.clone(); - rt::hd(&__t1237)? + let __t1288 = { + let __t1284 = Value::sym(interp.intern("when")); + let __t1287 = { + let __t1286 = { + let __t1285 = v_V3325.clone(); + rt::hd(&__t1285)? }; - rt::tl(&__t1238)? + rt::tl(&__t1286)? }; - rt::cons(&__t1236, &__t1239) + rt::cons(&__t1284, &__t1287) }; - let __t1247 = { - let __t1241 = v_V3662.clone(); - let __t1242 = v_V3663.clone(); - let __t1243 = v_V3664.clone(); - let __t1245 = { - let __t1244 = v_V3665.clone(); - rt::tl(&__t1244)? + let __t1295 = { + let __t1289 = v_V3322.clone(); + let __t1290 = v_V3323.clone(); + let __t1291 = v_V3324.clone(); + let __t1293 = { + let __t1292 = v_V3325.clone(); + rt::tl(&__t1292)? }; - let __t1246 = v_V3666.clone(); + let __t1294 = v_V3326.clone(); rt::apply_direct( interp, "shen.side-conditions->goals", - &[__t1241, __t1242, __t1243, __t1245, __t1246], + &[__t1289, __t1290, __t1291, __t1293, __t1294], )? }; - rt::cons(&__t1240, &__t1247) + rt::cons(&__t1288, &__t1295) }); } else { { - let __t1212 = { - let __t1175 = { - let __t1147 = v_V3665.clone(); - rt::is_cons(&__t1147) + let __t1260 = { + let __t1223 = { + let __t1195 = v_V3325.clone(); + rt::is_cons(&__t1195) }; - if !rt::is_truthy(interp, &__t1175)? { + if !rt::is_truthy(interp, &__t1223)? { Value::bool(false) } else { - let __t1176 = { - let __t1173 = { - let __t1149 = { - let __t1148 = v_V3665.clone(); - rt::hd(&__t1148)? + let __t1224 = { + let __t1221 = { + let __t1197 = { + let __t1196 = v_V3325.clone(); + rt::hd(&__t1196)? }; - rt::is_cons(&__t1149) + rt::is_cons(&__t1197) }; - if !rt::is_truthy(interp, &__t1173)? { + if !rt::is_truthy(interp, &__t1221)? { Value::bool(false) } else { - let __t1174 = { - let __t1171 = { - let __t1150 = Value::sym(interp.intern("let")); - let __t1153 = { - let __t1152 = { - let __t1151 = v_V3665.clone(); - rt::hd(&__t1151)? + let __t1222 = { + let __t1219 = { + let __t1198 = Value::sym(interp.intern("let")); + let __t1201 = { + let __t1200 = { + let __t1199 = v_V3325.clone(); + rt::hd(&__t1199)? }; - rt::hd(&__t1152)? + rt::hd(&__t1200)? }; - rt::eq(&__t1150, &__t1153) + rt::eq(&__t1198, &__t1201) }; - if !rt::is_truthy(interp, &__t1171)? { + if !rt::is_truthy(interp, &__t1219)? { Value::bool(false) } else { - let __t1172 = { - let __t1169 = { - let __t1156 = { - let __t1155 = { - let __t1154 = v_V3665.clone(); - rt::hd(&__t1154)? + let __t1220 = { + let __t1217 = { + let __t1204 = { + let __t1203 = { + let __t1202 = v_V3325.clone(); + rt::hd(&__t1202)? }; - rt::tl(&__t1155)? + rt::tl(&__t1203)? }; - rt::is_cons(&__t1156) + rt::is_cons(&__t1204) }; - if !rt::is_truthy(interp, &__t1169)? { + if !rt::is_truthy(interp, &__t1217)? { Value::bool(false) } else { - let __t1170 = { - let __t1167 = { - let __t1160 = { - let __t1159 = { - let __t1158 = { - let __t1157 = - v_V3665.clone(); - rt::hd(&__t1157)? + let __t1218 = { + let __t1215 = { + let __t1208 = { + let __t1207 = { + let __t1206 = { + let __t1205 = + v_V3325.clone(); + rt::hd(&__t1205)? }; - rt::tl(&__t1158)? + rt::tl(&__t1206)? }; - rt::tl(&__t1159)? + rt::tl(&__t1207)? }; - rt::is_cons(&__t1160) + rt::is_cons(&__t1208) }; - if !rt::is_truthy(interp, &__t1167)? + if !rt::is_truthy(interp, &__t1215)? { Value::bool(false) } else { - let __t1168 = { - let __t1161 = Value::nil(); - let __t1166 = { - let __t1165 = { - let __t1164 = { - let __t1163 = { - let __t1162 = v_V3665.clone(); - rt::hd(&__t1162)? + let __t1216 = { + let __t1209 = Value::nil(); + let __t1214 = { + let __t1213 = { + let __t1212 = { + let __t1211 = { + let __t1210 = v_V3325.clone(); + rt::hd(&__t1210)? }; rt::tl( - &__t1163, + &__t1211, )? }; - rt::tl(&__t1164)? + rt::tl(&__t1212)? }; - rt::tl(&__t1165)? + rt::tl(&__t1213)? }; - rt::eq(&__t1161, &__t1166) + rt::eq(&__t1209, &__t1214) }; Value::bool(rt::is_truthy( - interp, &__t1168, + interp, &__t1216, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1170, + interp, &__t1218, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1172)?) + Value::bool(rt::is_truthy(interp, &__t1220)?) } }; - Value::bool(rt::is_truthy(interp, &__t1174)?) + Value::bool(rt::is_truthy(interp, &__t1222)?) } }; - Value::bool(rt::is_truthy(interp, &__t1176)?) + Value::bool(rt::is_truthy(interp, &__t1224)?) } }; - if match rt::is_truthy(interp, &__t1212) { + if match rt::is_truthy(interp, &__t1260) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1182 = { - let __t1180 = { - let __t1179 = { - let __t1178 = { - let __t1177 = v_V3665.clone(); - rt::hd(&__t1177)? + let __t1230 = { + let __t1228 = { + let __t1227 = { + let __t1226 = { + let __t1225 = v_V3325.clone(); + rt::hd(&__t1225)? }; - rt::tl(&__t1178)? + rt::tl(&__t1226)? }; - rt::hd(&__t1179)? + rt::hd(&__t1227)? }; - let __t1181 = v_V3663.clone(); - rt::apply_direct(interp, "element?", &[__t1180, __t1181])? + let __t1229 = v_V3323.clone(); + rt::apply_direct(interp, "element?", &[__t1228, __t1229])? }; - if match rt::is_truthy(interp, &__t1182) { + if match rt::is_truthy(interp, &__t1230) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1187 = { - let __t1183 = Value::sym(interp.intern("is!")); - let __t1186 = { - let __t1185 = { - let __t1184 = v_V3665.clone(); - rt::hd(&__t1184)? + let __t1235 = { + let __t1231 = Value::sym(interp.intern("is!")); + let __t1234 = { + let __t1233 = { + let __t1232 = v_V3325.clone(); + rt::hd(&__t1232)? }; - rt::tl(&__t1185)? + rt::tl(&__t1233)? }; - rt::cons(&__t1183, &__t1186) + rt::cons(&__t1231, &__t1234) }; - let __t1194 = { - let __t1188 = v_V3662.clone(); - let __t1189 = v_V3663.clone(); - let __t1190 = v_V3664.clone(); - let __t1192 = { - let __t1191 = v_V3665.clone(); - rt::tl(&__t1191)? + let __t1242 = { + let __t1236 = v_V3322.clone(); + let __t1237 = v_V3323.clone(); + let __t1238 = v_V3324.clone(); + let __t1240 = { + let __t1239 = v_V3325.clone(); + rt::tl(&__t1239)? }; - let __t1193 = v_V3666.clone(); + let __t1241 = v_V3326.clone(); rt::apply_direct( interp, "shen.side-conditions->goals", - &[__t1188, __t1189, __t1190, __t1192, __t1193], + &[__t1236, __t1237, __t1238, __t1240, __t1241], )? }; - rt::cons(&__t1187, &__t1194) + rt::cons(&__t1235, &__t1242) }); } else { break Ok({ - let __t1199 = { - let __t1195 = Value::sym(interp.intern("bind")); - let __t1198 = { - let __t1197 = { - let __t1196 = v_V3665.clone(); - rt::hd(&__t1196)? + let __t1247 = { + let __t1243 = Value::sym(interp.intern("bind")); + let __t1246 = { + let __t1245 = { + let __t1244 = v_V3325.clone(); + rt::hd(&__t1244)? }; - rt::tl(&__t1197)? + rt::tl(&__t1245)? }; - rt::cons(&__t1195, &__t1198) + rt::cons(&__t1243, &__t1246) }; - let __t1211 = { - let __t1200 = v_V3662.clone(); - let __t1206 = { - let __t1204 = { - let __t1203 = { - let __t1202 = { - let __t1201 = v_V3665.clone(); - rt::hd(&__t1201)? + let __t1259 = { + let __t1248 = v_V3322.clone(); + let __t1254 = { + let __t1252 = { + let __t1251 = { + let __t1250 = { + let __t1249 = v_V3325.clone(); + rt::hd(&__t1249)? }; - rt::tl(&__t1202)? + rt::tl(&__t1250)? }; - rt::hd(&__t1203)? + rt::hd(&__t1251)? }; - let __t1205 = v_V3663.clone(); - rt::cons(&__t1204, &__t1205) + let __t1253 = v_V3323.clone(); + rt::cons(&__t1252, &__t1253) }; - let __t1207 = v_V3664.clone(); - let __t1209 = { - let __t1208 = v_V3665.clone(); - rt::tl(&__t1208)? + let __t1255 = v_V3324.clone(); + let __t1257 = { + let __t1256 = v_V3325.clone(); + rt::tl(&__t1256)? }; - let __t1210 = v_V3666.clone(); + let __t1258 = v_V3326.clone(); rt::apply_direct( interp, "shen.side-conditions->goals", - &[__t1200, __t1206, __t1207, __t1209, __t1210], + &[__t1248, __t1254, __t1255, __t1257, __t1258], )? }; - rt::cons(&__t1199, &__t1211) + rt::cons(&__t1247, &__t1259) }); } } } else { { - let __t1146 = { - let __t1097 = { - let __t1076 = v_V3665.clone(); - rt::is_cons(&__t1076) + let __t1194 = { + let __t1145 = { + let __t1124 = v_V3325.clone(); + rt::is_cons(&__t1124) }; - if !rt::is_truthy(interp, &__t1097)? { + if !rt::is_truthy(interp, &__t1145)? { Value::bool(false) } else { - let __t1098 = { - let __t1095 = { - let __t1078 = { - let __t1077 = v_V3665.clone(); - rt::hd(&__t1077)? + let __t1146 = { + let __t1143 = { + let __t1126 = { + let __t1125 = v_V3325.clone(); + rt::hd(&__t1125)? }; - rt::is_cons(&__t1078) + rt::is_cons(&__t1126) }; - if !rt::is_truthy(interp, &__t1095)? { + if !rt::is_truthy(interp, &__t1143)? { Value::bool(false) } else { - let __t1096 = { - let __t1093 = { - let __t1079 = + let __t1144 = { + let __t1141 = { + let __t1127 = Value::sym(interp.intern("ctxt")); - let __t1082 = { - let __t1081 = { - let __t1080 = v_V3665.clone(); - rt::hd(&__t1080)? + let __t1130 = { + let __t1129 = { + let __t1128 = v_V3325.clone(); + rt::hd(&__t1128)? }; - rt::hd(&__t1081)? + rt::hd(&__t1129)? }; - rt::eq(&__t1079, &__t1082) + rt::eq(&__t1127, &__t1130) }; - if !rt::is_truthy(interp, &__t1093)? { + if !rt::is_truthy(interp, &__t1141)? { Value::bool(false) } else { - let __t1094 = { - let __t1091 = { - let __t1085 = { - let __t1084 = { - let __t1083 = - v_V3665.clone(); - rt::hd(&__t1083)? + let __t1142 = { + let __t1139 = { + let __t1133 = { + let __t1132 = { + let __t1131 = + v_V3325.clone(); + rt::hd(&__t1131)? }; - rt::tl(&__t1084)? + rt::tl(&__t1132)? }; - rt::is_cons(&__t1085) + rt::is_cons(&__t1133) }; - if !rt::is_truthy(interp, &__t1091)? + if !rt::is_truthy(interp, &__t1139)? { Value::bool(false) } else { - let __t1092 = { - let __t1086 = Value::nil(); - let __t1090 = { - let __t1089 = { - let __t1088 = { - let __t1087 = - v_V3665 + let __t1140 = { + let __t1134 = Value::nil(); + let __t1138 = { + let __t1137 = { + let __t1136 = { + let __t1135 = + v_V3325 .clone( ); rt::hd( - &__t1087, + &__t1135, )? }; - rt::tl(&__t1088)? + rt::tl(&__t1136)? }; - rt::tl(&__t1089)? + rt::tl(&__t1137)? }; - rt::eq(&__t1086, &__t1090) + rt::eq(&__t1134, &__t1138) }; Value::bool(rt::is_truthy( - interp, &__t1092, + interp, &__t1140, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1094, + interp, &__t1142, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1096)?) + Value::bool(rt::is_truthy(interp, &__t1144)?) } }; - Value::bool(rt::is_truthy(interp, &__t1098)?) + Value::bool(rt::is_truthy(interp, &__t1146)?) } }; - if match rt::is_truthy(interp, &__t1146) { + if match rt::is_truthy(interp, &__t1194) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1104 = { - let __t1102 = { - let __t1101 = { - let __t1100 = { - let __t1099 = v_V3665.clone(); - rt::hd(&__t1099)? + let __t1152 = { + let __t1150 = { + let __t1149 = { + let __t1148 = { + let __t1147 = v_V3325.clone(); + rt::hd(&__t1147)? }; - rt::tl(&__t1100)? + rt::tl(&__t1148)? }; - rt::hd(&__t1101)? + rt::hd(&__t1149)? }; - let __t1103 = v_V3663.clone(); + let __t1151 = v_V3323.clone(); rt::apply_direct( interp, "element?", - &[__t1102, __t1103], + &[__t1150, __t1151], )? }; - if match rt::is_truthy(interp, &__t1104) { + if match rt::is_truthy(interp, &__t1152) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1110 = { - let __t1108 = { - let __t1107 = { - let __t1106 = { - let __t1105 = v_V3665.clone(); - rt::hd(&__t1105)? + let __t1158 = { + let __t1156 = { + let __t1155 = { + let __t1154 = { + let __t1153 = v_V3325.clone(); + rt::hd(&__t1153)? }; - rt::tl(&__t1106)? + rt::tl(&__t1154)? }; - rt::hd(&__t1107)? + rt::hd(&__t1155)? }; - let __t1109 = v_V3662.clone(); - rt::cons(&__t1108, &__t1109) + let __t1157 = v_V3322.clone(); + rt::cons(&__t1156, &__t1157) }; - let __t1111 = v_V3663.clone(); - let __t1112 = v_V3664.clone(); - let __t1114 = { - let __t1113 = v_V3665.clone(); - rt::tl(&__t1113)? + let __t1159 = v_V3323.clone(); + let __t1160 = v_V3324.clone(); + let __t1162 = { + let __t1161 = v_V3325.clone(); + rt::tl(&__t1161)? }; - let __t1115 = v_V3666.clone(); - v_V3662 = __t1110; - v_V3663 = __t1111; - v_V3664 = __t1112; - v_V3665 = __t1114; - v_V3666 = __t1115; + let __t1163 = v_V3326.clone(); + v_V3322 = __t1158; + v_V3323 = __t1159; + v_V3324 = __t1160; + v_V3325 = __t1162; + v_V3326 = __t1163; continue; } } else { break Ok({ - let __t1125 = { - let __t1116 = + let __t1173 = { + let __t1164 = Value::sym(interp.intern("bind")); - let __t1124 = { - let __t1120 = { - let __t1119 = { - let __t1118 = { - let __t1117 = - v_V3665.clone(); - rt::hd(&__t1117)? + let __t1172 = { + let __t1168 = { + let __t1167 = { + let __t1166 = { + let __t1165 = + v_V3325.clone(); + rt::hd(&__t1165)? }; - rt::tl(&__t1118)? + rt::tl(&__t1166)? }; - rt::hd(&__t1119)? + rt::hd(&__t1167)? }; - let __t1123 = { - let __t1121 = v_V3664.clone(); - let __t1122 = Value::nil(); - rt::cons(&__t1121, &__t1122) + let __t1171 = { + let __t1169 = v_V3324.clone(); + let __t1170 = Value::nil(); + rt::cons(&__t1169, &__t1170) }; - rt::cons(&__t1120, &__t1123) + rt::cons(&__t1168, &__t1171) }; - rt::cons(&__t1116, &__t1124) + rt::cons(&__t1164, &__t1172) }; - let __t1145 = { - let __t1131 = { - let __t1129 = { - let __t1128 = { - let __t1127 = { - let __t1126 = - v_V3665.clone(); - rt::hd(&__t1126)? + let __t1193 = { + let __t1179 = { + let __t1177 = { + let __t1176 = { + let __t1175 = { + let __t1174 = + v_V3325.clone(); + rt::hd(&__t1174)? }; - rt::tl(&__t1127)? + rt::tl(&__t1175)? }; - rt::hd(&__t1128)? + rt::hd(&__t1176)? }; - let __t1130 = v_V3662.clone(); - rt::cons(&__t1129, &__t1130) + let __t1178 = v_V3322.clone(); + rt::cons(&__t1177, &__t1178) }; - let __t1137 = { - let __t1135 = { - let __t1134 = { - let __t1133 = { - let __t1132 = - v_V3665.clone(); - rt::hd(&__t1132)? + let __t1185 = { + let __t1183 = { + let __t1182 = { + let __t1181 = { + let __t1180 = + v_V3325.clone(); + rt::hd(&__t1180)? }; - rt::tl(&__t1133)? + rt::tl(&__t1181)? }; - rt::hd(&__t1134)? + rt::hd(&__t1182)? }; - let __t1136 = v_V3663.clone(); - rt::cons(&__t1135, &__t1136) + let __t1184 = v_V3323.clone(); + rt::cons(&__t1183, &__t1184) }; - let __t1141 = { - let __t1140 = { - let __t1139 = { - let __t1138 = v_V3665.clone(); - rt::hd(&__t1138)? + let __t1189 = { + let __t1188 = { + let __t1187 = { + let __t1186 = v_V3325.clone(); + rt::hd(&__t1186)? }; - rt::tl(&__t1139)? + rt::tl(&__t1187)? }; - rt::hd(&__t1140)? + rt::hd(&__t1188)? }; - let __t1143 = { - let __t1142 = v_V3665.clone(); - rt::tl(&__t1142)? + let __t1191 = { + let __t1190 = v_V3325.clone(); + rt::tl(&__t1190)? }; - let __t1144 = v_V3666.clone(); + let __t1192 = v_V3326.clone(); rt::apply_direct( interp, "shen.side-conditions->goals", &[ - __t1131, __t1137, __t1141, __t1143, - __t1144, + __t1179, __t1185, __t1189, __t1191, + __t1192, ], )? }; - rt::cons(&__t1125, &__t1145) + rt::cons(&__t1173, &__t1193) }); } } } else { { - let __t1075 = Value::bool(true); - if match rt::is_truthy(interp, &__t1075) { + let __t1123 = { + let __t1115 = { + let __t1094 = v_V3325.clone(); + rt::is_cons(&__t1094) + }; + if !rt::is_truthy(interp, &__t1115)? { + Value::bool(false) + } else { + let __t1116 = { + let __t1113 = { + let __t1096 = { + let __t1095 = v_V3325.clone(); + rt::hd(&__t1095)? + }; + rt::is_cons(&__t1096) + }; + if !rt::is_truthy(interp, &__t1113)? { + Value::bool(false) + } else { + let __t1114 = { + let __t1111 = { + let __t1097 = Value::sym( + interp.intern("sqts"), + ); + let __t1100 = { + let __t1099 = { + let __t1098 = + v_V3325.clone(); + rt::hd(&__t1098)? + }; + rt::hd(&__t1099)? + }; + rt::eq(&__t1097, &__t1100) + }; + if !rt::is_truthy(interp, &__t1111)? + { + Value::bool(false) + } else { + let __t1112 = { + let __t1109 = { + let __t1103 = { + let __t1102 = { + let __t1101 = + v_V3325 + .clone( + ); + rt::hd( + &__t1101, + )? + }; + rt::tl(&__t1102)? + }; + rt::is_cons(&__t1103) + }; + if !rt::is_truthy( + interp, &__t1109, + )? { + Value::bool(false) + } else { + let __t1110 = { + let __t1104 = + Value::nil(); + let __t1108 = { + let __t1107 = { + let __t1106 = { + let __t1105 = v_V3325.clone(); + rt::hd(&__t1105)? + }; + rt::tl(&__t1106)? + }; + rt::tl( + &__t1107, + )? + }; + rt::eq( + &__t1104, + &__t1108, + ) + }; + Value::bool( + rt::is_truthy( + interp, + &__t1110, + )?, + ) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1112, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t1114, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t1116)?) + } + }; + if match rt::is_truthy(interp, &__t1123) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - let __t1074 = Value::sym( - interp - .intern("shen.side-conditions->goals"), - ); - rt::apply_direct( - interp, - "shen.f-error", - &[__t1074], - )? - }); + { + let __t1117 = v_V3322.clone(); + let __t1118 = v_V3323.clone(); + let __t1119 = v_V3324.clone(); + let __t1121 = { + let __t1120 = v_V3325.clone(); + rt::tl(&__t1120)? + }; + let __t1122 = v_V3326.clone(); + v_V3322 = __t1117; + v_V3323 = __t1118; + v_V3324 = __t1119; + v_V3325 = __t1121; + v_V3326 = __t1122; + continue; + } } else { - break Err(ShenError::new( - "cond: no clause matched", - )); + { + let __t1093 = Value::bool(true); + if match rt::is_truthy(interp, &__t1093) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t1092 = Value::str("partial function shen.side-conditions->goals"); + rt::apply_direct( + interp, + "simple-error", + &[__t1092], + )? + }); + } else { + break Err(ShenError::new( + "cond: no clause matched", + )); + } + } } } } @@ -6489,264 +6734,264 @@ pub fn aot_shen_x2e_premises_x2d__x3e_goals( ))); } #[allow(unused_mut)] - let mut v_V3671 = args[0].clone(); + let mut v_V3331 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3672 = args[1].clone(); + let mut v_V3332 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3673 = args[2].clone(); + let mut v_V3333 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1331 = { - let __t1326 = Value::nil(); - let __t1327 = v_V3673.clone(); - rt::eq(&__t1326, &__t1327) + let __t1379 = { + let __t1374 = Value::nil(); + let __t1375 = v_V3333.clone(); + rt::eq(&__t1374, &__t1375) }; - if match rt::is_truthy(interp, &__t1331) { + if match rt::is_truthy(interp, &__t1379) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1329 = { - let __t1328 = Value::str(";"); - rt::apply_direct(interp, "intern", &[__t1328])? + let __t1377 = { + let __t1376 = Value::str(";"); + rt::apply_direct(interp, "intern", &[__t1376])? }; - let __t1330 = Value::nil(); - rt::cons(&__t1329, &__t1330) + let __t1378 = Value::nil(); + rt::cons(&__t1377, &__t1378) }); } else { { - let __t1325 = { - let __t1317 = { - let __t1313 = v_V3673.clone(); - rt::is_cons(&__t1313) + let __t1373 = { + let __t1365 = { + let __t1361 = v_V3333.clone(); + rt::is_cons(&__t1361) }; - if !rt::is_truthy(interp, &__t1317)? { + if !rt::is_truthy(interp, &__t1365)? { Value::bool(false) } else { - let __t1318 = { - let __t1314 = Value::sym(interp.intern("!")); - let __t1316 = { - let __t1315 = v_V3673.clone(); - rt::hd(&__t1315)? + let __t1366 = { + let __t1362 = Value::sym(interp.intern("!")); + let __t1364 = { + let __t1363 = v_V3333.clone(); + rt::hd(&__t1363)? }; - rt::eq(&__t1314, &__t1316) + rt::eq(&__t1362, &__t1364) }; - Value::bool(rt::is_truthy(interp, &__t1318)?) + Value::bool(rt::is_truthy(interp, &__t1366)?) } }; - if match rt::is_truthy(interp, &__t1325) { + if match rt::is_truthy(interp, &__t1373) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1319 = Value::sym(interp.intern("!")); - let __t1324 = { - let __t1320 = v_V3671.clone(); - let __t1321 = v_V3672.clone(); - let __t1323 = { - let __t1322 = v_V3673.clone(); - rt::tl(&__t1322)? + let __t1367 = Value::sym(interp.intern("!")); + let __t1372 = { + let __t1368 = v_V3331.clone(); + let __t1369 = v_V3332.clone(); + let __t1371 = { + let __t1370 = v_V3333.clone(); + rt::tl(&__t1370)? }; rt::apply_direct( interp, "shen.premises->goals", - &[__t1320, __t1321, __t1323], + &[__t1368, __t1369, __t1371], )? }; - rt::cons(&__t1319, &__t1324) + rt::cons(&__t1367, &__t1372) }); } else { { - let __t1312 = { - let __t1300 = { - let __t1296 = v_V3673.clone(); - rt::is_cons(&__t1296) + let __t1360 = { + let __t1348 = { + let __t1344 = v_V3333.clone(); + rt::is_cons(&__t1344) }; - if !rt::is_truthy(interp, &__t1300)? { + if !rt::is_truthy(interp, &__t1348)? { Value::bool(false) } else { - let __t1301 = { - let __t1297 = Value::sym(interp.intern("fail")); - let __t1299 = { - let __t1298 = v_V3673.clone(); - rt::hd(&__t1298)? + let __t1349 = { + let __t1345 = Value::sym(interp.intern("fail")); + let __t1347 = { + let __t1346 = v_V3333.clone(); + rt::hd(&__t1346)? }; - rt::eq(&__t1297, &__t1299) + rt::eq(&__t1345, &__t1347) }; - Value::bool(rt::is_truthy(interp, &__t1301)?) + Value::bool(rt::is_truthy(interp, &__t1349)?) } }; - if match rt::is_truthy(interp, &__t1312) { + if match rt::is_truthy(interp, &__t1360) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1306 = { - let __t1302 = Value::sym(interp.intern("when")); - let __t1305 = { - let __t1303 = Value::bool(false); - let __t1304 = Value::nil(); - rt::cons(&__t1303, &__t1304) + let __t1354 = { + let __t1350 = Value::sym(interp.intern("when")); + let __t1353 = { + let __t1351 = Value::bool(false); + let __t1352 = Value::nil(); + rt::cons(&__t1351, &__t1352) }; - rt::cons(&__t1302, &__t1305) + rt::cons(&__t1350, &__t1353) }; - let __t1311 = { - let __t1307 = v_V3671.clone(); - let __t1308 = v_V3672.clone(); - let __t1310 = { - let __t1309 = v_V3673.clone(); - rt::tl(&__t1309)? + let __t1359 = { + let __t1355 = v_V3331.clone(); + let __t1356 = v_V3332.clone(); + let __t1358 = { + let __t1357 = v_V3333.clone(); + rt::tl(&__t1357)? }; rt::apply_direct( interp, "shen.premises->goals", - &[__t1307, __t1308, __t1310], + &[__t1355, __t1356, __t1358], )? }; - rt::cons(&__t1306, &__t1311) + rt::cons(&__t1354, &__t1359) }); } else { { - let __t1295 = { - let __t1272 = { - let __t1257 = v_V3673.clone(); - rt::is_cons(&__t1257) + let __t1343 = { + let __t1320 = { + let __t1305 = v_V3333.clone(); + rt::is_cons(&__t1305) }; - if !rt::is_truthy(interp, &__t1272)? { + if !rt::is_truthy(interp, &__t1320)? { Value::bool(false) } else { - let __t1273 = { - let __t1270 = { - let __t1259 = { - let __t1258 = v_V3673.clone(); - rt::hd(&__t1258)? + let __t1321 = { + let __t1318 = { + let __t1307 = { + let __t1306 = v_V3333.clone(); + rt::hd(&__t1306)? }; - rt::is_cons(&__t1259) + rt::is_cons(&__t1307) }; - if !rt::is_truthy(interp, &__t1270)? { + if !rt::is_truthy(interp, &__t1318)? { Value::bool(false) } else { - let __t1271 = { - let __t1268 = { - let __t1262 = { - let __t1261 = { - let __t1260 = v_V3673.clone(); - rt::hd(&__t1260)? + let __t1319 = { + let __t1316 = { + let __t1310 = { + let __t1309 = { + let __t1308 = v_V3333.clone(); + rt::hd(&__t1308)? }; - rt::tl(&__t1261)? + rt::tl(&__t1309)? }; - rt::is_cons(&__t1262) + rt::is_cons(&__t1310) }; - if !rt::is_truthy(interp, &__t1268)? { + if !rt::is_truthy(interp, &__t1316)? { Value::bool(false) } else { - let __t1269 = { - let __t1263 = Value::nil(); - let __t1267 = { - let __t1266 = { - let __t1265 = { - let __t1264 = - v_V3673.clone(); - rt::hd(&__t1264)? + let __t1317 = { + let __t1311 = Value::nil(); + let __t1315 = { + let __t1314 = { + let __t1313 = { + let __t1312 = + v_V3333.clone(); + rt::hd(&__t1312)? }; - rt::tl(&__t1265)? + rt::tl(&__t1313)? }; - rt::tl(&__t1266)? + rt::tl(&__t1314)? }; - rt::eq(&__t1263, &__t1267) + rt::eq(&__t1311, &__t1315) }; Value::bool(rt::is_truthy( - interp, &__t1269, + interp, &__t1317, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1271)?) + Value::bool(rt::is_truthy(interp, &__t1319)?) } }; - Value::bool(rt::is_truthy(interp, &__t1273)?) + Value::bool(rt::is_truthy(interp, &__t1321)?) } }; - if match rt::is_truthy(interp, &__t1295) { + if match rt::is_truthy(interp, &__t1343) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1289 = { - let __t1274 = + let __t1337 = { + let __t1322 = Value::sym(interp.intern("shen.system-S")); - let __t1288 = { - let __t1279 = { - let __t1278 = { - let __t1277 = { - let __t1276 = { - let __t1275 = v_V3673.clone(); - rt::hd(&__t1275)? + let __t1336 = { + let __t1327 = { + let __t1326 = { + let __t1325 = { + let __t1324 = { + let __t1323 = v_V3333.clone(); + rt::hd(&__t1323)? }; - rt::tl(&__t1276)? + rt::tl(&__t1324)? }; - rt::hd(&__t1277)? + rt::hd(&__t1325)? }; rt::apply_direct( interp, "shen.macro-@c", - &[__t1278], + &[__t1326], )? }; - let __t1287 = { - let __t1285 = { - let __t1280 = v_V3671.clone(); - let __t1283 = { - let __t1282 = { - let __t1281 = v_V3673.clone(); - rt::hd(&__t1281)? + let __t1335 = { + let __t1333 = { + let __t1328 = v_V3331.clone(); + let __t1331 = { + let __t1330 = { + let __t1329 = v_V3333.clone(); + rt::hd(&__t1329)? }; - rt::hd(&__t1282)? + rt::hd(&__t1330)? }; - let __t1284 = v_V3672.clone(); + let __t1332 = v_V3332.clone(); rt::apply_direct( interp, "shen.construct-context", - &[__t1280, __t1283, __t1284], + &[__t1328, __t1331, __t1332], )? }; - let __t1286 = Value::nil(); - rt::cons(&__t1285, &__t1286) + let __t1334 = Value::nil(); + rt::cons(&__t1333, &__t1334) }; - rt::cons(&__t1279, &__t1287) + rt::cons(&__t1327, &__t1335) }; - rt::cons(&__t1274, &__t1288) + rt::cons(&__t1322, &__t1336) }; - let __t1294 = { - let __t1290 = v_V3671.clone(); - let __t1291 = v_V3672.clone(); - let __t1293 = { - let __t1292 = v_V3673.clone(); - rt::tl(&__t1292)? + let __t1342 = { + let __t1338 = v_V3331.clone(); + let __t1339 = v_V3332.clone(); + let __t1341 = { + let __t1340 = v_V3333.clone(); + rt::tl(&__t1340)? }; rt::apply_direct( interp, "shen.premises->goals", - &[__t1290, __t1291, __t1293], + &[__t1338, __t1339, __t1341], )? }; - rt::cons(&__t1289, &__t1294) + rt::cons(&__t1337, &__t1342) }); } else { { - let __t1256 = Value::bool(true); - if match rt::is_truthy(interp, &__t1256) { + let __t1304 = Value::bool(true); + if match rt::is_truthy(interp, &__t1304) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1255 = Value::sym( - interp.intern("shen.premises->goals"), + let __t1303 = Value::str( + "partial function shen.premises->goals", ); rt::apply_direct( interp, - "shen.f-error", - &[__t1255], + "simple-error", + &[__t1303], )? }); } else { @@ -6787,120 +7032,121 @@ pub fn aot_shen_x2e_construct_x2d_context( ))); } #[allow(unused_mut)] - let mut v_V3677 = args[0].clone(); + let mut v_V3337 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3678 = args[1].clone(); + let mut v_V3338 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3679 = args[2].clone(); + let mut v_V3339 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1363 = { - let __t1361 = Value::nil(); - let __t1362 = v_V3678.clone(); - rt::eq(&__t1361, &__t1362) + let __t1411 = { + let __t1409 = Value::nil(); + let __t1410 = v_V3338.clone(); + rt::eq(&__t1409, &__t1410) }; - if match rt::is_truthy(interp, &__t1363) { + if match rt::is_truthy(interp, &__t1411) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3679.clone()); + break Ok(v_V3339.clone()); } else { { - let __t1360 = { - let __t1357 = { - let __t1348 = v_V3678.clone(); - rt::is_cons(&__t1348) + let __t1408 = { + let __t1405 = { + let __t1396 = v_V3338.clone(); + rt::is_cons(&__t1396) }; - if !rt::is_truthy(interp, &__t1357)? { + if !rt::is_truthy(interp, &__t1405)? { Value::bool(false) } else { - let __t1358 = { - let __t1355 = { - let __t1349 = Value::nil(); - let __t1351 = { - let __t1350 = v_V3678.clone(); - rt::tl(&__t1350)? + let __t1406 = { + let __t1403 = { + let __t1397 = Value::nil(); + let __t1399 = { + let __t1398 = v_V3338.clone(); + rt::tl(&__t1398)? }; - rt::eq(&__t1349, &__t1351) + rt::eq(&__t1397, &__t1399) }; - if !rt::is_truthy(interp, &__t1355)? { + if !rt::is_truthy(interp, &__t1403)? { Value::bool(false) } else { - let __t1356 = { - let __t1353 = { - let __t1352 = v_V3678.clone(); - rt::hd(&__t1352)? + let __t1404 = { + let __t1401 = { + let __t1400 = v_V3338.clone(); + rt::hd(&__t1400)? }; - let __t1354 = v_V3677.clone(); - rt::apply_direct(interp, "element?", &[__t1353, __t1354])? + let __t1402 = v_V3337.clone(); + rt::apply_direct(interp, "element?", &[__t1401, __t1402])? }; - Value::bool(rt::is_truthy(interp, &__t1356)?) + Value::bool(rt::is_truthy(interp, &__t1404)?) } }; - Value::bool(rt::is_truthy(interp, &__t1358)?) + Value::bool(rt::is_truthy(interp, &__t1406)?) } }; - if match rt::is_truthy(interp, &__t1360) { + if match rt::is_truthy(interp, &__t1408) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1359 = v_V3678.clone(); - rt::hd(&__t1359)? + let __t1407 = v_V3338.clone(); + rt::hd(&__t1407)? }); } else { { - let __t1347 = { - let __t1334 = v_V3678.clone(); - rt::is_cons(&__t1334) + let __t1395 = { + let __t1382 = v_V3338.clone(); + rt::is_cons(&__t1382) }; - if match rt::is_truthy(interp, &__t1347) { + if match rt::is_truthy(interp, &__t1395) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1335 = Value::sym(interp.intern("cons")); - let __t1346 = { - let __t1338 = { - let __t1337 = { - let __t1336 = v_V3678.clone(); - rt::hd(&__t1336)? + let __t1383 = Value::sym(interp.intern("cons")); + let __t1394 = { + let __t1386 = { + let __t1385 = { + let __t1384 = v_V3338.clone(); + rt::hd(&__t1384)? }; - rt::apply_direct(interp, "shen.macro-@c", &[__t1337])? + rt::apply_direct(interp, "shen.macro-@c", &[__t1385])? }; - let __t1345 = { - let __t1343 = { - let __t1339 = v_V3677.clone(); - let __t1341 = { - let __t1340 = v_V3678.clone(); - rt::tl(&__t1340)? + let __t1393 = { + let __t1391 = { + let __t1387 = v_V3337.clone(); + let __t1389 = { + let __t1388 = v_V3338.clone(); + rt::tl(&__t1388)? }; - let __t1342 = v_V3679.clone(); + let __t1390 = v_V3339.clone(); rt::apply_direct( interp, "shen.construct-context", - &[__t1339, __t1341, __t1342], + &[__t1387, __t1389, __t1390], )? }; - let __t1344 = Value::nil(); - rt::cons(&__t1343, &__t1344) + let __t1392 = Value::nil(); + rt::cons(&__t1391, &__t1392) }; - rt::cons(&__t1338, &__t1345) + rt::cons(&__t1386, &__t1393) }; - rt::cons(&__t1335, &__t1346) + rt::cons(&__t1383, &__t1394) }); } else { { - let __t1333 = Value::bool(true); - if match rt::is_truthy(interp, &__t1333) { + let __t1381 = Value::bool(true); + if match rt::is_truthy(interp, &__t1381) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1332 = - Value::sym(interp.intern("shen.construct-context")); - rt::apply_direct(interp, "shen.f-error", &[__t1332])? + let __t1380 = Value::str( + "partial function shen.construct-context", + ); + rt::apply_direct(interp, "simple-error", &[__t1380])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6933,49 +7179,49 @@ pub fn aot_preclude(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3680 = args[0].clone(); + let mut v_V3340 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3681 = { - let __t1365 = { + let v_W3341 = { + let __t1413 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3682 = args[0].clone(); + let v_Z3342 = args[0].clone(); Ok({ - let __t1364 = v_Z3682.clone(); - rt::apply_direct(interp, "shen.intern-type", &[__t1364])? + let __t1412 = v_Z3342.clone(); + rt::apply_direct(interp, "shen.intern-type", &[__t1412])? }) }, Vec::new(), interp, ) }; - let __t1366 = v_V3680.clone(); - rt::apply_direct(interp, "map", &[__t1365, __t1366])? + let __t1414 = v_V3340.clone(); + rt::apply_direct(interp, "map", &[__t1413, __t1414])? }; { - let v_W3683 = { - let __t1367 = Value::sym(interp.intern("shen.*datatypes*")); - rt::apply_direct(interp, "value", &[__t1367])? + let v_W3343 = { + let __t1415 = Value::sym(interp.intern("shen.*datatypes*")); + rt::apply_direct(interp, "value", &[__t1415])? }; { - let v_W3684 = { - let __t1368 = v_W3681.clone(); - let __t1369 = v_W3683.clone(); - rt::apply_direct(interp, "shen.remove-datatypes", &[__t1368, __t1369])? + let v_W3344 = { + let __t1416 = v_W3341.clone(); + let __t1417 = v_W3343.clone(); + rt::apply_direct(interp, "shen.remove-datatypes", &[__t1416, __t1417])? }; { - let v_W3685 = { - let __t1370 = Value::sym(interp.intern("shen.*datatypes*")); - let __t1371 = v_W3684.clone(); - rt::apply_direct(interp, "set", &[__t1370, __t1371])? + let v_W3345 = { + let __t1418 = Value::sym(interp.intern("shen.*datatypes*")); + let __t1419 = v_W3344.clone(); + rt::apply_direct(interp, "set", &[__t1418, __t1419])? }; break Ok({ - let __t1372 = v_W3685.clone(); - rt::apply_direct(interp, "shen.show-datatypes", &[__t1372])? + let __t1420 = v_W3345.clone(); + rt::apply_direct(interp, "shen.show-datatypes", &[__t1420])? }); } } @@ -6998,60 +7244,60 @@ pub fn aot_shen_x2e_remove_x2d_datatypes(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V3690 = args[0].clone(); + let mut v_V3350 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3691 = args[1].clone(); + let mut v_V3351 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1385 = { - let __t1383 = Value::nil(); - let __t1384 = v_V3690.clone(); - rt::eq(&__t1383, &__t1384) + let __t1433 = { + let __t1431 = Value::nil(); + let __t1432 = v_V3350.clone(); + rt::eq(&__t1431, &__t1432) }; - if match rt::is_truthy(interp, &__t1385) { + if match rt::is_truthy(interp, &__t1433) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3691.clone()); + break Ok(v_V3351.clone()); } else { { - let __t1382 = { - let __t1375 = v_V3690.clone(); - rt::is_cons(&__t1375) + let __t1430 = { + let __t1423 = v_V3350.clone(); + rt::is_cons(&__t1423) }; - if match rt::is_truthy(interp, &__t1382) { + if match rt::is_truthy(interp, &__t1430) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1377 = { - let __t1376 = v_V3690.clone(); - rt::tl(&__t1376)? + let __t1425 = { + let __t1424 = v_V3350.clone(); + rt::tl(&__t1424)? }; - let __t1381 = { - let __t1379 = { - let __t1378 = v_V3690.clone(); - rt::hd(&__t1378)? + let __t1429 = { + let __t1427 = { + let __t1426 = v_V3350.clone(); + rt::hd(&__t1426)? }; - let __t1380 = v_V3691.clone(); - rt::apply_direct(interp, "shen.unassoc", &[__t1379, __t1380])? + let __t1428 = v_V3351.clone(); + rt::apply_direct(interp, "shen.unassoc", &[__t1427, __t1428])? }; - v_V3690 = __t1377; - v_V3691 = __t1381; + v_V3350 = __t1425; + v_V3351 = __t1429; continue; } } else { { - let __t1374 = Value::bool(true); - if match rt::is_truthy(interp, &__t1374) { + let __t1422 = Value::bool(true); + if match rt::is_truthy(interp, &__t1422) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1373 = + let __t1421 = Value::str("implementation error in shen.remove-datatypes"); - rt::apply_direct(interp, "simple-error", &[__t1373])? + rt::apply_direct(interp, "simple-error", &[__t1421])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -7082,27 +7328,27 @@ pub fn aot_shen_x2e_show_x2d_datatypes(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V3692 = args[0].clone(); + let mut v_V3352 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1387 = { + let __t1435 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3693 = args[0].clone(); + let v_Z3353 = args[0].clone(); Ok({ - let __t1386 = v_Z3693.clone(); - rt::hd(&__t1386)? + let __t1434 = v_Z3353.clone(); + rt::hd(&__t1434)? }) }, Vec::new(), interp, ) }; - let __t1388 = v_V3692.clone(); - rt::apply_direct(interp, "map", &[__t1387, __t1388])? + let __t1436 = v_V3352.clone(); + rt::apply_direct(interp, "map", &[__t1435, __t1436])? }); } } @@ -7121,47 +7367,47 @@ pub fn aot_include(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3694 = args[0].clone(); + let mut v_V3354 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3695 = { - let __t1390 = { + let v_W3355 = { + let __t1438 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3696 = args[0].clone(); + let v_Z3356 = args[0].clone(); Ok({ - let __t1389 = v_Z3696.clone(); - rt::apply_direct(interp, "shen.intern-type", &[__t1389])? + let __t1437 = v_Z3356.clone(); + rt::apply_direct(interp, "shen.intern-type", &[__t1437])? }) }, Vec::new(), interp, ) }; - let __t1391 = v_V3694.clone(); - rt::apply_direct(interp, "map", &[__t1390, __t1391])? + let __t1439 = v_V3354.clone(); + rt::apply_direct(interp, "map", &[__t1438, __t1439])? }; { - let v_W3697 = { - let __t1395 = { + let v_W3357 = { + let __t1443 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3698 = args[0].clone(); + let v_Z3358 = args[0].clone(); Ok({ - let __t1392 = v_Z3698.clone(); - let __t1394 = { - let __t1393 = v_Z3698.clone(); - rt::apply_direct(interp, "fn", &[__t1393])? + let __t1440 = v_Z3358.clone(); + let __t1442 = { + let __t1441 = v_Z3358.clone(); + rt::apply_direct(interp, "fn", &[__t1441])? }; rt::apply_direct( interp, "shen.remember-datatype", - &[__t1392, __t1394], + &[__t1440, __t1442], )? }) }, @@ -7169,17 +7415,17 @@ pub fn aot_include(interp: &mut Interp, args: &[Value]) -> ShenResult { interp, ) }; - let __t1396 = v_W3695.clone(); - rt::apply_direct(interp, "map", &[__t1395, __t1396])? + let __t1444 = v_W3355.clone(); + rt::apply_direct(interp, "map", &[__t1443, __t1444])? }; { - let v_W3699 = { - let __t1397 = Value::sym(interp.intern("shen.*datatypes*")); - rt::apply_direct(interp, "value", &[__t1397])? + let v_W3359 = { + let __t1445 = Value::sym(interp.intern("shen.*datatypes*")); + rt::apply_direct(interp, "value", &[__t1445])? }; break Ok({ - let __t1398 = v_W3699.clone(); - rt::apply_direct(interp, "shen.show-datatypes", &[__t1398])? + let __t1446 = v_W3359.clone(); + rt::apply_direct(interp, "shen.show-datatypes", &[__t1446])? }); } } @@ -7201,53 +7447,53 @@ pub fn aot_preclude_x2d_all_x2d_but(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3700 = args[0].clone(); + let mut v_V3360 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3701 = { - let __t1399 = Value::sym(interp.intern("shen.*datatypes*")); - let __t1400 = Value::nil(); - rt::apply_direct(interp, "set", &[__t1399, __t1400])? + let v_W3361 = { + let __t1447 = Value::sym(interp.intern("shen.*datatypes*")); + let __t1448 = Value::nil(); + rt::apply_direct(interp, "set", &[__t1447, __t1448])? }; { - let v_W3702 = { - let __t1402 = { + let v_W3362 = { + let __t1450 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3703 = args[0].clone(); + let v_Z3363 = args[0].clone(); Ok({ - let __t1401 = v_Z3703.clone(); - rt::apply_direct(interp, "shen.intern-type", &[__t1401])? + let __t1449 = v_Z3363.clone(); + rt::apply_direct(interp, "shen.intern-type", &[__t1449])? }) }, Vec::new(), interp, ) }; - let __t1403 = v_V3700.clone(); - rt::apply_direct(interp, "map", &[__t1402, __t1403])? + let __t1451 = v_V3360.clone(); + rt::apply_direct(interp, "map", &[__t1450, __t1451])? }; { - let v_W3704 = { - let __t1407 = { + let v_W3364 = { + let __t1455 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3705 = args[0].clone(); + let v_Z3365 = args[0].clone(); Ok({ - let __t1404 = v_Z3705.clone(); - let __t1406 = { - let __t1405 = v_Z3705.clone(); - rt::apply_direct(interp, "fn", &[__t1405])? + let __t1452 = v_Z3365.clone(); + let __t1454 = { + let __t1453 = v_Z3365.clone(); + rt::apply_direct(interp, "fn", &[__t1453])? }; rt::apply_direct( interp, "shen.remember-datatype", - &[__t1404, __t1406], + &[__t1452, __t1454], )? }) }, @@ -7255,15 +7501,15 @@ pub fn aot_preclude_x2d_all_x2d_but(interp: &mut Interp, args: &[Value]) -> Shen interp, ) }; - let __t1408 = v_W3702.clone(); - rt::apply_direct(interp, "map", &[__t1407, __t1408])? + let __t1456 = v_W3362.clone(); + rt::apply_direct(interp, "map", &[__t1455, __t1456])? }; break Ok({ - let __t1410 = { - let __t1409 = Value::sym(interp.intern("shen.*datatypes*")); - rt::apply_direct(interp, "value", &[__t1409])? + let __t1458 = { + let __t1457 = Value::sym(interp.intern("shen.*datatypes*")); + rt::apply_direct(interp, "value", &[__t1457])? }; - rt::apply_direct(interp, "shen.show-datatypes", &[__t1410])? + rt::apply_direct(interp, "shen.show-datatypes", &[__t1458])? }); } } @@ -7285,47 +7531,47 @@ pub fn aot_include_x2d_all_x2d_but(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3706 = args[0].clone(); + let mut v_V3366 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3707 = { - let __t1412 = { + let v_W3367 = { + let __t1460 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3708 = args[0].clone(); + let v_Z3368 = args[0].clone(); Ok({ - let __t1411 = v_Z3708.clone(); - rt::apply_direct(interp, "shen.intern-type", &[__t1411])? + let __t1459 = v_Z3368.clone(); + rt::apply_direct(interp, "shen.intern-type", &[__t1459])? }) }, Vec::new(), interp, ) }; - let __t1413 = v_V3706.clone(); - rt::apply_direct(interp, "map", &[__t1412, __t1413])? + let __t1461 = v_V3366.clone(); + rt::apply_direct(interp, "map", &[__t1460, __t1461])? }; { - let v_W3709 = { - let __t1414 = Value::sym(interp.intern("shen.*alldatatypes*")); - rt::apply_direct(interp, "value", &[__t1414])? + let v_W3369 = { + let __t1462 = Value::sym(interp.intern("shen.*alldatatypes*")); + rt::apply_direct(interp, "value", &[__t1462])? }; { - let v_W3710 = { - let __t1415 = Value::sym(interp.intern("shen.*datatypes*")); - let __t1418 = { - let __t1416 = v_W3707.clone(); - let __t1417 = v_W3709.clone(); - rt::apply_direct(interp, "shen.remove-datatypes", &[__t1416, __t1417])? + let v_W3370 = { + let __t1463 = Value::sym(interp.intern("shen.*datatypes*")); + let __t1466 = { + let __t1464 = v_W3367.clone(); + let __t1465 = v_W3369.clone(); + rt::apply_direct(interp, "shen.remove-datatypes", &[__t1464, __t1465])? }; - rt::apply_direct(interp, "set", &[__t1415, __t1418])? + rt::apply_direct(interp, "set", &[__t1463, __t1466])? }; break Ok({ - let __t1419 = v_W3710.clone(); - rt::apply_direct(interp, "shen.show-datatypes", &[__t1419])? + let __t1467 = v_W3370.clone(); + rt::apply_direct(interp, "shen.show-datatypes", &[__t1467])? }); } } diff --git a/crates/shen-rust/src/aot/kernel/sys.rs b/crates/shen-rust/src/aot/kernel/sys.rs index 95a169c..ec69f9a 100644 --- a/crates/shen-rust/src/aot/kernel/sys.rs +++ b/crates/shen-rust/src/aot/kernel/sys.rs @@ -32,10 +32,10 @@ pub fn aot_thaw(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3767 = args[0].clone(); + let mut v_V3430 = args[0].clone(); #[allow(clippy::never_loop)] loop { - break Ok({ rt::apply_value(interp, v_V3767.clone(), &[])? }); + break Ok({ rt::apply_value(interp, v_V3430.clone(), &[])? }); } } @@ -53,18 +53,18 @@ pub fn aot_eval(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3768 = args[0].clone(); + let mut v_V3431 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ let __t5 = { let __t4 = { let __t1 = { - let __t0 = v_V3768.clone(); + let __t0 = v_V3431.clone(); rt::apply_direct(interp, "macroexpand", &[__t0])? }; let __t3 = { - let __t2 = v_V3768.clone(); + let __t2 = v_V3431.clone(); rt::apply_direct(interp, "shen.find-types", &[__t2])? }; rt::apply_direct(interp, "shen.process-applications", &[__t1, __t3])? @@ -90,13 +90,13 @@ pub fn aot_external(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3769 = args[0].clone(); + let mut v_V3432 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t19 = { let __t17 = Value::sym(interp.intern("null")); - let __t18 = v_V3769.clone(); + let __t18 = v_V3432.clone(); rt::eq(&__t17, &__t18) }; if match rt::is_truthy(interp, &__t19) { @@ -114,7 +114,7 @@ pub fn aot_external(interp: &mut Interp, args: &[Value]) -> ShenResult { break Ok( match (|| -> ShenResult { Ok({ - let __t6 = v_V3769.clone(); + let __t6 = v_V3432.clone(); let __t7 = Value::sym(interp.intern("shen.external-symbols")); let __t9 = { let __t8 = Value::sym(interp.intern("*property-vector*")); @@ -126,17 +126,17 @@ pub fn aot_external(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(v) => v, Err(e) => { let __h = { - let v_V3769 = v_V3769.clone(); + let v_V3432 = v_V3432.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3770 = args[0].clone(); + let v_Z3433 = args[0].clone(); Ok({ let __t15 = { let __t10 = Value::str("package "); let __t14 = { - let __t11 = v_V3769.clone(); + let __t11 = v_V3432.clone(); let __t12 = Value::str(" does not exist.\n;"); let __t13 = @@ -160,7 +160,7 @@ pub fn aot_external(interp: &mut Interp, args: &[Value]) -> ShenResult { )? }) }, - vec![v_V3769], + vec![v_V3432], interp, ) }; @@ -192,13 +192,13 @@ pub fn aot_internal(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3771 = args[0].clone(); + let mut v_V3434 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t33 = { let __t31 = Value::sym(interp.intern("null")); - let __t32 = v_V3771.clone(); + let __t32 = v_V3434.clone(); rt::eq(&__t31, &__t32) }; if match rt::is_truthy(interp, &__t33) { @@ -216,7 +216,7 @@ pub fn aot_internal(interp: &mut Interp, args: &[Value]) -> ShenResult { break Ok( match (|| -> ShenResult { Ok({ - let __t20 = v_V3771.clone(); + let __t20 = v_V3434.clone(); let __t21 = Value::sym(interp.intern("shen.internal-symbols")); let __t23 = { let __t22 = Value::sym(interp.intern("*property-vector*")); @@ -228,17 +228,17 @@ pub fn aot_internal(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(v) => v, Err(e) => { let __h = { - let v_V3771 = v_V3771.clone(); + let v_V3434 = v_V3434.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3772 = args[0].clone(); + let v_Z3435 = args[0].clone(); Ok({ let __t29 = { let __t24 = Value::str("package "); let __t28 = { - let __t25 = v_V3771.clone(); + let __t25 = v_V3434.clone(); let __t26 = Value::str(" does not exist.\n;"); let __t27 = @@ -262,7 +262,7 @@ pub fn aot_internal(interp: &mut Interp, args: &[Value]) -> ShenResult { )? }) }, - vec![v_V3771], + vec![v_V3434], interp, ) }; @@ -294,15 +294,15 @@ pub fn aot_fail_x2d_if(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3773 = args[0].clone(); + let mut v_V3436 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3774 = args[1].clone(); + let mut v_V3437 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t35 = { - let __t34 = v_V3774.clone(); - rt::apply_value(interp, v_V3773.clone(), &[__t34])? + let __t34 = v_V3437.clone(); + rt::apply_value(interp, v_V3436.clone(), &[__t34])? }; if match rt::is_truthy(interp, &__t35) { Ok(b) => b, @@ -310,7 +310,7 @@ pub fn aot_fail_x2d_if(interp: &mut Interp, args: &[Value]) -> ShenResult } { break Ok({ rt::apply_direct(interp, "fail", &[])? }); } else { - break Ok(v_V3774.clone()); + break Ok(v_V3437.clone()); } } } @@ -330,14 +330,14 @@ pub fn aot__x40_s(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3775 = args[0].clone(); + let mut v_V3438 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3776 = args[1].clone(); + let mut v_V3439 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t36 = v_V3775.clone(); - let __t37 = v_V3776.clone(); + let __t36 = v_V3438.clone(); + let __t37 = v_V3439.clone(); rt::apply_direct(interp, "cn", &[__t36, __t37])? }); } @@ -445,13 +445,13 @@ pub fn aot_ps(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3777 = args[0].clone(); + let mut v_V3440 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t42 = v_V3777.clone(); + let __t42 = v_V3440.clone(); let __t43 = Value::sym(interp.intern("shen.source")); let __t45 = { let __t44 = Value::sym(interp.intern("*property-vector*")); @@ -463,15 +463,15 @@ pub fn aot_ps(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(v) => v, Err(e) => { let __h = { - let v_V3777 = v_V3777.clone(); + let v_V3440 = v_V3440.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3778 = args[0].clone(); + let v_Z3441 = args[0].clone(); Ok({ let __t49 = { - let __t46 = v_V3777.clone(); + let __t46 = v_V3440.clone(); let __t47 = Value::str(" not found.\n"); let __t48 = Value::sym(interp.intern("shen.a")); rt::apply_direct( @@ -483,7 +483,7 @@ pub fn aot_ps(interp: &mut Interp, args: &[Value]) -> ShenResult { rt::apply_direct(interp, "simple-error", &[__t49])? }) }, - vec![v_V3777], + vec![v_V3440], interp, ) }; @@ -531,39 +531,39 @@ pub fn aot_vector(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3779 = args[0].clone(); + let mut v_V3442 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3780 = { + let v_W3443 = { let __t53 = { - let __t51 = v_V3779.clone(); + let __t51 = v_V3442.clone(); let __t52 = Value::int(1i64); rt::add(&__t51, &__t52)? }; rt::apply_direct(interp, "absvector", &[__t53])? }; { - let v_W3781 = { - let __t54 = v_W3780.clone(); + let v_W3444 = { + let __t54 = v_W3443.clone(); let __t55 = Value::int(0i64); - let __t56 = v_V3779.clone(); + let __t56 = v_V3442.clone(); rt::apply_direct(interp, "address->", &[__t54, __t55, __t56])? }; { - let v_W3782 = { + let v_W3445 = { let __t63 = { - let __t57 = v_V3779.clone(); + let __t57 = v_V3442.clone(); let __t58 = Value::int(0i64); rt::eq(&__t57, &__t58) }; if rt::is_truthy(interp, &__t63)? { - v_W3781.clone() + v_W3444.clone() } else { { - let __t59 = v_W3781.clone(); + let __t59 = v_W3444.clone(); let __t60 = Value::int(1i64); - let __t61 = v_V3779.clone(); + let __t61 = v_V3442.clone(); let __t62 = { rt::apply_direct(interp, "fail", &[])? }; rt::apply_direct( interp, @@ -573,7 +573,7 @@ pub fn aot_vector(interp: &mut Interp, args: &[Value]) -> ShenResult { } } }; - break Ok(v_W3782.clone()); + break Ok(v_W3445.clone()); } } } @@ -594,19 +594,19 @@ pub fn aot_shen_x2e_fillvector(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V3784 = args[0].clone(); + let mut v_V3447 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3785 = args[1].clone(); + let mut v_V3448 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3786 = args[2].clone(); + let mut v_V3449 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3787 = args[3].clone(); + let mut v_V3450 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t79 = { - let __t74 = v_V3785.clone(); - let __t75 = v_V3786.clone(); + let __t74 = v_V3448.clone(); + let __t75 = v_V3449.clone(); rt::eq(&__t74, &__t75) }; if match rt::is_truthy(interp, &__t79) { @@ -614,9 +614,9 @@ pub fn aot_shen_x2e_fillvector(interp: &mut Interp, args: &[Value]) -> ShenResul Err(e) => break Err(e), } { break Ok({ - let __t76 = v_V3784.clone(); - let __t77 = v_V3786.clone(); - let __t78 = v_V3787.clone(); + let __t76 = v_V3447.clone(); + let __t77 = v_V3449.clone(); + let __t78 = v_V3450.clone(); rt::apply_direct(interp, "address->", &[__t76, __t77, __t78])? }); } else { @@ -628,22 +628,22 @@ pub fn aot_shen_x2e_fillvector(interp: &mut Interp, args: &[Value]) -> ShenResul } { { let __t67 = { - let __t64 = v_V3784.clone(); - let __t65 = v_V3785.clone(); - let __t66 = v_V3787.clone(); + let __t64 = v_V3447.clone(); + let __t65 = v_V3448.clone(); + let __t66 = v_V3450.clone(); rt::apply_direct(interp, "address->", &[__t64, __t65, __t66])? }; let __t70 = { let __t68 = Value::int(1i64); - let __t69 = v_V3785.clone(); + let __t69 = v_V3448.clone(); rt::add(&__t68, &__t69)? }; - let __t71 = v_V3786.clone(); - let __t72 = v_V3787.clone(); - v_V3784 = __t67; - v_V3785 = __t70; - v_V3786 = __t71; - v_V3787 = __t72; + let __t71 = v_V3449.clone(); + let __t72 = v_V3450.clone(); + v_V3447 = __t67; + v_V3448 = __t70; + v_V3449 = __t71; + v_V3450 = __t72; continue; } } else { @@ -669,12 +669,12 @@ pub fn aot_vector_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3788 = args[0].clone(); + let mut v_V3451 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t81 = { - let __t80 = v_V3788.clone(); + let __t80 = v_V3451.clone(); rt::is_absvector(&__t80) }; if !match rt::is_truthy(interp, &__t81) { @@ -683,12 +683,16 @@ pub fn aot_vector_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult } { break Ok(Value::bool(false)); } else { - { - let v_W3789 = match (|| -> ShenResult { + break Ok( + match (|| -> ShenResult { Ok({ - let __t82 = v_V3788.clone(); - let __t83 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t82, __t83])? + let __t84 = { + let __t82 = v_V3451.clone(); + let __t83 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t82, __t83])? + }; + let __t85 = Value::int(0i64); + rt::gte(&__t84, &__t85)? }) })() { Ok(v) => v, @@ -698,8 +702,8 @@ pub fn aot_vector_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult "", 1, move |interp, args| { - let v_Z3790 = args[0].clone(); - Ok(Value::int(-1i64)) + let v_Z3452 = args[0].clone(); + Ok(Value::bool(false)) }, Vec::new(), interp, @@ -708,26 +712,8 @@ pub fn aot_vector_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult let __err = Value::err(e.message.clone()); rt::apply_value(interp, __h, &[__err])? } - }; - { - let __t85 = { - let __t84 = v_W3789.clone(); - rt::is_number(&__t84) - }; - if !match rt::is_truthy(interp, &__t85) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Ok({ - let __t86 = v_W3789.clone(); - let __t87 = Value::int(0i64); - rt::gte(&__t86, &__t87)? - }); - } - } - } + }, + ); } } } @@ -747,33 +733,33 @@ pub fn aot_vector_x2d__x3e_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t91 = Value::str("cannot access 0th element of a vector\n"); - rt::apply_direct(interp, "simple-error", &[__t91])? + let __t89 = Value::str("cannot access 0th element of a vector\n"); + rt::apply_direct(interp, "simple-error", &[__t89])? }); } else { break Ok({ - let __t92 = v_V3791.clone(); - let __t93 = v_V3792.clone(); - let __t94 = v_V3793.clone(); - rt::apply_direct(interp, "address->", &[__t92, __t93, __t94])? + let __t90 = v_V3453.clone(); + let __t91 = v_V3454.clone(); + let __t92 = v_V3455.clone(); + rt::apply_direct(interp, "address->", &[__t90, __t91, __t92])? }); } } @@ -794,48 +780,48 @@ pub fn aot__x3c__x2d_vector(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t98 = Value::str("cannot access 0th element of a vector\n"); - rt::apply_direct(interp, "simple-error", &[__t98])? + let __t96 = Value::str("cannot access 0th element of a vector\n"); + rt::apply_direct(interp, "simple-error", &[__t96])? }); } else { { - let v_W3796 = { - let __t99 = v_V3794.clone(); - let __t100 = v_V3795.clone(); - rt::apply_direct(interp, "<-address", &[__t99, __t100])? + let v_W3458 = { + let __t97 = v_V3456.clone(); + let __t98 = v_V3457.clone(); + rt::apply_direct(interp, "<-address", &[__t97, __t98])? }; { - let __t103 = { - let __t101 = v_W3796.clone(); - let __t102 = { rt::apply_direct(interp, "fail", &[])? }; - rt::eq(&__t101, &__t102) + let __t101 = { + let __t99 = v_W3458.clone(); + let __t100 = { rt::apply_direct(interp, "fail", &[])? }; + rt::eq(&__t99, &__t100) }; - if match rt::is_truthy(interp, &__t103) { + if match rt::is_truthy(interp, &__t101) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t104 = Value::str("vector element not found\n"); - rt::apply_direct(interp, "simple-error", &[__t104])? + let __t102 = Value::str("vector element not found\n"); + rt::apply_direct(interp, "simple-error", &[__t102])? }); } else { - break Ok(v_W3796.clone()); + break Ok(v_W3458.clone()); } } } @@ -858,24 +844,24 @@ pub fn aot_shen_x2e_posint_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V3797 = args[0].clone(); + let mut v_V3459 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t106 = { - let __t105 = v_V3797.clone(); - rt::apply_direct(interp, "integer?", &[__t105])? + let __t104 = { + let __t103 = v_V3459.clone(); + rt::apply_direct(interp, "integer?", &[__t103])? }; - if !match rt::is_truthy(interp, &__t106) { + if !match rt::is_truthy(interp, &__t104) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t107 = v_V3797.clone(); - let __t108 = Value::int(0i64); - rt::gte(&__t107, &__t108)? + let __t105 = v_V3459.clone(); + let __t106 = Value::int(0i64); + rt::gte(&__t105, &__t106)? }); } } @@ -896,13 +882,13 @@ pub fn aot_limit(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3798 = args[0].clone(); + let mut v_V3460 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t109 = v_V3798.clone(); - let __t110 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t109, __t110])? + let __t107 = v_V3460.clone(); + let __t108 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t107, __t108])? }); } } @@ -921,135 +907,135 @@ pub fn aot_symbol_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3799 = args[0].clone(); + let mut v_V3461 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t146 = { - let __t144 = { - let __t130 = v_V3799.clone(); - rt::apply_direct(interp, "boolean?", &[__t130])? + let __t144 = { + let __t142 = { + let __t128 = v_V3461.clone(); + rt::apply_direct(interp, "boolean?", &[__t128])? }; - if rt::is_truthy(interp, &__t144)? { + if rt::is_truthy(interp, &__t142)? { Value::bool(true) } else { - let __t145 = { - let __t142 = { - let __t131 = v_V3799.clone(); - rt::is_number(&__t131) + let __t143 = { + let __t140 = { + let __t129 = v_V3461.clone(); + rt::is_number(&__t129) }; - if rt::is_truthy(interp, &__t142)? { + if rt::is_truthy(interp, &__t140)? { Value::bool(true) } else { - let __t143 = { - let __t140 = { - let __t132 = v_V3799.clone(); - rt::is_string(&__t132) + let __t141 = { + let __t138 = { + let __t130 = v_V3461.clone(); + rt::is_string(&__t130) }; - if rt::is_truthy(interp, &__t140)? { + if rt::is_truthy(interp, &__t138)? { Value::bool(true) } else { - let __t141 = { - let __t138 = { - let __t133 = v_V3799.clone(); - rt::is_cons(&__t133) + let __t139 = { + let __t136 = { + let __t131 = v_V3461.clone(); + rt::is_cons(&__t131) }; - if rt::is_truthy(interp, &__t138)? { + if rt::is_truthy(interp, &__t136)? { Value::bool(true) } else { - let __t139 = { - let __t136 = { - let __t134 = v_V3799.clone(); - rt::apply_direct(interp, "empty?", &[__t134])? + let __t137 = { + let __t134 = { + let __t132 = v_V3461.clone(); + rt::apply_direct(interp, "empty?", &[__t132])? }; - if rt::is_truthy(interp, &__t136)? { + if rt::is_truthy(interp, &__t134)? { Value::bool(true) } else { - let __t137 = { - let __t135 = v_V3799.clone(); - rt::is_absvector(&__t135) + let __t135 = { + let __t133 = v_V3461.clone(); + rt::is_absvector(&__t133) }; - Value::bool(rt::is_truthy(interp, &__t137)?) + Value::bool(rt::is_truthy(interp, &__t135)?) } }; - Value::bool(rt::is_truthy(interp, &__t139)?) + Value::bool(rt::is_truthy(interp, &__t137)?) } }; - Value::bool(rt::is_truthy(interp, &__t141)?) + Value::bool(rt::is_truthy(interp, &__t139)?) } }; - Value::bool(rt::is_truthy(interp, &__t143)?) + Value::bool(rt::is_truthy(interp, &__t141)?) } }; - Value::bool(rt::is_truthy(interp, &__t145)?) + Value::bool(rt::is_truthy(interp, &__t143)?) } }; - if match rt::is_truthy(interp, &__t146) { + if match rt::is_truthy(interp, &__t144) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t129 = { - let __t114 = v_V3799.clone(); - let __t128 = { - let __t115 = Value::sym(interp.intern("{")); - let __t127 = { - let __t116 = Value::sym(interp.intern("}")); - let __t126 = { - let __t118 = { - let __t117 = Value::str(":"); - rt::apply_direct(interp, "intern", &[__t117])? + let __t127 = { + let __t112 = v_V3461.clone(); + let __t126 = { + let __t113 = Value::sym(interp.intern("{")); + let __t125 = { + let __t114 = Value::sym(interp.intern("}")); + let __t124 = { + let __t116 = { + let __t115 = Value::str(":"); + rt::apply_direct(interp, "intern", &[__t115])? }; - let __t125 = { - let __t120 = { - let __t119 = Value::str(";"); - rt::apply_direct(interp, "intern", &[__t119])? + let __t123 = { + let __t118 = { + let __t117 = Value::str(";"); + rt::apply_direct(interp, "intern", &[__t117])? }; - let __t124 = { - let __t122 = { - let __t121 = Value::str(","); - rt::apply_direct(interp, "intern", &[__t121])? + let __t122 = { + let __t120 = { + let __t119 = Value::str(","); + rt::apply_direct(interp, "intern", &[__t119])? }; - let __t123 = Value::nil(); - rt::cons(&__t122, &__t123) + let __t121 = Value::nil(); + rt::cons(&__t120, &__t121) }; - rt::cons(&__t120, &__t124) + rt::cons(&__t118, &__t122) }; - rt::cons(&__t118, &__t125) + rt::cons(&__t116, &__t123) }; - rt::cons(&__t116, &__t126) + rt::cons(&__t114, &__t124) }; - rt::cons(&__t115, &__t127) + rt::cons(&__t113, &__t125) }; - rt::apply_direct(interp, "element?", &[__t114, __t128])? + rt::apply_direct(interp, "element?", &[__t112, __t126])? }; - if match rt::is_truthy(interp, &__t129) { + if match rt::is_truthy(interp, &__t127) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t113 = Value::bool(true); - if match rt::is_truthy(interp, &__t113) { + let __t111 = Value::bool(true); + if match rt::is_truthy(interp, &__t111) { Ok(b) => b, Err(e) => break Err(e), } { break Ok( match (|| -> ShenResult { Ok({ - let v_W3800 = { - let __t111 = v_V3799.clone(); - rt::apply_direct(interp, "str", &[__t111])? + let v_W3462 = { + let __t109 = v_V3461.clone(); + rt::apply_direct(interp, "str", &[__t109])? }; { - let __t112 = v_W3800.clone(); + let __t110 = v_W3462.clone(); rt::apply_direct( interp, "shen.analyse-symbol?", - &[__t112], + &[__t110], )? } }) @@ -1061,7 +1047,7 @@ pub fn aot_symbol_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult "", 1, move |interp, args| { - let v_Z3801 = args[0].clone(); + let v_Z3463 = args[0].clone(); Ok(Value::bool(false)) }, Vec::new(), @@ -1101,54 +1087,54 @@ pub fn aot_shen_x2e_analyse_x2d_symbol_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3804 = args[0].clone(); + let mut v_V3466 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t156 = { - let __t149 = v_V3804.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t149])? + let __t154 = { + let __t147 = v_V3466.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t147])? }; - if match rt::is_truthy(interp, &__t156) { + if match rt::is_truthy(interp, &__t154) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t153 = { - let __t152 = { - let __t151 = { - let __t150 = v_V3804.clone(); - rt::apply_direct(interp, "hdstr", &[__t150])? + let __t151 = { + let __t150 = { + let __t149 = { + let __t148 = v_V3466.clone(); + rt::apply_direct(interp, "hdstr", &[__t148])? }; - rt::apply_direct(interp, "string->n", &[__t151])? + rt::apply_direct(interp, "string->n", &[__t149])? }; - rt::apply_direct(interp, "shen.alpha?", &[__t152])? + rt::apply_direct(interp, "shen.alpha?", &[__t150])? }; - if !match rt::is_truthy(interp, &__t153) { + if !match rt::is_truthy(interp, &__t151) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t155 = { - let __t154 = v_V3804.clone(); - rt::apply_direct(interp, "tlstr", &[__t154])? + let __t153 = { + let __t152 = v_V3466.clone(); + rt::apply_direct(interp, "tlstr", &[__t152])? }; - rt::apply_direct(interp, "shen.alphanums?", &[__t155])? + rt::apply_direct(interp, "shen.alphanums?", &[__t153])? }); } } } else { { - let __t148 = Value::bool(true); - if match rt::is_truthy(interp, &__t148) { + let __t146 = Value::bool(true); + if match rt::is_truthy(interp, &__t146) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t147 = Value::str("implementation error in shen.analyse-symbol?"); - rt::apply_direct(interp, "simple-error", &[__t147])? + let __t145 = Value::str("implementation error in shen.analyse-symbol?"); + rt::apply_direct(interp, "simple-error", &[__t145])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1177,66 +1163,66 @@ pub fn aot_shen_x2e_alphanums_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3807 = args[0].clone(); + let mut v_V3469 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t172 = { - let __t170 = Value::str(""); - let __t171 = v_V3807.clone(); - rt::eq(&__t170, &__t171) + let __t170 = { + let __t168 = Value::str(""); + let __t169 = v_V3469.clone(); + rt::eq(&__t168, &__t169) }; - if match rt::is_truthy(interp, &__t172) { + if match rt::is_truthy(interp, &__t170) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t169 = { - let __t159 = v_V3807.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t159])? + let __t167 = { + let __t157 = v_V3469.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t157])? }; - if match rt::is_truthy(interp, &__t169) { + if match rt::is_truthy(interp, &__t167) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W3808 = { - let __t161 = { - let __t160 = v_V3807.clone(); - rt::apply_direct(interp, "hdstr", &[__t160])? + let v_W3470 = { + let __t159 = { + let __t158 = v_V3469.clone(); + rt::apply_direct(interp, "hdstr", &[__t158])? }; - rt::apply_direct(interp, "string->n", &[__t161])? + rt::apply_direct(interp, "string->n", &[__t159])? }; { - let __t166 = { - let __t164 = { - let __t162 = v_W3808.clone(); - rt::apply_direct(interp, "shen.alpha?", &[__t162])? + let __t164 = { + let __t162 = { + let __t160 = v_W3470.clone(); + rt::apply_direct(interp, "shen.alpha?", &[__t160])? }; - if rt::is_truthy(interp, &__t164)? { + if rt::is_truthy(interp, &__t162)? { Value::bool(true) } else { - let __t165 = { - let __t163 = v_W3808.clone(); - rt::apply_direct(interp, "shen.digit?", &[__t163])? + let __t163 = { + let __t161 = v_W3470.clone(); + rt::apply_direct(interp, "shen.digit?", &[__t161])? }; - Value::bool(rt::is_truthy(interp, &__t165)?) + Value::bool(rt::is_truthy(interp, &__t163)?) } }; - if !match rt::is_truthy(interp, &__t166) { + if !match rt::is_truthy(interp, &__t164) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t168 = { - let __t167 = v_V3807.clone(); - rt::apply_direct(interp, "tlstr", &[__t167])? + let __t166 = { + let __t165 = v_V3469.clone(); + rt::apply_direct(interp, "tlstr", &[__t165])? }; - v_V3807 = __t168; + v_V3469 = __t166; continue; } } @@ -1244,15 +1230,15 @@ pub fn aot_shen_x2e_alphanums_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR } } else { { - let __t158 = Value::bool(true); - if match rt::is_truthy(interp, &__t158) { + let __t156 = Value::bool(true); + if match rt::is_truthy(interp, &__t156) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t157 = + let __t155 = Value::str("implementation error in shen.alphanums?"); - rt::apply_direct(interp, "simple-error", &[__t157])? + rt::apply_direct(interp, "simple-error", &[__t155])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1279,61 +1265,61 @@ pub fn aot_variable_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t175 = Value::bool(true); - if match rt::is_truthy(interp, &__t175) { + let __t173 = Value::bool(true); + if match rt::is_truthy(interp, &__t173) { Ok(b) => b, Err(e) => break Err(e), } { break Ok( match (|| -> ShenResult { Ok({ - let v_W3810 = { - let __t173 = v_V3809.clone(); - rt::apply_direct(interp, "str", &[__t173])? + let v_W3472 = { + let __t171 = v_V3471.clone(); + rt::apply_direct(interp, "str", &[__t171])? }; { - let __t174 = v_W3810.clone(); + let __t172 = v_W3472.clone(); rt::apply_direct( interp, "shen.analyse-variable?", - &[__t174], + &[__t172], )? } }) @@ -1345,7 +1331,7 @@ pub fn aot_variable_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult", 1, move |interp, args| { - let v_Z3811 = args[0].clone(); + let v_Z3473 = args[0].clone(); Ok(Value::bool(false)) }, Vec::new(), @@ -1383,55 +1369,55 @@ pub fn aot_shen_x2e_analyse_x2d_variable_x3f_( ))); } #[allow(unused_mut)] - let mut v_V3814 = args[0].clone(); + let mut v_V3476 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t193 = { - let __t186 = v_V3814.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t186])? + let __t191 = { + let __t184 = v_V3476.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t184])? }; - if match rt::is_truthy(interp, &__t193) { + if match rt::is_truthy(interp, &__t191) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t190 = { - let __t189 = { - let __t188 = { - let __t187 = v_V3814.clone(); - rt::apply_direct(interp, "hdstr", &[__t187])? + let __t188 = { + let __t187 = { + let __t186 = { + let __t185 = v_V3476.clone(); + rt::apply_direct(interp, "hdstr", &[__t185])? }; - rt::apply_direct(interp, "string->n", &[__t188])? + rt::apply_direct(interp, "string->n", &[__t186])? }; - rt::apply_direct(interp, "shen.uppercase?", &[__t189])? + rt::apply_direct(interp, "shen.uppercase?", &[__t187])? }; - if !match rt::is_truthy(interp, &__t190) { + if !match rt::is_truthy(interp, &__t188) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t192 = { - let __t191 = v_V3814.clone(); - rt::apply_direct(interp, "tlstr", &[__t191])? + let __t190 = { + let __t189 = v_V3476.clone(); + rt::apply_direct(interp, "tlstr", &[__t189])? }; - rt::apply_direct(interp, "shen.alphanums?", &[__t192])? + rt::apply_direct(interp, "shen.alphanums?", &[__t190])? }); } } } else { { - let __t185 = Value::bool(true); - if match rt::is_truthy(interp, &__t185) { + let __t183 = Value::bool(true); + if match rt::is_truthy(interp, &__t183) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t184 = + let __t182 = Value::str("implementation error in shen.analyse-variable?"); - rt::apply_direct(interp, "simple-error", &[__t184])? + rt::apply_direct(interp, "simple-error", &[__t182])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1463,24 +1449,24 @@ pub fn aot_gensym(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3815 = args[0].clone(); + let mut v_V3477 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t194 = v_V3815.clone(); - let __t200 = { - let __t195 = Value::sym(interp.intern("shen.*gensym*")); - let __t199 = { - let __t196 = Value::int(1i64); - let __t198 = { - let __t197 = Value::sym(interp.intern("shen.*gensym*")); - rt::apply_direct(interp, "value", &[__t197])? + let __t192 = v_V3477.clone(); + let __t198 = { + let __t193 = Value::sym(interp.intern("shen.*gensym*")); + let __t197 = { + let __t194 = Value::int(1i64); + let __t196 = { + let __t195 = Value::sym(interp.intern("shen.*gensym*")); + rt::apply_direct(interp, "value", &[__t195])? }; - rt::add(&__t196, &__t198)? + rt::add(&__t194, &__t196)? }; - rt::apply_direct(interp, "set", &[__t195, __t199])? + rt::apply_direct(interp, "set", &[__t193, __t197])? }; - rt::apply_direct(interp, "concat", &[__t194, __t200])? + rt::apply_direct(interp, "concat", &[__t192, __t198])? }); } } @@ -1499,24 +1485,24 @@ pub fn aot_concat(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3816 = args[0].clone(); + let mut v_V3478 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3817 = args[1].clone(); + let mut v_V3479 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t205 = { + let __t203 = { + let __t200 = { + let __t199 = v_V3478.clone(); + rt::apply_direct(interp, "str", &[__t199])? + }; let __t202 = { - let __t201 = v_V3816.clone(); + let __t201 = v_V3479.clone(); rt::apply_direct(interp, "str", &[__t201])? }; - let __t204 = { - let __t203 = v_V3817.clone(); - rt::apply_direct(interp, "str", &[__t203])? - }; - rt::apply_direct(interp, "cn", &[__t202, __t204])? + rt::apply_direct(interp, "cn", &[__t200, __t202])? }; - rt::apply_direct(interp, "intern", &[__t205])? + rt::apply_direct(interp, "intern", &[__t203])? }); } } @@ -1535,38 +1521,38 @@ pub fn aot__x40_p(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3818 = args[0].clone(); + let mut v_V3480 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3819 = args[1].clone(); + let mut v_V3481 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3820 = { - let __t206 = Value::int(3i64); - rt::apply_direct(interp, "absvector", &[__t206])? + let v_W3482 = { + let __t204 = Value::int(3i64); + rt::apply_direct(interp, "absvector", &[__t204])? }; { - let v_W3821 = { - let __t207 = v_W3820.clone(); - let __t208 = Value::int(0i64); - let __t209 = Value::sym(interp.intern("shen.tuple")); - rt::apply_direct(interp, "address->", &[__t207, __t208, __t209])? + let v_W3483 = { + let __t205 = v_W3482.clone(); + let __t206 = Value::int(0i64); + let __t207 = Value::sym(interp.intern("shen.tuple")); + rt::apply_direct(interp, "address->", &[__t205, __t206, __t207])? }; { - let v_W3822 = { - let __t210 = v_W3820.clone(); - let __t211 = Value::int(1i64); - let __t212 = v_V3818.clone(); - rt::apply_direct(interp, "address->", &[__t210, __t211, __t212])? + let v_W3484 = { + let __t208 = v_W3482.clone(); + let __t209 = Value::int(1i64); + let __t210 = v_V3480.clone(); + rt::apply_direct(interp, "address->", &[__t208, __t209, __t210])? }; { - let v_W3823 = { - let __t213 = v_W3820.clone(); - let __t214 = Value::int(2i64); - let __t215 = v_V3819.clone(); - rt::apply_direct(interp, "address->", &[__t213, __t214, __t215])? + let v_W3485 = { + let __t211 = v_W3482.clone(); + let __t212 = Value::int(2i64); + let __t213 = v_V3481.clone(); + rt::apply_direct(interp, "address->", &[__t211, __t212, __t213])? }; - break Ok(v_W3820.clone()); + break Ok(v_W3482.clone()); } } } @@ -1588,13 +1574,13 @@ pub fn aot_fst(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3824 = args[0].clone(); + let mut v_V3486 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t216 = v_V3824.clone(); - let __t217 = Value::int(1i64); - rt::apply_direct(interp, "<-address", &[__t216, __t217])? + let __t214 = v_V3486.clone(); + let __t215 = Value::int(1i64); + rt::apply_direct(interp, "<-address", &[__t214, __t215])? }); } } @@ -1613,13 +1599,13 @@ pub fn aot_snd(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3825 = args[0].clone(); + let mut v_V3487 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t218 = v_V3825.clone(); - let __t219 = Value::int(2i64); - rt::apply_direct(interp, "<-address", &[__t218, __t219])? + let __t216 = v_V3487.clone(); + let __t217 = Value::int(2i64); + rt::apply_direct(interp, "<-address", &[__t216, __t217])? }); } } @@ -1638,51 +1624,51 @@ pub fn aot_tuple_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3826 = args[0].clone(); + let mut v_V3488 = args[0].clone(); #[allow(clippy::never_loop)] loop { - { - let __t221 = { - let __t220 = v_V3826.clone(); - rt::is_absvector(&__t220) - }; - if !match rt::is_truthy(interp, &__t221) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Ok({ - let __t222 = Value::sym(interp.intern("shen.tuple")); - let __t225 = match (|| -> ShenResult { - Ok({ - let __t223 = v_V3826.clone(); - let __t224 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t223, __t224])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3827 = args[0].clone(); - Ok(Value::sym(interp.intern("shen.not-tuple"))) - }, - Vec::new(), - interp, - ) + break Ok( + match (|| -> ShenResult { + Ok({ + let __t223 = { + let __t218 = v_V3488.clone(); + rt::is_absvector(&__t218) + }; + if !rt::is_truthy(interp, &__t223)? { + Value::bool(false) + } else { + let __t224 = { + let __t219 = Value::sym(interp.intern("shen.tuple")); + let __t222 = { + let __t220 = v_V3488.clone(); + let __t221 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t220, __t221])? }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? - } + rt::eq(&__t219, &__t222) + }; + Value::bool(rt::is_truthy(interp, &__t224)?) + } + }) + })() { + Ok(v) => v, + Err(e) => { + let __h = { + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z3489 = args[0].clone(); + Ok(Value::bool(false)) + }, + Vec::new(), + interp, + ) }; - rt::eq(&__t222, &__t225) - }); - } - } + let __err = Value::err(e.message.clone()); + rt::apply_value(interp, __h, &[__err])? + } + }, + ); } } @@ -1700,57 +1686,57 @@ pub fn aot_append(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3832 = args[0].clone(); + let mut v_V3494 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3833 = args[1].clone(); + let mut v_V3495 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t238 = { - let __t236 = Value::nil(); - let __t237 = v_V3832.clone(); - rt::eq(&__t236, &__t237) + let __t237 = { + let __t235 = Value::nil(); + let __t236 = v_V3494.clone(); + rt::eq(&__t235, &__t236) }; - if match rt::is_truthy(interp, &__t238) { + if match rt::is_truthy(interp, &__t237) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3833.clone()); + break Ok(v_V3495.clone()); } else { { - let __t235 = { - let __t228 = v_V3832.clone(); - rt::is_cons(&__t228) + let __t234 = { + let __t227 = v_V3494.clone(); + rt::is_cons(&__t227) }; - if match rt::is_truthy(interp, &__t235) { + if match rt::is_truthy(interp, &__t234) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t230 = { - let __t229 = v_V3832.clone(); - rt::hd(&__t229)? + let __t229 = { + let __t228 = v_V3494.clone(); + rt::hd(&__t228)? }; - let __t234 = { - let __t232 = { - let __t231 = v_V3832.clone(); - rt::tl(&__t231)? + let __t233 = { + let __t231 = { + let __t230 = v_V3494.clone(); + rt::tl(&__t230)? }; - let __t233 = v_V3833.clone(); - rt::apply_direct(interp, "append", &[__t232, __t233])? + let __t232 = v_V3495.clone(); + rt::apply_direct(interp, "append", &[__t231, __t232])? }; - rt::cons(&__t230, &__t234) + rt::cons(&__t229, &__t233) }); } else { { - let __t227 = Value::bool(true); - if match rt::is_truthy(interp, &__t227) { + let __t226 = Value::bool(true); + if match rt::is_truthy(interp, &__t226) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t226 = Value::str("attempt to append a non-list"); - rt::apply_direct(interp, "simple-error", &[__t226])? + let __t225 = Value::str("attempt to append a non-list"); + rt::apply_direct(interp, "simple-error", &[__t225])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1777,53 +1763,53 @@ pub fn aot__x40_v(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3834 = args[0].clone(); + let mut v_V3496 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3835 = args[1].clone(); + let mut v_V3497 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3836 = { - let __t239 = v_V3835.clone(); - rt::apply_direct(interp, "limit", &[__t239])? + let v_W3498 = { + let __t238 = v_V3497.clone(); + rt::apply_direct(interp, "limit", &[__t238])? }; { - let v_W3837 = { - let __t242 = { - let __t240 = v_W3836.clone(); - let __t241 = Value::int(1i64); - rt::add(&__t240, &__t241)? + let v_W3499 = { + let __t241 = { + let __t239 = v_W3498.clone(); + let __t240 = Value::int(1i64); + rt::add(&__t239, &__t240)? }; - rt::apply_direct(interp, "vector", &[__t242])? + rt::apply_direct(interp, "vector", &[__t241])? }; { - let v_W3838 = { - let __t243 = v_W3837.clone(); - let __t244 = Value::int(1i64); - let __t245 = v_V3834.clone(); - rt::apply_direct(interp, "vector->", &[__t243, __t244, __t245])? + let v_W3500 = { + let __t242 = v_W3499.clone(); + let __t243 = Value::int(1i64); + let __t244 = v_V3496.clone(); + rt::apply_direct(interp, "vector->", &[__t242, __t243, __t244])? }; { - let __t248 = { - let __t246 = v_W3836.clone(); - let __t247 = Value::int(0i64); - rt::eq(&__t246, &__t247) + let __t247 = { + let __t245 = v_W3498.clone(); + let __t246 = Value::int(0i64); + rt::eq(&__t245, &__t246) }; - if match rt::is_truthy(interp, &__t248) { + if match rt::is_truthy(interp, &__t247) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_W3838.clone()); + break Ok(v_W3500.clone()); } else { break Ok({ - let __t249 = v_V3835.clone(); - let __t250 = Value::int(1i64); - let __t251 = v_W3836.clone(); - let __t252 = v_W3838.clone(); + let __t248 = v_V3497.clone(); + let __t249 = Value::int(1i64); + let __t250 = v_W3498.clone(); + let __t251 = v_W3500.clone(); rt::apply_direct( interp, "shen.@v-help", - &[__t249, __t250, __t251, __t252], + &[__t248, __t249, __t250, __t251], )? }); } @@ -1848,74 +1834,74 @@ pub fn aot_shen_x2e__x40_v_x2d_help(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V3840 = args[0].clone(); + let mut v_V3502 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3841 = args[1].clone(); + let mut v_V3503 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3842 = args[2].clone(); + let mut v_V3504 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3843 = args[3].clone(); + let mut v_V3505 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t274 = { - let __t266 = v_V3841.clone(); - let __t267 = v_V3842.clone(); - rt::eq(&__t266, &__t267) + let __t273 = { + let __t265 = v_V3503.clone(); + let __t266 = v_V3504.clone(); + rt::eq(&__t265, &__t266) }; - if match rt::is_truthy(interp, &__t274) { + if match rt::is_truthy(interp, &__t273) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t268 = v_V3840.clone(); - let __t269 = v_V3843.clone(); - let __t270 = v_V3842.clone(); - let __t273 = { - let __t271 = v_V3842.clone(); - let __t272 = Value::int(1i64); - rt::add(&__t271, &__t272)? + let __t267 = v_V3502.clone(); + let __t268 = v_V3505.clone(); + let __t269 = v_V3504.clone(); + let __t272 = { + let __t270 = v_V3504.clone(); + let __t271 = Value::int(1i64); + rt::add(&__t270, &__t271)? }; rt::apply_direct( interp, "shen.copyfromvector", - &[__t268, __t269, __t270, __t273], + &[__t267, __t268, __t269, __t272], )? }); } else { { - let __t265 = Value::bool(true); - if match rt::is_truthy(interp, &__t265) { + let __t264 = Value::bool(true); + if match rt::is_truthy(interp, &__t264) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t253 = v_V3840.clone(); - let __t256 = { - let __t254 = v_V3841.clone(); - let __t255 = Value::int(1i64); - rt::add(&__t254, &__t255)? + let __t252 = v_V3502.clone(); + let __t255 = { + let __t253 = v_V3503.clone(); + let __t254 = Value::int(1i64); + rt::add(&__t253, &__t254)? }; - let __t257 = v_V3842.clone(); - let __t264 = { - let __t258 = v_V3840.clone(); - let __t259 = v_V3843.clone(); - let __t260 = v_V3841.clone(); - let __t263 = { - let __t261 = v_V3841.clone(); - let __t262 = Value::int(1i64); - rt::add(&__t261, &__t262)? + let __t256 = v_V3504.clone(); + let __t263 = { + let __t257 = v_V3502.clone(); + let __t258 = v_V3505.clone(); + let __t259 = v_V3503.clone(); + let __t262 = { + let __t260 = v_V3503.clone(); + let __t261 = Value::int(1i64); + rt::add(&__t260, &__t261)? }; rt::apply_direct( interp, "shen.copyfromvector", - &[__t258, __t259, __t260, __t263], + &[__t257, __t258, __t259, __t262], )? }; - v_V3840 = __t253; - v_V3841 = __t256; - v_V3842 = __t257; - v_V3843 = __t264; + v_V3502 = __t252; + v_V3503 = __t255; + v_V3504 = __t256; + v_V3505 = __t263; continue; } } else { @@ -1941,40 +1927,40 @@ pub fn aot_shen_x2e_copyfromvector(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V3844 = args[0].clone(); + let mut v_V3506 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3845 = args[1].clone(); + let mut v_V3507 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3846 = args[2].clone(); + let mut v_V3508 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3847 = args[3].clone(); + let mut v_V3509 = args[3].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t275 = v_V3845.clone(); - let __t276 = v_V3847.clone(); - let __t279 = { - let __t277 = v_V3844.clone(); - let __t278 = v_V3846.clone(); - rt::apply_direct(interp, "<-vector", &[__t277, __t278])? + let __t274 = v_V3507.clone(); + let __t275 = v_V3509.clone(); + let __t278 = { + let __t276 = v_V3506.clone(); + let __t277 = v_V3508.clone(); + rt::apply_direct(interp, "<-vector", &[__t276, __t277])? }; - rt::apply_direct(interp, "vector->", &[__t275, __t276, __t279])? + rt::apply_direct(interp, "vector->", &[__t274, __t275, __t278])? }) })() { Ok(v) => v, Err(e) => { let __h = { - let v_V3845 = v_V3845.clone(); + let v_V3507 = v_V3507.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z3848 = args[0].clone(); - Ok(v_V3845.clone()) + let v_Z3510 = args[0].clone(); + Ok(v_V3507.clone()) }, - vec![v_V3845], + vec![v_V3507], interp, ) }; @@ -2000,15 +1986,15 @@ pub fn aot_hdv(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3849 = args[0].clone(); + let mut v_V3511 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t280 = v_V3849.clone(); - let __t281 = Value::int(1i64); - rt::apply_direct(interp, "<-vector", &[__t280, __t281])? + let __t279 = v_V3511.clone(); + let __t280 = Value::int(1i64); + rt::apply_direct(interp, "<-vector", &[__t279, __t280])? }) })() { Ok(v) => v, @@ -2018,11 +2004,11 @@ pub fn aot_hdv(interp: &mut Interp, args: &[Value]) -> ShenResult { "", 1, move |interp, args| { - let v_Z3850 = args[0].clone(); + let v_Z3512 = args[0].clone(); Ok({ - let __t282 = + let __t281 = Value::str("hdv needs a non-empty vector as an argument\n"); - rt::apply_direct(interp, "simple-error", &[__t282])? + rt::apply_direct(interp, "simple-error", &[__t281])? }) }, Vec::new(), @@ -2051,69 +2037,69 @@ pub fn aot_tlv(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3851 = args[0].clone(); + let mut v_V3513 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3852 = { - let __t283 = v_V3851.clone(); - rt::apply_direct(interp, "limit", &[__t283])? + let v_W3514 = { + let __t282 = v_V3513.clone(); + rt::apply_direct(interp, "limit", &[__t282])? }; { - let __t286 = { - let __t284 = v_W3852.clone(); - let __t285 = Value::int(0i64); - rt::eq(&__t284, &__t285) + let __t285 = { + let __t283 = v_W3514.clone(); + let __t284 = Value::int(0i64); + rt::eq(&__t283, &__t284) }; - if match rt::is_truthy(interp, &__t286) { + if match rt::is_truthy(interp, &__t285) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t287 = Value::str("cannot take the tail of the empty vector\n"); - rt::apply_direct(interp, "simple-error", &[__t287])? + let __t286 = Value::str("cannot take the tail of the empty vector\n"); + rt::apply_direct(interp, "simple-error", &[__t286])? }); } else { { - let __t290 = { - let __t288 = v_W3852.clone(); - let __t289 = Value::int(1i64); - rt::eq(&__t288, &__t289) + let __t289 = { + let __t287 = v_W3514.clone(); + let __t288 = Value::int(1i64); + rt::eq(&__t287, &__t288) }; - if match rt::is_truthy(interp, &__t290) { + if match rt::is_truthy(interp, &__t289) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t291 = Value::int(0i64); - rt::apply_direct(interp, "vector", &[__t291])? + let __t290 = Value::int(0i64); + rt::apply_direct(interp, "vector", &[__t290])? }); } else { { - let v_W3853 = { - let __t294 = { - let __t292 = v_W3852.clone(); - let __t293 = Value::int(1i64); - rt::sub(&__t292, &__t293)? + let v_W3515 = { + let __t293 = { + let __t291 = v_W3514.clone(); + let __t292 = Value::int(1i64); + rt::sub(&__t291, &__t292)? }; - rt::apply_direct(interp, "vector", &[__t294])? + rt::apply_direct(interp, "vector", &[__t293])? }; break Ok({ - let __t295 = v_V3851.clone(); - let __t296 = Value::int(2i64); - let __t297 = v_W3852.clone(); - let __t301 = { - let __t300 = { - let __t298 = v_W3852.clone(); - let __t299 = Value::int(1i64); - rt::sub(&__t298, &__t299)? + let __t294 = v_V3513.clone(); + let __t295 = Value::int(2i64); + let __t296 = v_W3514.clone(); + let __t300 = { + let __t299 = { + let __t297 = v_W3514.clone(); + let __t298 = Value::int(1i64); + rt::sub(&__t297, &__t298)? }; - rt::apply_direct(interp, "vector", &[__t300])? + rt::apply_direct(interp, "vector", &[__t299])? }; rt::apply_direct( interp, "shen.tlv-help", - &[__t295, __t296, __t297, __t301], + &[__t294, __t295, __t296, __t300], )? }); } @@ -2139,74 +2125,74 @@ pub fn aot_shen_x2e_tlv_x2d_help(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V3855 = args[0].clone(); + let mut v_V3517 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3856 = args[1].clone(); + let mut v_V3518 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3857 = args[2].clone(); + let mut v_V3519 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3858 = args[3].clone(); + let mut v_V3520 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t323 = { - let __t315 = v_V3856.clone(); - let __t316 = v_V3857.clone(); - rt::eq(&__t315, &__t316) + let __t322 = { + let __t314 = v_V3518.clone(); + let __t315 = v_V3519.clone(); + rt::eq(&__t314, &__t315) }; - if match rt::is_truthy(interp, &__t323) { + if match rt::is_truthy(interp, &__t322) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t317 = v_V3855.clone(); - let __t318 = v_V3858.clone(); - let __t319 = v_V3857.clone(); - let __t322 = { - let __t320 = v_V3857.clone(); - let __t321 = Value::int(1i64); - rt::sub(&__t320, &__t321)? + let __t316 = v_V3517.clone(); + let __t317 = v_V3520.clone(); + let __t318 = v_V3519.clone(); + let __t321 = { + let __t319 = v_V3519.clone(); + let __t320 = Value::int(1i64); + rt::sub(&__t319, &__t320)? }; rt::apply_direct( interp, "shen.copyfromvector", - &[__t317, __t318, __t319, __t322], + &[__t316, __t317, __t318, __t321], )? }); } else { { - let __t314 = Value::bool(true); - if match rt::is_truthy(interp, &__t314) { + let __t313 = Value::bool(true); + if match rt::is_truthy(interp, &__t313) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t302 = v_V3855.clone(); - let __t305 = { - let __t303 = v_V3856.clone(); - let __t304 = Value::int(1i64); - rt::add(&__t303, &__t304)? + let __t301 = v_V3517.clone(); + let __t304 = { + let __t302 = v_V3518.clone(); + let __t303 = Value::int(1i64); + rt::add(&__t302, &__t303)? }; - let __t306 = v_V3857.clone(); - let __t313 = { - let __t307 = v_V3855.clone(); - let __t308 = v_V3858.clone(); - let __t309 = v_V3856.clone(); - let __t312 = { - let __t310 = v_V3856.clone(); - let __t311 = Value::int(1i64); - rt::sub(&__t310, &__t311)? + let __t305 = v_V3519.clone(); + let __t312 = { + let __t306 = v_V3517.clone(); + let __t307 = v_V3520.clone(); + let __t308 = v_V3518.clone(); + let __t311 = { + let __t309 = v_V3518.clone(); + let __t310 = Value::int(1i64); + rt::sub(&__t309, &__t310)? }; rt::apply_direct( interp, "shen.copyfromvector", - &[__t307, __t308, __t309, __t312], + &[__t306, __t307, __t308, __t311], )? }; - v_V3855 = __t302; - v_V3856 = __t305; - v_V3857 = __t306; - v_V3858 = __t313; + v_V3517 = __t301; + v_V3518 = __t304; + v_V3519 = __t305; + v_V3520 = __t312; continue; } } else { @@ -2232,100 +2218,100 @@ pub fn aot_assoc(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3870 = args[0].clone(); + let mut v_V3532 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3871 = args[1].clone(); + let mut v_V3533 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t346 = { - let __t344 = Value::nil(); - let __t345 = v_V3871.clone(); - rt::eq(&__t344, &__t345) + let __t345 = { + let __t343 = Value::nil(); + let __t344 = v_V3533.clone(); + rt::eq(&__t343, &__t344) }; - if match rt::is_truthy(interp, &__t346) { + if match rt::is_truthy(interp, &__t345) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t343 = { - let __t340 = { - let __t331 = v_V3871.clone(); - rt::is_cons(&__t331) + let __t342 = { + let __t339 = { + let __t330 = v_V3533.clone(); + rt::is_cons(&__t330) }; - if !rt::is_truthy(interp, &__t340)? { + if !rt::is_truthy(interp, &__t339)? { Value::bool(false) } else { - let __t341 = { - let __t338 = { - let __t333 = { - let __t332 = v_V3871.clone(); - rt::hd(&__t332)? + let __t340 = { + let __t337 = { + let __t332 = { + let __t331 = v_V3533.clone(); + rt::hd(&__t331)? }; - rt::is_cons(&__t333) + rt::is_cons(&__t332) }; - if !rt::is_truthy(interp, &__t338)? { + if !rt::is_truthy(interp, &__t337)? { Value::bool(false) } else { - let __t339 = { - let __t334 = v_V3870.clone(); - let __t337 = { - let __t336 = { - let __t335 = v_V3871.clone(); - rt::hd(&__t335)? + let __t338 = { + let __t333 = v_V3532.clone(); + let __t336 = { + let __t335 = { + let __t334 = v_V3533.clone(); + rt::hd(&__t334)? }; - rt::hd(&__t336)? + rt::hd(&__t335)? }; - rt::eq(&__t334, &__t337) + rt::eq(&__t333, &__t336) }; - Value::bool(rt::is_truthy(interp, &__t339)?) + Value::bool(rt::is_truthy(interp, &__t338)?) } }; - Value::bool(rt::is_truthy(interp, &__t341)?) + Value::bool(rt::is_truthy(interp, &__t340)?) } }; - if match rt::is_truthy(interp, &__t343) { + if match rt::is_truthy(interp, &__t342) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t342 = v_V3871.clone(); - rt::hd(&__t342)? + let __t341 = v_V3533.clone(); + rt::hd(&__t341)? }); } else { { - let __t330 = { - let __t326 = v_V3871.clone(); - rt::is_cons(&__t326) + let __t329 = { + let __t325 = v_V3533.clone(); + rt::is_cons(&__t325) }; - if match rt::is_truthy(interp, &__t330) { + if match rt::is_truthy(interp, &__t329) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t327 = v_V3870.clone(); - let __t329 = { - let __t328 = v_V3871.clone(); - rt::tl(&__t328)? + let __t326 = v_V3532.clone(); + let __t328 = { + let __t327 = v_V3533.clone(); + rt::tl(&__t327)? }; - v_V3870 = __t327; - v_V3871 = __t329; + v_V3532 = __t326; + v_V3533 = __t328; continue; } } else { { - let __t325 = Value::bool(true); - if match rt::is_truthy(interp, &__t325) { + let __t324 = Value::bool(true); + if match rt::is_truthy(interp, &__t324) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t324 = Value::str( + let __t323 = Value::str( "attempt to search a non-list with assoc\n", ); - rt::apply_direct(interp, "simple-error", &[__t324])? + rt::apply_direct(interp, "simple-error", &[__t323])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2345,290 +2331,6 @@ fn install_assoc(interp: &mut Interp) { interp.register_aot_direct("assoc", aot_assoc); } -/// AOT-compiled from KL `(defun shen.assoc-set ...)` -pub fn aot_shen_x2e_assoc_x2d_set(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 3 { - return Err(ShenError::new(format!( - "shen.assoc-set: expected 3 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V3875 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V3876 = args[1].clone(); - #[allow(unused_mut)] - let mut v_V3877 = args[2].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t383 = { - let __t377 = Value::nil(); - let __t378 = v_V3877.clone(); - rt::eq(&__t377, &__t378) - }; - if match rt::is_truthy(interp, &__t383) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t381 = { - let __t379 = v_V3875.clone(); - let __t380 = v_V3876.clone(); - rt::cons(&__t379, &__t380) - }; - let __t382 = Value::nil(); - rt::cons(&__t381, &__t382) - }); - } else { - { - let __t376 = { - let __t367 = { - let __t358 = v_V3877.clone(); - rt::is_cons(&__t358) - }; - if !rt::is_truthy(interp, &__t367)? { - Value::bool(false) - } else { - let __t368 = { - let __t365 = { - let __t360 = { - let __t359 = v_V3877.clone(); - rt::hd(&__t359)? - }; - rt::is_cons(&__t360) - }; - if !rt::is_truthy(interp, &__t365)? { - Value::bool(false) - } else { - let __t366 = { - let __t361 = v_V3875.clone(); - let __t364 = { - let __t363 = { - let __t362 = v_V3877.clone(); - rt::hd(&__t362)? - }; - rt::hd(&__t363)? - }; - rt::eq(&__t361, &__t364) - }; - Value::bool(rt::is_truthy(interp, &__t366)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t368)?) - } - }; - if match rt::is_truthy(interp, &__t376) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t373 = { - let __t371 = { - let __t370 = { - let __t369 = v_V3877.clone(); - rt::hd(&__t369)? - }; - rt::hd(&__t370)? - }; - let __t372 = v_V3876.clone(); - rt::cons(&__t371, &__t372) - }; - let __t375 = { - let __t374 = v_V3877.clone(); - rt::tl(&__t374)? - }; - rt::cons(&__t373, &__t375) - }); - } else { - { - let __t357 = { - let __t349 = v_V3877.clone(); - rt::is_cons(&__t349) - }; - if match rt::is_truthy(interp, &__t357) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t351 = { - let __t350 = v_V3877.clone(); - rt::hd(&__t350)? - }; - let __t356 = { - let __t352 = v_V3875.clone(); - let __t353 = v_V3876.clone(); - let __t355 = { - let __t354 = v_V3877.clone(); - rt::tl(&__t354)? - }; - rt::apply_direct( - interp, - "shen.assoc-set", - &[__t352, __t353, __t355], - )? - }; - rt::cons(&__t351, &__t356) - }); - } else { - { - let __t348 = Value::bool(true); - if match rt::is_truthy(interp, &__t348) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t347 = - Value::sym(interp.intern("shen.assoc-set")); - rt::apply_direct(interp, "shen.f-error", &[__t347])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_assoc_x2d_set(interp: &mut Interp) { - interp.register_native("shen.assoc-set", 3, aot_shen_x2e_assoc_x2d_set); - interp.register_aot_direct("shen.assoc-set", aot_shen_x2e_assoc_x2d_set); -} - -/// AOT-compiled from KL `(defun shen.assoc-rm ...)` -pub fn aot_shen_x2e_assoc_x2d_rm(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.assoc-rm: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V3881 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V3882 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t409 = { - let __t407 = Value::nil(); - let __t408 = v_V3882.clone(); - rt::eq(&__t407, &__t408) - }; - if match rt::is_truthy(interp, &__t409) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::nil()); - } else { - { - let __t406 = { - let __t403 = { - let __t394 = v_V3882.clone(); - rt::is_cons(&__t394) - }; - if !rt::is_truthy(interp, &__t403)? { - Value::bool(false) - } else { - let __t404 = { - let __t401 = { - let __t396 = { - let __t395 = v_V3882.clone(); - rt::hd(&__t395)? - }; - rt::is_cons(&__t396) - }; - if !rt::is_truthy(interp, &__t401)? { - Value::bool(false) - } else { - let __t402 = { - let __t397 = v_V3881.clone(); - let __t400 = { - let __t399 = { - let __t398 = v_V3882.clone(); - rt::hd(&__t398)? - }; - rt::hd(&__t399)? - }; - rt::eq(&__t397, &__t400) - }; - Value::bool(rt::is_truthy(interp, &__t402)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t404)?) - } - }; - if match rt::is_truthy(interp, &__t406) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t405 = v_V3882.clone(); - rt::tl(&__t405)? - }); - } else { - { - let __t393 = { - let __t386 = v_V3882.clone(); - rt::is_cons(&__t386) - }; - if match rt::is_truthy(interp, &__t393) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t388 = { - let __t387 = v_V3882.clone(); - rt::hd(&__t387)? - }; - let __t392 = { - let __t389 = v_V3881.clone(); - let __t391 = { - let __t390 = v_V3882.clone(); - rt::tl(&__t390)? - }; - rt::apply_direct( - interp, - "shen.assoc-rm", - &[__t389, __t391], - )? - }; - rt::cons(&__t388, &__t392) - }); - } else { - { - let __t385 = Value::bool(true); - if match rt::is_truthy(interp, &__t385) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t384 = Value::sym(interp.intern("shen.assoc-rm")); - rt::apply_direct(interp, "shen.f-error", &[__t384])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } - } - } -} - -fn install_shen_x2e_assoc_x2d_rm(interp: &mut Interp) { - interp.register_native("shen.assoc-rm", 2, aot_shen_x2e_assoc_x2d_rm); - interp.register_aot_direct("shen.assoc-rm", aot_shen_x2e_assoc_x2d_rm); -} - /// AOT-compiled from KL `(defun boolean? ...)` pub fn aot_boolean_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { @@ -2638,36 +2340,36 @@ pub fn aot_boolean_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t413 = { - let __t411 = Value::bool(false); - let __t412 = v_V3885.clone(); - rt::eq(&__t411, &__t412) + let __t349 = { + let __t347 = Value::bool(false); + let __t348 = v_V3536.clone(); + rt::eq(&__t347, &__t348) }; - if match rt::is_truthy(interp, &__t413) { + if match rt::is_truthy(interp, &__t349) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t410 = Value::bool(true); - if match rt::is_truthy(interp, &__t410) { + let __t346 = Value::bool(true); + if match rt::is_truthy(interp, &__t346) { Ok(b) => b, Err(e) => break Err(e), } { @@ -2697,40 +2399,40 @@ pub fn aot_nl(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3886 = args[0].clone(); + let mut v_V3537 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t425 = { - let __t423 = Value::int(0i64); - let __t424 = v_V3886.clone(); - rt::eq(&__t423, &__t424) + let __t361 = { + let __t359 = Value::int(0i64); + let __t360 = v_V3537.clone(); + rt::eq(&__t359, &__t360) }; - if match rt::is_truthy(interp, &__t425) { + if match rt::is_truthy(interp, &__t361) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t422 = Value::bool(true); - if match rt::is_truthy(interp, &__t422) { + let __t358 = Value::bool(true); + if match rt::is_truthy(interp, &__t358) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t417 = Value::str("\n"); - let __t418 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t417, __t418])? + let __t353 = Value::str("\n"); + let __t354 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t353, __t354])? }; { - let __t421 = { - let __t419 = v_V3886.clone(); - let __t420 = Value::int(1i64); - rt::sub(&__t419, &__t420)? + let __t357 = { + let __t355 = v_V3537.clone(); + let __t356 = Value::int(1i64); + rt::sub(&__t355, &__t356)? }; - v_V3886 = __t421; + v_V3537 = __t357; continue; } } @@ -2757,85 +2459,85 @@ pub fn aot_difference(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3893 = args[0].clone(); + let mut v_V3544 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3894 = args[1].clone(); + let mut v_V3545 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t445 = { - let __t443 = Value::nil(); - let __t444 = v_V3893.clone(); - rt::eq(&__t443, &__t444) + let __t381 = { + let __t379 = Value::nil(); + let __t380 = v_V3544.clone(); + rt::eq(&__t379, &__t380) }; - if match rt::is_truthy(interp, &__t445) { + if match rt::is_truthy(interp, &__t381) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t442 = { - let __t428 = v_V3893.clone(); - rt::is_cons(&__t428) + let __t378 = { + let __t364 = v_V3544.clone(); + rt::is_cons(&__t364) }; - if match rt::is_truthy(interp, &__t442) { + if match rt::is_truthy(interp, &__t378) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t432 = { - let __t430 = { - let __t429 = v_V3893.clone(); - rt::hd(&__t429)? + let __t368 = { + let __t366 = { + let __t365 = v_V3544.clone(); + rt::hd(&__t365)? }; - let __t431 = v_V3894.clone(); - rt::apply_direct(interp, "element?", &[__t430, __t431])? + let __t367 = v_V3545.clone(); + rt::apply_direct(interp, "element?", &[__t366, __t367])? }; - if match rt::is_truthy(interp, &__t432) { + if match rt::is_truthy(interp, &__t368) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t434 = { - let __t433 = v_V3893.clone(); - rt::tl(&__t433)? + let __t370 = { + let __t369 = v_V3544.clone(); + rt::tl(&__t369)? }; - let __t435 = v_V3894.clone(); - v_V3893 = __t434; - v_V3894 = __t435; + let __t371 = v_V3545.clone(); + v_V3544 = __t370; + v_V3545 = __t371; continue; } } else { break Ok({ - let __t437 = { - let __t436 = v_V3893.clone(); - rt::hd(&__t436)? + let __t373 = { + let __t372 = v_V3544.clone(); + rt::hd(&__t372)? }; - let __t441 = { - let __t439 = { - let __t438 = v_V3893.clone(); - rt::tl(&__t438)? + let __t377 = { + let __t375 = { + let __t374 = v_V3544.clone(); + rt::tl(&__t374)? }; - let __t440 = v_V3894.clone(); - rt::apply_direct(interp, "difference", &[__t439, __t440])? + let __t376 = v_V3545.clone(); + rt::apply_direct(interp, "difference", &[__t375, __t376])? }; - rt::cons(&__t437, &__t441) + rt::cons(&__t373, &__t377) }); } } } else { { - let __t427 = Value::bool(true); - if match rt::is_truthy(interp, &__t427) { + let __t363 = Value::bool(true); + if match rt::is_truthy(interp, &__t363) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t426 = Value::str( + let __t362 = Value::str( "attempt to find the difference with a non-list\n", ); - rt::apply_direct(interp, "simple-error", &[__t426])? + rt::apply_direct(interp, "simple-error", &[__t362])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2862,12 +2564,12 @@ pub fn aot_do(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3895 = args[0].clone(); + let mut v_V3546 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3896 = args[1].clone(); + let mut v_V3547 = args[1].clone(); #[allow(clippy::never_loop)] loop { - break Ok(v_V3896.clone()); + break Ok(v_V3547.clone()); } } @@ -2885,80 +2587,80 @@ pub fn aot_element_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t459 = { - let __t457 = { - let __t453 = v_V3909.clone(); - rt::is_cons(&__t453) + let __t395 = { + let __t393 = { + let __t389 = v_V3560.clone(); + rt::is_cons(&__t389) }; - if !rt::is_truthy(interp, &__t457)? { + if !rt::is_truthy(interp, &__t393)? { Value::bool(false) } else { - let __t458 = { - let __t454 = v_V3908.clone(); - let __t456 = { - let __t455 = v_V3909.clone(); - rt::hd(&__t455)? + let __t394 = { + let __t390 = v_V3559.clone(); + let __t392 = { + let __t391 = v_V3560.clone(); + rt::hd(&__t391)? }; - rt::eq(&__t454, &__t456) + rt::eq(&__t390, &__t392) }; - Value::bool(rt::is_truthy(interp, &__t458)?) + Value::bool(rt::is_truthy(interp, &__t394)?) } }; - if match rt::is_truthy(interp, &__t459) { + if match rt::is_truthy(interp, &__t395) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t452 = { - let __t448 = v_V3909.clone(); - rt::is_cons(&__t448) + let __t388 = { + let __t384 = v_V3560.clone(); + rt::is_cons(&__t384) }; - if match rt::is_truthy(interp, &__t452) { + if match rt::is_truthy(interp, &__t388) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t449 = v_V3908.clone(); - let __t451 = { - let __t450 = v_V3909.clone(); - rt::tl(&__t450)? + let __t385 = v_V3559.clone(); + let __t387 = { + let __t386 = v_V3560.clone(); + rt::tl(&__t386)? }; - v_V3908 = __t449; - v_V3909 = __t451; + v_V3559 = __t385; + v_V3560 = __t387; continue; } } else { { - let __t447 = Value::bool(true); - if match rt::is_truthy(interp, &__t447) { + let __t383 = Value::bool(true); + if match rt::is_truthy(interp, &__t383) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t446 = Value::str( + let __t382 = Value::str( "attempt to find an element in a non-list\n", ); - rt::apply_direct(interp, "simple-error", &[__t446])? + rt::apply_direct(interp, "simple-error", &[__t382])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2987,24 +2689,24 @@ pub fn aot_empty_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V3912 = args[0].clone(); + let mut v_V3563 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t466 = { - let __t464 = Value::nil(); - let __t465 = v_V3912.clone(); - rt::eq(&__t464, &__t465) + let __t402 = { + let __t400 = Value::nil(); + let __t401 = v_V3563.clone(); + rt::eq(&__t400, &__t401) }; - if match rt::is_truthy(interp, &__t466) { + if match rt::is_truthy(interp, &__t402) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t463 = Value::bool(true); - if match rt::is_truthy(interp, &__t463) { + let __t399 = Value::bool(true); + if match rt::is_truthy(interp, &__t399) { Ok(b) => b, Err(e) => break Err(e), } { @@ -3032,19 +2734,19 @@ pub fn aot_fix(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3913 = args[0].clone(); + let mut v_V3564 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3914 = args[1].clone(); + let mut v_V3565 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t467 = v_V3913.clone(); - let __t468 = v_V3914.clone(); - let __t470 = { - let __t469 = v_V3914.clone(); - rt::apply_value(interp, v_V3913.clone(), &[__t469])? + let __t403 = v_V3564.clone(); + let __t404 = v_V3565.clone(); + let __t406 = { + let __t405 = v_V3565.clone(); + rt::apply_value(interp, v_V3564.clone(), &[__t405])? }; - rt::apply_direct(interp, "shen.fix-help", &[__t467, __t468, __t470])? + rt::apply_direct(interp, "shen.fix-help", &[__t403, __t404, __t406])? }); } } @@ -3063,41 +2765,41 @@ pub fn aot_shen_x2e_fix_x2d_help(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V3920 = args[0].clone(); + let mut v_V3571 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3921 = args[1].clone(); + let mut v_V3572 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3922 = args[2].clone(); + let mut v_V3573 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t478 = { - let __t476 = v_V3921.clone(); - let __t477 = v_V3922.clone(); - rt::eq(&__t476, &__t477) + let __t414 = { + let __t412 = v_V3572.clone(); + let __t413 = v_V3573.clone(); + rt::eq(&__t412, &__t413) }; - if match rt::is_truthy(interp, &__t478) { + if match rt::is_truthy(interp, &__t414) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3922.clone()); + break Ok(v_V3573.clone()); } else { { - let __t475 = Value::bool(true); - if match rt::is_truthy(interp, &__t475) { + let __t411 = Value::bool(true); + if match rt::is_truthy(interp, &__t411) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t471 = v_V3920.clone(); - let __t472 = v_V3922.clone(); - let __t474 = { - let __t473 = v_V3922.clone(); - rt::apply_value(interp, v_V3920.clone(), &[__t473])? + let __t407 = v_V3571.clone(); + let __t408 = v_V3573.clone(); + let __t410 = { + let __t409 = v_V3573.clone(); + rt::apply_value(interp, v_V3571.clone(), &[__t409])? }; - v_V3920 = __t471; - v_V3921 = __t472; - v_V3922 = __t474; + v_V3571 = __t407; + v_V3572 = __t408; + v_V3573 = __t410; continue; } } else { @@ -3123,56 +2825,68 @@ pub fn aot_put(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3923 = args[0].clone(); + let mut v_V3574 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3924 = args[1].clone(); + let mut v_V3575 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3925 = args[2].clone(); + let mut v_V3576 = args[2].clone(); #[allow(unused_mut)] - let mut v_V3926 = args[3].clone(); + let mut v_V3577 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3927 = match (|| -> ShenResult { - Ok({ - let __t479 = v_V3926.clone(); - let __t480 = v_V3923.clone(); - rt::apply_direct(interp, "shen.<-dict", &[__t479, __t480])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3928 = args[0].clone(); - Ok(Value::nil()) - }, - Vec::new(), - interp, - ) - }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? - } + let v_W3578 = { + let __t415 = v_V3574.clone(); + let __t417 = { + let __t416 = v_V3577.clone(); + rt::apply_direct(interp, "limit", &[__t416])? + }; + rt::apply_direct(interp, "hash", &[__t415, __t417])? }; { - let v_W3929 = { - let __t481 = v_V3924.clone(); - let __t482 = v_V3925.clone(); - let __t483 = v_W3927.clone(); - rt::apply_direct(interp, "shen.assoc-set", &[__t481, __t482, __t483])? + let v_W3579 = match (|| -> ShenResult { + Ok({ + let __t418 = v_V3577.clone(); + let __t419 = v_W3578.clone(); + rt::apply_direct(interp, "<-vector", &[__t418, __t419])? + }) + })() { + Ok(v) => v, + Err(e) => { + let __h = { + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z3580 = args[0].clone(); + Ok(Value::nil()) + }, + Vec::new(), + interp, + ) + }; + let __err = Value::err(e.message.clone()); + rt::apply_value(interp, __h, &[__err])? + } }; { - let v_W3930 = { - let __t484 = v_V3926.clone(); - let __t485 = v_V3923.clone(); - let __t486 = v_W3929.clone(); - rt::apply_direct(interp, "shen.dict->", &[__t484, __t485, __t486])? + let v_W3581 = { + let __t420 = v_V3577.clone(); + let __t421 = v_W3578.clone(); + let __t426 = { + let __t422 = v_V3574.clone(); + let __t423 = v_V3575.clone(); + let __t424 = v_V3576.clone(); + let __t425 = v_W3579.clone(); + rt::apply_direct( + interp, + "shen.change-pointer-value", + &[__t422, __t423, __t424, __t425], + )? + }; + rt::apply_direct(interp, "vector->", &[__t420, __t421, __t426])? }; - break Ok(v_V3925.clone()); + break Ok(v_V3576.clone()); } } } @@ -3193,62 +2907,587 @@ pub fn aot_unput(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3931 = args[0].clone(); + let mut v_V3582 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3932 = args[1].clone(); + let mut v_V3583 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3933 = args[2].clone(); + let mut v_V3584 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3934 = match (|| -> ShenResult { - Ok({ - let __t487 = v_V3933.clone(); - let __t488 = v_V3931.clone(); - rt::apply_direct(interp, "shen.<-dict", &[__t487, __t488])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3935 = args[0].clone(); - Ok(Value::nil()) - }, - Vec::new(), - interp, - ) + let v_W3585 = { + let __t427 = v_V3582.clone(); + let __t429 = { + let __t428 = v_V3584.clone(); + rt::apply_direct(interp, "limit", &[__t428])? + }; + rt::apply_direct(interp, "hash", &[__t427, __t429])? + }; + { + let v_W3586 = match (|| -> ShenResult { + Ok({ + let __t430 = v_V3584.clone(); + let __t431 = v_W3585.clone(); + rt::apply_direct(interp, "<-vector", &[__t430, __t431])? + }) + })() { + Ok(v) => v, + Err(e) => { + let __h = { + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z3587 = args[0].clone(); + Ok(Value::nil()) + }, + Vec::new(), + interp, + ) + }; + let __err = Value::err(e.message.clone()); + rt::apply_value(interp, __h, &[__err])? + } + }; + { + let v_W3588 = { + let __t432 = v_V3584.clone(); + let __t433 = v_W3585.clone(); + let __t437 = { + let __t434 = v_V3582.clone(); + let __t435 = v_V3583.clone(); + let __t436 = v_W3586.clone(); + rt::apply_direct( + interp, + "shen.remove-pointer", + &[__t434, __t435, __t436], + )? + }; + rt::apply_direct(interp, "vector->", &[__t432, __t433, __t437])? }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? + break Ok(v_V3582.clone()); } + } + } + } +} + +fn install_unput(interp: &mut Interp) { + interp.register_native("unput", 3, aot_unput); + interp.register_aot_direct("unput", aot_unput); +} + +/// AOT-compiled from KL `(defun shen.remove-pointer ...)` +pub fn aot_shen_x2e_remove_x2d_pointer(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 3 { + return Err(ShenError::new(format!( + "shen.remove-pointer: expected 3 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V3599 = args[0].clone(); + #[allow(unused_mut)] + let mut v_V3600 = args[1].clone(); + #[allow(unused_mut)] + let mut v_V3601 = args[2].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t492 = { + let __t490 = Value::nil(); + let __t491 = v_V3601.clone(); + rt::eq(&__t490, &__t491) + }; + if match rt::is_truthy(interp, &__t492) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::nil()); + } else { + { + let __t489 = { + let __t486 = { + let __t449 = v_V3601.clone(); + rt::is_cons(&__t449) + }; + if !rt::is_truthy(interp, &__t486)? { + Value::bool(false) + } else { + let __t487 = { + let __t484 = { + let __t451 = { + let __t450 = v_V3601.clone(); + rt::hd(&__t450)? + }; + rt::is_cons(&__t451) + }; + if !rt::is_truthy(interp, &__t484)? { + Value::bool(false) + } else { + let __t485 = { + let __t482 = { + let __t454 = { + let __t453 = { + let __t452 = v_V3601.clone(); + rt::hd(&__t452)? + }; + rt::hd(&__t453)? + }; + rt::is_cons(&__t454) + }; + if !rt::is_truthy(interp, &__t482)? { + Value::bool(false) + } else { + let __t483 = { + let __t480 = { + let __t458 = { + let __t457 = { + let __t456 = { + let __t455 = v_V3601.clone(); + rt::hd(&__t455)? + }; + rt::hd(&__t456)? + }; + rt::tl(&__t457)? + }; + rt::is_cons(&__t458) + }; + if !rt::is_truthy(interp, &__t480)? { + Value::bool(false) + } else { + let __t481 = { + let __t478 = { + let __t459 = Value::nil(); + let __t464 = { + let __t463 = { + let __t462 = { + let __t461 = { + let __t460 = + v_V3601.clone(); + rt::hd(&__t460)? + }; + rt::hd(&__t461)? + }; + rt::tl(&__t462)? + }; + rt::tl(&__t463)? + }; + rt::eq(&__t459, &__t464) + }; + if !rt::is_truthy(interp, &__t478)? { + Value::bool(false) + } else { + let __t479 = { + let __t476 = { + let __t465 = v_V3600.clone(); + let __t470 = { + let __t469 = { + let __t468 = { + let __t467 = { + let __t466 = + v_V3601 + .clone( + ); + rt::hd(&__t466)? + }; + rt::hd(&__t467)? + }; + rt::tl(&__t468)? + }; + rt::hd(&__t469)? + }; + rt::eq(&__t465, &__t470) + }; + if !rt::is_truthy(interp, &__t476)? + { + Value::bool(false) + } else { + let __t477 = { + let __t471 = + v_V3599.clone(); + let __t475 = { + let __t474 = { + let __t473 = { + let __t472 = + v_V3601 + .clone( + ); + rt::hd(&__t472)? + }; + rt::hd(&__t473)? + }; + rt::hd(&__t474)? + }; + rt::eq(&__t471, &__t475) + }; + Value::bool(rt::is_truthy( + interp, &__t477, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t479, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t481)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t483)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t485)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t487)?) + } + }; + if match rt::is_truthy(interp, &__t489) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t488 = v_V3601.clone(); + rt::tl(&__t488)? + }); + } else { + { + let __t448 = { + let __t440 = v_V3601.clone(); + rt::is_cons(&__t440) + }; + if match rt::is_truthy(interp, &__t448) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t442 = { + let __t441 = v_V3601.clone(); + rt::hd(&__t441)? + }; + let __t447 = { + let __t443 = v_V3599.clone(); + let __t444 = v_V3600.clone(); + let __t446 = { + let __t445 = v_V3601.clone(); + rt::tl(&__t445)? + }; + rt::apply_direct( + interp, + "shen.remove-pointer", + &[__t443, __t444, __t446], + )? + }; + rt::cons(&__t442, &__t447) + }); + } else { + { + let __t439 = Value::bool(true); + if match rt::is_truthy(interp, &__t439) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t438 = Value::str( + "implementation error in shen.remove-pointer", + ); + rt::apply_direct(interp, "simple-error", &[__t438])? + }); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } + } + } + } + } +} + +fn install_shen_x2e_remove_x2d_pointer(interp: &mut Interp) { + interp.register_native("shen.remove-pointer", 3, aot_shen_x2e_remove_x2d_pointer); + interp.register_aot_direct("shen.remove-pointer", aot_shen_x2e_remove_x2d_pointer); +} + +/// AOT-compiled from KL `(defun shen.change-pointer-value ...)` +pub fn aot_shen_x2e_change_x2d_pointer_x2d_value( + interp: &mut Interp, + args: &[Value], +) -> ShenResult { + if args.len() != 4 { + return Err(ShenError::new(format!( + "shen.change-pointer-value: expected 4 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V3614 = args[0].clone(); + #[allow(unused_mut)] + let mut v_V3615 = args[1].clone(); + #[allow(unused_mut)] + let mut v_V3616 = args[2].clone(); + #[allow(unused_mut)] + let mut v_V3617 = args[3].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t562 = { + let __t552 = Value::nil(); + let __t553 = v_V3617.clone(); + rt::eq(&__t552, &__t553) }; - { - let v_W3936 = { - let __t489 = v_V3932.clone(); - let __t490 = v_W3934.clone(); - rt::apply_direct(interp, "shen.assoc-rm", &[__t489, __t490])? - }; + if match rt::is_truthy(interp, &__t562) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t560 = { + let __t558 = { + let __t554 = v_V3614.clone(); + let __t557 = { + let __t555 = v_V3615.clone(); + let __t556 = Value::nil(); + rt::cons(&__t555, &__t556) + }; + rt::cons(&__t554, &__t557) + }; + let __t559 = v_V3616.clone(); + rt::cons(&__t558, &__t559) + }; + let __t561 = Value::nil(); + rt::cons(&__t560, &__t561) + }); + } else { { - let v_W3937 = { - let __t491 = v_V3933.clone(); - let __t492 = v_V3931.clone(); - let __t493 = v_W3936.clone(); - rt::apply_direct(interp, "shen.dict->", &[__t491, __t492, __t493])? + let __t551 = { + let __t542 = { + let __t505 = v_V3617.clone(); + rt::is_cons(&__t505) + }; + if !rt::is_truthy(interp, &__t542)? { + Value::bool(false) + } else { + let __t543 = { + let __t540 = { + let __t507 = { + let __t506 = v_V3617.clone(); + rt::hd(&__t506)? + }; + rt::is_cons(&__t507) + }; + if !rt::is_truthy(interp, &__t540)? { + Value::bool(false) + } else { + let __t541 = { + let __t538 = { + let __t510 = { + let __t509 = { + let __t508 = v_V3617.clone(); + rt::hd(&__t508)? + }; + rt::hd(&__t509)? + }; + rt::is_cons(&__t510) + }; + if !rt::is_truthy(interp, &__t538)? { + Value::bool(false) + } else { + let __t539 = { + let __t536 = { + let __t514 = { + let __t513 = { + let __t512 = { + let __t511 = v_V3617.clone(); + rt::hd(&__t511)? + }; + rt::hd(&__t512)? + }; + rt::tl(&__t513)? + }; + rt::is_cons(&__t514) + }; + if !rt::is_truthy(interp, &__t536)? { + Value::bool(false) + } else { + let __t537 = { + let __t534 = { + let __t515 = Value::nil(); + let __t520 = { + let __t519 = { + let __t518 = { + let __t517 = { + let __t516 = + v_V3617.clone(); + rt::hd(&__t516)? + }; + rt::hd(&__t517)? + }; + rt::tl(&__t518)? + }; + rt::tl(&__t519)? + }; + rt::eq(&__t515, &__t520) + }; + if !rt::is_truthy(interp, &__t534)? { + Value::bool(false) + } else { + let __t535 = { + let __t532 = { + let __t521 = v_V3615.clone(); + let __t526 = { + let __t525 = { + let __t524 = { + let __t523 = { + let __t522 = + v_V3617 + .clone( + ); + rt::hd(&__t522)? + }; + rt::hd(&__t523)? + }; + rt::tl(&__t524)? + }; + rt::hd(&__t525)? + }; + rt::eq(&__t521, &__t526) + }; + if !rt::is_truthy(interp, &__t532)? + { + Value::bool(false) + } else { + let __t533 = { + let __t527 = + v_V3614.clone(); + let __t531 = { + let __t530 = { + let __t529 = { + let __t528 = + v_V3617 + .clone( + ); + rt::hd(&__t528)? + }; + rt::hd(&__t529)? + }; + rt::hd(&__t530)? + }; + rt::eq(&__t527, &__t531) + }; + Value::bool(rt::is_truthy( + interp, &__t533, + )?) + } + }; + Value::bool(rt::is_truthy( + interp, &__t535, + )?) + } + }; + Value::bool(rt::is_truthy(interp, &__t537)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t539)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t541)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t543)?) + } }; - break Ok(v_V3931.clone()); + if match rt::is_truthy(interp, &__t551) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t548 = { + let __t546 = { + let __t545 = { + let __t544 = v_V3617.clone(); + rt::hd(&__t544)? + }; + rt::hd(&__t545)? + }; + let __t547 = v_V3616.clone(); + rt::cons(&__t546, &__t547) + }; + let __t550 = { + let __t549 = v_V3617.clone(); + rt::tl(&__t549)? + }; + rt::cons(&__t548, &__t550) + }); + } else { + { + let __t504 = { + let __t495 = v_V3617.clone(); + rt::is_cons(&__t495) + }; + if match rt::is_truthy(interp, &__t504) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t497 = { + let __t496 = v_V3617.clone(); + rt::hd(&__t496)? + }; + let __t503 = { + let __t498 = v_V3614.clone(); + let __t499 = v_V3615.clone(); + let __t500 = v_V3616.clone(); + let __t502 = { + let __t501 = v_V3617.clone(); + rt::tl(&__t501)? + }; + rt::apply_direct( + interp, + "shen.change-pointer-value", + &[__t498, __t499, __t500, __t502], + )? + }; + rt::cons(&__t497, &__t503) + }); + } else { + { + let __t494 = Value::bool(true); + if match rt::is_truthy(interp, &__t494) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t493 = Value::str( + "implementation error in shen.change-pointer-value", + ); + rt::apply_direct(interp, "simple-error", &[__t493])? + }); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } } } } } } -fn install_unput(interp: &mut Interp) { - interp.register_native("unput", 3, aot_unput); - interp.register_aot_direct("unput", aot_unput); +fn install_shen_x2e_change_x2d_pointer_x2d_value(interp: &mut Interp) { + interp.register_native( + "shen.change-pointer-value", + 4, + aot_shen_x2e_change_x2d_pointer_x2d_value, + ); + interp.register_aot_direct( + "shen.change-pointer-value", + aot_shen_x2e_change_x2d_pointer_x2d_value, + ); } /// AOT-compiled from KL `(defun get ...)` @@ -3260,112 +3499,135 @@ pub fn aot_get(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3938 = args[0].clone(); + let mut v_V3618 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3939 = args[1].clone(); + let mut v_V3619 = args[1].clone(); #[allow(unused_mut)] - let mut v_V3940 = args[2].clone(); + let mut v_V3620 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3941 = match (|| -> ShenResult { - Ok({ - let __t494 = v_V3940.clone(); - let __t495 = v_V3938.clone(); - rt::apply_direct(interp, "shen.<-dict", &[__t494, __t495])? - }) - })() { - Ok(v) => v, - Err(e) => { - let __h = { - let v_V3938 = v_V3938.clone(); - let v_V3939 = v_V3939.clone(); - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z3942 = args[0].clone(); - Ok({ - let __t504 = { - let __t496 = v_V3938.clone(); - let __t502 = { - let __t497 = Value::str(" has no attributes: "); - let __t501 = { - let __t498 = v_V3939.clone(); - let __t499 = Value::str("\n"); - let __t500 = Value::sym(interp.intern("shen.s")); + let v_W3621 = { + let __t563 = v_V3618.clone(); + let __t565 = { + let __t564 = v_V3620.clone(); + rt::apply_direct(interp, "limit", &[__t564])? + }; + rt::apply_direct(interp, "hash", &[__t563, __t565])? + }; + { + let v_W3622 = match (|| -> ShenResult { + Ok({ + let __t566 = v_V3620.clone(); + let __t567 = v_W3621.clone(); + rt::apply_direct(interp, "<-vector", &[__t566, __t567])? + }) + })() { + Ok(v) => v, + Err(e) => { + let __h = { + let v_V3618 = v_V3618.clone(); + let v_V3619 = v_V3619.clone(); + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z3623 = args[0].clone(); + Ok({ + let __t576 = { + let __t568 = v_V3618.clone(); + let __t574 = { + let __t569 = Value::str(" has no attributes: "); + let __t573 = { + let __t570 = v_V3619.clone(); + let __t571 = Value::str("\n"); + let __t572 = + Value::sym(interp.intern("shen.s")); + rt::apply_direct( + interp, + "shen.app", + &[__t570, __t571, __t572], + )? + }; + rt::apply_direct(interp, "cn", &[__t569, __t573])? + }; + let __t575 = Value::sym(interp.intern("shen.a")); + rt::apply_direct( + interp, + "shen.app", + &[__t568, __t574, __t575], + )? + }; + rt::apply_direct(interp, "simple-error", &[__t576])? + }) + }, + vec![v_V3618, v_V3619], + interp, + ) + }; + let __err = Value::err(e.message.clone()); + rt::apply_value(interp, __h, &[__err])? + } + }; + { + let v_W3624 = { + let __t581 = { + let __t577 = v_V3618.clone(); + let __t580 = { + let __t578 = v_V3619.clone(); + let __t579 = Value::nil(); + rt::cons(&__t578, &__t579) + }; + rt::cons(&__t577, &__t580) + }; + let __t582 = v_W3622.clone(); + rt::apply_direct(interp, "assoc", &[__t581, __t582])? + }; + { + let __t584 = { + let __t583 = v_W3624.clone(); + rt::apply_direct(interp, "empty?", &[__t583])? + }; + if match rt::is_truthy(interp, &__t584) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t595 = { + let __t585 = Value::str("attribute "); + let __t594 = { + let __t586 = v_V3619.clone(); + let __t592 = { + let __t587 = Value::str(" not found for "); + let __t591 = { + let __t588 = v_V3618.clone(); + let __t589 = Value::str("\n"); + let __t590 = Value::sym(interp.intern("shen.s")); rt::apply_direct( interp, "shen.app", - &[__t498, __t499, __t500], + &[__t588, __t589, __t590], )? }; - rt::apply_direct(interp, "cn", &[__t497, __t501])? + rt::apply_direct(interp, "cn", &[__t587, __t591])? }; - let __t503 = Value::sym(interp.intern("shen.a")); + let __t593 = Value::sym(interp.intern("shen.s")); rt::apply_direct( interp, "shen.app", - &[__t496, __t502, __t503], + &[__t586, __t592, __t593], )? }; - rt::apply_direct(interp, "simple-error", &[__t504])? - }) - }, - vec![v_V3938, v_V3939], - interp, - ) - }; - let __err = Value::err(e.message.clone()); - rt::apply_value(interp, __h, &[__err])? - } - }; - { - let v_W3943 = { - let __t505 = v_V3939.clone(); - let __t506 = v_W3941.clone(); - rt::apply_direct(interp, "assoc", &[__t505, __t506])? - }; - { - let __t508 = { - let __t507 = v_W3943.clone(); - rt::apply_direct(interp, "empty?", &[__t507])? - }; - if match rt::is_truthy(interp, &__t508) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t519 = { - let __t509 = Value::str("attribute "); - let __t518 = { - let __t510 = v_V3939.clone(); - let __t516 = { - let __t511 = Value::str(" not found for "); - let __t515 = { - let __t512 = v_V3938.clone(); - let __t513 = Value::str("\n"); - let __t514 = Value::sym(interp.intern("shen.s")); - rt::apply_direct( - interp, - "shen.app", - &[__t512, __t513, __t514], - )? - }; - rt::apply_direct(interp, "cn", &[__t511, __t515])? - }; - let __t517 = Value::sym(interp.intern("shen.s")); - rt::apply_direct(interp, "shen.app", &[__t510, __t516, __t517])? + rt::apply_direct(interp, "cn", &[__t585, __t594])? }; - rt::apply_direct(interp, "cn", &[__t509, __t518])? - }; - rt::apply_direct(interp, "simple-error", &[__t519])? - }); - } else { - break Ok({ - let __t520 = v_W3943.clone(); - rt::tl(&__t520)? - }); + rt::apply_direct(interp, "simple-error", &[__t595])? + }); + } else { + break Ok({ + let __t596 = v_W3624.clone(); + rt::tl(&__t596)? + }); + } } } } @@ -3387,33 +3649,33 @@ pub fn aot_hash(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3944 = args[0].clone(); + let mut v_V3625 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3945 = args[1].clone(); + let mut v_V3626 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W3946 = { - let __t522 = { - let __t521 = v_V3944.clone(); - rt::apply_direct(interp, "shen.hashkey", &[__t521])? + let v_W3627 = { + let __t598 = { + let __t597 = v_V3625.clone(); + rt::apply_direct(interp, "shen.hashkey", &[__t597])? }; - let __t523 = v_V3945.clone(); - rt::apply_direct(interp, "shen.mod", &[__t522, __t523])? + let __t599 = v_V3626.clone(); + rt::apply_direct(interp, "shen.mod", &[__t598, __t599])? }; { - let __t526 = { - let __t524 = v_W3946.clone(); - let __t525 = Value::int(0i64); - rt::eq(&__t524, &__t525) + let __t602 = { + let __t600 = v_W3627.clone(); + let __t601 = Value::int(0i64); + rt::eq(&__t600, &__t601) }; - if match rt::is_truthy(interp, &__t526) { + if match rt::is_truthy(interp, &__t602) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(1i64)); } else { - break Ok(v_W3946.clone()); + break Ok(v_W3627.clone()); } } } @@ -3434,36 +3696,36 @@ pub fn aot_shen_x2e_hashkey(interp: &mut Interp, args: &[Value]) -> ShenResult", 1, move |interp, args| { - let v_Z3949 = args[0].clone(); + let v_Z3630 = args[0].clone(); Ok({ - let __t527 = v_Z3949.clone(); - rt::apply_direct(interp, "string->n", &[__t527])? + let __t603 = v_Z3630.clone(); + rt::apply_direct(interp, "string->n", &[__t603])? }) }, Vec::new(), interp, ) }; - let __t530 = { - let __t529 = v_V3947.clone(); - rt::apply_direct(interp, "explode", &[__t529])? + let __t606 = { + let __t605 = v_V3628.clone(); + rt::apply_direct(interp, "explode", &[__t605])? }; - rt::apply_direct(interp, "map", &[__t528, __t530])? + rt::apply_direct(interp, "map", &[__t604, __t606])? }; break Ok({ - let __t531 = v_W3948.clone(); - let __t532 = Value::int(1i64); - rt::apply_direct(interp, "shen.prodbutzero", &[__t531, __t532])? + let __t607 = v_W3629.clone(); + let __t608 = Value::int(1i64); + rt::apply_direct(interp, "shen.prodbutzero", &[__t607, __t608])? }); } } @@ -3483,125 +3745,125 @@ pub fn aot_shen_x2e_prodbutzero(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V3950 = args[0].clone(); + let mut v_V3631 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3951 = args[1].clone(); + let mut v_V3632 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t564 = { - let __t562 = Value::nil(); - let __t563 = v_V3950.clone(); - rt::eq(&__t562, &__t563) + let __t640 = { + let __t638 = Value::nil(); + let __t639 = v_V3631.clone(); + rt::eq(&__t638, &__t639) }; - if match rt::is_truthy(interp, &__t564) { + if match rt::is_truthy(interp, &__t640) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3951.clone()); + break Ok(v_V3632.clone()); } else { { - let __t561 = { - let __t556 = { - let __t552 = v_V3950.clone(); - rt::is_cons(&__t552) + let __t637 = { + let __t632 = { + let __t628 = v_V3631.clone(); + rt::is_cons(&__t628) }; - if !rt::is_truthy(interp, &__t556)? { + if !rt::is_truthy(interp, &__t632)? { Value::bool(false) } else { - let __t557 = { - let __t553 = Value::int(0i64); - let __t555 = { - let __t554 = v_V3950.clone(); - rt::hd(&__t554)? + let __t633 = { + let __t629 = Value::int(0i64); + let __t631 = { + let __t630 = v_V3631.clone(); + rt::hd(&__t630)? }; - rt::eq(&__t553, &__t555) + rt::eq(&__t629, &__t631) }; - Value::bool(rt::is_truthy(interp, &__t557)?) + Value::bool(rt::is_truthy(interp, &__t633)?) } }; - if match rt::is_truthy(interp, &__t561) { + if match rt::is_truthy(interp, &__t637) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t559 = { - let __t558 = v_V3950.clone(); - rt::tl(&__t558)? + let __t635 = { + let __t634 = v_V3631.clone(); + rt::tl(&__t634)? }; - let __t560 = v_V3951.clone(); - v_V3950 = __t559; - v_V3951 = __t560; + let __t636 = v_V3632.clone(); + v_V3631 = __t635; + v_V3632 = __t636; continue; } } else { { - let __t551 = { - let __t535 = v_V3950.clone(); - rt::is_cons(&__t535) + let __t627 = { + let __t611 = v_V3631.clone(); + rt::is_cons(&__t611) }; - if match rt::is_truthy(interp, &__t551) { + if match rt::is_truthy(interp, &__t627) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t538 = { - let __t536 = v_V3951.clone(); - let __t537 = Value::int(10000000000i64); - rt::gt(&__t536, &__t537)? + let __t614 = { + let __t612 = v_V3632.clone(); + let __t613 = Value::int(10000000000i64); + rt::gt(&__t612, &__t613)? }; - if match rt::is_truthy(interp, &__t538) { + if match rt::is_truthy(interp, &__t614) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t540 = { - let __t539 = v_V3950.clone(); - rt::tl(&__t539)? + let __t616 = { + let __t615 = v_V3631.clone(); + rt::tl(&__t615)? }; - let __t544 = { - let __t541 = v_V3951.clone(); - let __t543 = { - let __t542 = v_V3950.clone(); - rt::hd(&__t542)? + let __t620 = { + let __t617 = v_V3632.clone(); + let __t619 = { + let __t618 = v_V3631.clone(); + rt::hd(&__t618)? }; - rt::add(&__t541, &__t543)? + rt::add(&__t617, &__t619)? }; - v_V3950 = __t540; - v_V3951 = __t544; + v_V3631 = __t616; + v_V3632 = __t620; continue; } } else { { - let __t546 = { - let __t545 = v_V3950.clone(); - rt::tl(&__t545)? + let __t622 = { + let __t621 = v_V3631.clone(); + rt::tl(&__t621)? }; - let __t550 = { - let __t547 = v_V3951.clone(); - let __t549 = { - let __t548 = v_V3950.clone(); - rt::hd(&__t548)? + let __t626 = { + let __t623 = v_V3632.clone(); + let __t625 = { + let __t624 = v_V3631.clone(); + rt::hd(&__t624)? }; - rt::mul(&__t547, &__t549)? + rt::mul(&__t623, &__t625)? }; - v_V3950 = __t546; - v_V3951 = __t550; + v_V3631 = __t622; + v_V3632 = __t626; continue; } } } } else { { - let __t534 = Value::bool(true); - if match rt::is_truthy(interp, &__t534) { + let __t610 = Value::bool(true); + if match rt::is_truthy(interp, &__t610) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t533 = - Value::sym(interp.intern("shen.prodbutzero")); - rt::apply_direct(interp, "shen.f-error", &[__t533])? + let __t609 = + Value::str("partial function shen.prodbutzero"); + rt::apply_direct(interp, "simple-error", &[__t609])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3630,23 +3892,23 @@ pub fn aot_shen_x2e_mod(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ))); } #[allow(unused_mut)] - let mut v_V3958 = args[0].clone(); + let mut v_V3639 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3959 = args[1].clone(); + let mut v_V3640 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t589 = { - let __t586 = { - let __t582 = v_V3959.clone(); - rt::is_cons(&__t582) + let __t665 = { + let __t662 = { + let __t658 = v_V3640.clone(); + rt::is_cons(&__t658) }; - if !rt::is_truthy(interp, &__t586)? { + if !rt::is_truthy(interp, &__t662)? { Value::bool(false) } else { - let __t587 = { - let __t584 = { - let __t583 = v_V3959.clone(); - rt::hd(&__t583)? + let __t663 = { + let __t660 = { + let __t659 = v_V3640.clone(); + rt::hd(&__t659)? }; - let __t585 = v_V3958.clone(); - rt::gt(&__t584, &__t585)? + let __t661 = v_V3639.clone(); + rt::gt(&__t660, &__t661)? }; - Value::bool(rt::is_truthy(interp, &__t587)?) + Value::bool(rt::is_truthy(interp, &__t663)?) } }; - if match rt::is_truthy(interp, &__t589) { + if match rt::is_truthy(interp, &__t665) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t588 = v_V3959.clone(); - rt::tl(&__t588)? + let __t664 = v_V3640.clone(); + rt::tl(&__t664)? }); } else { { - let __t581 = { - let __t573 = v_V3959.clone(); - rt::is_cons(&__t573) + let __t657 = { + let __t649 = v_V3640.clone(); + rt::is_cons(&__t649) }; - if match rt::is_truthy(interp, &__t581) { + if match rt::is_truthy(interp, &__t657) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t574 = v_V3958.clone(); - let __t580 = { - let __t578 = { - let __t575 = Value::int(2i64); - let __t577 = { - let __t576 = v_V3959.clone(); - rt::hd(&__t576)? + let __t650 = v_V3639.clone(); + let __t656 = { + let __t654 = { + let __t651 = Value::int(2i64); + let __t653 = { + let __t652 = v_V3640.clone(); + rt::hd(&__t652)? }; - rt::mul(&__t575, &__t577)? + rt::mul(&__t651, &__t653)? }; - let __t579 = v_V3959.clone(); - rt::cons(&__t578, &__t579) + let __t655 = v_V3640.clone(); + rt::cons(&__t654, &__t655) }; - v_V3958 = __t574; - v_V3959 = __t580; + v_V3639 = __t650; + v_V3640 = __t656; continue; } } else { { - let __t572 = Value::bool(true); - if match rt::is_truthy(interp, &__t572) { + let __t648 = Value::bool(true); + if match rt::is_truthy(interp, &__t648) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t571 = + let __t647 = Value::str("implementation error in shen.multiples"); - rt::apply_direct(interp, "simple-error", &[__t571])? + rt::apply_direct(interp, "simple-error", &[__t647])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3763,124 +4025,124 @@ pub fn aot_shen_x2e_modh(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t614 = { - let __t612 = Value::nil(); - let __t613 = v_V3967.clone(); - rt::eq(&__t612, &__t613) + let __t690 = { + let __t688 = Value::nil(); + let __t689 = v_V3648.clone(); + rt::eq(&__t688, &__t689) }; - if match rt::is_truthy(interp, &__t614) { + if match rt::is_truthy(interp, &__t690) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3966.clone()); + break Ok(v_V3647.clone()); } else { { - let __t611 = { - let __t603 = { - let __t599 = v_V3967.clone(); - rt::is_cons(&__t599) + let __t687 = { + let __t679 = { + let __t675 = v_V3648.clone(); + rt::is_cons(&__t675) }; - if !rt::is_truthy(interp, &__t603)? { + if !rt::is_truthy(interp, &__t679)? { Value::bool(false) } else { - let __t604 = { - let __t601 = { - let __t600 = v_V3967.clone(); - rt::hd(&__t600)? + let __t680 = { + let __t677 = { + let __t676 = v_V3648.clone(); + rt::hd(&__t676)? }; - let __t602 = v_V3966.clone(); - rt::gt(&__t601, &__t602)? + let __t678 = v_V3647.clone(); + rt::gt(&__t677, &__t678)? }; - Value::bool(rt::is_truthy(interp, &__t604)?) + Value::bool(rt::is_truthy(interp, &__t680)?) } }; - if match rt::is_truthy(interp, &__t611) { + if match rt::is_truthy(interp, &__t687) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t607 = { - let __t606 = { - let __t605 = v_V3967.clone(); - rt::tl(&__t605)? + let __t683 = { + let __t682 = { + let __t681 = v_V3648.clone(); + rt::tl(&__t681)? }; - rt::apply_direct(interp, "empty?", &[__t606])? + rt::apply_direct(interp, "empty?", &[__t682])? }; - if match rt::is_truthy(interp, &__t607) { + if match rt::is_truthy(interp, &__t683) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3966.clone()); + break Ok(v_V3647.clone()); } else { { - let __t608 = v_V3966.clone(); - let __t610 = { - let __t609 = v_V3967.clone(); - rt::tl(&__t609)? + let __t684 = v_V3647.clone(); + let __t686 = { + let __t685 = v_V3648.clone(); + rt::tl(&__t685)? }; - v_V3966 = __t608; - v_V3967 = __t610; + v_V3647 = __t684; + v_V3648 = __t686; continue; } } } } else { { - let __t598 = { - let __t592 = v_V3967.clone(); - rt::is_cons(&__t592) + let __t674 = { + let __t668 = v_V3648.clone(); + rt::is_cons(&__t668) }; - if match rt::is_truthy(interp, &__t598) { + if match rt::is_truthy(interp, &__t674) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t596 = { - let __t593 = v_V3966.clone(); - let __t595 = { - let __t594 = v_V3967.clone(); - rt::hd(&__t594)? + let __t672 = { + let __t669 = v_V3647.clone(); + let __t671 = { + let __t670 = v_V3648.clone(); + rt::hd(&__t670)? }; - rt::sub(&__t593, &__t595)? + rt::sub(&__t669, &__t671)? }; - let __t597 = v_V3967.clone(); - v_V3966 = __t596; - v_V3967 = __t597; + let __t673 = v_V3648.clone(); + v_V3647 = __t672; + v_V3648 = __t673; continue; } } else { { - let __t591 = Value::bool(true); - if match rt::is_truthy(interp, &__t591) { + let __t667 = Value::bool(true); + if match rt::is_truthy(interp, &__t667) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t590 = Value::str( + let __t666 = Value::str( "implementation error in shen.modh", ); rt::apply_direct( interp, "simple-error", - &[__t590], + &[__t666], )? }); } else { @@ -3914,54 +4176,54 @@ pub fn aot_sum(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3970 = args[0].clone(); + let mut v_V3651 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t629 = { - let __t627 = Value::nil(); - let __t628 = v_V3970.clone(); - rt::eq(&__t627, &__t628) + let __t705 = { + let __t703 = Value::nil(); + let __t704 = v_V3651.clone(); + rt::eq(&__t703, &__t704) }; - if match rt::is_truthy(interp, &__t629) { + if match rt::is_truthy(interp, &__t705) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(0i64)); } else { { - let __t626 = { - let __t620 = v_V3970.clone(); - rt::is_cons(&__t620) + let __t702 = { + let __t696 = v_V3651.clone(); + rt::is_cons(&__t696) }; - if match rt::is_truthy(interp, &__t626) { + if match rt::is_truthy(interp, &__t702) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t622 = { - let __t621 = v_V3970.clone(); - rt::hd(&__t621)? + let __t698 = { + let __t697 = v_V3651.clone(); + rt::hd(&__t697)? }; - let __t625 = { - let __t624 = { - let __t623 = v_V3970.clone(); - rt::tl(&__t623)? + let __t701 = { + let __t700 = { + let __t699 = v_V3651.clone(); + rt::tl(&__t699)? }; - rt::apply_direct(interp, "sum", &[__t624])? + rt::apply_direct(interp, "sum", &[__t700])? }; - rt::add(&__t622, &__t625)? + rt::add(&__t698, &__t701)? }); } else { { - let __t619 = Value::bool(true); - if match rt::is_truthy(interp, &__t619) { + let __t695 = Value::bool(true); + if match rt::is_truthy(interp, &__t695) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t618 = Value::str("attempt to sum a non-list\n"); - rt::apply_direct(interp, "simple-error", &[__t618])? + let __t694 = Value::str("attempt to sum a non-list\n"); + rt::apply_direct(interp, "simple-error", &[__t694])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3988,32 +4250,32 @@ pub fn aot_head(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3975 = args[0].clone(); + let mut v_V3656 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t634 = { - let __t632 = v_V3975.clone(); - rt::is_cons(&__t632) + let __t710 = { + let __t708 = v_V3656.clone(); + rt::is_cons(&__t708) }; - if match rt::is_truthy(interp, &__t634) { + if match rt::is_truthy(interp, &__t710) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t633 = v_V3975.clone(); - rt::hd(&__t633)? + let __t709 = v_V3656.clone(); + rt::hd(&__t709)? }); } else { { - let __t631 = Value::bool(true); - if match rt::is_truthy(interp, &__t631) { + let __t707 = Value::bool(true); + if match rt::is_truthy(interp, &__t707) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t630 = Value::str("head expects a non-empty list\n"); - rt::apply_direct(interp, "simple-error", &[__t630])? + let __t706 = Value::str("head expects a non-empty list\n"); + rt::apply_direct(interp, "simple-error", &[__t706])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4038,32 +4300,32 @@ pub fn aot_tail(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3980 = args[0].clone(); + let mut v_V3661 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t639 = { - let __t637 = v_V3980.clone(); - rt::is_cons(&__t637) + let __t715 = { + let __t713 = v_V3661.clone(); + rt::is_cons(&__t713) }; - if match rt::is_truthy(interp, &__t639) { + if match rt::is_truthy(interp, &__t715) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t638 = v_V3980.clone(); - rt::tl(&__t638)? + let __t714 = v_V3661.clone(); + rt::tl(&__t714)? }); } else { { - let __t636 = Value::bool(true); - if match rt::is_truthy(interp, &__t636) { + let __t712 = Value::bool(true); + if match rt::is_truthy(interp, &__t712) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t635 = Value::str("tail expects a non-empty list\n"); - rt::apply_direct(interp, "simple-error", &[__t635])? + let __t711 = Value::str("tail expects a non-empty list\n"); + rt::apply_direct(interp, "simple-error", &[__t711])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4088,13 +4350,13 @@ pub fn aot_hdstr(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3981 = args[0].clone(); + let mut v_V3662 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t640 = v_V3981.clone(); - let __t641 = Value::int(0i64); - rt::apply_direct(interp, "pos", &[__t640, __t641])? + let __t716 = v_V3662.clone(); + let __t717 = Value::int(0i64); + rt::apply_direct(interp, "pos", &[__t716, __t717])? }); } } @@ -4113,85 +4375,85 @@ pub fn aot_intersection(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t658 = { - let __t644 = v_V3988.clone(); - rt::is_cons(&__t644) + let __t734 = { + let __t720 = v_V3669.clone(); + rt::is_cons(&__t720) }; - if match rt::is_truthy(interp, &__t658) { + if match rt::is_truthy(interp, &__t734) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t648 = { - let __t646 = { - let __t645 = v_V3988.clone(); - rt::hd(&__t645)? + let __t724 = { + let __t722 = { + let __t721 = v_V3669.clone(); + rt::hd(&__t721)? }; - let __t647 = v_V3989.clone(); - rt::apply_direct(interp, "element?", &[__t646, __t647])? + let __t723 = v_V3670.clone(); + rt::apply_direct(interp, "element?", &[__t722, __t723])? }; - if match rt::is_truthy(interp, &__t648) { + if match rt::is_truthy(interp, &__t724) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t650 = { - let __t649 = v_V3988.clone(); - rt::hd(&__t649)? + let __t726 = { + let __t725 = v_V3669.clone(); + rt::hd(&__t725)? }; - let __t654 = { - let __t652 = { - let __t651 = v_V3988.clone(); - rt::tl(&__t651)? + let __t730 = { + let __t728 = { + let __t727 = v_V3669.clone(); + rt::tl(&__t727)? }; - let __t653 = v_V3989.clone(); - rt::apply_direct(interp, "intersection", &[__t652, __t653])? + let __t729 = v_V3670.clone(); + rt::apply_direct(interp, "intersection", &[__t728, __t729])? }; - rt::cons(&__t650, &__t654) + rt::cons(&__t726, &__t730) }); } else { { - let __t656 = { - let __t655 = v_V3988.clone(); - rt::tl(&__t655)? + let __t732 = { + let __t731 = v_V3669.clone(); + rt::tl(&__t731)? }; - let __t657 = v_V3989.clone(); - v_V3988 = __t656; - v_V3989 = __t657; + let __t733 = v_V3670.clone(); + v_V3669 = __t732; + v_V3670 = __t733; continue; } } } } else { { - let __t643 = Value::bool(true); - if match rt::is_truthy(interp, &__t643) { + let __t719 = Value::bool(true); + if match rt::is_truthy(interp, &__t719) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t642 = Value::str( + let __t718 = Value::str( "attempt to find the intersection with a non-list\n", ); - rt::apply_direct(interp, "simple-error", &[__t642])? + rt::apply_direct(interp, "simple-error", &[__t718])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4218,13 +4480,13 @@ pub fn aot_reverse(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V3990 = args[0].clone(); + let mut v_V3671 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t662 = v_V3990.clone(); - let __t663 = Value::nil(); - rt::apply_direct(interp, "shen.reverse-help", &[__t662, __t663])? + let __t738 = v_V3671.clone(); + let __t739 = Value::nil(); + rt::apply_direct(interp, "shen.reverse-help", &[__t738, __t739])? }); } } @@ -4243,59 +4505,59 @@ pub fn aot_shen_x2e_reverse_x2d_help(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V3995 = args[0].clone(); + let mut v_V3676 = args[0].clone(); #[allow(unused_mut)] - let mut v_V3996 = args[1].clone(); + let mut v_V3677 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t676 = { - let __t674 = Value::nil(); - let __t675 = v_V3995.clone(); - rt::eq(&__t674, &__t675) + let __t752 = { + let __t750 = Value::nil(); + let __t751 = v_V3676.clone(); + rt::eq(&__t750, &__t751) }; - if match rt::is_truthy(interp, &__t676) { + if match rt::is_truthy(interp, &__t752) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V3996.clone()); + break Ok(v_V3677.clone()); } else { { - let __t673 = { - let __t666 = v_V3995.clone(); - rt::is_cons(&__t666) + let __t749 = { + let __t742 = v_V3676.clone(); + rt::is_cons(&__t742) }; - if match rt::is_truthy(interp, &__t673) { + if match rt::is_truthy(interp, &__t749) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t668 = { - let __t667 = v_V3995.clone(); - rt::tl(&__t667)? + let __t744 = { + let __t743 = v_V3676.clone(); + rt::tl(&__t743)? }; - let __t672 = { - let __t670 = { - let __t669 = v_V3995.clone(); - rt::hd(&__t669)? + let __t748 = { + let __t746 = { + let __t745 = v_V3676.clone(); + rt::hd(&__t745)? }; - let __t671 = v_V3996.clone(); - rt::cons(&__t670, &__t671) + let __t747 = v_V3677.clone(); + rt::cons(&__t746, &__t747) }; - v_V3995 = __t668; - v_V3996 = __t672; + v_V3676 = __t744; + v_V3677 = __t748; continue; } } else { { - let __t665 = Value::bool(true); - if match rt::is_truthy(interp, &__t665) { + let __t741 = Value::bool(true); + if match rt::is_truthy(interp, &__t741) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t664 = Value::str("attempt to reverse a non-list\n"); - rt::apply_direct(interp, "simple-error", &[__t664])? + let __t740 = Value::str("attempt to reverse a non-list\n"); + rt::apply_direct(interp, "simple-error", &[__t740])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4322,84 +4584,84 @@ pub fn aot_union(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4001 = args[0].clone(); + let mut v_V3682 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4002 = args[1].clone(); + let mut v_V3683 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t696 = { - let __t694 = Value::nil(); - let __t695 = v_V4001.clone(); - rt::eq(&__t694, &__t695) + let __t772 = { + let __t770 = Value::nil(); + let __t771 = v_V3682.clone(); + rt::eq(&__t770, &__t771) }; - if match rt::is_truthy(interp, &__t696) { + if match rt::is_truthy(interp, &__t772) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4002.clone()); + break Ok(v_V3683.clone()); } else { { - let __t693 = { - let __t679 = v_V4001.clone(); - rt::is_cons(&__t679) + let __t769 = { + let __t755 = v_V3682.clone(); + rt::is_cons(&__t755) }; - if match rt::is_truthy(interp, &__t693) { + if match rt::is_truthy(interp, &__t769) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t683 = { - let __t681 = { - let __t680 = v_V4001.clone(); - rt::hd(&__t680)? + let __t759 = { + let __t757 = { + let __t756 = v_V3682.clone(); + rt::hd(&__t756)? }; - let __t682 = v_V4002.clone(); - rt::apply_direct(interp, "element?", &[__t681, __t682])? + let __t758 = v_V3683.clone(); + rt::apply_direct(interp, "element?", &[__t757, __t758])? }; - if match rt::is_truthy(interp, &__t683) { + if match rt::is_truthy(interp, &__t759) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t685 = { - let __t684 = v_V4001.clone(); - rt::tl(&__t684)? + let __t761 = { + let __t760 = v_V3682.clone(); + rt::tl(&__t760)? }; - let __t686 = v_V4002.clone(); - v_V4001 = __t685; - v_V4002 = __t686; + let __t762 = v_V3683.clone(); + v_V3682 = __t761; + v_V3683 = __t762; continue; } } else { break Ok({ - let __t688 = { - let __t687 = v_V4001.clone(); - rt::hd(&__t687)? + let __t764 = { + let __t763 = v_V3682.clone(); + rt::hd(&__t763)? }; - let __t692 = { - let __t690 = { - let __t689 = v_V4001.clone(); - rt::tl(&__t689)? + let __t768 = { + let __t766 = { + let __t765 = v_V3682.clone(); + rt::tl(&__t765)? }; - let __t691 = v_V4002.clone(); - rt::apply_direct(interp, "union", &[__t690, __t691])? + let __t767 = v_V3683.clone(); + rt::apply_direct(interp, "union", &[__t766, __t767])? }; - rt::cons(&__t688, &__t692) + rt::cons(&__t764, &__t768) }); } } } else { { - let __t678 = Value::bool(true); - if match rt::is_truthy(interp, &__t678) { + let __t754 = Value::bool(true); + if match rt::is_truthy(interp, &__t754) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t677 = + let __t753 = Value::str("attempt to find the union with a non-list\n"); - rt::apply_direct(interp, "simple-error", &[__t677])? + rt::apply_direct(interp, "simple-error", &[__t753])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4426,53 +4688,53 @@ pub fn aot_y_x2d_or_x2d_n_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V4003 = args[0].clone(); + let mut v_V3684 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4004 = { - let __t698 = { - let __t697 = v_V4003.clone(); - rt::apply_direct(interp, "shen.proc-nl", &[__t697])? + let v_W3685 = { + let __t774 = { + let __t773 = v_V3684.clone(); + rt::apply_direct(interp, "shen.proc-nl", &[__t773])? }; - let __t699 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t698, __t699])? + let __t775 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t774, __t775])? }; { - let v_W4005 = { - let __t700 = Value::str(" (y/n) "); - let __t701 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t700, __t701])? + let v_W3686 = { + let __t776 = Value::str(" (y/n) "); + let __t777 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t776, __t777])? }; { - let v_W4006 = { - let __t703 = { - let __t702 = { rt::apply_direct(interp, "stinput", &[])? }; - rt::apply_direct(interp, "read", &[__t702])? + let v_W3687 = { + let __t779 = { + let __t778 = { rt::apply_direct(interp, "stinput", &[])? }; + rt::apply_direct(interp, "read", &[__t778])? }; - let __t704 = Value::str(""); - let __t705 = Value::sym(interp.intern("shen.s")); - rt::apply_direct(interp, "shen.app", &[__t703, __t704, __t705])? + let __t780 = Value::str(""); + let __t781 = Value::sym(interp.intern("shen.s")); + rt::apply_direct(interp, "shen.app", &[__t779, __t780, __t781])? }; { - let __t708 = { - let __t706 = Value::str("y"); - let __t707 = v_W4006.clone(); - rt::eq(&__t706, &__t707) + let __t784 = { + let __t782 = Value::str("y"); + let __t783 = v_W3687.clone(); + rt::eq(&__t782, &__t783) }; - if match rt::is_truthy(interp, &__t708) { + if match rt::is_truthy(interp, &__t784) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t711 = { - let __t709 = Value::str("n"); - let __t710 = v_W4006.clone(); - rt::eq(&__t709, &__t710) + let __t787 = { + let __t785 = Value::str("n"); + let __t786 = v_W3687.clone(); + rt::eq(&__t785, &__t786) }; - if match rt::is_truthy(interp, &__t711) { + if match rt::is_truthy(interp, &__t787) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4480,14 +4742,14 @@ pub fn aot_y_x2d_or_x2d_n_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResul } else { { let _ = { - let __t712 = Value::str("please answer y or n\n"); - let __t713 = + let __t788 = Value::str("please answer y or n\n"); + let __t789 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t712, __t713])? + rt::apply_direct(interp, "pr", &[__t788, __t789])? }; { - let __t714 = v_V4003.clone(); - v_V4003 = __t714; + let __t790 = v_V3684.clone(); + v_V3684 = __t790; continue; } } @@ -4515,12 +4777,12 @@ pub fn aot_not(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4007 = args[0].clone(); + let mut v_V3688 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t715 = v_V4007.clone(); - if match rt::is_truthy(interp, &__t715) { + let __t791 = v_V3688.clone(); + if match rt::is_truthy(interp, &__t791) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4548,8 +4810,8 @@ pub fn aot_abort(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t716 = Value::str(""); - rt::apply_direct(interp, "simple-error", &[__t716])? + let __t792 = Value::str(""); + rt::apply_direct(interp, "simple-error", &[__t792])? }); } } @@ -4568,63 +4830,63 @@ pub fn aot_subst(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4013 = args[0].clone(); + let mut v_V3694 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4014 = args[1].clone(); + let mut v_V3695 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4015 = args[2].clone(); + let mut v_V3696 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t732 = { - let __t730 = v_V4014.clone(); - let __t731 = v_V4015.clone(); - rt::eq(&__t730, &__t731) + let __t808 = { + let __t806 = v_V3695.clone(); + let __t807 = v_V3696.clone(); + rt::eq(&__t806, &__t807) }; - if match rt::is_truthy(interp, &__t732) { + if match rt::is_truthy(interp, &__t808) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4013.clone()); + break Ok(v_V3694.clone()); } else { { - let __t729 = { - let __t718 = v_V4015.clone(); - rt::is_cons(&__t718) + let __t805 = { + let __t794 = v_V3696.clone(); + rt::is_cons(&__t794) }; - if match rt::is_truthy(interp, &__t729) { + if match rt::is_truthy(interp, &__t805) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t723 = { - let __t719 = v_V4013.clone(); - let __t720 = v_V4014.clone(); - let __t722 = { - let __t721 = v_V4015.clone(); - rt::hd(&__t721)? + let __t799 = { + let __t795 = v_V3694.clone(); + let __t796 = v_V3695.clone(); + let __t798 = { + let __t797 = v_V3696.clone(); + rt::hd(&__t797)? }; - rt::apply_direct(interp, "subst", &[__t719, __t720, __t722])? + rt::apply_direct(interp, "subst", &[__t795, __t796, __t798])? }; - let __t728 = { - let __t724 = v_V4013.clone(); - let __t725 = v_V4014.clone(); - let __t727 = { - let __t726 = v_V4015.clone(); - rt::tl(&__t726)? + let __t804 = { + let __t800 = v_V3694.clone(); + let __t801 = v_V3695.clone(); + let __t803 = { + let __t802 = v_V3696.clone(); + rt::tl(&__t802)? }; - rt::apply_direct(interp, "subst", &[__t724, __t725, __t727])? + rt::apply_direct(interp, "subst", &[__t800, __t801, __t803])? }; - rt::cons(&__t723, &__t728) + rt::cons(&__t799, &__t804) }); } else { { - let __t717 = Value::bool(true); - if match rt::is_truthy(interp, &__t717) { + let __t793 = Value::bool(true); + if match rt::is_truthy(interp, &__t793) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4015.clone()); + break Ok(v_V3696.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -4650,17 +4912,17 @@ pub fn aot_explode(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4016 = args[0].clone(); + let mut v_V3697 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t736 = { - let __t733 = v_V4016.clone(); - let __t734 = Value::str(""); - let __t735 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t733, __t734, __t735])? + let __t812 = { + let __t809 = v_V3697.clone(); + let __t810 = Value::str(""); + let __t811 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t809, __t810, __t811])? }; - rt::apply_direct(interp, "shen.explode-h", &[__t736])? + rt::apply_direct(interp, "shen.explode-h", &[__t812])? }); } } @@ -4679,54 +4941,54 @@ pub fn aot_shen_x2e_explode_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V4019 = args[0].clone(); + let mut v_V3700 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t748 = { - let __t746 = Value::str(""); - let __t747 = v_V4019.clone(); - rt::eq(&__t746, &__t747) + let __t824 = { + let __t822 = Value::str(""); + let __t823 = v_V3700.clone(); + rt::eq(&__t822, &__t823) }; - if match rt::is_truthy(interp, &__t748) { + if match rt::is_truthy(interp, &__t824) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t745 = { - let __t739 = v_V4019.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t739])? + let __t821 = { + let __t815 = v_V3700.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t815])? }; - if match rt::is_truthy(interp, &__t745) { + if match rt::is_truthy(interp, &__t821) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t741 = { - let __t740 = v_V4019.clone(); - rt::apply_direct(interp, "hdstr", &[__t740])? + let __t817 = { + let __t816 = v_V3700.clone(); + rt::apply_direct(interp, "hdstr", &[__t816])? }; - let __t744 = { - let __t743 = { - let __t742 = v_V4019.clone(); - rt::apply_direct(interp, "tlstr", &[__t742])? + let __t820 = { + let __t819 = { + let __t818 = v_V3700.clone(); + rt::apply_direct(interp, "tlstr", &[__t818])? }; - rt::apply_direct(interp, "shen.explode-h", &[__t743])? + rt::apply_direct(interp, "shen.explode-h", &[__t819])? }; - rt::cons(&__t741, &__t744) + rt::cons(&__t817, &__t820) }); } else { { - let __t738 = Value::bool(true); - if match rt::is_truthy(interp, &__t738) { + let __t814 = Value::bool(true); + if match rt::is_truthy(interp, &__t814) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t737 = Value::str("implementation error in explode-h"); - rt::apply_direct(interp, "simple-error", &[__t737])? + let __t813 = Value::str("implementation error in explode-h"); + rt::apply_direct(interp, "simple-error", &[__t813])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4753,29 +5015,29 @@ pub fn aot_cd(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4020 = args[0].clone(); + let mut v_V3701 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t749 = Value::sym(interp.intern("*home-directory*")); - let __t756 = { - let __t755 = { - let __t750 = v_V4020.clone(); - let __t751 = Value::str(""); - rt::eq(&__t750, &__t751) + let __t825 = Value::sym(interp.intern("*home-directory*")); + let __t832 = { + let __t831 = { + let __t826 = v_V3701.clone(); + let __t827 = Value::str(""); + rt::eq(&__t826, &__t827) }; - if rt::is_truthy(interp, &__t755)? { + if rt::is_truthy(interp, &__t831)? { Value::str("") } else { { - let __t752 = v_V4020.clone(); - let __t753 = Value::str("/"); - let __t754 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t752, __t753, __t754])? + let __t828 = v_V3701.clone(); + let __t829 = Value::str("/"); + let __t830 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t828, __t829, __t830])? } } }; - rt::apply_direct(interp, "set", &[__t749, __t756])? + rt::apply_direct(interp, "set", &[__t825, __t832])? }); } } @@ -4785,87 +5047,6 @@ fn install_cd(interp: &mut Interp) { interp.register_aot_direct("cd", aot_cd); } -/// AOT-compiled from KL `(defun shen.for-each ...)` -pub fn aot_shen_x2e_for_x2d_each(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 2 { - return Err(ShenError::new(format!( - "shen.for-each: expected 2 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V4021 = args[0].clone(); - #[allow(unused_mut)] - let mut v_V4022 = args[1].clone(); - #[allow(clippy::never_loop)] - loop { - { - let __t768 = { - let __t766 = Value::nil(); - let __t767 = v_V4022.clone(); - rt::eq(&__t766, &__t767) - }; - if match rt::is_truthy(interp, &__t768) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(true)); - } else { - { - let __t765 = { - let __t759 = v_V4022.clone(); - rt::is_cons(&__t759) - }; - if match rt::is_truthy(interp, &__t765) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W4023 = { - let __t761 = { - let __t760 = v_V4022.clone(); - rt::hd(&__t760)? - }; - rt::apply_value(interp, v_V4021.clone(), &[__t761])? - }; - { - let __t762 = v_V4021.clone(); - let __t764 = { - let __t763 = v_V4022.clone(); - rt::tl(&__t763)? - }; - v_V4021 = __t762; - v_V4022 = __t764; - continue; - } - } - } else { - { - let __t758 = Value::bool(true); - if match rt::is_truthy(interp, &__t758) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t757 = Value::sym(interp.intern("shen.for-each")); - rt::apply_direct(interp, "shen.f-error", &[__t757])? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } - } - } - } -} - -fn install_shen_x2e_for_x2d_each(interp: &mut Interp) { - interp.register_native("shen.for-each", 2, aot_shen_x2e_for_x2d_each); - interp.register_aot_direct("shen.for-each", aot_shen_x2e_for_x2d_each); -} - /// AOT-compiled from KL `(defun map ...)` pub fn aot_map(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 2 { @@ -4875,16 +5056,16 @@ pub fn aot_map(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4024 = args[0].clone(); + let mut v_V3702 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4025 = args[1].clone(); + let mut v_V3703 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t769 = v_V4024.clone(); - let __t770 = v_V4025.clone(); - let __t771 = Value::nil(); - rt::apply_direct(interp, "shen.map-h", &[__t769, __t770, __t771])? + let __t833 = v_V3702.clone(); + let __t834 = v_V3703.clone(); + let __t835 = Value::nil(); + rt::apply_direct(interp, "shen.map-h", &[__t833, __t834, __t835])? }); } } @@ -4903,69 +5084,69 @@ pub fn aot_shen_x2e_map_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4026 = args[0].clone(); + let mut v_V3704 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4027 = args[1].clone(); + let mut v_V3705 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4028 = args[2].clone(); + let mut v_V3706 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t787 = { - let __t784 = Value::nil(); - let __t785 = v_V4027.clone(); - rt::eq(&__t784, &__t785) + let __t851 = { + let __t848 = Value::nil(); + let __t849 = v_V3705.clone(); + rt::eq(&__t848, &__t849) }; - if match rt::is_truthy(interp, &__t787) { + if match rt::is_truthy(interp, &__t851) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t786 = v_V4028.clone(); - rt::apply_direct(interp, "reverse", &[__t786])? + let __t850 = v_V3706.clone(); + rt::apply_direct(interp, "reverse", &[__t850])? }); } else { { - let __t783 = { - let __t774 = v_V4027.clone(); - rt::is_cons(&__t774) + let __t847 = { + let __t838 = v_V3705.clone(); + rt::is_cons(&__t838) }; - if match rt::is_truthy(interp, &__t783) { + if match rt::is_truthy(interp, &__t847) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t775 = v_V4026.clone(); - let __t777 = { - let __t776 = v_V4027.clone(); - rt::tl(&__t776)? + let __t839 = v_V3704.clone(); + let __t841 = { + let __t840 = v_V3705.clone(); + rt::tl(&__t840)? }; - let __t782 = { - let __t780 = { - let __t779 = { - let __t778 = v_V4027.clone(); - rt::hd(&__t778)? + let __t846 = { + let __t844 = { + let __t843 = { + let __t842 = v_V3705.clone(); + rt::hd(&__t842)? }; - rt::apply_value(interp, v_V4026.clone(), &[__t779])? + rt::apply_value(interp, v_V3704.clone(), &[__t843])? }; - let __t781 = v_V4028.clone(); - rt::cons(&__t780, &__t781) + let __t845 = v_V3706.clone(); + rt::cons(&__t844, &__t845) }; - v_V4026 = __t775; - v_V4027 = __t777; - v_V4028 = __t782; + v_V3704 = __t839; + v_V3705 = __t841; + v_V3706 = __t846; continue; } } else { { - let __t773 = Value::bool(true); - if match rt::is_truthy(interp, &__t773) { + let __t837 = Value::bool(true); + if match rt::is_truthy(interp, &__t837) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t772 = Value::sym(interp.intern("shen.map-h")); - rt::apply_direct(interp, "shen.f-error", &[__t772])? + let __t836 = Value::str("partial function shen.map-h"); + rt::apply_direct(interp, "simple-error", &[__t836])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4992,13 +5173,13 @@ pub fn aot_length(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4029 = args[0].clone(); + let mut v_V3707 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t788 = v_V4029.clone(); - let __t789 = Value::int(0i64); - rt::apply_direct(interp, "shen.length-h", &[__t788, __t789])? + let __t852 = v_V3707.clone(); + let __t853 = Value::int(0i64); + rt::apply_direct(interp, "shen.length-h", &[__t852, __t853])? }); } } @@ -5017,41 +5198,41 @@ pub fn aot_shen_x2e_length_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V4034 = args[0].clone(); + let mut v_V3712 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4035 = args[1].clone(); + let mut v_V3713 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t798 = { - let __t796 = Value::nil(); - let __t797 = v_V4034.clone(); - rt::eq(&__t796, &__t797) + let __t862 = { + let __t860 = Value::nil(); + let __t861 = v_V3712.clone(); + rt::eq(&__t860, &__t861) }; - if match rt::is_truthy(interp, &__t798) { + if match rt::is_truthy(interp, &__t862) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4035.clone()); + break Ok(v_V3713.clone()); } else { { - let __t795 = Value::bool(true); - if match rt::is_truthy(interp, &__t795) { + let __t859 = Value::bool(true); + if match rt::is_truthy(interp, &__t859) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t791 = { - let __t790 = v_V4034.clone(); - rt::tl(&__t790)? + let __t855 = { + let __t854 = v_V3712.clone(); + rt::tl(&__t854)? }; - let __t794 = { - let __t792 = v_V4035.clone(); - let __t793 = Value::int(1i64); - rt::add(&__t792, &__t793)? + let __t858 = { + let __t856 = v_V3713.clone(); + let __t857 = Value::int(1i64); + rt::add(&__t856, &__t857)? }; - v_V4034 = __t791; - v_V4035 = __t794; + v_V3712 = __t855; + v_V3713 = __t858; continue; } } else { @@ -5077,55 +5258,55 @@ pub fn aot_occurrences(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4041 = args[0].clone(); + let mut v_V3719 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4042 = args[1].clone(); + let mut v_V3720 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t812 = { - let __t810 = v_V4041.clone(); - let __t811 = v_V4042.clone(); - rt::eq(&__t810, &__t811) + let __t876 = { + let __t874 = v_V3719.clone(); + let __t875 = v_V3720.clone(); + rt::eq(&__t874, &__t875) }; - if match rt::is_truthy(interp, &__t812) { + if match rt::is_truthy(interp, &__t876) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::int(1i64)); } else { { - let __t809 = { - let __t800 = v_V4042.clone(); - rt::is_cons(&__t800) + let __t873 = { + let __t864 = v_V3720.clone(); + rt::is_cons(&__t864) }; - if match rt::is_truthy(interp, &__t809) { + if match rt::is_truthy(interp, &__t873) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t804 = { - let __t801 = v_V4041.clone(); - let __t803 = { - let __t802 = v_V4042.clone(); - rt::hd(&__t802)? + let __t868 = { + let __t865 = v_V3719.clone(); + let __t867 = { + let __t866 = v_V3720.clone(); + rt::hd(&__t866)? }; - rt::apply_direct(interp, "occurrences", &[__t801, __t803])? + rt::apply_direct(interp, "occurrences", &[__t865, __t867])? }; - let __t808 = { - let __t805 = v_V4041.clone(); - let __t807 = { - let __t806 = v_V4042.clone(); - rt::tl(&__t806)? + let __t872 = { + let __t869 = v_V3719.clone(); + let __t871 = { + let __t870 = v_V3720.clone(); + rt::tl(&__t870)? }; - rt::apply_direct(interp, "occurrences", &[__t805, __t807])? + rt::apply_direct(interp, "occurrences", &[__t869, __t871])? }; - rt::add(&__t804, &__t808)? + rt::add(&__t868, &__t872)? }); } else { { - let __t799 = Value::bool(true); - if match rt::is_truthy(interp, &__t799) { + let __t863 = Value::bool(true); + if match rt::is_truthy(interp, &__t863) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5155,97 +5336,97 @@ pub fn aot_nth(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4047 = args[0].clone(); + let mut v_V3725 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4048 = args[1].clone(); + let mut v_V3726 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t838 = { - let __t835 = { - let __t832 = Value::int(1i64); - let __t833 = v_V4047.clone(); - rt::eq(&__t832, &__t833) + let __t902 = { + let __t899 = { + let __t896 = Value::int(1i64); + let __t897 = v_V3725.clone(); + rt::eq(&__t896, &__t897) }; - if !rt::is_truthy(interp, &__t835)? { + if !rt::is_truthy(interp, &__t899)? { Value::bool(false) } else { - let __t836 = { - let __t834 = v_V4048.clone(); - rt::is_cons(&__t834) + let __t900 = { + let __t898 = v_V3726.clone(); + rt::is_cons(&__t898) }; - Value::bool(rt::is_truthy(interp, &__t836)?) + Value::bool(rt::is_truthy(interp, &__t900)?) } }; - if match rt::is_truthy(interp, &__t838) { + if match rt::is_truthy(interp, &__t902) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t837 = v_V4048.clone(); - rt::hd(&__t837)? + let __t901 = v_V3726.clone(); + rt::hd(&__t901)? }); } else { { - let __t831 = { - let __t825 = v_V4048.clone(); - rt::is_cons(&__t825) + let __t895 = { + let __t889 = v_V3726.clone(); + rt::is_cons(&__t889) }; - if match rt::is_truthy(interp, &__t831) { + if match rt::is_truthy(interp, &__t895) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t828 = { - let __t826 = v_V4047.clone(); - let __t827 = Value::int(1i64); - rt::sub(&__t826, &__t827)? + let __t892 = { + let __t890 = v_V3725.clone(); + let __t891 = Value::int(1i64); + rt::sub(&__t890, &__t891)? }; - let __t830 = { - let __t829 = v_V4048.clone(); - rt::tl(&__t829)? + let __t894 = { + let __t893 = v_V3726.clone(); + rt::tl(&__t893)? }; - v_V4047 = __t828; - v_V4048 = __t830; + v_V3725 = __t892; + v_V3726 = __t894; continue; } } else { { - let __t824 = Value::bool(true); - if match rt::is_truthy(interp, &__t824) { + let __t888 = Value::bool(true); + if match rt::is_truthy(interp, &__t888) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t823 = { - let __t813 = Value::str("nth applied to "); - let __t822 = { - let __t814 = v_V4047.clone(); - let __t820 = { - let __t815 = Value::str(", "); - let __t819 = { - let __t816 = v_V4048.clone(); - let __t817 = Value::str("\n"); - let __t818 = + let __t887 = { + let __t877 = Value::str("nth applied to "); + let __t886 = { + let __t878 = v_V3725.clone(); + let __t884 = { + let __t879 = Value::str(", "); + let __t883 = { + let __t880 = v_V3726.clone(); + let __t881 = Value::str("\n"); + let __t882 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t816, __t817, __t818], + &[__t880, __t881, __t882], )? }; - rt::apply_direct(interp, "cn", &[__t815, __t819])? + rt::apply_direct(interp, "cn", &[__t879, __t883])? }; - let __t821 = Value::sym(interp.intern("shen.a")); + let __t885 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t814, __t820, __t821], + &[__t878, __t884, __t885], )? }; - rt::apply_direct(interp, "cn", &[__t813, __t822])? + rt::apply_direct(interp, "cn", &[__t877, __t886])? }; - rt::apply_direct(interp, "simple-error", &[__t823])? + rt::apply_direct(interp, "simple-error", &[__t887])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5272,33 +5453,33 @@ pub fn aot_integer_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let v_W4050 = { - let __t841 = v_V4049.clone(); - rt::apply_direct(interp, "shen.abs", &[__t841])? + let v_W3728 = { + let __t905 = v_V3727.clone(); + rt::apply_direct(interp, "shen.abs", &[__t905])? }; break Ok({ - let __t842 = v_W4050.clone(); - let __t845 = { - let __t843 = v_W4050.clone(); - let __t844 = Value::int(1i64); - rt::apply_direct(interp, "shen.magless", &[__t843, __t844])? + let __t906 = v_W3728.clone(); + let __t909 = { + let __t907 = v_W3728.clone(); + let __t908 = Value::int(1i64); + rt::apply_direct(interp, "shen.magless", &[__t907, __t908])? }; - rt::apply_direct(interp, "shen.integer-test?", &[__t842, __t845])? + rt::apply_direct(interp, "shen.integer-test?", &[__t906, __t909])? }); } } @@ -5320,25 +5501,25 @@ pub fn aot_shen_x2e_abs(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V4051.clone()); + break Ok(v_V3729.clone()); } else { break Ok({ - let __t849 = Value::int(0i64); - let __t850 = v_V4051.clone(); - rt::sub(&__t849, &__t850)? + let __t913 = Value::int(0i64); + let __t914 = v_V3729.clone(); + rt::sub(&__t913, &__t914)? }); } } @@ -5359,34 +5540,34 @@ pub fn aot_shen_x2e_magless(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V4053.clone()); + break Ok(v_V3731.clone()); } else { { - let __t856 = v_V4052.clone(); - let __t857 = v_W4054.clone(); - v_V4052 = __t856; - v_V4053 = __t857; + let __t920 = v_V3730.clone(); + let __t921 = v_W3732.clone(); + v_V3730 = __t920; + v_V3731 = __t921; continue; } } @@ -5412,67 +5593,67 @@ pub fn aot_shen_x2e_integer_x2d_test_x3f_( ))); } #[allow(unused_mut)] - let mut v_V4058 = args[0].clone(); + let mut v_V3736 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4059 = args[1].clone(); + let mut v_V3737 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t872 = { - let __t870 = Value::int(0i64); - let __t871 = v_V4058.clone(); - rt::eq(&__t870, &__t871) + let __t936 = { + let __t934 = Value::int(0i64); + let __t935 = v_V3736.clone(); + rt::eq(&__t934, &__t935) }; - if match rt::is_truthy(interp, &__t872) { + if match rt::is_truthy(interp, &__t936) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t869 = { - let __t867 = Value::int(1i64); - let __t868 = v_V4058.clone(); - rt::gt(&__t867, &__t868)? + let __t933 = { + let __t931 = Value::int(1i64); + let __t932 = v_V3736.clone(); + rt::gt(&__t931, &__t932)? }; - if match rt::is_truthy(interp, &__t869) { + if match rt::is_truthy(interp, &__t933) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t866 = Value::bool(true); - if match rt::is_truthy(interp, &__t866) { + let __t930 = Value::bool(true); + if match rt::is_truthy(interp, &__t930) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4060 = { - let __t858 = v_V4058.clone(); - let __t859 = v_V4059.clone(); - rt::sub(&__t858, &__t859)? + let v_W3738 = { + let __t922 = v_V3736.clone(); + let __t923 = v_V3737.clone(); + rt::sub(&__t922, &__t923)? }; { - let __t862 = { - let __t860 = Value::int(0i64); - let __t861 = v_W4060.clone(); - rt::gt(&__t860, &__t861)? + let __t926 = { + let __t924 = Value::int(0i64); + let __t925 = v_W3738.clone(); + rt::gt(&__t924, &__t925)? }; - if match rt::is_truthy(interp, &__t862) { + if match rt::is_truthy(interp, &__t926) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t863 = v_V4058.clone(); - rt::apply_direct(interp, "integer?", &[__t863])? + let __t927 = v_V3736.clone(); + rt::apply_direct(interp, "integer?", &[__t927])? }); } else { { - let __t864 = v_W4060.clone(); - let __t865 = v_V4059.clone(); - v_V4058 = __t864; - v_V4059 = __t865; + let __t928 = v_W3738.clone(); + let __t929 = v_V3737.clone(); + v_V3736 = __t928; + v_V3737 = __t929; continue; } } @@ -5503,60 +5684,60 @@ pub fn aot_mapcan(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4067 = args[0].clone(); + let mut v_V3745 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4068 = args[1].clone(); + let mut v_V3746 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t886 = { - let __t884 = Value::nil(); - let __t885 = v_V4068.clone(); - rt::eq(&__t884, &__t885) + let __t950 = { + let __t948 = Value::nil(); + let __t949 = v_V3746.clone(); + rt::eq(&__t948, &__t949) }; - if match rt::is_truthy(interp, &__t886) { + if match rt::is_truthy(interp, &__t950) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t883 = { - let __t875 = v_V4068.clone(); - rt::is_cons(&__t875) + let __t947 = { + let __t939 = v_V3746.clone(); + rt::is_cons(&__t939) }; - if match rt::is_truthy(interp, &__t883) { + if match rt::is_truthy(interp, &__t947) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t878 = { - let __t877 = { - let __t876 = v_V4068.clone(); - rt::hd(&__t876)? + let __t942 = { + let __t941 = { + let __t940 = v_V3746.clone(); + rt::hd(&__t940)? }; - rt::apply_value(interp, v_V4067.clone(), &[__t877])? + rt::apply_value(interp, v_V3745.clone(), &[__t941])? }; - let __t882 = { - let __t879 = v_V4067.clone(); - let __t881 = { - let __t880 = v_V4068.clone(); - rt::tl(&__t880)? + let __t946 = { + let __t943 = v_V3745.clone(); + let __t945 = { + let __t944 = v_V3746.clone(); + rt::tl(&__t944)? }; - rt::apply_direct(interp, "mapcan", &[__t879, __t881])? + rt::apply_direct(interp, "mapcan", &[__t943, __t945])? }; - rt::apply_direct(interp, "append", &[__t878, __t882])? + rt::apply_direct(interp, "append", &[__t942, __t946])? }); } else { { - let __t874 = Value::bool(true); - if match rt::is_truthy(interp, &__t874) { + let __t938 = Value::bool(true); + if match rt::is_truthy(interp, &__t938) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t873 = Value::str("attempt to mapcan over a non-list\n"); - rt::apply_direct(interp, "simple-error", &[__t873])? + let __t937 = Value::str("attempt to mapcan over a non-list\n"); + rt::apply_direct(interp, "simple-error", &[__t937])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5583,26 +5764,26 @@ pub fn aot__x3d__x3d_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4074 = args[0].clone(); + let mut v_V3752 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4075 = args[1].clone(); + let mut v_V3753 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t890 = { - let __t888 = v_V4074.clone(); - let __t889 = v_V4075.clone(); - rt::eq(&__t888, &__t889) + let __t954 = { + let __t952 = v_V3752.clone(); + let __t953 = v_V3753.clone(); + rt::eq(&__t952, &__t953) }; - if match rt::is_truthy(interp, &__t890) { + if match rt::is_truthy(interp, &__t954) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t887 = Value::bool(true); - if match rt::is_truthy(interp, &__t887) { + let __t951 = Value::bool(true); + if match rt::is_truthy(interp, &__t951) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5630,25 +5811,25 @@ pub fn aot_bound_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4076 = args[0].clone(); + let mut v_V3754 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t892 = { - let __t891 = v_V4076.clone(); - rt::is_symbol(&__t891) + let __t956 = { + let __t955 = v_V3754.clone(); + rt::is_symbol(&__t955) }; - if !match rt::is_truthy(interp, &__t892) { + if !match rt::is_truthy(interp, &__t956) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let v_W4077 = match (|| -> ShenResult { + let v_W3755 = match (|| -> ShenResult { Ok({ - let __t893 = v_V4076.clone(); - rt::apply_direct(interp, "value", &[__t893])? + let __t957 = v_V3754.clone(); + rt::apply_direct(interp, "value", &[__t957])? }) })() { Ok(v) => v, @@ -5658,7 +5839,7 @@ pub fn aot_bound_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult "", 1, move |interp, args| { - let v_Z4078 = args[0].clone(); + let v_Z3756 = args[0].clone(); Ok(Value::sym(interp.intern("shen.this-symbol-is-unbound"))) }, Vec::new(), @@ -5670,12 +5851,12 @@ pub fn aot_bound_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult } }; { - let __t896 = { - let __t894 = v_W4077.clone(); - let __t895 = Value::sym(interp.intern("shen.this-symbol-is-unbound")); - rt::eq(&__t894, &__t895) + let __t960 = { + let __t958 = v_W3755.clone(); + let __t959 = Value::sym(interp.intern("shen.this-symbol-is-unbound")); + rt::eq(&__t958, &__t959) }; - if match rt::is_truthy(interp, &__t896) { + if match rt::is_truthy(interp, &__t960) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5707,44 +5888,44 @@ pub fn aot_shen_x2e_string_x2d__x3e_bytes( ))); } #[allow(unused_mut)] - let mut v_V4079 = args[0].clone(); + let mut v_V3757 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t907 = { - let __t905 = Value::str(""); - let __t906 = v_V4079.clone(); - rt::eq(&__t905, &__t906) + let __t971 = { + let __t969 = Value::str(""); + let __t970 = v_V3757.clone(); + rt::eq(&__t969, &__t970) }; - if match rt::is_truthy(interp, &__t907) { + if match rt::is_truthy(interp, &__t971) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t904 = Value::bool(true); - if match rt::is_truthy(interp, &__t904) { + let __t968 = Value::bool(true); + if match rt::is_truthy(interp, &__t968) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t900 = { - let __t899 = { - let __t897 = v_V4079.clone(); - let __t898 = Value::int(0i64); - rt::apply_direct(interp, "pos", &[__t897, __t898])? + let __t964 = { + let __t963 = { + let __t961 = v_V3757.clone(); + let __t962 = Value::int(0i64); + rt::apply_direct(interp, "pos", &[__t961, __t962])? }; - rt::apply_direct(interp, "string->n", &[__t899])? + rt::apply_direct(interp, "string->n", &[__t963])? }; - let __t903 = { - let __t902 = { - let __t901 = v_V4079.clone(); - rt::apply_direct(interp, "tlstr", &[__t901])? + let __t967 = { + let __t966 = { + let __t965 = v_V3757.clone(); + rt::apply_direct(interp, "tlstr", &[__t965])? }; - rt::apply_direct(interp, "shen.string->bytes", &[__t902])? + rt::apply_direct(interp, "shen.string->bytes", &[__t966])? }; - rt::cons(&__t900, &__t903) + rt::cons(&__t964, &__t967) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -5769,42 +5950,42 @@ pub fn aot_maxinferences(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t911 = Value::sym(interp.intern("shen.*maxinferences*")); - rt::apply_direct(interp, "value", &[__t911])? + let __t975 = Value::sym(interp.intern("shen.*maxinferences*")); + rt::apply_direct(interp, "value", &[__t975])? }); } else { { - let __t913 = { - let __t912 = v_V4080.clone(); - rt::apply_direct(interp, "integer?", &[__t912])? + let __t977 = { + let __t976 = v_V3758.clone(); + rt::apply_direct(interp, "integer?", &[__t976])? }; - if match rt::is_truthy(interp, &__t913) { + if match rt::is_truthy(interp, &__t977) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t914 = Value::sym(interp.intern("shen.*maxinferences*")); - let __t915 = v_V4080.clone(); - rt::apply_direct(interp, "set", &[__t914, __t915])? + let __t978 = Value::sym(interp.intern("shen.*maxinferences*")); + let __t979 = v_V3758.clone(); + rt::apply_direct(interp, "set", &[__t978, __t979])? }); } else { break Ok({ - let __t916 = Value::str("maxinferences expects an integer value\n"); - rt::apply_direct(interp, "simple-error", &[__t916])? + let __t980 = Value::str("maxinferences expects an integer value\n"); + rt::apply_direct(interp, "simple-error", &[__t980])? }); } } @@ -5829,8 +6010,8 @@ pub fn aot_inferences(interp: &mut Interp, args: &[Value]) -> ShenResult #[allow(clippy::never_loop)] loop { break Ok({ - let __t917 = Value::sym(interp.intern("shen.*infs*")); - rt::apply_direct(interp, "value", &[__t917])? + let __t981 = Value::sym(interp.intern("shen.*infs*")); + rt::apply_direct(interp, "value", &[__t981])? }); } } @@ -5849,10 +6030,10 @@ pub fn aot_protect(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4081 = args[0].clone(); + let mut v_V3759 = args[0].clone(); #[allow(clippy::never_loop)] loop { - break Ok(v_V4081.clone()); + break Ok(v_V3759.clone()); } } @@ -5861,28 +6042,6 @@ fn install_protect(interp: &mut Interp) { interp.register_aot_direct("protect", aot_protect); } -/// AOT-compiled from KL `(defun sterror ...)` -pub fn aot_sterror(interp: &mut Interp, args: &[Value]) -> ShenResult { - if args.len() != 0 { - return Err(ShenError::new(format!( - "sterror: expected 0 args, got {}", - args.len() - ))); - } - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t918 = Value::sym(interp.intern("*sterror*")); - rt::apply_direct(interp, "value", &[__t918])? - }); - } -} - -fn install_sterror(interp: &mut Interp) { - interp.register_native("sterror", 0, aot_sterror); - interp.register_aot_direct("sterror", aot_sterror); -} - /// AOT-compiled from KL `(defun stoutput ...)` pub fn aot_stoutput(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { @@ -5894,8 +6053,8 @@ pub fn aot_stoutput(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t919 = Value::sym(interp.intern("*stoutput*")); - rt::apply_direct(interp, "value", &[__t919])? + let __t982 = Value::sym(interp.intern("*stoutput*")); + rt::apply_direct(interp, "value", &[__t982])? }); } } @@ -5914,37 +6073,37 @@ pub fn aot_string_x2d__x3e_symbol(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V4082 = args[0].clone(); + let mut v_V3760 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4083 = { - let __t920 = v_V4082.clone(); - rt::apply_direct(interp, "intern", &[__t920])? + let v_W3761 = { + let __t983 = v_V3760.clone(); + rt::apply_direct(interp, "intern", &[__t983])? }; { - let __t922 = { - let __t921 = v_W4083.clone(); - rt::is_symbol(&__t921) + let __t985 = { + let __t984 = v_W3761.clone(); + rt::is_symbol(&__t984) }; - if match rt::is_truthy(interp, &__t922) { + if match rt::is_truthy(interp, &__t985) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_W4083.clone()); + break Ok(v_W3761.clone()); } else { break Ok({ - let __t928 = { - let __t923 = Value::str("cannot intern "); - let __t927 = { - let __t924 = v_V4082.clone(); - let __t925 = Value::str(" to a symbol"); - let __t926 = Value::sym(interp.intern("shen.s")); - rt::apply_direct(interp, "shen.app", &[__t924, __t925, __t926])? + let __t991 = { + let __t986 = Value::str("cannot intern "); + let __t990 = { + let __t987 = v_V3760.clone(); + let __t988 = Value::str(" to a symbol"); + let __t989 = Value::sym(interp.intern("shen.s")); + rt::apply_direct(interp, "shen.app", &[__t987, __t988, __t989])? }; - rt::apply_direct(interp, "cn", &[__t923, __t927])? + rt::apply_direct(interp, "cn", &[__t986, __t990])? }; - rt::apply_direct(interp, "simple-error", &[__t928])? + rt::apply_direct(interp, "simple-error", &[__t991])? }); } } @@ -5966,50 +6125,50 @@ pub fn aot_optimise(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4086 = args[0].clone(); + let mut v_V3764 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t940 = { - let __t936 = Value::sym(interp.intern("+")); - let __t937 = v_V4086.clone(); - rt::eq(&__t936, &__t937) + let __t1003 = { + let __t999 = Value::sym(interp.intern("+")); + let __t1000 = v_V3764.clone(); + rt::eq(&__t999, &__t1000) }; - if match rt::is_truthy(interp, &__t940) { + if match rt::is_truthy(interp, &__t1003) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t938 = Value::sym(interp.intern("shen.*optimise*")); - let __t939 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t938, __t939])? + let __t1001 = Value::sym(interp.intern("shen.*optimise*")); + let __t1002 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t1001, __t1002])? }); } else { { - let __t935 = { - let __t931 = Value::sym(interp.intern("-")); - let __t932 = v_V4086.clone(); - rt::eq(&__t931, &__t932) + let __t998 = { + let __t994 = Value::sym(interp.intern("-")); + let __t995 = v_V3764.clone(); + rt::eq(&__t994, &__t995) }; - if match rt::is_truthy(interp, &__t935) { + if match rt::is_truthy(interp, &__t998) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t933 = Value::sym(interp.intern("shen.*optimise*")); - let __t934 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t933, __t934])? + let __t996 = Value::sym(interp.intern("shen.*optimise*")); + let __t997 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t996, __t997])? }); } else { { - let __t930 = Value::bool(true); - if match rt::is_truthy(interp, &__t930) { + let __t993 = Value::bool(true); + if match rt::is_truthy(interp, &__t993) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t929 = Value::str("optimise expects a + or a -.\n"); - rt::apply_direct(interp, "simple-error", &[__t929])? + let __t992 = Value::str("optimise expects a + or a -.\n"); + rt::apply_direct(interp, "simple-error", &[__t992])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6038,8 +6197,8 @@ pub fn aot_os(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t941 = Value::sym(interp.intern("*os*")); - rt::apply_direct(interp, "value", &[__t941])? + let __t1004 = Value::sym(interp.intern("*os*")); + rt::apply_direct(interp, "value", &[__t1004])? }); } } @@ -6060,8 +6219,8 @@ pub fn aot_language(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t942 = Value::sym(interp.intern("*language*")); - rt::apply_direct(interp, "value", &[__t942])? + let __t1005 = Value::sym(interp.intern("*language*")); + rt::apply_direct(interp, "value", &[__t1005])? }); } } @@ -6082,8 +6241,8 @@ pub fn aot_version(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t943 = Value::sym(interp.intern("*version*")); - rt::apply_direct(interp, "value", &[__t943])? + let __t1006 = Value::sym(interp.intern("*version*")); + rt::apply_direct(interp, "value", &[__t1006])? }); } } @@ -6104,8 +6263,8 @@ pub fn aot_port(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t944 = Value::sym(interp.intern("*port*")); - rt::apply_direct(interp, "value", &[__t944])? + let __t1007 = Value::sym(interp.intern("*port*")); + rt::apply_direct(interp, "value", &[__t1007])? }); } } @@ -6126,8 +6285,8 @@ pub fn aot_porters(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t945 = Value::sym(interp.intern("*porters*")); - rt::apply_direct(interp, "value", &[__t945])? + let __t1008 = Value::sym(interp.intern("*porters*")); + rt::apply_direct(interp, "value", &[__t1008])? }); } } @@ -6148,8 +6307,8 @@ pub fn aot_implementation(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t947 = Value::sym(interp.intern("*release*")); - rt::apply_direct(interp, "value", &[__t947])? + let __t1010 = Value::sym(interp.intern("*release*")); + rt::apply_direct(interp, "value", &[__t1010])? }); } } @@ -6190,24 +6349,24 @@ pub fn aot_package_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t949 = Value::bool(true); - if match rt::is_truthy(interp, &__t949) { + let __t1012 = Value::bool(true); + if match rt::is_truthy(interp, &__t1012) { Ok(b) => b, Err(e) => break Err(e), } { @@ -6215,8 +6374,8 @@ pub fn aot_package_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { Ok({ let _ = { - let __t948 = v_V4087.clone(); - rt::apply_direct(interp, "external", &[__t948])? + let __t1011 = v_V3765.clone(); + rt::apply_direct(interp, "external", &[__t1011])? }; Value::bool(true) }) @@ -6228,7 +6387,7 @@ pub fn aot_package_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult", 1, move |interp, args| { - let v_Z4088 = args[0].clone(); + let v_Z3766 = args[0].clone(); Ok(Value::bool(false)) }, Vec::new(), @@ -6284,8 +6443,8 @@ pub fn aot_userdefs(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t953 = Value::sym(interp.intern("shen.*userdefs*")); - rt::apply_direct(interp, "value", &[__t953])? + let __t1016 = Value::sym(interp.intern("shen.*userdefs*")); + rt::apply_direct(interp, "value", &[__t1016])? }); } } @@ -6306,8 +6465,8 @@ pub fn aot_optimise_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t955 = Value::sym(interp.intern("*hush*")); - rt::apply_direct(interp, "value", &[__t955])? + let __t1018 = Value::sym(interp.intern("*hush*")); + rt::apply_direct(interp, "value", &[__t1018])? }); } } @@ -6350,8 +6509,8 @@ pub fn aot_system_x2d_S_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult< #[allow(clippy::never_loop)] loop { break Ok({ - let __t956 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); - rt::apply_direct(interp, "value", &[__t956])? + let __t1019 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); + rt::apply_direct(interp, "value", &[__t1019])? }); } } @@ -6370,52 +6529,52 @@ pub fn aot_enable_x2d_type_x2d_theory(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V4091 = args[0].clone(); + let mut v_V3769 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t968 = { - let __t964 = Value::sym(interp.intern("+")); - let __t965 = v_V4091.clone(); - rt::eq(&__t964, &__t965) + let __t1031 = { + let __t1027 = Value::sym(interp.intern("+")); + let __t1028 = v_V3769.clone(); + rt::eq(&__t1027, &__t1028) }; - if match rt::is_truthy(interp, &__t968) { + if match rt::is_truthy(interp, &__t1031) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t966 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); - let __t967 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t966, __t967])? + let __t1029 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); + let __t1030 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t1029, __t1030])? }); } else { { - let __t963 = { - let __t959 = Value::sym(interp.intern("-")); - let __t960 = v_V4091.clone(); - rt::eq(&__t959, &__t960) + let __t1026 = { + let __t1022 = Value::sym(interp.intern("-")); + let __t1023 = v_V3769.clone(); + rt::eq(&__t1022, &__t1023) }; - if match rt::is_truthy(interp, &__t963) { + if match rt::is_truthy(interp, &__t1026) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t961 = + let __t1024 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); - let __t962 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t961, __t962])? + let __t1025 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t1024, __t1025])? }); } else { { - let __t958 = Value::bool(true); - if match rt::is_truthy(interp, &__t958) { + let __t1021 = Value::bool(true); + if match rt::is_truthy(interp, &__t1021) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t957 = + let __t1020 = Value::str("enable-type-theory expects a + or a -\n"); - rt::apply_direct(interp, "simple-error", &[__t957])? + rt::apply_direct(interp, "simple-error", &[__t1020])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6433,59 +6592,59 @@ fn install_enable_x2d_type_x2d_theory(interp: &mut Interp) { interp.register_aot_direct("enable-type-theory", aot_enable_x2d_type_x2d_theory); } -/// AOT-compiled from KL `(defun hush ...)` -pub fn aot_hush(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun shen.hush ...)` +pub fn aot_shen_x2e_hush(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 1 { return Err(ShenError::new(format!( - "hush: expected 1 args, got {}", + "shen.hush: expected 1 args, got {}", args.len() ))); } #[allow(unused_mut)] - let mut v_V4094 = args[0].clone(); + let mut v_V3772 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t980 = { - let __t976 = Value::sym(interp.intern("+")); - let __t977 = v_V4094.clone(); - rt::eq(&__t976, &__t977) + let __t1043 = { + let __t1039 = Value::sym(interp.intern("+")); + let __t1040 = v_V3772.clone(); + rt::eq(&__t1039, &__t1040) }; - if match rt::is_truthy(interp, &__t980) { + if match rt::is_truthy(interp, &__t1043) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t978 = Value::sym(interp.intern("*hush*")); - let __t979 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t978, __t979])? + let __t1041 = Value::sym(interp.intern("*hush*")); + let __t1042 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t1041, __t1042])? }); } else { { - let __t975 = { - let __t971 = Value::sym(interp.intern("-")); - let __t972 = v_V4094.clone(); - rt::eq(&__t971, &__t972) + let __t1038 = { + let __t1034 = Value::sym(interp.intern("-")); + let __t1035 = v_V3772.clone(); + rt::eq(&__t1034, &__t1035) }; - if match rt::is_truthy(interp, &__t975) { + if match rt::is_truthy(interp, &__t1038) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t973 = Value::sym(interp.intern("*hush*")); - let __t974 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t973, __t974])? + let __t1036 = Value::sym(interp.intern("*hush*")); + let __t1037 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t1036, __t1037])? }); } else { { - let __t970 = Value::bool(true); - if match rt::is_truthy(interp, &__t970) { + let __t1033 = Value::bool(true); + if match rt::is_truthy(interp, &__t1033) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t969 = Value::str("hush expects a + or a -\n"); - rt::apply_direct(interp, "simple-error", &[__t969])? + let __t1032 = Value::str("hush expects a + or a -\n"); + rt::apply_direct(interp, "simple-error", &[__t1032])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6498,9 +6657,9 @@ pub fn aot_hush(interp: &mut Interp, args: &[Value]) -> ShenResult { } } -fn install_hush(interp: &mut Interp) { - interp.register_native("hush", 1, aot_hush); - interp.register_aot_direct("hush", aot_hush); +fn install_shen_x2e_hush(interp: &mut Interp) { + interp.register_native("shen.hush", 1, aot_shen_x2e_hush); + interp.register_aot_direct("shen.hush", aot_shen_x2e_hush); } /// AOT-compiled from KL `(defun tc ...)` @@ -6512,50 +6671,50 @@ pub fn aot_tc(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4097 = args[0].clone(); + let mut v_V3775 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t992 = { - let __t988 = Value::sym(interp.intern("+")); - let __t989 = v_V4097.clone(); - rt::eq(&__t988, &__t989) + let __t1055 = { + let __t1051 = Value::sym(interp.intern("+")); + let __t1052 = v_V3775.clone(); + rt::eq(&__t1051, &__t1052) }; - if match rt::is_truthy(interp, &__t992) { + if match rt::is_truthy(interp, &__t1055) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t990 = Value::sym(interp.intern("shen.*tc*")); - let __t991 = Value::bool(true); - rt::apply_direct(interp, "set", &[__t990, __t991])? + let __t1053 = Value::sym(interp.intern("shen.*tc*")); + let __t1054 = Value::bool(true); + rt::apply_direct(interp, "set", &[__t1053, __t1054])? }); } else { { - let __t987 = { - let __t983 = Value::sym(interp.intern("-")); - let __t984 = v_V4097.clone(); - rt::eq(&__t983, &__t984) + let __t1050 = { + let __t1046 = Value::sym(interp.intern("-")); + let __t1047 = v_V3775.clone(); + rt::eq(&__t1046, &__t1047) }; - if match rt::is_truthy(interp, &__t987) { + if match rt::is_truthy(interp, &__t1050) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t985 = Value::sym(interp.intern("shen.*tc*")); - let __t986 = Value::bool(false); - rt::apply_direct(interp, "set", &[__t985, __t986])? + let __t1048 = Value::sym(interp.intern("shen.*tc*")); + let __t1049 = Value::bool(false); + rt::apply_direct(interp, "set", &[__t1048, __t1049])? }); } else { { - let __t982 = Value::bool(true); - if match rt::is_truthy(interp, &__t982) { + let __t1045 = Value::bool(true); + if match rt::is_truthy(interp, &__t1045) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t981 = Value::str("tc expects a + or -"); - rt::apply_direct(interp, "simple-error", &[__t981])? + let __t1044 = Value::str("tc expects a + or -"); + rt::apply_direct(interp, "simple-error", &[__t1044])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6582,23 +6741,23 @@ pub fn aot_destroy(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4098 = args[0].clone(); + let mut v_V3776 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { - let __t993 = Value::sym(interp.intern("shen.*sigf*")); - let __t997 = { - let __t994 = v_V4098.clone(); - let __t996 = { - let __t995 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t995])? + let __t1056 = Value::sym(interp.intern("shen.*sigf*")); + let __t1060 = { + let __t1057 = v_V3776.clone(); + let __t1059 = { + let __t1058 = Value::sym(interp.intern("shen.*sigf*")); + rt::apply_direct(interp, "value", &[__t1058])? }; - rt::apply_direct(interp, "shen.unassoc", &[__t994, __t996])? + rt::apply_direct(interp, "shen.unassoc", &[__t1057, __t1059])? }; - rt::apply_direct(interp, "set", &[__t993, __t997])? + rt::apply_direct(interp, "set", &[__t1056, __t1060])? }; - break Ok(v_V4098.clone()); + break Ok(v_V3776.clone()); } } } @@ -6617,108 +6776,108 @@ pub fn aot_shen_x2e_unassoc(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t1020 = { - let __t1017 = { - let __t1008 = v_V4109.clone(); - rt::is_cons(&__t1008) + let __t1083 = { + let __t1080 = { + let __t1071 = v_V3787.clone(); + rt::is_cons(&__t1071) }; - if !rt::is_truthy(interp, &__t1017)? { + if !rt::is_truthy(interp, &__t1080)? { Value::bool(false) } else { - let __t1018 = { - let __t1015 = { - let __t1010 = { - let __t1009 = v_V4109.clone(); - rt::hd(&__t1009)? + let __t1081 = { + let __t1078 = { + let __t1073 = { + let __t1072 = v_V3787.clone(); + rt::hd(&__t1072)? }; - rt::is_cons(&__t1010) + rt::is_cons(&__t1073) }; - if !rt::is_truthy(interp, &__t1015)? { + if !rt::is_truthy(interp, &__t1078)? { Value::bool(false) } else { - let __t1016 = { - let __t1011 = v_V4108.clone(); - let __t1014 = { - let __t1013 = { - let __t1012 = v_V4109.clone(); - rt::hd(&__t1012)? + let __t1079 = { + let __t1074 = v_V3786.clone(); + let __t1077 = { + let __t1076 = { + let __t1075 = v_V3787.clone(); + rt::hd(&__t1075)? }; - rt::hd(&__t1013)? + rt::hd(&__t1076)? }; - rt::eq(&__t1011, &__t1014) + rt::eq(&__t1074, &__t1077) }; - Value::bool(rt::is_truthy(interp, &__t1016)?) + Value::bool(rt::is_truthy(interp, &__t1079)?) } }; - Value::bool(rt::is_truthy(interp, &__t1018)?) + Value::bool(rt::is_truthy(interp, &__t1081)?) } }; - if match rt::is_truthy(interp, &__t1020) { + if match rt::is_truthy(interp, &__t1083) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1019 = v_V4109.clone(); - rt::tl(&__t1019)? + let __t1082 = v_V3787.clone(); + rt::tl(&__t1082)? }); } else { { - let __t1007 = { - let __t1000 = v_V4109.clone(); - rt::is_cons(&__t1000) + let __t1070 = { + let __t1063 = v_V3787.clone(); + rt::is_cons(&__t1063) }; - if match rt::is_truthy(interp, &__t1007) { + if match rt::is_truthy(interp, &__t1070) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1002 = { - let __t1001 = v_V4109.clone(); - rt::hd(&__t1001)? + let __t1065 = { + let __t1064 = v_V3787.clone(); + rt::hd(&__t1064)? }; - let __t1006 = { - let __t1003 = v_V4108.clone(); - let __t1005 = { - let __t1004 = v_V4109.clone(); - rt::tl(&__t1004)? + let __t1069 = { + let __t1066 = v_V3786.clone(); + let __t1068 = { + let __t1067 = v_V3787.clone(); + rt::tl(&__t1067)? }; rt::apply_direct( interp, "shen.unassoc", - &[__t1003, __t1005], + &[__t1066, __t1068], )? }; - rt::cons(&__t1002, &__t1006) + rt::cons(&__t1065, &__t1069) }); } else { { - let __t999 = Value::bool(true); - if match rt::is_truthy(interp, &__t999) { + let __t1062 = Value::bool(true); + if match rt::is_truthy(interp, &__t1062) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t998 = + let __t1061 = Value::str("implementation error in shen.unassoc"); - rt::apply_direct(interp, "simple-error", &[__t998])? + rt::apply_direct(interp, "simple-error", &[__t1061])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6747,36 +6906,36 @@ pub fn aot_in_x2d_package(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t1026 = Value::sym(interp.intern("shen.*package*")); - let __t1027 = v_V4110.clone(); - rt::apply_direct(interp, "set", &[__t1026, __t1027])? + let __t1089 = Value::sym(interp.intern("shen.*package*")); + let __t1090 = v_V3788.clone(); + rt::apply_direct(interp, "set", &[__t1089, __t1090])? }); } else { break Ok({ - let __t1033 = { - let __t1028 = Value::str("package "); - let __t1032 = { - let __t1029 = v_V4110.clone(); - let __t1030 = Value::str(" does not exist\n"); - let __t1031 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t1029, __t1030, __t1031])? + let __t1096 = { + let __t1091 = Value::str("package "); + let __t1095 = { + let __t1092 = v_V3788.clone(); + let __t1093 = Value::str(" does not exist\n"); + let __t1094 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t1092, __t1093, __t1094])? }; - rt::apply_direct(interp, "cn", &[__t1028, __t1032])? + rt::apply_direct(interp, "cn", &[__t1091, __t1095])? }; - rt::apply_direct(interp, "simple-error", &[__t1033])? + rt::apply_direct(interp, "simple-error", &[__t1096])? }); } } @@ -6797,46 +6956,46 @@ pub fn aot_write_x2d_to_x2d_file(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V4111 = args[0].clone(); + let mut v_V3789 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4112 = args[1].clone(); + let mut v_V3790 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4113 = { - let __t1034 = v_V4111.clone(); - let __t1035 = Value::sym(interp.intern("out")); - rt::apply_direct(interp, "open", &[__t1034, __t1035])? + let v_W3791 = { + let __t1097 = v_V3789.clone(); + let __t1098 = Value::sym(interp.intern("out")); + rt::apply_direct(interp, "open", &[__t1097, __t1098])? }; { - let v_W4114 = { - let __t1040 = { - let __t1036 = v_V4112.clone(); - rt::is_string(&__t1036) + let v_W3792 = { + let __t1103 = { + let __t1099 = v_V3790.clone(); + rt::is_string(&__t1099) }; - if rt::is_truthy(interp, &__t1040)? { - v_V4112.clone() + if rt::is_truthy(interp, &__t1103)? { + v_V3790.clone() } else { { - let __t1037 = v_V4112.clone(); - let __t1038 = Value::str(""); - let __t1039 = Value::sym(interp.intern("shen.s")); - rt::apply_direct(interp, "shen.app", &[__t1037, __t1038, __t1039])? + let __t1100 = v_V3790.clone(); + let __t1101 = Value::str(""); + let __t1102 = Value::sym(interp.intern("shen.s")); + rt::apply_direct(interp, "shen.app", &[__t1100, __t1101, __t1102])? } } }; { - let v_W4115 = { - let __t1041 = v_W4114.clone(); - let __t1042 = v_W4113.clone(); - rt::apply_direct(interp, "pr", &[__t1041, __t1042])? + let v_W3793 = { + let __t1104 = v_W3792.clone(); + let __t1105 = v_W3791.clone(); + rt::apply_direct(interp, "pr", &[__t1104, __t1105])? }; { - let v_W4116 = { - let __t1043 = v_W4113.clone(); - rt::apply_direct(interp, "close", &[__t1043])? + let v_W3794 = { + let __t1106 = v_W3791.clone(); + rt::apply_direct(interp, "close", &[__t1106])? }; - break Ok(v_V4112.clone()); + break Ok(v_V3790.clone()); } } } @@ -6860,11 +7019,11 @@ pub fn aot_fresh(interp: &mut Interp, args: &[Value]) -> ShenResult { #[allow(clippy::never_loop)] loop { break Ok({ - let __t1045 = { - let __t1044 = Value::sym(interp.intern("shen.t")); - rt::apply_direct(interp, "gensym", &[__t1044])? + let __t1108 = { + let __t1107 = Value::sym(interp.intern("shen.t")); + rt::apply_direct(interp, "gensym", &[__t1107])? }; - rt::apply_direct(interp, "shen.freshterm", &[__t1045])? + rt::apply_direct(interp, "shen.freshterm", &[__t1108])? }); } } @@ -6883,37 +7042,41 @@ pub fn aot_update_x2d_lambda_x2d_table(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V4117 = args[0].clone(); + let mut v_V3795 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4118 = args[1].clone(); + let mut v_V3796 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4119 = { - let __t1046 = v_V4117.clone(); - let __t1047 = Value::sym(interp.intern("arity")); - let __t1048 = v_V4118.clone(); - let __t1050 = { - let __t1049 = Value::sym(interp.intern("*property-vector*")); - rt::apply_direct(interp, "value", &[__t1049])? + let v_W3797 = { + let __t1109 = v_V3795.clone(); + let __t1110 = Value::sym(interp.intern("arity")); + let __t1111 = v_V3796.clone(); + let __t1113 = { + let __t1112 = Value::sym(interp.intern("*property-vector*")); + rt::apply_direct(interp, "value", &[__t1112])? }; - rt::apply_direct(interp, "put", &[__t1046, __t1047, __t1048, __t1050])? + rt::apply_direct(interp, "put", &[__t1109, __t1110, __t1111, __t1113])? }; { - let v_W4120 = { - let __t1051 = v_V4117.clone(); - rt::apply_direct(interp, "shen.lambda-entry", &[__t1051])? + let v_W3798 = { + let __t1114 = v_V3795.clone(); + rt::apply_direct(interp, "shen.lambda-entry", &[__t1114])? }; { - let v_W4121 = { - let __t1054 = { - let __t1052 = v_V4117.clone(); - let __t1053 = v_W4120.clone(); - rt::cons(&__t1052, &__t1053) + let v_W3799 = { + let __t1115 = Value::sym(interp.intern("shen.*lambdatable*")); + let __t1119 = { + let __t1116 = v_W3798.clone(); + let __t1118 = { + let __t1117 = Value::sym(interp.intern("shen.*lambdatable*")); + rt::apply_direct(interp, "value", &[__t1117])? + }; + rt::cons(&__t1116, &__t1118) }; - rt::apply_direct(interp, "shen.set-lambda-form-entry", &[__t1054])? + rt::apply_direct(interp, "set", &[__t1115, __t1119])? }; - break Ok(v_V4117.clone()); + break Ok(v_V3795.clone()); } } } @@ -6934,151 +7097,151 @@ pub fn aot_specialise(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4124 = args[0].clone(); + let mut v_V3802 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4125 = args[1].clone(); + let mut v_V3803 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1095 = { - let __t1083 = Value::int(0i64); - let __t1084 = v_V4125.clone(); - rt::eq(&__t1083, &__t1084) + let __t1160 = { + let __t1148 = Value::int(0i64); + let __t1149 = v_V3803.clone(); + rt::eq(&__t1148, &__t1149) }; - if match rt::is_truthy(interp, &__t1095) { + if match rt::is_truthy(interp, &__t1160) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t1085 = Value::sym(interp.intern("shen.*special*")); - let __t1089 = { - let __t1086 = v_V4124.clone(); - let __t1088 = { - let __t1087 = Value::sym(interp.intern("shen.*special*")); - rt::apply_direct(interp, "value", &[__t1087])? + let __t1150 = Value::sym(interp.intern("shen.*special*")); + let __t1154 = { + let __t1151 = v_V3802.clone(); + let __t1153 = { + let __t1152 = Value::sym(interp.intern("shen.*special*")); + rt::apply_direct(interp, "value", &[__t1152])? }; - rt::apply_direct(interp, "remove", &[__t1086, __t1088])? + rt::apply_direct(interp, "remove", &[__t1151, __t1153])? }; - rt::apply_direct(interp, "set", &[__t1085, __t1089])? + rt::apply_direct(interp, "set", &[__t1150, __t1154])? }; { let _ = { - let __t1090 = Value::sym(interp.intern("shen.*extraspecial*")); - let __t1094 = { - let __t1091 = v_V4124.clone(); - let __t1093 = { - let __t1092 = Value::sym(interp.intern("shen.*extraspecial*")); - rt::apply_direct(interp, "value", &[__t1092])? + let __t1155 = Value::sym(interp.intern("shen.*extraspecial*")); + let __t1159 = { + let __t1156 = v_V3802.clone(); + let __t1158 = { + let __t1157 = Value::sym(interp.intern("shen.*extraspecial*")); + rt::apply_direct(interp, "value", &[__t1157])? }; - rt::apply_direct(interp, "remove", &[__t1091, __t1093])? + rt::apply_direct(interp, "remove", &[__t1156, __t1158])? }; - rt::apply_direct(interp, "set", &[__t1090, __t1094])? + rt::apply_direct(interp, "set", &[__t1155, __t1159])? }; - break Ok(v_V4124.clone()); + break Ok(v_V3802.clone()); } } } else { { - let __t1082 = { - let __t1070 = Value::int(1i64); - let __t1071 = v_V4125.clone(); - rt::eq(&__t1070, &__t1071) + let __t1147 = { + let __t1135 = Value::int(1i64); + let __t1136 = v_V3803.clone(); + rt::eq(&__t1135, &__t1136) }; - if match rt::is_truthy(interp, &__t1082) { + if match rt::is_truthy(interp, &__t1147) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t1072 = Value::sym(interp.intern("shen.*special*")); - let __t1076 = { - let __t1073 = v_V4124.clone(); - let __t1075 = { - let __t1074 = Value::sym(interp.intern("shen.*special*")); - rt::apply_direct(interp, "value", &[__t1074])? + let __t1137 = Value::sym(interp.intern("shen.*special*")); + let __t1141 = { + let __t1138 = v_V3802.clone(); + let __t1140 = { + let __t1139 = Value::sym(interp.intern("shen.*special*")); + rt::apply_direct(interp, "value", &[__t1139])? }; - rt::apply_direct(interp, "adjoin", &[__t1073, __t1075])? + rt::apply_direct(interp, "adjoin", &[__t1138, __t1140])? }; - rt::apply_direct(interp, "set", &[__t1072, __t1076])? + rt::apply_direct(interp, "set", &[__t1137, __t1141])? }; { let _ = { - let __t1077 = Value::sym(interp.intern("shen.*extraspecial*")); - let __t1081 = { - let __t1078 = v_V4124.clone(); - let __t1080 = { - let __t1079 = + let __t1142 = Value::sym(interp.intern("shen.*extraspecial*")); + let __t1146 = { + let __t1143 = v_V3802.clone(); + let __t1145 = { + let __t1144 = Value::sym(interp.intern("shen.*extraspecial*")); - rt::apply_direct(interp, "value", &[__t1079])? + rt::apply_direct(interp, "value", &[__t1144])? }; - rt::apply_direct(interp, "remove", &[__t1078, __t1080])? + rt::apply_direct(interp, "remove", &[__t1143, __t1145])? }; - rt::apply_direct(interp, "set", &[__t1077, __t1081])? + rt::apply_direct(interp, "set", &[__t1142, __t1146])? }; - break Ok(v_V4124.clone()); + break Ok(v_V3802.clone()); } } } else { { - let __t1069 = { - let __t1057 = Value::int(2i64); - let __t1058 = v_V4125.clone(); - rt::eq(&__t1057, &__t1058) + let __t1134 = { + let __t1122 = Value::int(2i64); + let __t1123 = v_V3803.clone(); + rt::eq(&__t1122, &__t1123) }; - if match rt::is_truthy(interp, &__t1069) { + if match rt::is_truthy(interp, &__t1134) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t1059 = Value::sym(interp.intern("shen.*special*")); - let __t1063 = { - let __t1060 = v_V4124.clone(); - let __t1062 = { - let __t1061 = + let __t1124 = Value::sym(interp.intern("shen.*special*")); + let __t1128 = { + let __t1125 = v_V3802.clone(); + let __t1127 = { + let __t1126 = Value::sym(interp.intern("shen.*special*")); - rt::apply_direct(interp, "value", &[__t1061])? + rt::apply_direct(interp, "value", &[__t1126])? }; - rt::apply_direct(interp, "remove", &[__t1060, __t1062])? + rt::apply_direct(interp, "remove", &[__t1125, __t1127])? }; - rt::apply_direct(interp, "set", &[__t1059, __t1063])? + rt::apply_direct(interp, "set", &[__t1124, __t1128])? }; { let _ = { - let __t1064 = + let __t1129 = Value::sym(interp.intern("shen.*extraspecial*")); - let __t1068 = { - let __t1065 = v_V4124.clone(); - let __t1067 = { - let __t1066 = Value::sym( + let __t1133 = { + let __t1130 = v_V3802.clone(); + let __t1132 = { + let __t1131 = Value::sym( interp.intern("shen.*extraspecial*"), ); - rt::apply_direct(interp, "value", &[__t1066])? + rt::apply_direct(interp, "value", &[__t1131])? }; rt::apply_direct( interp, "adjoin", - &[__t1065, __t1067], + &[__t1130, __t1132], )? }; - rt::apply_direct(interp, "set", &[__t1064, __t1068])? + rt::apply_direct(interp, "set", &[__t1129, __t1133])? }; - break Ok(v_V4124.clone()); + break Ok(v_V3802.clone()); } } } else { { - let __t1056 = Value::bool(true); - if match rt::is_truthy(interp, &__t1056) { + let __t1121 = Value::bool(true); + if match rt::is_truthy(interp, &__t1121) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1055 = Value::str( + let __t1120 = Value::str( "specialise requires values of 0, 1 or 2\n", ); - rt::apply_direct(interp, "simple-error", &[__t1055])? + rt::apply_direct(interp, "simple-error", &[__t1120])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -7107,20 +7270,20 @@ pub fn aot_absolute(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V4126 = args[0].clone(); + let mut v_V3804 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1096 = Value::sym(interp.intern("*absolute*")); - let __t1100 = { - let __t1097 = v_V4126.clone(); - let __t1099 = { - let __t1098 = Value::sym(interp.intern("*absolute*")); - rt::apply_direct(interp, "value", &[__t1098])? + let __t1161 = Value::sym(interp.intern("*absolute*")); + let __t1165 = { + let __t1162 = v_V3804.clone(); + let __t1164 = { + let __t1163 = Value::sym(interp.intern("*absolute*")); + rt::apply_direct(interp, "value", &[__t1163])? }; - rt::cons(&__t1097, &__t1099) + rt::cons(&__t1162, &__t1164) }; - rt::apply_direct(interp, "set", &[__t1096, __t1100])? + rt::apply_direct(interp, "set", &[__t1161, __t1165])? }); } } @@ -7139,20 +7302,20 @@ pub fn aot_unabsolute(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4127 = args[0].clone(); + let mut v_V3805 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t1101 = Value::sym(interp.intern("*absolute*")); - let __t1105 = { - let __t1102 = v_V4127.clone(); - let __t1104 = { - let __t1103 = Value::sym(interp.intern("*absolute*")); - rt::apply_direct(interp, "value", &[__t1103])? + let __t1166 = Value::sym(interp.intern("*absolute*")); + let __t1170 = { + let __t1167 = v_V3805.clone(); + let __t1169 = { + let __t1168 = Value::sym(interp.intern("*absolute*")); + rt::apply_direct(interp, "value", &[__t1168])? }; - rt::apply_direct(interp, "remove", &[__t1102, __t1104])? + rt::apply_direct(interp, "remove", &[__t1167, __t1169])? }; - rt::apply_direct(interp, "set", &[__t1101, __t1105])? + rt::apply_direct(interp, "set", &[__t1166, __t1170])? }); } } @@ -7203,8 +7366,6 @@ pub fn install(interp: &mut Interp) { install_tlv(interp); install_shen_x2e_tlv_x2d_help(interp); install_assoc(interp); - install_shen_x2e_assoc_x2d_set(interp); - install_shen_x2e_assoc_x2d_rm(interp); install_boolean_x3f_(interp); install_nl(interp); install_difference(interp); @@ -7215,6 +7376,8 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_fix_x2d_help(interp); install_put(interp); install_unput(interp); + install_shen_x2e_remove_x2d_pointer(interp); + install_shen_x2e_change_x2d_pointer_x2d_value(interp); install_get(interp); install_hash(interp); install_shen_x2e_hashkey(interp); @@ -7237,7 +7400,6 @@ pub fn install(interp: &mut Interp) { install_explode(interp); install_shen_x2e_explode_x2d_h(interp); install_cd(interp); - install_shen_x2e_for_x2d_each(interp); install_map(interp); install_shen_x2e_map_x2d_h(interp); install_length(interp); @@ -7255,7 +7417,6 @@ pub fn install(interp: &mut Interp) { install_maxinferences(interp); install_inferences(interp); install_protect(interp); - install_sterror(interp); install_stoutput(interp); install_string_x2d__x3e_symbol(interp); install_optimise(interp); @@ -7273,7 +7434,7 @@ pub fn install(interp: &mut Interp) { install_hush_x3f_(interp); install_system_x2d_S_x3f_(interp); install_enable_x2d_type_x2d_theory(interp); - install_hush(interp); + install_shen_x2e_hush(interp); install_tc(interp); install_destroy(interp); install_shen_x2e_unassoc(interp); diff --git a/crates/shen-rust/src/aot/kernel/t_star.rs b/crates/shen-rust/src/aot/kernel/t_star.rs index 6cf8cdb..1194b50 100644 --- a/crates/shen-rust/src/aot/kernel/t_star.rs +++ b/crates/shen-rust/src/aot/kernel/t_star.rs @@ -32,24 +32,24 @@ pub fn aot_shen_x2e_typecheck(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V4853 = args[0].clone(); + let mut v_V4434 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4854 = args[1].clone(); + let mut v_V4435 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4855 = { - let __t0 = v_V4854.clone(); + let v_W4436 = { + let __t0 = v_V4435.clone(); rt::apply_direct(interp, "shen.extract-vars", &[__t0])? }; { - let v_W4856 = { - let __t1 = v_V4854.clone(); + let v_W4437 = { + let __t1 = v_V4435.clone(); rt::apply_direct(interp, "shen.rectify-type", &[__t1])? }; { - let v_W4857 = { - let __t2 = v_V4853.clone(); + let v_W4438 = { + let __t2 = v_V4434.clone(); rt::apply_direct(interp, "shen.curry", &[__t2])? }; break Ok({ @@ -57,66 +57,66 @@ pub fn aot_shen_x2e_typecheck(interp: &mut Interp, args: &[Value]) -> ShenResult let __t42 = { let __t35 = { let __t33 = { - let v_W4855 = v_W4855.clone(); - let v_W4856 = v_W4856.clone(); - let v_W4857 = v_W4857.clone(); + let v_W4436 = v_W4436.clone(); + let v_W4437 = v_W4437.clone(); + let v_W4438 = v_W4438.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4858 = args[0].clone(); + let v_Z4439 = args[0].clone(); Ok({ - let v_W4855 = v_W4855.clone(); - let v_W4856 = v_W4856.clone(); - let v_W4857 = v_W4857.clone(); - let v_Z4858 = v_Z4858.clone(); + let v_W4436 = v_W4436.clone(); + let v_W4437 = v_W4437.clone(); + let v_W4438 = v_W4438.clone(); + let v_Z4439 = v_Z4439.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4859 = args[0].clone(); + let v_Z4440 = args[0].clone(); Ok({ - let v_W4855 = v_W4855.clone(); - let v_W4856 = v_W4856.clone(); - let v_W4857 = v_W4857.clone(); - let v_Z4858 = v_Z4858.clone(); - let v_Z4859 = v_Z4859.clone(); + let v_W4436 = v_W4436.clone(); + let v_W4437 = v_W4437.clone(); + let v_W4438 = v_W4438.clone(); + let v_Z4439 = v_Z4439.clone(); + let v_Z4440 = v_Z4440.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4860 = + let v_Z4441 = args[0].clone(); Ok({ - let v_W4855 = - v_W4855.clone(); - let v_W4856 = - v_W4856.clone(); - let v_W4857 = - v_W4857.clone(); - let v_Z4858 = - v_Z4858.clone(); - let v_Z4859 = - v_Z4859.clone(); - let v_Z4860 = - v_Z4860.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z4861 = args[0].clone(); Ok({ let v_W4862 = { let __t3 = v_Z4858.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3])? }; { let __t4 = v_Z4858.clone(); let __t32 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t8 = { let __t7 = { let __t5 = v_W4855.clone(); let __t6 = v_Z4858.clone(); rt::apply_direct(interp, "shen.deref", &[__t5, __t6])? }; rt::apply_direct(interp, "receive", &[__t7])? }; let __t12 = { let __t11 = { let __t9 = v_W4856.clone(); let __t10 = v_Z4858.clone(); rt::apply_direct(interp, "shen.deref", &[__t9, __t10])? }; rt::apply_direct(interp, "receive", &[__t11])? }; let __t13 = v_W4862.clone(); let __t14 = v_Z4858.clone(); let __t15 = v_Z4859.clone(); let __t16 = v_Z4860.clone(); let __t31 = { let v_W4857 = v_W4857.clone(); let v_W4862 = v_W4862.clone(); let v_Z4858 = v_Z4858.clone(); let v_Z4859 = v_Z4859.clone(); let v_Z4860 = v_Z4860.clone(); let v_Z4861 = v_Z4861.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t20 = { let __t19 = { let __t17 = v_W4857.clone(); let __t18 = v_Z4858.clone(); rt::apply_direct(interp, "shen.deref", &[__t17, __t18])? }; rt::apply_direct(interp, "receive", &[__t19])? }; let __t21 = v_W4862.clone(); let __t22 = v_Z4858.clone(); let __t23 = v_Z4859.clone(); let __t24 = v_Z4860.clone(); let __t30 = { let v_W4862 = v_W4862.clone(); let v_Z4858 = v_Z4858.clone(); let v_Z4859 = v_Z4859.clone(); let v_Z4860 = v_Z4860.clone(); let v_Z4861 = v_Z4861.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t25 = v_W4862.clone(); let __t26 = v_Z4858.clone(); let __t27 = v_Z4859.clone(); let __t28 = v_Z4860.clone(); let __t29 = v_Z4861.clone(); rt::apply_direct(interp, "return", &[__t25, __t26, __t27, __t28, __t29])? }), vec![v_W4862, v_Z4858, v_Z4859, v_Z4860, v_Z4861], interp) }; rt::apply_direct(interp, "shen.toplevel-forms", &[__t20, __t21, __t22, __t23, __t24, __t30])? }), vec![v_W4857, v_W4862, v_Z4858, v_Z4859, v_Z4860, v_Z4861], interp) }; rt::apply_direct(interp, "shen.insert-prolog-variables", &[__t8, __t12, __t13, __t14, __t15, __t16, __t31])? } }; rt::apply_direct(interp, "shen.gc", &[__t4, __t32])? } }) }, vec![v_W4855, v_W4856, v_W4857, v_Z4858, v_Z4859, v_Z4860], interp) + let v_W4436 = + v_W4436.clone(); + let v_W4437 = + v_W4437.clone(); + let v_W4438 = + v_W4438.clone(); + let v_Z4439 = + v_Z4439.clone(); + let v_Z4440 = + v_Z4440.clone(); + let v_Z4441 = + v_Z4441.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z4442 = args[0].clone(); Ok({ let v_W4443 = { let __t3 = v_Z4439.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3])? }; { let __t4 = v_Z4439.clone(); let __t32 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t8 = { let __t7 = { let __t5 = v_W4436.clone(); let __t6 = v_Z4439.clone(); rt::apply_direct(interp, "shen.deref", &[__t5, __t6])? }; rt::apply_direct(interp, "receive", &[__t7])? }; let __t12 = { let __t11 = { let __t9 = v_W4437.clone(); let __t10 = v_Z4439.clone(); rt::apply_direct(interp, "shen.deref", &[__t9, __t10])? }; rt::apply_direct(interp, "receive", &[__t11])? }; let __t13 = v_W4443.clone(); let __t14 = v_Z4439.clone(); let __t15 = v_Z4440.clone(); let __t16 = v_Z4441.clone(); let __t31 = { let v_W4438 = v_W4438.clone(); let v_W4443 = v_W4443.clone(); let v_Z4439 = v_Z4439.clone(); let v_Z4440 = v_Z4440.clone(); let v_Z4441 = v_Z4441.clone(); let v_Z4442 = v_Z4442.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t20 = { let __t19 = { let __t17 = v_W4438.clone(); let __t18 = v_Z4439.clone(); rt::apply_direct(interp, "shen.deref", &[__t17, __t18])? }; rt::apply_direct(interp, "receive", &[__t19])? }; let __t21 = v_W4443.clone(); let __t22 = v_Z4439.clone(); let __t23 = v_Z4440.clone(); let __t24 = v_Z4441.clone(); let __t30 = { let v_W4443 = v_W4443.clone(); let v_Z4439 = v_Z4439.clone(); let v_Z4440 = v_Z4440.clone(); let v_Z4441 = v_Z4441.clone(); let v_Z4442 = v_Z4442.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t25 = v_W4443.clone(); let __t26 = v_Z4439.clone(); let __t27 = v_Z4440.clone(); let __t28 = v_Z4441.clone(); let __t29 = v_Z4442.clone(); rt::apply_direct(interp, "return", &[__t25, __t26, __t27, __t28, __t29])? }), vec![v_W4443, v_Z4439, v_Z4440, v_Z4441, v_Z4442], interp) }; rt::apply_direct(interp, "shen.toplevel-forms", &[__t20, __t21, __t22, __t23, __t24, __t30])? }), vec![v_W4438, v_W4443, v_Z4439, v_Z4440, v_Z4441, v_Z4442], interp) }; rt::apply_direct(interp, "shen.insert-prolog-variables", &[__t8, __t12, __t13, __t14, __t15, __t16, __t31])? } }; rt::apply_direct(interp, "shen.gc", &[__t4, __t32])? } }) }, vec![v_W4436, v_W4437, v_W4438, v_Z4439, v_Z4440, v_Z4441], interp) }) }, vec![ - v_W4855, v_W4856, v_W4857, - v_Z4858, v_Z4859, + v_W4436, v_W4437, v_W4438, + v_Z4439, v_Z4440, ], interp, ) }) }, - vec![v_W4855, v_W4856, v_W4857, v_Z4858], + vec![v_W4436, v_W4437, v_W4438, v_Z4439], interp, ) }) }, - vec![v_W4855, v_W4856, v_W4857], + vec![v_W4436, v_W4437, v_W4438], interp, ) }; @@ -175,37 +175,37 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( ))); } #[allow(unused_mut)] - let mut v_V4863 = args[0].clone(); + let mut v_V4444 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4864 = args[1].clone(); + let mut v_V4445 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4865 = args[2].clone(); + let mut v_V4446 = args[2].clone(); #[allow(unused_mut)] - let mut v_V4866 = args[3].clone(); + let mut v_V4447 = args[3].clone(); #[allow(unused_mut)] - let mut v_V4867 = args[4].clone(); + let mut v_V4448 = args[4].clone(); #[allow(unused_mut)] - let mut v_V4868 = args[5].clone(); + let mut v_V4449 = args[5].clone(); #[allow(unused_mut)] - let mut v_V4869 = args[6].clone(); + let mut v_V4450 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4870 = { + let v_W4451 = { let __t58 = { - let __t46 = v_V4867.clone(); + let __t46 = v_V4448.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t46])? }; if rt::is_truthy(interp, &__t58)? { { - let v_W4871 = { - let __t47 = v_V4863.clone(); - let __t48 = v_V4866.clone(); + let v_W4452 = { + let __t47 = v_V4444.clone(); + let __t48 = v_V4447.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t47, __t48])? }; { let __t57 = { - let __t49 = v_W4871.clone(); + let __t49 = v_W4452.clone(); let __t50 = Value::nil(); rt::eq(&__t49, &__t50) }; @@ -213,12 +213,12 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t51 = v_V4864.clone(); - let __t52 = v_V4865.clone(); - let __t53 = v_V4866.clone(); - let __t54 = v_V4867.clone(); - let __t55 = v_V4868.clone(); - let __t56 = v_V4869.clone(); + let __t51 = v_V4445.clone(); + let __t52 = v_V4446.clone(); + let __t53 = v_V4447.clone(); + let __t54 = v_V4448.clone(); + let __t55 = v_V4449.clone(); + let __t56 = v_V4450.clone(); rt::apply_direct( interp, "is!", @@ -237,7 +237,7 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( }; { let __t61 = { - let __t59 = v_W4870.clone(); + let __t59 = v_W4451.clone(); let __t60 = Value::bool(false); rt::eq(&__t59, &__t60) }; @@ -247,7 +247,7 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( } { { let __t63 = { - let __t62 = v_V4867.clone(); + let __t62 = v_V4448.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t62])? }; if match rt::is_truthy(interp, &__t63) { @@ -255,14 +255,14 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( Err(e) => break Err(e), } { { - let v_W4872 = { - let __t64 = v_V4863.clone(); - let __t65 = v_V4866.clone(); + let v_W4453 = { + let __t64 = v_V4444.clone(); + let __t65 = v_V4447.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t64, __t65])? }; { let __t67 = { - let __t66 = v_W4872.clone(); + let __t66 = v_W4453.clone(); rt::is_cons(&__t66) }; if match rt::is_truthy(interp, &__t67) { @@ -270,18 +270,18 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( Err(e) => break Err(e), } { { - let v_W4873 = { - let __t68 = v_W4872.clone(); + let v_W4454 = { + let __t68 = v_W4453.clone(); rt::hd(&__t68)? }; { - let v_W4874 = { - let __t69 = v_W4872.clone(); + let v_W4455 = { + let __t69 = v_W4453.clone(); rt::tl(&__t69)? }; { - let v_W4875 = { - let __t70 = v_V4866.clone(); + let v_W4456 = { + let __t70 = v_V4447.clone(); rt::apply_direct( interp, "shen.newpv", @@ -289,7 +289,7 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( )? }; break Ok({ - let __t71 = v_V4866.clone(); + let __t71 = v_V4447.clone(); let __t84 = { let _ = { rt::apply_direct( @@ -299,30 +299,30 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( )? }; { - let __t72 = v_W4874.clone(); + let __t72 = v_W4455.clone(); let __t78 = { let __t75 = { - let __t73 = v_W4875.clone(); - let __t74 = v_V4866.clone(); + let __t73 = v_W4456.clone(); + let __t74 = v_V4447.clone(); rt::apply_direct( interp, "shen.deref", &[__t73, __t74], )? }; - let __t76 = v_W4873.clone(); - let __t77 = v_V4864.clone(); + let __t76 = v_W4454.clone(); + let __t77 = v_V4445.clone(); rt::apply_direct( interp, "subst", &[__t75, __t76, __t77], )? }; - let __t79 = v_V4865.clone(); - let __t80 = v_V4866.clone(); - let __t81 = v_V4867.clone(); - let __t82 = v_V4868.clone(); - let __t83 = v_V4869.clone(); + let __t79 = v_V4446.clone(); + let __t80 = v_V4447.clone(); + let __t81 = v_V4448.clone(); + let __t82 = v_V4449.clone(); + let __t83 = v_V4450.clone(); rt::apply_direct( interp, "shen.insert-prolog-variables", @@ -352,7 +352,7 @@ pub fn aot_shen_x2e_insert_x2d_prolog_x2d_variables( } } } else { - break Ok(v_W4870.clone()); + break Ok(v_W4451.clone()); } } } @@ -380,51 +380,51 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V4876 = args[0].clone(); + let mut v_V4457 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4877 = args[1].clone(); + let mut v_V4458 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4878 = args[2].clone(); + let mut v_V4459 = args[2].clone(); #[allow(unused_mut)] - let mut v_V4879 = args[3].clone(); + let mut v_V4460 = args[3].clone(); #[allow(unused_mut)] - let mut v_V4880 = args[4].clone(); + let mut v_V4461 = args[4].clone(); #[allow(unused_mut)] - let mut v_V4881 = args[5].clone(); + let mut v_V4462 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4882 = { - let __t85 = v_V4880.clone(); + let v_W4463 = { + let __t85 = v_V4461.clone(); let __t86 = Value::int(1i64); rt::add(&__t85, &__t86)? }; { - let v_W4883 = { + let v_W4464 = { let __t131 = { - let __t87 = v_V4879.clone(); + let __t87 = v_V4460.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t87])? }; if rt::is_truthy(interp, &__t131)? { { - let v_W4884 = { - let __t88 = v_V4876.clone(); - let __t89 = v_V4878.clone(); + let v_W4465 = { + let __t88 = v_V4457.clone(); + let __t89 = v_V4459.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t88, __t89])? }; { let __t130 = { - let __t90 = v_W4884.clone(); + let __t90 = v_W4465.clone(); rt::is_cons(&__t90) }; if rt::is_truthy(interp, &__t130)? { { - let v_W4885 = { + let v_W4466 = { let __t92 = { - let __t91 = v_W4884.clone(); + let __t91 = v_W4465.clone(); rt::hd(&__t91)? }; - let __t93 = v_V4878.clone(); + let __t93 = v_V4459.clone(); rt::apply_direct( interp, "shen.lazyderef", @@ -433,18 +433,18 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S }; { let __t129 = { - let __t94 = v_W4885.clone(); + let __t94 = v_W4466.clone(); let __t95 = Value::sym(interp.intern("define")); rt::eq(&__t94, &__t95) }; if rt::is_truthy(interp, &__t129)? { { - let v_W4886 = { + let v_W4467 = { let __t97 = { - let __t96 = v_W4884.clone(); + let __t96 = v_W4465.clone(); rt::tl(&__t96)? }; - let __t98 = v_V4878.clone(); + let __t98 = v_V4459.clone(); rt::apply_direct( interp, "shen.lazyderef", @@ -453,19 +453,19 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S }; { let __t128 = { - let __t99 = v_W4886.clone(); + let __t99 = v_W4467.clone(); rt::is_cons(&__t99) }; if rt::is_truthy(interp, &__t128)? { { - let v_W4887 = { - let __t100 = v_W4886.clone(); + let v_W4468 = { + let __t100 = v_W4467.clone(); rt::hd(&__t100)? }; { - let v_W4888 = { + let v_W4469 = { let __t101 = - v_W4886.clone(); + v_W4467.clone(); rt::tl(&__t101)? }; { @@ -481,27 +481,27 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S rt::apply_direct(interp, "shen.type-theory-enabled?", &[])? }; let __t103 = - v_V4878.clone(); + v_V4459.clone(); let __t104 = - v_V4879.clone(); + v_V4460.clone(); let __t105 = - v_W4882.clone(); + v_W4463.clone(); let __t127 = { - let v_V4877 = - v_V4877.clone(); - let v_V4878 = - v_V4878.clone(); - let v_V4879 = - v_V4879.clone(); - let v_V4881 = - v_V4881.clone(); - let v_W4882 = - v_W4882.clone(); - let v_W4887 = - v_W4887.clone(); - let v_W4888 = - v_W4888.clone(); - rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t106 = v_V4878.clone(); let __t107 = v_V4879.clone(); let __t108 = v_W4882.clone(); let __t126 = { let v_V4877 = v_V4877.clone(); let v_V4878 = v_V4878.clone(); let v_V4879 = v_V4879.clone(); let v_V4881 = v_V4881.clone(); let v_W4882 = v_W4882.clone(); let v_W4887 = v_W4887.clone(); let v_W4888 = v_W4888.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t110 = { let __t109 = Value::sym(interp.intern("shen.*spy*")); rt::apply_direct(interp, "value", &[__t109])? }; let __t111 = v_W4887.clone(); let __t112 = v_V4878.clone(); let __t113 = v_V4879.clone(); let __t114 = v_W4882.clone(); let __t125 = { let v_V4877 = v_V4877.clone(); let v_V4878 = v_V4878.clone(); let v_V4879 = v_V4879.clone(); let v_V4881 = v_V4881.clone(); let v_W4882 = v_W4882.clone(); let v_W4887 = v_W4887.clone(); let v_W4888 = v_W4888.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t119 = { let __t115 = Value::sym(interp.intern("define")); let __t118 = { let __t116 = v_W4887.clone(); let __t117 = v_W4888.clone(); rt::cons(&__t116, &__t117) }; rt::cons(&__t115, &__t118) }; let __t120 = v_V4877.clone(); let __t121 = v_V4878.clone(); let __t122 = v_V4879.clone(); let __t123 = v_W4882.clone(); let __t124 = v_V4881.clone(); rt::apply_direct(interp, "shen.t*", &[__t119, __t120, __t121, __t122, __t123, __t124])? }), vec![v_V4877, v_V4878, v_V4879, v_V4881, v_W4882, v_W4887, v_W4888], interp) }; rt::apply_direct(interp, "shen.signal-def", &[__t110, __t111, __t112, __t113, __t114, __t125])? }), vec![v_V4877, v_V4878, v_V4879, v_V4881, v_W4882, v_W4887, v_W4888], interp) }; rt::apply_direct(interp, "shen.cut", &[__t106, __t107, __t108, __t126])? }), vec![v_V4877, v_V4878, v_V4879, v_V4881, v_W4882, v_W4887, v_W4888], interp) + let v_V4458 = + v_V4458.clone(); + let v_V4459 = + v_V4459.clone(); + let v_V4460 = + v_V4460.clone(); + let v_V4462 = + v_V4462.clone(); + let v_W4463 = + v_W4463.clone(); + let v_W4468 = + v_W4468.clone(); + let v_W4469 = + v_W4469.clone(); + rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t106 = v_V4459.clone(); let __t107 = v_V4460.clone(); let __t108 = v_W4463.clone(); let __t126 = { let v_V4458 = v_V4458.clone(); let v_V4459 = v_V4459.clone(); let v_V4460 = v_V4460.clone(); let v_V4462 = v_V4462.clone(); let v_W4463 = v_W4463.clone(); let v_W4468 = v_W4468.clone(); let v_W4469 = v_W4469.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t110 = { let __t109 = Value::sym(interp.intern("shen.*spy*")); rt::apply_direct(interp, "value", &[__t109])? }; let __t111 = v_W4468.clone(); let __t112 = v_V4459.clone(); let __t113 = v_V4460.clone(); let __t114 = v_W4463.clone(); let __t125 = { let v_V4458 = v_V4458.clone(); let v_V4459 = v_V4459.clone(); let v_V4460 = v_V4460.clone(); let v_V4462 = v_V4462.clone(); let v_W4463 = v_W4463.clone(); let v_W4468 = v_W4468.clone(); let v_W4469 = v_W4469.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t119 = { let __t115 = Value::sym(interp.intern("define")); let __t118 = { let __t116 = v_W4468.clone(); let __t117 = v_W4469.clone(); rt::cons(&__t116, &__t117) }; rt::cons(&__t115, &__t118) }; let __t120 = v_V4458.clone(); let __t121 = v_V4459.clone(); let __t122 = v_V4460.clone(); let __t123 = v_W4463.clone(); let __t124 = v_V4462.clone(); rt::apply_direct(interp, "shen.t*", &[__t119, __t120, __t121, __t122, __t123, __t124])? }), vec![v_V4458, v_V4459, v_V4460, v_V4462, v_W4463, v_W4468, v_W4469], interp) }; rt::apply_direct(interp, "shen.signal-def", &[__t110, __t111, __t112, __t113, __t114, __t125])? }), vec![v_V4458, v_V4459, v_V4460, v_V4462, v_W4463, v_W4468, v_W4469], interp) }; rt::apply_direct(interp, "shen.cut", &[__t106, __t107, __t108, __t126])? }), vec![v_V4458, v_V4459, v_V4460, v_V4462, v_W4463, v_W4468, v_W4469], interp) }; rt::apply_direct( interp, @@ -537,7 +537,7 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S }; { let __t134 = { - let __t132 = v_W4883.clone(); + let __t132 = v_W4464.clone(); let __t133 = Value::bool(false); rt::eq(&__t132, &__t133) }; @@ -546,9 +546,9 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { { - let v_W4889 = { + let v_W4470 = { let __t149 = { - let __t135 = v_V4879.clone(); + let __t135 = v_V4460.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t135])? }; if rt::is_truthy(interp, &__t149)? { @@ -556,7 +556,7 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t143 = { - let __t136 = v_V4876.clone(); + let __t136 = v_V4457.clone(); let __t142 = { let __t138 = { let __t137 = Value::str(":"); @@ -567,7 +567,7 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S )? }; let __t141 = { - let __t139 = v_V4877.clone(); + let __t139 = v_V4458.clone(); let __t140 = Value::nil(); rt::cons(&__t139, &__t140) }; @@ -576,10 +576,10 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S rt::cons(&__t136, &__t142) }; let __t144 = Value::nil(); - let __t145 = v_V4878.clone(); - let __t146 = v_V4879.clone(); - let __t147 = v_W4882.clone(); - let __t148 = v_V4881.clone(); + let __t145 = v_V4459.clone(); + let __t146 = v_V4460.clone(); + let __t147 = v_W4463.clone(); + let __t148 = v_V4462.clone(); rt::apply_direct( interp, "shen.system-S", @@ -593,7 +593,7 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S }; { let __t152 = { - let __t150 = v_W4889.clone(); + let __t150 = v_W4470.clone(); let __t151 = Value::bool(false); rt::eq(&__t150, &__t151) }; @@ -602,17 +602,17 @@ pub fn aot_shen_x2e_toplevel_x2d_forms(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { break Ok({ - let __t153 = v_V4879.clone(); - let __t154 = v_W4882.clone(); + let __t153 = v_V4460.clone(); + let __t154 = v_W4463.clone(); rt::apply_direct(interp, "shen.unlock", &[__t153, __t154])? }); } else { - break Ok(v_W4889.clone()); + break Ok(v_W4470.clone()); } } } } else { - break Ok(v_W4883.clone()); + break Ok(v_W4464.clone()); } } } @@ -634,42 +634,42 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V4890 = args[0].clone(); + let mut v_V4471 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4891 = args[1].clone(); + let mut v_V4472 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4892 = args[2].clone(); + let mut v_V4473 = args[2].clone(); #[allow(unused_mut)] - let mut v_V4893 = args[3].clone(); + let mut v_V4474 = args[3].clone(); #[allow(unused_mut)] - let mut v_V4894 = args[4].clone(); + let mut v_V4475 = args[4].clone(); #[allow(unused_mut)] - let mut v_V4895 = args[5].clone(); + let mut v_V4476 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4896 = { + let v_W4477 = { let __t161 = { - let __t155 = v_V4893.clone(); + let __t155 = v_V4474.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t155])? }; if rt::is_truthy(interp, &__t161)? { { - let v_W4897 = { - let __t156 = v_V4890.clone(); - let __t157 = v_V4892.clone(); + let v_W4478 = { + let __t156 = v_V4471.clone(); + let __t157 = v_V4473.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t156, __t157])? }; { let __t160 = { - let __t158 = v_W4897.clone(); + let __t158 = v_W4478.clone(); let __t159 = Value::bool(false); rt::eq(&__t158, &__t159) }; if rt::is_truthy(interp, &__t160)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; - rt::apply_value(interp, v_V4895.clone(), &[])? + rt::apply_value(interp, v_V4476.clone(), &[])? } } else { Value::bool(false) @@ -682,7 +682,7 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR }; { let __t164 = { - let __t162 = v_W4896.clone(); + let __t162 = v_W4477.clone(); let __t163 = Value::bool(false); rt::eq(&__t162, &__t163) }; @@ -692,7 +692,7 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR } { { let __t166 = { - let __t165 = v_V4893.clone(); + let __t165 = v_V4474.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t165])? }; if match rt::is_truthy(interp, &__t166) { @@ -700,14 +700,14 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W4898 = { - let __t167 = v_V4890.clone(); - let __t168 = v_V4892.clone(); + let v_W4479 = { + let __t167 = v_V4471.clone(); + let __t168 = v_V4473.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t167, __t168])? }; { let __t171 = { - let __t169 = v_W4898.clone(); + let __t169 = v_W4479.clone(); let __t170 = Value::bool(true); rt::eq(&__t169, &__t170) }; @@ -716,12 +716,12 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR Err(e) => break Err(e), } { { - let v_W4899 = { - let __t172 = v_V4892.clone(); + let v_W4480 = { + let __t172 = v_V4473.clone(); rt::apply_direct(interp, "shen.newpv", &[__t172])? }; break Ok({ - let __t173 = v_V4892.clone(); + let __t173 = v_V4473.clone(); let __t189 = { let _ = { rt::apply_direct( @@ -731,7 +731,7 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR )? }; { - let __t174 = v_W4899.clone(); + let __t174 = v_W4480.clone(); let __t184 = { let __t182 = { let __t175 = Value::str( @@ -740,9 +740,9 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR let __t181 = { let __t178 = { let __t176 = - v_V4891.clone(); + v_V4472.clone(); let __t177 = - v_V4892.clone(); + v_V4473.clone(); rt::apply_direct( interp, "shen.deref", @@ -778,10 +778,10 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR &[__t182, __t183], )? }; - let __t185 = v_V4892.clone(); - let __t186 = v_V4893.clone(); - let __t187 = v_V4894.clone(); - let __t188 = v_V4895.clone(); + let __t185 = v_V4473.clone(); + let __t186 = v_V4474.clone(); + let __t187 = v_V4475.clone(); + let __t188 = v_V4476.clone(); rt::apply_direct( interp, "is", @@ -809,7 +809,7 @@ pub fn aot_shen_x2e_signal_x2d_def(interp: &mut Interp, args: &[Value]) -> ShenR } } } else { - break Ok(v_W4896.clone()); + break Ok(v_W4477.clone()); } } } @@ -830,12 +830,12 @@ pub fn aot_shen_x2e_rectify_x2d_type(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V4900 = args[0].clone(); + let mut v_V4481 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ let __t191 = { - let __t190 = v_V4900.clone(); + let __t190 = v_V4481.clone(); rt::apply_direct(interp, "shen.curry-type", &[__t190])? }; rt::apply_direct(interp, "shen.demodulate", &[__t191])? @@ -857,21 +857,21 @@ pub fn aot_shen_x2e_demodulate(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V4901 = args[0].clone(); + let mut v_V4482 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let v_W4902 = { + let v_W4483 = { let __t193 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4903 = args[0].clone(); + let v_Z4484 = args[0].clone(); Ok({ - let __t192 = v_Z4903.clone(); + let __t192 = v_Z4484.clone(); rt::apply_direct(interp, "shen.demod", &[__t192])? }) }, @@ -879,20 +879,20 @@ pub fn aot_shen_x2e_demodulate(interp: &mut Interp, args: &[Value]) -> ShenResul interp, ) }; - let __t194 = v_V4901.clone(); + let __t194 = v_V4482.clone(); rt::apply_direct(interp, "shen.walk", &[__t193, __t194])? }; { let __t198 = { - let __t195 = v_W4902.clone(); - let __t196 = v_V4901.clone(); + let __t195 = v_W4483.clone(); + let __t196 = v_V4482.clone(); rt::eq(&__t195, &__t196) }; if rt::is_truthy(interp, &__t198)? { - v_V4901.clone() + v_V4482.clone() } else { { - let __t197 = v_W4902.clone(); + let __t197 = v_W4483.clone(); rt::apply_direct(interp, "shen.demodulate", &[__t197])? } } @@ -902,15 +902,15 @@ pub fn aot_shen_x2e_demodulate(interp: &mut Interp, args: &[Value]) -> ShenResul Ok(v) => v, Err(e) => { let __h = { - let v_V4901 = v_V4901.clone(); + let v_V4482 = v_V4482.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4904 = args[0].clone(); - Ok(v_V4901.clone()) + let v_Z4485 = args[0].clone(); + Ok(v_V4482.clone()) }, - vec![v_V4901], + vec![v_V4482], interp, ) }; @@ -936,13 +936,13 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V4905 = args[0].clone(); + let mut v_V4486 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t347 = { let __t335 = { - let __t307 = v_V4905.clone(); + let __t307 = v_V4486.clone(); rt::is_cons(&__t307) }; if !rt::is_truthy(interp, &__t335)? { @@ -951,7 +951,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t336 = { let __t333 = { let __t309 = { - let __t308 = v_V4905.clone(); + let __t308 = v_V4486.clone(); rt::tl(&__t308)? }; rt::is_cons(&__t309) @@ -964,7 +964,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t310 = Value::sym(interp.intern("-->")); let __t313 = { let __t312 = { - let __t311 = v_V4905.clone(); + let __t311 = v_V4486.clone(); rt::tl(&__t311)? }; rt::hd(&__t312)? @@ -978,7 +978,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t329 = { let __t316 = { let __t315 = { - let __t314 = v_V4905.clone(); + let __t314 = v_V4486.clone(); rt::tl(&__t314)? }; rt::tl(&__t315)? @@ -993,7 +993,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t320 = { let __t319 = { let __t318 = { - let __t317 = v_V4905.clone(); + let __t317 = v_V4486.clone(); rt::tl(&__t317)? }; rt::tl(&__t318)? @@ -1013,7 +1013,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t324 = { let __t323 = { let __t322 = - v_V4905.clone(); + v_V4486.clone(); rt::tl(&__t322)? }; rt::tl(&__t323)? @@ -1046,7 +1046,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR { let __t346 = { let __t338 = { - let __t337 = v_V4905.clone(); + let __t337 = v_V4486.clone(); rt::hd(&__t337)? }; let __t345 = { @@ -1054,7 +1054,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t344 = { let __t342 = { let __t341 = { - let __t340 = v_V4905.clone(); + let __t340 = v_V4486.clone(); rt::tl(&__t340)? }; rt::tl(&__t341)? @@ -1066,14 +1066,14 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR }; rt::cons(&__t338, &__t345) }; - v_V4905 = __t346; + v_V4486 = __t346; continue; } } else { { let __t306 = { let __t289 = { - let __t246 = v_V4905.clone(); + let __t246 = v_V4486.clone(); rt::is_cons(&__t246) }; if !rt::is_truthy(interp, &__t289)? { @@ -1082,7 +1082,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t290 = { let __t287 = { let __t248 = { - let __t247 = v_V4905.clone(); + let __t247 = v_V4486.clone(); rt::hd(&__t247)? }; rt::is_cons(&__t248) @@ -1095,7 +1095,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t249 = Value::sym(interp.intern("list")); let __t252 = { let __t251 = { - let __t250 = v_V4905.clone(); + let __t250 = v_V4486.clone(); rt::hd(&__t250)? }; rt::hd(&__t251)? @@ -1109,7 +1109,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t283 = { let __t255 = { let __t254 = { - let __t253 = v_V4905.clone(); + let __t253 = v_V4486.clone(); rt::hd(&__t253)? }; rt::tl(&__t254)? @@ -1126,7 +1126,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t259 = { let __t258 = { let __t257 = - v_V4905.clone(); + v_V4486.clone(); rt::hd(&__t257)? }; rt::tl(&__t258)? @@ -1142,7 +1142,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t279 = { let __t262 = { let __t261 = - v_V4905.clone(); + v_V4486.clone(); rt::tl(&__t261)? }; rt::is_cons(&__t262) @@ -1160,7 +1160,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t266 = { let __t265 = { let __t264 = - v_V4905 + v_V4486 .clone( ); rt::tl(&__t264)? @@ -1178,7 +1178,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t275 = { let __t269 = { let __t268 = { - let __t267 = v_V4905.clone(); + let __t267 = v_V4486.clone(); rt::tl(&__t267)? }; rt::tl( @@ -1200,7 +1200,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t270 = Value::nil(); let __t274 = { let __t273 = { - let __t272 = { let __t271 = v_V4905.clone(); rt::tl(&__t271)? }; + let __t272 = { let __t271 = v_V4486.clone(); rt::tl(&__t271)? }; rt::tl(&__t272)? }; rt::tl(&__t273)? @@ -1249,7 +1249,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR { let __t305 = { let __t292 = { - let __t291 = v_V4905.clone(); + let __t291 = v_V4486.clone(); rt::hd(&__t291)? }; let __t304 = { @@ -1259,12 +1259,12 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t294 = Value::sym(interp.intern("str")); let __t300 = { let __t296 = { - let __t295 = v_V4905.clone(); + let __t295 = v_V4486.clone(); rt::hd(&__t295)? }; let __t299 = { let __t298 = { - let __t297 = v_V4905.clone(); + let __t297 = v_V4486.clone(); rt::tl(&__t297)? }; rt::tl(&__t298)? @@ -1280,14 +1280,14 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR }; rt::cons(&__t292, &__t304) }; - v_V4905 = __t305; + v_V4486 = __t305; continue; } } else { { let __t245 = { let __t233 = { - let __t205 = v_V4905.clone(); + let __t205 = v_V4486.clone(); rt::is_cons(&__t205) }; if !rt::is_truthy(interp, &__t233)? { @@ -1296,7 +1296,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t234 = { let __t231 = { let __t207 = { - let __t206 = v_V4905.clone(); + let __t206 = v_V4486.clone(); rt::tl(&__t206)? }; rt::is_cons(&__t207) @@ -1309,7 +1309,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t208 = Value::sym(interp.intern("*")); let __t211 = { let __t210 = { - let __t209 = v_V4905.clone(); + let __t209 = v_V4486.clone(); rt::tl(&__t209)? }; rt::hd(&__t210)? @@ -1323,7 +1323,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t227 = { let __t214 = { let __t213 = { - let __t212 = v_V4905.clone(); + let __t212 = v_V4486.clone(); rt::tl(&__t212)? }; rt::tl(&__t213)? @@ -1339,7 +1339,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t217 = { let __t216 = { let __t215 = - v_V4905.clone(); + v_V4486.clone(); rt::tl(&__t215)? }; rt::tl(&__t216)? @@ -1360,7 +1360,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t223 = { let __t222 = { let __t221 = { - let __t220 = v_V4905.clone(); + let __t220 = v_V4486.clone(); rt::tl( &__t220, )? @@ -1399,7 +1399,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR { let __t244 = { let __t236 = { - let __t235 = v_V4905.clone(); + let __t235 = v_V4486.clone(); rt::hd(&__t235)? }; let __t243 = { @@ -1407,7 +1407,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR let __t242 = { let __t240 = { let __t239 = { - let __t238 = v_V4905.clone(); + let __t238 = v_V4486.clone(); rt::tl(&__t238)? }; rt::tl(&__t239)? @@ -1419,13 +1419,13 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR }; rt::cons(&__t236, &__t243) }; - v_V4905 = __t244; + v_V4486 = __t244; continue; } } else { { let __t204 = { - let __t200 = v_V4905.clone(); + let __t200 = v_V4486.clone(); rt::is_cons(&__t200) }; if match rt::is_truthy(interp, &__t204) { @@ -1438,9 +1438,9 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR "", 1, move |interp, args| { - let v_Z4906 = args[0].clone(); + let v_Z4487 = args[0].clone(); Ok({ - let __t201 = v_Z4906.clone(); + let __t201 = v_Z4487.clone(); rt::apply_direct( interp, "shen.curry-type", @@ -1452,7 +1452,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR interp, ) }; - let __t203 = v_V4905.clone(); + let __t203 = v_V4486.clone(); rt::apply_direct(interp, "map", &[__t202, __t203])? }); } else { @@ -1462,7 +1462,7 @@ pub fn aot_shen_x2e_curry_x2d_type(interp: &mut Interp, args: &[Value]) -> ShenR Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4905.clone()); + break Ok(v_V4486.clone()); } else { break Err(ShenError::new( "cond: no clause matched", @@ -1494,542 +1494,407 @@ pub fn aot_shen_x2e_curry(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V4907.clone()); + break Ok(v_V4488.clone()); } else { { - let __t478 = { - let __t467 = { - let __t447 = v_V4907.clone(); - rt::is_cons(&__t447) + let __t443 = { + let __t432 = { + let __t412 = v_V4488.clone(); + rt::is_cons(&__t412) }; - if !rt::is_truthy(interp, &__t467)? { + if !rt::is_truthy(interp, &__t432)? { Value::bool(false) } else { - let __t468 = { - let __t465 = { - let __t448 = Value::sym(interp.intern("type")); - let __t450 = { - let __t449 = v_V4907.clone(); - rt::hd(&__t449)? + let __t433 = { + let __t430 = { + let __t413 = Value::sym(interp.intern("type")); + let __t415 = { + let __t414 = v_V4488.clone(); + rt::hd(&__t414)? }; - rt::eq(&__t448, &__t450) + rt::eq(&__t413, &__t415) }; - if !rt::is_truthy(interp, &__t465)? { + if !rt::is_truthy(interp, &__t430)? { Value::bool(false) } else { - let __t466 = { - let __t463 = { - let __t452 = { - let __t451 = v_V4907.clone(); - rt::tl(&__t451)? + let __t431 = { + let __t428 = { + let __t417 = { + let __t416 = v_V4488.clone(); + rt::tl(&__t416)? }; - rt::is_cons(&__t452) + rt::is_cons(&__t417) }; - if !rt::is_truthy(interp, &__t463)? { + if !rt::is_truthy(interp, &__t428)? { Value::bool(false) } else { - let __t464 = { - let __t461 = { - let __t455 = { - let __t454 = { - let __t453 = v_V4907.clone(); - rt::tl(&__t453)? + let __t429 = { + let __t426 = { + let __t420 = { + let __t419 = { + let __t418 = v_V4488.clone(); + rt::tl(&__t418)? }; - rt::tl(&__t454)? + rt::tl(&__t419)? }; - rt::is_cons(&__t455) + rt::is_cons(&__t420) }; - if !rt::is_truthy(interp, &__t461)? { + if !rt::is_truthy(interp, &__t426)? { Value::bool(false) } else { - let __t462 = { - let __t456 = Value::nil(); - let __t460 = { - let __t459 = { - let __t458 = { - let __t457 = v_V4907.clone(); - rt::tl(&__t457)? + let __t427 = { + let __t421 = Value::nil(); + let __t425 = { + let __t424 = { + let __t423 = { + let __t422 = v_V4488.clone(); + rt::tl(&__t422)? }; - rt::tl(&__t458)? + rt::tl(&__t423)? }; - rt::tl(&__t459)? + rt::tl(&__t424)? }; - rt::eq(&__t456, &__t460) + rt::eq(&__t421, &__t425) }; - Value::bool(rt::is_truthy(interp, &__t462)?) + Value::bool(rt::is_truthy(interp, &__t427)?) } }; - Value::bool(rt::is_truthy(interp, &__t464)?) + Value::bool(rt::is_truthy(interp, &__t429)?) } }; - Value::bool(rt::is_truthy(interp, &__t466)?) + Value::bool(rt::is_truthy(interp, &__t431)?) } }; - Value::bool(rt::is_truthy(interp, &__t468)?) + Value::bool(rt::is_truthy(interp, &__t433)?) } }; - if match rt::is_truthy(interp, &__t478) { + if match rt::is_truthy(interp, &__t443) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t469 = Value::sym(interp.intern("type")); - let __t477 = { - let __t473 = { - let __t472 = { - let __t471 = { - let __t470 = v_V4907.clone(); - rt::tl(&__t470)? + let __t434 = Value::sym(interp.intern("type")); + let __t442 = { + let __t438 = { + let __t437 = { + let __t436 = { + let __t435 = v_V4488.clone(); + rt::tl(&__t435)? }; - rt::hd(&__t471)? + rt::hd(&__t436)? }; - rt::apply_direct(interp, "shen.curry", &[__t472])? + rt::apply_direct(interp, "shen.curry", &[__t437])? }; - let __t476 = { - let __t475 = { - let __t474 = v_V4907.clone(); - rt::tl(&__t474)? + let __t441 = { + let __t440 = { + let __t439 = v_V4488.clone(); + rt::tl(&__t439)? }; - rt::tl(&__t475)? + rt::tl(&__t440)? }; - rt::cons(&__t473, &__t476) + rt::cons(&__t438, &__t441) }; - rt::cons(&__t469, &__t477) + rt::cons(&__t434, &__t442) }); } else { { - let __t446 = { - let __t432 = { - let __t412 = v_V4907.clone(); - rt::is_cons(&__t412) + let __t411 = { + let __t402 = { + let __t399 = v_V4488.clone(); + rt::is_cons(&__t399) }; - if !rt::is_truthy(interp, &__t432)? { + if !rt::is_truthy(interp, &__t402)? { Value::bool(false) } else { - let __t433 = { - let __t430 = { - let __t413 = Value::sym(interp.intern("input+")); - let __t415 = { - let __t414 = v_V4907.clone(); - rt::hd(&__t414)? - }; - rt::eq(&__t413, &__t415) + let __t403 = { + let __t401 = { + let __t400 = v_V4488.clone(); + rt::hd(&__t400)? }; - if !rt::is_truthy(interp, &__t430)? { - Value::bool(false) - } else { - let __t431 = { - let __t428 = { - let __t417 = { - let __t416 = v_V4907.clone(); - rt::tl(&__t416)? - }; - rt::is_cons(&__t417) - }; - if !rt::is_truthy(interp, &__t428)? { - Value::bool(false) - } else { - let __t429 = { - let __t426 = { - let __t420 = { - let __t419 = { - let __t418 = v_V4907.clone(); - rt::tl(&__t418)? - }; - rt::tl(&__t419)? - }; - rt::is_cons(&__t420) - }; - if !rt::is_truthy(interp, &__t426)? { - Value::bool(false) - } else { - let __t427 = { - let __t421 = Value::nil(); - let __t425 = { - let __t424 = { - let __t423 = { - let __t422 = - v_V4907.clone(); - rt::tl(&__t422)? - }; - rt::tl(&__t423)? - }; - rt::tl(&__t424)? - }; - rt::eq(&__t421, &__t425) - }; - Value::bool(rt::is_truthy( - interp, &__t427, - )?) - } - }; - Value::bool(rt::is_truthy(interp, &__t429)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t431)?) - } + rt::apply_direct(interp, "shen.special?", &[__t401])? }; - Value::bool(rt::is_truthy(interp, &__t433)?) + Value::bool(rt::is_truthy(interp, &__t403)?) } }; - if match rt::is_truthy(interp, &__t446) { + if match rt::is_truthy(interp, &__t411) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t434 = Value::sym(interp.intern("input+")); - let __t445 = { - let __t437 = { - let __t436 = { - let __t435 = v_V4907.clone(); - rt::tl(&__t435)? - }; - rt::hd(&__t436)? + let __t405 = { + let __t404 = v_V4488.clone(); + rt::hd(&__t404)? + }; + let __t410 = { + let __t407 = { + rt::make_aot_closure( + "", + 1, + move |interp, args| { + let v_Z4489 = args[0].clone(); + Ok({ + let __t406 = v_Z4489.clone(); + rt::apply_direct( + interp, + "shen.curry", + &[__t406], + )? + }) + }, + Vec::new(), + interp, + ) }; - let __t444 = { - let __t442 = { - let __t441 = { - let __t440 = { - let __t439 = { - let __t438 = v_V4907.clone(); - rt::tl(&__t438)? - }; - rt::tl(&__t439)? - }; - rt::hd(&__t440)? - }; - rt::apply_direct(interp, "shen.curry", &[__t441])? - }; - let __t443 = Value::nil(); - rt::cons(&__t442, &__t443) + let __t409 = { + let __t408 = v_V4488.clone(); + rt::tl(&__t408)? }; - rt::cons(&__t437, &__t444) + rt::apply_direct(interp, "map", &[__t407, __t409])? }; - rt::cons(&__t434, &__t445) + rt::cons(&__t405, &__t410) }); } else { { - let __t411 = { - let __t402 = { - let __t399 = v_V4907.clone(); - rt::is_cons(&__t399) + let __t398 = { + let __t396 = { + let __t393 = v_V4488.clone(); + rt::is_cons(&__t393) }; - if !rt::is_truthy(interp, &__t402)? { + if !rt::is_truthy(interp, &__t396)? { Value::bool(false) } else { - let __t403 = { - let __t401 = { - let __t400 = v_V4907.clone(); - rt::hd(&__t400)? + let __t397 = { + let __t395 = { + let __t394 = v_V4488.clone(); + rt::hd(&__t394)? }; rt::apply_direct( interp, - "shen.special?", - &[__t401], + "shen.extraspecial?", + &[__t395], )? }; - Value::bool(rt::is_truthy(interp, &__t403)?) + Value::bool(rt::is_truthy(interp, &__t397)?) } }; - if match rt::is_truthy(interp, &__t411) { + if match rt::is_truthy(interp, &__t398) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - let __t405 = { - let __t404 = v_V4907.clone(); - rt::hd(&__t404)? - }; - let __t410 = { - let __t407 = { - rt::make_aot_closure( - "", - 1, - move |interp, args| { - let v_Z4908 = args[0].clone(); - Ok({ - let __t406 = v_Z4908.clone(); - rt::apply_direct( - interp, - "shen.curry", - &[__t406], - )? - }) - }, - Vec::new(), - interp, - ) - }; - let __t409 = { - let __t408 = v_V4907.clone(); - rt::tl(&__t408)? - }; - rt::apply_direct(interp, "map", &[__t407, __t409])? - }; - rt::cons(&__t405, &__t410) - }); + break Ok(v_V4488.clone()); } else { { - let __t398 = { - let __t396 = { - let __t393 = v_V4907.clone(); - rt::is_cons(&__t393) + let __t392 = { + let __t378 = { + let __t370 = v_V4488.clone(); + rt::is_cons(&__t370) }; - if !rt::is_truthy(interp, &__t396)? { + if !rt::is_truthy(interp, &__t378)? { Value::bool(false) } else { - let __t397 = { - let __t395 = { - let __t394 = v_V4907.clone(); - rt::hd(&__t394)? + let __t379 = { + let __t376 = { + let __t372 = { + let __t371 = v_V4488.clone(); + rt::tl(&__t371)? + }; + rt::is_cons(&__t372) }; - rt::apply_direct( - interp, - "shen.extraspecial?", - &[__t395], - )? + if !rt::is_truthy(interp, &__t376)? { + Value::bool(false) + } else { + let __t377 = { + let __t375 = { + let __t374 = { + let __t373 = + v_V4488.clone(); + rt::tl(&__t373)? + }; + rt::tl(&__t374)? + }; + rt::is_cons(&__t375) + }; + Value::bool(rt::is_truthy( + interp, &__t377, + )?) + } }; - Value::bool(rt::is_truthy(interp, &__t397)?) + Value::bool(rt::is_truthy(interp, &__t379)?) } }; - if match rt::is_truthy(interp, &__t398) { + if match rt::is_truthy(interp, &__t392) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V4907.clone()); + { + let __t391 = { + let __t387 = { + let __t381 = { + let __t380 = v_V4488.clone(); + rt::hd(&__t380)? + }; + let __t386 = { + let __t384 = { + let __t383 = { + let __t382 = + v_V4488.clone(); + rt::tl(&__t382)? + }; + rt::hd(&__t383)? + }; + let __t385 = Value::nil(); + rt::cons(&__t384, &__t385) + }; + rt::cons(&__t381, &__t386) + }; + let __t390 = { + let __t389 = { + let __t388 = v_V4488.clone(); + rt::tl(&__t388)? + }; + rt::tl(&__t389)? + }; + rt::cons(&__t387, &__t390) + }; + v_V4488 = __t391; + continue; + } } else { { - let __t392 = { - let __t378 = { - let __t370 = v_V4907.clone(); - rt::is_cons(&__t370) + let __t369 = { + let __t358 = { + let __t349 = v_V4488.clone(); + rt::is_cons(&__t349) }; - if !rt::is_truthy(interp, &__t378)? { + if !rt::is_truthy(interp, &__t358)? { Value::bool(false) } else { - let __t379 = { - let __t376 = { - let __t372 = { - let __t371 = - v_V4907.clone(); - rt::tl(&__t371)? + let __t359 = { + let __t356 = { + let __t351 = { + let __t350 = + v_V4488.clone(); + rt::tl(&__t350)? }; - rt::is_cons(&__t372) + rt::is_cons(&__t351) }; - if !rt::is_truthy(interp, &__t376)? + if !rt::is_truthy(interp, &__t356)? { Value::bool(false) } else { - let __t377 = { - let __t375 = { - let __t374 = { - let __t373 = - v_V4907.clone(); - rt::tl(&__t373)? + let __t357 = { + let __t352 = Value::nil(); + let __t355 = { + let __t354 = { + let __t353 = + v_V4488.clone(); + rt::tl(&__t353)? }; - rt::tl(&__t374)? + rt::tl(&__t354)? }; - rt::is_cons(&__t375) + rt::eq(&__t352, &__t355) }; Value::bool(rt::is_truthy( - interp, &__t377, + interp, &__t357, )?) } }; Value::bool(rt::is_truthy( - interp, &__t379, + interp, &__t359, )?) } }; - if match rt::is_truthy(interp, &__t392) { + if match rt::is_truthy(interp, &__t369) { Ok(b) => b, Err(e) => break Err(e), } { - { - let __t391 = { - let __t387 = { - let __t381 = { - let __t380 = - v_V4907.clone(); - rt::hd(&__t380)? - }; - let __t386 = { - let __t384 = { - let __t383 = { - let __t382 = - v_V4907.clone(); - rt::tl(&__t382)? - }; - rt::hd(&__t383)? - }; - let __t385 = Value::nil(); - rt::cons(&__t384, &__t385) - }; - rt::cons(&__t381, &__t386) + break Ok({ + let __t362 = { + let __t361 = { + let __t360 = v_V4488.clone(); + rt::hd(&__t360)? }; - let __t390 = { - let __t389 = { - let __t388 = - v_V4907.clone(); - rt::tl(&__t388)? + rt::apply_direct( + interp, + "shen.curry", + &[__t361], + )? + }; + let __t368 = { + let __t366 = { + let __t365 = { + let __t364 = { + let __t363 = + v_V4488.clone(); + rt::tl(&__t363)? + }; + rt::hd(&__t364)? }; - rt::tl(&__t389)? + rt::apply_direct( + interp, + "shen.curry", + &[__t365], + )? }; - rt::cons(&__t387, &__t390) + let __t367 = Value::nil(); + rt::cons(&__t366, &__t367) }; - v_V4907 = __t391; - continue; - } + rt::cons(&__t362, &__t368) + }); } else { { - let __t369 = { - let __t358 = { - let __t349 = v_V4907.clone(); - rt::is_cons(&__t349) - }; - if !rt::is_truthy(interp, &__t358)? - { - Value::bool(false) - } else { - let __t359 = { - let __t356 = { - let __t351 = { - let __t350 = - v_V4907.clone(); - rt::tl(&__t350)? - }; - rt::is_cons(&__t351) - }; - if !rt::is_truthy( - interp, &__t356, - )? { - Value::bool(false) - } else { - let __t357 = { - let __t352 = - Value::nil(); - let __t355 = { - let __t354 = { - let __t353 = v_V4907.clone(); - rt::tl( - &__t353, - )? - }; - rt::tl(&__t354)? - }; - rt::eq( - &__t352, - &__t355, - ) - }; - Value::bool( - rt::is_truthy( - interp, &__t357, - )?, - ) - } - }; - Value::bool(rt::is_truthy( - interp, &__t359, - )?) - } - }; - if match rt::is_truthy(interp, &__t369) + let __t348 = Value::bool(true); + if match rt::is_truthy(interp, &__t348) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok({ - let __t362 = { - let __t361 = { - let __t360 = - v_V4907.clone(); - rt::hd(&__t360)? - }; - rt::apply_direct( - interp, - "shen.curry", - &[__t361], - )? - }; - let __t368 = { - let __t366 = { - let __t365 = { - let __t364 = { - let __t363 = - v_V4907 - .clone( - ); - rt::tl(&__t363)? - }; - rt::hd(&__t364)? - }; - rt::apply_direct( - interp, - "shen.curry", - &[__t365], - )? - }; - let __t367 = Value::nil(); - rt::cons(&__t366, &__t367) - }; - rt::cons(&__t362, &__t368) - }); + break Ok(v_V4488.clone()); } else { - { - let __t348 = Value::bool(true); - if match rt::is_truthy( - interp, &__t348, - ) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(v_V4907.clone()); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } + break Err(ShenError::new( + "cond: no clause matched", + )); } } } @@ -2061,16 +1926,16 @@ pub fn aot_shen_x2e_special_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V4909 = args[0].clone(); + let mut v_V4490 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t490 = v_V4909.clone(); - let __t492 = { - let __t491 = Value::sym(interp.intern("shen.*special*")); - rt::apply_direct(interp, "value", &[__t491])? + let __t455 = v_V4490.clone(); + let __t457 = { + let __t456 = Value::sym(interp.intern("shen.*special*")); + rt::apply_direct(interp, "value", &[__t456])? }; - rt::apply_direct(interp, "element?", &[__t490, __t492])? + rt::apply_direct(interp, "element?", &[__t455, __t457])? }); } } @@ -2089,16 +1954,16 @@ pub fn aot_shen_x2e_extraspecial_x3f_(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V4910 = args[0].clone(); + let mut v_V4491 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t493 = v_V4910.clone(); - let __t495 = { - let __t494 = Value::sym(interp.intern("shen.*extraspecial*")); - rt::apply_direct(interp, "value", &[__t494])? + let __t458 = v_V4491.clone(); + let __t460 = { + let __t459 = Value::sym(interp.intern("shen.*extraspecial*")); + rt::apply_direct(interp, "value", &[__t459])? }; - rt::apply_direct(interp, "element?", &[__t493, __t495])? + rt::apply_direct(interp, "element?", &[__t458, __t460])? }); } } @@ -2117,45 +1982,45 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V4911 = args[0].clone(); + let mut v_V4492 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4912 = args[1].clone(); + let mut v_V4493 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4913 = args[2].clone(); + let mut v_V4494 = args[2].clone(); #[allow(unused_mut)] - let mut v_V4914 = args[3].clone(); + let mut v_V4495 = args[3].clone(); #[allow(unused_mut)] - let mut v_V4915 = args[4].clone(); + let mut v_V4496 = args[4].clone(); #[allow(unused_mut)] - let mut v_V4916 = args[5].clone(); + let mut v_V4497 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4917 = { - let __t496 = v_V4915.clone(); - let __t497 = Value::int(1i64); - rt::add(&__t496, &__t497)? + let v_W4498 = { + let __t461 = v_V4496.clone(); + let __t462 = Value::int(1i64); + rt::add(&__t461, &__t462)? }; { - let v_W4918 = { - let __t504 = { - let __t498 = v_V4914.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t498])? + let v_W4499 = { + let __t469 = { + let __t463 = v_V4495.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t463])? }; - if rt::is_truthy(interp, &__t504)? { + if rt::is_truthy(interp, &__t469)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t499 = + let __t464 = { rt::apply_direct(interp, "shen.maxinfexceeded?", &[])? }; - let __t500 = v_V4913.clone(); - let __t501 = v_V4914.clone(); - let __t502 = v_W4917.clone(); - let __t503 = v_V4916.clone(); + let __t465 = v_V4494.clone(); + let __t466 = v_V4495.clone(); + let __t467 = v_W4498.clone(); + let __t468 = v_V4497.clone(); rt::apply_direct( interp, "when", - &[__t499, __t500, __t501, __t502, __t503], + &[__t464, __t465, __t466, __t467, __t468], )? } } @@ -2164,115 +2029,115 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes } }; { - let __t507 = { - let __t505 = v_W4918.clone(); - let __t506 = Value::bool(false); - rt::eq(&__t505, &__t506) + let __t472 = { + let __t470 = v_W4499.clone(); + let __t471 = Value::bool(false); + rt::eq(&__t470, &__t471) }; - if match rt::is_truthy(interp, &__t507) { + if match rt::is_truthy(interp, &__t472) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4919 = { - let __t558 = { - let __t508 = v_V4914.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t508])? + let v_W4500 = { + let __t523 = { + let __t473 = v_V4495.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t473])? }; - if rt::is_truthy(interp, &__t558)? { + if rt::is_truthy(interp, &__t523)? { { - let v_W4920 = { - let __t509 = v_V4911.clone(); - let __t510 = v_V4913.clone(); + let v_W4501 = { + let __t474 = v_V4492.clone(); + let __t475 = v_V4494.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t509, __t510], + &[__t474, __t475], )? }; { - let __t557 = { - let __t511 = v_W4920.clone(); - rt::is_cons(&__t511) + let __t522 = { + let __t476 = v_W4501.clone(); + rt::is_cons(&__t476) }; - if rt::is_truthy(interp, &__t557)? { + if rt::is_truthy(interp, &__t522)? { { - let v_W4921 = { - let __t512 = v_W4920.clone(); - rt::hd(&__t512)? + let v_W4502 = { + let __t477 = v_W4501.clone(); + rt::hd(&__t477)? }; { - let v_W4922 = { - let __t514 = { - let __t513 = v_W4920.clone(); - rt::tl(&__t513)? + let v_W4503 = { + let __t479 = { + let __t478 = v_W4501.clone(); + rt::tl(&__t478)? }; - let __t515 = v_V4913.clone(); + let __t480 = v_V4494.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t514, __t515], + &[__t479, __t480], )? }; { - let __t556 = { - let __t516 = v_W4922.clone(); - rt::is_cons(&__t516) + let __t521 = { + let __t481 = v_W4503.clone(); + rt::is_cons(&__t481) }; - if rt::is_truthy(interp, &__t556)? { + if rt::is_truthy(interp, &__t521)? { { - let v_W4923 = { - let __t517 = - v_W4922.clone(); - rt::hd(&__t517)? + let v_W4504 = { + let __t482 = + v_W4503.clone(); + rt::hd(&__t482)? }; { - let v_W4924 = { - let __t519 = { - let __t518 = - v_W4922.clone(); - rt::tl(&__t518)? + let v_W4505 = { + let __t484 = { + let __t483 = + v_W4503.clone(); + rt::tl(&__t483)? }; - let __t520 = - v_V4913.clone(); + let __t485 = + v_V4494.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t519, __t520], + &[__t484, __t485], )? }; { - let __t555 = { - let __t521 = - v_W4924.clone(); - rt::is_cons(&__t521) + let __t520 = { + let __t486 = + v_W4505.clone(); + rt::is_cons(&__t486) }; if rt::is_truthy( - interp, &__t555, + interp, &__t520, )? { { - let v_W4925 = { - let __t522 = v_W4924.clone(); + let v_W4506 = { + let __t487 = v_W4505.clone(); rt::hd( - &__t522, + &__t487, )? }; { - let v_W4926 = { - let __t524 = { - let __t523 = v_W4924.clone(); - rt::tl(&__t523)? + let v_W4507 = { + let __t489 = { + let __t488 = v_W4505.clone(); + rt::tl(&__t488)? }; - let __t525 = v_V4913.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t524, __t525])? + let __t490 = v_V4494.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t489, __t490])? }; { - let __t554 = { - let __t526 = v_W4926.clone(); - let __t527 = Value::nil(); - rt::eq(&__t526, &__t527) + let __t519 = { + let __t491 = v_W4507.clone(); + let __t492 = Value::nil(); + rt::eq(&__t491, &__t492) }; - if rt::is_truthy(interp, &__t554)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t533 = { let __t530 = { let __t528 = v_W4923.clone(); let __t529 = v_V4913.clone(); rt::apply_direct(interp, "shen.deref", &[__t528, __t529])? }; let __t532 = { let __t531 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t531])? }; rt::eq(&__t530, &__t532) }; let __t534 = v_V4913.clone(); let __t535 = v_V4914.clone(); let __t536 = v_W4917.clone(); let __t553 = { let v_V4912 = v_V4912.clone(); let v_V4913 = v_V4913.clone(); let v_V4914 = v_V4914.clone(); let v_V4916 = v_V4916.clone(); let v_W4917 = v_W4917.clone(); let v_W4921 = v_W4921.clone(); let v_W4925 = v_W4925.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t537 = { rt::apply_direct(interp, "shen.type-theory-enabled?", &[])? }; let __t538 = v_V4913.clone(); let __t539 = v_V4914.clone(); let __t540 = v_W4917.clone(); let __t552 = { let v_V4912 = v_V4912.clone(); let v_V4913 = v_V4913.clone(); let v_V4914 = v_V4914.clone(); let v_V4916 = v_V4916.clone(); let v_W4917 = v_W4917.clone(); let v_W4921 = v_W4921.clone(); let v_W4925 = v_W4925.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t541 = v_V4913.clone(); let __t542 = v_V4914.clone(); let __t543 = v_W4917.clone(); let __t551 = { let v_V4912 = v_V4912.clone(); let v_V4913 = v_V4913.clone(); let v_V4914 = v_V4914.clone(); let v_V4916 = v_V4916.clone(); let v_W4917 = v_W4917.clone(); let v_W4921 = v_W4921.clone(); let v_W4925 = v_W4925.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t544 = v_W4921.clone(); let __t545 = v_W4925.clone(); let __t546 = v_V4912.clone(); let __t547 = v_V4913.clone(); let __t548 = v_V4914.clone(); let __t549 = v_W4917.clone(); let __t550 = v_V4916.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t544, __t545, __t546, __t547, __t548, __t549, __t550])? }), vec![v_V4912, v_V4913, v_V4914, v_V4916, v_W4917, v_W4921, v_W4925], interp) }; rt::apply_direct(interp, "shen.cut", &[__t541, __t542, __t543, __t551])? }), vec![v_V4912, v_V4913, v_V4914, v_V4916, v_W4917, v_W4921, v_W4925], interp) }; rt::apply_direct(interp, "when", &[__t537, __t538, __t539, __t540, __t552])? }), vec![v_V4912, v_V4913, v_V4914, v_V4916, v_W4917, v_W4921, v_W4925], interp) }; rt::apply_direct(interp, "when", &[__t533, __t534, __t535, __t536, __t553])? } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t519)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t498 = { let __t495 = { let __t493 = v_W4504.clone(); let __t494 = v_V4494.clone(); rt::apply_direct(interp, "shen.deref", &[__t493, __t494])? }; let __t497 = { let __t496 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t496])? }; rt::eq(&__t495, &__t497) }; let __t499 = v_V4494.clone(); let __t500 = v_V4495.clone(); let __t501 = v_W4498.clone(); let __t518 = { let v_V4493 = v_V4493.clone(); let v_V4494 = v_V4494.clone(); let v_V4495 = v_V4495.clone(); let v_V4497 = v_V4497.clone(); let v_W4498 = v_W4498.clone(); let v_W4502 = v_W4502.clone(); let v_W4506 = v_W4506.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t502 = { rt::apply_direct(interp, "shen.type-theory-enabled?", &[])? }; let __t503 = v_V4494.clone(); let __t504 = v_V4495.clone(); let __t505 = v_W4498.clone(); let __t517 = { let v_V4493 = v_V4493.clone(); let v_V4494 = v_V4494.clone(); let v_V4495 = v_V4495.clone(); let v_V4497 = v_V4497.clone(); let v_W4498 = v_W4498.clone(); let v_W4502 = v_W4502.clone(); let v_W4506 = v_W4506.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t506 = v_V4494.clone(); let __t507 = v_V4495.clone(); let __t508 = v_W4498.clone(); let __t516 = { let v_V4493 = v_V4493.clone(); let v_V4494 = v_V4494.clone(); let v_V4495 = v_V4495.clone(); let v_V4497 = v_V4497.clone(); let v_W4498 = v_W4498.clone(); let v_W4502 = v_W4502.clone(); let v_W4506 = v_W4506.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t509 = v_W4502.clone(); let __t510 = v_W4506.clone(); let __t511 = v_V4493.clone(); let __t512 = v_V4494.clone(); let __t513 = v_V4495.clone(); let __t514 = v_W4498.clone(); let __t515 = v_V4497.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t509, __t510, __t511, __t512, __t513, __t514, __t515])? }), vec![v_V4493, v_V4494, v_V4495, v_V4497, v_W4498, v_W4502, v_W4506], interp) }; rt::apply_direct(interp, "shen.cut", &[__t506, __t507, __t508, __t516])? }), vec![v_V4493, v_V4494, v_V4495, v_V4497, v_W4498, v_W4502, v_W4506], interp) }; rt::apply_direct(interp, "when", &[__t502, __t503, __t504, __t505, __t517])? }), vec![v_V4493, v_V4494, v_V4495, v_V4497, v_W4498, v_W4502, v_W4506], interp) }; rt::apply_direct(interp, "when", &[__t498, __t499, __t500, __t501, __t518])? } } } else { Value::bool(false) } } } } @@ -2298,26 +2163,26 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes } }; { - let __t561 = { - let __t559 = v_W4919.clone(); - let __t560 = Value::bool(false); - rt::eq(&__t559, &__t560) + let __t526 = { + let __t524 = v_W4500.clone(); + let __t525 = Value::bool(false); + rt::eq(&__t524, &__t525) }; - if match rt::is_truthy(interp, &__t561) { + if match rt::is_truthy(interp, &__t526) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4927 = { - let __t575 = { - let __t562 = v_V4914.clone(); + let v_W4508 = { + let __t540 = { + let __t527 = v_V4495.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t562], + &[__t527], )? }; - if rt::is_truthy(interp, &__t575)? { + if rt::is_truthy(interp, &__t540)? { { let _ = { rt::apply_direct( @@ -2327,57 +2192,57 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes )? }; { - let __t564 = { - let __t563 = Value::sym( + let __t529 = { + let __t528 = Value::sym( interp.intern("shen.*spy*"), ); rt::apply_direct( interp, "value", - &[__t563], + &[__t528], )? }; - let __t565 = v_V4913.clone(); - let __t566 = v_V4914.clone(); - let __t567 = v_W4917.clone(); - let __t574 = { - let v_V4911 = v_V4911.clone(); - let v_V4912 = v_V4912.clone(); - let v_V4913 = v_V4913.clone(); - let v_V4914 = v_V4914.clone(); - let v_V4916 = v_V4916.clone(); - let v_W4917 = v_W4917.clone(); + let __t530 = v_V4494.clone(); + let __t531 = v_V4495.clone(); + let __t532 = v_W4498.clone(); + let __t539 = { + let v_V4492 = v_V4492.clone(); + let v_V4493 = v_V4493.clone(); + let v_V4494 = v_V4494.clone(); + let v_V4495 = v_V4495.clone(); + let v_V4497 = v_V4497.clone(); + let v_W4498 = v_W4498.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t568 = - v_V4911.clone(); - let __t569 = - v_V4912.clone(); - let __t570 = - v_V4913.clone(); - let __t571 = - v_V4914.clone(); - let __t572 = - v_W4917.clone(); - let __t573 = - v_V4916.clone(); + let __t533 = + v_V4492.clone(); + let __t534 = + v_V4493.clone(); + let __t535 = + v_V4494.clone(); + let __t536 = + v_V4495.clone(); + let __t537 = + v_W4498.clone(); + let __t538 = + v_V4497.clone(); rt::apply_direct( interp, "shen.show", &[ - __t568, __t569, - __t570, __t571, - __t572, __t573, + __t533, __t534, + __t535, __t536, + __t537, __t538, ], )? }) }, vec![ - v_V4911, v_V4912, v_V4913, - v_V4914, v_V4916, v_W4917, + v_V4492, v_V4493, v_V4494, + v_V4495, v_V4497, v_W4498, ], interp, ) @@ -2386,8 +2251,8 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes interp, "when", &[ - __t564, __t565, __t566, __t567, - __t574, + __t529, __t530, __t531, __t532, + __t539, ], )? } @@ -2397,26 +2262,26 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes } }; { - let __t578 = { - let __t576 = v_W4927.clone(); - let __t577 = Value::bool(false); - rt::eq(&__t576, &__t577) + let __t543 = { + let __t541 = v_W4508.clone(); + let __t542 = Value::bool(false); + rt::eq(&__t541, &__t542) }; - if match rt::is_truthy(interp, &__t578) { + if match rt::is_truthy(interp, &__t543) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4928 = { - let __t588 = { - let __t579 = v_V4914.clone(); + let v_W4509 = { + let __t553 = { + let __t544 = v_V4495.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t579], + &[__t544], )? }; - if rt::is_truthy(interp, &__t588)? { + if rt::is_truthy(interp, &__t553)? { { let _ = { rt::apply_direct( @@ -2426,10 +2291,10 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes )? }; { - let __t580 = v_V4911.clone(); - let __t581 = v_V4912.clone(); - let __t583 = { - let __t582 = Value::sym( + let __t545 = v_V4492.clone(); + let __t546 = v_V4493.clone(); + let __t548 = { + let __t547 = Value::sym( interp.intern( "shen.*datatypes*", ), @@ -2437,14 +2302,14 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes rt::apply_direct( interp, "value", - &[__t582], + &[__t547], )? }; - let __t584 = v_V4913.clone(); - let __t585 = v_V4914.clone(); - let __t586 = v_W4917.clone(); - let __t587 = v_V4916.clone(); - rt::apply_direct(interp, "shen.search-user-datatypes", &[__t580, __t581, __t583, __t584, __t585, __t586, __t587])? + let __t549 = v_V4494.clone(); + let __t550 = v_V4495.clone(); + let __t551 = v_W4498.clone(); + let __t552 = v_V4497.clone(); + rt::apply_direct(interp, "shen.search-user-datatypes", &[__t545, __t546, __t548, __t549, __t550, __t551, __t552])? } } } else { @@ -2452,41 +2317,41 @@ pub fn aot_shen_x2e_system_x2d_S(interp: &mut Interp, args: &[Value]) -> ShenRes } }; { - let __t591 = { - let __t589 = v_W4928.clone(); - let __t590 = Value::bool(false); - rt::eq(&__t589, &__t590) + let __t556 = { + let __t554 = v_W4509.clone(); + let __t555 = Value::bool(false); + rt::eq(&__t554, &__t555) }; - if match rt::is_truthy(interp, &__t591) { + if match rt::is_truthy(interp, &__t556) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t592 = v_V4914.clone(); - let __t593 = v_W4917.clone(); + let __t557 = v_V4495.clone(); + let __t558 = v_W4498.clone(); rt::apply_direct( interp, "shen.unlock", - &[__t592, __t593], + &[__t557, __t558], )? }); } else { - break Ok(v_W4928.clone()); + break Ok(v_W4509.clone()); } } } } else { - break Ok(v_W4927.clone()); + break Ok(v_W4508.clone()); } } } } else { - break Ok(v_W4919.clone()); + break Ok(v_W4500.clone()); } } } } else { - break Ok(v_W4918.clone()); + break Ok(v_W4499.clone()); } } } @@ -2508,44 +2373,44 @@ pub fn aot_shen_x2e_show(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResul ))); } #[allow(unused_mut)] - let mut v_V4942 = args[0].clone(); + let mut v_V4523 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t655 = { - let __t641 = { - let __t619 = v_V4942.clone(); - rt::is_cons(&__t619) + let __t620 = { + let __t606 = { + let __t584 = v_V4523.clone(); + rt::is_cons(&__t584) }; - if !rt::is_truthy(interp, &__t641)? { + if !rt::is_truthy(interp, &__t606)? { Value::bool(false) } else { - let __t642 = { - let __t639 = { - let __t621 = { - let __t620 = v_V4942.clone(); - rt::tl(&__t620)? + let __t607 = { + let __t604 = { + let __t586 = { + let __t585 = v_V4523.clone(); + rt::tl(&__t585)? }; - rt::is_cons(&__t621) + rt::is_cons(&__t586) }; - if !rt::is_truthy(interp, &__t639)? { + if !rt::is_truthy(interp, &__t604)? { Value::bool(false) } else { - let __t640 = { - let __t637 = { - let __t624 = { - let __t623 = { - let __t622 = v_V4942.clone(); - rt::tl(&__t622)? + let __t605 = { + let __t602 = { + let __t589 = { + let __t588 = { + let __t587 = v_V4523.clone(); + rt::tl(&__t587)? }; - rt::tl(&__t623)? + rt::tl(&__t588)? }; - rt::is_cons(&__t624) + rt::is_cons(&__t589) }; - if !rt::is_truthy(interp, &__t637)? { + if !rt::is_truthy(interp, &__t602)? { Value::bool(false) } else { - let __t638 = { - let __t635 = { - let __t625 = Value::nil(); - let __t629 = { - let __t628 = { - let __t627 = { - let __t626 = v_V4942.clone(); - rt::tl(&__t626)? + let __t603 = { + let __t600 = { + let __t590 = Value::nil(); + let __t594 = { + let __t593 = { + let __t592 = { + let __t591 = v_V4523.clone(); + rt::tl(&__t591)? }; - rt::tl(&__t627)? + rt::tl(&__t592)? }; - rt::tl(&__t628)? + rt::tl(&__t593)? }; - rt::eq(&__t625, &__t629) + rt::eq(&__t590, &__t594) }; - if !rt::is_truthy(interp, &__t635)? { + if !rt::is_truthy(interp, &__t600)? { Value::bool(false) } else { - let __t636 = { - let __t632 = { - let __t631 = { - let __t630 = v_V4942.clone(); - rt::tl(&__t630)? + let __t601 = { + let __t597 = { + let __t596 = { + let __t595 = v_V4523.clone(); + rt::tl(&__t595)? }; - rt::hd(&__t631)? + rt::hd(&__t596)? }; - let __t634 = { - let __t633 = Value::str(":"); - rt::apply_direct(interp, "intern", &[__t633])? + let __t599 = { + let __t598 = Value::str(":"); + rt::apply_direct(interp, "intern", &[__t598])? }; - rt::eq(&__t632, &__t634) + rt::eq(&__t597, &__t599) }; - Value::bool(rt::is_truthy(interp, &__t636)?) + Value::bool(rt::is_truthy(interp, &__t601)?) } }; - Value::bool(rt::is_truthy(interp, &__t638)?) + Value::bool(rt::is_truthy(interp, &__t603)?) } }; - Value::bool(rt::is_truthy(interp, &__t640)?) + Value::bool(rt::is_truthy(interp, &__t605)?) } }; - Value::bool(rt::is_truthy(interp, &__t642)?) + Value::bool(rt::is_truthy(interp, &__t607)?) } }; - if match rt::is_truthy(interp, &__t655) { + if match rt::is_truthy(interp, &__t620) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t644 = { - let __t643 = v_V4942.clone(); - rt::hd(&__t643)? + let __t609 = { + let __t608 = v_V4523.clone(); + rt::hd(&__t608)? }; - rt::apply_direct(interp, "shen.prterm", &[__t644])? + rt::apply_direct(interp, "shen.prterm", &[__t609])? }; { let _ = { - let __t645 = Value::str(" : "); - let __t646 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t645, __t646])? + let __t610 = Value::str(" : "); + let __t611 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t610, __t611])? }; break Ok({ - let __t653 = { - let __t650 = { - let __t649 = { - let __t648 = { - let __t647 = v_V4942.clone(); - rt::tl(&__t647)? + let __t618 = { + let __t615 = { + let __t614 = { + let __t613 = { + let __t612 = v_V4523.clone(); + rt::tl(&__t612)? }; - rt::tl(&__t648)? + rt::tl(&__t613)? }; - rt::hd(&__t649)? + rt::hd(&__t614)? }; - let __t651 = Value::str(""); - let __t652 = Value::sym(interp.intern("shen.r")); - rt::apply_direct(interp, "shen.app", &[__t650, __t651, __t652])? + let __t616 = Value::str(""); + let __t617 = Value::sym(interp.intern("shen.r")); + rt::apply_direct(interp, "shen.app", &[__t615, __t616, __t617])? }; - let __t654 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t653, __t654])? + let __t619 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t618, __t619])? }); } } } else { { - let __t618 = Value::bool(true); - if match rt::is_truthy(interp, &__t618) { + let __t583 = Value::bool(true); + if match rt::is_truthy(interp, &__t583) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t617 = v_V4942.clone(); - rt::apply_direct(interp, "shen.prterm", &[__t617])? + let __t582 = v_V4523.clone(); + rt::apply_direct(interp, "shen.prterm", &[__t582])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2782,160 +2647,160 @@ pub fn aot_shen_x2e_prterm(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { { let _ = { - let __t694 = Value::str("["); - let __t695 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t694, __t695])? + let __t659 = Value::str("["); + let __t660 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t659, __t660])? }; { let _ = { - let __t698 = { - let __t697 = { - let __t696 = v_V4943.clone(); - rt::tl(&__t696)? + let __t663 = { + let __t662 = { + let __t661 = v_V4524.clone(); + rt::tl(&__t661)? }; - rt::hd(&__t697)? + rt::hd(&__t662)? }; - rt::apply_direct(interp, "shen.prterm", &[__t698])? + rt::apply_direct(interp, "shen.prterm", &[__t663])? }; { let _ = { - let __t702 = { - let __t701 = { - let __t700 = { - let __t699 = v_V4943.clone(); - rt::tl(&__t699)? + let __t667 = { + let __t666 = { + let __t665 = { + let __t664 = v_V4524.clone(); + rt::tl(&__t664)? }; - rt::tl(&__t700)? + rt::tl(&__t665)? }; - rt::hd(&__t701)? + rt::hd(&__t666)? }; - rt::apply_direct(interp, "shen.prtl", &[__t702])? + rt::apply_direct(interp, "shen.prtl", &[__t667])? }; break Ok({ - let __t703 = Value::str("]"); - let __t704 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t703, __t704])? + let __t668 = Value::str("]"); + let __t669 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t668, __t669])? }); } } } } else { { - let __t671 = { - let __t658 = v_V4943.clone(); - rt::is_cons(&__t658) + let __t636 = { + let __t623 = v_V4524.clone(); + rt::is_cons(&__t623) }; - if match rt::is_truthy(interp, &__t671) { + if match rt::is_truthy(interp, &__t636) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t659 = Value::str("("); - let __t660 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t659, __t660])? + let __t624 = Value::str("("); + let __t625 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t624, __t625])? }; { let _ = { - let __t662 = { - let __t661 = v_V4943.clone(); - rt::hd(&__t661)? + let __t627 = { + let __t626 = v_V4524.clone(); + rt::hd(&__t626)? }; - rt::apply_direct(interp, "shen.prterm", &[__t662])? + rt::apply_direct(interp, "shen.prterm", &[__t627])? }; { let _ = { - let __t666 = { + let __t631 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z4944 = args[0].clone(); + let v_Z4525 = args[0].clone(); Ok({ let _ = { - let __t663 = Value::str(" "); - let __t664 = { + let __t628 = Value::str(" "); + let __t629 = { rt::apply_direct( interp, "stoutput", @@ -2945,15 +2810,15 @@ pub fn aot_shen_x2e_prterm(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t656 = v_V4943.clone(); - rt::apply_direct(interp, "print", &[__t656])? + let __t621 = v_V4524.clone(); + rt::apply_direct(interp, "print", &[__t621])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3012,146 +2877,146 @@ pub fn aot_shen_x2e_prtl(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok(Value::str("")); } else { { - let __t741 = { - let __t730 = { - let __t710 = v_V4945.clone(); - rt::is_cons(&__t710) + let __t706 = { + let __t695 = { + let __t675 = v_V4526.clone(); + rt::is_cons(&__t675) }; - if !rt::is_truthy(interp, &__t730)? { + if !rt::is_truthy(interp, &__t695)? { Value::bool(false) } else { - let __t731 = { - let __t728 = { - let __t711 = Value::sym(interp.intern("cons")); - let __t713 = { - let __t712 = v_V4945.clone(); - rt::hd(&__t712)? + let __t696 = { + let __t693 = { + let __t676 = Value::sym(interp.intern("cons")); + let __t678 = { + let __t677 = v_V4526.clone(); + rt::hd(&__t677)? }; - rt::eq(&__t711, &__t713) + rt::eq(&__t676, &__t678) }; - if !rt::is_truthy(interp, &__t728)? { + if !rt::is_truthy(interp, &__t693)? { Value::bool(false) } else { - let __t729 = { - let __t726 = { - let __t715 = { - let __t714 = v_V4945.clone(); - rt::tl(&__t714)? + let __t694 = { + let __t691 = { + let __t680 = { + let __t679 = v_V4526.clone(); + rt::tl(&__t679)? }; - rt::is_cons(&__t715) + rt::is_cons(&__t680) }; - if !rt::is_truthy(interp, &__t726)? { + if !rt::is_truthy(interp, &__t691)? { Value::bool(false) } else { - let __t727 = { - let __t724 = { - let __t718 = { - let __t717 = { - let __t716 = v_V4945.clone(); - rt::tl(&__t716)? + let __t692 = { + let __t689 = { + let __t683 = { + let __t682 = { + let __t681 = v_V4526.clone(); + rt::tl(&__t681)? }; - rt::tl(&__t717)? + rt::tl(&__t682)? }; - rt::is_cons(&__t718) + rt::is_cons(&__t683) }; - if !rt::is_truthy(interp, &__t724)? { + if !rt::is_truthy(interp, &__t689)? { Value::bool(false) } else { - let __t725 = { - let __t719 = Value::nil(); - let __t723 = { - let __t722 = { - let __t721 = { - let __t720 = v_V4945.clone(); - rt::tl(&__t720)? + let __t690 = { + let __t684 = Value::nil(); + let __t688 = { + let __t687 = { + let __t686 = { + let __t685 = v_V4526.clone(); + rt::tl(&__t685)? }; - rt::tl(&__t721)? + rt::tl(&__t686)? }; - rt::tl(&__t722)? + rt::tl(&__t687)? }; - rt::eq(&__t719, &__t723) + rt::eq(&__t684, &__t688) }; - Value::bool(rt::is_truthy(interp, &__t725)?) + Value::bool(rt::is_truthy(interp, &__t690)?) } }; - Value::bool(rt::is_truthy(interp, &__t727)?) + Value::bool(rt::is_truthy(interp, &__t692)?) } }; - Value::bool(rt::is_truthy(interp, &__t729)?) + Value::bool(rt::is_truthy(interp, &__t694)?) } }; - Value::bool(rt::is_truthy(interp, &__t731)?) + Value::bool(rt::is_truthy(interp, &__t696)?) } }; - if match rt::is_truthy(interp, &__t741) { + if match rt::is_truthy(interp, &__t706) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t732 = Value::str(" "); - let __t733 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t732, __t733])? + let __t697 = Value::str(" "); + let __t698 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t697, __t698])? }; { let _ = { - let __t736 = { - let __t735 = { - let __t734 = v_V4945.clone(); - rt::tl(&__t734)? + let __t701 = { + let __t700 = { + let __t699 = v_V4526.clone(); + rt::tl(&__t699)? }; - rt::hd(&__t735)? + rt::hd(&__t700)? }; - rt::apply_direct(interp, "shen.prterm", &[__t736])? + rt::apply_direct(interp, "shen.prterm", &[__t701])? }; { - let __t740 = { - let __t739 = { - let __t738 = { - let __t737 = v_V4945.clone(); - rt::tl(&__t737)? + let __t705 = { + let __t704 = { + let __t703 = { + let __t702 = v_V4526.clone(); + rt::tl(&__t702)? }; - rt::tl(&__t738)? + rt::tl(&__t703)? }; - rt::hd(&__t739)? + rt::hd(&__t704)? }; - v_V4945 = __t740; + v_V4526 = __t705; continue; } } } } else { { - let __t709 = Value::bool(true); - if match rt::is_truthy(interp, &__t709) { + let __t674 = Value::bool(true); + if match rt::is_truthy(interp, &__t674) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t706 = Value::str(" | "); - let __t707 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t706, __t707])? + let __t671 = Value::str(" | "); + let __t672 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t671, __t672])? }; break Ok({ - let __t708 = v_V4945.clone(); - rt::apply_direct(interp, "shen.prterm", &[__t708])? + let __t673 = v_V4526.clone(); + rt::apply_direct(interp, "shen.prterm", &[__t673])? }); } } else { @@ -3179,72 +3044,72 @@ pub fn aot_shen_x2e_show_x2d_assumptions(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V4952 = args[0].clone(); + let mut v_V4533 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4953 = args[1].clone(); + let mut v_V4534 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t766 = { - let __t762 = Value::nil(); - let __t763 = v_V4952.clone(); - rt::eq(&__t762, &__t763) + let __t731 = { + let __t727 = Value::nil(); + let __t728 = v_V4533.clone(); + rt::eq(&__t727, &__t728) }; - if match rt::is_truthy(interp, &__t766) { + if match rt::is_truthy(interp, &__t731) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t764 = Value::str("\n> "); - let __t765 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t764, __t765])? + let __t729 = Value::str("\n> "); + let __t730 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t729, __t730])? }); } else { { - let __t761 = { - let __t747 = v_V4952.clone(); - rt::is_cons(&__t747) + let __t726 = { + let __t712 = v_V4533.clone(); + rt::is_cons(&__t712) }; - if match rt::is_truthy(interp, &__t761) { + if match rt::is_truthy(interp, &__t726) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t751 = { - let __t748 = v_V4953.clone(); - let __t749 = Value::str(". "); - let __t750 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t748, __t749, __t750])? + let __t716 = { + let __t713 = v_V4534.clone(); + let __t714 = Value::str(". "); + let __t715 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t713, __t714, __t715])? }; - let __t752 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t751, __t752])? + let __t717 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t716, __t717])? }; { let _ = { - let __t754 = { - let __t753 = v_V4952.clone(); - rt::hd(&__t753)? + let __t719 = { + let __t718 = v_V4533.clone(); + rt::hd(&__t718)? }; - rt::apply_direct(interp, "shen.show-p", &[__t754])? + rt::apply_direct(interp, "shen.show-p", &[__t719])? }; { let _ = { - let __t755 = Value::int(1i64); - rt::apply_direct(interp, "nl", &[__t755])? + let __t720 = Value::int(1i64); + rt::apply_direct(interp, "nl", &[__t720])? }; { - let __t757 = { - let __t756 = v_V4952.clone(); - rt::tl(&__t756)? + let __t722 = { + let __t721 = v_V4533.clone(); + rt::tl(&__t721)? }; - let __t760 = { - let __t758 = v_V4953.clone(); - let __t759 = Value::int(1i64); - rt::add(&__t758, &__t759)? + let __t725 = { + let __t723 = v_V4534.clone(); + let __t724 = Value::int(1i64); + rt::add(&__t723, &__t724)? }; - v_V4952 = __t757; - v_V4953 = __t760; + v_V4533 = __t722; + v_V4534 = __t725; continue; } } @@ -3252,15 +3117,15 @@ pub fn aot_shen_x2e_show_x2d_assumptions(interp: &mut Interp, args: &[Value]) -> } } else { { - let __t746 = Value::bool(true); - if match rt::is_truthy(interp, &__t746) { + let __t711 = Value::bool(true); + if match rt::is_truthy(interp, &__t711) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t745 = + let __t710 = Value::str("implementation error in shen.show-assumptions"); - rt::apply_direct(interp, "simple-error", &[__t745])? + rt::apply_direct(interp, "simple-error", &[__t710])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -3296,28 +3161,28 @@ pub fn aot_shen_x2e_pause_x2d_for_x2d_user( #[allow(clippy::never_loop)] loop { { - let v_W4954 = { - let __t767 = { rt::apply_direct(interp, "stinput", &[])? }; - rt::apply_direct(interp, "read-byte", &[__t767])? + let v_W4535 = { + let __t732 = { rt::apply_direct(interp, "stinput", &[])? }; + rt::apply_direct(interp, "read-byte", &[__t732])? }; { - let __t770 = { - let __t768 = v_W4954.clone(); - let __t769 = Value::int(94i64); - rt::eq(&__t768, &__t769) + let __t735 = { + let __t733 = v_W4535.clone(); + let __t734 = Value::int(94i64); + rt::eq(&__t733, &__t734) }; - if match rt::is_truthy(interp, &__t770) { + if match rt::is_truthy(interp, &__t735) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t771 = Value::str("input aborted\n"); - rt::apply_direct(interp, "simple-error", &[__t771])? + let __t736 = Value::str("input aborted\n"); + rt::apply_direct(interp, "simple-error", &[__t736])? }); } else { break Ok({ - let __t772 = Value::int(1i64); - rt::apply_direct(interp, "nl", &[__t772])? + let __t737 = Value::int(1i64); + rt::apply_direct(interp, "nl", &[__t737])? }); } } @@ -3348,8 +3213,8 @@ pub fn aot_shen_x2e_type_x2d_theory_x2d_enabled_x3f_( #[allow(clippy::never_loop)] loop { break Ok({ - let __t773 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); - rt::apply_direct(interp, "value", &[__t773])? + let __t738 = Value::sym(interp.intern("shen.*shen-type-theory-enabled?*")); + rt::apply_direct(interp, "value", &[__t738])? }); } } @@ -3377,21 +3242,21 @@ pub fn aot_shen_x2e_maxinfexceeded_x3f_(interp: &mut Interp, args: &[Value]) -> #[allow(clippy::never_loop)] loop { { - let __t777 = { - let __t774 = { rt::apply_direct(interp, "inferences", &[])? }; - let __t776 = { - let __t775 = Value::sym(interp.intern("shen.*maxinferences*")); - rt::apply_direct(interp, "value", &[__t775])? + let __t742 = { + let __t739 = { rt::apply_direct(interp, "inferences", &[])? }; + let __t741 = { + let __t740 = Value::sym(interp.intern("shen.*maxinferences*")); + rt::apply_direct(interp, "value", &[__t740])? }; - rt::gt(&__t774, &__t776)? + rt::gt(&__t739, &__t741)? }; - if match rt::is_truthy(interp, &__t777) { + if match rt::is_truthy(interp, &__t742) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t778 = Value::str("maximum inferences exceeded"); - rt::apply_direct(interp, "simple-error", &[__t778])? + let __t743 = Value::str("maximum inferences exceeded"); + rt::apply_direct(interp, "simple-error", &[__t743])? }); } else { break Ok(Value::bool(false)); @@ -3414,95 +3279,95 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V4955 = args[0].clone(); + let mut v_V4536 = args[0].clone(); #[allow(unused_mut)] - let mut v_V4956 = args[1].clone(); + let mut v_V4537 = args[1].clone(); #[allow(unused_mut)] - let mut v_V4957 = args[2].clone(); + let mut v_V4538 = args[2].clone(); #[allow(unused_mut)] - let mut v_V4958 = args[3].clone(); + let mut v_V4539 = args[3].clone(); #[allow(unused_mut)] - let mut v_V4959 = args[4].clone(); + let mut v_V4540 = args[4].clone(); #[allow(unused_mut)] - let mut v_V4960 = args[5].clone(); + let mut v_V4541 = args[5].clone(); #[allow(unused_mut)] - let mut v_V4961 = args[6].clone(); + let mut v_V4542 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W4962 = { - let __t779 = v_V4960.clone(); - let __t780 = Value::int(1i64); - rt::add(&__t779, &__t780)? + let v_W4543 = { + let __t744 = v_V4541.clone(); + let __t745 = Value::int(1i64); + rt::add(&__t744, &__t745)? }; { - let v_W4963 = { - let __t801 = { - let __t781 = v_V4959.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t781])? + let v_W4544 = { + let __t766 = { + let __t746 = v_V4540.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t746])? }; - if rt::is_truthy(interp, &__t801)? { + if rt::is_truthy(interp, &__t766)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t783 = { - let __t782 = Value::sym(interp.intern("shen.*spy*")); - rt::apply_direct(interp, "value", &[__t782])? + let __t748 = { + let __t747 = Value::sym(interp.intern("shen.*spy*")); + rt::apply_direct(interp, "value", &[__t747])? }; - let __t784 = v_V4958.clone(); - let __t785 = v_V4959.clone(); - let __t786 = v_W4962.clone(); - let __t800 = { - let v_V4955 = v_V4955.clone(); - let v_V4956 = v_V4956.clone(); - let v_V4957 = v_V4957.clone(); - let v_V4958 = v_V4958.clone(); - let v_V4959 = v_V4959.clone(); - let v_V4961 = v_V4961.clone(); - let v_W4962 = v_W4962.clone(); + let __t749 = v_V4539.clone(); + let __t750 = v_V4540.clone(); + let __t751 = v_W4543.clone(); + let __t765 = { + let v_V4536 = v_V4536.clone(); + let v_V4537 = v_V4537.clone(); + let v_V4538 = v_V4538.clone(); + let v_V4539 = v_V4539.clone(); + let v_V4540 = v_V4540.clone(); + let v_V4542 = v_V4542.clone(); + let v_W4543 = v_W4543.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t794 = { - let __t787 = v_V4955.clone(); - let __t793 = { - let __t789 = { - let __t788 = Value::str(":"); + let __t759 = { + let __t752 = v_V4536.clone(); + let __t758 = { + let __t754 = { + let __t753 = Value::str(":"); rt::apply_direct( interp, "intern", - &[__t788], + &[__t753], )? }; - let __t792 = { - let __t790 = v_V4956.clone(); - let __t791 = Value::nil(); - rt::cons(&__t790, &__t791) + let __t757 = { + let __t755 = v_V4537.clone(); + let __t756 = Value::nil(); + rt::cons(&__t755, &__t756) }; - rt::cons(&__t789, &__t792) + rt::cons(&__t754, &__t757) }; - rt::cons(&__t787, &__t793) + rt::cons(&__t752, &__t758) }; - let __t795 = v_V4957.clone(); - let __t796 = v_V4958.clone(); - let __t797 = v_V4959.clone(); - let __t798 = v_W4962.clone(); - let __t799 = v_V4961.clone(); + let __t760 = v_V4538.clone(); + let __t761 = v_V4539.clone(); + let __t762 = v_V4540.clone(); + let __t763 = v_W4543.clone(); + let __t764 = v_V4542.clone(); rt::apply_direct( interp, "shen.show", &[ - __t794, __t795, __t796, __t797, __t798, - __t799, + __t759, __t760, __t761, __t762, __t763, + __t764, ], )? }) }, vec![ - v_V4955, v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, - v_W4962, + v_V4536, v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, + v_W4543, ], interp, ) @@ -3510,7 +3375,7 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S rt::apply_direct( interp, "when", - &[__t783, __t784, __t785, __t786, __t800], + &[__t748, __t749, __t750, __t751, __t765], )? } } @@ -3519,74 +3384,74 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t804 = { - let __t802 = v_W4963.clone(); - let __t803 = Value::bool(false); - rt::eq(&__t802, &__t803) + let __t769 = { + let __t767 = v_W4544.clone(); + let __t768 = Value::bool(false); + rt::eq(&__t767, &__t768) }; - if match rt::is_truthy(interp, &__t804) { + if match rt::is_truthy(interp, &__t769) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4964 = { - let __t821 = { - let __t805 = v_V4959.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t805])? + let v_W4545 = { + let __t786 = { + let __t770 = v_V4540.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t770])? }; - if rt::is_truthy(interp, &__t821)? { + if rt::is_truthy(interp, &__t786)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t810 = { - let __t809 = { - let __t808 = { - let __t806 = v_V4955.clone(); - let __t807 = v_V4958.clone(); + let __t775 = { + let __t774 = { + let __t773 = { + let __t771 = v_V4536.clone(); + let __t772 = v_V4539.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t806, __t807], + &[__t771, __t772], )? }; - rt::is_cons(&__t808) + rt::is_cons(&__t773) }; - rt::apply_direct(interp, "not", &[__t809])? + rt::apply_direct(interp, "not", &[__t774])? }; - let __t811 = v_V4958.clone(); - let __t812 = v_V4959.clone(); - let __t813 = v_W4962.clone(); - let __t820 = { - let v_V4955 = v_V4955.clone(); - let v_V4956 = v_V4956.clone(); - let v_V4958 = v_V4958.clone(); - let v_V4959 = v_V4959.clone(); - let v_V4961 = v_V4961.clone(); - let v_W4962 = v_W4962.clone(); + let __t776 = v_V4539.clone(); + let __t777 = v_V4540.clone(); + let __t778 = v_W4543.clone(); + let __t785 = { + let v_V4536 = v_V4536.clone(); + let v_V4537 = v_V4537.clone(); + let v_V4539 = v_V4539.clone(); + let v_V4540 = v_V4540.clone(); + let v_V4542 = v_V4542.clone(); + let v_W4543 = v_W4543.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t814 = v_V4955.clone(); - let __t815 = v_V4956.clone(); - let __t816 = v_V4958.clone(); - let __t817 = v_V4959.clone(); - let __t818 = v_W4962.clone(); - let __t819 = v_V4961.clone(); + let __t779 = v_V4536.clone(); + let __t780 = v_V4537.clone(); + let __t781 = v_V4539.clone(); + let __t782 = v_V4540.clone(); + let __t783 = v_W4543.clone(); + let __t784 = v_V4542.clone(); rt::apply_direct( interp, "shen.primitive", &[ - __t814, __t815, __t816, __t817, - __t818, __t819, + __t779, __t780, __t781, __t782, + __t783, __t784, ], )? }) }, vec![ - v_V4955, v_V4956, v_V4958, v_V4959, - v_V4961, v_W4962, + v_V4536, v_V4537, v_V4539, v_V4540, + v_V4542, v_W4543, ], interp, ) @@ -3594,7 +3459,7 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S rt::apply_direct( interp, "when", - &[__t810, __t811, __t812, __t813, __t820], + &[__t775, __t776, __t777, __t778, __t785], )? } } @@ -3603,26 +3468,26 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t824 = { - let __t822 = v_W4964.clone(); - let __t823 = Value::bool(false); - rt::eq(&__t822, &__t823) + let __t789 = { + let __t787 = v_W4545.clone(); + let __t788 = Value::bool(false); + rt::eq(&__t787, &__t788) }; - if match rt::is_truthy(interp, &__t824) { + if match rt::is_truthy(interp, &__t789) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4965 = { - let __t833 = { - let __t825 = v_V4959.clone(); + let v_W4546 = { + let __t798 = { + let __t790 = v_V4540.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t825], + &[__t790], )? }; - if rt::is_truthy(interp, &__t833)? { + if rt::is_truthy(interp, &__t798)? { { let _ = { rt::apply_direct( @@ -3632,19 +3497,19 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S )? }; { - let __t826 = v_V4955.clone(); - let __t827 = v_V4956.clone(); - let __t828 = v_V4957.clone(); - let __t829 = v_V4958.clone(); - let __t830 = v_V4959.clone(); - let __t831 = v_W4962.clone(); - let __t832 = v_V4961.clone(); + let __t791 = v_V4536.clone(); + let __t792 = v_V4537.clone(); + let __t793 = v_V4538.clone(); + let __t794 = v_V4539.clone(); + let __t795 = v_V4540.clone(); + let __t796 = v_W4543.clone(); + let __t797 = v_V4542.clone(); rt::apply_direct( interp, "shen.by-hypothesis", &[ - __t826, __t827, __t828, __t829, - __t830, __t831, __t832, + __t791, __t792, __t793, __t794, + __t795, __t796, __t797, ], )? } @@ -3654,75 +3519,75 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t836 = { - let __t834 = v_W4965.clone(); - let __t835 = Value::bool(false); - rt::eq(&__t834, &__t835) + let __t801 = { + let __t799 = v_W4546.clone(); + let __t800 = Value::bool(false); + rt::eq(&__t799, &__t800) }; - if match rt::is_truthy(interp, &__t836) { + if match rt::is_truthy(interp, &__t801) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4966 = { - let __t859 = { - let __t837 = v_V4959.clone(); + let v_W4547 = { + let __t824 = { + let __t802 = v_V4540.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t837], + &[__t802], )? }; - if rt::is_truthy(interp, &__t859)? { + if rt::is_truthy(interp, &__t824)? { { - let v_W4967 = { - let __t838 = v_V4955.clone(); - let __t839 = v_V4958.clone(); + let v_W4548 = { + let __t803 = v_V4536.clone(); + let __t804 = v_V4539.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t838, __t839], + &[__t803, __t804], )? }; { - let __t858 = { - let __t840 = - v_W4967.clone(); - rt::is_cons(&__t840) + let __t823 = { + let __t805 = + v_W4548.clone(); + rt::is_cons(&__t805) }; if rt::is_truthy( - interp, &__t858, + interp, &__t823, )? { { - let v_W4968 = { - let __t841 = - v_W4967.clone(); - rt::hd(&__t841)? + let v_W4549 = { + let __t806 = + v_W4548.clone(); + rt::hd(&__t806)? }; { - let v_W4969 = { - let __t843 = { - let __t842 = v_W4967.clone(); + let v_W4550 = { + let __t808 = { + let __t807 = v_W4548.clone(); rt::tl( - &__t842, + &__t807, )? }; - let __t844 = - v_V4958 + let __t809 = + v_V4539 .clone( ); - rt::apply_direct(interp, "shen.lazyderef", &[__t843, __t844])? + rt::apply_direct(interp, "shen.lazyderef", &[__t808, __t809])? }; { - let __t857 = { - let __t845 = v_W4969.clone(); - let __t846 = Value::nil(); + let __t822 = { + let __t810 = v_W4550.clone(); + let __t811 = Value::nil(); rt::eq( - &__t845, - &__t846, + &__t810, + &__t811, ) }; - if rt::is_truthy(interp, &__t857)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t847 = v_W4968.clone(); let __t852 = { let __t848 = Value::sym(interp.intern("-->")); let __t851 = { let __t849 = v_V4956.clone(); let __t850 = Value::nil(); rt::cons(&__t849, &__t850) }; rt::cons(&__t848, &__t851) }; let __t853 = v_V4958.clone(); let __t854 = v_V4959.clone(); let __t855 = v_W4962.clone(); let __t856 = v_V4961.clone(); rt::apply_direct(interp, "shen.lookupsig", &[__t847, __t852, __t853, __t854, __t855, __t856])? } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t822)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t812 = v_W4549.clone(); let __t817 = { let __t813 = Value::sym(interp.intern("-->")); let __t816 = { let __t814 = v_V4537.clone(); let __t815 = Value::nil(); rt::cons(&__t814, &__t815) }; rt::cons(&__t813, &__t816) }; let __t818 = v_V4539.clone(); let __t819 = v_V4540.clone(); let __t820 = v_W4543.clone(); let __t821 = v_V4542.clone(); rt::apply_direct(interp, "shen.lookupsig", &[__t812, __t817, __t818, __t819, __t820, __t821])? } } } else { Value::bool(false) } } } } @@ -3736,66 +3601,66 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t862 = { - let __t860 = v_W4966.clone(); - let __t861 = Value::bool(false); - rt::eq(&__t860, &__t861) + let __t827 = { + let __t825 = v_W4547.clone(); + let __t826 = Value::bool(false); + rt::eq(&__t825, &__t826) }; - if match rt::is_truthy(interp, &__t862) { + if match rt::is_truthy(interp, &__t827) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4970 = { - let __t909 = { - let __t863 = - v_V4959.clone(); + let v_W4551 = { + let __t874 = { + let __t828 = + v_V4540.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t863], + &[__t828], )? }; if rt::is_truthy( - interp, &__t909, + interp, &__t874, )? { { - let v_W4971 = { - let __t864 = - v_V4955.clone(); - let __t865 = - v_V4958.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t864, __t865])? + let v_W4552 = { + let __t829 = + v_V4536.clone(); + let __t830 = + v_V4539.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t829, __t830])? }; { - let __t908 = { - let __t866 = - v_W4971 + let __t873 = { + let __t831 = + v_W4552 .clone( ); rt::is_cons( - &__t866, + &__t831, ) }; if rt::is_truthy( - interp, &__t908, + interp, &__t873, )? { { - let v_W4972 = { - let __t868 = { - let __t867 = v_W4971.clone(); - rt::hd(&__t867)? + let v_W4553 = { + let __t833 = { + let __t832 = v_W4552.clone(); + rt::hd(&__t832)? }; - let __t869 = v_V4958.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t868, __t869])? + let __t834 = v_V4539.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t833, __t834])? }; { - let __t907 = { - let __t870 = v_W4972.clone(); - let __t871 = Value::sym(interp.intern("fn")); - rt::eq(&__t870, &__t871) + let __t872 = { + let __t835 = v_W4553.clone(); + let __t836 = Value::sym(interp.intern("fn")); + rt::eq(&__t835, &__t836) }; - if rt::is_truthy(interp, &__t907)? { { let v_W4973 = { let __t873 = { let __t872 = v_W4971.clone(); rt::tl(&__t872)? }; let __t874 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t873, __t874])? }; { let __t906 = { let __t875 = v_W4973.clone(); rt::is_cons(&__t875) }; if rt::is_truthy(interp, &__t906)? { { let v_W4974 = { let __t876 = v_W4973.clone(); rt::hd(&__t876)? }; { let v_W4975 = { let __t878 = { let __t877 = v_W4973.clone(); rt::tl(&__t877)? }; let __t879 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t878, __t879])? }; { let __t905 = { let __t880 = v_W4975.clone(); let __t881 = Value::nil(); rt::eq(&__t880, &__t881) }; if rt::is_truthy(interp, &__t905)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t887 = { let __t885 = { let __t884 = { let __t882 = v_W4974.clone(); let __t883 = v_V4958.clone(); rt::apply_direct(interp, "shen.deref", &[__t882, __t883])? }; rt::apply_direct(interp, "arity", &[__t884])? }; let __t886 = Value::int(0i64); rt::eq(&__t885, &__t886) }; let __t888 = v_V4958.clone(); let __t889 = v_V4959.clone(); let __t890 = v_W4962.clone(); let __t904 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W4974 = v_W4974.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t891 = v_V4958.clone(); let __t892 = v_V4959.clone(); let __t893 = v_W4962.clone(); let __t903 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W4974 = v_W4974.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t896 = { let __t894 = v_W4974.clone(); let __t895 = Value::nil(); rt::cons(&__t894, &__t895) }; let __t897 = v_V4956.clone(); let __t898 = v_V4957.clone(); let __t899 = v_V4958.clone(); let __t900 = v_V4959.clone(); let __t901 = v_W4962.clone(); let __t902 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t896, __t897, __t898, __t899, __t900, __t901, __t902])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W4974], interp) }; rt::apply_direct(interp, "shen.cut", &[__t891, __t892, __t893, __t903])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W4974], interp) }; rt::apply_direct(interp, "when", &[__t887, __t888, __t889, __t890, __t904])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t872)? { { let v_W4554 = { let __t838 = { let __t837 = v_W4552.clone(); rt::tl(&__t837)? }; let __t839 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t838, __t839])? }; { let __t871 = { let __t840 = v_W4554.clone(); rt::is_cons(&__t840) }; if rt::is_truthy(interp, &__t871)? { { let v_W4555 = { let __t841 = v_W4554.clone(); rt::hd(&__t841)? }; { let v_W4556 = { let __t843 = { let __t842 = v_W4554.clone(); rt::tl(&__t842)? }; let __t844 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t843, __t844])? }; { let __t870 = { let __t845 = v_W4556.clone(); let __t846 = Value::nil(); rt::eq(&__t845, &__t846) }; if rt::is_truthy(interp, &__t870)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t852 = { let __t850 = { let __t849 = { let __t847 = v_W4555.clone(); let __t848 = v_V4539.clone(); rt::apply_direct(interp, "shen.deref", &[__t847, __t848])? }; rt::apply_direct(interp, "arity", &[__t849])? }; let __t851 = Value::int(0i64); rt::eq(&__t850, &__t851) }; let __t853 = v_V4539.clone(); let __t854 = v_V4540.clone(); let __t855 = v_W4543.clone(); let __t869 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4555 = v_W4555.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t856 = v_V4539.clone(); let __t857 = v_V4540.clone(); let __t858 = v_W4543.clone(); let __t868 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4555 = v_W4555.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t861 = { let __t859 = v_W4555.clone(); let __t860 = Value::nil(); rt::cons(&__t859, &__t860) }; let __t862 = v_V4537.clone(); let __t863 = v_V4538.clone(); let __t864 = v_V4539.clone(); let __t865 = v_V4540.clone(); let __t866 = v_W4543.clone(); let __t867 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t861, __t862, __t863, __t864, __t865, __t866, __t867])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4555], interp) }; rt::apply_direct(interp, "shen.cut", &[__t856, __t857, __t858, __t868])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4555], interp) }; rt::apply_direct(interp, "when", &[__t852, __t853, __t854, __t855, __t869])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { @@ -3810,43 +3675,43 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t912 = { - let __t910 = - v_W4970.clone(); - let __t911 = + let __t877 = { + let __t875 = + v_W4551.clone(); + let __t876 = Value::bool(false); - rt::eq(&__t910, &__t911) + rt::eq(&__t875, &__t876) }; if match rt::is_truthy( - interp, &__t912, + interp, &__t877, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W4976 = { - let __t942 = { - let __t913 = - v_V4959 + let v_W4557 = { + let __t907 = { + let __t878 = + v_V4540 .clone( ); - rt::apply_direct(interp, "shen.unlocked?", &[__t913])? + rt::apply_direct(interp, "shen.unlocked?", &[__t878])? }; if rt::is_truthy( - interp, &__t942, + interp, &__t907, )? { { - let v_W4977 = { - let __t914 = v_V4955.clone(); - let __t915 = v_V4958.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t914, __t915])? + let v_W4558 = { + let __t879 = v_V4536.clone(); + let __t880 = v_V4539.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t879, __t880])? }; { - let __t941 = { - let __t916 = v_W4977.clone(); - rt::is_cons(&__t916) + let __t906 = { + let __t881 = v_W4558.clone(); + rt::is_cons(&__t881) }; - if rt::is_truthy(interp, &__t941)? { { let v_W4978 = { let __t918 = { let __t917 = v_W4977.clone(); rt::hd(&__t917)? }; let __t919 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t918, __t919])? }; { let __t940 = { let __t920 = v_W4978.clone(); let __t921 = Value::sym(interp.intern("fn")); rt::eq(&__t920, &__t921) }; if rt::is_truthy(interp, &__t940)? { { let v_W4979 = { let __t923 = { let __t922 = v_W4977.clone(); rt::tl(&__t922)? }; let __t924 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t923, __t924])? }; { let __t939 = { let __t925 = v_W4979.clone(); rt::is_cons(&__t925) }; if rt::is_truthy(interp, &__t939)? { { let v_W4980 = { let __t926 = v_W4979.clone(); rt::hd(&__t926)? }; { let v_W4981 = { let __t928 = { let __t927 = v_W4979.clone(); rt::tl(&__t927)? }; let __t929 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t928, __t929])? }; { let __t938 = { let __t930 = v_W4981.clone(); let __t931 = Value::nil(); rt::eq(&__t930, &__t931) }; if rt::is_truthy(interp, &__t938)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t932 = v_W4980.clone(); let __t933 = v_V4956.clone(); let __t934 = v_V4958.clone(); let __t935 = v_V4959.clone(); let __t936 = v_W4962.clone(); let __t937 = v_V4961.clone(); rt::apply_direct(interp, "shen.lookupsig", &[__t932, __t933, __t934, __t935, __t936, __t937])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t906)? { { let v_W4559 = { let __t883 = { let __t882 = v_W4558.clone(); rt::hd(&__t882)? }; let __t884 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t883, __t884])? }; { let __t905 = { let __t885 = v_W4559.clone(); let __t886 = Value::sym(interp.intern("fn")); rt::eq(&__t885, &__t886) }; if rt::is_truthy(interp, &__t905)? { { let v_W4560 = { let __t888 = { let __t887 = v_W4558.clone(); rt::tl(&__t887)? }; let __t889 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t888, __t889])? }; { let __t904 = { let __t890 = v_W4560.clone(); rt::is_cons(&__t890) }; if rt::is_truthy(interp, &__t904)? { { let v_W4561 = { let __t891 = v_W4560.clone(); rt::hd(&__t891)? }; { let v_W4562 = { let __t893 = { let __t892 = v_W4560.clone(); rt::tl(&__t892)? }; let __t894 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t893, __t894])? }; { let __t903 = { let __t895 = v_W4562.clone(); let __t896 = Value::nil(); rt::eq(&__t895, &__t896) }; if rt::is_truthy(interp, &__t903)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t897 = v_W4561.clone(); let __t898 = v_V4537.clone(); let __t899 = v_V4539.clone(); let __t900 = v_V4540.clone(); let __t901 = v_W4543.clone(); let __t902 = v_V4542.clone(); rt::apply_direct(interp, "shen.lookupsig", &[__t897, __t898, __t899, __t900, __t901, __t902])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { @@ -3856,45 +3721,45 @@ pub fn aot_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t945 = { - let __t943 = - v_W4976 + let __t910 = { + let __t908 = + v_W4557 .clone( ); - let __t944 = + let __t909 = Value::bool( false, ); rt::eq( - &__t943, - &__t944, + &__t908, + &__t909, ) }; - if match rt::is_truthy(interp, &__t945) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4982 = { let __t995 = { let __t946 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t946])? }; if rt::is_truthy(interp, &__t995)? { { let v_W4983 = { let __t947 = v_V4955.clone(); let __t948 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t947, __t948])? }; { let __t994 = { let __t949 = v_W4983.clone(); rt::is_cons(&__t949) }; if rt::is_truthy(interp, &__t994)? { { let v_W4984 = { let __t950 = v_W4983.clone(); rt::hd(&__t950)? }; { let v_W4985 = { let __t952 = { let __t951 = v_W4983.clone(); rt::tl(&__t951)? }; let __t953 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t952, __t953])? }; { let __t993 = { let __t954 = v_W4985.clone(); rt::is_cons(&__t954) }; if rt::is_truthy(interp, &__t993)? { { let v_W4986 = { let __t955 = v_W4985.clone(); rt::hd(&__t955)? }; { let v_W4987 = { let __t957 = { let __t956 = v_W4985.clone(); rt::tl(&__t956)? }; let __t958 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t957, __t958])? }; { let __t992 = { let __t959 = v_W4987.clone(); let __t960 = Value::nil(); rt::eq(&__t959, &__t960) }; if rt::is_truthy(interp, &__t992)? { { let v_W4988 = { let __t961 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t961])? }; { let __t962 = v_V4958.clone(); let __t991 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t967 = { let __t966 = { let __t965 = { let __t963 = v_W4984.clone(); let __t964 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t963, __t964])? }; rt::is_cons(&__t965) }; rt::apply_direct(interp, "not", &[__t966])? }; let __t968 = v_V4958.clone(); let __t969 = v_V4959.clone(); let __t970 = v_W4962.clone(); let __t990 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W4984 = v_W4984.clone(); let v_W4986 = v_W4986.clone(); let v_W4988 = v_W4988.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t971 = v_W4984.clone(); let __t978 = { let __t972 = v_W4988.clone(); let __t977 = { let __t973 = Value::sym(interp.intern("-->")); let __t976 = { let __t974 = v_V4956.clone(); let __t975 = Value::nil(); rt::cons(&__t974, &__t975) }; rt::cons(&__t973, &__t976) }; rt::cons(&__t972, &__t977) }; let __t979 = v_V4958.clone(); let __t980 = v_V4959.clone(); let __t981 = v_W4962.clone(); let __t989 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W4986 = v_W4986.clone(); let v_W4988 = v_W4988.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t982 = v_W4986.clone(); let __t983 = v_W4988.clone(); let __t984 = v_V4957.clone(); let __t985 = v_V4958.clone(); let __t986 = v_V4959.clone(); let __t987 = v_W4962.clone(); let __t988 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t982, __t983, __t984, __t985, __t986, __t987, __t988])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W4986, v_W4988], interp) }; rt::apply_direct(interp, "shen.lookupsig", &[__t971, __t978, __t979, __t980, __t981, __t989])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W4984, v_W4986, v_W4988], interp) }; rt::apply_direct(interp, "when", &[__t967, __t968, __t969, __t970, __t990])? } }; rt::apply_direct(interp, "shen.gc", &[__t962, __t991])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t998 = { let __t996 = v_W4982.clone(); let __t997 = Value::bool(false); rt::eq(&__t996, &__t997) }; if match rt::is_truthy(interp, &__t998) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4989 = { let __t1040 = { let __t999 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t999])? }; if rt::is_truthy(interp, &__t1040)? { { let v_W4990 = { let __t1000 = v_V4955.clone(); let __t1001 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1000, __t1001])? }; { let __t1039 = { let __t1002 = v_W4990.clone(); rt::is_cons(&__t1002) }; if rt::is_truthy(interp, &__t1039)? { { let v_W4991 = { let __t1003 = v_W4990.clone(); rt::hd(&__t1003)? }; { let v_W4992 = { let __t1005 = { let __t1004 = v_W4990.clone(); rt::tl(&__t1004)? }; let __t1006 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1005, __t1006])? }; { let __t1038 = { let __t1007 = v_W4992.clone(); rt::is_cons(&__t1007) }; if rt::is_truthy(interp, &__t1038)? { { let v_W4993 = { let __t1008 = v_W4992.clone(); rt::hd(&__t1008)? }; { let v_W4994 = { let __t1010 = { let __t1009 = v_W4992.clone(); rt::tl(&__t1009)? }; let __t1011 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1010, __t1011])? }; { let __t1037 = { let __t1012 = v_W4994.clone(); let __t1013 = Value::nil(); rt::eq(&__t1012, &__t1013) }; if rt::is_truthy(interp, &__t1037)? { { let v_W4995 = { let __t1014 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1014])? }; { let __t1015 = v_V4958.clone(); let __t1036 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1016 = v_W4991.clone(); let __t1023 = { let __t1017 = v_W4995.clone(); let __t1022 = { let __t1018 = Value::sym(interp.intern("-->")); let __t1021 = { let __t1019 = v_V4956.clone(); let __t1020 = Value::nil(); rt::cons(&__t1019, &__t1020) }; rt::cons(&__t1018, &__t1021) }; rt::cons(&__t1017, &__t1022) }; let __t1024 = v_V4957.clone(); let __t1025 = v_V4958.clone(); let __t1026 = v_V4959.clone(); let __t1027 = v_W4962.clone(); let __t1035 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W4993 = v_W4993.clone(); let v_W4995 = v_W4995.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1028 = v_W4993.clone(); let __t1029 = v_W4995.clone(); let __t1030 = v_V4957.clone(); let __t1031 = v_V4958.clone(); let __t1032 = v_V4959.clone(); let __t1033 = v_W4962.clone(); let __t1034 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1028, __t1029, __t1030, __t1031, __t1032, __t1033, __t1034])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W4993, v_W4995], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1016, __t1023, __t1024, __t1025, __t1026, __t1027, __t1035])? } }; rt::apply_direct(interp, "shen.gc", &[__t1015, __t1036])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1043 = { let __t1041 = v_W4989.clone(); let __t1042 = Value::bool(false); rt::eq(&__t1041, &__t1042) }; if match rt::is_truthy(interp, &__t1043) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4996 = { let __t1153 = { let __t1044 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1044])? }; if rt::is_truthy(interp, &__t1153)? { { let v_W4997 = { let __t1045 = v_V4955.clone(); let __t1046 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1045, __t1046])? }; { let __t1152 = { let __t1047 = v_W4997.clone(); rt::is_cons(&__t1047) }; if rt::is_truthy(interp, &__t1152)? { { let v_W4998 = { let __t1049 = { let __t1048 = v_W4997.clone(); rt::hd(&__t1048)? }; let __t1050 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1049, __t1050])? }; { let __t1151 = { let __t1051 = v_W4998.clone(); let __t1052 = Value::sym(interp.intern("cons")); rt::eq(&__t1051, &__t1052) }; if rt::is_truthy(interp, &__t1151)? { { let v_W4999 = { let __t1054 = { let __t1053 = v_W4997.clone(); rt::tl(&__t1053)? }; let __t1055 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1054, __t1055])? }; { let __t1150 = { let __t1056 = v_W4999.clone(); rt::is_cons(&__t1056) }; if rt::is_truthy(interp, &__t1150)? { { let v_W5000 = { let __t1057 = v_W4999.clone(); rt::hd(&__t1057)? }; { let v_W5001 = { let __t1059 = { let __t1058 = v_W4999.clone(); rt::tl(&__t1058)? }; let __t1060 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1059, __t1060])? }; { let __t1149 = { let __t1061 = v_W5001.clone(); rt::is_cons(&__t1061) }; if rt::is_truthy(interp, &__t1149)? { { let v_W5002 = { let __t1062 = v_W5001.clone(); rt::hd(&__t1062)? }; { let v_W5003 = { let __t1064 = { let __t1063 = v_W5001.clone(); rt::tl(&__t1063)? }; let __t1065 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1064, __t1065])? }; { let __t1148 = { let __t1066 = v_W5003.clone(); let __t1067 = Value::nil(); rt::eq(&__t1066, &__t1067) }; if rt::is_truthy(interp, &__t1148)? { { let v_W5004 = { let __t1068 = v_V4956.clone(); let __t1069 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1068, __t1069])? }; { let v_W5005 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5000 = v_W5000.clone(); let v_W5002 = v_W5002.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5006 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1070 = v_W5000.clone(); let __t1071 = v_Z5006.clone(); let __t1072 = v_V4957.clone(); let __t1073 = v_V4958.clone(); let __t1074 = v_V4959.clone(); let __t1075 = v_W4962.clone(); let __t1087 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5002 = v_W5002.clone(); let v_Z5006 = v_Z5006.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1076 = v_W5002.clone(); let __t1081 = { let __t1077 = Value::sym(interp.intern("list")); let __t1080 = { let __t1078 = v_Z5006.clone(); let __t1079 = Value::nil(); rt::cons(&__t1078, &__t1079) }; rt::cons(&__t1077, &__t1080) }; let __t1082 = v_V4957.clone(); let __t1083 = v_V4958.clone(); let __t1084 = v_V4959.clone(); let __t1085 = v_W4962.clone(); let __t1086 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1076, __t1081, __t1082, __t1083, __t1084, __t1085, __t1086])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5002, v_Z5006], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1070, __t1071, __t1072, __t1073, __t1074, __t1075, __t1087])? } }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5000, v_W5002], interp) }; { let __t1147 = { let __t1088 = v_W5004.clone(); rt::is_cons(&__t1088) }; if rt::is_truthy(interp, &__t1147)? { { let v_W5007 = { let __t1090 = { let __t1089 = v_W5004.clone(); rt::hd(&__t1089)? }; let __t1091 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1090, __t1091])? }; { let v_W5008 = { let v_V4958 = v_V4958.clone(); let v_W5004 = v_W5004.clone(); let v_W5005 = v_W5005.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5009 = { let __t1093 = { let __t1092 = v_W5004.clone(); rt::tl(&__t1092)? }; let __t1094 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1093, __t1094])? }; { let v_W5010 = { let v_W5005 = v_W5005.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5011 = args[0].clone(); Ok({ let __t1095 = v_Z5011.clone(); rt::apply_value(interp, v_W5005.clone(), &[__t1095])? }) }, vec![v_W5005], interp) }; { let __t1123 = { let __t1096 = v_W5009.clone(); rt::is_cons(&__t1096) }; if rt::is_truthy(interp, &__t1123)? { { let v_W5012 = { let __t1097 = v_W5009.clone(); rt::hd(&__t1097)? }; { let v_W5013 = { let __t1099 = { let __t1098 = v_W5009.clone(); rt::tl(&__t1098)? }; let __t1100 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1099, __t1100])? }; { let v_W5014 = { let v_W5010 = v_W5010.clone(); let v_W5012 = v_W5012.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1101 = v_W5012.clone(); rt::apply_value(interp, v_W5010.clone(), &[__t1101])? }), vec![v_W5010, v_W5012], interp) }; { let __t1110 = { let __t1102 = v_W5013.clone(); let __t1103 = Value::nil(); rt::eq(&__t1102, &__t1103) }; if rt::is_truthy(interp, &__t1110)? { rt::apply_value(interp, v_W5014.clone(), &[])? } else { { let __t1109 = { let __t1104 = v_W5013.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1104])? }; if rt::is_truthy(interp, &__t1109)? { { let __t1105 = v_W5013.clone(); let __t1106 = Value::nil(); let __t1107 = v_V4958.clone(); let __t1108 = v_W5014.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1105, __t1106, __t1107, __t1108])? } } else { Value::bool(false) } } } } } } } } else { { let __t1122 = { let __t1111 = v_W5009.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1111])? }; if rt::is_truthy(interp, &__t1122)? { { let v_W5015 = { let __t1112 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1112])? }; { let __t1113 = v_V4958.clone(); let __t1121 = { let __t1114 = v_W5009.clone(); let __t1117 = { let __t1115 = v_W5015.clone(); let __t1116 = Value::nil(); rt::cons(&__t1115, &__t1116) }; let __t1118 = v_V4958.clone(); let __t1120 = { let v_W5010 = v_W5010.clone(); let v_W5015 = v_W5015.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1119 = v_W5015.clone(); rt::apply_value(interp, v_W5010.clone(), &[__t1119])? }), vec![v_W5010, v_W5015], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1114, __t1117, __t1118, __t1120])? }; rt::apply_direct(interp, "shen.gc", &[__t1113, __t1121])? } } } else { Value::bool(false) } } } } } }), vec![v_V4958, v_W5004, v_W5005], interp) }; { let __t1132 = { let __t1124 = v_W5007.clone(); let __t1125 = Value::sym(interp.intern("list")); rt::eq(&__t1124, &__t1125) }; if rt::is_truthy(interp, &__t1132)? { rt::apply_value(interp, v_W5008.clone(), &[])? } else { { let __t1131 = { let __t1126 = v_W5007.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1126])? }; if rt::is_truthy(interp, &__t1131)? { { let __t1127 = v_W5007.clone(); let __t1128 = Value::sym(interp.intern("list")); let __t1129 = v_V4958.clone(); let __t1130 = v_W5008.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1127, __t1128, __t1129, __t1130])? } } else { Value::bool(false) } } } } } } } else { { let __t1146 = { let __t1133 = v_W5004.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1133])? }; if rt::is_truthy(interp, &__t1146)? { { let v_W5016 = { let __t1134 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1134])? }; { let __t1135 = v_V4958.clone(); let __t1145 = { let __t1136 = v_W5004.clone(); let __t1141 = { let __t1137 = Value::sym(interp.intern("list")); let __t1140 = { let __t1138 = v_W5016.clone(); let __t1139 = Value::nil(); rt::cons(&__t1138, &__t1139) }; rt::cons(&__t1137, &__t1140) }; let __t1142 = v_V4958.clone(); let __t1144 = { let v_W5005 = v_W5005.clone(); let v_W5016 = v_W5016.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1143 = v_W5016.clone(); rt::apply_value(interp, v_W5005.clone(), &[__t1143])? }), vec![v_W5005, v_W5016], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1136, __t1141, __t1142, __t1144])? }; rt::apply_direct(interp, "shen.gc", &[__t1135, __t1145])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1156 = { let __t1154 = v_W4996.clone(); let __t1155 = Value::bool(false); rt::eq(&__t1154, &__t1155) }; if match rt::is_truthy(interp, &__t1156) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5017 = { let __t1292 = { let __t1157 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1157])? }; if rt::is_truthy(interp, &__t1292)? { { let v_W5018 = { let __t1158 = v_V4955.clone(); let __t1159 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1158, __t1159])? }; { let __t1291 = { let __t1160 = v_W5018.clone(); rt::is_cons(&__t1160) }; if rt::is_truthy(interp, &__t1291)? { { let v_W5019 = { let __t1162 = { let __t1161 = v_W5018.clone(); rt::hd(&__t1161)? }; let __t1163 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1162, __t1163])? }; { let __t1290 = { let __t1164 = v_W5019.clone(); let __t1165 = Value::sym(interp.intern("@p")); rt::eq(&__t1164, &__t1165) }; if rt::is_truthy(interp, &__t1290)? { { let v_W5020 = { let __t1167 = { let __t1166 = v_W5018.clone(); rt::tl(&__t1166)? }; let __t1168 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1167, __t1168])? }; { let __t1289 = { let __t1169 = v_W5020.clone(); rt::is_cons(&__t1169) }; if rt::is_truthy(interp, &__t1289)? { { let v_W5021 = { let __t1170 = v_W5020.clone(); rt::hd(&__t1170)? }; { let v_W5022 = { let __t1172 = { let __t1171 = v_W5020.clone(); rt::tl(&__t1171)? }; let __t1173 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1172, __t1173])? }; { let __t1288 = { let __t1174 = v_W5022.clone(); rt::is_cons(&__t1174) }; if rt::is_truthy(interp, &__t1288)? { { let v_W5023 = { let __t1175 = v_W5022.clone(); rt::hd(&__t1175)? }; { let v_W5024 = { let __t1177 = { let __t1176 = v_W5022.clone(); rt::tl(&__t1176)? }; let __t1178 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1177, __t1178])? }; { let __t1287 = { let __t1179 = v_W5024.clone(); let __t1180 = Value::nil(); rt::eq(&__t1179, &__t1180) }; if rt::is_truthy(interp, &__t1287)? { { let v_W5025 = { let __t1181 = v_V4956.clone(); let __t1182 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1181, __t1182])? }; { let v_W5026 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5021 = v_W5021.clone(); let v_W5023 = v_W5023.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5027 = args[0].clone(); Ok({ let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5021 = v_W5021.clone(); let v_W5023 = v_W5023.clone(); let v_Z5027 = v_Z5027.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5028 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1183 = v_W5021.clone(); let __t1184 = v_Z5027.clone(); let __t1185 = v_V4957.clone(); let __t1186 = v_V4958.clone(); let __t1187 = v_V4959.clone(); let __t1188 = v_W4962.clone(); let __t1196 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5023 = v_W5023.clone(); let v_Z5028 = v_Z5028.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1189 = v_W5023.clone(); let __t1190 = v_Z5028.clone(); let __t1191 = v_V4957.clone(); let __t1192 = v_V4958.clone(); let __t1193 = v_V4959.clone(); let __t1194 = v_W4962.clone(); let __t1195 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1189, __t1190, __t1191, __t1192, __t1193, __t1194, __t1195])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5023, v_Z5028], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1183, __t1184, __t1185, __t1186, __t1187, __t1188, __t1196])? } }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5021, v_W5023, v_Z5027], interp) }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5021, v_W5023], interp) }; { let __t1286 = { let __t1197 = v_W5025.clone(); rt::is_cons(&__t1197) }; if rt::is_truthy(interp, &__t1286)? { { let v_W5029 = { let __t1198 = v_W5025.clone(); rt::hd(&__t1198)? }; { let v_W5030 = { let __t1200 = { let __t1199 = v_W5025.clone(); rt::tl(&__t1199)? }; let __t1201 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1200, __t1201])? }; { let v_W5031 = { let v_W5026 = v_W5026.clone(); let v_W5029 = v_W5029.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5032 = args[0].clone(); Ok({ let __t1203 = { let __t1202 = v_W5029.clone(); rt::apply_value(interp, v_W5026.clone(), &[__t1202])? }; let __t1204 = v_Z5032.clone(); rt::apply_value(interp, __t1203, &[__t1204])? }) }, vec![v_W5026, v_W5029], interp) }; { let __t1264 = { let __t1205 = v_W5030.clone(); rt::is_cons(&__t1205) }; if rt::is_truthy(interp, &__t1264)? { { let v_W5033 = { let __t1207 = { let __t1206 = v_W5030.clone(); rt::hd(&__t1206)? }; let __t1208 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1207, __t1208])? }; { let v_W5034 = { let v_V4958 = v_V4958.clone(); let v_W5030 = v_W5030.clone(); let v_W5031 = v_W5031.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5035 = { let __t1210 = { let __t1209 = v_W5030.clone(); rt::tl(&__t1209)? }; let __t1211 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1210, __t1211])? }; { let v_W5036 = { let v_W5031 = v_W5031.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5037 = args[0].clone(); Ok({ let __t1212 = v_Z5037.clone(); rt::apply_value(interp, v_W5031.clone(), &[__t1212])? }) }, vec![v_W5031], interp) }; { let __t1240 = { let __t1213 = v_W5035.clone(); rt::is_cons(&__t1213) }; if rt::is_truthy(interp, &__t1240)? { { let v_W5038 = { let __t1214 = v_W5035.clone(); rt::hd(&__t1214)? }; { let v_W5039 = { let __t1216 = { let __t1215 = v_W5035.clone(); rt::tl(&__t1215)? }; let __t1217 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1216, __t1217])? }; { let v_W5040 = { let v_W5036 = v_W5036.clone(); let v_W5038 = v_W5038.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1218 = v_W5038.clone(); rt::apply_value(interp, v_W5036.clone(), &[__t1218])? }), vec![v_W5036, v_W5038], interp) }; { let __t1227 = { let __t1219 = v_W5039.clone(); let __t1220 = Value::nil(); rt::eq(&__t1219, &__t1220) }; if rt::is_truthy(interp, &__t1227)? { rt::apply_value(interp, v_W5040.clone(), &[])? } else { { let __t1226 = { let __t1221 = v_W5039.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1221])? }; if rt::is_truthy(interp, &__t1226)? { { let __t1222 = v_W5039.clone(); let __t1223 = Value::nil(); let __t1224 = v_V4958.clone(); let __t1225 = v_W5040.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1222, __t1223, __t1224, __t1225])? } } else { Value::bool(false) } } } } } } } } else { { let __t1239 = { let __t1228 = v_W5035.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1228])? }; if rt::is_truthy(interp, &__t1239)? { { let v_W5041 = { let __t1229 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1229])? }; { let __t1230 = v_V4958.clone(); let __t1238 = { let __t1231 = v_W5035.clone(); let __t1234 = { let __t1232 = v_W5041.clone(); let __t1233 = Value::nil(); rt::cons(&__t1232, &__t1233) }; let __t1235 = v_V4958.clone(); let __t1237 = { let v_W5036 = v_W5036.clone(); let v_W5041 = v_W5041.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1236 = v_W5041.clone(); rt::apply_value(interp, v_W5036.clone(), &[__t1236])? }), vec![v_W5036, v_W5041], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1231, __t1234, __t1235, __t1237])? }; rt::apply_direct(interp, "shen.gc", &[__t1230, __t1238])? } } } else { Value::bool(false) } } } } } }), vec![v_V4958, v_W5030, v_W5031], interp) }; { let __t1249 = { let __t1241 = v_W5033.clone(); let __t1242 = Value::sym(interp.intern("*")); rt::eq(&__t1241, &__t1242) }; if rt::is_truthy(interp, &__t1249)? { rt::apply_value(interp, v_W5034.clone(), &[])? } else { { let __t1248 = { let __t1243 = v_W5033.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1243])? }; if rt::is_truthy(interp, &__t1248)? { { let __t1244 = v_W5033.clone(); let __t1245 = Value::sym(interp.intern("*")); let __t1246 = v_V4958.clone(); let __t1247 = v_W5034.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1244, __t1245, __t1246, __t1247])? } } else { Value::bool(false) } } } } } } } else { { let __t1263 = { let __t1250 = v_W5030.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1250])? }; if rt::is_truthy(interp, &__t1263)? { { let v_W5042 = { let __t1251 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1251])? }; { let __t1252 = v_V4958.clone(); let __t1262 = { let __t1253 = v_W5030.clone(); let __t1258 = { let __t1254 = Value::sym(interp.intern("*")); let __t1257 = { let __t1255 = v_W5042.clone(); let __t1256 = Value::nil(); rt::cons(&__t1255, &__t1256) }; rt::cons(&__t1254, &__t1257) }; let __t1259 = v_V4958.clone(); let __t1261 = { let v_W5031 = v_W5031.clone(); let v_W5042 = v_W5042.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1260 = v_W5042.clone(); rt::apply_value(interp, v_W5031.clone(), &[__t1260])? }), vec![v_W5031, v_W5042], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1253, __t1258, __t1259, __t1261])? }; rt::apply_direct(interp, "shen.gc", &[__t1252, __t1262])? } } } else { Value::bool(false) } } } } } } } } else { { let __t1285 = { let __t1265 = v_W5025.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1265])? }; if rt::is_truthy(interp, &__t1285)? { { let v_W5043 = { let __t1266 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1266])? }; { let __t1267 = v_V4958.clone(); let __t1284 = { let v_W5044 = { let __t1268 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1268])? }; { let __t1269 = v_V4958.clone(); let __t1283 = { let __t1270 = v_W5025.clone(); let __t1277 = { let __t1271 = v_W5043.clone(); let __t1276 = { let __t1272 = Value::sym(interp.intern("*")); let __t1275 = { let __t1273 = v_W5044.clone(); let __t1274 = Value::nil(); rt::cons(&__t1273, &__t1274) }; rt::cons(&__t1272, &__t1275) }; rt::cons(&__t1271, &__t1276) }; let __t1278 = v_V4958.clone(); let __t1282 = { let v_W5026 = v_W5026.clone(); let v_W5043 = v_W5043.clone(); let v_W5044 = v_W5044.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1280 = { let __t1279 = v_W5043.clone(); rt::apply_value(interp, v_W5026.clone(), &[__t1279])? }; let __t1281 = v_W5044.clone(); rt::apply_value(interp, __t1280, &[__t1281])? }), vec![v_W5026, v_W5043, v_W5044], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1270, __t1277, __t1278, __t1282])? }; rt::apply_direct(interp, "shen.gc", &[__t1269, __t1283])? } }; rt::apply_direct(interp, "shen.gc", &[__t1267, __t1284])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1295 = { let __t1293 = v_W5017.clone(); let __t1294 = Value::bool(false); rt::eq(&__t1293, &__t1294) }; if match rt::is_truthy(interp, &__t1295) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5045 = { let __t1405 = { let __t1296 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1296])? }; if rt::is_truthy(interp, &__t1405)? { { let v_W5046 = { let __t1297 = v_V4955.clone(); let __t1298 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1297, __t1298])? }; { let __t1404 = { let __t1299 = v_W5046.clone(); rt::is_cons(&__t1299) }; if rt::is_truthy(interp, &__t1404)? { { let v_W5047 = { let __t1301 = { let __t1300 = v_W5046.clone(); rt::hd(&__t1300)? }; let __t1302 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1301, __t1302])? }; { let __t1403 = { let __t1303 = v_W5047.clone(); let __t1304 = Value::sym(interp.intern("@v")); rt::eq(&__t1303, &__t1304) }; if rt::is_truthy(interp, &__t1403)? { { let v_W5048 = { let __t1306 = { let __t1305 = v_W5046.clone(); rt::tl(&__t1305)? }; let __t1307 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1306, __t1307])? }; { let __t1402 = { let __t1308 = v_W5048.clone(); rt::is_cons(&__t1308) }; if rt::is_truthy(interp, &__t1402)? { { let v_W5049 = { let __t1309 = v_W5048.clone(); rt::hd(&__t1309)? }; { let v_W5050 = { let __t1311 = { let __t1310 = v_W5048.clone(); rt::tl(&__t1310)? }; let __t1312 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1311, __t1312])? }; { let __t1401 = { let __t1313 = v_W5050.clone(); rt::is_cons(&__t1313) }; if rt::is_truthy(interp, &__t1401)? { { let v_W5051 = { let __t1314 = v_W5050.clone(); rt::hd(&__t1314)? }; { let v_W5052 = { let __t1316 = { let __t1315 = v_W5050.clone(); rt::tl(&__t1315)? }; let __t1317 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1316, __t1317])? }; { let __t1400 = { let __t1318 = v_W5052.clone(); let __t1319 = Value::nil(); rt::eq(&__t1318, &__t1319) }; if rt::is_truthy(interp, &__t1400)? { { let v_W5053 = { let __t1320 = v_V4956.clone(); let __t1321 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1320, __t1321])? }; { let v_W5054 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5049 = v_W5049.clone(); let v_W5051 = v_W5051.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5055 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1322 = v_W5049.clone(); let __t1323 = v_Z5055.clone(); let __t1324 = v_V4957.clone(); let __t1325 = v_V4958.clone(); let __t1326 = v_V4959.clone(); let __t1327 = v_W4962.clone(); let __t1339 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5051 = v_W5051.clone(); let v_Z5055 = v_Z5055.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1328 = v_W5051.clone(); let __t1333 = { let __t1329 = Value::sym(interp.intern("vector")); let __t1332 = { let __t1330 = v_Z5055.clone(); let __t1331 = Value::nil(); rt::cons(&__t1330, &__t1331) }; rt::cons(&__t1329, &__t1332) }; let __t1334 = v_V4957.clone(); let __t1335 = v_V4958.clone(); let __t1336 = v_V4959.clone(); let __t1337 = v_W4962.clone(); let __t1338 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1328, __t1333, __t1334, __t1335, __t1336, __t1337, __t1338])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5051, v_Z5055], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1322, __t1323, __t1324, __t1325, __t1326, __t1327, __t1339])? } }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5049, v_W5051], interp) }; { let __t1399 = { let __t1340 = v_W5053.clone(); rt::is_cons(&__t1340) }; if rt::is_truthy(interp, &__t1399)? { { let v_W5056 = { let __t1342 = { let __t1341 = v_W5053.clone(); rt::hd(&__t1341)? }; let __t1343 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1342, __t1343])? }; { let v_W5057 = { let v_V4958 = v_V4958.clone(); let v_W5053 = v_W5053.clone(); let v_W5054 = v_W5054.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5058 = { let __t1345 = { let __t1344 = v_W5053.clone(); rt::tl(&__t1344)? }; let __t1346 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1345, __t1346])? }; { let v_W5059 = { let v_W5054 = v_W5054.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5060 = args[0].clone(); Ok({ let __t1347 = v_Z5060.clone(); rt::apply_value(interp, v_W5054.clone(), &[__t1347])? }) }, vec![v_W5054], interp) }; { let __t1375 = { let __t1348 = v_W5058.clone(); rt::is_cons(&__t1348) }; if rt::is_truthy(interp, &__t1375)? { { let v_W5061 = { let __t1349 = v_W5058.clone(); rt::hd(&__t1349)? }; { let v_W5062 = { let __t1351 = { let __t1350 = v_W5058.clone(); rt::tl(&__t1350)? }; let __t1352 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1351, __t1352])? }; { let v_W5063 = { let v_W5059 = v_W5059.clone(); let v_W5061 = v_W5061.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1353 = v_W5061.clone(); rt::apply_value(interp, v_W5059.clone(), &[__t1353])? }), vec![v_W5059, v_W5061], interp) }; { let __t1362 = { let __t1354 = v_W5062.clone(); let __t1355 = Value::nil(); rt::eq(&__t1354, &__t1355) }; if rt::is_truthy(interp, &__t1362)? { rt::apply_value(interp, v_W5063.clone(), &[])? } else { { let __t1361 = { let __t1356 = v_W5062.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1356])? }; if rt::is_truthy(interp, &__t1361)? { { let __t1357 = v_W5062.clone(); let __t1358 = Value::nil(); let __t1359 = v_V4958.clone(); let __t1360 = v_W5063.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1357, __t1358, __t1359, __t1360])? } } else { Value::bool(false) } } } } } } } } else { { let __t1374 = { let __t1363 = v_W5058.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1363])? }; if rt::is_truthy(interp, &__t1374)? { { let v_W5064 = { let __t1364 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1364])? }; { let __t1365 = v_V4958.clone(); let __t1373 = { let __t1366 = v_W5058.clone(); let __t1369 = { let __t1367 = v_W5064.clone(); let __t1368 = Value::nil(); rt::cons(&__t1367, &__t1368) }; let __t1370 = v_V4958.clone(); let __t1372 = { let v_W5059 = v_W5059.clone(); let v_W5064 = v_W5064.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1371 = v_W5064.clone(); rt::apply_value(interp, v_W5059.clone(), &[__t1371])? }), vec![v_W5059, v_W5064], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1366, __t1369, __t1370, __t1372])? }; rt::apply_direct(interp, "shen.gc", &[__t1365, __t1373])? } } } else { Value::bool(false) } } } } } }), vec![v_V4958, v_W5053, v_W5054], interp) }; { let __t1384 = { let __t1376 = v_W5056.clone(); let __t1377 = Value::sym(interp.intern("vector")); rt::eq(&__t1376, &__t1377) }; if rt::is_truthy(interp, &__t1384)? { rt::apply_value(interp, v_W5057.clone(), &[])? } else { { let __t1383 = { let __t1378 = v_W5056.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1378])? }; if rt::is_truthy(interp, &__t1383)? { { let __t1379 = v_W5056.clone(); let __t1380 = Value::sym(interp.intern("vector")); let __t1381 = v_V4958.clone(); let __t1382 = v_W5057.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1379, __t1380, __t1381, __t1382])? } } else { Value::bool(false) } } } } } } } else { { let __t1398 = { let __t1385 = v_W5053.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1385])? }; if rt::is_truthy(interp, &__t1398)? { { let v_W5065 = { let __t1386 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1386])? }; { let __t1387 = v_V4958.clone(); let __t1397 = { let __t1388 = v_W5053.clone(); let __t1393 = { let __t1389 = Value::sym(interp.intern("vector")); let __t1392 = { let __t1390 = v_W5065.clone(); let __t1391 = Value::nil(); rt::cons(&__t1390, &__t1391) }; rt::cons(&__t1389, &__t1392) }; let __t1394 = v_V4958.clone(); let __t1396 = { let v_W5054 = v_W5054.clone(); let v_W5065 = v_W5065.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1395 = v_W5065.clone(); rt::apply_value(interp, v_W5054.clone(), &[__t1395])? }), vec![v_W5054, v_W5065], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1388, __t1393, __t1394, __t1396])? }; rt::apply_direct(interp, "shen.gc", &[__t1387, __t1397])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1408 = { let __t1406 = v_W5045.clone(); let __t1407 = Value::bool(false); rt::eq(&__t1406, &__t1407) }; if match rt::is_truthy(interp, &__t1408) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5066 = { let __t1463 = { let __t1409 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1409])? }; if rt::is_truthy(interp, &__t1463)? { { let v_W5067 = { let __t1410 = v_V4955.clone(); let __t1411 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1410, __t1411])? }; { let __t1462 = { let __t1412 = v_W5067.clone(); rt::is_cons(&__t1412) }; if rt::is_truthy(interp, &__t1462)? { { let v_W5068 = { let __t1414 = { let __t1413 = v_W5067.clone(); rt::hd(&__t1413)? }; let __t1415 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1414, __t1415])? }; { let __t1461 = { let __t1416 = v_W5068.clone(); let __t1417 = Value::sym(interp.intern("@s")); rt::eq(&__t1416, &__t1417) }; if rt::is_truthy(interp, &__t1461)? { { let v_W5069 = { let __t1419 = { let __t1418 = v_W5067.clone(); rt::tl(&__t1418)? }; let __t1420 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1419, __t1420])? }; { let __t1460 = { let __t1421 = v_W5069.clone(); rt::is_cons(&__t1421) }; if rt::is_truthy(interp, &__t1460)? { { let v_W5070 = { let __t1422 = v_W5069.clone(); rt::hd(&__t1422)? }; { let v_W5071 = { let __t1424 = { let __t1423 = v_W5069.clone(); rt::tl(&__t1423)? }; let __t1425 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1424, __t1425])? }; { let __t1459 = { let __t1426 = v_W5071.clone(); rt::is_cons(&__t1426) }; if rt::is_truthy(interp, &__t1459)? { { let v_W5072 = { let __t1427 = v_W5071.clone(); rt::hd(&__t1427)? }; { let v_W5073 = { let __t1429 = { let __t1428 = v_W5071.clone(); rt::tl(&__t1428)? }; let __t1430 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1429, __t1430])? }; { let __t1458 = { let __t1431 = v_W5073.clone(); let __t1432 = Value::nil(); rt::eq(&__t1431, &__t1432) }; if rt::is_truthy(interp, &__t1458)? { { let v_W5074 = { let __t1433 = v_V4956.clone(); let __t1434 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1433, __t1434])? }; { let v_W5075 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5070 = v_W5070.clone(); let v_W5072 = v_W5072.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1435 = v_W5070.clone(); let __t1436 = Value::sym(interp.intern("string")); let __t1437 = v_V4957.clone(); let __t1438 = v_V4958.clone(); let __t1439 = v_V4959.clone(); let __t1440 = v_W4962.clone(); let __t1448 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5072 = v_W5072.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1441 = v_W5072.clone(); let __t1442 = Value::sym(interp.intern("string")); let __t1443 = v_V4957.clone(); let __t1444 = v_V4958.clone(); let __t1445 = v_V4959.clone(); let __t1446 = v_W4962.clone(); let __t1447 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1441, __t1442, __t1443, __t1444, __t1445, __t1446, __t1447])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5072], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1435, __t1436, __t1437, __t1438, __t1439, __t1440, __t1448])? } }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5070, v_W5072], interp) }; { let __t1457 = { let __t1449 = v_W5074.clone(); let __t1450 = Value::sym(interp.intern("string")); rt::eq(&__t1449, &__t1450) }; if rt::is_truthy(interp, &__t1457)? { rt::apply_value(interp, v_W5075.clone(), &[])? } else { { let __t1456 = { let __t1451 = v_W5074.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1451])? }; if rt::is_truthy(interp, &__t1456)? { { let __t1452 = v_W5074.clone(); let __t1453 = Value::sym(interp.intern("string")); let __t1454 = v_V4958.clone(); let __t1455 = v_W5075.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1452, __t1453, __t1454, __t1455])? } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1466 = { let __t1464 = v_W5066.clone(); let __t1465 = Value::bool(false); rt::eq(&__t1464, &__t1465) }; if match rt::is_truthy(interp, &__t1466) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5076 = { let __t1634 = { let __t1467 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1467])? }; if rt::is_truthy(interp, &__t1634)? { { let v_W5077 = { let __t1468 = v_V4955.clone(); let __t1469 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1468, __t1469])? }; { let __t1633 = { let __t1470 = v_W5077.clone(); rt::is_cons(&__t1470) }; if rt::is_truthy(interp, &__t1633)? { { let v_W5078 = { let __t1472 = { let __t1471 = v_W5077.clone(); rt::hd(&__t1471)? }; let __t1473 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1472, __t1473])? }; { let __t1632 = { let __t1474 = v_W5078.clone(); let __t1475 = Value::sym(interp.intern("lambda")); rt::eq(&__t1474, &__t1475) }; if rt::is_truthy(interp, &__t1632)? { { let v_W5079 = { let __t1477 = { let __t1476 = v_W5077.clone(); rt::tl(&__t1476)? }; let __t1478 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1477, __t1478])? }; { let __t1631 = { let __t1479 = v_W5079.clone(); rt::is_cons(&__t1479) }; if rt::is_truthy(interp, &__t1631)? { { let v_W5080 = { let __t1480 = v_W5079.clone(); rt::hd(&__t1480)? }; { let v_W5081 = { let __t1482 = { let __t1481 = v_W5079.clone(); rt::tl(&__t1481)? }; let __t1483 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1482, __t1483])? }; { let __t1630 = { let __t1484 = v_W5081.clone(); rt::is_cons(&__t1484) }; if rt::is_truthy(interp, &__t1630)? { { let v_W5082 = { let __t1485 = v_W5081.clone(); rt::hd(&__t1485)? }; { let v_W5083 = { let __t1487 = { let __t1486 = v_W5081.clone(); rt::tl(&__t1486)? }; let __t1488 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1487, __t1488])? }; { let __t1629 = { let __t1489 = v_W5083.clone(); let __t1490 = Value::nil(); rt::eq(&__t1489, &__t1490) }; if rt::is_truthy(interp, &__t1629)? { { let v_W5084 = { let __t1491 = v_V4956.clone(); let __t1492 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1491, __t1492])? }; { let v_W5085 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5080 = v_W5080.clone(); let v_W5082 = v_W5082.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5086 = args[0].clone(); Ok({ let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5080 = v_W5080.clone(); let v_W5082 = v_W5082.clone(); let v_Z5086 = v_Z5086.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5087 = args[0].clone(); Ok({ let v_W5088 = { let __t1493 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1493])? }; { let __t1494 = v_V4958.clone(); let __t1538 = { let v_W5089 = { let __t1495 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1495])? }; { let __t1496 = v_V4958.clone(); let __t1537 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1497 = v_W5089.clone(); let __t1501 = { let __t1500 = { let __t1498 = v_W5080.clone(); let __t1499 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1498, __t1499])? }; rt::apply_direct(interp, "shen.freshterm", &[__t1500])? }; let __t1502 = v_V4958.clone(); let __t1503 = v_V4959.clone(); let __t1504 = v_W4962.clone(); let __t1536 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5080 = v_W5080.clone(); let v_W5082 = v_W5082.clone(); let v_W5088 = v_W5088.clone(); let v_W5089 = v_W5089.clone(); let v_Z5086 = v_Z5086.clone(); let v_Z5087 = v_Z5087.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1505 = v_W5088.clone(); let __t1515 = { let __t1508 = { let __t1506 = v_W5080.clone(); let __t1507 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1506, __t1507])? }; let __t1511 = { let __t1509 = v_W5089.clone(); let __t1510 = v_V4958.clone(); rt::apply_direct(interp, "shen.deref", &[__t1509, __t1510])? }; let __t1514 = { let __t1512 = v_W5082.clone(); let __t1513 = v_V4958.clone(); rt::apply_direct(interp, "shen.deref", &[__t1512, __t1513])? }; rt::apply_direct(interp, "shen.beta", &[__t1508, __t1511, __t1514])? }; let __t1516 = v_V4958.clone(); let __t1517 = v_V4959.clone(); let __t1518 = v_W4962.clone(); let __t1535 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5088 = v_W5088.clone(); let v_W5089 = v_W5089.clone(); let v_Z5086 = v_Z5086.clone(); let v_Z5087 = v_Z5087.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1519 = v_W5088.clone(); let __t1520 = v_Z5087.clone(); let __t1530 = { let __t1528 = { let __t1521 = v_W5089.clone(); let __t1527 = { let __t1523 = { let __t1522 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t1522])? }; let __t1526 = { let __t1524 = v_Z5086.clone(); let __t1525 = Value::nil(); rt::cons(&__t1524, &__t1525) }; rt::cons(&__t1523, &__t1526) }; rt::cons(&__t1521, &__t1527) }; let __t1529 = v_V4957.clone(); rt::cons(&__t1528, &__t1529) }; let __t1531 = v_V4958.clone(); let __t1532 = v_V4959.clone(); let __t1533 = v_W4962.clone(); let __t1534 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1519, __t1520, __t1530, __t1531, __t1532, __t1533, __t1534])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5088, v_W5089, v_Z5086, v_Z5087], interp) }; rt::apply_direct(interp, "bind", &[__t1505, __t1515, __t1516, __t1517, __t1518, __t1535])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5080, v_W5082, v_W5088, v_W5089, v_Z5086, v_Z5087], interp) }; rt::apply_direct(interp, "bind", &[__t1497, __t1501, __t1502, __t1503, __t1504, __t1536])? } }; rt::apply_direct(interp, "shen.gc", &[__t1496, __t1537])? } }; rt::apply_direct(interp, "shen.gc", &[__t1494, __t1538])? } }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5080, v_W5082, v_Z5086], interp) }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5080, v_W5082], interp) }; { let __t1628 = { let __t1539 = v_W5084.clone(); rt::is_cons(&__t1539) }; if rt::is_truthy(interp, &__t1628)? { { let v_W5090 = { let __t1540 = v_W5084.clone(); rt::hd(&__t1540)? }; { let v_W5091 = { let __t1542 = { let __t1541 = v_W5084.clone(); rt::tl(&__t1541)? }; let __t1543 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1542, __t1543])? }; { let v_W5092 = { let v_W5085 = v_W5085.clone(); let v_W5090 = v_W5090.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5093 = args[0].clone(); Ok({ let __t1545 = { let __t1544 = v_W5090.clone(); rt::apply_value(interp, v_W5085.clone(), &[__t1544])? }; let __t1546 = v_Z5093.clone(); rt::apply_value(interp, __t1545, &[__t1546])? }) }, vec![v_W5085, v_W5090], interp) }; { let __t1606 = { let __t1547 = v_W5091.clone(); rt::is_cons(&__t1547) }; if rt::is_truthy(interp, &__t1606)? { { let v_W5094 = { let __t1549 = { let __t1548 = v_W5091.clone(); rt::hd(&__t1548)? }; let __t1550 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1549, __t1550])? }; { let v_W5095 = { let v_V4958 = v_V4958.clone(); let v_W5091 = v_W5091.clone(); let v_W5092 = v_W5092.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5096 = { let __t1552 = { let __t1551 = v_W5091.clone(); rt::tl(&__t1551)? }; let __t1553 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1552, __t1553])? }; { let v_W5097 = { let v_W5092 = v_W5092.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5098 = args[0].clone(); Ok({ let __t1554 = v_Z5098.clone(); rt::apply_value(interp, v_W5092.clone(), &[__t1554])? }) }, vec![v_W5092], interp) }; { let __t1582 = { let __t1555 = v_W5096.clone(); rt::is_cons(&__t1555) }; if rt::is_truthy(interp, &__t1582)? { { let v_W5099 = { let __t1556 = v_W5096.clone(); rt::hd(&__t1556)? }; { let v_W5100 = { let __t1558 = { let __t1557 = v_W5096.clone(); rt::tl(&__t1557)? }; let __t1559 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1558, __t1559])? }; { let v_W5101 = { let v_W5097 = v_W5097.clone(); let v_W5099 = v_W5099.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1560 = v_W5099.clone(); rt::apply_value(interp, v_W5097.clone(), &[__t1560])? }), vec![v_W5097, v_W5099], interp) }; { let __t1569 = { let __t1561 = v_W5100.clone(); let __t1562 = Value::nil(); rt::eq(&__t1561, &__t1562) }; if rt::is_truthy(interp, &__t1569)? { rt::apply_value(interp, v_W5101.clone(), &[])? } else { { let __t1568 = { let __t1563 = v_W5100.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1563])? }; if rt::is_truthy(interp, &__t1568)? { { let __t1564 = v_W5100.clone(); let __t1565 = Value::nil(); let __t1566 = v_V4958.clone(); let __t1567 = v_W5101.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1564, __t1565, __t1566, __t1567])? } } else { Value::bool(false) } } } } } } } } else { { let __t1581 = { let __t1570 = v_W5096.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1570])? }; if rt::is_truthy(interp, &__t1581)? { { let v_W5102 = { let __t1571 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1571])? }; { let __t1572 = v_V4958.clone(); let __t1580 = { let __t1573 = v_W5096.clone(); let __t1576 = { let __t1574 = v_W5102.clone(); let __t1575 = Value::nil(); rt::cons(&__t1574, &__t1575) }; let __t1577 = v_V4958.clone(); let __t1579 = { let v_W5097 = v_W5097.clone(); let v_W5102 = v_W5102.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1578 = v_W5102.clone(); rt::apply_value(interp, v_W5097.clone(), &[__t1578])? }), vec![v_W5097, v_W5102], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1573, __t1576, __t1577, __t1579])? }; rt::apply_direct(interp, "shen.gc", &[__t1572, __t1580])? } } } else { Value::bool(false) } } } } } }), vec![v_V4958, v_W5091, v_W5092], interp) }; { let __t1591 = { let __t1583 = v_W5094.clone(); let __t1584 = Value::sym(interp.intern("-->")); rt::eq(&__t1583, &__t1584) }; if rt::is_truthy(interp, &__t1591)? { rt::apply_value(interp, v_W5095.clone(), &[])? } else { { let __t1590 = { let __t1585 = v_W5094.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1585])? }; if rt::is_truthy(interp, &__t1590)? { { let __t1586 = v_W5094.clone(); let __t1587 = Value::sym(interp.intern("-->")); let __t1588 = v_V4958.clone(); let __t1589 = v_W5095.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1586, __t1587, __t1588, __t1589])? } } else { Value::bool(false) } } } } } } } else { { let __t1605 = { let __t1592 = v_W5091.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1592])? }; if rt::is_truthy(interp, &__t1605)? { { let v_W5103 = { let __t1593 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1593])? }; { let __t1594 = v_V4958.clone(); let __t1604 = { let __t1595 = v_W5091.clone(); let __t1600 = { let __t1596 = Value::sym(interp.intern("-->")); let __t1599 = { let __t1597 = v_W5103.clone(); let __t1598 = Value::nil(); rt::cons(&__t1597, &__t1598) }; rt::cons(&__t1596, &__t1599) }; let __t1601 = v_V4958.clone(); let __t1603 = { let v_W5092 = v_W5092.clone(); let v_W5103 = v_W5103.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1602 = v_W5103.clone(); rt::apply_value(interp, v_W5092.clone(), &[__t1602])? }), vec![v_W5092, v_W5103], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1595, __t1600, __t1601, __t1603])? }; rt::apply_direct(interp, "shen.gc", &[__t1594, __t1604])? } } } else { Value::bool(false) } } } } } } } } else { { let __t1627 = { let __t1607 = v_W5084.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1607])? }; if rt::is_truthy(interp, &__t1627)? { { let v_W5104 = { let __t1608 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1608])? }; { let __t1609 = v_V4958.clone(); let __t1626 = { let v_W5105 = { let __t1610 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1610])? }; { let __t1611 = v_V4958.clone(); let __t1625 = { let __t1612 = v_W5084.clone(); let __t1619 = { let __t1613 = v_W5104.clone(); let __t1618 = { let __t1614 = Value::sym(interp.intern("-->")); let __t1617 = { let __t1615 = v_W5105.clone(); let __t1616 = Value::nil(); rt::cons(&__t1615, &__t1616) }; rt::cons(&__t1614, &__t1617) }; rt::cons(&__t1613, &__t1618) }; let __t1620 = v_V4958.clone(); let __t1624 = { let v_W5085 = v_W5085.clone(); let v_W5104 = v_W5104.clone(); let v_W5105 = v_W5105.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1622 = { let __t1621 = v_W5104.clone(); rt::apply_value(interp, v_W5085.clone(), &[__t1621])? }; let __t1623 = v_W5105.clone(); rt::apply_value(interp, __t1622, &[__t1623])? }), vec![v_W5085, v_W5104, v_W5105], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1612, __t1619, __t1620, __t1624])? }; rt::apply_direct(interp, "shen.gc", &[__t1611, __t1625])? } }; rt::apply_direct(interp, "shen.gc", &[__t1609, __t1626])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1637 = { let __t1635 = v_W5076.clone(); let __t1636 = Value::bool(false); rt::eq(&__t1635, &__t1636) }; if match rt::is_truthy(interp, &__t1637) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5106 = { let __t1729 = { let __t1638 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1638])? }; if rt::is_truthy(interp, &__t1729)? { { let v_W5107 = { let __t1639 = v_V4955.clone(); let __t1640 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1639, __t1640])? }; { let __t1728 = { let __t1641 = v_W5107.clone(); rt::is_cons(&__t1641) }; if rt::is_truthy(interp, &__t1728)? { { let v_W5108 = { let __t1643 = { let __t1642 = v_W5107.clone(); rt::hd(&__t1642)? }; let __t1644 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1643, __t1644])? }; { let __t1727 = { let __t1645 = v_W5108.clone(); let __t1646 = Value::sym(interp.intern("let")); rt::eq(&__t1645, &__t1646) }; if rt::is_truthy(interp, &__t1727)? { { let v_W5109 = { let __t1648 = { let __t1647 = v_W5107.clone(); rt::tl(&__t1647)? }; let __t1649 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1648, __t1649])? }; { let __t1726 = { let __t1650 = v_W5109.clone(); rt::is_cons(&__t1650) }; if rt::is_truthy(interp, &__t1726)? { { let v_W5110 = { let __t1651 = v_W5109.clone(); rt::hd(&__t1651)? }; { let v_W5111 = { let __t1653 = { let __t1652 = v_W5109.clone(); rt::tl(&__t1652)? }; let __t1654 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1653, __t1654])? }; { let __t1725 = { let __t1655 = v_W5111.clone(); rt::is_cons(&__t1655) }; if rt::is_truthy(interp, &__t1725)? { { let v_W5112 = { let __t1656 = v_W5111.clone(); rt::hd(&__t1656)? }; { let v_W5113 = { let __t1658 = { let __t1657 = v_W5111.clone(); rt::tl(&__t1657)? }; let __t1659 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1658, __t1659])? }; { let __t1724 = { let __t1660 = v_W5113.clone(); rt::is_cons(&__t1660) }; if rt::is_truthy(interp, &__t1724)? { { let v_W5114 = { let __t1661 = v_W5113.clone(); rt::hd(&__t1661)? }; { let v_W5115 = { let __t1663 = { let __t1662 = v_W5113.clone(); rt::tl(&__t1662)? }; let __t1664 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1663, __t1664])? }; { let __t1723 = { let __t1665 = v_W5115.clone(); let __t1666 = Value::nil(); rt::eq(&__t1665, &__t1666) }; if rt::is_truthy(interp, &__t1723)? { { let v_W5116 = { let __t1667 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1667])? }; { let __t1668 = v_V4958.clone(); let __t1722 = { let v_W5117 = { let __t1669 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1669])? }; { let __t1670 = v_V4958.clone(); let __t1721 = { let v_W5118 = { let __t1671 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1671])? }; { let __t1672 = v_V4958.clone(); let __t1720 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1673 = v_W5112.clone(); let __t1674 = v_W5118.clone(); let __t1675 = v_V4957.clone(); let __t1676 = v_V4958.clone(); let __t1677 = v_V4959.clone(); let __t1678 = v_W4962.clone(); let __t1719 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5110 = v_W5110.clone(); let v_W5114 = v_W5114.clone(); let v_W5116 = v_W5116.clone(); let v_W5117 = v_W5117.clone(); let v_W5118 = v_W5118.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1679 = v_W5117.clone(); let __t1683 = { let __t1682 = { let __t1680 = v_W5110.clone(); let __t1681 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1680, __t1681])? }; rt::apply_direct(interp, "shen.freshterm", &[__t1682])? }; let __t1684 = v_V4958.clone(); let __t1685 = v_V4959.clone(); let __t1686 = v_W4962.clone(); let __t1718 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5110 = v_W5110.clone(); let v_W5114 = v_W5114.clone(); let v_W5116 = v_W5116.clone(); let v_W5117 = v_W5117.clone(); let v_W5118 = v_W5118.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1687 = v_W5116.clone(); let __t1697 = { let __t1690 = { let __t1688 = v_W5110.clone(); let __t1689 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1688, __t1689])? }; let __t1693 = { let __t1691 = v_W5117.clone(); let __t1692 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1691, __t1692])? }; let __t1696 = { let __t1694 = v_W5114.clone(); let __t1695 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1694, __t1695])? }; rt::apply_direct(interp, "shen.beta", &[__t1690, __t1693, __t1696])? }; let __t1698 = v_V4958.clone(); let __t1699 = v_V4959.clone(); let __t1700 = v_W4962.clone(); let __t1717 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5116 = v_W5116.clone(); let v_W5117 = v_W5117.clone(); let v_W5118 = v_W5118.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1701 = v_W5116.clone(); let __t1702 = v_V4956.clone(); let __t1712 = { let __t1710 = { let __t1703 = v_W5117.clone(); let __t1709 = { let __t1705 = { let __t1704 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t1704])? }; let __t1708 = { let __t1706 = v_W5118.clone(); let __t1707 = Value::nil(); rt::cons(&__t1706, &__t1707) }; rt::cons(&__t1705, &__t1708) }; rt::cons(&__t1703, &__t1709) }; let __t1711 = v_V4957.clone(); rt::cons(&__t1710, &__t1711) }; let __t1713 = v_V4958.clone(); let __t1714 = v_V4959.clone(); let __t1715 = v_W4962.clone(); let __t1716 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1701, __t1702, __t1712, __t1713, __t1714, __t1715, __t1716])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5116, v_W5117, v_W5118], interp) }; rt::apply_direct(interp, "bind", &[__t1687, __t1697, __t1698, __t1699, __t1700, __t1717])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5110, v_W5114, v_W5116, v_W5117, v_W5118], interp) }; rt::apply_direct(interp, "bind", &[__t1679, __t1683, __t1684, __t1685, __t1686, __t1718])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5110, v_W5114, v_W5116, v_W5117, v_W5118], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1673, __t1674, __t1675, __t1676, __t1677, __t1678, __t1719])? } }; rt::apply_direct(interp, "shen.gc", &[__t1672, __t1720])? } }; rt::apply_direct(interp, "shen.gc", &[__t1670, __t1721])? } }; rt::apply_direct(interp, "shen.gc", &[__t1668, __t1722])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1732 = { let __t1730 = v_W5106.clone(); let __t1731 = Value::bool(false); rt::eq(&__t1730, &__t1731) }; if match rt::is_truthy(interp, &__t1732) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5119 = { let __t1850 = { let __t1733 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1733])? }; if rt::is_truthy(interp, &__t1850)? { { let v_W5120 = { let __t1734 = v_V4955.clone(); let __t1735 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1734, __t1735])? }; { let __t1849 = { let __t1736 = v_W5120.clone(); rt::is_cons(&__t1736) }; if rt::is_truthy(interp, &__t1849)? { { let v_W5121 = { let __t1738 = { let __t1737 = v_W5120.clone(); rt::hd(&__t1737)? }; let __t1739 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1738, __t1739])? }; { let __t1848 = { let __t1740 = v_W5121.clone(); let __t1741 = Value::sym(interp.intern("open")); rt::eq(&__t1740, &__t1741) }; if rt::is_truthy(interp, &__t1848)? { { let v_W5122 = { let __t1743 = { let __t1742 = v_W5120.clone(); rt::tl(&__t1742)? }; let __t1744 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1743, __t1744])? }; { let __t1847 = { let __t1745 = v_W5122.clone(); rt::is_cons(&__t1745) }; if rt::is_truthy(interp, &__t1847)? { { let v_W5123 = { let __t1746 = v_W5122.clone(); rt::hd(&__t1746)? }; { let v_W5124 = { let __t1748 = { let __t1747 = v_W5122.clone(); rt::tl(&__t1747)? }; let __t1749 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1748, __t1749])? }; { let __t1846 = { let __t1750 = v_W5124.clone(); rt::is_cons(&__t1750) }; if rt::is_truthy(interp, &__t1846)? { { let v_W5125 = { let __t1751 = v_W5124.clone(); rt::hd(&__t1751)? }; { let v_W5126 = { let __t1753 = { let __t1752 = v_W5124.clone(); rt::tl(&__t1752)? }; let __t1754 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1753, __t1754])? }; { let __t1845 = { let __t1755 = v_W5126.clone(); let __t1756 = Value::nil(); rt::eq(&__t1755, &__t1756) }; if rt::is_truthy(interp, &__t1845)? { { let v_W5127 = { let __t1757 = v_V4956.clone(); let __t1758 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1757, __t1758])? }; { let v_W5128 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5123 = v_W5123.clone(); let v_W5125 = v_W5125.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5129 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1759 = v_W5125.clone(); let __t1760 = v_Z5129.clone(); let __t1761 = v_V4958.clone(); let __t1762 = v_V4959.clone(); let __t1763 = v_W4962.clone(); let __t1784 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5123 = v_W5123.clone(); let v_Z5129 = v_Z5129.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1772 = { let __t1766 = { let __t1764 = v_Z5129.clone(); let __t1765 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1764, __t1765])? }; let __t1771 = { let __t1767 = Value::sym(interp.intern("in")); let __t1770 = { let __t1768 = Value::sym(interp.intern("out")); let __t1769 = Value::nil(); rt::cons(&__t1768, &__t1769) }; rt::cons(&__t1767, &__t1770) }; rt::apply_direct(interp, "element?", &[__t1766, __t1771])? }; let __t1773 = v_V4958.clone(); let __t1774 = v_V4959.clone(); let __t1775 = v_W4962.clone(); let __t1783 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5123 = v_W5123.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1776 = v_W5123.clone(); let __t1777 = Value::sym(interp.intern("string")); let __t1778 = v_V4957.clone(); let __t1779 = v_V4958.clone(); let __t1780 = v_V4959.clone(); let __t1781 = v_W4962.clone(); let __t1782 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1776, __t1777, __t1778, __t1779, __t1780, __t1781, __t1782])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5123], interp) }; rt::apply_direct(interp, "when", &[__t1772, __t1773, __t1774, __t1775, __t1783])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5123, v_Z5129], interp) }; rt::apply_direct(interp, "is!", &[__t1759, __t1760, __t1761, __t1762, __t1763, __t1784])? } }) }, vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5123, v_W5125], interp) }; { let __t1844 = { let __t1785 = v_W5127.clone(); rt::is_cons(&__t1785) }; if rt::is_truthy(interp, &__t1844)? { { let v_W5130 = { let __t1787 = { let __t1786 = v_W5127.clone(); rt::hd(&__t1786)? }; let __t1788 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1787, __t1788])? }; { let v_W5131 = { let v_V4958 = v_V4958.clone(); let v_W5127 = v_W5127.clone(); let v_W5128 = v_W5128.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5132 = { let __t1790 = { let __t1789 = v_W5127.clone(); rt::tl(&__t1789)? }; let __t1791 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1790, __t1791])? }; { let v_W5133 = { let v_W5128 = v_W5128.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5134 = args[0].clone(); Ok({ let __t1792 = v_Z5134.clone(); rt::apply_value(interp, v_W5128.clone(), &[__t1792])? }) }, vec![v_W5128], interp) }; { let __t1820 = { let __t1793 = v_W5132.clone(); rt::is_cons(&__t1793) }; if rt::is_truthy(interp, &__t1820)? { { let v_W5135 = { let __t1794 = v_W5132.clone(); rt::hd(&__t1794)? }; { let v_W5136 = { let __t1796 = { let __t1795 = v_W5132.clone(); rt::tl(&__t1795)? }; let __t1797 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1796, __t1797])? }; { let v_W5137 = { let v_W5133 = v_W5133.clone(); let v_W5135 = v_W5135.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1798 = v_W5135.clone(); rt::apply_value(interp, v_W5133.clone(), &[__t1798])? }), vec![v_W5133, v_W5135], interp) }; { let __t1807 = { let __t1799 = v_W5136.clone(); let __t1800 = Value::nil(); rt::eq(&__t1799, &__t1800) }; if rt::is_truthy(interp, &__t1807)? { rt::apply_value(interp, v_W5137.clone(), &[])? } else { { let __t1806 = { let __t1801 = v_W5136.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1801])? }; if rt::is_truthy(interp, &__t1806)? { { let __t1802 = v_W5136.clone(); let __t1803 = Value::nil(); let __t1804 = v_V4958.clone(); let __t1805 = v_W5137.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1802, __t1803, __t1804, __t1805])? } } else { Value::bool(false) } } } } } } } } else { { let __t1819 = { let __t1808 = v_W5132.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1808])? }; if rt::is_truthy(interp, &__t1819)? { { let v_W5138 = { let __t1809 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1809])? }; { let __t1810 = v_V4958.clone(); let __t1818 = { let __t1811 = v_W5132.clone(); let __t1814 = { let __t1812 = v_W5138.clone(); let __t1813 = Value::nil(); rt::cons(&__t1812, &__t1813) }; let __t1815 = v_V4958.clone(); let __t1817 = { let v_W5133 = v_W5133.clone(); let v_W5138 = v_W5138.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1816 = v_W5138.clone(); rt::apply_value(interp, v_W5133.clone(), &[__t1816])? }), vec![v_W5133, v_W5138], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1811, __t1814, __t1815, __t1817])? }; rt::apply_direct(interp, "shen.gc", &[__t1810, __t1818])? } } } else { Value::bool(false) } } } } } }), vec![v_V4958, v_W5127, v_W5128], interp) }; { let __t1829 = { let __t1821 = v_W5130.clone(); let __t1822 = Value::sym(interp.intern("stream")); rt::eq(&__t1821, &__t1822) }; if rt::is_truthy(interp, &__t1829)? { rt::apply_value(interp, v_W5131.clone(), &[])? } else { { let __t1828 = { let __t1823 = v_W5130.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1823])? }; if rt::is_truthy(interp, &__t1828)? { { let __t1824 = v_W5130.clone(); let __t1825 = Value::sym(interp.intern("stream")); let __t1826 = v_V4958.clone(); let __t1827 = v_W5131.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1824, __t1825, __t1826, __t1827])? } } else { Value::bool(false) } } } } } } } else { { let __t1843 = { let __t1830 = v_W5127.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1830])? }; if rt::is_truthy(interp, &__t1843)? { { let v_W5139 = { let __t1831 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1831])? }; { let __t1832 = v_V4958.clone(); let __t1842 = { let __t1833 = v_W5127.clone(); let __t1838 = { let __t1834 = Value::sym(interp.intern("stream")); let __t1837 = { let __t1835 = v_W5139.clone(); let __t1836 = Value::nil(); rt::cons(&__t1835, &__t1836) }; rt::cons(&__t1834, &__t1837) }; let __t1839 = v_V4958.clone(); let __t1841 = { let v_W5128 = v_W5128.clone(); let v_W5139 = v_W5139.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1840 = v_W5139.clone(); rt::apply_value(interp, v_W5128.clone(), &[__t1840])? }), vec![v_W5128, v_W5139], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1833, __t1838, __t1839, __t1841])? }; rt::apply_direct(interp, "shen.gc", &[__t1832, __t1842])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1853 = { let __t1851 = v_W5119.clone(); let __t1852 = Value::bool(false); rt::eq(&__t1851, &__t1852) }; if match rt::is_truthy(interp, &__t1853) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5140 = { let __t1903 = { let __t1854 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1854])? }; if rt::is_truthy(interp, &__t1903)? { { let v_W5141 = { let __t1855 = v_V4955.clone(); let __t1856 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1855, __t1856])? }; { let __t1902 = { let __t1857 = v_W5141.clone(); rt::is_cons(&__t1857) }; if rt::is_truthy(interp, &__t1902)? { { let v_W5142 = { let __t1859 = { let __t1858 = v_W5141.clone(); rt::hd(&__t1858)? }; let __t1860 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1859, __t1860])? }; { let __t1901 = { let __t1861 = v_W5142.clone(); let __t1862 = Value::sym(interp.intern("type")); rt::eq(&__t1861, &__t1862) }; if rt::is_truthy(interp, &__t1901)? { { let v_W5143 = { let __t1864 = { let __t1863 = v_W5141.clone(); rt::tl(&__t1863)? }; let __t1865 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1864, __t1865])? }; { let __t1900 = { let __t1866 = v_W5143.clone(); rt::is_cons(&__t1866) }; if rt::is_truthy(interp, &__t1900)? { { let v_W5144 = { let __t1867 = v_W5143.clone(); rt::hd(&__t1867)? }; { let v_W5145 = { let __t1869 = { let __t1868 = v_W5143.clone(); rt::tl(&__t1868)? }; let __t1870 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1869, __t1870])? }; { let __t1899 = { let __t1871 = v_W5145.clone(); rt::is_cons(&__t1871) }; if rt::is_truthy(interp, &__t1899)? { { let v_W5146 = { let __t1872 = v_W5145.clone(); rt::hd(&__t1872)? }; { let v_W5147 = { let __t1874 = { let __t1873 = v_W5145.clone(); rt::tl(&__t1873)? }; let __t1875 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1874, __t1875])? }; { let __t1898 = { let __t1876 = v_W5147.clone(); let __t1877 = Value::nil(); rt::eq(&__t1876, &__t1877) }; if rt::is_truthy(interp, &__t1898)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1878 = v_V4958.clone(); let __t1879 = v_V4959.clone(); let __t1880 = v_W4962.clone(); let __t1897 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5144 = v_W5144.clone(); let v_W5146 = v_W5146.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1884 = { let __t1883 = { let __t1881 = v_W5146.clone(); let __t1882 = v_V4958.clone(); rt::apply_direct(interp, "shen.deref", &[__t1881, __t1882])? }; rt::apply_direct(interp, "shen.rectify-type", &[__t1883])? }; let __t1885 = v_V4956.clone(); let __t1886 = v_V4958.clone(); let __t1887 = v_V4959.clone(); let __t1888 = v_W4962.clone(); let __t1896 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5144 = v_W5144.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1889 = v_W5144.clone(); let __t1890 = v_V4956.clone(); let __t1891 = v_V4957.clone(); let __t1892 = v_V4958.clone(); let __t1893 = v_V4959.clone(); let __t1894 = v_W4962.clone(); let __t1895 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1889, __t1890, __t1891, __t1892, __t1893, __t1894, __t1895])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5144], interp) }; rt::apply_direct(interp, "is!", &[__t1884, __t1885, __t1886, __t1887, __t1888, __t1896])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5144, v_W5146], interp) }; rt::apply_direct(interp, "shen.cut", &[__t1878, __t1879, __t1880, __t1897])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1906 = { let __t1904 = v_W5140.clone(); let __t1905 = Value::bool(false); rt::eq(&__t1904, &__t1905) }; if match rt::is_truthy(interp, &__t1906) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5148 = { let __t1956 = { let __t1907 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1907])? }; if rt::is_truthy(interp, &__t1956)? { { let v_W5149 = { let __t1908 = v_V4955.clone(); let __t1909 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1908, __t1909])? }; { let __t1955 = { let __t1910 = v_W5149.clone(); rt::is_cons(&__t1910) }; if rt::is_truthy(interp, &__t1955)? { { let v_W5150 = { let __t1912 = { let __t1911 = v_W5149.clone(); rt::hd(&__t1911)? }; let __t1913 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1912, __t1913])? }; { let __t1954 = { let __t1914 = v_W5150.clone(); let __t1915 = Value::sym(interp.intern("input+")); rt::eq(&__t1914, &__t1915) }; if rt::is_truthy(interp, &__t1954)? { { let v_W5151 = { let __t1917 = { let __t1916 = v_W5149.clone(); rt::tl(&__t1916)? }; let __t1918 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1917, __t1918])? }; { let __t1953 = { let __t1919 = v_W5151.clone(); rt::is_cons(&__t1919) }; if rt::is_truthy(interp, &__t1953)? { { let v_W5152 = { let __t1920 = v_W5151.clone(); rt::hd(&__t1920)? }; { let v_W5153 = { let __t1922 = { let __t1921 = v_W5151.clone(); rt::tl(&__t1921)? }; let __t1923 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1922, __t1923])? }; { let __t1952 = { let __t1924 = v_W5153.clone(); rt::is_cons(&__t1924) }; if rt::is_truthy(interp, &__t1952)? { { let v_W5154 = { let __t1925 = v_W5153.clone(); rt::hd(&__t1925)? }; { let v_W5155 = { let __t1927 = { let __t1926 = v_W5153.clone(); rt::tl(&__t1926)? }; let __t1928 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1927, __t1928])? }; { let __t1951 = { let __t1929 = v_W5155.clone(); let __t1930 = Value::nil(); rt::eq(&__t1929, &__t1930) }; if rt::is_truthy(interp, &__t1951)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1931 = v_V4956.clone(); let __t1935 = { let __t1934 = { let __t1932 = v_W5152.clone(); let __t1933 = v_V4958.clone(); rt::apply_direct(interp, "shen.deref", &[__t1932, __t1933])? }; rt::apply_direct(interp, "shen.rectify-type", &[__t1934])? }; let __t1936 = v_V4958.clone(); let __t1937 = v_V4959.clone(); let __t1938 = v_W4962.clone(); let __t1950 = { let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5154 = v_W5154.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1939 = v_W5154.clone(); let __t1944 = { let __t1940 = Value::sym(interp.intern("stream")); let __t1943 = { let __t1941 = Value::sym(interp.intern("in")); let __t1942 = Value::nil(); rt::cons(&__t1941, &__t1942) }; rt::cons(&__t1940, &__t1943) }; let __t1945 = v_V4957.clone(); let __t1946 = v_V4958.clone(); let __t1947 = v_V4959.clone(); let __t1948 = v_W4962.clone(); let __t1949 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1939, __t1944, __t1945, __t1946, __t1947, __t1948, __t1949])? }), vec![v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5154], interp) }; rt::apply_direct(interp, "is!", &[__t1931, __t1935, __t1936, __t1937, __t1938, __t1950])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1959 = { let __t1957 = v_W5148.clone(); let __t1958 = Value::bool(false); rt::eq(&__t1957, &__t1958) }; if match rt::is_truthy(interp, &__t1959) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5156 = { let __t2014 = { let __t1960 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1960])? }; if rt::is_truthy(interp, &__t2014)? { { let v_W5157 = { let __t1961 = v_V4955.clone(); let __t1962 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1961, __t1962])? }; { let __t2013 = { let __t1963 = v_W5157.clone(); rt::is_cons(&__t1963) }; if rt::is_truthy(interp, &__t2013)? { { let v_W5158 = { let __t1965 = { let __t1964 = v_W5157.clone(); rt::hd(&__t1964)? }; let __t1966 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1965, __t1966])? }; { let __t2012 = { let __t1967 = v_W5158.clone(); let __t1968 = Value::sym(interp.intern("set")); rt::eq(&__t1967, &__t1968) }; if rt::is_truthy(interp, &__t2012)? { { let v_W5159 = { let __t1970 = { let __t1969 = v_W5157.clone(); rt::tl(&__t1969)? }; let __t1971 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1970, __t1971])? }; { let __t2011 = { let __t1972 = v_W5159.clone(); rt::is_cons(&__t1972) }; if rt::is_truthy(interp, &__t2011)? { { let v_W5160 = { let __t1973 = v_W5159.clone(); rt::hd(&__t1973)? }; { let v_W5161 = { let __t1975 = { let __t1974 = v_W5159.clone(); rt::tl(&__t1974)? }; let __t1976 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1975, __t1976])? }; { let __t2010 = { let __t1977 = v_W5161.clone(); rt::is_cons(&__t1977) }; if rt::is_truthy(interp, &__t2010)? { { let v_W5162 = { let __t1978 = v_W5161.clone(); rt::hd(&__t1978)? }; { let v_W5163 = { let __t1980 = { let __t1979 = v_W5161.clone(); rt::tl(&__t1979)? }; let __t1981 = v_V4958.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1980, __t1981])? }; { let __t2009 = { let __t1982 = v_W5163.clone(); let __t1983 = Value::nil(); rt::eq(&__t1982, &__t1983) }; if rt::is_truthy(interp, &__t2009)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1984 = v_W5160.clone(); let __t1985 = Value::sym(interp.intern("symbol")); let __t1986 = v_V4957.clone(); let __t1987 = v_V4958.clone(); let __t1988 = v_V4959.clone(); let __t1989 = v_W4962.clone(); let __t2008 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5160 = v_W5160.clone(); let v_W5162 = v_W5162.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1994 = { let __t1990 = Value::sym(interp.intern("value")); let __t1993 = { let __t1991 = v_W5160.clone(); let __t1992 = Value::nil(); rt::cons(&__t1991, &__t1992) }; rt::cons(&__t1990, &__t1993) }; let __t1995 = v_V4956.clone(); let __t1996 = v_V4957.clone(); let __t1997 = v_V4958.clone(); let __t1998 = v_V4959.clone(); let __t1999 = v_W4962.clone(); let __t2007 = { let v_V4956 = v_V4956.clone(); let v_V4957 = v_V4957.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5162 = v_W5162.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2000 = v_W5162.clone(); let __t2001 = v_V4956.clone(); let __t2002 = v_V4957.clone(); let __t2003 = v_V4958.clone(); let __t2004 = v_V4959.clone(); let __t2005 = v_W4962.clone(); let __t2006 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t2000, __t2001, __t2002, __t2003, __t2004, __t2005, __t2006])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5162], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1994, __t1995, __t1996, __t1997, __t1998, __t1999, __t2007])? }), vec![v_V4956, v_V4957, v_V4958, v_V4959, v_V4961, v_W4962, v_W5160, v_W5162], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1984, __t1985, __t1986, __t1987, __t1988, __t1989, __t2008])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t2017 = { let __t2015 = v_W5156.clone(); let __t2016 = Value::bool(false); rt::eq(&__t2015, &__t2016) }; if match rt::is_truthy(interp, &__t2017) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5164 = { let __t2040 = { let __t2018 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t2018])? }; if rt::is_truthy(interp, &__t2040)? { { let v_W5165 = { let __t2019 = v_V4958.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2019])? }; { let __t2020 = v_V4958.clone(); let __t2039 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2021 = v_V4957.clone(); let __t2022 = v_W5165.clone(); let __t2023 = Value::bool(false); let __t2024 = v_V4958.clone(); let __t2025 = v_V4959.clone(); let __t2026 = v_W4962.clone(); let __t2038 = { let v_V4955 = v_V4955.clone(); let v_V4956 = v_V4956.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5165 = v_W5165.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2027 = v_V4958.clone(); let __t2028 = v_V4959.clone(); let __t2029 = v_W4962.clone(); let __t2037 = { let v_V4955 = v_V4955.clone(); let v_V4956 = v_V4956.clone(); let v_V4958 = v_V4958.clone(); let v_V4959 = v_V4959.clone(); let v_V4961 = v_V4961.clone(); let v_W4962 = v_W4962.clone(); let v_W5165 = v_W5165.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2030 = v_V4955.clone(); let __t2031 = v_V4956.clone(); let __t2032 = v_W5165.clone(); let __t2033 = v_V4958.clone(); let __t2034 = v_V4959.clone(); let __t2035 = v_W4962.clone(); let __t2036 = v_V4961.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t2030, __t2031, __t2032, __t2033, __t2034, __t2035, __t2036])? }), vec![v_V4955, v_V4956, v_V4958, v_V4959, v_V4961, v_W4962, v_W5165], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2027, __t2028, __t2029, __t2037])? }), vec![v_V4955, v_V4956, v_V4958, v_V4959, v_V4961, v_W4962, v_W5165], interp) }; rt::apply_direct(interp, "shen.l-rules", &[__t2021, __t2022, __t2023, __t2024, __t2025, __t2026, __t2038])? } }; rt::apply_direct(interp, "shen.gc", &[__t2020, __t2039])? } } } else { Value::bool(false) } }; { let __t2043 = { let __t2041 = v_W5164.clone(); let __t2042 = Value::bool(false); rt::eq(&__t2041, &__t2042) }; if match rt::is_truthy(interp, &__t2043) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5166 = { let __t2060 = { let __t2044 = v_V4959.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t2044])? }; if rt::is_truthy(interp, &__t2060)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2052 = { let __t2045 = v_V4955.clone(); let __t2051 = { let __t2047 = { let __t2046 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2046])? }; let __t2050 = { let __t2048 = v_V4956.clone(); let __t2049 = Value::nil(); rt::cons(&__t2048, &__t2049) }; rt::cons(&__t2047, &__t2050) }; rt::cons(&__t2045, &__t2051) }; let __t2053 = v_V4957.clone(); let __t2055 = { let __t2054 = Value::sym(interp.intern("shen.*datatypes*")); rt::apply_direct(interp, "value", &[__t2054])? }; let __t2056 = v_V4958.clone(); let __t2057 = v_V4959.clone(); let __t2058 = v_W4962.clone(); let __t2059 = v_V4961.clone(); rt::apply_direct(interp, "shen.search-user-datatypes", &[__t2052, __t2053, __t2055, __t2056, __t2057, __t2058, __t2059])? } } } else { Value::bool(false) } }; { let __t2063 = { let __t2061 = v_W5166.clone(); let __t2062 = Value::bool(false); rt::eq(&__t2061, &__t2062) }; if match rt::is_truthy(interp, &__t2063) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2064 = v_V4959.clone(); let __t2065 = v_W4962.clone(); rt::apply_direct(interp, "shen.unlock", &[__t2064, __t2065])? }); } else { break Ok(v_W5166.clone()); } } } } else { break Ok(v_W5164.clone()); } } } } else { break Ok(v_W5156.clone()); } } } } else { break Ok(v_W5148.clone()); } } } } else { break Ok(v_W5140.clone()); } } } } else { break Ok(v_W5119.clone()); } } } } else { break Ok(v_W5106.clone()); } } } } else { break Ok(v_W5076.clone()); } } } } else { break Ok(v_W5066.clone()); } } } } else { break Ok(v_W5045.clone()); } } } } else { break Ok(v_W5017.clone()); } } } } else { break Ok(v_W4996.clone()); } } } } else { break Ok(v_W4989.clone()); } } } } else { break Ok(v_W4982.clone()); } } } } else { break Ok(v_W4976.clone()); } + if match rt::is_truthy(interp, &__t910) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4563 = { let __t960 = { let __t911 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t911])? }; if rt::is_truthy(interp, &__t960)? { { let v_W4564 = { let __t912 = v_V4536.clone(); let __t913 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t912, __t913])? }; { let __t959 = { let __t914 = v_W4564.clone(); rt::is_cons(&__t914) }; if rt::is_truthy(interp, &__t959)? { { let v_W4565 = { let __t915 = v_W4564.clone(); rt::hd(&__t915)? }; { let v_W4566 = { let __t917 = { let __t916 = v_W4564.clone(); rt::tl(&__t916)? }; let __t918 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t917, __t918])? }; { let __t958 = { let __t919 = v_W4566.clone(); rt::is_cons(&__t919) }; if rt::is_truthy(interp, &__t958)? { { let v_W4567 = { let __t920 = v_W4566.clone(); rt::hd(&__t920)? }; { let v_W4568 = { let __t922 = { let __t921 = v_W4566.clone(); rt::tl(&__t921)? }; let __t923 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t922, __t923])? }; { let __t957 = { let __t924 = v_W4568.clone(); let __t925 = Value::nil(); rt::eq(&__t924, &__t925) }; if rt::is_truthy(interp, &__t957)? { { let v_W4569 = { let __t926 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t926])? }; { let __t927 = v_V4539.clone(); let __t956 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t932 = { let __t931 = { let __t930 = { let __t928 = v_W4565.clone(); let __t929 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t928, __t929])? }; rt::is_cons(&__t930) }; rt::apply_direct(interp, "not", &[__t931])? }; let __t933 = v_V4539.clone(); let __t934 = v_V4540.clone(); let __t935 = v_W4543.clone(); let __t955 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4565 = v_W4565.clone(); let v_W4567 = v_W4567.clone(); let v_W4569 = v_W4569.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t936 = v_W4565.clone(); let __t943 = { let __t937 = v_W4569.clone(); let __t942 = { let __t938 = Value::sym(interp.intern("-->")); let __t941 = { let __t939 = v_V4537.clone(); let __t940 = Value::nil(); rt::cons(&__t939, &__t940) }; rt::cons(&__t938, &__t941) }; rt::cons(&__t937, &__t942) }; let __t944 = v_V4539.clone(); let __t945 = v_V4540.clone(); let __t946 = v_W4543.clone(); let __t954 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4567 = v_W4567.clone(); let v_W4569 = v_W4569.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t947 = v_W4567.clone(); let __t948 = v_W4569.clone(); let __t949 = v_V4538.clone(); let __t950 = v_V4539.clone(); let __t951 = v_V4540.clone(); let __t952 = v_W4543.clone(); let __t953 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t947, __t948, __t949, __t950, __t951, __t952, __t953])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4567, v_W4569], interp) }; rt::apply_direct(interp, "shen.lookupsig", &[__t936, __t943, __t944, __t945, __t946, __t954])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4565, v_W4567, v_W4569], interp) }; rt::apply_direct(interp, "when", &[__t932, __t933, __t934, __t935, __t955])? } }; rt::apply_direct(interp, "shen.gc", &[__t927, __t956])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t963 = { let __t961 = v_W4563.clone(); let __t962 = Value::bool(false); rt::eq(&__t961, &__t962) }; if match rt::is_truthy(interp, &__t963) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4570 = { let __t1005 = { let __t964 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t964])? }; if rt::is_truthy(interp, &__t1005)? { { let v_W4571 = { let __t965 = v_V4536.clone(); let __t966 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t965, __t966])? }; { let __t1004 = { let __t967 = v_W4571.clone(); rt::is_cons(&__t967) }; if rt::is_truthy(interp, &__t1004)? { { let v_W4572 = { let __t968 = v_W4571.clone(); rt::hd(&__t968)? }; { let v_W4573 = { let __t970 = { let __t969 = v_W4571.clone(); rt::tl(&__t969)? }; let __t971 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t970, __t971])? }; { let __t1003 = { let __t972 = v_W4573.clone(); rt::is_cons(&__t972) }; if rt::is_truthy(interp, &__t1003)? { { let v_W4574 = { let __t973 = v_W4573.clone(); rt::hd(&__t973)? }; { let v_W4575 = { let __t975 = { let __t974 = v_W4573.clone(); rt::tl(&__t974)? }; let __t976 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t975, __t976])? }; { let __t1002 = { let __t977 = v_W4575.clone(); let __t978 = Value::nil(); rt::eq(&__t977, &__t978) }; if rt::is_truthy(interp, &__t1002)? { { let v_W4576 = { let __t979 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t979])? }; { let __t980 = v_V4539.clone(); let __t1001 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t981 = v_W4572.clone(); let __t988 = { let __t982 = v_W4576.clone(); let __t987 = { let __t983 = Value::sym(interp.intern("-->")); let __t986 = { let __t984 = v_V4537.clone(); let __t985 = Value::nil(); rt::cons(&__t984, &__t985) }; rt::cons(&__t983, &__t986) }; rt::cons(&__t982, &__t987) }; let __t989 = v_V4538.clone(); let __t990 = v_V4539.clone(); let __t991 = v_V4540.clone(); let __t992 = v_W4543.clone(); let __t1000 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4574 = v_W4574.clone(); let v_W4576 = v_W4576.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t993 = v_W4574.clone(); let __t994 = v_W4576.clone(); let __t995 = v_V4538.clone(); let __t996 = v_V4539.clone(); let __t997 = v_V4540.clone(); let __t998 = v_W4543.clone(); let __t999 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t993, __t994, __t995, __t996, __t997, __t998, __t999])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4574, v_W4576], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t981, __t988, __t989, __t990, __t991, __t992, __t1000])? } }; rt::apply_direct(interp, "shen.gc", &[__t980, __t1001])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1008 = { let __t1006 = v_W4570.clone(); let __t1007 = Value::bool(false); rt::eq(&__t1006, &__t1007) }; if match rt::is_truthy(interp, &__t1008) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4577 = { let __t1118 = { let __t1009 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1009])? }; if rt::is_truthy(interp, &__t1118)? { { let v_W4578 = { let __t1010 = v_V4536.clone(); let __t1011 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1010, __t1011])? }; { let __t1117 = { let __t1012 = v_W4578.clone(); rt::is_cons(&__t1012) }; if rt::is_truthy(interp, &__t1117)? { { let v_W4579 = { let __t1014 = { let __t1013 = v_W4578.clone(); rt::hd(&__t1013)? }; let __t1015 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1014, __t1015])? }; { let __t1116 = { let __t1016 = v_W4579.clone(); let __t1017 = Value::sym(interp.intern("cons")); rt::eq(&__t1016, &__t1017) }; if rt::is_truthy(interp, &__t1116)? { { let v_W4580 = { let __t1019 = { let __t1018 = v_W4578.clone(); rt::tl(&__t1018)? }; let __t1020 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1019, __t1020])? }; { let __t1115 = { let __t1021 = v_W4580.clone(); rt::is_cons(&__t1021) }; if rt::is_truthy(interp, &__t1115)? { { let v_W4581 = { let __t1022 = v_W4580.clone(); rt::hd(&__t1022)? }; { let v_W4582 = { let __t1024 = { let __t1023 = v_W4580.clone(); rt::tl(&__t1023)? }; let __t1025 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1024, __t1025])? }; { let __t1114 = { let __t1026 = v_W4582.clone(); rt::is_cons(&__t1026) }; if rt::is_truthy(interp, &__t1114)? { { let v_W4583 = { let __t1027 = v_W4582.clone(); rt::hd(&__t1027)? }; { let v_W4584 = { let __t1029 = { let __t1028 = v_W4582.clone(); rt::tl(&__t1028)? }; let __t1030 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1029, __t1030])? }; { let __t1113 = { let __t1031 = v_W4584.clone(); let __t1032 = Value::nil(); rt::eq(&__t1031, &__t1032) }; if rt::is_truthy(interp, &__t1113)? { { let v_W4585 = { let __t1033 = v_V4537.clone(); let __t1034 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1033, __t1034])? }; { let v_W4586 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4581 = v_W4581.clone(); let v_W4583 = v_W4583.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4587 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1035 = v_W4581.clone(); let __t1036 = v_Z4587.clone(); let __t1037 = v_V4538.clone(); let __t1038 = v_V4539.clone(); let __t1039 = v_V4540.clone(); let __t1040 = v_W4543.clone(); let __t1052 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4583 = v_W4583.clone(); let v_Z4587 = v_Z4587.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1041 = v_W4583.clone(); let __t1046 = { let __t1042 = Value::sym(interp.intern("list")); let __t1045 = { let __t1043 = v_Z4587.clone(); let __t1044 = Value::nil(); rt::cons(&__t1043, &__t1044) }; rt::cons(&__t1042, &__t1045) }; let __t1047 = v_V4538.clone(); let __t1048 = v_V4539.clone(); let __t1049 = v_V4540.clone(); let __t1050 = v_W4543.clone(); let __t1051 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1041, __t1046, __t1047, __t1048, __t1049, __t1050, __t1051])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4583, v_Z4587], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1035, __t1036, __t1037, __t1038, __t1039, __t1040, __t1052])? } }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4581, v_W4583], interp) }; { let __t1112 = { let __t1053 = v_W4585.clone(); rt::is_cons(&__t1053) }; if rt::is_truthy(interp, &__t1112)? { { let v_W4588 = { let __t1055 = { let __t1054 = v_W4585.clone(); rt::hd(&__t1054)? }; let __t1056 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1055, __t1056])? }; { let v_W4589 = { let v_V4539 = v_V4539.clone(); let v_W4585 = v_W4585.clone(); let v_W4586 = v_W4586.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4590 = { let __t1058 = { let __t1057 = v_W4585.clone(); rt::tl(&__t1057)? }; let __t1059 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1058, __t1059])? }; { let v_W4591 = { let v_W4586 = v_W4586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4592 = args[0].clone(); Ok({ let __t1060 = v_Z4592.clone(); rt::apply_value(interp, v_W4586.clone(), &[__t1060])? }) }, vec![v_W4586], interp) }; { let __t1088 = { let __t1061 = v_W4590.clone(); rt::is_cons(&__t1061) }; if rt::is_truthy(interp, &__t1088)? { { let v_W4593 = { let __t1062 = v_W4590.clone(); rt::hd(&__t1062)? }; { let v_W4594 = { let __t1064 = { let __t1063 = v_W4590.clone(); rt::tl(&__t1063)? }; let __t1065 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1064, __t1065])? }; { let v_W4595 = { let v_W4591 = v_W4591.clone(); let v_W4593 = v_W4593.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1066 = v_W4593.clone(); rt::apply_value(interp, v_W4591.clone(), &[__t1066])? }), vec![v_W4591, v_W4593], interp) }; { let __t1075 = { let __t1067 = v_W4594.clone(); let __t1068 = Value::nil(); rt::eq(&__t1067, &__t1068) }; if rt::is_truthy(interp, &__t1075)? { rt::apply_value(interp, v_W4595.clone(), &[])? } else { { let __t1074 = { let __t1069 = v_W4594.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1069])? }; if rt::is_truthy(interp, &__t1074)? { { let __t1070 = v_W4594.clone(); let __t1071 = Value::nil(); let __t1072 = v_V4539.clone(); let __t1073 = v_W4595.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1070, __t1071, __t1072, __t1073])? } } else { Value::bool(false) } } } } } } } } else { { let __t1087 = { let __t1076 = v_W4590.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1076])? }; if rt::is_truthy(interp, &__t1087)? { { let v_W4596 = { let __t1077 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1077])? }; { let __t1078 = v_V4539.clone(); let __t1086 = { let __t1079 = v_W4590.clone(); let __t1082 = { let __t1080 = v_W4596.clone(); let __t1081 = Value::nil(); rt::cons(&__t1080, &__t1081) }; let __t1083 = v_V4539.clone(); let __t1085 = { let v_W4591 = v_W4591.clone(); let v_W4596 = v_W4596.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1084 = v_W4596.clone(); rt::apply_value(interp, v_W4591.clone(), &[__t1084])? }), vec![v_W4591, v_W4596], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1079, __t1082, __t1083, __t1085])? }; rt::apply_direct(interp, "shen.gc", &[__t1078, __t1086])? } } } else { Value::bool(false) } } } } } }), vec![v_V4539, v_W4585, v_W4586], interp) }; { let __t1097 = { let __t1089 = v_W4588.clone(); let __t1090 = Value::sym(interp.intern("list")); rt::eq(&__t1089, &__t1090) }; if rt::is_truthy(interp, &__t1097)? { rt::apply_value(interp, v_W4589.clone(), &[])? } else { { let __t1096 = { let __t1091 = v_W4588.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1091])? }; if rt::is_truthy(interp, &__t1096)? { { let __t1092 = v_W4588.clone(); let __t1093 = Value::sym(interp.intern("list")); let __t1094 = v_V4539.clone(); let __t1095 = v_W4589.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1092, __t1093, __t1094, __t1095])? } } else { Value::bool(false) } } } } } } } else { { let __t1111 = { let __t1098 = v_W4585.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1098])? }; if rt::is_truthy(interp, &__t1111)? { { let v_W4597 = { let __t1099 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1099])? }; { let __t1100 = v_V4539.clone(); let __t1110 = { let __t1101 = v_W4585.clone(); let __t1106 = { let __t1102 = Value::sym(interp.intern("list")); let __t1105 = { let __t1103 = v_W4597.clone(); let __t1104 = Value::nil(); rt::cons(&__t1103, &__t1104) }; rt::cons(&__t1102, &__t1105) }; let __t1107 = v_V4539.clone(); let __t1109 = { let v_W4586 = v_W4586.clone(); let v_W4597 = v_W4597.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1108 = v_W4597.clone(); rt::apply_value(interp, v_W4586.clone(), &[__t1108])? }), vec![v_W4586, v_W4597], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1101, __t1106, __t1107, __t1109])? }; rt::apply_direct(interp, "shen.gc", &[__t1100, __t1110])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1121 = { let __t1119 = v_W4577.clone(); let __t1120 = Value::bool(false); rt::eq(&__t1119, &__t1120) }; if match rt::is_truthy(interp, &__t1121) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4598 = { let __t1257 = { let __t1122 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1122])? }; if rt::is_truthy(interp, &__t1257)? { { let v_W4599 = { let __t1123 = v_V4536.clone(); let __t1124 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1123, __t1124])? }; { let __t1256 = { let __t1125 = v_W4599.clone(); rt::is_cons(&__t1125) }; if rt::is_truthy(interp, &__t1256)? { { let v_W4600 = { let __t1127 = { let __t1126 = v_W4599.clone(); rt::hd(&__t1126)? }; let __t1128 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1127, __t1128])? }; { let __t1255 = { let __t1129 = v_W4600.clone(); let __t1130 = Value::sym(interp.intern("@p")); rt::eq(&__t1129, &__t1130) }; if rt::is_truthy(interp, &__t1255)? { { let v_W4601 = { let __t1132 = { let __t1131 = v_W4599.clone(); rt::tl(&__t1131)? }; let __t1133 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1132, __t1133])? }; { let __t1254 = { let __t1134 = v_W4601.clone(); rt::is_cons(&__t1134) }; if rt::is_truthy(interp, &__t1254)? { { let v_W4602 = { let __t1135 = v_W4601.clone(); rt::hd(&__t1135)? }; { let v_W4603 = { let __t1137 = { let __t1136 = v_W4601.clone(); rt::tl(&__t1136)? }; let __t1138 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1137, __t1138])? }; { let __t1253 = { let __t1139 = v_W4603.clone(); rt::is_cons(&__t1139) }; if rt::is_truthy(interp, &__t1253)? { { let v_W4604 = { let __t1140 = v_W4603.clone(); rt::hd(&__t1140)? }; { let v_W4605 = { let __t1142 = { let __t1141 = v_W4603.clone(); rt::tl(&__t1141)? }; let __t1143 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1142, __t1143])? }; { let __t1252 = { let __t1144 = v_W4605.clone(); let __t1145 = Value::nil(); rt::eq(&__t1144, &__t1145) }; if rt::is_truthy(interp, &__t1252)? { { let v_W4606 = { let __t1146 = v_V4537.clone(); let __t1147 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1146, __t1147])? }; { let v_W4607 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4602 = v_W4602.clone(); let v_W4604 = v_W4604.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4608 = args[0].clone(); Ok({ let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4602 = v_W4602.clone(); let v_W4604 = v_W4604.clone(); let v_Z4608 = v_Z4608.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4609 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1148 = v_W4602.clone(); let __t1149 = v_Z4608.clone(); let __t1150 = v_V4538.clone(); let __t1151 = v_V4539.clone(); let __t1152 = v_V4540.clone(); let __t1153 = v_W4543.clone(); let __t1161 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4604 = v_W4604.clone(); let v_Z4609 = v_Z4609.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1154 = v_W4604.clone(); let __t1155 = v_Z4609.clone(); let __t1156 = v_V4538.clone(); let __t1157 = v_V4539.clone(); let __t1158 = v_V4540.clone(); let __t1159 = v_W4543.clone(); let __t1160 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1154, __t1155, __t1156, __t1157, __t1158, __t1159, __t1160])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4604, v_Z4609], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1148, __t1149, __t1150, __t1151, __t1152, __t1153, __t1161])? } }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4602, v_W4604, v_Z4608], interp) }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4602, v_W4604], interp) }; { let __t1251 = { let __t1162 = v_W4606.clone(); rt::is_cons(&__t1162) }; if rt::is_truthy(interp, &__t1251)? { { let v_W4610 = { let __t1163 = v_W4606.clone(); rt::hd(&__t1163)? }; { let v_W4611 = { let __t1165 = { let __t1164 = v_W4606.clone(); rt::tl(&__t1164)? }; let __t1166 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1165, __t1166])? }; { let v_W4612 = { let v_W4607 = v_W4607.clone(); let v_W4610 = v_W4610.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4613 = args[0].clone(); Ok({ let __t1168 = { let __t1167 = v_W4610.clone(); rt::apply_value(interp, v_W4607.clone(), &[__t1167])? }; let __t1169 = v_Z4613.clone(); rt::apply_value(interp, __t1168, &[__t1169])? }) }, vec![v_W4607, v_W4610], interp) }; { let __t1229 = { let __t1170 = v_W4611.clone(); rt::is_cons(&__t1170) }; if rt::is_truthy(interp, &__t1229)? { { let v_W4614 = { let __t1172 = { let __t1171 = v_W4611.clone(); rt::hd(&__t1171)? }; let __t1173 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1172, __t1173])? }; { let v_W4615 = { let v_V4539 = v_V4539.clone(); let v_W4611 = v_W4611.clone(); let v_W4612 = v_W4612.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4616 = { let __t1175 = { let __t1174 = v_W4611.clone(); rt::tl(&__t1174)? }; let __t1176 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1175, __t1176])? }; { let v_W4617 = { let v_W4612 = v_W4612.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4618 = args[0].clone(); Ok({ let __t1177 = v_Z4618.clone(); rt::apply_value(interp, v_W4612.clone(), &[__t1177])? }) }, vec![v_W4612], interp) }; { let __t1205 = { let __t1178 = v_W4616.clone(); rt::is_cons(&__t1178) }; if rt::is_truthy(interp, &__t1205)? { { let v_W4619 = { let __t1179 = v_W4616.clone(); rt::hd(&__t1179)? }; { let v_W4620 = { let __t1181 = { let __t1180 = v_W4616.clone(); rt::tl(&__t1180)? }; let __t1182 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1181, __t1182])? }; { let v_W4621 = { let v_W4617 = v_W4617.clone(); let v_W4619 = v_W4619.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1183 = v_W4619.clone(); rt::apply_value(interp, v_W4617.clone(), &[__t1183])? }), vec![v_W4617, v_W4619], interp) }; { let __t1192 = { let __t1184 = v_W4620.clone(); let __t1185 = Value::nil(); rt::eq(&__t1184, &__t1185) }; if rt::is_truthy(interp, &__t1192)? { rt::apply_value(interp, v_W4621.clone(), &[])? } else { { let __t1191 = { let __t1186 = v_W4620.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1186])? }; if rt::is_truthy(interp, &__t1191)? { { let __t1187 = v_W4620.clone(); let __t1188 = Value::nil(); let __t1189 = v_V4539.clone(); let __t1190 = v_W4621.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1187, __t1188, __t1189, __t1190])? } } else { Value::bool(false) } } } } } } } } else { { let __t1204 = { let __t1193 = v_W4616.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1193])? }; if rt::is_truthy(interp, &__t1204)? { { let v_W4622 = { let __t1194 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1194])? }; { let __t1195 = v_V4539.clone(); let __t1203 = { let __t1196 = v_W4616.clone(); let __t1199 = { let __t1197 = v_W4622.clone(); let __t1198 = Value::nil(); rt::cons(&__t1197, &__t1198) }; let __t1200 = v_V4539.clone(); let __t1202 = { let v_W4617 = v_W4617.clone(); let v_W4622 = v_W4622.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1201 = v_W4622.clone(); rt::apply_value(interp, v_W4617.clone(), &[__t1201])? }), vec![v_W4617, v_W4622], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1196, __t1199, __t1200, __t1202])? }; rt::apply_direct(interp, "shen.gc", &[__t1195, __t1203])? } } } else { Value::bool(false) } } } } } }), vec![v_V4539, v_W4611, v_W4612], interp) }; { let __t1214 = { let __t1206 = v_W4614.clone(); let __t1207 = Value::sym(interp.intern("*")); rt::eq(&__t1206, &__t1207) }; if rt::is_truthy(interp, &__t1214)? { rt::apply_value(interp, v_W4615.clone(), &[])? } else { { let __t1213 = { let __t1208 = v_W4614.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1208])? }; if rt::is_truthy(interp, &__t1213)? { { let __t1209 = v_W4614.clone(); let __t1210 = Value::sym(interp.intern("*")); let __t1211 = v_V4539.clone(); let __t1212 = v_W4615.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1209, __t1210, __t1211, __t1212])? } } else { Value::bool(false) } } } } } } } else { { let __t1228 = { let __t1215 = v_W4611.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1215])? }; if rt::is_truthy(interp, &__t1228)? { { let v_W4623 = { let __t1216 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1216])? }; { let __t1217 = v_V4539.clone(); let __t1227 = { let __t1218 = v_W4611.clone(); let __t1223 = { let __t1219 = Value::sym(interp.intern("*")); let __t1222 = { let __t1220 = v_W4623.clone(); let __t1221 = Value::nil(); rt::cons(&__t1220, &__t1221) }; rt::cons(&__t1219, &__t1222) }; let __t1224 = v_V4539.clone(); let __t1226 = { let v_W4612 = v_W4612.clone(); let v_W4623 = v_W4623.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1225 = v_W4623.clone(); rt::apply_value(interp, v_W4612.clone(), &[__t1225])? }), vec![v_W4612, v_W4623], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1218, __t1223, __t1224, __t1226])? }; rt::apply_direct(interp, "shen.gc", &[__t1217, __t1227])? } } } else { Value::bool(false) } } } } } } } } else { { let __t1250 = { let __t1230 = v_W4606.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1230])? }; if rt::is_truthy(interp, &__t1250)? { { let v_W4624 = { let __t1231 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1231])? }; { let __t1232 = v_V4539.clone(); let __t1249 = { let v_W4625 = { let __t1233 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1233])? }; { let __t1234 = v_V4539.clone(); let __t1248 = { let __t1235 = v_W4606.clone(); let __t1242 = { let __t1236 = v_W4624.clone(); let __t1241 = { let __t1237 = Value::sym(interp.intern("*")); let __t1240 = { let __t1238 = v_W4625.clone(); let __t1239 = Value::nil(); rt::cons(&__t1238, &__t1239) }; rt::cons(&__t1237, &__t1240) }; rt::cons(&__t1236, &__t1241) }; let __t1243 = v_V4539.clone(); let __t1247 = { let v_W4607 = v_W4607.clone(); let v_W4624 = v_W4624.clone(); let v_W4625 = v_W4625.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1245 = { let __t1244 = v_W4624.clone(); rt::apply_value(interp, v_W4607.clone(), &[__t1244])? }; let __t1246 = v_W4625.clone(); rt::apply_value(interp, __t1245, &[__t1246])? }), vec![v_W4607, v_W4624, v_W4625], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1235, __t1242, __t1243, __t1247])? }; rt::apply_direct(interp, "shen.gc", &[__t1234, __t1248])? } }; rt::apply_direct(interp, "shen.gc", &[__t1232, __t1249])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1260 = { let __t1258 = v_W4598.clone(); let __t1259 = Value::bool(false); rt::eq(&__t1258, &__t1259) }; if match rt::is_truthy(interp, &__t1260) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4626 = { let __t1370 = { let __t1261 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1261])? }; if rt::is_truthy(interp, &__t1370)? { { let v_W4627 = { let __t1262 = v_V4536.clone(); let __t1263 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1262, __t1263])? }; { let __t1369 = { let __t1264 = v_W4627.clone(); rt::is_cons(&__t1264) }; if rt::is_truthy(interp, &__t1369)? { { let v_W4628 = { let __t1266 = { let __t1265 = v_W4627.clone(); rt::hd(&__t1265)? }; let __t1267 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1266, __t1267])? }; { let __t1368 = { let __t1268 = v_W4628.clone(); let __t1269 = Value::sym(interp.intern("@v")); rt::eq(&__t1268, &__t1269) }; if rt::is_truthy(interp, &__t1368)? { { let v_W4629 = { let __t1271 = { let __t1270 = v_W4627.clone(); rt::tl(&__t1270)? }; let __t1272 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1271, __t1272])? }; { let __t1367 = { let __t1273 = v_W4629.clone(); rt::is_cons(&__t1273) }; if rt::is_truthy(interp, &__t1367)? { { let v_W4630 = { let __t1274 = v_W4629.clone(); rt::hd(&__t1274)? }; { let v_W4631 = { let __t1276 = { let __t1275 = v_W4629.clone(); rt::tl(&__t1275)? }; let __t1277 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1276, __t1277])? }; { let __t1366 = { let __t1278 = v_W4631.clone(); rt::is_cons(&__t1278) }; if rt::is_truthy(interp, &__t1366)? { { let v_W4632 = { let __t1279 = v_W4631.clone(); rt::hd(&__t1279)? }; { let v_W4633 = { let __t1281 = { let __t1280 = v_W4631.clone(); rt::tl(&__t1280)? }; let __t1282 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1281, __t1282])? }; { let __t1365 = { let __t1283 = v_W4633.clone(); let __t1284 = Value::nil(); rt::eq(&__t1283, &__t1284) }; if rt::is_truthy(interp, &__t1365)? { { let v_W4634 = { let __t1285 = v_V4537.clone(); let __t1286 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1285, __t1286])? }; { let v_W4635 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4630 = v_W4630.clone(); let v_W4632 = v_W4632.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4636 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1287 = v_W4630.clone(); let __t1288 = v_Z4636.clone(); let __t1289 = v_V4538.clone(); let __t1290 = v_V4539.clone(); let __t1291 = v_V4540.clone(); let __t1292 = v_W4543.clone(); let __t1304 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4632 = v_W4632.clone(); let v_Z4636 = v_Z4636.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1293 = v_W4632.clone(); let __t1298 = { let __t1294 = Value::sym(interp.intern("vector")); let __t1297 = { let __t1295 = v_Z4636.clone(); let __t1296 = Value::nil(); rt::cons(&__t1295, &__t1296) }; rt::cons(&__t1294, &__t1297) }; let __t1299 = v_V4538.clone(); let __t1300 = v_V4539.clone(); let __t1301 = v_V4540.clone(); let __t1302 = v_W4543.clone(); let __t1303 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1293, __t1298, __t1299, __t1300, __t1301, __t1302, __t1303])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4632, v_Z4636], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1287, __t1288, __t1289, __t1290, __t1291, __t1292, __t1304])? } }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4630, v_W4632], interp) }; { let __t1364 = { let __t1305 = v_W4634.clone(); rt::is_cons(&__t1305) }; if rt::is_truthy(interp, &__t1364)? { { let v_W4637 = { let __t1307 = { let __t1306 = v_W4634.clone(); rt::hd(&__t1306)? }; let __t1308 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1307, __t1308])? }; { let v_W4638 = { let v_V4539 = v_V4539.clone(); let v_W4634 = v_W4634.clone(); let v_W4635 = v_W4635.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4639 = { let __t1310 = { let __t1309 = v_W4634.clone(); rt::tl(&__t1309)? }; let __t1311 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1310, __t1311])? }; { let v_W4640 = { let v_W4635 = v_W4635.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4641 = args[0].clone(); Ok({ let __t1312 = v_Z4641.clone(); rt::apply_value(interp, v_W4635.clone(), &[__t1312])? }) }, vec![v_W4635], interp) }; { let __t1340 = { let __t1313 = v_W4639.clone(); rt::is_cons(&__t1313) }; if rt::is_truthy(interp, &__t1340)? { { let v_W4642 = { let __t1314 = v_W4639.clone(); rt::hd(&__t1314)? }; { let v_W4643 = { let __t1316 = { let __t1315 = v_W4639.clone(); rt::tl(&__t1315)? }; let __t1317 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1316, __t1317])? }; { let v_W4644 = { let v_W4640 = v_W4640.clone(); let v_W4642 = v_W4642.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1318 = v_W4642.clone(); rt::apply_value(interp, v_W4640.clone(), &[__t1318])? }), vec![v_W4640, v_W4642], interp) }; { let __t1327 = { let __t1319 = v_W4643.clone(); let __t1320 = Value::nil(); rt::eq(&__t1319, &__t1320) }; if rt::is_truthy(interp, &__t1327)? { rt::apply_value(interp, v_W4644.clone(), &[])? } else { { let __t1326 = { let __t1321 = v_W4643.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1321])? }; if rt::is_truthy(interp, &__t1326)? { { let __t1322 = v_W4643.clone(); let __t1323 = Value::nil(); let __t1324 = v_V4539.clone(); let __t1325 = v_W4644.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1322, __t1323, __t1324, __t1325])? } } else { Value::bool(false) } } } } } } } } else { { let __t1339 = { let __t1328 = v_W4639.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1328])? }; if rt::is_truthy(interp, &__t1339)? { { let v_W4645 = { let __t1329 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1329])? }; { let __t1330 = v_V4539.clone(); let __t1338 = { let __t1331 = v_W4639.clone(); let __t1334 = { let __t1332 = v_W4645.clone(); let __t1333 = Value::nil(); rt::cons(&__t1332, &__t1333) }; let __t1335 = v_V4539.clone(); let __t1337 = { let v_W4640 = v_W4640.clone(); let v_W4645 = v_W4645.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1336 = v_W4645.clone(); rt::apply_value(interp, v_W4640.clone(), &[__t1336])? }), vec![v_W4640, v_W4645], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1331, __t1334, __t1335, __t1337])? }; rt::apply_direct(interp, "shen.gc", &[__t1330, __t1338])? } } } else { Value::bool(false) } } } } } }), vec![v_V4539, v_W4634, v_W4635], interp) }; { let __t1349 = { let __t1341 = v_W4637.clone(); let __t1342 = Value::sym(interp.intern("vector")); rt::eq(&__t1341, &__t1342) }; if rt::is_truthy(interp, &__t1349)? { rt::apply_value(interp, v_W4638.clone(), &[])? } else { { let __t1348 = { let __t1343 = v_W4637.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1343])? }; if rt::is_truthy(interp, &__t1348)? { { let __t1344 = v_W4637.clone(); let __t1345 = Value::sym(interp.intern("vector")); let __t1346 = v_V4539.clone(); let __t1347 = v_W4638.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1344, __t1345, __t1346, __t1347])? } } else { Value::bool(false) } } } } } } } else { { let __t1363 = { let __t1350 = v_W4634.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1350])? }; if rt::is_truthy(interp, &__t1363)? { { let v_W4646 = { let __t1351 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1351])? }; { let __t1352 = v_V4539.clone(); let __t1362 = { let __t1353 = v_W4634.clone(); let __t1358 = { let __t1354 = Value::sym(interp.intern("vector")); let __t1357 = { let __t1355 = v_W4646.clone(); let __t1356 = Value::nil(); rt::cons(&__t1355, &__t1356) }; rt::cons(&__t1354, &__t1357) }; let __t1359 = v_V4539.clone(); let __t1361 = { let v_W4635 = v_W4635.clone(); let v_W4646 = v_W4646.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1360 = v_W4646.clone(); rt::apply_value(interp, v_W4635.clone(), &[__t1360])? }), vec![v_W4635, v_W4646], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1353, __t1358, __t1359, __t1361])? }; rt::apply_direct(interp, "shen.gc", &[__t1352, __t1362])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1373 = { let __t1371 = v_W4626.clone(); let __t1372 = Value::bool(false); rt::eq(&__t1371, &__t1372) }; if match rt::is_truthy(interp, &__t1373) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4647 = { let __t1428 = { let __t1374 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1374])? }; if rt::is_truthy(interp, &__t1428)? { { let v_W4648 = { let __t1375 = v_V4536.clone(); let __t1376 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1375, __t1376])? }; { let __t1427 = { let __t1377 = v_W4648.clone(); rt::is_cons(&__t1377) }; if rt::is_truthy(interp, &__t1427)? { { let v_W4649 = { let __t1379 = { let __t1378 = v_W4648.clone(); rt::hd(&__t1378)? }; let __t1380 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1379, __t1380])? }; { let __t1426 = { let __t1381 = v_W4649.clone(); let __t1382 = Value::sym(interp.intern("@s")); rt::eq(&__t1381, &__t1382) }; if rt::is_truthy(interp, &__t1426)? { { let v_W4650 = { let __t1384 = { let __t1383 = v_W4648.clone(); rt::tl(&__t1383)? }; let __t1385 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1384, __t1385])? }; { let __t1425 = { let __t1386 = v_W4650.clone(); rt::is_cons(&__t1386) }; if rt::is_truthy(interp, &__t1425)? { { let v_W4651 = { let __t1387 = v_W4650.clone(); rt::hd(&__t1387)? }; { let v_W4652 = { let __t1389 = { let __t1388 = v_W4650.clone(); rt::tl(&__t1388)? }; let __t1390 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1389, __t1390])? }; { let __t1424 = { let __t1391 = v_W4652.clone(); rt::is_cons(&__t1391) }; if rt::is_truthy(interp, &__t1424)? { { let v_W4653 = { let __t1392 = v_W4652.clone(); rt::hd(&__t1392)? }; { let v_W4654 = { let __t1394 = { let __t1393 = v_W4652.clone(); rt::tl(&__t1393)? }; let __t1395 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1394, __t1395])? }; { let __t1423 = { let __t1396 = v_W4654.clone(); let __t1397 = Value::nil(); rt::eq(&__t1396, &__t1397) }; if rt::is_truthy(interp, &__t1423)? { { let v_W4655 = { let __t1398 = v_V4537.clone(); let __t1399 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1398, __t1399])? }; { let v_W4656 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4651 = v_W4651.clone(); let v_W4653 = v_W4653.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1400 = v_W4651.clone(); let __t1401 = Value::sym(interp.intern("string")); let __t1402 = v_V4538.clone(); let __t1403 = v_V4539.clone(); let __t1404 = v_V4540.clone(); let __t1405 = v_W4543.clone(); let __t1413 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4653 = v_W4653.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1406 = v_W4653.clone(); let __t1407 = Value::sym(interp.intern("string")); let __t1408 = v_V4538.clone(); let __t1409 = v_V4539.clone(); let __t1410 = v_V4540.clone(); let __t1411 = v_W4543.clone(); let __t1412 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1406, __t1407, __t1408, __t1409, __t1410, __t1411, __t1412])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4653], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1400, __t1401, __t1402, __t1403, __t1404, __t1405, __t1413])? } }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4651, v_W4653], interp) }; { let __t1422 = { let __t1414 = v_W4655.clone(); let __t1415 = Value::sym(interp.intern("string")); rt::eq(&__t1414, &__t1415) }; if rt::is_truthy(interp, &__t1422)? { rt::apply_value(interp, v_W4656.clone(), &[])? } else { { let __t1421 = { let __t1416 = v_W4655.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1416])? }; if rt::is_truthy(interp, &__t1421)? { { let __t1417 = v_W4655.clone(); let __t1418 = Value::sym(interp.intern("string")); let __t1419 = v_V4539.clone(); let __t1420 = v_W4656.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1417, __t1418, __t1419, __t1420])? } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1431 = { let __t1429 = v_W4647.clone(); let __t1430 = Value::bool(false); rt::eq(&__t1429, &__t1430) }; if match rt::is_truthy(interp, &__t1431) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4657 = { let __t1599 = { let __t1432 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1432])? }; if rt::is_truthy(interp, &__t1599)? { { let v_W4658 = { let __t1433 = v_V4536.clone(); let __t1434 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1433, __t1434])? }; { let __t1598 = { let __t1435 = v_W4658.clone(); rt::is_cons(&__t1435) }; if rt::is_truthy(interp, &__t1598)? { { let v_W4659 = { let __t1437 = { let __t1436 = v_W4658.clone(); rt::hd(&__t1436)? }; let __t1438 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1437, __t1438])? }; { let __t1597 = { let __t1439 = v_W4659.clone(); let __t1440 = Value::sym(interp.intern("lambda")); rt::eq(&__t1439, &__t1440) }; if rt::is_truthy(interp, &__t1597)? { { let v_W4660 = { let __t1442 = { let __t1441 = v_W4658.clone(); rt::tl(&__t1441)? }; let __t1443 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1442, __t1443])? }; { let __t1596 = { let __t1444 = v_W4660.clone(); rt::is_cons(&__t1444) }; if rt::is_truthy(interp, &__t1596)? { { let v_W4661 = { let __t1445 = v_W4660.clone(); rt::hd(&__t1445)? }; { let v_W4662 = { let __t1447 = { let __t1446 = v_W4660.clone(); rt::tl(&__t1446)? }; let __t1448 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1447, __t1448])? }; { let __t1595 = { let __t1449 = v_W4662.clone(); rt::is_cons(&__t1449) }; if rt::is_truthy(interp, &__t1595)? { { let v_W4663 = { let __t1450 = v_W4662.clone(); rt::hd(&__t1450)? }; { let v_W4664 = { let __t1452 = { let __t1451 = v_W4662.clone(); rt::tl(&__t1451)? }; let __t1453 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1452, __t1453])? }; { let __t1594 = { let __t1454 = v_W4664.clone(); let __t1455 = Value::nil(); rt::eq(&__t1454, &__t1455) }; if rt::is_truthy(interp, &__t1594)? { { let v_W4665 = { let __t1456 = v_V4537.clone(); let __t1457 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1456, __t1457])? }; { let v_W4666 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4661 = v_W4661.clone(); let v_W4663 = v_W4663.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4667 = args[0].clone(); Ok({ let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4661 = v_W4661.clone(); let v_W4663 = v_W4663.clone(); let v_Z4667 = v_Z4667.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4668 = args[0].clone(); Ok({ let v_W4669 = { let __t1458 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1458])? }; { let __t1459 = v_V4539.clone(); let __t1503 = { let v_W4670 = { let __t1460 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1460])? }; { let __t1461 = v_V4539.clone(); let __t1502 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1462 = v_W4670.clone(); let __t1466 = { let __t1465 = { let __t1463 = v_W4661.clone(); let __t1464 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1463, __t1464])? }; rt::apply_direct(interp, "shen.freshterm", &[__t1465])? }; let __t1467 = v_V4539.clone(); let __t1468 = v_V4540.clone(); let __t1469 = v_W4543.clone(); let __t1501 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4661 = v_W4661.clone(); let v_W4663 = v_W4663.clone(); let v_W4669 = v_W4669.clone(); let v_W4670 = v_W4670.clone(); let v_Z4667 = v_Z4667.clone(); let v_Z4668 = v_Z4668.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1470 = v_W4669.clone(); let __t1480 = { let __t1473 = { let __t1471 = v_W4661.clone(); let __t1472 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1471, __t1472])? }; let __t1476 = { let __t1474 = v_W4670.clone(); let __t1475 = v_V4539.clone(); rt::apply_direct(interp, "shen.deref", &[__t1474, __t1475])? }; let __t1479 = { let __t1477 = v_W4663.clone(); let __t1478 = v_V4539.clone(); rt::apply_direct(interp, "shen.deref", &[__t1477, __t1478])? }; rt::apply_direct(interp, "shen.beta", &[__t1473, __t1476, __t1479])? }; let __t1481 = v_V4539.clone(); let __t1482 = v_V4540.clone(); let __t1483 = v_W4543.clone(); let __t1500 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4669 = v_W4669.clone(); let v_W4670 = v_W4670.clone(); let v_Z4667 = v_Z4667.clone(); let v_Z4668 = v_Z4668.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1484 = v_W4669.clone(); let __t1485 = v_Z4668.clone(); let __t1495 = { let __t1493 = { let __t1486 = v_W4670.clone(); let __t1492 = { let __t1488 = { let __t1487 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t1487])? }; let __t1491 = { let __t1489 = v_Z4667.clone(); let __t1490 = Value::nil(); rt::cons(&__t1489, &__t1490) }; rt::cons(&__t1488, &__t1491) }; rt::cons(&__t1486, &__t1492) }; let __t1494 = v_V4538.clone(); rt::cons(&__t1493, &__t1494) }; let __t1496 = v_V4539.clone(); let __t1497 = v_V4540.clone(); let __t1498 = v_W4543.clone(); let __t1499 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1484, __t1485, __t1495, __t1496, __t1497, __t1498, __t1499])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4669, v_W4670, v_Z4667, v_Z4668], interp) }; rt::apply_direct(interp, "bind", &[__t1470, __t1480, __t1481, __t1482, __t1483, __t1500])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4661, v_W4663, v_W4669, v_W4670, v_Z4667, v_Z4668], interp) }; rt::apply_direct(interp, "bind", &[__t1462, __t1466, __t1467, __t1468, __t1469, __t1501])? } }; rt::apply_direct(interp, "shen.gc", &[__t1461, __t1502])? } }; rt::apply_direct(interp, "shen.gc", &[__t1459, __t1503])? } }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4661, v_W4663, v_Z4667], interp) }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4661, v_W4663], interp) }; { let __t1593 = { let __t1504 = v_W4665.clone(); rt::is_cons(&__t1504) }; if rt::is_truthy(interp, &__t1593)? { { let v_W4671 = { let __t1505 = v_W4665.clone(); rt::hd(&__t1505)? }; { let v_W4672 = { let __t1507 = { let __t1506 = v_W4665.clone(); rt::tl(&__t1506)? }; let __t1508 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1507, __t1508])? }; { let v_W4673 = { let v_W4666 = v_W4666.clone(); let v_W4671 = v_W4671.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4674 = args[0].clone(); Ok({ let __t1510 = { let __t1509 = v_W4671.clone(); rt::apply_value(interp, v_W4666.clone(), &[__t1509])? }; let __t1511 = v_Z4674.clone(); rt::apply_value(interp, __t1510, &[__t1511])? }) }, vec![v_W4666, v_W4671], interp) }; { let __t1571 = { let __t1512 = v_W4672.clone(); rt::is_cons(&__t1512) }; if rt::is_truthy(interp, &__t1571)? { { let v_W4675 = { let __t1514 = { let __t1513 = v_W4672.clone(); rt::hd(&__t1513)? }; let __t1515 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1514, __t1515])? }; { let v_W4676 = { let v_V4539 = v_V4539.clone(); let v_W4672 = v_W4672.clone(); let v_W4673 = v_W4673.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4677 = { let __t1517 = { let __t1516 = v_W4672.clone(); rt::tl(&__t1516)? }; let __t1518 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1517, __t1518])? }; { let v_W4678 = { let v_W4673 = v_W4673.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4679 = args[0].clone(); Ok({ let __t1519 = v_Z4679.clone(); rt::apply_value(interp, v_W4673.clone(), &[__t1519])? }) }, vec![v_W4673], interp) }; { let __t1547 = { let __t1520 = v_W4677.clone(); rt::is_cons(&__t1520) }; if rt::is_truthy(interp, &__t1547)? { { let v_W4680 = { let __t1521 = v_W4677.clone(); rt::hd(&__t1521)? }; { let v_W4681 = { let __t1523 = { let __t1522 = v_W4677.clone(); rt::tl(&__t1522)? }; let __t1524 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1523, __t1524])? }; { let v_W4682 = { let v_W4678 = v_W4678.clone(); let v_W4680 = v_W4680.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1525 = v_W4680.clone(); rt::apply_value(interp, v_W4678.clone(), &[__t1525])? }), vec![v_W4678, v_W4680], interp) }; { let __t1534 = { let __t1526 = v_W4681.clone(); let __t1527 = Value::nil(); rt::eq(&__t1526, &__t1527) }; if rt::is_truthy(interp, &__t1534)? { rt::apply_value(interp, v_W4682.clone(), &[])? } else { { let __t1533 = { let __t1528 = v_W4681.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1528])? }; if rt::is_truthy(interp, &__t1533)? { { let __t1529 = v_W4681.clone(); let __t1530 = Value::nil(); let __t1531 = v_V4539.clone(); let __t1532 = v_W4682.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1529, __t1530, __t1531, __t1532])? } } else { Value::bool(false) } } } } } } } } else { { let __t1546 = { let __t1535 = v_W4677.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1535])? }; if rt::is_truthy(interp, &__t1546)? { { let v_W4683 = { let __t1536 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1536])? }; { let __t1537 = v_V4539.clone(); let __t1545 = { let __t1538 = v_W4677.clone(); let __t1541 = { let __t1539 = v_W4683.clone(); let __t1540 = Value::nil(); rt::cons(&__t1539, &__t1540) }; let __t1542 = v_V4539.clone(); let __t1544 = { let v_W4678 = v_W4678.clone(); let v_W4683 = v_W4683.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1543 = v_W4683.clone(); rt::apply_value(interp, v_W4678.clone(), &[__t1543])? }), vec![v_W4678, v_W4683], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1538, __t1541, __t1542, __t1544])? }; rt::apply_direct(interp, "shen.gc", &[__t1537, __t1545])? } } } else { Value::bool(false) } } } } } }), vec![v_V4539, v_W4672, v_W4673], interp) }; { let __t1556 = { let __t1548 = v_W4675.clone(); let __t1549 = Value::sym(interp.intern("-->")); rt::eq(&__t1548, &__t1549) }; if rt::is_truthy(interp, &__t1556)? { rt::apply_value(interp, v_W4676.clone(), &[])? } else { { let __t1555 = { let __t1550 = v_W4675.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1550])? }; if rt::is_truthy(interp, &__t1555)? { { let __t1551 = v_W4675.clone(); let __t1552 = Value::sym(interp.intern("-->")); let __t1553 = v_V4539.clone(); let __t1554 = v_W4676.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1551, __t1552, __t1553, __t1554])? } } else { Value::bool(false) } } } } } } } else { { let __t1570 = { let __t1557 = v_W4672.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1557])? }; if rt::is_truthy(interp, &__t1570)? { { let v_W4684 = { let __t1558 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1558])? }; { let __t1559 = v_V4539.clone(); let __t1569 = { let __t1560 = v_W4672.clone(); let __t1565 = { let __t1561 = Value::sym(interp.intern("-->")); let __t1564 = { let __t1562 = v_W4684.clone(); let __t1563 = Value::nil(); rt::cons(&__t1562, &__t1563) }; rt::cons(&__t1561, &__t1564) }; let __t1566 = v_V4539.clone(); let __t1568 = { let v_W4673 = v_W4673.clone(); let v_W4684 = v_W4684.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1567 = v_W4684.clone(); rt::apply_value(interp, v_W4673.clone(), &[__t1567])? }), vec![v_W4673, v_W4684], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1560, __t1565, __t1566, __t1568])? }; rt::apply_direct(interp, "shen.gc", &[__t1559, __t1569])? } } } else { Value::bool(false) } } } } } } } } else { { let __t1592 = { let __t1572 = v_W4665.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1572])? }; if rt::is_truthy(interp, &__t1592)? { { let v_W4685 = { let __t1573 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1573])? }; { let __t1574 = v_V4539.clone(); let __t1591 = { let v_W4686 = { let __t1575 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1575])? }; { let __t1576 = v_V4539.clone(); let __t1590 = { let __t1577 = v_W4665.clone(); let __t1584 = { let __t1578 = v_W4685.clone(); let __t1583 = { let __t1579 = Value::sym(interp.intern("-->")); let __t1582 = { let __t1580 = v_W4686.clone(); let __t1581 = Value::nil(); rt::cons(&__t1580, &__t1581) }; rt::cons(&__t1579, &__t1582) }; rt::cons(&__t1578, &__t1583) }; let __t1585 = v_V4539.clone(); let __t1589 = { let v_W4666 = v_W4666.clone(); let v_W4685 = v_W4685.clone(); let v_W4686 = v_W4686.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1587 = { let __t1586 = v_W4685.clone(); rt::apply_value(interp, v_W4666.clone(), &[__t1586])? }; let __t1588 = v_W4686.clone(); rt::apply_value(interp, __t1587, &[__t1588])? }), vec![v_W4666, v_W4685, v_W4686], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1577, __t1584, __t1585, __t1589])? }; rt::apply_direct(interp, "shen.gc", &[__t1576, __t1590])? } }; rt::apply_direct(interp, "shen.gc", &[__t1574, __t1591])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1602 = { let __t1600 = v_W4657.clone(); let __t1601 = Value::bool(false); rt::eq(&__t1600, &__t1601) }; if match rt::is_truthy(interp, &__t1602) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4687 = { let __t1694 = { let __t1603 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1603])? }; if rt::is_truthy(interp, &__t1694)? { { let v_W4688 = { let __t1604 = v_V4536.clone(); let __t1605 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1604, __t1605])? }; { let __t1693 = { let __t1606 = v_W4688.clone(); rt::is_cons(&__t1606) }; if rt::is_truthy(interp, &__t1693)? { { let v_W4689 = { let __t1608 = { let __t1607 = v_W4688.clone(); rt::hd(&__t1607)? }; let __t1609 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1608, __t1609])? }; { let __t1692 = { let __t1610 = v_W4689.clone(); let __t1611 = Value::sym(interp.intern("let")); rt::eq(&__t1610, &__t1611) }; if rt::is_truthy(interp, &__t1692)? { { let v_W4690 = { let __t1613 = { let __t1612 = v_W4688.clone(); rt::tl(&__t1612)? }; let __t1614 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1613, __t1614])? }; { let __t1691 = { let __t1615 = v_W4690.clone(); rt::is_cons(&__t1615) }; if rt::is_truthy(interp, &__t1691)? { { let v_W4691 = { let __t1616 = v_W4690.clone(); rt::hd(&__t1616)? }; { let v_W4692 = { let __t1618 = { let __t1617 = v_W4690.clone(); rt::tl(&__t1617)? }; let __t1619 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1618, __t1619])? }; { let __t1690 = { let __t1620 = v_W4692.clone(); rt::is_cons(&__t1620) }; if rt::is_truthy(interp, &__t1690)? { { let v_W4693 = { let __t1621 = v_W4692.clone(); rt::hd(&__t1621)? }; { let v_W4694 = { let __t1623 = { let __t1622 = v_W4692.clone(); rt::tl(&__t1622)? }; let __t1624 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1623, __t1624])? }; { let __t1689 = { let __t1625 = v_W4694.clone(); rt::is_cons(&__t1625) }; if rt::is_truthy(interp, &__t1689)? { { let v_W4695 = { let __t1626 = v_W4694.clone(); rt::hd(&__t1626)? }; { let v_W4696 = { let __t1628 = { let __t1627 = v_W4694.clone(); rt::tl(&__t1627)? }; let __t1629 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1628, __t1629])? }; { let __t1688 = { let __t1630 = v_W4696.clone(); let __t1631 = Value::nil(); rt::eq(&__t1630, &__t1631) }; if rt::is_truthy(interp, &__t1688)? { { let v_W4697 = { let __t1632 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1632])? }; { let __t1633 = v_V4539.clone(); let __t1687 = { let v_W4698 = { let __t1634 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1634])? }; { let __t1635 = v_V4539.clone(); let __t1686 = { let v_W4699 = { let __t1636 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1636])? }; { let __t1637 = v_V4539.clone(); let __t1685 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1638 = v_W4693.clone(); let __t1639 = v_W4699.clone(); let __t1640 = v_V4538.clone(); let __t1641 = v_V4539.clone(); let __t1642 = v_V4540.clone(); let __t1643 = v_W4543.clone(); let __t1684 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4691 = v_W4691.clone(); let v_W4695 = v_W4695.clone(); let v_W4697 = v_W4697.clone(); let v_W4698 = v_W4698.clone(); let v_W4699 = v_W4699.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1644 = v_W4698.clone(); let __t1648 = { let __t1647 = { let __t1645 = v_W4691.clone(); let __t1646 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1645, __t1646])? }; rt::apply_direct(interp, "shen.freshterm", &[__t1647])? }; let __t1649 = v_V4539.clone(); let __t1650 = v_V4540.clone(); let __t1651 = v_W4543.clone(); let __t1683 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4691 = v_W4691.clone(); let v_W4695 = v_W4695.clone(); let v_W4697 = v_W4697.clone(); let v_W4698 = v_W4698.clone(); let v_W4699 = v_W4699.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1652 = v_W4697.clone(); let __t1662 = { let __t1655 = { let __t1653 = v_W4691.clone(); let __t1654 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1653, __t1654])? }; let __t1658 = { let __t1656 = v_W4698.clone(); let __t1657 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1656, __t1657])? }; let __t1661 = { let __t1659 = v_W4695.clone(); let __t1660 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1659, __t1660])? }; rt::apply_direct(interp, "shen.beta", &[__t1655, __t1658, __t1661])? }; let __t1663 = v_V4539.clone(); let __t1664 = v_V4540.clone(); let __t1665 = v_W4543.clone(); let __t1682 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4697 = v_W4697.clone(); let v_W4698 = v_W4698.clone(); let v_W4699 = v_W4699.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1666 = v_W4697.clone(); let __t1667 = v_V4537.clone(); let __t1677 = { let __t1675 = { let __t1668 = v_W4698.clone(); let __t1674 = { let __t1670 = { let __t1669 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t1669])? }; let __t1673 = { let __t1671 = v_W4699.clone(); let __t1672 = Value::nil(); rt::cons(&__t1671, &__t1672) }; rt::cons(&__t1670, &__t1673) }; rt::cons(&__t1668, &__t1674) }; let __t1676 = v_V4538.clone(); rt::cons(&__t1675, &__t1676) }; let __t1678 = v_V4539.clone(); let __t1679 = v_V4540.clone(); let __t1680 = v_W4543.clone(); let __t1681 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1666, __t1667, __t1677, __t1678, __t1679, __t1680, __t1681])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4697, v_W4698, v_W4699], interp) }; rt::apply_direct(interp, "bind", &[__t1652, __t1662, __t1663, __t1664, __t1665, __t1682])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4691, v_W4695, v_W4697, v_W4698, v_W4699], interp) }; rt::apply_direct(interp, "bind", &[__t1644, __t1648, __t1649, __t1650, __t1651, __t1683])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4691, v_W4695, v_W4697, v_W4698, v_W4699], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1638, __t1639, __t1640, __t1641, __t1642, __t1643, __t1684])? } }; rt::apply_direct(interp, "shen.gc", &[__t1637, __t1685])? } }; rt::apply_direct(interp, "shen.gc", &[__t1635, __t1686])? } }; rt::apply_direct(interp, "shen.gc", &[__t1633, __t1687])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1697 = { let __t1695 = v_W4687.clone(); let __t1696 = Value::bool(false); rt::eq(&__t1695, &__t1696) }; if match rt::is_truthy(interp, &__t1697) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4700 = { let __t1815 = { let __t1698 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1698])? }; if rt::is_truthy(interp, &__t1815)? { { let v_W4701 = { let __t1699 = v_V4536.clone(); let __t1700 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1699, __t1700])? }; { let __t1814 = { let __t1701 = v_W4701.clone(); rt::is_cons(&__t1701) }; if rt::is_truthy(interp, &__t1814)? { { let v_W4702 = { let __t1703 = { let __t1702 = v_W4701.clone(); rt::hd(&__t1702)? }; let __t1704 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1703, __t1704])? }; { let __t1813 = { let __t1705 = v_W4702.clone(); let __t1706 = Value::sym(interp.intern("open")); rt::eq(&__t1705, &__t1706) }; if rt::is_truthy(interp, &__t1813)? { { let v_W4703 = { let __t1708 = { let __t1707 = v_W4701.clone(); rt::tl(&__t1707)? }; let __t1709 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1708, __t1709])? }; { let __t1812 = { let __t1710 = v_W4703.clone(); rt::is_cons(&__t1710) }; if rt::is_truthy(interp, &__t1812)? { { let v_W4704 = { let __t1711 = v_W4703.clone(); rt::hd(&__t1711)? }; { let v_W4705 = { let __t1713 = { let __t1712 = v_W4703.clone(); rt::tl(&__t1712)? }; let __t1714 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1713, __t1714])? }; { let __t1811 = { let __t1715 = v_W4705.clone(); rt::is_cons(&__t1715) }; if rt::is_truthy(interp, &__t1811)? { { let v_W4706 = { let __t1716 = v_W4705.clone(); rt::hd(&__t1716)? }; { let v_W4707 = { let __t1718 = { let __t1717 = v_W4705.clone(); rt::tl(&__t1717)? }; let __t1719 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1718, __t1719])? }; { let __t1810 = { let __t1720 = v_W4707.clone(); let __t1721 = Value::nil(); rt::eq(&__t1720, &__t1721) }; if rt::is_truthy(interp, &__t1810)? { { let v_W4708 = { let __t1722 = v_V4537.clone(); let __t1723 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1722, __t1723])? }; { let v_W4709 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4704 = v_W4704.clone(); let v_W4706 = v_W4706.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4710 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1724 = v_W4706.clone(); let __t1725 = v_Z4710.clone(); let __t1726 = v_V4539.clone(); let __t1727 = v_V4540.clone(); let __t1728 = v_W4543.clone(); let __t1749 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4704 = v_W4704.clone(); let v_Z4710 = v_Z4710.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1737 = { let __t1731 = { let __t1729 = v_Z4710.clone(); let __t1730 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1729, __t1730])? }; let __t1736 = { let __t1732 = Value::sym(interp.intern("in")); let __t1735 = { let __t1733 = Value::sym(interp.intern("out")); let __t1734 = Value::nil(); rt::cons(&__t1733, &__t1734) }; rt::cons(&__t1732, &__t1735) }; rt::apply_direct(interp, "element?", &[__t1731, __t1736])? }; let __t1738 = v_V4539.clone(); let __t1739 = v_V4540.clone(); let __t1740 = v_W4543.clone(); let __t1748 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4704 = v_W4704.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1741 = v_W4704.clone(); let __t1742 = Value::sym(interp.intern("string")); let __t1743 = v_V4538.clone(); let __t1744 = v_V4539.clone(); let __t1745 = v_V4540.clone(); let __t1746 = v_W4543.clone(); let __t1747 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1741, __t1742, __t1743, __t1744, __t1745, __t1746, __t1747])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4704], interp) }; rt::apply_direct(interp, "when", &[__t1737, __t1738, __t1739, __t1740, __t1748])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4704, v_Z4710], interp) }; rt::apply_direct(interp, "is!", &[__t1724, __t1725, __t1726, __t1727, __t1728, __t1749])? } }) }, vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4704, v_W4706], interp) }; { let __t1809 = { let __t1750 = v_W4708.clone(); rt::is_cons(&__t1750) }; if rt::is_truthy(interp, &__t1809)? { { let v_W4711 = { let __t1752 = { let __t1751 = v_W4708.clone(); rt::hd(&__t1751)? }; let __t1753 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1752, __t1753])? }; { let v_W4712 = { let v_V4539 = v_V4539.clone(); let v_W4708 = v_W4708.clone(); let v_W4709 = v_W4709.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4713 = { let __t1755 = { let __t1754 = v_W4708.clone(); rt::tl(&__t1754)? }; let __t1756 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1755, __t1756])? }; { let v_W4714 = { let v_W4709 = v_W4709.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4715 = args[0].clone(); Ok({ let __t1757 = v_Z4715.clone(); rt::apply_value(interp, v_W4709.clone(), &[__t1757])? }) }, vec![v_W4709], interp) }; { let __t1785 = { let __t1758 = v_W4713.clone(); rt::is_cons(&__t1758) }; if rt::is_truthy(interp, &__t1785)? { { let v_W4716 = { let __t1759 = v_W4713.clone(); rt::hd(&__t1759)? }; { let v_W4717 = { let __t1761 = { let __t1760 = v_W4713.clone(); rt::tl(&__t1760)? }; let __t1762 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1761, __t1762])? }; { let v_W4718 = { let v_W4714 = v_W4714.clone(); let v_W4716 = v_W4716.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1763 = v_W4716.clone(); rt::apply_value(interp, v_W4714.clone(), &[__t1763])? }), vec![v_W4714, v_W4716], interp) }; { let __t1772 = { let __t1764 = v_W4717.clone(); let __t1765 = Value::nil(); rt::eq(&__t1764, &__t1765) }; if rt::is_truthy(interp, &__t1772)? { rt::apply_value(interp, v_W4718.clone(), &[])? } else { { let __t1771 = { let __t1766 = v_W4717.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1766])? }; if rt::is_truthy(interp, &__t1771)? { { let __t1767 = v_W4717.clone(); let __t1768 = Value::nil(); let __t1769 = v_V4539.clone(); let __t1770 = v_W4718.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1767, __t1768, __t1769, __t1770])? } } else { Value::bool(false) } } } } } } } } else { { let __t1784 = { let __t1773 = v_W4713.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1773])? }; if rt::is_truthy(interp, &__t1784)? { { let v_W4719 = { let __t1774 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1774])? }; { let __t1775 = v_V4539.clone(); let __t1783 = { let __t1776 = v_W4713.clone(); let __t1779 = { let __t1777 = v_W4719.clone(); let __t1778 = Value::nil(); rt::cons(&__t1777, &__t1778) }; let __t1780 = v_V4539.clone(); let __t1782 = { let v_W4714 = v_W4714.clone(); let v_W4719 = v_W4719.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1781 = v_W4719.clone(); rt::apply_value(interp, v_W4714.clone(), &[__t1781])? }), vec![v_W4714, v_W4719], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1776, __t1779, __t1780, __t1782])? }; rt::apply_direct(interp, "shen.gc", &[__t1775, __t1783])? } } } else { Value::bool(false) } } } } } }), vec![v_V4539, v_W4708, v_W4709], interp) }; { let __t1794 = { let __t1786 = v_W4711.clone(); let __t1787 = Value::sym(interp.intern("stream")); rt::eq(&__t1786, &__t1787) }; if rt::is_truthy(interp, &__t1794)? { rt::apply_value(interp, v_W4712.clone(), &[])? } else { { let __t1793 = { let __t1788 = v_W4711.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1788])? }; if rt::is_truthy(interp, &__t1793)? { { let __t1789 = v_W4711.clone(); let __t1790 = Value::sym(interp.intern("stream")); let __t1791 = v_V4539.clone(); let __t1792 = v_W4712.clone(); rt::apply_direct(interp, "shen.bind!", &[__t1789, __t1790, __t1791, __t1792])? } } else { Value::bool(false) } } } } } } } else { { let __t1808 = { let __t1795 = v_W4708.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t1795])? }; if rt::is_truthy(interp, &__t1808)? { { let v_W4720 = { let __t1796 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1796])? }; { let __t1797 = v_V4539.clone(); let __t1807 = { let __t1798 = v_W4708.clone(); let __t1803 = { let __t1799 = Value::sym(interp.intern("stream")); let __t1802 = { let __t1800 = v_W4720.clone(); let __t1801 = Value::nil(); rt::cons(&__t1800, &__t1801) }; rt::cons(&__t1799, &__t1802) }; let __t1804 = v_V4539.clone(); let __t1806 = { let v_W4709 = v_W4709.clone(); let v_W4720 = v_W4720.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1805 = v_W4720.clone(); rt::apply_value(interp, v_W4709.clone(), &[__t1805])? }), vec![v_W4709, v_W4720], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t1798, __t1803, __t1804, __t1806])? }; rt::apply_direct(interp, "shen.gc", &[__t1797, __t1807])? } } } else { Value::bool(false) } } } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1818 = { let __t1816 = v_W4700.clone(); let __t1817 = Value::bool(false); rt::eq(&__t1816, &__t1817) }; if match rt::is_truthy(interp, &__t1818) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4721 = { let __t1868 = { let __t1819 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1819])? }; if rt::is_truthy(interp, &__t1868)? { { let v_W4722 = { let __t1820 = v_V4536.clone(); let __t1821 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1820, __t1821])? }; { let __t1867 = { let __t1822 = v_W4722.clone(); rt::is_cons(&__t1822) }; if rt::is_truthy(interp, &__t1867)? { { let v_W4723 = { let __t1824 = { let __t1823 = v_W4722.clone(); rt::hd(&__t1823)? }; let __t1825 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1824, __t1825])? }; { let __t1866 = { let __t1826 = v_W4723.clone(); let __t1827 = Value::sym(interp.intern("type")); rt::eq(&__t1826, &__t1827) }; if rt::is_truthy(interp, &__t1866)? { { let v_W4724 = { let __t1829 = { let __t1828 = v_W4722.clone(); rt::tl(&__t1828)? }; let __t1830 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1829, __t1830])? }; { let __t1865 = { let __t1831 = v_W4724.clone(); rt::is_cons(&__t1831) }; if rt::is_truthy(interp, &__t1865)? { { let v_W4725 = { let __t1832 = v_W4724.clone(); rt::hd(&__t1832)? }; { let v_W4726 = { let __t1834 = { let __t1833 = v_W4724.clone(); rt::tl(&__t1833)? }; let __t1835 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1834, __t1835])? }; { let __t1864 = { let __t1836 = v_W4726.clone(); rt::is_cons(&__t1836) }; if rt::is_truthy(interp, &__t1864)? { { let v_W4727 = { let __t1837 = v_W4726.clone(); rt::hd(&__t1837)? }; { let v_W4728 = { let __t1839 = { let __t1838 = v_W4726.clone(); rt::tl(&__t1838)? }; let __t1840 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1839, __t1840])? }; { let __t1863 = { let __t1841 = v_W4728.clone(); let __t1842 = Value::nil(); rt::eq(&__t1841, &__t1842) }; if rt::is_truthy(interp, &__t1863)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1843 = v_V4539.clone(); let __t1844 = v_V4540.clone(); let __t1845 = v_W4543.clone(); let __t1862 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4725 = v_W4725.clone(); let v_W4727 = v_W4727.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1849 = { let __t1848 = { let __t1846 = v_W4727.clone(); let __t1847 = v_V4539.clone(); rt::apply_direct(interp, "shen.deref", &[__t1846, __t1847])? }; rt::apply_direct(interp, "shen.rectify-type", &[__t1848])? }; let __t1850 = v_V4537.clone(); let __t1851 = v_V4539.clone(); let __t1852 = v_V4540.clone(); let __t1853 = v_W4543.clone(); let __t1861 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4725 = v_W4725.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1854 = v_W4725.clone(); let __t1855 = v_V4537.clone(); let __t1856 = v_V4538.clone(); let __t1857 = v_V4539.clone(); let __t1858 = v_V4540.clone(); let __t1859 = v_W4543.clone(); let __t1860 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1854, __t1855, __t1856, __t1857, __t1858, __t1859, __t1860])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4725], interp) }; rt::apply_direct(interp, "is!", &[__t1849, __t1850, __t1851, __t1852, __t1853, __t1861])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4725, v_W4727], interp) }; rt::apply_direct(interp, "shen.cut", &[__t1843, __t1844, __t1845, __t1862])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1871 = { let __t1869 = v_W4721.clone(); let __t1870 = Value::bool(false); rt::eq(&__t1869, &__t1870) }; if match rt::is_truthy(interp, &__t1871) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4729 = { let __t1922 = { let __t1872 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1872])? }; if rt::is_truthy(interp, &__t1922)? { { let v_W4730 = { let __t1873 = v_V4536.clone(); let __t1874 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1873, __t1874])? }; { let __t1921 = { let __t1875 = v_W4730.clone(); rt::is_cons(&__t1875) }; if rt::is_truthy(interp, &__t1921)? { { let v_W4731 = { let __t1877 = { let __t1876 = v_W4730.clone(); rt::hd(&__t1876)? }; let __t1878 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1877, __t1878])? }; { let __t1920 = { let __t1879 = v_W4731.clone(); let __t1880 = Value::sym(interp.intern("shen.input-h+")); rt::eq(&__t1879, &__t1880) }; if rt::is_truthy(interp, &__t1920)? { { let v_W4732 = { let __t1882 = { let __t1881 = v_W4730.clone(); rt::tl(&__t1881)? }; let __t1883 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1882, __t1883])? }; { let __t1919 = { let __t1884 = v_W4732.clone(); rt::is_cons(&__t1884) }; if rt::is_truthy(interp, &__t1919)? { { let v_W4733 = { let __t1885 = v_W4732.clone(); rt::hd(&__t1885)? }; { let v_W4734 = { let __t1887 = { let __t1886 = v_W4732.clone(); rt::tl(&__t1886)? }; let __t1888 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1887, __t1888])? }; { let __t1918 = { let __t1889 = v_W4734.clone(); rt::is_cons(&__t1889) }; if rt::is_truthy(interp, &__t1918)? { { let v_W4735 = { let __t1890 = v_W4734.clone(); rt::hd(&__t1890)? }; { let v_W4736 = { let __t1892 = { let __t1891 = v_W4734.clone(); rt::tl(&__t1891)? }; let __t1893 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1892, __t1893])? }; { let __t1917 = { let __t1894 = v_W4736.clone(); let __t1895 = Value::nil(); rt::eq(&__t1894, &__t1895) }; if rt::is_truthy(interp, &__t1917)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1896 = v_V4537.clone(); let __t1901 = { let __t1900 = { let __t1899 = { let __t1897 = v_W4733.clone(); let __t1898 = v_V4539.clone(); rt::apply_direct(interp, "shen.deref", &[__t1897, __t1898])? }; rt::apply_direct(interp, "shen.rdecons", &[__t1899])? }; rt::apply_direct(interp, "shen.rectify-type", &[__t1900])? }; let __t1902 = v_V4539.clone(); let __t1903 = v_V4540.clone(); let __t1904 = v_W4543.clone(); let __t1916 = { let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4735 = v_W4735.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1905 = v_W4735.clone(); let __t1910 = { let __t1906 = Value::sym(interp.intern("stream")); let __t1909 = { let __t1907 = Value::sym(interp.intern("in")); let __t1908 = Value::nil(); rt::cons(&__t1907, &__t1908) }; rt::cons(&__t1906, &__t1909) }; let __t1911 = v_V4538.clone(); let __t1912 = v_V4539.clone(); let __t1913 = v_V4540.clone(); let __t1914 = v_W4543.clone(); let __t1915 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1905, __t1910, __t1911, __t1912, __t1913, __t1914, __t1915])? }), vec![v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4735], interp) }; rt::apply_direct(interp, "is", &[__t1896, __t1901, __t1902, __t1903, __t1904, __t1916])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1925 = { let __t1923 = v_W4729.clone(); let __t1924 = Value::bool(false); rt::eq(&__t1923, &__t1924) }; if match rt::is_truthy(interp, &__t1925) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4737 = { let __t1980 = { let __t1926 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1926])? }; if rt::is_truthy(interp, &__t1980)? { { let v_W4738 = { let __t1927 = v_V4536.clone(); let __t1928 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1927, __t1928])? }; { let __t1979 = { let __t1929 = v_W4738.clone(); rt::is_cons(&__t1929) }; if rt::is_truthy(interp, &__t1979)? { { let v_W4739 = { let __t1931 = { let __t1930 = v_W4738.clone(); rt::hd(&__t1930)? }; let __t1932 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1931, __t1932])? }; { let __t1978 = { let __t1933 = v_W4739.clone(); let __t1934 = Value::sym(interp.intern("set")); rt::eq(&__t1933, &__t1934) }; if rt::is_truthy(interp, &__t1978)? { { let v_W4740 = { let __t1936 = { let __t1935 = v_W4738.clone(); rt::tl(&__t1935)? }; let __t1937 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1936, __t1937])? }; { let __t1977 = { let __t1938 = v_W4740.clone(); rt::is_cons(&__t1938) }; if rt::is_truthy(interp, &__t1977)? { { let v_W4741 = { let __t1939 = v_W4740.clone(); rt::hd(&__t1939)? }; { let v_W4742 = { let __t1941 = { let __t1940 = v_W4740.clone(); rt::tl(&__t1940)? }; let __t1942 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1941, __t1942])? }; { let __t1976 = { let __t1943 = v_W4742.clone(); rt::is_cons(&__t1943) }; if rt::is_truthy(interp, &__t1976)? { { let v_W4743 = { let __t1944 = v_W4742.clone(); rt::hd(&__t1944)? }; { let v_W4744 = { let __t1946 = { let __t1945 = v_W4742.clone(); rt::tl(&__t1945)? }; let __t1947 = v_V4539.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t1946, __t1947])? }; { let __t1975 = { let __t1948 = v_W4744.clone(); let __t1949 = Value::nil(); rt::eq(&__t1948, &__t1949) }; if rt::is_truthy(interp, &__t1975)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1950 = v_W4741.clone(); let __t1951 = Value::sym(interp.intern("symbol")); let __t1952 = v_V4538.clone(); let __t1953 = v_V4539.clone(); let __t1954 = v_V4540.clone(); let __t1955 = v_W4543.clone(); let __t1974 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4741 = v_W4741.clone(); let v_W4743 = v_W4743.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1960 = { let __t1956 = Value::sym(interp.intern("value")); let __t1959 = { let __t1957 = v_W4741.clone(); let __t1958 = Value::nil(); rt::cons(&__t1957, &__t1958) }; rt::cons(&__t1956, &__t1959) }; let __t1961 = v_V4537.clone(); let __t1962 = v_V4538.clone(); let __t1963 = v_V4539.clone(); let __t1964 = v_V4540.clone(); let __t1965 = v_W4543.clone(); let __t1973 = { let v_V4537 = v_V4537.clone(); let v_V4538 = v_V4538.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4743 = v_W4743.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1966 = v_W4743.clone(); let __t1967 = v_V4537.clone(); let __t1968 = v_V4538.clone(); let __t1969 = v_V4539.clone(); let __t1970 = v_V4540.clone(); let __t1971 = v_W4543.clone(); let __t1972 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1966, __t1967, __t1968, __t1969, __t1970, __t1971, __t1972])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4743], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1960, __t1961, __t1962, __t1963, __t1964, __t1965, __t1973])? }), vec![v_V4537, v_V4538, v_V4539, v_V4540, v_V4542, v_W4543, v_W4741, v_W4743], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t1950, __t1951, __t1952, __t1953, __t1954, __t1955, __t1974])? } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } }; { let __t1983 = { let __t1981 = v_W4737.clone(); let __t1982 = Value::bool(false); rt::eq(&__t1981, &__t1982) }; if match rt::is_truthy(interp, &__t1983) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4745 = { let __t2006 = { let __t1984 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t1984])? }; if rt::is_truthy(interp, &__t2006)? { { let v_W4746 = { let __t1985 = v_V4539.clone(); rt::apply_direct(interp, "shen.newpv", &[__t1985])? }; { let __t1986 = v_V4539.clone(); let __t2005 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t1987 = v_V4538.clone(); let __t1988 = v_W4746.clone(); let __t1989 = Value::bool(false); let __t1990 = v_V4539.clone(); let __t1991 = v_V4540.clone(); let __t1992 = v_W4543.clone(); let __t2004 = { let v_V4536 = v_V4536.clone(); let v_V4537 = v_V4537.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4746 = v_W4746.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1993 = v_V4539.clone(); let __t1994 = v_V4540.clone(); let __t1995 = v_W4543.clone(); let __t2003 = { let v_V4536 = v_V4536.clone(); let v_V4537 = v_V4537.clone(); let v_V4539 = v_V4539.clone(); let v_V4540 = v_V4540.clone(); let v_V4542 = v_V4542.clone(); let v_W4543 = v_W4543.clone(); let v_W4746 = v_W4746.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t1996 = v_V4536.clone(); let __t1997 = v_V4537.clone(); let __t1998 = v_W4746.clone(); let __t1999 = v_V4539.clone(); let __t2000 = v_V4540.clone(); let __t2001 = v_W4543.clone(); let __t2002 = v_V4542.clone(); rt::apply_direct(interp, "shen.system-S-h", &[__t1996, __t1997, __t1998, __t1999, __t2000, __t2001, __t2002])? }), vec![v_V4536, v_V4537, v_V4539, v_V4540, v_V4542, v_W4543, v_W4746], interp) }; rt::apply_direct(interp, "shen.cut", &[__t1993, __t1994, __t1995, __t2003])? }), vec![v_V4536, v_V4537, v_V4539, v_V4540, v_V4542, v_W4543, v_W4746], interp) }; rt::apply_direct(interp, "shen.l-rules", &[__t1987, __t1988, __t1989, __t1990, __t1991, __t1992, __t2004])? } }; rt::apply_direct(interp, "shen.gc", &[__t1986, __t2005])? } } } else { Value::bool(false) } }; { let __t2009 = { let __t2007 = v_W4745.clone(); let __t2008 = Value::bool(false); rt::eq(&__t2007, &__t2008) }; if match rt::is_truthy(interp, &__t2009) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4747 = { let __t2026 = { let __t2010 = v_V4540.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t2010])? }; if rt::is_truthy(interp, &__t2026)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2018 = { let __t2011 = v_V4536.clone(); let __t2017 = { let __t2013 = { let __t2012 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2012])? }; let __t2016 = { let __t2014 = v_V4537.clone(); let __t2015 = Value::nil(); rt::cons(&__t2014, &__t2015) }; rt::cons(&__t2013, &__t2016) }; rt::cons(&__t2011, &__t2017) }; let __t2019 = v_V4538.clone(); let __t2021 = { let __t2020 = Value::sym(interp.intern("shen.*datatypes*")); rt::apply_direct(interp, "value", &[__t2020])? }; let __t2022 = v_V4539.clone(); let __t2023 = v_V4540.clone(); let __t2024 = v_W4543.clone(); let __t2025 = v_V4542.clone(); rt::apply_direct(interp, "shen.search-user-datatypes", &[__t2018, __t2019, __t2021, __t2022, __t2023, __t2024, __t2025])? } } } else { Value::bool(false) } }; { let __t2029 = { let __t2027 = v_W4747.clone(); let __t2028 = Value::bool(false); rt::eq(&__t2027, &__t2028) }; if match rt::is_truthy(interp, &__t2029) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2030 = v_V4540.clone(); let __t2031 = v_W4543.clone(); rt::apply_direct(interp, "shen.unlock", &[__t2030, __t2031])? }); } else { break Ok(v_W4747.clone()); } } } } else { break Ok(v_W4745.clone()); } } } } else { break Ok(v_W4737.clone()); } } } } else { break Ok(v_W4729.clone()); } } } } else { break Ok(v_W4721.clone()); } } } } else { break Ok(v_W4700.clone()); } } } } else { break Ok(v_W4687.clone()); } } } } else { break Ok(v_W4657.clone()); } } } } else { break Ok(v_W4647.clone()); } } } } else { break Ok(v_W4626.clone()); } } } } else { break Ok(v_W4598.clone()); } } } } else { break Ok(v_W4577.clone()); } } } } else { break Ok(v_W4570.clone()); } } } } else { break Ok(v_W4563.clone()); } } } } else { break Ok(v_W4557.clone()); } } } } else { - break Ok(v_W4970.clone()); + break Ok(v_W4551.clone()); } } } } else { - break Ok(v_W4966.clone()); + break Ok(v_W4547.clone()); } } } } else { - break Ok(v_W4965.clone()); + break Ok(v_W4546.clone()); } } } } else { - break Ok(v_W4964.clone()); + break Ok(v_W4545.clone()); } } } } else { - break Ok(v_W4963.clone()); + break Ok(v_W4544.clone()); } } } @@ -3907,6 +3772,171 @@ fn install_shen_x2e_system_x2d_S_x2d_h(interp: &mut Interp) { interp.register_aot_direct("shen.system-S-h", aot_shen_x2e_system_x2d_S_x2d_h); } +/// AOT-compiled from KL `(defun shen.rdecons ...)` +pub fn aot_shen_x2e_rdecons(interp: &mut Interp, args: &[Value]) -> ShenResult { + if args.len() != 1 { + return Err(ShenError::new(format!( + "shen.rdecons: expected 1 args, got {}", + args.len() + ))); + } + #[allow(unused_mut)] + let mut v_V4748 = args[0].clone(); + #[allow(clippy::never_loop)] + loop { + { + let __t2072 = { + let __t2061 = { + let __t2041 = v_V4748.clone(); + rt::is_cons(&__t2041) + }; + if !rt::is_truthy(interp, &__t2061)? { + Value::bool(false) + } else { + let __t2062 = { + let __t2059 = { + let __t2042 = Value::sym(interp.intern("cons")); + let __t2044 = { + let __t2043 = v_V4748.clone(); + rt::hd(&__t2043)? + }; + rt::eq(&__t2042, &__t2044) + }; + if !rt::is_truthy(interp, &__t2059)? { + Value::bool(false) + } else { + let __t2060 = { + let __t2057 = { + let __t2046 = { + let __t2045 = v_V4748.clone(); + rt::tl(&__t2045)? + }; + rt::is_cons(&__t2046) + }; + if !rt::is_truthy(interp, &__t2057)? { + Value::bool(false) + } else { + let __t2058 = { + let __t2055 = { + let __t2049 = { + let __t2048 = { + let __t2047 = v_V4748.clone(); + rt::tl(&__t2047)? + }; + rt::tl(&__t2048)? + }; + rt::is_cons(&__t2049) + }; + if !rt::is_truthy(interp, &__t2055)? { + Value::bool(false) + } else { + let __t2056 = { + let __t2050 = Value::nil(); + let __t2054 = { + let __t2053 = { + let __t2052 = { + let __t2051 = v_V4748.clone(); + rt::tl(&__t2051)? + }; + rt::tl(&__t2052)? + }; + rt::tl(&__t2053)? + }; + rt::eq(&__t2050, &__t2054) + }; + Value::bool(rt::is_truthy(interp, &__t2056)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t2058)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t2060)?) + } + }; + Value::bool(rt::is_truthy(interp, &__t2062)?) + } + }; + if match rt::is_truthy(interp, &__t2072) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t2066 = { + let __t2065 = { + let __t2064 = { + let __t2063 = v_V4748.clone(); + rt::tl(&__t2063)? + }; + rt::hd(&__t2064)? + }; + rt::apply_direct(interp, "shen.rdecons", &[__t2065])? + }; + let __t2071 = { + let __t2070 = { + let __t2069 = { + let __t2068 = { + let __t2067 = v_V4748.clone(); + rt::tl(&__t2067)? + }; + rt::tl(&__t2068)? + }; + rt::hd(&__t2069)? + }; + rt::apply_direct(interp, "shen.rdecons", &[__t2070])? + }; + rt::cons(&__t2066, &__t2071) + }); + } else { + { + let __t2040 = { + let __t2033 = v_V4748.clone(); + rt::is_cons(&__t2033) + }; + if match rt::is_truthy(interp, &__t2040) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok({ + let __t2036 = { + let __t2035 = { + let __t2034 = v_V4748.clone(); + rt::hd(&__t2034)? + }; + rt::apply_direct(interp, "shen.rdecons", &[__t2035])? + }; + let __t2039 = { + let __t2038 = { + let __t2037 = v_V4748.clone(); + rt::tl(&__t2037)? + }; + rt::apply_direct(interp, "shen.rdecons", &[__t2038])? + }; + rt::cons(&__t2036, &__t2039) + }); + } else { + { + let __t2032 = Value::bool(true); + if match rt::is_truthy(interp, &__t2032) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(v_V4748.clone()); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } + } + } + } + } + } +} + +fn install_shen_x2e_rdecons(interp: &mut Interp) { + interp.register_native("shen.rdecons", 1, aot_shen_x2e_rdecons); + interp.register_aot_direct("shen.rdecons", aot_shen_x2e_rdecons); +} + /// AOT-compiled from KL `(defun shen.primitive ...)` pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 6 { @@ -3916,39 +3946,39 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V5167 = args[0].clone(); + let mut v_V4749 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5168 = args[1].clone(); + let mut v_V4750 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5169 = args[2].clone(); + let mut v_V4751 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5170 = args[3].clone(); + let mut v_V4752 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5171 = args[4].clone(); + let mut v_V4753 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5172 = args[5].clone(); + let mut v_V4754 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5173 = { - let __t2086 = { - let __t2066 = v_V5170.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2066])? + let v_W4755 = { + let __t2093 = { + let __t2073 = v_V4752.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2073])? }; - if rt::is_truthy(interp, &__t2086)? { + if rt::is_truthy(interp, &__t2093)? { { - let v_W5174 = { - let __t2067 = v_V5168.clone(); - let __t2068 = v_V5169.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2067, __t2068])? + let v_W4756 = { + let __t2074 = v_V4750.clone(); + let __t2075 = v_V4751.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2074, __t2075])? }; { - let v_W5175 = { - let v_V5167 = v_V5167.clone(); - let v_V5169 = v_V5169.clone(); - let v_V5170 = v_V5170.clone(); - let v_V5171 = v_V5171.clone(); - let v_V5172 = v_V5172.clone(); + let v_W4757 = { + let v_V4749 = v_V4749.clone(); + let v_V4751 = v_V4751.clone(); + let v_V4752 = v_V4752.clone(); + let v_V4753 = v_V4753.clone(); + let v_V4754 = v_V4754.clone(); rt::make_aot_closure( "", 0, @@ -3957,58 +3987,58 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2072 = { - let __t2071 = { - let __t2069 = v_V5167.clone(); - let __t2070 = v_V5169.clone(); + let __t2079 = { + let __t2078 = { + let __t2076 = v_V4749.clone(); + let __t2077 = v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2069, __t2070], + &[__t2076, __t2077], )? }; - rt::is_number(&__t2071) + rt::is_number(&__t2078) }; - let __t2073 = v_V5169.clone(); - let __t2074 = v_V5170.clone(); - let __t2075 = v_V5171.clone(); - let __t2076 = v_V5172.clone(); + let __t2080 = v_V4751.clone(); + let __t2081 = v_V4752.clone(); + let __t2082 = v_V4753.clone(); + let __t2083 = v_V4754.clone(); rt::apply_direct( interp, "when", - &[__t2072, __t2073, __t2074, __t2075, __t2076], + &[__t2079, __t2080, __t2081, __t2082, __t2083], )? } }) }, - vec![v_V5167, v_V5169, v_V5170, v_V5171, v_V5172], + vec![v_V4749, v_V4751, v_V4752, v_V4753, v_V4754], interp, ) }; { - let __t2085 = { - let __t2077 = v_W5174.clone(); - let __t2078 = Value::sym(interp.intern("number")); - rt::eq(&__t2077, &__t2078) + let __t2092 = { + let __t2084 = v_W4756.clone(); + let __t2085 = Value::sym(interp.intern("number")); + rt::eq(&__t2084, &__t2085) }; - if rt::is_truthy(interp, &__t2085)? { - rt::apply_value(interp, v_W5175.clone(), &[])? + if rt::is_truthy(interp, &__t2092)? { + rt::apply_value(interp, v_W4757.clone(), &[])? } else { { - let __t2084 = { - let __t2079 = v_W5174.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t2079])? + let __t2091 = { + let __t2086 = v_W4756.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t2086])? }; - if rt::is_truthy(interp, &__t2084)? { + if rt::is_truthy(interp, &__t2091)? { { - let __t2080 = v_W5174.clone(); - let __t2081 = Value::sym(interp.intern("number")); - let __t2082 = v_V5169.clone(); - let __t2083 = v_W5175.clone(); + let __t2087 = v_W4756.clone(); + let __t2088 = Value::sym(interp.intern("number")); + let __t2089 = v_V4751.clone(); + let __t2090 = v_W4757.clone(); rt::apply_direct( interp, "shen.bind!", - &[__t2080, __t2081, __t2082, __t2083], + &[__t2087, __t2088, __t2089, __t2090], )? } } else { @@ -4024,39 +4054,39 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult } }; { - let __t2089 = { - let __t2087 = v_W5173.clone(); - let __t2088 = Value::bool(false); - rt::eq(&__t2087, &__t2088) + let __t2096 = { + let __t2094 = v_W4755.clone(); + let __t2095 = Value::bool(false); + rt::eq(&__t2094, &__t2095) }; - if match rt::is_truthy(interp, &__t2089) { + if match rt::is_truthy(interp, &__t2096) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5176 = { - let __t2110 = { - let __t2090 = v_V5170.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2090])? + let v_W4758 = { + let __t2117 = { + let __t2097 = v_V4752.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2097])? }; - if rt::is_truthy(interp, &__t2110)? { + if rt::is_truthy(interp, &__t2117)? { { - let v_W5177 = { - let __t2091 = v_V5168.clone(); - let __t2092 = v_V5169.clone(); + let v_W4759 = { + let __t2098 = v_V4750.clone(); + let __t2099 = v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2091, __t2092], + &[__t2098, __t2099], )? }; { - let v_W5178 = { - let v_V5167 = v_V5167.clone(); - let v_V5169 = v_V5169.clone(); - let v_V5170 = v_V5170.clone(); - let v_V5171 = v_V5171.clone(); - let v_V5172 = v_V5172.clone(); + let v_W4760 = { + let v_V4749 = v_V4749.clone(); + let v_V4751 = v_V4751.clone(); + let v_V4752 = v_V4752.clone(); + let v_V4753 = v_V4753.clone(); + let v_V4754 = v_V4754.clone(); rt::make_aot_closure( "", 0, @@ -4070,73 +4100,73 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult )? }; { - let __t2096 = { - let __t2095 = { - let __t2093 = v_V5167.clone(); - let __t2094 = v_V5169.clone(); + let __t2103 = { + let __t2102 = { + let __t2100 = v_V4749.clone(); + let __t2101 = v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2093, __t2094], + &[__t2100, __t2101], )? }; rt::apply_direct( interp, "boolean?", - &[__t2095], + &[__t2102], )? }; - let __t2097 = v_V5169.clone(); - let __t2098 = v_V5170.clone(); - let __t2099 = v_V5171.clone(); - let __t2100 = v_V5172.clone(); + let __t2104 = v_V4751.clone(); + let __t2105 = v_V4752.clone(); + let __t2106 = v_V4753.clone(); + let __t2107 = v_V4754.clone(); rt::apply_direct( interp, "when", &[ - __t2096, __t2097, __t2098, - __t2099, __t2100, + __t2103, __t2104, __t2105, + __t2106, __t2107, ], )? } }) }, - vec![v_V5167, v_V5169, v_V5170, v_V5171, v_V5172], + vec![v_V4749, v_V4751, v_V4752, v_V4753, v_V4754], interp, ) }; { - let __t2109 = { - let __t2101 = v_W5177.clone(); - let __t2102 = Value::sym(interp.intern("boolean")); - rt::eq(&__t2101, &__t2102) + let __t2116 = { + let __t2108 = v_W4759.clone(); + let __t2109 = Value::sym(interp.intern("boolean")); + rt::eq(&__t2108, &__t2109) }; - if rt::is_truthy(interp, &__t2109)? { - rt::apply_value(interp, v_W5178.clone(), &[])? + if rt::is_truthy(interp, &__t2116)? { + rt::apply_value(interp, v_W4760.clone(), &[])? } else { { - let __t2108 = { - let __t2103 = v_W5177.clone(); + let __t2115 = { + let __t2110 = v_W4759.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t2103], + &[__t2110], )? }; - if rt::is_truthy(interp, &__t2108)? { + if rt::is_truthy(interp, &__t2115)? { { - let __t2104 = v_W5177.clone(); - let __t2105 = Value::sym( + let __t2111 = v_W4759.clone(); + let __t2112 = Value::sym( interp.intern("boolean"), ); - let __t2106 = v_V5169.clone(); - let __t2107 = v_W5178.clone(); + let __t2113 = v_V4751.clone(); + let __t2114 = v_W4760.clone(); rt::apply_direct( interp, "shen.bind!", &[ - __t2104, __t2105, __t2106, - __t2107, + __t2111, __t2112, __t2113, + __t2114, ], )? } @@ -4153,39 +4183,39 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult } }; { - let __t2113 = { - let __t2111 = v_W5176.clone(); - let __t2112 = Value::bool(false); - rt::eq(&__t2111, &__t2112) + let __t2120 = { + let __t2118 = v_W4758.clone(); + let __t2119 = Value::bool(false); + rt::eq(&__t2118, &__t2119) }; - if match rt::is_truthy(interp, &__t2113) { + if match rt::is_truthy(interp, &__t2120) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5179 = { - let __t2134 = { - let __t2114 = v_V5170.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2114])? + let v_W4761 = { + let __t2141 = { + let __t2121 = v_V4752.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2121])? }; - if rt::is_truthy(interp, &__t2134)? { + if rt::is_truthy(interp, &__t2141)? { { - let v_W5180 = { - let __t2115 = v_V5168.clone(); - let __t2116 = v_V5169.clone(); + let v_W4762 = { + let __t2122 = v_V4750.clone(); + let __t2123 = v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2115, __t2116], + &[__t2122, __t2123], )? }; { - let v_W5181 = { - let v_V5167 = v_V5167.clone(); - let v_V5169 = v_V5169.clone(); - let v_V5170 = v_V5170.clone(); - let v_V5171 = v_V5171.clone(); - let v_V5172 = v_V5172.clone(); + let v_W4763 = { + let v_V4749 = v_V4749.clone(); + let v_V4751 = v_V4751.clone(); + let v_V4752 = v_V4752.clone(); + let v_V4753 = v_V4753.clone(); + let v_V4754 = v_V4754.clone(); rt::make_aot_closure( "", 0, @@ -4199,84 +4229,84 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult )? }; { - let __t2120 = { - let __t2119 = { - let __t2117 = - v_V5167.clone(); - let __t2118 = - v_V5169.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2117, __t2118])? + let __t2127 = { + let __t2126 = { + let __t2124 = + v_V4749.clone(); + let __t2125 = + v_V4751.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2124, __t2125])? }; - rt::is_string(&__t2119) + rt::is_string(&__t2126) }; - let __t2121 = - v_V5169.clone(); - let __t2122 = - v_V5170.clone(); - let __t2123 = - v_V5171.clone(); - let __t2124 = - v_V5172.clone(); + let __t2128 = + v_V4751.clone(); + let __t2129 = + v_V4752.clone(); + let __t2130 = + v_V4753.clone(); + let __t2131 = + v_V4754.clone(); rt::apply_direct( interp, "when", &[ - __t2120, __t2121, - __t2122, __t2123, - __t2124, + __t2127, __t2128, + __t2129, __t2130, + __t2131, ], )? } }) }, vec![ - v_V5167, v_V5169, v_V5170, v_V5171, - v_V5172, + v_V4749, v_V4751, v_V4752, v_V4753, + v_V4754, ], interp, ) }; { - let __t2133 = { - let __t2125 = v_W5180.clone(); - let __t2126 = + let __t2140 = { + let __t2132 = v_W4762.clone(); + let __t2133 = Value::sym(interp.intern("string")); - rt::eq(&__t2125, &__t2126) + rt::eq(&__t2132, &__t2133) }; - if rt::is_truthy(interp, &__t2133)? { + if rt::is_truthy(interp, &__t2140)? { rt::apply_value( interp, - v_W5181.clone(), + v_W4763.clone(), &[], )? } else { { - let __t2132 = { - let __t2127 = v_W5180.clone(); + let __t2139 = { + let __t2134 = v_W4762.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t2127], + &[__t2134], )? }; - if rt::is_truthy(interp, &__t2132)? + if rt::is_truthy(interp, &__t2139)? { { - let __t2128 = - v_W5180.clone(); - let __t2129 = Value::sym( + let __t2135 = + v_W4762.clone(); + let __t2136 = Value::sym( interp.intern("string"), ); - let __t2130 = - v_V5169.clone(); - let __t2131 = - v_W5181.clone(); + let __t2137 = + v_V4751.clone(); + let __t2138 = + v_W4763.clone(); rt::apply_direct( interp, "shen.bind!", &[ - __t2128, __t2129, - __t2130, __t2131, + __t2135, __t2136, + __t2137, __t2138, ], )? } @@ -4293,43 +4323,43 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult } }; { - let __t2137 = { - let __t2135 = v_W5179.clone(); - let __t2136 = Value::bool(false); - rt::eq(&__t2135, &__t2136) + let __t2144 = { + let __t2142 = v_W4761.clone(); + let __t2143 = Value::bool(false); + rt::eq(&__t2142, &__t2143) }; - if match rt::is_truthy(interp, &__t2137) { + if match rt::is_truthy(interp, &__t2144) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5182 = { - let __t2158 = { - let __t2138 = v_V5170.clone(); + let v_W4764 = { + let __t2165 = { + let __t2145 = v_V4752.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t2138], + &[__t2145], )? }; - if rt::is_truthy(interp, &__t2158)? { + if rt::is_truthy(interp, &__t2165)? { { - let v_W5183 = { - let __t2139 = v_V5168.clone(); - let __t2140 = v_V5169.clone(); + let v_W4765 = { + let __t2146 = v_V4750.clone(); + let __t2147 = v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2139, __t2140], + &[__t2146, __t2147], )? }; { - let v_W5184 = { - let v_V5167 = v_V5167.clone(); - let v_V5169 = v_V5169.clone(); - let v_V5170 = v_V5170.clone(); - let v_V5171 = v_V5171.clone(); - let v_V5172 = v_V5172.clone(); + let v_W4766 = { + let v_V4749 = v_V4749.clone(); + let v_V4751 = v_V4751.clone(); + let v_V4752 = v_V4752.clone(); + let v_V4753 = v_V4753.clone(); + let v_V4754 = v_V4754.clone(); rt::make_aot_closure( "", 0, @@ -4339,88 +4369,88 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2144 = { - let __t2143 = { - let __t2141 = v_V5167.clone(); - let __t2142 = v_V5169.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2141, __t2142])? + let __t2151 = { + let __t2150 = { + let __t2148 = v_V4749.clone(); + let __t2149 = v_V4751.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2148, __t2149])? }; - rt::is_symbol(&__t2143) + rt::is_symbol(&__t2150) }; - let __t2145 = - v_V5169 + let __t2152 = + v_V4751 .clone( ); - let __t2146 = - v_V5170 + let __t2153 = + v_V4752 .clone( ); - let __t2147 = - v_V5171 + let __t2154 = + v_V4753 .clone( ); - let __t2148 = - v_V5172 + let __t2155 = + v_V4754 .clone( ); - rt::apply_direct(interp, "when", &[__t2144, __t2145, __t2146, __t2147, __t2148])? + rt::apply_direct(interp, "when", &[__t2151, __t2152, __t2153, __t2154, __t2155])? } }) }, vec![ - v_V5167, v_V5169, - v_V5170, v_V5171, - v_V5172, + v_V4749, v_V4751, + v_V4752, v_V4753, + v_V4754, ], interp, ) }; { - let __t2157 = { - let __t2149 = - v_W5183.clone(); - let __t2150 = Value::sym( + let __t2164 = { + let __t2156 = + v_W4765.clone(); + let __t2157 = Value::sym( interp.intern("symbol"), ); - rt::eq(&__t2149, &__t2150) + rt::eq(&__t2156, &__t2157) }; if rt::is_truthy( - interp, &__t2157, + interp, &__t2164, )? { rt::apply_value( interp, - v_W5184.clone(), + v_W4766.clone(), &[], )? } else { { - let __t2156 = { - let __t2151 = - v_W5183.clone(); + let __t2163 = { + let __t2158 = + v_W4765.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t2151], + &[__t2158], )? }; if rt::is_truthy( - interp, &__t2156, + interp, &__t2163, )? { { - let __t2152 = - v_W5183 + let __t2159 = + v_W4765 .clone( ); - let __t2153 = Value::sym(interp.intern("symbol")); - let __t2154 = - v_V5169 + let __t2160 = Value::sym(interp.intern("symbol")); + let __t2161 = + v_V4751 .clone( ); - let __t2155 = - v_W5184 + let __t2162 = + v_W4766 .clone( ); - rt::apply_direct(interp, "shen.bind!", &[__t2152, __t2153, __t2154, __t2155])? + rt::apply_direct(interp, "shen.bind!", &[__t2159, __t2160, __t2161, __t2162])? } } else { Value::bool(false) @@ -4435,80 +4465,80 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult } }; { - let __t2161 = { - let __t2159 = v_W5182.clone(); - let __t2160 = Value::bool(false); - rt::eq(&__t2159, &__t2160) + let __t2168 = { + let __t2166 = v_W4764.clone(); + let __t2167 = Value::bool(false); + rt::eq(&__t2166, &__t2167) }; - if match rt::is_truthy(interp, &__t2161) { + if match rt::is_truthy(interp, &__t2168) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2163 = { - let __t2162 = v_V5170.clone(); + let __t2170 = { + let __t2169 = v_V4752.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t2162], + &[__t2169], )? }; - if match rt::is_truthy(interp, &__t2163) + if match rt::is_truthy(interp, &__t2170) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5185 = { - let __t2164 = - v_V5167.clone(); - let __t2165 = - v_V5169.clone(); + let v_W4767 = { + let __t2171 = + v_V4749.clone(); + let __t2172 = + v_V4751.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2164, __t2165], + &[__t2171, __t2172], )? }; { - let __t2168 = { - let __t2166 = - v_W5185.clone(); - let __t2167 = + let __t2175 = { + let __t2173 = + v_W4767.clone(); + let __t2174 = Value::nil(); rt::eq( - &__t2166, &__t2167, + &__t2173, &__t2174, ) }; if match rt::is_truthy( - interp, &__t2168, + interp, &__t2175, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5186 = { - let __t2169 = - v_V5168 + let v_W4768 = { + let __t2176 = + v_V4750 .clone( ); - let __t2170 = - v_V5169 + let __t2177 = + v_V4751 .clone( ); - rt::apply_direct(interp, "shen.lazyderef", &[__t2169, __t2170])? + rt::apply_direct(interp, "shen.lazyderef", &[__t2176, __t2177])? }; { - let v_W5187 = { - let v_V5172 = v_V5172.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z5188 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; rt::apply_value(interp, v_V5172.clone(), &[])? }) }, vec![v_V5172], interp) + let v_W4769 = { + let v_V4754 = v_V4754.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z4770 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; rt::apply_value(interp, v_V4754.clone(), &[])? }) }, vec![v_V4754], interp) }; { - let __t2172 = { - let __t2171 = v_W5186.clone(); - rt::is_cons(&__t2171) + let __t2179 = { + let __t2178 = v_W4768.clone(); + rt::is_cons(&__t2178) }; - if match rt::is_truthy(interp, &__t2172) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5189 = { let __t2174 = { let __t2173 = v_W5186.clone(); rt::hd(&__t2173)? }; let __t2175 = v_V5169.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2174, __t2175])? }; { let v_W5190 = { let v_V5169 = v_V5169.clone(); let v_W5186 = v_W5186.clone(); let v_W5187 = v_W5187.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W5191 = { let __t2177 = { let __t2176 = v_W5186.clone(); rt::tl(&__t2176)? }; let __t2178 = v_V5169.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2177, __t2178])? }; { let v_W5192 = { let v_W5187 = v_W5187.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5193 = args[0].clone(); Ok({ let __t2179 = v_Z5193.clone(); rt::apply_value(interp, v_W5187.clone(), &[__t2179])? }) }, vec![v_W5187], interp) }; { let __t2207 = { let __t2180 = v_W5191.clone(); rt::is_cons(&__t2180) }; if rt::is_truthy(interp, &__t2207)? { { let v_W5194 = { let __t2181 = v_W5191.clone(); rt::hd(&__t2181)? }; { let v_W5195 = { let __t2183 = { let __t2182 = v_W5191.clone(); rt::tl(&__t2182)? }; let __t2184 = v_V5169.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2183, __t2184])? }; { let v_W5196 = { let v_W5192 = v_W5192.clone(); let v_W5194 = v_W5194.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2185 = v_W5194.clone(); rt::apply_value(interp, v_W5192.clone(), &[__t2185])? }), vec![v_W5192, v_W5194], interp) }; { let __t2194 = { let __t2186 = v_W5195.clone(); let __t2187 = Value::nil(); rt::eq(&__t2186, &__t2187) }; if rt::is_truthy(interp, &__t2194)? { rt::apply_value(interp, v_W5196.clone(), &[])? } else { { let __t2193 = { let __t2188 = v_W5195.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2188])? }; if rt::is_truthy(interp, &__t2193)? { { let __t2189 = v_W5195.clone(); let __t2190 = Value::nil(); let __t2191 = v_V5169.clone(); let __t2192 = v_W5196.clone(); rt::apply_direct(interp, "shen.bind!", &[__t2189, __t2190, __t2191, __t2192])? } } else { Value::bool(false) } } } } } } } } else { { let __t2206 = { let __t2195 = v_W5191.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2195])? }; if rt::is_truthy(interp, &__t2206)? { { let v_W5197 = { let __t2196 = v_V5169.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2196])? }; { let __t2197 = v_V5169.clone(); let __t2205 = { let __t2198 = v_W5191.clone(); let __t2201 = { let __t2199 = v_W5197.clone(); let __t2200 = Value::nil(); rt::cons(&__t2199, &__t2200) }; let __t2202 = v_V5169.clone(); let __t2204 = { let v_W5192 = v_W5192.clone(); let v_W5197 = v_W5197.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2203 = v_W5197.clone(); rt::apply_value(interp, v_W5192.clone(), &[__t2203])? }), vec![v_W5192, v_W5197], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2198, __t2201, __t2202, __t2204])? }; rt::apply_direct(interp, "shen.gc", &[__t2197, __t2205])? } } } else { Value::bool(false) } } } } } }), vec![v_V5169, v_W5186, v_W5187], interp) }; { let __t2210 = { let __t2208 = v_W5189.clone(); let __t2209 = Value::sym(interp.intern("list")); rt::eq(&__t2208, &__t2209) }; if match rt::is_truthy(interp, &__t2210) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W5190.clone(), &[])?); } else { { let __t2212 = { let __t2211 = v_W5189.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2211])? }; if match rt::is_truthy(interp, &__t2212) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2213 = v_W5189.clone(); let __t2214 = Value::sym(interp.intern("list")); let __t2215 = v_V5169.clone(); let __t2216 = v_W5190.clone(); rt::apply_direct(interp, "shen.bind!", &[__t2213, __t2214, __t2215, __t2216])? }); } else { break Ok(Value::bool(false)); } } } } } } } else { { let __t2218 = { let __t2217 = v_W5186.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2217])? }; if match rt::is_truthy(interp, &__t2218) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5198 = { let __t2219 = v_V5169.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2219])? }; break Ok({ let __t2220 = v_V5169.clone(); let __t2230 = { let __t2221 = v_W5186.clone(); let __t2226 = { let __t2222 = Value::sym(interp.intern("list")); let __t2225 = { let __t2223 = v_W5198.clone(); let __t2224 = Value::nil(); rt::cons(&__t2223, &__t2224) }; rt::cons(&__t2222, &__t2225) }; let __t2227 = v_V5169.clone(); let __t2229 = { let v_W5187 = v_W5187.clone(); let v_W5198 = v_W5198.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2228 = v_W5198.clone(); rt::apply_value(interp, v_W5187.clone(), &[__t2228])? }), vec![v_W5187, v_W5198], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2221, __t2226, __t2227, __t2229])? }; rt::apply_direct(interp, "shen.gc", &[__t2220, __t2230])? }); } } else { break Ok(Value::bool(false)); } } } + if match rt::is_truthy(interp, &__t2179) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4771 = { let __t2181 = { let __t2180 = v_W4768.clone(); rt::hd(&__t2180)? }; let __t2182 = v_V4751.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2181, __t2182])? }; { let v_W4772 = { let v_V4751 = v_V4751.clone(); let v_W4768 = v_W4768.clone(); let v_W4769 = v_W4769.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let v_W4773 = { let __t2184 = { let __t2183 = v_W4768.clone(); rt::tl(&__t2183)? }; let __t2185 = v_V4751.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2184, __t2185])? }; { let v_W4774 = { let v_W4769 = v_W4769.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4775 = args[0].clone(); Ok({ let __t2186 = v_Z4775.clone(); rt::apply_value(interp, v_W4769.clone(), &[__t2186])? }) }, vec![v_W4769], interp) }; { let __t2214 = { let __t2187 = v_W4773.clone(); rt::is_cons(&__t2187) }; if rt::is_truthy(interp, &__t2214)? { { let v_W4776 = { let __t2188 = v_W4773.clone(); rt::hd(&__t2188)? }; { let v_W4777 = { let __t2190 = { let __t2189 = v_W4773.clone(); rt::tl(&__t2189)? }; let __t2191 = v_V4751.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2190, __t2191])? }; { let v_W4778 = { let v_W4774 = v_W4774.clone(); let v_W4776 = v_W4776.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2192 = v_W4776.clone(); rt::apply_value(interp, v_W4774.clone(), &[__t2192])? }), vec![v_W4774, v_W4776], interp) }; { let __t2201 = { let __t2193 = v_W4777.clone(); let __t2194 = Value::nil(); rt::eq(&__t2193, &__t2194) }; if rt::is_truthy(interp, &__t2201)? { rt::apply_value(interp, v_W4778.clone(), &[])? } else { { let __t2200 = { let __t2195 = v_W4777.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2195])? }; if rt::is_truthy(interp, &__t2200)? { { let __t2196 = v_W4777.clone(); let __t2197 = Value::nil(); let __t2198 = v_V4751.clone(); let __t2199 = v_W4778.clone(); rt::apply_direct(interp, "shen.bind!", &[__t2196, __t2197, __t2198, __t2199])? } } else { Value::bool(false) } } } } } } } } else { { let __t2213 = { let __t2202 = v_W4773.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2202])? }; if rt::is_truthy(interp, &__t2213)? { { let v_W4779 = { let __t2203 = v_V4751.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2203])? }; { let __t2204 = v_V4751.clone(); let __t2212 = { let __t2205 = v_W4773.clone(); let __t2208 = { let __t2206 = v_W4779.clone(); let __t2207 = Value::nil(); rt::cons(&__t2206, &__t2207) }; let __t2209 = v_V4751.clone(); let __t2211 = { let v_W4774 = v_W4774.clone(); let v_W4779 = v_W4779.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2210 = v_W4779.clone(); rt::apply_value(interp, v_W4774.clone(), &[__t2210])? }), vec![v_W4774, v_W4779], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2205, __t2208, __t2209, __t2211])? }; rt::apply_direct(interp, "shen.gc", &[__t2204, __t2212])? } } } else { Value::bool(false) } } } } } }), vec![v_V4751, v_W4768, v_W4769], interp) }; { let __t2217 = { let __t2215 = v_W4771.clone(); let __t2216 = Value::sym(interp.intern("list")); rt::eq(&__t2215, &__t2216) }; if match rt::is_truthy(interp, &__t2217) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W4772.clone(), &[])?); } else { { let __t2219 = { let __t2218 = v_W4771.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2218])? }; if match rt::is_truthy(interp, &__t2219) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2220 = v_W4771.clone(); let __t2221 = Value::sym(interp.intern("list")); let __t2222 = v_V4751.clone(); let __t2223 = v_W4772.clone(); rt::apply_direct(interp, "shen.bind!", &[__t2220, __t2221, __t2222, __t2223])? }); } else { break Ok(Value::bool(false)); } } } } } } } else { { let __t2225 = { let __t2224 = v_W4768.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2224])? }; if match rt::is_truthy(interp, &__t2225) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W4780 = { let __t2226 = v_V4751.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2226])? }; break Ok({ let __t2227 = v_V4751.clone(); let __t2237 = { let __t2228 = v_W4768.clone(); let __t2233 = { let __t2229 = Value::sym(interp.intern("list")); let __t2232 = { let __t2230 = v_W4780.clone(); let __t2231 = Value::nil(); rt::cons(&__t2230, &__t2231) }; rt::cons(&__t2229, &__t2232) }; let __t2234 = v_V4751.clone(); let __t2236 = { let v_W4769 = v_W4769.clone(); let v_W4780 = v_W4780.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2235 = v_W4780.clone(); rt::apply_value(interp, v_W4769.clone(), &[__t2235])? }), vec![v_W4769, v_W4780], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2228, __t2233, __t2234, __t2236])? }; rt::apply_direct(interp, "shen.gc", &[__t2227, __t2237])? }); } } else { break Ok(Value::bool(false)); } } } } } } @@ -4524,22 +4554,22 @@ pub fn aot_shen_x2e_primitive(interp: &mut Interp, args: &[Value]) -> ShenResult } } } else { - break Ok(v_W5182.clone()); + break Ok(v_W4764.clone()); } } } } else { - break Ok(v_W5179.clone()); + break Ok(v_W4761.clone()); } } } } else { - break Ok(v_W5176.clone()); + break Ok(v_W4758.clone()); } } } } else { - break Ok(v_W5173.clone()); + break Ok(v_W4755.clone()); } } } @@ -4560,138 +4590,138 @@ pub fn aot_shen_x2e_by_x2d_hypothesis(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V5199 = args[0].clone(); + let mut v_V4781 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5200 = args[1].clone(); + let mut v_V4782 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5201 = args[2].clone(); + let mut v_V4783 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5202 = args[3].clone(); + let mut v_V4784 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5203 = args[4].clone(); + let mut v_V4785 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5204 = args[5].clone(); + let mut v_V4786 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5205 = args[6].clone(); + let mut v_V4787 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5206 = { - let __t2287 = { - let __t2231 = v_V5203.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2231])? + let v_W4788 = { + let __t2294 = { + let __t2238 = v_V4785.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2238])? }; - if rt::is_truthy(interp, &__t2287)? { + if rt::is_truthy(interp, &__t2294)? { { - let v_W5207 = { - let __t2232 = v_V5201.clone(); - let __t2233 = v_V5202.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2232, __t2233])? + let v_W4789 = { + let __t2239 = v_V4783.clone(); + let __t2240 = v_V4784.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2239, __t2240])? }; { - let __t2286 = { - let __t2234 = v_W5207.clone(); - rt::is_cons(&__t2234) + let __t2293 = { + let __t2241 = v_W4789.clone(); + rt::is_cons(&__t2241) }; - if rt::is_truthy(interp, &__t2286)? { + if rt::is_truthy(interp, &__t2293)? { { - let v_W5208 = { - let __t2236 = { - let __t2235 = v_W5207.clone(); - rt::hd(&__t2235)? + let v_W4790 = { + let __t2243 = { + let __t2242 = v_W4789.clone(); + rt::hd(&__t2242)? }; - let __t2237 = v_V5202.clone(); + let __t2244 = v_V4784.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2236, __t2237], + &[__t2243, __t2244], )? }; { - let __t2285 = { - let __t2238 = v_W5208.clone(); - rt::is_cons(&__t2238) + let __t2292 = { + let __t2245 = v_W4790.clone(); + rt::is_cons(&__t2245) }; - if rt::is_truthy(interp, &__t2285)? { + if rt::is_truthy(interp, &__t2292)? { { - let v_W5209 = { - let __t2239 = v_W5208.clone(); - rt::hd(&__t2239)? + let v_W4791 = { + let __t2246 = v_W4790.clone(); + rt::hd(&__t2246)? }; { - let v_W5210 = { - let __t2241 = { - let __t2240 = v_W5208.clone(); - rt::tl(&__t2240)? + let v_W4792 = { + let __t2248 = { + let __t2247 = v_W4790.clone(); + rt::tl(&__t2247)? }; - let __t2242 = v_V5202.clone(); + let __t2249 = v_V4784.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2241, __t2242], + &[__t2248, __t2249], )? }; { - let __t2284 = { - let __t2243 = v_W5210.clone(); - rt::is_cons(&__t2243) + let __t2291 = { + let __t2250 = v_W4792.clone(); + rt::is_cons(&__t2250) }; - if rt::is_truthy(interp, &__t2284)? { + if rt::is_truthy(interp, &__t2291)? { { - let v_W5211 = { - let __t2244 = v_W5210.clone(); - rt::hd(&__t2244)? + let v_W4793 = { + let __t2251 = v_W4792.clone(); + rt::hd(&__t2251)? }; { - let v_W5212 = { - let __t2246 = { - let __t2245 = - v_W5210.clone(); - rt::tl(&__t2245)? + let v_W4794 = { + let __t2253 = { + let __t2252 = + v_W4792.clone(); + rt::tl(&__t2252)? }; - let __t2247 = - v_V5202.clone(); + let __t2254 = + v_V4784.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2246, __t2247], + &[__t2253, __t2254], )? }; { - let __t2283 = { - let __t2248 = - v_W5212.clone(); - rt::is_cons(&__t2248) + let __t2290 = { + let __t2255 = + v_W4794.clone(); + rt::is_cons(&__t2255) }; if rt::is_truthy( - interp, &__t2283, + interp, &__t2290, )? { { - let v_W5213 = { - let __t2249 = - v_W5212 + let v_W4795 = { + let __t2256 = + v_W4794 .clone( ); rt::hd( - &__t2249, + &__t2256, )? }; { - let v_W5214 = { - let __t2251 = { - let __t2250 = v_W5212.clone(); - rt::tl(&__t2250)? + let v_W4796 = { + let __t2258 = { + let __t2257 = v_W4794.clone(); + rt::tl(&__t2257)? }; - let __t2252 = v_V5202.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2251, __t2252])? + let __t2259 = v_V4784.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2258, __t2259])? }; { - let __t2282 = { - let __t2253 = v_W5214.clone(); - let __t2254 = Value::nil(); - rt::eq(&__t2253, &__t2254) + let __t2289 = { + let __t2260 = v_W4796.clone(); + let __t2261 = Value::nil(); + rt::eq(&__t2260, &__t2261) }; - if rt::is_truthy(interp, &__t2282)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2260 = { let __t2257 = { let __t2255 = v_W5211.clone(); let __t2256 = v_V5202.clone(); rt::apply_direct(interp, "shen.deref", &[__t2255, __t2256])? }; let __t2259 = { let __t2258 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2258])? }; rt::eq(&__t2257, &__t2259) }; let __t2261 = v_V5202.clone(); let __t2262 = v_V5203.clone(); let __t2263 = v_V5204.clone(); let __t2281 = { let v_V5199 = v_V5199.clone(); let v_V5200 = v_V5200.clone(); let v_V5202 = v_V5202.clone(); let v_V5203 = v_V5203.clone(); let v_V5204 = v_V5204.clone(); let v_V5205 = v_V5205.clone(); let v_W5209 = v_W5209.clone(); let v_W5213 = v_W5213.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2270 = { let __t2266 = { let __t2264 = v_V5199.clone(); let __t2265 = v_V5202.clone(); rt::apply_direct(interp, "shen.deref", &[__t2264, __t2265])? }; let __t2269 = { let __t2267 = v_W5209.clone(); let __t2268 = v_V5202.clone(); rt::apply_direct(interp, "shen.deref", &[__t2267, __t2268])? }; rt::eq(&__t2266, &__t2269) }; let __t2271 = v_V5202.clone(); let __t2272 = v_V5203.clone(); let __t2273 = v_V5204.clone(); let __t2280 = { let v_V5200 = v_V5200.clone(); let v_V5202 = v_V5202.clone(); let v_V5203 = v_V5203.clone(); let v_V5204 = v_V5204.clone(); let v_V5205 = v_V5205.clone(); let v_W5213 = v_W5213.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2274 = v_V5200.clone(); let __t2275 = v_W5213.clone(); let __t2276 = v_V5202.clone(); let __t2277 = v_V5203.clone(); let __t2278 = v_V5204.clone(); let __t2279 = v_V5205.clone(); rt::apply_direct(interp, "is!", &[__t2274, __t2275, __t2276, __t2277, __t2278, __t2279])? }), vec![v_V5200, v_V5202, v_V5203, v_V5204, v_V5205, v_W5213], interp) }; rt::apply_direct(interp, "when", &[__t2270, __t2271, __t2272, __t2273, __t2280])? }), vec![v_V5199, v_V5200, v_V5202, v_V5203, v_V5204, v_V5205, v_W5209, v_W5213], interp) }; rt::apply_direct(interp, "when", &[__t2260, __t2261, __t2262, __t2263, __t2281])? } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2289)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2267 = { let __t2264 = { let __t2262 = v_W4793.clone(); let __t2263 = v_V4784.clone(); rt::apply_direct(interp, "shen.deref", &[__t2262, __t2263])? }; let __t2266 = { let __t2265 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2265])? }; rt::eq(&__t2264, &__t2266) }; let __t2268 = v_V4784.clone(); let __t2269 = v_V4785.clone(); let __t2270 = v_V4786.clone(); let __t2288 = { let v_V4781 = v_V4781.clone(); let v_V4782 = v_V4782.clone(); let v_V4784 = v_V4784.clone(); let v_V4785 = v_V4785.clone(); let v_V4786 = v_V4786.clone(); let v_V4787 = v_V4787.clone(); let v_W4791 = v_W4791.clone(); let v_W4795 = v_W4795.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2277 = { let __t2273 = { let __t2271 = v_V4781.clone(); let __t2272 = v_V4784.clone(); rt::apply_direct(interp, "shen.deref", &[__t2271, __t2272])? }; let __t2276 = { let __t2274 = v_W4791.clone(); let __t2275 = v_V4784.clone(); rt::apply_direct(interp, "shen.deref", &[__t2274, __t2275])? }; rt::eq(&__t2273, &__t2276) }; let __t2278 = v_V4784.clone(); let __t2279 = v_V4785.clone(); let __t2280 = v_V4786.clone(); let __t2287 = { let v_V4782 = v_V4782.clone(); let v_V4784 = v_V4784.clone(); let v_V4785 = v_V4785.clone(); let v_V4786 = v_V4786.clone(); let v_V4787 = v_V4787.clone(); let v_W4795 = v_W4795.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2281 = v_V4782.clone(); let __t2282 = v_W4795.clone(); let __t2283 = v_V4784.clone(); let __t2284 = v_V4785.clone(); let __t2285 = v_V4786.clone(); let __t2286 = v_V4787.clone(); rt::apply_direct(interp, "is!", &[__t2281, __t2282, __t2283, __t2284, __t2285, __t2286])? }), vec![v_V4782, v_V4784, v_V4785, v_V4786, v_V4787, v_W4795], interp) }; rt::apply_direct(interp, "when", &[__t2277, __t2278, __t2279, __t2280, __t2287])? }), vec![v_V4781, v_V4782, v_V4784, v_V4785, v_V4786, v_V4787, v_W4791, v_W4795], interp) }; rt::apply_direct(interp, "when", &[__t2267, __t2268, __t2269, __t2270, __t2288])? } } } else { Value::bool(false) } } } } @@ -4722,63 +4752,63 @@ pub fn aot_shen_x2e_by_x2d_hypothesis(interp: &mut Interp, args: &[Value]) -> Sh } }; { - let __t2290 = { - let __t2288 = v_W5206.clone(); - let __t2289 = Value::bool(false); - rt::eq(&__t2288, &__t2289) + let __t2297 = { + let __t2295 = v_W4788.clone(); + let __t2296 = Value::bool(false); + rt::eq(&__t2295, &__t2296) }; - if match rt::is_truthy(interp, &__t2290) { + if match rt::is_truthy(interp, &__t2297) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2292 = { - let __t2291 = v_V5203.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2291])? + let __t2299 = { + let __t2298 = v_V4785.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2298])? }; - if match rt::is_truthy(interp, &__t2292) { + if match rt::is_truthy(interp, &__t2299) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5215 = { - let __t2293 = v_V5201.clone(); - let __t2294 = v_V5202.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2293, __t2294])? + let v_W4797 = { + let __t2300 = v_V4783.clone(); + let __t2301 = v_V4784.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2300, __t2301])? }; { - let __t2296 = { - let __t2295 = v_W5215.clone(); - rt::is_cons(&__t2295) + let __t2303 = { + let __t2302 = v_W4797.clone(); + rt::is_cons(&__t2302) }; - if match rt::is_truthy(interp, &__t2296) { + if match rt::is_truthy(interp, &__t2303) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5216 = { - let __t2297 = v_W5215.clone(); - rt::tl(&__t2297)? + let v_W4798 = { + let __t2304 = v_W4797.clone(); + rt::tl(&__t2304)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2298 = v_V5199.clone(); - let __t2299 = v_V5200.clone(); - let __t2300 = v_W5216.clone(); - let __t2301 = v_V5202.clone(); - let __t2302 = v_V5203.clone(); - let __t2303 = v_V5204.clone(); - let __t2304 = v_V5205.clone(); - v_V5199 = __t2298; - v_V5200 = __t2299; - v_V5201 = __t2300; - v_V5202 = __t2301; - v_V5203 = __t2302; - v_V5204 = __t2303; - v_V5205 = __t2304; + let __t2305 = v_V4781.clone(); + let __t2306 = v_V4782.clone(); + let __t2307 = v_W4798.clone(); + let __t2308 = v_V4784.clone(); + let __t2309 = v_V4785.clone(); + let __t2310 = v_V4786.clone(); + let __t2311 = v_V4787.clone(); + v_V4781 = __t2305; + v_V4782 = __t2306; + v_V4783 = __t2307; + v_V4784 = __t2308; + v_V4785 = __t2309; + v_V4786 = __t2310; + v_V4787 = __t2311; continue; } } @@ -4793,7 +4823,7 @@ pub fn aot_shen_x2e_by_x2d_hypothesis(interp: &mut Interp, args: &[Value]) -> Sh } } } else { - break Ok(v_W5206.clone()); + break Ok(v_W4788.clone()); } } } @@ -4814,48 +4844,48 @@ pub fn aot_shen_x2e_lookupsig(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V5217 = args[0].clone(); + let mut v_V4799 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5218 = args[1].clone(); + let mut v_V4800 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5219 = args[2].clone(); + let mut v_V4801 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5220 = args[3].clone(); + let mut v_V4802 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5221 = args[4].clone(); + let mut v_V4803 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5222 = args[5].clone(); + let mut v_V4804 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let __t2306 = { - let __t2305 = v_V5220.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2305])? + let __t2313 = { + let __t2312 = v_V4802.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2312])? }; - if match rt::is_truthy(interp, &__t2306) { + if match rt::is_truthy(interp, &__t2313) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; break Ok({ - let __t2310 = { - let __t2307 = v_V5217.clone(); - let __t2309 = { - let __t2308 = Value::sym(interp.intern("shen.*sigf*")); - rt::apply_direct(interp, "value", &[__t2308])? + let __t2317 = { + let __t2314 = v_V4799.clone(); + let __t2316 = { + let __t2315 = Value::sym(interp.intern("shen.*sigf*")); + rt::apply_direct(interp, "value", &[__t2315])? }; - rt::apply_direct(interp, "assoc", &[__t2307, __t2309])? + rt::apply_direct(interp, "assoc", &[__t2314, __t2316])? }; - let __t2311 = v_V5218.clone(); - let __t2312 = v_V5219.clone(); - let __t2313 = v_V5220.clone(); - let __t2314 = v_V5221.clone(); - let __t2315 = v_V5222.clone(); + let __t2318 = v_V4800.clone(); + let __t2319 = v_V4801.clone(); + let __t2320 = v_V4802.clone(); + let __t2321 = v_V4803.clone(); + let __t2322 = v_V4804.clone(); rt::apply_direct( interp, "shen.sigf", - &[__t2310, __t2311, __t2312, __t2313, __t2314, __t2315], + &[__t2317, __t2318, __t2319, __t2320, __t2321, __t2322], )? }); } @@ -4880,56 +4910,56 @@ pub fn aot_shen_x2e_sigf(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t2327 = { - let __t2325 = { - let __t2323 = { - let __t2321 = { - let __t2319 = { - let __t2318 = v_V5237.clone(); - rt::tl(&__t2318)? + let __t2334 = { + let __t2332 = { + let __t2330 = { + let __t2328 = { + let __t2326 = { + let __t2325 = v_V4819.clone(); + rt::tl(&__t2325)? }; - let __t2320 = v_V5238.clone(); - rt::apply_value(interp, __t2319, &[__t2320])? + let __t2327 = v_V4820.clone(); + rt::apply_value(interp, __t2326, &[__t2327])? }; - let __t2322 = v_V5239.clone(); - rt::apply_value(interp, __t2321, &[__t2322])? + let __t2329 = v_V4821.clone(); + rt::apply_value(interp, __t2328, &[__t2329])? }; - let __t2324 = v_V5240.clone(); - rt::apply_value(interp, __t2323, &[__t2324])? + let __t2331 = v_V4822.clone(); + rt::apply_value(interp, __t2330, &[__t2331])? }; - let __t2326 = v_V5241.clone(); - rt::apply_value(interp, __t2325, &[__t2326])? + let __t2333 = v_V4823.clone(); + rt::apply_value(interp, __t2332, &[__t2333])? }; - let __t2328 = v_V5242.clone(); - rt::apply_value(interp, __t2327, &[__t2328])? + let __t2335 = v_V4824.clone(); + rt::apply_value(interp, __t2334, &[__t2335])? }); } else { { - let __t2316 = Value::bool(true); - if match rt::is_truthy(interp, &__t2316) { + let __t2323 = Value::bool(true); + if match rt::is_truthy(interp, &__t2323) { Ok(b) => b, Err(e) => break Err(e), } { @@ -4957,47 +4987,47 @@ pub fn aot_shen_x2e_freshterm(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V5243 = args[0].clone(); + let mut v_V4825 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5244 = { - let __t2330 = Value::int(3i64); - rt::apply_direct(interp, "absvector", &[__t2330])? + let v_W4826 = { + let __t2337 = Value::int(3i64); + rt::apply_direct(interp, "absvector", &[__t2337])? }; { - let v_W5245 = { - let __t2331 = v_W5244.clone(); - let __t2332 = Value::int(0i64); - let __t2333 = Value::sym(interp.intern("shen.print-freshterm")); - rt::apply_direct(interp, "address->", &[__t2331, __t2332, __t2333])? + let v_W4827 = { + let __t2338 = v_W4826.clone(); + let __t2339 = Value::int(0i64); + let __t2340 = Value::sym(interp.intern("shen.print-freshterm")); + rt::apply_direct(interp, "address->", &[__t2338, __t2339, __t2340])? }; { - let v_W5246 = { - let __t2334 = v_W5245.clone(); - let __t2335 = Value::int(1i64); - let __t2336 = v_V5243.clone(); - rt::apply_direct(interp, "address->", &[__t2334, __t2335, __t2336])? + let v_W4828 = { + let __t2341 = v_W4827.clone(); + let __t2342 = Value::int(1i64); + let __t2343 = v_V4825.clone(); + rt::apply_direct(interp, "address->", &[__t2341, __t2342, __t2343])? }; { - let v_W5247 = { - let __t2337 = v_W5246.clone(); - let __t2338 = Value::int(2i64); - let __t2344 = { - let __t2339 = Value::sym(interp.intern("shen.*gensym*")); - let __t2343 = { - let __t2340 = Value::int(1i64); - let __t2342 = { - let __t2341 = Value::sym(interp.intern("shen.*gensym*")); - rt::apply_direct(interp, "value", &[__t2341])? + let v_W4829 = { + let __t2344 = v_W4828.clone(); + let __t2345 = Value::int(2i64); + let __t2351 = { + let __t2346 = Value::sym(interp.intern("shen.*gensym*")); + let __t2350 = { + let __t2347 = Value::int(1i64); + let __t2349 = { + let __t2348 = Value::sym(interp.intern("shen.*gensym*")); + rt::apply_direct(interp, "value", &[__t2348])? }; - rt::add(&__t2340, &__t2342)? + rt::add(&__t2347, &__t2349)? }; - rt::apply_direct(interp, "set", &[__t2339, __t2343])? + rt::apply_direct(interp, "set", &[__t2346, __t2350])? }; - rt::apply_direct(interp, "address->", &[__t2337, __t2338, __t2344])? + rt::apply_direct(interp, "address->", &[__t2344, __t2345, __t2351])? }; - break Ok(v_W5247.clone()); + break Ok(v_W4829.clone()); } } } @@ -5019,20 +5049,22 @@ pub fn aot_shen_x2e_print_x2d_freshterm(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V5248 = args[0].clone(); + let mut v_V4830 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t2345 = Value::str("&&"); - let __t2349 = { - let __t2348 = { - let __t2346 = v_V5248.clone(); - let __t2347 = Value::int(1i64); - rt::apply_direct(interp, "<-address", &[__t2346, __t2347])? + let __t2352 = Value::str("&&"); + let __t2358 = { + let __t2355 = { + let __t2353 = v_V4830.clone(); + let __t2354 = Value::int(1i64); + rt::apply_direct(interp, "<-address", &[__t2353, __t2354])? }; - rt::apply_direct(interp, "str", &[__t2348])? + let __t2356 = Value::str(""); + let __t2357 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t2355, __t2356, __t2357])? }; - rt::apply_direct(interp, "cn", &[__t2345, __t2349])? + rt::apply_direct(interp, "cn", &[__t2352, __t2358])? }); } } @@ -5054,63 +5086,63 @@ pub fn aot_shen_x2e_search_x2d_user_x2d_datatypes( ))); } #[allow(unused_mut)] - let mut v_V5249 = args[0].clone(); + let mut v_V4831 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5250 = args[1].clone(); + let mut v_V4832 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5251 = args[2].clone(); + let mut v_V4833 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5252 = args[3].clone(); + let mut v_V4834 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5253 = args[4].clone(); + let mut v_V4835 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5254 = args[5].clone(); + let mut v_V4836 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5255 = args[6].clone(); + let mut v_V4837 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5256 = { - let __t2376 = { - let __t2350 = v_V5253.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2350])? + let v_W4838 = { + let __t2385 = { + let __t2359 = v_V4835.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2359])? }; - if rt::is_truthy(interp, &__t2376)? { + if rt::is_truthy(interp, &__t2385)? { { - let v_W5257 = { - let __t2351 = v_V5251.clone(); - let __t2352 = v_V5252.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2351, __t2352])? + let v_W4839 = { + let __t2360 = v_V4833.clone(); + let __t2361 = v_V4834.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2360, __t2361])? }; { - let __t2375 = { - let __t2353 = v_W5257.clone(); - rt::is_cons(&__t2353) + let __t2384 = { + let __t2362 = v_W4839.clone(); + rt::is_cons(&__t2362) }; - if rt::is_truthy(interp, &__t2375)? { + if rt::is_truthy(interp, &__t2384)? { { - let v_W5258 = { - let __t2355 = { - let __t2354 = v_W5257.clone(); - rt::hd(&__t2354)? + let v_W4840 = { + let __t2364 = { + let __t2363 = v_W4839.clone(); + rt::hd(&__t2363)? }; - let __t2356 = v_V5252.clone(); + let __t2365 = v_V4834.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2355, __t2356], + &[__t2364, __t2365], )? }; { - let __t2374 = { - let __t2357 = v_W5258.clone(); - rt::is_cons(&__t2357) + let __t2383 = { + let __t2366 = v_W4840.clone(); + rt::is_cons(&__t2366) }; - if rt::is_truthy(interp, &__t2374)? { + if rt::is_truthy(interp, &__t2383)? { { - let v_W5259 = { - let __t2358 = v_W5258.clone(); - rt::tl(&__t2358)? + let v_W4841 = { + let __t2367 = v_W4840.clone(); + rt::tl(&__t2367)? }; { let _ = { @@ -5121,57 +5153,57 @@ pub fn aot_shen_x2e_search_x2d_user_x2d_datatypes( )? }; { - let __t2369 = { - let __t2365 = { - let __t2361 = { - let __t2359 = v_W5259.clone(); - let __t2360 = v_V5252.clone(); + let __t2378 = { + let __t2374 = { + let __t2370 = { + let __t2368 = v_W4841.clone(); + let __t2369 = v_V4834.clone(); rt::apply_direct( interp, "shen.deref", - &[__t2359, __t2360], + &[__t2368, __t2369], )? }; - let __t2364 = { - let __t2362 = v_V5249.clone(); - let __t2363 = v_V5252.clone(); + let __t2373 = { + let __t2371 = v_V4831.clone(); + let __t2372 = v_V4834.clone(); rt::apply_direct( interp, "shen.deref", - &[__t2362, __t2363], + &[__t2371, __t2372], )? }; rt::apply_value( interp, - __t2361, - &[__t2364], + __t2370, + &[__t2373], )? }; - let __t2368 = { - let __t2366 = v_V5250.clone(); - let __t2367 = v_V5252.clone(); + let __t2377 = { + let __t2375 = v_V4832.clone(); + let __t2376 = v_V4834.clone(); rt::apply_direct( interp, "shen.deref", - &[__t2366, __t2367], + &[__t2375, __t2376], )? }; rt::apply_value( interp, - __t2365, - &[__t2368], + __t2374, + &[__t2377], )? }; - let __t2370 = v_V5252.clone(); - let __t2371 = v_V5253.clone(); - let __t2372 = v_V5254.clone(); - let __t2373 = v_V5255.clone(); + let __t2379 = v_V4834.clone(); + let __t2380 = v_V4835.clone(); + let __t2381 = v_V4836.clone(); + let __t2382 = v_V4837.clone(); rt::apply_direct( interp, "call", &[ - __t2369, __t2370, __t2371, __t2372, - __t2373, + __t2378, __t2379, __t2380, __t2381, + __t2382, ], )? } @@ -5192,63 +5224,63 @@ pub fn aot_shen_x2e_search_x2d_user_x2d_datatypes( } }; { - let __t2379 = { - let __t2377 = v_W5256.clone(); - let __t2378 = Value::bool(false); - rt::eq(&__t2377, &__t2378) + let __t2388 = { + let __t2386 = v_W4838.clone(); + let __t2387 = Value::bool(false); + rt::eq(&__t2386, &__t2387) }; - if match rt::is_truthy(interp, &__t2379) { + if match rt::is_truthy(interp, &__t2388) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t2381 = { - let __t2380 = v_V5253.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2380])? + let __t2390 = { + let __t2389 = v_V4835.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2389])? }; - if match rt::is_truthy(interp, &__t2381) { + if match rt::is_truthy(interp, &__t2390) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5260 = { - let __t2382 = v_V5251.clone(); - let __t2383 = v_V5252.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2382, __t2383])? + let v_W4842 = { + let __t2391 = v_V4833.clone(); + let __t2392 = v_V4834.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2391, __t2392])? }; { - let __t2385 = { - let __t2384 = v_W5260.clone(); - rt::is_cons(&__t2384) + let __t2394 = { + let __t2393 = v_W4842.clone(); + rt::is_cons(&__t2393) }; - if match rt::is_truthy(interp, &__t2385) { + if match rt::is_truthy(interp, &__t2394) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5261 = { - let __t2386 = v_W5260.clone(); - rt::tl(&__t2386)? + let v_W4843 = { + let __t2395 = v_W4842.clone(); + rt::tl(&__t2395)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t2387 = v_V5249.clone(); - let __t2388 = v_V5250.clone(); - let __t2389 = v_W5261.clone(); - let __t2390 = v_V5252.clone(); - let __t2391 = v_V5253.clone(); - let __t2392 = v_V5254.clone(); - let __t2393 = v_V5255.clone(); - v_V5249 = __t2387; - v_V5250 = __t2388; - v_V5251 = __t2389; - v_V5252 = __t2390; - v_V5253 = __t2391; - v_V5254 = __t2392; - v_V5255 = __t2393; + let __t2396 = v_V4831.clone(); + let __t2397 = v_V4832.clone(); + let __t2398 = v_W4843.clone(); + let __t2399 = v_V4834.clone(); + let __t2400 = v_V4835.clone(); + let __t2401 = v_V4836.clone(); + let __t2402 = v_V4837.clone(); + v_V4831 = __t2396; + v_V4832 = __t2397; + v_V4833 = __t2398; + v_V4834 = __t2399; + v_V4835 = __t2400; + v_V4836 = __t2401; + v_V4837 = __t2402; continue; } } @@ -5263,7 +5295,7 @@ pub fn aot_shen_x2e_search_x2d_user_x2d_datatypes( } } } else { - break Ok(v_W5256.clone()); + break Ok(v_W4838.clone()); } } } @@ -5291,64 +5323,64 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V5262 = args[0].clone(); + let mut v_V4844 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5263 = args[1].clone(); + let mut v_V4845 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5264 = args[2].clone(); + let mut v_V4846 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5265 = args[3].clone(); + let mut v_V4847 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5266 = args[4].clone(); + let mut v_V4848 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5267 = args[5].clone(); + let mut v_V4849 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5268 = args[6].clone(); + let mut v_V4850 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5269 = { - let __t2394 = v_V5267.clone(); - let __t2395 = Value::int(1i64); - rt::add(&__t2394, &__t2395)? + let v_W4851 = { + let __t2403 = v_V4849.clone(); + let __t2404 = Value::int(1i64); + rt::add(&__t2403, &__t2404)? }; { - let v_W5270 = { - let __t2417 = { - let __t2396 = v_V5266.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2396])? + let v_W4852 = { + let __t2426 = { + let __t2405 = v_V4848.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2405])? }; - if rt::is_truthy(interp, &__t2417)? { + if rt::is_truthy(interp, &__t2426)? { { - let v_W5271 = { - let __t2397 = v_V5262.clone(); - let __t2398 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2397, __t2398])? + let v_W4853 = { + let __t2406 = v_V4844.clone(); + let __t2407 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2406, __t2407])? }; { - let __t2416 = { - let __t2399 = v_W5271.clone(); - let __t2400 = Value::nil(); - rt::eq(&__t2399, &__t2400) + let __t2425 = { + let __t2408 = v_W4853.clone(); + let __t2409 = Value::nil(); + rt::eq(&__t2408, &__t2409) }; - if rt::is_truthy(interp, &__t2416)? { + if rt::is_truthy(interp, &__t2425)? { { - let v_W5272 = { - let __t2401 = v_V5264.clone(); - let __t2402 = v_V5265.clone(); + let v_W4854 = { + let __t2410 = v_V4846.clone(); + let __t2411 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2401, __t2402], + &[__t2410, __t2411], )? }; { - let __t2415 = { - let __t2403 = v_W5272.clone(); - let __t2404 = Value::bool(true); - rt::eq(&__t2403, &__t2404) + let __t2424 = { + let __t2412 = v_W4854.clone(); + let __t2413 = Value::bool(true); + rt::eq(&__t2412, &__t2413) }; - if rt::is_truthy(interp, &__t2415)? { + if rt::is_truthy(interp, &__t2424)? { { let _ = { rt::apply_direct( @@ -5358,45 +5390,45 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu )? }; { - let __t2405 = v_V5265.clone(); - let __t2406 = v_V5266.clone(); - let __t2407 = v_W5269.clone(); - let __t2414 = { - let v_V5263 = v_V5263.clone(); - let v_V5265 = v_V5265.clone(); - let v_V5266 = v_V5266.clone(); - let v_V5268 = v_V5268.clone(); - let v_W5269 = v_W5269.clone(); + let __t2414 = v_V4847.clone(); + let __t2415 = v_V4848.clone(); + let __t2416 = v_W4851.clone(); + let __t2423 = { + let v_V4845 = v_V4845.clone(); + let v_V4847 = v_V4847.clone(); + let v_V4848 = v_V4848.clone(); + let v_V4850 = v_V4850.clone(); + let v_W4851 = v_W4851.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t2408 = - v_V5263.clone(); - let __t2409 = Value::nil(); - let __t2410 = - v_V5265.clone(); - let __t2411 = - v_V5266.clone(); - let __t2412 = - v_W5269.clone(); - let __t2413 = - v_V5268.clone(); + let __t2417 = + v_V4845.clone(); + let __t2418 = Value::nil(); + let __t2419 = + v_V4847.clone(); + let __t2420 = + v_V4848.clone(); + let __t2421 = + v_W4851.clone(); + let __t2422 = + v_V4850.clone(); rt::apply_direct( interp, "bind", &[ - __t2408, __t2409, - __t2410, __t2411, - __t2412, __t2413, + __t2417, __t2418, + __t2419, __t2420, + __t2421, __t2422, ], )? }) }, vec![ - v_V5263, v_V5265, v_V5266, - v_V5268, v_W5269, + v_V4845, v_V4847, v_V4848, + v_V4850, v_W4851, ], interp, ) @@ -5404,7 +5436,7 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu rt::apply_direct( interp, "shen.cut", - &[__t2405, __t2406, __t2407, __t2414], + &[__t2414, __t2415, __t2416, __t2423], )? } } @@ -5423,126 +5455,126 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2420 = { - let __t2418 = v_W5270.clone(); - let __t2419 = Value::bool(false); - rt::eq(&__t2418, &__t2419) + let __t2429 = { + let __t2427 = v_W4852.clone(); + let __t2428 = Value::bool(false); + rt::eq(&__t2427, &__t2428) }; - if match rt::is_truthy(interp, &__t2420) { + if match rt::is_truthy(interp, &__t2429) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5273 = { - let __t2542 = { - let __t2421 = v_V5266.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t2421])? + let v_W4855 = { + let __t2551 = { + let __t2430 = v_V4848.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t2430])? }; - if rt::is_truthy(interp, &__t2542)? { + if rt::is_truthy(interp, &__t2551)? { { - let v_W5274 = { - let __t2422 = v_V5262.clone(); - let __t2423 = v_V5265.clone(); + let v_W4856 = { + let __t2431 = v_V4844.clone(); + let __t2432 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2422, __t2423], + &[__t2431, __t2432], )? }; { - let __t2541 = { - let __t2424 = v_W5274.clone(); - rt::is_cons(&__t2424) + let __t2550 = { + let __t2433 = v_W4856.clone(); + rt::is_cons(&__t2433) }; - if rt::is_truthy(interp, &__t2541)? { + if rt::is_truthy(interp, &__t2550)? { { - let v_W5275 = { - let __t2426 = { - let __t2425 = v_W5274.clone(); - rt::hd(&__t2425)? + let v_W4857 = { + let __t2435 = { + let __t2434 = v_W4856.clone(); + rt::hd(&__t2434)? }; - let __t2427 = v_V5265.clone(); + let __t2436 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2426, __t2427], + &[__t2435, __t2436], )? }; { - let __t2540 = { - let __t2428 = v_W5275.clone(); - rt::is_cons(&__t2428) + let __t2549 = { + let __t2437 = v_W4857.clone(); + rt::is_cons(&__t2437) }; - if rt::is_truthy(interp, &__t2540)? { + if rt::is_truthy(interp, &__t2549)? { { - let v_W5276 = { - let __t2430 = { - let __t2429 = - v_W5275.clone(); - rt::hd(&__t2429)? + let v_W4858 = { + let __t2439 = { + let __t2438 = + v_W4857.clone(); + rt::hd(&__t2438)? }; - let __t2431 = v_V5265.clone(); + let __t2440 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2430, __t2431], + &[__t2439, __t2440], )? }; { - let __t2539 = { - let __t2432 = - v_W5276.clone(); - rt::is_cons(&__t2432) + let __t2548 = { + let __t2441 = + v_W4858.clone(); + rt::is_cons(&__t2441) }; if rt::is_truthy( - interp, &__t2539, + interp, &__t2548, )? { { - let v_W5277 = { - let __t2434 = { - let __t2433 = - v_W5276 + let v_W4859 = { + let __t2443 = { + let __t2442 = + v_W4858 .clone( ); rt::hd( - &__t2433, + &__t2442, )? }; - let __t2435 = - v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2434, __t2435])? + let __t2444 = + v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2443, __t2444])? }; { - let __t2538 = { - let __t2436 = - v_W5277 + let __t2547 = { + let __t2445 = + v_W4859 .clone( ); - let __t2437 = Value::sym(interp.intern("cons")); + let __t2446 = Value::sym(interp.intern("cons")); rt::eq( - &__t2436, - &__t2437, + &__t2445, + &__t2446, ) }; if rt::is_truthy( interp, - &__t2538, + &__t2547, )? { { - let v_W5278 = { - let __t2439 = { - let __t2438 = v_W5276.clone(); - rt::tl(&__t2438)? + let v_W4860 = { + let __t2448 = { + let __t2447 = v_W4858.clone(); + rt::tl(&__t2447)? }; - let __t2440 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2439, __t2440])? + let __t2449 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2448, __t2449])? }; { - let __t2537 = { - let __t2441 = v_W5278.clone(); - rt::is_cons(&__t2441) + let __t2546 = { + let __t2450 = v_W4860.clone(); + rt::is_cons(&__t2450) }; - if rt::is_truthy(interp, &__t2537)? { { let v_W5279 = { let __t2442 = v_W5278.clone(); rt::hd(&__t2442)? }; { let v_W5280 = { let __t2444 = { let __t2443 = v_W5278.clone(); rt::tl(&__t2443)? }; let __t2445 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2444, __t2445])? }; { let __t2536 = { let __t2446 = v_W5280.clone(); rt::is_cons(&__t2446) }; if rt::is_truthy(interp, &__t2536)? { { let v_W5281 = { let __t2447 = v_W5280.clone(); rt::hd(&__t2447)? }; { let v_W5282 = { let __t2449 = { let __t2448 = v_W5280.clone(); rt::tl(&__t2448)? }; let __t2450 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2449, __t2450])? }; { let __t2535 = { let __t2451 = v_W5282.clone(); let __t2452 = Value::nil(); rt::eq(&__t2451, &__t2452) }; if rt::is_truthy(interp, &__t2535)? { { let v_W5283 = { let __t2454 = { let __t2453 = v_W5275.clone(); rt::tl(&__t2453)? }; let __t2455 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2454, __t2455])? }; { let __t2534 = { let __t2456 = v_W5283.clone(); rt::is_cons(&__t2456) }; if rt::is_truthy(interp, &__t2534)? { { let v_W5284 = { let __t2457 = v_W5283.clone(); rt::hd(&__t2457)? }; { let v_W5285 = { let __t2459 = { let __t2458 = v_W5283.clone(); rt::tl(&__t2458)? }; let __t2460 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2459, __t2460])? }; { let __t2533 = { let __t2461 = v_W5285.clone(); rt::is_cons(&__t2461) }; if rt::is_truthy(interp, &__t2533)? { { let v_W5286 = { let __t2463 = { let __t2462 = v_W5285.clone(); rt::hd(&__t2462)? }; let __t2464 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2463, __t2464])? }; { let __t2532 = { let __t2465 = v_W5286.clone(); rt::is_cons(&__t2465) }; if rt::is_truthy(interp, &__t2532)? { { let v_W5287 = { let __t2467 = { let __t2466 = v_W5286.clone(); rt::hd(&__t2466)? }; let __t2468 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2467, __t2468])? }; { let __t2531 = { let __t2469 = v_W5287.clone(); let __t2470 = Value::sym(interp.intern("list")); rt::eq(&__t2469, &__t2470) }; if rt::is_truthy(interp, &__t2531)? { { let v_W5288 = { let __t2472 = { let __t2471 = v_W5286.clone(); rt::tl(&__t2471)? }; let __t2473 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2472, __t2473])? }; { let __t2530 = { let __t2474 = v_W5288.clone(); rt::is_cons(&__t2474) }; if rt::is_truthy(interp, &__t2530)? { { let v_W5289 = { let __t2475 = v_W5288.clone(); rt::hd(&__t2475)? }; { let v_W5290 = { let __t2477 = { let __t2476 = v_W5288.clone(); rt::tl(&__t2476)? }; let __t2478 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2477, __t2478])? }; { let __t2529 = { let __t2479 = v_W5290.clone(); let __t2480 = Value::nil(); rt::eq(&__t2479, &__t2480) }; if rt::is_truthy(interp, &__t2529)? { { let v_W5291 = { let __t2482 = { let __t2481 = v_W5285.clone(); rt::tl(&__t2481)? }; let __t2483 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2482, __t2483])? }; { let __t2528 = { let __t2484 = v_W5291.clone(); let __t2485 = Value::nil(); rt::eq(&__t2484, &__t2485) }; if rt::is_truthy(interp, &__t2528)? { { let v_W5292 = { let __t2486 = v_W5274.clone(); rt::tl(&__t2486)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2492 = { let __t2489 = { let __t2487 = v_W5284.clone(); let __t2488 = v_V5265.clone(); rt::apply_direct(interp, "shen.deref", &[__t2487, __t2488])? }; let __t2491 = { let __t2490 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2490])? }; rt::eq(&__t2489, &__t2491) }; let __t2493 = v_V5265.clone(); let __t2494 = v_V5266.clone(); let __t2495 = v_W5269.clone(); let __t2527 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5279 = v_W5279.clone(); let v_W5281 = v_W5281.clone(); let v_W5284 = v_W5284.clone(); let v_W5289 = v_W5289.clone(); let v_W5292 = v_W5292.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2496 = v_V5265.clone(); let __t2497 = v_V5266.clone(); let __t2498 = v_W5269.clone(); let __t2526 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5279 = v_W5279.clone(); let v_W5281 = v_W5281.clone(); let v_W5284 = v_W5284.clone(); let v_W5289 = v_W5289.clone(); let v_W5292 = v_W5292.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2519 = { let __t2505 = { let __t2499 = v_W5279.clone(); let __t2504 = { let __t2500 = v_W5284.clone(); let __t2503 = { let __t2501 = v_W5289.clone(); let __t2502 = Value::nil(); rt::cons(&__t2501, &__t2502) }; rt::cons(&__t2500, &__t2503) }; rt::cons(&__t2499, &__t2504) }; let __t2518 = { let __t2516 = { let __t2506 = v_W5281.clone(); let __t2515 = { let __t2507 = v_W5284.clone(); let __t2514 = { let __t2512 = { let __t2508 = Value::sym(interp.intern("list")); let __t2511 = { let __t2509 = v_W5289.clone(); let __t2510 = Value::nil(); rt::cons(&__t2509, &__t2510) }; rt::cons(&__t2508, &__t2511) }; let __t2513 = Value::nil(); rt::cons(&__t2512, &__t2513) }; rt::cons(&__t2507, &__t2514) }; rt::cons(&__t2506, &__t2515) }; let __t2517 = v_W5292.clone(); rt::cons(&__t2516, &__t2517) }; rt::cons(&__t2505, &__t2518) }; let __t2520 = v_V5263.clone(); let __t2521 = Value::bool(true); let __t2522 = v_V5265.clone(); let __t2523 = v_V5266.clone(); let __t2524 = v_W5269.clone(); let __t2525 = v_V5268.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2519, __t2520, __t2521, __t2522, __t2523, __t2524, __t2525])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5279, v_W5281, v_W5284, v_W5289, v_W5292], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2496, __t2497, __t2498, __t2526])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5279, v_W5281, v_W5284, v_W5289, v_W5292], interp) }; rt::apply_direct(interp, "when", &[__t2492, __t2493, __t2494, __t2495, __t2527])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2546)? { { let v_W4861 = { let __t2451 = v_W4860.clone(); rt::hd(&__t2451)? }; { let v_W4862 = { let __t2453 = { let __t2452 = v_W4860.clone(); rt::tl(&__t2452)? }; let __t2454 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2453, __t2454])? }; { let __t2545 = { let __t2455 = v_W4862.clone(); rt::is_cons(&__t2455) }; if rt::is_truthy(interp, &__t2545)? { { let v_W4863 = { let __t2456 = v_W4862.clone(); rt::hd(&__t2456)? }; { let v_W4864 = { let __t2458 = { let __t2457 = v_W4862.clone(); rt::tl(&__t2457)? }; let __t2459 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2458, __t2459])? }; { let __t2544 = { let __t2460 = v_W4864.clone(); let __t2461 = Value::nil(); rt::eq(&__t2460, &__t2461) }; if rt::is_truthy(interp, &__t2544)? { { let v_W4865 = { let __t2463 = { let __t2462 = v_W4857.clone(); rt::tl(&__t2462)? }; let __t2464 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2463, __t2464])? }; { let __t2543 = { let __t2465 = v_W4865.clone(); rt::is_cons(&__t2465) }; if rt::is_truthy(interp, &__t2543)? { { let v_W4866 = { let __t2466 = v_W4865.clone(); rt::hd(&__t2466)? }; { let v_W4867 = { let __t2468 = { let __t2467 = v_W4865.clone(); rt::tl(&__t2467)? }; let __t2469 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2468, __t2469])? }; { let __t2542 = { let __t2470 = v_W4867.clone(); rt::is_cons(&__t2470) }; if rt::is_truthy(interp, &__t2542)? { { let v_W4868 = { let __t2472 = { let __t2471 = v_W4867.clone(); rt::hd(&__t2471)? }; let __t2473 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2472, __t2473])? }; { let __t2541 = { let __t2474 = v_W4868.clone(); rt::is_cons(&__t2474) }; if rt::is_truthy(interp, &__t2541)? { { let v_W4869 = { let __t2476 = { let __t2475 = v_W4868.clone(); rt::hd(&__t2475)? }; let __t2477 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2476, __t2477])? }; { let __t2540 = { let __t2478 = v_W4869.clone(); let __t2479 = Value::sym(interp.intern("list")); rt::eq(&__t2478, &__t2479) }; if rt::is_truthy(interp, &__t2540)? { { let v_W4870 = { let __t2481 = { let __t2480 = v_W4868.clone(); rt::tl(&__t2480)? }; let __t2482 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2481, __t2482])? }; { let __t2539 = { let __t2483 = v_W4870.clone(); rt::is_cons(&__t2483) }; if rt::is_truthy(interp, &__t2539)? { { let v_W4871 = { let __t2484 = v_W4870.clone(); rt::hd(&__t2484)? }; { let v_W4872 = { let __t2486 = { let __t2485 = v_W4870.clone(); rt::tl(&__t2485)? }; let __t2487 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2486, __t2487])? }; { let __t2538 = { let __t2488 = v_W4872.clone(); let __t2489 = Value::nil(); rt::eq(&__t2488, &__t2489) }; if rt::is_truthy(interp, &__t2538)? { { let v_W4873 = { let __t2491 = { let __t2490 = v_W4867.clone(); rt::tl(&__t2490)? }; let __t2492 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2491, __t2492])? }; { let __t2537 = { let __t2493 = v_W4873.clone(); let __t2494 = Value::nil(); rt::eq(&__t2493, &__t2494) }; if rt::is_truthy(interp, &__t2537)? { { let v_W4874 = { let __t2495 = v_W4856.clone(); rt::tl(&__t2495)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2501 = { let __t2498 = { let __t2496 = v_W4866.clone(); let __t2497 = v_V4847.clone(); rt::apply_direct(interp, "shen.deref", &[__t2496, __t2497])? }; let __t2500 = { let __t2499 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2499])? }; rt::eq(&__t2498, &__t2500) }; let __t2502 = v_V4847.clone(); let __t2503 = v_V4848.clone(); let __t2504 = v_W4851.clone(); let __t2536 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4861 = v_W4861.clone(); let v_W4863 = v_W4863.clone(); let v_W4866 = v_W4866.clone(); let v_W4871 = v_W4871.clone(); let v_W4874 = v_W4874.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2505 = v_V4847.clone(); let __t2506 = v_V4848.clone(); let __t2507 = v_W4851.clone(); let __t2535 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4861 = v_W4861.clone(); let v_W4863 = v_W4863.clone(); let v_W4866 = v_W4866.clone(); let v_W4871 = v_W4871.clone(); let v_W4874 = v_W4874.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2528 = { let __t2514 = { let __t2508 = v_W4861.clone(); let __t2513 = { let __t2509 = v_W4866.clone(); let __t2512 = { let __t2510 = v_W4871.clone(); let __t2511 = Value::nil(); rt::cons(&__t2510, &__t2511) }; rt::cons(&__t2509, &__t2512) }; rt::cons(&__t2508, &__t2513) }; let __t2527 = { let __t2525 = { let __t2515 = v_W4863.clone(); let __t2524 = { let __t2516 = v_W4866.clone(); let __t2523 = { let __t2521 = { let __t2517 = Value::sym(interp.intern("list")); let __t2520 = { let __t2518 = v_W4871.clone(); let __t2519 = Value::nil(); rt::cons(&__t2518, &__t2519) }; rt::cons(&__t2517, &__t2520) }; let __t2522 = Value::nil(); rt::cons(&__t2521, &__t2522) }; rt::cons(&__t2516, &__t2523) }; rt::cons(&__t2515, &__t2524) }; let __t2526 = v_W4874.clone(); rt::cons(&__t2525, &__t2526) }; rt::cons(&__t2514, &__t2527) }; let __t2529 = v_V4845.clone(); let __t2530 = Value::bool(true); let __t2531 = v_V4847.clone(); let __t2532 = v_V4848.clone(); let __t2533 = v_W4851.clone(); let __t2534 = v_V4850.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2528, __t2529, __t2530, __t2531, __t2532, __t2533, __t2534])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4861, v_W4863, v_W4866, v_W4871, v_W4874], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2505, __t2506, __t2507, __t2535])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4861, v_W4863, v_W4866, v_W4871, v_W4874], interp) }; rt::apply_direct(interp, "when", &[__t2501, __t2502, __t2503, __t2504, __t2536])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { @@ -5572,110 +5604,110 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2545 = { - let __t2543 = v_W5273.clone(); - let __t2544 = Value::bool(false); - rt::eq(&__t2543, &__t2544) + let __t2554 = { + let __t2552 = v_W4855.clone(); + let __t2553 = Value::bool(false); + rt::eq(&__t2552, &__t2553) }; - if match rt::is_truthy(interp, &__t2545) { + if match rt::is_truthy(interp, &__t2554) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5293 = { - let __t2669 = { - let __t2546 = v_V5266.clone(); + let v_W4875 = { + let __t2678 = { + let __t2555 = v_V4848.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t2546], + &[__t2555], )? }; - if rt::is_truthy(interp, &__t2669)? { + if rt::is_truthy(interp, &__t2678)? { { - let v_W5294 = { - let __t2547 = v_V5262.clone(); - let __t2548 = v_V5265.clone(); + let v_W4876 = { + let __t2556 = v_V4844.clone(); + let __t2557 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2547, __t2548], + &[__t2556, __t2557], )? }; { - let __t2668 = { - let __t2549 = v_W5294.clone(); - rt::is_cons(&__t2549) + let __t2677 = { + let __t2558 = v_W4876.clone(); + rt::is_cons(&__t2558) }; - if rt::is_truthy(interp, &__t2668)? { + if rt::is_truthy(interp, &__t2677)? { { - let v_W5295 = { - let __t2551 = { - let __t2550 = - v_W5294.clone(); - rt::hd(&__t2550)? + let v_W4877 = { + let __t2560 = { + let __t2559 = + v_W4876.clone(); + rt::hd(&__t2559)? }; - let __t2552 = v_V5265.clone(); + let __t2561 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2551, __t2552], + &[__t2560, __t2561], )? }; { - let __t2667 = { - let __t2553 = - v_W5295.clone(); - rt::is_cons(&__t2553) + let __t2676 = { + let __t2562 = + v_W4877.clone(); + rt::is_cons(&__t2562) }; if rt::is_truthy( - interp, &__t2667, + interp, &__t2676, )? { { - let v_W5296 = { - let __t2555 = { - let __t2554 = - v_W5295 + let v_W4878 = { + let __t2564 = { + let __t2563 = + v_W4877 .clone( ); rt::hd( - &__t2554, + &__t2563, )? }; - let __t2556 = - v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2555, __t2556])? + let __t2565 = + v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2564, __t2565])? }; { - let __t2666 = { - let __t2557 = - v_W5296 + let __t2675 = { + let __t2566 = + v_W4878 .clone( ); rt::is_cons( - &__t2557, + &__t2566, ) }; if rt::is_truthy( interp, - &__t2666, + &__t2675, )? { { - let v_W5297 = { - let __t2559 = { - let __t2558 = v_W5296.clone(); - rt::hd(&__t2558)? + let v_W4879 = { + let __t2568 = { + let __t2567 = v_W4878.clone(); + rt::hd(&__t2567)? }; - let __t2560 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2559, __t2560])? + let __t2569 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2568, __t2569])? }; { - let __t2665 = { - let __t2561 = v_W5297.clone(); - let __t2562 = Value::sym(interp.intern("@p")); - rt::eq(&__t2561, &__t2562) + let __t2674 = { + let __t2570 = v_W4879.clone(); + let __t2571 = Value::sym(interp.intern("@p")); + rt::eq(&__t2570, &__t2571) }; - if rt::is_truthy(interp, &__t2665)? { { let v_W5298 = { let __t2564 = { let __t2563 = v_W5296.clone(); rt::tl(&__t2563)? }; let __t2565 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2564, __t2565])? }; { let __t2664 = { let __t2566 = v_W5298.clone(); rt::is_cons(&__t2566) }; if rt::is_truthy(interp, &__t2664)? { { let v_W5299 = { let __t2567 = v_W5298.clone(); rt::hd(&__t2567)? }; { let v_W5300 = { let __t2569 = { let __t2568 = v_W5298.clone(); rt::tl(&__t2568)? }; let __t2570 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2569, __t2570])? }; { let __t2663 = { let __t2571 = v_W5300.clone(); rt::is_cons(&__t2571) }; if rt::is_truthy(interp, &__t2663)? { { let v_W5301 = { let __t2572 = v_W5300.clone(); rt::hd(&__t2572)? }; { let v_W5302 = { let __t2574 = { let __t2573 = v_W5300.clone(); rt::tl(&__t2573)? }; let __t2575 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2574, __t2575])? }; { let __t2662 = { let __t2576 = v_W5302.clone(); let __t2577 = Value::nil(); rt::eq(&__t2576, &__t2577) }; if rt::is_truthy(interp, &__t2662)? { { let v_W5303 = { let __t2579 = { let __t2578 = v_W5295.clone(); rt::tl(&__t2578)? }; let __t2580 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2579, __t2580])? }; { let __t2661 = { let __t2581 = v_W5303.clone(); rt::is_cons(&__t2581) }; if rt::is_truthy(interp, &__t2661)? { { let v_W5304 = { let __t2582 = v_W5303.clone(); rt::hd(&__t2582)? }; { let v_W5305 = { let __t2584 = { let __t2583 = v_W5303.clone(); rt::tl(&__t2583)? }; let __t2585 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2584, __t2585])? }; { let __t2660 = { let __t2586 = v_W5305.clone(); rt::is_cons(&__t2586) }; if rt::is_truthy(interp, &__t2660)? { { let v_W5306 = { let __t2588 = { let __t2587 = v_W5305.clone(); rt::hd(&__t2587)? }; let __t2589 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2588, __t2589])? }; { let __t2659 = { let __t2590 = v_W5306.clone(); rt::is_cons(&__t2590) }; if rt::is_truthy(interp, &__t2659)? { { let v_W5307 = { let __t2591 = v_W5306.clone(); rt::hd(&__t2591)? }; { let v_W5308 = { let __t2593 = { let __t2592 = v_W5306.clone(); rt::tl(&__t2592)? }; let __t2594 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2593, __t2594])? }; { let __t2658 = { let __t2595 = v_W5308.clone(); rt::is_cons(&__t2595) }; if rt::is_truthy(interp, &__t2658)? { { let v_W5309 = { let __t2597 = { let __t2596 = v_W5308.clone(); rt::hd(&__t2596)? }; let __t2598 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2597, __t2598])? }; { let __t2657 = { let __t2599 = v_W5309.clone(); let __t2600 = Value::sym(interp.intern("*")); rt::eq(&__t2599, &__t2600) }; if rt::is_truthy(interp, &__t2657)? { { let v_W5310 = { let __t2602 = { let __t2601 = v_W5308.clone(); rt::tl(&__t2601)? }; let __t2603 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2602, __t2603])? }; { let __t2656 = { let __t2604 = v_W5310.clone(); rt::is_cons(&__t2604) }; if rt::is_truthy(interp, &__t2656)? { { let v_W5311 = { let __t2605 = v_W5310.clone(); rt::hd(&__t2605)? }; { let v_W5312 = { let __t2607 = { let __t2606 = v_W5310.clone(); rt::tl(&__t2606)? }; let __t2608 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2607, __t2608])? }; { let __t2655 = { let __t2609 = v_W5312.clone(); let __t2610 = Value::nil(); rt::eq(&__t2609, &__t2610) }; if rt::is_truthy(interp, &__t2655)? { { let v_W5313 = { let __t2612 = { let __t2611 = v_W5305.clone(); rt::tl(&__t2611)? }; let __t2613 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2612, __t2613])? }; { let __t2654 = { let __t2614 = v_W5313.clone(); let __t2615 = Value::nil(); rt::eq(&__t2614, &__t2615) }; if rt::is_truthy(interp, &__t2654)? { { let v_W5314 = { let __t2616 = v_W5294.clone(); rt::tl(&__t2616)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2622 = { let __t2619 = { let __t2617 = v_W5304.clone(); let __t2618 = v_V5265.clone(); rt::apply_direct(interp, "shen.deref", &[__t2617, __t2618])? }; let __t2621 = { let __t2620 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2620])? }; rt::eq(&__t2619, &__t2621) }; let __t2623 = v_V5265.clone(); let __t2624 = v_V5266.clone(); let __t2625 = v_W5269.clone(); let __t2653 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5299 = v_W5299.clone(); let v_W5301 = v_W5301.clone(); let v_W5304 = v_W5304.clone(); let v_W5307 = v_W5307.clone(); let v_W5311 = v_W5311.clone(); let v_W5314 = v_W5314.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2626 = v_V5265.clone(); let __t2627 = v_V5266.clone(); let __t2628 = v_W5269.clone(); let __t2652 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5299 = v_W5299.clone(); let v_W5301 = v_W5301.clone(); let v_W5304 = v_W5304.clone(); let v_W5307 = v_W5307.clone(); let v_W5311 = v_W5311.clone(); let v_W5314 = v_W5314.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2645 = { let __t2635 = { let __t2629 = v_W5299.clone(); let __t2634 = { let __t2630 = v_W5304.clone(); let __t2633 = { let __t2631 = v_W5307.clone(); let __t2632 = Value::nil(); rt::cons(&__t2631, &__t2632) }; rt::cons(&__t2630, &__t2633) }; rt::cons(&__t2629, &__t2634) }; let __t2644 = { let __t2642 = { let __t2636 = v_W5301.clone(); let __t2641 = { let __t2637 = v_W5304.clone(); let __t2640 = { let __t2638 = v_W5311.clone(); let __t2639 = Value::nil(); rt::cons(&__t2638, &__t2639) }; rt::cons(&__t2637, &__t2640) }; rt::cons(&__t2636, &__t2641) }; let __t2643 = v_W5314.clone(); rt::cons(&__t2642, &__t2643) }; rt::cons(&__t2635, &__t2644) }; let __t2646 = v_V5263.clone(); let __t2647 = Value::bool(true); let __t2648 = v_V5265.clone(); let __t2649 = v_V5266.clone(); let __t2650 = v_W5269.clone(); let __t2651 = v_V5268.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2645, __t2646, __t2647, __t2648, __t2649, __t2650, __t2651])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5299, v_W5301, v_W5304, v_W5307, v_W5311, v_W5314], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2626, __t2627, __t2628, __t2652])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5299, v_W5301, v_W5304, v_W5307, v_W5311, v_W5314], interp) }; rt::apply_direct(interp, "when", &[__t2622, __t2623, __t2624, __t2625, __t2653])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2674)? { { let v_W4880 = { let __t2573 = { let __t2572 = v_W4878.clone(); rt::tl(&__t2572)? }; let __t2574 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2573, __t2574])? }; { let __t2673 = { let __t2575 = v_W4880.clone(); rt::is_cons(&__t2575) }; if rt::is_truthy(interp, &__t2673)? { { let v_W4881 = { let __t2576 = v_W4880.clone(); rt::hd(&__t2576)? }; { let v_W4882 = { let __t2578 = { let __t2577 = v_W4880.clone(); rt::tl(&__t2577)? }; let __t2579 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2578, __t2579])? }; { let __t2672 = { let __t2580 = v_W4882.clone(); rt::is_cons(&__t2580) }; if rt::is_truthy(interp, &__t2672)? { { let v_W4883 = { let __t2581 = v_W4882.clone(); rt::hd(&__t2581)? }; { let v_W4884 = { let __t2583 = { let __t2582 = v_W4882.clone(); rt::tl(&__t2582)? }; let __t2584 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2583, __t2584])? }; { let __t2671 = { let __t2585 = v_W4884.clone(); let __t2586 = Value::nil(); rt::eq(&__t2585, &__t2586) }; if rt::is_truthy(interp, &__t2671)? { { let v_W4885 = { let __t2588 = { let __t2587 = v_W4877.clone(); rt::tl(&__t2587)? }; let __t2589 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2588, __t2589])? }; { let __t2670 = { let __t2590 = v_W4885.clone(); rt::is_cons(&__t2590) }; if rt::is_truthy(interp, &__t2670)? { { let v_W4886 = { let __t2591 = v_W4885.clone(); rt::hd(&__t2591)? }; { let v_W4887 = { let __t2593 = { let __t2592 = v_W4885.clone(); rt::tl(&__t2592)? }; let __t2594 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2593, __t2594])? }; { let __t2669 = { let __t2595 = v_W4887.clone(); rt::is_cons(&__t2595) }; if rt::is_truthy(interp, &__t2669)? { { let v_W4888 = { let __t2597 = { let __t2596 = v_W4887.clone(); rt::hd(&__t2596)? }; let __t2598 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2597, __t2598])? }; { let __t2668 = { let __t2599 = v_W4888.clone(); rt::is_cons(&__t2599) }; if rt::is_truthy(interp, &__t2668)? { { let v_W4889 = { let __t2600 = v_W4888.clone(); rt::hd(&__t2600)? }; { let v_W4890 = { let __t2602 = { let __t2601 = v_W4888.clone(); rt::tl(&__t2601)? }; let __t2603 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2602, __t2603])? }; { let __t2667 = { let __t2604 = v_W4890.clone(); rt::is_cons(&__t2604) }; if rt::is_truthy(interp, &__t2667)? { { let v_W4891 = { let __t2606 = { let __t2605 = v_W4890.clone(); rt::hd(&__t2605)? }; let __t2607 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2606, __t2607])? }; { let __t2666 = { let __t2608 = v_W4891.clone(); let __t2609 = Value::sym(interp.intern("*")); rt::eq(&__t2608, &__t2609) }; if rt::is_truthy(interp, &__t2666)? { { let v_W4892 = { let __t2611 = { let __t2610 = v_W4890.clone(); rt::tl(&__t2610)? }; let __t2612 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2611, __t2612])? }; { let __t2665 = { let __t2613 = v_W4892.clone(); rt::is_cons(&__t2613) }; if rt::is_truthy(interp, &__t2665)? { { let v_W4893 = { let __t2614 = v_W4892.clone(); rt::hd(&__t2614)? }; { let v_W4894 = { let __t2616 = { let __t2615 = v_W4892.clone(); rt::tl(&__t2615)? }; let __t2617 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2616, __t2617])? }; { let __t2664 = { let __t2618 = v_W4894.clone(); let __t2619 = Value::nil(); rt::eq(&__t2618, &__t2619) }; if rt::is_truthy(interp, &__t2664)? { { let v_W4895 = { let __t2621 = { let __t2620 = v_W4887.clone(); rt::tl(&__t2620)? }; let __t2622 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2621, __t2622])? }; { let __t2663 = { let __t2623 = v_W4895.clone(); let __t2624 = Value::nil(); rt::eq(&__t2623, &__t2624) }; if rt::is_truthy(interp, &__t2663)? { { let v_W4896 = { let __t2625 = v_W4876.clone(); rt::tl(&__t2625)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2631 = { let __t2628 = { let __t2626 = v_W4886.clone(); let __t2627 = v_V4847.clone(); rt::apply_direct(interp, "shen.deref", &[__t2626, __t2627])? }; let __t2630 = { let __t2629 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2629])? }; rt::eq(&__t2628, &__t2630) }; let __t2632 = v_V4847.clone(); let __t2633 = v_V4848.clone(); let __t2634 = v_W4851.clone(); let __t2662 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4881 = v_W4881.clone(); let v_W4883 = v_W4883.clone(); let v_W4886 = v_W4886.clone(); let v_W4889 = v_W4889.clone(); let v_W4893 = v_W4893.clone(); let v_W4896 = v_W4896.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2635 = v_V4847.clone(); let __t2636 = v_V4848.clone(); let __t2637 = v_W4851.clone(); let __t2661 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4881 = v_W4881.clone(); let v_W4883 = v_W4883.clone(); let v_W4886 = v_W4886.clone(); let v_W4889 = v_W4889.clone(); let v_W4893 = v_W4893.clone(); let v_W4896 = v_W4896.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2654 = { let __t2644 = { let __t2638 = v_W4881.clone(); let __t2643 = { let __t2639 = v_W4886.clone(); let __t2642 = { let __t2640 = v_W4889.clone(); let __t2641 = Value::nil(); rt::cons(&__t2640, &__t2641) }; rt::cons(&__t2639, &__t2642) }; rt::cons(&__t2638, &__t2643) }; let __t2653 = { let __t2651 = { let __t2645 = v_W4883.clone(); let __t2650 = { let __t2646 = v_W4886.clone(); let __t2649 = { let __t2647 = v_W4893.clone(); let __t2648 = Value::nil(); rt::cons(&__t2647, &__t2648) }; rt::cons(&__t2646, &__t2649) }; rt::cons(&__t2645, &__t2650) }; let __t2652 = v_W4896.clone(); rt::cons(&__t2651, &__t2652) }; rt::cons(&__t2644, &__t2653) }; let __t2655 = v_V4845.clone(); let __t2656 = Value::bool(true); let __t2657 = v_V4847.clone(); let __t2658 = v_V4848.clone(); let __t2659 = v_W4851.clone(); let __t2660 = v_V4850.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2654, __t2655, __t2656, __t2657, __t2658, __t2659, __t2660])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4881, v_W4883, v_W4886, v_W4889, v_W4893, v_W4896], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2635, __t2636, __t2637, __t2661])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4881, v_W4883, v_W4886, v_W4889, v_W4893, v_W4896], interp) }; rt::apply_direct(interp, "when", &[__t2631, __t2632, __t2633, __t2634, __t2662])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { @@ -5700,89 +5732,89 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2672 = { - let __t2670 = v_W5293.clone(); - let __t2671 = Value::bool(false); - rt::eq(&__t2670, &__t2671) + let __t2681 = { + let __t2679 = v_W4875.clone(); + let __t2680 = Value::bool(false); + rt::eq(&__t2679, &__t2680) }; - if match rt::is_truthy(interp, &__t2672) { + if match rt::is_truthy(interp, &__t2681) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5315 = { - let __t2773 = { - let __t2673 = v_V5266.clone(); + let v_W4897 = { + let __t2782 = { + let __t2682 = v_V4848.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t2673], + &[__t2682], )? }; - if rt::is_truthy(interp, &__t2773)? { + if rt::is_truthy(interp, &__t2782)? { { - let v_W5316 = { - let __t2674 = v_V5262.clone(); - let __t2675 = v_V5265.clone(); + let v_W4898 = { + let __t2683 = v_V4844.clone(); + let __t2684 = v_V4847.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t2674, __t2675], + &[__t2683, __t2684], )? }; { - let __t2772 = { - let __t2676 = - v_W5316.clone(); - rt::is_cons(&__t2676) + let __t2781 = { + let __t2685 = + v_W4898.clone(); + rt::is_cons(&__t2685) }; if rt::is_truthy( - interp, &__t2772, + interp, &__t2781, )? { { - let v_W5317 = { - let __t2678 = { - let __t2677 = - v_W5316 + let v_W4899 = { + let __t2687 = { + let __t2686 = + v_W4898 .clone( ); rt::hd( - &__t2677, + &__t2686, )? }; - let __t2679 = - v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2678, __t2679])? + let __t2688 = + v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2687, __t2688])? }; { - let __t2771 = { - let __t2680 = - v_W5317 + let __t2780 = { + let __t2689 = + v_W4899 .clone( ); rt::is_cons( - &__t2680, + &__t2689, ) }; if rt::is_truthy( interp, - &__t2771, + &__t2780, )? { { - let v_W5318 = { - let __t2682 = { - let __t2681 = v_W5317.clone(); - rt::hd(&__t2681)? + let v_W4900 = { + let __t2691 = { + let __t2690 = v_W4899.clone(); + rt::hd(&__t2690)? }; - let __t2683 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2682, __t2683])? + let __t2692 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2691, __t2692])? }; { - let __t2770 = { - let __t2684 = v_W5318.clone(); - rt::is_cons(&__t2684) + let __t2779 = { + let __t2693 = v_W4900.clone(); + rt::is_cons(&__t2693) }; - if rt::is_truthy(interp, &__t2770)? { { let v_W5319 = { let __t2686 = { let __t2685 = v_W5318.clone(); rt::hd(&__t2685)? }; let __t2687 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2686, __t2687])? }; { let __t2769 = { let __t2688 = v_W5319.clone(); let __t2689 = Value::sym(interp.intern("@s")); rt::eq(&__t2688, &__t2689) }; if rt::is_truthy(interp, &__t2769)? { { let v_W5320 = { let __t2691 = { let __t2690 = v_W5318.clone(); rt::tl(&__t2690)? }; let __t2692 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2691, __t2692])? }; { let __t2768 = { let __t2693 = v_W5320.clone(); rt::is_cons(&__t2693) }; if rt::is_truthy(interp, &__t2768)? { { let v_W5321 = { let __t2694 = v_W5320.clone(); rt::hd(&__t2694)? }; { let v_W5322 = { let __t2696 = { let __t2695 = v_W5320.clone(); rt::tl(&__t2695)? }; let __t2697 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2696, __t2697])? }; { let __t2767 = { let __t2698 = v_W5322.clone(); rt::is_cons(&__t2698) }; if rt::is_truthy(interp, &__t2767)? { { let v_W5323 = { let __t2699 = v_W5322.clone(); rt::hd(&__t2699)? }; { let v_W5324 = { let __t2701 = { let __t2700 = v_W5322.clone(); rt::tl(&__t2700)? }; let __t2702 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2701, __t2702])? }; { let __t2766 = { let __t2703 = v_W5324.clone(); let __t2704 = Value::nil(); rt::eq(&__t2703, &__t2704) }; if rt::is_truthy(interp, &__t2766)? { { let v_W5325 = { let __t2706 = { let __t2705 = v_W5317.clone(); rt::tl(&__t2705)? }; let __t2707 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2706, __t2707])? }; { let __t2765 = { let __t2708 = v_W5325.clone(); rt::is_cons(&__t2708) }; if rt::is_truthy(interp, &__t2765)? { { let v_W5326 = { let __t2709 = v_W5325.clone(); rt::hd(&__t2709)? }; { let v_W5327 = { let __t2711 = { let __t2710 = v_W5325.clone(); rt::tl(&__t2710)? }; let __t2712 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2711, __t2712])? }; { let __t2764 = { let __t2713 = v_W5327.clone(); rt::is_cons(&__t2713) }; if rt::is_truthy(interp, &__t2764)? { { let v_W5328 = { let __t2715 = { let __t2714 = v_W5327.clone(); rt::hd(&__t2714)? }; let __t2716 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2715, __t2716])? }; { let __t2763 = { let __t2717 = v_W5328.clone(); let __t2718 = Value::sym(interp.intern("string")); rt::eq(&__t2717, &__t2718) }; if rt::is_truthy(interp, &__t2763)? { { let v_W5329 = { let __t2720 = { let __t2719 = v_W5327.clone(); rt::tl(&__t2719)? }; let __t2721 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2720, __t2721])? }; { let __t2762 = { let __t2722 = v_W5329.clone(); let __t2723 = Value::nil(); rt::eq(&__t2722, &__t2723) }; if rt::is_truthy(interp, &__t2762)? { { let v_W5330 = { let __t2724 = v_W5316.clone(); rt::tl(&__t2724)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2730 = { let __t2727 = { let __t2725 = v_W5326.clone(); let __t2726 = v_V5265.clone(); rt::apply_direct(interp, "shen.deref", &[__t2725, __t2726])? }; let __t2729 = { let __t2728 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2728])? }; rt::eq(&__t2727, &__t2729) }; let __t2731 = v_V5265.clone(); let __t2732 = v_V5266.clone(); let __t2733 = v_W5269.clone(); let __t2761 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5321 = v_W5321.clone(); let v_W5323 = v_W5323.clone(); let v_W5326 = v_W5326.clone(); let v_W5330 = v_W5330.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2734 = v_V5265.clone(); let __t2735 = v_V5266.clone(); let __t2736 = v_W5269.clone(); let __t2760 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5321 = v_W5321.clone(); let v_W5323 = v_W5323.clone(); let v_W5326 = v_W5326.clone(); let v_W5330 = v_W5330.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2753 = { let __t2743 = { let __t2737 = v_W5321.clone(); let __t2742 = { let __t2738 = v_W5326.clone(); let __t2741 = { let __t2739 = Value::sym(interp.intern("string")); let __t2740 = Value::nil(); rt::cons(&__t2739, &__t2740) }; rt::cons(&__t2738, &__t2741) }; rt::cons(&__t2737, &__t2742) }; let __t2752 = { let __t2750 = { let __t2744 = v_W5323.clone(); let __t2749 = { let __t2745 = v_W5326.clone(); let __t2748 = { let __t2746 = Value::sym(interp.intern("string")); let __t2747 = Value::nil(); rt::cons(&__t2746, &__t2747) }; rt::cons(&__t2745, &__t2748) }; rt::cons(&__t2744, &__t2749) }; let __t2751 = v_W5330.clone(); rt::cons(&__t2750, &__t2751) }; rt::cons(&__t2743, &__t2752) }; let __t2754 = v_V5263.clone(); let __t2755 = Value::bool(true); let __t2756 = v_V5265.clone(); let __t2757 = v_V5266.clone(); let __t2758 = v_W5269.clone(); let __t2759 = v_V5268.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2753, __t2754, __t2755, __t2756, __t2757, __t2758, __t2759])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5321, v_W5323, v_W5326, v_W5330], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2734, __t2735, __t2736, __t2760])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5321, v_W5323, v_W5326, v_W5330], interp) }; rt::apply_direct(interp, "when", &[__t2730, __t2731, __t2732, __t2733, __t2761])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2779)? { { let v_W4901 = { let __t2695 = { let __t2694 = v_W4900.clone(); rt::hd(&__t2694)? }; let __t2696 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2695, __t2696])? }; { let __t2778 = { let __t2697 = v_W4901.clone(); let __t2698 = Value::sym(interp.intern("@s")); rt::eq(&__t2697, &__t2698) }; if rt::is_truthy(interp, &__t2778)? { { let v_W4902 = { let __t2700 = { let __t2699 = v_W4900.clone(); rt::tl(&__t2699)? }; let __t2701 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2700, __t2701])? }; { let __t2777 = { let __t2702 = v_W4902.clone(); rt::is_cons(&__t2702) }; if rt::is_truthy(interp, &__t2777)? { { let v_W4903 = { let __t2703 = v_W4902.clone(); rt::hd(&__t2703)? }; { let v_W4904 = { let __t2705 = { let __t2704 = v_W4902.clone(); rt::tl(&__t2704)? }; let __t2706 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2705, __t2706])? }; { let __t2776 = { let __t2707 = v_W4904.clone(); rt::is_cons(&__t2707) }; if rt::is_truthy(interp, &__t2776)? { { let v_W4905 = { let __t2708 = v_W4904.clone(); rt::hd(&__t2708)? }; { let v_W4906 = { let __t2710 = { let __t2709 = v_W4904.clone(); rt::tl(&__t2709)? }; let __t2711 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2710, __t2711])? }; { let __t2775 = { let __t2712 = v_W4906.clone(); let __t2713 = Value::nil(); rt::eq(&__t2712, &__t2713) }; if rt::is_truthy(interp, &__t2775)? { { let v_W4907 = { let __t2715 = { let __t2714 = v_W4899.clone(); rt::tl(&__t2714)? }; let __t2716 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2715, __t2716])? }; { let __t2774 = { let __t2717 = v_W4907.clone(); rt::is_cons(&__t2717) }; if rt::is_truthy(interp, &__t2774)? { { let v_W4908 = { let __t2718 = v_W4907.clone(); rt::hd(&__t2718)? }; { let v_W4909 = { let __t2720 = { let __t2719 = v_W4907.clone(); rt::tl(&__t2719)? }; let __t2721 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2720, __t2721])? }; { let __t2773 = { let __t2722 = v_W4909.clone(); rt::is_cons(&__t2722) }; if rt::is_truthy(interp, &__t2773)? { { let v_W4910 = { let __t2724 = { let __t2723 = v_W4909.clone(); rt::hd(&__t2723)? }; let __t2725 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2724, __t2725])? }; { let __t2772 = { let __t2726 = v_W4910.clone(); let __t2727 = Value::sym(interp.intern("string")); rt::eq(&__t2726, &__t2727) }; if rt::is_truthy(interp, &__t2772)? { { let v_W4911 = { let __t2729 = { let __t2728 = v_W4909.clone(); rt::tl(&__t2728)? }; let __t2730 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2729, __t2730])? }; { let __t2771 = { let __t2731 = v_W4911.clone(); let __t2732 = Value::nil(); rt::eq(&__t2731, &__t2732) }; if rt::is_truthy(interp, &__t2771)? { { let v_W4912 = { let __t2733 = v_W4898.clone(); rt::tl(&__t2733)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2739 = { let __t2736 = { let __t2734 = v_W4908.clone(); let __t2735 = v_V4847.clone(); rt::apply_direct(interp, "shen.deref", &[__t2734, __t2735])? }; let __t2738 = { let __t2737 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2737])? }; rt::eq(&__t2736, &__t2738) }; let __t2740 = v_V4847.clone(); let __t2741 = v_V4848.clone(); let __t2742 = v_W4851.clone(); let __t2770 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4903 = v_W4903.clone(); let v_W4905 = v_W4905.clone(); let v_W4908 = v_W4908.clone(); let v_W4912 = v_W4912.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2743 = v_V4847.clone(); let __t2744 = v_V4848.clone(); let __t2745 = v_W4851.clone(); let __t2769 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4903 = v_W4903.clone(); let v_W4905 = v_W4905.clone(); let v_W4908 = v_W4908.clone(); let v_W4912 = v_W4912.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2762 = { let __t2752 = { let __t2746 = v_W4903.clone(); let __t2751 = { let __t2747 = v_W4908.clone(); let __t2750 = { let __t2748 = Value::sym(interp.intern("string")); let __t2749 = Value::nil(); rt::cons(&__t2748, &__t2749) }; rt::cons(&__t2747, &__t2750) }; rt::cons(&__t2746, &__t2751) }; let __t2761 = { let __t2759 = { let __t2753 = v_W4905.clone(); let __t2758 = { let __t2754 = v_W4908.clone(); let __t2757 = { let __t2755 = Value::sym(interp.intern("string")); let __t2756 = Value::nil(); rt::cons(&__t2755, &__t2756) }; rt::cons(&__t2754, &__t2757) }; rt::cons(&__t2753, &__t2758) }; let __t2760 = v_W4912.clone(); rt::cons(&__t2759, &__t2760) }; rt::cons(&__t2752, &__t2761) }; let __t2763 = v_V4845.clone(); let __t2764 = Value::bool(true); let __t2765 = v_V4847.clone(); let __t2766 = v_V4848.clone(); let __t2767 = v_W4851.clone(); let __t2768 = v_V4850.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2762, __t2763, __t2764, __t2765, __t2766, __t2767, __t2768])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4903, v_W4905, v_W4908, v_W4912], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2743, __t2744, __t2745, __t2769])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4903, v_W4905, v_W4908, v_W4912], interp) }; rt::apply_direct(interp, "when", &[__t2739, __t2740, __t2741, __t2742, __t2770])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { @@ -5802,66 +5834,66 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2776 = { - let __t2774 = v_W5315.clone(); - let __t2775 = Value::bool(false); - rt::eq(&__t2774, &__t2775) + let __t2785 = { + let __t2783 = v_W4897.clone(); + let __t2784 = Value::bool(false); + rt::eq(&__t2783, &__t2784) }; - if match rt::is_truthy(interp, &__t2776) { + if match rt::is_truthy(interp, &__t2785) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5331 = { - let __t2898 = { - let __t2777 = - v_V5266.clone(); + let v_W4913 = { + let __t2907 = { + let __t2786 = + v_V4848.clone(); rt::apply_direct( interp, "shen.unlocked?", - &[__t2777], + &[__t2786], )? }; if rt::is_truthy( - interp, &__t2898, + interp, &__t2907, )? { { - let v_W5332 = { - let __t2778 = - v_V5262.clone(); - let __t2779 = - v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2778, __t2779])? + let v_W4914 = { + let __t2787 = + v_V4844.clone(); + let __t2788 = + v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2787, __t2788])? }; { - let __t2897 = { - let __t2780 = - v_W5332 + let __t2906 = { + let __t2789 = + v_W4914 .clone( ); rt::is_cons( - &__t2780, + &__t2789, ) }; if rt::is_truthy( interp, - &__t2897, + &__t2906, )? { { - let v_W5333 = { - let __t2782 = { - let __t2781 = v_W5332.clone(); - rt::hd(&__t2781)? + let v_W4915 = { + let __t2791 = { + let __t2790 = v_W4914.clone(); + rt::hd(&__t2790)? }; - let __t2783 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2782, __t2783])? + let __t2792 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2791, __t2792])? }; { - let __t2896 = { - let __t2784 = v_W5333.clone(); - rt::is_cons(&__t2784) + let __t2905 = { + let __t2793 = v_W4915.clone(); + rt::is_cons(&__t2793) }; - if rt::is_truthy(interp, &__t2896)? { { let v_W5334 = { let __t2786 = { let __t2785 = v_W5333.clone(); rt::hd(&__t2785)? }; let __t2787 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2786, __t2787])? }; { let __t2895 = { let __t2788 = v_W5334.clone(); rt::is_cons(&__t2788) }; if rt::is_truthy(interp, &__t2895)? { { let v_W5335 = { let __t2790 = { let __t2789 = v_W5334.clone(); rt::hd(&__t2789)? }; let __t2791 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2790, __t2791])? }; { let __t2894 = { let __t2792 = v_W5335.clone(); let __t2793 = Value::sym(interp.intern("@v")); rt::eq(&__t2792, &__t2793) }; if rt::is_truthy(interp, &__t2894)? { { let v_W5336 = { let __t2795 = { let __t2794 = v_W5334.clone(); rt::tl(&__t2794)? }; let __t2796 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2795, __t2796])? }; { let __t2893 = { let __t2797 = v_W5336.clone(); rt::is_cons(&__t2797) }; if rt::is_truthy(interp, &__t2893)? { { let v_W5337 = { let __t2798 = v_W5336.clone(); rt::hd(&__t2798)? }; { let v_W5338 = { let __t2800 = { let __t2799 = v_W5336.clone(); rt::tl(&__t2799)? }; let __t2801 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2800, __t2801])? }; { let __t2892 = { let __t2802 = v_W5338.clone(); rt::is_cons(&__t2802) }; if rt::is_truthy(interp, &__t2892)? { { let v_W5339 = { let __t2803 = v_W5338.clone(); rt::hd(&__t2803)? }; { let v_W5340 = { let __t2805 = { let __t2804 = v_W5338.clone(); rt::tl(&__t2804)? }; let __t2806 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2805, __t2806])? }; { let __t2891 = { let __t2807 = v_W5340.clone(); let __t2808 = Value::nil(); rt::eq(&__t2807, &__t2808) }; if rt::is_truthy(interp, &__t2891)? { { let v_W5341 = { let __t2810 = { let __t2809 = v_W5333.clone(); rt::tl(&__t2809)? }; let __t2811 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2810, __t2811])? }; { let __t2890 = { let __t2812 = v_W5341.clone(); rt::is_cons(&__t2812) }; if rt::is_truthy(interp, &__t2890)? { { let v_W5342 = { let __t2813 = v_W5341.clone(); rt::hd(&__t2813)? }; { let v_W5343 = { let __t2815 = { let __t2814 = v_W5341.clone(); rt::tl(&__t2814)? }; let __t2816 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2815, __t2816])? }; { let __t2889 = { let __t2817 = v_W5343.clone(); rt::is_cons(&__t2817) }; if rt::is_truthy(interp, &__t2889)? { { let v_W5344 = { let __t2819 = { let __t2818 = v_W5343.clone(); rt::hd(&__t2818)? }; let __t2820 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2819, __t2820])? }; { let __t2888 = { let __t2821 = v_W5344.clone(); rt::is_cons(&__t2821) }; if rt::is_truthy(interp, &__t2888)? { { let v_W5345 = { let __t2823 = { let __t2822 = v_W5344.clone(); rt::hd(&__t2822)? }; let __t2824 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2823, __t2824])? }; { let __t2887 = { let __t2825 = v_W5345.clone(); let __t2826 = Value::sym(interp.intern("vector")); rt::eq(&__t2825, &__t2826) }; if rt::is_truthy(interp, &__t2887)? { { let v_W5346 = { let __t2828 = { let __t2827 = v_W5344.clone(); rt::tl(&__t2827)? }; let __t2829 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2828, __t2829])? }; { let __t2886 = { let __t2830 = v_W5346.clone(); rt::is_cons(&__t2830) }; if rt::is_truthy(interp, &__t2886)? { { let v_W5347 = { let __t2831 = v_W5346.clone(); rt::hd(&__t2831)? }; { let v_W5348 = { let __t2833 = { let __t2832 = v_W5346.clone(); rt::tl(&__t2832)? }; let __t2834 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2833, __t2834])? }; { let __t2885 = { let __t2835 = v_W5348.clone(); let __t2836 = Value::nil(); rt::eq(&__t2835, &__t2836) }; if rt::is_truthy(interp, &__t2885)? { { let v_W5349 = { let __t2838 = { let __t2837 = v_W5343.clone(); rt::tl(&__t2837)? }; let __t2839 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2838, __t2839])? }; { let __t2884 = { let __t2840 = v_W5349.clone(); let __t2841 = Value::nil(); rt::eq(&__t2840, &__t2841) }; if rt::is_truthy(interp, &__t2884)? { { let v_W5350 = { let __t2842 = v_W5332.clone(); rt::tl(&__t2842)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2848 = { let __t2845 = { let __t2843 = v_W5342.clone(); let __t2844 = v_V5265.clone(); rt::apply_direct(interp, "shen.deref", &[__t2843, __t2844])? }; let __t2847 = { let __t2846 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2846])? }; rt::eq(&__t2845, &__t2847) }; let __t2849 = v_V5265.clone(); let __t2850 = v_V5266.clone(); let __t2851 = v_W5269.clone(); let __t2883 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5337 = v_W5337.clone(); let v_W5339 = v_W5339.clone(); let v_W5342 = v_W5342.clone(); let v_W5347 = v_W5347.clone(); let v_W5350 = v_W5350.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2852 = v_V5265.clone(); let __t2853 = v_V5266.clone(); let __t2854 = v_W5269.clone(); let __t2882 = { let v_V5263 = v_V5263.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5337 = v_W5337.clone(); let v_W5339 = v_W5339.clone(); let v_W5342 = v_W5342.clone(); let v_W5347 = v_W5347.clone(); let v_W5350 = v_W5350.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2875 = { let __t2861 = { let __t2855 = v_W5337.clone(); let __t2860 = { let __t2856 = v_W5342.clone(); let __t2859 = { let __t2857 = v_W5347.clone(); let __t2858 = Value::nil(); rt::cons(&__t2857, &__t2858) }; rt::cons(&__t2856, &__t2859) }; rt::cons(&__t2855, &__t2860) }; let __t2874 = { let __t2872 = { let __t2862 = v_W5339.clone(); let __t2871 = { let __t2863 = v_W5342.clone(); let __t2870 = { let __t2868 = { let __t2864 = Value::sym(interp.intern("vector")); let __t2867 = { let __t2865 = v_W5347.clone(); let __t2866 = Value::nil(); rt::cons(&__t2865, &__t2866) }; rt::cons(&__t2864, &__t2867) }; let __t2869 = Value::nil(); rt::cons(&__t2868, &__t2869) }; rt::cons(&__t2863, &__t2870) }; rt::cons(&__t2862, &__t2871) }; let __t2873 = v_W5350.clone(); rt::cons(&__t2872, &__t2873) }; rt::cons(&__t2861, &__t2874) }; let __t2876 = v_V5263.clone(); let __t2877 = Value::bool(true); let __t2878 = v_V5265.clone(); let __t2879 = v_V5266.clone(); let __t2880 = v_W5269.clone(); let __t2881 = v_V5268.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2875, __t2876, __t2877, __t2878, __t2879, __t2880, __t2881])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5337, v_W5339, v_W5342, v_W5347, v_W5350], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2852, __t2853, __t2854, __t2882])? }), vec![v_V5263, v_V5265, v_V5266, v_V5268, v_W5269, v_W5337, v_W5339, v_W5342, v_W5347, v_W5350], interp) }; rt::apply_direct(interp, "when", &[__t2848, __t2849, __t2850, __t2851, __t2883])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2905)? { { let v_W4916 = { let __t2795 = { let __t2794 = v_W4915.clone(); rt::hd(&__t2794)? }; let __t2796 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2795, __t2796])? }; { let __t2904 = { let __t2797 = v_W4916.clone(); rt::is_cons(&__t2797) }; if rt::is_truthy(interp, &__t2904)? { { let v_W4917 = { let __t2799 = { let __t2798 = v_W4916.clone(); rt::hd(&__t2798)? }; let __t2800 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2799, __t2800])? }; { let __t2903 = { let __t2801 = v_W4917.clone(); let __t2802 = Value::sym(interp.intern("@v")); rt::eq(&__t2801, &__t2802) }; if rt::is_truthy(interp, &__t2903)? { { let v_W4918 = { let __t2804 = { let __t2803 = v_W4916.clone(); rt::tl(&__t2803)? }; let __t2805 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2804, __t2805])? }; { let __t2902 = { let __t2806 = v_W4918.clone(); rt::is_cons(&__t2806) }; if rt::is_truthy(interp, &__t2902)? { { let v_W4919 = { let __t2807 = v_W4918.clone(); rt::hd(&__t2807)? }; { let v_W4920 = { let __t2809 = { let __t2808 = v_W4918.clone(); rt::tl(&__t2808)? }; let __t2810 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2809, __t2810])? }; { let __t2901 = { let __t2811 = v_W4920.clone(); rt::is_cons(&__t2811) }; if rt::is_truthy(interp, &__t2901)? { { let v_W4921 = { let __t2812 = v_W4920.clone(); rt::hd(&__t2812)? }; { let v_W4922 = { let __t2814 = { let __t2813 = v_W4920.clone(); rt::tl(&__t2813)? }; let __t2815 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2814, __t2815])? }; { let __t2900 = { let __t2816 = v_W4922.clone(); let __t2817 = Value::nil(); rt::eq(&__t2816, &__t2817) }; if rt::is_truthy(interp, &__t2900)? { { let v_W4923 = { let __t2819 = { let __t2818 = v_W4915.clone(); rt::tl(&__t2818)? }; let __t2820 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2819, __t2820])? }; { let __t2899 = { let __t2821 = v_W4923.clone(); rt::is_cons(&__t2821) }; if rt::is_truthy(interp, &__t2899)? { { let v_W4924 = { let __t2822 = v_W4923.clone(); rt::hd(&__t2822)? }; { let v_W4925 = { let __t2824 = { let __t2823 = v_W4923.clone(); rt::tl(&__t2823)? }; let __t2825 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2824, __t2825])? }; { let __t2898 = { let __t2826 = v_W4925.clone(); rt::is_cons(&__t2826) }; if rt::is_truthy(interp, &__t2898)? { { let v_W4926 = { let __t2828 = { let __t2827 = v_W4925.clone(); rt::hd(&__t2827)? }; let __t2829 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2828, __t2829])? }; { let __t2897 = { let __t2830 = v_W4926.clone(); rt::is_cons(&__t2830) }; if rt::is_truthy(interp, &__t2897)? { { let v_W4927 = { let __t2832 = { let __t2831 = v_W4926.clone(); rt::hd(&__t2831)? }; let __t2833 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2832, __t2833])? }; { let __t2896 = { let __t2834 = v_W4927.clone(); let __t2835 = Value::sym(interp.intern("vector")); rt::eq(&__t2834, &__t2835) }; if rt::is_truthy(interp, &__t2896)? { { let v_W4928 = { let __t2837 = { let __t2836 = v_W4926.clone(); rt::tl(&__t2836)? }; let __t2838 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2837, __t2838])? }; { let __t2895 = { let __t2839 = v_W4928.clone(); rt::is_cons(&__t2839) }; if rt::is_truthy(interp, &__t2895)? { { let v_W4929 = { let __t2840 = v_W4928.clone(); rt::hd(&__t2840)? }; { let v_W4930 = { let __t2842 = { let __t2841 = v_W4928.clone(); rt::tl(&__t2841)? }; let __t2843 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2842, __t2843])? }; { let __t2894 = { let __t2844 = v_W4930.clone(); let __t2845 = Value::nil(); rt::eq(&__t2844, &__t2845) }; if rt::is_truthy(interp, &__t2894)? { { let v_W4931 = { let __t2847 = { let __t2846 = v_W4925.clone(); rt::tl(&__t2846)? }; let __t2848 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2847, __t2848])? }; { let __t2893 = { let __t2849 = v_W4931.clone(); let __t2850 = Value::nil(); rt::eq(&__t2849, &__t2850) }; if rt::is_truthy(interp, &__t2893)? { { let v_W4932 = { let __t2851 = v_W4914.clone(); rt::tl(&__t2851)? }; { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2857 = { let __t2854 = { let __t2852 = v_W4924.clone(); let __t2853 = v_V4847.clone(); rt::apply_direct(interp, "shen.deref", &[__t2852, __t2853])? }; let __t2856 = { let __t2855 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t2855])? }; rt::eq(&__t2854, &__t2856) }; let __t2858 = v_V4847.clone(); let __t2859 = v_V4848.clone(); let __t2860 = v_W4851.clone(); let __t2892 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4919 = v_W4919.clone(); let v_W4921 = v_W4921.clone(); let v_W4924 = v_W4924.clone(); let v_W4929 = v_W4929.clone(); let v_W4932 = v_W4932.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2861 = v_V4847.clone(); let __t2862 = v_V4848.clone(); let __t2863 = v_W4851.clone(); let __t2891 = { let v_V4845 = v_V4845.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4919 = v_W4919.clone(); let v_W4921 = v_W4921.clone(); let v_W4924 = v_W4924.clone(); let v_W4929 = v_W4929.clone(); let v_W4932 = v_W4932.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2884 = { let __t2870 = { let __t2864 = v_W4919.clone(); let __t2869 = { let __t2865 = v_W4924.clone(); let __t2868 = { let __t2866 = v_W4929.clone(); let __t2867 = Value::nil(); rt::cons(&__t2866, &__t2867) }; rt::cons(&__t2865, &__t2868) }; rt::cons(&__t2864, &__t2869) }; let __t2883 = { let __t2881 = { let __t2871 = v_W4921.clone(); let __t2880 = { let __t2872 = v_W4924.clone(); let __t2879 = { let __t2877 = { let __t2873 = Value::sym(interp.intern("vector")); let __t2876 = { let __t2874 = v_W4929.clone(); let __t2875 = Value::nil(); rt::cons(&__t2874, &__t2875) }; rt::cons(&__t2873, &__t2876) }; let __t2878 = Value::nil(); rt::cons(&__t2877, &__t2878) }; rt::cons(&__t2872, &__t2879) }; rt::cons(&__t2871, &__t2880) }; let __t2882 = v_W4932.clone(); rt::cons(&__t2881, &__t2882) }; rt::cons(&__t2870, &__t2883) }; let __t2885 = v_V4845.clone(); let __t2886 = Value::bool(true); let __t2887 = v_V4847.clone(); let __t2888 = v_V4848.clone(); let __t2889 = v_W4851.clone(); let __t2890 = v_V4850.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2884, __t2885, __t2886, __t2887, __t2888, __t2889, __t2890])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4919, v_W4921, v_W4924, v_W4929, v_W4932], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2861, __t2862, __t2863, __t2891])? }), vec![v_V4845, v_V4847, v_V4848, v_V4850, v_W4851, v_W4919, v_W4921, v_W4924, v_W4929, v_W4932], interp) }; rt::apply_direct(interp, "when", &[__t2857, __t2858, __t2859, __t2860, __t2892])? } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { Value::bool(false) } } } } else { @@ -5876,44 +5908,44 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2901 = { - let __t2899 = - v_W5331.clone(); - let __t2900 = + let __t2910 = { + let __t2908 = + v_W4913.clone(); + let __t2909 = Value::bool(false); - rt::eq(&__t2899, &__t2900) + rt::eq(&__t2908, &__t2909) }; if match rt::is_truthy( - interp, &__t2901, + interp, &__t2910, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5351 = { - let __t2948 = { - let __t2902 = - v_V5266 + let v_W4933 = { + let __t2957 = { + let __t2911 = + v_V4848 .clone( ); - rt::apply_direct(interp, "shen.unlocked?", &[__t2902])? + rt::apply_direct(interp, "shen.unlocked?", &[__t2911])? }; if rt::is_truthy( interp, - &__t2948, + &__t2957, )? { { - let v_W5352 = { - let __t2903 = v_V5262.clone(); - let __t2904 = v_V5265.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t2903, __t2904])? + let v_W4934 = { + let __t2912 = v_V4844.clone(); + let __t2913 = v_V4847.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t2912, __t2913])? }; { - let __t2947 = { - let __t2905 = v_W5352.clone(); - rt::is_cons(&__t2905) + let __t2956 = { + let __t2914 = v_W4934.clone(); + rt::is_cons(&__t2914) }; - if rt::is_truthy(interp, &__t2947)? { { let v_W5353 = { let __t2906 = v_W5352.clone(); rt::hd(&__t2906)? }; { let v_W5354 = { let __t2907 = v_W5352.clone(); rt::tl(&__t2907)? }; { let v_W5355 = { let __t2908 = v_V5263.clone(); let __t2909 = v_V5265.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2908, __t2909])? }; { let v_W5356 = { let v_V5264 = v_V5264.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5353 = v_W5353.clone(); let v_W5354 = v_W5354.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5357 = args[0].clone(); Ok({ let v_V5264 = v_V5264.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5353 = v_W5353.clone(); let v_W5354 = v_W5354.clone(); let v_Z5357 = v_Z5357.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5358 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2910 = v_Z5357.clone(); let __t2911 = v_W5353.clone(); let __t2912 = v_V5265.clone(); let __t2913 = v_V5266.clone(); let __t2914 = v_W5269.clone(); let __t2922 = { let v_V5264 = v_V5264.clone(); let v_V5265 = v_V5265.clone(); let v_V5266 = v_V5266.clone(); let v_V5268 = v_V5268.clone(); let v_W5269 = v_W5269.clone(); let v_W5354 = v_W5354.clone(); let v_Z5358 = v_Z5358.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2915 = v_W5354.clone(); let __t2916 = v_Z5358.clone(); let __t2917 = v_V5264.clone(); let __t2918 = v_V5265.clone(); let __t2919 = v_V5266.clone(); let __t2920 = v_W5269.clone(); let __t2921 = v_V5268.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2915, __t2916, __t2917, __t2918, __t2919, __t2920, __t2921])? }), vec![v_V5264, v_V5265, v_V5266, v_V5268, v_W5269, v_W5354, v_Z5358], interp) }; rt::apply_direct(interp, "bind", &[__t2910, __t2911, __t2912, __t2913, __t2914, __t2922])? } }) }, vec![v_V5264, v_V5265, v_V5266, v_V5268, v_W5269, v_W5353, v_W5354, v_Z5357], interp) }) }, vec![v_V5264, v_V5265, v_V5266, v_V5268, v_W5269, v_W5353, v_W5354], interp) }; { let __t2946 = { let __t2923 = v_W5355.clone(); rt::is_cons(&__t2923) }; if rt::is_truthy(interp, &__t2946)? { { let v_W5359 = { let __t2924 = v_W5355.clone(); rt::hd(&__t2924)? }; { let v_W5360 = { let __t2925 = v_W5355.clone(); rt::tl(&__t2925)? }; { let __t2927 = { let __t2926 = v_W5359.clone(); rt::apply_value(interp, v_W5356.clone(), &[__t2926])? }; let __t2928 = v_W5360.clone(); rt::apply_value(interp, __t2927, &[__t2928])? } } } } else { { let __t2945 = { let __t2929 = v_W5355.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2929])? }; if rt::is_truthy(interp, &__t2945)? { { let v_W5361 = { let __t2930 = v_V5265.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2930])? }; { let __t2931 = v_V5265.clone(); let __t2944 = { let v_W5362 = { let __t2932 = v_V5265.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2932])? }; { let __t2933 = v_V5265.clone(); let __t2943 = { let __t2934 = v_W5355.clone(); let __t2937 = { let __t2935 = v_W5361.clone(); let __t2936 = v_W5362.clone(); rt::cons(&__t2935, &__t2936) }; let __t2938 = v_V5265.clone(); let __t2942 = { let v_W5356 = v_W5356.clone(); let v_W5361 = v_W5361.clone(); let v_W5362 = v_W5362.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2940 = { let __t2939 = v_W5361.clone(); rt::apply_value(interp, v_W5356.clone(), &[__t2939])? }; let __t2941 = v_W5362.clone(); rt::apply_value(interp, __t2940, &[__t2941])? }), vec![v_W5356, v_W5361, v_W5362], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2934, __t2937, __t2938, __t2942])? }; rt::apply_direct(interp, "shen.gc", &[__t2933, __t2943])? } }; rt::apply_direct(interp, "shen.gc", &[__t2931, __t2944])? } } } else { Value::bool(false) } } } } } } } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t2956)? { { let v_W4935 = { let __t2915 = v_W4934.clone(); rt::hd(&__t2915)? }; { let v_W4936 = { let __t2916 = v_W4934.clone(); rt::tl(&__t2916)? }; { let v_W4937 = { let __t2917 = v_V4845.clone(); let __t2918 = v_V4847.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2917, __t2918])? }; { let v_W4938 = { let v_V4846 = v_V4846.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4935 = v_W4935.clone(); let v_W4936 = v_W4936.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4939 = args[0].clone(); Ok({ let v_V4846 = v_V4846.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4935 = v_W4935.clone(); let v_W4936 = v_W4936.clone(); let v_Z4939 = v_Z4939.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z4940 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2919 = v_Z4939.clone(); let __t2920 = v_W4935.clone(); let __t2921 = v_V4847.clone(); let __t2922 = v_V4848.clone(); let __t2923 = v_W4851.clone(); let __t2931 = { let v_V4846 = v_V4846.clone(); let v_V4847 = v_V4847.clone(); let v_V4848 = v_V4848.clone(); let v_V4850 = v_V4850.clone(); let v_W4851 = v_W4851.clone(); let v_W4936 = v_W4936.clone(); let v_Z4940 = v_Z4940.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2924 = v_W4936.clone(); let __t2925 = v_Z4940.clone(); let __t2926 = v_V4846.clone(); let __t2927 = v_V4847.clone(); let __t2928 = v_V4848.clone(); let __t2929 = v_W4851.clone(); let __t2930 = v_V4850.clone(); rt::apply_direct(interp, "shen.l-rules", &[__t2924, __t2925, __t2926, __t2927, __t2928, __t2929, __t2930])? }), vec![v_V4846, v_V4847, v_V4848, v_V4850, v_W4851, v_W4936, v_Z4940], interp) }; rt::apply_direct(interp, "bind", &[__t2919, __t2920, __t2921, __t2922, __t2923, __t2931])? } }) }, vec![v_V4846, v_V4847, v_V4848, v_V4850, v_W4851, v_W4935, v_W4936, v_Z4939], interp) }) }, vec![v_V4846, v_V4847, v_V4848, v_V4850, v_W4851, v_W4935, v_W4936], interp) }; { let __t2955 = { let __t2932 = v_W4937.clone(); rt::is_cons(&__t2932) }; if rt::is_truthy(interp, &__t2955)? { { let v_W4941 = { let __t2933 = v_W4937.clone(); rt::hd(&__t2933)? }; { let v_W4942 = { let __t2934 = v_W4937.clone(); rt::tl(&__t2934)? }; { let __t2936 = { let __t2935 = v_W4941.clone(); rt::apply_value(interp, v_W4938.clone(), &[__t2935])? }; let __t2937 = v_W4942.clone(); rt::apply_value(interp, __t2936, &[__t2937])? } } } } else { { let __t2954 = { let __t2938 = v_W4937.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t2938])? }; if rt::is_truthy(interp, &__t2954)? { { let v_W4943 = { let __t2939 = v_V4847.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2939])? }; { let __t2940 = v_V4847.clone(); let __t2953 = { let v_W4944 = { let __t2941 = v_V4847.clone(); rt::apply_direct(interp, "shen.newpv", &[__t2941])? }; { let __t2942 = v_V4847.clone(); let __t2952 = { let __t2943 = v_W4937.clone(); let __t2946 = { let __t2944 = v_W4943.clone(); let __t2945 = v_W4944.clone(); rt::cons(&__t2944, &__t2945) }; let __t2947 = v_V4847.clone(); let __t2951 = { let v_W4938 = v_W4938.clone(); let v_W4943 = v_W4943.clone(); let v_W4944 = v_W4944.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2949 = { let __t2948 = v_W4943.clone(); rt::apply_value(interp, v_W4938.clone(), &[__t2948])? }; let __t2950 = v_W4944.clone(); rt::apply_value(interp, __t2949, &[__t2950])? }), vec![v_W4938, v_W4943, v_W4944], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t2943, __t2946, __t2947, __t2951])? }; rt::apply_direct(interp, "shen.gc", &[__t2942, __t2952])? } }; rt::apply_direct(interp, "shen.gc", &[__t2940, __t2953])? } } } else { Value::bool(false) } } } } } } } } } else { Value::bool(false) } } } } else { @@ -5923,45 +5955,45 @@ pub fn aot_shen_x2e_l_x2d_rules(interp: &mut Interp, args: &[Value]) -> ShenResu } }; { - let __t2951 = { - let __t2949 = - v_W5351 + let __t2960 = { + let __t2958 = + v_W4933 .clone( ); - let __t2950 = + let __t2959 = Value::bool( false, ); rt::eq( - &__t2949, - &__t2950, + &__t2958, + &__t2959, ) }; - if match rt::is_truthy(interp, &__t2951) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2952 = v_V5266.clone(); let __t2953 = v_W5269.clone(); rt::apply_direct(interp, "shen.unlock", &[__t2952, __t2953])? }); } else { break Ok(v_W5351.clone()); } + if match rt::is_truthy(interp, &__t2960) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t2961 = v_V4848.clone(); let __t2962 = v_W4851.clone(); rt::apply_direct(interp, "shen.unlock", &[__t2961, __t2962])? }); } else { break Ok(v_W4933.clone()); } } } } else { - break Ok(v_W5331.clone()); + break Ok(v_W4913.clone()); } } } } else { - break Ok(v_W5315.clone()); + break Ok(v_W4897.clone()); } } } } else { - break Ok(v_W5293.clone()); + break Ok(v_W4875.clone()); } } } } else { - break Ok(v_W5273.clone()); + break Ok(v_W4855.clone()); } } } } else { - break Ok(v_W5270.clone()); + break Ok(v_W4852.clone()); } } } @@ -5983,145 +6015,145 @@ pub fn aot_shen_x2e_t_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResult", 0, move |interp, _args| Ok({ let __t2982 = v_W5376.clone(); let __t2986 = { let __t2985 = { let __t2983 = v_W5374.clone(); let __t2984 = v_W5375.clone(); rt::cons(&__t2983, &__t2984) }; rt::apply_direct(interp, "shen.sigxrules", &[__t2985])? }; let __t2987 = v_V5365.clone(); let __t2988 = v_V5366.clone(); let __t2989 = v_W5369.clone(); let __t3031 = { let v_V5364 = v_V5364.clone(); let v_V5365 = v_V5365.clone(); let v_V5366 = v_V5366.clone(); let v_V5368 = v_V5368.clone(); let v_W5369 = v_W5369.clone(); let v_W5374 = v_W5374.clone(); let v_W5376 = v_W5376.clone(); let v_W5377 = v_W5377.clone(); let v_W5378 = v_W5378.clone(); let v_W5379 = v_W5379.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2990 = v_W5379.clone(); let __t2994 = { let __t2993 = { let __t2991 = v_W5376.clone(); let __t2992 = v_V5365.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2991, __t2992])? }; rt::apply_direct(interp, "fst", &[__t2993])? }; let __t2995 = v_V5365.clone(); let __t2996 = v_V5366.clone(); let __t2997 = v_W5369.clone(); let __t3030 = { let v_V5364 = v_V5364.clone(); let v_V5365 = v_V5365.clone(); let v_V5366 = v_V5366.clone(); let v_V5368 = v_V5368.clone(); let v_W5369 = v_W5369.clone(); let v_W5374 = v_W5374.clone(); let v_W5376 = v_W5376.clone(); let v_W5377 = v_W5377.clone(); let v_W5378 = v_W5378.clone(); let v_W5379 = v_W5379.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2998 = v_W5377.clone(); let __t3002 = { let __t3001 = { let __t2999 = v_W5376.clone(); let __t3000 = v_V5365.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t2999, __t3000])? }; rt::apply_direct(interp, "snd", &[__t3001])? }; let __t3003 = v_V5365.clone(); let __t3004 = v_V5366.clone(); let __t3005 = v_W5369.clone(); let __t3029 = { let v_V5364 = v_V5364.clone(); let v_V5365 = v_V5365.clone(); let v_V5366 = v_V5366.clone(); let v_V5368 = v_V5368.clone(); let v_W5369 = v_W5369.clone(); let v_W5374 = v_W5374.clone(); let v_W5377 = v_W5377.clone(); let v_W5378 = v_W5378.clone(); let v_W5379 = v_W5379.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3006 = v_W5378.clone(); let __t3010 = { let __t3009 = { let __t3007 = v_W5379.clone(); let __t3008 = v_V5365.clone(); rt::apply_direct(interp, "shen.deref", &[__t3007, __t3008])? }; rt::apply_direct(interp, "shen.freshen-sig", &[__t3009])? }; let __t3011 = v_V5365.clone(); let __t3012 = v_V5366.clone(); let __t3013 = v_W5369.clone(); let __t3028 = { let v_V5364 = v_V5364.clone(); let v_V5365 = v_V5365.clone(); let v_V5366 = v_V5366.clone(); let v_V5368 = v_V5368.clone(); let v_W5369 = v_W5369.clone(); let v_W5374 = v_W5374.clone(); let v_W5377 = v_W5377.clone(); let v_W5378 = v_W5378.clone(); let v_W5379 = v_W5379.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3014 = v_W5374.clone(); let __t3015 = v_W5377.clone(); let __t3016 = v_W5378.clone(); let __t3017 = Value::int(1i64); let __t3018 = v_V5365.clone(); let __t3019 = v_V5366.clone(); let __t3020 = v_W5369.clone(); let __t3027 = { let v_V5364 = v_V5364.clone(); let v_V5365 = v_V5365.clone(); let v_V5366 = v_V5366.clone(); let v_V5368 = v_V5368.clone(); let v_W5369 = v_W5369.clone(); let v_W5379 = v_W5379.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3021 = v_W5379.clone(); let __t3022 = v_V5364.clone(); let __t3023 = v_V5365.clone(); let __t3024 = v_V5366.clone(); let __t3025 = v_W5369.clone(); let __t3026 = v_V5368.clone(); rt::apply_direct(interp, "is", &[__t3021, __t3022, __t3023, __t3024, __t3025, __t3026])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5379], interp) }; rt::apply_direct(interp, "shen.t*-rules", &[__t3014, __t3015, __t3016, __t3017, __t3018, __t3019, __t3020, __t3027])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5374, v_W5377, v_W5378, v_W5379], interp) }; rt::apply_direct(interp, "bind", &[__t3006, __t3010, __t3011, __t3012, __t3013, __t3028])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5374, v_W5377, v_W5378, v_W5379], interp) }; rt::apply_direct(interp, "bind", &[__t2998, __t3002, __t3003, __t3004, __t3005, __t3029])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5374, v_W5376, v_W5377, v_W5378, v_W5379], interp) }; rt::apply_direct(interp, "bind", &[__t2990, __t2994, __t2995, __t2996, __t2997, __t3030])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5374, v_W5376, v_W5377, v_W5378, v_W5379], interp) }; rt::apply_direct(interp, "bind", &[__t2982, __t2986, __t2987, __t2988, __t2989, __t3031])? }), vec![v_V5364, v_V5365, v_V5366, v_V5368, v_W5369, v_W5374, v_W5375, v_W5376, v_W5377, v_W5378, v_W5379], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2979, __t2980, __t2981, __t3032])? } }; - rt::apply_direct(interp, "shen.gc", &[__t2978, __t3033])? + let __t2987 = v_V4947.clone(); + let __t3042 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t2988 = v_V4947.clone(); let __t2989 = v_V4948.clone(); let __t2990 = v_W4951.clone(); let __t3041 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4956 = v_W4956.clone(); let v_W4957 = v_W4957.clone(); let v_W4958 = v_W4958.clone(); let v_W4959 = v_W4959.clone(); let v_W4960 = v_W4960.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2991 = v_W4958.clone(); let __t2995 = { let __t2994 = { let __t2992 = v_W4956.clone(); let __t2993 = v_W4957.clone(); rt::cons(&__t2992, &__t2993) }; rt::apply_direct(interp, "shen.sigxrules", &[__t2994])? }; let __t2996 = v_V4947.clone(); let __t2997 = v_V4948.clone(); let __t2998 = v_W4951.clone(); let __t3040 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4956 = v_W4956.clone(); let v_W4958 = v_W4958.clone(); let v_W4959 = v_W4959.clone(); let v_W4960 = v_W4960.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t2999 = v_W4961.clone(); let __t3003 = { let __t3002 = { let __t3000 = v_W4958.clone(); let __t3001 = v_V4947.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3000, __t3001])? }; rt::apply_direct(interp, "fst", &[__t3002])? }; let __t3004 = v_V4947.clone(); let __t3005 = v_V4948.clone(); let __t3006 = v_W4951.clone(); let __t3039 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4956 = v_W4956.clone(); let v_W4958 = v_W4958.clone(); let v_W4959 = v_W4959.clone(); let v_W4960 = v_W4960.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3007 = v_W4959.clone(); let __t3011 = { let __t3010 = { let __t3008 = v_W4958.clone(); let __t3009 = v_V4947.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3008, __t3009])? }; rt::apply_direct(interp, "snd", &[__t3010])? }; let __t3012 = v_V4947.clone(); let __t3013 = v_V4948.clone(); let __t3014 = v_W4951.clone(); let __t3038 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4956 = v_W4956.clone(); let v_W4959 = v_W4959.clone(); let v_W4960 = v_W4960.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3015 = v_W4960.clone(); let __t3019 = { let __t3018 = { let __t3016 = v_W4961.clone(); let __t3017 = v_V4947.clone(); rt::apply_direct(interp, "shen.deref", &[__t3016, __t3017])? }; rt::apply_direct(interp, "shen.freshen-sig", &[__t3018])? }; let __t3020 = v_V4947.clone(); let __t3021 = v_V4948.clone(); let __t3022 = v_W4951.clone(); let __t3037 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4956 = v_W4956.clone(); let v_W4959 = v_W4959.clone(); let v_W4960 = v_W4960.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3023 = v_W4956.clone(); let __t3024 = v_W4959.clone(); let __t3025 = v_W4960.clone(); let __t3026 = Value::int(1i64); let __t3027 = v_V4947.clone(); let __t3028 = v_V4948.clone(); let __t3029 = v_W4951.clone(); let __t3036 = { let v_V4946 = v_V4946.clone(); let v_V4947 = v_V4947.clone(); let v_V4948 = v_V4948.clone(); let v_V4950 = v_V4950.clone(); let v_W4951 = v_W4951.clone(); let v_W4961 = v_W4961.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3030 = v_W4961.clone(); let __t3031 = v_V4946.clone(); let __t3032 = v_V4947.clone(); let __t3033 = v_V4948.clone(); let __t3034 = v_W4951.clone(); let __t3035 = v_V4950.clone(); rt::apply_direct(interp, "is", &[__t3030, __t3031, __t3032, __t3033, __t3034, __t3035])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4961], interp) }; rt::apply_direct(interp, "shen.t*-rules", &[__t3023, __t3024, __t3025, __t3026, __t3027, __t3028, __t3029, __t3036])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4956, v_W4959, v_W4960, v_W4961], interp) }; rt::apply_direct(interp, "bind", &[__t3015, __t3019, __t3020, __t3021, __t3022, __t3037])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4956, v_W4959, v_W4960, v_W4961], interp) }; rt::apply_direct(interp, "bind", &[__t3007, __t3011, __t3012, __t3013, __t3014, __t3038])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4956, v_W4958, v_W4959, v_W4960, v_W4961], interp) }; rt::apply_direct(interp, "bind", &[__t2999, __t3003, __t3004, __t3005, __t3006, __t3039])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4956, v_W4958, v_W4959, v_W4960, v_W4961], interp) }; rt::apply_direct(interp, "bind", &[__t2991, __t2995, __t2996, __t2997, __t2998, __t3040])? }), vec![v_V4946, v_V4947, v_V4948, v_V4950, v_W4951, v_W4956, v_W4957, v_W4958, v_W4959, v_W4960, v_W4961], interp) }; rt::apply_direct(interp, "shen.cut", &[__t2988, __t2989, __t2990, __t3041])? } }; + rt::apply_direct(interp, "shen.gc", &[__t2987, __t3042])? } }; - rt::apply_direct(interp, "shen.gc", &[__t2976, __t3034])? + rt::apply_direct(interp, "shen.gc", &[__t2985, __t3043])? } }; - rt::apply_direct(interp, "shen.gc", &[__t2974, __t3035])? + rt::apply_direct(interp, "shen.gc", &[__t2983, __t3044])? } }; rt::apply_direct( interp, "shen.gc", - &[__t2972, __t3036], + &[__t2981, __t3045], )? } } @@ -6147,22 +6179,22 @@ pub fn aot_shen_x2e_t_x2a_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t3044 = v_V5366.clone(); - let __t3045 = v_W5369.clone(); - rt::apply_direct(interp, "shen.unlock", &[__t3044, __t3045])? + let __t3053 = v_V4948.clone(); + let __t3054 = v_W4951.clone(); + rt::apply_direct(interp, "shen.unlock", &[__t3053, __t3054])? }); } else { - break Ok(v_W5370.clone()); + break Ok(v_W4952.clone()); } } } @@ -6184,27 +6216,27 @@ pub fn aot_shen_x2e_sigxrules(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V5380 = args[0].clone(); + let mut v_V4962 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t3047 = { + let __t3056 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5381 = args[0].clone(); + let v_Z4963 = args[0].clone(); Ok({ - let __t3046 = v_Z5381.clone(); - rt::apply_direct(interp, "shen.", &[__t3046])? + let __t3055 = v_Z4963.clone(); + rt::apply_direct(interp, "shen.", &[__t3055])? }) }, Vec::new(), interp, ) }; - let __t3048 = v_V5380.clone(); - rt::apply_direct(interp, "compile", &[__t3047, __t3048])? + let __t3057 = v_V4962.clone(); + rt::apply_direct(interp, "compile", &[__t3056, __t3057])? }); } } @@ -6226,52 +6258,52 @@ pub fn aot_shen_x2e__x3c_sig_x2a_rules_x3e_( ))); } #[allow(unused_mut)] - let mut v_V5382 = args[0].clone(); + let mut v_V4964 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5383 = { - let __t3074 = { - let __t3049 = v_V5382.clone(); - rt::is_cons(&__t3049) + let v_W4965 = { + let __t3083 = { + let __t3058 = v_V4964.clone(); + rt::is_cons(&__t3058) }; - if rt::is_truthy(interp, &__t3074)? { + if rt::is_truthy(interp, &__t3083)? { { - let v_W5384 = { - let __t3050 = v_V5382.clone(); - rt::apply_direct(interp, "tail", &[__t3050])? + let v_W4966 = { + let __t3059 = v_V4964.clone(); + rt::apply_direct(interp, "tail", &[__t3059])? }; { - let __t3073 = { - let __t3051 = v_W5384.clone(); - let __t3052 = Value::sym(interp.intern("{")); - rt::apply_direct(interp, "shen.hds=?", &[__t3051, __t3052])? + let __t3082 = { + let __t3060 = v_W4966.clone(); + let __t3061 = Value::sym(interp.intern("{")); + rt::apply_direct(interp, "shen.hds=?", &[__t3060, __t3061])? }; - if rt::is_truthy(interp, &__t3073)? { + if rt::is_truthy(interp, &__t3082)? { { - let v_W5385 = { - let __t3053 = v_W5384.clone(); - rt::apply_direct(interp, "tail", &[__t3053])? + let v_W4967 = { + let __t3062 = v_W4966.clone(); + rt::apply_direct(interp, "tail", &[__t3062])? }; { - let v_W5386 = { - let __t3054 = v_W5385.clone(); + let v_W4968 = { + let __t3063 = v_W4967.clone(); rt::apply_direct( interp, "shen.", - &[__t3054], + &[__t3063], )? }; { - let __t3072 = { - let __t3055 = v_W5386.clone(); + let __t3081 = { + let __t3064 = v_W4968.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3055], + &[__t3064], )? }; - if rt::is_truthy(interp, &__t3072)? { + if rt::is_truthy(interp, &__t3081)? { { rt::apply_direct( interp, @@ -6281,89 +6313,89 @@ pub fn aot_shen_x2e__x3c_sig_x2a_rules_x3e_( } } else { { - let v_W5387 = { - let __t3056 = v_W5386.clone(); + let v_W4969 = { + let __t3065 = v_W4968.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t3056], + &[__t3065], )? }; { - let v_W5388 = { - let __t3057 = v_W5386.clone(); + let v_W4970 = { + let __t3066 = v_W4968.clone(); rt::apply_direct( interp, "shen.in->", - &[__t3057], + &[__t3066], )? }; { - let __t3071 = { - let __t3058 = v_W5388.clone(); - let __t3059 = + let __t3080 = { + let __t3067 = v_W4970.clone(); + let __t3068 = Value::sym(interp.intern("}")); rt::apply_direct( interp, "shen.hds=?", - &[__t3058, __t3059], + &[__t3067, __t3068], )? }; - if rt::is_truthy(interp, &__t3071)? { + if rt::is_truthy(interp, &__t3080)? { { - let v_W5389 = { - let __t3060 = - v_W5388.clone(); + let v_W4971 = { + let __t3069 = + v_W4970.clone(); rt::apply_direct( interp, "tail", - &[__t3060], + &[__t3069], )? }; { - let v_W5390 = { - let __t3061 = - v_W5389.clone(); + let v_W4972 = { + let __t3070 = + v_W4971.clone(); rt::apply_direct( interp, "shen.", - &[__t3061], + &[__t3070], )? }; { - let __t3070 = { - let __t3062 = - v_W5390.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3062])? + let __t3079 = { + let __t3071 = + v_W4972.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3071])? }; if rt::is_truthy( - interp, &__t3070, + interp, &__t3079, )? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5391 = { - let __t3063 = v_W5390.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t3063])? + let v_W4973 = { + let __t3072 = v_W4972.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t3072])? }; { - let v_W5392 = { - let __t3064 = v_W5390.clone(); - rt::apply_direct(interp, "shen.in->", &[__t3064])? + let v_W4974 = { + let __t3073 = v_W4972.clone(); + rt::apply_direct(interp, "shen.in->", &[__t3073])? }; { - let __t3065 = v_W5392.clone(); - let __t3069 = { - let v_W5393 = { let __t3066 = v_W5387.clone(); rt::apply_direct(interp, "shen.rectify-type", &[__t3066])? }; + let __t3074 = v_W4974.clone(); + let __t3078 = { + let v_W4975 = { let __t3075 = v_W4969.clone(); rt::apply_direct(interp, "shen.rectify-type", &[__t3075])? }; { - let __t3067 = v_W5393.clone(); - let __t3068 = v_W5391.clone(); - rt::apply_direct(interp, "@p", &[__t3067, __t3068])? + let __t3076 = v_W4975.clone(); + let __t3077 = v_W4973.clone(); + rt::apply_direct(interp, "@p", &[__t3076, __t3077])? } }; - rt::apply_direct(interp, "shen.comb", &[__t3065, __t3069])? + rt::apply_direct(interp, "shen.comb", &[__t3074, __t3078])? } } } @@ -6401,17 +6433,17 @@ pub fn aot_shen_x2e__x3c_sig_x2a_rules_x3e_( } }; { - let __t3076 = { - let __t3075 = v_W5383.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3075])? + let __t3085 = { + let __t3084 = v_W4965.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3084])? }; - if match rt::is_truthy(interp, &__t3076) { + if match rt::is_truthy(interp, &__t3085) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W5383.clone()); + break Ok(v_W4965.clone()); } } } @@ -6432,46 +6464,46 @@ pub fn aot_shen_x2e_freshen_x2d_sig(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5394 = args[0].clone(); + let mut v_V4976 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5395 = { - let __t3077 = v_V5394.clone(); - rt::apply_direct(interp, "shen.extract-vars", &[__t3077])? + let v_W4977 = { + let __t3086 = v_V4976.clone(); + rt::apply_direct(interp, "shen.extract-vars", &[__t3086])? }; { - let v_W5396 = { - let __t3083 = { + let v_W4978 = { + let __t3092 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5397 = args[0].clone(); + let v_Z4979 = args[0].clone(); Ok({ - let __t3078 = v_Z5397.clone(); - let __t3082 = { - let __t3081 = { - let __t3079 = Value::sym(interp.intern("&")); - let __t3080 = v_Z5397.clone(); - rt::apply_direct(interp, "concat", &[__t3079, __t3080])? + let __t3087 = v_Z4979.clone(); + let __t3091 = { + let __t3090 = { + let __t3088 = Value::sym(interp.intern("&")); + let __t3089 = v_Z4979.clone(); + rt::apply_direct(interp, "concat", &[__t3088, __t3089])? }; - rt::apply_direct(interp, "shen.freshterm", &[__t3081])? + rt::apply_direct(interp, "shen.freshterm", &[__t3090])? }; - rt::cons(&__t3078, &__t3082) + rt::cons(&__t3087, &__t3091) }) }, Vec::new(), interp, ) }; - let __t3084 = v_W5395.clone(); - rt::apply_direct(interp, "map", &[__t3083, __t3084])? + let __t3093 = v_W4977.clone(); + rt::apply_direct(interp, "map", &[__t3092, __t3093])? }; break Ok({ - let __t3085 = v_W5396.clone(); - let __t3086 = v_V5394.clone(); - rt::apply_direct(interp, "shen.freshen-type", &[__t3085, __t3086])? + let __t3094 = v_W4978.clone(); + let __t3095 = v_V4976.clone(); + rt::apply_direct(interp, "shen.freshen-type", &[__t3094, __t3095])? }); } } @@ -6492,83 +6524,83 @@ pub fn aot_shen_x2e_freshen_x2d_type(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5398 = args[0].clone(); + let mut v_V4980 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5399 = args[1].clone(); + let mut v_V4981 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t3107 = { - let __t3105 = Value::nil(); - let __t3106 = v_V5398.clone(); - rt::eq(&__t3105, &__t3106) + let __t3116 = { + let __t3114 = Value::nil(); + let __t3115 = v_V4980.clone(); + rt::eq(&__t3114, &__t3115) }; - if match rt::is_truthy(interp, &__t3107) { + if match rt::is_truthy(interp, &__t3116) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5399.clone()); + break Ok(v_V4981.clone()); } else { { - let __t3104 = { - let __t3092 = { - let __t3089 = v_V5398.clone(); - rt::is_cons(&__t3089) + let __t3113 = { + let __t3101 = { + let __t3098 = v_V4980.clone(); + rt::is_cons(&__t3098) }; - if !rt::is_truthy(interp, &__t3092)? { + if !rt::is_truthy(interp, &__t3101)? { Value::bool(false) } else { - let __t3093 = { - let __t3091 = { - let __t3090 = v_V5398.clone(); - rt::hd(&__t3090)? + let __t3102 = { + let __t3100 = { + let __t3099 = v_V4980.clone(); + rt::hd(&__t3099)? }; - rt::is_cons(&__t3091) + rt::is_cons(&__t3100) }; - Value::bool(rt::is_truthy(interp, &__t3093)?) + Value::bool(rt::is_truthy(interp, &__t3102)?) } }; - if match rt::is_truthy(interp, &__t3104) { + if match rt::is_truthy(interp, &__t3113) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3095 = { - let __t3094 = v_V5398.clone(); - rt::tl(&__t3094)? + let __t3104 = { + let __t3103 = v_V4980.clone(); + rt::tl(&__t3103)? }; - let __t3103 = { - let __t3098 = { - let __t3097 = { - let __t3096 = v_V5398.clone(); - rt::hd(&__t3096)? + let __t3112 = { + let __t3107 = { + let __t3106 = { + let __t3105 = v_V4980.clone(); + rt::hd(&__t3105)? }; - rt::tl(&__t3097)? + rt::tl(&__t3106)? }; - let __t3101 = { - let __t3100 = { - let __t3099 = v_V5398.clone(); - rt::hd(&__t3099)? + let __t3110 = { + let __t3109 = { + let __t3108 = v_V4980.clone(); + rt::hd(&__t3108)? }; - rt::hd(&__t3100)? + rt::hd(&__t3109)? }; - let __t3102 = v_V5399.clone(); - rt::apply_direct(interp, "subst", &[__t3098, __t3101, __t3102])? + let __t3111 = v_V4981.clone(); + rt::apply_direct(interp, "subst", &[__t3107, __t3110, __t3111])? }; - v_V5398 = __t3095; - v_V5399 = __t3103; + v_V4980 = __t3104; + v_V4981 = __t3112; continue; } } else { { - let __t3088 = Value::bool(true); - if match rt::is_truthy(interp, &__t3088) { + let __t3097 = Value::bool(true); + if match rt::is_truthy(interp, &__t3097) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3087 = Value::sym(interp.intern("shen.freshen-type")); - rt::apply_direct(interp, "shen.f-error", &[__t3087])? + let __t3096 = Value::str("partial function shen.freshen-type"); + rt::apply_direct(interp, "simple-error", &[__t3096])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -6595,83 +6627,83 @@ pub fn aot_shen_x2e__x3c_rules_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V5400 = args[0].clone(); + let mut v_V4982 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5401 = { - let v_W5402 = { - let __t3108 = v_V5400.clone(); - rt::apply_direct(interp, "shen.", &[__t3108])? + let v_W4983 = { + let v_W4984 = { + let __t3117 = v_V4982.clone(); + rt::apply_direct(interp, "shen.", &[__t3117])? }; { - let __t3121 = { - let __t3109 = v_W5402.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3109])? + let __t3130 = { + let __t3118 = v_W4984.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3118])? }; - if rt::is_truthy(interp, &__t3121)? { + if rt::is_truthy(interp, &__t3130)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5403 = { - let __t3110 = v_W5402.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t3110])? + let v_W4985 = { + let __t3119 = v_W4984.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t3119])? }; { - let v_W5404 = { - let __t3111 = v_W5402.clone(); - rt::apply_direct(interp, "shen.in->", &[__t3111])? + let v_W4986 = { + let __t3120 = v_W4984.clone(); + rt::apply_direct(interp, "shen.in->", &[__t3120])? }; { - let v_W5405 = { - let __t3112 = v_W5404.clone(); - rt::apply_direct(interp, "shen.", &[__t3112])? + let v_W4987 = { + let __t3121 = v_W4986.clone(); + rt::apply_direct(interp, "shen.", &[__t3121])? }; { - let __t3120 = { - let __t3113 = v_W5405.clone(); + let __t3129 = { + let __t3122 = v_W4987.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3113], + &[__t3122], )? }; - if rt::is_truthy(interp, &__t3120)? { + if rt::is_truthy(interp, &__t3129)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5406 = { - let __t3114 = v_W5405.clone(); + let v_W4988 = { + let __t3123 = v_W4987.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t3114], + &[__t3123], )? }; { - let v_W5407 = { - let __t3115 = v_W5405.clone(); + let v_W4989 = { + let __t3124 = v_W4987.clone(); rt::apply_direct( interp, "shen.in->", - &[__t3115], + &[__t3124], )? }; { - let __t3116 = v_W5407.clone(); - let __t3119 = { - let __t3117 = v_W5403.clone(); - let __t3118 = v_W5406.clone(); - rt::cons(&__t3117, &__t3118) + let __t3125 = v_W4989.clone(); + let __t3128 = { + let __t3126 = v_W4985.clone(); + let __t3127 = v_W4988.clone(); + rt::cons(&__t3126, &__t3127) }; rt::apply_direct( interp, "shen.comb", - &[__t3116, __t3119], + &[__t3125, __t3128], )? } } @@ -6685,51 +6717,51 @@ pub fn aot_shen_x2e__x3c_rules_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3123 = { - let __t3122 = v_W5401.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3122])? + let __t3132 = { + let __t3131 = v_W4983.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3131])? }; - if match rt::is_truthy(interp, &__t3123) { + if match rt::is_truthy(interp, &__t3132) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5408 = { - let v_W5409 = { - let __t3124 = v_V5400.clone(); - rt::apply_direct(interp, "shen.", &[__t3124])? + let v_W4990 = { + let v_W4991 = { + let __t3133 = v_V4982.clone(); + rt::apply_direct(interp, "shen.", &[__t3133])? }; { - let __t3132 = { - let __t3125 = v_W5409.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3125])? + let __t3141 = { + let __t3134 = v_W4991.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3134])? }; - if rt::is_truthy(interp, &__t3132)? { + if rt::is_truthy(interp, &__t3141)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5410 = { - let __t3126 = v_W5409.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t3126])? + let v_W4992 = { + let __t3135 = v_W4991.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t3135])? }; { - let v_W5411 = { - let __t3127 = v_W5409.clone(); - rt::apply_direct(interp, "shen.in->", &[__t3127])? + let v_W4993 = { + let __t3136 = v_W4991.clone(); + rt::apply_direct(interp, "shen.in->", &[__t3136])? }; { - let __t3128 = v_W5411.clone(); - let __t3131 = { - let __t3129 = v_W5410.clone(); - let __t3130 = Value::nil(); - rt::cons(&__t3129, &__t3130) + let __t3137 = v_W4993.clone(); + let __t3140 = { + let __t3138 = v_W4992.clone(); + let __t3139 = Value::nil(); + rt::cons(&__t3138, &__t3139) }; rt::apply_direct( interp, "shen.comb", - &[__t3128, __t3131], + &[__t3137, __t3140], )? } } @@ -6738,22 +6770,22 @@ pub fn aot_shen_x2e__x3c_rules_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3134 = { - let __t3133 = v_W5408.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3133])? + let __t3143 = { + let __t3142 = v_W4990.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3142])? }; - if match rt::is_truthy(interp, &__t3134) { + if match rt::is_truthy(interp, &__t3143) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ rt::apply_direct(interp, "shen.parse-failure", &[])? }); } else { - break Ok(v_W5408.clone()); + break Ok(v_W4990.clone()); } } } } else { - break Ok(v_W5401.clone()); + break Ok(v_W4983.clone()); } } } @@ -6774,124 +6806,124 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V5412 = args[0].clone(); + let mut v_V4994 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5413 = { - let v_W5414 = { - let __t3135 = v_V5412.clone(); - rt::apply_direct(interp, "shen.", &[__t3135])? + let v_W4995 = { + let v_W4996 = { + let __t3144 = v_V4994.clone(); + rt::apply_direct(interp, "shen.", &[__t3144])? }; { - let __t3165 = { - let __t3136 = v_W5414.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3136])? + let __t3174 = { + let __t3145 = v_W4996.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3145])? }; - if rt::is_truthy(interp, &__t3165)? { + if rt::is_truthy(interp, &__t3174)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5415 = { - let __t3137 = v_W5414.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t3137])? + let v_W4997 = { + let __t3146 = v_W4996.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t3146])? }; { - let v_W5416 = { - let __t3138 = v_W5414.clone(); - rt::apply_direct(interp, "shen.in->", &[__t3138])? + let v_W4998 = { + let __t3147 = v_W4996.clone(); + rt::apply_direct(interp, "shen.in->", &[__t3147])? }; { - let __t3164 = { - let __t3139 = v_W5416.clone(); - let __t3140 = Value::sym(interp.intern("->")); - rt::apply_direct(interp, "shen.hds=?", &[__t3139, __t3140])? + let __t3173 = { + let __t3148 = v_W4998.clone(); + let __t3149 = Value::sym(interp.intern("->")); + rt::apply_direct(interp, "shen.hds=?", &[__t3148, __t3149])? }; - if rt::is_truthy(interp, &__t3164)? { + if rt::is_truthy(interp, &__t3173)? { { - let v_W5417 = { - let __t3141 = v_W5416.clone(); - rt::apply_direct(interp, "tail", &[__t3141])? + let v_W4999 = { + let __t3150 = v_W4998.clone(); + rt::apply_direct(interp, "tail", &[__t3150])? }; { - let __t3163 = { - let __t3142 = v_W5417.clone(); - rt::is_cons(&__t3142) + let __t3172 = { + let __t3151 = v_W4999.clone(); + rt::is_cons(&__t3151) }; - if rt::is_truthy(interp, &__t3163)? { + if rt::is_truthy(interp, &__t3172)? { { - let v_W5418 = { - let __t3143 = v_W5417.clone(); + let v_W5000 = { + let __t3152 = v_W4999.clone(); rt::apply_direct( interp, "head", - &[__t3143], + &[__t3152], )? }; { - let v_W5419 = { - let __t3144 = v_W5417.clone(); + let v_W5001 = { + let __t3153 = v_W4999.clone(); rt::apply_direct( interp, "tail", - &[__t3144], + &[__t3153], )? }; { - let __t3162 = { - let __t3145 = v_W5419.clone(); - let __t3146 = Value::sym( + let __t3171 = { + let __t3154 = v_W5001.clone(); + let __t3155 = Value::sym( interp.intern("where"), ); rt::apply_direct( interp, "shen.hds=?", - &[__t3145, __t3146], + &[__t3154, __t3155], )? }; - if rt::is_truthy(interp, &__t3162)? + if rt::is_truthy(interp, &__t3171)? { { - let v_W5420 = { - let __t3147 = - v_W5419.clone(); + let v_W5002 = { + let __t3156 = + v_W5001.clone(); rt::apply_direct( interp, "tail", - &[__t3147], + &[__t3156], )? }; { - let __t3161 = { - let __t3148 = - v_W5420.clone(); + let __t3170 = { + let __t3157 = + v_W5002.clone(); rt::is_cons( - &__t3148, + &__t3157, ) }; if rt::is_truthy( - interp, &__t3161, + interp, &__t3170, )? { { - let v_W5421 = { - let __t3149 = v_W5420.clone(); - rt::apply_direct(interp, "head", &[__t3149])? + let v_W5003 = { + let __t3158 = v_W5002.clone(); + rt::apply_direct(interp, "head", &[__t3158])? }; { - let v_W5422 = { - let __t3150 = v_W5420.clone(); - rt::apply_direct(interp, "tail", &[__t3150])? + let v_W5004 = { + let __t3159 = v_W5002.clone(); + rt::apply_direct(interp, "tail", &[__t3159])? }; { - let __t3151 = v_W5422.clone(); - let __t3160 = { - let __t3152 = v_W5415.clone(); - let __t3159 = { let __t3153 = Value::sym(interp.intern("where")); let __t3158 = { let __t3154 = v_W5421.clone(); let __t3157 = { let __t3155 = v_W5418.clone(); let __t3156 = Value::nil(); rt::cons(&__t3155, &__t3156) }; rt::cons(&__t3154, &__t3157) }; rt::cons(&__t3153, &__t3158) }; - rt::apply_direct(interp, "@p", &[__t3152, __t3159])? + let __t3160 = v_W5004.clone(); + let __t3169 = { + let __t3161 = v_W4997.clone(); + let __t3168 = { let __t3162 = Value::sym(interp.intern("where")); let __t3167 = { let __t3163 = v_W5003.clone(); let __t3166 = { let __t3164 = v_W5000.clone(); let __t3165 = Value::nil(); rt::cons(&__t3164, &__t3165) }; rt::cons(&__t3163, &__t3166) }; rt::cons(&__t3162, &__t3167) }; + rt::apply_direct(interp, "@p", &[__t3161, __t3168])? }; - rt::apply_direct(interp, "shen.comb", &[__t3151, __t3160])? + rt::apply_direct(interp, "shen.comb", &[__t3160, __t3169])? } } } @@ -6937,91 +6969,91 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3167 = { - let __t3166 = v_W5413.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3166])? + let __t3176 = { + let __t3175 = v_W4995.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3175])? }; - if match rt::is_truthy(interp, &__t3167) { + if match rt::is_truthy(interp, &__t3176) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5423 = { - let v_W5424 = { - let __t3168 = v_V5412.clone(); - rt::apply_direct(interp, "shen.", &[__t3168])? + let v_W5005 = { + let v_W5006 = { + let __t3177 = v_V4994.clone(); + rt::apply_direct(interp, "shen.", &[__t3177])? }; { - let __t3199 = { - let __t3169 = v_W5424.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3169])? + let __t3208 = { + let __t3178 = v_W5006.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3178])? }; - if rt::is_truthy(interp, &__t3199)? { + if rt::is_truthy(interp, &__t3208)? { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } else { { - let v_W5425 = { - let __t3170 = v_W5424.clone(); - rt::apply_direct(interp, "shen.<-out", &[__t3170])? + let v_W5007 = { + let __t3179 = v_W5006.clone(); + rt::apply_direct(interp, "shen.<-out", &[__t3179])? }; { - let v_W5426 = { - let __t3171 = v_W5424.clone(); - rt::apply_direct(interp, "shen.in->", &[__t3171])? + let v_W5008 = { + let __t3180 = v_W5006.clone(); + rt::apply_direct(interp, "shen.in->", &[__t3180])? }; { - let __t3198 = { - let __t3172 = v_W5426.clone(); - let __t3173 = Value::sym(interp.intern("<-")); + let __t3207 = { + let __t3181 = v_W5008.clone(); + let __t3182 = Value::sym(interp.intern("<-")); rt::apply_direct( interp, "shen.hds=?", - &[__t3172, __t3173], + &[__t3181, __t3182], )? }; - if rt::is_truthy(interp, &__t3198)? { + if rt::is_truthy(interp, &__t3207)? { { - let v_W5427 = { - let __t3174 = v_W5426.clone(); + let v_W5009 = { + let __t3183 = v_W5008.clone(); rt::apply_direct( interp, "tail", - &[__t3174], + &[__t3183], )? }; { - let __t3197 = { - let __t3175 = v_W5427.clone(); - rt::is_cons(&__t3175) + let __t3206 = { + let __t3184 = v_W5009.clone(); + rt::is_cons(&__t3184) }; - if rt::is_truthy(interp, &__t3197)? { + if rt::is_truthy(interp, &__t3206)? { { - let v_W5428 = { - let __t3176 = - v_W5427.clone(); + let v_W5010 = { + let __t3185 = + v_W5009.clone(); rt::apply_direct( interp, "head", - &[__t3176], + &[__t3185], )? }; { - let v_W5429 = { - let __t3177 = - v_W5427.clone(); + let v_W5011 = { + let __t3186 = + v_W5009.clone(); rt::apply_direct( interp, "tail", - &[__t3177], + &[__t3186], )? }; { - let __t3196 = { - let __t3178 = - v_W5429.clone(); - let __t3179 = + let __t3205 = { + let __t3187 = + v_W5011.clone(); + let __t3188 = Value::sym( interp .intern( @@ -7032,25 +7064,25 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> interp, "shen.hds=?", &[ - __t3178, - __t3179, + __t3187, + __t3188, ], )? }; if rt::is_truthy( - interp, &__t3196, + interp, &__t3205, )? { { - let v_W5430 = { - let __t3180 = v_W5429.clone(); - rt::apply_direct(interp, "tail", &[__t3180])? + let v_W5012 = { + let __t3189 = v_W5011.clone(); + rt::apply_direct(interp, "tail", &[__t3189])? }; { - let __t3195 = { - let __t3181 = v_W5430.clone(); - rt::is_cons(&__t3181) + let __t3204 = { + let __t3190 = v_W5012.clone(); + rt::is_cons(&__t3190) }; - if rt::is_truthy(interp, &__t3195)? { { let v_W5431 = { let __t3182 = v_W5430.clone(); rt::apply_direct(interp, "head", &[__t3182])? }; { let v_W5432 = { let __t3183 = v_W5430.clone(); rt::apply_direct(interp, "tail", &[__t3183])? }; { let __t3184 = v_W5432.clone(); let __t3194 = { let __t3185 = v_W5425.clone(); let __t3193 = { let __t3192 = { let __t3186 = Value::sym(interp.intern("where")); let __t3191 = { let __t3187 = v_W5431.clone(); let __t3190 = { let __t3188 = v_W5428.clone(); let __t3189 = Value::nil(); rt::cons(&__t3188, &__t3189) }; rt::cons(&__t3187, &__t3190) }; rt::cons(&__t3186, &__t3191) }; rt::apply_direct(interp, "shen.correct", &[__t3192])? }; rt::apply_direct(interp, "@p", &[__t3185, __t3193])? }; rt::apply_direct(interp, "shen.comb", &[__t3184, __t3194])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t3204)? { { let v_W5013 = { let __t3191 = v_W5012.clone(); rt::apply_direct(interp, "head", &[__t3191])? }; { let v_W5014 = { let __t3192 = v_W5012.clone(); rt::apply_direct(interp, "tail", &[__t3192])? }; { let __t3193 = v_W5014.clone(); let __t3203 = { let __t3194 = v_W5007.clone(); let __t3202 = { let __t3201 = { let __t3195 = Value::sym(interp.intern("where")); let __t3200 = { let __t3196 = v_W5013.clone(); let __t3199 = { let __t3197 = v_W5010.clone(); let __t3198 = Value::nil(); rt::cons(&__t3197, &__t3198) }; rt::cons(&__t3196, &__t3199) }; rt::cons(&__t3195, &__t3200) }; rt::apply_direct(interp, "shen.correct", &[__t3201])? }; rt::apply_direct(interp, "@p", &[__t3194, __t3202])? }; rt::apply_direct(interp, "shen.comb", &[__t3193, __t3203])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } else { @@ -7088,30 +7120,30 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3201 = { - let __t3200 = v_W5423.clone(); - rt::apply_direct(interp, "shen.parse-failure?", &[__t3200])? + let __t3210 = { + let __t3209 = v_W5005.clone(); + rt::apply_direct(interp, "shen.parse-failure?", &[__t3209])? }; - if match rt::is_truthy(interp, &__t3201) { + if match rt::is_truthy(interp, &__t3210) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5433 = { - let v_W5434 = { - let __t3202 = v_V5412.clone(); - rt::apply_direct(interp, "shen.", &[__t3202])? + let v_W5015 = { + let v_W5016 = { + let __t3211 = v_V4994.clone(); + rt::apply_direct(interp, "shen.", &[__t3211])? }; { - let __t3219 = { - let __t3203 = v_W5434.clone(); + let __t3228 = { + let __t3212 = v_W5016.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3203], + &[__t3212], )? }; - if rt::is_truthy(interp, &__t3219)? { + if rt::is_truthy(interp, &__t3228)? { { rt::apply_direct( interp, @@ -7121,78 +7153,78 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W5435 = { - let __t3204 = v_W5434.clone(); + let v_W5017 = { + let __t3213 = v_W5016.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t3204], + &[__t3213], )? }; { - let v_W5436 = { - let __t3205 = v_W5434.clone(); + let v_W5018 = { + let __t3214 = v_W5016.clone(); rt::apply_direct( interp, "shen.in->", - &[__t3205], + &[__t3214], )? }; { - let __t3218 = { - let __t3206 = v_W5436.clone(); - let __t3207 = + let __t3227 = { + let __t3215 = v_W5018.clone(); + let __t3216 = Value::sym(interp.intern("<-")); rt::apply_direct( interp, "shen.hds=?", - &[__t3206, __t3207], + &[__t3215, __t3216], )? }; - if rt::is_truthy(interp, &__t3218)? { + if rt::is_truthy(interp, &__t3227)? { { - let v_W5437 = { - let __t3208 = - v_W5436.clone(); + let v_W5019 = { + let __t3217 = + v_W5018.clone(); rt::apply_direct( interp, "tail", - &[__t3208], + &[__t3217], )? }; { - let __t3217 = { - let __t3209 = - v_W5437.clone(); - rt::is_cons(&__t3209) + let __t3226 = { + let __t3218 = + v_W5019.clone(); + rt::is_cons(&__t3218) }; if rt::is_truthy( - interp, &__t3217, + interp, &__t3226, )? { { - let v_W5438 = { - let __t3210 = - v_W5437 + let v_W5020 = { + let __t3219 = + v_W5019 .clone( ); - rt::apply_direct(interp, "head", &[__t3210])? + rt::apply_direct(interp, "head", &[__t3219])? }; { - let v_W5439 = { - let __t3211 = v_W5437.clone(); - rt::apply_direct(interp, "tail", &[__t3211])? + let v_W5021 = { + let __t3220 = v_W5019.clone(); + rt::apply_direct(interp, "tail", &[__t3220])? }; { - let __t3212 = v_W5439.clone(); - let __t3216 = { - let __t3213 = v_W5435.clone(); - let __t3215 = { - let __t3214 = v_W5438.clone(); - rt::apply_direct(interp, "shen.correct", &[__t3214])? + let __t3221 = v_W5021.clone(); + let __t3225 = { + let __t3222 = v_W5017.clone(); + let __t3224 = { + let __t3223 = v_W5020.clone(); + rt::apply_direct(interp, "shen.correct", &[__t3223])? }; - rt::apply_direct(interp, "@p", &[__t3213, __t3215])? + rt::apply_direct(interp, "@p", &[__t3222, __t3224])? }; - rt::apply_direct(interp, "shen.comb", &[__t3212, __t3216])? + rt::apply_direct(interp, "shen.comb", &[__t3221, __t3225])? } } } @@ -7219,38 +7251,38 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3221 = { - let __t3220 = v_W5433.clone(); + let __t3230 = { + let __t3229 = v_W5015.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3220], + &[__t3229], )? }; - if match rt::is_truthy(interp, &__t3221) { + if match rt::is_truthy(interp, &__t3230) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5440 = { - let v_W5441 = { - let __t3222 = v_V5412.clone(); + let v_W5022 = { + let v_W5023 = { + let __t3231 = v_V4994.clone(); rt::apply_direct( interp, "shen.", - &[__t3222], + &[__t3231], )? }; { - let __t3238 = { - let __t3223 = v_W5441.clone(); + let __t3247 = { + let __t3232 = v_W5023.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3223], + &[__t3232], )? }; - if rt::is_truthy(interp, &__t3238)? { + if rt::is_truthy(interp, &__t3247)? { { rt::apply_direct( interp, @@ -7260,29 +7292,29 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } } else { { - let v_W5442 = { - let __t3224 = v_W5441.clone(); + let v_W5024 = { + let __t3233 = v_W5023.clone(); rt::apply_direct( interp, "shen.<-out", - &[__t3224], + &[__t3233], )? }; { - let v_W5443 = { - let __t3225 = - v_W5441.clone(); + let v_W5025 = { + let __t3234 = + v_W5023.clone(); rt::apply_direct( interp, "shen.in->", - &[__t3225], + &[__t3234], )? }; { - let __t3237 = { - let __t3226 = - v_W5443.clone(); - let __t3227 = + let __t3246 = { + let __t3235 = + v_W5025.clone(); + let __t3236 = Value::sym( interp.intern( "->", @@ -7291,26 +7323,26 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> rt::apply_direct( interp, "shen.hds=?", - &[__t3226, __t3227], + &[__t3235, __t3236], )? }; if rt::is_truthy( - interp, &__t3237, + interp, &__t3246, )? { { - let v_W5444 = { - let __t3228 = - v_W5443 + let v_W5026 = { + let __t3237 = + v_W5025 .clone( ); - rt::apply_direct(interp, "tail", &[__t3228])? + rt::apply_direct(interp, "tail", &[__t3237])? }; { - let __t3236 = { - let __t3229 = v_W5444.clone(); - rt::is_cons(&__t3229) + let __t3245 = { + let __t3238 = v_W5026.clone(); + rt::is_cons(&__t3238) }; - if rt::is_truthy(interp, &__t3236)? { { let v_W5445 = { let __t3230 = v_W5444.clone(); rt::apply_direct(interp, "head", &[__t3230])? }; { let v_W5446 = { let __t3231 = v_W5444.clone(); rt::apply_direct(interp, "tail", &[__t3231])? }; { let __t3232 = v_W5446.clone(); let __t3235 = { let __t3233 = v_W5442.clone(); let __t3234 = v_W5445.clone(); rt::apply_direct(interp, "@p", &[__t3233, __t3234])? }; rt::apply_direct(interp, "shen.comb", &[__t3232, __t3235])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } + if rt::is_truthy(interp, &__t3245)? { { let v_W5027 = { let __t3239 = v_W5026.clone(); rt::apply_direct(interp, "head", &[__t3239])? }; { let v_W5028 = { let __t3240 = v_W5026.clone(); rt::apply_direct(interp, "tail", &[__t3240])? }; { let __t3241 = v_W5028.clone(); let __t3244 = { let __t3242 = v_W5024.clone(); let __t3243 = v_W5027.clone(); rt::apply_direct(interp, "@p", &[__t3242, __t3243])? }; rt::apply_direct(interp, "shen.comb", &[__t3241, __t3244])? } } } } else { { rt::apply_direct(interp, "shen.parse-failure", &[])? } } } } } else { @@ -7325,15 +7357,15 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> } }; { - let __t3240 = { - let __t3239 = v_W5440.clone(); + let __t3249 = { + let __t3248 = v_W5022.clone(); rt::apply_direct( interp, "shen.parse-failure?", - &[__t3239], + &[__t3248], )? }; - if match rt::is_truthy(interp, &__t3240) { + if match rt::is_truthy(interp, &__t3249) { Ok(b) => b, Err(e) => break Err(e), } { @@ -7345,22 +7377,22 @@ pub fn aot_shen_x2e__x3c_rule_x2a__x3e_(interp: &mut Interp, args: &[Value]) -> )? }); } else { - break Ok(v_W5440.clone()); + break Ok(v_W5022.clone()); } } } } else { - break Ok(v_W5433.clone()); + break Ok(v_W5015.clone()); } } } } else { - break Ok(v_W5423.clone()); + break Ok(v_W5005.clone()); } } } } else { - break Ok(v_W5413.clone()); + break Ok(v_W4995.clone()); } } } @@ -7381,589 +7413,589 @@ pub fn aot_shen_x2e_correct(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t3407 = Value::sym(interp.intern("where")); - let __t3431 = { - let __t3424 = { - let __t3408 = Value::sym(interp.intern("and")); - let __t3423 = { - let __t3411 = { - let __t3410 = { - let __t3409 = v_V5447.clone(); - rt::tl(&__t3409)? + let __t3416 = Value::sym(interp.intern("where")); + let __t3440 = { + let __t3433 = { + let __t3417 = Value::sym(interp.intern("and")); + let __t3432 = { + let __t3420 = { + let __t3419 = { + let __t3418 = v_V5029.clone(); + rt::tl(&__t3418)? }; - rt::hd(&__t3410)? + rt::hd(&__t3419)? }; - let __t3422 = { - let __t3420 = { - let __t3412 = Value::sym(interp.intern("not")); - let __t3419 = { - let __t3417 = { - let __t3416 = { - let __t3415 = { - let __t3414 = { - let __t3413 = v_V5447.clone(); - rt::tl(&__t3413)? + let __t3431 = { + let __t3429 = { + let __t3421 = Value::sym(interp.intern("not")); + let __t3428 = { + let __t3426 = { + let __t3425 = { + let __t3424 = { + let __t3423 = { + let __t3422 = v_V5029.clone(); + rt::tl(&__t3422)? }; - rt::tl(&__t3414)? + rt::tl(&__t3423)? }; - rt::hd(&__t3415)? + rt::hd(&__t3424)? }; - rt::tl(&__t3416)? + rt::tl(&__t3425)? }; - let __t3418 = Value::nil(); - rt::cons(&__t3417, &__t3418) + let __t3427 = Value::nil(); + rt::cons(&__t3426, &__t3427) }; - rt::cons(&__t3412, &__t3419) + rt::cons(&__t3421, &__t3428) }; - let __t3421 = Value::nil(); - rt::cons(&__t3420, &__t3421) + let __t3430 = Value::nil(); + rt::cons(&__t3429, &__t3430) }; - rt::cons(&__t3411, &__t3422) + rt::cons(&__t3420, &__t3431) }; - rt::cons(&__t3408, &__t3423) + rt::cons(&__t3417, &__t3432) }; - let __t3430 = { - let __t3429 = { - let __t3428 = { - let __t3427 = { - let __t3426 = { - let __t3425 = v_V5447.clone(); - rt::tl(&__t3425)? + let __t3439 = { + let __t3438 = { + let __t3437 = { + let __t3436 = { + let __t3435 = { + let __t3434 = v_V5029.clone(); + rt::tl(&__t3434)? }; - rt::tl(&__t3426)? + rt::tl(&__t3435)? }; - rt::hd(&__t3427)? + rt::hd(&__t3436)? }; - rt::tl(&__t3428)? + rt::tl(&__t3437)? }; - rt::tl(&__t3429)? + rt::tl(&__t3438)? }; - rt::cons(&__t3424, &__t3430) + rt::cons(&__t3433, &__t3439) }; - rt::cons(&__t3407, &__t3431) + rt::cons(&__t3416, &__t3440) }); } else { { - let __t3345 = { - let __t3314 = { - let __t3294 = v_V5447.clone(); - rt::is_cons(&__t3294) + let __t3354 = { + let __t3323 = { + let __t3303 = v_V5029.clone(); + rt::is_cons(&__t3303) }; - if !rt::is_truthy(interp, &__t3314)? { + if !rt::is_truthy(interp, &__t3323)? { Value::bool(false) } else { - let __t3315 = { - let __t3312 = { - let __t3295 = Value::sym(interp.intern("where")); - let __t3297 = { - let __t3296 = v_V5447.clone(); - rt::hd(&__t3296)? + let __t3324 = { + let __t3321 = { + let __t3304 = Value::sym(interp.intern("where")); + let __t3306 = { + let __t3305 = v_V5029.clone(); + rt::hd(&__t3305)? }; - rt::eq(&__t3295, &__t3297) + rt::eq(&__t3304, &__t3306) }; - if !rt::is_truthy(interp, &__t3312)? { + if !rt::is_truthy(interp, &__t3321)? { Value::bool(false) } else { - let __t3313 = { - let __t3310 = { - let __t3299 = { - let __t3298 = v_V5447.clone(); - rt::tl(&__t3298)? + let __t3322 = { + let __t3319 = { + let __t3308 = { + let __t3307 = v_V5029.clone(); + rt::tl(&__t3307)? }; - rt::is_cons(&__t3299) + rt::is_cons(&__t3308) }; - if !rt::is_truthy(interp, &__t3310)? { + if !rt::is_truthy(interp, &__t3319)? { Value::bool(false) } else { - let __t3311 = { - let __t3308 = { - let __t3302 = { - let __t3301 = { - let __t3300 = v_V5447.clone(); - rt::tl(&__t3300)? + let __t3320 = { + let __t3317 = { + let __t3311 = { + let __t3310 = { + let __t3309 = v_V5029.clone(); + rt::tl(&__t3309)? }; - rt::tl(&__t3301)? + rt::tl(&__t3310)? }; - rt::is_cons(&__t3302) + rt::is_cons(&__t3311) }; - if !rt::is_truthy(interp, &__t3308)? { + if !rt::is_truthy(interp, &__t3317)? { Value::bool(false) } else { - let __t3309 = { - let __t3303 = Value::nil(); - let __t3307 = { - let __t3306 = { - let __t3305 = { - let __t3304 = v_V5447.clone(); - rt::tl(&__t3304)? + let __t3318 = { + let __t3312 = Value::nil(); + let __t3316 = { + let __t3315 = { + let __t3314 = { + let __t3313 = v_V5029.clone(); + rt::tl(&__t3313)? }; - rt::tl(&__t3305)? + rt::tl(&__t3314)? }; - rt::tl(&__t3306)? + rt::tl(&__t3315)? }; - rt::eq(&__t3303, &__t3307) + rt::eq(&__t3312, &__t3316) }; - Value::bool(rt::is_truthy(interp, &__t3309)?) + Value::bool(rt::is_truthy(interp, &__t3318)?) } }; - Value::bool(rt::is_truthy(interp, &__t3311)?) + Value::bool(rt::is_truthy(interp, &__t3320)?) } }; - Value::bool(rt::is_truthy(interp, &__t3313)?) + Value::bool(rt::is_truthy(interp, &__t3322)?) } }; - Value::bool(rt::is_truthy(interp, &__t3315)?) + Value::bool(rt::is_truthy(interp, &__t3324)?) } }; - if match rt::is_truthy(interp, &__t3345) { + if match rt::is_truthy(interp, &__t3354) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3316 = Value::sym(interp.intern("where")); - let __t3344 = { - let __t3340 = { - let __t3317 = Value::sym(interp.intern("and")); - let __t3339 = { - let __t3320 = { - let __t3319 = { - let __t3318 = v_V5447.clone(); - rt::tl(&__t3318)? + let __t3325 = Value::sym(interp.intern("where")); + let __t3353 = { + let __t3349 = { + let __t3326 = Value::sym(interp.intern("and")); + let __t3348 = { + let __t3329 = { + let __t3328 = { + let __t3327 = v_V5029.clone(); + rt::tl(&__t3327)? }; - rt::hd(&__t3319)? + rt::hd(&__t3328)? }; - let __t3338 = { - let __t3336 = { - let __t3321 = Value::sym(interp.intern("not")); - let __t3335 = { - let __t3333 = { - let __t3322 = - Value::sym(interp.intern("=")); - let __t3332 = { - let __t3326 = { - let __t3325 = { - let __t3324 = { - let __t3323 = - v_V5447.clone(); - rt::tl(&__t3323)? + let __t3347 = { + let __t3345 = { + let __t3330 = Value::sym(interp.intern("not")); + let __t3344 = { + let __t3342 = { + let __t3331 = + Value::sym(interp.intern("==")); + let __t3341 = { + let __t3335 = { + let __t3334 = { + let __t3333 = { + let __t3332 = + v_V5029.clone(); + rt::tl(&__t3332)? }; - rt::tl(&__t3324)? + rt::tl(&__t3333)? }; - rt::hd(&__t3325)? + rt::hd(&__t3334)? }; - let __t3331 = { - let __t3329 = { - let __t3327 = Value::sym( + let __t3340 = { + let __t3338 = { + let __t3336 = Value::sym( interp.intern("fail"), ); - let __t3328 = Value::nil(); - rt::cons(&__t3327, &__t3328) + let __t3337 = Value::nil(); + rt::cons(&__t3336, &__t3337) }; - let __t3330 = Value::nil(); - rt::cons(&__t3329, &__t3330) + let __t3339 = Value::nil(); + rt::cons(&__t3338, &__t3339) }; - rt::cons(&__t3326, &__t3331) + rt::cons(&__t3335, &__t3340) }; - rt::cons(&__t3322, &__t3332) + rt::cons(&__t3331, &__t3341) }; - let __t3334 = Value::nil(); - rt::cons(&__t3333, &__t3334) + let __t3343 = Value::nil(); + rt::cons(&__t3342, &__t3343) }; - rt::cons(&__t3321, &__t3335) + rt::cons(&__t3330, &__t3344) }; - let __t3337 = Value::nil(); - rt::cons(&__t3336, &__t3337) + let __t3346 = Value::nil(); + rt::cons(&__t3345, &__t3346) }; - rt::cons(&__t3320, &__t3338) + rt::cons(&__t3329, &__t3347) }; - rt::cons(&__t3317, &__t3339) + rt::cons(&__t3326, &__t3348) }; - let __t3343 = { - let __t3342 = { - let __t3341 = v_V5447.clone(); - rt::tl(&__t3341)? + let __t3352 = { + let __t3351 = { + let __t3350 = v_V5029.clone(); + rt::tl(&__t3350)? }; - rt::tl(&__t3342)? + rt::tl(&__t3351)? }; - rt::cons(&__t3340, &__t3343) + rt::cons(&__t3349, &__t3352) }; - rt::cons(&__t3316, &__t3344) + rt::cons(&__t3325, &__t3353) }); } else { { - let __t3293 = { - let __t3280 = { - let __t3260 = v_V5447.clone(); - rt::is_cons(&__t3260) + let __t3302 = { + let __t3289 = { + let __t3269 = v_V5029.clone(); + rt::is_cons(&__t3269) }; - if !rt::is_truthy(interp, &__t3280)? { + if !rt::is_truthy(interp, &__t3289)? { Value::bool(false) } else { - let __t3281 = { - let __t3278 = { - let __t3261 = Value::sym(interp.intern("fail-if")); - let __t3263 = { - let __t3262 = v_V5447.clone(); - rt::hd(&__t3262)? + let __t3290 = { + let __t3287 = { + let __t3270 = Value::sym(interp.intern("fail-if")); + let __t3272 = { + let __t3271 = v_V5029.clone(); + rt::hd(&__t3271)? }; - rt::eq(&__t3261, &__t3263) + rt::eq(&__t3270, &__t3272) }; - if !rt::is_truthy(interp, &__t3278)? { + if !rt::is_truthy(interp, &__t3287)? { Value::bool(false) } else { - let __t3279 = { - let __t3276 = { - let __t3265 = { - let __t3264 = v_V5447.clone(); - rt::tl(&__t3264)? + let __t3288 = { + let __t3285 = { + let __t3274 = { + let __t3273 = v_V5029.clone(); + rt::tl(&__t3273)? }; - rt::is_cons(&__t3265) + rt::is_cons(&__t3274) }; - if !rt::is_truthy(interp, &__t3276)? { + if !rt::is_truthy(interp, &__t3285)? { Value::bool(false) } else { - let __t3277 = { - let __t3274 = { - let __t3268 = { - let __t3267 = { - let __t3266 = v_V5447.clone(); - rt::tl(&__t3266)? + let __t3286 = { + let __t3283 = { + let __t3277 = { + let __t3276 = { + let __t3275 = v_V5029.clone(); + rt::tl(&__t3275)? }; - rt::tl(&__t3267)? + rt::tl(&__t3276)? }; - rt::is_cons(&__t3268) + rt::is_cons(&__t3277) }; - if !rt::is_truthy(interp, &__t3274)? { + if !rt::is_truthy(interp, &__t3283)? { Value::bool(false) } else { - let __t3275 = { - let __t3269 = Value::nil(); - let __t3273 = { - let __t3272 = { - let __t3271 = { - let __t3270 = - v_V5447.clone(); - rt::tl(&__t3270)? + let __t3284 = { + let __t3278 = Value::nil(); + let __t3282 = { + let __t3281 = { + let __t3280 = { + let __t3279 = + v_V5029.clone(); + rt::tl(&__t3279)? }; - rt::tl(&__t3271)? + rt::tl(&__t3280)? }; - rt::tl(&__t3272)? + rt::tl(&__t3281)? }; - rt::eq(&__t3269, &__t3273) + rt::eq(&__t3278, &__t3282) }; Value::bool(rt::is_truthy( - interp, &__t3275, + interp, &__t3284, )?) } }; - Value::bool(rt::is_truthy(interp, &__t3277)?) + Value::bool(rt::is_truthy(interp, &__t3286)?) } }; - Value::bool(rt::is_truthy(interp, &__t3279)?) + Value::bool(rt::is_truthy(interp, &__t3288)?) } }; - Value::bool(rt::is_truthy(interp, &__t3281)?) + Value::bool(rt::is_truthy(interp, &__t3290)?) } }; - if match rt::is_truthy(interp, &__t3293) { + if match rt::is_truthy(interp, &__t3302) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3282 = Value::sym(interp.intern("where")); - let __t3292 = { - let __t3288 = { - let __t3283 = Value::sym(interp.intern("not")); - let __t3287 = { - let __t3285 = { - let __t3284 = v_V5447.clone(); - rt::tl(&__t3284)? + let __t3291 = Value::sym(interp.intern("where")); + let __t3301 = { + let __t3297 = { + let __t3292 = Value::sym(interp.intern("not")); + let __t3296 = { + let __t3294 = { + let __t3293 = v_V5029.clone(); + rt::tl(&__t3293)? }; - let __t3286 = Value::nil(); - rt::cons(&__t3285, &__t3286) + let __t3295 = Value::nil(); + rt::cons(&__t3294, &__t3295) }; - rt::cons(&__t3283, &__t3287) + rt::cons(&__t3292, &__t3296) }; - let __t3291 = { - let __t3290 = { - let __t3289 = v_V5447.clone(); - rt::tl(&__t3289)? + let __t3300 = { + let __t3299 = { + let __t3298 = v_V5029.clone(); + rt::tl(&__t3298)? }; - rt::tl(&__t3290)? + rt::tl(&__t3299)? }; - rt::cons(&__t3288, &__t3291) + rt::cons(&__t3297, &__t3300) }; - rt::cons(&__t3282, &__t3292) + rt::cons(&__t3291, &__t3301) }); } else { { - let __t3259 = Value::bool(true); - if match rt::is_truthy(interp, &__t3259) { + let __t3268 = Value::bool(true); + if match rt::is_truthy(interp, &__t3268) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3241 = Value::sym(interp.intern("where")); - let __t3258 = { - let __t3254 = { - let __t3242 = Value::sym(interp.intern("not")); - let __t3253 = { - let __t3251 = { - let __t3243 = - Value::sym(interp.intern("=")); - let __t3250 = { - let __t3244 = v_V5447.clone(); - let __t3249 = { - let __t3247 = { - let __t3245 = Value::sym( + let __t3250 = Value::sym(interp.intern("where")); + let __t3267 = { + let __t3263 = { + let __t3251 = Value::sym(interp.intern("not")); + let __t3262 = { + let __t3260 = { + let __t3252 = + Value::sym(interp.intern("==")); + let __t3259 = { + let __t3253 = v_V5029.clone(); + let __t3258 = { + let __t3256 = { + let __t3254 = Value::sym( interp.intern("fail"), ); - let __t3246 = Value::nil(); - rt::cons(&__t3245, &__t3246) + let __t3255 = Value::nil(); + rt::cons(&__t3254, &__t3255) }; - let __t3248 = Value::nil(); - rt::cons(&__t3247, &__t3248) + let __t3257 = Value::nil(); + rt::cons(&__t3256, &__t3257) }; - rt::cons(&__t3244, &__t3249) + rt::cons(&__t3253, &__t3258) }; - rt::cons(&__t3243, &__t3250) + rt::cons(&__t3252, &__t3259) }; - let __t3252 = Value::nil(); - rt::cons(&__t3251, &__t3252) + let __t3261 = Value::nil(); + rt::cons(&__t3260, &__t3261) }; - rt::cons(&__t3242, &__t3253) + rt::cons(&__t3251, &__t3262) }; - let __t3257 = { - let __t3255 = v_V5447.clone(); - let __t3256 = Value::nil(); - rt::cons(&__t3255, &__t3256) + let __t3266 = { + let __t3264 = v_V5029.clone(); + let __t3265 = Value::nil(); + rt::cons(&__t3264, &__t3265) }; - rt::cons(&__t3254, &__t3257) + rt::cons(&__t3263, &__t3266) }; - rt::cons(&__t3241, &__t3258) + rt::cons(&__t3250, &__t3267) }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -7992,52 +8024,52 @@ pub fn aot_shen_x2e_t_x2a__x2d_rules(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5448 = args[0].clone(); + let mut v_V5030 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5449 = args[1].clone(); + let mut v_V5031 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5450 = args[2].clone(); + let mut v_V5032 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5451 = args[3].clone(); + let mut v_V5033 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5452 = args[4].clone(); + let mut v_V5034 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5453 = args[5].clone(); + let mut v_V5035 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5454 = args[6].clone(); + let mut v_V5036 = args[6].clone(); #[allow(unused_mut)] - let mut v_V5455 = args[7].clone(); + let mut v_V5037 = args[7].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5456 = { - let __t3433 = v_V5454.clone(); - let __t3434 = Value::int(1i64); - rt::add(&__t3433, &__t3434)? + let v_W5038 = { + let __t3442 = v_V5036.clone(); + let __t3443 = Value::int(1i64); + rt::add(&__t3442, &__t3443)? }; { - let v_W5457 = { - let __t3441 = { - let __t3435 = v_V5453.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3435])? + let v_W5039 = { + let __t3450 = { + let __t3444 = v_V5035.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3444])? }; - if rt::is_truthy(interp, &__t3441)? { + if rt::is_truthy(interp, &__t3450)? { { - let v_W5458 = { - let __t3436 = v_V5449.clone(); - let __t3437 = v_V5452.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3436, __t3437])? + let v_W5040 = { + let __t3445 = v_V5031.clone(); + let __t3446 = v_V5034.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3445, __t3446])? }; { - let __t3440 = { - let __t3438 = v_W5458.clone(); - let __t3439 = Value::nil(); - rt::eq(&__t3438, &__t3439) + let __t3449 = { + let __t3447 = v_W5040.clone(); + let __t3448 = Value::nil(); + rt::eq(&__t3447, &__t3448) }; - if rt::is_truthy(interp, &__t3440)? { + if rt::is_truthy(interp, &__t3449)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; - rt::apply_value(interp, v_V5455.clone(), &[])? + rt::apply_value(interp, v_V5037.clone(), &[])? } } else { Value::bool(false) @@ -8049,60 +8081,60 @@ pub fn aot_shen_x2e_t_x2a__x2d_rules(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t3444 = { - let __t3442 = v_W5457.clone(); - let __t3443 = Value::bool(false); - rt::eq(&__t3442, &__t3443) + let __t3453 = { + let __t3451 = v_W5039.clone(); + let __t3452 = Value::bool(false); + rt::eq(&__t3451, &__t3452) }; - if match rt::is_truthy(interp, &__t3444) { + if match rt::is_truthy(interp, &__t3453) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5459 = { - let __t3493 = { - let __t3445 = v_V5453.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3445])? + let v_W5041 = { + let __t3502 = { + let __t3454 = v_V5035.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3454])? }; - if rt::is_truthy(interp, &__t3493)? { + if rt::is_truthy(interp, &__t3502)? { { - let v_W5460 = { - let __t3446 = v_V5449.clone(); - let __t3447 = v_V5452.clone(); + let v_W5042 = { + let __t3455 = v_V5031.clone(); + let __t3456 = v_V5034.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3446, __t3447], + &[__t3455, __t3456], )? }; { - let __t3492 = { - let __t3448 = v_W5460.clone(); - rt::is_cons(&__t3448) + let __t3501 = { + let __t3457 = v_W5042.clone(); + rt::is_cons(&__t3457) }; - if rt::is_truthy(interp, &__t3492)? { + if rt::is_truthy(interp, &__t3501)? { { - let v_W5461 = { - let __t3449 = v_W5460.clone(); - rt::hd(&__t3449)? + let v_W5043 = { + let __t3458 = v_W5042.clone(); + rt::hd(&__t3458)? }; { - let v_W5462 = { - let __t3450 = v_W5460.clone(); - rt::tl(&__t3450)? + let v_W5044 = { + let __t3459 = v_W5042.clone(); + rt::tl(&__t3459)? }; { - let v_W5463 = { - let __t3451 = v_V5452.clone(); + let v_W5045 = { + let __t3460 = v_V5034.clone(); rt::apply_direct( interp, "shen.newpv", - &[__t3451], + &[__t3460], )? }; { - let __t3452 = v_V5452.clone(); - let __t3491 = { + let __t3461 = v_V5034.clone(); + let __t3500 = { let _ = { rt::apply_direct( interp, @@ -8111,63 +8143,63 @@ pub fn aot_shen_x2e_t_x2a__x2d_rules(interp: &mut Interp, args: &[Value]) -> She )? }; { - let __t3453 = - v_W5463.clone(); - let __t3457 = { - let __t3456 = { - let __t3454 = - v_W5461.clone(); - let __t3455 = - v_V5452.clone(); + let __t3462 = + v_W5045.clone(); + let __t3466 = { + let __t3465 = { + let __t3463 = + v_W5043.clone(); + let __t3464 = + v_V5034.clone(); rt::apply_direct( interp, "shen.deref", &[ - __t3454, - __t3455, + __t3463, + __t3464, ], )? }; rt::apply_direct( interp, "shen.freshen-rule", - &[__t3456], + &[__t3465], )? }; - let __t3458 = - v_V5452.clone(); - let __t3459 = - v_V5453.clone(); - let __t3460 = - v_W5456.clone(); - let __t3490 = { - let v_V5448 = - v_V5448.clone(); - let v_V5450 = - v_V5450.clone(); - let v_V5451 = - v_V5451.clone(); - let v_V5452 = - v_V5452.clone(); - let v_V5453 = - v_V5453.clone(); - let v_V5455 = - v_V5455.clone(); - let v_W5456 = - v_W5456.clone(); - let v_W5462 = - v_W5462.clone(); - let v_W5463 = - v_W5463.clone(); - rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3461 = v_V5448.clone(); let __t3462 = v_V5451.clone(); let __t3466 = { let __t3465 = { let __t3463 = v_W5463.clone(); let __t3464 = v_V5452.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3463, __t3464])? }; rt::apply_direct(interp, "fst", &[__t3465])? }; let __t3470 = { let __t3469 = { let __t3467 = v_W5463.clone(); let __t3468 = v_V5452.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3467, __t3468])? }; rt::apply_direct(interp, "snd", &[__t3469])? }; let __t3471 = v_V5450.clone(); let __t3472 = v_V5452.clone(); let __t3473 = v_V5453.clone(); let __t3474 = v_W5456.clone(); let __t3489 = { let v_V5448 = v_V5448.clone(); let v_V5450 = v_V5450.clone(); let v_V5451 = v_V5451.clone(); let v_V5452 = v_V5452.clone(); let v_V5453 = v_V5453.clone(); let v_V5455 = v_V5455.clone(); let v_W5456 = v_W5456.clone(); let v_W5462 = v_W5462.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3475 = v_V5452.clone(); let __t3476 = v_V5453.clone(); let __t3477 = v_W5456.clone(); let __t3488 = { let v_V5448 = v_V5448.clone(); let v_V5450 = v_V5450.clone(); let v_V5451 = v_V5451.clone(); let v_V5452 = v_V5452.clone(); let v_V5453 = v_V5453.clone(); let v_V5455 = v_V5455.clone(); let v_W5456 = v_W5456.clone(); let v_W5462 = v_W5462.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3478 = v_V5448.clone(); let __t3479 = v_W5462.clone(); let __t3480 = v_V5450.clone(); let __t3483 = { let __t3481 = v_V5451.clone(); let __t3482 = Value::int(1i64); rt::add(&__t3481, &__t3482)? }; let __t3484 = v_V5452.clone(); let __t3485 = v_V5453.clone(); let __t3486 = v_W5456.clone(); let __t3487 = v_V5455.clone(); rt::apply_direct(interp, "shen.t*-rules", &[__t3478, __t3479, __t3480, __t3483, __t3484, __t3485, __t3486, __t3487])? }), vec![v_V5448, v_V5450, v_V5451, v_V5452, v_V5453, v_V5455, v_W5456, v_W5462], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3475, __t3476, __t3477, __t3488])? }), vec![v_V5448, v_V5450, v_V5451, v_V5452, v_V5453, v_V5455, v_W5456, v_W5462], interp) }; rt::apply_direct(interp, "shen.t*-rule", &[__t3461, __t3462, __t3466, __t3470, __t3471, __t3472, __t3473, __t3474, __t3489])? }), vec![v_V5448, v_V5450, v_V5451, v_V5452, v_V5453, v_V5455, v_W5456, v_W5462, v_W5463], interp) + let __t3467 = + v_V5034.clone(); + let __t3468 = + v_V5035.clone(); + let __t3469 = + v_W5038.clone(); + let __t3499 = { + let v_V5030 = + v_V5030.clone(); + let v_V5032 = + v_V5032.clone(); + let v_V5033 = + v_V5033.clone(); + let v_V5034 = + v_V5034.clone(); + let v_V5035 = + v_V5035.clone(); + let v_V5037 = + v_V5037.clone(); + let v_W5038 = + v_W5038.clone(); + let v_W5044 = + v_W5044.clone(); + let v_W5045 = + v_W5045.clone(); + rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3470 = v_V5030.clone(); let __t3471 = v_V5033.clone(); let __t3475 = { let __t3474 = { let __t3472 = v_W5045.clone(); let __t3473 = v_V5034.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3472, __t3473])? }; rt::apply_direct(interp, "fst", &[__t3474])? }; let __t3479 = { let __t3478 = { let __t3476 = v_W5045.clone(); let __t3477 = v_V5034.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3476, __t3477])? }; rt::apply_direct(interp, "snd", &[__t3478])? }; let __t3480 = v_V5032.clone(); let __t3481 = v_V5034.clone(); let __t3482 = v_V5035.clone(); let __t3483 = v_W5038.clone(); let __t3498 = { let v_V5030 = v_V5030.clone(); let v_V5032 = v_V5032.clone(); let v_V5033 = v_V5033.clone(); let v_V5034 = v_V5034.clone(); let v_V5035 = v_V5035.clone(); let v_V5037 = v_V5037.clone(); let v_W5038 = v_W5038.clone(); let v_W5044 = v_W5044.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3484 = v_V5034.clone(); let __t3485 = v_V5035.clone(); let __t3486 = v_W5038.clone(); let __t3497 = { let v_V5030 = v_V5030.clone(); let v_V5032 = v_V5032.clone(); let v_V5033 = v_V5033.clone(); let v_V5034 = v_V5034.clone(); let v_V5035 = v_V5035.clone(); let v_V5037 = v_V5037.clone(); let v_W5038 = v_W5038.clone(); let v_W5044 = v_W5044.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3487 = v_V5030.clone(); let __t3488 = v_W5044.clone(); let __t3489 = v_V5032.clone(); let __t3492 = { let __t3490 = v_V5033.clone(); let __t3491 = Value::int(1i64); rt::add(&__t3490, &__t3491)? }; let __t3493 = v_V5034.clone(); let __t3494 = v_V5035.clone(); let __t3495 = v_W5038.clone(); let __t3496 = v_V5037.clone(); rt::apply_direct(interp, "shen.t*-rules", &[__t3487, __t3488, __t3489, __t3492, __t3493, __t3494, __t3495, __t3496])? }), vec![v_V5030, v_V5032, v_V5033, v_V5034, v_V5035, v_V5037, v_W5038, v_W5044], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3484, __t3485, __t3486, __t3497])? }), vec![v_V5030, v_V5032, v_V5033, v_V5034, v_V5035, v_V5037, v_W5038, v_W5044], interp) }; rt::apply_direct(interp, "shen.t*-rule", &[__t3470, __t3471, __t3475, __t3479, __t3480, __t3481, __t3482, __t3483, __t3498])? }), vec![v_V5030, v_V5032, v_V5033, v_V5034, v_V5035, v_V5037, v_W5038, v_W5044, v_W5045], interp) }; rt::apply_direct( interp, "bind", &[ - __t3453, __t3457, - __t3458, __t3459, - __t3460, __t3490, + __t3462, __t3466, + __t3467, __t3468, + __t3469, __t3499, ], )? } @@ -8175,7 +8207,7 @@ pub fn aot_shen_x2e_t_x2a__x2d_rules(interp: &mut Interp, args: &[Value]) -> She rt::apply_direct( interp, "shen.gc", - &[__t3452, __t3491], + &[__t3461, __t3500], )? } } @@ -8191,31 +8223,31 @@ pub fn aot_shen_x2e_t_x2a__x2d_rules(interp: &mut Interp, args: &[Value]) -> She } }; { - let __t3496 = { - let __t3494 = v_W5459.clone(); - let __t3495 = Value::bool(false); - rt::eq(&__t3494, &__t3495) + let __t3505 = { + let __t3503 = v_W5041.clone(); + let __t3504 = Value::bool(false); + rt::eq(&__t3503, &__t3504) }; - if match rt::is_truthy(interp, &__t3496) { + if match rt::is_truthy(interp, &__t3505) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3497 = v_V5453.clone(); - let __t3498 = v_W5456.clone(); + let __t3506 = v_V5035.clone(); + let __t3507 = v_W5038.clone(); rt::apply_direct( interp, "shen.unlock", - &[__t3497, __t3498], + &[__t3506, __t3507], )? }); } else { - break Ok(v_W5459.clone()); + break Ok(v_W5041.clone()); } } } } else { - break Ok(v_W5457.clone()); + break Ok(v_W5039.clone()); } } } @@ -8237,85 +8269,85 @@ pub fn aot_shen_x2e_freshen_x2d_rule(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5464 = args[0].clone(); + let mut v_V5046 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t3517 = { - let __t3501 = v_V5464.clone(); - rt::apply_direct(interp, "tuple?", &[__t3501])? + let __t3526 = { + let __t3510 = v_V5046.clone(); + rt::apply_direct(interp, "tuple?", &[__t3510])? }; - if match rt::is_truthy(interp, &__t3517) { + if match rt::is_truthy(interp, &__t3526) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5465 = { - let __t3503 = { - let __t3502 = v_V5464.clone(); - rt::apply_direct(interp, "fst", &[__t3502])? + let v_W5047 = { + let __t3512 = { + let __t3511 = v_V5046.clone(); + rt::apply_direct(interp, "fst", &[__t3511])? }; - rt::apply_direct(interp, "shen.extract-vars", &[__t3503])? + rt::apply_direct(interp, "shen.extract-vars", &[__t3512])? }; { - let v_W5466 = { - let __t3507 = { + let v_W5048 = { + let __t3516 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5467 = args[0].clone(); + let v_Z5049 = args[0].clone(); Ok({ - let __t3504 = v_Z5467.clone(); - let __t3506 = { - let __t3505 = v_Z5467.clone(); + let __t3513 = v_Z5049.clone(); + let __t3515 = { + let __t3514 = v_Z5049.clone(); rt::apply_direct( interp, "shen.freshterm", - &[__t3505], + &[__t3514], )? }; - rt::cons(&__t3504, &__t3506) + rt::cons(&__t3513, &__t3515) }) }, Vec::new(), interp, ) }; - let __t3508 = v_W5465.clone(); - rt::apply_direct(interp, "map", &[__t3507, __t3508])? + let __t3517 = v_W5047.clone(); + rt::apply_direct(interp, "map", &[__t3516, __t3517])? }; break Ok({ - let __t3512 = { - let __t3509 = v_W5466.clone(); - let __t3511 = { - let __t3510 = v_V5464.clone(); - rt::apply_direct(interp, "fst", &[__t3510])? + let __t3521 = { + let __t3518 = v_W5048.clone(); + let __t3520 = { + let __t3519 = v_V5046.clone(); + rt::apply_direct(interp, "fst", &[__t3519])? }; - rt::apply_direct(interp, "shen.freshen", &[__t3509, __t3511])? + rt::apply_direct(interp, "shen.freshen", &[__t3518, __t3520])? }; - let __t3516 = { - let __t3513 = v_W5466.clone(); - let __t3515 = { - let __t3514 = v_V5464.clone(); - rt::apply_direct(interp, "snd", &[__t3514])? + let __t3525 = { + let __t3522 = v_W5048.clone(); + let __t3524 = { + let __t3523 = v_V5046.clone(); + rt::apply_direct(interp, "snd", &[__t3523])? }; - rt::apply_direct(interp, "shen.freshen", &[__t3513, __t3515])? + rt::apply_direct(interp, "shen.freshen", &[__t3522, __t3524])? }; - rt::apply_direct(interp, "@p", &[__t3512, __t3516])? + rt::apply_direct(interp, "@p", &[__t3521, __t3525])? }); } } } else { { - let __t3500 = Value::bool(true); - if match rt::is_truthy(interp, &__t3500) { + let __t3509 = Value::bool(true); + if match rt::is_truthy(interp, &__t3509) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3499 = Value::sym(interp.intern("shen.freshen-rule")); - rt::apply_direct(interp, "shen.f-error", &[__t3499])? + let __t3508 = Value::str("partial function shen.freshen-rule"); + rt::apply_direct(interp, "simple-error", &[__t3508])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -8340,83 +8372,83 @@ pub fn aot_shen_x2e_freshen(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { - break Ok(v_V5469.clone()); + break Ok(v_V5051.clone()); } else { { - let __t3535 = { - let __t3523 = { - let __t3520 = v_V5468.clone(); - rt::is_cons(&__t3520) + let __t3544 = { + let __t3532 = { + let __t3529 = v_V5050.clone(); + rt::is_cons(&__t3529) }; - if !rt::is_truthy(interp, &__t3523)? { + if !rt::is_truthy(interp, &__t3532)? { Value::bool(false) } else { - let __t3524 = { - let __t3522 = { - let __t3521 = v_V5468.clone(); - rt::hd(&__t3521)? + let __t3533 = { + let __t3531 = { + let __t3530 = v_V5050.clone(); + rt::hd(&__t3530)? }; - rt::is_cons(&__t3522) + rt::is_cons(&__t3531) }; - Value::bool(rt::is_truthy(interp, &__t3524)?) + Value::bool(rt::is_truthy(interp, &__t3533)?) } }; - if match rt::is_truthy(interp, &__t3535) { + if match rt::is_truthy(interp, &__t3544) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3526 = { - let __t3525 = v_V5468.clone(); - rt::tl(&__t3525)? + let __t3535 = { + let __t3534 = v_V5050.clone(); + rt::tl(&__t3534)? }; - let __t3534 = { - let __t3529 = { - let __t3528 = { - let __t3527 = v_V5468.clone(); - rt::hd(&__t3527)? + let __t3543 = { + let __t3538 = { + let __t3537 = { + let __t3536 = v_V5050.clone(); + rt::hd(&__t3536)? }; - rt::hd(&__t3528)? + rt::hd(&__t3537)? }; - let __t3532 = { - let __t3531 = { - let __t3530 = v_V5468.clone(); - rt::hd(&__t3530)? + let __t3541 = { + let __t3540 = { + let __t3539 = v_V5050.clone(); + rt::hd(&__t3539)? }; - rt::tl(&__t3531)? + rt::tl(&__t3540)? }; - let __t3533 = v_V5469.clone(); - rt::apply_direct(interp, "shen.beta", &[__t3529, __t3532, __t3533])? + let __t3542 = v_V5051.clone(); + rt::apply_direct(interp, "shen.beta", &[__t3538, __t3541, __t3542])? }; - v_V5468 = __t3526; - v_V5469 = __t3534; + v_V5050 = __t3535; + v_V5051 = __t3543; continue; } } else { { - let __t3519 = Value::bool(true); - if match rt::is_truthy(interp, &__t3519) { + let __t3528 = Value::bool(true); + if match rt::is_truthy(interp, &__t3528) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3518 = Value::sym(interp.intern("shen.freshen")); - rt::apply_direct(interp, "shen.f-error", &[__t3518])? + let __t3527 = Value::str("partial function shen.freshen"); + rt::apply_direct(interp, "simple-error", &[__t3527])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -8443,47 +8475,47 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5470 = args[0].clone(); + let mut v_V5052 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5471 = args[1].clone(); + let mut v_V5053 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5472 = args[2].clone(); + let mut v_V5054 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5473 = args[3].clone(); + let mut v_V5055 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5474 = args[4].clone(); + let mut v_V5056 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5475 = args[5].clone(); + let mut v_V5057 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5476 = args[6].clone(); + let mut v_V5058 = args[6].clone(); #[allow(unused_mut)] - let mut v_V5477 = args[7].clone(); + let mut v_V5059 = args[7].clone(); #[allow(unused_mut)] - let mut v_V5478 = args[8].clone(); + let mut v_V5060 = args[8].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5479 = { - let __t3547 = { - let __t3539 = v_V5476.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3539])? + let v_W5061 = { + let __t3556 = { + let __t3548 = v_V5058.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3548])? }; - if rt::is_truthy(interp, &__t3547)? { + if rt::is_truthy(interp, &__t3556)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t3540 = v_V5472.clone(); - let __t3541 = v_V5473.clone(); - let __t3542 = v_V5474.clone(); - let __t3543 = v_V5475.clone(); - let __t3544 = v_V5476.clone(); - let __t3545 = v_V5477.clone(); - let __t3546 = v_V5478.clone(); + let __t3549 = v_V5054.clone(); + let __t3550 = v_V5055.clone(); + let __t3551 = v_V5056.clone(); + let __t3552 = v_V5057.clone(); + let __t3553 = v_V5058.clone(); + let __t3554 = v_V5059.clone(); + let __t3555 = v_V5060.clone(); rt::apply_direct( interp, "shen.t*-rule-h", &[ - __t3540, __t3541, __t3542, __t3543, __t3544, __t3545, __t3546, + __t3549, __t3550, __t3551, __t3552, __t3553, __t3554, __t3555, ], )? } @@ -8493,95 +8525,95 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t3550 = { - let __t3548 = v_W5479.clone(); - let __t3549 = Value::bool(false); - rt::eq(&__t3548, &__t3549) + let __t3559 = { + let __t3557 = v_W5061.clone(); + let __t3558 = Value::bool(false); + rt::eq(&__t3557, &__t3558) }; - if match rt::is_truthy(interp, &__t3550) { + if match rt::is_truthy(interp, &__t3559) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3552 = { - let __t3551 = v_V5476.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3551])? + let __t3561 = { + let __t3560 = v_V5058.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3560])? }; - if match rt::is_truthy(interp, &__t3552) { + if match rt::is_truthy(interp, &__t3561) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5480 = { - let __t3553 = v_V5475.clone(); - rt::apply_direct(interp, "shen.newpv", &[__t3553])? + let v_W5062 = { + let __t3562 = v_V5057.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t3562])? }; break Ok({ - let __t3554 = v_V5475.clone(); - let __t3572 = { + let __t3563 = v_V5057.clone(); + let __t3581 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t3555 = v_W5480.clone(); - let __t3567 = { - let __t3566 = { - let __t3556 = Value::str("type error in rule "); - let __t3565 = { - let __t3557 = v_V5471.clone(); - let __t3563 = { - let __t3558 = Value::str(" of "); - let __t3562 = { - let __t3559 = v_V5470.clone(); - let __t3560 = Value::str("\n"); - let __t3561 = Value::sym( + let __t3564 = v_W5062.clone(); + let __t3576 = { + let __t3575 = { + let __t3565 = Value::str("type error in rule "); + let __t3574 = { + let __t3566 = v_V5053.clone(); + let __t3572 = { + let __t3567 = Value::str(" of "); + let __t3571 = { + let __t3568 = v_V5052.clone(); + let __t3569 = Value::str("\n"); + let __t3570 = Value::sym( interp.intern("shen.a"), ); rt::apply_direct( interp, "shen.app", - &[__t3559, __t3560, __t3561], + &[__t3568, __t3569, __t3570], )? }; rt::apply_direct( interp, "cn", - &[__t3558, __t3562], + &[__t3567, __t3571], )? }; - let __t3564 = + let __t3573 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t3557, __t3563, __t3564], + &[__t3566, __t3572, __t3573], )? }; rt::apply_direct( interp, "cn", - &[__t3556, __t3565], + &[__t3565, __t3574], )? }; rt::apply_direct( interp, "simple-error", - &[__t3566], + &[__t3575], )? }; - let __t3568 = v_V5475.clone(); - let __t3569 = v_V5476.clone(); - let __t3570 = v_V5477.clone(); - let __t3571 = v_V5478.clone(); + let __t3577 = v_V5057.clone(); + let __t3578 = v_V5058.clone(); + let __t3579 = v_V5059.clone(); + let __t3580 = v_V5060.clone(); rt::apply_direct( interp, "bind", &[ - __t3555, __t3567, __t3568, __t3569, __t3570, - __t3571, + __t3564, __t3576, __t3577, __t3578, __t3579, + __t3580, ], )? } }; - rt::apply_direct(interp, "shen.gc", &[__t3554, __t3572])? + rt::apply_direct(interp, "shen.gc", &[__t3563, __t3581])? }); } } else { @@ -8589,7 +8621,7 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule(interp: &mut Interp, args: &[Value]) -> Shen } } } else { - break Ok(v_W5479.clone()); + break Ok(v_W5061.clone()); } } } @@ -8613,132 +8645,132 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( ))); } #[allow(unused_mut)] - let mut v_V5481 = args[0].clone(); + let mut v_V5063 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5482 = args[1].clone(); + let mut v_V5064 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5483 = args[2].clone(); + let mut v_V5065 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5484 = args[3].clone(); + let mut v_V5066 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5485 = args[4].clone(); + let mut v_V5067 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5486 = args[5].clone(); + let mut v_V5068 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5487 = args[6].clone(); + let mut v_V5069 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5488 = { - let __t3573 = v_V5486.clone(); - let __t3574 = Value::int(1i64); - rt::add(&__t3573, &__t3574)? + let v_W5070 = { + let __t3582 = v_V5068.clone(); + let __t3583 = Value::int(1i64); + rt::add(&__t3582, &__t3583)? }; { - let v_W5489 = { - let __t3614 = { - let __t3575 = v_V5485.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3575])? + let v_W5071 = { + let __t3623 = { + let __t3584 = v_V5067.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3584])? }; - if rt::is_truthy(interp, &__t3614)? { + if rt::is_truthy(interp, &__t3623)? { { - let v_W5490 = { - let __t3576 = v_V5481.clone(); - let __t3577 = v_V5484.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3576, __t3577])? + let v_W5072 = { + let __t3585 = v_V5063.clone(); + let __t3586 = v_V5066.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3585, __t3586])? }; { - let __t3613 = { - let __t3578 = v_W5490.clone(); - let __t3579 = Value::nil(); - rt::eq(&__t3578, &__t3579) + let __t3622 = { + let __t3587 = v_W5072.clone(); + let __t3588 = Value::nil(); + rt::eq(&__t3587, &__t3588) }; - if rt::is_truthy(interp, &__t3613)? { + if rt::is_truthy(interp, &__t3622)? { { - let v_W5491 = { - let __t3580 = v_V5483.clone(); - let __t3581 = v_V5484.clone(); + let v_W5073 = { + let __t3589 = v_V5065.clone(); + let __t3590 = v_V5066.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3580, __t3581], + &[__t3589, __t3590], )? }; { - let __t3612 = { - let __t3582 = v_W5491.clone(); - rt::is_cons(&__t3582) + let __t3621 = { + let __t3591 = v_W5073.clone(); + rt::is_cons(&__t3591) }; - if rt::is_truthy(interp, &__t3612)? { + if rt::is_truthy(interp, &__t3621)? { { - let v_W5492 = { - let __t3584 = { - let __t3583 = v_W5491.clone(); - rt::hd(&__t3583)? + let v_W5074 = { + let __t3593 = { + let __t3592 = v_W5073.clone(); + rt::hd(&__t3592)? }; - let __t3585 = v_V5484.clone(); + let __t3594 = v_V5066.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3584, __t3585], + &[__t3593, __t3594], )? }; { - let __t3611 = { - let __t3586 = v_W5492.clone(); - let __t3587 = + let __t3620 = { + let __t3595 = v_W5074.clone(); + let __t3596 = Value::sym(interp.intern("-->")); - rt::eq(&__t3586, &__t3587) + rt::eq(&__t3595, &__t3596) }; - if rt::is_truthy(interp, &__t3611)? { + if rt::is_truthy(interp, &__t3620)? { { - let v_W5493 = { - let __t3589 = { - let __t3588 = - v_W5491.clone(); - rt::tl(&__t3588)? + let v_W5075 = { + let __t3598 = { + let __t3597 = + v_W5073.clone(); + rt::tl(&__t3597)? }; - let __t3590 = v_V5484.clone(); + let __t3599 = v_V5066.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3589, __t3590], + &[__t3598, __t3599], )? }; { - let __t3610 = { - let __t3591 = - v_W5493.clone(); - rt::is_cons(&__t3591) + let __t3619 = { + let __t3600 = + v_W5075.clone(); + rt::is_cons(&__t3600) }; if rt::is_truthy( - interp, &__t3610, + interp, &__t3619, )? { { - let v_W5494 = { - let __t3592 = - v_W5493.clone(); - rt::hd(&__t3592)? + let v_W5076 = { + let __t3601 = + v_W5075.clone(); + rt::hd(&__t3601)? }; { - let v_W5495 = { - let __t3594 = { - let __t3593 = v_W5493.clone(); - rt::tl(&__t3593)? + let v_W5077 = { + let __t3603 = { + let __t3602 = v_W5075.clone(); + rt::tl(&__t3602)? }; - let __t3595 = - v_V5484 + let __t3604 = + v_V5066 .clone( ); - rt::apply_direct(interp, "shen.lazyderef", &[__t3594, __t3595])? + rt::apply_direct(interp, "shen.lazyderef", &[__t3603, __t3604])? }; { - let __t3609 = { - let __t3596 = v_W5495.clone(); - let __t3597 = Value::nil(); - rt::eq(&__t3596, &__t3597) + let __t3618 = { + let __t3605 = v_W5077.clone(); + let __t3606 = Value::nil(); + rt::eq(&__t3605, &__t3606) }; - if rt::is_truthy(interp, &__t3609)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3598 = v_V5484.clone(); let __t3599 = v_V5485.clone(); let __t3600 = v_W5488.clone(); let __t3608 = { let v_V5482 = v_V5482.clone(); let v_V5484 = v_V5484.clone(); let v_V5485 = v_V5485.clone(); let v_V5487 = v_V5487.clone(); let v_W5488 = v_W5488.clone(); let v_W5494 = v_W5494.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3601 = v_V5482.clone(); let __t3602 = v_W5494.clone(); let __t3603 = Value::nil(); let __t3604 = v_V5484.clone(); let __t3605 = v_V5485.clone(); let __t3606 = v_W5488.clone(); let __t3607 = v_V5487.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t3601, __t3602, __t3603, __t3604, __t3605, __t3606, __t3607])? }), vec![v_V5482, v_V5484, v_V5485, v_V5487, v_W5488, v_W5494], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3598, __t3599, __t3600, __t3608])? } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t3618)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3607 = v_V5066.clone(); let __t3608 = v_V5067.clone(); let __t3609 = v_W5070.clone(); let __t3617 = { let v_V5064 = v_V5064.clone(); let v_V5066 = v_V5066.clone(); let v_V5067 = v_V5067.clone(); let v_V5069 = v_V5069.clone(); let v_W5070 = v_W5070.clone(); let v_W5076 = v_W5076.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3610 = v_V5064.clone(); let __t3611 = v_W5076.clone(); let __t3612 = Value::nil(); let __t3613 = v_V5066.clone(); let __t3614 = v_V5067.clone(); let __t3615 = v_W5070.clone(); let __t3616 = v_V5069.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t3610, __t3611, __t3612, __t3613, __t3614, __t3615, __t3616])? }), vec![v_V5064, v_V5066, v_V5067, v_V5069, v_W5070, v_W5076], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3607, __t3608, __t3609, __t3617])? } } } else { Value::bool(false) } } } } @@ -8767,52 +8799,52 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( } }; { - let __t3617 = { - let __t3615 = v_W5489.clone(); - let __t3616 = Value::bool(false); - rt::eq(&__t3615, &__t3616) + let __t3626 = { + let __t3624 = v_W5071.clone(); + let __t3625 = Value::bool(false); + rt::eq(&__t3624, &__t3625) }; - if match rt::is_truthy(interp, &__t3617) { + if match rt::is_truthy(interp, &__t3626) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5496 = { - let __t3661 = { - let __t3618 = v_V5485.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3618])? + let v_W5078 = { + let __t3670 = { + let __t3627 = v_V5067.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3627])? }; - if rt::is_truthy(interp, &__t3661)? { + if rt::is_truthy(interp, &__t3670)? { { - let v_W5497 = { - let __t3619 = v_V5484.clone(); - rt::apply_direct(interp, "shen.newpv", &[__t3619])? + let v_W5079 = { + let __t3628 = v_V5066.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t3628])? }; { - let __t3620 = v_V5484.clone(); - let __t3660 = { - let v_W5498 = { - let __t3621 = v_V5484.clone(); + let __t3629 = v_V5066.clone(); + let __t3669 = { + let v_W5080 = { + let __t3630 = v_V5066.clone(); rt::apply_direct( interp, "shen.newpv", - &[__t3621], + &[__t3630], )? }; { - let __t3622 = v_V5484.clone(); - let __t3659 = { - let v_W5499 = { - let __t3623 = v_V5484.clone(); + let __t3631 = v_V5066.clone(); + let __t3668 = { + let v_W5081 = { + let __t3632 = v_V5066.clone(); rt::apply_direct( interp, "shen.newpv", - &[__t3623], + &[__t3632], )? }; { - let __t3624 = v_V5484.clone(); - let __t3658 = { + let __t3633 = v_V5066.clone(); + let __t3667 = { let _ = { rt::apply_direct( interp, @@ -8821,94 +8853,94 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( )? }; { - let __t3626 = { - let __t3625 = - v_V5481.clone(); + let __t3635 = { + let __t3634 = + v_V5063.clone(); rt::apply_direct( interp, "shen.freshterms", - &[__t3625], + &[__t3634], )? }; - let __t3627 = v_W5497.clone(); - let __t3628 = v_V5484.clone(); - let __t3629 = v_V5485.clone(); - let __t3630 = v_W5488.clone(); - let __t3657 = { - let v_V5481 = - v_V5481.clone(); - let v_V5482 = - v_V5482.clone(); - let v_V5483 = - v_V5483.clone(); - let v_V5484 = - v_V5484.clone(); - let v_V5485 = - v_V5485.clone(); - let v_V5487 = - v_V5487.clone(); - let v_W5488 = - v_W5488.clone(); - let v_W5497 = - v_W5497.clone(); - let v_W5498 = - v_W5498.clone(); - let v_W5499 = - v_W5499.clone(); + let __t3636 = v_W5079.clone(); + let __t3637 = v_V5066.clone(); + let __t3638 = v_V5067.clone(); + let __t3639 = v_W5070.clone(); + let __t3666 = { + let v_V5063 = + v_V5063.clone(); + let v_V5064 = + v_V5064.clone(); + let v_V5065 = + v_V5065.clone(); + let v_V5066 = + v_V5066.clone(); + let v_V5067 = + v_V5067.clone(); + let v_V5069 = + v_V5069.clone(); + let v_W5070 = + v_W5070.clone(); + let v_W5079 = + v_W5079.clone(); + let v_W5080 = + v_W5080.clone(); + let v_W5081 = + v_W5081.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t3631 = - v_V5481 + let __t3640 = + v_V5063 .clone( ); - let __t3632 = - v_V5483 + let __t3641 = + v_V5065 .clone( ); - let __t3633 = - v_W5497 + let __t3642 = + v_W5079 .clone( ); - let __t3634 = - v_W5498 + let __t3643 = + v_W5080 .clone( ); - let __t3635 = - v_V5484 + let __t3644 = + v_V5066 .clone( ); - let __t3636 = - v_V5485 + let __t3645 = + v_V5067 .clone( ); - let __t3637 = - v_W5488 + let __t3646 = + v_W5070 .clone( ); - let __t3656 = { - let v_V5481 = v_V5481.clone(); - let v_V5482 = v_V5482.clone(); - let v_V5483 = v_V5483.clone(); - let v_V5484 = v_V5484.clone(); - let v_V5485 = v_V5485.clone(); - let v_V5487 = v_V5487.clone(); - let v_W5488 = v_W5488.clone(); - let v_W5498 = v_W5498.clone(); - let v_W5499 = v_W5499.clone(); - rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3638 = v_V5484.clone(); let __t3639 = v_V5485.clone(); let __t3640 = v_W5488.clone(); let __t3655 = { let v_V5481 = v_V5481.clone(); let v_V5482 = v_V5482.clone(); let v_V5483 = v_V5483.clone(); let v_V5484 = v_V5484.clone(); let v_V5485 = v_V5485.clone(); let v_V5487 = v_V5487.clone(); let v_W5488 = v_W5488.clone(); let v_W5498 = v_W5498.clone(); let v_W5499 = v_W5499.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3641 = v_V5481.clone(); let __t3642 = v_V5483.clone(); let __t3643 = v_W5499.clone(); let __t3644 = v_V5484.clone(); let __t3645 = v_V5485.clone(); let __t3646 = v_W5488.clone(); let __t3654 = { let v_V5482 = v_V5482.clone(); let v_V5484 = v_V5484.clone(); let v_V5485 = v_V5485.clone(); let v_V5487 = v_V5487.clone(); let v_W5488 = v_W5488.clone(); let v_W5498 = v_W5498.clone(); let v_W5499 = v_W5499.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3647 = v_V5482.clone(); let __t3648 = v_W5498.clone(); let __t3649 = v_W5499.clone(); let __t3650 = v_V5484.clone(); let __t3651 = v_V5485.clone(); let __t3652 = v_W5488.clone(); let __t3653 = v_V5487.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t3647, __t3648, __t3649, __t3650, __t3651, __t3652, __t3653])? }), vec![v_V5482, v_V5484, v_V5485, v_V5487, v_W5488, v_W5498, v_W5499], interp) }; rt::apply_direct(interp, "shen.myassume", &[__t3641, __t3642, __t3643, __t3644, __t3645, __t3646, __t3654])? }), vec![v_V5481, v_V5482, v_V5483, v_V5484, v_V5485, v_V5487, v_W5488, v_W5498, v_W5499], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3638, __t3639, __t3640, __t3655])? }), vec![v_V5481, v_V5482, v_V5483, v_V5484, v_V5485, v_V5487, v_W5488, v_W5498, v_W5499], interp) + let __t3665 = { + let v_V5063 = v_V5063.clone(); + let v_V5064 = v_V5064.clone(); + let v_V5065 = v_V5065.clone(); + let v_V5066 = v_V5066.clone(); + let v_V5067 = v_V5067.clone(); + let v_V5069 = v_V5069.clone(); + let v_W5070 = v_W5070.clone(); + let v_W5080 = v_W5080.clone(); + let v_W5081 = v_W5081.clone(); + rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3647 = v_V5066.clone(); let __t3648 = v_V5067.clone(); let __t3649 = v_W5070.clone(); let __t3664 = { let v_V5063 = v_V5063.clone(); let v_V5064 = v_V5064.clone(); let v_V5065 = v_V5065.clone(); let v_V5066 = v_V5066.clone(); let v_V5067 = v_V5067.clone(); let v_V5069 = v_V5069.clone(); let v_W5070 = v_W5070.clone(); let v_W5080 = v_W5080.clone(); let v_W5081 = v_W5081.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3650 = v_V5063.clone(); let __t3651 = v_V5065.clone(); let __t3652 = v_W5081.clone(); let __t3653 = v_V5066.clone(); let __t3654 = v_V5067.clone(); let __t3655 = v_W5070.clone(); let __t3663 = { let v_V5064 = v_V5064.clone(); let v_V5066 = v_V5066.clone(); let v_V5067 = v_V5067.clone(); let v_V5069 = v_V5069.clone(); let v_W5070 = v_W5070.clone(); let v_W5080 = v_W5080.clone(); let v_W5081 = v_W5081.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3656 = v_V5064.clone(); let __t3657 = v_W5080.clone(); let __t3658 = v_W5081.clone(); let __t3659 = v_V5066.clone(); let __t3660 = v_V5067.clone(); let __t3661 = v_W5070.clone(); let __t3662 = v_V5069.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t3656, __t3657, __t3658, __t3659, __t3660, __t3661, __t3662])? }), vec![v_V5064, v_V5066, v_V5067, v_V5069, v_W5070, v_W5080, v_W5081], interp) }; rt::apply_direct(interp, "shen.myassume", &[__t3650, __t3651, __t3652, __t3653, __t3654, __t3655, __t3663])? }), vec![v_V5063, v_V5064, v_V5065, v_V5066, v_V5067, v_V5069, v_W5070, v_W5080, v_W5081], interp) }; rt::apply_direct(interp, "shen.cut", &[__t3647, __t3648, __t3649, __t3664])? }), vec![v_V5063, v_V5064, v_V5065, v_V5066, v_V5067, v_V5069, v_W5070, v_W5080, v_W5081], interp) }; - rt::apply_direct(interp, "shen.t*-integrity", &[__t3631, __t3632, __t3633, __t3634, __t3635, __t3636, __t3637, __t3656])? + rt::apply_direct(interp, "shen.t*-integrity", &[__t3640, __t3641, __t3642, __t3643, __t3644, __t3645, __t3646, __t3665])? }) }, vec![ - v_V5481, v_V5482, - v_V5483, v_V5484, - v_V5485, v_V5487, - v_W5488, v_W5497, - v_W5498, v_W5499, + v_V5063, v_V5064, + v_V5065, v_V5066, + v_V5067, v_V5069, + v_W5070, v_W5079, + v_W5080, v_W5081, ], interp, ) @@ -8917,9 +8949,9 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( interp, "shen.p-hyps", &[ - __t3626, __t3627, - __t3628, __t3629, - __t3630, __t3657, + __t3635, __t3636, + __t3637, __t3638, + __t3639, __t3666, ], )? } @@ -8927,21 +8959,21 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( rt::apply_direct( interp, "shen.gc", - &[__t3624, __t3658], + &[__t3633, __t3667], )? } }; rt::apply_direct( interp, "shen.gc", - &[__t3622, __t3659], + &[__t3631, __t3668], )? } }; rt::apply_direct( interp, "shen.gc", - &[__t3620, __t3660], + &[__t3629, __t3669], )? } } @@ -8950,31 +8982,31 @@ pub fn aot_shen_x2e_t_x2a__x2d_rule_x2d_h( } }; { - let __t3664 = { - let __t3662 = v_W5496.clone(); - let __t3663 = Value::bool(false); - rt::eq(&__t3662, &__t3663) + let __t3673 = { + let __t3671 = v_W5078.clone(); + let __t3672 = Value::bool(false); + rt::eq(&__t3671, &__t3672) }; - if match rt::is_truthy(interp, &__t3664) { + if match rt::is_truthy(interp, &__t3673) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3665 = v_V5485.clone(); - let __t3666 = v_W5488.clone(); + let __t3674 = v_V5067.clone(); + let __t3675 = v_W5070.clone(); rt::apply_direct( interp, "shen.unlock", - &[__t3665, __t3666], + &[__t3674, __t3675], )? }); } else { - break Ok(v_W5496.clone()); + break Ok(v_W5078.clone()); } } } } else { - break Ok(v_W5489.clone()); + break Ok(v_W5071.clone()); } } } @@ -8996,54 +9028,54 @@ pub fn aot_shen_x2e_myassume(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V5500 = args[0].clone(); + let mut v_V5082 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5501 = args[1].clone(); + let mut v_V5083 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5502 = args[2].clone(); + let mut v_V5084 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5503 = args[3].clone(); + let mut v_V5085 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5504 = args[4].clone(); + let mut v_V5086 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5505 = args[5].clone(); + let mut v_V5087 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5506 = args[6].clone(); + let mut v_V5088 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5507 = { - let __t3684 = { - let __t3667 = v_V5504.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3667])? + let v_W5089 = { + let __t3693 = { + let __t3676 = v_V5086.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3676])? }; - if rt::is_truthy(interp, &__t3684)? { + if rt::is_truthy(interp, &__t3693)? { { - let v_W5508 = { - let __t3668 = v_V5500.clone(); - let __t3669 = v_V5503.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3668, __t3669])? + let v_W5090 = { + let __t3677 = v_V5082.clone(); + let __t3678 = v_V5085.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3677, __t3678])? }; { - let __t3683 = { - let __t3670 = v_W5508.clone(); - let __t3671 = Value::nil(); - rt::eq(&__t3670, &__t3671) + let __t3692 = { + let __t3679 = v_W5090.clone(); + let __t3680 = Value::nil(); + rt::eq(&__t3679, &__t3680) }; - if rt::is_truthy(interp, &__t3683)? { + if rt::is_truthy(interp, &__t3692)? { { - let v_W5509 = { - let __t3672 = v_V5502.clone(); - let __t3673 = v_V5503.clone(); + let v_W5091 = { + let __t3681 = v_V5084.clone(); + let __t3682 = v_V5085.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3672, __t3673], + &[__t3681, __t3682], )? }; { - let v_W5510 = { - let v_V5506 = v_V5506.clone(); + let v_W5092 = { + let v_V5088 = v_V5088.clone(); rt::make_aot_closure( "", 0, @@ -9058,45 +9090,45 @@ pub fn aot_shen_x2e_myassume(interp: &mut Interp, args: &[Value]) -> ShenResult< }; rt::apply_value( interp, - v_V5506.clone(), + v_V5088.clone(), &[], )? }) }, - vec![v_V5506], + vec![v_V5088], interp, ) }; { - let __t3682 = { - let __t3674 = v_W5509.clone(); - let __t3675 = Value::nil(); - rt::eq(&__t3674, &__t3675) + let __t3691 = { + let __t3683 = v_W5091.clone(); + let __t3684 = Value::nil(); + rt::eq(&__t3683, &__t3684) }; - if rt::is_truthy(interp, &__t3682)? { - rt::apply_value(interp, v_W5510.clone(), &[])? + if rt::is_truthy(interp, &__t3691)? { + rt::apply_value(interp, v_W5092.clone(), &[])? } else { { - let __t3681 = { - let __t3676 = v_W5509.clone(); + let __t3690 = { + let __t3685 = v_W5091.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t3676], + &[__t3685], )? }; - if rt::is_truthy(interp, &__t3681)? { + if rt::is_truthy(interp, &__t3690)? { { - let __t3677 = v_W5509.clone(); - let __t3678 = Value::nil(); - let __t3679 = v_V5503.clone(); - let __t3680 = v_W5510.clone(); + let __t3686 = v_W5091.clone(); + let __t3687 = Value::nil(); + let __t3688 = v_V5085.clone(); + let __t3689 = v_W5092.clone(); rt::apply_direct( interp, "shen.bind!", &[ - __t3677, __t3678, __t3679, - __t3680, + __t3686, __t3687, __t3688, + __t3689, ], )? } @@ -9118,119 +9150,119 @@ pub fn aot_shen_x2e_myassume(interp: &mut Interp, args: &[Value]) -> ShenResult< } }; { - let __t3687 = { - let __t3685 = v_W5507.clone(); - let __t3686 = Value::bool(false); - rt::eq(&__t3685, &__t3686) + let __t3696 = { + let __t3694 = v_W5089.clone(); + let __t3695 = Value::bool(false); + rt::eq(&__t3694, &__t3695) }; - if match rt::is_truthy(interp, &__t3687) { + if match rt::is_truthy(interp, &__t3696) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3689 = { - let __t3688 = v_V5504.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3688])? + let __t3698 = { + let __t3697 = v_V5086.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3697])? }; - if match rt::is_truthy(interp, &__t3689) { + if match rt::is_truthy(interp, &__t3698) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5511 = { - let __t3690 = v_V5500.clone(); - let __t3691 = v_V5503.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3690, __t3691])? + let v_W5093 = { + let __t3699 = v_V5082.clone(); + let __t3700 = v_V5085.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3699, __t3700])? }; { - let __t3693 = { - let __t3692 = v_W5511.clone(); - rt::is_cons(&__t3692) + let __t3702 = { + let __t3701 = v_W5093.clone(); + rt::is_cons(&__t3701) }; - if match rt::is_truthy(interp, &__t3693) { + if match rt::is_truthy(interp, &__t3702) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5512 = { - let __t3694 = v_W5511.clone(); - rt::hd(&__t3694)? + let v_W5094 = { + let __t3703 = v_W5093.clone(); + rt::hd(&__t3703)? }; { - let v_W5513 = { - let __t3695 = v_W5511.clone(); - rt::tl(&__t3695)? + let v_W5095 = { + let __t3704 = v_W5093.clone(); + rt::tl(&__t3704)? }; { - let v_W5514 = { - let __t3696 = v_V5501.clone(); - let __t3697 = v_V5503.clone(); + let v_W5096 = { + let __t3705 = v_V5083.clone(); + let __t3706 = v_V5085.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3696, __t3697], + &[__t3705, __t3706], )? }; { - let __t3699 = { - let __t3698 = v_W5514.clone(); - rt::is_cons(&__t3698) + let __t3708 = { + let __t3707 = v_W5096.clone(); + rt::is_cons(&__t3707) }; - if match rt::is_truthy(interp, &__t3699) { + if match rt::is_truthy(interp, &__t3708) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5515 = { - let __t3700 = v_W5514.clone(); - rt::hd(&__t3700)? + let v_W5097 = { + let __t3709 = v_W5096.clone(); + rt::hd(&__t3709)? }; { - let v_W5516 = { - let __t3702 = { - let __t3701 = - v_W5514.clone(); - rt::tl(&__t3701)? + let v_W5098 = { + let __t3711 = { + let __t3710 = + v_W5096.clone(); + rt::tl(&__t3710)? }; - let __t3703 = - v_V5503.clone(); + let __t3712 = + v_V5085.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3702, __t3703], + &[__t3711, __t3712], )? }; { - let __t3705 = { - let __t3704 = - v_W5516.clone(); - rt::is_cons(&__t3704) + let __t3714 = { + let __t3713 = + v_W5098.clone(); + rt::is_cons(&__t3713) }; if match rt::is_truthy( - interp, &__t3705, + interp, &__t3714, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5517 = { - let __t3707 = { - let __t3706 = v_W5516.clone(); - rt::hd(&__t3706)? + let v_W5099 = { + let __t3716 = { + let __t3715 = v_W5098.clone(); + rt::hd(&__t3715)? }; - let __t3708 = - v_V5503 + let __t3717 = + v_V5085 .clone( ); - rt::apply_direct(interp, "shen.lazyderef", &[__t3707, __t3708])? + rt::apply_direct(interp, "shen.lazyderef", &[__t3716, __t3717])? }; { - let __t3711 = { - let __t3709 = v_W5517.clone(); - let __t3710 = Value::sym(interp.intern("-->")); - rt::eq(&__t3709, &__t3710) + let __t3720 = { + let __t3718 = v_W5099.clone(); + let __t3719 = Value::sym(interp.intern("-->")); + rt::eq(&__t3718, &__t3719) }; - if match rt::is_truthy(interp, &__t3711) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5518 = { let __t3713 = { let __t3712 = v_W5516.clone(); rt::tl(&__t3712)? }; let __t3714 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3713, __t3714])? }; { let __t3716 = { let __t3715 = v_W5518.clone(); rt::is_cons(&__t3715) }; if match rt::is_truthy(interp, &__t3716) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5519 = { let __t3717 = v_W5518.clone(); rt::hd(&__t3717)? }; { let v_W5520 = { let __t3719 = { let __t3718 = v_W5518.clone(); rt::tl(&__t3718)? }; let __t3720 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3719, __t3720])? }; { let __t3723 = { let __t3721 = v_W5520.clone(); let __t3722 = Value::nil(); rt::eq(&__t3721, &__t3722) }; if match rt::is_truthy(interp, &__t3723) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5521 = { let __t3724 = v_V5502.clone(); let __t3725 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3724, __t3725])? }; { let v_W5522 = { let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5512 = v_W5512.clone(); let v_W5513 = v_W5513.clone(); let v_W5515 = v_W5515.clone(); let v_W5519 = v_W5519.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5523 = args[0].clone(); Ok({ let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5512 = v_W5512.clone(); let v_W5513 = v_W5513.clone(); let v_W5515 = v_W5515.clone(); let v_W5519 = v_W5519.clone(); let v_Z5523 = v_Z5523.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5524 = args[0].clone(); Ok({ let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5512 = v_W5512.clone(); let v_W5513 = v_W5513.clone(); let v_W5515 = v_W5515.clone(); let v_W5519 = v_W5519.clone(); let v_Z5523 = v_Z5523.clone(); let v_Z5524 = v_Z5524.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5525 = args[0].clone(); Ok({ let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5512 = v_W5512.clone(); let v_W5513 = v_W5513.clone(); let v_W5515 = v_W5515.clone(); let v_W5519 = v_W5519.clone(); let v_Z5523 = v_Z5523.clone(); let v_Z5524 = v_Z5524.clone(); let v_Z5525 = v_Z5525.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5526 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3726 = v_W5515.clone(); let __t3727 = v_Z5525.clone(); let __t3728 = v_V5503.clone(); let __t3729 = v_V5504.clone(); let __t3730 = v_V5505.clone(); let __t3751 = { let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5512 = v_W5512.clone(); let v_W5513 = v_W5513.clone(); let v_W5519 = v_W5519.clone(); let v_Z5523 = v_Z5523.clone(); let v_Z5524 = v_Z5524.clone(); let v_Z5526 = v_Z5526.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3731 = v_W5512.clone(); let __t3732 = v_Z5523.clone(); let __t3733 = v_V5503.clone(); let __t3734 = v_V5504.clone(); let __t3735 = v_V5505.clone(); let __t3750 = { let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5513 = v_W5513.clone(); let v_W5519 = v_W5519.clone(); let v_Z5524 = v_Z5524.clone(); let v_Z5526 = v_Z5526.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3736 = v_Z5524.clone(); let __t3738 = { let __t3737 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t3737])? }; let __t3739 = v_V5503.clone(); let __t3740 = v_V5504.clone(); let __t3741 = v_V5505.clone(); let __t3749 = { let v_V5503 = v_V5503.clone(); let v_V5504 = v_V5504.clone(); let v_V5505 = v_V5505.clone(); let v_V5506 = v_V5506.clone(); let v_W5513 = v_W5513.clone(); let v_W5519 = v_W5519.clone(); let v_Z5526 = v_Z5526.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3742 = v_W5513.clone(); let __t3743 = v_W5519.clone(); let __t3744 = v_Z5526.clone(); let __t3745 = v_V5503.clone(); let __t3746 = v_V5504.clone(); let __t3747 = v_V5505.clone(); let __t3748 = v_V5506.clone(); rt::apply_direct(interp, "shen.myassume", &[__t3742, __t3743, __t3744, __t3745, __t3746, __t3747, __t3748])? }), vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5513, v_W5519, v_Z5526], interp) }; rt::apply_direct(interp, "bind", &[__t3736, __t3738, __t3739, __t3740, __t3741, __t3749])? }), vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5513, v_W5519, v_Z5524, v_Z5526], interp) }; rt::apply_direct(interp, "is!", &[__t3731, __t3732, __t3733, __t3734, __t3735, __t3750])? }), vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5512, v_W5513, v_W5519, v_Z5523, v_Z5524, v_Z5526], interp) }; rt::apply_direct(interp, "is!", &[__t3726, __t3727, __t3728, __t3729, __t3730, __t3751])? } }) }, vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5512, v_W5513, v_W5515, v_W5519, v_Z5523, v_Z5524, v_Z5525], interp) }) }, vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5512, v_W5513, v_W5515, v_W5519, v_Z5523, v_Z5524], interp) }) }, vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5512, v_W5513, v_W5515, v_W5519, v_Z5523], interp) }) }, vec![v_V5503, v_V5504, v_V5505, v_V5506, v_W5512, v_W5513, v_W5515, v_W5519], interp) }; { let __t3753 = { let __t3752 = v_W5521.clone(); rt::is_cons(&__t3752) }; if match rt::is_truthy(interp, &__t3753) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5527 = { let __t3755 = { let __t3754 = v_W5521.clone(); rt::hd(&__t3754)? }; let __t3756 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3755, __t3756])? }; { let v_W5528 = { let v_W5521 = v_W5521.clone(); let v_W5522 = v_W5522.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5529 = args[0].clone(); Ok({ let v_W5521 = v_W5521.clone(); let v_W5522 = v_W5522.clone(); let v_Z5529 = v_Z5529.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5530 = args[0].clone(); Ok({ let v_W5521 = v_W5521.clone(); let v_W5522 = v_W5522.clone(); let v_Z5529 = v_Z5529.clone(); let v_Z5530 = v_Z5530.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5531 = args[0].clone(); Ok({ let v_W5532 = { let __t3757 = v_W5521.clone(); rt::tl(&__t3757)? }; { let __t3763 = { let __t3761 = { let __t3759 = { let __t3758 = v_Z5529.clone(); rt::apply_value(interp, v_W5522.clone(), &[__t3758])? }; let __t3760 = v_Z5530.clone(); rt::apply_value(interp, __t3759, &[__t3760])? }; let __t3762 = v_Z5531.clone(); rt::apply_value(interp, __t3761, &[__t3762])? }; let __t3764 = v_W5532.clone(); rt::apply_value(interp, __t3763, &[__t3764])? } }) }, vec![v_W5521, v_W5522, v_Z5529, v_Z5530], interp) }) }, vec![v_W5521, v_W5522, v_Z5529], interp) }) }, vec![v_W5521, v_W5522], interp) }; { let __t3766 = { let __t3765 = v_W5527.clone(); rt::is_cons(&__t3765) }; if match rt::is_truthy(interp, &__t3766) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5533 = { let __t3767 = v_W5527.clone(); rt::hd(&__t3767)? }; { let v_W5534 = { let __t3769 = { let __t3768 = v_W5527.clone(); rt::tl(&__t3768)? }; let __t3770 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3769, __t3770])? }; { let v_W5535 = { let v_W5528 = v_W5528.clone(); let v_W5533 = v_W5533.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5536 = args[0].clone(); Ok({ let v_W5528 = v_W5528.clone(); let v_W5533 = v_W5533.clone(); let v_Z5536 = v_Z5536.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5537 = args[0].clone(); Ok({ let __t3774 = { let __t3772 = { let __t3771 = v_W5533.clone(); rt::apply_value(interp, v_W5528.clone(), &[__t3771])? }; let __t3773 = v_Z5536.clone(); rt::apply_value(interp, __t3772, &[__t3773])? }; let __t3775 = v_Z5537.clone(); rt::apply_value(interp, __t3774, &[__t3775])? }) }, vec![v_W5528, v_W5533, v_Z5536], interp) }) }, vec![v_W5528, v_W5533], interp) }; { let __t3777 = { let __t3776 = v_W5534.clone(); rt::is_cons(&__t3776) }; if match rt::is_truthy(interp, &__t3777) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5538 = { let __t3778 = v_W5534.clone(); rt::hd(&__t3778)? }; { let v_W5539 = { let __t3780 = { let __t3779 = v_W5534.clone(); rt::tl(&__t3779)? }; let __t3781 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3780, __t3781])? }; { let v_W5540 = { let v_W5535 = v_W5535.clone(); let v_W5538 = v_W5538.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5541 = args[0].clone(); Ok({ let __t3783 = { let __t3782 = v_W5538.clone(); rt::apply_value(interp, v_W5535.clone(), &[__t3782])? }; let __t3784 = v_Z5541.clone(); rt::apply_value(interp, __t3783, &[__t3784])? }) }, vec![v_W5535, v_W5538], interp) }; { let __t3786 = { let __t3785 = v_W5539.clone(); rt::is_cons(&__t3785) }; if match rt::is_truthy(interp, &__t3786) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5542 = { let __t3787 = v_W5539.clone(); rt::hd(&__t3787)? }; { let v_W5543 = { let __t3789 = { let __t3788 = v_W5539.clone(); rt::tl(&__t3788)? }; let __t3790 = v_V5503.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3789, __t3790])? }; { let v_W5544 = { let v_W5540 = v_W5540.clone(); let v_W5542 = v_W5542.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3791 = v_W5542.clone(); rt::apply_value(interp, v_W5540.clone(), &[__t3791])? }), vec![v_W5540, v_W5542], interp) }; { let __t3794 = { let __t3792 = v_W5543.clone(); let __t3793 = Value::nil(); rt::eq(&__t3792, &__t3793) }; if match rt::is_truthy(interp, &__t3794) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W5544.clone(), &[])?); } else { { let __t3796 = { let __t3795 = v_W5543.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3795])? }; if match rt::is_truthy(interp, &__t3796) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t3797 = v_W5543.clone(); let __t3798 = Value::nil(); let __t3799 = v_V5503.clone(); let __t3800 = v_W5544.clone(); rt::apply_direct(interp, "shen.bind!", &[__t3797, __t3798, __t3799, __t3800])? }); } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3802 = { let __t3801 = v_W5539.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3801])? }; if match rt::is_truthy(interp, &__t3802) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5545 = { let __t3803 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3803])? }; break Ok({ let __t3804 = v_V5503.clone(); let __t3812 = { let __t3805 = v_W5539.clone(); let __t3808 = { let __t3806 = v_W5545.clone(); let __t3807 = Value::nil(); rt::cons(&__t3806, &__t3807) }; let __t3809 = v_V5503.clone(); let __t3811 = { let v_W5540 = v_W5540.clone(); let v_W5545 = v_W5545.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3810 = v_W5545.clone(); rt::apply_value(interp, v_W5540.clone(), &[__t3810])? }), vec![v_W5540, v_W5545], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3805, __t3808, __t3809, __t3811])? }; rt::apply_direct(interp, "shen.gc", &[__t3804, __t3812])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3814 = { let __t3813 = v_W5534.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3813])? }; if match rt::is_truthy(interp, &__t3814) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5546 = { let __t3815 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3815])? }; break Ok({ let __t3816 = v_V5503.clone(); let __t3831 = { let v_W5547 = { let __t3817 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3817])? }; { let __t3818 = v_V5503.clone(); let __t3830 = { let __t3819 = v_W5534.clone(); let __t3824 = { let __t3820 = v_W5546.clone(); let __t3823 = { let __t3821 = v_W5547.clone(); let __t3822 = Value::nil(); rt::cons(&__t3821, &__t3822) }; rt::cons(&__t3820, &__t3823) }; let __t3825 = v_V5503.clone(); let __t3829 = { let v_W5535 = v_W5535.clone(); let v_W5546 = v_W5546.clone(); let v_W5547 = v_W5547.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3827 = { let __t3826 = v_W5546.clone(); rt::apply_value(interp, v_W5535.clone(), &[__t3826])? }; let __t3828 = v_W5547.clone(); rt::apply_value(interp, __t3827, &[__t3828])? }), vec![v_W5535, v_W5546, v_W5547], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3819, __t3824, __t3825, __t3829])? }; rt::apply_direct(interp, "shen.gc", &[__t3818, __t3830])? } }; rt::apply_direct(interp, "shen.gc", &[__t3816, __t3831])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3833 = { let __t3832 = v_W5527.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3832])? }; if match rt::is_truthy(interp, &__t3833) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5548 = { let __t3834 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3834])? }; break Ok({ let __t3835 = v_V5503.clone(); let __t3857 = { let v_W5549 = { let __t3836 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3836])? }; { let __t3837 = v_V5503.clone(); let __t3856 = { let v_W5550 = { let __t3838 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3838])? }; { let __t3839 = v_V5503.clone(); let __t3855 = { let __t3840 = v_W5527.clone(); let __t3847 = { let __t3841 = v_W5548.clone(); let __t3846 = { let __t3842 = v_W5549.clone(); let __t3845 = { let __t3843 = v_W5550.clone(); let __t3844 = Value::nil(); rt::cons(&__t3843, &__t3844) }; rt::cons(&__t3842, &__t3845) }; rt::cons(&__t3841, &__t3846) }; let __t3848 = v_V5503.clone(); let __t3854 = { let v_W5528 = v_W5528.clone(); let v_W5548 = v_W5548.clone(); let v_W5549 = v_W5549.clone(); let v_W5550 = v_W5550.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3852 = { let __t3850 = { let __t3849 = v_W5548.clone(); rt::apply_value(interp, v_W5528.clone(), &[__t3849])? }; let __t3851 = v_W5549.clone(); rt::apply_value(interp, __t3850, &[__t3851])? }; let __t3853 = v_W5550.clone(); rt::apply_value(interp, __t3852, &[__t3853])? }), vec![v_W5528, v_W5548, v_W5549, v_W5550], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3840, __t3847, __t3848, __t3854])? }; rt::apply_direct(interp, "shen.gc", &[__t3839, __t3855])? } }; rt::apply_direct(interp, "shen.gc", &[__t3837, __t3856])? } }; rt::apply_direct(interp, "shen.gc", &[__t3835, __t3857])? }); } } else { break Ok(Value::bool(false)); } } } } } } } else { { let __t3859 = { let __t3858 = v_W5521.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3858])? }; if match rt::is_truthy(interp, &__t3859) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5551 = { let __t3860 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3860])? }; break Ok({ let __t3861 = v_V5503.clone(); let __t3890 = { let v_W5552 = { let __t3862 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3862])? }; { let __t3863 = v_V5503.clone(); let __t3889 = { let v_W5553 = { let __t3864 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3864])? }; { let __t3865 = v_V5503.clone(); let __t3888 = { let v_W5554 = { let __t3866 = v_V5503.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3866])? }; { let __t3867 = v_V5503.clone(); let __t3887 = { let __t3868 = v_W5521.clone(); let __t3877 = { let __t3875 = { let __t3869 = v_W5551.clone(); let __t3874 = { let __t3870 = v_W5552.clone(); let __t3873 = { let __t3871 = v_W5553.clone(); let __t3872 = Value::nil(); rt::cons(&__t3871, &__t3872) }; rt::cons(&__t3870, &__t3873) }; rt::cons(&__t3869, &__t3874) }; let __t3876 = v_W5554.clone(); rt::cons(&__t3875, &__t3876) }; let __t3878 = v_V5503.clone(); let __t3886 = { let v_W5522 = v_W5522.clone(); let v_W5551 = v_W5551.clone(); let v_W5552 = v_W5552.clone(); let v_W5553 = v_W5553.clone(); let v_W5554 = v_W5554.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3884 = { let __t3882 = { let __t3880 = { let __t3879 = v_W5551.clone(); rt::apply_value(interp, v_W5522.clone(), &[__t3879])? }; let __t3881 = v_W5552.clone(); rt::apply_value(interp, __t3880, &[__t3881])? }; let __t3883 = v_W5553.clone(); rt::apply_value(interp, __t3882, &[__t3883])? }; let __t3885 = v_W5554.clone(); rt::apply_value(interp, __t3884, &[__t3885])? }), vec![v_W5522, v_W5551, v_W5552, v_W5553, v_W5554], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3868, __t3877, __t3878, __t3886])? }; rt::apply_direct(interp, "shen.gc", &[__t3867, __t3887])? } }; rt::apply_direct(interp, "shen.gc", &[__t3865, __t3888])? } }; rt::apply_direct(interp, "shen.gc", &[__t3863, __t3889])? } }; rt::apply_direct(interp, "shen.gc", &[__t3861, __t3890])? }); } } else { break Ok(Value::bool(false)); } } } } } } } else { break Ok(Value::bool(false)); } } } } } else { break Ok(Value::bool(false)); } } } } else { break Ok(Value::bool(false)); } + if match rt::is_truthy(interp, &__t3720) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5100 = { let __t3722 = { let __t3721 = v_W5098.clone(); rt::tl(&__t3721)? }; let __t3723 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3722, __t3723])? }; { let __t3725 = { let __t3724 = v_W5100.clone(); rt::is_cons(&__t3724) }; if match rt::is_truthy(interp, &__t3725) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5101 = { let __t3726 = v_W5100.clone(); rt::hd(&__t3726)? }; { let v_W5102 = { let __t3728 = { let __t3727 = v_W5100.clone(); rt::tl(&__t3727)? }; let __t3729 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3728, __t3729])? }; { let __t3732 = { let __t3730 = v_W5102.clone(); let __t3731 = Value::nil(); rt::eq(&__t3730, &__t3731) }; if match rt::is_truthy(interp, &__t3732) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5103 = { let __t3733 = v_V5084.clone(); let __t3734 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3733, __t3734])? }; { let v_W5104 = { let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5094 = v_W5094.clone(); let v_W5095 = v_W5095.clone(); let v_W5097 = v_W5097.clone(); let v_W5101 = v_W5101.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5105 = args[0].clone(); Ok({ let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5094 = v_W5094.clone(); let v_W5095 = v_W5095.clone(); let v_W5097 = v_W5097.clone(); let v_W5101 = v_W5101.clone(); let v_Z5105 = v_Z5105.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5106 = args[0].clone(); Ok({ let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5094 = v_W5094.clone(); let v_W5095 = v_W5095.clone(); let v_W5097 = v_W5097.clone(); let v_W5101 = v_W5101.clone(); let v_Z5105 = v_Z5105.clone(); let v_Z5106 = v_Z5106.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5107 = args[0].clone(); Ok({ let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5094 = v_W5094.clone(); let v_W5095 = v_W5095.clone(); let v_W5097 = v_W5097.clone(); let v_W5101 = v_W5101.clone(); let v_Z5105 = v_Z5105.clone(); let v_Z5106 = v_Z5106.clone(); let v_Z5107 = v_Z5107.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5108 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3735 = v_W5097.clone(); let __t3736 = v_Z5107.clone(); let __t3737 = v_V5085.clone(); let __t3738 = v_V5086.clone(); let __t3739 = v_V5087.clone(); let __t3760 = { let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5094 = v_W5094.clone(); let v_W5095 = v_W5095.clone(); let v_W5101 = v_W5101.clone(); let v_Z5105 = v_Z5105.clone(); let v_Z5106 = v_Z5106.clone(); let v_Z5108 = v_Z5108.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3740 = v_W5094.clone(); let __t3741 = v_Z5105.clone(); let __t3742 = v_V5085.clone(); let __t3743 = v_V5086.clone(); let __t3744 = v_V5087.clone(); let __t3759 = { let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5095 = v_W5095.clone(); let v_W5101 = v_W5101.clone(); let v_Z5106 = v_Z5106.clone(); let v_Z5108 = v_Z5108.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3745 = v_Z5106.clone(); let __t3747 = { let __t3746 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t3746])? }; let __t3748 = v_V5085.clone(); let __t3749 = v_V5086.clone(); let __t3750 = v_V5087.clone(); let __t3758 = { let v_V5085 = v_V5085.clone(); let v_V5086 = v_V5086.clone(); let v_V5087 = v_V5087.clone(); let v_V5088 = v_V5088.clone(); let v_W5095 = v_W5095.clone(); let v_W5101 = v_W5101.clone(); let v_Z5108 = v_Z5108.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3751 = v_W5095.clone(); let __t3752 = v_W5101.clone(); let __t3753 = v_Z5108.clone(); let __t3754 = v_V5085.clone(); let __t3755 = v_V5086.clone(); let __t3756 = v_V5087.clone(); let __t3757 = v_V5088.clone(); rt::apply_direct(interp, "shen.myassume", &[__t3751, __t3752, __t3753, __t3754, __t3755, __t3756, __t3757])? }), vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5095, v_W5101, v_Z5108], interp) }; rt::apply_direct(interp, "bind", &[__t3745, __t3747, __t3748, __t3749, __t3750, __t3758])? }), vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5095, v_W5101, v_Z5106, v_Z5108], interp) }; rt::apply_direct(interp, "is!", &[__t3740, __t3741, __t3742, __t3743, __t3744, __t3759])? }), vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5094, v_W5095, v_W5101, v_Z5105, v_Z5106, v_Z5108], interp) }; rt::apply_direct(interp, "is!", &[__t3735, __t3736, __t3737, __t3738, __t3739, __t3760])? } }) }, vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5094, v_W5095, v_W5097, v_W5101, v_Z5105, v_Z5106, v_Z5107], interp) }) }, vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5094, v_W5095, v_W5097, v_W5101, v_Z5105, v_Z5106], interp) }) }, vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5094, v_W5095, v_W5097, v_W5101, v_Z5105], interp) }) }, vec![v_V5085, v_V5086, v_V5087, v_V5088, v_W5094, v_W5095, v_W5097, v_W5101], interp) }; { let __t3762 = { let __t3761 = v_W5103.clone(); rt::is_cons(&__t3761) }; if match rt::is_truthy(interp, &__t3762) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5109 = { let __t3764 = { let __t3763 = v_W5103.clone(); rt::hd(&__t3763)? }; let __t3765 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3764, __t3765])? }; { let v_W5110 = { let v_W5103 = v_W5103.clone(); let v_W5104 = v_W5104.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5111 = args[0].clone(); Ok({ let v_W5103 = v_W5103.clone(); let v_W5104 = v_W5104.clone(); let v_Z5111 = v_Z5111.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5112 = args[0].clone(); Ok({ let v_W5103 = v_W5103.clone(); let v_W5104 = v_W5104.clone(); let v_Z5111 = v_Z5111.clone(); let v_Z5112 = v_Z5112.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5113 = args[0].clone(); Ok({ let v_W5114 = { let __t3766 = v_W5103.clone(); rt::tl(&__t3766)? }; { let __t3772 = { let __t3770 = { let __t3768 = { let __t3767 = v_Z5111.clone(); rt::apply_value(interp, v_W5104.clone(), &[__t3767])? }; let __t3769 = v_Z5112.clone(); rt::apply_value(interp, __t3768, &[__t3769])? }; let __t3771 = v_Z5113.clone(); rt::apply_value(interp, __t3770, &[__t3771])? }; let __t3773 = v_W5114.clone(); rt::apply_value(interp, __t3772, &[__t3773])? } }) }, vec![v_W5103, v_W5104, v_Z5111, v_Z5112], interp) }) }, vec![v_W5103, v_W5104, v_Z5111], interp) }) }, vec![v_W5103, v_W5104], interp) }; { let __t3775 = { let __t3774 = v_W5109.clone(); rt::is_cons(&__t3774) }; if match rt::is_truthy(interp, &__t3775) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5115 = { let __t3776 = v_W5109.clone(); rt::hd(&__t3776)? }; { let v_W5116 = { let __t3778 = { let __t3777 = v_W5109.clone(); rt::tl(&__t3777)? }; let __t3779 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3778, __t3779])? }; { let v_W5117 = { let v_W5110 = v_W5110.clone(); let v_W5115 = v_W5115.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5118 = args[0].clone(); Ok({ let v_W5110 = v_W5110.clone(); let v_W5115 = v_W5115.clone(); let v_Z5118 = v_Z5118.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5119 = args[0].clone(); Ok({ let __t3783 = { let __t3781 = { let __t3780 = v_W5115.clone(); rt::apply_value(interp, v_W5110.clone(), &[__t3780])? }; let __t3782 = v_Z5118.clone(); rt::apply_value(interp, __t3781, &[__t3782])? }; let __t3784 = v_Z5119.clone(); rt::apply_value(interp, __t3783, &[__t3784])? }) }, vec![v_W5110, v_W5115, v_Z5118], interp) }) }, vec![v_W5110, v_W5115], interp) }; { let __t3786 = { let __t3785 = v_W5116.clone(); rt::is_cons(&__t3785) }; if match rt::is_truthy(interp, &__t3786) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5120 = { let __t3787 = v_W5116.clone(); rt::hd(&__t3787)? }; { let v_W5121 = { let __t3789 = { let __t3788 = v_W5116.clone(); rt::tl(&__t3788)? }; let __t3790 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3789, __t3790])? }; { let v_W5122 = { let v_W5117 = v_W5117.clone(); let v_W5120 = v_W5120.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5123 = args[0].clone(); Ok({ let __t3792 = { let __t3791 = v_W5120.clone(); rt::apply_value(interp, v_W5117.clone(), &[__t3791])? }; let __t3793 = v_Z5123.clone(); rt::apply_value(interp, __t3792, &[__t3793])? }) }, vec![v_W5117, v_W5120], interp) }; { let __t3795 = { let __t3794 = v_W5121.clone(); rt::is_cons(&__t3794) }; if match rt::is_truthy(interp, &__t3795) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5124 = { let __t3796 = v_W5121.clone(); rt::hd(&__t3796)? }; { let v_W5125 = { let __t3798 = { let __t3797 = v_W5121.clone(); rt::tl(&__t3797)? }; let __t3799 = v_V5085.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t3798, __t3799])? }; { let v_W5126 = { let v_W5122 = v_W5122.clone(); let v_W5124 = v_W5124.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3800 = v_W5124.clone(); rt::apply_value(interp, v_W5122.clone(), &[__t3800])? }), vec![v_W5122, v_W5124], interp) }; { let __t3803 = { let __t3801 = v_W5125.clone(); let __t3802 = Value::nil(); rt::eq(&__t3801, &__t3802) }; if match rt::is_truthy(interp, &__t3803) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W5126.clone(), &[])?); } else { { let __t3805 = { let __t3804 = v_W5125.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3804])? }; if match rt::is_truthy(interp, &__t3805) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t3806 = v_W5125.clone(); let __t3807 = Value::nil(); let __t3808 = v_V5085.clone(); let __t3809 = v_W5126.clone(); rt::apply_direct(interp, "shen.bind!", &[__t3806, __t3807, __t3808, __t3809])? }); } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3811 = { let __t3810 = v_W5121.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3810])? }; if match rt::is_truthy(interp, &__t3811) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5127 = { let __t3812 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3812])? }; break Ok({ let __t3813 = v_V5085.clone(); let __t3821 = { let __t3814 = v_W5121.clone(); let __t3817 = { let __t3815 = v_W5127.clone(); let __t3816 = Value::nil(); rt::cons(&__t3815, &__t3816) }; let __t3818 = v_V5085.clone(); let __t3820 = { let v_W5122 = v_W5122.clone(); let v_W5127 = v_W5127.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3819 = v_W5127.clone(); rt::apply_value(interp, v_W5122.clone(), &[__t3819])? }), vec![v_W5122, v_W5127], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3814, __t3817, __t3818, __t3820])? }; rt::apply_direct(interp, "shen.gc", &[__t3813, __t3821])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3823 = { let __t3822 = v_W5116.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3822])? }; if match rt::is_truthy(interp, &__t3823) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5128 = { let __t3824 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3824])? }; break Ok({ let __t3825 = v_V5085.clone(); let __t3840 = { let v_W5129 = { let __t3826 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3826])? }; { let __t3827 = v_V5085.clone(); let __t3839 = { let __t3828 = v_W5116.clone(); let __t3833 = { let __t3829 = v_W5128.clone(); let __t3832 = { let __t3830 = v_W5129.clone(); let __t3831 = Value::nil(); rt::cons(&__t3830, &__t3831) }; rt::cons(&__t3829, &__t3832) }; let __t3834 = v_V5085.clone(); let __t3838 = { let v_W5117 = v_W5117.clone(); let v_W5128 = v_W5128.clone(); let v_W5129 = v_W5129.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3836 = { let __t3835 = v_W5128.clone(); rt::apply_value(interp, v_W5117.clone(), &[__t3835])? }; let __t3837 = v_W5129.clone(); rt::apply_value(interp, __t3836, &[__t3837])? }), vec![v_W5117, v_W5128, v_W5129], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3828, __t3833, __t3834, __t3838])? }; rt::apply_direct(interp, "shen.gc", &[__t3827, __t3839])? } }; rt::apply_direct(interp, "shen.gc", &[__t3825, __t3840])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t3842 = { let __t3841 = v_W5109.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3841])? }; if match rt::is_truthy(interp, &__t3842) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5130 = { let __t3843 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3843])? }; break Ok({ let __t3844 = v_V5085.clone(); let __t3866 = { let v_W5131 = { let __t3845 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3845])? }; { let __t3846 = v_V5085.clone(); let __t3865 = { let v_W5132 = { let __t3847 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3847])? }; { let __t3848 = v_V5085.clone(); let __t3864 = { let __t3849 = v_W5109.clone(); let __t3856 = { let __t3850 = v_W5130.clone(); let __t3855 = { let __t3851 = v_W5131.clone(); let __t3854 = { let __t3852 = v_W5132.clone(); let __t3853 = Value::nil(); rt::cons(&__t3852, &__t3853) }; rt::cons(&__t3851, &__t3854) }; rt::cons(&__t3850, &__t3855) }; let __t3857 = v_V5085.clone(); let __t3863 = { let v_W5110 = v_W5110.clone(); let v_W5130 = v_W5130.clone(); let v_W5131 = v_W5131.clone(); let v_W5132 = v_W5132.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3861 = { let __t3859 = { let __t3858 = v_W5130.clone(); rt::apply_value(interp, v_W5110.clone(), &[__t3858])? }; let __t3860 = v_W5131.clone(); rt::apply_value(interp, __t3859, &[__t3860])? }; let __t3862 = v_W5132.clone(); rt::apply_value(interp, __t3861, &[__t3862])? }), vec![v_W5110, v_W5130, v_W5131, v_W5132], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3849, __t3856, __t3857, __t3863])? }; rt::apply_direct(interp, "shen.gc", &[__t3848, __t3864])? } }; rt::apply_direct(interp, "shen.gc", &[__t3846, __t3865])? } }; rt::apply_direct(interp, "shen.gc", &[__t3844, __t3866])? }); } } else { break Ok(Value::bool(false)); } } } } } } } else { { let __t3868 = { let __t3867 = v_W5103.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t3867])? }; if match rt::is_truthy(interp, &__t3868) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5133 = { let __t3869 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3869])? }; break Ok({ let __t3870 = v_V5085.clone(); let __t3899 = { let v_W5134 = { let __t3871 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3871])? }; { let __t3872 = v_V5085.clone(); let __t3898 = { let v_W5135 = { let __t3873 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3873])? }; { let __t3874 = v_V5085.clone(); let __t3897 = { let v_W5136 = { let __t3875 = v_V5085.clone(); rt::apply_direct(interp, "shen.newpv", &[__t3875])? }; { let __t3876 = v_V5085.clone(); let __t3896 = { let __t3877 = v_W5103.clone(); let __t3886 = { let __t3884 = { let __t3878 = v_W5133.clone(); let __t3883 = { let __t3879 = v_W5134.clone(); let __t3882 = { let __t3880 = v_W5135.clone(); let __t3881 = Value::nil(); rt::cons(&__t3880, &__t3881) }; rt::cons(&__t3879, &__t3882) }; rt::cons(&__t3878, &__t3883) }; let __t3885 = v_W5136.clone(); rt::cons(&__t3884, &__t3885) }; let __t3887 = v_V5085.clone(); let __t3895 = { let v_W5104 = v_W5104.clone(); let v_W5133 = v_W5133.clone(); let v_W5134 = v_W5134.clone(); let v_W5135 = v_W5135.clone(); let v_W5136 = v_W5136.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3893 = { let __t3891 = { let __t3889 = { let __t3888 = v_W5133.clone(); rt::apply_value(interp, v_W5104.clone(), &[__t3888])? }; let __t3890 = v_W5134.clone(); rt::apply_value(interp, __t3889, &[__t3890])? }; let __t3892 = v_W5135.clone(); rt::apply_value(interp, __t3891, &[__t3892])? }; let __t3894 = v_W5136.clone(); rt::apply_value(interp, __t3893, &[__t3894])? }), vec![v_W5104, v_W5133, v_W5134, v_W5135, v_W5136], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t3877, __t3886, __t3887, __t3895])? }; rt::apply_direct(interp, "shen.gc", &[__t3876, __t3896])? } }; rt::apply_direct(interp, "shen.gc", &[__t3874, __t3897])? } }; rt::apply_direct(interp, "shen.gc", &[__t3872, __t3898])? } }; rt::apply_direct(interp, "shen.gc", &[__t3870, __t3899])? }); } } else { break Ok(Value::bool(false)); } } } } } } } else { break Ok(Value::bool(false)); } } } } } else { break Ok(Value::bool(false)); } } } } else { break Ok(Value::bool(false)); } } } } else { @@ -9258,7 +9290,7 @@ pub fn aot_shen_x2e_myassume(interp: &mut Interp, args: &[Value]) -> ShenResult< } } } else { - break Ok(v_W5507.clone()); + break Ok(v_W5089.clone()); } } } @@ -9279,130 +9311,130 @@ pub fn aot_shen_x2e_freshterms(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V5557 = args[0].clone(); + let mut v_V5139 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t3921 = { - let __t3919 = Value::nil(); - let __t3920 = v_V5557.clone(); - rt::eq(&__t3919, &__t3920) + let __t3930 = { + let __t3928 = Value::nil(); + let __t3929 = v_V5139.clone(); + rt::eq(&__t3928, &__t3929) }; - if match rt::is_truthy(interp, &__t3921) { + if match rt::is_truthy(interp, &__t3930) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::nil()); } else { { - let __t3918 = { - let __t3911 = { - let __t3908 = v_V5557.clone(); - rt::is_cons(&__t3908) + let __t3927 = { + let __t3920 = { + let __t3917 = v_V5139.clone(); + rt::is_cons(&__t3917) }; - if !rt::is_truthy(interp, &__t3911)? { + if !rt::is_truthy(interp, &__t3920)? { Value::bool(false) } else { - let __t3912 = { - let __t3910 = { - let __t3909 = v_V5557.clone(); - rt::hd(&__t3909)? + let __t3921 = { + let __t3919 = { + let __t3918 = v_V5139.clone(); + rt::hd(&__t3918)? }; - rt::is_cons(&__t3910) + rt::is_cons(&__t3919) }; - Value::bool(rt::is_truthy(interp, &__t3912)?) + Value::bool(rt::is_truthy(interp, &__t3921)?) } }; - if match rt::is_truthy(interp, &__t3918) { + if match rt::is_truthy(interp, &__t3927) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3917 = { - let __t3914 = { - let __t3913 = v_V5557.clone(); - rt::hd(&__t3913)? + let __t3926 = { + let __t3923 = { + let __t3922 = v_V5139.clone(); + rt::hd(&__t3922)? }; - let __t3916 = { - let __t3915 = v_V5557.clone(); - rt::tl(&__t3915)? + let __t3925 = { + let __t3924 = v_V5139.clone(); + rt::tl(&__t3924)? }; - rt::apply_direct(interp, "append", &[__t3914, __t3916])? + rt::apply_direct(interp, "append", &[__t3923, __t3925])? }; - v_V5557 = __t3917; + v_V5139 = __t3926; continue; } } else { { - let __t3907 = { - let __t3900 = { - let __t3897 = v_V5557.clone(); - rt::is_cons(&__t3897) + let __t3916 = { + let __t3909 = { + let __t3906 = v_V5139.clone(); + rt::is_cons(&__t3906) }; - if !rt::is_truthy(interp, &__t3900)? { + if !rt::is_truthy(interp, &__t3909)? { Value::bool(false) } else { - let __t3901 = { - let __t3899 = { - let __t3898 = v_V5557.clone(); - rt::hd(&__t3898)? + let __t3910 = { + let __t3908 = { + let __t3907 = v_V5139.clone(); + rt::hd(&__t3907)? }; - rt::apply_direct(interp, "shen.freshterm?", &[__t3899])? + rt::apply_direct(interp, "shen.freshterm?", &[__t3908])? }; - Value::bool(rt::is_truthy(interp, &__t3901)?) + Value::bool(rt::is_truthy(interp, &__t3910)?) } }; - if match rt::is_truthy(interp, &__t3907) { + if match rt::is_truthy(interp, &__t3916) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3903 = { - let __t3902 = v_V5557.clone(); - rt::hd(&__t3902)? + let __t3912 = { + let __t3911 = v_V5139.clone(); + rt::hd(&__t3911)? }; - let __t3906 = { - let __t3905 = { - let __t3904 = v_V5557.clone(); - rt::tl(&__t3904)? + let __t3915 = { + let __t3914 = { + let __t3913 = v_V5139.clone(); + rt::tl(&__t3913)? }; - rt::apply_direct(interp, "shen.freshterms", &[__t3905])? + rt::apply_direct(interp, "shen.freshterms", &[__t3914])? }; - rt::apply_direct(interp, "adjoin", &[__t3903, __t3906])? + rt::apply_direct(interp, "adjoin", &[__t3912, __t3915])? }); } else { { - let __t3896 = { - let __t3893 = v_V5557.clone(); - rt::is_cons(&__t3893) + let __t3905 = { + let __t3902 = v_V5139.clone(); + rt::is_cons(&__t3902) }; - if match rt::is_truthy(interp, &__t3896) { + if match rt::is_truthy(interp, &__t3905) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3895 = { - let __t3894 = v_V5557.clone(); - rt::tl(&__t3894)? + let __t3904 = { + let __t3903 = v_V5139.clone(); + rt::tl(&__t3903)? }; - v_V5557 = __t3895; + v_V5139 = __t3904; continue; } } else { { - let __t3892 = Value::bool(true); - if match rt::is_truthy(interp, &__t3892) { + let __t3901 = Value::bool(true); + if match rt::is_truthy(interp, &__t3901) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t3891 = Value::sym( - interp.intern("shen.freshterms"), + let __t3900 = Value::str( + "partial function shen.freshterms", ); rt::apply_direct( interp, - "shen.f-error", - &[__t3891], + "simple-error", + &[__t3900], )? }); } else { @@ -9436,52 +9468,52 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V5558 = args[0].clone(); + let mut v_V5140 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5559 = args[1].clone(); + let mut v_V5141 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5560 = args[2].clone(); + let mut v_V5142 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5561 = args[3].clone(); + let mut v_V5143 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5562 = args[4].clone(); + let mut v_V5144 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5563 = args[5].clone(); + let mut v_V5145 = args[5].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5564 = { - let __t3939 = { - let __t3922 = v_V5561.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3922])? + let v_W5146 = { + let __t3948 = { + let __t3931 = v_V5143.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3931])? }; - if rt::is_truthy(interp, &__t3939)? { + if rt::is_truthy(interp, &__t3948)? { { - let v_W5565 = { - let __t3923 = v_V5558.clone(); - let __t3924 = v_V5560.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3923, __t3924])? + let v_W5147 = { + let __t3932 = v_V5140.clone(); + let __t3933 = v_V5142.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3932, __t3933])? }; { - let __t3938 = { - let __t3925 = v_W5565.clone(); - let __t3926 = Value::nil(); - rt::eq(&__t3925, &__t3926) + let __t3947 = { + let __t3934 = v_W5147.clone(); + let __t3935 = Value::nil(); + rt::eq(&__t3934, &__t3935) }; - if rt::is_truthy(interp, &__t3938)? { + if rt::is_truthy(interp, &__t3947)? { { - let v_W5566 = { - let __t3927 = v_V5559.clone(); - let __t3928 = v_V5560.clone(); + let v_W5148 = { + let __t3936 = v_V5141.clone(); + let __t3937 = v_V5142.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3927, __t3928], + &[__t3936, __t3937], )? }; { - let v_W5567 = { - let v_V5563 = v_V5563.clone(); + let v_W5149 = { + let v_V5145 = v_V5145.clone(); rt::make_aot_closure( "", 0, @@ -9496,45 +9528,45 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul }; rt::apply_value( interp, - v_V5563.clone(), + v_V5145.clone(), &[], )? }) }, - vec![v_V5563], + vec![v_V5145], interp, ) }; { - let __t3937 = { - let __t3929 = v_W5566.clone(); - let __t3930 = Value::nil(); - rt::eq(&__t3929, &__t3930) + let __t3946 = { + let __t3938 = v_W5148.clone(); + let __t3939 = Value::nil(); + rt::eq(&__t3938, &__t3939) }; - if rt::is_truthy(interp, &__t3937)? { - rt::apply_value(interp, v_W5567.clone(), &[])? + if rt::is_truthy(interp, &__t3946)? { + rt::apply_value(interp, v_W5149.clone(), &[])? } else { { - let __t3936 = { - let __t3931 = v_W5566.clone(); + let __t3945 = { + let __t3940 = v_W5148.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t3931], + &[__t3940], )? }; - if rt::is_truthy(interp, &__t3936)? { + if rt::is_truthy(interp, &__t3945)? { { - let __t3932 = v_W5566.clone(); - let __t3933 = Value::nil(); - let __t3934 = v_V5560.clone(); - let __t3935 = v_W5567.clone(); + let __t3941 = v_W5148.clone(); + let __t3942 = Value::nil(); + let __t3943 = v_V5142.clone(); + let __t3944 = v_W5149.clone(); rt::apply_direct( interp, "shen.bind!", &[ - __t3932, __t3933, __t3934, - __t3935, + __t3941, __t3942, __t3943, + __t3944, ], )? } @@ -9556,189 +9588,189 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul } }; { - let __t3942 = { - let __t3940 = v_W5564.clone(); - let __t3941 = Value::bool(false); - rt::eq(&__t3940, &__t3941) + let __t3951 = { + let __t3949 = v_W5146.clone(); + let __t3950 = Value::bool(false); + rt::eq(&__t3949, &__t3950) }; - if match rt::is_truthy(interp, &__t3942) { + if match rt::is_truthy(interp, &__t3951) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t3944 = { - let __t3943 = v_V5561.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t3943])? + let __t3953 = { + let __t3952 = v_V5143.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t3952])? }; - if match rt::is_truthy(interp, &__t3944) { + if match rt::is_truthy(interp, &__t3953) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5568 = { - let __t3945 = v_V5558.clone(); - let __t3946 = v_V5560.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3945, __t3946])? + let v_W5150 = { + let __t3954 = v_V5140.clone(); + let __t3955 = v_V5142.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3954, __t3955])? }; { - let __t3948 = { - let __t3947 = v_W5568.clone(); - rt::is_cons(&__t3947) + let __t3957 = { + let __t3956 = v_W5150.clone(); + rt::is_cons(&__t3956) }; - if match rt::is_truthy(interp, &__t3948) { + if match rt::is_truthy(interp, &__t3957) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5569 = { - let __t3949 = v_W5568.clone(); - rt::hd(&__t3949)? + let v_W5151 = { + let __t3958 = v_W5150.clone(); + rt::hd(&__t3958)? }; { - let v_W5570 = { - let __t3950 = v_W5568.clone(); - rt::tl(&__t3950)? + let v_W5152 = { + let __t3959 = v_W5150.clone(); + rt::tl(&__t3959)? }; { - let v_W5571 = { - let __t3951 = v_V5559.clone(); - let __t3952 = v_V5560.clone(); + let v_W5153 = { + let __t3960 = v_V5141.clone(); + let __t3961 = v_V5142.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3951, __t3952], + &[__t3960, __t3961], )? }; { - let v_W5572 = { - let v_V5560 = v_V5560.clone(); - let v_V5561 = v_V5561.clone(); - let v_V5562 = v_V5562.clone(); - let v_V5563 = v_V5563.clone(); - let v_W5569 = v_W5569.clone(); - let v_W5570 = v_W5570.clone(); + let v_W5154 = { + let v_V5142 = v_V5142.clone(); + let v_V5143 = v_V5143.clone(); + let v_V5144 = v_V5144.clone(); + let v_V5145 = v_V5145.clone(); + let v_W5151 = v_W5151.clone(); + let v_W5152 = v_W5152.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5573 = args[0].clone(); + let v_Z5155 = args[0].clone(); Ok({ - let v_V5560 = - v_V5560.clone(); - let v_V5561 = - v_V5561.clone(); - let v_V5562 = - v_V5562.clone(); - let v_V5563 = - v_V5563.clone(); - let v_W5569 = - v_W5569.clone(); - let v_W5570 = - v_W5570.clone(); - let v_Z5573 = - v_Z5573.clone(); + let v_V5142 = + v_V5142.clone(); + let v_V5143 = + v_V5143.clone(); + let v_V5144 = + v_V5144.clone(); + let v_V5145 = + v_V5145.clone(); + let v_W5151 = + v_W5151.clone(); + let v_W5152 = + v_W5152.clone(); + let v_Z5155 = + v_Z5155.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5574 = + let v_Z5156 = args[0].clone(); Ok({ - let v_V5560 = - v_V5560 + let v_V5142 = + v_V5142 .clone( ); - let v_V5561 = - v_V5561 + let v_V5143 = + v_V5143 .clone( ); - let v_V5562 = - v_V5562 + let v_V5144 = + v_V5144 .clone( ); - let v_V5563 = - v_V5563 + let v_V5145 = + v_V5145 .clone( ); - let v_W5569 = - v_W5569 + let v_W5151 = + v_W5151 .clone( ); - let v_W5570 = - v_W5570 + let v_W5152 = + v_W5152 .clone( ); - let v_Z5573 = - v_Z5573 + let v_Z5155 = + v_Z5155 .clone( ); - let v_Z5574 = - v_Z5574 + let v_Z5156 = + v_Z5156 .clone( ); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z5575 = args[0].clone(); Ok({ let v_V5560 = v_V5560.clone(); let v_V5561 = v_V5561.clone(); let v_V5562 = v_V5562.clone(); let v_V5563 = v_V5563.clone(); let v_W5569 = v_W5569.clone(); let v_W5570 = v_W5570.clone(); let v_Z5573 = v_Z5573.clone(); let v_Z5574 = v_Z5574.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5576 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3953 = v_Z5573.clone(); let __t3954 = v_W5569.clone(); let __t3955 = v_V5560.clone(); let __t3956 = v_V5561.clone(); let __t3957 = v_V5562.clone(); let __t3971 = { let v_V5560 = v_V5560.clone(); let v_V5561 = v_V5561.clone(); let v_V5562 = v_V5562.clone(); let v_V5563 = v_V5563.clone(); let v_W5570 = v_W5570.clone(); let v_Z5574 = v_Z5574.clone(); let v_Z5576 = v_Z5576.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3958 = v_Z5574.clone(); let __t3960 = { let __t3959 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t3959])? }; let __t3961 = v_V5560.clone(); let __t3962 = v_V5561.clone(); let __t3963 = v_V5562.clone(); let __t3970 = { let v_V5560 = v_V5560.clone(); let v_V5561 = v_V5561.clone(); let v_V5562 = v_V5562.clone(); let v_V5563 = v_V5563.clone(); let v_W5570 = v_W5570.clone(); let v_Z5576 = v_Z5576.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3964 = v_W5570.clone(); let __t3965 = v_Z5576.clone(); let __t3966 = v_V5560.clone(); let __t3967 = v_V5561.clone(); let __t3968 = v_V5562.clone(); let __t3969 = v_V5563.clone(); rt::apply_direct(interp, "shen.p-hyps", &[__t3964, __t3965, __t3966, __t3967, __t3968, __t3969])? }), vec![v_V5560, v_V5561, v_V5562, v_V5563, v_W5570, v_Z5576], interp) }; rt::apply_direct(interp, "bind", &[__t3958, __t3960, __t3961, __t3962, __t3963, __t3970])? }), vec![v_V5560, v_V5561, v_V5562, v_V5563, v_W5570, v_Z5574, v_Z5576], interp) }; rt::apply_direct(interp, "bind", &[__t3953, __t3954, __t3955, __t3956, __t3957, __t3971])? } }) }, vec![v_V5560, v_V5561, v_V5562, v_V5563, v_W5569, v_W5570, v_Z5573, v_Z5574], interp) }) }, vec![v_V5560, v_V5561, v_V5562, v_V5563, v_W5569, v_W5570, v_Z5573, v_Z5574], interp) + rt::make_aot_closure("", 1, move |interp, args| { let v_Z5157 = args[0].clone(); Ok({ let v_V5142 = v_V5142.clone(); let v_V5143 = v_V5143.clone(); let v_V5144 = v_V5144.clone(); let v_V5145 = v_V5145.clone(); let v_W5151 = v_W5151.clone(); let v_W5152 = v_W5152.clone(); let v_Z5155 = v_Z5155.clone(); let v_Z5156 = v_Z5156.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5158 = args[0].clone(); Ok({ let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t3962 = v_Z5155.clone(); let __t3963 = v_W5151.clone(); let __t3964 = v_V5142.clone(); let __t3965 = v_V5143.clone(); let __t3966 = v_V5144.clone(); let __t3980 = { let v_V5142 = v_V5142.clone(); let v_V5143 = v_V5143.clone(); let v_V5144 = v_V5144.clone(); let v_V5145 = v_V5145.clone(); let v_W5152 = v_W5152.clone(); let v_Z5156 = v_Z5156.clone(); let v_Z5158 = v_Z5158.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3967 = v_Z5156.clone(); let __t3969 = { let __t3968 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t3968])? }; let __t3970 = v_V5142.clone(); let __t3971 = v_V5143.clone(); let __t3972 = v_V5144.clone(); let __t3979 = { let v_V5142 = v_V5142.clone(); let v_V5143 = v_V5143.clone(); let v_V5144 = v_V5144.clone(); let v_V5145 = v_V5145.clone(); let v_W5152 = v_W5152.clone(); let v_Z5158 = v_Z5158.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t3973 = v_W5152.clone(); let __t3974 = v_Z5158.clone(); let __t3975 = v_V5142.clone(); let __t3976 = v_V5143.clone(); let __t3977 = v_V5144.clone(); let __t3978 = v_V5145.clone(); rt::apply_direct(interp, "shen.p-hyps", &[__t3973, __t3974, __t3975, __t3976, __t3977, __t3978])? }), vec![v_V5142, v_V5143, v_V5144, v_V5145, v_W5152, v_Z5158], interp) }; rt::apply_direct(interp, "bind", &[__t3967, __t3969, __t3970, __t3971, __t3972, __t3979])? }), vec![v_V5142, v_V5143, v_V5144, v_V5145, v_W5152, v_Z5156, v_Z5158], interp) }; rt::apply_direct(interp, "bind", &[__t3962, __t3963, __t3964, __t3965, __t3966, __t3980])? } }) }, vec![v_V5142, v_V5143, v_V5144, v_V5145, v_W5151, v_W5152, v_Z5155, v_Z5156], interp) }) }, vec![v_V5142, v_V5143, v_V5144, v_V5145, v_W5151, v_W5152, v_Z5155, v_Z5156], interp) }) }, vec![ - v_V5560, v_V5561, - v_V5562, v_V5563, - v_W5569, v_W5570, - v_Z5573, + v_V5142, v_V5143, + v_V5144, v_V5145, + v_W5151, v_W5152, + v_Z5155, ], interp, ) }) }, vec![ - v_V5560, v_V5561, v_V5562, - v_V5563, v_W5569, v_W5570, + v_V5142, v_V5143, v_V5144, + v_V5145, v_W5151, v_W5152, ], interp, ) }; { - let __t3973 = { - let __t3972 = v_W5571.clone(); - rt::is_cons(&__t3972) + let __t3982 = { + let __t3981 = v_W5153.clone(); + rt::is_cons(&__t3981) }; - if match rt::is_truthy(interp, &__t3973) + if match rt::is_truthy(interp, &__t3982) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5577 = { - let __t3975 = { - let __t3974 = - v_W5571.clone(); - rt::hd(&__t3974)? + let v_W5159 = { + let __t3984 = { + let __t3983 = + v_W5153.clone(); + rt::hd(&__t3983)? }; - let __t3976 = - v_V5560.clone(); + let __t3985 = + v_V5142.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t3975, __t3976], + &[__t3984, __t3985], )? }; { - let v_W5578 = { - let v_W5571 = - v_W5571.clone(); - let v_W5572 = - v_W5572.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z5579 = args[0].clone(); Ok({ let v_W5571 = v_W5571.clone(); let v_W5572 = v_W5572.clone(); let v_Z5579 = v_Z5579.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5580 = args[0].clone(); Ok({ let v_W5571 = v_W5571.clone(); let v_W5572 = v_W5572.clone(); let v_Z5579 = v_Z5579.clone(); let v_Z5580 = v_Z5580.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5581 = args[0].clone(); Ok({ let v_W5582 = { let __t3977 = v_W5571.clone(); rt::tl(&__t3977)? }; { let __t3983 = { let __t3981 = { let __t3979 = { let __t3978 = v_Z5579.clone(); rt::apply_value(interp, v_W5572.clone(), &[__t3978])? }; let __t3980 = v_Z5580.clone(); rt::apply_value(interp, __t3979, &[__t3980])? }; let __t3982 = v_Z5581.clone(); rt::apply_value(interp, __t3981, &[__t3982])? }; let __t3984 = v_W5582.clone(); rt::apply_value(interp, __t3983, &[__t3984])? } }) }, vec![v_W5571, v_W5572, v_Z5579, v_Z5580], interp) }) }, vec![v_W5571, v_W5572, v_Z5579], interp) }) }, vec![v_W5571, v_W5572], interp) + let v_W5160 = { + let v_W5153 = + v_W5153.clone(); + let v_W5154 = + v_W5154.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z5161 = args[0].clone(); Ok({ let v_W5153 = v_W5153.clone(); let v_W5154 = v_W5154.clone(); let v_Z5161 = v_Z5161.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5162 = args[0].clone(); Ok({ let v_W5153 = v_W5153.clone(); let v_W5154 = v_W5154.clone(); let v_Z5161 = v_Z5161.clone(); let v_Z5162 = v_Z5162.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5163 = args[0].clone(); Ok({ let v_W5164 = { let __t3986 = v_W5153.clone(); rt::tl(&__t3986)? }; { let __t3992 = { let __t3990 = { let __t3988 = { let __t3987 = v_Z5161.clone(); rt::apply_value(interp, v_W5154.clone(), &[__t3987])? }; let __t3989 = v_Z5162.clone(); rt::apply_value(interp, __t3988, &[__t3989])? }; let __t3991 = v_Z5163.clone(); rt::apply_value(interp, __t3990, &[__t3991])? }; let __t3993 = v_W5164.clone(); rt::apply_value(interp, __t3992, &[__t3993])? } }) }, vec![v_W5153, v_W5154, v_Z5161, v_Z5162], interp) }) }, vec![v_W5153, v_W5154, v_Z5161], interp) }) }, vec![v_W5153, v_W5154], interp) }; { - let __t3986 = { - let __t3985 = - v_W5577.clone(); + let __t3995 = { + let __t3994 = + v_W5159.clone(); rt::is_cons( - &__t3985, + &__t3994, ) }; if match rt::is_truthy( - interp, &__t3986, + interp, &__t3995, ) { Ok(b) => b, Err(e) => { @@ -9746,39 +9778,39 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul } } { { - let v_W5583 = { - let __t3987 = v_W5577.clone(); - rt::hd(&__t3987)? + let v_W5165 = { + let __t3996 = v_W5159.clone(); + rt::hd(&__t3996)? }; { - let v_W5584 = { - let __t3989 = { - let __t3988 = v_W5577.clone(); - rt::tl(&__t3988)? + let v_W5166 = { + let __t3998 = { + let __t3997 = v_W5159.clone(); + rt::tl(&__t3997)? }; - let __t3990 = v_V5560.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t3989, __t3990])? + let __t3999 = v_V5142.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t3998, __t3999])? }; { - let v_W5585 = { - let v_W5578 = v_W5578.clone(); - let v_W5583 = v_W5583.clone(); - rt::make_aot_closure("", 1, move |interp, args| { let v_Z5586 = args[0].clone(); Ok({ let v_W5578 = v_W5578.clone(); let v_W5583 = v_W5583.clone(); let v_Z5586 = v_Z5586.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5587 = args[0].clone(); Ok({ let __t3994 = { let __t3992 = { let __t3991 = v_W5583.clone(); rt::apply_value(interp, v_W5578.clone(), &[__t3991])? }; let __t3993 = v_Z5586.clone(); rt::apply_value(interp, __t3992, &[__t3993])? }; let __t3995 = v_Z5587.clone(); rt::apply_value(interp, __t3994, &[__t3995])? }) }, vec![v_W5578, v_W5583, v_Z5586], interp) }) }, vec![v_W5578, v_W5583], interp) + let v_W5167 = { + let v_W5160 = v_W5160.clone(); + let v_W5165 = v_W5165.clone(); + rt::make_aot_closure("", 1, move |interp, args| { let v_Z5168 = args[0].clone(); Ok({ let v_W5160 = v_W5160.clone(); let v_W5165 = v_W5165.clone(); let v_Z5168 = v_Z5168.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5169 = args[0].clone(); Ok({ let __t4003 = { let __t4001 = { let __t4000 = v_W5165.clone(); rt::apply_value(interp, v_W5160.clone(), &[__t4000])? }; let __t4002 = v_Z5168.clone(); rt::apply_value(interp, __t4001, &[__t4002])? }; let __t4004 = v_Z5169.clone(); rt::apply_value(interp, __t4003, &[__t4004])? }) }, vec![v_W5160, v_W5165, v_Z5168], interp) }) }, vec![v_W5160, v_W5165], interp) }; { - let __t3997 = { let __t3996 = v_W5584.clone(); rt::is_cons(&__t3996) }; - if match rt::is_truthy(interp, &__t3997) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5588 = { let __t3998 = v_W5584.clone(); rt::hd(&__t3998)? }; { let v_W5589 = { let __t4000 = { let __t3999 = v_W5584.clone(); rt::tl(&__t3999)? }; let __t4001 = v_V5560.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4000, __t4001])? }; { let v_W5590 = { let v_W5585 = v_W5585.clone(); let v_W5588 = v_W5588.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5591 = args[0].clone(); Ok({ let __t4003 = { let __t4002 = v_W5588.clone(); rt::apply_value(interp, v_W5585.clone(), &[__t4002])? }; let __t4004 = v_Z5591.clone(); rt::apply_value(interp, __t4003, &[__t4004])? }) }, vec![v_W5585, v_W5588], interp) }; { let __t4006 = { let __t4005 = v_W5589.clone(); rt::is_cons(&__t4005) }; if match rt::is_truthy(interp, &__t4006) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5592 = { let __t4007 = v_W5589.clone(); rt::hd(&__t4007)? }; { let v_W5593 = { let __t4009 = { let __t4008 = v_W5589.clone(); rt::tl(&__t4008)? }; let __t4010 = v_V5560.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4009, __t4010])? }; { let v_W5594 = { let v_W5590 = v_W5590.clone(); let v_W5592 = v_W5592.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4011 = v_W5592.clone(); rt::apply_value(interp, v_W5590.clone(), &[__t4011])? }), vec![v_W5590, v_W5592], interp) }; { let __t4014 = { let __t4012 = v_W5593.clone(); let __t4013 = Value::nil(); rt::eq(&__t4012, &__t4013) }; if match rt::is_truthy(interp, &__t4014) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W5594.clone(), &[])?); } else { { let __t4016 = { let __t4015 = v_W5593.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4015])? }; if match rt::is_truthy(interp, &__t4016) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t4017 = v_W5593.clone(); let __t4018 = Value::nil(); let __t4019 = v_V5560.clone(); let __t4020 = v_W5594.clone(); rt::apply_direct(interp, "shen.bind!", &[__t4017, __t4018, __t4019, __t4020])? }); } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t4022 = { let __t4021 = v_W5589.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4021])? }; if match rt::is_truthy(interp, &__t4022) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5595 = { let __t4023 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4023])? }; break Ok({ let __t4024 = v_V5560.clone(); let __t4032 = { let __t4025 = v_W5589.clone(); let __t4028 = { let __t4026 = v_W5595.clone(); let __t4027 = Value::nil(); rt::cons(&__t4026, &__t4027) }; let __t4029 = v_V5560.clone(); let __t4031 = { let v_W5590 = v_W5590.clone(); let v_W5595 = v_W5595.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4030 = v_W5595.clone(); rt::apply_value(interp, v_W5590.clone(), &[__t4030])? }), vec![v_W5590, v_W5595], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4025, __t4028, __t4029, __t4031])? }; rt::apply_direct(interp, "shen.gc", &[__t4024, __t4032])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t4034 = { let __t4033 = v_W5584.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4033])? }; if match rt::is_truthy(interp, &__t4034) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5596 = { let __t4035 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4035])? }; break Ok({ let __t4036 = v_V5560.clone(); let __t4051 = { let v_W5597 = { let __t4037 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4037])? }; { let __t4038 = v_V5560.clone(); let __t4050 = { let __t4039 = v_W5584.clone(); let __t4044 = { let __t4040 = v_W5596.clone(); let __t4043 = { let __t4041 = v_W5597.clone(); let __t4042 = Value::nil(); rt::cons(&__t4041, &__t4042) }; rt::cons(&__t4040, &__t4043) }; let __t4045 = v_V5560.clone(); let __t4049 = { let v_W5585 = v_W5585.clone(); let v_W5596 = v_W5596.clone(); let v_W5597 = v_W5597.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4047 = { let __t4046 = v_W5596.clone(); rt::apply_value(interp, v_W5585.clone(), &[__t4046])? }; let __t4048 = v_W5597.clone(); rt::apply_value(interp, __t4047, &[__t4048])? }), vec![v_W5585, v_W5596, v_W5597], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4039, __t4044, __t4045, __t4049])? }; rt::apply_direct(interp, "shen.gc", &[__t4038, __t4050])? } }; rt::apply_direct(interp, "shen.gc", &[__t4036, __t4051])? }); } } else { break Ok(Value::bool(false)); } } } + let __t4006 = { let __t4005 = v_W5166.clone(); rt::is_cons(&__t4005) }; + if match rt::is_truthy(interp, &__t4006) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5170 = { let __t4007 = v_W5166.clone(); rt::hd(&__t4007)? }; { let v_W5171 = { let __t4009 = { let __t4008 = v_W5166.clone(); rt::tl(&__t4008)? }; let __t4010 = v_V5142.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4009, __t4010])? }; { let v_W5172 = { let v_W5167 = v_W5167.clone(); let v_W5170 = v_W5170.clone(); rt::make_aot_closure("", 1, move |interp, args| { let v_Z5173 = args[0].clone(); Ok({ let __t4012 = { let __t4011 = v_W5170.clone(); rt::apply_value(interp, v_W5167.clone(), &[__t4011])? }; let __t4013 = v_Z5173.clone(); rt::apply_value(interp, __t4012, &[__t4013])? }) }, vec![v_W5167, v_W5170], interp) }; { let __t4015 = { let __t4014 = v_W5171.clone(); rt::is_cons(&__t4014) }; if match rt::is_truthy(interp, &__t4015) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5174 = { let __t4016 = v_W5171.clone(); rt::hd(&__t4016)? }; { let v_W5175 = { let __t4018 = { let __t4017 = v_W5171.clone(); rt::tl(&__t4017)? }; let __t4019 = v_V5142.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4018, __t4019])? }; { let v_W5176 = { let v_W5172 = v_W5172.clone(); let v_W5174 = v_W5174.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4020 = v_W5174.clone(); rt::apply_value(interp, v_W5172.clone(), &[__t4020])? }), vec![v_W5172, v_W5174], interp) }; { let __t4023 = { let __t4021 = v_W5175.clone(); let __t4022 = Value::nil(); rt::eq(&__t4021, &__t4022) }; if match rt::is_truthy(interp, &__t4023) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(rt::apply_value(interp, v_W5176.clone(), &[])?); } else { { let __t4025 = { let __t4024 = v_W5175.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4024])? }; if match rt::is_truthy(interp, &__t4025) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ let __t4026 = v_W5175.clone(); let __t4027 = Value::nil(); let __t4028 = v_V5142.clone(); let __t4029 = v_W5176.clone(); rt::apply_direct(interp, "shen.bind!", &[__t4026, __t4027, __t4028, __t4029])? }); } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t4031 = { let __t4030 = v_W5171.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4030])? }; if match rt::is_truthy(interp, &__t4031) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5177 = { let __t4032 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4032])? }; break Ok({ let __t4033 = v_V5142.clone(); let __t4041 = { let __t4034 = v_W5171.clone(); let __t4037 = { let __t4035 = v_W5177.clone(); let __t4036 = Value::nil(); rt::cons(&__t4035, &__t4036) }; let __t4038 = v_V5142.clone(); let __t4040 = { let v_W5172 = v_W5172.clone(); let v_W5177 = v_W5177.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4039 = v_W5177.clone(); rt::apply_value(interp, v_W5172.clone(), &[__t4039])? }), vec![v_W5172, v_W5177], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4034, __t4037, __t4038, __t4040])? }; rt::apply_direct(interp, "shen.gc", &[__t4033, __t4041])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { let __t4043 = { let __t4042 = v_W5166.clone(); rt::apply_direct(interp, "shen.pvar?", &[__t4042])? }; if match rt::is_truthy(interp, &__t4043) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5178 = { let __t4044 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4044])? }; break Ok({ let __t4045 = v_V5142.clone(); let __t4060 = { let v_W5179 = { let __t4046 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4046])? }; { let __t4047 = v_V5142.clone(); let __t4059 = { let __t4048 = v_W5166.clone(); let __t4053 = { let __t4049 = v_W5178.clone(); let __t4052 = { let __t4050 = v_W5179.clone(); let __t4051 = Value::nil(); rt::cons(&__t4050, &__t4051) }; rt::cons(&__t4049, &__t4052) }; let __t4054 = v_V5142.clone(); let __t4058 = { let v_W5167 = v_W5167.clone(); let v_W5178 = v_W5178.clone(); let v_W5179 = v_W5179.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4056 = { let __t4055 = v_W5178.clone(); rt::apply_value(interp, v_W5167.clone(), &[__t4055])? }; let __t4057 = v_W5179.clone(); rt::apply_value(interp, __t4056, &[__t4057])? }), vec![v_W5167, v_W5178, v_W5179], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4048, __t4053, __t4054, __t4058])? }; rt::apply_direct(interp, "shen.gc", &[__t4047, __t4059])? } }; rt::apply_direct(interp, "shen.gc", &[__t4045, __t4060])? }); } } else { break Ok(Value::bool(false)); } } } } } } } } else { { - let __t4053 = { - let __t4052 = v_W5577.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t4052])? + let __t4062 = { + let __t4061 = v_W5159.clone(); + rt::apply_direct(interp, "shen.pvar?", &[__t4061])? }; - if match rt::is_truthy(interp, &__t4053) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5598 = { let __t4054 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4054])? }; break Ok({ let __t4055 = v_V5560.clone(); let __t4077 = { let v_W5599 = { let __t4056 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4056])? }; { let __t4057 = v_V5560.clone(); let __t4076 = { let v_W5600 = { let __t4058 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4058])? }; { let __t4059 = v_V5560.clone(); let __t4075 = { let __t4060 = v_W5577.clone(); let __t4067 = { let __t4061 = v_W5598.clone(); let __t4066 = { let __t4062 = v_W5599.clone(); let __t4065 = { let __t4063 = v_W5600.clone(); let __t4064 = Value::nil(); rt::cons(&__t4063, &__t4064) }; rt::cons(&__t4062, &__t4065) }; rt::cons(&__t4061, &__t4066) }; let __t4068 = v_V5560.clone(); let __t4074 = { let v_W5578 = v_W5578.clone(); let v_W5598 = v_W5598.clone(); let v_W5599 = v_W5599.clone(); let v_W5600 = v_W5600.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4072 = { let __t4070 = { let __t4069 = v_W5598.clone(); rt::apply_value(interp, v_W5578.clone(), &[__t4069])? }; let __t4071 = v_W5599.clone(); rt::apply_value(interp, __t4070, &[__t4071])? }; let __t4073 = v_W5600.clone(); rt::apply_value(interp, __t4072, &[__t4073])? }), vec![v_W5578, v_W5598, v_W5599, v_W5600], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4060, __t4067, __t4068, __t4074])? }; rt::apply_direct(interp, "shen.gc", &[__t4059, __t4075])? } }; rt::apply_direct(interp, "shen.gc", &[__t4057, __t4076])? } }; rt::apply_direct(interp, "shen.gc", &[__t4055, __t4077])? }); } } else { break Ok(Value::bool(false)); } + if match rt::is_truthy(interp, &__t4062) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5180 = { let __t4063 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4063])? }; break Ok({ let __t4064 = v_V5142.clone(); let __t4086 = { let v_W5181 = { let __t4065 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4065])? }; { let __t4066 = v_V5142.clone(); let __t4085 = { let v_W5182 = { let __t4067 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4067])? }; { let __t4068 = v_V5142.clone(); let __t4084 = { let __t4069 = v_W5159.clone(); let __t4076 = { let __t4070 = v_W5180.clone(); let __t4075 = { let __t4071 = v_W5181.clone(); let __t4074 = { let __t4072 = v_W5182.clone(); let __t4073 = Value::nil(); rt::cons(&__t4072, &__t4073) }; rt::cons(&__t4071, &__t4074) }; rt::cons(&__t4070, &__t4075) }; let __t4077 = v_V5142.clone(); let __t4083 = { let v_W5160 = v_W5160.clone(); let v_W5180 = v_W5180.clone(); let v_W5181 = v_W5181.clone(); let v_W5182 = v_W5182.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4081 = { let __t4079 = { let __t4078 = v_W5180.clone(); rt::apply_value(interp, v_W5160.clone(), &[__t4078])? }; let __t4080 = v_W5181.clone(); rt::apply_value(interp, __t4079, &[__t4080])? }; let __t4082 = v_W5182.clone(); rt::apply_value(interp, __t4081, &[__t4082])? }), vec![v_W5160, v_W5180, v_W5181, v_W5182], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4069, __t4076, __t4077, __t4083])? }; rt::apply_direct(interp, "shen.gc", &[__t4068, __t4084])? } }; rt::apply_direct(interp, "shen.gc", &[__t4066, __t4085])? } }; rt::apply_direct(interp, "shen.gc", &[__t4064, __t4086])? }); } } else { break Ok(Value::bool(false)); } } } } @@ -9786,61 +9818,61 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul } } else { { - let __t4079 = { - let __t4078 = - v_W5571.clone(); + let __t4088 = { + let __t4087 = + v_W5153.clone(); rt::apply_direct( interp, "shen.pvar?", - &[__t4078], + &[__t4087], )? }; if match rt::is_truthy( - interp, &__t4079, + interp, &__t4088, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5601 = { - let __t4080 = - v_V5560.clone(); + let v_W5183 = { + let __t4089 = + v_V5142.clone(); rt::apply_direct( interp, "shen.newpv", - &[__t4080], + &[__t4089], )? }; break Ok({ - let __t4081 = - v_V5560.clone(); - let __t4110 = { - let v_W5602 = { - let __t4082 = v_V5560.clone(); - rt::apply_direct(interp, "shen.newpv", &[__t4082])? + let __t4090 = + v_V5142.clone(); + let __t4119 = { + let v_W5184 = { + let __t4091 = v_V5142.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t4091])? }; { - let __t4083 = v_V5560.clone(); - let __t4109 = { - let v_W5603 = { - let __t4084 = v_V5560.clone(); - rt::apply_direct(interp, "shen.newpv", &[__t4084])? + let __t4092 = v_V5142.clone(); + let __t4118 = { + let v_W5185 = { + let __t4093 = v_V5142.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t4093])? }; { - let __t4085 = v_V5560.clone(); - let __t4108 = { let v_W5604 = { let __t4086 = v_V5560.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4086])? }; { let __t4087 = v_V5560.clone(); let __t4107 = { let __t4088 = v_W5571.clone(); let __t4097 = { let __t4095 = { let __t4089 = v_W5601.clone(); let __t4094 = { let __t4090 = v_W5602.clone(); let __t4093 = { let __t4091 = v_W5603.clone(); let __t4092 = Value::nil(); rt::cons(&__t4091, &__t4092) }; rt::cons(&__t4090, &__t4093) }; rt::cons(&__t4089, &__t4094) }; let __t4096 = v_W5604.clone(); rt::cons(&__t4095, &__t4096) }; let __t4098 = v_V5560.clone(); let __t4106 = { let v_W5572 = v_W5572.clone(); let v_W5601 = v_W5601.clone(); let v_W5602 = v_W5602.clone(); let v_W5603 = v_W5603.clone(); let v_W5604 = v_W5604.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4104 = { let __t4102 = { let __t4100 = { let __t4099 = v_W5601.clone(); rt::apply_value(interp, v_W5572.clone(), &[__t4099])? }; let __t4101 = v_W5602.clone(); rt::apply_value(interp, __t4100, &[__t4101])? }; let __t4103 = v_W5603.clone(); rt::apply_value(interp, __t4102, &[__t4103])? }; let __t4105 = v_W5604.clone(); rt::apply_value(interp, __t4104, &[__t4105])? }), vec![v_W5572, v_W5601, v_W5602, v_W5603, v_W5604], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4088, __t4097, __t4098, __t4106])? }; rt::apply_direct(interp, "shen.gc", &[__t4087, __t4107])? } }; - rt::apply_direct(interp, "shen.gc", &[__t4085, __t4108])? + let __t4094 = v_V5142.clone(); + let __t4117 = { let v_W5186 = { let __t4095 = v_V5142.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4095])? }; { let __t4096 = v_V5142.clone(); let __t4116 = { let __t4097 = v_W5153.clone(); let __t4106 = { let __t4104 = { let __t4098 = v_W5183.clone(); let __t4103 = { let __t4099 = v_W5184.clone(); let __t4102 = { let __t4100 = v_W5185.clone(); let __t4101 = Value::nil(); rt::cons(&__t4100, &__t4101) }; rt::cons(&__t4099, &__t4102) }; rt::cons(&__t4098, &__t4103) }; let __t4105 = v_W5186.clone(); rt::cons(&__t4104, &__t4105) }; let __t4107 = v_V5142.clone(); let __t4115 = { let v_W5154 = v_W5154.clone(); let v_W5183 = v_W5183.clone(); let v_W5184 = v_W5184.clone(); let v_W5185 = v_W5185.clone(); let v_W5186 = v_W5186.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4113 = { let __t4111 = { let __t4109 = { let __t4108 = v_W5183.clone(); rt::apply_value(interp, v_W5154.clone(), &[__t4108])? }; let __t4110 = v_W5184.clone(); rt::apply_value(interp, __t4109, &[__t4110])? }; let __t4112 = v_W5185.clone(); rt::apply_value(interp, __t4111, &[__t4112])? }; let __t4114 = v_W5186.clone(); rt::apply_value(interp, __t4113, &[__t4114])? }), vec![v_W5154, v_W5183, v_W5184, v_W5185, v_W5186], interp) }; rt::apply_direct(interp, "shen.bind!", &[__t4097, __t4106, __t4107, __t4115])? }; rt::apply_direct(interp, "shen.gc", &[__t4096, __t4116])? } }; + rt::apply_direct(interp, "shen.gc", &[__t4094, __t4117])? } }; - rt::apply_direct(interp, "shen.gc", &[__t4083, __t4109])? + rt::apply_direct(interp, "shen.gc", &[__t4092, __t4118])? } }; rt::apply_direct( interp, "shen.gc", &[ - __t4081, - __t4110, + __t4090, + __t4119, ], )? }); @@ -9867,7 +9899,7 @@ pub fn aot_shen_x2e_p_x2d_hyps(interp: &mut Interp, args: &[Value]) -> ShenResul } } } else { - break Ok(v_W5564.clone()); + break Ok(v_W5146.clone()); } } } @@ -9888,140 +9920,140 @@ pub fn aot_shen_x2e_t_x2a__x2d_correct(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V5605 = args[0].clone(); + let mut v_V5187 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5606 = args[1].clone(); + let mut v_V5188 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5607 = args[2].clone(); + let mut v_V5189 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5608 = args[3].clone(); + let mut v_V5190 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5609 = args[4].clone(); + let mut v_V5191 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5610 = args[5].clone(); + let mut v_V5192 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5611 = args[6].clone(); + let mut v_V5193 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5612 = { - let __t4111 = v_V5610.clone(); - let __t4112 = Value::int(1i64); - rt::add(&__t4111, &__t4112)? + let v_W5194 = { + let __t4120 = v_V5192.clone(); + let __t4121 = Value::int(1i64); + rt::add(&__t4120, &__t4121)? }; { - let v_W5613 = { - let __t4183 = { - let __t4113 = v_V5609.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t4113])? + let v_W5195 = { + let __t4192 = { + let __t4122 = v_V5191.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t4122])? }; - if rt::is_truthy(interp, &__t4183)? { + if rt::is_truthy(interp, &__t4192)? { { - let v_W5614 = { - let __t4114 = v_V5605.clone(); - let __t4115 = v_V5608.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t4114, __t4115])? + let v_W5196 = { + let __t4123 = v_V5187.clone(); + let __t4124 = v_V5190.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t4123, __t4124])? }; { - let __t4182 = { - let __t4116 = v_W5614.clone(); - rt::is_cons(&__t4116) + let __t4191 = { + let __t4125 = v_W5196.clone(); + rt::is_cons(&__t4125) }; - if rt::is_truthy(interp, &__t4182)? { + if rt::is_truthy(interp, &__t4191)? { { - let v_W5615 = { - let __t4118 = { - let __t4117 = v_W5614.clone(); - rt::hd(&__t4117)? + let v_W5197 = { + let __t4127 = { + let __t4126 = v_W5196.clone(); + rt::hd(&__t4126)? }; - let __t4119 = v_V5608.clone(); + let __t4128 = v_V5190.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t4118, __t4119], + &[__t4127, __t4128], )? }; { - let __t4181 = { - let __t4120 = v_W5615.clone(); - let __t4121 = Value::sym(interp.intern("where")); - rt::eq(&__t4120, &__t4121) + let __t4190 = { + let __t4129 = v_W5197.clone(); + let __t4130 = Value::sym(interp.intern("where")); + rt::eq(&__t4129, &__t4130) }; - if rt::is_truthy(interp, &__t4181)? { + if rt::is_truthy(interp, &__t4190)? { { - let v_W5616 = { - let __t4123 = { - let __t4122 = v_W5614.clone(); - rt::tl(&__t4122)? + let v_W5198 = { + let __t4132 = { + let __t4131 = v_W5196.clone(); + rt::tl(&__t4131)? }; - let __t4124 = v_V5608.clone(); + let __t4133 = v_V5190.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t4123, __t4124], + &[__t4132, __t4133], )? }; { - let __t4180 = { - let __t4125 = v_W5616.clone(); - rt::is_cons(&__t4125) + let __t4189 = { + let __t4134 = v_W5198.clone(); + rt::is_cons(&__t4134) }; - if rt::is_truthy(interp, &__t4180)? { + if rt::is_truthy(interp, &__t4189)? { { - let v_W5617 = { - let __t4126 = v_W5616.clone(); - rt::hd(&__t4126)? + let v_W5199 = { + let __t4135 = v_W5198.clone(); + rt::hd(&__t4135)? }; { - let v_W5618 = { - let __t4128 = { - let __t4127 = - v_W5616.clone(); - rt::tl(&__t4127)? + let v_W5200 = { + let __t4137 = { + let __t4136 = + v_W5198.clone(); + rt::tl(&__t4136)? }; - let __t4129 = - v_V5608.clone(); + let __t4138 = + v_V5190.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t4128, __t4129], + &[__t4137, __t4138], )? }; { - let __t4179 = { - let __t4130 = - v_W5618.clone(); - rt::is_cons(&__t4130) + let __t4188 = { + let __t4139 = + v_W5200.clone(); + rt::is_cons(&__t4139) }; if rt::is_truthy( - interp, &__t4179, + interp, &__t4188, )? { { - let v_W5619 = { - let __t4131 = - v_W5618 + let v_W5201 = { + let __t4140 = + v_W5200 .clone( ); rt::hd( - &__t4131, + &__t4140, )? }; { - let v_W5620 = { - let __t4133 = { - let __t4132 = v_W5618.clone(); - rt::tl(&__t4132)? + let v_W5202 = { + let __t4142 = { + let __t4141 = v_W5200.clone(); + rt::tl(&__t4141)? }; - let __t4134 = v_V5608.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t4133, __t4134])? + let __t4143 = v_V5190.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t4142, __t4143])? }; { - let __t4178 = { - let __t4135 = v_W5620.clone(); - let __t4136 = Value::nil(); - rt::eq(&__t4135, &__t4136) + let __t4187 = { + let __t4144 = v_W5202.clone(); + let __t4145 = Value::nil(); + rt::eq(&__t4144, &__t4145) }; - if rt::is_truthy(interp, &__t4178)? { { let v_W5621 = { let __t4137 = v_V5608.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4137])? }; { let __t4138 = v_V5608.clone(); let __t4177 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t4139 = v_V5608.clone(); let __t4140 = v_V5609.clone(); let __t4141 = v_W5612.clone(); let __t4176 = { let v_V5606 = v_V5606.clone(); let v_V5607 = v_V5607.clone(); let v_V5608 = v_V5608.clone(); let v_V5609 = v_V5609.clone(); let v_V5611 = v_V5611.clone(); let v_W5612 = v_W5612.clone(); let v_W5617 = v_W5617.clone(); let v_W5619 = v_W5619.clone(); let v_W5621 = v_W5621.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4142 = v_W5621.clone(); let __t4144 = { let __t4143 = v_W5617.clone(); rt::apply_direct(interp, "shen.curry", &[__t4143])? }; let __t4145 = v_V5608.clone(); let __t4146 = v_V5609.clone(); let __t4147 = v_W5612.clone(); let __t4175 = { let v_V5606 = v_V5606.clone(); let v_V5607 = v_V5607.clone(); let v_V5608 = v_V5608.clone(); let v_V5609 = v_V5609.clone(); let v_V5611 = v_V5611.clone(); let v_W5612 = v_W5612.clone(); let v_W5619 = v_W5619.clone(); let v_W5621 = v_W5621.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4148 = v_W5621.clone(); let __t4149 = Value::sym(interp.intern("boolean")); let __t4150 = v_V5607.clone(); let __t4151 = v_V5608.clone(); let __t4152 = v_V5609.clone(); let __t4153 = v_W5612.clone(); let __t4174 = { let v_V5606 = v_V5606.clone(); let v_V5607 = v_V5607.clone(); let v_V5608 = v_V5608.clone(); let v_V5609 = v_V5609.clone(); let v_V5611 = v_V5611.clone(); let v_W5612 = v_W5612.clone(); let v_W5619 = v_W5619.clone(); let v_W5621 = v_W5621.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4154 = v_V5608.clone(); let __t4155 = v_V5609.clone(); let __t4156 = v_W5612.clone(); let __t4173 = { let v_V5606 = v_V5606.clone(); let v_V5607 = v_V5607.clone(); let v_V5608 = v_V5608.clone(); let v_V5609 = v_V5609.clone(); let v_V5611 = v_V5611.clone(); let v_W5612 = v_W5612.clone(); let v_W5619 = v_W5619.clone(); let v_W5621 = v_W5621.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4157 = v_W5619.clone(); let __t4158 = v_V5606.clone(); let __t4168 = { let __t4166 = { let __t4159 = v_W5621.clone(); let __t4165 = { let __t4161 = { let __t4160 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t4160])? }; let __t4164 = { let __t4162 = Value::sym(interp.intern("verified")); let __t4163 = Value::nil(); rt::cons(&__t4162, &__t4163) }; rt::cons(&__t4161, &__t4164) }; rt::cons(&__t4159, &__t4165) }; let __t4167 = v_V5607.clone(); rt::cons(&__t4166, &__t4167) }; let __t4169 = v_V5608.clone(); let __t4170 = v_V5609.clone(); let __t4171 = v_W5612.clone(); let __t4172 = v_V5611.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t4157, __t4158, __t4168, __t4169, __t4170, __t4171, __t4172])? }), vec![v_V5606, v_V5607, v_V5608, v_V5609, v_V5611, v_W5612, v_W5619, v_W5621], interp) }; rt::apply_direct(interp, "shen.cut", &[__t4154, __t4155, __t4156, __t4173])? }), vec![v_V5606, v_V5607, v_V5608, v_V5609, v_V5611, v_W5612, v_W5619, v_W5621], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t4148, __t4149, __t4150, __t4151, __t4152, __t4153, __t4174])? }), vec![v_V5606, v_V5607, v_V5608, v_V5609, v_V5611, v_W5612, v_W5619, v_W5621], interp) }; rt::apply_direct(interp, "bind", &[__t4142, __t4144, __t4145, __t4146, __t4147, __t4175])? }), vec![v_V5606, v_V5607, v_V5608, v_V5609, v_V5611, v_W5612, v_W5617, v_W5619, v_W5621], interp) }; rt::apply_direct(interp, "shen.cut", &[__t4139, __t4140, __t4141, __t4176])? } }; rt::apply_direct(interp, "shen.gc", &[__t4138, __t4177])? } } } else { Value::bool(false) } + if rt::is_truthy(interp, &__t4187)? { { let v_W5203 = { let __t4146 = v_V5190.clone(); rt::apply_direct(interp, "shen.newpv", &[__t4146])? }; { let __t4147 = v_V5190.clone(); let __t4186 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { let __t4148 = v_V5190.clone(); let __t4149 = v_V5191.clone(); let __t4150 = v_W5194.clone(); let __t4185 = { let v_V5188 = v_V5188.clone(); let v_V5189 = v_V5189.clone(); let v_V5190 = v_V5190.clone(); let v_V5191 = v_V5191.clone(); let v_V5193 = v_V5193.clone(); let v_W5194 = v_W5194.clone(); let v_W5199 = v_W5199.clone(); let v_W5201 = v_W5201.clone(); let v_W5203 = v_W5203.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4151 = v_W5203.clone(); let __t4153 = { let __t4152 = v_W5199.clone(); rt::apply_direct(interp, "shen.curry", &[__t4152])? }; let __t4154 = v_V5190.clone(); let __t4155 = v_V5191.clone(); let __t4156 = v_W5194.clone(); let __t4184 = { let v_V5188 = v_V5188.clone(); let v_V5189 = v_V5189.clone(); let v_V5190 = v_V5190.clone(); let v_V5191 = v_V5191.clone(); let v_V5193 = v_V5193.clone(); let v_W5194 = v_W5194.clone(); let v_W5201 = v_W5201.clone(); let v_W5203 = v_W5203.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4157 = v_W5203.clone(); let __t4158 = Value::sym(interp.intern("boolean")); let __t4159 = v_V5189.clone(); let __t4160 = v_V5190.clone(); let __t4161 = v_V5191.clone(); let __t4162 = v_W5194.clone(); let __t4183 = { let v_V5188 = v_V5188.clone(); let v_V5189 = v_V5189.clone(); let v_V5190 = v_V5190.clone(); let v_V5191 = v_V5191.clone(); let v_V5193 = v_V5193.clone(); let v_W5194 = v_W5194.clone(); let v_W5201 = v_W5201.clone(); let v_W5203 = v_W5203.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4163 = v_V5190.clone(); let __t4164 = v_V5191.clone(); let __t4165 = v_W5194.clone(); let __t4182 = { let v_V5188 = v_V5188.clone(); let v_V5189 = v_V5189.clone(); let v_V5190 = v_V5190.clone(); let v_V5191 = v_V5191.clone(); let v_V5193 = v_V5193.clone(); let v_W5194 = v_W5194.clone(); let v_W5201 = v_W5201.clone(); let v_W5203 = v_W5203.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4166 = v_W5201.clone(); let __t4167 = v_V5188.clone(); let __t4177 = { let __t4175 = { let __t4168 = v_W5203.clone(); let __t4174 = { let __t4170 = { let __t4169 = Value::str(":"); rt::apply_direct(interp, "intern", &[__t4169])? }; let __t4173 = { let __t4171 = Value::sym(interp.intern("verified")); let __t4172 = Value::nil(); rt::cons(&__t4171, &__t4172) }; rt::cons(&__t4170, &__t4173) }; rt::cons(&__t4168, &__t4174) }; let __t4176 = v_V5189.clone(); rt::cons(&__t4175, &__t4176) }; let __t4178 = v_V5190.clone(); let __t4179 = v_V5191.clone(); let __t4180 = v_W5194.clone(); let __t4181 = v_V5193.clone(); rt::apply_direct(interp, "shen.t*-correct", &[__t4166, __t4167, __t4177, __t4178, __t4179, __t4180, __t4181])? }), vec![v_V5188, v_V5189, v_V5190, v_V5191, v_V5193, v_W5194, v_W5201, v_W5203], interp) }; rt::apply_direct(interp, "shen.cut", &[__t4163, __t4164, __t4165, __t4182])? }), vec![v_V5188, v_V5189, v_V5190, v_V5191, v_V5193, v_W5194, v_W5201, v_W5203], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t4157, __t4158, __t4159, __t4160, __t4161, __t4162, __t4183])? }), vec![v_V5188, v_V5189, v_V5190, v_V5191, v_V5193, v_W5194, v_W5201, v_W5203], interp) }; rt::apply_direct(interp, "bind", &[__t4151, __t4153, __t4154, __t4155, __t4156, __t4184])? }), vec![v_V5188, v_V5189, v_V5190, v_V5191, v_V5193, v_W5194, v_W5199, v_W5201, v_W5203], interp) }; rt::apply_direct(interp, "shen.cut", &[__t4148, __t4149, __t4150, __t4185])? } }; rt::apply_direct(interp, "shen.gc", &[__t4147, __t4186])? } } } else { Value::bool(false) } } } } @@ -10051,41 +10083,41 @@ pub fn aot_shen_x2e_t_x2a__x2d_correct(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t4186 = { - let __t4184 = v_W5613.clone(); - let __t4185 = Value::bool(false); - rt::eq(&__t4184, &__t4185) + let __t4195 = { + let __t4193 = v_W5195.clone(); + let __t4194 = Value::bool(false); + rt::eq(&__t4193, &__t4194) }; - if match rt::is_truthy(interp, &__t4186) { + if match rt::is_truthy(interp, &__t4195) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5622 = { - let __t4196 = { - let __t4187 = v_V5609.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t4187])? + let v_W5204 = { + let __t4205 = { + let __t4196 = v_V5191.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t4196])? }; - if rt::is_truthy(interp, &__t4196)? { + if rt::is_truthy(interp, &__t4205)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t4189 = { - let __t4188 = v_V5605.clone(); - rt::apply_direct(interp, "shen.curry", &[__t4188])? + let __t4198 = { + let __t4197 = v_V5187.clone(); + rt::apply_direct(interp, "shen.curry", &[__t4197])? }; - let __t4190 = v_V5606.clone(); - let __t4191 = v_V5607.clone(); - let __t4192 = v_V5608.clone(); - let __t4193 = v_V5609.clone(); - let __t4194 = v_W5612.clone(); - let __t4195 = v_V5611.clone(); + let __t4199 = v_V5188.clone(); + let __t4200 = v_V5189.clone(); + let __t4201 = v_V5190.clone(); + let __t4202 = v_V5191.clone(); + let __t4203 = v_W5194.clone(); + let __t4204 = v_V5193.clone(); rt::apply_direct( interp, "shen.system-S-h", &[ - __t4189, __t4190, __t4191, __t4192, __t4193, - __t4194, __t4195, + __t4198, __t4199, __t4200, __t4201, __t4202, + __t4203, __t4204, ], )? } @@ -10095,31 +10127,31 @@ pub fn aot_shen_x2e_t_x2a__x2d_correct(interp: &mut Interp, args: &[Value]) -> S } }; { - let __t4199 = { - let __t4197 = v_W5622.clone(); - let __t4198 = Value::bool(false); - rt::eq(&__t4197, &__t4198) + let __t4208 = { + let __t4206 = v_W5204.clone(); + let __t4207 = Value::bool(false); + rt::eq(&__t4206, &__t4207) }; - if match rt::is_truthy(interp, &__t4199) { + if match rt::is_truthy(interp, &__t4208) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t4200 = v_V5609.clone(); - let __t4201 = v_W5612.clone(); + let __t4209 = v_V5191.clone(); + let __t4210 = v_W5194.clone(); rt::apply_direct( interp, "shen.unlock", - &[__t4200, __t4201], + &[__t4209, __t4210], )? }); } else { - break Ok(v_W5622.clone()); + break Ok(v_W5204.clone()); } } } } else { - break Ok(v_W5613.clone()); + break Ok(v_W5195.clone()); } } } @@ -10141,56 +10173,56 @@ pub fn aot_shen_x2e_t_x2a__x2d_integrity(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V5623 = args[0].clone(); + let mut v_V5205 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5624 = args[1].clone(); + let mut v_V5206 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5625 = args[2].clone(); + let mut v_V5207 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5626 = args[3].clone(); + let mut v_V5208 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5627 = args[4].clone(); + let mut v_V5209 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5628 = args[5].clone(); + let mut v_V5210 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5629 = args[6].clone(); + let mut v_V5211 = args[6].clone(); #[allow(unused_mut)] - let mut v_V5630 = args[7].clone(); + let mut v_V5212 = args[7].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5631 = { - let __t4214 = { - let __t4202 = v_V5628.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t4202])? + let v_W5213 = { + let __t4223 = { + let __t4211 = v_V5210.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t4211])? }; - if rt::is_truthy(interp, &__t4214)? { + if rt::is_truthy(interp, &__t4223)? { { - let v_W5632 = { - let __t4203 = v_V5623.clone(); - let __t4204 = v_V5627.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t4203, __t4204])? + let v_W5214 = { + let __t4212 = v_V5205.clone(); + let __t4213 = v_V5209.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t4212, __t4213])? }; { - let __t4213 = { - let __t4205 = v_W5632.clone(); - let __t4206 = Value::nil(); - rt::eq(&__t4205, &__t4206) + let __t4222 = { + let __t4214 = v_W5214.clone(); + let __t4215 = Value::nil(); + rt::eq(&__t4214, &__t4215) }; - if rt::is_truthy(interp, &__t4213)? { + if rt::is_truthy(interp, &__t4222)? { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t4207 = v_V5624.clone(); - let __t4208 = v_V5626.clone(); - let __t4209 = v_V5627.clone(); - let __t4210 = v_V5628.clone(); - let __t4211 = v_V5629.clone(); - let __t4212 = v_V5630.clone(); + let __t4216 = v_V5206.clone(); + let __t4217 = v_V5208.clone(); + let __t4218 = v_V5209.clone(); + let __t4219 = v_V5210.clone(); + let __t4220 = v_V5211.clone(); + let __t4221 = v_V5212.clone(); rt::apply_direct( interp, "is!", - &[__t4207, __t4208, __t4209, __t4210, __t4211, __t4212], + &[__t4216, __t4217, __t4218, __t4219, __t4220, __t4221], )? } } @@ -10204,119 +10236,119 @@ pub fn aot_shen_x2e_t_x2a__x2d_integrity(interp: &mut Interp, args: &[Value]) -> } }; { - let __t4217 = { - let __t4215 = v_W5631.clone(); - let __t4216 = Value::bool(false); - rt::eq(&__t4215, &__t4216) + let __t4226 = { + let __t4224 = v_W5213.clone(); + let __t4225 = Value::bool(false); + rt::eq(&__t4224, &__t4225) }; - if match rt::is_truthy(interp, &__t4217) { + if match rt::is_truthy(interp, &__t4226) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t4219 = { - let __t4218 = v_V5628.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t4218])? + let __t4228 = { + let __t4227 = v_V5210.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t4227])? }; - if match rt::is_truthy(interp, &__t4219) { + if match rt::is_truthy(interp, &__t4228) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5633 = { - let __t4220 = v_V5623.clone(); - let __t4221 = v_V5627.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t4220, __t4221])? + let v_W5215 = { + let __t4229 = v_V5205.clone(); + let __t4230 = v_V5209.clone(); + rt::apply_direct(interp, "shen.lazyderef", &[__t4229, __t4230])? }; { - let __t4223 = { - let __t4222 = v_W5633.clone(); - rt::is_cons(&__t4222) + let __t4232 = { + let __t4231 = v_W5215.clone(); + rt::is_cons(&__t4231) }; - if match rt::is_truthy(interp, &__t4223) { + if match rt::is_truthy(interp, &__t4232) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5634 = { - let __t4224 = v_W5633.clone(); - rt::hd(&__t4224)? + let v_W5216 = { + let __t4233 = v_W5215.clone(); + rt::hd(&__t4233)? }; { - let v_W5635 = { - let __t4225 = v_W5633.clone(); - rt::tl(&__t4225)? + let v_W5217 = { + let __t4234 = v_W5215.clone(); + rt::tl(&__t4234)? }; { - let v_W5636 = { - let __t4226 = v_V5624.clone(); - let __t4227 = v_V5627.clone(); + let v_W5218 = { + let __t4235 = v_V5206.clone(); + let __t4236 = v_V5209.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t4226, __t4227], + &[__t4235, __t4236], )? }; { - let __t4229 = { - let __t4228 = v_W5636.clone(); - rt::is_cons(&__t4228) + let __t4238 = { + let __t4237 = v_W5218.clone(); + rt::is_cons(&__t4237) }; - if match rt::is_truthy(interp, &__t4229) { + if match rt::is_truthy(interp, &__t4238) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5637 = { - let __t4230 = v_W5636.clone(); - rt::hd(&__t4230)? + let v_W5219 = { + let __t4239 = v_W5218.clone(); + rt::hd(&__t4239)? }; { - let v_W5638 = { - let __t4232 = { - let __t4231 = - v_W5636.clone(); - rt::tl(&__t4231)? + let v_W5220 = { + let __t4241 = { + let __t4240 = + v_W5218.clone(); + rt::tl(&__t4240)? }; - let __t4233 = - v_V5627.clone(); + let __t4242 = + v_V5209.clone(); rt::apply_direct( interp, "shen.lazyderef", - &[__t4232, __t4233], + &[__t4241, __t4242], )? }; { - let __t4235 = { - let __t4234 = - v_W5638.clone(); - rt::is_cons(&__t4234) + let __t4244 = { + let __t4243 = + v_W5220.clone(); + rt::is_cons(&__t4243) }; if match rt::is_truthy( - interp, &__t4235, + interp, &__t4244, ) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5639 = { - let __t4237 = { - let __t4236 = v_W5638.clone(); - rt::hd(&__t4236)? + let v_W5221 = { + let __t4246 = { + let __t4245 = v_W5220.clone(); + rt::hd(&__t4245)? }; - let __t4238 = - v_V5627 + let __t4247 = + v_V5209 .clone( ); - rt::apply_direct(interp, "shen.lazyderef", &[__t4237, __t4238])? + rt::apply_direct(interp, "shen.lazyderef", &[__t4246, __t4247])? }; { - let __t4241 = { - let __t4239 = v_W5639.clone(); - let __t4240 = Value::sym(interp.intern("-->")); - rt::eq(&__t4239, &__t4240) + let __t4250 = { + let __t4248 = v_W5221.clone(); + let __t4249 = Value::sym(interp.intern("-->")); + rt::eq(&__t4248, &__t4249) }; - if match rt::is_truthy(interp, &__t4241) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5640 = { let __t4243 = { let __t4242 = v_W5638.clone(); rt::tl(&__t4242)? }; let __t4244 = v_V5627.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4243, __t4244])? }; { let __t4246 = { let __t4245 = v_W5640.clone(); rt::is_cons(&__t4245) }; if match rt::is_truthy(interp, &__t4246) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5641 = { let __t4247 = v_W5640.clone(); rt::hd(&__t4247)? }; { let v_W5642 = { let __t4249 = { let __t4248 = v_W5640.clone(); rt::tl(&__t4248)? }; let __t4250 = v_V5627.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4249, __t4250])? }; { let __t4253 = { let __t4251 = v_W5642.clone(); let __t4252 = Value::nil(); rt::eq(&__t4251, &__t4252) }; if match rt::is_truthy(interp, &__t4253) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; break Ok({ let __t4254 = v_W5634.clone(); let __t4255 = v_W5637.clone(); let __t4256 = v_V5625.clone(); let __t4257 = v_V5627.clone(); let __t4258 = v_V5628.clone(); let __t4259 = v_V5629.clone(); let __t4268 = { let v_V5625 = v_V5625.clone(); let v_V5626 = v_V5626.clone(); let v_V5627 = v_V5627.clone(); let v_V5628 = v_V5628.clone(); let v_V5629 = v_V5629.clone(); let v_V5630 = v_V5630.clone(); let v_W5635 = v_W5635.clone(); let v_W5641 = v_W5641.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4260 = v_W5635.clone(); let __t4261 = v_W5641.clone(); let __t4262 = v_V5625.clone(); let __t4263 = v_V5626.clone(); let __t4264 = v_V5627.clone(); let __t4265 = v_V5628.clone(); let __t4266 = v_V5629.clone(); let __t4267 = v_V5630.clone(); rt::apply_direct(interp, "shen.t*-integrity", &[__t4260, __t4261, __t4262, __t4263, __t4264, __t4265, __t4266, __t4267])? }), vec![v_V5625, v_V5626, v_V5627, v_V5628, v_V5629, v_V5630, v_W5635, v_W5641], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t4254, __t4255, __t4256, __t4257, __t4258, __t4259, __t4268])? }); } } else { break Ok(Value::bool(false)); } } } } } else { break Ok(Value::bool(false)); } } } } else { break Ok(Value::bool(false)); } + if match rt::is_truthy(interp, &__t4250) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5222 = { let __t4252 = { let __t4251 = v_W5220.clone(); rt::tl(&__t4251)? }; let __t4253 = v_V5209.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4252, __t4253])? }; { let __t4255 = { let __t4254 = v_W5222.clone(); rt::is_cons(&__t4254) }; if match rt::is_truthy(interp, &__t4255) { Ok(b) => b, Err(e) => break Err(e), } { { let v_W5223 = { let __t4256 = v_W5222.clone(); rt::hd(&__t4256)? }; { let v_W5224 = { let __t4258 = { let __t4257 = v_W5222.clone(); rt::tl(&__t4257)? }; let __t4259 = v_V5209.clone(); rt::apply_direct(interp, "shen.lazyderef", &[__t4258, __t4259])? }; { let __t4262 = { let __t4260 = v_W5224.clone(); let __t4261 = Value::nil(); rt::eq(&__t4260, &__t4261) }; if match rt::is_truthy(interp, &__t4262) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; break Ok({ let __t4263 = v_W5216.clone(); let __t4264 = v_W5219.clone(); let __t4265 = v_V5207.clone(); let __t4266 = v_V5209.clone(); let __t4267 = v_V5210.clone(); let __t4268 = v_V5211.clone(); let __t4277 = { let v_V5207 = v_V5207.clone(); let v_V5208 = v_V5208.clone(); let v_V5209 = v_V5209.clone(); let v_V5210 = v_V5210.clone(); let v_V5211 = v_V5211.clone(); let v_V5212 = v_V5212.clone(); let v_W5217 = v_W5217.clone(); let v_W5223 = v_W5223.clone(); rt::make_aot_closure("", 0, move |interp, _args| Ok({ let __t4269 = v_W5217.clone(); let __t4270 = v_W5223.clone(); let __t4271 = v_V5207.clone(); let __t4272 = v_V5208.clone(); let __t4273 = v_V5209.clone(); let __t4274 = v_V5210.clone(); let __t4275 = v_V5211.clone(); let __t4276 = v_V5212.clone(); rt::apply_direct(interp, "shen.t*-integrity", &[__t4269, __t4270, __t4271, __t4272, __t4273, __t4274, __t4275, __t4276])? }), vec![v_V5207, v_V5208, v_V5209, v_V5210, v_V5211, v_V5212, v_W5217, v_W5223], interp) }; rt::apply_direct(interp, "shen.system-S-h", &[__t4263, __t4264, __t4265, __t4266, __t4267, __t4268, __t4277])? }); } } else { break Ok(Value::bool(false)); } } } } } else { break Ok(Value::bool(false)); } } } } else { break Ok(Value::bool(false)); } } } } else { @@ -10344,7 +10376,7 @@ pub fn aot_shen_x2e_t_x2a__x2d_integrity(interp: &mut Interp, args: &[Value]) -> } } } else { - break Ok(v_W5631.clone()); + break Ok(v_W5213.clone()); } } } @@ -10365,42 +10397,42 @@ pub fn aot_shen_x2e_freshterm_x3f_(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V5643 = args[0].clone(); + let mut v_V5225 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t4270 = { - let __t4269 = v_V5643.clone(); - rt::is_absvector(&__t4269) + let __t4279 = { + let __t4278 = v_V5225.clone(); + rt::is_absvector(&__t4278) }; - if !match rt::is_truthy(interp, &__t4270) { + if !match rt::is_truthy(interp, &__t4279) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t4273 = { - let __t4272 = { - let __t4271 = v_V5643.clone(); - rt::is_string(&__t4271) + let __t4282 = { + let __t4281 = { + let __t4280 = v_V5225.clone(); + rt::is_string(&__t4280) }; - rt::apply_direct(interp, "not", &[__t4272])? + rt::apply_direct(interp, "not", &[__t4281])? }; - if !match rt::is_truthy(interp, &__t4273) { + if !match rt::is_truthy(interp, &__t4282) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { break Ok({ - let __t4276 = { - let __t4274 = v_V5643.clone(); - let __t4275 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t4274, __t4275])? + let __t4285 = { + let __t4283 = v_V5225.clone(); + let __t4284 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t4283, __t4284])? }; - let __t4277 = Value::sym(interp.intern("shen.print-freshterm")); - rt::eq(&__t4276, &__t4277) + let __t4286 = Value::sym(interp.intern("shen.print-freshterm")); + rt::eq(&__t4285, &__t4286) }); } } @@ -10438,6 +10470,7 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_type_x2d_theory_x2d_enabled_x3f_(interp); install_shen_x2e_maxinfexceeded_x3f_(interp); install_shen_x2e_system_x2d_S_x2d_h(interp); + install_shen_x2e_rdecons(interp); install_shen_x2e_primitive(interp); install_shen_x2e_by_x2d_hypothesis(interp); install_shen_x2e_lookupsig(interp); diff --git a/crates/shen-rust/src/aot/kernel/toplevel.rs b/crates/shen-rust/src/aot/kernel/toplevel.rs index 514a91e..0bff8b1 100644 --- a/crates/shen-rust/src/aot/kernel/toplevel.rs +++ b/crates/shen-rust/src/aot/kernel/toplevel.rs @@ -23,11 +23,11 @@ use crate::interp::eval::Interp; use crate::value::Value; use std::rc::Rc; -/// AOT-compiled from KL `(defun shen.repl ...)` -pub fn aot_shen_x2e_repl(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun shen.shen ...)` +pub fn aot_shen_x2e_shen(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { return Err(ShenError::new(format!( - "shen.repl: expected 0 args, got {}", + "shen.shen: expected 0 args, got {}", args.len() ))); } @@ -40,9 +40,9 @@ pub fn aot_shen_x2e_repl(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult", 1, move |interp, args| { - let v_Z5667 = args[0].clone(); + let v_Z5248 = args[0].clone(); Ok({ - let __t0 = v_Z5667.clone(); - rt::apply_direct( - interp, - "shen.toplevel-display-exception", - &[__t0], - )? + let _ = { + let __t1 = { + let __t0 = v_Z5248.clone(); + rt::apply_direct( + interp, + "error-to-string", + &[__t0], + )? + }; + let __t2 = + { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t1, __t2])? + }; + { + let __t3 = Value::int(0i64); + rt::apply_direct(interp, "nl", &[__t3])? + } }) }, Vec::new(), @@ -102,50 +113,6 @@ fn install_shen_x2e_loop(interp: &mut Interp) { interp.register_aot_direct("shen.loop", aot_shen_x2e_loop); } -/// AOT-compiled from KL `(defun shen.toplevel-display-exception ...)` -pub fn aot_shen_x2e_toplevel_x2d_display_x2d_exception( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.toplevel-display-exception: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V5668 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - { - let _ = { - let __t2 = { - let __t1 = v_V5668.clone(); - rt::apply_direct(interp, "error-to-string", &[__t1])? - }; - let __t3 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t2, __t3])? - }; - break Ok({ - let __t4 = Value::int(0i64); - rt::apply_direct(interp, "nl", &[__t4])? - }); - } - } -} - -fn install_shen_x2e_toplevel_x2d_display_x2d_exception(interp: &mut Interp) { - interp.register_native( - "shen.toplevel-display-exception", - 1, - aot_shen_x2e_toplevel_x2d_display_x2d_exception, - ); - interp.register_aot_direct( - "shen.toplevel-display-exception", - aot_shen_x2e_toplevel_x2d_display_x2d_exception, - ); -} - /// AOT-compiled from KL `(defun shen.credits ...)` pub fn aot_shen_x2e_credits(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { @@ -158,104 +125,104 @@ pub fn aot_shen_x2e_credits(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t60 = { - let __t53 = Value::str("\n("); - let __t59 = { - let __t56 = { - let __t55 = { - let __t54 = Value::sym(interp.intern("shen.*history*")); - rt::apply_direct(interp, "value", &[__t54])? + let __t59 = { + let __t52 = Value::str("\n("); + let __t58 = { + let __t55 = { + let __t54 = { + let __t53 = Value::sym(interp.intern("shen.*history*")); + rt::apply_direct(interp, "value", &[__t53])? }; - rt::apply_direct(interp, "length", &[__t55])? + rt::apply_direct(interp, "length", &[__t54])? }; - let __t57 = Value::str("+) "); - let __t58 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t56, __t57, __t58])? + let __t56 = Value::str("+) "); + let __t57 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t55, __t56, __t57])? }; - rt::apply_direct(interp, "cn", &[__t53, __t59])? + rt::apply_direct(interp, "cn", &[__t52, __t58])? }; - let __t61 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t60, __t61])? + let __t60 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t59, __t60])? }); } else { break Ok({ - let __t69 = { - let __t62 = Value::str("\n("); - let __t68 = { - let __t65 = { - let __t64 = { - let __t63 = Value::sym(interp.intern("shen.*history*")); - rt::apply_direct(interp, "value", &[__t63])? + let __t68 = { + let __t61 = Value::str("\n("); + let __t67 = { + let __t64 = { + let __t63 = { + let __t62 = Value::sym(interp.intern("shen.*history*")); + rt::apply_direct(interp, "value", &[__t62])? }; - rt::apply_direct(interp, "length", &[__t64])? + rt::apply_direct(interp, "length", &[__t63])? }; - let __t66 = Value::str("-) "); - let __t67 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t65, __t66, __t67])? + let __t65 = Value::str("-) "); + let __t66 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t64, __t65, __t66])? }; - rt::apply_direct(interp, "cn", &[__t62, __t68])? + rt::apply_direct(interp, "cn", &[__t61, __t67])? }; - let __t70 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t69, __t70])? + let __t69 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t68, __t69])? }); } } @@ -391,29 +358,29 @@ pub fn aot_shen_x2e_read_x2d_evaluate_x2d_print( #[allow(clippy::never_loop)] loop { { - let v_W5669 = { - let __t71 = Value::sym(interp.intern("shen.*package*")); - rt::apply_direct(interp, "value", &[__t71])? + let v_W5249 = { + let __t70 = Value::sym(interp.intern("shen.*package*")); + rt::apply_direct(interp, "value", &[__t70])? }; { - let v_W5670 = { - let __t72 = v_W5669.clone(); - let __t74 = { - let __t73 = { rt::apply_direct(interp, "stinput", &[])? }; - rt::apply_direct(interp, "lineread", &[__t73])? + let v_W5250 = { + let __t71 = v_W5249.clone(); + let __t73 = { + let __t72 = { rt::apply_direct(interp, "stinput", &[])? }; + rt::apply_direct(interp, "lineread", &[__t72])? }; - rt::apply_direct(interp, "shen.package-user-input", &[__t72, __t74])? + rt::apply_direct(interp, "shen.package-user-input", &[__t71, __t73])? }; { - let v_W5671 = { rt::apply_direct(interp, "shen.update-history", &[])? }; + let v_W5251 = { rt::apply_direct(interp, "shen.update-history", &[])? }; break Ok({ - let __t75 = v_W5670.clone(); - let __t76 = v_W5671.clone(); - let __t78 = { - let __t77 = Value::sym(interp.intern("shen.*tc*")); - rt::apply_direct(interp, "value", &[__t77])? + let __t74 = v_W5250.clone(); + let __t75 = v_W5251.clone(); + let __t77 = { + let __t76 = Value::sym(interp.intern("shen.*tc*")); + rt::apply_direct(interp, "value", &[__t76])? }; - rt::apply_direct(interp, "shen.evaluate-lineread", &[__t75, __t76, __t78])? + rt::apply_direct(interp, "shen.evaluate-lineread", &[__t74, __t75, __t77])? }); } } @@ -445,65 +412,65 @@ pub fn aot_shen_x2e_package_x2d_user_x2d_input( ))); } #[allow(unused_mut)] - let mut v_V5672 = args[0].clone(); + let mut v_V5252 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5673 = args[1].clone(); + let mut v_V5253 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t89 = { - let __t87 = Value::sym(interp.intern("null")); - let __t88 = v_V5672.clone(); - rt::eq(&__t87, &__t88) + let __t88 = { + let __t86 = Value::sym(interp.intern("null")); + let __t87 = v_V5252.clone(); + rt::eq(&__t86, &__t87) }; - if match rt::is_truthy(interp, &__t89) { + if match rt::is_truthy(interp, &__t88) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5673.clone()); + break Ok(v_V5253.clone()); } else { { - let __t86 = Value::bool(true); - if match rt::is_truthy(interp, &__t86) { + let __t85 = Value::bool(true); + if match rt::is_truthy(interp, &__t85) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5674 = { - let __t79 = v_V5672.clone(); - rt::apply_direct(interp, "str", &[__t79])? + let v_W5254 = { + let __t78 = v_V5252.clone(); + rt::apply_direct(interp, "str", &[__t78])? }; { - let v_W5675 = { - let __t80 = v_V5672.clone(); - rt::apply_direct(interp, "external", &[__t80])? + let v_W5255 = { + let __t79 = v_V5252.clone(); + rt::apply_direct(interp, "external", &[__t79])? }; break Ok({ - let __t84 = { - let v_W5674 = v_W5674.clone(); - let v_W5675 = v_W5675.clone(); + let __t83 = { + let v_W5254 = v_W5254.clone(); + let v_W5255 = v_W5255.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5676 = args[0].clone(); + let v_Z5256 = args[0].clone(); Ok({ - let __t81 = v_W5674.clone(); - let __t82 = v_W5675.clone(); - let __t83 = v_Z5676.clone(); + let __t80 = v_W5254.clone(); + let __t81 = v_W5255.clone(); + let __t82 = v_Z5256.clone(); rt::apply_direct( interp, "shen.pui-h", - &[__t81, __t82, __t83], + &[__t80, __t81, __t82], )? }) }, - vec![v_W5674, v_W5675], + vec![v_W5254, v_W5255], interp, ) }; - let __t85 = v_V5673.clone(); - rt::apply_direct(interp, "map", &[__t84, __t85])? + let __t84 = v_V5253.clone(); + rt::apply_direct(interp, "map", &[__t83, __t84])? }); } } @@ -537,259 +504,259 @@ pub fn aot_shen_x2e_pui_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V5681 = args[0].clone(); + let mut v_V5261 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5682 = args[1].clone(); + let mut v_V5262 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5683 = args[2].clone(); + let mut v_V5263 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t156 = { - let __t140 = { - let __t126 = v_V5683.clone(); - rt::is_cons(&__t126) + let __t155 = { + let __t139 = { + let __t125 = v_V5263.clone(); + rt::is_cons(&__t125) }; - if !rt::is_truthy(interp, &__t140)? { + if !rt::is_truthy(interp, &__t139)? { Value::bool(false) } else { - let __t141 = { - let __t138 = { - let __t127 = Value::sym(interp.intern("fn")); - let __t129 = { - let __t128 = v_V5683.clone(); - rt::hd(&__t128)? + let __t140 = { + let __t137 = { + let __t126 = Value::sym(interp.intern("fn")); + let __t128 = { + let __t127 = v_V5263.clone(); + rt::hd(&__t127)? }; - rt::eq(&__t127, &__t129) + rt::eq(&__t126, &__t128) }; - if !rt::is_truthy(interp, &__t138)? { + if !rt::is_truthy(interp, &__t137)? { Value::bool(false) } else { - let __t139 = { - let __t136 = { - let __t131 = { - let __t130 = v_V5683.clone(); - rt::tl(&__t130)? + let __t138 = { + let __t135 = { + let __t130 = { + let __t129 = v_V5263.clone(); + rt::tl(&__t129)? }; - rt::is_cons(&__t131) + rt::is_cons(&__t130) }; - if !rt::is_truthy(interp, &__t136)? { + if !rt::is_truthy(interp, &__t135)? { Value::bool(false) } else { - let __t137 = { - let __t132 = Value::nil(); - let __t135 = { - let __t134 = { - let __t133 = v_V5683.clone(); - rt::tl(&__t133)? + let __t136 = { + let __t131 = Value::nil(); + let __t134 = { + let __t133 = { + let __t132 = v_V5263.clone(); + rt::tl(&__t132)? }; - rt::tl(&__t134)? + rt::tl(&__t133)? }; - rt::eq(&__t132, &__t135) + rt::eq(&__t131, &__t134) }; - Value::bool(rt::is_truthy(interp, &__t137)?) + Value::bool(rt::is_truthy(interp, &__t136)?) } }; - Value::bool(rt::is_truthy(interp, &__t139)?) + Value::bool(rt::is_truthy(interp, &__t138)?) } }; - Value::bool(rt::is_truthy(interp, &__t141)?) + Value::bool(rt::is_truthy(interp, &__t140)?) } }; - if match rt::is_truthy(interp, &__t156) { + if match rt::is_truthy(interp, &__t155) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t147 = { - let __t144 = { - let __t143 = { - let __t142 = v_V5683.clone(); - rt::tl(&__t142)? + let __t146 = { + let __t143 = { + let __t142 = { + let __t141 = v_V5263.clone(); + rt::tl(&__t141)? }; - rt::hd(&__t143)? + rt::hd(&__t142)? }; - let __t145 = v_V5681.clone(); - let __t146 = v_V5682.clone(); - rt::apply_direct(interp, "shen.internal?", &[__t144, __t145, __t146])? + let __t144 = v_V5261.clone(); + let __t145 = v_V5262.clone(); + rt::apply_direct(interp, "shen.internal?", &[__t143, __t144, __t145])? }; - if match rt::is_truthy(interp, &__t147) { + if match rt::is_truthy(interp, &__t146) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t148 = Value::sym(interp.intern("fn")); - let __t155 = { - let __t153 = { - let __t149 = v_V5681.clone(); - let __t152 = { - let __t151 = { - let __t150 = v_V5683.clone(); - rt::tl(&__t150)? + let __t147 = Value::sym(interp.intern("fn")); + let __t154 = { + let __t152 = { + let __t148 = v_V5261.clone(); + let __t151 = { + let __t150 = { + let __t149 = v_V5263.clone(); + rt::tl(&__t149)? }; - rt::hd(&__t151)? + rt::hd(&__t150)? }; rt::apply_direct( interp, "shen.intern-in-package", - &[__t149, __t152], + &[__t148, __t151], )? }; - let __t154 = Value::nil(); - rt::cons(&__t153, &__t154) + let __t153 = Value::nil(); + rt::cons(&__t152, &__t153) }; - rt::cons(&__t148, &__t155) + rt::cons(&__t147, &__t154) }); } else { - break Ok(v_V5683.clone()); + break Ok(v_V5263.clone()); } } } else { { - let __t125 = { - let __t91 = v_V5683.clone(); - rt::is_cons(&__t91) + let __t124 = { + let __t90 = v_V5263.clone(); + rt::is_cons(&__t90) }; - if match rt::is_truthy(interp, &__t125) { + if match rt::is_truthy(interp, &__t124) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t96 = { - let __t93 = { - let __t92 = v_V5683.clone(); - rt::hd(&__t92)? + let __t95 = { + let __t92 = { + let __t91 = v_V5263.clone(); + rt::hd(&__t91)? }; - let __t94 = v_V5681.clone(); - let __t95 = v_V5682.clone(); - rt::apply_direct(interp, "shen.internal?", &[__t93, __t94, __t95])? + let __t93 = v_V5261.clone(); + let __t94 = v_V5262.clone(); + rt::apply_direct(interp, "shen.internal?", &[__t92, __t93, __t94])? }; - if match rt::is_truthy(interp, &__t96) { + if match rt::is_truthy(interp, &__t95) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t100 = { - let __t97 = v_V5681.clone(); - let __t99 = { - let __t98 = v_V5683.clone(); - rt::hd(&__t98)? + let __t99 = { + let __t96 = v_V5261.clone(); + let __t98 = { + let __t97 = v_V5263.clone(); + rt::hd(&__t97)? }; rt::apply_direct( interp, "shen.intern-in-package", - &[__t97, __t99], + &[__t96, __t98], )? }; - let __t107 = { - let __t104 = { - let v_V5681 = v_V5681.clone(); - let v_V5682 = v_V5682.clone(); + let __t106 = { + let __t103 = { + let v_V5261 = v_V5261.clone(); + let v_V5262 = v_V5262.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5684 = args[0].clone(); + let v_Z5264 = args[0].clone(); Ok({ - let __t101 = v_V5681.clone(); - let __t102 = v_V5682.clone(); - let __t103 = v_Z5684.clone(); + let __t100 = v_V5261.clone(); + let __t101 = v_V5262.clone(); + let __t102 = v_Z5264.clone(); rt::apply_direct( interp, "shen.pui-h", - &[__t101, __t102, __t103], + &[__t100, __t101, __t102], )? }) }, - vec![v_V5681, v_V5682], + vec![v_V5261, v_V5262], interp, ) }; - let __t106 = { - let __t105 = v_V5683.clone(); - rt::tl(&__t105)? + let __t105 = { + let __t104 = v_V5263.clone(); + rt::tl(&__t104)? }; - rt::apply_direct(interp, "map", &[__t104, __t106])? + rt::apply_direct(interp, "map", &[__t103, __t105])? }; - rt::cons(&__t100, &__t107) + rt::cons(&__t99, &__t106) }); } else { { - let __t110 = { - let __t109 = { - let __t108 = v_V5683.clone(); - rt::hd(&__t108)? + let __t109 = { + let __t108 = { + let __t107 = v_V5263.clone(); + rt::hd(&__t107)? }; - rt::is_cons(&__t109) + rt::is_cons(&__t108) }; - if match rt::is_truthy(interp, &__t110) { + if match rt::is_truthy(interp, &__t109) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t114 = { - let v_V5681 = v_V5681.clone(); - let v_V5682 = v_V5682.clone(); + let __t113 = { + let v_V5261 = v_V5261.clone(); + let v_V5262 = v_V5262.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5685 = args[0].clone(); + let v_Z5265 = args[0].clone(); Ok({ - let __t111 = v_V5681.clone(); - let __t112 = v_V5682.clone(); - let __t113 = v_Z5685.clone(); + let __t110 = v_V5261.clone(); + let __t111 = v_V5262.clone(); + let __t112 = v_Z5265.clone(); rt::apply_direct( interp, "shen.pui-h", - &[__t111, __t112, __t113], + &[__t110, __t111, __t112], )? }) }, - vec![v_V5681, v_V5682], + vec![v_V5261, v_V5262], interp, ) }; - let __t115 = v_V5683.clone(); - rt::apply_direct(interp, "map", &[__t114, __t115])? + let __t114 = v_V5263.clone(); + rt::apply_direct(interp, "map", &[__t113, __t114])? }); } else { break Ok({ - let __t117 = { - let __t116 = v_V5683.clone(); - rt::hd(&__t116)? + let __t116 = { + let __t115 = v_V5263.clone(); + rt::hd(&__t115)? }; - let __t124 = { - let __t121 = { - let v_V5681 = v_V5681.clone(); - let v_V5682 = v_V5682.clone(); + let __t123 = { + let __t120 = { + let v_V5261 = v_V5261.clone(); + let v_V5262 = v_V5262.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5686 = args[0].clone(); + let v_Z5266 = args[0].clone(); Ok({ - let __t118 = v_V5681.clone(); - let __t119 = v_V5682.clone(); - let __t120 = v_Z5686.clone(); + let __t117 = v_V5261.clone(); + let __t118 = v_V5262.clone(); + let __t119 = v_Z5266.clone(); rt::apply_direct( interp, "shen.pui-h", - &[__t118, __t119, __t120], + &[__t117, __t118, __t119], )? }) }, - vec![v_V5681, v_V5682], + vec![v_V5261, v_V5262], interp, ) }; - let __t123 = { - let __t122 = v_V5683.clone(); - rt::tl(&__t122)? + let __t122 = { + let __t121 = v_V5263.clone(); + rt::tl(&__t121)? }; - rt::apply_direct(interp, "map", &[__t121, __t123])? + rt::apply_direct(interp, "map", &[__t120, __t122])? }; - rt::cons(&__t117, &__t124) + rt::cons(&__t116, &__t123) }); } } @@ -797,12 +764,12 @@ pub fn aot_shen_x2e_pui_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenResult } } else { { - let __t90 = Value::bool(true); - if match rt::is_truthy(interp, &__t90) { + let __t89 = Value::bool(true); + if match rt::is_truthy(interp, &__t89) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5683.clone()); + break Ok(v_V5263.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -830,19 +797,19 @@ pub fn aot_shen_x2e_update_x2d_history(interp: &mut Interp, args: &[Value]) -> S #[allow(clippy::never_loop)] loop { break Ok({ - let __t157 = Value::sym(interp.intern("shen.*history*")); - let __t162 = { - let __t159 = { - let __t158 = { rt::apply_direct(interp, "it", &[])? }; - rt::apply_direct(interp, "shen.trim-it", &[__t158])? + let __t156 = Value::sym(interp.intern("shen.*history*")); + let __t161 = { + let __t158 = { + let __t157 = { rt::apply_direct(interp, "it", &[])? }; + rt::apply_direct(interp, "shen.trim-it", &[__t157])? }; - let __t161 = { - let __t160 = Value::sym(interp.intern("shen.*history*")); - rt::apply_direct(interp, "value", &[__t160])? + let __t160 = { + let __t159 = Value::sym(interp.intern("shen.*history*")); + rt::apply_direct(interp, "value", &[__t159])? }; - rt::cons(&__t159, &__t161) + rt::cons(&__t158, &__t160) }; - rt::apply_direct(interp, "set", &[__t157, __t162])? + rt::apply_direct(interp, "set", &[__t156, __t161])? }); } } @@ -861,51 +828,51 @@ pub fn aot_shen_x2e_trim_x2d_it(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V5687 = args[0].clone(); + let mut v_V5267 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t172 = { - let __t168 = { - let __t164 = v_V5687.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t164])? + let __t171 = { + let __t167 = { + let __t163 = v_V5267.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t163])? }; - if !rt::is_truthy(interp, &__t168)? { + if !rt::is_truthy(interp, &__t167)? { Value::bool(false) } else { - let __t169 = { - let __t167 = { - let __t166 = { - let __t165 = v_V5687.clone(); - rt::apply_direct(interp, "hdstr", &[__t165])? + let __t168 = { + let __t166 = { + let __t165 = { + let __t164 = v_V5267.clone(); + rt::apply_direct(interp, "hdstr", &[__t164])? }; - rt::apply_direct(interp, "string->n", &[__t166])? + rt::apply_direct(interp, "string->n", &[__t165])? }; - rt::apply_direct(interp, "shen.whitespace?", &[__t167])? + rt::apply_direct(interp, "shen.whitespace?", &[__t166])? }; - Value::bool(rt::is_truthy(interp, &__t169)?) + Value::bool(rt::is_truthy(interp, &__t168)?) } }; - if match rt::is_truthy(interp, &__t172) { + if match rt::is_truthy(interp, &__t171) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t171 = { - let __t170 = v_V5687.clone(); - rt::apply_direct(interp, "tlstr", &[__t170])? + let __t170 = { + let __t169 = v_V5267.clone(); + rt::apply_direct(interp, "tlstr", &[__t169])? }; - v_V5687 = __t171; + v_V5267 = __t170; continue; } } else { { - let __t163 = Value::bool(true); - if match rt::is_truthy(interp, &__t163) { + let __t162 = Value::bool(true); + if match rt::is_truthy(interp, &__t162) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5687.clone()); + break Ok(v_V5267.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -932,213 +899,213 @@ pub fn aot_shen_x2e_evaluate_x2d_lineread( ))); } #[allow(unused_mut)] - let mut v_V5706 = args[0].clone(); + let mut v_V5286 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5707 = args[1].clone(); + let mut v_V5287 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5708 = args[2].clone(); + let mut v_V5288 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t325 = { - let __t303 = { - let __t270 = v_V5706.clone(); - rt::is_cons(&__t270) + let __t324 = { + let __t302 = { + let __t269 = v_V5286.clone(); + rt::is_cons(&__t269) }; - if !rt::is_truthy(interp, &__t303)? { + if !rt::is_truthy(interp, &__t302)? { Value::bool(false) } else { - let __t304 = { - let __t301 = { - let __t271 = Value::nil(); - let __t273 = { - let __t272 = v_V5706.clone(); - rt::tl(&__t272)? + let __t303 = { + let __t300 = { + let __t270 = Value::nil(); + let __t272 = { + let __t271 = v_V5286.clone(); + rt::tl(&__t271)? }; - rt::eq(&__t271, &__t273) + rt::eq(&__t270, &__t272) }; - if !rt::is_truthy(interp, &__t301)? { + if !rt::is_truthy(interp, &__t300)? { Value::bool(false) } else { - let __t302 = { - let __t299 = { - let __t274 = v_V5707.clone(); - rt::is_cons(&__t274) + let __t301 = { + let __t298 = { + let __t273 = v_V5287.clone(); + rt::is_cons(&__t273) }; - if !rt::is_truthy(interp, &__t299)? { + if !rt::is_truthy(interp, &__t298)? { Value::bool(false) } else { - let __t300 = { - let __t297 = { - let __t276 = { - let __t275 = v_V5707.clone(); - rt::hd(&__t275)? + let __t299 = { + let __t296 = { + let __t275 = { + let __t274 = v_V5287.clone(); + rt::hd(&__t274)? }; - rt::apply_direct(interp, "shen.+string?", &[__t276])? + rt::apply_direct(interp, "shen.+string?", &[__t275])? }; - if !rt::is_truthy(interp, &__t297)? { + if !rt::is_truthy(interp, &__t296)? { Value::bool(false) } else { - let __t298 = { - let __t295 = { - let __t277 = Value::str("!"); - let __t280 = { - let __t279 = { - let __t278 = v_V5707.clone(); - rt::hd(&__t278)? + let __t297 = { + let __t294 = { + let __t276 = Value::str("!"); + let __t279 = { + let __t278 = { + let __t277 = v_V5287.clone(); + rt::hd(&__t277)? }; rt::apply_direct( interp, "hdstr", - &[__t279], + &[__t278], )? }; - rt::eq(&__t277, &__t280) + rt::eq(&__t276, &__t279) }; - if !rt::is_truthy(interp, &__t295)? { + if !rt::is_truthy(interp, &__t294)? { Value::bool(false) } else { - let __t296 = { - let __t293 = { - let __t283 = { - let __t282 = { - let __t281 = v_V5707.clone(); - rt::hd(&__t281)? + let __t295 = { + let __t292 = { + let __t282 = { + let __t281 = { + let __t280 = v_V5287.clone(); + rt::hd(&__t280)? }; rt::apply_direct( interp, "tlstr", - &[__t282], + &[__t281], )? }; rt::apply_direct( interp, "shen.+string?", - &[__t283], + &[__t282], )? }; - if !rt::is_truthy(interp, &__t293)? { + if !rt::is_truthy(interp, &__t292)? { Value::bool(false) } else { - let __t294 = { - let __t291 = { - let __t284 = Value::str("!"); - let __t288 = { - let __t287 = { - let __t286 = { - let __t285 = - v_V5707.clone(); - rt::hd(&__t285)? + let __t293 = { + let __t290 = { + let __t283 = Value::str("!"); + let __t287 = { + let __t286 = { + let __t285 = { + let __t284 = + v_V5287.clone(); + rt::hd(&__t284)? }; rt::apply_direct( interp, "tlstr", - &[__t286], + &[__t285], )? }; rt::apply_direct( interp, "hdstr", - &[__t287], + &[__t286], )? }; - rt::eq(&__t284, &__t288) + rt::eq(&__t283, &__t287) }; - if !rt::is_truthy(interp, &__t291)? + if !rt::is_truthy(interp, &__t290)? { Value::bool(false) } else { - let __t292 = { - let __t290 = { - let __t289 = - v_V5707.clone(); - rt::tl(&__t289)? + let __t291 = { + let __t289 = { + let __t288 = + v_V5287.clone(); + rt::tl(&__t288)? }; - rt::is_cons(&__t290) + rt::is_cons(&__t289) }; Value::bool(rt::is_truthy( - interp, &__t292, + interp, &__t291, )?) } }; Value::bool(rt::is_truthy( - interp, &__t294, + interp, &__t293, )?) } }; - Value::bool(rt::is_truthy(interp, &__t296)?) + Value::bool(rt::is_truthy(interp, &__t295)?) } }; - Value::bool(rt::is_truthy(interp, &__t298)?) + Value::bool(rt::is_truthy(interp, &__t297)?) } }; - Value::bool(rt::is_truthy(interp, &__t300)?) + Value::bool(rt::is_truthy(interp, &__t299)?) } }; - Value::bool(rt::is_truthy(interp, &__t302)?) + Value::bool(rt::is_truthy(interp, &__t301)?) } }; - Value::bool(rt::is_truthy(interp, &__t304)?) + Value::bool(rt::is_truthy(interp, &__t303)?) } }; - if match rt::is_truthy(interp, &__t325) { + if match rt::is_truthy(interp, &__t324) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5709 = { - let __t307 = { - let __t306 = { - let __t305 = v_V5707.clone(); - rt::tl(&__t305)? + let v_W5289 = { + let __t306 = { + let __t305 = { + let __t304 = v_V5287.clone(); + rt::tl(&__t304)? }; - rt::hd(&__t306)? + rt::hd(&__t305)? }; - rt::apply_direct(interp, "read-from-string", &[__t307])? + rt::apply_direct(interp, "read-from-string", &[__t306])? }; { - let v_W5710 = { - let __t308 = Value::sym(interp.intern("shen.*history*")); - let __t314 = { - let __t311 = { - let __t310 = { - let __t309 = v_V5707.clone(); - rt::tl(&__t309)? + let v_W5290 = { + let __t307 = Value::sym(interp.intern("shen.*history*")); + let __t313 = { + let __t310 = { + let __t309 = { + let __t308 = v_V5287.clone(); + rt::tl(&__t308)? }; - rt::hd(&__t310)? + rt::hd(&__t309)? }; - let __t313 = { - let __t312 = v_V5707.clone(); - rt::tl(&__t312)? + let __t312 = { + let __t311 = v_V5287.clone(); + rt::tl(&__t311)? }; - rt::cons(&__t311, &__t313) + rt::cons(&__t310, &__t312) }; - rt::apply_direct(interp, "set", &[__t308, __t314])? + rt::apply_direct(interp, "set", &[__t307, __t313])? }; { - let v_W5711 = { - let __t320 = { - let __t317 = { - let __t316 = { - let __t315 = v_V5707.clone(); - rt::tl(&__t315)? + let v_W5291 = { + let __t319 = { + let __t316 = { + let __t315 = { + let __t314 = v_V5287.clone(); + rt::tl(&__t314)? }; - rt::hd(&__t316)? + rt::hd(&__t315)? }; - let __t318 = Value::str("\n"); - let __t319 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t317, __t318, __t319])? + let __t317 = Value::str("\n"); + let __t318 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t316, __t317, __t318])? }; - let __t321 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t320, __t321])? + let __t320 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t319, __t320])? }; { - let __t322 = v_W5709.clone(); - let __t323 = v_W5710.clone(); - let __t324 = v_V5708.clone(); - v_V5706 = __t322; - v_V5707 = __t323; - v_V5708 = __t324; + let __t321 = v_W5289.clone(); + let __t322 = v_W5290.clone(); + let __t323 = v_V5288.clone(); + v_V5286 = __t321; + v_V5287 = __t322; + v_V5288 = __t323; continue; } } @@ -1146,172 +1113,172 @@ pub fn aot_shen_x2e_evaluate_x2d_lineread( } } else { { - let __t269 = { - let __t238 = { - let __t221 = v_V5706.clone(); - rt::is_cons(&__t221) + let __t268 = { + let __t237 = { + let __t220 = v_V5286.clone(); + rt::is_cons(&__t220) }; - if !rt::is_truthy(interp, &__t238)? { + if !rt::is_truthy(interp, &__t237)? { Value::bool(false) } else { - let __t239 = { - let __t236 = { - let __t222 = Value::nil(); - let __t224 = { - let __t223 = v_V5706.clone(); - rt::tl(&__t223)? + let __t238 = { + let __t235 = { + let __t221 = Value::nil(); + let __t223 = { + let __t222 = v_V5286.clone(); + rt::tl(&__t222)? }; - rt::eq(&__t222, &__t224) + rt::eq(&__t221, &__t223) }; - if !rt::is_truthy(interp, &__t236)? { + if !rt::is_truthy(interp, &__t235)? { Value::bool(false) } else { - let __t237 = { - let __t234 = { - let __t225 = v_V5707.clone(); - rt::is_cons(&__t225) + let __t236 = { + let __t233 = { + let __t224 = v_V5287.clone(); + rt::is_cons(&__t224) }; - if !rt::is_truthy(interp, &__t234)? { + if !rt::is_truthy(interp, &__t233)? { Value::bool(false) } else { - let __t235 = { - let __t232 = { - let __t227 = { - let __t226 = v_V5707.clone(); - rt::hd(&__t226)? + let __t234 = { + let __t231 = { + let __t226 = { + let __t225 = v_V5287.clone(); + rt::hd(&__t225)? }; rt::apply_direct( interp, "shen.+string?", - &[__t227], + &[__t226], )? }; - if !rt::is_truthy(interp, &__t232)? { + if !rt::is_truthy(interp, &__t231)? { Value::bool(false) } else { - let __t233 = { - let __t228 = Value::str("!"); - let __t231 = { - let __t230 = { - let __t229 = v_V5707.clone(); - rt::hd(&__t229)? + let __t232 = { + let __t227 = Value::str("!"); + let __t230 = { + let __t229 = { + let __t228 = v_V5287.clone(); + rt::hd(&__t228)? }; rt::apply_direct( interp, "hdstr", - &[__t230], + &[__t229], )? }; - rt::eq(&__t228, &__t231) + rt::eq(&__t227, &__t230) }; - Value::bool(rt::is_truthy(interp, &__t233)?) + Value::bool(rt::is_truthy(interp, &__t232)?) } }; - Value::bool(rt::is_truthy(interp, &__t235)?) + Value::bool(rt::is_truthy(interp, &__t234)?) } }; - Value::bool(rt::is_truthy(interp, &__t237)?) + Value::bool(rt::is_truthy(interp, &__t236)?) } }; - Value::bool(rt::is_truthy(interp, &__t239)?) + Value::bool(rt::is_truthy(interp, &__t238)?) } }; - if match rt::is_truthy(interp, &__t269) { + if match rt::is_truthy(interp, &__t268) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5712 = { - let __t248 = { - let __t242 = { - let __t241 = { - let __t240 = v_V5707.clone(); - rt::hd(&__t240)? + let v_W5292 = { + let __t247 = { + let __t241 = { + let __t240 = { + let __t239 = v_V5287.clone(); + rt::hd(&__t239)? }; - rt::apply_direct(interp, "tlstr", &[__t241])? + rt::apply_direct(interp, "tlstr", &[__t240])? }; - let __t243 = Value::str(""); - rt::eq(&__t242, &__t243) + let __t242 = Value::str(""); + rt::eq(&__t241, &__t242) }; - if rt::is_truthy(interp, &__t248)? { + if rt::is_truthy(interp, &__t247)? { Value::nil() } else { { - let __t247 = { - let __t246 = { - let __t245 = { - let __t244 = v_V5707.clone(); - rt::hd(&__t244)? + let __t246 = { + let __t245 = { + let __t244 = { + let __t243 = v_V5287.clone(); + rt::hd(&__t243)? }; - rt::apply_direct(interp, "tlstr", &[__t245])? + rt::apply_direct(interp, "tlstr", &[__t244])? }; - rt::apply_direct(interp, "read-from-string", &[__t246])? + rt::apply_direct(interp, "read-from-string", &[__t245])? }; - rt::hd(&__t247)? + rt::hd(&__t246)? } } }; { - let v_W5713 = { - let __t249 = v_W5712.clone(); - let __t252 = { - let __t251 = { - let __t250 = v_V5707.clone(); - rt::hd(&__t250)? + let v_W5293 = { + let __t248 = v_W5292.clone(); + let __t251 = { + let __t250 = { + let __t249 = v_V5287.clone(); + rt::hd(&__t249)? }; - rt::apply_direct(interp, "tlstr", &[__t251])? + rt::apply_direct(interp, "tlstr", &[__t250])? }; - let __t254 = { - let __t253 = v_V5707.clone(); - rt::tl(&__t253)? + let __t253 = { + let __t252 = v_V5287.clone(); + rt::tl(&__t252)? }; rt::apply_direct( interp, "shen.use-history", - &[__t249, __t252, __t254], + &[__t248, __t251, __t253], )? }; { - let v_W5714 = { - let __t258 = { - let __t255 = v_W5713.clone(); - let __t256 = Value::str("\n"); - let __t257 = Value::sym(interp.intern("shen.a")); + let v_W5294 = { + let __t257 = { + let __t254 = v_W5293.clone(); + let __t255 = Value::str("\n"); + let __t256 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t255, __t256, __t257], + &[__t254, __t255, __t256], )? }; - let __t259 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t258, __t259])? + let __t258 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t257, __t258])? }; { - let v_W5715 = { - let __t260 = v_W5713.clone(); - rt::apply_direct(interp, "read-from-string", &[__t260])? + let v_W5295 = { + let __t259 = v_W5293.clone(); + rt::apply_direct(interp, "read-from-string", &[__t259])? }; { - let v_W5716 = { - let __t261 = + let v_W5296 = { + let __t260 = Value::sym(interp.intern("shen.*history*")); - let __t265 = { - let __t262 = v_W5713.clone(); - let __t264 = { - let __t263 = v_V5707.clone(); - rt::tl(&__t263)? + let __t264 = { + let __t261 = v_W5293.clone(); + let __t263 = { + let __t262 = v_V5287.clone(); + rt::tl(&__t262)? }; - rt::cons(&__t262, &__t264) + rt::cons(&__t261, &__t263) }; - rt::apply_direct(interp, "set", &[__t261, __t265])? + rt::apply_direct(interp, "set", &[__t260, __t264])? }; { - let __t266 = v_W5715.clone(); - let __t267 = v_W5716.clone(); - let __t268 = v_V5708.clone(); - v_V5706 = __t266; - v_V5707 = __t267; - v_V5708 = __t268; + let __t265 = v_W5295.clone(); + let __t266 = v_W5296.clone(); + let __t267 = v_V5288.clone(); + v_V5286 = __t265; + v_V5287 = __t266; + v_V5288 = __t267; continue; } } @@ -1321,151 +1288,151 @@ pub fn aot_shen_x2e_evaluate_x2d_lineread( } } else { { - let __t220 = { - let __t200 = { - let __t183 = v_V5706.clone(); - rt::is_cons(&__t183) + let __t219 = { + let __t199 = { + let __t182 = v_V5286.clone(); + rt::is_cons(&__t182) }; - if !rt::is_truthy(interp, &__t200)? { + if !rt::is_truthy(interp, &__t199)? { Value::bool(false) } else { - let __t201 = { - let __t198 = { - let __t184 = Value::nil(); - let __t186 = { - let __t185 = v_V5706.clone(); - rt::tl(&__t185)? + let __t200 = { + let __t197 = { + let __t183 = Value::nil(); + let __t185 = { + let __t184 = v_V5286.clone(); + rt::tl(&__t184)? }; - rt::eq(&__t184, &__t186) + rt::eq(&__t183, &__t185) }; - if !rt::is_truthy(interp, &__t198)? { + if !rt::is_truthy(interp, &__t197)? { Value::bool(false) } else { - let __t199 = { - let __t196 = { - let __t187 = v_V5707.clone(); - rt::is_cons(&__t187) + let __t198 = { + let __t195 = { + let __t186 = v_V5287.clone(); + rt::is_cons(&__t186) }; - if !rt::is_truthy(interp, &__t196)? { + if !rt::is_truthy(interp, &__t195)? { Value::bool(false) } else { - let __t197 = { - let __t194 = { - let __t189 = { - let __t188 = v_V5707.clone(); - rt::hd(&__t188)? + let __t196 = { + let __t193 = { + let __t188 = { + let __t187 = v_V5287.clone(); + rt::hd(&__t187)? }; rt::apply_direct( interp, "shen.+string?", - &[__t189], + &[__t188], )? }; - if !rt::is_truthy(interp, &__t194)? { + if !rt::is_truthy(interp, &__t193)? { Value::bool(false) } else { - let __t195 = { - let __t190 = Value::str("%"); - let __t193 = { - let __t192 = { - let __t191 = - v_V5707.clone(); - rt::hd(&__t191)? + let __t194 = { + let __t189 = Value::str("%"); + let __t192 = { + let __t191 = { + let __t190 = + v_V5287.clone(); + rt::hd(&__t190)? }; rt::apply_direct( interp, "hdstr", - &[__t192], + &[__t191], )? }; - rt::eq(&__t190, &__t193) + rt::eq(&__t189, &__t192) }; Value::bool(rt::is_truthy( - interp, &__t195, + interp, &__t194, )?) } }; - Value::bool(rt::is_truthy(interp, &__t197)?) + Value::bool(rt::is_truthy(interp, &__t196)?) } }; - Value::bool(rt::is_truthy(interp, &__t199)?) + Value::bool(rt::is_truthy(interp, &__t198)?) } }; - Value::bool(rt::is_truthy(interp, &__t201)?) + Value::bool(rt::is_truthy(interp, &__t200)?) } }; - if match rt::is_truthy(interp, &__t220) { + if match rt::is_truthy(interp, &__t219) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W5717 = { - let __t210 = { - let __t204 = { - let __t203 = { - let __t202 = v_V5707.clone(); - rt::hd(&__t202)? + let v_W5297 = { + let __t209 = { + let __t203 = { + let __t202 = { + let __t201 = v_V5287.clone(); + rt::hd(&__t201)? }; - rt::apply_direct(interp, "tlstr", &[__t203])? + rt::apply_direct(interp, "tlstr", &[__t202])? }; - let __t205 = Value::str(""); - rt::eq(&__t204, &__t205) + let __t204 = Value::str(""); + rt::eq(&__t203, &__t204) }; - if rt::is_truthy(interp, &__t210)? { + if rt::is_truthy(interp, &__t209)? { Value::nil() } else { { - let __t209 = { - let __t208 = { - let __t207 = { - let __t206 = v_V5707.clone(); - rt::hd(&__t206)? + let __t208 = { + let __t207 = { + let __t206 = { + let __t205 = v_V5287.clone(); + rt::hd(&__t205)? }; rt::apply_direct( interp, "tlstr", - &[__t207], + &[__t206], )? }; rt::apply_direct( interp, "read-from-string", - &[__t208], + &[__t207], )? }; - rt::hd(&__t209)? + rt::hd(&__t208)? } } }; { - let v_W5718 = { - let __t211 = v_W5717.clone(); - let __t214 = { - let __t213 = { - let __t212 = v_V5707.clone(); - rt::hd(&__t212)? + let v_W5298 = { + let __t210 = v_W5297.clone(); + let __t213 = { + let __t212 = { + let __t211 = v_V5287.clone(); + rt::hd(&__t211)? }; - rt::apply_direct(interp, "tlstr", &[__t213])? + rt::apply_direct(interp, "tlstr", &[__t212])? }; - let __t216 = { - let __t215 = v_V5707.clone(); - rt::tl(&__t215)? + let __t215 = { + let __t214 = v_V5287.clone(); + rt::tl(&__t214)? }; rt::apply_direct( interp, "shen.peek-history", - &[__t211, __t214, __t216], + &[__t210, __t213, __t215], )? }; { - let v_W5719 = { - let __t217 = + let v_W5299 = { + let __t216 = Value::sym(interp.intern("shen.*history*")); - let __t219 = { - let __t218 = v_V5707.clone(); - rt::tl(&__t218)? + let __t218 = { + let __t217 = v_V5287.clone(); + rt::tl(&__t217)? }; - rt::apply_direct(interp, "set", &[__t217, __t219])? + rt::apply_direct(interp, "set", &[__t216, __t218])? }; break Ok({ rt::apply_direct(interp, "abort", &[])? }); } @@ -1473,55 +1440,55 @@ pub fn aot_shen_x2e_evaluate_x2d_lineread( } } else { { - let __t182 = { - let __t179 = Value::bool(true); - let __t180 = v_V5708.clone(); - rt::eq(&__t179, &__t180) + let __t181 = { + let __t178 = Value::bool(true); + let __t179 = v_V5288.clone(); + rt::eq(&__t178, &__t179) }; - if match rt::is_truthy(interp, &__t182) { + if match rt::is_truthy(interp, &__t181) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t181 = v_V5706.clone(); + let __t180 = v_V5286.clone(); rt::apply_direct( interp, "shen.check-eval-and-print", - &[__t181], + &[__t180], )? }); } else { { - let __t178 = { - let __t175 = Value::bool(false); - let __t176 = v_V5708.clone(); - rt::eq(&__t175, &__t176) + let __t177 = { + let __t174 = Value::bool(false); + let __t175 = v_V5288.clone(); + rt::eq(&__t174, &__t175) }; - if match rt::is_truthy(interp, &__t178) { + if match rt::is_truthy(interp, &__t177) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t177 = v_V5706.clone(); + let __t176 = v_V5286.clone(); rt::apply_direct( interp, "shen.eval-and-print", - &[__t177], + &[__t176], )? }); } else { { - let __t174 = Value::bool(true); - if match rt::is_truthy(interp, &__t174) { + let __t173 = Value::bool(true); + if match rt::is_truthy(interp, &__t173) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t173 = Value::str("implementation error in shen.evaluate-lineread"); + let __t172 = Value::str("implementation error in shen.evaluate-lineread"); rt::apply_direct( interp, "simple-error", - &[__t173], + &[__t172], )? }); } else { @@ -1561,53 +1528,53 @@ pub fn aot_shen_x2e_use_x2d_history(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5720 = args[0].clone(); + let mut v_V5300 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5721 = args[1].clone(); + let mut v_V5301 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5722 = args[2].clone(); + let mut v_V5302 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t327 = { - let __t326 = v_V5720.clone(); - rt::apply_direct(interp, "integer?", &[__t326])? + let __t326 = { + let __t325 = v_V5300.clone(); + rt::apply_direct(interp, "integer?", &[__t325])? }; - if match rt::is_truthy(interp, &__t327) { + if match rt::is_truthy(interp, &__t326) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t330 = { - let __t328 = Value::int(1i64); - let __t329 = v_V5720.clone(); - rt::add(&__t328, &__t329)? + let __t329 = { + let __t327 = Value::int(1i64); + let __t328 = v_V5300.clone(); + rt::add(&__t327, &__t328)? }; - let __t332 = { - let __t331 = v_V5722.clone(); - rt::apply_direct(interp, "reverse", &[__t331])? + let __t331 = { + let __t330 = v_V5302.clone(); + rt::apply_direct(interp, "reverse", &[__t330])? }; - rt::apply_direct(interp, "nth", &[__t330, __t332])? + rt::apply_direct(interp, "nth", &[__t329, __t331])? }); } else { { - let __t334 = { - let __t333 = v_V5720.clone(); - rt::is_symbol(&__t333) + let __t333 = { + let __t332 = v_V5300.clone(); + rt::is_symbol(&__t332) }; - if match rt::is_truthy(interp, &__t334) { + if match rt::is_truthy(interp, &__t333) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t335 = v_V5721.clone(); - let __t336 = v_V5722.clone(); - rt::apply_direct(interp, "shen.string-match", &[__t335, __t336])? + let __t334 = v_V5301.clone(); + let __t335 = v_V5302.clone(); + rt::apply_direct(interp, "shen.string-match", &[__t334, __t335])? }); } else { break Ok({ - let __t337 = Value::str("! expects a number or a symbol\n"); - rt::apply_direct(interp, "simple-error", &[__t337])? + let __t336 = Value::str("! expects a number or a symbol\n"); + rt::apply_direct(interp, "simple-error", &[__t336])? }); } } @@ -1630,86 +1597,86 @@ pub fn aot_shen_x2e_peek_x2d_history(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5723 = args[0].clone(); + let mut v_V5303 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5724 = args[1].clone(); + let mut v_V5304 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5725 = args[2].clone(); + let mut v_V5305 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t339 = { - let __t338 = v_V5723.clone(); - rt::apply_direct(interp, "integer?", &[__t338])? + let __t338 = { + let __t337 = v_V5303.clone(); + rt::apply_direct(interp, "integer?", &[__t337])? }; - if match rt::is_truthy(interp, &__t339) { + if match rt::is_truthy(interp, &__t338) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t350 = { - let __t340 = Value::str("\n"); - let __t349 = { - let __t346 = { - let __t343 = { - let __t341 = Value::int(1i64); - let __t342 = v_V5723.clone(); - rt::add(&__t341, &__t342)? + let __t349 = { + let __t339 = Value::str("\n"); + let __t348 = { + let __t345 = { + let __t342 = { + let __t340 = Value::int(1i64); + let __t341 = v_V5303.clone(); + rt::add(&__t340, &__t341)? }; - let __t345 = { - let __t344 = v_V5725.clone(); - rt::apply_direct(interp, "reverse", &[__t344])? + let __t344 = { + let __t343 = v_V5305.clone(); + rt::apply_direct(interp, "reverse", &[__t343])? }; - rt::apply_direct(interp, "nth", &[__t343, __t345])? + rt::apply_direct(interp, "nth", &[__t342, __t344])? }; - let __t347 = Value::str(""); - let __t348 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.app", &[__t346, __t347, __t348])? + let __t346 = Value::str(""); + let __t347 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.app", &[__t345, __t346, __t347])? }; - rt::apply_direct(interp, "cn", &[__t340, __t349])? + rt::apply_direct(interp, "cn", &[__t339, __t348])? }; - let __t351 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t350, __t351])? + let __t350 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t349, __t350])? }); } else { { - let __t357 = { - let __t355 = { - let __t352 = v_V5724.clone(); - let __t353 = Value::str(""); - rt::eq(&__t352, &__t353) + let __t356 = { + let __t354 = { + let __t351 = v_V5304.clone(); + let __t352 = Value::str(""); + rt::eq(&__t351, &__t352) }; - if rt::is_truthy(interp, &__t355)? { + if rt::is_truthy(interp, &__t354)? { Value::bool(true) } else { - let __t356 = { - let __t354 = v_V5723.clone(); - rt::is_symbol(&__t354) + let __t355 = { + let __t353 = v_V5303.clone(); + rt::is_symbol(&__t353) }; - Value::bool(rt::is_truthy(interp, &__t356)?) + Value::bool(rt::is_truthy(interp, &__t355)?) } }; - if match rt::is_truthy(interp, &__t357) { + if match rt::is_truthy(interp, &__t356) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t358 = Value::int(0i64); - let __t359 = v_V5724.clone(); - let __t361 = { - let __t360 = v_V5725.clone(); - rt::apply_direct(interp, "reverse", &[__t360])? + let __t357 = Value::int(0i64); + let __t358 = v_V5304.clone(); + let __t360 = { + let __t359 = v_V5305.clone(); + rt::apply_direct(interp, "reverse", &[__t359])? }; rt::apply_direct( interp, "shen.recursive-string-match", - &[__t358, __t359, __t361], + &[__t357, __t358, __t360], )? }); } else { break Ok({ - let __t362 = Value::str("% expects a number or a symbol\n"); - rt::apply_direct(interp, "simple-error", &[__t362])? + let __t361 = Value::str("% expects a number or a symbol\n"); + rt::apply_direct(interp, "simple-error", &[__t361])? }); } } @@ -1732,86 +1699,86 @@ pub fn aot_shen_x2e_string_x2d_match(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5735 = args[0].clone(); + let mut v_V5315 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5736 = args[1].clone(); + let mut v_V5316 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t381 = { - let __t378 = Value::nil(); - let __t379 = v_V5736.clone(); - rt::eq(&__t378, &__t379) + let __t380 = { + let __t377 = Value::nil(); + let __t378 = v_V5316.clone(); + rt::eq(&__t377, &__t378) }; - if match rt::is_truthy(interp, &__t381) { + if match rt::is_truthy(interp, &__t380) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t380 = Value::str("\ninput not found"); - rt::apply_direct(interp, "simple-error", &[__t380])? + let __t379 = Value::str("\ninput not found"); + rt::apply_direct(interp, "simple-error", &[__t379])? }); } else { { - let __t377 = { - let __t374 = { - let __t370 = v_V5736.clone(); - rt::is_cons(&__t370) + let __t376 = { + let __t373 = { + let __t369 = v_V5316.clone(); + rt::is_cons(&__t369) }; - if !rt::is_truthy(interp, &__t374)? { + if !rt::is_truthy(interp, &__t373)? { Value::bool(false) } else { - let __t375 = { - let __t371 = v_V5735.clone(); - let __t373 = { - let __t372 = v_V5736.clone(); - rt::hd(&__t372)? + let __t374 = { + let __t370 = v_V5315.clone(); + let __t372 = { + let __t371 = v_V5316.clone(); + rt::hd(&__t371)? }; - rt::apply_direct(interp, "shen.string-prefix?", &[__t371, __t373])? + rt::apply_direct(interp, "shen.string-prefix?", &[__t370, __t372])? }; - Value::bool(rt::is_truthy(interp, &__t375)?) + Value::bool(rt::is_truthy(interp, &__t374)?) } }; - if match rt::is_truthy(interp, &__t377) { + if match rt::is_truthy(interp, &__t376) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t376 = v_V5736.clone(); - rt::hd(&__t376)? + let __t375 = v_V5316.clone(); + rt::hd(&__t375)? }); } else { { - let __t369 = { - let __t365 = v_V5736.clone(); - rt::is_cons(&__t365) + let __t368 = { + let __t364 = v_V5316.clone(); + rt::is_cons(&__t364) }; - if match rt::is_truthy(interp, &__t369) { + if match rt::is_truthy(interp, &__t368) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t366 = v_V5735.clone(); - let __t368 = { - let __t367 = v_V5736.clone(); - rt::tl(&__t367)? + let __t365 = v_V5315.clone(); + let __t367 = { + let __t366 = v_V5316.clone(); + rt::tl(&__t366)? }; - v_V5735 = __t366; - v_V5736 = __t368; + v_V5315 = __t365; + v_V5316 = __t367; continue; } } else { { - let __t364 = Value::bool(true); - if match rt::is_truthy(interp, &__t364) { + let __t363 = Value::bool(true); + if match rt::is_truthy(interp, &__t363) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t363 = Value::str( + let __t362 = Value::str( "implementation error in shen.string-match", ); - rt::apply_direct(interp, "simple-error", &[__t363])? + rt::apply_direct(interp, "simple-error", &[__t362])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1843,213 +1810,213 @@ pub fn aot_shen_x2e_string_x2d_prefix_x3f_( ))); } #[allow(unused_mut)] - let mut v_V5744 = args[0].clone(); + let mut v_V5324 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5745 = args[1].clone(); + let mut v_V5325 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t430 = { - let __t428 = Value::str(""); - let __t429 = v_V5744.clone(); - rt::eq(&__t428, &__t429) + let __t429 = { + let __t427 = Value::str(""); + let __t428 = v_V5324.clone(); + rt::eq(&__t427, &__t428) }; - if match rt::is_truthy(interp, &__t430) { + if match rt::is_truthy(interp, &__t429) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t427 = { - let __t422 = { - let __t418 = v_V5744.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t418])? + let __t426 = { + let __t421 = { + let __t417 = v_V5324.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t417])? }; - if !rt::is_truthy(interp, &__t422)? { + if !rt::is_truthy(interp, &__t421)? { Value::bool(false) } else { - let __t423 = { - let __t421 = { - let __t420 = { - let __t419 = v_V5744.clone(); - rt::apply_direct(interp, "hdstr", &[__t419])? + let __t422 = { + let __t420 = { + let __t419 = { + let __t418 = v_V5324.clone(); + rt::apply_direct(interp, "hdstr", &[__t418])? }; - rt::apply_direct(interp, "string->n", &[__t420])? + rt::apply_direct(interp, "string->n", &[__t419])? }; - rt::apply_direct(interp, "shen.whitespace?", &[__t421])? + rt::apply_direct(interp, "shen.whitespace?", &[__t420])? }; - Value::bool(rt::is_truthy(interp, &__t423)?) + Value::bool(rt::is_truthy(interp, &__t422)?) } }; - if match rt::is_truthy(interp, &__t427) { + if match rt::is_truthy(interp, &__t426) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t425 = { - let __t424 = v_V5744.clone(); - rt::apply_direct(interp, "tlstr", &[__t424])? + let __t424 = { + let __t423 = v_V5324.clone(); + rt::apply_direct(interp, "tlstr", &[__t423])? }; - let __t426 = v_V5745.clone(); - v_V5744 = __t425; - v_V5745 = __t426; + let __t425 = v_V5325.clone(); + v_V5324 = __t424; + v_V5325 = __t425; continue; } } else { { - let __t417 = { - let __t412 = { - let __t408 = v_V5745.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t408])? + let __t416 = { + let __t411 = { + let __t407 = v_V5325.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t407])? }; - if !rt::is_truthy(interp, &__t412)? { + if !rt::is_truthy(interp, &__t411)? { Value::bool(false) } else { - let __t413 = { - let __t411 = { - let __t410 = { - let __t409 = v_V5745.clone(); - rt::apply_direct(interp, "hdstr", &[__t409])? + let __t412 = { + let __t410 = { + let __t409 = { + let __t408 = v_V5325.clone(); + rt::apply_direct(interp, "hdstr", &[__t408])? }; - rt::apply_direct(interp, "string->n", &[__t410])? + rt::apply_direct(interp, "string->n", &[__t409])? }; - rt::apply_direct(interp, "shen.whitespace?", &[__t411])? + rt::apply_direct(interp, "shen.whitespace?", &[__t410])? }; - Value::bool(rt::is_truthy(interp, &__t413)?) + Value::bool(rt::is_truthy(interp, &__t412)?) } }; - if match rt::is_truthy(interp, &__t417) { + if match rt::is_truthy(interp, &__t416) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t414 = v_V5744.clone(); - let __t416 = { - let __t415 = v_V5745.clone(); - rt::apply_direct(interp, "tlstr", &[__t415])? + let __t413 = v_V5324.clone(); + let __t415 = { + let __t414 = v_V5325.clone(); + rt::apply_direct(interp, "tlstr", &[__t414])? }; - v_V5744 = __t414; - v_V5745 = __t416; + v_V5324 = __t413; + v_V5325 = __t415; continue; } } else { { - let __t407 = { - let __t402 = { - let __t398 = v_V5745.clone(); - rt::apply_direct(interp, "shen.+string?", &[__t398])? + let __t406 = { + let __t401 = { + let __t397 = v_V5325.clone(); + rt::apply_direct(interp, "shen.+string?", &[__t397])? }; - if !rt::is_truthy(interp, &__t402)? { + if !rt::is_truthy(interp, &__t401)? { Value::bool(false) } else { - let __t403 = { - let __t399 = Value::str("("); - let __t401 = { - let __t400 = v_V5745.clone(); - rt::apply_direct(interp, "hdstr", &[__t400])? + let __t402 = { + let __t398 = Value::str("("); + let __t400 = { + let __t399 = v_V5325.clone(); + rt::apply_direct(interp, "hdstr", &[__t399])? }; - rt::eq(&__t399, &__t401) + rt::eq(&__t398, &__t400) }; - Value::bool(rt::is_truthy(interp, &__t403)?) + Value::bool(rt::is_truthy(interp, &__t402)?) } }; - if match rt::is_truthy(interp, &__t407) { + if match rt::is_truthy(interp, &__t406) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t404 = v_V5744.clone(); - let __t406 = { - let __t405 = v_V5745.clone(); - rt::apply_direct(interp, "tlstr", &[__t405])? + let __t403 = v_V5324.clone(); + let __t405 = { + let __t404 = v_V5325.clone(); + rt::apply_direct(interp, "tlstr", &[__t404])? }; - v_V5744 = __t404; - v_V5745 = __t406; + v_V5324 = __t403; + v_V5325 = __t405; continue; } } else { { - let __t397 = { - let __t391 = { - let __t383 = v_V5744.clone(); + let __t396 = { + let __t390 = { + let __t382 = v_V5324.clone(); rt::apply_direct( interp, "shen.+string?", - &[__t383], + &[__t382], )? }; - if !rt::is_truthy(interp, &__t391)? { + if !rt::is_truthy(interp, &__t390)? { Value::bool(false) } else { - let __t392 = { - let __t389 = { - let __t384 = v_V5745.clone(); + let __t391 = { + let __t388 = { + let __t383 = v_V5325.clone(); rt::apply_direct( interp, "shen.+string?", - &[__t384], + &[__t383], )? }; - if !rt::is_truthy(interp, &__t389)? { + if !rt::is_truthy(interp, &__t388)? { Value::bool(false) } else { - let __t390 = { - let __t386 = { - let __t385 = v_V5744.clone(); + let __t389 = { + let __t385 = { + let __t384 = v_V5324.clone(); rt::apply_direct( interp, "hdstr", - &[__t385], + &[__t384], )? }; - let __t388 = { - let __t387 = v_V5745.clone(); + let __t387 = { + let __t386 = v_V5325.clone(); rt::apply_direct( interp, "hdstr", - &[__t387], + &[__t386], )? }; - rt::eq(&__t386, &__t388) + rt::eq(&__t385, &__t387) }; Value::bool(rt::is_truthy( - interp, &__t390, + interp, &__t389, )?) } }; - Value::bool(rt::is_truthy(interp, &__t392)?) + Value::bool(rt::is_truthy(interp, &__t391)?) } }; - if match rt::is_truthy(interp, &__t397) { + if match rt::is_truthy(interp, &__t396) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t394 = { - let __t393 = v_V5744.clone(); + let __t393 = { + let __t392 = v_V5324.clone(); rt::apply_direct( interp, "tlstr", - &[__t393], + &[__t392], )? }; - let __t396 = { - let __t395 = v_V5745.clone(); + let __t395 = { + let __t394 = v_V5325.clone(); rt::apply_direct( interp, "tlstr", - &[__t395], + &[__t394], )? }; - v_V5744 = __t394; - v_V5745 = __t396; + v_V5324 = __t393; + v_V5325 = __t395; continue; } } else { { - let __t382 = Value::bool(true); - if match rt::is_truthy(interp, &__t382) { + let __t381 = Value::bool(true); + if match rt::is_truthy(interp, &__t381) { Ok(b) => b, Err(e) => break Err(e), } { @@ -2094,113 +2061,113 @@ pub fn aot_shen_x2e_recursive_x2d_string_x2d_match( ))); } #[allow(unused_mut)] - let mut v_V5756 = args[0].clone(); + let mut v_V5336 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5757 = args[1].clone(); + let mut v_V5337 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5758 = args[2].clone(); + let mut v_V5338 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t458 = { - let __t456 = Value::nil(); - let __t457 = v_V5758.clone(); - rt::eq(&__t456, &__t457) + let __t457 = { + let __t455 = Value::nil(); + let __t456 = v_V5338.clone(); + rt::eq(&__t455, &__t456) }; - if match rt::is_truthy(interp, &__t458) { + if match rt::is_truthy(interp, &__t457) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::sym(interp.intern("shen.skip"))); } else { { - let __t455 = { - let __t433 = v_V5758.clone(); - rt::is_cons(&__t433) + let __t454 = { + let __t432 = v_V5338.clone(); + rt::is_cons(&__t432) }; - if match rt::is_truthy(interp, &__t455) { + if match rt::is_truthy(interp, &__t454) { Ok(b) => b, Err(e) => break Err(e), } { { let _ = { - let __t448 = { - let __t434 = v_V5757.clone(); - let __t436 = { - let __t435 = v_V5758.clone(); - rt::hd(&__t435)? + let __t447 = { + let __t433 = v_V5337.clone(); + let __t435 = { + let __t434 = v_V5338.clone(); + rt::hd(&__t434)? }; rt::apply_direct( interp, "shen.string-prefix?", - &[__t434, __t436], + &[__t433, __t435], )? }; - if rt::is_truthy(interp, &__t448)? { + if rt::is_truthy(interp, &__t447)? { { - let __t446 = { - let __t437 = v_V5756.clone(); - let __t444 = { - let __t438 = Value::str(". "); - let __t443 = { - let __t440 = { - let __t439 = v_V5758.clone(); - rt::hd(&__t439)? + let __t445 = { + let __t436 = v_V5336.clone(); + let __t443 = { + let __t437 = Value::str(". "); + let __t442 = { + let __t439 = { + let __t438 = v_V5338.clone(); + rt::hd(&__t438)? }; - let __t441 = Value::str("\n"); - let __t442 = + let __t440 = Value::str("\n"); + let __t441 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t440, __t441, __t442], + &[__t439, __t440, __t441], )? }; - rt::apply_direct(interp, "cn", &[__t438, __t443])? + rt::apply_direct(interp, "cn", &[__t437, __t442])? }; - let __t445 = Value::sym(interp.intern("shen.a")); + let __t444 = Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, "shen.app", - &[__t437, __t444, __t445], + &[__t436, __t443, __t444], )? }; - let __t447 = { rt::apply_direct(interp, "stoutput", &[])? }; - rt::apply_direct(interp, "pr", &[__t446, __t447])? + let __t446 = { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t445, __t446])? } } else { Value::sym(interp.intern("shen.skip")) } }; { - let __t451 = { - let __t449 = v_V5756.clone(); - let __t450 = Value::int(1i64); - rt::add(&__t449, &__t450)? + let __t450 = { + let __t448 = v_V5336.clone(); + let __t449 = Value::int(1i64); + rt::add(&__t448, &__t449)? }; - let __t452 = v_V5757.clone(); - let __t454 = { - let __t453 = v_V5758.clone(); - rt::tl(&__t453)? + let __t451 = v_V5337.clone(); + let __t453 = { + let __t452 = v_V5338.clone(); + rt::tl(&__t452)? }; - v_V5756 = __t451; - v_V5757 = __t452; - v_V5758 = __t454; + v_V5336 = __t450; + v_V5337 = __t451; + v_V5338 = __t453; continue; } } } else { { - let __t432 = Value::bool(true); - if match rt::is_truthy(interp, &__t432) { + let __t431 = Value::bool(true); + if match rt::is_truthy(interp, &__t431) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t431 = Value::str( + let __t430 = Value::str( "implementation error in shen.recursive-string-match", ); - rt::apply_direct(interp, "simple-error", &[__t431])? + rt::apply_direct(interp, "simple-error", &[__t430])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -2228,9 +2195,8 @@ fn install_shen_x2e_recursive_x2d_string_x2d_match(interp: &mut Interp) { /// Register every AOT-compiled function on `interp`. Call after kernel /// boot so these names override the tree-walked defuns. pub fn install(interp: &mut Interp) { - install_shen_x2e_repl(interp); + install_shen_x2e_shen(interp); install_shen_x2e_loop(interp); - install_shen_x2e_toplevel_x2d_display_x2d_exception(interp); install_shen_x2e_credits(interp); install_shen_x2e_initialise_environment(interp); install_shen_x2e_prompt(interp); diff --git a/crates/shen-rust/src/aot/kernel/track.rs b/crates/shen-rust/src/aot/kernel/track.rs index 3a1e73a..3fbc096 100644 --- a/crates/shen-rust/src/aot/kernel/track.rs +++ b/crates/shen-rust/src/aot/kernel/track.rs @@ -32,7 +32,7 @@ pub fn aot_shen_x2e_f_x2d_error(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V5790 = args[0].clone(); + let mut v_V5370 = args[0].clone(); #[allow(clippy::never_loop)] loop { { @@ -40,7 +40,7 @@ pub fn aot_shen_x2e_f_x2d_error(interp: &mut Interp, args: &[Value]) -> ShenResu let __t5 = { let __t0 = Value::str("partial function "); let __t4 = { - let __t1 = v_V5790.clone(); + let __t1 = v_V5370.clone(); let __t2 = Value::str(";\n"); let __t3 = Value::sym(interp.intern("shen.a")); rt::apply_direct(interp, "shen.app", &[__t1, __t2, __t3])? @@ -55,7 +55,7 @@ pub fn aot_shen_x2e_f_x2d_error(interp: &mut Interp, args: &[Value]) -> ShenResu let __t19 = { let __t15 = { let __t8 = { - let __t7 = v_V5790.clone(); + let __t7 = v_V5370.clone(); rt::apply_direct(interp, "shen.tracked?", &[__t7])? }; rt::apply_direct(interp, "not", &[__t8])? @@ -67,7 +67,7 @@ pub fn aot_shen_x2e_f_x2d_error(interp: &mut Interp, args: &[Value]) -> ShenResu let __t14 = { let __t9 = Value::str("track "); let __t13 = { - let __t10 = v_V5790.clone(); + let __t10 = v_V5370.clone(); let __t11 = Value::str("? "); let __t12 = Value::sym(interp.intern("shen.a")); rt::apply_direct( @@ -86,7 +86,7 @@ pub fn aot_shen_x2e_f_x2d_error(interp: &mut Interp, args: &[Value]) -> ShenResu if rt::is_truthy(interp, &__t19)? { { let __t18 = { - let __t17 = v_V5790.clone(); + let __t17 = v_V5370.clone(); rt::apply_direct(interp, "ps", &[__t17])? }; rt::apply_direct(interp, "shen.track-function", &[__t18])? @@ -118,11 +118,11 @@ pub fn aot_shen_x2e_tracked_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V5791 = args[0].clone(); + let mut v_V5371 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t21 = v_V5791.clone(); + let __t21 = v_V5371.clone(); let __t23 = { let __t22 = Value::sym(interp.intern("shen.*tracking*")); rt::apply_direct(interp, "value", &[__t22])? @@ -146,16 +146,16 @@ pub fn aot_track(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5792 = args[0].clone(); + let mut v_V5372 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5793 = { - let __t24 = v_V5792.clone(); + let v_W5373 = { + let __t24 = v_V5372.clone(); rt::apply_direct(interp, "ps", &[__t24])? }; break Ok({ - let __t25 = v_W5793.clone(); + let __t25 = v_W5373.clone(); rt::apply_direct(interp, "shen.track-function", &[__t25])? }); } @@ -176,13 +176,13 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S ))); } #[allow(unused_mut)] - let mut v_V5796 = args[0].clone(); + let mut v_V5376 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t92 = { let __t55 = { - let __t28 = v_V5796.clone(); + let __t28 = v_V5376.clone(); rt::is_cons(&__t28) }; if !rt::is_truthy(interp, &__t55)? { @@ -192,7 +192,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t53 = { let __t29 = Value::sym(interp.intern("defun")); let __t31 = { - let __t30 = v_V5796.clone(); + let __t30 = v_V5376.clone(); rt::hd(&__t30)? }; rt::eq(&__t29, &__t31) @@ -203,7 +203,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t54 = { let __t51 = { let __t33 = { - let __t32 = v_V5796.clone(); + let __t32 = v_V5376.clone(); rt::tl(&__t32)? }; rt::is_cons(&__t33) @@ -215,7 +215,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t49 = { let __t36 = { let __t35 = { - let __t34 = v_V5796.clone(); + let __t34 = v_V5376.clone(); rt::tl(&__t34)? }; rt::tl(&__t35)? @@ -230,7 +230,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t40 = { let __t39 = { let __t38 = { - let __t37 = v_V5796.clone(); + let __t37 = v_V5376.clone(); rt::tl(&__t37)? }; rt::tl(&__t38)? @@ -248,7 +248,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t45 = { let __t44 = { let __t43 = { - let __t42 = v_V5796.clone(); + let __t42 = v_V5376.clone(); rt::tl(&__t42)? }; rt::tl(&__t43)? @@ -279,12 +279,12 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S Err(e) => break Err(e), } { { - let v_W5797 = { + let v_W5377 = { let __t57 = Value::sym(interp.intern("defun")); let __t81 = { let __t60 = { let __t59 = { - let __t58 = v_V5796.clone(); + let __t58 = v_V5376.clone(); rt::tl(&__t58)? }; rt::hd(&__t59)? @@ -293,7 +293,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t64 = { let __t63 = { let __t62 = { - let __t61 = v_V5796.clone(); + let __t61 = v_V5376.clone(); rt::tl(&__t61)? }; rt::tl(&__t62)? @@ -304,7 +304,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t77 = { let __t67 = { let __t66 = { - let __t65 = v_V5796.clone(); + let __t65 = v_V5376.clone(); rt::tl(&__t65)? }; rt::hd(&__t66)? @@ -312,7 +312,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t71 = { let __t70 = { let __t69 = { - let __t68 = v_V5796.clone(); + let __t68 = v_V5376.clone(); rt::tl(&__t68)? }; rt::tl(&__t69)? @@ -323,7 +323,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S let __t75 = { let __t74 = { let __t73 = { - let __t72 = v_V5796.clone(); + let __t72 = v_V5376.clone(); rt::tl(&__t72)? }; rt::tl(&__t73)? @@ -348,17 +348,17 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S rt::cons(&__t57, &__t81) }; { - let v_W5798 = { - let __t82 = v_W5797.clone(); + let v_W5378 = { + let __t82 = v_W5377.clone(); rt::apply_direct(interp, "eval-kl", &[__t82])? }; { - let v_W5799 = { + let v_W5379 = { let __t83 = Value::sym(interp.intern("shen.*tracking*")); let __t89 = { let __t86 = { let __t85 = { - let __t84 = v_V5796.clone(); + let __t84 = v_V5376.clone(); rt::tl(&__t84)? }; rt::hd(&__t85)? @@ -373,7 +373,7 @@ pub fn aot_shen_x2e_track_x2d_function(interp: &mut Interp, args: &[Value]) -> S }; break Ok({ let __t91 = { - let __t90 = v_V5796.clone(); + let __t90 = v_V5376.clone(); rt::tl(&__t90)? }; rt::hd(&__t91)? @@ -418,11 +418,11 @@ pub fn aot_shen_x2e_insert_x2d_tracking_x2d_code( ))); } #[allow(unused_mut)] - let mut v_V5800 = args[0].clone(); + let mut v_V5380 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5801 = args[1].clone(); + let mut v_V5381 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5802 = args[2].clone(); + let mut v_V5382 = args[2].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -478,12 +478,12 @@ pub fn aot_shen_x2e_insert_x2d_tracking_x2d_code( rt::cons(&__t113, &__t116) }; let __t125 = { - let __t118 = v_V5800.clone(); + let __t118 = v_V5380.clone(); let __t124 = { let __t122 = { let __t121 = { - let __t119 = v_V5802.clone(); - let __t120 = v_V5801.clone(); + let __t119 = v_V5382.clone(); + let __t120 = v_V5381.clone(); rt::apply_direct( interp, "shen.prolog-track", @@ -523,7 +523,7 @@ pub fn aot_shen_x2e_insert_x2d_tracking_x2d_code( let __t133 = Value::sym(interp.intern("Result")); let __t186 = { - let __t134 = v_V5802.clone(); + let __t134 = v_V5382.clone(); let __t185 = { let __t183 = { let __t135 = @@ -561,7 +561,7 @@ pub fn aot_shen_x2e_insert_x2d_tracking_x2d_code( }; let __t146 = { let __t142 = - v_V5800.clone(); + v_V5380.clone(); let __t145 = { let __t143 = Value::sym(interp.intern("Result")); let __t144 = @@ -711,16 +711,16 @@ pub fn aot_shen_x2e_prolog_x2d_track(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5803 = args[0].clone(); + let mut v_V5383 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5804 = args[1].clone(); + let mut v_V5384 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t208 = { let __t206 = { let __t204 = Value::sym(interp.intern("shen.incinfs")); - let __t205 = v_V5803.clone(); + let __t205 = v_V5383.clone(); rt::apply_direct(interp, "occurrences", &[__t204, __t205])? }; let __t207 = Value::int(0i64); @@ -730,7 +730,7 @@ pub fn aot_shen_x2e_prolog_x2d_track(interp: &mut Interp, args: &[Value]) -> She Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5804.clone()); + break Ok(v_V5384.clone()); } else { { let __t203 = Value::bool(true); @@ -739,9 +739,9 @@ pub fn aot_shen_x2e_prolog_x2d_track(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t200 = v_V5804.clone(); + let __t200 = v_V5384.clone(); let __t202 = { - let __t201 = v_V5804.clone(); + let __t201 = v_V5384.clone(); rt::apply_direct(interp, "shen.vector-parameter", &[__t201])? }; rt::apply_direct(interp, "shen.vector-dereference", &[__t200, __t202])? @@ -769,13 +769,13 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V5807 = args[0].clone(); + let mut v_V5387 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t243 = { let __t241 = Value::nil(); - let __t242 = v_V5807.clone(); + let __t242 = v_V5387.clone(); rt::eq(&__t241, &__t242) }; if match rt::is_truthy(interp, &__t243) { @@ -787,7 +787,7 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> { let __t240 = { let __t237 = { - let __t215 = v_V5807.clone(); + let __t215 = v_V5387.clone(); rt::is_cons(&__t215) }; if !rt::is_truthy(interp, &__t237)? { @@ -796,7 +796,7 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> let __t238 = { let __t235 = { let __t217 = { - let __t216 = v_V5807.clone(); + let __t216 = v_V5387.clone(); rt::tl(&__t216)? }; rt::is_cons(&__t217) @@ -808,7 +808,7 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> let __t233 = { let __t220 = { let __t219 = { - let __t218 = v_V5807.clone(); + let __t218 = v_V5387.clone(); rt::tl(&__t218)? }; rt::tl(&__t219)? @@ -823,7 +823,7 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> let __t224 = { let __t223 = { let __t222 = { - let __t221 = v_V5807.clone(); + let __t221 = v_V5387.clone(); rt::tl(&__t221)? }; rt::tl(&__t222)? @@ -842,7 +842,7 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> let __t228 = { let __t227 = { let __t226 = - v_V5807.clone(); + v_V5387.clone(); rt::tl(&__t226)? }; rt::tl(&__t227)? @@ -870,13 +870,13 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> Err(e) => break Err(e), } { break Ok({ - let __t239 = v_V5807.clone(); + let __t239 = v_V5387.clone(); rt::hd(&__t239)? }); } else { { let __t214 = { - let __t211 = v_V5807.clone(); + let __t211 = v_V5387.clone(); rt::is_cons(&__t211) }; if match rt::is_truthy(interp, &__t214) { @@ -885,10 +885,10 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> } { { let __t213 = { - let __t212 = v_V5807.clone(); + let __t212 = v_V5387.clone(); rt::tl(&__t212)? }; - v_V5807 = __t213; + v_V5387 = __t213; continue; } } else { @@ -899,9 +899,10 @@ pub fn aot_shen_x2e_vector_x2d_parameter(interp: &mut Interp, args: &[Value]) -> Err(e) => break Err(e), } { break Ok({ - let __t209 = - Value::sym(interp.intern("shen.vector-parameter")); - rt::apply_direct(interp, "shen.f-error", &[__t209])? + let __t209 = Value::str( + "partial function shen.vector-parameter", + ); + rt::apply_direct(interp, "simple-error", &[__t209])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -937,27 +938,27 @@ pub fn aot_shen_x2e_vector_x2d_dereference( ))); } #[allow(unused_mut)] - let mut v_V5810 = args[0].clone(); + let mut v_V5390 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5811 = args[1].clone(); + let mut v_V5391 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t287 = { let __t285 = Value::nil(); - let __t286 = v_V5811.clone(); + let __t286 = v_V5391.clone(); rt::eq(&__t285, &__t286) }; if match rt::is_truthy(interp, &__t287) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5810.clone()); + break Ok(v_V5390.clone()); } else { { let __t284 = { let __t282 = { - let __t260 = v_V5810.clone(); + let __t260 = v_V5390.clone(); rt::is_cons(&__t260) }; if !rt::is_truthy(interp, &__t282)? { @@ -966,7 +967,7 @@ pub fn aot_shen_x2e_vector_x2d_dereference( let __t283 = { let __t280 = { let __t262 = { - let __t261 = v_V5810.clone(); + let __t261 = v_V5390.clone(); rt::tl(&__t261)? }; rt::is_cons(&__t262) @@ -978,7 +979,7 @@ pub fn aot_shen_x2e_vector_x2d_dereference( let __t278 = { let __t265 = { let __t264 = { - let __t263 = v_V5810.clone(); + let __t263 = v_V5390.clone(); rt::tl(&__t263)? }; rt::tl(&__t264)? @@ -993,7 +994,7 @@ pub fn aot_shen_x2e_vector_x2d_dereference( let __t269 = { let __t268 = { let __t267 = { - let __t266 = v_V5810.clone(); + let __t266 = v_V5390.clone(); rt::tl(&__t266)? }; rt::tl(&__t267)? @@ -1012,7 +1013,7 @@ pub fn aot_shen_x2e_vector_x2d_dereference( let __t273 = { let __t272 = { let __t271 = - v_V5810.clone(); + v_V5390.clone(); rt::tl(&__t271)? }; rt::tl(&__t272)? @@ -1039,11 +1040,11 @@ pub fn aot_shen_x2e_vector_x2d_dereference( Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V5810.clone()); + break Ok(v_V5390.clone()); } else { { let __t259 = { - let __t246 = v_V5810.clone(); + let __t246 = v_V5390.clone(); rt::is_cons(&__t246) }; if match rt::is_truthy(interp, &__t259) { @@ -1055,11 +1056,11 @@ pub fn aot_shen_x2e_vector_x2d_dereference( let __t247 = Value::sym(interp.intern("shen.deref")); let __t253 = { let __t249 = { - let __t248 = v_V5810.clone(); + let __t248 = v_V5390.clone(); rt::hd(&__t248)? }; let __t252 = { - let __t250 = v_V5811.clone(); + let __t250 = v_V5391.clone(); let __t251 = Value::nil(); rt::cons(&__t250, &__t251) }; @@ -1069,10 +1070,10 @@ pub fn aot_shen_x2e_vector_x2d_dereference( }; let __t258 = { let __t256 = { - let __t255 = v_V5810.clone(); + let __t255 = v_V5390.clone(); rt::tl(&__t255)? }; - let __t257 = v_V5811.clone(); + let __t257 = v_V5391.clone(); rt::apply_direct( interp, "shen.vector-dereference", @@ -1089,10 +1090,10 @@ pub fn aot_shen_x2e_vector_x2d_dereference( Err(e) => break Err(e), } { break Ok({ - let __t244 = Value::sym( - interp.intern("shen.vector-dereference"), + let __t244 = Value::str( + "partial function shen.vector-dereference", ); - rt::apply_direct(interp, "shen.f-error", &[__t244])? + rt::apply_direct(interp, "simple-error", &[__t244])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -1128,13 +1129,13 @@ pub fn aot_step(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5814 = args[0].clone(); + let mut v_V5394 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t299 = { let __t295 = Value::sym(interp.intern("+")); - let __t296 = v_V5814.clone(); + let __t296 = v_V5394.clone(); rt::eq(&__t295, &__t296) }; if match rt::is_truthy(interp, &__t299) { @@ -1150,7 +1151,7 @@ pub fn aot_step(interp: &mut Interp, args: &[Value]) -> ShenResult { { let __t294 = { let __t290 = Value::sym(interp.intern("-")); - let __t291 = v_V5814.clone(); + let __t291 = v_V5394.clone(); rt::eq(&__t290, &__t291) }; if match rt::is_truthy(interp, &__t294) { @@ -1189,11 +1190,11 @@ fn install_step(interp: &mut Interp) { interp.register_aot_direct("step", aot_step); } -/// AOT-compiled from KL `(defun shen.step? ...)` -pub fn aot_shen_x2e_step_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun step? ...)` +pub fn aot_step_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { return Err(ShenError::new(format!( - "shen.step?: expected 0 args, got {}", + "step?: expected 0 args, got {}", args.len() ))); } @@ -1206,9 +1207,9 @@ pub fn aot_shen_x2e_step_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult } } -fn install_shen_x2e_step_x3f_(interp: &mut Interp) { - interp.register_native("shen.step?", 0, aot_shen_x2e_step_x3f_); - interp.register_aot_direct("shen.step?", aot_shen_x2e_step_x3f_); +fn install_step_x3f_(interp: &mut Interp) { + interp.register_native("step?", 0, aot_step_x3f_); + interp.register_aot_direct("step?", aot_step_x3f_); } /// AOT-compiled from KL `(defun spy ...)` @@ -1220,13 +1221,13 @@ pub fn aot_spy(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5817 = args[0].clone(); + let mut v_V5397 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t312 = { let __t308 = Value::sym(interp.intern("+")); - let __t309 = v_V5817.clone(); + let __t309 = v_V5397.clone(); rt::eq(&__t308, &__t309) }; if match rt::is_truthy(interp, &__t312) { @@ -1242,7 +1243,7 @@ pub fn aot_spy(interp: &mut Interp, args: &[Value]) -> ShenResult { { let __t307 = { let __t303 = Value::sym(interp.intern("-")); - let __t304 = v_V5817.clone(); + let __t304 = v_V5397.clone(); rt::eq(&__t303, &__t304) }; if match rt::is_truthy(interp, &__t307) { @@ -1281,11 +1282,11 @@ fn install_spy(interp: &mut Interp) { interp.register_aot_direct("spy", aot_spy); } -/// AOT-compiled from KL `(defun shen.spy? ...)` -pub fn aot_shen_x2e_spy_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { +/// AOT-compiled from KL `(defun spy? ...)` +pub fn aot_spy_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 0 { return Err(ShenError::new(format!( - "shen.spy?: expected 0 args, got {}", + "spy?: expected 0 args, got {}", args.len() ))); } @@ -1298,9 +1299,9 @@ pub fn aot_shen_x2e_spy_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult< } } -fn install_shen_x2e_spy_x3f_(interp: &mut Interp) { - interp.register_native("shen.spy?", 0, aot_shen_x2e_spy_x3f_); - interp.register_aot_direct("shen.spy?", aot_shen_x2e_spy_x3f_); +fn install_spy_x3f_(interp: &mut Interp) { + interp.register_native("spy?", 0, aot_spy_x3f_); + interp.register_aot_direct("spy?", aot_spy_x3f_); } /// AOT-compiled from KL `(defun shen.terpri-or-read-char ...)` @@ -1366,13 +1367,13 @@ pub fn aot_shen_x2e_check_x2d_byte(interp: &mut Interp, args: &[Value]) -> ShenR ))); } #[allow(unused_mut)] - let mut v_V5820 = args[0].clone(); + let mut v_V5400 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t324 = { let __t321 = Value::int(94i64); - let __t322 = v_V5820.clone(); + let __t322 = v_V5400.clone(); rt::eq(&__t321, &__t322) }; if match rt::is_truthy(interp, &__t324) { @@ -1414,11 +1415,11 @@ pub fn aot_shen_x2e_input_x2d_track(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5821 = args[0].clone(); + let mut v_V5401 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5822 = args[1].clone(); + let mut v_V5402 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5823 = args[2].clone(); + let mut v_V5403 = args[2].clone(); #[allow(clippy::never_loop)] loop { { @@ -1427,22 +1428,22 @@ pub fn aot_shen_x2e_input_x2d_track(interp: &mut Interp, args: &[Value]) -> Shen let __t325 = Value::str("\n"); let __t346 = { let __t327 = { - let __t326 = v_V5821.clone(); + let __t326 = v_V5401.clone(); rt::apply_direct(interp, "shen.spaces", &[__t326])? }; let __t344 = { let __t328 = Value::str("<"); let __t343 = { - let __t329 = v_V5821.clone(); + let __t329 = v_V5401.clone(); let __t341 = { let __t330 = Value::str("> Inputs to "); let __t340 = { - let __t331 = v_V5822.clone(); + let __t331 = v_V5402.clone(); let __t338 = { let __t332 = Value::str(" \n"); let __t337 = { let __t334 = { - let __t333 = v_V5821.clone(); + let __t333 = v_V5401.clone(); rt::apply_direct( interp, "shen.spaces", @@ -1482,7 +1483,7 @@ pub fn aot_shen_x2e_input_x2d_track(interp: &mut Interp, args: &[Value]) -> Shen rt::apply_direct(interp, "pr", &[__t347, __t348])? }; break Ok({ - let __t349 = v_V5823.clone(); + let __t349 = v_V5403.clone(); rt::apply_direct(interp, "shen.recursively-print", &[__t349])? }); } @@ -1506,13 +1507,13 @@ pub fn aot_shen_x2e_recursively_x2d_print( ))); } #[allow(unused_mut)] - let mut v_V5826 = args[0].clone(); + let mut v_V5406 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t364 = { let __t360 = Value::nil(); - let __t361 = v_V5826.clone(); + let __t361 = v_V5406.clone(); rt::eq(&__t360, &__t361) }; if match rt::is_truthy(interp, &__t364) { @@ -1527,7 +1528,7 @@ pub fn aot_shen_x2e_recursively_x2d_print( } else { { let __t359 = { - let __t352 = v_V5826.clone(); + let __t352 = v_V5406.clone(); rt::is_cons(&__t352) }; if match rt::is_truthy(interp, &__t359) { @@ -1537,7 +1538,7 @@ pub fn aot_shen_x2e_recursively_x2d_print( { let _ = { let __t354 = { - let __t353 = v_V5826.clone(); + let __t353 = v_V5406.clone(); rt::hd(&__t353)? }; rt::apply_direct(interp, "print", &[__t354])? @@ -1550,10 +1551,10 @@ pub fn aot_shen_x2e_recursively_x2d_print( }; { let __t358 = { - let __t357 = v_V5826.clone(); + let __t357 = v_V5406.clone(); rt::tl(&__t357)? }; - v_V5826 = __t358; + v_V5406 = __t358; continue; } } @@ -1600,13 +1601,13 @@ pub fn aot_shen_x2e_spaces(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult She ))); } #[allow(unused_mut)] - let mut v_V5828 = args[0].clone(); + let mut v_V5408 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5829 = args[1].clone(); + let mut v_V5409 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5830 = args[2].clone(); + let mut v_V5410 = args[2].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -1668,28 +1669,28 @@ pub fn aot_shen_x2e_output_x2d_track(interp: &mut Interp, args: &[Value]) -> She let __t374 = Value::str("\n"); let __t400 = { let __t376 = { - let __t375 = v_V5828.clone(); + let __t375 = v_V5408.clone(); rt::apply_direct(interp, "shen.spaces", &[__t375])? }; let __t398 = { let __t377 = Value::str("<"); let __t397 = { - let __t378 = v_V5828.clone(); + let __t378 = v_V5408.clone(); let __t395 = { let __t379 = Value::str("> Output from "); let __t394 = { - let __t380 = v_V5829.clone(); + let __t380 = v_V5409.clone(); let __t392 = { let __t381 = Value::str(" \n"); let __t391 = { let __t383 = { - let __t382 = v_V5828.clone(); + let __t382 = v_V5408.clone(); rt::apply_direct(interp, "shen.spaces", &[__t382])? }; let __t389 = { let __t384 = Value::str("==> "); let __t388 = { - let __t385 = v_V5830.clone(); + let __t385 = v_V5410.clone(); let __t386 = Value::str(""); let __t387 = Value::sym(interp.intern("shen.s")); @@ -1745,14 +1746,14 @@ pub fn aot_untrack(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5831 = args[0].clone(); + let mut v_V5411 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { let __t403 = Value::sym(interp.intern("shen.*tracking*")); let __t407 = { - let __t404 = v_V5831.clone(); + let __t404 = v_V5411.clone(); let __t406 = { let __t405 = Value::sym(interp.intern("shen.*tracking*")); rt::apply_direct(interp, "value", &[__t405])? @@ -1765,7 +1766,7 @@ pub fn aot_untrack(interp: &mut Interp, args: &[Value]) -> ShenResult { let _ = match (|| -> ShenResult { Ok({ let __t409 = { - let __t408 = v_V5831.clone(); + let __t408 = v_V5411.clone(); rt::apply_direct(interp, "ps", &[__t408])? }; rt::apply_direct(interp, "eval", &[__t409])? @@ -1774,15 +1775,15 @@ pub fn aot_untrack(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(v) => v, Err(e) => { let __h = { - let v_V5831 = v_V5831.clone(); + let v_V5411 = v_V5411.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5832 = args[0].clone(); - Ok(v_V5831.clone()) + let v_Z5412 = args[0].clone(); + Ok(v_V5411.clone()) }, - vec![v_V5831], + vec![v_V5411], interp, ) }; @@ -1790,7 +1791,7 @@ pub fn aot_untrack(interp: &mut Interp, args: &[Value]) -> ShenResult { rt::apply_value(interp, __h, &[__err])? } }; - break Ok(v_V5831.clone()); + break Ok(v_V5411.clone()); } } } @@ -1810,14 +1811,14 @@ pub fn aot_remove(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5833 = args[0].clone(); + let mut v_V5413 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5834 = args[1].clone(); + let mut v_V5414 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t410 = v_V5833.clone(); - let __t411 = v_V5834.clone(); + let __t410 = v_V5413.clone(); + let __t411 = v_V5414.clone(); let __t412 = Value::nil(); rt::apply_direct(interp, "shen.remove-h", &[__t410, __t411, __t412])? }); @@ -1838,17 +1839,17 @@ pub fn aot_shen_x2e_remove_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V5844 = args[0].clone(); + let mut v_V5424 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5845 = args[1].clone(); + let mut v_V5425 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5846 = args[2].clone(); + let mut v_V5426 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t439 = { let __t436 = Value::nil(); - let __t437 = v_V5845.clone(); + let __t437 = v_V5425.clone(); rt::eq(&__t436, &__t437) }; if match rt::is_truthy(interp, &__t439) { @@ -1856,23 +1857,23 @@ pub fn aot_shen_x2e_remove_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t438 = v_V5846.clone(); + let __t438 = v_V5426.clone(); rt::apply_direct(interp, "reverse", &[__t438])? }); } else { { let __t435 = { let __t428 = { - let __t424 = v_V5845.clone(); + let __t424 = v_V5425.clone(); rt::is_cons(&__t424) }; if !rt::is_truthy(interp, &__t428)? { Value::bool(false) } else { let __t429 = { - let __t425 = v_V5844.clone(); + let __t425 = v_V5424.clone(); let __t427 = { - let __t426 = v_V5845.clone(); + let __t426 = v_V5425.clone(); rt::hd(&__t426)? }; rt::eq(&__t425, &__t427) @@ -1886,23 +1887,23 @@ pub fn aot_shen_x2e_remove_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes } { { let __t431 = { - let __t430 = v_V5845.clone(); + let __t430 = v_V5425.clone(); rt::hd(&__t430)? }; let __t433 = { - let __t432 = v_V5845.clone(); + let __t432 = v_V5425.clone(); rt::tl(&__t432)? }; - let __t434 = v_V5846.clone(); - v_V5844 = __t431; - v_V5845 = __t433; - v_V5846 = __t434; + let __t434 = v_V5426.clone(); + v_V5424 = __t431; + v_V5425 = __t433; + v_V5426 = __t434; continue; } } else { { let __t423 = { - let __t415 = v_V5845.clone(); + let __t415 = v_V5425.clone(); rt::is_cons(&__t415) }; if match rt::is_truthy(interp, &__t423) { @@ -1910,22 +1911,22 @@ pub fn aot_shen_x2e_remove_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { { - let __t416 = v_V5844.clone(); + let __t416 = v_V5424.clone(); let __t418 = { - let __t417 = v_V5845.clone(); + let __t417 = v_V5425.clone(); rt::tl(&__t417)? }; let __t422 = { let __t420 = { - let __t419 = v_V5845.clone(); + let __t419 = v_V5425.clone(); rt::hd(&__t419)? }; - let __t421 = v_V5846.clone(); + let __t421 = v_V5426.clone(); rt::cons(&__t420, &__t421) }; - v_V5844 = __t416; - v_V5845 = __t418; - v_V5846 = __t422; + v_V5424 = __t416; + v_V5425 = __t418; + v_V5426 = __t422; continue; } } else { @@ -1967,14 +1968,14 @@ pub fn aot_profile(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5847 = args[0].clone(); + let mut v_V5427 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { let __t440 = Value::sym(interp.intern("shen.*profiled*")); let __t444 = { - let __t441 = v_V5847.clone(); + let __t441 = v_V5427.clone(); let __t443 = { let __t442 = Value::sym(interp.intern("shen.*profiled*")); rt::apply_direct(interp, "value", &[__t442])? @@ -1985,7 +1986,7 @@ pub fn aot_profile(interp: &mut Interp, args: &[Value]) -> ShenResult { }; break Ok({ let __t446 = { - let __t445 = v_V5847.clone(); + let __t445 = v_V5427.clone(); rt::apply_direct(interp, "ps", &[__t445])? }; rt::apply_direct(interp, "shen.profile-help", &[__t446])? @@ -2008,13 +2009,13 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5850 = args[0].clone(); + let mut v_V5430 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t529 = { let __t476 = { - let __t449 = v_V5850.clone(); + let __t449 = v_V5430.clone(); rt::is_cons(&__t449) }; if !rt::is_truthy(interp, &__t476)? { @@ -2024,7 +2025,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t474 = { let __t450 = Value::sym(interp.intern("defun")); let __t452 = { - let __t451 = v_V5850.clone(); + let __t451 = v_V5430.clone(); rt::hd(&__t451)? }; rt::eq(&__t450, &__t452) @@ -2035,7 +2036,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t475 = { let __t472 = { let __t454 = { - let __t453 = v_V5850.clone(); + let __t453 = v_V5430.clone(); rt::tl(&__t453)? }; rt::is_cons(&__t454) @@ -2047,7 +2048,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t470 = { let __t457 = { let __t456 = { - let __t455 = v_V5850.clone(); + let __t455 = v_V5430.clone(); rt::tl(&__t455)? }; rt::tl(&__t456)? @@ -2062,7 +2063,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t461 = { let __t460 = { let __t459 = { - let __t458 = v_V5850.clone(); + let __t458 = v_V5430.clone(); rt::tl(&__t458)? }; rt::tl(&__t459)? @@ -2081,7 +2082,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t465 = { let __t464 = { let __t463 = - v_V5850.clone(); + v_V5430.clone(); rt::tl(&__t463)? }; rt::tl(&__t464)? @@ -2112,17 +2113,17 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { { - let v_W5851 = { + let v_W5431 = { let __t478 = Value::sym(interp.intern("shen.f")); rt::apply_direct(interp, "gensym", &[__t478])? }; { - let v_W5852 = { + let v_W5432 = { let __t479 = Value::sym(interp.intern("defun")); let __t504 = { let __t482 = { let __t481 = { - let __t480 = v_V5850.clone(); + let __t480 = v_V5430.clone(); rt::tl(&__t480)? }; rt::hd(&__t481)? @@ -2131,7 +2132,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t486 = { let __t485 = { let __t484 = { - let __t483 = v_V5850.clone(); + let __t483 = v_V5430.clone(); rt::tl(&__t483)? }; rt::tl(&__t484)? @@ -2142,7 +2143,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t500 = { let __t489 = { let __t488 = { - let __t487 = v_V5850.clone(); + let __t487 = v_V5430.clone(); rt::tl(&__t487)? }; rt::hd(&__t488)? @@ -2150,7 +2151,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t493 = { let __t492 = { let __t491 = { - let __t490 = v_V5850.clone(); + let __t490 = v_V5430.clone(); rt::tl(&__t490)? }; rt::tl(&__t491)? @@ -2158,11 +2159,11 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She rt::hd(&__t492)? }; let __t499 = { - let __t494 = v_W5851.clone(); + let __t494 = v_W5431.clone(); let __t498 = { let __t497 = { let __t496 = { - let __t495 = v_V5850.clone(); + let __t495 = v_V5430.clone(); rt::tl(&__t495)? }; rt::tl(&__t496)? @@ -2187,15 +2188,15 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She rt::cons(&__t479, &__t504) }; { - let v_W5853 = { + let v_W5433 = { let __t505 = Value::sym(interp.intern("defun")); let __t524 = { - let __t506 = v_W5851.clone(); + let __t506 = v_W5431.clone(); let __t523 = { let __t510 = { let __t509 = { let __t508 = { - let __t507 = v_V5850.clone(); + let __t507 = v_V5430.clone(); rt::tl(&__t507)? }; rt::tl(&__t508)? @@ -2204,10 +2205,10 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She }; let __t522 = { let __t520 = { - let __t511 = v_W5851.clone(); + let __t511 = v_W5431.clone(); let __t514 = { let __t513 = { - let __t512 = v_V5850.clone(); + let __t512 = v_V5430.clone(); rt::tl(&__t512)? }; rt::hd(&__t513)? @@ -2216,7 +2217,7 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She let __t518 = { let __t517 = { let __t516 = { - let __t515 = v_V5850.clone(); + let __t515 = v_V5430.clone(); rt::tl(&__t515)? }; rt::tl(&__t516)? @@ -2241,18 +2242,18 @@ pub fn aot_shen_x2e_profile_x2d_help(interp: &mut Interp, args: &[Value]) -> She rt::cons(&__t505, &__t524) }; { - let v_W5854 = { - let __t525 = v_W5852.clone(); + let v_W5434 = { + let __t525 = v_W5432.clone(); rt::apply_direct(interp, "eval-kl", &[__t525])? }; { - let v_W5855 = { - let __t526 = v_W5853.clone(); + let v_W5435 = { + let __t526 = v_W5433.clone(); rt::apply_direct(interp, "eval-kl", &[__t526])? }; break Ok({ let __t528 = { - let __t527 = v_V5850.clone(); + let __t527 = v_V5430.clone(); rt::tl(&__t527)? }; rt::hd(&__t528)? @@ -2296,14 +2297,14 @@ pub fn aot_unprofile(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5856 = args[0].clone(); + let mut v_V5436 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let _ = { let __t530 = Value::sym(interp.intern("shen.*profiled*")); let __t534 = { - let __t531 = v_V5856.clone(); + let __t531 = v_V5436.clone(); let __t533 = { let __t532 = Value::sym(interp.intern("shen.*profiled*")); rt::apply_direct(interp, "value", &[__t532])? @@ -2316,7 +2317,7 @@ pub fn aot_unprofile(interp: &mut Interp, args: &[Value]) -> ShenResult { match (|| -> ShenResult { Ok({ let __t536 = { - let __t535 = v_V5856.clone(); + let __t535 = v_V5436.clone(); rt::apply_direct(interp, "ps", &[__t535])? }; rt::apply_direct(interp, "eval", &[__t536])? @@ -2325,15 +2326,15 @@ pub fn aot_unprofile(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(v) => v, Err(e) => { let __h = { - let v_V5856 = v_V5856.clone(); + let v_V5436 = v_V5436.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5857 = args[0].clone(); - Ok(v_V5856.clone()) + let v_Z5437 = args[0].clone(); + Ok(v_V5436.clone()) }, - vec![v_V5856], + vec![v_V5436], interp, ) }; @@ -2360,11 +2361,11 @@ pub fn aot_shen_x2e_profiled_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V5858 = args[0].clone(); + let mut v_V5438 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t537 = v_V5858.clone(); + let __t537 = v_V5438.clone(); let __t539 = { let __t538 = Value::sym(interp.intern("shen.*profiled*")); rt::apply_direct(interp, "value", &[__t538])? @@ -2388,11 +2389,11 @@ pub fn aot_shen_x2e_profile_x2d_func(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V5859 = args[0].clone(); + let mut v_V5439 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5860 = args[1].clone(); + let mut v_V5440 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5861 = args[2].clone(); + let mut v_V5441 = args[2].clone(); #[allow(clippy::never_loop)] loop { break Ok({ @@ -2415,7 +2416,7 @@ pub fn aot_shen_x2e_profile_x2d_func(interp: &mut Interp, args: &[Value]) -> She let __t596 = { let __t548 = Value::sym(interp.intern("Result")); let __t595 = { - let __t549 = v_V5861.clone(); + let __t549 = v_V5441.clone(); let __t594 = { let __t592 = { let __t550 = Value::sym(interp.intern("let")); @@ -2466,7 +2467,7 @@ pub fn aot_shen_x2e_profile_x2d_func(interp: &mut Interp, args: &[Value]) -> She ); let __t580 = { let __t566 = - v_V5859.clone(); + v_V5439.clone(); let __t579 = { let __t577 = { let __t567 = Value::sym(interp.intern("+")); @@ -2474,7 +2475,7 @@ pub fn aot_shen_x2e_profile_x2d_func(interp: &mut Interp, args: &[Value]) -> She let __t572 = { let __t568 = Value::sym(interp.intern("shen.get-profile")); let __t571 = { - let __t569 = v_V5859.clone(); + let __t569 = v_V5439.clone(); let __t570 = Value::nil(); rt::cons(&__t569, &__t570) }; @@ -2565,23 +2566,23 @@ pub fn aot_profile_x2d_results(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V5862 = args[0].clone(); + let mut v_V5442 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5863 = { - let __t602 = v_V5862.clone(); + let v_W5443 = { + let __t602 = v_V5442.clone(); rt::apply_direct(interp, "shen.get-profile", &[__t602])? }; { - let v_W5864 = { - let __t603 = v_V5862.clone(); + let v_W5444 = { + let __t603 = v_V5442.clone(); let __t604 = Value::int(0i64); rt::apply_direct(interp, "shen.put-profile", &[__t603, __t604])? }; break Ok({ - let __t605 = v_V5862.clone(); - let __t606 = v_W5863.clone(); + let __t605 = v_V5442.clone(); + let __t606 = v_W5443.clone(); rt::apply_direct(interp, "@p", &[__t605, __t606])? }); } @@ -2603,13 +2604,13 @@ pub fn aot_shen_x2e_get_x2d_profile(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5865 = args[0].clone(); + let mut v_V5445 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t607 = v_V5865.clone(); + let __t607 = v_V5445.clone(); let __t608 = Value::sym(interp.intern("profile")); let __t610 = { let __t609 = Value::sym(interp.intern("*property-vector*")); @@ -2625,7 +2626,7 @@ pub fn aot_shen_x2e_get_x2d_profile(interp: &mut Interp, args: &[Value]) -> Shen "", 1, move |interp, args| { - let v_Z5866 = args[0].clone(); + let v_Z5446 = args[0].clone(); Ok(Value::int(0i64)) }, Vec::new(), @@ -2654,15 +2655,15 @@ pub fn aot_shen_x2e_put_x2d_profile(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V5867 = args[0].clone(); + let mut v_V5447 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5868 = args[1].clone(); + let mut v_V5448 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t611 = v_V5867.clone(); + let __t611 = v_V5447.clone(); let __t612 = Value::sym(interp.intern("profile")); - let __t613 = v_V5868.clone(); + let __t613 = v_V5448.clone(); let __t615 = { let __t614 = Value::sym(interp.intern("*property-vector*")); rt::apply_direct(interp, "value", &[__t614])? @@ -2689,9 +2690,9 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_vector_x2d_parameter(interp); install_shen_x2e_vector_x2d_dereference(interp); install_step(interp); - install_shen_x2e_step_x3f_(interp); + install_step_x3f_(interp); install_spy(interp); - install_shen_x2e_spy_x3f_(interp); + install_spy_x3f_(interp); install_shen_x2e_terpri_x2d_or_x2d_read_x2d_char(interp); install_shen_x2e_check_x2d_byte(interp); install_shen_x2e_input_x2d_track(interp); diff --git a/crates/shen-rust/src/aot/kernel/types.rs b/crates/shen-rust/src/aot/kernel/types.rs index f68e67d..6160627 100644 --- a/crates/shen-rust/src/aot/kernel/types.rs +++ b/crates/shen-rust/src/aot/kernel/types.rs @@ -32,64 +32,64 @@ pub fn aot_declare(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V5907 = args[0].clone(); + let mut v_V5483 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5908 = args[1].clone(); + let mut v_V5484 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5909 = { - let __t0 = v_V5908.clone(); + let v_W5485 = { + let __t0 = v_V5484.clone(); rt::apply_direct(interp, "shen.rectify-type", &[__t0])? }; { - let v_W5910 = { + let v_W5486 = { let __t24 = { let __t22 = { let __t15 = { let __t13 = { - let v_V5907 = v_V5907.clone(); - let v_W5909 = v_W5909.clone(); + let v_V5483 = v_V5483.clone(); + let v_W5485 = v_W5485.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5911 = args[0].clone(); + let v_Z5487 = args[0].clone(); Ok({ - let v_V5907 = v_V5907.clone(); - let v_W5909 = v_W5909.clone(); - let v_Z5911 = v_Z5911.clone(); + let v_V5483 = v_V5483.clone(); + let v_W5485 = v_W5485.clone(); + let v_Z5487 = v_Z5487.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5912 = args[0].clone(); + let v_Z5488 = args[0].clone(); Ok({ - let v_V5907 = v_V5907.clone(); - let v_W5909 = v_W5909.clone(); - let v_Z5911 = v_Z5911.clone(); - let v_Z5912 = v_Z5912.clone(); + let v_V5483 = v_V5483.clone(); + let v_W5485 = v_W5485.clone(); + let v_Z5487 = v_Z5487.clone(); + let v_Z5488 = v_Z5488.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5913 = args[0].clone(); + let v_Z5489 = args[0].clone(); Ok({ - let v_V5907 = - v_V5907.clone(); - let v_W5909 = - v_W5909.clone(); - let v_Z5911 = - v_Z5911.clone(); - let v_Z5912 = - v_Z5912.clone(); - let v_Z5913 = - v_Z5913.clone(); + let v_V5483 = + v_V5483.clone(); + let v_W5485 = + v_W5485.clone(); + let v_Z5487 = + v_Z5487.clone(); + let v_Z5488 = + v_Z5488.clone(); + let v_Z5489 = + v_Z5489.clone(); rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z5914 = + let v_Z5490 = args[0].clone(); Ok({ let _ = { @@ -98,51 +98,51 @@ pub fn aot_declare(interp: &mut Interp, args: &[Value]) -> ShenResult { { let __t4 = { let __t3 = { - let __t1 = v_V5907.clone(); - let __t2 = v_Z5911.clone(); + let __t1 = v_V5483.clone(); + let __t2 = v_Z5487.clone(); rt::apply_direct(interp, "shen.deref", &[__t1, __t2])? }; rt::apply_direct(interp, "receive", &[__t3])? }; let __t8 = { let __t7 = { - let __t5 = v_W5909.clone(); - let __t6 = v_Z5911.clone(); + let __t5 = v_W5485.clone(); + let __t6 = v_Z5487.clone(); rt::apply_direct(interp, "shen.deref", &[__t5, __t6])? }; rt::apply_direct(interp, "receive", &[__t7])? }; - let __t9 = v_Z5911.clone(); - let __t10 = v_Z5912.clone(); - let __t11 = v_Z5913.clone(); - let __t12 = v_Z5914.clone(); + let __t9 = v_Z5487.clone(); + let __t10 = v_Z5488.clone(); + let __t11 = v_Z5489.clone(); + let __t12 = v_Z5490.clone(); rt::apply_direct(interp, "shen.variancy", &[__t4, __t8, __t9, __t10, __t11, __t12])? } }) }, vec![ - v_V5907, v_W5909, - v_Z5911, v_Z5912, - v_Z5913, + v_V5483, v_W5485, + v_Z5487, v_Z5488, + v_Z5489, ], interp, ) }) }, vec![ - v_V5907, v_W5909, v_Z5911, - v_Z5912, + v_V5483, v_W5485, v_Z5487, + v_Z5488, ], interp, ) }) }, - vec![v_V5907, v_W5909, v_Z5911], + vec![v_V5483, v_W5485, v_Z5487], interp, ) }) }, - vec![v_V5907, v_W5909], + vec![v_V5483, v_W5485], interp, ) }; @@ -179,19 +179,19 @@ pub fn aot_declare(interp: &mut Interp, args: &[Value]) -> ShenResult { rt::apply_value(interp, __t24, &[__t25])? }; { - let v_W5915 = { + let v_W5491 = { let __t27 = { - let __t26 = v_V5908.clone(); + let __t26 = v_V5484.clone(); rt::apply_direct(interp, "shen.prolog-abstraction", &[__t26])? }; rt::apply_direct(interp, "eval-kl", &[__t27])? }; { - let v_W5916 = { + let v_W5492 = { let __t28 = Value::sym(interp.intern("shen.*sigf*")); let __t33 = { - let __t29 = v_V5907.clone(); - let __t30 = v_W5915.clone(); + let __t29 = v_V5483.clone(); + let __t30 = v_W5491.clone(); let __t32 = { let __t31 = Value::sym(interp.intern("shen.*sigf*")); rt::apply_direct(interp, "value", &[__t31])? @@ -200,7 +200,7 @@ pub fn aot_declare(interp: &mut Interp, args: &[Value]) -> ShenResult { }; rt::apply_direct(interp, "set", &[__t28, __t33])? }; - break Ok(v_V5907.clone()); + break Ok(v_V5483.clone()); } } } @@ -222,22 +222,22 @@ pub fn aot_shen_x2e_variancy(interp: &mut Interp, args: &[Value]) -> ShenResult< ))); } #[allow(unused_mut)] - let mut v_V5917 = args[0].clone(); + let mut v_V5493 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5918 = args[1].clone(); + let mut v_V5494 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5919 = args[2].clone(); + let mut v_V5495 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5920 = args[3].clone(); + let mut v_V5496 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5921 = args[4].clone(); + let mut v_V5497 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5922 = args[5].clone(); + let mut v_V5498 = args[5].clone(); #[allow(clippy::never_loop)] loop { { let __t35 = { - let __t34 = v_V5920.clone(); + let __t34 = v_V5496.clone(); rt::apply_direct(interp, "shen.unlocked?", &[__t34])? }; if match rt::is_truthy(interp, &__t35) { @@ -245,54 +245,62 @@ pub fn aot_shen_x2e_variancy(interp: &mut Interp, args: &[Value]) -> ShenResult< Err(e) => break Err(e), } { { - let v_W5923 = { - let __t36 = v_V5919.clone(); + let v_W5499 = { + let __t36 = v_V5495.clone(); rt::apply_direct(interp, "shen.newpv", &[__t36])? }; break Ok({ - let __t37 = v_V5919.clone(); - let __t52 = { + let __t37 = v_V5495.clone(); + let __t56 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t38 = v_V5917.clone(); - let __t39 = v_W5923.clone(); - let __t40 = Value::nil(); - let __t41 = v_V5919.clone(); - let __t42 = v_V5920.clone(); - let __t43 = v_V5921.clone(); - let __t51 = { - let v_V5917 = v_V5917.clone(); - let v_V5918 = v_V5918.clone(); - let v_V5919 = v_V5919.clone(); - let v_V5920 = v_V5920.clone(); - let v_V5921 = v_V5921.clone(); - let v_V5922 = v_V5922.clone(); - let v_W5923 = v_W5923.clone(); + let __t42 = { + let __t38 = Value::sym(interp.intern("fn")); + let __t41 = { + let __t39 = v_V5493.clone(); + let __t40 = Value::nil(); + rt::cons(&__t39, &__t40) + }; + rt::cons(&__t38, &__t41) + }; + let __t43 = v_W5499.clone(); + let __t44 = Value::nil(); + let __t45 = v_V5495.clone(); + let __t46 = v_V5496.clone(); + let __t47 = v_V5497.clone(); + let __t55 = { + let v_V5493 = v_V5493.clone(); + let v_V5494 = v_V5494.clone(); + let v_V5495 = v_V5495.clone(); + let v_V5496 = v_V5496.clone(); + let v_V5497 = v_V5497.clone(); + let v_V5498 = v_V5498.clone(); + let v_W5499 = v_W5499.clone(); rt::make_aot_closure( "", 0, move |interp, _args| { Ok({ - let __t44 = v_V5917.clone(); - let __t45 = v_W5923.clone(); - let __t46 = v_V5918.clone(); - let __t47 = v_V5919.clone(); - let __t48 = v_V5920.clone(); - let __t49 = v_V5921.clone(); - let __t50 = v_V5922.clone(); + let __t48 = v_V5493.clone(); + let __t49 = v_W5499.clone(); + let __t50 = v_V5494.clone(); + let __t51 = v_V5495.clone(); + let __t52 = v_V5496.clone(); + let __t53 = v_V5497.clone(); + let __t54 = v_V5498.clone(); rt::apply_direct( interp, "shen.variants?", &[ - __t44, __t45, __t46, __t47, __t48, __t49, - __t50, + __t48, __t49, __t50, __t51, __t52, __t53, + __t54, ], )? }) }, vec![ - v_V5917, v_V5918, v_V5919, v_V5920, v_V5921, v_V5922, - v_W5923, + v_V5493, v_V5494, v_V5495, v_V5496, v_V5497, v_V5498, + v_W5499, ], interp, ) @@ -300,11 +308,11 @@ pub fn aot_shen_x2e_variancy(interp: &mut Interp, args: &[Value]) -> ShenResult< rt::apply_direct( interp, "shen.system-S-h", - &[__t38, __t39, __t40, __t41, __t42, __t43, __t51], + &[__t42, __t43, __t44, __t45, __t46, __t47, __t55], )? } }; - rt::apply_direct(interp, "shen.gc", &[__t37, __t52])? + rt::apply_direct(interp, "shen.gc", &[__t37, __t56])? }); } } else { @@ -328,294 +336,129 @@ pub fn aot_shen_x2e_variants_x3f_(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V5924 = args[0].clone(); + let mut v_V5500 = args[0].clone(); #[allow(unused_mut)] - let mut v_V5925 = args[1].clone(); + let mut v_V5501 = args[1].clone(); #[allow(unused_mut)] - let mut v_V5926 = args[2].clone(); + let mut v_V5502 = args[2].clone(); #[allow(unused_mut)] - let mut v_V5927 = args[3].clone(); + let mut v_V5503 = args[3].clone(); #[allow(unused_mut)] - let mut v_V5928 = args[4].clone(); + let mut v_V5504 = args[4].clone(); #[allow(unused_mut)] - let mut v_V5929 = args[5].clone(); + let mut v_V5505 = args[5].clone(); #[allow(unused_mut)] - let mut v_V5930 = args[6].clone(); + let mut v_V5506 = args[6].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5931 = { - let __t53 = v_V5929.clone(); - let __t54 = Value::int(1i64); - rt::add(&__t53, &__t54)? - }; - { - let v_W5932 = { - let __t71 = { - let __t55 = v_V5928.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t55])? - }; - if rt::is_truthy(interp, &__t71)? { + let v_W5507 = { + let __t64 = { + let __t57 = v_V5504.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t57])? + }; + if rt::is_truthy(interp, &__t64)? { + { + let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let v_W5933 = { - let __t56 = v_V5925.clone(); - let __t57 = v_V5927.clone(); - rt::apply_direct(interp, "shen.lazyderef", &[__t56, __t57])? - }; - { - let v_W5934 = { - let v_V5927 = v_V5927.clone(); - let v_V5928 = v_V5928.clone(); - let v_V5930 = v_V5930.clone(); - let v_W5931 = v_W5931.clone(); - rt::make_aot_closure( - "", - 0, - move |interp, _args| { - Ok({ - let _ = { - rt::apply_direct(interp, "shen.incinfs", &[])? - }; - { - let __t58 = v_V5927.clone(); - let __t59 = v_V5928.clone(); - let __t60 = v_W5931.clone(); - let __t61 = v_V5930.clone(); - rt::apply_direct( - interp, - "shen.cut", - &[__t58, __t59, __t60, __t61], - )? - } - }) - }, - vec![v_V5927, v_V5928, v_V5930, v_W5931], - interp, - ) - }; - { - let __t70 = { - let __t62 = v_W5933.clone(); - let __t63 = Value::sym(interp.intern("symbol")); - rt::eq(&__t62, &__t63) - }; - if rt::is_truthy(interp, &__t70)? { - rt::apply_value(interp, v_W5934.clone(), &[])? - } else { - { - let __t69 = { - let __t64 = v_W5933.clone(); - rt::apply_direct(interp, "shen.pvar?", &[__t64])? - }; - if rt::is_truthy(interp, &__t69)? { - { - let __t65 = v_W5933.clone(); - let __t66 = Value::sym(interp.intern("symbol")); - let __t67 = v_V5927.clone(); - let __t68 = v_W5934.clone(); - rt::apply_direct( - interp, - "shen.bind!", - &[__t65, __t66, __t67, __t68], - )? - } - } else { - Value::bool(false) - } - } - } - } - } + let __t58 = v_V5501.clone(); + let __t59 = v_V5502.clone(); + let __t60 = v_V5503.clone(); + let __t61 = v_V5504.clone(); + let __t62 = v_V5505.clone(); + let __t63 = v_V5506.clone(); + rt::apply_direct( + interp, + "is!", + &[__t58, __t59, __t60, __t61, __t62, __t63], + )? } - } else { - Value::bool(false) } + } else { + Value::bool(false) + } + }; + { + let __t67 = { + let __t65 = v_W5507.clone(); + let __t66 = Value::bool(false); + rt::eq(&__t65, &__t66) }; - { - let __t74 = { - let __t72 = v_W5932.clone(); - let __t73 = Value::bool(false); - rt::eq(&__t72, &__t73) - }; - if match rt::is_truthy(interp, &__t74) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W5935 = { - let __t82 = { - let __t75 = v_V5928.clone(); - rt::apply_direct(interp, "shen.unlocked?", &[__t75])? + if match rt::is_truthy(interp, &__t67) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let __t69 = { + let __t68 = v_V5504.clone(); + rt::apply_direct(interp, "shen.unlocked?", &[__t68])? + }; + if match rt::is_truthy(interp, &__t69) { + Ok(b) => b, + Err(e) => break Err(e), + } { + { + let v_W5508 = { + let __t70 = v_V5503.clone(); + rt::apply_direct(interp, "shen.newpv", &[__t70])? }; - if rt::is_truthy(interp, &__t82)? { - { + break Ok({ + let __t71 = v_V5503.clone(); + let __t87 = { let _ = { rt::apply_direct(interp, "shen.incinfs", &[])? }; { - let __t76 = v_V5925.clone(); - let __t77 = v_V5926.clone(); - let __t78 = v_V5927.clone(); - let __t79 = v_V5928.clone(); - let __t80 = v_W5931.clone(); - let __t81 = v_V5930.clone(); - rt::apply_direct( - interp, - "is!", - &[__t76, __t77, __t78, __t79, __t80, __t81], - )? - } - } - } else { - Value::bool(false) - } - }; - { - let __t85 = { - let __t83 = v_W5935.clone(); - let __t84 = Value::bool(false); - rt::eq(&__t83, &__t84) - }; - if match rt::is_truthy(interp, &__t85) { - Ok(b) => b, - Err(e) => break Err(e), - } { - { - let v_W5936 = { - let __t105 = { - let __t86 = v_V5928.clone(); - rt::apply_direct( - interp, - "shen.unlocked?", - &[__t86], - )? - }; - if rt::is_truthy(interp, &__t105)? { - { - let v_W5937 = { - let __t87 = v_V5927.clone(); - rt::apply_direct( - interp, - "shen.newpv", - &[__t87], - )? - }; - { - let __t88 = v_V5927.clone(); - let __t104 = { - let _ = { - rt::apply_direct( - interp, - "shen.incinfs", - &[], - )? - }; - { - let __t89 = v_W5937.clone(); - let __t99 = { - let __t97 = { - let __t90 = Value::str("warning: changing the type of "); - let __t96 = { - let __t93 = { - let __t91 = - v_V5924.clone(); - let __t92 = - v_V5927.clone(); - rt::apply_direct( - interp, - "shen.deref", - &[__t91, __t92], - )? - }; - let __t94 = Value::str(" may create errors\n"); - let __t95 = Value::sym( - interp.intern( - "shen.a", - ), - ); - rt::apply_direct( - interp, - "shen.app", - &[ - __t93, __t94, - __t95, - ], - )? - }; - rt::apply_direct( - interp, - "cn", - &[__t90, __t96], - )? - }; - let __t98 = { - rt::apply_direct( - interp, - "stoutput", - &[], - )? - }; - rt::apply_direct( - interp, - "pr", - &[__t97, __t98], - )? - }; - let __t100 = v_V5927.clone(); - let __t101 = v_V5928.clone(); - let __t102 = v_W5931.clone(); - let __t103 = v_V5930.clone(); - rt::apply_direct( - interp, - "is", - &[ - __t89, __t99, __t100, - __t101, __t102, __t103, - ], - )? - } + let __t72 = v_W5508.clone(); + let __t82 = { + let __t80 = { + let __t73 = Value::str( + "warning: changing the type of ", + ); + let __t79 = { + let __t76 = { + let __t74 = v_V5500.clone(); + let __t75 = v_V5503.clone(); + rt::apply_direct( + interp, + "shen.deref", + &[__t74, __t75], + )? }; + let __t77 = + Value::str(" may create errors\n"); + let __t78 = + Value::sym(interp.intern("shen.a")); rt::apply_direct( interp, - "shen.gc", - &[__t88, __t104], + "shen.app", + &[__t76, __t77, __t78], )? - } - } - } else { - Value::bool(false) - } - }; - { - let __t108 = { - let __t106 = v_W5936.clone(); - let __t107 = Value::bool(false); - rt::eq(&__t106, &__t107) + }; + rt::apply_direct(interp, "cn", &[__t73, __t79])? + }; + let __t81 = + { rt::apply_direct(interp, "stoutput", &[])? }; + rt::apply_direct(interp, "pr", &[__t80, __t81])? }; - if match rt::is_truthy(interp, &__t108) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t109 = v_V5928.clone(); - let __t110 = v_W5931.clone(); - rt::apply_direct( - interp, - "shen.unlock", - &[__t109, __t110], - )? - }); - } else { - break Ok(v_W5936.clone()); - } + let __t83 = v_V5503.clone(); + let __t84 = v_V5504.clone(); + let __t85 = v_V5505.clone(); + let __t86 = v_V5506.clone(); + rt::apply_direct( + interp, + "is", + &[__t72, __t82, __t83, __t84, __t85, __t86], + )? } - } - } else { - break Ok(v_W5935.clone()); - } + }; + rt::apply_direct(interp, "shen.gc", &[__t71, __t87])? + }); } + } else { + break Ok(Value::bool(false)); } - } else { - break Ok(v_W5932.clone()); } + } else { + break Ok(v_W5507.clone()); } } } @@ -639,120 +482,120 @@ pub fn aot_shen_x2e_prolog_x2d_abstraction( ))); } #[allow(unused_mut)] - let mut v_V5938 = args[0].clone(); + let mut v_V5509 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W5939 = { - let __t111 = Value::sym(interp.intern("B")); - rt::apply_direct(interp, "gensym", &[__t111])? + let v_W5510 = { + let __t88 = Value::sym(interp.intern("B")); + rt::apply_direct(interp, "gensym", &[__t88])? }; { - let v_W5940 = { - let __t112 = Value::sym(interp.intern("L")); - rt::apply_direct(interp, "gensym", &[__t112])? + let v_W5511 = { + let __t89 = Value::sym(interp.intern("L")); + rt::apply_direct(interp, "gensym", &[__t89])? }; { - let v_W5941 = { - let __t113 = Value::sym(interp.intern("Key")); - rt::apply_direct(interp, "gensym", &[__t113])? + let v_W5512 = { + let __t90 = Value::sym(interp.intern("Key")); + rt::apply_direct(interp, "gensym", &[__t90])? }; { - let v_W5942 = { - let __t114 = Value::sym(interp.intern("C")); - rt::apply_direct(interp, "gensym", &[__t114])? + let v_W5513 = { + let __t91 = Value::sym(interp.intern("C")); + rt::apply_direct(interp, "gensym", &[__t91])? }; { - let v_W5943 = { - let __t115 = Value::sym(interp.intern("V")); - rt::apply_direct(interp, "gensym", &[__t115])? + let v_W5514 = { + let __t92 = Value::sym(interp.intern("V")); + rt::apply_direct(interp, "gensym", &[__t92])? }; { - let v_W5944 = { - let __t116 = v_V5938.clone(); - rt::apply_direct(interp, "shen.extract-vars", &[__t116])? + let v_W5515 = { + let __t93 = v_V5509.clone(); + rt::apply_direct(interp, "shen.extract-vars", &[__t93])? }; break Ok({ - let __t117 = Value::sym(interp.intern("lambda")); - let __t164 = { - let __t118 = v_W5943.clone(); - let __t163 = { - let __t161 = { - let __t119 = Value::sym(interp.intern("lambda")); - let __t160 = { - let __t120 = v_W5939.clone(); - let __t159 = { - let __t157 = { - let __t121 = + let __t94 = Value::sym(interp.intern("lambda")); + let __t141 = { + let __t95 = v_W5514.clone(); + let __t140 = { + let __t138 = { + let __t96 = Value::sym(interp.intern("lambda")); + let __t137 = { + let __t97 = v_W5510.clone(); + let __t136 = { + let __t134 = { + let __t98 = Value::sym(interp.intern("lambda")); - let __t156 = { - let __t122 = v_W5940.clone(); - let __t155 = { - let __t153 = { - let __t123 = Value::sym( + let __t133 = { + let __t99 = v_W5511.clone(); + let __t132 = { + let __t130 = { + let __t100 = Value::sym( interp.intern("lambda"), ); - let __t152 = { - let __t124 = - v_W5941.clone(); - let __t151 = { - let __t149 = { - let __t125 = Value::sym(interp.intern("lambda")); - let __t148 = { - let __t126 = v_W5942.clone(); - let __t147 = { - let __t145 = { - let __t127 = v_W5944.clone(); - let __t143 = { let __t128 = Value::sym(interp.intern("is!")); let __t142 = { let __t129 = v_W5943.clone(); let __t141 = { let __t131 = { let __t130 = v_V5938.clone(); rt::apply_direct(interp, "shen.rcons_form", &[__t130])? }; let __t140 = { let __t132 = v_W5939.clone(); let __t139 = { let __t133 = v_W5940.clone(); let __t138 = { let __t134 = v_W5941.clone(); let __t137 = { let __t135 = v_W5942.clone(); let __t136 = Value::nil(); rt::cons(&__t135, &__t136) }; rt::cons(&__t134, &__t137) }; rt::cons(&__t133, &__t138) }; rt::cons(&__t132, &__t139) }; rt::cons(&__t131, &__t140) }; rt::cons(&__t129, &__t141) }; rt::cons(&__t128, &__t142) }; - let __t144 = v_W5939.clone(); - rt::apply_direct(interp, "shen.stpart", &[__t127, __t143, __t144])? + let __t129 = { + let __t101 = + v_W5512.clone(); + let __t128 = { + let __t126 = { + let __t102 = Value::sym(interp.intern("lambda")); + let __t125 = { + let __t103 = v_W5513.clone(); + let __t124 = { + let __t122 = { + let __t104 = v_W5515.clone(); + let __t120 = { let __t105 = Value::sym(interp.intern("is!")); let __t119 = { let __t106 = v_W5514.clone(); let __t118 = { let __t108 = { let __t107 = v_V5509.clone(); rt::apply_direct(interp, "shen.rcons_form", &[__t107])? }; let __t117 = { let __t109 = v_W5510.clone(); let __t116 = { let __t110 = v_W5511.clone(); let __t115 = { let __t111 = v_W5512.clone(); let __t114 = { let __t112 = v_W5513.clone(); let __t113 = Value::nil(); rt::cons(&__t112, &__t113) }; rt::cons(&__t111, &__t114) }; rt::cons(&__t110, &__t115) }; rt::cons(&__t109, &__t116) }; rt::cons(&__t108, &__t117) }; rt::cons(&__t106, &__t118) }; rt::cons(&__t105, &__t119) }; + let __t121 = v_W5510.clone(); + rt::apply_direct(interp, "shen.stpart", &[__t104, __t120, __t121])? }; - let __t146 = Value::nil(); - rt::cons(&__t145, &__t146) + let __t123 = Value::nil(); + rt::cons(&__t122, &__t123) }; rt::cons( - &__t126, - &__t147, + &__t103, + &__t124, ) }; rt::cons( + &__t102, &__t125, - &__t148, ) }; - let __t150 = + let __t127 = Value::nil(); rt::cons( - &__t149, - &__t150, + &__t126, + &__t127, ) }; rt::cons( - &__t124, &__t151, + &__t101, &__t128, ) }; - rt::cons(&__t123, &__t152) + rt::cons(&__t100, &__t129) }; - let __t154 = Value::nil(); - rt::cons(&__t153, &__t154) + let __t131 = Value::nil(); + rt::cons(&__t130, &__t131) }; - rt::cons(&__t122, &__t155) + rt::cons(&__t99, &__t132) }; - rt::cons(&__t121, &__t156) + rt::cons(&__t98, &__t133) }; - let __t158 = Value::nil(); - rt::cons(&__t157, &__t158) + let __t135 = Value::nil(); + rt::cons(&__t134, &__t135) }; - rt::cons(&__t120, &__t159) + rt::cons(&__t97, &__t136) }; - rt::cons(&__t119, &__t160) + rt::cons(&__t96, &__t137) }; - let __t162 = Value::nil(); - rt::cons(&__t161, &__t162) + let __t139 = Value::nil(); + rt::cons(&__t138, &__t139) }; - rt::cons(&__t118, &__t163) + rt::cons(&__t95, &__t140) }; - rt::cons(&__t117, &__t164) + rt::cons(&__t94, &__t141) }); } } @@ -784,19 +627,10 @@ pub fn aot_shen_x2e_demod(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { ))); } #[allow(unused_mut)] - let mut v_V6803 = args[0].clone(); + let mut v_V5561 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let v_W6804 = { - let __t0 = v_V6803.clone(); + let v_W5562 = { + let __t0 = v_V5561.clone(); let __t1 = Value::str("~S"); rt::apply_direct(interp, "shen.insert", &[__t0, __t1])? }; { - let v_W6805 = { - let __t2 = v_W6804.clone(); + let v_W5563 = { + let __t2 = v_W5562.clone(); let __t3 = { rt::apply_direct(interp, "stoutput", &[])? }; rt::apply_direct(interp, "pr", &[__t2, __t3])? }; - break Ok(v_V6803.clone()); + break Ok(v_V5561.clone()); } } } @@ -67,9 +67,9 @@ pub fn aot_pr(interp: &mut Interp, args: &[Value]) -> ShenResult { ))); } #[allow(unused_mut)] - let mut v_V6806 = args[0].clone(); + let mut v_V5564 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6807 = args[1].clone(); + let mut v_V5565 = args[1].clone(); #[allow(clippy::never_loop)] loop { { @@ -81,11 +81,11 @@ pub fn aot_pr(interp: &mut Interp, args: &[Value]) -> ShenResult { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6806.clone()); + break Ok(v_V5564.clone()); } else { { let __t7 = { - let __t6 = v_V6807.clone(); + let __t6 = v_V5565.clone(); rt::apply_direct(interp, "shen.char-stoutput?", &[__t6])? }; if match rt::is_truthy(interp, &__t7) { @@ -93,16 +93,16 @@ pub fn aot_pr(interp: &mut Interp, args: &[Value]) -> ShenResult { Err(e) => break Err(e), } { break Ok({ - let __t8 = v_V6806.clone(); - let __t9 = v_V6807.clone(); + let __t8 = v_V5564.clone(); + let __t9 = v_V5565.clone(); rt::apply_direct(interp, "shen.write-string", &[__t8, __t9])? }); } else { break Ok({ - let __t10 = v_V6806.clone(); - let __t11 = v_V6807.clone(); + let __t10 = v_V5564.clone(); + let __t11 = v_V5565.clone(); let __t14 = { - let __t12 = v_V6806.clone(); + let __t12 = v_V5564.clone(); let __t13 = Value::int(0i64); rt::apply_direct(interp, "shen.string->byte", &[__t12, __t13])? }; @@ -134,17 +134,17 @@ pub fn aot_shen_x2e_string_x2d__x3e_byte(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V6808 = args[0].clone(); + let mut v_V5566 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6809 = args[1].clone(); + let mut v_V5567 = args[1].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ let __t18 = { - let __t16 = v_V6808.clone(); - let __t17 = v_V6809.clone(); + let __t16 = v_V5566.clone(); + let __t17 = v_V5567.clone(); rt::apply_direct(interp, "pos", &[__t16, __t17])? }; rt::apply_direct(interp, "string->n", &[__t18])? @@ -157,7 +157,7 @@ pub fn aot_shen_x2e_string_x2d__x3e_byte(interp: &mut Interp, args: &[Value]) -> "", 1, move |interp, args| { - let v_Z6810 = args[0].clone(); + let v_Z5568 = args[0].clone(); Ok(Value::sym(interp.intern("shen.eos"))) }, Vec::new(), @@ -186,26 +186,26 @@ pub fn aot_shen_x2e_write_x2d_chars(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V6811 = args[0].clone(); + let mut v_V5569 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6812 = args[1].clone(); + let mut v_V5570 = args[1].clone(); #[allow(unused_mut)] - let mut v_V6813 = args[2].clone(); + let mut v_V5571 = args[2].clone(); #[allow(unused_mut)] - let mut v_V6814 = args[3].clone(); + let mut v_V5572 = args[3].clone(); #[allow(clippy::never_loop)] loop { { let __t32 = { let __t30 = Value::sym(interp.intern("shen.eos")); - let __t31 = v_V6813.clone(); + let __t31 = v_V5571.clone(); rt::eq(&__t30, &__t31) }; if match rt::is_truthy(interp, &__t32) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6811.clone()); + break Ok(v_V5569.clone()); } else { { let __t29 = Value::bool(true); @@ -214,29 +214,29 @@ pub fn aot_shen_x2e_write_x2d_chars(interp: &mut Interp, args: &[Value]) -> Shen Err(e) => break Err(e), } { { - let __t19 = v_V6811.clone(); - let __t20 = v_V6812.clone(); + let __t19 = v_V5569.clone(); + let __t20 = v_V5570.clone(); let __t25 = { let _ = { - let __t21 = v_V6813.clone(); - let __t22 = v_V6812.clone(); + let __t21 = v_V5571.clone(); + let __t22 = v_V5570.clone(); rt::apply_direct(interp, "write-byte", &[__t21, __t22])? }; { - let __t23 = v_V6811.clone(); - let __t24 = v_V6814.clone(); + let __t23 = v_V5569.clone(); + let __t24 = v_V5572.clone(); rt::apply_direct(interp, "shen.string->byte", &[__t23, __t24])? } }; let __t28 = { - let __t26 = v_V6814.clone(); + let __t26 = v_V5572.clone(); let __t27 = Value::int(1i64); rt::add(&__t26, &__t27)? }; - v_V6811 = __t19; - v_V6812 = __t20; - v_V6813 = __t25; - v_V6814 = __t28; + v_V5569 = __t19; + v_V5570 = __t20; + v_V5571 = __t25; + v_V5572 = __t28; continue; } } else { @@ -262,14 +262,14 @@ pub fn aot_shen_x2e_mkstr(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult ShenResult ShenResu ))); } #[allow(unused_mut)] - let mut v_V6821 = args[0].clone(); + let mut v_V5579 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6822 = args[1].clone(); + let mut v_V5580 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t57 = { let __t55 = Value::nil(); - let __t56 = v_V6822.clone(); + let __t56 = v_V5580.clone(); rt::eq(&__t55, &__t56) }; if match rt::is_truthy(interp, &__t57) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6821.clone()); + break Ok(v_V5579.clone()); } else { { let __t54 = { - let __t47 = v_V6822.clone(); + let __t47 = v_V5580.clone(); rt::is_cons(&__t47) }; if match rt::is_truthy(interp, &__t54) { @@ -356,18 +356,18 @@ pub fn aot_shen_x2e_mkstr_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenResu { let __t51 = { let __t49 = { - let __t48 = v_V6822.clone(); + let __t48 = v_V5580.clone(); rt::hd(&__t48)? }; - let __t50 = v_V6821.clone(); + let __t50 = v_V5579.clone(); rt::apply_direct(interp, "shen.insert-l", &[__t49, __t50])? }; let __t53 = { - let __t52 = v_V6822.clone(); + let __t52 = v_V5580.clone(); rt::tl(&__t52)? }; - v_V6821 = __t51; - v_V6822 = __t53; + v_V5579 = __t51; + v_V5580 = __t53; continue; } } else { @@ -406,15 +406,15 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes ))); } #[allow(unused_mut)] - let mut v_V6829 = args[0].clone(); + let mut v_V5587 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6830 = args[1].clone(); + let mut v_V5588 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t238 = { let __t236 = Value::str(""); - let __t237 = v_V6830.clone(); + let __t237 = v_V5588.clone(); rt::eq(&__t236, &__t237) }; if match rt::is_truthy(interp, &__t238) { @@ -426,7 +426,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t235 = { let __t223 = { - let __t209 = v_V6830.clone(); + let __t209 = v_V5588.clone(); rt::apply_direct(interp, "shen.+string?", &[__t209])? }; if !rt::is_truthy(interp, &__t223)? { @@ -436,7 +436,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t221 = { let __t210 = Value::str("~"); let __t212 = { - let __t211 = v_V6830.clone(); + let __t211 = v_V5588.clone(); rt::apply_direct(interp, "hdstr", &[__t211])? }; rt::eq(&__t210, &__t212) @@ -447,7 +447,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t222 = { let __t219 = { let __t214 = { - let __t213 = v_V6830.clone(); + let __t213 = v_V5588.clone(); rt::apply_direct(interp, "tlstr", &[__t213])? }; rt::apply_direct(interp, "shen.+string?", &[__t214])? @@ -459,7 +459,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t215 = Value::str("A"); let __t218 = { let __t217 = { - let __t216 = v_V6830.clone(); + let __t216 = v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -486,11 +486,11 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes break Ok({ let __t225 = Value::sym(interp.intern("shen.app")); let __t234 = { - let __t226 = v_V6829.clone(); + let __t226 = v_V5587.clone(); let __t233 = { let __t229 = { let __t228 = { - let __t227 = v_V6830.clone(); + let __t227 = v_V5588.clone(); rt::apply_direct(interp, "tlstr", &[__t227])? }; rt::apply_direct(interp, "tlstr", &[__t228])? @@ -510,7 +510,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t208 = { let __t196 = { - let __t182 = v_V6830.clone(); + let __t182 = v_V5588.clone(); rt::apply_direct(interp, "shen.+string?", &[__t182])? }; if !rt::is_truthy(interp, &__t196)? { @@ -520,7 +520,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t194 = { let __t183 = Value::str("~"); let __t185 = { - let __t184 = v_V6830.clone(); + let __t184 = v_V5588.clone(); rt::apply_direct(interp, "hdstr", &[__t184])? }; rt::eq(&__t183, &__t185) @@ -531,7 +531,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t195 = { let __t192 = { let __t187 = { - let __t186 = v_V6830.clone(); + let __t186 = v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -551,7 +551,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t188 = Value::str("R"); let __t191 = { let __t190 = { - let __t189 = v_V6830.clone(); + let __t189 = v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -582,11 +582,11 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes break Ok({ let __t198 = Value::sym(interp.intern("shen.app")); let __t207 = { - let __t199 = v_V6829.clone(); + let __t199 = v_V5587.clone(); let __t206 = { let __t202 = { let __t201 = { - let __t200 = v_V6830.clone(); + let __t200 = v_V5588.clone(); rt::apply_direct(interp, "tlstr", &[__t200])? }; rt::apply_direct(interp, "tlstr", &[__t201])? @@ -606,7 +606,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t181 = { let __t169 = { - let __t155 = v_V6830.clone(); + let __t155 = v_V5588.clone(); rt::apply_direct(interp, "shen.+string?", &[__t155])? }; if !rt::is_truthy(interp, &__t169)? { @@ -616,7 +616,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t167 = { let __t156 = Value::str("~"); let __t158 = { - let __t157 = v_V6830.clone(); + let __t157 = v_V5588.clone(); rt::apply_direct( interp, "hdstr", @@ -631,7 +631,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t168 = { let __t165 = { let __t160 = { - let __t159 = v_V6830.clone(); + let __t159 = v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -652,7 +652,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t164 = { let __t163 = { let __t162 = - v_V6830.clone(); + v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -685,11 +685,11 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes break Ok({ let __t171 = Value::sym(interp.intern("shen.app")); let __t180 = { - let __t172 = v_V6829.clone(); + let __t172 = v_V5587.clone(); let __t179 = { let __t175 = { let __t174 = { - let __t173 = v_V6830.clone(); + let __t173 = v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -717,7 +717,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes } else { { let __t154 = { - let __t142 = v_V6830.clone(); + let __t142 = v_V5588.clone(); rt::apply_direct( interp, "shen.+string?", @@ -734,7 +734,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes Value::sym(interp.intern("cn")); let __t152 = { let __t145 = { - let __t144 = v_V6830.clone(); + let __t144 = v_V5588.clone(); rt::apply_direct( interp, "hdstr", @@ -743,10 +743,10 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes }; let __t151 = { let __t149 = { - let __t146 = v_V6829.clone(); + let __t146 = v_V5587.clone(); let __t148 = { let __t147 = - v_V6830.clone(); + v_V5588.clone(); rt::apply_direct( interp, "tlstr", @@ -776,7 +776,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t141 = { let __t126 = { - let __t106 = v_V6830.clone(); + let __t106 = v_V5588.clone(); rt::is_cons(&__t106) }; if !rt::is_truthy(interp, &__t126)? { @@ -789,7 +789,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes ); let __t109 = { let __t108 = - v_V6830.clone(); + v_V5588.clone(); rt::hd(&__t108)? }; rt::eq(&__t107, &__t109) @@ -802,7 +802,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t122 = { let __t111 = { let __t110 = - v_V6830.clone(); + v_V5588.clone(); rt::tl(&__t110)? }; rt::is_cons(&__t111) @@ -816,7 +816,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t120 = { let __t114 = { let __t113 = { - let __t112 = v_V6830.clone(); + let __t112 = v_V5588.clone(); rt::tl(&__t112)? }; rt::tl( @@ -838,7 +838,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t115 = Value::nil(); let __t119 = { let __t118 = { - let __t117 = { let __t116 = v_V6830.clone(); rt::tl(&__t116)? }; + let __t117 = { let __t116 = v_V5588.clone(); rt::tl(&__t116)? }; rt::tl(&__t117)? }; rt::tl(&__t118)? @@ -879,7 +879,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t131 = { let __t130 = { let __t129 = - v_V6830.clone(); + v_V5588.clone(); rt::tl(&__t129)? }; rt::hd(&__t130)? @@ -887,12 +887,12 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t139 = { let __t137 = { let __t132 = - v_V6829.clone(); + v_V5587.clone(); let __t136 = { let __t135 = { let __t134 = { let __t133 = - v_V6830 + v_V5588 .clone( ); rt::tl(&__t133)? @@ -918,7 +918,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t105 = { let __t87 = { - let __t60 = v_V6830.clone(); + let __t60 = v_V5588.clone(); rt::is_cons(&__t60) }; if !rt::is_truthy(interp, &__t87)? { @@ -933,7 +933,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes ); let __t63 = { let __t62 = - v_V6830.clone(); + v_V5588.clone(); rt::hd(&__t62)? }; rt::eq(&__t61, &__t63) @@ -946,7 +946,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t86 = { let __t83 = { let __t65 = { - let __t64 = v_V6830.clone(); + let __t64 = v_V5588.clone(); rt::tl( &__t64, )? @@ -965,12 +965,12 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t84 = { let __t81 = { let __t68 = { - let __t67 = { let __t66 = v_V6830.clone(); rt::tl(&__t66)? }; + let __t67 = { let __t66 = v_V5588.clone(); rt::tl(&__t66)? }; rt::tl(&__t67)? }; rt::is_cons(&__t68) }; - if !rt::is_truthy(interp, &__t81)? { Value::bool(false) } else { let __t82 = { let __t79 = { let __t72 = { let __t71 = { let __t70 = { let __t69 = v_V6830.clone(); rt::tl(&__t69)? }; rt::tl(&__t70)? }; rt::tl(&__t71)? }; rt::is_cons(&__t72) }; if !rt::is_truthy(interp, &__t79)? { Value::bool(false) } else { let __t80 = { let __t73 = Value::nil(); let __t78 = { let __t77 = { let __t76 = { let __t75 = { let __t74 = v_V6830.clone(); rt::tl(&__t74)? }; rt::tl(&__t75)? }; rt::tl(&__t76)? }; rt::tl(&__t77)? }; rt::eq(&__t73, &__t78) }; Value::bool(rt::is_truthy(interp, &__t80)?) } }; Value::bool(rt::is_truthy(interp, &__t82)?) } + if !rt::is_truthy(interp, &__t81)? { Value::bool(false) } else { let __t82 = { let __t79 = { let __t72 = { let __t71 = { let __t70 = { let __t69 = v_V5588.clone(); rt::tl(&__t69)? }; rt::tl(&__t70)? }; rt::tl(&__t71)? }; rt::is_cons(&__t72) }; if !rt::is_truthy(interp, &__t79)? { Value::bool(false) } else { let __t80 = { let __t73 = Value::nil(); let __t78 = { let __t77 = { let __t76 = { let __t75 = { let __t74 = v_V5588.clone(); rt::tl(&__t74)? }; rt::tl(&__t75)? }; rt::tl(&__t76)? }; rt::tl(&__t77)? }; rt::eq(&__t73, &__t78) }; Value::bool(rt::is_truthy(interp, &__t80)?) } }; Value::bool(rt::is_truthy(interp, &__t82)?) } }; Value::bool(rt::is_truthy(interp, &__t84)?) } @@ -1000,7 +1000,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t92 = { let __t91 = { let __t90 = - v_V6830.clone(); + v_V5588.clone(); rt::tl(&__t90)? }; rt::hd(&__t91)? @@ -1008,11 +1008,11 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t103 = { let __t98 = { let __t93 = - v_V6829.clone(); + v_V5587.clone(); let __t97 = { let __t96 = { let __t95 = { - let __t94 = v_V6830.clone(); + let __t94 = v_V5588.clone(); rt::tl(&__t94)? }; rt::tl( @@ -1030,7 +1030,7 @@ pub fn aot_shen_x2e_insert_x2d_l(interp: &mut Interp, args: &[Value]) -> ShenRes let __t102 = { let __t101 = { let __t100 = { - let __t99 = v_V6830.clone(); + let __t99 = v_V5588.clone(); rt::tl( &__t99, )? @@ -1099,13 +1099,13 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V6831 = args[0].clone(); + let mut v_V5589 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t332 = { let __t312 = { - let __t240 = v_V6831.clone(); + let __t240 = v_V5589.clone(); rt::is_cons(&__t240) }; if !rt::is_truthy(interp, &__t312)? { @@ -1115,7 +1115,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t310 = { let __t241 = Value::sym(interp.intern("cn")); let __t243 = { - let __t242 = v_V6831.clone(); + let __t242 = v_V5589.clone(); rt::hd(&__t242)? }; rt::eq(&__t241, &__t243) @@ -1126,7 +1126,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t311 = { let __t308 = { let __t245 = { - let __t244 = v_V6831.clone(); + let __t244 = v_V5589.clone(); rt::tl(&__t244)? }; rt::is_cons(&__t245) @@ -1138,7 +1138,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t306 = { let __t248 = { let __t247 = { - let __t246 = v_V6831.clone(); + let __t246 = v_V5589.clone(); rt::tl(&__t246)? }; rt::tl(&__t247)? @@ -1153,7 +1153,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t252 = { let __t251 = { let __t250 = { - let __t249 = v_V6831.clone(); + let __t249 = v_V5589.clone(); rt::tl(&__t249)? }; rt::tl(&__t250)? @@ -1174,7 +1174,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t256 = { let __t255 = { let __t254 = - v_V6831.clone(); + v_V5589.clone(); rt::tl(&__t254)? }; rt::tl(&__t255)? @@ -1195,7 +1195,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t261 = { let __t260 = { let __t259 = - v_V6831 + v_V5589 .clone( ); rt::tl(&__t259)? @@ -1219,7 +1219,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t267 = { let __t266 = { let __t265 = { - let __t264 = v_V6831.clone(); + let __t264 = v_V5589.clone(); rt::tl(&__t264)? }; rt::tl(&__t265)? @@ -1247,7 +1247,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t277 = { let __t276 = { let __t275 = { - let __t274 = { let __t273 = { let __t272 = { let __t271 = v_V6831.clone(); rt::tl(&__t271)? }; rt::tl(&__t272)? }; rt::hd(&__t273)? }; + let __t274 = { let __t273 = { let __t272 = { let __t271 = v_V5589.clone(); rt::tl(&__t271)? }; rt::tl(&__t272)? }; rt::hd(&__t273)? }; rt::tl(&__t274)? }; rt::tl(&__t275)? @@ -1272,12 +1272,12 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t294 = { let __t278 = Value::nil(); let __t282 = { - let __t281 = { let __t280 = { let __t279 = v_V6831.clone(); rt::tl(&__t279)? }; rt::tl(&__t280)? }; + let __t281 = { let __t280 = { let __t279 = v_V5589.clone(); rt::tl(&__t279)? }; rt::tl(&__t280)? }; rt::tl(&__t281)? }; rt::eq(&__t278, &__t282) }; - if !rt::is_truthy(interp, &__t294)? { Value::bool(false) } else { let __t295 = { let __t292 = { let __t285 = { let __t284 = { let __t283 = v_V6831.clone(); rt::tl(&__t283)? }; rt::hd(&__t284)? }; rt::is_string(&__t285) }; if !rt::is_truthy(interp, &__t292)? { Value::bool(false) } else { let __t293 = { let __t291 = { let __t290 = { let __t289 = { let __t288 = { let __t287 = { let __t286 = v_V6831.clone(); rt::tl(&__t286)? }; rt::tl(&__t287)? }; rt::hd(&__t288)? }; rt::tl(&__t289)? }; rt::hd(&__t290)? }; rt::is_string(&__t291) }; Value::bool(rt::is_truthy(interp, &__t293)?) } }; Value::bool(rt::is_truthy(interp, &__t295)?) } + if !rt::is_truthy(interp, &__t294)? { Value::bool(false) } else { let __t295 = { let __t292 = { let __t285 = { let __t284 = { let __t283 = v_V5589.clone(); rt::tl(&__t283)? }; rt::hd(&__t284)? }; rt::is_string(&__t285) }; if !rt::is_truthy(interp, &__t292)? { Value::bool(false) } else { let __t293 = { let __t291 = { let __t290 = { let __t289 = { let __t288 = { let __t287 = { let __t286 = v_V5589.clone(); rt::tl(&__t286)? }; rt::tl(&__t287)? }; rt::hd(&__t288)? }; rt::tl(&__t289)? }; rt::hd(&__t290)? }; rt::is_string(&__t291) }; Value::bool(rt::is_truthy(interp, &__t293)?) } }; Value::bool(rt::is_truthy(interp, &__t295)?) } }; Value::bool(rt::is_truthy(interp, &__t297)?) } @@ -1324,7 +1324,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t324 = { let __t317 = { let __t316 = { - let __t315 = v_V6831.clone(); + let __t315 = v_V5589.clone(); rt::tl(&__t315)? }; rt::hd(&__t316)? @@ -1334,7 +1334,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t321 = { let __t320 = { let __t319 = { - let __t318 = v_V6831.clone(); + let __t318 = v_V5589.clone(); rt::tl(&__t318)? }; rt::tl(&__t319)? @@ -1352,7 +1352,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe let __t328 = { let __t327 = { let __t326 = { - let __t325 = v_V6831.clone(); + let __t325 = v_V5589.clone(); rt::tl(&__t325)? }; rt::tl(&__t326)? @@ -1374,7 +1374,7 @@ pub fn aot_shen_x2e_factor_x2d_cn(interp: &mut Interp, args: &[Value]) -> ShenRe Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6831.clone()); + break Ok(v_V5589.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -1398,13 +1398,13 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V6834 = args[0].clone(); + let mut v_V5592 = args[0].clone(); #[allow(clippy::never_loop)] loop { { let __t367 = { let __t365 = Value::str(""); - let __t366 = v_V6834.clone(); + let __t366 = v_V5592.clone(); rt::eq(&__t365, &__t366) }; if match rt::is_truthy(interp, &__t367) { @@ -1416,7 +1416,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu { let __t364 = { let __t356 = { - let __t342 = v_V6834.clone(); + let __t342 = v_V5592.clone(); rt::apply_direct(interp, "shen.+string?", &[__t342])? }; if !rt::is_truthy(interp, &__t356)? { @@ -1426,7 +1426,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu let __t354 = { let __t343 = Value::str("~"); let __t345 = { - let __t344 = v_V6834.clone(); + let __t344 = v_V5592.clone(); rt::apply_direct(interp, "hdstr", &[__t344])? }; rt::eq(&__t343, &__t345) @@ -1437,7 +1437,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu let __t355 = { let __t352 = { let __t347 = { - let __t346 = v_V6834.clone(); + let __t346 = v_V5592.clone(); rt::apply_direct(interp, "tlstr", &[__t346])? }; rt::apply_direct(interp, "shen.+string?", &[__t347])? @@ -1449,7 +1449,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu let __t348 = Value::str("%"); let __t351 = { let __t350 = { - let __t349 = v_V6834.clone(); + let __t349 = v_V5592.clone(); rt::apply_direct( interp, "tlstr", @@ -1481,7 +1481,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu let __t363 = { let __t362 = { let __t361 = { - let __t360 = v_V6834.clone(); + let __t360 = v_V5592.clone(); rt::apply_direct(interp, "tlstr", &[__t360])? }; rt::apply_direct(interp, "tlstr", &[__t361])? @@ -1493,7 +1493,7 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu } else { { let __t341 = { - let __t335 = v_V6834.clone(); + let __t335 = v_V5592.clone(); rt::apply_direct(interp, "shen.+string?", &[__t335])? }; if match rt::is_truthy(interp, &__t341) { @@ -1502,12 +1502,12 @@ pub fn aot_shen_x2e_proc_x2d_nl(interp: &mut Interp, args: &[Value]) -> ShenResu } { break Ok({ let __t337 = { - let __t336 = v_V6834.clone(); + let __t336 = v_V5592.clone(); rt::apply_direct(interp, "hdstr", &[__t336])? }; let __t340 = { let __t339 = { - let __t338 = v_V6834.clone(); + let __t338 = v_V5592.clone(); rt::apply_direct(interp, "tlstr", &[__t338])? }; rt::apply_direct(interp, "shen.proc-nl", &[__t339])? @@ -1553,26 +1553,26 @@ pub fn aot_shen_x2e_mkstr_x2d_r(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V6839 = args[0].clone(); + let mut v_V5597 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6840 = args[1].clone(); + let mut v_V5598 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t384 = { let __t382 = Value::nil(); - let __t383 = v_V6840.clone(); + let __t383 = v_V5598.clone(); rt::eq(&__t382, &__t383) }; if match rt::is_truthy(interp, &__t384) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6839.clone()); + break Ok(v_V5597.clone()); } else { { let __t381 = { - let __t370 = v_V6840.clone(); + let __t370 = v_V5598.clone(); rt::is_cons(&__t370) }; if match rt::is_truthy(interp, &__t381) { @@ -1584,11 +1584,11 @@ pub fn aot_shen_x2e_mkstr_x2d_r(interp: &mut Interp, args: &[Value]) -> ShenResu let __t371 = Value::sym(interp.intern("shen.insert")); let __t377 = { let __t373 = { - let __t372 = v_V6840.clone(); + let __t372 = v_V5598.clone(); rt::hd(&__t372)? }; let __t376 = { - let __t374 = v_V6839.clone(); + let __t374 = v_V5597.clone(); let __t375 = Value::nil(); rt::cons(&__t374, &__t375) }; @@ -1597,11 +1597,11 @@ pub fn aot_shen_x2e_mkstr_x2d_r(interp: &mut Interp, args: &[Value]) -> ShenResu rt::cons(&__t371, &__t377) }; let __t380 = { - let __t379 = v_V6840.clone(); + let __t379 = v_V5598.clone(); rt::tl(&__t379)? }; - v_V6839 = __t378; - v_V6840 = __t380; + v_V5597 = __t378; + v_V5598 = __t380; continue; } } else { @@ -1640,14 +1640,14 @@ pub fn aot_shen_x2e_insert(interp: &mut Interp, args: &[Value]) -> ShenResult ShenRes ))); } #[allow(unused_mut)] - let mut v_V6851 = args[0].clone(); + let mut v_V5609 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6852 = args[1].clone(); + let mut v_V5610 = args[1].clone(); #[allow(unused_mut)] - let mut v_V6853 = args[2].clone(); + let mut v_V5611 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t473 = { let __t471 = Value::str(""); - let __t472 = v_V6852.clone(); + let __t472 = v_V5610.clone(); rt::eq(&__t471, &__t472) }; if match rt::is_truthy(interp, &__t473) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6853.clone()); + break Ok(v_V5611.clone()); } else { { let __t470 = { let __t461 = { - let __t447 = v_V6852.clone(); + let __t447 = v_V5610.clone(); rt::apply_direct(interp, "shen.+string?", &[__t447])? }; if !rt::is_truthy(interp, &__t461)? { @@ -1700,7 +1700,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t459 = { let __t448 = Value::str("~"); let __t450 = { - let __t449 = v_V6852.clone(); + let __t449 = v_V5610.clone(); rt::apply_direct(interp, "hdstr", &[__t449])? }; rt::eq(&__t448, &__t450) @@ -1711,7 +1711,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t460 = { let __t457 = { let __t452 = { - let __t451 = v_V6852.clone(); + let __t451 = v_V5610.clone(); rt::apply_direct(interp, "tlstr", &[__t451])? }; rt::apply_direct(interp, "shen.+string?", &[__t452])? @@ -1723,7 +1723,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t453 = Value::str("A"); let __t456 = { let __t455 = { - let __t454 = v_V6852.clone(); + let __t454 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1748,12 +1748,12 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t463 = v_V6853.clone(); + let __t463 = v_V5611.clone(); let __t469 = { - let __t464 = v_V6851.clone(); + let __t464 = v_V5609.clone(); let __t467 = { let __t466 = { - let __t465 = v_V6852.clone(); + let __t465 = v_V5610.clone(); rt::apply_direct(interp, "tlstr", &[__t465])? }; rt::apply_direct(interp, "tlstr", &[__t466])? @@ -1767,7 +1767,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t446 = { let __t437 = { - let __t423 = v_V6852.clone(); + let __t423 = v_V5610.clone(); rt::apply_direct(interp, "shen.+string?", &[__t423])? }; if !rt::is_truthy(interp, &__t437)? { @@ -1777,7 +1777,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t435 = { let __t424 = Value::str("~"); let __t426 = { - let __t425 = v_V6852.clone(); + let __t425 = v_V5610.clone(); rt::apply_direct(interp, "hdstr", &[__t425])? }; rt::eq(&__t424, &__t426) @@ -1788,7 +1788,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t436 = { let __t433 = { let __t428 = { - let __t427 = v_V6852.clone(); + let __t427 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1808,7 +1808,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t429 = Value::str("R"); let __t432 = { let __t431 = { - let __t430 = v_V6852.clone(); + let __t430 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1837,12 +1837,12 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t439 = v_V6853.clone(); + let __t439 = v_V5611.clone(); let __t445 = { - let __t440 = v_V6851.clone(); + let __t440 = v_V5609.clone(); let __t443 = { let __t442 = { - let __t441 = v_V6852.clone(); + let __t441 = v_V5610.clone(); rt::apply_direct(interp, "tlstr", &[__t441])? }; rt::apply_direct(interp, "tlstr", &[__t442])? @@ -1860,7 +1860,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes { let __t422 = { let __t413 = { - let __t399 = v_V6852.clone(); + let __t399 = v_V5610.clone(); rt::apply_direct(interp, "shen.+string?", &[__t399])? }; if !rt::is_truthy(interp, &__t413)? { @@ -1870,7 +1870,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t411 = { let __t400 = Value::str("~"); let __t402 = { - let __t401 = v_V6852.clone(); + let __t401 = v_V5610.clone(); rt::apply_direct( interp, "hdstr", @@ -1885,7 +1885,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t412 = { let __t409 = { let __t404 = { - let __t403 = v_V6852.clone(); + let __t403 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1906,7 +1906,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes let __t408 = { let __t407 = { let __t406 = - v_V6852.clone(); + v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1937,12 +1937,12 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { break Ok({ - let __t415 = v_V6853.clone(); + let __t415 = v_V5611.clone(); let __t421 = { - let __t416 = v_V6851.clone(); + let __t416 = v_V5609.clone(); let __t419 = { let __t418 = { - let __t417 = v_V6852.clone(); + let __t417 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1963,7 +1963,7 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes } else { { let __t398 = { - let __t390 = v_V6852.clone(); + let __t390 = v_V5610.clone(); rt::apply_direct( interp, "shen.+string?", @@ -1975,9 +1975,9 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes Err(e) => break Err(e), } { { - let __t391 = v_V6851.clone(); + let __t391 = v_V5609.clone(); let __t393 = { - let __t392 = v_V6852.clone(); + let __t392 = v_V5610.clone(); rt::apply_direct( interp, "tlstr", @@ -1985,9 +1985,9 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes )? }; let __t397 = { - let __t394 = v_V6853.clone(); + let __t394 = v_V5611.clone(); let __t396 = { - let __t395 = v_V6852.clone(); + let __t395 = v_V5610.clone(); rt::apply_direct( interp, "hdstr", @@ -2000,9 +2000,9 @@ pub fn aot_shen_x2e_insert_x2d_h(interp: &mut Interp, args: &[Value]) -> ShenRes &[__t394, __t396], )? }; - v_V6851 = __t391; - v_V6852 = __t393; - v_V6853 = __t397; + v_V5609 = __t391; + v_V5610 = __t393; + v_V5611 = __t397; continue; } } else { @@ -2053,20 +2053,20 @@ pub fn aot_shen_x2e_app(interp: &mut Interp, args: &[Value]) -> ShenResultstr", &[__t474, __t475])? }; - let __t477 = v_V6855.clone(); + let __t477 = v_V5613.clone(); rt::apply_direct(interp, "cn", &[__t476, __t477])? }); } @@ -2086,14 +2086,14 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V6860 = args[0].clone(); + let mut v_V5618 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6861 = args[1].clone(); + let mut v_V5619 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t494 = { - let __t492 = v_V6860.clone(); + let __t492 = v_V5618.clone(); let __t493 = { rt::apply_direct(interp, "fail", &[])? }; rt::eq(&__t492, &__t493) }; @@ -2105,7 +2105,7 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She } else { { let __t491 = { - let __t488 = v_V6860.clone(); + let __t488 = v_V5618.clone(); rt::apply_direct(interp, "shen.list?", &[__t488])? }; if match rt::is_truthy(interp, &__t491) { @@ -2113,14 +2113,14 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t489 = v_V6860.clone(); - let __t490 = v_V6861.clone(); + let __t489 = v_V5618.clone(); + let __t490 = v_V5619.clone(); rt::apply_direct(interp, "shen.list->str", &[__t489, __t490])? }); } else { { let __t487 = { - let __t484 = v_V6860.clone(); + let __t484 = v_V5618.clone(); rt::is_string(&__t484) }; if match rt::is_truthy(interp, &__t487) { @@ -2128,14 +2128,14 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t485 = v_V6860.clone(); - let __t486 = v_V6861.clone(); + let __t485 = v_V5618.clone(); + let __t486 = v_V5619.clone(); rt::apply_direct(interp, "shen.str->str", &[__t485, __t486])? }); } else { { let __t483 = { - let __t480 = v_V6860.clone(); + let __t480 = v_V5618.clone(); rt::is_absvector(&__t480) }; if match rt::is_truthy(interp, &__t483) { @@ -2143,8 +2143,8 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t481 = v_V6860.clone(); - let __t482 = v_V6861.clone(); + let __t481 = v_V5618.clone(); + let __t482 = v_V5619.clone(); rt::apply_direct( interp, "shen.vector->str", @@ -2159,7 +2159,7 @@ pub fn aot_shen_x2e_arg_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She Err(e) => break Err(e), } { break Ok({ - let __t478 = v_V6860.clone(); + let __t478 = v_V5618.clone(); rt::apply_direct( interp, "shen.atom->str", @@ -2197,15 +2197,15 @@ pub fn aot_shen_x2e_list_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V6862 = args[0].clone(); + let mut v_V5620 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6863 = args[1].clone(); + let mut v_V5621 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t512 = { let __t503 = Value::sym(interp.intern("shen.r")); - let __t504 = v_V6863.clone(); + let __t504 = v_V5621.clone(); rt::eq(&__t503, &__t504) }; if match rt::is_truthy(interp, &__t512) { @@ -2216,7 +2216,7 @@ pub fn aot_shen_x2e_list_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> Sh let __t505 = Value::str("("); let __t511 = { let __t509 = { - let __t506 = v_V6862.clone(); + let __t506 = v_V5620.clone(); let __t507 = Value::sym(interp.intern("shen.r")); let __t508 = { rt::apply_direct(interp, "shen.maxseq", &[])? }; rt::apply_direct(interp, "shen.iter-list", &[__t506, __t507, __t508])? @@ -2237,8 +2237,8 @@ pub fn aot_shen_x2e_list_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> Sh let __t495 = Value::str("["); let __t501 = { let __t499 = { - let __t496 = v_V6862.clone(); - let __t497 = v_V6863.clone(); + let __t496 = v_V5620.clone(); + let __t497 = v_V5621.clone(); let __t498 = { rt::apply_direct(interp, "shen.maxseq", &[])? }; rt::apply_direct( interp, @@ -2296,17 +2296,17 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe ))); } #[allow(unused_mut)] - let mut v_V6874 = args[0].clone(); + let mut v_V5632 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6875 = args[1].clone(); + let mut v_V5633 = args[1].clone(); #[allow(unused_mut)] - let mut v_V6876 = args[2].clone(); + let mut v_V5634 = args[2].clone(); #[allow(clippy::never_loop)] loop { { let __t551 = { let __t549 = Value::nil(); - let __t550 = v_V6874.clone(); + let __t550 = v_V5632.clone(); rt::eq(&__t549, &__t550) }; if match rt::is_truthy(interp, &__t551) { @@ -2318,7 +2318,7 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe { let __t548 = { let __t546 = Value::int(0i64); - let __t547 = v_V6876.clone(); + let __t547 = v_V5634.clone(); rt::eq(&__t546, &__t547) }; if match rt::is_truthy(interp, &__t548) { @@ -2330,7 +2330,7 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe { let __t545 = { let __t540 = { - let __t536 = v_V6874.clone(); + let __t536 = v_V5632.clone(); rt::is_cons(&__t536) }; if !rt::is_truthy(interp, &__t540)? { @@ -2339,7 +2339,7 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe let __t541 = { let __t537 = Value::nil(); let __t539 = { - let __t538 = v_V6874.clone(); + let __t538 = v_V5632.clone(); rt::tl(&__t538)? }; rt::eq(&__t537, &__t539) @@ -2353,16 +2353,16 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe } { break Ok({ let __t543 = { - let __t542 = v_V6874.clone(); + let __t542 = v_V5632.clone(); rt::hd(&__t542)? }; - let __t544 = v_V6875.clone(); + let __t544 = v_V5633.clone(); rt::apply_direct(interp, "shen.arg->str", &[__t543, __t544])? }); } else { { let __t535 = { - let __t521 = v_V6874.clone(); + let __t521 = v_V5632.clone(); rt::is_cons(&__t521) }; if match rt::is_truthy(interp, &__t535) { @@ -2372,10 +2372,10 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe break Ok({ let __t525 = { let __t523 = { - let __t522 = v_V6874.clone(); + let __t522 = v_V5632.clone(); rt::hd(&__t522)? }; - let __t524 = v_V6875.clone(); + let __t524 = v_V5633.clone(); rt::apply_direct( interp, "shen.arg->str", @@ -2386,12 +2386,12 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe let __t526 = Value::str(" "); let __t533 = { let __t528 = { - let __t527 = v_V6874.clone(); + let __t527 = v_V5632.clone(); rt::tl(&__t527)? }; - let __t529 = v_V6875.clone(); + let __t529 = v_V5633.clone(); let __t532 = { - let __t530 = v_V6876.clone(); + let __t530 = v_V5634.clone(); let __t531 = Value::int(1i64); rt::sub(&__t530, &__t531)? }; @@ -2417,8 +2417,8 @@ pub fn aot_shen_x2e_iter_x2d_list(interp: &mut Interp, args: &[Value]) -> ShenRe let __t519 = { let __t515 = Value::str(" "); let __t518 = { - let __t516 = v_V6874.clone(); - let __t517 = v_V6875.clone(); + let __t516 = v_V5632.clone(); + let __t517 = v_V5633.clone(); rt::apply_direct( interp, "shen.arg->str", @@ -2468,22 +2468,22 @@ pub fn aot_shen_x2e_str_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V6879 = args[0].clone(); + let mut v_V5637 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6880 = args[1].clone(); + let mut v_V5638 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t561 = { let __t559 = Value::sym(interp.intern("shen.a")); - let __t560 = v_V6880.clone(); + let __t560 = v_V5638.clone(); rt::eq(&__t559, &__t560) }; if match rt::is_truthy(interp, &__t561) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V6879.clone()); + break Ok(v_V5637.clone()); } else { { let __t558 = Value::bool(true); @@ -2497,7 +2497,7 @@ pub fn aot_shen_x2e_str_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> She rt::apply_direct(interp, "n->string", &[__t552])? }; let __t557 = { - let __t554 = v_V6879.clone(); + let __t554 = v_V5637.clone(); let __t556 = { let __t555 = Value::int(34i64); rt::apply_direct(interp, "n->string", &[__t555])? @@ -2529,14 +2529,14 @@ pub fn aot_shen_x2e_vector_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> ))); } #[allow(unused_mut)] - let mut v_V6881 = args[0].clone(); + let mut v_V5639 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6882 = args[1].clone(); + let mut v_V5640 = args[1].clone(); #[allow(clippy::never_loop)] loop { { let __t563 = { - let __t562 = v_V6881.clone(); + let __t562 = v_V5639.clone(); rt::apply_direct(interp, "shen.print-vector?", &[__t562])? }; if match rt::is_truthy(interp, &__t563) { @@ -2546,19 +2546,19 @@ pub fn aot_shen_x2e_vector_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> break Ok({ let __t567 = { let __t566 = { - let __t564 = v_V6881.clone(); + let __t564 = v_V5639.clone(); let __t565 = Value::int(0i64); rt::apply_direct(interp, "<-address", &[__t564, __t565])? }; rt::apply_direct(interp, "fn", &[__t566])? }; - let __t568 = v_V6881.clone(); + let __t568 = v_V5639.clone(); rt::apply_value(interp, __t567, &[__t568])? }); } else { { let __t570 = { - let __t569 = v_V6881.clone(); + let __t569 = v_V5639.clone(); rt::is_absvector(&__t569) }; if match rt::is_truthy(interp, &__t570) { @@ -2569,9 +2569,9 @@ pub fn aot_shen_x2e_vector_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> let __t571 = Value::str("<"); let __t578 = { let __t576 = { - let __t572 = v_V6881.clone(); + let __t572 = v_V5639.clone(); let __t573 = Value::int(1i64); - let __t574 = v_V6882.clone(); + let __t574 = v_V5640.clone(); let __t575 = { rt::apply_direct(interp, "shen.maxseq", &[])? }; rt::apply_direct( interp, @@ -2591,9 +2591,9 @@ pub fn aot_shen_x2e_vector_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> let __t580 = Value::str("<"); let __t587 = { let __t585 = { - let __t581 = v_V6881.clone(); + let __t581 = v_V5639.clone(); let __t582 = Value::int(0i64); - let __t583 = v_V6882.clone(); + let __t583 = v_V5640.clone(); let __t584 = { rt::apply_direct(interp, "shen.maxseq", &[])? }; rt::apply_direct( @@ -2621,44 +2621,6 @@ fn install_shen_x2e_vector_x2d__x3e_str(interp: &mut Interp) { interp.register_aot_direct("shen.vector->str", aot_shen_x2e_vector_x2d__x3e_str); } -/// AOT-compiled from KL `(defun shen.empty-absvector? ...)` -pub fn aot_shen_x2e_empty_x2d_absvector_x3f_( - interp: &mut Interp, - args: &[Value], -) -> ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.empty-absvector?: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V6883 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok({ - let __t589 = v_V6883.clone(); - let __t591 = { - let __t590 = Value::sym(interp.intern("shen.*empty-absvector*")); - rt::apply_direct(interp, "value", &[__t590])? - }; - rt::eq(&__t589, &__t591) - }); - } -} - -fn install_shen_x2e_empty_x2d_absvector_x3f_(interp: &mut Interp) { - interp.register_native( - "shen.empty-absvector?", - 1, - aot_shen_x2e_empty_x2d_absvector_x3f_, - ); - interp.register_aot_direct( - "shen.empty-absvector?", - aot_shen_x2e_empty_x2d_absvector_x3f_, - ); -} - /// AOT-compiled from KL `(defun shen.print-vector? ...)` pub fn aot_shen_x2e_print_x2d_vector_x3f_( interp: &mut Interp, @@ -2671,92 +2633,57 @@ pub fn aot_shen_x2e_print_x2d_vector_x3f_( ))); } #[allow(unused_mut)] - let mut v_V6884 = args[0].clone(); + let mut v_V5641 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t594 = { + let v_W5642 = { + let __t589 = v_V5641.clone(); + let __t590 = Value::int(0i64); + rt::apply_direct(interp, "<-address", &[__t589, __t590])? + }; + { let __t593 = { - let __t592 = v_V6884.clone(); - rt::apply_direct(interp, "shen.empty-absvector?", &[__t592])? + let __t591 = v_W5642.clone(); + let __t592 = Value::sym(interp.intern("shen.tuple")); + rt::eq(&__t591, &__t592) }; - rt::apply_direct(interp, "not", &[__t593])? - }; - if !match rt::is_truthy(interp, &__t594) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - { - let v_W6885 = { - let __t595 = v_V6884.clone(); - let __t596 = Value::int(0i64); - rt::apply_direct(interp, "<-address", &[__t595, __t596])? - }; + if match rt::is_truthy(interp, &__t593) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(true)); + } else { { - let __t599 = { - let __t597 = v_W6885.clone(); - let __t598 = Value::sym(interp.intern("shen.tuple")); - rt::eq(&__t597, &__t598) + let __t596 = { + let __t594 = v_W5642.clone(); + let __t595 = Value::sym(interp.intern("shen.pvar")); + rt::eq(&__t594, &__t595) }; - if match rt::is_truthy(interp, &__t599) { + if match rt::is_truthy(interp, &__t596) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t602 = { - let __t600 = v_W6885.clone(); - let __t601 = Value::sym(interp.intern("shen.pvar")); - rt::eq(&__t600, &__t601) + let __t599 = { + let __t598 = { + let __t597 = v_W5642.clone(); + rt::is_number(&__t597) + }; + rt::apply_direct(interp, "not", &[__t598])? }; - if match rt::is_truthy(interp, &__t602) { + if match rt::is_truthy(interp, &__t599) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(Value::bool(true)); + break Ok({ + let __t600 = v_W5642.clone(); + rt::apply_direct(interp, "shen.fbound?", &[__t600])? + }); } else { - { - let __t605 = { - let __t603 = v_W6885.clone(); - let __t604 = - Value::sym(interp.intern("shen.dictionary")); - rt::eq(&__t603, &__t604) - }; - if match rt::is_truthy(interp, &__t605) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(true)); - } else { - { - let __t608 = { - let __t607 = { - let __t606 = v_W6885.clone(); - rt::is_number(&__t606) - }; - rt::apply_direct(interp, "not", &[__t607])? - }; - if !match rt::is_truthy(interp, &__t608) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok(Value::bool(false)); - } else { - break Ok({ - let __t609 = v_W6885.clone(); - rt::apply_direct( - interp, - "shen.fbound?", - &[__t609], - )? - }); - } - } - } - } + break Ok(Value::bool(false)); } } } @@ -2781,19 +2708,19 @@ pub fn aot_shen_x2e_fbound_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResu ))); } #[allow(unused_mut)] - let mut v_V6886 = args[0].clone(); + let mut v_V5643 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok({ - let __t613 = { - let __t611 = { - let __t610 = v_V6886.clone(); - rt::apply_direct(interp, "arity", &[__t610])? + let __t604 = { + let __t602 = { + let __t601 = v_V5643.clone(); + rt::apply_direct(interp, "arity", &[__t601])? }; - let __t612 = Value::int(-1i64); - rt::eq(&__t611, &__t612) + let __t603 = Value::int(-1i64); + rt::eq(&__t602, &__t603) }; - rt::apply_direct(interp, "not", &[__t613])? + rt::apply_direct(interp, "not", &[__t604])? }); } } @@ -2812,35 +2739,35 @@ pub fn aot_shen_x2e_tuple(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult { - if args.len() != 1 { - return Err(ShenError::new(format!( - "shen.dictionary: expected 1 args, got {}", - args.len() - ))); - } - #[allow(unused_mut)] - let mut v_V6888 = args[0].clone(); - #[allow(clippy::never_loop)] - loop { - break Ok(Value::str("(dict ...)")); - } -} - -fn install_shen_x2e_dictionary(interp: &mut Interp) { - interp.register_native("shen.dictionary", 1, aot_shen_x2e_dictionary); - interp.register_aot_direct("shen.dictionary", aot_shen_x2e_dictionary); -} - /// AOT-compiled from KL `(defun shen.iter-vector ...)` pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> ShenResult { if args.len() != 4 { @@ -2880,39 +2786,39 @@ pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> Shen ))); } #[allow(unused_mut)] - let mut v_V6895 = args[0].clone(); + let mut v_V5651 = args[0].clone(); #[allow(unused_mut)] - let mut v_V6896 = args[1].clone(); + let mut v_V5652 = args[1].clone(); #[allow(unused_mut)] - let mut v_V6897 = args[2].clone(); + let mut v_V5653 = args[2].clone(); #[allow(unused_mut)] - let mut v_V6898 = args[3].clone(); + let mut v_V5654 = args[3].clone(); #[allow(clippy::never_loop)] loop { { - let __t659 = { - let __t657 = Value::int(0i64); - let __t658 = v_V6898.clone(); - rt::eq(&__t657, &__t658) + let __t650 = { + let __t648 = Value::int(0i64); + let __t649 = v_V5654.clone(); + rt::eq(&__t648, &__t649) }; - if match rt::is_truthy(interp, &__t659) { + if match rt::is_truthy(interp, &__t650) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::str("... etc")); } else { { - let __t656 = Value::bool(true); - if match rt::is_truthy(interp, &__t656) { + let __t647 = Value::bool(true); + if match rt::is_truthy(interp, &__t647) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W6899 = match (|| -> ShenResult { + let v_W5655 = match (|| -> ShenResult { Ok({ - let __t628 = v_V6895.clone(); - let __t629 = v_V6896.clone(); - rt::apply_direct(interp, "<-address", &[__t628, __t629])? + let __t619 = v_V5651.clone(); + let __t620 = v_V5652.clone(); + rt::apply_direct(interp, "<-address", &[__t619, __t620])? }) })() { Ok(v) => v, @@ -2922,7 +2828,7 @@ pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> Shen "", 1, move |interp, args| { - let v_Z6900 = args[0].clone(); + let v_Z5656 = args[0].clone(); Ok(Value::sym(interp.intern("shen.out-of-bounds"))) }, Vec::new(), @@ -2934,15 +2840,15 @@ pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let v_W6901 = match (|| -> ShenResult { + let v_W5657 = match (|| -> ShenResult { Ok({ - let __t630 = v_V6895.clone(); - let __t633 = { - let __t631 = v_V6896.clone(); - let __t632 = Value::int(1i64); - rt::add(&__t631, &__t632)? + let __t621 = v_V5651.clone(); + let __t624 = { + let __t622 = v_V5652.clone(); + let __t623 = Value::int(1i64); + rt::add(&__t622, &__t623)? }; - rt::apply_direct(interp, "<-address", &[__t630, __t633])? + rt::apply_direct(interp, "<-address", &[__t621, __t624])? }) })() { Ok(v) => v, @@ -2952,7 +2858,7 @@ pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> Shen "", 1, move |interp, args| { - let v_Z6902 = args[0].clone(); + let v_Z5658 = args[0].clone(); Ok(Value::sym( interp.intern("shen.out-of-bounds"), )) @@ -2966,80 +2872,80 @@ pub fn aot_shen_x2e_iter_x2d_vector(interp: &mut Interp, args: &[Value]) -> Shen } }; { - let __t636 = { - let __t634 = v_W6899.clone(); - let __t635 = + let __t627 = { + let __t625 = v_W5655.clone(); + let __t626 = Value::sym(interp.intern("shen.out-of-bounds")); - rt::eq(&__t634, &__t635) + rt::eq(&__t625, &__t626) }; - if match rt::is_truthy(interp, &__t636) { + if match rt::is_truthy(interp, &__t627) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::str("")); } else { { - let __t639 = { - let __t637 = v_W6901.clone(); - let __t638 = + let __t630 = { + let __t628 = v_W5657.clone(); + let __t629 = Value::sym(interp.intern("shen.out-of-bounds")); - rt::eq(&__t637, &__t638) + rt::eq(&__t628, &__t629) }; - if match rt::is_truthy(interp, &__t639) { + if match rt::is_truthy(interp, &__t630) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t640 = v_W6899.clone(); - let __t641 = v_V6897.clone(); + let __t631 = v_W5655.clone(); + let __t632 = v_V5653.clone(); rt::apply_direct( interp, "shen.arg->str", - &[__t640, __t641], + &[__t631, __t632], )? }); } else { break Ok({ - let __t644 = { - let __t642 = v_W6899.clone(); - let __t643 = v_V6897.clone(); + let __t635 = { + let __t633 = v_W5655.clone(); + let __t634 = v_V5653.clone(); rt::apply_direct( interp, "shen.arg->str", - &[__t642, __t643], + &[__t633, __t634], )? }; - let __t655 = { - let __t645 = Value::str(" "); - let __t654 = { - let __t646 = v_V6895.clone(); - let __t649 = { - let __t647 = v_V6896.clone(); - let __t648 = Value::int(1i64); - rt::add(&__t647, &__t648)? + let __t646 = { + let __t636 = Value::str(" "); + let __t645 = { + let __t637 = v_V5651.clone(); + let __t640 = { + let __t638 = v_V5652.clone(); + let __t639 = Value::int(1i64); + rt::add(&__t638, &__t639)? }; - let __t650 = v_V6897.clone(); - let __t653 = { - let __t651 = v_V6898.clone(); - let __t652 = Value::int(1i64); - rt::sub(&__t651, &__t652)? + let __t641 = v_V5653.clone(); + let __t644 = { + let __t642 = v_V5654.clone(); + let __t643 = Value::int(1i64); + rt::sub(&__t642, &__t643)? }; rt::apply_direct( interp, "shen.iter-vector", - &[__t646, __t649, __t650, __t653], + &[__t637, __t640, __t641, __t644], )? }; rt::apply_direct( interp, "@s", - &[__t645, __t654], + &[__t636, __t645], )? }; rt::apply_direct( interp, "@s", - &[__t644, __t655], + &[__t635, __t646], )? }); } @@ -3071,14 +2977,14 @@ pub fn aot_shen_x2e_atom_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> Sh ))); } #[allow(unused_mut)] - let mut v_V6903 = args[0].clone(); + let mut v_V5659 = args[0].clone(); #[allow(clippy::never_loop)] loop { break Ok( match (|| -> ShenResult { Ok({ - let __t660 = v_V6903.clone(); - rt::apply_direct(interp, "str", &[__t660])? + let __t651 = v_V5659.clone(); + rt::apply_direct(interp, "str", &[__t651])? }) })() { Ok(v) => v, @@ -3088,7 +2994,7 @@ pub fn aot_shen_x2e_atom_x2d__x3e_str(interp: &mut Interp, args: &[Value]) -> Sh "", 1, move |interp, args| { - let v_Z6904 = args[0].clone(); + let v_Z5660 = args[0].clone(); Ok({ rt::apply_direct(interp, "shen.funexstring", &[])? }) }, Vec::new(), @@ -3119,39 +3025,39 @@ pub fn aot_shen_x2e_funexstring(interp: &mut Interp, args: &[Value]) -> ShenResu #[allow(clippy::never_loop)] loop { break Ok({ - let __t661 = Value::str("\u{10}"); - let __t676 = { - let __t662 = Value::str("f"); - let __t675 = { - let __t663 = Value::str("u"); - let __t674 = { - let __t664 = Value::str("n"); - let __t673 = { - let __t665 = Value::str("e"); - let __t672 = { - let __t670 = { - let __t668 = { - let __t667 = { - let __t666 = Value::str("x"); - rt::apply_direct(interp, "intern", &[__t666])? + let __t652 = Value::str("\u{10}"); + let __t667 = { + let __t653 = Value::str("f"); + let __t666 = { + let __t654 = Value::str("u"); + let __t665 = { + let __t655 = Value::str("n"); + let __t664 = { + let __t656 = Value::str("e"); + let __t663 = { + let __t661 = { + let __t659 = { + let __t658 = { + let __t657 = Value::str("x"); + rt::apply_direct(interp, "intern", &[__t657])? }; - rt::apply_direct(interp, "gensym", &[__t667])? + rt::apply_direct(interp, "gensym", &[__t658])? }; - let __t669 = Value::sym(interp.intern("shen.a")); - rt::apply_direct(interp, "shen.arg->str", &[__t668, __t669])? + let __t660 = Value::sym(interp.intern("shen.a")); + rt::apply_direct(interp, "shen.arg->str", &[__t659, __t660])? }; - let __t671 = Value::str("\u{11}"); - rt::apply_direct(interp, "@s", &[__t670, __t671])? + let __t662 = Value::str("\u{11}"); + rt::apply_direct(interp, "@s", &[__t661, __t662])? }; - rt::apply_direct(interp, "@s", &[__t665, __t672])? + rt::apply_direct(interp, "@s", &[__t656, __t663])? }; - rt::apply_direct(interp, "@s", &[__t664, __t673])? + rt::apply_direct(interp, "@s", &[__t655, __t664])? }; - rt::apply_direct(interp, "@s", &[__t663, __t674])? + rt::apply_direct(interp, "@s", &[__t654, __t665])? }; - rt::apply_direct(interp, "@s", &[__t662, __t675])? + rt::apply_direct(interp, "@s", &[__t653, __t666])? }; - rt::apply_direct(interp, "@s", &[__t661, __t676])? + rt::apply_direct(interp, "@s", &[__t652, __t667])? }); } } @@ -3170,23 +3076,23 @@ pub fn aot_shen_x2e_list_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResult ))); } #[allow(unused_mut)] - let mut v_V6905 = args[0].clone(); + let mut v_V5661 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t678 = { - let __t677 = v_V6905.clone(); - rt::apply_direct(interp, "empty?", &[__t677])? + let __t669 = { + let __t668 = v_V5661.clone(); + rt::apply_direct(interp, "empty?", &[__t668])? }; - if match rt::is_truthy(interp, &__t678) { + if match rt::is_truthy(interp, &__t669) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { break Ok({ - let __t679 = v_V6905.clone(); - rt::is_cons(&__t679) + let __t670 = v_V5661.clone(); + rt::is_cons(&__t670) }); } } @@ -3220,11 +3126,9 @@ pub fn install(interp: &mut Interp) { install_shen_x2e_iter_x2d_list(interp); install_shen_x2e_str_x2d__x3e_str(interp); install_shen_x2e_vector_x2d__x3e_str(interp); - install_shen_x2e_empty_x2d_absvector_x3f_(interp); install_shen_x2e_print_x2d_vector_x3f_(interp); install_shen_x2e_fbound_x3f_(interp); install_shen_x2e_tuple(interp); - install_shen_x2e_dictionary(interp); install_shen_x2e_iter_x2d_vector(interp); install_shen_x2e_atom_x2d__x3e_str(interp); install_shen_x2e_funexstring(interp); diff --git a/crates/shen-rust/src/aot/kernel/yacc.rs b/crates/shen-rust/src/aot/kernel/yacc.rs index 248ab00..beee954 100644 --- a/crates/shen-rust/src/aot/kernel/yacc.rs +++ b/crates/shen-rust/src/aot/kernel/yacc.rs @@ -246,10 +246,10 @@ pub fn aot_shen_x2e_syntax_x2d_error_x2d_message( Err(e) => break Err(e), } { break Ok({ - let __t20 = Value::sym( - interp.intern("shen.syntax-error-message"), + let __t20 = Value::str( + "partial function shen.syntax-error-message", ); - rt::apply_direct(interp, "shen.f-error", &[__t20])? + rt::apply_direct(interp, "simple-error", &[__t20])? }); } else { break Err(ShenError::new("cond: no clause matched")); @@ -4892,43 +4892,71 @@ pub fn aot_shen_x2e_ccons_x3f_(interp: &mut Interp, args: &[Value]) -> ShenResul ))); } #[allow(unused_mut)] - let mut v_V365 = args[0].clone(); + let mut v_V367 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t956 = { - let __t954 = { - let __t951 = v_V365.clone(); - rt::is_cons(&__t951) + let __t963 = { + let __t961 = { + let __t958 = v_V367.clone(); + rt::is_cons(&__t958) }; - if !rt::is_truthy(interp, &__t954)? { + if !rt::is_truthy(interp, &__t961)? { Value::bool(false) } else { - let __t955 = { - let __t953 = { - let __t952 = v_V365.clone(); - rt::hd(&__t952)? + let __t962 = { + let __t960 = { + let __t959 = v_V367.clone(); + rt::hd(&__t959)? }; - rt::is_cons(&__t953) + rt::is_cons(&__t960) }; - Value::bool(rt::is_truthy(interp, &__t955)?) + Value::bool(rt::is_truthy(interp, &__t962)?) } }; - if match rt::is_truthy(interp, &__t956) { + if match rt::is_truthy(interp, &__t963) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(true)); } else { { - let __t950 = Value::bool(true); - if match rt::is_truthy(interp, &__t950) { + let __t957 = { + let __t955 = { + let __t951 = v_V367.clone(); + rt::is_cons(&__t951) + }; + if !rt::is_truthy(interp, &__t955)? { + Value::bool(false) + } else { + let __t956 = { + let __t952 = Value::nil(); + let __t954 = { + let __t953 = v_V367.clone(); + rt::hd(&__t953)? + }; + rt::eq(&__t952, &__t954) + }; + Value::bool(rt::is_truthy(interp, &__t956)?) + } + }; + if match rt::is_truthy(interp, &__t957) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(Value::bool(false)); + break Ok(Value::bool(true)); } else { - break Err(ShenError::new("cond: no clause matched")); + { + let __t950 = Value::bool(true); + if match rt::is_truthy(interp, &__t950) { + Ok(b) => b, + Err(e) => break Err(e), + } { + break Ok(Value::bool(false)); + } else { + break Err(ShenError::new("cond: no clause matched")); + } + } } } } @@ -4950,116 +4978,116 @@ pub fn aot_shen_x2e_decons(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t982 = { - let __t981 = { - let __t980 = v_V366.clone(); - rt::tl(&__t980)? + let __t989 = { + let __t988 = { + let __t987 = v_V368.clone(); + rt::tl(&__t987)? }; - rt::hd(&__t981)? + rt::hd(&__t988)? }; - let __t987 = { - let __t986 = { - let __t985 = { - let __t984 = { - let __t983 = v_V366.clone(); - rt::tl(&__t983)? + let __t994 = { + let __t993 = { + let __t992 = { + let __t991 = { + let __t990 = v_V368.clone(); + rt::tl(&__t990)? }; - rt::tl(&__t984)? + rt::tl(&__t991)? }; - rt::hd(&__t985)? + rt::hd(&__t992)? }; - rt::apply_direct(interp, "shen.decons", &[__t986])? + rt::apply_direct(interp, "shen.decons", &[__t993])? }; - rt::cons(&__t982, &__t987) + rt::cons(&__t989, &__t994) }); } else { { - let __t957 = Value::bool(true); - if match rt::is_truthy(interp, &__t957) { + let __t964 = Value::bool(true); + if match rt::is_truthy(interp, &__t964) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V366.clone()); + break Ok(v_V368.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -5083,19 +5111,19 @@ pub fn aot_shen_x2e_comb(interp: &mut Interp, args: &[Value]) -> ShenResult S ))); } #[allow(unused_mut)] - let mut v_V373 = args[0].clone(); + let mut v_V375 = args[0].clone(); #[allow(unused_mut)] - let mut v_V374 = args[1].clone(); + let mut v_V376 = args[1].clone(); #[allow(unused_mut)] - let mut v_V375 = args[2].clone(); + let mut v_V377 = args[2].clone(); #[allow(clippy::never_loop)] loop { { - let __t1021 = { - let __t1017 = { - let __t1003 = v_V375.clone(); - rt::is_cons(&__t1003) + let __t1028 = { + let __t1024 = { + let __t1010 = v_V377.clone(); + rt::is_cons(&__t1010) }; - if !rt::is_truthy(interp, &__t1017)? { + if !rt::is_truthy(interp, &__t1024)? { Value::bool(false) } else { - let __t1018 = { - let __t1015 = { - let __t1004 = Value::sym(interp.intern("shen.processed")); - let __t1006 = { - let __t1005 = v_V375.clone(); - rt::hd(&__t1005)? + let __t1025 = { + let __t1022 = { + let __t1011 = Value::sym(interp.intern("shen.processed")); + let __t1013 = { + let __t1012 = v_V377.clone(); + rt::hd(&__t1012)? }; - rt::eq(&__t1004, &__t1006) + rt::eq(&__t1011, &__t1013) }; - if !rt::is_truthy(interp, &__t1015)? { + if !rt::is_truthy(interp, &__t1022)? { Value::bool(false) } else { - let __t1016 = { - let __t1013 = { - let __t1008 = { - let __t1007 = v_V375.clone(); - rt::tl(&__t1007)? + let __t1023 = { + let __t1020 = { + let __t1015 = { + let __t1014 = v_V377.clone(); + rt::tl(&__t1014)? }; - rt::is_cons(&__t1008) + rt::is_cons(&__t1015) }; - if !rt::is_truthy(interp, &__t1013)? { + if !rt::is_truthy(interp, &__t1020)? { Value::bool(false) } else { - let __t1014 = { - let __t1009 = Value::nil(); - let __t1012 = { - let __t1011 = { - let __t1010 = v_V375.clone(); - rt::tl(&__t1010)? + let __t1021 = { + let __t1016 = Value::nil(); + let __t1019 = { + let __t1018 = { + let __t1017 = v_V377.clone(); + rt::tl(&__t1017)? }; - rt::tl(&__t1011)? + rt::tl(&__t1018)? }; - rt::eq(&__t1009, &__t1012) + rt::eq(&__t1016, &__t1019) }; - Value::bool(rt::is_truthy(interp, &__t1014)?) + Value::bool(rt::is_truthy(interp, &__t1021)?) } }; - Value::bool(rt::is_truthy(interp, &__t1016)?) + Value::bool(rt::is_truthy(interp, &__t1023)?) } }; - Value::bool(rt::is_truthy(interp, &__t1018)?) + Value::bool(rt::is_truthy(interp, &__t1025)?) } }; - if match rt::is_truthy(interp, &__t1021) { + if match rt::is_truthy(interp, &__t1028) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1020 = { - let __t1019 = v_V375.clone(); - rt::tl(&__t1019)? + let __t1027 = { + let __t1026 = v_V377.clone(); + rt::tl(&__t1026)? }; - rt::hd(&__t1020)? + rt::hd(&__t1027)? }); } else { { - let __t1002 = Value::bool(true); - if match rt::is_truthy(interp, &__t1002) { + let __t1009 = Value::bool(true); + if match rt::is_truthy(interp, &__t1009) { Ok(b) => b, Err(e) => break Err(e), } { { - let v_W376 = { - let __t993 = v_V375.clone(); - rt::apply_direct(interp, "shen.process-yacc-semantics", &[__t993])? + let v_W378 = { + let __t1000 = v_V377.clone(); + rt::apply_direct(interp, "shen.process-yacc-semantics", &[__t1000])? }; { - let v_W377 = { - let __t994 = v_V373.clone(); - let __t995 = v_W376.clone(); + let v_W379 = { + let __t1001 = v_V375.clone(); + let __t1002 = v_W378.clone(); rt::apply_direct( interp, "shen.use-type-info", - &[__t994, __t995], + &[__t1001, __t1002], )? }; break Ok({ - let __t996 = Value::sym(interp.intern("shen.comb")); - let __t1001 = { - let __t997 = v_V374.clone(); - let __t1000 = { - let __t998 = v_W377.clone(); - let __t999 = Value::nil(); - rt::cons(&__t998, &__t999) + let __t1003 = Value::sym(interp.intern("shen.comb")); + let __t1008 = { + let __t1004 = v_V376.clone(); + let __t1007 = { + let __t1005 = v_W379.clone(); + let __t1006 = Value::nil(); + rt::cons(&__t1005, &__t1006) }; - rt::cons(&__t997, &__t1000) + rt::cons(&__t1004, &__t1007) }; - rt::cons(&__t996, &__t1001) + rt::cons(&__t1003, &__t1008) }); } } @@ -5247,252 +5275,252 @@ pub fn aot_shen_x2e_use_x2d_type_x2d_info( ))); } #[allow(unused_mut)] - let mut v_V381 = args[0].clone(); + let mut v_V383 = args[0].clone(); #[allow(unused_mut)] - let mut v_V382 = args[1].clone(); + let mut v_V384 = args[1].clone(); #[allow(clippy::never_loop)] loop { { - let __t1224 = { - let __t1212 = { - let __t1023 = v_V381.clone(); - rt::is_cons(&__t1023) + let __t1231 = { + let __t1219 = { + let __t1030 = v_V383.clone(); + rt::is_cons(&__t1030) }; - if !rt::is_truthy(interp, &__t1212)? { + if !rt::is_truthy(interp, &__t1219)? { Value::bool(false) } else { - let __t1213 = { - let __t1210 = { - let __t1024 = Value::sym(interp.intern("{")); - let __t1026 = { - let __t1025 = v_V381.clone(); - rt::hd(&__t1025)? + let __t1220 = { + let __t1217 = { + let __t1031 = Value::sym(interp.intern("{")); + let __t1033 = { + let __t1032 = v_V383.clone(); + rt::hd(&__t1032)? }; - rt::eq(&__t1024, &__t1026) + rt::eq(&__t1031, &__t1033) }; - if !rt::is_truthy(interp, &__t1210)? { + if !rt::is_truthy(interp, &__t1217)? { Value::bool(false) } else { - let __t1211 = { - let __t1208 = { - let __t1028 = { - let __t1027 = v_V381.clone(); - rt::tl(&__t1027)? + let __t1218 = { + let __t1215 = { + let __t1035 = { + let __t1034 = v_V383.clone(); + rt::tl(&__t1034)? }; - rt::is_cons(&__t1028) + rt::is_cons(&__t1035) }; - if !rt::is_truthy(interp, &__t1208)? { + if !rt::is_truthy(interp, &__t1215)? { Value::bool(false) } else { - let __t1209 = { - let __t1206 = { - let __t1031 = { - let __t1030 = { - let __t1029 = v_V381.clone(); - rt::tl(&__t1029)? + let __t1216 = { + let __t1213 = { + let __t1038 = { + let __t1037 = { + let __t1036 = v_V383.clone(); + rt::tl(&__t1036)? }; - rt::hd(&__t1030)? + rt::hd(&__t1037)? }; - rt::is_cons(&__t1031) + rt::is_cons(&__t1038) }; - if !rt::is_truthy(interp, &__t1206)? { + if !rt::is_truthy(interp, &__t1213)? { Value::bool(false) } else { - let __t1207 = { - let __t1204 = { - let __t1032 = Value::sym(interp.intern("list")); - let __t1036 = { - let __t1035 = { - let __t1034 = { - let __t1033 = v_V381.clone(); - rt::tl(&__t1033)? + let __t1214 = { + let __t1211 = { + let __t1039 = Value::sym(interp.intern("list")); + let __t1043 = { + let __t1042 = { + let __t1041 = { + let __t1040 = v_V383.clone(); + rt::tl(&__t1040)? }; - rt::hd(&__t1034)? + rt::hd(&__t1041)? }; - rt::hd(&__t1035)? + rt::hd(&__t1042)? }; - rt::eq(&__t1032, &__t1036) + rt::eq(&__t1039, &__t1043) }; - if !rt::is_truthy(interp, &__t1204)? { + if !rt::is_truthy(interp, &__t1211)? { Value::bool(false) } else { - let __t1205 = { - let __t1202 = { - let __t1040 = { - let __t1039 = { - let __t1038 = { - let __t1037 = - v_V381.clone(); - rt::tl(&__t1037)? + let __t1212 = { + let __t1209 = { + let __t1047 = { + let __t1046 = { + let __t1045 = { + let __t1044 = + v_V383.clone(); + rt::tl(&__t1044)? }; - rt::hd(&__t1038)? + rt::hd(&__t1045)? }; - rt::tl(&__t1039)? + rt::tl(&__t1046)? }; - rt::is_cons(&__t1040) + rt::is_cons(&__t1047) }; - if !rt::is_truthy(interp, &__t1202)? { + if !rt::is_truthy(interp, &__t1209)? { Value::bool(false) } else { - let __t1203 = { - let __t1200 = { - let __t1041 = Value::nil(); - let __t1046 = { - let __t1045 = { - let __t1044 = { - let __t1043 = { - let __t1042 = - v_V381 + let __t1210 = { + let __t1207 = { + let __t1048 = Value::nil(); + let __t1053 = { + let __t1052 = { + let __t1051 = { + let __t1050 = { + let __t1049 = + v_V383 .clone( ); rt::tl( - &__t1042, + &__t1049, )? }; - rt::hd(&__t1043)? + rt::hd(&__t1050)? }; - rt::tl(&__t1044)? + rt::tl(&__t1051)? }; - rt::tl(&__t1045)? + rt::tl(&__t1052)? }; - rt::eq(&__t1041, &__t1046) + rt::eq(&__t1048, &__t1053) }; - if !rt::is_truthy(interp, &__t1200)? + if !rt::is_truthy(interp, &__t1207)? { Value::bool(false) } else { - let __t1201 = { - let __t1198 = { - let __t1049 = { - let __t1048 = { - let __t1047 = - v_V381 + let __t1208 = { + let __t1205 = { + let __t1056 = { + let __t1055 = { + let __t1054 = + v_V383 .clone( ); rt::tl( - &__t1047, + &__t1054, )? }; - rt::tl(&__t1048)? + rt::tl(&__t1055)? }; - rt::is_cons(&__t1049) + rt::is_cons(&__t1056) }; if !rt::is_truthy( - interp, &__t1198, + interp, &__t1205, )? { Value::bool(false) } else { - let __t1199 = { - let __t1196 = { - let __t1050 = Value::sym(interp.intern("-->")); - let __t1054 = { - let __t1053 = { - let __t1052 = { - let __t1051 = v_V381.clone(); - rt::tl(&__t1051)? + let __t1206 = { + let __t1203 = { + let __t1057 = Value::sym(interp.intern("-->")); + let __t1061 = { + let __t1060 = { + let __t1059 = { + let __t1058 = v_V383.clone(); + rt::tl(&__t1058)? }; - rt::tl(&__t1052)? + rt::tl(&__t1059)? }; - rt::hd(&__t1053)? + rt::hd(&__t1060)? }; rt::eq( - &__t1050, - &__t1054, + &__t1057, + &__t1061, ) }; if !rt::is_truthy( interp, - &__t1196, + &__t1203, )? { Value::bool( false, ) } else { - let __t1197 = { - let __t1194 = { - let __t1058 = { - let __t1057 = { let __t1056 = { let __t1055 = v_V381.clone(); rt::tl(&__t1055)? }; rt::tl(&__t1056)? }; - rt::tl(&__t1057)? + let __t1204 = { + let __t1201 = { + let __t1065 = { + let __t1064 = { let __t1063 = { let __t1062 = v_V383.clone(); rt::tl(&__t1062)? }; rt::tl(&__t1063)? }; + rt::tl(&__t1064)? }; - rt::is_cons(&__t1058) + rt::is_cons(&__t1065) }; - if !rt::is_truthy(interp, &__t1194)? { Value::bool(false) } else { let __t1195 = { let __t1192 = { let __t1063 = { let __t1062 = { let __t1061 = { let __t1060 = { let __t1059 = v_V381.clone(); rt::tl(&__t1059)? }; rt::tl(&__t1060)? }; rt::tl(&__t1061)? }; rt::hd(&__t1062)? }; rt::is_cons(&__t1063) }; if !rt::is_truthy(interp, &__t1192)? { Value::bool(false) } else { let __t1193 = { let __t1190 = { let __t1064 = Value::sym(interp.intern("str")); let __t1070 = { let __t1069 = { let __t1068 = { let __t1067 = { let __t1066 = { let __t1065 = v_V381.clone(); rt::tl(&__t1065)? }; rt::tl(&__t1066)? }; rt::tl(&__t1067)? }; rt::hd(&__t1068)? }; rt::hd(&__t1069)? }; rt::eq(&__t1064, &__t1070) }; if !rt::is_truthy(interp, &__t1190)? { Value::bool(false) } else { let __t1191 = { let __t1188 = { let __t1076 = { let __t1075 = { let __t1074 = { let __t1073 = { let __t1072 = { let __t1071 = v_V381.clone(); rt::tl(&__t1071)? }; rt::tl(&__t1072)? }; rt::tl(&__t1073)? }; rt::hd(&__t1074)? }; rt::tl(&__t1075)? }; rt::is_cons(&__t1076) }; if !rt::is_truthy(interp, &__t1188)? { Value::bool(false) } else { let __t1189 = { let __t1186 = { let __t1083 = { let __t1082 = { let __t1081 = { let __t1080 = { let __t1079 = { let __t1078 = { let __t1077 = v_V381.clone(); rt::tl(&__t1077)? }; rt::tl(&__t1078)? }; rt::tl(&__t1079)? }; rt::hd(&__t1080)? }; rt::tl(&__t1081)? }; rt::hd(&__t1082)? }; rt::is_cons(&__t1083) }; if !rt::is_truthy(interp, &__t1186)? { Value::bool(false) } else { let __t1187 = { let __t1184 = { let __t1084 = Value::sym(interp.intern("list")); let __t1092 = { let __t1091 = { let __t1090 = { let __t1089 = { let __t1088 = { let __t1087 = { let __t1086 = { let __t1085 = v_V381.clone(); rt::tl(&__t1085)? }; rt::tl(&__t1086)? }; rt::tl(&__t1087)? }; rt::hd(&__t1088)? }; rt::tl(&__t1089)? }; rt::hd(&__t1090)? }; rt::hd(&__t1091)? }; rt::eq(&__t1084, &__t1092) }; if !rt::is_truthy(interp, &__t1184)? { Value::bool(false) } else { let __t1185 = { let __t1182 = { let __t1100 = { let __t1099 = { let __t1098 = { let __t1097 = { let __t1096 = { let __t1095 = { let __t1094 = { let __t1093 = v_V381.clone(); rt::tl(&__t1093)? }; rt::tl(&__t1094)? }; rt::tl(&__t1095)? }; rt::hd(&__t1096)? }; rt::tl(&__t1097)? }; rt::hd(&__t1098)? }; rt::tl(&__t1099)? }; rt::is_cons(&__t1100) }; if !rt::is_truthy(interp, &__t1182)? { Value::bool(false) } else { let __t1183 = { let __t1180 = { let __t1101 = Value::nil(); let __t1110 = { let __t1109 = { let __t1108 = { let __t1107 = { let __t1106 = { let __t1105 = { let __t1104 = { let __t1103 = { let __t1102 = v_V381.clone(); rt::tl(&__t1102)? }; rt::tl(&__t1103)? }; rt::tl(&__t1104)? }; rt::hd(&__t1105)? }; rt::tl(&__t1106)? }; rt::hd(&__t1107)? }; rt::tl(&__t1108)? }; rt::tl(&__t1109)? }; rt::eq(&__t1101, &__t1110) }; if !rt::is_truthy(interp, &__t1180)? { Value::bool(false) } else { let __t1181 = { let __t1178 = { let __t1117 = { let __t1116 = { let __t1115 = { let __t1114 = { let __t1113 = { let __t1112 = { let __t1111 = v_V381.clone(); rt::tl(&__t1111)? }; rt::tl(&__t1112)? }; rt::tl(&__t1113)? }; rt::hd(&__t1114)? }; rt::tl(&__t1115)? }; rt::tl(&__t1116)? }; rt::is_cons(&__t1117) }; if !rt::is_truthy(interp, &__t1178)? { Value::bool(false) } else { let __t1179 = { let __t1176 = { let __t1118 = Value::nil(); let __t1126 = { let __t1125 = { let __t1124 = { let __t1123 = { let __t1122 = { let __t1121 = { let __t1120 = { let __t1119 = v_V381.clone(); rt::tl(&__t1119)? }; rt::tl(&__t1120)? }; rt::tl(&__t1121)? }; rt::hd(&__t1122)? }; rt::tl(&__t1123)? }; rt::tl(&__t1124)? }; rt::tl(&__t1125)? }; rt::eq(&__t1118, &__t1126) }; if !rt::is_truthy(interp, &__t1176)? { Value::bool(false) } else { let __t1177 = { let __t1174 = { let __t1131 = { let __t1130 = { let __t1129 = { let __t1128 = { let __t1127 = v_V381.clone(); rt::tl(&__t1127)? }; rt::tl(&__t1128)? }; rt::tl(&__t1129)? }; rt::tl(&__t1130)? }; rt::is_cons(&__t1131) }; if !rt::is_truthy(interp, &__t1174)? { Value::bool(false) } else { let __t1175 = { let __t1172 = { let __t1132 = Value::sym(interp.intern("}")); let __t1138 = { let __t1137 = { let __t1136 = { let __t1135 = { let __t1134 = { let __t1133 = v_V381.clone(); rt::tl(&__t1133)? }; rt::tl(&__t1134)? }; rt::tl(&__t1135)? }; rt::tl(&__t1136)? }; rt::hd(&__t1137)? }; rt::eq(&__t1132, &__t1138) }; if !rt::is_truthy(interp, &__t1172)? { Value::bool(false) } else { let __t1173 = { let __t1170 = { let __t1139 = Value::nil(); let __t1145 = { let __t1144 = { let __t1143 = { let __t1142 = { let __t1141 = { let __t1140 = v_V381.clone(); rt::tl(&__t1140)? }; rt::tl(&__t1141)? }; rt::tl(&__t1142)? }; rt::tl(&__t1143)? }; rt::tl(&__t1144)? }; rt::eq(&__t1139, &__t1145) }; if !rt::is_truthy(interp, &__t1170)? { Value::bool(false) } else { let __t1171 = { let __t1168 = { let __t1150 = { let __t1149 = { let __t1148 = { let __t1147 = { let __t1146 = v_V381.clone(); rt::tl(&__t1146)? }; rt::hd(&__t1147)? }; rt::tl(&__t1148)? }; rt::hd(&__t1149)? }; let __t1159 = { let __t1158 = { let __t1157 = { let __t1156 = { let __t1155 = { let __t1154 = { let __t1153 = { let __t1152 = { let __t1151 = v_V381.clone(); rt::tl(&__t1151)? }; rt::tl(&__t1152)? }; rt::tl(&__t1153)? }; rt::hd(&__t1154)? }; rt::tl(&__t1155)? }; rt::hd(&__t1156)? }; rt::tl(&__t1157)? }; rt::hd(&__t1158)? }; rt::eq(&__t1150, &__t1159) }; if !rt::is_truthy(interp, &__t1168)? { Value::bool(false) } else { let __t1169 = { let __t1167 = { let __t1166 = { let __t1165 = { let __t1164 = { let __t1163 = { let __t1162 = { let __t1161 = { let __t1160 = v_V381.clone(); rt::tl(&__t1160)? }; rt::tl(&__t1161)? }; rt::tl(&__t1162)? }; rt::hd(&__t1163)? }; rt::tl(&__t1164)? }; rt::tl(&__t1165)? }; rt::hd(&__t1166)? }; rt::apply_direct(interp, "shen.monomorphic?", &[__t1167])? }; Value::bool(rt::is_truthy(interp, &__t1169)?) } }; Value::bool(rt::is_truthy(interp, &__t1171)?) } }; Value::bool(rt::is_truthy(interp, &__t1173)?) } }; Value::bool(rt::is_truthy(interp, &__t1175)?) } }; Value::bool(rt::is_truthy(interp, &__t1177)?) } }; Value::bool(rt::is_truthy(interp, &__t1179)?) } }; Value::bool(rt::is_truthy(interp, &__t1181)?) } }; Value::bool(rt::is_truthy(interp, &__t1183)?) } }; Value::bool(rt::is_truthy(interp, &__t1185)?) } }; Value::bool(rt::is_truthy(interp, &__t1187)?) } }; Value::bool(rt::is_truthy(interp, &__t1189)?) } }; Value::bool(rt::is_truthy(interp, &__t1191)?) } }; Value::bool(rt::is_truthy(interp, &__t1193)?) } }; Value::bool(rt::is_truthy(interp, &__t1195)?) } + if !rt::is_truthy(interp, &__t1201)? { Value::bool(false) } else { let __t1202 = { let __t1199 = { let __t1070 = { let __t1069 = { let __t1068 = { let __t1067 = { let __t1066 = v_V383.clone(); rt::tl(&__t1066)? }; rt::tl(&__t1067)? }; rt::tl(&__t1068)? }; rt::hd(&__t1069)? }; rt::is_cons(&__t1070) }; if !rt::is_truthy(interp, &__t1199)? { Value::bool(false) } else { let __t1200 = { let __t1197 = { let __t1071 = Value::sym(interp.intern("str")); let __t1077 = { let __t1076 = { let __t1075 = { let __t1074 = { let __t1073 = { let __t1072 = v_V383.clone(); rt::tl(&__t1072)? }; rt::tl(&__t1073)? }; rt::tl(&__t1074)? }; rt::hd(&__t1075)? }; rt::hd(&__t1076)? }; rt::eq(&__t1071, &__t1077) }; if !rt::is_truthy(interp, &__t1197)? { Value::bool(false) } else { let __t1198 = { let __t1195 = { let __t1083 = { let __t1082 = { let __t1081 = { let __t1080 = { let __t1079 = { let __t1078 = v_V383.clone(); rt::tl(&__t1078)? }; rt::tl(&__t1079)? }; rt::tl(&__t1080)? }; rt::hd(&__t1081)? }; rt::tl(&__t1082)? }; rt::is_cons(&__t1083) }; if !rt::is_truthy(interp, &__t1195)? { Value::bool(false) } else { let __t1196 = { let __t1193 = { let __t1090 = { let __t1089 = { let __t1088 = { let __t1087 = { let __t1086 = { let __t1085 = { let __t1084 = v_V383.clone(); rt::tl(&__t1084)? }; rt::tl(&__t1085)? }; rt::tl(&__t1086)? }; rt::hd(&__t1087)? }; rt::tl(&__t1088)? }; rt::hd(&__t1089)? }; rt::is_cons(&__t1090) }; if !rt::is_truthy(interp, &__t1193)? { Value::bool(false) } else { let __t1194 = { let __t1191 = { let __t1091 = Value::sym(interp.intern("list")); let __t1099 = { let __t1098 = { let __t1097 = { let __t1096 = { let __t1095 = { let __t1094 = { let __t1093 = { let __t1092 = v_V383.clone(); rt::tl(&__t1092)? }; rt::tl(&__t1093)? }; rt::tl(&__t1094)? }; rt::hd(&__t1095)? }; rt::tl(&__t1096)? }; rt::hd(&__t1097)? }; rt::hd(&__t1098)? }; rt::eq(&__t1091, &__t1099) }; if !rt::is_truthy(interp, &__t1191)? { Value::bool(false) } else { let __t1192 = { let __t1189 = { let __t1107 = { let __t1106 = { let __t1105 = { let __t1104 = { let __t1103 = { let __t1102 = { let __t1101 = { let __t1100 = v_V383.clone(); rt::tl(&__t1100)? }; rt::tl(&__t1101)? }; rt::tl(&__t1102)? }; rt::hd(&__t1103)? }; rt::tl(&__t1104)? }; rt::hd(&__t1105)? }; rt::tl(&__t1106)? }; rt::is_cons(&__t1107) }; if !rt::is_truthy(interp, &__t1189)? { Value::bool(false) } else { let __t1190 = { let __t1187 = { let __t1108 = Value::nil(); let __t1117 = { let __t1116 = { let __t1115 = { let __t1114 = { let __t1113 = { let __t1112 = { let __t1111 = { let __t1110 = { let __t1109 = v_V383.clone(); rt::tl(&__t1109)? }; rt::tl(&__t1110)? }; rt::tl(&__t1111)? }; rt::hd(&__t1112)? }; rt::tl(&__t1113)? }; rt::hd(&__t1114)? }; rt::tl(&__t1115)? }; rt::tl(&__t1116)? }; rt::eq(&__t1108, &__t1117) }; if !rt::is_truthy(interp, &__t1187)? { Value::bool(false) } else { let __t1188 = { let __t1185 = { let __t1124 = { let __t1123 = { let __t1122 = { let __t1121 = { let __t1120 = { let __t1119 = { let __t1118 = v_V383.clone(); rt::tl(&__t1118)? }; rt::tl(&__t1119)? }; rt::tl(&__t1120)? }; rt::hd(&__t1121)? }; rt::tl(&__t1122)? }; rt::tl(&__t1123)? }; rt::is_cons(&__t1124) }; if !rt::is_truthy(interp, &__t1185)? { Value::bool(false) } else { let __t1186 = { let __t1183 = { let __t1125 = Value::nil(); let __t1133 = { let __t1132 = { let __t1131 = { let __t1130 = { let __t1129 = { let __t1128 = { let __t1127 = { let __t1126 = v_V383.clone(); rt::tl(&__t1126)? }; rt::tl(&__t1127)? }; rt::tl(&__t1128)? }; rt::hd(&__t1129)? }; rt::tl(&__t1130)? }; rt::tl(&__t1131)? }; rt::tl(&__t1132)? }; rt::eq(&__t1125, &__t1133) }; if !rt::is_truthy(interp, &__t1183)? { Value::bool(false) } else { let __t1184 = { let __t1181 = { let __t1138 = { let __t1137 = { let __t1136 = { let __t1135 = { let __t1134 = v_V383.clone(); rt::tl(&__t1134)? }; rt::tl(&__t1135)? }; rt::tl(&__t1136)? }; rt::tl(&__t1137)? }; rt::is_cons(&__t1138) }; if !rt::is_truthy(interp, &__t1181)? { Value::bool(false) } else { let __t1182 = { let __t1179 = { let __t1139 = Value::sym(interp.intern("}")); let __t1145 = { let __t1144 = { let __t1143 = { let __t1142 = { let __t1141 = { let __t1140 = v_V383.clone(); rt::tl(&__t1140)? }; rt::tl(&__t1141)? }; rt::tl(&__t1142)? }; rt::tl(&__t1143)? }; rt::hd(&__t1144)? }; rt::eq(&__t1139, &__t1145) }; if !rt::is_truthy(interp, &__t1179)? { Value::bool(false) } else { let __t1180 = { let __t1177 = { let __t1146 = Value::nil(); let __t1152 = { let __t1151 = { let __t1150 = { let __t1149 = { let __t1148 = { let __t1147 = v_V383.clone(); rt::tl(&__t1147)? }; rt::tl(&__t1148)? }; rt::tl(&__t1149)? }; rt::tl(&__t1150)? }; rt::tl(&__t1151)? }; rt::eq(&__t1146, &__t1152) }; if !rt::is_truthy(interp, &__t1177)? { Value::bool(false) } else { let __t1178 = { let __t1175 = { let __t1157 = { let __t1156 = { let __t1155 = { let __t1154 = { let __t1153 = v_V383.clone(); rt::tl(&__t1153)? }; rt::hd(&__t1154)? }; rt::tl(&__t1155)? }; rt::hd(&__t1156)? }; let __t1166 = { let __t1165 = { let __t1164 = { let __t1163 = { let __t1162 = { let __t1161 = { let __t1160 = { let __t1159 = { let __t1158 = v_V383.clone(); rt::tl(&__t1158)? }; rt::tl(&__t1159)? }; rt::tl(&__t1160)? }; rt::hd(&__t1161)? }; rt::tl(&__t1162)? }; rt::hd(&__t1163)? }; rt::tl(&__t1164)? }; rt::hd(&__t1165)? }; rt::eq(&__t1157, &__t1166) }; if !rt::is_truthy(interp, &__t1175)? { Value::bool(false) } else { let __t1176 = { let __t1174 = { let __t1173 = { let __t1172 = { let __t1171 = { let __t1170 = { let __t1169 = { let __t1168 = { let __t1167 = v_V383.clone(); rt::tl(&__t1167)? }; rt::tl(&__t1168)? }; rt::tl(&__t1169)? }; rt::hd(&__t1170)? }; rt::tl(&__t1171)? }; rt::tl(&__t1172)? }; rt::hd(&__t1173)? }; rt::apply_direct(interp, "shen.monomorphic?", &[__t1174])? }; Value::bool(rt::is_truthy(interp, &__t1176)?) } }; Value::bool(rt::is_truthy(interp, &__t1178)?) } }; Value::bool(rt::is_truthy(interp, &__t1180)?) } }; Value::bool(rt::is_truthy(interp, &__t1182)?) } }; Value::bool(rt::is_truthy(interp, &__t1184)?) } }; Value::bool(rt::is_truthy(interp, &__t1186)?) } }; Value::bool(rt::is_truthy(interp, &__t1188)?) } }; Value::bool(rt::is_truthy(interp, &__t1190)?) } }; Value::bool(rt::is_truthy(interp, &__t1192)?) } }; Value::bool(rt::is_truthy(interp, &__t1194)?) } }; Value::bool(rt::is_truthy(interp, &__t1196)?) } }; Value::bool(rt::is_truthy(interp, &__t1198)?) } }; Value::bool(rt::is_truthy(interp, &__t1200)?) } }; Value::bool(rt::is_truthy(interp, &__t1202)?) } }; - Value::bool(rt::is_truthy(interp, &__t1197)?) + Value::bool(rt::is_truthy(interp, &__t1204)?) } }; Value::bool( rt::is_truthy( interp, - &__t1199, + &__t1206, )?, ) } }; Value::bool(rt::is_truthy( - interp, &__t1201, + interp, &__t1208, )?) } }; Value::bool(rt::is_truthy( - interp, &__t1203, + interp, &__t1210, )?) } }; - Value::bool(rt::is_truthy(interp, &__t1205)?) + Value::bool(rt::is_truthy(interp, &__t1212)?) } }; - Value::bool(rt::is_truthy(interp, &__t1207)?) + Value::bool(rt::is_truthy(interp, &__t1214)?) } }; - Value::bool(rt::is_truthy(interp, &__t1209)?) + Value::bool(rt::is_truthy(interp, &__t1216)?) } }; - Value::bool(rt::is_truthy(interp, &__t1211)?) + Value::bool(rt::is_truthy(interp, &__t1218)?) } }; - Value::bool(rt::is_truthy(interp, &__t1213)?) + Value::bool(rt::is_truthy(interp, &__t1220)?) } }; - if match rt::is_truthy(interp, &__t1224) { + if match rt::is_truthy(interp, &__t1231) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1214 = Value::sym(interp.intern("type")); - let __t1223 = { - let __t1215 = v_V382.clone(); - let __t1222 = { - let __t1221 = { - let __t1220 = { - let __t1219 = { - let __t1218 = { - let __t1217 = { - let __t1216 = v_V381.clone(); - rt::tl(&__t1216)? + let __t1221 = Value::sym(interp.intern("type")); + let __t1230 = { + let __t1222 = v_V384.clone(); + let __t1229 = { + let __t1228 = { + let __t1227 = { + let __t1226 = { + let __t1225 = { + let __t1224 = { + let __t1223 = v_V383.clone(); + rt::tl(&__t1223)? }; - rt::tl(&__t1217)? + rt::tl(&__t1224)? }; - rt::tl(&__t1218)? + rt::tl(&__t1225)? }; - rt::hd(&__t1219)? + rt::hd(&__t1226)? }; - rt::tl(&__t1220)? + rt::tl(&__t1227)? }; - rt::tl(&__t1221)? + rt::tl(&__t1228)? }; - rt::cons(&__t1215, &__t1222) + rt::cons(&__t1222, &__t1229) }; - rt::cons(&__t1214, &__t1223) + rt::cons(&__t1221, &__t1230) }); } else { { - let __t1022 = Value::bool(true); - if match rt::is_truthy(interp, &__t1022) { + let __t1029 = Value::bool(true); + if match rt::is_truthy(interp, &__t1029) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V382.clone()); + break Ok(v_V384.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -5516,57 +5544,57 @@ pub fn aot_shen_x2e_monomorphic_x3f_(interp: &mut Interp, args: &[Value]) -> She ))); } #[allow(unused_mut)] - let mut v_V385 = args[0].clone(); + let mut v_V387 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1234 = { - let __t1233 = v_V385.clone(); - rt::apply_direct(interp, "variable?", &[__t1233])? + let __t1241 = { + let __t1240 = v_V387.clone(); + rt::apply_direct(interp, "variable?", &[__t1240])? }; - if match rt::is_truthy(interp, &__t1234) { + if match rt::is_truthy(interp, &__t1241) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1232 = { - let __t1226 = v_V385.clone(); - rt::is_cons(&__t1226) + let __t1239 = { + let __t1233 = v_V387.clone(); + rt::is_cons(&__t1233) }; - if match rt::is_truthy(interp, &__t1232) { + if match rt::is_truthy(interp, &__t1239) { Ok(b) => b, Err(e) => break Err(e), } { { - let __t1229 = { - let __t1228 = { - let __t1227 = v_V385.clone(); - rt::hd(&__t1227)? + let __t1236 = { + let __t1235 = { + let __t1234 = v_V387.clone(); + rt::hd(&__t1234)? }; - rt::apply_direct(interp, "shen.monomorphic?", &[__t1228])? + rt::apply_direct(interp, "shen.monomorphic?", &[__t1235])? }; - if !match rt::is_truthy(interp, &__t1229) { + if !match rt::is_truthy(interp, &__t1236) { Ok(b) => b, Err(e) => break Err(e), } { break Ok(Value::bool(false)); } else { { - let __t1231 = { - let __t1230 = v_V385.clone(); - rt::tl(&__t1230)? + let __t1238 = { + let __t1237 = v_V387.clone(); + rt::tl(&__t1237)? }; - v_V385 = __t1231; + v_V387 = __t1238; continue; } } } } else { { - let __t1225 = Value::bool(true); - if match rt::is_truthy(interp, &__t1225) { + let __t1232 = Value::bool(true); + if match rt::is_truthy(interp, &__t1232) { Ok(b) => b, Err(e) => break Err(e), } { @@ -5599,116 +5627,116 @@ pub fn aot_shen_x2e_process_x2d_yacc_x2d_semantics( ))); } #[allow(unused_mut)] - let mut v_V386 = args[0].clone(); + let mut v_V388 = args[0].clone(); #[allow(clippy::never_loop)] loop { { - let __t1268 = { - let __t1264 = { - let __t1245 = v_V386.clone(); - rt::is_cons(&__t1245) + let __t1275 = { + let __t1271 = { + let __t1252 = v_V388.clone(); + rt::is_cons(&__t1252) }; - if !rt::is_truthy(interp, &__t1264)? { + if !rt::is_truthy(interp, &__t1271)? { Value::bool(false) } else { - let __t1265 = { - let __t1262 = { - let __t1246 = Value::sym(interp.intern("protect")); - let __t1248 = { - let __t1247 = v_V386.clone(); - rt::hd(&__t1247)? + let __t1272 = { + let __t1269 = { + let __t1253 = Value::sym(interp.intern("protect")); + let __t1255 = { + let __t1254 = v_V388.clone(); + rt::hd(&__t1254)? }; - rt::eq(&__t1246, &__t1248) + rt::eq(&__t1253, &__t1255) }; - if !rt::is_truthy(interp, &__t1262)? { + if !rt::is_truthy(interp, &__t1269)? { Value::bool(false) } else { - let __t1263 = { - let __t1260 = { - let __t1250 = { - let __t1249 = v_V386.clone(); - rt::tl(&__t1249)? + let __t1270 = { + let __t1267 = { + let __t1257 = { + let __t1256 = v_V388.clone(); + rt::tl(&__t1256)? }; - rt::is_cons(&__t1250) + rt::is_cons(&__t1257) }; - if !rt::is_truthy(interp, &__t1260)? { + if !rt::is_truthy(interp, &__t1267)? { Value::bool(false) } else { - let __t1261 = { - let __t1258 = { - let __t1251 = Value::nil(); - let __t1254 = { - let __t1253 = { - let __t1252 = v_V386.clone(); - rt::tl(&__t1252)? + let __t1268 = { + let __t1265 = { + let __t1258 = Value::nil(); + let __t1261 = { + let __t1260 = { + let __t1259 = v_V388.clone(); + rt::tl(&__t1259)? }; - rt::tl(&__t1253)? + rt::tl(&__t1260)? }; - rt::eq(&__t1251, &__t1254) + rt::eq(&__t1258, &__t1261) }; - if !rt::is_truthy(interp, &__t1258)? { + if !rt::is_truthy(interp, &__t1265)? { Value::bool(false) } else { - let __t1259 = { - let __t1257 = { - let __t1256 = { - let __t1255 = v_V386.clone(); - rt::tl(&__t1255)? + let __t1266 = { + let __t1264 = { + let __t1263 = { + let __t1262 = v_V388.clone(); + rt::tl(&__t1262)? }; - rt::hd(&__t1256)? + rt::hd(&__t1263)? }; rt::apply_direct( interp, "shen.non-terminal?", - &[__t1257], + &[__t1264], )? }; - Value::bool(rt::is_truthy(interp, &__t1259)?) + Value::bool(rt::is_truthy(interp, &__t1266)?) } }; - Value::bool(rt::is_truthy(interp, &__t1261)?) + Value::bool(rt::is_truthy(interp, &__t1268)?) } }; - Value::bool(rt::is_truthy(interp, &__t1263)?) + Value::bool(rt::is_truthy(interp, &__t1270)?) } }; - Value::bool(rt::is_truthy(interp, &__t1265)?) + Value::bool(rt::is_truthy(interp, &__t1272)?) } }; - if match rt::is_truthy(interp, &__t1268) { + if match rt::is_truthy(interp, &__t1275) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1267 = { - let __t1266 = v_V386.clone(); - rt::tl(&__t1266)? + let __t1274 = { + let __t1273 = v_V388.clone(); + rt::tl(&__t1273)? }; - rt::hd(&__t1267)? + rt::hd(&__t1274)? }); } else { { - let __t1244 = { - let __t1240 = v_V386.clone(); - rt::is_cons(&__t1240) + let __t1251 = { + let __t1247 = v_V388.clone(); + rt::is_cons(&__t1247) }; - if match rt::is_truthy(interp, &__t1244) { + if match rt::is_truthy(interp, &__t1251) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1242 = { + let __t1249 = { rt::make_aot_closure( "", 1, move |interp, args| { - let v_Z387 = args[0].clone(); + let v_Z389 = args[0].clone(); Ok({ - let __t1241 = v_Z387.clone(); + let __t1248 = v_Z389.clone(); rt::apply_direct( interp, "shen.process-yacc-semantics", - &[__t1241], + &[__t1248], )? }) }, @@ -5716,32 +5744,32 @@ pub fn aot_shen_x2e_process_x2d_yacc_x2d_semantics( interp, ) }; - let __t1243 = v_V386.clone(); - rt::apply_direct(interp, "map", &[__t1242, __t1243])? + let __t1250 = v_V388.clone(); + rt::apply_direct(interp, "map", &[__t1249, __t1250])? }); } else { { - let __t1239 = { - let __t1236 = v_V386.clone(); - rt::apply_direct(interp, "shen.non-terminal?", &[__t1236])? + let __t1246 = { + let __t1243 = v_V388.clone(); + rt::apply_direct(interp, "shen.non-terminal?", &[__t1243])? }; - if match rt::is_truthy(interp, &__t1239) { + if match rt::is_truthy(interp, &__t1246) { Ok(b) => b, Err(e) => break Err(e), } { break Ok({ - let __t1237 = Value::sym(interp.intern("Action")); - let __t1238 = v_V386.clone(); - rt::apply_direct(interp, "concat", &[__t1237, __t1238])? + let __t1244 = Value::sym(interp.intern("Action")); + let __t1245 = v_V388.clone(); + rt::apply_direct(interp, "concat", &[__t1244, __t1245])? }); } else { { - let __t1235 = Value::bool(true); - if match rt::is_truthy(interp, &__t1235) { + let __t1242 = Value::bool(true); + if match rt::is_truthy(interp, &__t1242) { Ok(b) => b, Err(e) => break Err(e), } { - break Ok(v_V386.clone()); + break Ok(v_V388.clone()); } else { break Err(ShenError::new("cond: no clause matched")); } @@ -5779,74 +5807,13 @@ pub fn aot_shen_x2e__x3c__x2d_out(interp: &mut Interp, args: &[Value]) -> ShenRe let mut v_V390 = args[0].clone(); #[allow(clippy::never_loop)] loop { - { - let __t1285 = { - let __t1281 = { - let __t1272 = v_V390.clone(); - rt::is_cons(&__t1272) - }; - if !rt::is_truthy(interp, &__t1281)? { - Value::bool(false) - } else { - let __t1282 = { - let __t1279 = { - let __t1274 = { - let __t1273 = v_V390.clone(); - rt::tl(&__t1273)? - }; - rt::is_cons(&__t1274) - }; - if !rt::is_truthy(interp, &__t1279)? { - Value::bool(false) - } else { - let __t1280 = { - let __t1275 = Value::nil(); - let __t1278 = { - let __t1277 = { - let __t1276 = v_V390.clone(); - rt::tl(&__t1276)? - }; - rt::tl(&__t1277)? - }; - rt::eq(&__t1275, &__t1278) - }; - Value::bool(rt::is_truthy(interp, &__t1280)?) - } - }; - Value::bool(rt::is_truthy(interp, &__t1282)?) - } + break Ok({ + let __t1277 = { + let __t1276 = v_V390.clone(); + rt::tl(&__t1276)? }; - if match rt::is_truthy(interp, &__t1285) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1284 = { - let __t1283 = v_V390.clone(); - rt::tl(&__t1283)? - }; - rt::hd(&__t1284)? - }); - } else { - { - let __t1271 = Value::bool(true); - if match rt::is_truthy(interp, &__t1271) { - Ok(b) => b, - Err(e) => break Err(e), - } { - break Ok({ - let __t1270 = { - let __t1269 = v_V390.clone(); - rt::tl(&__t1269)? - }; - rt::hd(&__t1270)? - }); - } else { - break Err(ShenError::new("cond: no clause matched")); - } - } - } - } + rt::hd(&__t1277)? + }); } } @@ -5868,8 +5835,8 @@ pub fn aot_shen_x2e_in_x2d__x3e_(interp: &mut Interp, args: &[Value]) -> ShenRes #[allow(clippy::never_loop)] loop { break Ok({ - let __t1286 = v_V391.clone(); - rt::hd(&__t1286)? + let __t1278 = v_V391.clone(); + rt::hd(&__t1278)? }); } } @@ -5892,13 +5859,13 @@ pub fn aot__x3c__x21__x3e_(interp: &mut Interp, args: &[Value]) -> ShenResult ShenResult #[allow(clippy::never_loop)] loop { break Ok({ - let __t1291 = v_V393.clone(); - let __t1294 = { - let __t1292 = Value::nil(); - let __t1293 = Value::nil(); - rt::cons(&__t1292, &__t1293) + let __t1283 = v_V393.clone(); + let __t1286 = { + let __t1284 = Value::nil(); + let __t1285 = Value::nil(); + rt::cons(&__t1284, &__t1285) }; - rt::cons(&__t1291, &__t1294) + rt::cons(&__t1283, &__t1286) }); } } @@ -5950,28 +5917,28 @@ pub fn aot__x3c_end_x3e_(interp: &mut Interp, args: &[Value]) -> ShenResult b, Err(e) => break Err(e), } { break Ok({ - let __t1298 = Value::nil(); - let __t1301 = { - let __t1299 = Value::nil(); - let __t1300 = Value::nil(); - rt::cons(&__t1299, &__t1300) + let __t1290 = Value::nil(); + let __t1293 = { + let __t1291 = Value::nil(); + let __t1292 = Value::nil(); + rt::cons(&__t1291, &__t1292) }; - rt::cons(&__t1298, &__t1301) + rt::cons(&__t1290, &__t1293) }); } else { { - let __t1295 = Value::bool(true); - if match rt::is_truthy(interp, &__t1295) { + let __t1287 = Value::bool(true); + if match rt::is_truthy(interp, &__t1287) { Ok(b) => b, Err(e) => break Err(e), } { diff --git a/crates/shen-rust/src/interp/boot.rs b/crates/shen-rust/src/interp/boot.rs index 3957c6a..b6bf87a 100644 --- a/crates/shen-rust/src/interp/boot.rs +++ b/crates/shen-rust/src/interp/boot.rs @@ -1,11 +1,20 @@ -//! Kernel boot: load all 21 KL files, set port metadata, run +//! Kernel boot: load all KL files, set port metadata, run //! `shen.initialise`, then publish primitive arity / lambda-form on the //! kernel's property vector so `(fn NAME)` resolves correctly. //! -//! The fixed file order matches `shen-ocaml/src/interp/boot.ml`. Per the -//! 41.x spec, order does not strictly matter (the files only `defun` — -//! they have no top-level effects). The fixed order makes errors easier -//! to compare against other ports. +//! The kernel-file order follows upstream `install.lsp` (the reference +//! SBCL port's *runtime* loader) for the S41.2 (2026-07-11 refresh) set, +//! then the retained standard-library overlay and community extensions. +//! +//! Order matters here: unlike the old community kernel (defun-only `.kl` +//! whose load order was cosmetic), the refreshed `declarations.kl` and +//! `types.kl` carry top-level executable forms. `declarations.kl` runs +//! `(set shen.*prolog-memory* …)` + `shen.initialise-arity-table`, and +//! `types.kl`'s 161 `(declare …)` forms invoke the type checker +//! (`shen.prolog-vector` from `macros.kl`, the prolog memory global). So +//! `declarations` and `macros` must precede `types`, which loads last — +//! exactly the `install.lsp` order (NOT the `Sources/make.shen` +//! bootstrap-generation order, where `types` precedes both). use std::cell::RefCell; use std::fs; @@ -17,30 +26,43 @@ use crate::interp::eval::Interp; use crate::kl::parser::parse_all; use crate::value::{Stream, Value}; -/// File names in the order shen-ocaml loads them. Vendored under -/// `kernel/klambda/`. +/// File names in boot order. Vendored under `kernel/klambda/`. +/// +/// The first 14 are Mark Tarver's refreshed S41.2 kernel, in the +/// `install.lsp` runtime load order. `dict.kl`, `compiler.kl`, and +/// `init.kl` from the community ShenOSKernel-41.2 are gone: `put`/`get` +/// now use pointer-list property vectors (`sys.kl`), `compiler.kl` was a +/// shen-cl artifact, and `init.kl`'s content (incl. `shen.initialise`) +/// moved into `declarations.kl`/`toplevel.kl`. +/// +/// `backend.kl` (the new `cl.*` KLambda→Common-Lisp backend) is vendored +/// and AOT-generated for audit completeness but deliberately NOT booted: +/// upstream loads it as precompiled `backend.lsp` (the CL compiler), and +/// it is dead weight for a Rust port. See `kernel/klambda/PROVENANCE.md`. +/// +/// `stlib.kl` (the standard library) and the community extensions are +/// retained and loaded on top: upstream now ships StLib as separate +/// lazy Shen sources rather than a kernel `.kl`, but the port's +/// conformance suite and Ratatoskr stage-1 launcher still need them. const KERNEL_FILES: &[&str] = &[ - "core.kl", - "toplevel.kl", "sys.kl", - "reader.kl", - "prolog.kl", - "load.kl", "writer.kl", - "macros.kl", + "core.kl", + "reader.kl", "declarations.kl", - "types.kl", - "t-star.kl", + "toplevel.kl", + "macros.kl", + "load.kl", + "prolog.kl", "sequent.kl", "track.kl", - "dict.kl", - "compiler.kl", + "t-star.kl", + "yacc.kl", + "types.kl", "stlib.kl", - "init.kl", "extension-features.kl", "extension-expand-dynamic.kl", "extension-launcher.kl", - "yacc.kl", ]; /// Names + arities of native primitives whose `arity` and `shen.lambda-form` @@ -376,13 +398,21 @@ fn load_kl_file(interp: &mut Interp, path: &Path) -> ShenResult<()> { Ok(()) } +/// Run the kernel's post-load initialisation. +/// +/// The community ShenOSKernel-41.2 exposed a single `shen.initialise` +/// (from `init.kl`) that boot called once after loading. The Tarver +/// S41.2 refresh dropped that function: `declarations.kl` now performs +/// all of it via top-level forms evaluated *during* file load — it sets +/// `*property-vector*`, runs `shen.initialise-arity-table`, and builds +/// the lambda table (`shen.build-lambda-table`). So when `shen.initialise` +/// is absent the kernel is already initialised and this is a no-op; we +/// still call it when present so shaken/legacy kernels keep working. fn run_shen_initialise(interp: &mut Interp) -> ShenResult<()> { let sym = interp.intern("shen.initialise"); - let f = interp - .env - .get_fn(sym) - .cloned() - .ok_or_else(|| ShenError::new("shen.initialise not defined after kernel load"))?; + let Some(f) = interp.env.get_fn(sym).cloned() else { + return Ok(()); + }; interp .apply(f, vec![]) .map_err(|e| ShenError::new(format!("shen.initialise: {e}")))?; diff --git a/crates/shen-rust/tests/boot_kernel.rs b/crates/shen-rust/tests/boot_kernel.rs index 3f27f4b..c492c36 100644 --- a/crates/shen-rust/tests/boot_kernel.rs +++ b/crates/shen-rust/tests/boot_kernel.rs @@ -38,8 +38,9 @@ fn eval(interp: &mut Interp, src: &str) -> Value { #[test] fn kernel_boots_clean() { - // Just running boot is the test — it has to load all 21 files and - // shen.initialise without raising. + // Just running boot is the test — it has to load every kernel file + // (incl. the S41.2-refresh self-initialising declarations.kl) without + // raising. let _ = fresh_booted(); } diff --git a/crates/shenffi/src/lib.rs b/crates/shenffi/src/lib.rs index b08c611..3dded0e 100644 --- a/crates/shenffi/src/lib.rs +++ b/crates/shenffi/src/lib.rs @@ -33,32 +33,30 @@ pub struct ShenCtx { interp: Interp, } -/// The ShenOSKernel-41.2 `.kl` sources, embedded into the binary at compile -/// time in shen-rust's load order. Lets `shen_boot_embedded` bring up the full -/// kernel with **no filesystem access** — the iOS-friendly path (no bundled -/// resources, no sandbox path juggling). +/// The Shen kernel `.kl` sources, embedded into the binary at compile time in +/// shen-rust's boot order (must match `interp::boot::KERNEL_FILES`). Lets +/// `shen_boot_embedded` bring up the full kernel with **no filesystem +/// access** — the iOS-friendly path (no bundled resources, no sandbox path +/// juggling). See `kernel/klambda/PROVENANCE.md` for the S41.2 refresh set. const KERNEL_PARTS: &[&str] = &[ - include_str!("../../../kernel/klambda/core.kl"), - include_str!("../../../kernel/klambda/toplevel.kl"), include_str!("../../../kernel/klambda/sys.kl"), - include_str!("../../../kernel/klambda/reader.kl"), - include_str!("../../../kernel/klambda/prolog.kl"), - include_str!("../../../kernel/klambda/load.kl"), include_str!("../../../kernel/klambda/writer.kl"), - include_str!("../../../kernel/klambda/macros.kl"), + include_str!("../../../kernel/klambda/core.kl"), + include_str!("../../../kernel/klambda/reader.kl"), include_str!("../../../kernel/klambda/declarations.kl"), - include_str!("../../../kernel/klambda/types.kl"), - include_str!("../../../kernel/klambda/t-star.kl"), + include_str!("../../../kernel/klambda/toplevel.kl"), + include_str!("../../../kernel/klambda/macros.kl"), + include_str!("../../../kernel/klambda/load.kl"), + include_str!("../../../kernel/klambda/prolog.kl"), include_str!("../../../kernel/klambda/sequent.kl"), include_str!("../../../kernel/klambda/track.kl"), - include_str!("../../../kernel/klambda/dict.kl"), - include_str!("../../../kernel/klambda/compiler.kl"), + include_str!("../../../kernel/klambda/t-star.kl"), + include_str!("../../../kernel/klambda/yacc.kl"), + include_str!("../../../kernel/klambda/types.kl"), include_str!("../../../kernel/klambda/stlib.kl"), - include_str!("../../../kernel/klambda/init.kl"), include_str!("../../../kernel/klambda/extension-features.kl"), include_str!("../../../kernel/klambda/extension-expand-dynamic.kl"), include_str!("../../../kernel/klambda/extension-launcher.kl"), - include_str!("../../../kernel/klambda/yacc.kl"), ]; /// Boots a Shen kernel and returns an owning handle, or NULL on failure. diff --git a/kernel/klambda/PROVENANCE.md b/kernel/klambda/PROVENANCE.md index aa1a722..d428174 100644 --- a/kernel/klambda/PROVENANCE.md +++ b/kernel/klambda/PROVENANCE.md @@ -1,37 +1,99 @@ # Kernel provenance -## ShenOSKernel-41.2 (everything except `compiler.kl`) +## Shen kernel — S41.2 (2026-07-11 refresh), Mark Tarver -- Release tag: `shen-41.2` -- URL: https://github.com/Shen-Language/shen-sources/releases/tag/shen-41.2 -- Source zip SHA-256: `49f1b85d02348d9b3ebc461570c5c56cc066270ab81e35d5257625fb9d17fe82` +The 15 core `.kl` files below are byte-identical copies of the `KLambda/` +directory of Mark Tarver's 2026-07-11 S41.2 upload. -All 21 `.kl` files other than `compiler.kl` are **byte-identical** copies of -the `klambda/` directory in that release zip (verified with `diff -r`). -This includes `extension-programmable-pattern-matching.kl`, new in 41.2. -It is vendored for completeness but is **opt-in**: it is not part of the -canonical 21-module boot list in `crates/shen-rust/src/interp/boot.rs`. +**Canonical source** — `pyrex41/shen-s41.1`, the designated mirror of +Tarver's uploads (a private GitHub repo): -The conformance suite under `kernel/tests/` (including the 41.2 -`tests/extensions/` harness) and `kernel/README.md` come byte-identical -from the same release zip. `kernel/LICENSE.txt` is unchanged from the -release. +- Tag: `s41.2-pristine-20260711` +- Commit: `11fc51bdf53a4dcb505adeec6ec8352754cbe50f` +- Path in mirror: `KLambda/` (`diff`-verified byte-identical to the files + vendored here) -## `compiler.kl` caveat +**Original upstream** (secondary — what the mirror imported): -`compiler.kl` is **not part of the upstream release zip** — it is a -generated artifact of the shen-cl build (the KLambda image of Shen's -compiler). The vendored copy was produced from a fresh 41.2 shen-cl -build at `ShenOSKernel-41.2/klambda/compiler.kl`: +- URL: https://www.shenlanguage.org/Download/S41.2.zip +- Upstream `Last-Modified`: 2026-07-11 +- Zip SHA-256: `51becbfd60fa8c93c3f8ae5b20b948eaa84c4b1d14ad2f5d2a056002a53ee836` -- SHA-256: `ed30a08be4c8916b1e844d437fb9d65a36476e1a99419340b5523fc81a7c3e44` +Vendored files (byte-identical to both the mirror tag and the zip's +`KLambda/`): -Because it is generated rather than released, it has no upstream zip to -be byte-compared against; the hash above pins the exact copy in use. + backend.kl core.kl declarations.kl load.kl macros.kl + prolog.kl reader.kl sequent.kl sys.kl t-star.kl + toplevel.kl track.kl types.kl writer.kl yacc.kl + +The zip's `KLambda/trace.lsp` is a Common-Lisp helper, not a `.kl` module, +and is not vendored. + +### ⚠️ Version number reused for a restructured kernel + +Upstream **reused the "41.2" version string** for a kernel that is +**restructured and of a different lineage** from the community +`ShenOSKernel-41.2` (github.com/Shen-Language/shen-sources, tag +`shen-41.2`) that this port previously vendored. `*version*` is still +`"41.2"` — that is faithful to upstream — but the module set is not the +same release. Treat "S41.2 (2026-07-11 refresh)" as the precise identity. + +Delta vs the community `ShenOSKernel-41.2`: + +- **Removed** `dict.kl`, `compiler.kl`, `init.kl`: + - `put`/`get` no longer use a dict layer; they store pointer lists on + the property vector directly (`shen.change-pointer-value` / + `shen.remove-pointer`, in `sys.kl`). No native dict primitives are + needed. + - `compiler.kl` was a shen-cl build artifact (the KLambda image of the + CL compiler), never part of the release zip. + - `init.kl`'s content moved into `declarations.kl` and `toplevel.kl`. + There is **no `shen.initialise` function** any more: `declarations.kl` + sets `*property-vector*`, the arity table (`shen.initialise-arity-table`), + and the lambda table (`shen.build-lambda-table`) via **top-level forms + evaluated during file load**. `toplevel.kl` provides + `shen.initialise_environment` (per-REPL-iteration counter reset). +- **Added** `backend.kl` — a `cl.*` KLambda→Common-Lisp backend. Upstream + loads it as the precompiled `backend.lsp` (its `.kl`→Lisp compiler), and + it is **not** in `install.lsp`'s `.kl` boot list. It is dead weight for a + Rust port, so it is vendored + AOT-generated (for audit completeness) + but **not booted** — see `crates/shen-rust/src/interp/boot.rs` + (`KERNEL_FILES`) and `crates/shen-rust/src/aot/kernel/mod.rs`. + +### Boot order + +`KERNEL_FILES` follows upstream **`install.lsp`** (the reference SBCL +port's runtime loader), NOT `Sources/make.shen` (the bootstrap-generation +order). Order is load-bearing now: `declarations.kl` and `macros.kl` must +precede `types.kl` (whose 161 top-level `(declare …)` forms invoke the +type checker), and `types.kl` loads last. + +## Standard library overlay — `stlib.kl` (retained, community 41.2) + +- SHA-256: `a39047000027a1754f66a4ccf5c822f95d7adb7fd3c7e5df3860e554605df43f` + +Tarver's refresh no longer ships the standard library as a kernel `.kl`; +it lives under `Lib/StLib/` as separately-loaded Shen sources. To keep the +conformance suite and the Ratatoskr stage-1 launcher working without first +porting the StLib source-load path, the community `ShenOSKernel-41.2` +`stlib.kl` (348 defuns, no references to any removed kernel symbol) is +**retained and loaded on top** of the refreshed kernel. It is *not* part +of Tarver's S41.2 kernel. Migrating to the upstream `Lib/StLib` sources is +tracked as follow-up work. + +## Extensions (retained, community additions) + +`extension-features.kl`, `extension-expand-dynamic.kl`, and +`extension-launcher.kl` are community additions (not upstream Tarver +files), retained and booted on top of the kernel. `extension-launcher.kl` +provides the Ratatoskr stage-1 launcher CLI. They reference no removed +kernel symbol (`extension-launcher` only reads the `*hush*` global, still +present). `extension-programmable-pattern-matching.kl` is vendored + +AOT-generated for audit completeness but not booted. ## Regeneration The AOT kernel modules in `crates/shen-rust/src/aot/kernel/*.rs` are generated from these files via `scripts/codegen-kernel-aot.sh` and -byte-frozen by the Gate 6 audit (`scripts/kernel-aot-audit.sh`). After -any change here, regenerate and re-commit. +byte-frozen by the Gate 6 audit (`scripts/kernel-aot-audit.sh`). After any +change here, regenerate and re-commit. diff --git a/kernel/klambda/backend.kl b/kernel/klambda/backend.kl new file mode 100644 index 0000000..ae3cddf --- /dev/null +++ b/kernel/klambda/backend.kl @@ -0,0 +1,20 @@ +(defun cl.kl-to-lisp (V5674) (cl.kl-to-lisp-h () V5674)) + +(defun cl.kl-to-lisp-h (V5682 V5683) (cond ((= T (MEMBER V5683 V5682)) V5683) ((and (cons? V5683) (and (= type (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (= () (tl (tl (tl V5683)))))))) (cl.kl-to-lisp-h V5682 (hd (tl V5683)))) ((and (cons? V5683) (and (= protect (hd V5683)) (and (cons? (tl V5683)) (= () (tl (tl V5683)))))) (cl.kl-to-lisp-h V5682 (hd (tl V5683)))) ((and (cons? V5683) (and (= lambda (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (and (= () (tl (tl (tl V5683)))) (= (hd (tl V5683)) T)))))) (cl.kl-to-lisp-h V5682 (cl.rectify-t V5683))) ((and (cons? V5683) (and (= lambda (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (= () (tl (tl (tl V5683)))))))) (cons FUNCTION (cons (cons LAMBDA (cons (cons (hd (tl V5683)) ()) (cons (cl.kl-to-lisp-h (cons (hd (tl V5683)) V5682) (hd (tl (tl V5683)))) ()))) ()))) ((and (cons? V5683) (and (= let (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (and (cons? (tl (tl (tl V5683)))) (and (= () (tl (tl (tl (tl V5683))))) (= (hd (tl V5683)) T))))))) (cl.kl-to-lisp-h V5682 (cl.rectify-t V5683))) ((and (cons? V5683) (and (= let (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (and (cons? (tl (tl (tl V5683)))) (= () (tl (tl (tl (tl V5683)))))))))) (cons LET (cons (cons (cons (hd (tl V5683)) (cons (cl.kl-to-lisp-h V5682 (hd (tl (tl V5683)))) ())) ()) (cons (cl.kl-to-lisp-h (cons (hd (tl V5683)) V5682) (hd (tl (tl (tl V5683))))) ())))) ((and (cons? V5683) (and (= defun (hd V5683)) (and (cons? (tl V5683)) (and (cons? (tl (tl V5683))) (and (cons? (tl (tl (tl V5683)))) (= () (tl (tl (tl (tl V5683)))))))))) (cons DEFUN (cons (hd (tl V5683)) (cons (hd (tl (tl V5683))) (cons (cl.kl-to-lisp-h (hd (tl (tl V5683))) (hd (tl (tl (tl V5683))))) ()))))) ((and (cons? V5683) (= cond (hd V5683))) (cons COND (CL.MAPCAR (lambda Z5684 (cl.cond-code V5682 Z5684)) (tl V5683)))) ((and (cons? V5683) (or (= T (MEMBER (hd V5683) V5682)) (cons? (hd V5683)))) (let W5685 (CL.MAPCAR (lambda Z5686 (cl.kl-to-lisp-h V5682 Z5686)) V5683) (cl.currylisp W5685))) ((and (cons? V5683) (cl.fastsymbol? (hd V5683))) (let W5687 (CL.MAPCAR (lambda Z5688 (cl.kl-to-lisp-h V5682 Z5688)) (tl V5683)) (let W5689 (cl.maplispsym (hd V5683)) (cl.optimise-application (cons W5689 W5687))))) ((or (number? V5683) (or (string? V5683) (empty? V5683))) V5683) (true (cons QUOTE (cons V5683 ()))))) + +(defun cl.rectify-t (V5690) (SUBST (GENSYM "x") T V5690)) + +(defun cl.currylisp (V5691) (cond ((and (cons? V5691) (and (cons? (tl V5691)) (cons? (tl (tl V5691))))) (cl.currylisp (cons (cons FUNCALL (cons (hd V5691) (cons (hd (tl V5691)) ()))) (tl (tl V5691))))) ((and (cons? V5691) (and (cons? (tl V5691)) (= () (tl (tl V5691))))) (cons FUNCALL V5691)) ((and (cons? V5691) (= () (tl V5691))) (cons FUNCALL V5691)) (true V5691))) + +(defun cl.optimise-application (V5692) (cond ((and (cons? V5692) (and (= protect (hd V5692)) (and (cons? (tl V5692)) (= () (tl (tl V5692)))))) (cl.optimise-application (hd (tl V5692)))) ((and (cons? V5692) (and (= hd (hd V5692)) (and (cons? (tl V5692)) (= () (tl (tl V5692)))))) (cons CAR (cons (cl.optimise-application (hd (tl V5692))) ()))) ((and (cons? V5692) (and (= tl (hd V5692)) (and (cons? (tl V5692)) (= () (tl (tl V5692)))))) (cons CDR (cons (cl.optimise-application (hd (tl V5692))) ()))) ((and (cons? V5692) (and (= cons (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (= () (tl (tl (tl V5692)))))))) (cons CONS (cons (cl.optimise-application (hd (tl V5692))) (cons (cl.optimise-application (hd (tl (tl V5692)))) ())))) ((and (cons? V5692) (and (= append (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (= () (tl (tl (tl V5692)))))))) (cons APPEND (cons (cl.optimise-application (hd (tl V5692))) (cons (cl.optimise-application (hd (tl (tl V5692)))) ())))) ((and (cons? V5692) (and (= reverse (hd V5692)) (and (cons? (tl V5692)) (= () (tl (tl V5692)))))) (cons REVERSE (cons (cl.optimise-application (hd (tl V5692))) ()))) ((and (cons? V5692) (and (= length (hd V5692)) (and (cons? (tl V5692)) (= () (tl (tl V5692)))))) (cons CL.LIST-LENGTH (cons (cl.optimise-application (hd (tl V5692))) ()))) ((and (cons? V5692) (and (= if (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (and (cons? (tl (tl (tl V5692)))) (= () (tl (tl (tl (tl V5692)))))))))) (cons IF (cons (cl.wrap (hd (tl V5692))) (cons (cl.optimise-application (hd (tl (tl V5692)))) (cons (cl.optimise-application (hd (tl (tl (tl V5692))))) ()))))) ((and (cons? V5692) (and (= value (hd V5692)) (and (cons? (tl V5692)) (and (cons? (hd (tl V5692))) (and (cons? (tl (hd (tl V5692)))) (and (= () (tl (tl (hd (tl V5692))))) (and (= () (tl (tl V5692))) (= (hd (hd (tl V5692))) QUOTE)))))))) (hd (tl (hd (tl V5692))))) ((and (cons? V5692) (and (= map (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (= () (tl (tl (tl V5692)))))))) (cons CL.MAPCAR (tl V5692))) ((and (cons? V5692) (and (= + (hd V5692)) (and (cons? (tl V5692)) (and (= 1 (hd (tl V5692))) (and (cons? (tl (tl V5692))) (= () (tl (tl (tl V5692))))))))) (cons (intern "1+") (cons (cl.optimise-application (hd (tl (tl V5692)))) ()))) ((and (cons? V5692) (and (= + (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (and (= 1 (hd (tl (tl V5692)))) (= () (tl (tl (tl V5692))))))))) (cons (intern "1+") (cons (cl.optimise-application (hd (tl V5692))) ()))) ((and (cons? V5692) (and (= - (hd V5692)) (and (cons? (tl V5692)) (and (cons? (tl (tl V5692))) (and (= 1 (hd (tl (tl V5692)))) (= () (tl (tl (tl V5692))))))))) (cons (intern "1-") (cons (cl.optimise-application (hd (tl V5692))) ()))) ((cons? V5692) (CL.MAPCAR (lambda Z5693 (cl.optimise-application Z5693)) V5692)) (true V5692))) + +(defun cl.cond-code (V5698 V5699) (cond ((and (cons? V5699) (and (cons? (tl V5699)) (= () (tl (tl V5699))))) (let W5700 (cl.wrap (cl.kl-to-lisp-h V5698 (hd V5699))) (let W5701 (cl.kl-to-lisp-h V5698 (hd (tl V5699))) (cons W5700 (cons W5701 ()))))) (true (simple-error "implementation error in shen.cond-code")))) + +(defun cl.wrap (V5702) (cond ((and (cons? V5702) (and (cons? (tl V5702)) (and (= true (hd (tl V5702))) (and (= () (tl (tl V5702))) (= (hd V5702) QUOTE))))) T) ((and (cons? V5702) (and (= cons? (hd V5702)) (and (cons? (tl V5702)) (= () (tl (tl V5702)))))) (cons CONSP (tl V5702))) ((and (cons? V5702) (and (= string? (hd V5702)) (and (cons? (tl V5702)) (= () (tl (tl V5702)))))) (cons STRINGP (tl V5702))) ((and (cons? V5702) (and (= number? (hd V5702)) (and (cons? (tl V5702)) (= () (tl (tl V5702)))))) (cons NUMBERP (tl V5702))) ((and (cons? V5702) (and (= empty? (hd V5702)) (and (cons? (tl V5702)) (= () (tl (tl V5702)))))) (cons NULL (tl V5702))) ((and (cons? V5702) (and (= and (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons AND (cons (cl.wrap (hd (tl V5702))) (cons (cl.wrap (hd (tl (tl V5702)))) ())))) ((and (cons? V5702) (and (= or (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons OR (cons (cl.wrap (hd (tl V5702))) (cons (cl.wrap (hd (tl (tl V5702)))) ())))) ((and (cons? V5702) (and (= not (hd V5702)) (and (cons? (tl V5702)) (= () (tl (tl V5702)))))) (cons NOT (cons (cl.wrap (hd (tl V5702))) ()))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (= () (hd (tl (tl V5702)))) (= () (tl (tl (tl V5702))))))))) (cons NULL (cons (hd (tl V5702)) ()))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (= () (hd (tl V5702))) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702))))))))) (cons NULL (tl (tl V5702)))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (cons? (hd (tl (tl V5702)))) (and (cons? (tl (hd (tl (tl V5702))))) (and (= () (tl (tl (hd (tl (tl V5702)))))) (and (= () (tl (tl (tl V5702)))) (and (= (hd (hd (tl (tl V5702)))) QUOTE) (cl.fastsymbol? (hd (tl (hd (tl (tl V5702))))))))))))))) (cons EQ (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (hd (tl V5702))) (and (cons? (tl (hd (tl V5702)))) (and (= () (tl (tl (hd (tl V5702))))) (and (cons? (tl (tl V5702))) (and (= () (tl (tl (tl V5702)))) (and (= (hd (hd (tl V5702))) QUOTE) (cl.fastsymbol? (hd (tl (hd (tl V5702)))))))))))))) (cons EQ (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (hd (tl V5702))) (and (= fail (hd (hd (tl V5702)))) (and (= () (tl (hd (tl V5702)))) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702))))))))))) (cons EQ (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (cons? (hd (tl (tl V5702)))) (and (= fail (hd (hd (tl (tl V5702))))) (and (= () (tl (hd (tl (tl V5702))))) (= () (tl (tl (tl V5702))))))))))) (cons EQ (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (= () (tl (tl (tl V5702)))) (string? (hd (tl V5702)))))))) (cons EQUAL (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (= () (tl (tl (tl V5702)))) (string? (hd (tl (tl V5702))))))))) (cons EQUAL (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (= () (tl (tl (tl V5702)))) (number? (hd (tl V5702)))))))) (cons EQUALP (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (and (= () (tl (tl (tl V5702)))) (number? (hd (tl (tl V5702))))))))) (cons EQUALP (tl V5702))) ((and (cons? V5702) (and (= cl.equal? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons cl.ABSEQUAL (tl V5702))) ((and (cons? V5702) (and (= cl.greater? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons > (tl V5702))) ((and (cons? V5702) (and (= cl.greater-than-or-equal-to? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons >= (tl V5702))) ((and (cons? V5702) (and (= cl.less? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons < (tl V5702))) ((and (cons? V5702) (and (= cl.less-than-or-equal-to? (hd V5702)) (and (cons? (tl V5702)) (and (cons? (tl (tl V5702))) (= () (tl (tl (tl V5702)))))))) (cons <= (tl V5702))) (true (cons cl.wrapper (cons V5702 ()))))) + +(defun cl.fastsymbol? (V5709) (cond ((cons? V5709) false) ((= () V5709) false) ((string? V5709) false) ((number? V5709) false) (true true))) + +(defun cl.wrapper (V5710) (cond ((= true V5710) T) ((= false V5710) ()) (true (simple-error "boolean expected")))) + +(defun cl.maplispsym (V5711) (cond ((= = V5711) cl.equal?) ((= > V5711) cl.greater?) ((= < V5711) cl.less?) ((= >= V5711) cl.greater-than-or-equal-to?) ((= <= V5711) cl.less-than-or-equal-to?) ((= + V5711) cl.add) ((= - V5711) cl.subtract) ((= / V5711) cl.divide) ((= * V5711) cl.multiply) (true V5711))) + diff --git a/kernel/klambda/compiler.kl b/kernel/klambda/compiler.kl deleted file mode 100644 index 4a54e9e..0000000 --- a/kernel/klambda/compiler.kl +++ /dev/null @@ -1,99 +0,0 @@ -"Copyright (c) 2012-2019 Bruno Deferrari. All rights reserved. -BSD 3-Clause License: http://opensource.org/licenses/BSD-3-Clause" - -(defun shen-cl.initialise-compiler () (do (set shen-cl.*compiling-shen-sources* false) (do (set shen-cl.*factorise-patterns* true) shen-cl.done))) - -(defun shen-cl.kl (V414) V414) - -(defun shen-cl.cl (V415) (intern (shen-cl.upcase V415))) - -(defun shen-cl.unbound-symbol? (V420 V421) (cond ((or (symbol? V420) (= V420 ,)) (not (element? V420 V421))) (true false))) - -(defun shen-cl.merge-nested-repeats (V426 V427) (cond ((and (cons? V427) (and (cons? (tl V427)) (and (cons? (tl (tl V427))) (and (cons? (hd (tl (tl V427)))) (and (= () (tl (tl (tl V427)))) (and (= (hd V427) (hd (hd (tl (tl V427))))) (= V426 (hd (hd (tl (tl V427))))))))))) (cons (hd (hd (tl (tl V427)))) (cons (hd (tl V427)) (tl (hd (tl (tl V427))))))) (true V427))) - -(defun shen-cl.merge-nested-lets (V429) (cond ((and (cons? V429) (and (cons? (tl V429)) (and (cons? (hd (tl V429))) (and (= () (tl (hd (tl V429)))) (and (cons? (tl (tl V429))) (and (cons? (hd (tl (tl V429)))) (and (cons? (tl (hd (tl (tl V429))))) (and (cons? (tl (tl (hd (tl (tl V429)))))) (and (= () (tl (tl (tl (hd (tl (tl V429))))))) (and (= () (tl (tl (tl V429)))) (and (= (shen-cl.cl let) (hd V429)) (= (shen-cl.cl let*) (hd (hd (tl (tl V429)))))))))))))))) (cons (hd (hd (tl (tl V429)))) (cons (cons (hd (hd (tl V429))) (hd (tl (hd (tl (tl V429)))))) (tl (tl (hd (tl (tl V429)))))))) ((and (cons? V429) (and (cons? (tl V429)) (and (cons? (hd (tl V429))) (and (= () (tl (hd (tl V429)))) (and (cons? (tl (tl V429))) (and (cons? (hd (tl (tl V429)))) (and (cons? (tl (hd (tl (tl V429))))) (and (cons? (hd (tl (hd (tl (tl V429)))))) (and (= () (tl (hd (tl (hd (tl (tl V429))))))) (and (cons? (tl (tl (hd (tl (tl V429)))))) (and (= () (tl (tl (tl (hd (tl (tl V429))))))) (and (= () (tl (tl (tl V429)))) (and (= (hd V429) (hd (hd (tl (tl V429))))) (= (shen-cl.cl let) (hd (hd (tl (tl V429)))))))))))))))))) (cons (shen-cl.cl let*) (cons (cons (hd (hd (tl V429))) (hd (tl (hd (tl (tl V429)))))) (tl (tl (hd (tl (tl V429)))))))) (true V429))) - -(defun shen-cl.compile-expression (V445 V446) (cond ((= () V445) (cons (shen-cl.cl quote) (cons () ()))) ((= true V445) (cons (shen-cl.cl quote) (cons true ()))) ((= false V445) (cons (shen-cl.cl quote) (cons false ()))) ((shen-cl.unbound-symbol? V445 V446) (shen-cl.emit-symbol V445)) ((and (cons? V445) (and (= value (hd V445)) (and (cons? (tl V445)) (and (= () (tl (tl V445))) (shen-cl.unbound-symbol? (hd (tl V445)) V446))))) (hd (tl V445))) ((and (cons? V445) (and (= let (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (and (cons? (tl (tl (tl V445)))) (= () (tl (tl (tl (tl V445)))))))))) (shen-cl.merge-nested-lets (shen-cl.emit-let (hd (tl V445)) (hd (tl (tl V445))) (hd (tl (tl (tl V445)))) V446))) ((and (cons? V445) (= cond (hd V445))) (shen-cl.emit-cond (tl V445) V446)) ((and (cons? V445) (and (= if (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (and (cons? (tl (tl (tl V445)))) (= () (tl (tl (tl (tl V445)))))))))) (shen-cl.emit-if (hd (tl V445)) (hd (tl (tl V445))) (hd (tl (tl (tl V445)))) V446)) ((and (cons? V445) (and (= lambda (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (shen-cl.emit-lambda (hd (tl V445)) (hd (tl (tl V445))) V446)) ((and (cons? V445) (and (= and (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (cons (shen-cl.kl and) (cons (shen-cl.compile-expression (hd (tl V445)) V446) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ())))) ((and (cons? V445) (and (= or (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (cons (shen-cl.kl or) (cons (shen-cl.compile-expression (hd (tl V445)) V446) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ())))) ((and (cons? V445) (and (= trap-error (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (shen-cl.emit-trap-error (hd (tl V445)) (hd (tl (tl V445))) V446)) ((and (cons? V445) (and (= do (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (shen-cl.merge-nested-repeats (shen-cl.cl progn) (cons (shen-cl.cl progn) (cons (shen-cl.compile-expression (hd (tl V445)) V446) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ()))))) ((and (cons? V445) (and (= = (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (shen-cl.emit-equality-check (hd (tl V445)) (hd (tl (tl V445))) V446)) ((and (cons? V445) (and (= thaw (hd V445)) (and (cons? (tl V445)) (= () (tl (tl V445)))))) (cons (shen-cl.cl funcall) (cons (shen-cl.compile-expression (hd (tl V445)) V446) ()))) ((and (cons? V445) (and (= intern (hd V445)) (and (cons? (tl V445)) (and (= () (tl (tl V445))) (string? (hd (tl V445))))))) (cons (shen-cl.cl quote) (cons (intern (hd (tl V445))) ()))) ((and (cons? V445) (and (= type (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (shen-cl.compile-expression (hd (tl V445)) V446)) ((and (cons? V445) (and (= lisp.lambda (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (cons (shen-cl.cl lambda) (cons (hd (tl V445)) (cons (shen-cl.compile-expression (hd (tl (tl V445))) (append (hd (tl V445)) V446)) ())))) ((and (cons? V445) (and (= lisp.defun (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (and (cons? (tl (tl (tl V445)))) (= () (tl (tl (tl (tl V445)))))))))) (cons (shen-cl.cl defun) (cons (hd (tl V445)) (cons (hd (tl (tl V445))) (cons (shen-cl.compile-expression (hd (tl (tl (tl V445)))) (hd (tl (tl V445)))) ()))))) ((and (cons? V445) (and (= lisp.block (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (cons (shen-cl.cl block) (cons (hd (tl V445)) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ())))) ((and (cons? V445) (and (= shen-cl.lisp.block (hd V445)) (and (cons? (tl V445)) (and (cons? (tl (tl V445))) (= () (tl (tl (tl V445)))))))) (cons (shen-cl.cl block) (cons (hd (tl V445)) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ())))) ((and (cons? V445) (and (= lisp. (hd V445)) (and (cons? (tl V445)) (= () (tl (tl V445)))))) (if (string? (hd (tl V445))) (READ-FROM-STRING (hd (tl V445))) (simple-error (cn "lisp. excepts a string, not " (shen.app (hd (tl V445)) "" shen.a))))) ((and (cons? V445) (and (= %%return (hd V445)) (and (cons? (tl V445)) (= () (tl (tl V445)))))) (cons (shen-cl.cl return) (cons (shen-cl.compile-expression (hd (tl V445)) V446) ()))) ((and (cons? V445) (and (= %%goto-label (hd V445)) (cons? (tl V445)))) (cons (shen-cl.cl go) (cons (hd (tl V445)) ()))) ((and (cons? V445) (and (= %%let-label (hd V445)) (and (cons? (tl V445)) (and (cons? (hd (tl V445))) (and (cons? (tl (tl V445))) (and (cons? (tl (tl (tl V445)))) (= () (tl (tl (tl (tl V445))))))))))) (cons (shen-cl.cl tagbody) (cons (shen-cl.compile-expression (hd (tl (tl (tl V445)))) V446) (cons (hd (hd (tl V445))) (cons (shen-cl.compile-expression (hd (tl (tl V445))) V446) ()))))) ((cons? V445) (shen-cl.emit-application (hd V445) (tl V445) V446)) (true V445))) - -(defun shen-cl.optimise-boolean-check (V447) (cond ((and (cons? V447) (and (= cons? (hd V447)) (and (cons? (tl V447)) (= () (tl (tl V447)))))) (cons (shen-cl.cl consp) (tl V447))) ((and (cons? V447) (and (= string? (hd V447)) (and (cons? (tl V447)) (= () (tl (tl V447)))))) (cons (shen-cl.cl stringp) (tl V447))) ((and (cons? V447) (and (= number? (hd V447)) (and (cons? (tl V447)) (= () (tl (tl V447)))))) (cons (shen-cl.cl numberp) (tl V447))) ((and (cons? V447) (and (= empty? (hd V447)) (and (cons? (tl V447)) (= () (tl (tl V447)))))) (cons (shen-cl.cl null) (tl V447))) ((and (cons? V447) (and (= and (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl and) (cons (shen-cl.optimise-boolean-check (hd (tl V447))) (cons (shen-cl.optimise-boolean-check (hd (tl (tl V447)))) ())))) ((and (cons? V447) (and (= or (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl or) (cons (shen-cl.optimise-boolean-check (hd (tl V447))) (cons (shen-cl.optimise-boolean-check (hd (tl (tl V447)))) ())))) ((and (cons? V447) (and (= not (hd V447)) (and (cons? (tl V447)) (= () (tl (tl V447)))))) (cons (shen-cl.cl not) (cons (shen-cl.optimise-boolean-check (hd (tl V447))) ()))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (cons? (hd (tl (tl V447)))) (and (cons? (tl (hd (tl (tl V447))))) (and (= () (hd (tl (hd (tl (tl V447)))))) (and (= () (tl (tl (hd (tl (tl V447)))))) (and (= () (tl (tl (tl V447)))) (= (hd (hd (tl (tl V447)))) (shen-cl.cl quote))))))))))) (cons (shen-cl.cl null) (cons (hd (tl V447)) ()))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (hd (tl V447))) (and (cons? (tl (hd (tl V447)))) (and (= () (hd (tl (hd (tl V447))))) (and (= () (tl (tl (hd (tl V447))))) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (= (hd (hd (tl V447))) (shen-cl.cl quote))))))))))) (cons (shen-cl.cl null) (tl (tl V447)))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (hd (tl V447))) (and (= fail (hd (hd (tl V447)))) (and (= () (tl (hd (tl V447)))) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447))))))))))) (cons (shen-cl.cl eq) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (cons? (hd (tl (tl V447)))) (and (= fail (hd (hd (tl (tl V447))))) (and (= () (tl (hd (tl (tl V447))))) (= () (tl (tl (tl V447))))))))))) (cons (shen-cl.cl eq) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (string? (hd (tl V447)))))))) (cons (shen-cl.cl equal) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (string? (hd (tl (tl V447))))))))) (cons (shen-cl.cl equal) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (number? (hd (tl (tl V447))))))))) (cons (shen-cl.cl equalp) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (number? (hd (tl V447)))))))) (cons (shen-cl.cl equalp) (cons (hd (tl (tl V447))) (cons (hd (tl V447)) ())))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (and (cons? (hd (tl (tl V447)))) (and (cons? (tl (hd (tl (tl V447))))) (and (= () (tl (tl (hd (tl (tl V447)))))) (and (= () (tl (tl (tl V447)))) (= (shen-cl.cl quote) (hd (hd (tl (tl V447))))))))))))) (cons (shen-cl.cl eq) (tl V447))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (hd (tl V447))) (and (cons? (tl (hd (tl V447)))) (and (= () (tl (tl (hd (tl V447))))) (and (cons? (tl (tl V447))) (and (= () (tl (tl (tl V447)))) (= (shen-cl.cl quote) (hd (hd (tl V447)))))))))))) (cons (shen-cl.cl eq) (cons (hd (tl (tl V447))) (cons (hd (tl V447)) ())))) ((and (cons? V447) (and (= shen-cl.equal? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.kl shen-cl.absequal) (tl V447))) ((and (cons? V447) (and (= shen-cl.greater? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl >) (tl V447))) ((and (cons? V447) (and (= shen-cl.greater-than-or-equal-to? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl >=) (tl V447))) ((and (cons? V447) (and (= shen-cl.less? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl <) (tl V447))) ((and (cons? V447) (and (= shen-cl.less-than-or-equal-to? (hd V447)) (and (cons? (tl V447)) (and (cons? (tl (tl V447))) (= () (tl (tl (tl V447)))))))) (cons (shen-cl.cl <=) (tl V447))) ((and (cons? V447) (and (cons? (tl V447)) (and (= true (hd (tl V447))) (and (= () (tl (tl V447))) (= (hd V447) (shen-cl.cl quote)))))) (shen-cl.cl t)) ((and (cons? V447) (and (cons? (tl V447)) (and (= false (hd (tl V447))) (and (= () (tl (tl V447))) (= (hd V447) (shen-cl.cl quote)))))) (shen-cl.cl nil)) (true (cons shen-cl.true? (cons V447 ()))))) - -(defun shen-cl.emit-symbol (V448) (cons (shen-cl.cl quote) (cons V448 ()))) - -(defun shen-cl.subst* (V450 V451 V452) (cond ((= V450 V451) V452) ((= () V451) (shen-cl.subst-nil-element V450 V452)) (true (subst V450 V451 V452)))) - -(defun shen-cl.subst-nil-spine (V455 V456) (cond ((= () V456) ()) ((cons? V456) (cons (shen-cl.subst-nil-element V455 (hd V456)) (shen-cl.subst-nil-spine V455 (tl V456)))) (true (shen.f-error shen-cl.subst-nil-spine)))) - -(defun shen-cl.subst-nil-element (V459 V460) (cond ((= () V460) V459) ((cons? V460) (shen-cl.subst-nil-spine V459 V460)) (true V460))) - -(defun shen-cl.ch-T/NIL (V461) (cond ((= T V461) (shen-cl.cl shen-cl.safe-t)) ((= () V461) (shen-cl.cl shen-cl.safe-nil)) (true V461))) - -(defun shen-cl.emit-let (V462 V463 V464 V465) (let W466 (shen-cl.ch-T/NIL V462) (let W467 (shen-cl.subst* W466 V462 V464) (cons (shen-cl.cl let) (cons (cons (cons W466 (cons (shen-cl.compile-expression V463 V465) ())) ()) (cons (shen-cl.compile-expression W467 (cons W466 V465)) ())))))) - -(defun shen-cl.emit-lambda (V468 V469 V470) (let W471 (shen-cl.ch-T/NIL V468) (let W472 (shen-cl.subst* W471 V468 V469) (cons (shen-cl.kl lambda) (cons W471 (cons (shen-cl.compile-expression W472 (cons W471 V470)) ())))))) - -(defun shen-cl.emit-if (V477 V478 V479 V480) (cond ((= true V477) (shen-cl.compile-expression V478 V480)) ((= false V477) (shen-cl.compile-expression V479 V480)) (true (cons (shen-cl.cl if) (cons (shen-cl.optimise-boolean-check (shen-cl.compile-expression V477 V480)) (cons (shen-cl.compile-expression V478 V480) (cons (shen-cl.compile-expression V479 V480) ()))))))) - -(defun shen-cl.emit-cond (V481 V482) (cons (shen-cl.cl cond) (shen-cl.emit-cond-clauses V481 V482))) - -(defun shen-cl.emit-cond-clauses (V489 V490) (cond ((= () V489) ()) ((and (cons? V489) (and (cons? (hd V489)) (and (= false (hd (hd V489))) (and (cons? (tl (hd V489))) (= () (tl (tl (hd V489)))))))) (shen-cl.emit-cond-clauses (tl V489) V490)) ((and (cons? V489) (and (cons? (hd V489)) (and (= true (hd (hd V489))) (and (cons? (tl (hd V489))) (= () (tl (tl (hd V489)))))))) (cons (cons (shen-cl.cl t) (cons (shen-cl.compile-expression (hd (tl (hd V489))) V490) ())) ())) ((and (cons? V489) (and (cons? (hd V489)) (and (cons? (tl (hd V489))) (= () (tl (tl (hd V489))))))) (let W491 (shen-cl.optimise-boolean-check (shen-cl.compile-expression (hd (hd V489)) V490)) (let W492 (shen-cl.compile-expression (hd (tl (hd V489))) V490) (let W493 (shen-cl.emit-cond-clauses (tl V489) V490) (cons (cons W491 (cons W492 ())) W493))))) (true (shen.f-error shen-cl.emit-cond-clauses)))) - -(defun shen-cl.emit-trap-error (V494 V495 V496) (let Freeze497 (freeze (cond (true (cons trap-error (cons (shen-cl.compile-expression V494 V496) (cons (shen-cl.compile-expression V495 V496) ())))))) (if (and (cons? V494) (and (value shen-cl.*compiling-shen-sources*) (element? (hd V494) (cons value (cons <-vector (cons <-address (cons get ()))))))) (let Result498 (shen-cl.emit-trap-error-optimise V494 V495 V496) (if (= Result498 (fail)) (thaw Freeze497) Result498)) (thaw Freeze497)))) - -(defun shen-cl.emit-trap-error-optimise (V505 V506 V507) (cond ((and (cons? V505) (and (= value (hd V505)) (and (cons? (tl V505)) (and (= () (tl (tl V505))) (and (cons? V506) (and (= lambda (hd V506)) (and (cons? (tl V506)) (and (cons? (tl (tl V506))) (= () (tl (tl (tl V506)))))))))))) (shen-cl.compile-expression (cons shen-cl.value/or (cons (hd (tl V505)) (cons (cons freeze (tl (tl V506))) ()))) V507)) ((and (cons? V505) (and (= <-vector (hd V505)) (and (cons? (tl V505)) (and (cons? (tl (tl V505))) (and (= () (tl (tl (tl V505)))) (and (cons? V506) (and (= lambda (hd V506)) (and (cons? (tl V506)) (and (cons? (tl (tl V506))) (= () (tl (tl (tl V506))))))))))))) (shen-cl.compile-expression (cons shen-cl.<-vector/or (cons (hd (tl V505)) (cons (hd (tl (tl V505))) (cons (cons freeze (tl (tl V506))) ())))) V507)) ((and (cons? V505) (and (= <-address (hd V505)) (and (cons? (tl V505)) (and (cons? (tl (tl V505))) (and (= () (tl (tl (tl V505)))) (and (cons? V506) (and (= lambda (hd V506)) (and (cons? (tl V506)) (and (cons? (tl (tl V506))) (= () (tl (tl (tl V506))))))))))))) (shen-cl.compile-expression (cons shen-cl.<-address/or (cons (hd (tl V505)) (cons (hd (tl (tl V505))) (cons (cons freeze (tl (tl V506))) ())))) V507)) ((and (cons? V505) (and (= get (hd V505)) (and (cons? (tl V505)) (and (cons? (tl (tl V505))) (and (cons? (tl (tl (tl V505)))) (and (= () (tl (tl (tl (tl V505))))) (and (cons? V506) (and (= lambda (hd V506)) (and (cons? (tl V506)) (and (cons? (tl (tl V506))) (= () (tl (tl (tl V506)))))))))))))) (shen-cl.compile-expression (cons shen-cl.get/or (cons (hd (tl V505)) (cons (hd (tl (tl V505))) (cons (hd (tl (tl (tl V505)))) (cons (cons freeze (tl (tl V506))) ()))))) V507)) (true (fail)))) - -(defun shen-cl.emit-equality-check (V508 V509 V510) (cons (shen-cl.kl shen-cl.equal?) (cons (shen-cl.compile-expression V508 V510) (cons (shen-cl.compile-expression V509 V510) ())))) - -(defun shen-cl.emit-application (V511 V512 V513) (shen-cl.emit-application* V511 (arity V511) V512 V513)) - -(defun shen-cl.is-partial-application? (V514 V515 V516) (not (or (= V515 -1) (= V515 (length V516))))) - -(defun shen-cl.take-n (V519 V520) (cond ((= 0 V520) ()) ((cons? V519) (cons (hd V519) (shen-cl.take-n (tl V519) (- V520 1)))) (true (shen.f-error shen-cl.take-n)))) - -(defun shen-cl.drop-n (V521 V522) (cond ((= 0 V522) V521) ((cons? V521) (shen-cl.drop-n (tl V521) (- V522 1))) (true (shen.f-error shen-cl.drop-n)))) - -(defun shen-cl.emit-partial-application (V531 V532 V533 V534) (cond ((> V532 (length V533)) (let W535 (map (lambda Z536 (shen-cl.compile-expression Z536 V534)) V533) (shen-cl.nest-call (shen-cl.nest-lambda V531 V532 V534) W535))) ((< V532 (length V533)) (let W537 (shen-cl.compile-expression (cons V531 (shen-cl.take-n V533 V532)) V534) (let W538 (map (lambda Z539 (shen-cl.compile-expression Z539 V534)) (shen-cl.drop-n V533 V532)) (shen-cl.nest-call W537 W538)))) (true (simple-error "emit-partial-application called with non-partial application")))) - -(defun shen-cl.dynamic-application? (V540 V541) (or (cons? V540) (element? V540 V541))) - -(defun shen-cl.emit-dynamic-application (V542 V543 V544) (cond ((= () V543) (cons (shen-cl.cl funcall) (cons (shen-cl.compile-expression V542 V544) ()))) (true (let W545 (map (lambda Z546 (shen-cl.compile-expression Z546 V544)) V543) (shen-cl.nest-call (shen-cl.compile-expression V542 V544) W545))))) - -(defun shen-cl.lisp-prefixed-h? (V551) (cond ((and (cons? V551) (and (= "l" (hd V551)) (and (cons? (tl V551)) (and (= "i" (hd (tl V551))) (and (cons? (tl (tl V551))) (and (= "s" (hd (tl (tl V551)))) (and (cons? (tl (tl (tl V551)))) (and (= "p" (hd (tl (tl (tl V551))))) (and (cons? (tl (tl (tl (tl V551))))) (= "." (hd (tl (tl (tl (tl V551))))))))))))))) true) (true false))) - -(defun shen-cl.lisp-prefixed? (V554) (cond ((symbol? V554) (shen-cl.lisp-prefixed-h? (explode V554))) (true false))) - -(defun shen-cl.remove-lisp-prefix (V555) (cond ((symbol? V555) (shen-cl.remove-lisp-prefix (str V555))) ((and (shen.+string? V555) (and (= "l" (hdstr V555)) (and (shen.+string? (tlstr V555)) (and (= "i" (hdstr (tlstr V555))) (and (shen.+string? (tlstr (tlstr V555))) (and (= "s" (hdstr (tlstr (tlstr V555)))) (and (shen.+string? (tlstr (tlstr (tlstr V555)))) (and (= "p" (hdstr (tlstr (tlstr (tlstr V555))))) (and (shen.+string? (tlstr (tlstr (tlstr (tlstr V555))))) (= "." (hdstr (tlstr (tlstr (tlstr (tlstr V555))))))))))))))) (intern (tlstr (tlstr (tlstr (tlstr (tlstr V555))))))) (true (shen.f-error shen-cl.remove-lisp-prefix)))) - -(defun shen-cl.upcase (V556) (shen-cl.upcase-h (explode V556))) - -(defun shen-cl.upcase-h (V557) (cond ((= () V557) "") ((cons? V557) (cn (shen-cl.upcase-char (hd V557)) (shen-cl.upcase-h (tl V557)))) (true (shen.f-error shen-cl.upcase-h)))) - -(defun shen-cl.upcase-char (V558) (n->string (shen-cl.upcase-charcode (string->n V558)))) - -(defun shen-cl.upcase-charcode (V559) (cond ((and (>= V559 97) (<= V559 122)) (- V559 32)) (true V559))) - -(defun shen-cl.qualify-op (V560) (cond ((shen-cl.lisp-prefixed? V560) (shen-cl.cl (shen-cl.remove-lisp-prefix V560))) ((symbol? V560) (shen-cl.kl V560)) (true V560))) - -(defun shen-cl.not-fail (V563 V564) (cond ((not (= V563 (fail))) (V564 V563)) (true V563))) - -(defun shen-cl.binary-op-mapping (V567) (cond ((= + V567) (shen-cl.kl shen-cl.add)) ((= - V567) (shen-cl.kl shen-cl.subtract)) ((= * V567) (shen-cl.kl shen-cl.multiply)) ((= / V567) (shen-cl.kl shen-cl.divide)) ((= > V567) (shen-cl.kl shen-cl.greater?)) ((= < V567) (shen-cl.kl shen-cl.less?)) ((= >= V567) (shen-cl.kl shen-cl.greater-than-or-equal-to?)) ((= <= V567) (shen-cl.kl shen-cl.less-than-or-equal-to?)) ((= cons V567) (shen-cl.cl cons)) ((= reverse V567) (shen-cl.cl reverse)) ((= append V567) (shen-cl.cl append)) (true (fail)))) - -(defun shen-cl.unary-op-mapping (V570) (cond ((= hd V570) (shen-cl.cl car)) ((= tl V570) (shen-cl.cl cdr)) ((= length V570) (shen-cl.cl list-length)) (true (fail)))) - -(defun shen-cl.optimise-static-application (V571) (cond ((and (cons? V571) (and (= shen-cl.add (hd V571)) (and (cons? (tl V571)) (and (= 1 (hd (tl V571))) (and (cons? (tl (tl V571))) (= () (tl (tl (tl V571))))))))) (cons (shen-cl.cl (intern "1+")) (tl (tl V571)))) ((and (cons? V571) (and (= shen-cl.add (hd V571)) (and (cons? (tl V571)) (and (cons? (tl (tl V571))) (and (= 1 (hd (tl (tl V571)))) (= () (tl (tl (tl V571))))))))) (cons (shen-cl.cl (intern "1+")) (cons (hd (tl V571)) ()))) ((and (cons? V571) (and (= shen-cl.subtract (hd V571)) (and (cons? (tl V571)) (and (cons? (tl (tl V571))) (and (= 1 (hd (tl (tl V571)))) (= () (tl (tl (tl V571))))))))) (cons (shen-cl.cl (intern "1-")) (cons (hd (tl V571)) ()))) ((and (cons? V571) (and (cons? (tl V571)) (and (cons? (tl (tl V571))) (and (cons? (hd (tl (tl V571)))) (and (cons? (tl (hd (tl (tl V571))))) (and (= () (hd (tl (hd (tl (tl V571)))))) (and (= () (tl (tl (hd (tl (tl V571)))))) (and (= () (tl (tl (tl V571)))) (and (= (shen-cl.cl cons) (hd V571)) (= (shen-cl.cl quote) (hd (hd (tl (tl V571)))))))))))))) (cons (shen-cl.cl list) (cons (hd (tl V571)) ()))) ((and (cons? V571) (and (cons? (tl V571)) (and (cons? (tl (tl V571))) (and (cons? (hd (tl (tl V571)))) (and (= () (tl (tl (tl V571)))) (and (= (shen-cl.cl cons) (hd V571)) (= (shen-cl.cl list) (hd (hd (tl (tl V571))))))))))) (cons (hd (hd (tl (tl V571)))) (cons (hd (tl V571)) (tl (hd (tl (tl V571))))))) (true V571))) - -(defun shen-cl.emit-static-application (V574 V575 V576 V577) (let Freeze586 (freeze (cond (true (let Freeze588 (freeze (cond (true (let W584 (map (lambda Z585 (shen-cl.compile-expression Z585 V577)) V576) (cons (shen-cl.qualify-op V574) W584))))) (if (= 1 V575) (let Result589 (shen-cl.not-fail (shen-cl.unary-op-mapping V574) (lambda Z581 (let W582 (map (lambda Z583 (shen-cl.compile-expression Z583 V577)) V576) (cons Z581 W582)))) (if (= Result589 (fail)) (thaw Freeze588) Result589)) (thaw Freeze588)))))) (if (= 2 V575) (let Result587 (shen-cl.not-fail (shen-cl.binary-op-mapping V574) (lambda Z578 (let W579 (map (lambda Z580 (shen-cl.compile-expression Z580 V577)) V576) (cons Z578 W579)))) (if (= Result587 (fail)) (thaw Freeze586) Result587)) (thaw Freeze586)))) - -(defun shen-cl.emit-application* (V590 V591 V592 V593) (if (shen-cl.is-partial-application? V590 V591 V592) (shen-cl.emit-partial-application V590 V591 V592 V593) (if (shen-cl.dynamic-application? V590 V593) (shen-cl.emit-dynamic-application V590 V592 V593) (shen-cl.optimise-static-application (shen-cl.emit-static-application V590 V591 V592 V593))))) - -(defun shen-cl.nest-call (V594 V595) (cond ((= () V595) V594) ((cons? V595) (shen-cl.nest-call (cons (shen-cl.cl funcall) (cons V594 (cons (hd V595) ()))) (tl V595))) (true (shen.f-error shen-cl.nest-call)))) - -(defun shen-cl.nest-lambda (V596 V597 V598) (cond ((<= V597 0) (shen-cl.compile-expression V596 V598)) (true (let W599 (gensym Y) (cons (shen-cl.kl lambda) (cons W599 (cons (shen-cl.nest-lambda (shen-cl.merge-args V596 W599) (- V597 1) (cons W599 V598)) ()))))))) - -(defun shen-cl.merge-args (V600 V601) (cond ((cons? V600) (append V600 (cons V601 ()))) (true (cons V600 (cons V601 ()))))) - -(defun shen-cl.factorise-defun (V602) (cond ((and (cons? V602) (and (= defun (hd V602)) (and (cons? (tl V602)) (and (cons? (tl (tl V602))) (and (cons? (tl (tl (tl V602)))) (and (cons? (hd (tl (tl (tl V602))))) (and (= cond (hd (hd (tl (tl (tl V602)))))) (= () (tl (tl (tl (tl V602)))))))))))) (shen-cl.add-block (shen.x.factorise-defun.factorise-defun V602))) (true (shen.f-error shen-cl.factorise-defun)))) - -(defun shen-cl.add-block (V603) (cond ((and (cons? V603) (and (= defun (hd V603)) (and (cons? (tl V603)) (and (cons? (tl (tl V603))) (and (cons? (tl (tl (tl V603)))) (= () (tl (tl (tl (tl V603)))))))))) (cons defun (cons (hd (tl V603)) (cons (hd (tl (tl V603))) (cons (cons lisp.block (cons () (tl (tl (tl V603))))) ()))))) (true (shen.f-error shen-cl.add-block)))) - -(defun shen-cl.kl->lisp (V604) (cond ((and (cons? V604) (and (= defun (hd V604)) (and (cons? (tl V604)) (and (cons? (tl (tl V604))) (and (cons? (tl (tl (tl V604)))) (and (cons? (hd (tl (tl (tl V604))))) (and (= cond (hd (hd (tl (tl (tl V604)))))) (and (= () (tl (tl (tl (tl V604))))) (value shen-cl.*factorise-patterns*))))))))) (shen-cl.kl->lisp (shen-cl.factorise-defun V604))) ((and (cons? V604) (and (= defun (hd V604)) (and (cons? (tl V604)) (and (cons? (tl (tl V604))) (and (cons? (tl (tl (tl V604)))) (= () (tl (tl (tl (tl V604)))))))))) (cons (shen-cl.cl defun) (cons (shen-cl.qualify-op (hd (tl V604))) (cons (hd (tl (tl V604))) (cons (shen-cl.compile-expression (hd (tl (tl (tl V604)))) (hd (tl (tl V604)))) ()))))) (true (shen-cl.compile-expression V604 ())))) - diff --git a/kernel/klambda/core.kl b/kernel/klambda/core.kl index 974c8b6..da44a84 100644 --- a/kernel/klambda/core.kl +++ b/kernel/klambda/core.kl @@ -1,137 +1,121 @@ -(defun shen.shen->kl (V531) (let W532 (shen.shen->kl-h V531) (shen.record-and-evaluate W532))) +(defun shen.shen->kl (V521) (let W522 (shen.shen->kl-h V521) (shen.record-and-evaluate W522))) -(defun shen.record-and-evaluate (V533) (cond ((and (cons? V533) (and (= defun (hd V533)) (and (cons? (tl V533)) (and (cons? (tl (tl V533))) (and (cons? (tl (tl (tl V533)))) (= () (tl (tl (tl (tl V533)))))))))) (let W534 (if (shen.sysfunc? (hd (tl V533))) (simple-error (shen.app (hd (tl V533)) " is not a legitimate function name -" shen.a)) shen.skip) (let W535 (shen.store-arity (hd (tl V533)) (length (hd (tl (tl V533))))) (let W536 (shen.record-kl (hd (tl V533)) V533) (let W537 (eval-kl V533) (shen.fn-print (hd (tl V533)))))))) (true V533))) +(defun shen.record-and-evaluate (V523) (cond ((and (cons? V523) (and (= defun (hd V523)) (and (cons? (tl V523)) (and (cons? (tl (tl V523))) (and (cons? (tl (tl (tl V523)))) (= () (tl (tl (tl (tl V523)))))))))) (let W524 (if (shen.sysfunc? (hd (tl V523))) (simple-error (shen.app (hd (tl V523)) " is not a legitimate function name +" shen.a)) shen.skip) (let W525 (shen.store-arity (hd (tl V523)) (length (hd (tl (tl V523))))) (let W526 (shen.record-kl (hd (tl V523)) V523) (let W527 (eval-kl V523) (shen.fn-print (hd (tl V523)))))))) (true V523))) -(defun shen.shen->kl-h (V538) (cond ((and (cons? V538) (and (= define (hd V538)) (cons? (tl V538)))) (shen.shendef->kldef (hd (tl V538)) (tl (tl V538)))) ((and (cons? V538) (and (= defun (hd V538)) (and (cons? (tl V538)) (and (cons? (tl (tl V538))) (and (cons? (tl (tl (tl V538)))) (= () (tl (tl (tl (tl V538)))))))))) V538) ((and (cons? V538) (and (= type (hd V538)) (and (cons? (tl V538)) (and (cons? (tl (tl V538))) (= () (tl (tl (tl V538)))))))) (cons type (cons (hd (tl V538)) (cons (shen.rcons_form (hd (tl (tl V538)))) ())))) ((and (cons? V538) (and (= input+ (hd V538)) (and (cons? (tl V538)) (and (cons? (tl (tl V538))) (= () (tl (tl (tl V538)))))))) (cons input+ (cons (shen.rcons_form (hd (tl V538))) (tl (tl V538))))) ((cons? V538) (map (lambda Z539 (shen.shen->kl-h Z539)) V538)) (true V538))) +(defun shen.shen->kl-h (V528) (cond ((and (cons? V528) (and (= define (hd V528)) (cons? (tl V528)))) (shen.shendef->kldef (hd (tl V528)) (tl (tl V528)))) ((and (cons? V528) (and (= defun (hd V528)) (and (cons? (tl V528)) (and (cons? (tl (tl V528))) (and (cons? (tl (tl (tl V528)))) (= () (tl (tl (tl (tl V528)))))))))) V528) ((and (cons? V528) (and (= type (hd V528)) (and (cons? (tl V528)) (and (cons? (tl (tl V528))) (= () (tl (tl (tl V528)))))))) (cons type (cons (hd (tl V528)) (cons (shen.rcons_form (hd (tl (tl V528)))) ())))) ((and (cons? V528) (and (= input+ (hd V528)) (and (cons? (tl V528)) (and (cons? (tl (tl V528))) (= () (tl (tl (tl V528)))))))) (cons input+ (cons (shen.rcons_form (hd (tl V528))) (tl (tl V528))))) ((cons? V528) (map (lambda Z529 (shen.shen->kl-h Z529)) V528)) (true V528))) -(defun shen.shendef->kldef (V540 V541) (compile (lambda Z542 (shen. Z542)) (cons V540 V541))) +(defun shen.shendef->kldef (V530 V531) (compile (lambda Z532 (shen. Z532)) (cons V530 V531))) -(defun shen. (V543) (let W544 (let W545 (shen. V543) (if (shen.parse-failure? W545) (shen.parse-failure) (let W546 (shen.<-out W545) (let W547 (shen.in-> W545) (if (shen.hds=? W547 {) (let W548 (tail W547) (let W549 (shen. W548) (if (shen.parse-failure? W549) (shen.parse-failure) (let W550 (shen.in-> W549) (if (shen.hds=? W550 }) (let W551 (tail W550) (let W552 (shen. W551) (if (shen.parse-failure? W552) (shen.parse-failure) (let W553 (shen.<-out W552) (let W554 (shen.in-> W552) (shen.comb W554 (shen.shendef->kldef-h W546 W553))))))) (shen.parse-failure)))))) (shen.parse-failure)))))) (if (shen.parse-failure? W544) (let W555 (let W556 (shen. V543) (if (shen.parse-failure? W556) (shen.parse-failure) (let W557 (shen.<-out W556) (let W558 (shen.in-> W556) (let W559 (shen. W558) (if (shen.parse-failure? W559) (shen.parse-failure) (let W560 (shen.<-out W559) (let W561 (shen.in-> W559) (shen.comb W561 (shen.shendef->kldef-h W557 W560)))))))))) (if (shen.parse-failure? W555) (shen.parse-failure) W555)) W544))) +(defun shen. (V533) (let W534 (let W535 (shen. V533) (if (shen.parse-failure? W535) (shen.parse-failure) (let W536 (shen.<-out W535) (let W537 (shen.in-> W535) (if (shen.hds=? W537 {) (let W538 (tail W537) (let W539 (shen. W538) (if (shen.parse-failure? W539) (shen.parse-failure) (let W540 (shen.in-> W539) (if (shen.hds=? W540 }) (let W541 (tail W540) (let W542 (shen. W541) (if (shen.parse-failure? W542) (shen.parse-failure) (let W543 (shen.<-out W542) (let W544 (shen.in-> W542) (shen.comb W544 (shen.shendef->kldef-h W536 W543))))))) (shen.parse-failure)))))) (shen.parse-failure)))))) (if (shen.parse-failure? W534) (let W545 (let W546 (shen. V533) (if (shen.parse-failure? W546) (shen.parse-failure) (let W547 (shen.<-out W546) (let W548 (shen.in-> W546) (let W549 (shen. W548) (if (shen.parse-failure? W549) (shen.parse-failure) (let W550 (shen.<-out W549) (let W551 (shen.in-> W549) (shen.comb W551 (shen.shendef->kldef-h W547 W550)))))))))) (if (shen.parse-failure? W545) (shen.parse-failure) W545)) W534))) -(defun shen.shendef->kldef-h (V562 V563) (let W564 (map (lambda Z565 (fst Z565)) V563) (let W566 (shen.arity-chk V562 W564) (let W567 (map (lambda Z568 (shen.free-var-chk V562 Z568)) V563) (let W569 (shen.unprotect V563) (let W570 (shen.factorise-code (shen.compile-to-kl V562 W569 W566)) W570)))))) +(defun shen.shendef->kldef-h (V552 V553) (let W554 (map (lambda Z555 (fst Z555)) V553) (let W556 (shen.arity-chk V552 W554) (let W557 (map (lambda Z558 (shen.free-var-chk V552 Z558)) V553) (let W559 (shen.unprotect V553) (let W560 (shen.factorise-code (shen.compile-to-kl V552 W559 W556)) W560)))))) -(defun shen.unprotect (V571) (cond ((tuple? V571) (@p (shen.unprotect (fst V571)) (shen.unprotect (snd V571)))) ((and (cons? V571) (and (= protect (hd V571)) (and (cons? (tl V571)) (= () (tl (tl V571)))))) (shen.unprotect (hd (tl V571)))) ((cons? V571) (map (lambda Z572 (shen.unprotect Z572)) V571)) (true V571))) +(defun shen.unprotect (V561) (cond ((tuple? V561) (@p (shen.unprotect (fst V561)) (shen.unprotect (snd V561)))) ((and (cons? V561) (and (= protect (hd V561)) (and (cons? (tl V561)) (= () (tl (tl V561)))))) (shen.unprotect (hd (tl V561)))) ((cons? V561) (map (lambda Z562 (shen.unprotect Z562)) V561)) (true V561))) -(defun shen. (V573) (let W574 (if (cons? V573) (let W575 (head V573) (let W576 (tail V573) (shen.comb W576 (if (and (symbol? W575) (not (variable? W575))) W575 (simple-error (shen.app W575 " is not a legitimate function name. -" shen.a)))))) (shen.parse-failure)) (if (shen.parse-failure? W574) (shen.parse-failure) W574))) +(defun shen. (V563) (let W564 (if (cons? V563) (let W565 (head V563) (let W566 (tail V563) (shen.comb W566 (if (and (symbol? W565) (not (variable? W565))) W565 (simple-error (shen.app W565 " is not a legitimate function name. +" shen.a)))))) (shen.parse-failure)) (if (shen.parse-failure? W564) (shen.parse-failure) W564))) -(defun shen. (V577) (let W578 (if (cons? V577) (let W579 (head V577) (let W580 (tail V577) (let W581 (shen. W580) (if (shen.parse-failure? W581) (shen.parse-failure) (let W582 (shen.<-out W581) (let W583 (shen.in-> W581) (if (not (element? W579 (cons { (cons } ())))) (shen.comb W583 (cons W579 W582)) (shen.parse-failure)))))))) (shen.parse-failure)) (if (shen.parse-failure? W578) (let W584 (let W585 ( V577) (if (shen.parse-failure? W585) (shen.parse-failure) (let W586 (shen.in-> W585) (shen.comb W586 ())))) (if (shen.parse-failure? W584) (shen.parse-failure) W584)) W578))) +(defun shen. (V567) (let W568 (if (cons? V567) (let W569 (head V567) (let W570 (tail V567) (let W571 (shen. W570) (if (shen.parse-failure? W571) (shen.parse-failure) (let W572 (shen.<-out W571) (let W573 (shen.in-> W571) (if (not (element? W569 (cons { (cons } ())))) (shen.comb W573 (cons W569 W572)) (shen.parse-failure)))))))) (shen.parse-failure)) (if (shen.parse-failure? W568) (let W574 (let W575 ( V567) (if (shen.parse-failure? W575) (shen.parse-failure) (let W576 (shen.in-> W575) (shen.comb W576 ())))) (if (shen.parse-failure? W574) (shen.parse-failure) W574)) W568))) -(defun shen. (V587) (let W588 (let W589 (shen. V587) (if (shen.parse-failure? W589) (shen.parse-failure) (let W590 (shen.<-out W589) (let W591 (shen.in-> W589) (let W592 (shen. W591) (if (shen.parse-failure? W592) (shen.parse-failure) (let W593 (shen.<-out W592) (let W594 (shen.in-> W592) (shen.comb W594 (cons (shen.linearise W590) W593)))))))))) (if (shen.parse-failure? W588) (let W595 (let W596 ( V587) (if (shen.parse-failure? W596) (shen.parse-failure) (let W597 (shen.<-out W596) (let W598 (shen.in-> W596) (shen.comb W598 (if (empty? W597) () (simple-error (cn "Shen syntax error here: - " (shen.app W597 " - ..." shen.r))))))))) (if (shen.parse-failure? W595) (shen.parse-failure) W595)) W588))) +(defun shen. (V577) (let W578 (let W579 (shen. V577) (if (shen.parse-failure? W579) (shen.parse-failure) (let W580 (shen.<-out W579) (let W581 (shen.in-> W579) (let W582 (shen. W581) (if (shen.parse-failure? W582) (shen.parse-failure) (let W583 (shen.<-out W582) (let W584 (shen.in-> W582) (shen.comb W584 (cons (shen.linearise W580) W583)))))))))) (if (shen.parse-failure? W578) (let W585 (let W586 ( V577) (if (shen.parse-failure? W586) (shen.parse-failure) (let W587 (shen.<-out W586) (let W588 (shen.in-> W586) (shen.comb W588 (if (empty? W587) () (simple-error (cn "Shen syntax error here: + " (shen.app W587 " + ..." shen.r))))))))) (if (shen.parse-failure? W585) (shen.parse-failure) W585)) W578))) -(defun shen.linearise (V601) (cond ((tuple? V601) (shen.linearise-h (fst V601) (fst V601) () (snd V601))) (true (simple-error "implementation error in shen.linearise")))) +(defun shen.linearise (V591) (cond ((tuple? V591) (shen.linearise-h (fst V591) (fst V591) () (snd V591))) (true (simple-error "implementation error in shen.linearise")))) -(defun shen.linearise-h (V614 V615 V616 V617) (cond ((= () V614) (@p V615 V617)) ((and (cons? V614) (cons? (hd V614))) (shen.linearise-h (append (hd V614) (tl V614)) V615 V616 V617)) ((and (cons? V614) (variable? (hd V614))) (if (element? (hd V614) V616) (let W618 (gensym V) (shen.linearise-h (tl V614) (shen.rep-X (hd V614) W618 V615) V616 (cons where (cons (cons = (cons W618 (cons (hd V614) ()))) (cons V617 ()))))) (shen.linearise-h (tl V614) V615 (cons (hd V614) V616) V617))) ((cons? V614) (shen.linearise-h (tl V614) V615 V616 V617)) (true (simple-error "implementation error in shen.linearise-h")))) +(defun shen.linearise-h (V604 V605 V606 V607) (cond ((= () V604) (@p V605 V607)) ((and (cons? V604) (cons? (hd V604))) (shen.linearise-h (append (hd V604) (tl V604)) V605 V606 V607)) ((and (cons? V604) (variable? (hd V604))) (if (element? (hd V604) V606) (let W608 (gensym V) (shen.linearise-h (tl V604) (shen.rep-X (hd V604) W608 V605) V606 (cons where (cons (cons = (cons W608 (cons (hd V604) ()))) (cons V607 ()))))) (shen.linearise-h (tl V604) V605 (cons (hd V604) V606) V607))) ((cons? V604) (shen.linearise-h (tl V604) V605 V606 V607)) (true (simple-error "implementation error in shen.linearise-h")))) -(defun shen. (V619) (let W620 (let W621 (shen. V619) (if (shen.parse-failure? W621) (shen.parse-failure) (let W622 (shen.<-out W621) (let W623 (shen.in-> W621) (if (shen.hds=? W623 ->) (let W624 (tail W623) (if (cons? W624) (let W625 (head W624) (let W626 (tail W624) (if (shen.hds=? W626 where) (let W627 (tail W626) (if (cons? W627) (let W628 (head W627) (let W629 (tail W627) (shen.comb W629 (@p W622 (cons where (cons W628 (cons W625 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W620) (let W630 (let W631 (shen. V619) (if (shen.parse-failure? W631) (shen.parse-failure) (let W632 (shen.<-out W631) (let W633 (shen.in-> W631) (if (shen.hds=? W633 ->) (let W634 (tail W633) (if (cons? W634) (let W635 (head W634) (let W636 (tail W634) (shen.comb W636 (@p W632 W635)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W630) (let W637 (let W638 (shen. V619) (if (shen.parse-failure? W638) (shen.parse-failure) (let W639 (shen.<-out W638) (let W640 (shen.in-> W638) (if (shen.hds=? W640 <-) (let W641 (tail W640) (if (cons? W641) (let W642 (head W641) (let W643 (tail W641) (if (shen.hds=? W643 where) (let W644 (tail W643) (if (cons? W644) (let W645 (head W644) (let W646 (tail W644) (shen.comb W646 (@p W639 (cons where (cons W645 (cons (cons shen.choicepoint! (cons W642 ())) ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W637) (let W647 (let W648 (shen. V619) (if (shen.parse-failure? W648) (shen.parse-failure) (let W649 (shen.<-out W648) (let W650 (shen.in-> W648) (if (shen.hds=? W650 <-) (let W651 (tail W650) (if (cons? W651) (let W652 (head W651) (let W653 (tail W651) (shen.comb W653 (@p W649 (cons shen.choicepoint! (cons W652 ())))))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W647) (shen.parse-failure) W647)) W637)) W630)) W620))) +(defun shen. (V609) (let W610 (let W611 (shen. V609) (if (shen.parse-failure? W611) (shen.parse-failure) (let W612 (shen.<-out W611) (let W613 (shen.in-> W611) (if (shen.hds=? W613 ->) (let W614 (tail W613) (if (cons? W614) (let W615 (head W614) (let W616 (tail W614) (if (shen.hds=? W616 where) (let W617 (tail W616) (if (cons? W617) (let W618 (head W617) (let W619 (tail W617) (shen.comb W619 (@p W612 (cons where (cons W618 (cons W615 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W610) (let W620 (let W621 (shen. V609) (if (shen.parse-failure? W621) (shen.parse-failure) (let W622 (shen.<-out W621) (let W623 (shen.in-> W621) (if (shen.hds=? W623 ->) (let W624 (tail W623) (if (cons? W624) (let W625 (head W624) (let W626 (tail W624) (shen.comb W626 (@p W622 W625)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W620) (let W627 (let W628 (shen. V609) (if (shen.parse-failure? W628) (shen.parse-failure) (let W629 (shen.<-out W628) (let W630 (shen.in-> W628) (if (shen.hds=? W630 <-) (let W631 (tail W630) (if (cons? W631) (let W632 (head W631) (let W633 (tail W631) (if (shen.hds=? W633 where) (let W634 (tail W633) (if (cons? W634) (let W635 (head W634) (let W636 (tail W634) (shen.comb W636 (@p W629 (cons where (cons W635 (cons (cons shen.choicepoint! (cons W632 ())) ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W627) (let W637 (let W638 (shen. V609) (if (shen.parse-failure? W638) (shen.parse-failure) (let W639 (shen.<-out W638) (let W640 (shen.in-> W638) (if (shen.hds=? W640 <-) (let W641 (tail W640) (if (cons? W641) (let W642 (head W641) (let W643 (tail W641) (shen.comb W643 (@p W639 (cons shen.choicepoint! (cons W642 ())))))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W637) (shen.parse-failure) W637)) W627)) W620)) W610))) -(defun shen. (V654) (let W655 (let W656 (shen. V654) (if (shen.parse-failure? W656) (shen.parse-failure) (let W657 (shen.<-out W656) (let W658 (shen.in-> W656) (let W659 (shen. W658) (if (shen.parse-failure? W659) (shen.parse-failure) (let W660 (shen.<-out W659) (let W661 (shen.in-> W659) (shen.comb W661 (cons W657 W660)))))))))) (if (shen.parse-failure? W655) (let W662 (let W663 ( V654) (if (shen.parse-failure? W663) (shen.parse-failure) (let W664 (shen.in-> W663) (shen.comb W664 ())))) (if (shen.parse-failure? W662) (shen.parse-failure) W662)) W655))) +(defun shen. (V644) (let W645 (let W646 (shen. V644) (if (shen.parse-failure? W646) (shen.parse-failure) (let W647 (shen.<-out W646) (let W648 (shen.in-> W646) (let W649 (shen. W648) (if (shen.parse-failure? W649) (shen.parse-failure) (let W650 (shen.<-out W649) (let W651 (shen.in-> W649) (shen.comb W651 (cons W647 W650)))))))))) (if (shen.parse-failure? W645) (let W652 (let W653 ( V644) (if (shen.parse-failure? W653) (shen.parse-failure) (let W654 (shen.in-> W653) (shen.comb W654 ())))) (if (shen.parse-failure? W652) (shen.parse-failure) W652)) W645))) -(defun shen. (V665) (let W666 (if (shen.ccons? V665) (let W667 (head V665) (let W668 (tail V665) (if (shen.hds=? W667 vector) (let W669 (tail W667) (if (shen.hds=? W669 0) (let W670 (tail W669) (let W671 ( W670) (if (shen.parse-failure? W671) (shen.parse-failure) (let W672 (shen.in-> W671) (shen.comb W668 (cons vector (cons 0 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W666) (let W673 (if (cons? V665) (let W674 (head V665) (let W675 (tail V665) (if (cons? W674) (shen.comb W675 (shen.compound-pattern W674)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W673) (let W676 (let W677 (shen. V665) (if (shen.parse-failure? W677) (shen.parse-failure) (let W678 (shen.<-out W677) (let W679 (shen.in-> W677) (shen.comb W679 W678))))) (if (shen.parse-failure? W676) (shen.parse-failure) W676)) W673)) W666))) +(defun shen. (V655) (let W656 (if (shen.ccons? V655) (let W657 (head V655) (let W658 (tail V655) (let W659 (shen. W657) (if (shen.parse-failure? W659) (shen.parse-failure) (let W660 (shen.<-out W659) (let W661 (shen.in-> W659) (let W662 (shen. W661) (if (shen.parse-failure? W662) (shen.parse-failure) (let W663 (shen.<-out W662) (let W664 (shen.in-> W662) (let W665 (shen. W664) (if (shen.parse-failure? W665) (shen.parse-failure) (let W666 (shen.<-out W665) (let W667 (shen.in-> W665) (let W668 ( W667) (if (shen.parse-failure? W668) (shen.parse-failure) (let W669 (shen.in-> W668) (shen.comb W658 (cons W660 (cons W663 (cons W666 ()))))))))))))))))))))) (shen.parse-failure)) (if (shen.parse-failure? W656) (let W670 (if (shen.ccons? V655) (let W671 (head V655) (let W672 (tail V655) (if (shen.hds=? W671 vector) (let W673 (tail W671) (if (shen.hds=? W673 0) (let W674 (tail W673) (let W675 ( W674) (if (shen.parse-failure? W675) (shen.parse-failure) (let W676 (shen.in-> W675) (shen.comb W672 (cons vector (cons 0 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W670) (let W677 (if (cons? V655) (let W678 (head V655) (let W679 (tail V655) (if (cons? W678) (shen.comb W679 (shen.constructor-error W678)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W677) (let W680 (let W681 (shen. V655) (if (shen.parse-failure? W681) (shen.parse-failure) (let W682 (shen.<-out W681) (let W683 (shen.in-> W681) (shen.comb W683 W682))))) (if (shen.parse-failure? W680) (shen.parse-failure) W680)) W677)) W670)) W656))) -(defun shen. (V680) (let W681 (if (cons? V680) (let W682 (head V680) (let W683 (tail V680) (if (shen.constructor? W682) (shen.comb W683 W682) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W681) (shen.parse-failure) W681))) +(defun shen. (V684) (let W685 (if (cons? V684) (let W686 (head V684) (let W687 (tail V684) (if (shen.constructor? W686) (shen.comb W687 W686) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W685) (shen.parse-failure) W685))) -(defun shen.constructor? (V684) (element? V684 (cons cons (cons @p (cons @s (cons @v ())))))) +(defun shen.constructor? (V688) (element? V688 (cons cons (cons @p (cons @s (cons @v ())))))) -(defun shen.constructor-error (V685) (simple-error (shen.app V685 " is not a legitimate constructor +(defun shen.constructor-error (V689) (simple-error (shen.app V689 " is not a legitimate constructor " shen.r))) -(defun shen.custom-pattern-compiler (V686 V687) (let W688 (value shen.*custom-pattern-compiler*) (if (= W688 false) (thaw V687) ((W688 V686) V687)))) +(defun shen. (V690) (let W691 (if (cons? V690) (let W692 (head V690) (let W693 (tail V690) (if (= W692 _) (shen.comb W693 (gensym Y)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W691) (let W694 (if (cons? V690) (let W695 (head V690) (let W696 (tail V690) (if (not (element? W695 (cons -> (cons <- ())))) (shen.comb W696 W695) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W694) (shen.parse-failure) W694)) W691))) -(defun shen.custom-pattern-reducer (V689) (let W690 (value shen.*custom-pattern-reducer*) (if (= W690 false) (fail) (W690 V689)))) +(defun shen. (V697) (let W698 (let W699 (shen. V697) (if (shen.parse-failure? W699) (shen.parse-failure) (let W700 (shen.<-out W699) (let W701 (shen.in-> W699) (shen.comb W701 W700))))) (if (shen.parse-failure? W698) (shen.parse-failure) W698))) -(defun shen.compound-pattern (V691) (shen.custom-pattern-compiler V691 (freeze (shen.compound-pattern-h V691)))) +(defun shen. (V702) (let W703 (let W704 (shen. V702) (if (shen.parse-failure? W704) (shen.parse-failure) (let W705 (shen.<-out W704) (let W706 (shen.in-> W704) (shen.comb W706 W705))))) (if (shen.parse-failure? W703) (shen.parse-failure) W703))) -(defun shen.compound-pattern-h (V692) (cond ((and (cons? V692) (and (cons? (tl V692)) (and (cons? (tl (tl V692))) (and (= () (tl (tl (tl V692)))) (shen.constructor? (hd V692)))))) (cons (hd V692) (cons (shen.compile-pattern-fragment (hd (tl V692))) (cons (shen.compile-pattern-fragment (hd (tl (tl V692)))) ())))) (true (shen.constructor-error V692)))) +(defun shen.fn-print (V707) (let W708 (absvector 2) (let W709 (address-> W708 0 shen.printF) (let W710 (address-> W709 1 (@s "(" (@s "f" (@s "n" (@s " " (@s (str V707) ")")))))) W710)))) -(defun shen.compile-pattern-fragment (V693) (cond ((and (cons? V693) (and (= vector (hd V693)) (and (cons? (tl V693)) (and (= 0 (hd (tl V693))) (= () (tl (tl V693))))))) V693) ((cons? V693) (shen.compound-pattern V693)) ((= V693 _) (gensym Y)) ((not (element? V693 (cons -> (cons <- ())))) V693) (true (shen.constructor-error V693)))) +(defun shen.printF (V711) (<-address V711 1)) -(defun shen.custom-pattern? (V698) (cond ((and (cons? V698) (and (= @p (hd V698)) (and (cons? (tl V698)) (and (= shen.custom-pattern (hd (tl V698))) (and (cons? (tl (tl V698))) (= () (tl (tl (tl V698))))))))) true) (true false))) - -(defun shen.custom-pattern-body (V701) (cond ((and (cons? V701) (and (= @p (hd V701)) (and (cons? (tl V701)) (and (= shen.custom-pattern (hd (tl V701))) (and (cons? (tl (tl V701))) (= () (tl (tl (tl V701))))))))) (hd (tl (tl V701)))) (true (simple-error "implementation error in shen.custom-pattern-body")))) - -(defun shen. (V702) (let W703 (if (cons? V702) (let W704 (head V702) (let W705 (tail V702) (if (= W704 _) (shen.comb W705 (gensym Y)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W703) (let W706 (if (cons? V702) (let W707 (head V702) (let W708 (tail V702) (if (not (element? W707 (cons -> (cons <- ())))) (shen.comb W708 W707) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W706) (shen.parse-failure) W706)) W703))) - -(defun shen. (V709) (let W710 (let W711 (shen. V709) (if (shen.parse-failure? W711) (shen.parse-failure) (let W712 (shen.<-out W711) (let W713 (shen.in-> W711) (shen.comb W713 W712))))) (if (shen.parse-failure? W710) (shen.parse-failure) W710))) - -(defun shen. (V714) (let W715 (let W716 (shen. V714) (if (shen.parse-failure? W716) (shen.parse-failure) (let W717 (shen.<-out W716) (let W718 (shen.in-> W716) (shen.comb W718 W717))))) (if (shen.parse-failure? W715) (shen.parse-failure) W715))) - -(defun shen.fn-print (V719) (let W720 (absvector 2) (let W721 (address-> W720 0 shen.printF) (let W722 (address-> W721 1 (@s "(" (@s "f" (@s "n" (@s " " (@s (str V719) ")")))))) W722)))) - -(defun shen.printF (V723) (<-address V723 1)) - -(defun shen.arity-chk (V728 V729) (cond ((and (cons? V729) (= () (tl V729))) (length (hd V729))) ((and (cons? V729) (and (cons? (tl V729)) (= (length (hd V729)) (length (hd (tl V729)))))) (shen.arity-chk V728 (tl V729))) (true (simple-error (cn "arity error in " (shen.app V728 " +(defun shen.arity-chk (V716 V717) (cond ((and (cons? V717) (= () (tl V717))) (length (hd V717))) ((and (cons? V717) (and (cons? (tl V717)) (= (length (hd V717)) (length (hd (tl V717)))))) (shen.arity-chk V716 (tl V717))) (true (simple-error (cn "arity error in " (shen.app V716 " " shen.a)))))) -(defun shen.free-var-chk (V730 V731) (cond ((tuple? V731) (shen.free-variable-error-message V730 (shen.find-free-vars (shen.extract-vars (fst V731)) (snd V731)))) (true (shen.f-error shen.free-var-chk)))) - -(defun shen.free-variable-error-message (V732 V733) (if (empty? V733) shen.skip (do (pr (cn "free variables in " (shen.app V732 ":" shen.a)) (stoutput)) (do (shen.for-each (lambda Z734 (pr (cn " " (shen.app Z734 "" shen.a)) (stoutput))) V733) (do (nl 1) (abort)))))) +(defun shen.free-var-chk (V718 V719) (cond ((tuple? V719) (shen.free-variable-error-message V718 (shen.find-free-vars (shen.extract-vars (fst V719)) (snd V719)))) (true (simple-error "partial function shen.free-var-chk")))) -(defun shen.extract-vars (V737) (cond ((variable? V737) (cons V737 ())) ((cons? V737) (union (shen.extract-vars (hd V737)) (shen.extract-vars (tl V737)))) (true ()))) +(defun shen.free-variable-error-message (V720 V721) (if (empty? V721) shen.skip (do (pr (cn "free variables in " (shen.app V720 ":" shen.a)) (stoutput)) (do (map (lambda Z722 (pr (cn " " (shen.app Z722 "" shen.a)) (stoutput))) V721) (do (nl 1) (abort)))))) -(defun shen.find-free-vars (V742 V743) (cond ((and (cons? V743) (and (= protect (hd V743)) (and (cons? (tl V743)) (= () (tl (tl V743)))))) ()) ((and (cons? V743) (and (= let (hd V743)) (and (cons? (tl V743)) (and (cons? (tl (tl V743))) (and (cons? (tl (tl (tl V743)))) (= () (tl (tl (tl (tl V743)))))))))) (union (shen.find-free-vars V742 (hd (tl (tl V743)))) (shen.find-free-vars (cons (hd (tl V743)) V742) (hd (tl (tl (tl V743))))))) ((and (cons? V743) (and (= lambda (hd V743)) (and (cons? (tl V743)) (and (cons? (tl (tl V743))) (= () (tl (tl (tl V743)))))))) (shen.find-free-vars (cons (hd (tl V743)) V742) (hd (tl (tl V743))))) ((cons? V743) (union (shen.find-free-vars V742 (hd V743)) (shen.find-free-vars V742 (tl V743)))) ((shen.free-variable? V743 V742) (cons V743 ())) (true ()))) +(defun shen.extract-vars (V725) (cond ((variable? V725) (cons V725 ())) ((cons? V725) (union (shen.extract-vars (hd V725)) (shen.extract-vars (tl V725)))) (true ()))) -(defun shen.free-variable? (V744 V745) (and (variable? V744) (not (element? V744 V745)))) +(defun shen.find-free-vars (V730 V731) (cond ((and (cons? V731) (and (= protect (hd V731)) (and (cons? (tl V731)) (= () (tl (tl V731)))))) ()) ((and (cons? V731) (and (= let (hd V731)) (and (cons? (tl V731)) (and (cons? (tl (tl V731))) (and (cons? (tl (tl (tl V731)))) (= () (tl (tl (tl (tl V731)))))))))) (union (shen.find-free-vars V730 (hd (tl (tl V731)))) (shen.find-free-vars (cons (hd (tl V731)) V730) (hd (tl (tl (tl V731))))))) ((and (cons? V731) (and (= lambda (hd V731)) (and (cons? (tl V731)) (and (cons? (tl (tl V731))) (= () (tl (tl (tl V731)))))))) (shen.find-free-vars (cons (hd (tl V731)) V730) (hd (tl (tl V731))))) ((cons? V731) (union (shen.find-free-vars V730 (hd V731)) (shen.find-free-vars V730 (tl V731)))) ((shen.free-variable? V731 V730) (cons V731 ())) (true ()))) -(defun shen.record-kl (V746 V747) (do (set shen.*userdefs* (adjoin V746 (value shen.*userdefs*))) (put V746 shen.source V747 (value *property-vector*)))) +(defun shen.free-variable? (V732 V733) (and (variable? V732) (not (element? V732 V733)))) -(defun shen.compile-to-kl (V748 V749 V750) (let W751 (shen.parameters V750) (let W752 (shen.scan-body V748 (shen.kl-body V749 W751)) (let W753 (cons defun (cons V748 (cons W751 (cons (shen.cond-form W752) ())))) W753)))) +(defun shen.record-kl (V734 V735) (do (set shen.*userdefs* (adjoin V734 (value shen.*userdefs*))) (put V734 shen.source V735 (value *property-vector*)))) -(defun shen.parameters (V754) (cond ((= 0 V754) ()) (true (cons (gensym V) (shen.parameters (- V754 1)))))) +(defun shen.compile-to-kl (V736 V737 V738) (let W739 (shen.parameters V738) (let W740 (shen.scan-body V736 (shen.kl-body V737 W739)) (let W741 (cons defun (cons V736 (cons W739 (cons (shen.cond-form W740) ())))) W741)))) -(defun shen.cond-form (V757) (cond ((and (cons? V757) (and (cons? (hd V757)) (and (= true (hd (hd V757))) (and (cons? (tl (hd V757))) (= () (tl (tl (hd V757)))))))) (hd (tl (hd V757)))) (true (cons cond V757)))) +(defun shen.parameters (V742) (cond ((= 0 V742) ()) (true (cons (gensym V) (shen.parameters (- V742 1)))))) -(defun shen.scan-body (V766 V767) (cond ((= () V767) (cons (cons true (cons (cons shen.f-error (cons V766 ())) ())) ())) ((and (cons? V767) (shen.choicepoint? (hd V767))) (shen.choicepoint V766 (gensym Freeze) (gensym Result) (hd V767) (tl V767))) ((and (cons? V767) (and (cons? (hd V767)) (and (= true (hd (hd V767))) (and (cons? (tl (hd V767))) (= () (tl (tl (hd V767)))))))) (cons (hd V767) ())) ((cons? V767) (cons (hd V767) (shen.scan-body V766 (tl V767)))) (true (simple-error "implementation error in shen.scan-body")))) +(defun shen.cond-form (V745) (cond ((and (cons? V745) (and (cons? (hd V745)) (and (= true (hd (hd V745))) (and (cons? (tl (hd V745))) (= () (tl (tl (hd V745)))))))) (hd (tl (hd V745)))) (true (cons cond V745)))) -(defun shen.choicepoint? (V774) (cond ((and (cons? V774) (and (cons? (tl V774)) (and (cons? (hd (tl V774))) (and (= shen.choicepoint! (hd (hd (tl V774)))) (and (cons? (tl (hd (tl V774)))) (and (= () (tl (tl (hd (tl V774))))) (= () (tl (tl V774))))))))) true) (true false))) +(defun shen.scan-body (V754 V755) (cond ((= () V755) (cons (cons true (cons (cons shen.f-error (cons V754 ())) ())) ())) ((and (cons? V755) (shen.choicepoint? (hd V755))) (shen.choicepoint V754 (gensym Freeze) (gensym Result) (hd V755) (tl V755))) ((and (cons? V755) (and (cons? (hd V755)) (and (= true (hd (hd V755))) (and (cons? (tl (hd V755))) (= () (tl (tl (hd V755)))))))) (cons (hd V755) ())) ((cons? V755) (cons (hd V755) (shen.scan-body V754 (tl V755)))) (true (simple-error "implementation error in shen.scan-body")))) -(defun shen.choicepoint (V790 V791 V792 V793 V794) (cond ((and (cons? V793) (and (cons? (tl V793)) (and (cons? (hd (tl V793))) (and (cons? (tl (hd (tl V793)))) (and (cons? (hd (tl (hd (tl V793))))) (and (= fail-if (hd (hd (tl (hd (tl V793)))))) (and (cons? (tl (hd (tl (hd (tl V793)))))) (and (cons? (tl (tl (hd (tl (hd (tl V793))))))) (and (= () (tl (tl (tl (hd (tl (hd (tl V793)))))))) (and (= () (tl (tl (hd (tl V793))))) (and (= () (tl (tl V793))) (= V790 (hd (tl (hd (tl (hd (tl V793)))))))))))))))))) (cons (cons true (cons (cons let (cons V791 (cons (cons freeze (cons (cons cond (shen.scan-body (hd (tl (hd (tl (hd (tl V793)))))) V794)) ())) (cons (cons if (cons (hd V793) (cons (cons let (cons V792 (cons (hd (tl (tl (hd (tl (hd (tl V793))))))) (cons (cons if (cons (cons (hd (tl (hd (tl (hd (tl V793)))))) (cons V792 ())) (cons (cons thaw (cons V791 ())) (cons V792 ())))) ())))) (cons (cons thaw (cons V791 ())) ())))) ())))) ())) ())) ((and (cons? V793) (and (cons? (tl V793)) (and (cons? (hd (tl V793))) (and (cons? (tl (hd (tl V793)))) (and (= () (tl (tl (hd (tl V793))))) (= () (tl (tl V793)))))))) (cons (cons true (cons (cons let (cons V791 (cons (cons freeze (cons (cons cond (shen.scan-body V790 V794)) ())) (cons (cons if (cons (hd V793) (cons (cons let (cons V792 (cons (hd (tl (hd (tl V793)))) (cons (cons if (cons (cons = (cons V792 (cons (cons fail ()) ()))) (cons (cons thaw (cons V791 ())) (cons V792 ())))) ())))) (cons (cons thaw (cons V791 ())) ())))) ())))) ())) ())) (true (simple-error "implementation error in shen.choicepoint")))) +(defun shen.choicepoint? (V762) (cond ((and (cons? V762) (and (cons? (tl V762)) (and (cons? (hd (tl V762))) (and (= shen.choicepoint! (hd (hd (tl V762)))) (and (cons? (tl (hd (tl V762)))) (and (= () (tl (tl (hd (tl V762))))) (= () (tl (tl V762))))))))) true) (true false))) -(defun shen.rep-X (V796 V797 V798) (cond ((= V796 V798) V797) ((cons? V798) (let W799 (shen.rep-X V796 V797 (hd V798)) (if (= W799 (hd V798)) (cons (hd V798) (shen.rep-X V796 V797 (tl V798))) (cons W799 (tl V798))))) (true V798))) +(defun shen.choicepoint (V778 V779 V780 V781 V782) (cond ((and (cons? V781) (and (cons? (tl V781)) (and (cons? (hd (tl V781))) (and (cons? (tl (hd (tl V781)))) (and (cons? (hd (tl (hd (tl V781))))) (and (= fail-if (hd (hd (tl (hd (tl V781)))))) (and (cons? (tl (hd (tl (hd (tl V781)))))) (and (cons? (tl (tl (hd (tl (hd (tl V781))))))) (and (= () (tl (tl (tl (hd (tl (hd (tl V781)))))))) (and (= () (tl (tl (hd (tl V781))))) (and (= () (tl (tl V781))) (= V778 (hd (tl (hd (tl (hd (tl V781)))))))))))))))))) (cons (cons true (cons (cons let (cons V779 (cons (cons freeze (cons (cons cond (shen.scan-body (hd (tl (hd (tl (hd (tl V781)))))) V782)) ())) (cons (cons if (cons (hd V781) (cons (cons let (cons V780 (cons (hd (tl (tl (hd (tl (hd (tl V781))))))) (cons (cons if (cons (cons (hd (tl (hd (tl (hd (tl V781)))))) (cons V780 ())) (cons (cons thaw (cons V779 ())) (cons V780 ())))) ())))) (cons (cons thaw (cons V779 ())) ())))) ())))) ())) ())) ((and (cons? V781) (and (cons? (tl V781)) (and (cons? (hd (tl V781))) (and (cons? (tl (hd (tl V781)))) (and (= () (tl (tl (hd (tl V781))))) (= () (tl (tl V781)))))))) (cons (cons true (cons (cons let (cons V779 (cons (cons freeze (cons (cons cond (shen.scan-body V778 V782)) ())) (cons (cons if (cons (hd V781) (cons (cons let (cons V780 (cons (hd (tl (hd (tl V781)))) (cons (cons if (cons (cons = (cons V780 (cons (cons fail ()) ()))) (cons (cons thaw (cons V779 ())) (cons V780 ())))) ())))) (cons (cons thaw (cons V779 ())) ())))) ())))) ())) ())) (true (simple-error "implementation error in shen.choicepoint")))) -(defun shen.alpha-convert (V800) (cond ((and (cons? V800) (and (= lambda (hd V800)) (and (cons? (tl V800)) (and (cons? (tl (tl V800))) (= () (tl (tl (tl V800)))))))) (let W801 (gensym Z) (let W802 (cons lambda (cons W801 (cons (shen.beta (hd (tl V800)) W801 (hd (tl (tl V800)))) ()))) (map (lambda Z803 (shen.alpha-convert Z803)) W802)))) ((and (cons? V800) (and (= let (hd V800)) (and (cons? (tl V800)) (and (cons? (tl (tl V800))) (and (cons? (tl (tl (tl V800)))) (= () (tl (tl (tl (tl V800)))))))))) (let W804 (gensym W) (let W805 (cons let (cons W804 (cons (hd (tl (tl V800))) (cons (shen.beta (hd (tl V800)) W804 (hd (tl (tl (tl V800))))) ())))) (map (lambda Z806 (shen.alpha-convert Z806)) W805)))) ((cons? V800) (map (lambda Z807 (shen.alpha-convert Z807)) V800)) (true V800))) +(defun shen.rep-X (V784 V785 V786) (cond ((= V784 V786) V785) ((cons? V786) (let W787 (shen.rep-X V784 V785 (hd V786)) (if (= W787 (hd V786)) (cons (hd V786) (shen.rep-X V784 V785 (tl V786))) (cons W787 (tl V786))))) (true V786))) -(defun shen.kl-body (V808 V809) (map (lambda Z810 (shen.triple-stack () (fst Z810) V809 (shen.alpha-convert (snd Z810)))) V808)) +(defun shen.kl-body (V788 V789) (map (lambda Z790 (shen.triple-stack () (fst Z790) V789 (shen.alpha-convert (snd Z790)))) V788)) -(defun shen.triple-stack (V819 V820 V821 V822) (cond ((and (= () V820) (and (= () V821) (and (cons? V822) (and (= where (hd V822)) (and (cons? (tl V822)) (and (cons? (tl (tl V822))) (= () (tl (tl (tl V822)))))))))) (shen.triple-stack (cons (hd (tl V822)) V819) () () (hd (tl (tl V822))))) ((and (= () V820) (= () V821)) (cons (shen.rectify-test (reverse V819)) (cons V822 ()))) ((and (cons? V820) (and (cons? V821) (variable? (hd V820)))) (shen.triple-stack V819 (tl V820) (tl V821) (shen.beta (hd V820) (hd V821) V822))) ((and (cons? V820) (and (cons? V821) (shen.custom-pattern? (hd V820)))) (shen.custom-pattern-triple-stack V819 (shen.custom-pattern-body (hd V820)) (tl V820) (hd V821) (tl V821) V822)) ((and (cons? V820) (and (cons? (hd V820)) (and (cons? (tl (hd V820))) (and (cons? (tl (tl (hd V820)))) (and (= () (tl (tl (tl (hd V820))))) (and (cons? V821) (shen.constructor? (hd (hd V820))))))))) (shen.triple-stack (cons (cons (shen.op-test (hd (hd V820))) (cons (hd V821) ())) V819) (cons (hd (tl (hd V820))) (cons (hd (tl (tl (hd V820)))) (tl V820))) (cons (cons (shen.op1 (hd (hd V820))) (cons (hd V821) ())) (cons (cons (shen.op2 (hd (hd V820))) (cons (hd V821) ())) (tl V821))) (shen.beta (hd V820) (hd V821) V822))) ((and (cons? V820) (cons? V821)) (shen.triple-stack (cons (cons = (cons (hd V820) (cons (hd V821) ()))) V819) (tl V820) (tl V821) V822)) (true (simple-error "implementation error in shen.triple-stack")))) +(defun shen.alpha-convert (V791) (cond ((and (cons? V791) (and (= lambda (hd V791)) (and (cons? (tl V791)) (and (cons? (tl (tl V791))) (= () (tl (tl (tl V791)))))))) (let W792 (gensym Z) (let W793 (cons lambda (cons W792 (cons (shen.beta (hd (tl V791)) W792 (hd (tl (tl V791)))) ()))) (map (lambda Z794 (shen.alpha-convert Z794)) W793)))) ((and (cons? V791) (and (= let (hd V791)) (and (cons? (tl V791)) (and (cons? (tl (tl V791))) (and (cons? (tl (tl (tl V791)))) (= () (tl (tl (tl (tl V791)))))))))) (let W795 (gensym W) (let W796 (cons let (cons W795 (cons (hd (tl (tl V791))) (cons (shen.beta (hd (tl V791)) W795 (hd (tl (tl (tl V791))))) ())))) (map (lambda Z797 (shen.alpha-convert Z797)) W796)))) ((cons? V791) (map (lambda Z798 (shen.alpha-convert Z798)) V791)) (true V791))) -(defun shen.custom-pattern-triple-stack (V823 V824 V825 V826 V827 V828) (let W829 (shen.custom-pattern-reducer (@p V824 V826)) (if (tuple? W829) (let W830 (fst W829) (let W831 (snd W829) (shen.triple-stack (append (reverse W830) V823) (append (map (lambda Z832 (fst Z832)) W831) V825) (append (map (lambda Z833 (snd Z833)) W831) V827) (shen.beta V824 V826 V828)))) (shen.constructor-error V824)))) +(defun shen.triple-stack (V807 V808 V809 V810) (cond ((and (= () V808) (and (= () V809) (and (cons? V810) (and (= where (hd V810)) (and (cons? (tl V810)) (and (cons? (tl (tl V810))) (= () (tl (tl (tl V810)))))))))) (shen.triple-stack (cons (hd (tl V810)) V807) () () (hd (tl (tl V810))))) ((and (= () V808) (= () V809)) (cons (shen.rectify-test (reverse V807)) (cons V810 ()))) ((and (cons? V808) (and (cons? V809) (variable? (hd V808)))) (shen.triple-stack V807 (tl V808) (tl V809) (shen.beta (hd V808) (hd V809) V810))) ((and (cons? V808) (and (cons? (hd V808)) (and (cons? (tl (hd V808))) (and (cons? (tl (tl (hd V808)))) (and (= () (tl (tl (tl (hd V808))))) (cons? V809)))))) (shen.triple-stack (cons (cons (shen.op-test (hd (hd V808))) (cons (hd V809) ())) V807) (cons (hd (tl (hd V808))) (cons (hd (tl (tl (hd V808)))) (tl V808))) (cons (cons (shen.op1 (hd (hd V808))) (cons (hd V809) ())) (cons (cons (shen.op2 (hd (hd V808))) (cons (hd V809) ())) (tl V809))) (shen.beta (hd V808) (hd V809) V810))) ((and (cons? V808) (cons? V809)) (shen.triple-stack (cons (cons = (cons (hd V808) (cons (hd V809) ()))) V807) (tl V808) (tl V809) V810)) (true (simple-error "implementation error in shen.triple-stack")))) -(defun shen.rectify-test (V836) (cond ((= () V836) true) ((and (cons? V836) (= () (tl V836))) (hd V836)) ((and (cons? V836) (cons? (tl V836))) (cons and (cons (hd V836) (cons (shen.rectify-test (tl V836)) ())))) (true (simple-error "implementation error in shen.rectify-test")))) +(defun shen.rectify-test (V813) (cond ((= () V813) true) ((and (cons? V813) (= () (tl V813))) (hd V813)) ((and (cons? V813) (cons? (tl V813))) (cons and (cons (hd V813) (cons (shen.rectify-test (tl V813)) ())))) (true (simple-error "implementation error in shen.rectify-test")))) -(defun shen.beta (V846 V847 V848) (cond ((= V846 V848) V847) ((and (cons? V848) (and (= lambda (hd V848)) (and (cons? (tl V848)) (and (cons? (tl (tl V848))) (and (= () (tl (tl (tl V848)))) (= V846 (hd (tl V848)))))))) V848) ((and (cons? V848) (and (= let (hd V848)) (and (cons? (tl V848)) (and (cons? (tl (tl V848))) (and (cons? (tl (tl (tl V848)))) (and (= () (tl (tl (tl (tl V848))))) (= V846 (hd (tl V848))))))))) (cons let (cons (hd (tl V848)) (cons (shen.beta (hd (tl V848)) V847 (hd (tl (tl V848)))) (tl (tl (tl V848))))))) ((cons? V848) (map (lambda Z849 (shen.beta V846 V847 Z849)) V848)) (true V848))) +(defun shen.beta (V823 V824 V825) (cond ((= V823 V825) V824) ((and (cons? V825) (and (= lambda (hd V825)) (and (cons? (tl V825)) (and (cons? (tl (tl V825))) (and (= () (tl (tl (tl V825)))) (= V823 (hd (tl V825)))))))) V825) ((and (cons? V825) (and (= let (hd V825)) (and (cons? (tl V825)) (and (cons? (tl (tl V825))) (and (cons? (tl (tl (tl V825)))) (and (= () (tl (tl (tl (tl V825))))) (= V823 (hd (tl V825))))))))) (cons let (cons (hd (tl V825)) (cons (shen.beta (hd (tl V825)) V824 (hd (tl (tl V825)))) (tl (tl (tl V825))))))) ((cons? V825) (map (lambda Z826 (shen.beta V823 V824 Z826)) V825)) (true V825))) -(defun shen.op1 (V852) (cond ((= cons V852) hd) ((= @s V852) hdstr) ((= @p V852) fst) ((= @v V852) hdv) (true (simple-error "implementation error in shen.op1")))) +(defun shen.op1 (V829) (cond ((= cons V829) hd) ((= @s V829) hdstr) ((= @p V829) fst) ((= @v V829) hdv) (true (simple-error "implementation error in shen.op1")))) -(defun shen.op2 (V855) (cond ((= cons V855) tl) ((= @s V855) tlstr) ((= @p V855) snd) ((= @v V855) tlv) (true (simple-error "implementation error in shen.op2")))) +(defun shen.op2 (V832) (cond ((= cons V832) tl) ((= @s V832) tlstr) ((= @p V832) snd) ((= @v V832) tlv) (true (simple-error "implementation error in shen.op2")))) -(defun shen.op-test (V858) (cond ((= cons V858) cons?) ((= @s V858) shen.+string?) ((= @p V858) tuple?) ((= @v V858) shen.+vector?) (true (simple-error "implementation error in shen.op-test")))) +(defun shen.op-test (V835) (cond ((= cons V835) cons?) ((= @s V835) shen.+string?) ((= @p V835) tuple?) ((= @v V835) shen.+vector?) (true (simple-error "implementation error in shen.op-test")))) -(defun shen.+string? (V859) (cond ((= "" V859) false) (true (string? V859)))) +(defun shen.+string? (V836) (cond ((= "" V836) false) (true (string? V836)))) -(defun shen.+vector? (V860) (cond ((= V860 (vector 0)) false) (true (vector? V860)))) +(defun shen.+vector? (V837) (cond ((= V837 (vector 0)) false) (true (vector? V837)))) -(defun factorise (V863) (cond ((= + V863) (set shen.*factorise?* true)) ((= - V863) (set shen.*factorise?* false)) (true (simple-error "factorise expects a + or a - +(defun factorise (V840) (cond ((= + V840) (set shen.*factorise?* true)) ((= - V840) (set shen.*factorise?* false)) (true (simple-error "factorise expects a + or a - ")))) -(defun shen.factorise-code (V864) (cond ((value shen.*factorise?*) (shen.factor V864)) (true V864))) +(defun shen.factorise-code (V841) (cond ((value shen.*factorise?*) (shen.factor V841)) (true V841))) -(defun shen.factor (V865) (cond ((and (cons? V865) (and (= defun (hd V865)) (and (cons? (tl V865)) (and (cons? (tl (tl V865))) (and (cons? (tl (tl (tl V865)))) (and (cons? (hd (tl (tl (tl V865))))) (and (= cond (hd (hd (tl (tl (tl V865)))))) (= () (tl (tl (tl (tl V865)))))))))))) (cons defun (cons (hd (tl V865)) (cons (hd (tl (tl V865))) (cons (shen.factor-recognisors (tl (hd (tl (tl (tl V865)))))) ()))))) (true V865))) +(defun shen.factor (V842) (cond ((and (cons? V842) (and (= defun (hd V842)) (and (cons? (tl V842)) (and (cons? (tl (tl V842))) (and (cons? (tl (tl (tl V842)))) (and (cons? (hd (tl (tl (tl V842))))) (and (= cond (hd (hd (tl (tl (tl V842)))))) (= () (tl (tl (tl (tl V842)))))))))))) (cons defun (cons (hd (tl V842)) (cons (hd (tl (tl V842))) (cons (shen.factor-recognisors (tl (hd (tl (tl (tl V842)))))) ()))))) (true V842))) -(defun shen.factor-recognisors (V868) (cond ((and (cons? V868) (and (cons? (hd V868)) (and (= true (hd (hd V868))) (and (cons? (tl (hd V868))) (= () (tl (tl (hd V868)))))))) (hd (tl (hd V868)))) ((and (cons? V868) (and (cons? (hd V868)) (and (cons? (hd (hd V868))) (and (= and (hd (hd (hd V868)))) (and (cons? (tl (hd (hd V868)))) (and (cons? (tl (tl (hd (hd V868))))) (and (= () (tl (tl (tl (hd (hd V868)))))) (and (cons? (tl (hd V868))) (= () (tl (tl (hd V868)))))))))))) (let W869 (shen.pivot-on (hd (tl (hd (hd V868)))) V868 ()) (let W870 (fst W869) (if (shen.bad-pivot? W870) (cons if (cons (hd (hd V868)) (cons (hd (tl (hd V868))) (cons (shen.factor-recognisors (tl V868)) ())))) (let W871 (snd W869) (let W872 (shen.factor-recognisors W871) (let W873 (gensym GoTo) (let W874 (reverse (cons (cons true (cons (cons thaw (cons W873 ())) ())) W870)) (let W875 (cons let (cons W873 (cons (cons freeze (cons W872 ())) (cons (cons if (cons (hd (tl (hd (hd V868)))) (cons (shen.factor-selectors (hd (tl (hd (hd V868)))) (shen.factor-recognisors W874)) (cons (cons thaw (cons W873 ())) ())))) ())))) (shen.remove-indirection W875)))))))))) ((and (cons? V868) (and (cons? (hd V868)) (and (cons? (tl (hd V868))) (= () (tl (tl (hd V868))))))) (cons if (cons (hd (hd V868)) (cons (hd (tl (hd V868))) (cons (shen.factor-recognisors (tl V868)) ()))))) (true (shen.f-error shen.factor-recognisors)))) +(defun shen.factor-recognisors (V845) (cond ((and (cons? V845) (and (cons? (hd V845)) (and (= true (hd (hd V845))) (and (cons? (tl (hd V845))) (= () (tl (tl (hd V845)))))))) (hd (tl (hd V845)))) ((and (cons? V845) (and (cons? (hd V845)) (and (cons? (hd (hd V845))) (and (= and (hd (hd (hd V845)))) (and (cons? (tl (hd (hd V845)))) (and (cons? (tl (tl (hd (hd V845))))) (and (= () (tl (tl (tl (hd (hd V845)))))) (and (cons? (tl (hd V845))) (= () (tl (tl (hd V845)))))))))))) (let W846 (shen.pivot-on (hd (tl (hd (hd V845)))) V845 ()) (let W847 (fst W846) (if (shen.bad-pivot? W847) (cons if (cons (hd (hd V845)) (cons (hd (tl (hd V845))) (cons (shen.factor-recognisors (tl V845)) ())))) (let W848 (snd W846) (let W849 (shen.factor-recognisors W848) (let W850 (gensym GoTo) (let W851 (reverse (cons (cons true (cons (cons thaw (cons W850 ())) ())) W847)) (let W852 (cons let (cons W850 (cons (cons freeze (cons W849 ())) (cons (cons if (cons (hd (tl (hd (hd V845)))) (cons (shen.factor-selectors (hd (tl (hd (hd V845)))) (shen.factor-recognisors W851)) (cons (cons thaw (cons W850 ())) ())))) ())))) (shen.remove-indirection W852)))))))))) ((and (cons? V845) (and (cons? (hd V845)) (and (cons? (tl (hd V845))) (= () (tl (tl (hd V845))))))) (cons if (cons (hd (hd V845)) (cons (hd (tl (hd V845))) (cons (shen.factor-recognisors (tl V845)) ()))))) (true (simple-error "partial function shen.factor-recognisors")))) -(defun shen.bad-pivot? (V880) (cond ((and (cons? V880) (= () (tl V880))) true) (true false))) +(defun shen.bad-pivot? (V857) (cond ((and (cons? V857) (= () (tl V857))) true) (true false))) -(defun shen.remove-indirection (V881) (cond ((and (cons? V881) (and (= let (hd V881)) (and (cons? (tl V881)) (and (cons? (tl (tl V881))) (and (cons? (hd (tl (tl V881)))) (and (= freeze (hd (hd (tl (tl V881))))) (and (cons? (tl (hd (tl (tl V881))))) (and (cons? (hd (tl (hd (tl (tl V881)))))) (and (= thaw (hd (hd (tl (hd (tl (tl V881))))))) (and (cons? (tl (hd (tl (hd (tl (tl V881))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl V881)))))))) (and (= () (tl (tl (hd (tl (tl V881)))))) (and (cons? (tl (tl (tl V881)))) (and (= () (tl (tl (tl (tl V881))))) (symbol? (hd (tl (hd (tl (hd (tl (tl V881)))))))))))))))))))))) (subst (hd (tl (hd (tl (hd (tl (tl V881))))))) (hd (tl V881)) (hd (tl (tl (tl V881)))))) (true V881))) +(defun shen.remove-indirection (V858) (cond ((and (cons? V858) (and (= let (hd V858)) (and (cons? (tl V858)) (and (cons? (tl (tl V858))) (and (cons? (hd (tl (tl V858)))) (and (= freeze (hd (hd (tl (tl V858))))) (and (cons? (tl (hd (tl (tl V858))))) (and (cons? (hd (tl (hd (tl (tl V858)))))) (and (= thaw (hd (hd (tl (hd (tl (tl V858))))))) (and (cons? (tl (hd (tl (hd (tl (tl V858))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl V858)))))))) (and (= () (tl (tl (hd (tl (tl V858)))))) (and (cons? (tl (tl (tl V858)))) (and (= () (tl (tl (tl (tl V858))))) (symbol? (hd (tl (hd (tl (hd (tl (tl V858)))))))))))))))))))))) (subst (hd (tl (hd (tl (hd (tl (tl V858))))))) (hd (tl V858)) (hd (tl (tl (tl V858)))))) (true V858))) -(defun shen.pivot-on (V884 V885 V886) (cond ((and (cons? V885) (and (cons? (hd V885)) (and (cons? (hd (hd V885))) (and (= and (hd (hd (hd V885)))) (and (cons? (tl (hd (hd V885)))) (and (cons? (tl (tl (hd (hd V885))))) (and (= () (tl (tl (tl (hd (hd V885)))))) (and (cons? (tl (hd V885))) (and (= () (tl (tl (hd V885)))) (= V884 (hd (tl (hd (hd V885)))))))))))))) (shen.pivot-on (hd (tl (hd (hd V885)))) (tl V885) (cons (cons (hd (tl (tl (hd (hd V885))))) (tl (hd V885))) V886))) ((and (cons? V885) (and (cons? (hd V885)) (and (cons? (tl (hd V885))) (and (= () (tl (tl (hd V885)))) (= V884 (hd (hd V885))))))) (shen.pivot-on (hd (hd V885)) (tl V885) (cons (cons true (tl (hd V885))) V886))) (true (@p V886 V885)))) +(defun shen.pivot-on (V861 V862 V863) (cond ((and (cons? V862) (and (cons? (hd V862)) (and (cons? (hd (hd V862))) (and (= and (hd (hd (hd V862)))) (and (cons? (tl (hd (hd V862)))) (and (cons? (tl (tl (hd (hd V862))))) (and (= () (tl (tl (tl (hd (hd V862)))))) (and (cons? (tl (hd V862))) (and (= () (tl (tl (hd V862)))) (= V861 (hd (tl (hd (hd V862)))))))))))))) (shen.pivot-on (hd (tl (hd (hd V862)))) (tl V862) (cons (cons (hd (tl (tl (hd (hd V862))))) (tl (hd V862))) V863))) ((and (cons? V862) (and (cons? (hd V862)) (and (cons? (tl (hd V862))) (and (= () (tl (tl (hd V862)))) (= V861 (hd (hd V862))))))) (shen.pivot-on (hd (hd V862)) (tl V862) (cons (cons true (tl (hd V862))) V863))) (true (@p V863 V862)))) -(defun shen.factor-selectors (V889 V890) (cond ((and (cons? V889) (and (cons? (tl V889)) (= () (tl (tl V889))))) (let W891 (shen.op (hd V889)) (if (= shen.skip W891) V890 (shen.factor-selectors-h (cons (cons (shen.op1 W891) (tl V889)) (cons (cons (shen.op2 W891) (tl V889)) ())) V890)))) (true V890))) +(defun shen.factor-selectors (V866 V867) (cond ((and (cons? V866) (and (cons? (tl V866)) (= () (tl (tl V866))))) (let W868 (shen.op (hd V866)) (if (= shen.skip W868) V867 (shen.factor-selectors-h (cons (cons (shen.op1 W868) (tl V866)) (cons (cons (shen.op2 W868) (tl V866)) ())) V867)))) (true V867))) -(defun shen.op (V894) (cond ((= cons? V894) cons) ((= shen.+string? V894) @s) ((= shen.+vector? V894) @v) ((= tuple? V894) @p) (true shen.skip))) +(defun shen.op (V871) (cond ((= cons? V871) cons) ((= shen.+string? V871) @s) ((= shen.+vector? V871) @v) ((= tuple? V871) @p) (true shen.skip))) -(defun shen.factor-selectors-h (V895 V896) (cond ((= () V895) V896) ((cons? V895) (if (> (occurrences (hd V895) V896) 1) (let W897 (gensym Select) (cons let (cons W897 (cons (hd V895) (cons (shen.factor-selectors-h (tl V895) (subst W897 (hd V895) V896)) ()))))) (shen.factor-selectors-h (tl V895) V896))) (true (shen.f-error shen.factor-selectors-h)))) +(defun shen.factor-selectors-h (V872 V873) (cond ((= () V872) V873) ((cons? V872) (if (> (occurrences (hd V872) V873) 1) (let W874 (gensym Select) (cons let (cons W874 (cons (hd V872) (cons (shen.factor-selectors-h (tl V872) (subst W874 (hd V872) V873)) ()))))) (shen.factor-selectors-h (tl V872) V873))) (true (simple-error "partial function shen.factor-selectors-h")))) diff --git a/kernel/klambda/declarations.kl b/kernel/klambda/declarations.kl index dea061b..bae45af 100644 --- a/kernel/klambda/declarations.kl +++ b/kernel/klambda/declarations.kl @@ -1,25 +1,99 @@ -(defun datatypes () (map (lambda Z904 (shen.typename Z904)) (value shen.*alldatatypes*))) +(set shen.*history* ()) -(defun shen.included () (map (lambda Z905 (shen.typename Z905)) (value shen.*datatypes*))) +(set shen.*tc* false) -(defun shen.typename (V908) (cond ((cons? V908) (intern (shen.typename-h (str (hd V908))))) (true (shen.f-error shen.typename)))) +(set *property-vector* (vector 20000)) -(defun shen.typename-h (V909) (cond ((= "#type" V909) "") ((shen.+string? V909) (cn (hdstr V909) (shen.typename-h (tlstr V909)))) (true (shen.f-error shen.typename-h)))) +(set *macros* (cons (cons shen.macros (lambda X (shen.macros X))) ())) -(defun prolog-memory (V910) (if (< V910 0) (value shen.*prolog-memory*) (if (integer? V910) (set shen.*prolog-memory* V910) (simple-error "prolog memory expects an integer value +(set shen.*gensym* 0) + +(set shen.*tracking* ()) + +(set shen.*profiled* ()) + +(set *home-directory* "") + +(set shen.*special* (cons @p (cons @s (cons @v (cons cons (cons lambda (cons let (cons where (cons set (cons open (cons shen.input-h+ (cons type ())))))))))))) + +(set shen.*extraspecial* ()) + +(set shen.*spy* false) + +(set shen.*datatypes* ()) + +(set shen.*alldatatypes* ()) + +(set shen.*shen-type-theory-enabled?* true) + +(set shen.*package* null) + +(set shen.*synonyms* ()) + +(set shen.*system* ()) + +(set shen.*sigf* ()) + +(set shen.*occurs* true) + +(set shen.*factorise?* false) + +(set shen.*maxinferences* 1000000) + +(set *maximum-print-sequence-size* 20) + +(set shen.*call* 0) + +(set shen.*infs* 0) + +(set *hush* false) + +(set shen.*optimise* false) + +(set *version* "41.2") + +(set shen.*names* ()) + +(set shen.*step* false) + +(set shen.*it* "") + +(set shen.*residue* ()) + +(set shen.*prolog-memory* 1000) + +(set shen.*loading?* false) + +(set shen.*userdefs* ()) + +(defun datatypes () (map (lambda Z5718 (shen.typename Z5718)) (value shen.*alldatatypes*))) + +(defun included () (map (lambda Z5719 (shen.typename Z5719)) (value shen.*datatypes*))) + +(defun shen.typename (V5722) (cond ((cons? V5722) (intern (shen.typename-h (str (hd V5722))))) (true (simple-error "partial function shen.typename")))) + +(defun shen.typename-h (V5723) (cond ((= "#type" V5723) "") ((shen.+string? V5723) (cn (hdstr V5723) (shen.typename-h (tlstr V5723)))) (true (simple-error "partial function shen.typename-h")))) + +(defun prolog-memory (V5724) (if (< V5724 0) (value shen.*prolog-memory*) (if (integer? V5724) (set shen.*prolog-memory* V5724) (simple-error "prolog memory expects an integer value ")))) -(defun arity (V911) (trap-error (get V911 arity (value *property-vector*)) (lambda Z912 -1))) +(defun shen.initialise-lambda-tables (V5727) (cond ((= () V5727) ()) ((and (cons? V5727) (cons? (tl V5727))) (let W5728 (put (hd V5727) arity (hd (tl V5727)) (value *property-vector*)) (shen.initialise-arity-table (tl (tl V5727))))) (true (simple-error "implementation error in shen.initialise-arity-table")))) + +(defun arity (V5729) (trap-error (get V5729 arity (value *property-vector*)) (lambda Z5730 -1))) + +(defun shen.initialise-arity-table (V5733) (cond ((= () V5733) ()) ((and (cons? V5733) (cons? (tl V5733))) (let W5734 (put (hd V5733) arity (hd (tl V5733)) (value *property-vector*)) (shen.initialise-arity-table (tl (tl V5733))))) (true (simple-error "implementation error in shen.initialise-arity-table")))) + +(shen.initialise-arity-table (cons abort (cons 0 (cons absolute (cons 1 (cons absvector? (cons 1 (cons absvector (cons 1 (cons address-> (cons 3 (cons adjoin (cons 2 (cons and (cons 2 (cons append (cons 2 (cons arity (cons 1 (cons assoc (cons 2 (cons atom? (cons 1 (cons boolean? (cons 1 (cons bootstrap (cons 1 (cons bound? (cons 1 (cons bind (cons 6 (cons call (cons 5 (cons cd (cons 1 (cons compile (cons 2 (cons concat (cons 2 (cons cons (cons 2 (cons cons? (cons 1 (cons cn (cons 2 (cons close (cons 1 (cons datatypes (cons 0 (cons declare (cons 2 (cons destroy (cons 1 (cons difference (cons 2 (cons do (cons 2 (cons element? (cons 2 (cons empty? (cons 1 (cons enable-type-theory (cons 1 (cons external (cons 1 (cons error-to-string (cons 1 (cons eval (cons 1 (cons eval-kl (cons 1 (cons explode (cons 1 (cons external (cons 1 (cons factorise (cons 1 (cons factorise? (cons 0 (cons fail-if (cons 2 (cons fail (cons 0 (cons fix (cons 2 (cons findall (cons 7 (cons foreign (cons 1 (cons fork (cons 5 (cons freeze (cons 1 (cons fresh (cons 0 (cons fst (cons 1 (cons fn (cons 1 (cons function (cons 1 (cons gensym (cons 1 (cons get (cons 3 (cons get-time (cons 1 (cons address-> (cons 3 (cons <-address (cons 2 (cons <-vector (cons 2 (cons > (cons 2 (cons >= (cons 2 (cons = (cons 2 (cons hash (cons 2 (cons hd (cons 1 (cons hdv (cons 1 (cons hdstr (cons 1 (cons head (cons 1 (cons hush? (cons 0 (cons hush (cons 1 (cons if (cons 3 (cons include (cons 1 (cons included (cons 0 (cons in-package (cons 1 (cons integer? (cons 1 (cons internal (cons 1 (cons intern (cons 1 (cons inferences (cons 0 (cons input (cons 1 (cons input+ (cons 2 (cons implementation (cons 0 (cons include-all-but (cons 1 (cons intersection (cons 2 (cons internal (cons 1 (cons it (cons 0 (cons is (cons 6 (cons is! (cons 6 (cons language (cons 0 (cons length (cons 1 (cons limit (cons 1 (cons lineread (cons 1 (cons list (cons 1 (cons load (cons 1 (cons < (cons 2 (cons <= (cons 2 (cons vector (cons 1 (cons macroexpand (cons 1 (cons map (cons 2 (cons mapcan (cons 2 (cons maxinferences (cons 1 (cons nl (cons 1 (cons not (cons 1 (cons nth (cons 2 (cons n->string (cons 1 (cons number? (cons 1 (cons occurs-check (cons 1 (cons occurrences (cons 2 (cons occurs? (cons 0 (cons occurs-check (cons 1 (cons open (cons 2 (cons optimise (cons 1 (cons optimise? (cons 0 (cons or (cons 2 (cons os (cons 0 (cons package (cons 3 (cons package? (cons 1 (cons port (cons 0 (cons porters (cons 0 (cons pos (cons 2 (cons preclude-all-but (cons 1 (cons print (cons 1 (cons profile (cons 1 (cons shen.print-prolog-vector (cons 1 (cons shen.print-freshterm (cons 1 (cons shen.printF (cons 1 (cons prolog-memory (cons 1 (cons profile-results (cons 1 (cons pr (cons 2 (cons ps (cons 1 (cons preclude (cons 1 (cons preclude-all-but (cons 1 (cons protect (cons 1 (cons put (cons 4 (cons read-file-as-string (cons 1 (cons read-file-as-bytelist (cons 1 (cons read-file (cons 1 (cons read (cons 1 (cons read-byte (cons 1 (cons read-from-string (cons 1 (cons read-from-string-unprocessed (cons 1 (cons shen.read-unit-string (cons 1 (cons receive (cons 1 (cons release (cons 0 (cons remove (cons 2 (cons reverse (cons 1 (cons set (cons 2 (cons simple-error (cons 1 (cons snd (cons 1 (cons specialise (cons 2 (cons spy (cons 1 (cons spy? (cons 0 (cons step (cons 1 (cons step? (cons 0 (cons stinput (cons 0 (cons stoutput (cons 0 (cons str (cons 1 (cons string->n (cons 1 (cons string->symbol (cons 1 (cons string? (cons 1 (cons subst (cons 3 (cons sum (cons 1 (cons symbol? (cons 1 (cons systemf (cons 1 (cons tail (cons 1 (cons tl (cons 1 (cons tc (cons 1 (cons tc? (cons 0 (cons thaw (cons 1 (cons tlstr (cons 1 (cons track (cons 1 (cons tracked (cons 0 (cons trap-error (cons 2 (cons tuple? (cons 1 (cons type (cons 2 (cons return (cons 5 (cons unabsolute (cons 1 (cons undefmacro (cons 1 (cons unput (cons 3 (cons unprofile (cons 1 (cons union (cons 2 (cons untrack (cons 1 (cons undefmacro (cons 1 (cons update-lambda-table (cons 2 (cons userdefs (cons 0 (cons vector (cons 1 (cons vector? (cons 1 (cons vector-> (cons 3 (cons value (cons 1 (cons variable? (cons 1 (cons var? (cons 5 (cons version (cons 0 (cons when (cons 5 (cons write-byte (cons 2 (cons write-to-file (cons 2 (cons y-or-n? (cons 1 (cons + (cons 2 (cons * (cons 2 (cons / (cons 2 (cons - (cons 2 (cons == (cons 2 (cons (cons 1 (cons (cons 1 (cons (cons 1 (cons @p (cons 2 (cons @v (cons 2 (cons @s (cons 2 ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) -(defun shen.initialise-arity-table (V915) (cond ((= () V915) ()) ((and (cons? V915) (cons? (tl V915))) (let W916 (put (hd V915) arity (hd (tl V915)) (value *property-vector*)) (shen.initialise-arity-table (tl (tl V915))))) (true (simple-error "implementation error in shen.initialise-arity-table")))) +(defun systemf (V5735) (let W5736 (get shen shen.external-symbols (value *property-vector*)) (let W5737 (put shen shen.external-symbols (adjoin V5735 W5736) (value *property-vector*)) V5735))) -(defun systemf (V917) (let W918 (get shen shen.external-symbols (value *property-vector*)) (let W919 (put shen shen.external-symbols (adjoin V917 W918) (value *property-vector*)) V917))) +(defun adjoin (V5738 V5739) (if (element? V5738 V5739) V5739 (cons V5738 V5739))) -(defun adjoin (V920 V921) (if (element? V920 V921) V921 (cons V920 V921))) +(put shen shen.external-symbols (cons ! (cons } (cons { (cons --> (cons <-- (cons && (cons (intern ":") (cons (intern ";") (cons (intern ":=") (cons (intern ",") (cons _ (cons *language* (cons *implementation* (cons *stinput* (cons *stoutput* (cons *home-directory* (cons *version* (cons *maximum-print-sequence-size* (cons *macros* (cons *os* (cons *release* (cons *property-vector* (cons @v (cons @p (cons @s (cons *port* (cons *porters* (cons *hush* (cons <- (cons -> (cons (cons == (cons = (cons >= (cons > (cons ==> (cons /. (cons (cons (cons $ (cons - (cons / (cons * (cons + (cons <= (cons < (cons >> (cons (vector 0) (cons y-or-n? (cons write-to-file (cons write-byte (cons where (cons when (cons version (cons verified (cons variable? (cons var? (cons value (cons vector-> (cons <-vector (cons vector (cons vector? (cons userdefs (cons u! (cons update-lambda-table (cons unspecialise (cons untrack (cons unit (cons unix (cons union (cons unput (cons unprofile (cons undefmacro (cons unabsolute (cons return (cons type (cons tuple? (cons true (cons trap-error (cons tracked (cons track (cons time (cons thaw (cons tc? (cons tc (cons tl (cons tlstr (cons tlv (cons tail (cons systemf (cons synonyms (cons system-S? (cons symbol (cons symbol? (cons string->symbol (cons sum (cons subst (cons string? (cons string->n (cons stream (cons string (cons stinput (cons stoutput (cons step (cons sqts (cons spy (cons specialise (cons snd (cons simple-error (cons set (cons save (cons str (cons run (cons reverse (cons retract (cons remove (cons release (cons read (cons receive (cons read-file (cons read-file-as-bytelist (cons read-file-as-string (cons read-byte (cons read-from-string (cons read-from-string-unprocessed (cons package? (cons put (cons preclude (cons preclude-all-but (cons ps (cons prolog? (cons protect (cons profile-results (cons profile (cons prolog-memory (cons print (cons pr (cons pos (cons porters (cons port (cons package (cons output (cons out (cons os (cons or (cons optimise (cons optimise? (cons open (cons occurrences (cons occurs-check (cons occurs? (cons n->string (cons number? (cons number (cons null (cons nth (cons not (cons nl (cons mode (cons macroexpand (cons maxinferences (cons mapcan (cons map (cons make-string (cons load (cons loaded (cons list (cons lineread (cons limit (cons length (cons let (cons lazy (cons lambda (cons language (cons is (cons intersection (cons inferences (cons intern (cons integer? (cons input (cons input+ (cons included (cons include (cons include-all-but (cons it (cons is (cons is! (cons in (cons in-package (cons internal (cons implementation (cons if (cons hush? (cons hush? (cons head (cons hd (cons hdv (cons hdstr (cons hash (cons get (cons get-time (cons gensym (cons fn (cons function (cons fst (cons freeze (cons fresh (cons fork (cons foreign (cons fix (cons file (cons fail (cons fail-if (cons factorise (cons factorise? (cons findall (cons false (cons enable-type-theory (cons explode (cons external (cons exception (cons eval-kl (cons eval (cons error-to-string (cons error (cons empty? (cons element? (cons do (cons difference (cons destroy (cons defun (cons define (cons defmacro (cons defcc (cons defprolog (cons declare (cons datatype (cons datatypes (cons ctxt (cons cn (cons cons? (cons cons (cons cond (cons concat (cons compile (cons cd (cons cases (cons call (cons close (cons bind (cons bound? (cons boolean? (cons boolean (cons bootstrap (cons (intern "bar!") (cons spy? (cons step? (cons atom? (cons asserta (cons assertz (cons assoc (cons arity (cons append (cons and (cons adjoin (cons <-address (cons address-> (cons absvector? (cons absvector (cons absolute (cons abort ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (value *property-vector*)) -(defun shen.lambda-entry (V922) (let W923 (arity V922) (if (or (= W923 -1) (= W923 0)) () (cons V922 (eval-kl (shen.lambda-function (cons V922 ()) W923)))))) +(defun shen.lambda-entry (V5740) (let W5741 (arity V5740) (if (or (= W5741 -1) (= W5741 0)) () (cons V5740 (eval-kl (shen.lambda-function (cons V5740 ()) W5741)))))) -(defun shen.set-lambda-form-entry (V924) (cond ((cons? V924) (put (hd V924) shen.lambda-form (tl V924) (value *property-vector*))) (true (shen.f-error shen.set-lambda-form-entry)))) +(defun shen.build-lambda-table (V5742) (let W5743 (map (lambda Z5744 (shen.lambda-entry Z5744)) V5742) (set shen.*lambdatable* (cons (cons shen.tuple (lambda Z5745 (shen.tuple Z5745))) (cons (cons shen.pvar (lambda Z5746 (shen.pvar Z5746))) (cons (cons shen.print-prolog-vector (lambda Z5747 (shen.print-prolog-vector Z5747))) (cons (cons shen.print-freshterm (lambda Z5748 (shen.print-freshterm Z5748))) (cons (cons shen.printF (lambda Z5749 (shen.printF Z5749))) W5743)))))))) -(defun shen.build-lambda-table (V925) (let W926 (map (lambda Z927 (shen.lambda-entry Z927)) V925) (shen.for-each (lambda Z928 (shen.set-lambda-form-entry Z928)) (cons (cons shen.tuple (lambda Z929 (shen.tuple Z929))) (cons (cons shen.pvar (lambda Z930 (shen.pvar Z930))) (cons (cons shen.dictionary (lambda Z931 (shen.dictionary Z931))) (cons (cons shen.print-prolog-vector (lambda Z932 (shen.print-prolog-vector Z932))) (cons (cons shen.print-freshterm (lambda Z933 (shen.print-freshterm Z933))) (cons (cons shen.printF (lambda Z934 (shen.printF Z934))) W926))))))))) +(shen.build-lambda-table (external shen)) diff --git a/kernel/klambda/dict.kl b/kernel/klambda/dict.kl deleted file mode 100644 index 0fff379..0000000 --- a/kernel/klambda/dict.kl +++ /dev/null @@ -1,33 +0,0 @@ -(defun shen.dict (V4162) (cond ((< V4162 1) (simple-error (cn "invalid initial dict size: " (shen.app V4162 "" shen.s)))) (true (let W4163 (absvector (+ 3 V4162)) (let W4164 (address-> W4163 0 shen.dictionary) (let W4165 (address-> W4163 1 V4162) (let W4166 (address-> W4163 2 0) (let W4167 (shen.fillvector W4163 3 (+ 2 V4162) ()) W4163)))))))) - -(defun shen.dict? (V4168) (and (absvector? V4168) (= (trap-error (<-address V4168 0) (lambda Z4169 shen.not-dictionary)) shen.dictionary))) - -(defun shen.dict-capacity (V4170) (<-address V4170 1)) - -(defun shen.dict-count (V4171) (<-address V4171 2)) - -(defun shen.dict-count-> (V4172 V4173) (address-> V4172 2 V4173)) - -(defun shen.<-dict-bucket (V4174 V4175) (<-address V4174 (+ 3 V4175))) - -(defun shen.dict-bucket-> (V4176 V4177 V4178) (address-> V4176 (+ 3 V4177) V4178)) - -(defun shen.dict-update-count (V4179 V4180 V4181) (let W4182 (- (length V4181) (length V4180)) (shen.dict-count-> V4179 (+ W4182 (shen.dict-count V4179))))) - -(defun shen.dict-> (V4183 V4184 V4185) (let W4186 (hash V4184 (shen.dict-capacity V4183)) (let W4187 (shen.<-dict-bucket V4183 W4186) (let W4188 (shen.assoc-set V4184 V4185 W4187) (let W4189 (shen.dict-bucket-> V4183 W4186 W4188) (let W4190 (shen.dict-update-count V4183 W4187 W4188) V4185)))))) - -(defun shen.<-dict (V4191 V4192) (let W4193 (hash V4192 (shen.dict-capacity V4191)) (let W4194 (shen.<-dict-bucket V4191 W4193) (let W4195 (assoc V4192 W4194) (if (empty? W4195) (simple-error (cn "value " (shen.app V4192 " not found in dict -" shen.a))) (tl W4195)))))) - -(defun shen.dict-rm (V4196 V4197) (let W4198 (hash V4197 (shen.dict-capacity V4196)) (let W4199 (shen.<-dict-bucket V4196 W4198) (let W4200 (shen.assoc-rm V4197 W4199) (let W4201 (shen.dict-bucket-> V4196 W4198 W4200) (let W4202 (shen.dict-update-count V4196 W4199 W4200) V4197)))))) - -(defun shen.dict-fold (V4203 V4204 V4205) (let W4206 (shen.dict-capacity V4204) (shen.dict-fold-h V4203 V4204 V4205 0 W4206))) - -(defun shen.dict-fold-h (V4208 V4209 V4210 V4211 V4212) (cond ((= V4211 V4212) V4210) (true (let W4213 (shen.<-dict-bucket V4209 V4211) (let W4214 (shen.bucket-fold V4208 W4213 V4210) (shen.dict-fold-h V4208 V4209 W4214 (+ 1 V4211) V4212)))))) - -(defun shen.bucket-fold (V4215 V4216 V4217) (cond ((= () V4216) V4217) ((and (cons? V4216) (cons? (hd V4216))) (((V4215 (hd (hd V4216))) (tl (hd V4216))) (shen.bucket-fold V4215 (tl V4216) V4217))) (true (shen.f-error shen.bucket-fold)))) - -(defun shen.dict-keys (V4218) (shen.dict-fold (lambda Z4219 (lambda Z4220 (lambda Z4221 (cons Z4219 Z4221)))) V4218 ())) - -(defun shen.dict-values (V4222) (shen.dict-fold (lambda Z4223 (lambda Z4224 (lambda Z4225 (cons Z4224 Z4225)))) V4222 ())) - diff --git a/kernel/klambda/init.kl b/kernel/klambda/init.kl deleted file mode 100644 index cfbda0c..0000000 --- a/kernel/klambda/init.kl +++ /dev/null @@ -1,8 +0,0 @@ -(defun shen.initialise-environment () (do (set shen.*history* ()) (do (set shen.*tc* false) (do (set *property-vector* (shen.dict 20000)) (do (set *macros* (cons (cons shen.macros (lambda X (shen.macros X))) ())) (do (set shen.*gensym* 0) (do (set shen.*tracking* ()) (do (set shen.*profiled* ()) (do (set shen.*special* (cons @p (cons @s (cons @v (cons cons (cons lambda (cons let (cons where (cons set (cons open (cons input+ (cons type ())))))))))))) (do (set shen.*extraspecial* ()) (do (set shen.*spy* false) (do (set shen.*datatypes* ()) (do (set shen.*alldatatypes* ()) (do (set shen.*shen-type-theory-enabled?* true) (do (set shen.*package* null) (do (set shen.*synonyms* ()) (do (set shen.*system* ()) (do (set shen.*occurs* true) (do (set shen.*factorise?* false) (do (set shen.*maxinferences* 1000000) (do (set *maximum-print-sequence-size* 20) (do (set shen.*call* 0) (do (set shen.*infs* 0) (do (set *hush* false) (do (set shen.*optimise* false) (do (set *version* "41.2") (do (set shen.*names* ()) (do (set shen.*step* false) (do (set shen.*it* "") (do (set shen.*residue* ()) (do (set *absolute* ()) (do (set shen.*prolog-memory* 1000) (do (set shen.*loading?* false) (do (set shen.*userdefs* ()) (do (set shen.*demodulation-function* (lambda X X)) (do (set shen.*custom-pattern-compiler* false) (do (set shen.*custom-pattern-reducer* false) (do (if (not (bound? *home-directory*)) (set *home-directory* "") shen.skip) (do (if (not (bound? *sterror*)) (set *sterror* (value *stoutput*)) shen.skip) (do (prolog-memory 10000) (do (set shen.*loading?* false) (do (shen.initialise-arity-table (cons abort (cons 0 (cons absolute (cons 1 (cons absvector? (cons 1 (cons absvector (cons 1 (cons address-> (cons 3 (cons adjoin (cons 2 (cons and (cons 2 (cons append (cons 2 (cons arity (cons 1 (cons assoc (cons 2 (cons atom? (cons 1 (cons boolean? (cons 1 (cons bootstrap (cons 1 (cons bound? (cons 1 (cons bind (cons 6 (cons call (cons 5 (cons cd (cons 1 (cons compile (cons 2 (cons concat (cons 2 (cons cons (cons 2 (cons cons? (cons 1 (cons cn (cons 2 (cons close (cons 1 (cons datatypes (cons 0 (cons declare (cons 2 (cons destroy (cons 1 (cons difference (cons 2 (cons do (cons 2 (cons element? (cons 2 (cons empty? (cons 1 (cons enable-type-theory (cons 1 (cons external (cons 1 (cons error-to-string (cons 1 (cons eval (cons 1 (cons eval-kl (cons 1 (cons explode (cons 1 (cons external (cons 1 (cons factorise (cons 1 (cons factorise? (cons 0 (cons fail-if (cons 2 (cons fail (cons 0 (cons fix (cons 2 (cons findall (cons 7 (cons foreign (cons 1 (cons fork (cons 5 (cons freeze (cons 1 (cons fresh (cons 0 (cons fst (cons 1 (cons fn (cons 1 (cons function (cons 1 (cons gensym (cons 1 (cons get (cons 3 (cons get-time (cons 1 (cons address-> (cons 3 (cons <-address (cons 2 (cons <-vector (cons 2 (cons > (cons 2 (cons >= (cons 2 (cons = (cons 2 (cons hash (cons 2 (cons hd (cons 1 (cons hdv (cons 1 (cons hdstr (cons 1 (cons head (cons 1 (cons hush? (cons 0 (cons hush (cons 1 (cons if (cons 3 (cons include (cons 1 (cons shen.included (cons 0 (cons in-package (cons 1 (cons integer? (cons 1 (cons internal (cons 1 (cons intern (cons 1 (cons inferences (cons 0 (cons input (cons 1 (cons input+ (cons 2 (cons implementation (cons 0 (cons include-all-but (cons 1 (cons intersection (cons 2 (cons internal (cons 1 (cons it (cons 0 (cons is (cons 6 (cons is! (cons 6 (cons language (cons 0 (cons length (cons 1 (cons limit (cons 1 (cons lineread (cons 1 (cons list (cons 1 (cons load (cons 1 (cons < (cons 2 (cons <= (cons 2 (cons vector (cons 1 (cons macroexpand (cons 1 (cons map (cons 2 (cons mapcan (cons 2 (cons maxinferences (cons 1 (cons nl (cons 1 (cons not (cons 1 (cons nth (cons 2 (cons n->string (cons 1 (cons number? (cons 1 (cons occurs-check (cons 1 (cons occurrences (cons 2 (cons occurs? (cons 0 (cons occurs-check (cons 1 (cons open (cons 2 (cons optimise (cons 1 (cons optimise? (cons 0 (cons or (cons 2 (cons os (cons 0 (cons package (cons 3 (cons package? (cons 1 (cons port (cons 0 (cons porters (cons 0 (cons pos (cons 2 (cons preclude-all-but (cons 1 (cons print (cons 1 (cons profile (cons 1 (cons shen.print-prolog-vector (cons 1 (cons shen.print-freshterm (cons 1 (cons shen.printF (cons 1 (cons prolog-memory (cons 1 (cons profile-results (cons 1 (cons pr (cons 2 (cons ps (cons 1 (cons preclude (cons 1 (cons preclude-all-but (cons 1 (cons protect (cons 1 (cons put (cons 4 (cons read-file-as-string (cons 1 (cons read-file-as-bytelist (cons 1 (cons read-file (cons 1 (cons read (cons 1 (cons read-byte (cons 1 (cons read-from-string (cons 1 (cons read-from-string-unprocessed (cons 1 (cons shen.read-unit-string (cons 1 (cons receive (cons 1 (cons release (cons 0 (cons remove (cons 2 (cons reverse (cons 1 (cons set (cons 2 (cons simple-error (cons 1 (cons snd (cons 1 (cons specialise (cons 2 (cons spy (cons 1 (cons shen.spy? (cons 0 (cons step (cons 1 (cons shen.step? (cons 0 (cons stinput (cons 0 (cons stoutput (cons 0 (cons str (cons 1 (cons string->n (cons 1 (cons string->symbol (cons 1 (cons string? (cons 1 (cons subst (cons 3 (cons sum (cons 1 (cons symbol? (cons 1 (cons systemf (cons 1 (cons tail (cons 1 (cons tl (cons 1 (cons tc (cons 1 (cons tc? (cons 0 (cons thaw (cons 1 (cons tlstr (cons 1 (cons track (cons 1 (cons tracked (cons 0 (cons trap-error (cons 2 (cons tuple? (cons 1 (cons type (cons 2 (cons return (cons 5 (cons unabsolute (cons 1 (cons undefmacro (cons 1 (cons unput (cons 3 (cons unprofile (cons 1 (cons union (cons 2 (cons untrack (cons 1 (cons undefmacro (cons 1 (cons update-lambda-table (cons 2 (cons userdefs (cons 0 (cons vector (cons 1 (cons vector? (cons 1 (cons vector-> (cons 3 (cons value (cons 1 (cons variable? (cons 1 (cons var? (cons 5 (cons version (cons 0 (cons when (cons 5 (cons write-byte (cons 2 (cons write-to-file (cons 2 (cons y-or-n? (cons 1 (cons + (cons 2 (cons * (cons 2 (cons / (cons 2 (cons - (cons 2 (cons == (cons 2 (cons (cons 1 (cons (cons 1 (cons (cons 1 (cons @p (cons 2 (cons @v (cons 2 (cons @s (cons 2 ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (do (put shen shen.external-symbols (cons ! (cons } (cons { (cons --> (cons <-- (cons && (cons (intern ":") (cons (intern ";") (cons (intern ":=") (cons (intern ",") (cons _ (cons *language* (cons *implementation* (cons *stinput* (cons *sterror* (cons *stoutput* (cons *home-directory* (cons *version* (cons *maximum-print-sequence-size* (cons *macros* (cons *os* (cons *release* (cons *property-vector* (cons @v (cons @p (cons @s (cons *port* (cons *porters* (cons *hush* (cons <- (cons -> (cons (cons == (cons = (cons >= (cons > (cons ==> (cons /. (cons (cons (cons $ (cons - (cons / (cons * (cons + (cons <= (cons < (cons >> (cons (vector 0) (cons y-or-n? (cons write-to-file (cons write-byte (cons where (cons when (cons warn (cons version (cons verified (cons variable? (cons var? (cons value (cons vector-> (cons <-vector (cons vector (cons vector? (cons u! (cons update-lambda-table (cons unspecialise (cons untrack (cons unit (cons shen.unix (cons union (cons unput (cons unprofile (cons undefmacro (cons unabsolute (cons return (cons type (cons tuple? (cons true (cons trap-error (cons track (cons time (cons thaw (cons tc? (cons tc (cons tl (cons tlstr (cons tlv (cons tail (cons systemf (cons synonyms (cons symbol (cons symbol? (cons string->symbol (cons sum (cons subst (cons string? (cons string->n (cons stream (cons string (cons stinput (cons sterror (cons stoutput (cons step (cons spy (cons specialise (cons snd (cons simple-error (cons set (cons save (cons str (cons run (cons reverse (cons retract (cons remove (cons release (cons read (cons receive (cons read-file (cons read-file-as-bytelist (cons read-file-as-string (cons read-byte (cons read-from-string (cons read-from-string-unprocessed (cons package? (cons put (cons preclude (cons preclude-all-but (cons ps (cons prolog? (cons protect (cons profile-results (cons profile (cons prolog-memory (cons print (cons pr (cons pos (cons porters (cons port (cons package (cons output (cons out (cons os (cons or (cons optimise (cons open (cons occurrences (cons occurs-check (cons n->string (cons number? (cons number (cons null (cons nth (cons not (cons nl (cons mode (cons macroexpand (cons maxinferences (cons mapcan (cons map (cons make-string (cons load (cons loaded (cons list (cons lineread (cons limit (cons length (cons let (cons lazy (cons lambda (cons language (cons is (cons intersection (cons inferences (cons intern (cons integer? (cons input (cons input+ (cons inline (cons include (cons include-all-but (cons it (cons is (cons is! (cons in (cons in-package (cons internal (cons implementation (cons if (cons head (cons hd (cons hdv (cons hdstr (cons hash (cons get (cons get-time (cons gensym (cons fn (cons function (cons fst (cons freeze (cons fresh (cons fork (cons foreign (cons fix (cons file (cons fail (cons fail-if (cons factorise (cons findall (cons false (cons enable-type-theory (cons explode (cons external (cons exception (cons eval-kl (cons eval (cons error-to-string (cons error (cons empty? (cons element? (cons do (cons difference (cons destroy (cons defun (cons define (cons defmacro (cons defcc (cons defprolog (cons declare (cons datatype (cons datatypes (cons shen.ctxt (cons cn (cons cons? (cons cons (cons cond (cons concat (cons compile (cons cd (cons cases (cons call (cons close (cons bind (cons bound? (cons boolean? (cons boolean (cons bootstrap (cons (intern "bar!") (cons atom? (cons asserta (cons assertz (cons assoc (cons arity (cons append (cons and (cons adjoin (cons <-address (cons address-> (cons absvector? (cons absvector (cons absolute (cons abort ()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (value *property-vector*)) (set shen.*empty-absvector* (absvector 0))))))))))))))))))))))))))))))))))))))))))))) - -(defun shen.initialise-signedfuncs () (do (set shen.*sigf* ()) (do (set shen.*sigf* (shen.assoc-> abort (lambda V5951 (lambda B5947 (lambda L5948 (lambda Key5949 (lambda C5950 (let A (shen.newpv B5947) (shen.gc B5947 (is! V5951 (cons --> (cons A ())) B5947 L5948 Key5949 C5950)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> absolute (lambda V5956 (lambda B5952 (lambda L5953 (lambda Key5954 (lambda C5955 (is! V5956 (cons string (cons --> (cons (cons list (cons string ())) ()))) B5952 L5953 Key5954 C5955)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> absvector? (lambda V5961 (lambda B5957 (lambda L5958 (lambda Key5959 (lambda C5960 (let A (shen.newpv B5957) (shen.gc B5957 (is! V5961 (cons A (cons --> (cons boolean ()))) B5957 L5958 Key5959 C5960)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> adjoin (lambda V5966 (lambda B5962 (lambda L5963 (lambda Key5964 (lambda C5965 (let A (shen.newpv B5962) (shen.gc B5962 (is! V5966 (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B5962 L5963 Key5964 C5965)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> and (lambda V5971 (lambda B5967 (lambda L5968 (lambda Key5969 (lambda C5970 (is! V5971 (cons boolean (cons --> (cons (cons boolean (cons --> (cons boolean ()))) ()))) B5967 L5968 Key5969 C5970)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.app (lambda V5976 (lambda B5972 (lambda L5973 (lambda Key5974 (lambda C5975 (let A (shen.newpv B5972) (shen.gc B5972 (is! V5976 (cons A (cons --> (cons (cons string (cons --> (cons (cons symbol (cons --> (cons string ()))) ()))) ()))) B5972 L5973 Key5974 C5975)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> append (lambda V5981 (lambda B5977 (lambda L5978 (lambda Key5979 (lambda C5980 (let A (shen.newpv B5977) (shen.gc B5977 (is! V5981 (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B5977 L5978 Key5979 C5980)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> arity (lambda V5986 (lambda B5982 (lambda L5983 (lambda Key5984 (lambda C5985 (let A (shen.newpv B5982) (shen.gc B5982 (is! V5986 (cons A (cons --> (cons number ()))) B5982 L5983 Key5984 C5985)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> assoc (lambda V5991 (lambda B5987 (lambda L5988 (lambda Key5989 (lambda C5990 (let A (shen.newpv B5987) (shen.gc B5987 (is! V5991 (cons A (cons --> (cons (cons (cons list (cons (cons list (cons A ())) ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B5987 L5988 Key5989 C5990)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> atom? (lambda V5996 (lambda B5992 (lambda L5993 (lambda Key5994 (lambda C5995 (let A (shen.newpv B5992) (shen.gc B5992 (is! V5996 (cons A (cons --> (cons boolean ()))) B5992 L5993 Key5994 C5995)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> boolean? (lambda V6001 (lambda B5997 (lambda L5998 (lambda Key5999 (lambda C6000 (let A (shen.newpv B5997) (shen.gc B5997 (is! V6001 (cons A (cons --> (cons boolean ()))) B5997 L5998 Key5999 C6000)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> bootstrap (lambda V6006 (lambda B6002 (lambda L6003 (lambda Key6004 (lambda C6005 (is! V6006 (cons string (cons --> (cons string ()))) B6002 L6003 Key6004 C6005)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> bound? (lambda V6011 (lambda B6007 (lambda L6008 (lambda Key6009 (lambda C6010 (is! V6011 (cons symbol (cons --> (cons boolean ()))) B6007 L6008 Key6009 C6010)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.ccons? (lambda V6016 (lambda B6012 (lambda L6013 (lambda Key6014 (lambda C6015 (let A (shen.newpv B6012) (shen.gc B6012 (is! V6016 (cons (cons list (cons A ())) (cons --> (cons boolean ()))) B6012 L6013 Key6014 C6015)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> cd (lambda V6021 (lambda B6017 (lambda L6018 (lambda Key6019 (lambda C6020 (is! V6021 (cons string (cons --> (cons string ()))) B6017 L6018 Key6019 C6020)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> close (lambda V6026 (lambda B6022 (lambda L6023 (lambda Key6024 (lambda C6025 (let A (shen.newpv B6022) (shen.gc B6022 (let B (shen.newpv B6022) (shen.gc B6022 (is! V6026 (cons (cons stream (cons A ())) (cons --> (cons (cons list (cons B ())) ()))) B6022 L6023 Key6024 C6025)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> cn (lambda V6031 (lambda B6027 (lambda L6028 (lambda Key6029 (lambda C6030 (is! V6031 (cons string (cons --> (cons (cons string (cons --> (cons string ()))) ()))) B6027 L6028 Key6029 C6030)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> compile (lambda V6036 (lambda B6032 (lambda L6033 (lambda Key6034 (lambda C6035 (let A (shen.newpv B6032) (shen.gc B6032 (let B (shen.newpv B6032) (shen.gc B6032 (is! V6036 (cons (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons B ()))) ()))) B6032 L6033 Key6034 C6035)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> cons? (lambda V6041 (lambda B6037 (lambda L6038 (lambda Key6039 (lambda C6040 (let A (shen.newpv B6037) (shen.gc B6037 (is! V6041 (cons A (cons --> (cons boolean ()))) B6037 L6038 Key6039 C6040)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> datatypes (lambda V6046 (lambda B6042 (lambda L6043 (lambda Key6044 (lambda C6045 (is! V6046 (cons --> (cons (cons list (cons symbol ())) ())) B6042 L6043 Key6044 C6045)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> destroy (lambda V6051 (lambda B6047 (lambda L6048 (lambda Key6049 (lambda C6050 (is! V6051 (cons symbol (cons --> (cons symbol ()))) B6047 L6048 Key6049 C6050)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> difference (lambda V6056 (lambda B6052 (lambda L6053 (lambda Key6054 (lambda C6055 (let A (shen.newpv B6052) (shen.gc B6052 (is! V6056 (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B6052 L6053 Key6054 C6055)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> do (lambda V6061 (lambda B6057 (lambda L6058 (lambda Key6059 (lambda C6060 (let A (shen.newpv B6057) (shen.gc B6057 (let B (shen.newpv B6057) (shen.gc B6057 (is! V6061 (cons A (cons --> (cons (cons B (cons --> (cons B ()))) ()))) B6057 L6058 Key6059 C6060)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> (lambda V6066 (lambda B6062 (lambda L6063 (lambda Key6064 (lambda C6065 (let A (shen.newpv B6062) (shen.gc B6062 (let B (shen.newpv B6062) (shen.gc B6062 (is! V6066 (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons (cons list (cons B ())) ()))) ()))) B6062 L6063 Key6064 C6065)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> (lambda V6071 (lambda B6067 (lambda L6068 (lambda Key6069 (lambda C6070 (let B (shen.newpv B6067) (shen.gc B6067 (let A (shen.newpv B6067) (shen.gc B6067 (is! V6071 (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons B ())) (cons (cons list (cons A ())) ()))) ()))) B6067 L6068 Key6069 C6070)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> (lambda V6076 (lambda B6072 (lambda L6073 (lambda Key6074 (lambda C6075 (let A (shen.newpv B6072) (shen.gc B6072 (let B (shen.newpv B6072) (shen.gc B6072 (is! V6076 (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons (cons list (cons B ())) ()))) ()))) B6072 L6073 Key6074 C6075)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.parse-failure? (lambda V6081 (lambda B6077 (lambda L6078 (lambda Key6079 (lambda C6080 (let A (shen.newpv B6077) (shen.gc B6077 (let B (shen.newpv B6077) (shen.gc B6077 (is! V6081 (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons boolean ()))) B6077 L6078 Key6079 C6080)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.parse-failure (lambda V6086 (lambda B6082 (lambda L6083 (lambda Key6084 (lambda C6085 (let A (shen.newpv B6082) (shen.gc B6082 (let B (shen.newpv B6082) (shen.gc B6082 (is! V6086 (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ())) B6082 L6083 Key6084 C6085)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.<-out (lambda V6091 (lambda B6087 (lambda L6088 (lambda Key6089 (lambda C6090 (let A (shen.newpv B6087) (shen.gc B6087 (let B (shen.newpv B6087) (shen.gc B6087 (is! V6091 (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons B ()))) B6087 L6088 Key6089 C6090)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.in-> (lambda V6096 (lambda B6092 (lambda L6093 (lambda Key6094 (lambda C6095 (let B (shen.newpv B6092) (shen.gc B6092 (let A (shen.newpv B6092) (shen.gc B6092 (is! V6096 (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons (cons list (cons A ())) ()))) B6092 L6093 Key6094 C6095)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.comb (lambda V6101 (lambda B6097 (lambda L6098 (lambda Key6099 (lambda C6100 (let A (shen.newpv B6097) (shen.gc B6097 (let B (shen.newpv B6097) (shen.gc B6097 (is! V6101 (cons (cons list (cons A ())) (cons --> (cons (cons B (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ()))) ()))) B6097 L6098 Key6099 C6100)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> element? (lambda V6106 (lambda B6102 (lambda L6103 (lambda Key6104 (lambda C6105 (let A (shen.newpv B6102) (shen.gc B6102 (is! V6106 (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons boolean ()))) ()))) B6102 L6103 Key6104 C6105)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> empty? (lambda V6111 (lambda B6107 (lambda L6108 (lambda Key6109 (lambda C6110 (let A (shen.newpv B6107) (shen.gc B6107 (is! V6111 (cons A (cons --> (cons boolean ()))) B6107 L6108 Key6109 C6110)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> enable-type-theory (lambda V6116 (lambda B6112 (lambda L6113 (lambda Key6114 (lambda C6115 (is! V6116 (cons symbol (cons --> (cons boolean ()))) B6112 L6113 Key6114 C6115)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> external (lambda V6121 (lambda B6117 (lambda L6118 (lambda Key6119 (lambda C6120 (is! V6121 (cons symbol (cons --> (cons (cons list (cons symbol ())) ()))) B6117 L6118 Key6119 C6120)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> error-to-string (lambda V6126 (lambda B6122 (lambda L6123 (lambda Key6124 (lambda C6125 (is! V6126 (cons exception (cons --> (cons string ()))) B6122 L6123 Key6124 C6125)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> explode (lambda V6131 (lambda B6127 (lambda L6128 (lambda Key6129 (lambda C6130 (let A (shen.newpv B6127) (shen.gc B6127 (is! V6131 (cons A (cons --> (cons (cons list (cons string ())) ()))) B6127 L6128 Key6129 C6130)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> factorise (lambda V6136 (lambda B6132 (lambda L6133 (lambda Key6134 (lambda C6135 (is! V6136 (cons symbol (cons --> (cons symbol ()))) B6132 L6133 Key6134 C6135)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> factorise? (lambda V6141 (lambda B6137 (lambda L6138 (lambda Key6139 (lambda C6140 (is! V6141 (cons --> (cons boolean ())) B6137 L6138 Key6139 C6140)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> fail (lambda V6146 (lambda B6142 (lambda L6143 (lambda Key6144 (lambda C6145 (is! V6146 (cons --> (cons symbol ())) B6142 L6143 Key6144 C6145)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> fix (lambda V6151 (lambda B6147 (lambda L6148 (lambda Key6149 (lambda C6150 (let A (shen.newpv B6147) (shen.gc B6147 (is! V6151 (cons (cons A (cons --> (cons A ()))) (cons --> (cons (cons A (cons --> (cons A ()))) ()))) B6147 L6148 Key6149 C6150)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> freeze (lambda V6156 (lambda B6152 (lambda L6153 (lambda Key6154 (lambda C6155 (let A (shen.newpv B6152) (shen.gc B6152 (is! V6156 (cons A (cons --> (cons (cons lazy (cons A ())) ()))) B6152 L6153 Key6154 C6155)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> fst (lambda V6161 (lambda B6157 (lambda L6158 (lambda Key6159 (lambda C6160 (let B (shen.newpv B6157) (shen.gc B6157 (let A (shen.newpv B6157) (shen.gc B6157 (is! V6161 (cons (cons A (cons * (cons B ()))) (cons --> (cons A ()))) B6157 L6158 Key6159 C6160)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> gensym (lambda V6166 (lambda B6162 (lambda L6163 (lambda Key6164 (lambda C6165 (is! V6166 (cons symbol (cons --> (cons symbol ()))) B6162 L6163 Key6164 C6165)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.hds=? (lambda V6171 (lambda B6167 (lambda L6168 (lambda Key6169 (lambda C6170 (let A (shen.newpv B6167) (shen.gc B6167 (is! V6171 (cons (cons list (cons A ())) (cons --> (cons (cons A (cons --> (cons boolean ()))) ()))) B6167 L6168 Key6169 C6170)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> hush (lambda V6176 (lambda B6172 (lambda L6173 (lambda Key6174 (lambda C6175 (is! V6176 (cons symbol (cons --> (cons boolean ()))) B6172 L6173 Key6174 C6175)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> hush? (lambda V6181 (lambda B6177 (lambda L6178 (lambda Key6179 (lambda C6180 (is! V6181 (cons --> (cons boolean ())) B6177 L6178 Key6179 C6180)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> <-vector (lambda V6186 (lambda B6182 (lambda L6183 (lambda Key6184 (lambda C6185 (let A (shen.newpv B6182) (shen.gc B6182 (is! V6186 (cons (cons vector (cons A ())) (cons --> (cons (cons number (cons --> (cons A ()))) ()))) B6182 L6183 Key6184 C6185)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> vector-> (lambda V6191 (lambda B6187 (lambda L6188 (lambda Key6189 (lambda C6190 (let A (shen.newpv B6187) (shen.gc B6187 (is! V6191 (cons (cons vector (cons A ())) (cons --> (cons (cons number (cons --> (cons (cons A (cons --> (cons (cons vector (cons A ())) ()))) ()))) ()))) B6187 L6188 Key6189 C6190)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> vector (lambda V6196 (lambda B6192 (lambda L6193 (lambda Key6194 (lambda C6195 (let A (shen.newpv B6192) (shen.gc B6192 (is! V6196 (cons number (cons --> (cons (cons vector (cons A ())) ()))) B6192 L6193 Key6194 C6195)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> get-time (lambda V6201 (lambda B6197 (lambda L6198 (lambda Key6199 (lambda C6200 (is! V6201 (cons symbol (cons --> (cons number ()))) B6197 L6198 Key6199 C6200)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> hash (lambda V6206 (lambda B6202 (lambda L6203 (lambda Key6204 (lambda C6205 (let A (shen.newpv B6202) (shen.gc B6202 (is! V6206 (cons A (cons --> (cons (cons number (cons --> (cons number ()))) ()))) B6202 L6203 Key6204 C6205)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> head (lambda V6211 (lambda B6207 (lambda L6208 (lambda Key6209 (lambda C6210 (let A (shen.newpv B6207) (shen.gc B6207 (is! V6211 (cons (cons list (cons A ())) (cons --> (cons A ()))) B6207 L6208 Key6209 C6210)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> hdv (lambda V6216 (lambda B6212 (lambda L6213 (lambda Key6214 (lambda C6215 (let A (shen.newpv B6212) (shen.gc B6212 (is! V6216 (cons (cons vector (cons A ())) (cons --> (cons A ()))) B6212 L6213 Key6214 C6215)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> hdstr (lambda V6221 (lambda B6217 (lambda L6218 (lambda Key6219 (lambda C6220 (is! V6221 (cons string (cons --> (cons string ()))) B6217 L6218 Key6219 C6220)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> if (lambda V6226 (lambda B6222 (lambda L6223 (lambda Key6224 (lambda C6225 (let A (shen.newpv B6222) (shen.gc B6222 (is! V6226 (cons boolean (cons --> (cons (cons A (cons --> (cons (cons A (cons --> (cons A ()))) ()))) ()))) B6222 L6223 Key6224 C6225)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> in-package (lambda V6231 (lambda B6227 (lambda L6228 (lambda Key6229 (lambda C6230 (is! V6231 (cons symbol (cons --> (cons symbol ()))) B6227 L6228 Key6229 C6230)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> it (lambda V6236 (lambda B6232 (lambda L6233 (lambda Key6234 (lambda C6235 (is! V6236 (cons --> (cons string ())) B6232 L6233 Key6234 C6235)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> implementation (lambda V6241 (lambda B6237 (lambda L6238 (lambda Key6239 (lambda C6240 (is! V6241 (cons --> (cons string ())) B6237 L6238 Key6239 C6240)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> include (lambda V6246 (lambda B6242 (lambda L6243 (lambda Key6244 (lambda C6245 (is! V6246 (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ()))) B6242 L6243 Key6244 C6245)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> include-all-but (lambda V6251 (lambda B6247 (lambda L6248 (lambda Key6249 (lambda C6250 (is! V6251 (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ()))) B6247 L6248 Key6249 C6250)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> included (lambda V6256 (lambda B6252 (lambda L6253 (lambda Key6254 (lambda C6255 (is! V6256 (cons --> (cons (cons list (cons symbol ())) ())) B6252 L6253 Key6254 C6255)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> inferences (lambda V6261 (lambda B6257 (lambda L6258 (lambda Key6259 (lambda C6260 (is! V6261 (cons --> (cons number ())) B6257 L6258 Key6259 C6260)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.insert (lambda V6266 (lambda B6262 (lambda L6263 (lambda Key6264 (lambda C6265 (let A (shen.newpv B6262) (shen.gc B6262 (is! V6266 (cons A (cons --> (cons (cons string (cons --> (cons string ()))) ()))) B6262 L6263 Key6264 C6265)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> integer? (lambda V6271 (lambda B6267 (lambda L6268 (lambda Key6269 (lambda C6270 (let A (shen.newpv B6267) (shen.gc B6267 (is! V6271 (cons A (cons --> (cons boolean ()))) B6267 L6268 Key6269 C6270)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> internal (lambda V6276 (lambda B6272 (lambda L6273 (lambda Key6274 (lambda C6275 (is! V6276 (cons symbol (cons --> (cons (cons list (cons symbol ())) ()))) B6272 L6273 Key6274 C6275)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> intersection (lambda V6281 (lambda B6277 (lambda L6278 (lambda Key6279 (lambda C6280 (let A (shen.newpv B6277) (shen.gc B6277 (is! V6281 (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B6277 L6278 Key6279 C6280)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> language (lambda V6286 (lambda B6282 (lambda L6283 (lambda Key6284 (lambda C6285 (is! V6286 (cons --> (cons string ())) B6282 L6283 Key6284 C6285)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> length (lambda V6291 (lambda B6287 (lambda L6288 (lambda Key6289 (lambda C6290 (let A (shen.newpv B6287) (shen.gc B6287 (is! V6291 (cons (cons list (cons A ())) (cons --> (cons number ()))) B6287 L6288 Key6289 C6290)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> limit (lambda V6296 (lambda B6292 (lambda L6293 (lambda Key6294 (lambda C6295 (let A (shen.newpv B6292) (shen.gc B6292 (is! V6296 (cons (cons vector (cons A ())) (cons --> (cons number ()))) B6292 L6293 Key6294 C6295)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> lineread (lambda V6301 (lambda B6297 (lambda L6298 (lambda Key6299 (lambda C6300 (is! V6301 (cons (cons stream (cons in ())) (cons --> (cons (cons list (cons unit ())) ()))) B6297 L6298 Key6299 C6300)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> load (lambda V6306 (lambda B6302 (lambda L6303 (lambda Key6304 (lambda C6305 (is! V6306 (cons string (cons --> (cons symbol ()))) B6302 L6303 Key6304 C6305)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> map (lambda V6311 (lambda B6307 (lambda L6308 (lambda Key6309 (lambda C6310 (let A (shen.newpv B6307) (shen.gc B6307 (let B (shen.newpv B6307) (shen.gc B6307 (is! V6311 (cons (cons A (cons --> (cons B ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons B ())) ()))) ()))) B6307 L6308 Key6309 C6310)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> mapcan (lambda V6316 (lambda B6312 (lambda L6313 (lambda Key6314 (lambda C6315 (let A (shen.newpv B6312) (shen.gc B6312 (let B (shen.newpv B6312) (shen.gc B6312 (is! V6316 (cons (cons A (cons --> (cons (cons list (cons B ())) ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons B ())) ()))) ()))) B6312 L6313 Key6314 C6315)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> maxinferences (lambda V6321 (lambda B6317 (lambda L6318 (lambda Key6319 (lambda C6320 (is! V6321 (cons number (cons --> (cons number ()))) B6317 L6318 Key6319 C6320)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> n->string (lambda V6326 (lambda B6322 (lambda L6323 (lambda Key6324 (lambda C6325 (is! V6326 (cons number (cons --> (cons string ()))) B6322 L6323 Key6324 C6325)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> nl (lambda V6331 (lambda B6327 (lambda L6328 (lambda Key6329 (lambda C6330 (is! V6331 (cons number (cons --> (cons number ()))) B6327 L6328 Key6329 C6330)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> not (lambda V6336 (lambda B6332 (lambda L6333 (lambda Key6334 (lambda C6335 (is! V6336 (cons boolean (cons --> (cons boolean ()))) B6332 L6333 Key6334 C6335)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> nth (lambda V6341 (lambda B6337 (lambda L6338 (lambda Key6339 (lambda C6340 (let A (shen.newpv B6337) (shen.gc B6337 (is! V6341 (cons number (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons A ()))) ()))) B6337 L6338 Key6339 C6340)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> number? (lambda V6346 (lambda B6342 (lambda L6343 (lambda Key6344 (lambda C6345 (let A (shen.newpv B6342) (shen.gc B6342 (is! V6346 (cons A (cons --> (cons boolean ()))) B6342 L6343 Key6344 C6345)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> occurrences (lambda V6351 (lambda B6347 (lambda L6348 (lambda Key6349 (lambda C6350 (let A (shen.newpv B6347) (shen.gc B6347 (let B (shen.newpv B6347) (shen.gc B6347 (is! V6351 (cons A (cons --> (cons (cons B (cons --> (cons number ()))) ()))) B6347 L6348 Key6349 C6350)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> occurs-check (lambda V6356 (lambda B6352 (lambda L6353 (lambda Key6354 (lambda C6355 (is! V6356 (cons symbol (cons --> (cons boolean ()))) B6352 L6353 Key6354 C6355)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> occurs? (lambda V6361 (lambda B6357 (lambda L6358 (lambda Key6359 (lambda C6360 (is! V6361 (cons --> (cons boolean ())) B6357 L6358 Key6359 C6360)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> optimise (lambda V6366 (lambda B6362 (lambda L6363 (lambda Key6364 (lambda C6365 (is! V6366 (cons symbol (cons --> (cons boolean ()))) B6362 L6363 Key6364 C6365)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> optimise? (lambda V6371 (lambda B6367 (lambda L6368 (lambda Key6369 (lambda C6370 (is! V6371 (cons --> (cons boolean ())) B6367 L6368 Key6369 C6370)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> or (lambda V6376 (lambda B6372 (lambda L6373 (lambda Key6374 (lambda C6375 (is! V6376 (cons boolean (cons --> (cons (cons boolean (cons --> (cons boolean ()))) ()))) B6372 L6373 Key6374 C6375)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> os (lambda V6381 (lambda B6377 (lambda L6378 (lambda Key6379 (lambda C6380 (is! V6381 (cons --> (cons string ())) B6377 L6378 Key6379 C6380)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> package? (lambda V6386 (lambda B6382 (lambda L6383 (lambda Key6384 (lambda C6385 (is! V6386 (cons symbol (cons --> (cons boolean ()))) B6382 L6383 Key6384 C6385)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> port (lambda V6391 (lambda B6387 (lambda L6388 (lambda Key6389 (lambda C6390 (is! V6391 (cons --> (cons string ())) B6387 L6388 Key6389 C6390)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> porters (lambda V6396 (lambda B6392 (lambda L6393 (lambda Key6394 (lambda C6395 (is! V6396 (cons --> (cons string ())) B6392 L6393 Key6394 C6395)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> pos (lambda V6401 (lambda B6397 (lambda L6398 (lambda Key6399 (lambda C6400 (is! V6401 (cons string (cons --> (cons (cons number (cons --> (cons string ()))) ()))) B6397 L6398 Key6399 C6400)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> pr (lambda V6406 (lambda B6402 (lambda L6403 (lambda Key6404 (lambda C6405 (is! V6406 (cons string (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons string ()))) ()))) B6402 L6403 Key6404 C6405)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> print (lambda V6411 (lambda B6407 (lambda L6408 (lambda Key6409 (lambda C6410 (let A (shen.newpv B6407) (shen.gc B6407 (is! V6411 (cons A (cons --> (cons A ()))) B6407 L6408 Key6409 C6410)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> profile (lambda V6416 (lambda B6412 (lambda L6413 (lambda Key6414 (lambda C6415 (is! V6416 (cons symbol (cons --> (cons symbol ()))) B6412 L6413 Key6414 C6415)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> preclude (lambda V6421 (lambda B6417 (lambda L6418 (lambda Key6419 (lambda C6420 (is! V6421 (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ()))) B6417 L6418 Key6419 C6420)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.proc-nl (lambda V6426 (lambda B6422 (lambda L6423 (lambda Key6424 (lambda C6425 (is! V6426 (cons string (cons --> (cons string ()))) B6422 L6423 Key6424 C6425)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> profile-results (lambda V6431 (lambda B6427 (lambda L6428 (lambda Key6429 (lambda C6430 (is! V6431 (cons symbol (cons --> (cons (cons symbol (cons * (cons number ()))) ()))) B6427 L6428 Key6429 C6430)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> protect (lambda V6436 (lambda B6432 (lambda L6433 (lambda Key6434 (lambda C6435 (let A (shen.newpv B6432) (shen.gc B6432 (is! V6436 (cons A (cons --> (cons A ()))) B6432 L6433 Key6434 C6435)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> preclude-all-but (lambda V6441 (lambda B6437 (lambda L6438 (lambda Key6439 (lambda C6440 (is! V6441 (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ()))) B6437 L6438 Key6439 C6440)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.prhush (lambda V6446 (lambda B6442 (lambda L6443 (lambda Key6444 (lambda C6445 (is! V6446 (cons string (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons string ()))) ()))) B6442 L6443 Key6444 C6445)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> prolog-memory (lambda V6451 (lambda B6447 (lambda L6448 (lambda Key6449 (lambda C6450 (is! V6451 (cons number (cons --> (cons number ()))) B6447 L6448 Key6449 C6450)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> ps (lambda V6456 (lambda B6452 (lambda L6453 (lambda Key6454 (lambda C6455 (is! V6456 (cons symbol (cons --> (cons (cons list (cons unit ())) ()))) B6452 L6453 Key6454 C6455)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read (lambda V6461 (lambda B6457 (lambda L6458 (lambda Key6459 (lambda C6460 (is! V6461 (cons (cons stream (cons in ())) (cons --> (cons unit ()))) B6457 L6458 Key6459 C6460)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-byte (lambda V6466 (lambda B6462 (lambda L6463 (lambda Key6464 (lambda C6465 (is! V6466 (cons (cons stream (cons in ())) (cons --> (cons number ()))) B6462 L6463 Key6464 C6465)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-file-as-bytelist (lambda V6471 (lambda B6467 (lambda L6468 (lambda Key6469 (lambda C6470 (is! V6471 (cons string (cons --> (cons (cons list (cons number ())) ()))) B6467 L6468 Key6469 C6470)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-file-as-string (lambda V6476 (lambda B6472 (lambda L6473 (lambda Key6474 (lambda C6475 (is! V6476 (cons string (cons --> (cons string ()))) B6472 L6473 Key6474 C6475)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-file (lambda V6481 (lambda B6477 (lambda L6478 (lambda Key6479 (lambda C6480 (is! V6481 (cons string (cons --> (cons (cons list (cons unit ())) ()))) B6477 L6478 Key6479 C6480)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-from-string (lambda V6486 (lambda B6482 (lambda L6483 (lambda Key6484 (lambda C6485 (is! V6486 (cons string (cons --> (cons (cons list (cons unit ())) ()))) B6482 L6483 Key6484 C6485)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> read-from-string-unprocessed (lambda V6491 (lambda B6487 (lambda L6488 (lambda Key6489 (lambda C6490 (is! V6491 (cons string (cons --> (cons (cons list (cons unit ())) ()))) B6487 L6488 Key6489 C6490)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> release (lambda V6496 (lambda B6492 (lambda L6493 (lambda Key6494 (lambda C6495 (is! V6496 (cons --> (cons string ())) B6492 L6493 Key6494 C6495)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> remove (lambda V6501 (lambda B6497 (lambda L6498 (lambda Key6499 (lambda C6500 (let A (shen.newpv B6497) (shen.gc B6497 (is! V6501 (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B6497 L6498 Key6499 C6500)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> reverse (lambda V6506 (lambda B6502 (lambda L6503 (lambda Key6504 (lambda C6505 (let A (shen.newpv B6502) (shen.gc B6502 (is! V6506 (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) B6502 L6503 Key6504 C6505)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> simple-error (lambda V6511 (lambda B6507 (lambda L6508 (lambda Key6509 (lambda C6510 (let A (shen.newpv B6507) (shen.gc B6507 (is! V6511 (cons string (cons --> (cons A ()))) B6507 L6508 Key6509 C6510)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> snd (lambda V6516 (lambda B6512 (lambda L6513 (lambda Key6514 (lambda C6515 (let A (shen.newpv B6512) (shen.gc B6512 (let B (shen.newpv B6512) (shen.gc B6512 (is! V6516 (cons (cons A (cons * (cons B ()))) (cons --> (cons B ()))) B6512 L6513 Key6514 C6515)))))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> specialise (lambda V6521 (lambda B6517 (lambda L6518 (lambda Key6519 (lambda C6520 (is! V6521 (cons symbol (cons --> (cons (cons number (cons --> (cons symbol ()))) ()))) B6517 L6518 Key6519 C6520)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> spy (lambda V6526 (lambda B6522 (lambda L6523 (lambda Key6524 (lambda C6525 (is! V6526 (cons symbol (cons --> (cons boolean ()))) B6522 L6523 Key6524 C6525)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.spy? (lambda V6531 (lambda B6527 (lambda L6528 (lambda Key6529 (lambda C6530 (is! V6531 (cons --> (cons boolean ())) B6527 L6528 Key6529 C6530)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> step (lambda V6536 (lambda B6532 (lambda L6533 (lambda Key6534 (lambda C6535 (is! V6536 (cons symbol (cons --> (cons boolean ()))) B6532 L6533 Key6534 C6535)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> shen.step? (lambda V6541 (lambda B6537 (lambda L6538 (lambda Key6539 (lambda C6540 (is! V6541 (cons --> (cons boolean ())) B6537 L6538 Key6539 C6540)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> stinput (lambda V6546 (lambda B6542 (lambda L6543 (lambda Key6544 (lambda C6545 (is! V6546 (cons --> (cons (cons stream (cons in ())) ())) B6542 L6543 Key6544 C6545)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> sterror (lambda V6551 (lambda B6547 (lambda L6548 (lambda Key6549 (lambda C6550 (is! V6551 (cons --> (cons (cons stream (cons out ())) ())) B6547 L6548 Key6549 C6550)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> stoutput (lambda V6556 (lambda B6552 (lambda L6553 (lambda Key6554 (lambda C6555 (is! V6556 (cons --> (cons (cons stream (cons out ())) ())) B6552 L6553 Key6554 C6555)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> string? (lambda V6561 (lambda B6557 (lambda L6558 (lambda Key6559 (lambda C6560 (let A (shen.newpv B6557) (shen.gc B6557 (is! V6561 (cons A (cons --> (cons boolean ()))) B6557 L6558 Key6559 C6560)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> str (lambda V6566 (lambda B6562 (lambda L6563 (lambda Key6564 (lambda C6565 (let A (shen.newpv B6562) (shen.gc B6562 (is! V6566 (cons A (cons --> (cons string ()))) B6562 L6563 Key6564 C6565)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> string->n (lambda V6571 (lambda B6567 (lambda L6568 (lambda Key6569 (lambda C6570 (is! V6571 (cons string (cons --> (cons number ()))) B6567 L6568 Key6569 C6570)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> string->symbol (lambda V6576 (lambda B6572 (lambda L6573 (lambda Key6574 (lambda C6575 (is! V6576 (cons string (cons --> (cons symbol ()))) B6572 L6573 Key6574 C6575)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> sum (lambda V6581 (lambda B6577 (lambda L6578 (lambda Key6579 (lambda C6580 (is! V6581 (cons (cons list (cons number ())) (cons --> (cons number ()))) B6577 L6578 Key6579 C6580)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> symbol? (lambda V6586 (lambda B6582 (lambda L6583 (lambda Key6584 (lambda C6585 (let A (shen.newpv B6582) (shen.gc B6582 (is! V6586 (cons A (cons --> (cons boolean ()))) B6582 L6583 Key6584 C6585)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> systemf (lambda V6591 (lambda B6587 (lambda L6588 (lambda Key6589 (lambda C6590 (is! V6591 (cons symbol (cons --> (cons symbol ()))) B6587 L6588 Key6589 C6590)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> system-S? (lambda V6596 (lambda B6592 (lambda L6593 (lambda Key6594 (lambda C6595 (is! V6596 (cons --> (cons boolean ())) B6592 L6593 Key6594 C6595)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tail (lambda V6601 (lambda B6597 (lambda L6598 (lambda Key6599 (lambda C6600 (let A (shen.newpv B6597) (shen.gc B6597 (is! V6601 (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) B6597 L6598 Key6599 C6600)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tlstr (lambda V6606 (lambda B6602 (lambda L6603 (lambda Key6604 (lambda C6605 (is! V6606 (cons string (cons --> (cons string ()))) B6602 L6603 Key6604 C6605)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tlv (lambda V6611 (lambda B6607 (lambda L6608 (lambda Key6609 (lambda C6610 (let A (shen.newpv B6607) (shen.gc B6607 (is! V6611 (cons (cons vector (cons A ())) (cons --> (cons (cons vector (cons A ())) ()))) B6607 L6608 Key6609 C6610)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tc (lambda V6616 (lambda B6612 (lambda L6613 (lambda Key6614 (lambda C6615 (is! V6616 (cons symbol (cons --> (cons boolean ()))) B6612 L6613 Key6614 C6615)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tc? (lambda V6621 (lambda B6617 (lambda L6618 (lambda Key6619 (lambda C6620 (is! V6621 (cons --> (cons boolean ())) B6617 L6618 Key6619 C6620)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> thaw (lambda V6626 (lambda B6622 (lambda L6623 (lambda Key6624 (lambda C6625 (let A (shen.newpv B6622) (shen.gc B6622 (is! V6626 (cons (cons lazy (cons A ())) (cons --> (cons A ()))) B6622 L6623 Key6624 C6625)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> track (lambda V6631 (lambda B6627 (lambda L6628 (lambda Key6629 (lambda C6630 (is! V6631 (cons symbol (cons --> (cons symbol ()))) B6627 L6628 Key6629 C6630)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tracked (lambda V6636 (lambda B6632 (lambda L6633 (lambda Key6634 (lambda C6635 (is! V6636 (cons --> (cons (cons list (cons symbol ())) ())) B6632 L6633 Key6634 C6635)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> trap-error (lambda V6641 (lambda B6637 (lambda L6638 (lambda Key6639 (lambda C6640 (let A (shen.newpv B6637) (shen.gc B6637 (is! V6641 (cons A (cons --> (cons (cons (cons exception (cons --> (cons A ()))) (cons --> (cons A ()))) ()))) B6637 L6638 Key6639 C6640)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> tuple? (lambda V6646 (lambda B6642 (lambda L6643 (lambda Key6644 (lambda C6645 (let A (shen.newpv B6642) (shen.gc B6642 (is! V6646 (cons A (cons --> (cons boolean ()))) B6642 L6643 Key6644 C6645)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> unabsolute (lambda V6651 (lambda B6647 (lambda L6648 (lambda Key6649 (lambda C6650 (is! V6651 (cons string (cons --> (cons (cons list (cons string ())) ()))) B6647 L6648 Key6649 C6650)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> undefmacro (lambda V6656 (lambda B6652 (lambda L6653 (lambda Key6654 (lambda C6655 (is! V6656 (cons symbol (cons --> (cons symbol ()))) B6652 L6653 Key6654 C6655)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> union (lambda V6661 (lambda B6657 (lambda L6658 (lambda Key6659 (lambda C6660 (let A (shen.newpv B6657) (shen.gc B6657 (is! V6661 (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ()))) B6657 L6658 Key6659 C6660)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> unprofile (lambda V6666 (lambda B6662 (lambda L6663 (lambda Key6664 (lambda C6665 (is! V6666 (cons symbol (cons --> (cons symbol ()))) B6662 L6663 Key6664 C6665)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> untrack (lambda V6671 (lambda B6667 (lambda L6668 (lambda Key6669 (lambda C6670 (is! V6671 (cons symbol (cons --> (cons symbol ()))) B6667 L6668 Key6669 C6670)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> userdefs (lambda V6676 (lambda B6672 (lambda L6673 (lambda Key6674 (lambda C6675 (is! V6676 (cons --> (cons (cons list (cons symbol ())) ())) B6672 L6673 Key6674 C6675)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> variable? (lambda V6681 (lambda B6677 (lambda L6678 (lambda Key6679 (lambda C6680 (let A (shen.newpv B6677) (shen.gc B6677 (is! V6681 (cons A (cons --> (cons boolean ()))) B6677 L6678 Key6679 C6680)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> vector? (lambda V6686 (lambda B6682 (lambda L6683 (lambda Key6684 (lambda C6685 (let A (shen.newpv B6682) (shen.gc B6682 (is! V6686 (cons A (cons --> (cons boolean ()))) B6682 L6683 Key6684 C6685)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> version (lambda V6691 (lambda B6687 (lambda L6688 (lambda Key6689 (lambda C6690 (is! V6691 (cons --> (cons string ())) B6687 L6688 Key6689 C6690)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> write-to-file (lambda V6696 (lambda B6692 (lambda L6693 (lambda Key6694 (lambda C6695 (let A (shen.newpv B6692) (shen.gc B6692 (is! V6696 (cons string (cons --> (cons (cons A (cons --> (cons A ()))) ()))) B6692 L6693 Key6694 C6695)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> write-byte (lambda V6701 (lambda B6697 (lambda L6698 (lambda Key6699 (lambda C6700 (is! V6701 (cons number (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons number ()))) ()))) B6697 L6698 Key6699 C6700)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> y-or-n? (lambda V6706 (lambda B6702 (lambda L6703 (lambda Key6704 (lambda C6705 (is! V6706 (cons string (cons --> (cons boolean ()))) B6702 L6703 Key6704 C6705)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> > (lambda V6711 (lambda B6707 (lambda L6708 (lambda Key6709 (lambda C6710 (is! V6711 (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ()))) B6707 L6708 Key6709 C6710)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> < (lambda V6716 (lambda B6712 (lambda L6713 (lambda Key6714 (lambda C6715 (is! V6716 (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ()))) B6712 L6713 Key6714 C6715)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> >= (lambda V6721 (lambda B6717 (lambda L6718 (lambda Key6719 (lambda C6720 (is! V6721 (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ()))) B6717 L6718 Key6719 C6720)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> <= (lambda V6726 (lambda B6722 (lambda L6723 (lambda Key6724 (lambda C6725 (is! V6726 (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ()))) B6722 L6723 Key6724 C6725)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> = (lambda V6731 (lambda B6727 (lambda L6728 (lambda Key6729 (lambda C6730 (let A (shen.newpv B6727) (shen.gc B6727 (is! V6731 (cons A (cons --> (cons (cons A (cons --> (cons boolean ()))) ()))) B6727 L6728 Key6729 C6730)))))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> + (lambda V6736 (lambda B6732 (lambda L6733 (lambda Key6734 (lambda C6735 (is! V6736 (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ()))) B6732 L6733 Key6734 C6735)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> / (lambda V6741 (lambda B6737 (lambda L6738 (lambda Key6739 (lambda C6740 (is! V6741 (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ()))) B6737 L6738 Key6739 C6740)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> - (lambda V6746 (lambda B6742 (lambda L6743 (lambda Key6744 (lambda C6745 (is! V6746 (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ()))) B6742 L6743 Key6744 C6745)))))) (value shen.*sigf*))) (do (set shen.*sigf* (shen.assoc-> * (lambda V6751 (lambda B6747 (lambda L6748 (lambda Key6749 (lambda C6750 (is! V6751 (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ()))) B6747 L6748 Key6749 C6750)))))) (value shen.*sigf*))) (set shen.*sigf* (shen.assoc-> == (lambda V6756 (lambda B6752 (lambda L6753 (lambda Key6754 (lambda C6755 (let A (shen.newpv B6752) (shen.gc B6752 (let B (shen.newpv B6752) (shen.gc B6752 (is! V6756 (cons A (cons --> (cons (cons B (cons --> (cons boolean ()))) ()))) B6752 L6753 Key6754 C6755)))))))))) (value shen.*sigf*)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) - -(defun shen.initialise-lambda-forms () (do (shen.set-lambda-form-entry (cons shen.tuple (lambda Y1220 (shen.tuple Y1220)))) (do (shen.set-lambda-form-entry (cons shen.pvar (lambda Y1219 (shen.pvar Y1219)))) (do (shen.set-lambda-form-entry (cons shen.dictionary (lambda Y1218 (shen.dictionary Y1218)))) (do (shen.set-lambda-form-entry (cons shen.print-prolog-vector (lambda Y1217 (shen.print-prolog-vector Y1217)))) (do (shen.set-lambda-form-entry (cons shen.print-freshterm (lambda Y1216 (shen.print-freshterm Y1216)))) (do (shen.set-lambda-form-entry (cons shen.printF (lambda Y1215 (shen.printF Y1215)))) (do (shen.set-lambda-form-entry (cons absolute (lambda Y1214 (absolute Y1214)))) (do (shen.set-lambda-form-entry (cons absvector? (lambda Y1213 (absvector? Y1213)))) (do (shen.set-lambda-form-entry (cons absvector (lambda Y1212 (absvector Y1212)))) (do (shen.set-lambda-form-entry (cons address-> (lambda Y1209 (lambda Y1210 (lambda Y1211 (address-> Y1209 Y1210 Y1211)))))) (do (shen.set-lambda-form-entry (cons adjoin (lambda Y1207 (lambda Y1208 (adjoin Y1207 Y1208))))) (do (shen.set-lambda-form-entry (cons and (lambda Y1205 (lambda Y1206 (and Y1205 Y1206))))) (do (shen.set-lambda-form-entry (cons append (lambda Y1203 (lambda Y1204 (append Y1203 Y1204))))) (do (shen.set-lambda-form-entry (cons arity (lambda Y1202 (arity Y1202)))) (do (shen.set-lambda-form-entry (cons assoc (lambda Y1200 (lambda Y1201 (assoc Y1200 Y1201))))) (do (shen.set-lambda-form-entry (cons atom? (lambda Y1199 (atom? Y1199)))) (do (shen.set-lambda-form-entry (cons boolean? (lambda Y1198 (boolean? Y1198)))) (do (shen.set-lambda-form-entry (cons bootstrap (lambda Y1197 (bootstrap Y1197)))) (do (shen.set-lambda-form-entry (cons bound? (lambda Y1196 (bound? Y1196)))) (do (shen.set-lambda-form-entry (cons bind (lambda Y1190 (lambda Y1191 (lambda Y1192 (lambda Y1193 (lambda Y1194 (lambda Y1195 (bind Y1190 Y1191 Y1192 Y1193 Y1194 Y1195))))))))) (do (shen.set-lambda-form-entry (cons call (lambda Y1185 (lambda Y1186 (lambda Y1187 (lambda Y1188 (lambda Y1189 (call Y1185 Y1186 Y1187 Y1188 Y1189)))))))) (do (shen.set-lambda-form-entry (cons cd (lambda Y1184 (cd Y1184)))) (do (shen.set-lambda-form-entry (cons compile (lambda Y1182 (lambda Y1183 (compile Y1182 Y1183))))) (do (shen.set-lambda-form-entry (cons concat (lambda Y1180 (lambda Y1181 (concat Y1180 Y1181))))) (do (shen.set-lambda-form-entry (cons cons (lambda Y1178 (lambda Y1179 (cons Y1178 Y1179))))) (do (shen.set-lambda-form-entry (cons cons? (lambda Y1177 (cons? Y1177)))) (do (shen.set-lambda-form-entry (cons cn (lambda Y1175 (lambda Y1176 (cn Y1175 Y1176))))) (do (shen.set-lambda-form-entry (cons close (lambda Y1174 (close Y1174)))) (do (shen.set-lambda-form-entry (cons declare (lambda Y1172 (lambda Y1173 (declare Y1172 Y1173))))) (do (shen.set-lambda-form-entry (cons destroy (lambda Y1171 (destroy Y1171)))) (do (shen.set-lambda-form-entry (cons difference (lambda Y1169 (lambda Y1170 (difference Y1169 Y1170))))) (do (shen.set-lambda-form-entry (cons do (lambda Y1167 (lambda Y1168 (do Y1167 Y1168))))) (do (shen.set-lambda-form-entry (cons element? (lambda Y1165 (lambda Y1166 (element? Y1165 Y1166))))) (do (shen.set-lambda-form-entry (cons empty? (lambda Y1164 (empty? Y1164)))) (do (shen.set-lambda-form-entry (cons enable-type-theory (lambda Y1163 (enable-type-theory Y1163)))) (do (shen.set-lambda-form-entry (cons external (lambda Y1162 (external Y1162)))) (do (shen.set-lambda-form-entry (cons error-to-string (lambda Y1161 (error-to-string Y1161)))) (do (shen.set-lambda-form-entry (cons eval (lambda Y1160 (eval Y1160)))) (do (shen.set-lambda-form-entry (cons eval-kl (lambda Y1159 (eval-kl Y1159)))) (do (shen.set-lambda-form-entry (cons explode (lambda Y1158 (explode Y1158)))) (do (shen.set-lambda-form-entry (cons external (lambda Y1157 (external Y1157)))) (do (shen.set-lambda-form-entry (cons factorise (lambda Y1156 (factorise Y1156)))) (do (shen.set-lambda-form-entry (cons fail-if (lambda Y1154 (lambda Y1155 (fail-if Y1154 Y1155))))) (do (shen.set-lambda-form-entry (cons fix (lambda Y1152 (lambda Y1153 (fix Y1152 Y1153))))) (do (shen.set-lambda-form-entry (cons findall (lambda Y1145 (lambda Y1146 (lambda Y1147 (lambda Y1148 (lambda Y1149 (lambda Y1150 (lambda Y1151 (findall Y1145 Y1146 Y1147 Y1148 Y1149 Y1150 Y1151)))))))))) (do (shen.set-lambda-form-entry (cons fork (lambda Y1140 (lambda Y1141 (lambda Y1142 (lambda Y1143 (lambda Y1144 (fork Y1140 Y1141 Y1142 Y1143 Y1144)))))))) (do (shen.set-lambda-form-entry (cons freeze (lambda Y1139 (freeze Y1139)))) (do (shen.set-lambda-form-entry (cons fst (lambda Y1138 (fst Y1138)))) (do (shen.set-lambda-form-entry (cons fn (lambda Y1137 (fn Y1137)))) (do (shen.set-lambda-form-entry (cons function (lambda Y1136 (function Y1136)))) (do (shen.set-lambda-form-entry (cons gensym (lambda Y1135 (gensym Y1135)))) (do (shen.set-lambda-form-entry (cons get (lambda Y1132 (lambda Y1133 (lambda Y1134 (get Y1132 Y1133 Y1134)))))) (do (shen.set-lambda-form-entry (cons get-time (lambda Y1131 (get-time Y1131)))) (do (shen.set-lambda-form-entry (cons address-> (lambda Y1128 (lambda Y1129 (lambda Y1130 (address-> Y1128 Y1129 Y1130)))))) (do (shen.set-lambda-form-entry (cons <-address (lambda Y1126 (lambda Y1127 (<-address Y1126 Y1127))))) (do (shen.set-lambda-form-entry (cons <-vector (lambda Y1124 (lambda Y1125 (<-vector Y1124 Y1125))))) (do (shen.set-lambda-form-entry (cons > (lambda Y1122 (lambda Y1123 (> Y1122 Y1123))))) (do (shen.set-lambda-form-entry (cons >= (lambda Y1120 (lambda Y1121 (>= Y1120 Y1121))))) (do (shen.set-lambda-form-entry (cons = (lambda Y1118 (lambda Y1119 (= Y1118 Y1119))))) (do (shen.set-lambda-form-entry (cons hash (lambda Y1116 (lambda Y1117 (hash Y1116 Y1117))))) (do (shen.set-lambda-form-entry (cons hd (lambda Y1115 (hd Y1115)))) (do (shen.set-lambda-form-entry (cons hdv (lambda Y1114 (hdv Y1114)))) (do (shen.set-lambda-form-entry (cons hdstr (lambda Y1113 (hdstr Y1113)))) (do (shen.set-lambda-form-entry (cons head (lambda Y1112 (head Y1112)))) (do (shen.set-lambda-form-entry (cons hush (lambda Y1111 (hush Y1111)))) (do (shen.set-lambda-form-entry (cons if (lambda Y1108 (lambda Y1109 (lambda Y1110 (if Y1108 Y1109 Y1110)))))) (do (shen.set-lambda-form-entry (cons include (lambda Y1107 (include Y1107)))) (do (shen.set-lambda-form-entry (cons in-package (lambda Y1106 (in-package Y1106)))) (do (shen.set-lambda-form-entry (cons integer? (lambda Y1105 (integer? Y1105)))) (do (shen.set-lambda-form-entry (cons internal (lambda Y1104 (internal Y1104)))) (do (shen.set-lambda-form-entry (cons intern (lambda Y1103 (intern Y1103)))) (do (shen.set-lambda-form-entry (cons input (lambda Y1102 (input Y1102)))) (do (shen.set-lambda-form-entry (cons input+ (lambda Y1100 (lambda Y1101 (input+ Y1100 Y1101))))) (do (shen.set-lambda-form-entry (cons include-all-but (lambda Y1099 (include-all-but Y1099)))) (do (shen.set-lambda-form-entry (cons intersection (lambda Y1097 (lambda Y1098 (intersection Y1097 Y1098))))) (do (shen.set-lambda-form-entry (cons internal (lambda Y1096 (internal Y1096)))) (do (shen.set-lambda-form-entry (cons is (lambda Y1090 (lambda Y1091 (lambda Y1092 (lambda Y1093 (lambda Y1094 (lambda Y1095 (is Y1090 Y1091 Y1092 Y1093 Y1094 Y1095))))))))) (do (shen.set-lambda-form-entry (cons is! (lambda Y1084 (lambda Y1085 (lambda Y1086 (lambda Y1087 (lambda Y1088 (lambda Y1089 (is! Y1084 Y1085 Y1086 Y1087 Y1088 Y1089))))))))) (do (shen.set-lambda-form-entry (cons length (lambda Y1083 (length Y1083)))) (do (shen.set-lambda-form-entry (cons limit (lambda Y1082 (limit Y1082)))) (do (shen.set-lambda-form-entry (cons lineread (lambda Y1081 (lineread Y1081)))) (do (shen.set-lambda-form-entry (cons load (lambda Y1080 (load Y1080)))) (do (shen.set-lambda-form-entry (cons < (lambda Y1078 (lambda Y1079 (< Y1078 Y1079))))) (do (shen.set-lambda-form-entry (cons <= (lambda Y1076 (lambda Y1077 (<= Y1076 Y1077))))) (do (shen.set-lambda-form-entry (cons vector (lambda Y1075 (vector Y1075)))) (do (shen.set-lambda-form-entry (cons macroexpand (lambda Y1074 (macroexpand Y1074)))) (do (shen.set-lambda-form-entry (cons map (lambda Y1072 (lambda Y1073 (map Y1072 Y1073))))) (do (shen.set-lambda-form-entry (cons mapcan (lambda Y1070 (lambda Y1071 (mapcan Y1070 Y1071))))) (do (shen.set-lambda-form-entry (cons maxinferences (lambda Y1069 (maxinferences Y1069)))) (do (shen.set-lambda-form-entry (cons nl (lambda Y1068 (nl Y1068)))) (do (shen.set-lambda-form-entry (cons not (lambda Y1067 (not Y1067)))) (do (shen.set-lambda-form-entry (cons nth (lambda Y1065 (lambda Y1066 (nth Y1065 Y1066))))) (do (shen.set-lambda-form-entry (cons n->string (lambda Y1064 (n->string Y1064)))) (do (shen.set-lambda-form-entry (cons number? (lambda Y1063 (number? Y1063)))) (do (shen.set-lambda-form-entry (cons occurs-check (lambda Y1062 (occurs-check Y1062)))) (do (shen.set-lambda-form-entry (cons occurrences (lambda Y1060 (lambda Y1061 (occurrences Y1060 Y1061))))) (do (shen.set-lambda-form-entry (cons occurs-check (lambda Y1059 (occurs-check Y1059)))) (do (shen.set-lambda-form-entry (cons open (lambda Y1057 (lambda Y1058 (open Y1057 Y1058))))) (do (shen.set-lambda-form-entry (cons optimise (lambda Y1056 (optimise Y1056)))) (do (shen.set-lambda-form-entry (cons or (lambda Y1054 (lambda Y1055 (or Y1054 Y1055))))) (do (shen.set-lambda-form-entry (cons package? (lambda Y1053 (package? Y1053)))) (do (shen.set-lambda-form-entry (cons pos (lambda Y1051 (lambda Y1052 (pos Y1051 Y1052))))) (do (shen.set-lambda-form-entry (cons preclude-all-but (lambda Y1050 (preclude-all-but Y1050)))) (do (shen.set-lambda-form-entry (cons print (lambda Y1049 (print Y1049)))) (do (shen.set-lambda-form-entry (cons profile (lambda Y1048 (profile Y1048)))) (do (shen.set-lambda-form-entry (cons shen.print-prolog-vector (lambda Y1047 (shen.print-prolog-vector Y1047)))) (do (shen.set-lambda-form-entry (cons shen.print-freshterm (lambda Y1046 (shen.print-freshterm Y1046)))) (do (shen.set-lambda-form-entry (cons shen.printF (lambda Y1045 (shen.printF Y1045)))) (do (shen.set-lambda-form-entry (cons prolog-memory (lambda Y1044 (prolog-memory Y1044)))) (do (shen.set-lambda-form-entry (cons profile-results (lambda Y1043 (profile-results Y1043)))) (do (shen.set-lambda-form-entry (cons pr (lambda Y1041 (lambda Y1042 (pr Y1041 Y1042))))) (do (shen.set-lambda-form-entry (cons ps (lambda Y1040 (ps Y1040)))) (do (shen.set-lambda-form-entry (cons preclude (lambda Y1039 (preclude Y1039)))) (do (shen.set-lambda-form-entry (cons preclude-all-but (lambda Y1038 (preclude-all-but Y1038)))) (do (shen.set-lambda-form-entry (cons protect (lambda Y1037 (protect Y1037)))) (do (shen.set-lambda-form-entry (cons put (lambda Y1033 (lambda Y1034 (lambda Y1035 (lambda Y1036 (put Y1033 Y1034 Y1035 Y1036))))))) (do (shen.set-lambda-form-entry (cons read-file-as-string (lambda Y1032 (read-file-as-string Y1032)))) (do (shen.set-lambda-form-entry (cons read-file-as-bytelist (lambda Y1031 (read-file-as-bytelist Y1031)))) (do (shen.set-lambda-form-entry (cons read-file (lambda Y1030 (read-file Y1030)))) (do (shen.set-lambda-form-entry (cons read (lambda Y1029 (read Y1029)))) (do (shen.set-lambda-form-entry (cons read-byte (lambda Y1028 (read-byte Y1028)))) (do (shen.set-lambda-form-entry (cons read-from-string (lambda Y1027 (read-from-string Y1027)))) (do (shen.set-lambda-form-entry (cons read-from-string-unprocessed (lambda Y1026 (read-from-string-unprocessed Y1026)))) (do (shen.set-lambda-form-entry (cons shen.read-unit-string (lambda Y1025 (shen.read-unit-string Y1025)))) (do (shen.set-lambda-form-entry (cons remove (lambda Y1023 (lambda Y1024 (remove Y1023 Y1024))))) (do (shen.set-lambda-form-entry (cons reverse (lambda Y1022 (reverse Y1022)))) (do (shen.set-lambda-form-entry (cons set (lambda Y1020 (lambda Y1021 (set Y1020 Y1021))))) (do (shen.set-lambda-form-entry (cons simple-error (lambda Y1019 (simple-error Y1019)))) (do (shen.set-lambda-form-entry (cons snd (lambda Y1018 (snd Y1018)))) (do (shen.set-lambda-form-entry (cons specialise (lambda Y1016 (lambda Y1017 (specialise Y1016 Y1017))))) (do (shen.set-lambda-form-entry (cons spy (lambda Y1015 (spy Y1015)))) (do (shen.set-lambda-form-entry (cons step (lambda Y1014 (step Y1014)))) (do (shen.set-lambda-form-entry (cons str (lambda Y1013 (str Y1013)))) (do (shen.set-lambda-form-entry (cons string->n (lambda Y1012 (string->n Y1012)))) (do (shen.set-lambda-form-entry (cons string->symbol (lambda Y1011 (string->symbol Y1011)))) (do (shen.set-lambda-form-entry (cons string? (lambda Y1010 (string? Y1010)))) (do (shen.set-lambda-form-entry (cons subst (lambda Y1007 (lambda Y1008 (lambda Y1009 (subst Y1007 Y1008 Y1009)))))) (do (shen.set-lambda-form-entry (cons sum (lambda Y1006 (sum Y1006)))) (do (shen.set-lambda-form-entry (cons symbol? (lambda Y1005 (symbol? Y1005)))) (do (shen.set-lambda-form-entry (cons systemf (lambda Y1004 (systemf Y1004)))) (do (shen.set-lambda-form-entry (cons tail (lambda Y1003 (tail Y1003)))) (do (shen.set-lambda-form-entry (cons tl (lambda Y1002 (tl Y1002)))) (do (shen.set-lambda-form-entry (cons tc (lambda Y1001 (tc Y1001)))) (do (shen.set-lambda-form-entry (cons thaw (lambda Y1000 (thaw Y1000)))) (do (shen.set-lambda-form-entry (cons tlstr (lambda Y999 (tlstr Y999)))) (do (shen.set-lambda-form-entry (cons track (lambda Y998 (track Y998)))) (do (shen.set-lambda-form-entry (cons trap-error (lambda Y996 (lambda Y997 (trap-error Y996 Y997))))) (do (shen.set-lambda-form-entry (cons tuple? (lambda Y995 (tuple? Y995)))) (do (shen.set-lambda-form-entry (cons type (lambda Y993 (lambda Y994 (type Y993 Y994))))) (do (shen.set-lambda-form-entry (cons return (lambda Y988 (lambda Y989 (lambda Y990 (lambda Y991 (lambda Y992 (return Y988 Y989 Y990 Y991 Y992)))))))) (do (shen.set-lambda-form-entry (cons unabsolute (lambda Y987 (unabsolute Y987)))) (do (shen.set-lambda-form-entry (cons undefmacro (lambda Y986 (undefmacro Y986)))) (do (shen.set-lambda-form-entry (cons unput (lambda Y983 (lambda Y984 (lambda Y985 (unput Y983 Y984 Y985)))))) (do (shen.set-lambda-form-entry (cons unprofile (lambda Y982 (unprofile Y982)))) (do (shen.set-lambda-form-entry (cons union (lambda Y980 (lambda Y981 (union Y980 Y981))))) (do (shen.set-lambda-form-entry (cons untrack (lambda Y979 (untrack Y979)))) (do (shen.set-lambda-form-entry (cons undefmacro (lambda Y978 (undefmacro Y978)))) (do (shen.set-lambda-form-entry (cons update-lambda-table (lambda Y976 (lambda Y977 (update-lambda-table Y976 Y977))))) (do (shen.set-lambda-form-entry (cons vector (lambda Y975 (vector Y975)))) (do (shen.set-lambda-form-entry (cons vector? (lambda Y974 (vector? Y974)))) (do (shen.set-lambda-form-entry (cons vector-> (lambda Y971 (lambda Y972 (lambda Y973 (vector-> Y971 Y972 Y973)))))) (do (shen.set-lambda-form-entry (cons value (lambda Y970 (value Y970)))) (do (shen.set-lambda-form-entry (cons variable? (lambda Y969 (variable? Y969)))) (do (shen.set-lambda-form-entry (cons var? (lambda Y964 (lambda Y965 (lambda Y966 (lambda Y967 (lambda Y968 (var? Y964 Y965 Y966 Y967 Y968)))))))) (do (shen.set-lambda-form-entry (cons when (lambda Y959 (lambda Y960 (lambda Y961 (lambda Y962 (lambda Y963 (when Y959 Y960 Y961 Y962 Y963)))))))) (do (shen.set-lambda-form-entry (cons write-byte (lambda Y957 (lambda Y958 (write-byte Y957 Y958))))) (do (shen.set-lambda-form-entry (cons write-to-file (lambda Y955 (lambda Y956 (write-to-file Y955 Y956))))) (do (shen.set-lambda-form-entry (cons y-or-n? (lambda Y954 (y-or-n? Y954)))) (do (shen.set-lambda-form-entry (cons + (lambda Y952 (lambda Y953 (+ Y952 Y953))))) (do (shen.set-lambda-form-entry (cons * (lambda Y950 (lambda Y951 (* Y950 Y951))))) (do (shen.set-lambda-form-entry (cons / (lambda Y948 (lambda Y949 (/ Y948 Y949))))) (do (shen.set-lambda-form-entry (cons - (lambda Y946 (lambda Y947 (- Y946 Y947))))) (do (shen.set-lambda-form-entry (cons == (lambda Y944 (lambda Y945 (== Y944 Y945))))) (do (shen.set-lambda-form-entry (cons (lambda Y943 ( Y943)))) (do (shen.set-lambda-form-entry (cons (lambda Y942 ( Y942)))) (do (shen.set-lambda-form-entry (cons (lambda Y941 ( Y941)))) (do (shen.set-lambda-form-entry (cons @p (lambda Y939 (lambda Y940 (@p Y939 Y940))))) (do (shen.set-lambda-form-entry (cons @v (lambda Y937 (lambda Y938 (@v Y937 Y938))))) (shen.set-lambda-form-entry (cons @s (lambda Y935 (lambda Y936 (@s Y935 Y936)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) - -(defun shen.initialise () (do (shen.initialise-environment) (do (shen.initialise-lambda-forms) (shen.initialise-signedfuncs)))) - diff --git a/kernel/klambda/load.kl b/kernel/klambda/load.kl index b70d520..a359283 100644 --- a/kernel/klambda/load.kl +++ b/kernel/klambda/load.kl @@ -1,43 +1,43 @@ -(defun load (V1239) (let W1240 (value shen.*tc*) (let W1241 (let W1242 (get-time run) (let W1243 (shen.load-help W1240 (read-file V1239)) (let W1244 (get-time run) (let W1245 (- W1244 W1242) (let W1246 (pr (cn " -run time: " (cn (str W1245) " secs -")) (stoutput)) W1243))))) (let W1247 (if W1240 (pr (cn " +(defun load (V893) (let W894 (value shen.*tc*) (let W895 (let W896 (get-time run) (let W897 (shen.load-help W894 (read-file V893)) (let W898 (get-time run) (let W899 (- W898 W896) (let W900 (pr (cn " +run time: " (cn (str W899) " secs +")) (stoutput)) W897))))) (let W901 (if W894 (pr (cn " typechecked in " (shen.app (inferences) " inferences " shen.a)) (stoutput)) shen.skip) loaded)))) -(defun shen.load-help (V1250 V1251) (cond ((= false V1250) (shen.eval-and-print V1251)) (true (shen.check-eval-and-print V1251)))) +(defun shen.load-help (V904 V905) (cond ((= false V904) (shen.eval-and-print V905)) (true (shen.check-eval-and-print V905)))) -(defun shen.eval-and-print (V1252) (shen.for-each (lambda Z1253 (pr (shen.app (eval-kl (shen.shen->kl Z1253)) " -" shen.s) (stoutput))) V1252)) +(defun shen.eval-and-print (V906) (map (lambda Z907 (pr (shen.app (eval-kl (shen.shen->kl Z907)) " +" shen.s) (stoutput))) V906)) -(defun shen.check-eval-and-print (V1254) (let W1255 (mapcan (lambda Z1256 (shen.typetable Z1256)) V1254) (let W1257 (trap-error (shen.assumetypes W1255) (lambda Z1258 (shen.unwind-types Z1258 W1255))) (trap-error (shen.work-through V1254) (lambda Z1259 (shen.unwind-types Z1259 W1255)))))) +(defun shen.check-eval-and-print (V908) (let W909 (mapcan (lambda Z910 (shen.typetable Z910)) V908) (let W911 (trap-error (shen.assumetypes W909) (lambda Z912 (shen.unwind-types Z912 W909))) (trap-error (shen.work-through V908) (lambda Z913 (shen.unwind-types Z913 W909)))))) -(defun shen.typetable (V1264) (cond ((and (cons? V1264) (and (= define (hd V1264)) (and (cons? (tl V1264)) (and (cons? (tl (tl V1264))) (= { (hd (tl (tl V1264)))))))) (cons (hd (tl V1264)) (cons (shen.rectify-type (shen.type-F (hd (tl V1264)) (tl (tl (tl V1264))))) ()))) ((and (cons? V1264) (and (= define (hd V1264)) (cons? (tl V1264)))) (simple-error (cn "missing { in " (shen.app (hd (tl V1264)) " +(defun shen.typetable (V918) (cond ((and (cons? V918) (and (= define (hd V918)) (and (cons? (tl V918)) (and (cons? (tl (tl V918))) (= { (hd (tl (tl V918)))))))) (cons (hd (tl V918)) (cons (shen.rectify-type (shen.type-F (hd (tl V918)) (tl (tl (tl V918))))) ()))) ((and (cons? V918) (and (= define (hd V918)) (cons? (tl V918)))) (simple-error (cn "missing { in " (shen.app (hd (tl V918)) " " shen.a)))) (true ()))) -(defun shen.type-F (V1271 V1272) (cond ((and (cons? V1272) (= } (hd V1272))) ()) ((cons? V1272) (cons (hd V1272) (shen.type-F V1271 (tl V1272)))) (true (simple-error (cn "missing } in " (shen.app V1271 " +(defun shen.type-F (V925 V926) (cond ((and (cons? V926) (= } (hd V926))) ()) ((cons? V926) (cons (hd V926) (shen.type-F V925 (tl V926)))) (true (simple-error (cn "missing } in " (shen.app V925 " " shen.a)))))) -(defun shen.assumetypes (V1275) (cond ((= () V1275) ()) ((and (cons? V1275) (cons? (tl V1275))) (do (declare (hd V1275) (hd (tl V1275))) (shen.assumetypes (tl (tl V1275))))) (true (simple-error "implementation error in shen.assumetype")))) +(defun shen.assumetypes (V929) (cond ((= () V929) ()) ((and (cons? V929) (cons? (tl V929))) (do (declare (hd V929) (hd (tl V929))) (shen.assumetypes (tl (tl V929))))) (true (simple-error "implementation error in shen.assumetype")))) -(defun shen.unwind-types (V1280 V1281) (cond ((and (cons? V1281) (cons? (tl V1281))) (do (destroy (hd V1281)) (shen.unwind-types V1280 (tl (tl V1281))))) (true (simple-error (error-to-string V1280))))) +(defun shen.unwind-types (V934 V935) (cond ((and (cons? V935) (cons? (tl V935))) (do (destroy (hd V935)) (shen.unwind-types V934 (tl (tl V935))))) (true (simple-error (error-to-string V934))))) -(defun shen.work-through (V1284) (cond ((= () V1284) ()) ((and (cons? V1284) (and (cons? (tl V1284)) (and (cons? (tl (tl V1284))) (= (hd (tl V1284)) (intern ":"))))) (let W1285 (shen.typecheck (hd V1284) (hd (tl (tl V1284)))) (if (= W1285 false) (shen.type-error) (let W1286 (eval-kl (shen.shen->kl (hd V1284))) (let W1287 (pr (shen.app W1286 (cn " : " (shen.app (shen.pretty-type W1285) " -" shen.r)) shen.s) (stoutput)) (shen.work-through (tl (tl (tl V1284))))))))) ((cons? V1284) (shen.work-through (cons (hd V1284) (cons (intern ":") (cons A (tl V1284)))))) (true (simple-error "implementation error in shen.work-through")))) +(defun shen.work-through (V938) (cond ((= () V938) ()) ((and (cons? V938) (and (cons? (tl V938)) (and (cons? (tl (tl V938))) (= (hd (tl V938)) (intern ":"))))) (let W939 (shen.typecheck (hd V938) (hd (tl (tl V938)))) (if (= W939 false) (shen.type-error) (let W940 (eval-kl (shen.shen->kl (hd V938))) (let W941 (pr (shen.app W940 (cn " : " (shen.app (shen.pretty-type W939) " +" shen.r)) shen.s) (stoutput)) (shen.work-through (tl (tl (tl V938))))))))) ((cons? V938) (shen.work-through (cons (hd V938) (cons (intern ":") (cons A (tl V938)))))) (true (simple-error "implementation error in shen.work-through")))) -(defun shen.pretty-type (V1289) (cond ((and (cons? V1289) (and (cons? (hd V1289)) (and (= list (hd (hd V1289))) (and (cons? (tl (hd V1289))) (and (= () (tl (tl (hd V1289)))) (and (cons? (tl V1289)) (and (= --> (hd (tl V1289))) (and (cons? (tl (tl V1289))) (and (cons? (hd (tl (tl V1289)))) (and (= str (hd (hd (tl (tl V1289))))) (and (cons? (tl (hd (tl (tl V1289))))) (and (cons? (hd (tl (hd (tl (tl V1289)))))) (and (= list (hd (hd (tl (hd (tl (tl V1289))))))) (and (cons? (tl (hd (tl (hd (tl (tl V1289))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl V1289)))))))) (and (cons? (tl (tl (hd (tl (tl V1289)))))) (and (= () (tl (tl (tl (hd (tl (tl V1289))))))) (and (= () (tl (tl (tl V1289)))) (= (hd (tl (hd V1289))) (hd (tl (hd (tl (hd (tl (tl V1289)))))))))))))))))))))))))) (cons (hd (tl (hd (tl (tl V1289))))) (cons ==> (tl (tl (hd (tl (tl V1289)))))))) ((cons? V1289) (map (lambda Z1290 (shen.pretty-type Z1290)) V1289)) (true V1289))) +(defun shen.pretty-type (V943) (cond ((and (cons? V943) (and (cons? (hd V943)) (and (= list (hd (hd V943))) (and (cons? (tl (hd V943))) (and (= () (tl (tl (hd V943)))) (and (cons? (tl V943)) (and (= --> (hd (tl V943))) (and (cons? (tl (tl V943))) (and (cons? (hd (tl (tl V943)))) (and (= str (hd (hd (tl (tl V943))))) (and (cons? (tl (hd (tl (tl V943))))) (and (cons? (hd (tl (hd (tl (tl V943)))))) (and (= list (hd (hd (tl (hd (tl (tl V943))))))) (and (cons? (tl (hd (tl (hd (tl (tl V943))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl V943)))))))) (and (cons? (tl (tl (hd (tl (tl V943)))))) (and (= () (tl (tl (tl (hd (tl (tl V943))))))) (and (= () (tl (tl (tl V943)))) (= (hd (tl (hd V943))) (hd (tl (hd (tl (hd (tl (tl V943)))))))))))))))))))))))))) (cons (hd (tl (hd (tl (tl V943))))) (cons ==> (tl (tl (hd (tl (tl V943)))))))) ((cons? V943) (map (lambda Z944 (shen.pretty-type Z944)) V943)) (true V943))) (defun shen.type-error () (simple-error "type error ")) -(defun bootstrap (V1291) (let W1292 (shen.klfile V1291) (let W1293 (read-file V1291) (let W1294 (open W1292 out) (let W1295 (map (lambda Z1296 (shen.partial (shen.shen->kl-h Z1296))) W1293) (let W1297 (shen.write-kl W1295 W1294) W1292)))))) +(defun bootstrap (V945) (let W946 (shen.klfile V945) (let W947 (read-file V945) (let W948 (open W946 out) (let W949 (map (lambda Z950 (shen.partial (shen.shen->kl-h Z950))) W947) (let W951 (shen.write-kl W949 W948) W946)))))) -(defun shen.partial (V1298) (cond ((and (cons? V1298) (and (= shen.f-error (hd V1298)) (and (cons? (tl V1298)) (= () (tl (tl V1298)))))) (cons simple-error (cons (cn "partial function " (str (hd (tl V1298)))) ()))) ((cons? V1298) (map (lambda Z1299 (shen.partial Z1299)) V1298)) (true V1298))) +(defun shen.partial (V952) (cond ((and (cons? V952) (and (= shen.f-error (hd V952)) (and (cons? (tl V952)) (= () (tl (tl V952)))))) (cons simple-error (cons (cn "partial function " (str (hd (tl V952)))) ()))) ((cons? V952) (map (lambda Z953 (shen.partial Z953)) V952)) (true V952))) -(defun shen.write-kl (V1302 V1303) (cond ((= () V1302) (close V1303)) ((and (cons? V1302) (cons? (hd V1302))) (shen.write-kl (tl V1302) (do (shen.write-kl-h (hd V1302) V1303) V1303))) ((cons? V1302) (shen.write-kl (tl V1302) V1303)) (true (shen.f-error shen.write-kl)))) +(defun shen.write-kl (V956 V957) (cond ((= () V956) (close V957)) ((and (cons? V956) (cons? (hd V956))) (shen.write-kl (tl V956) (do (shen.write-kl-h (hd V956) V957) V957))) ((cons? V956) (shen.write-kl (tl V956) V957)) (true (simple-error "partial function shen.write-kl")))) -(defun shen.write-kl-h (V1306 V1307) (cond ((and (cons? V1306) (and (= defun (hd V1306)) (and (cons? (tl V1306)) (and (= fail (hd (tl V1306))) (and (cons? (tl (tl V1306))) (and (= () (hd (tl (tl V1306)))) (and (cons? (tl (tl (tl V1306)))) (= () (tl (tl (tl (tl V1306)))))))))))) (pr "(defun fail () shen.fail!)" V1307)) (true (pr (shen.app V1306 " +(defun shen.write-kl-h (V960 V961) (cond ((and (cons? V960) (and (= defun (hd V960)) (and (cons? (tl V960)) (and (= fail (hd (tl V960))) (and (cons? (tl (tl V960))) (and (= () (hd (tl (tl V960)))) (and (cons? (tl (tl (tl V960)))) (= () (tl (tl (tl (tl V960)))))))))))) (pr "(defun fail () shen.fail!)" V961)) (true (pr (shen.app V960 " -" shen.r) V1307)))) +" shen.r) V961)))) -(defun shen.klfile (V1308) (cond ((= "" V1308) ".kl") ((= ".shen" V1308) ".kl") ((shen.+string? V1308) (@s (hdstr V1308) (shen.klfile (tlstr V1308)))) (true (shen.f-error shen.klfile)))) +(defun shen.klfile (V962) (cond ((= "" V962) ".kl") ((= ".shen" V962) ".kl") ((shen.+string? V962) (@s (hdstr V962) (shen.klfile (tlstr V962)))) (true (simple-error "partial function shen.klfile")))) diff --git a/kernel/klambda/macros.kl b/kernel/klambda/macros.kl index 8ef8a89..719f80b 100644 --- a/kernel/klambda/macros.kl +++ b/kernel/klambda/macros.kl @@ -1,65 +1,65 @@ -(defun macroexpand (V6939) (let W6940 (map (lambda Z6941 (tl Z6941)) (value *macros*)) (shen.macroexpand-h V6939 W6940 W6940))) +(defun macroexpand (V5783) (let W5784 (map (lambda Z5785 (tl Z5785)) (value *macros*)) (shen.macroexpand-h V5783 W5784 W5784))) -(defun shen.macroexpand-h (V6950 V6951 V6952) (if (= () V6951) V6950 (if (cons? V6951) (let W6953 (shen.walk (hd V6951) V6950) (if (= V6950 W6953) (shen.macroexpand-h V6950 (tl V6951) V6952) (shen.macroexpand-h W6953 V6952 V6952))) (simple-error "implementation error in shen.macroexpand-h")))) +(defun shen.macroexpand-h (V5794 V5795 V5796) (if (= () V5795) V5794 (if (cons? V5795) (let W5797 (shen.walk (hd V5795) V5794) (if (= V5794 W5797) (shen.macroexpand-h V5794 (tl V5795) V5796) (shen.macroexpand-h W5797 V5796 V5796))) (simple-error "implementation error in shen.macroexpand-h")))) -(defun shen.walk (V6954 V6955) (if (cons? V6955) (V6954 (map (lambda Z6956 (shen.walk V6954 Z6956)) V6955)) (V6954 V6955))) +(defun shen.walk (V5798 V5799) (if (cons? V5799) (V5798 (map (lambda Z5800 (shen.walk V5798 Z5800)) V5799)) (V5798 V5799))) -(defun shen.macros (V6957) (let GoTo6958 (freeze V6957) (if (cons? V6957) (let Select6963 (hd V6957) (let Select6964 (tl V6957) (if (and (= defmacro Select6963) (cons? Select6964)) (shen.process-def (hd Select6964) (tl Select6964)) (if (= defcc Select6963) (shen.yacc->shen Select6964) (if (and (= u! Select6963) (and (cons? Select6964) (= () (tl Select6964)))) (cons protect (cons (shen.make-uppercase (hd Select6964)) ())) (if (and (= error Select6963) (cons? Select6964)) (cons simple-error (cons (shen.mkstr (hd Select6964) (tl Select6964)) ())) (if (and (= output Select6963) (cons? Select6964)) (cons pr (cons (shen.mkstr (hd Select6964) (tl Select6964)) (cons (cons stoutput ()) ()))) (if (and (= pr Select6963) (and (cons? Select6964) (= () (tl Select6964)))) (cons pr (cons (hd Select6964) (cons (cons stoutput ()) ()))) (if (and (= make-string Select6963) (cons? Select6964)) (shen.mkstr (hd Select6964) (tl Select6964)) (if (and (= lineread Select6963) (= () Select6964)) (cons lineread (cons (cons stinput ()) ())) (if (and (= input Select6963) (= () Select6964)) (cons input (cons (cons stinput ()) ())) (if (and (= read Select6963) (= () Select6964)) (cons read (cons (cons stinput ()) ())) (if (and (= input+ Select6963) (and (cons? Select6964) (= () (tl Select6964)))) (cons input+ (cons (hd Select6964) (cons (cons stinput ()) ()))) (if (and (= read-byte Select6963) (= () Select6964)) (shen.process-read-byte) (if (= prolog? Select6963) (shen.call-prolog Select6964) (if (and (= defprolog Select6963) (cons? Select6964)) (shen.compile-prolog (hd Select6964) (tl Select6964)) (if (and (= datatype Select6963) (cons? Select6964)) (shen.process-datatype (hd Select6964) (tl Select6964)) (if (= @s Select6963) (shen.process-@s V6957) (if (= synonyms Select6963) (shen.process-synonyms Select6964) (if (and (= nl Select6963) (= () Select6964)) (cons nl (cons 1 ())) (if (= let Select6963) (shen.process-let V6957) (if (= /. Select6963) (shen.process-lambda V6957) (if (= cases Select6963) (shen.process-cases V6957) (if (and (= time Select6963) (and (cons? Select6964) (= () (tl Select6964)))) (shen.process-time (hd Select6964)) (if (and (= put Select6963) (and (cons? Select6964) (and (cons? (tl Select6964)) (and (cons? (tl (tl Select6964))) (= () (tl (tl (tl Select6964)))))))) (cons put (cons (hd Select6964) (cons (hd (tl Select6964)) (cons (hd (tl (tl Select6964))) (cons (cons value (cons *property-vector* ())) ()))))) (if (and (= get Select6963) (and (cons? Select6964) (and (cons? (tl Select6964)) (= () (tl (tl Select6964)))))) (cons get (cons (hd Select6964) (cons (hd (tl Select6964)) (cons (cons value (cons *property-vector* ())) ())))) (if (and (= unput Select6963) (and (cons? Select6964) (and (cons? (tl Select6964)) (= () (tl (tl Select6964)))))) (cons unput (cons (hd Select6964) (cons (hd (tl Select6964)) (cons (cons value (cons *property-vector* ())) ())))) (if (and (= shen.@c Select6963) (and (cons? Select6964) (= () (tl Select6964)))) (shen.rcons_form (hd Select6964)) (let GoTo6959 (freeze (if (and (cons? Select6964) (and (cons? (tl Select6964)) (and (cons? (tl (tl Select6964))) (element? Select6963 (cons @p (cons @v (cons append (cons and (cons or (cons + (cons * (cons do ())))))))))))) (cons Select6963 (cons (hd Select6964) (cons (shen.process-assoc (cons Select6963 (tl Select6964))) ()))) (thaw GoTo6958))) (if (= shen.@ch Select6963) (if (cons? Select6964) (let Select6961 (hd Select6964) (let Select6962 (tl Select6964) (if (and (cons? Select6961) (and (cons? (tl Select6961)) (and (cons? (tl (tl Select6961))) (and (= () (tl (tl (tl Select6961)))) (and (= () Select6962) (= (hd (tl Select6961)) (intern ":"))))))) (shen.cons-form-respect-modes (cons - (cons (cons (hd Select6961) (cons (hd (tl Select6961)) (cons (cons + (tl (tl Select6961))) ()))) ()))) (if (= () Select6962) (shen.cons-form-respect-modes Select6961) (thaw GoTo6959))))) (thaw GoTo6959)) (thaw GoTo6959))))))))))))))))))))))))))))))) (thaw GoTo6958)))) +(defun shen.macros (V5801) (let GoTo5802 (freeze V5801) (if (cons? V5801) (let Select5807 (hd V5801) (let Select5808 (tl V5801) (if (and (= defmacro Select5807) (cons? Select5808)) (shen.process-def (hd Select5808) (tl Select5808)) (if (= defcc Select5807) (shen.yacc->shen Select5808) (if (and (= u! Select5807) (and (cons? Select5808) (= () (tl Select5808)))) (cons protect (cons (shen.make-uppercase (hd Select5808)) ())) (if (and (= error Select5807) (cons? Select5808)) (cons simple-error (cons (shen.mkstr (hd Select5808) (tl Select5808)) ())) (if (and (= output Select5807) (cons? Select5808)) (cons pr (cons (shen.mkstr (hd Select5808) (tl Select5808)) (cons (cons stoutput ()) ()))) (if (and (= pr Select5807) (and (cons? Select5808) (= () (tl Select5808)))) (cons pr (cons (hd Select5808) (cons (cons stoutput ()) ()))) (if (and (= make-string Select5807) (cons? Select5808)) (shen.mkstr (hd Select5808) (tl Select5808)) (if (and (= lineread Select5807) (= () Select5808)) (cons lineread (cons (cons stinput ()) ())) (if (and (= input Select5807) (= () Select5808)) (cons input (cons (cons stinput ()) ())) (if (and (= read Select5807) (= () Select5808)) (cons read (cons (cons stinput ()) ())) (if (and (= input+ Select5807) (cons? Select5808)) (shen.process-input+ V5801) (if (and (= read-byte Select5807) (= () Select5808)) (shen.process-read-byte) (if (= prolog? Select5807) (shen.call-prolog Select5808) (if (and (= defprolog Select5807) (cons? Select5808)) (shen.compile-prolog (hd Select5808) (tl Select5808)) (if (and (= datatype Select5807) (cons? Select5808)) (shen.process-datatype (hd Select5808) (tl Select5808)) (if (= @s Select5807) (shen.process-@s V5801) (if (= synonyms Select5807) (shen.process-synonyms Select5808) (if (and (= nl Select5807) (= () Select5808)) (cons nl (cons 1 ())) (if (= let Select5807) (shen.process-let V5801) (if (= /. Select5807) (shen.process-lambda V5801) (if (= cases Select5807) (shen.process-cases V5801) (if (and (= time Select5807) (and (cons? Select5808) (= () (tl Select5808)))) (shen.process-time (hd Select5808)) (if (and (= put Select5807) (and (cons? Select5808) (and (cons? (tl Select5808)) (and (cons? (tl (tl Select5808))) (= () (tl (tl (tl Select5808)))))))) (cons put (cons (hd Select5808) (cons (hd (tl Select5808)) (cons (hd (tl (tl Select5808))) (cons (cons value (cons *property-vector* ())) ()))))) (if (and (= get Select5807) (and (cons? Select5808) (and (cons? (tl Select5808)) (= () (tl (tl Select5808)))))) (cons get (cons (hd Select5808) (cons (hd (tl Select5808)) (cons (cons value (cons *property-vector* ())) ())))) (if (and (= unput Select5807) (and (cons? Select5808) (and (cons? (tl Select5808)) (= () (tl (tl Select5808)))))) (cons unput (cons (hd Select5808) (cons (hd (tl Select5808)) (cons (cons value (cons *property-vector* ())) ())))) (if (and (= shen.@c Select5807) (and (cons? Select5808) (= () (tl Select5808)))) (shen.rcons_form (hd Select5808)) (let GoTo5803 (freeze (if (and (cons? Select5808) (and (cons? (tl Select5808)) (and (cons? (tl (tl Select5808))) (element? Select5807 (cons @p (cons @v (cons append (cons and (cons or (cons + (cons * (cons do ())))))))))))) (cons Select5807 (cons (hd Select5808) (cons (shen.process-assoc (cons Select5807 (tl Select5808))) ()))) (thaw GoTo5802))) (if (= shen.@ch Select5807) (if (cons? Select5808) (let Select5805 (hd Select5808) (let Select5806 (tl Select5808) (if (and (cons? Select5805) (and (cons? (tl Select5805)) (and (cons? (tl (tl Select5805))) (and (= () (tl (tl (tl Select5805)))) (and (= () Select5806) (= (hd (tl Select5805)) (intern ":"))))))) (shen.cons-form-respect-modes (cons - (cons (cons (hd Select5805) (cons (hd (tl Select5805)) (cons (cons + (tl (tl Select5805))) ()))) ()))) (if (= () Select5806) (shen.cons-form-respect-modes Select5805) (thaw GoTo5803))))) (thaw GoTo5803)) (thaw GoTo5803))))))))))))))))))))))))))))))) (thaw GoTo5802)))) -(defun shen.cons-form-respect-modes (V6965) (let GoTo6966 (freeze V6965) (if (cons? V6965) (let Select6967 (hd V6965) (let Select6968 (tl V6965) (if (and (= + Select6967) (and (cons? Select6968) (= () (tl Select6968)))) (cons + (cons (shen.cons-form-respect-modes (hd Select6968)) ())) (if (and (= - Select6967) (and (cons? Select6968) (= () (tl Select6968)))) (cons - (cons (shen.cons-form-respect-modes (hd Select6968)) ())) (cons cons (cons (shen.cons-form-respect-modes Select6967) (cons (shen.cons-form-respect-modes Select6968) ()))))))) (thaw GoTo6966)))) +(defun shen.process-input+ (V5809) (let GoTo5810 (freeze (simple-error "partial function shen.process-input+")) (if (cons? V5809) (let Select5815 (tl V5809) (if (= input+ (hd V5809)) (if (cons? Select5815) (let Select5813 (hd Select5815) (let Select5814 (tl Select5815) (if (= () Select5814) (cons shen.input-h+ (cons (shen.rcons_form Select5813) (cons (cons stinput ()) ()))) (if (and (cons? Select5814) (= () (tl Select5814))) (cons shen.input-h+ (cons (shen.rcons_form Select5813) Select5814)) (thaw GoTo5810))))) (thaw GoTo5810)) (thaw GoTo5810))) (thaw GoTo5810)))) -(defun shen.process-def (V6969 V6970) (let W6971 (cons X (cons -> (cons X ()))) (let W6972 (eval (cons define (cons V6969 (append V6970 W6971)))) (let W6973 (shen.record-macro V6969 (fn V6969)) V6969)))) +(defun shen.cons-form-respect-modes (V5816) (let GoTo5817 (freeze V5816) (if (cons? V5816) (let Select5818 (hd V5816) (let Select5819 (tl V5816) (if (and (= + Select5818) (and (cons? Select5819) (= () (tl Select5819)))) (cons + (cons (shen.cons-form-respect-modes (hd Select5819)) ())) (if (and (= - Select5818) (and (cons? Select5819) (= () (tl Select5819)))) (cons - (cons (shen.cons-form-respect-modes (hd Select5819)) ())) (cons cons (cons (shen.cons-form-respect-modes Select5818) (cons (shen.cons-form-respect-modes Select5819) ()))))))) (thaw GoTo5817)))) -(defun shen.process-let (V6974) (if (and (cons? V6974) (and (= let (hd V6974)) (and (cons? (tl V6974)) (and (cons? (tl (tl V6974))) (and (cons? (tl (tl (tl V6974)))) (cons? (tl (tl (tl (tl V6974)))))))))) (cons let (cons (hd (tl V6974)) (cons (hd (tl (tl V6974))) (cons (cons let (tl (tl (tl V6974)))) ())))) V6974)) +(defun shen.process-def (V5820 V5821) (let W5822 (cons X (cons -> (cons X ()))) (let W5823 (eval (cons define (cons V5820 (append V5821 W5822)))) (let W5824 (shen.record-macro V5820 (fn V5820)) V5820)))) -(defun shen.process-@s (V6975) (let GoTo6977 (freeze V6975) (if (cons? V6975) (let Select6984 (tl V6975) (if (= @s (hd V6975)) (if (cons? Select6984) (let Select6982 (hd Select6984) (let Select6983 (tl Select6984) (if (cons? Select6983) (let Select6981 (tl Select6983) (if (cons? Select6981) (cons @s (cons Select6982 (cons (shen.process-@s (cons @s Select6983)) ()))) (if (and (= () Select6981) (string? Select6982)) (let W6976 (explode Select6982) (if (> (length W6976) 1) (shen.process-@s (cons @s (append W6976 Select6983))) V6975)) (thaw GoTo6977)))) (thaw GoTo6977)))) (thaw GoTo6977)) (thaw GoTo6977))) (thaw GoTo6977)))) +(defun shen.process-let (V5825) (if (and (cons? V5825) (and (= let (hd V5825)) (and (cons? (tl V5825)) (and (cons? (tl (tl V5825))) (and (cons? (tl (tl (tl V5825)))) (cons? (tl (tl (tl (tl V5825)))))))))) (cons let (cons (hd (tl V5825)) (cons (hd (tl (tl V5825))) (cons (cons let (tl (tl (tl V5825)))) ())))) V5825)) -(defun shen.process-datatype (V6985 V6986) (let W6987 (shen.intern-type V6985) (let W6988 (compile (lambda Z6989 (shen. Z6989)) (cons W6987 V6986)) W6987))) +(defun shen.process-@s (V5826) (let GoTo5828 (freeze V5826) (if (cons? V5826) (let Select5835 (tl V5826) (if (= @s (hd V5826)) (if (cons? Select5835) (let Select5833 (hd Select5835) (let Select5834 (tl Select5835) (if (cons? Select5834) (let Select5832 (tl Select5834) (if (cons? Select5832) (cons @s (cons Select5833 (cons (shen.process-@s (cons @s Select5834)) ()))) (if (and (= () Select5832) (string? Select5833)) (let W5827 (explode Select5833) (if (> (length W5827) 1) (shen.process-@s (cons @s (append W5827 Select5834))) V5826)) (thaw GoTo5828)))) (thaw GoTo5828)))) (thaw GoTo5828)) (thaw GoTo5828))) (thaw GoTo5828)))) -(defun shen.intern-type (V6990) (intern (cn (str V6990) "#type"))) +(defun shen.process-datatype (V5836 V5837) (let W5838 (shen.intern-type V5836) (let W5839 (compile (lambda Z5840 (shen. Z5840)) (cons W5838 V5837)) W5838))) -(defun shen.process-synonyms (V6991) (shen.synonyms-h (set shen.*synonyms* (append V6991 (value shen.*synonyms*))))) +(defun shen.intern-type (V5841) (intern (cn (str V5841) "#type"))) -(defun shen.lambda-of-defun (V6994) (if (and (cons? V6994) (and (= defun (hd V6994)) (and (cons? (tl V6994)) (and (cons? (tl (tl V6994))) (and (cons? (hd (tl (tl V6994)))) (and (= () (tl (hd (tl (tl V6994))))) (and (cons? (tl (tl (tl V6994)))) (= () (tl (tl (tl (tl V6994)))))))))))) (eval (cons /. (cons (hd (hd (tl (tl V6994)))) (tl (tl (tl V6994)))))) (shen.f-error shen.lambda-of-defun))) +(defun shen.process-synonyms (V5842) (shen.synonyms-h (set shen.*synonyms* (append V5842 (value shen.*synonyms*))))) -(defun shen.synonyms-h (V6995) (let W6996 (map (lambda Z6997 (shen.curry-type Z6997)) V6995) (let W6998 (shen.lambda-of-defun (shen.shendef->kldef shen.demod (shen.compile-synonyms W6996))) (let W6999 (set shen.*demodulation-function* W6998) synonyms)))) +(defun shen.synonyms-h (V5843) (let W5844 (map (lambda Z5845 (shen.curry-type Z5845)) V5843) (let W5846 (eval (cons define (cons shen.demod (shen.compile-synonyms W5844)))) synonyms))) -(defun shen.compile-synonyms (V7002) (if (= () V7002) (let W7003 (gensym X) (cons W7003 (cons -> (cons W7003 ())))) (if (and (cons? V7002) (cons? (tl V7002))) (cons (shen.rcons_form (hd V7002)) (cons -> (cons (shen.rcons_form (hd (tl V7002))) (shen.compile-synonyms (tl (tl V7002)))))) (simple-error "synonyms requires an even number of arguments +(defun shen.compile-synonyms (V5849) (if (= () V5849) (let W5850 (gensym X) (cons W5850 (cons -> (cons W5850 ())))) (if (and (cons? V5849) (cons? (tl V5849))) (cons (shen.rcons_form (hd V5849)) (cons -> (cons (shen.rcons_form (hd (tl V5849))) (shen.compile-synonyms (tl (tl V5849)))))) (simple-error "synonyms requires an even number of arguments ")))) -(defun shen.process-lambda (V7004) (let GoTo7005 (freeze V7004) (if (cons? V7004) (let Select7012 (tl V7004) (if (= /. (hd V7004)) (if (cons? Select7012) (let Select7010 (hd Select7012) (let Select7011 (tl Select7012) (if (cons? Select7011) (let Select7009 (tl Select7011) (if (cons? Select7009) (cons lambda (cons Select7010 (cons (shen.process-lambda (cons /. Select7011)) ()))) (if (= () Select7009) (if (variable? Select7010) (cons lambda Select7012) (simple-error (shen.app Select7010 " is not a variable -" shen.s))) (thaw GoTo7005)))) (thaw GoTo7005)))) (thaw GoTo7005)) (thaw GoTo7005))) (thaw GoTo7005)))) +(defun shen.process-lambda (V5851) (let GoTo5852 (freeze V5851) (if (cons? V5851) (let Select5859 (tl V5851) (if (= /. (hd V5851)) (if (cons? Select5859) (let Select5857 (hd Select5859) (let Select5858 (tl Select5859) (if (cons? Select5858) (let Select5856 (tl Select5858) (if (cons? Select5856) (cons lambda (cons Select5857 (cons (shen.process-lambda (cons /. Select5858)) ()))) (if (= () Select5856) (if (variable? Select5857) (cons lambda Select5859) (simple-error (shen.app Select5857 " is not a variable +" shen.s))) (thaw GoTo5852)))) (thaw GoTo5852)))) (thaw GoTo5852)) (thaw GoTo5852))) (thaw GoTo5852)))) -(defun shen.process-cases (V7015) (let GoTo7016 (freeze V7015) (if (cons? V7015) (let Select7024 (tl V7015) (if (= cases (hd V7015)) (if (cons? Select7024) (let Select7022 (hd Select7024) (let Select7023 (tl Select7024) (if (and (= true Select7022) (cons? Select7023)) (hd Select7023) (let GoTo7019 (freeze (if (= () Select7023) (simple-error "error: odd number of case elements -") (thaw GoTo7016))) (if (cons? Select7023) (let Select7020 (hd Select7023) (let Select7021 (tl Select7023) (if (= () Select7021) (cons if (cons Select7022 (cons Select7020 (cons (cons simple-error (cons "error: cases exhausted" ())) ())))) (cons if (cons Select7022 (cons Select7020 (cons (shen.process-cases (cons cases Select7021)) ()))))))) (thaw GoTo7019)))))) (thaw GoTo7016)) (thaw GoTo7016))) (thaw GoTo7016)))) +(defun shen.process-cases (V5862) (let GoTo5863 (freeze V5862) (if (cons? V5862) (let Select5871 (tl V5862) (if (= cases (hd V5862)) (if (cons? Select5871) (let Select5869 (hd Select5871) (let Select5870 (tl Select5871) (if (and (= true Select5869) (cons? Select5870)) (hd Select5870) (let GoTo5866 (freeze (if (= () Select5870) (simple-error "error: odd number of case elements +") (thaw GoTo5863))) (if (cons? Select5870) (let Select5867 (hd Select5870) (let Select5868 (tl Select5870) (if (= () Select5868) (cons if (cons Select5869 (cons Select5867 (cons (cons simple-error (cons "error: cases exhausted" ())) ())))) (cons if (cons Select5869 (cons Select5867 (cons (shen.process-cases (cons cases Select5868)) ()))))))) (thaw GoTo5866)))))) (thaw GoTo5863)) (thaw GoTo5863))) (thaw GoTo5863)))) -(defun shen.process-time (V7025) (cons let (cons Start (cons (cons get-time (cons run ())) (cons Result (cons V7025 (cons Finish (cons (cons get-time (cons run ())) (cons Time (cons (cons - (cons Finish (cons Start ()))) (cons Message (cons (cons pr (cons (cons cn (cons " +(defun shen.process-time (V5872) (cons let (cons Start (cons (cons get-time (cons run ())) (cons Result (cons V5872 (cons Finish (cons (cons get-time (cons run ())) (cons Time (cons (cons - (cons Finish (cons Start ()))) (cons Message (cons (cons pr (cons (cons cn (cons " run time: " (cons (cons cn (cons (cons str (cons Time ())) (cons " secs " ()))) ()))) (cons (cons stoutput ()) ()))) (cons Result ()))))))))))))) -(defun shen.process-assoc (V7026) (if (and (cons? V7026) (and (cons? (tl V7026)) (and (cons? (tl (tl V7026))) (cons? (tl (tl (tl V7026))))))) (cons (hd V7026) (cons (hd (tl V7026)) (cons (cons (hd V7026) (tl (tl V7026))) ()))) V7026)) +(defun shen.process-assoc (V5873) (if (and (cons? V5873) (and (cons? (tl V5873)) (and (cons? (tl (tl V5873))) (cons? (tl (tl (tl V5873))))))) (cons (hd V5873) (cons (hd (tl V5873)) (cons (cons (hd V5873) (tl (tl V5873))) ()))) V5873)) -(defun shen.make-uppercase (V7027) (intern (shen.mu-h (str V7027)))) +(defun shen.make-uppercase (V5874) (intern (shen.mu-h (str V5874)))) -(defun shen.mu-h (V7028) (if (= "" V7028) "" (if (shen.+string? V7028) (let W7029 (string->n (hdstr V7028)) (let W7030 (- W7029 32) (let W7031 (if (and (>= W7029 97) (<= W7029 122)) (n->string W7030) (hdstr V7028)) (@s W7031 (shen.mu-h (tlstr V7028)))))) (shen.f-error shen.mu-h)))) +(defun shen.mu-h (V5875) (if (= "" V5875) "" (if (shen.+string? V5875) (let W5876 (string->n (hdstr V5875)) (let W5877 (- W5876 32) (let W5878 (if (and (>= W5876 97) (<= W5876 122)) (n->string W5877) (hdstr V5875)) (@s W5878 (shen.mu-h (tlstr V5875)))))) (simple-error "partial function shen.mu-h")))) -(defun shen.record-macro (V7032 V7033) (set *macros* (shen.update-assoc V7032 V7033 (value *macros*)))) +(defun shen.record-macro (V5879 V5880) (set *macros* (shen.update-assoc V5879 V5880 (value *macros*)))) -(defun shen.update-assoc (V7043 V7044 V7045) (if (= () V7045) (cons (cons V7043 V7044) ()) (let GoTo7046 (freeze (simple-error "implementation error in shen.update-assoc")) (if (cons? V7045) (let Select7047 (hd V7045) (let Select7048 (tl V7045) (if (and (cons? Select7047) (= V7043 (hd Select7047))) (cons (cons (hd Select7047) V7044) Select7048) (cons Select7047 (shen.update-assoc V7043 V7044 Select7048))))) (thaw GoTo7046))))) +(defun shen.update-assoc (V5890 V5891 V5892) (if (= () V5892) (cons (cons V5890 V5891) ()) (let GoTo5893 (freeze (simple-error "implementation error in shen.update-assoc")) (if (cons? V5892) (let Select5894 (hd V5892) (let Select5895 (tl V5892) (if (and (cons? Select5894) (= V5890 (hd Select5894))) (cons (cons (hd Select5894) V5891) Select5895) (cons Select5894 (shen.update-assoc V5890 V5891 Select5895))))) (thaw GoTo5893))))) (defun shen.process-read-byte () (if (shen.char-stinput? (stinput)) (cons string->n (cons (cons shen.read-unit-string (cons (cons stinput ()) ())) ())) (cons read-byte (cons (cons stinput ()) ())))) -(defun shen.call-prolog (V7049) (let W7050 (cons shen.prolog-vector ()) (let W7051 (cons @v (cons true (cons 0 (cons (cons vector (cons 0 ())) ())))) (let W7052 0 (let W7053 (cons freeze (cons true ())) (let W7054 (compile (lambda Z7055 (shen. Z7055)) V7049) (let W7056 (shen.received V7049) (let W7057 (gensym V) (let W7058 (gensym L) (let W7059 (gensym K) (let W7060 (gensym C) (let W7061 (cons lambda (cons W7057 (cons (cons lambda (cons W7058 (cons (cons lambda (cons W7059 (cons (cons lambda (cons W7060 (cons (shen.continue W7056 W7054 W7057 W7058 W7059 W7060) ()))) ()))) ()))) ()))) (cons W7061 (cons W7050 (cons W7051 (cons W7052 (cons W7053 ()))))))))))))))))) +(defun shen.call-prolog (V5896) (let W5897 (cons shen.prolog-vector ()) (let W5898 (cons @v (cons true (cons 0 (cons (cons vector (cons 0 ())) ())))) (let W5899 0 (let W5900 (cons freeze (cons true ())) (let W5901 (compile (lambda Z5902 (shen. Z5902)) V5896) (let W5903 (shen.received V5896) (let W5904 (gensym V) (let W5905 (gensym L) (let W5906 (gensym K) (let W5907 (gensym C) (let W5908 (cons lambda (cons W5904 (cons (cons lambda (cons W5905 (cons (cons lambda (cons W5906 (cons (cons lambda (cons W5907 (cons (shen.continue W5903 W5901 W5904 W5905 W5906 W5907) ()))) ()))) ()))) ()))) (cons W5908 (cons W5897 (cons W5898 (cons W5899 (cons W5900 ()))))))))))))))))) -(defun shen.received (V7064) (let GoTo7065 (freeze ()) (if (cons? V7064) (let Select7066 (hd V7064) (let Select7067 (tl V7064) (if (and (= receive Select7066) (and (cons? Select7067) (= () (tl Select7067)))) Select7067 (union (shen.received Select7066) (shen.received Select7067))))) (thaw GoTo7065)))) +(defun shen.received (V5911) (let GoTo5912 (freeze ()) (if (cons? V5911) (let Select5913 (hd V5911) (let Select5914 (tl V5911) (if (and (= receive Select5913) (and (cons? Select5914) (= () (tl Select5914)))) Select5914 (union (shen.received Select5913) (shen.received Select5914))))) (thaw GoTo5912)))) -(defun shen.prolog-vector () (let W7068 (absvector (value shen.*prolog-memory*)) (let W7069 (address-> W7068 0 shen.print-prolog-vector) (let W7070 (address-> W7068 1 2) W7070)))) +(defun shen.prolog-vector () (let W5915 (absvector (value shen.*prolog-memory*)) (let W5916 (address-> W5915 0 shen.print-prolog-vector) (let W5917 (address-> W5915 1 2) W5917)))) -(defun receive (V7071) V7071) +(defun receive (V5918) V5918) -(defun shen.rcons_form (V7072) (if (cons? V7072) (cons cons (cons (shen.rcons_form (hd V7072)) (cons (shen.rcons_form (tl V7072)) ()))) V7072)) +(defun shen.rcons_form (V5919) (if (cons? V5919) (cons cons (cons (shen.rcons_form (hd V5919)) (cons (shen.rcons_form (tl V5919)) ()))) V5919)) -(defun shen.tuple-up (V7073) (if (cons? V7073) (cons @p (cons (hd V7073) (cons (shen.tuple-up (tl V7073)) ()))) V7073)) +(defun shen.tuple-up (V5920) (if (cons? V5920) (cons @p (cons (hd V5920) (cons (shen.tuple-up (tl V5920)) ()))) V5920)) -(defun undefmacro (V7074) (do (set *macros* (remove (assoc V7074 (value *macros*)) (value *macros*))) V7074)) +(defun undefmacro (V5921) (do (set *macros* (remove (assoc V5921 (value *macros*)) (value *macros*))) V5921)) diff --git a/kernel/klambda/prolog.kl b/kernel/klambda/prolog.kl index 60513f9..6ddc724 100644 --- a/kernel/klambda/prolog.kl +++ b/kernel/klambda/prolog.kl @@ -1,202 +1,202 @@ -(defun asserta (V1577) (shen.assert* V1577 shen.top)) +(defun asserta (V1231) (shen.assert* V1231 shen.top)) -(defun assertz (V1578) (shen.assert* V1578 shen.bottom)) +(defun assertz (V1232) (shen.assert* V1232 shen.bottom)) -(defun shen.assert* (V1579 V1580) (cond ((and (cons? V1579) (and (cons? (tl V1579)) (= <-- (hd (tl V1579))))) (let W1581 (shen.predicate (hd V1579)) (let W1582 (shen.terms (hd V1579)) (let W1583 (length W1582) (let W1584 (shen.parameters W1583) (let W1585 (arity W1581) (let W1586 (if (= W1585 -1) (do (eval (shen.create-skeleton W1581 W1584)) (put W1581 shen.dynamic () (value *property-vector*))) shen.skip) (let W1587 (shen.insert-info W1581 W1582 (tl (tl V1579)) V1579 V1580) W1581)))))))) (true (shen.f-error shen.assert*)))) +(defun shen.assert* (V1233 V1234) (cond ((and (cons? V1233) (and (cons? (tl V1233)) (= <-- (hd (tl V1233))))) (let W1235 (shen.predicate (hd V1233)) (let W1236 (shen.terms (hd V1233)) (let W1237 (length W1236) (let W1238 (shen.parameters W1237) (let W1239 (arity W1235) (let W1240 (if (= W1239 -1) (do (eval (shen.create-skeleton W1235 W1238)) (put W1235 shen.dynamic () (value *property-vector*))) shen.skip) (let W1241 (shen.insert-info W1235 W1236 (tl (tl V1233)) V1233 V1234) W1235)))))))) (true (simple-error "partial function shen.assert*")))) -(defun shen.predicate (V1590) (cond ((cons? V1590) (hd V1590)) (true V1590))) +(defun shen.predicate (V1244) (cond ((cons? V1244) (hd V1244)) (true V1244))) -(defun shen.terms (V1595) (cond ((cons? V1595) (tl V1595)) (true ()))) +(defun shen.terms (V1249) (cond ((cons? V1249) (tl V1249)) (true ()))) -(defun shen.create-skeleton (V1596 V1597) (cons defprolog (cons V1596 (shen.dynamic-default V1596 V1597)))) +(defun shen.create-skeleton (V1250 V1251) (cons defprolog (cons V1250 (shen.dynamic-default V1250 V1251)))) -(defun shen.dynamic-default (V1598 V1599) (append V1599 (cons <-- (cons (cons shen.call-dynamic (cons (shen.cons-form V1599) (cons (cons get (cons V1598 (cons shen.dynamic ()))) ()))) (cons (intern ";") ()))))) +(defun shen.dynamic-default (V1252 V1253) (append V1253 (cons <-- (cons (cons shen.call-dynamic (cons (shen.cons-form V1253) (cons (cons get (cons V1252 (cons shen.dynamic ()))) ()))) (cons (intern ";") ()))))) -(defun shen.insert-info (V1600 V1601 V1602 V1603 V1604) (let W1605 (gensym shen.g) (let W1606 (eval (append (cons defprolog (cons W1605 ())) (append V1601 (cons <-- V1602)))) (let W1607 (cons (fn W1605) (cons W1605 V1603)) (let W1608 (get V1600 shen.dynamic (value *property-vector*)) (let W1609 (if (= V1604 shen.top) (cons W1607 W1608) (append W1608 (cons W1607 ()))) (put V1600 shen.dynamic W1609 (value *property-vector*)))))))) +(defun shen.insert-info (V1254 V1255 V1256 V1257 V1258) (let W1259 (gensym shen.g) (let W1260 (eval (append (cons defprolog (cons W1259 ())) (append V1255 (cons <-- V1256)))) (let W1261 (cons (fn W1259) (cons W1259 V1257)) (let W1262 (get V1254 shen.dynamic (value *property-vector*)) (let W1263 (if (= V1258 shen.top) (cons W1261 W1262) (append W1262 (cons W1261 ()))) (put V1254 shen.dynamic W1263 (value *property-vector*)))))))) -(defun shen.newname () (let W1610 (value shen.*names*) (let W1611 (if (empty? W1610) (gensym shen.g) (do (set shen.*names* (tl W1610)) (hd W1610))) W1611))) +(defun shen.newname () (let W1264 (value shen.*names*) (let W1265 (if (empty? W1264) (gensym shen.g) (do (set shen.*names* (tl W1264)) (hd W1264))) W1265))) -(defun shen.call-dynamic (V1612 V1613 V1614 V1615 V1616 V1617) (let W1618 (if (shen.unlocked? V1615) (let W1619 (shen.lazyderef V1613 V1614) (if (cons? W1619) (let W1620 (shen.lazyderef (hd W1619) V1614) (if (cons? W1620) (let W1621 (hd W1620) (do (shen.incinfs) (shen.callrec W1621 V1612 V1614 V1615 V1616 V1617))) false)) false)) false) (if (= W1618 false) (if (shen.unlocked? V1615) (let W1622 (shen.lazyderef V1613 V1614) (if (cons? W1622) (let W1623 (tl W1622) (do (shen.incinfs) (shen.call-dynamic V1612 W1623 V1614 V1615 V1616 V1617))) false)) false) W1618))) +(defun shen.call-dynamic (V1266 V1267 V1268 V1269 V1270 V1271) (let W1272 (if (shen.unlocked? V1269) (let W1273 (shen.lazyderef V1267 V1268) (if (cons? W1273) (let W1274 (shen.lazyderef (hd W1273) V1268) (if (cons? W1274) (let W1275 (hd W1274) (do (shen.incinfs) (shen.callrec W1275 V1266 V1268 V1269 V1270 V1271))) false)) false)) false) (if (= W1272 false) (if (shen.unlocked? V1269) (let W1276 (shen.lazyderef V1267 V1268) (if (cons? W1276) (let W1277 (tl W1276) (do (shen.incinfs) (shen.call-dynamic V1266 W1277 V1268 V1269 V1270 V1271))) false)) false) W1272))) -(defun shen.callrec (V1624 V1625 V1626 V1627 V1628 V1629) (cond ((= () V1625) ((((V1624 V1626) V1627) V1628) V1629)) ((cons? V1625) (shen.callrec (V1624 (hd V1625)) (tl V1625) V1626 V1627 V1628 V1629)) (true (shen.f-error shen.callrec)))) +(defun shen.callrec (V1278 V1279 V1280 V1281 V1282 V1283) (cond ((= () V1279) ((((V1278 V1280) V1281) V1282) V1283)) ((cons? V1279) (shen.callrec (V1278 (hd V1279)) (tl V1279) V1280 V1281 V1282 V1283)) (true (simple-error "partial function shen.callrec")))) -(defun retract (V1630) (cond ((and (cons? V1630) (and (cons? (tl V1630)) (= <-- (hd (tl V1630))))) (let W1631 (shen.predicate (hd V1630)) (let W1632 (get W1631 shen.dynamic (value *property-vector*)) (put W1631 shen.dynamic (shen.retract-clause V1630 W1632) (value *property-vector*))))) (true (shen.f-error retract)))) +(defun retract (V1284) (cond ((and (cons? V1284) (and (cons? (tl V1284)) (= <-- (hd (tl V1284))))) (let W1285 (shen.predicate (hd V1284)) (let W1286 (get W1285 shen.dynamic (value *property-vector*)) (put W1285 shen.dynamic (shen.retract-clause V1284 W1286) (value *property-vector*))))) (true (simple-error "partial function retract")))) -(defun shen.retract-clause (V1638 V1639) (cond ((= () V1639) ()) ((and (cons? V1639) (and (cons? (hd V1639)) (and (cons? (tl (hd V1639))) (= V1638 (tl (tl (hd V1639))))))) (do (set shen.*names* (cons (hd (tl (hd V1639))) (value shen.*names*))) (tl V1639))) ((cons? V1639) (cons (hd V1639) (shen.retract-clause V1638 (tl V1639)))) (true (shen.f-error shen.retract-clause)))) +(defun shen.retract-clause (V1292 V1293) (cond ((= () V1293) ()) ((and (cons? V1293) (and (cons? (hd V1293)) (and (cons? (tl (hd V1293))) (= V1292 (tl (tl (hd V1293))))))) (do (set shen.*names* (cons (hd (tl (hd V1293))) (value shen.*names*))) (tl V1293))) ((cons? V1293) (cons (hd V1293) (shen.retract-clause V1292 (tl V1293)))) (true (simple-error "partial function shen.retract-clause")))) -(defun shen.compile-prolog (V1640 V1641) (compile (lambda Z1642 (shen. Z1642)) (cons V1640 V1641))) +(defun shen.compile-prolog (V1294 V1295) (compile (lambda Z1296 (shen. Z1296)) (cons V1294 V1295))) -(defun shen. (V1643) (let W1644 (if (cons? V1643) (let W1645 (head V1643) (let W1646 (tail V1643) (let W1647 (shen. W1646) (if (shen.parse-failure? W1647) (shen.parse-failure) (let W1648 (shen.<-out W1647) (let W1649 (shen.in-> W1647) (shen.comb W1649 (let W1650 (shen.prolog-arity-check W1645 W1648) (let W1651 (map (lambda Z1652 (shen.linearise-clause Z1652)) W1648) (shen.horn-clause-procedure W1645 W1651)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1644) (shen.parse-failure) W1644))) +(defun shen. (V1297) (let W1298 (if (cons? V1297) (let W1299 (head V1297) (let W1300 (tail V1297) (let W1301 (shen. W1300) (if (shen.parse-failure? W1301) (shen.parse-failure) (let W1302 (shen.<-out W1301) (let W1303 (shen.in-> W1301) (shen.comb W1303 (let W1304 (shen.prolog-arity-check W1299 W1302) (let W1305 (map (lambda Z1306 (shen.linearise-clause Z1306)) W1302) (shen.horn-clause-procedure W1299 W1305)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1298) (shen.parse-failure) W1298))) -(defun shen.prolog-arity-check (V1655 V1656) (cond ((and (cons? V1656) (and (cons? (hd V1656)) (and (cons? (tl (hd V1656))) (and (= () (tl (tl (hd V1656)))) (= () (tl V1656)))))) (length (hd (hd V1656)))) ((and (cons? V1656) (and (cons? (hd V1656)) (and (cons? (tl (hd V1656))) (= () (tl (tl (hd V1656))))))) (shen.pac-h V1655 (length (hd (hd V1656))) (tl V1656))) (true (shen.f-error shen.prolog-arity-check)))) +(defun shen.prolog-arity-check (V1309 V1310) (cond ((and (cons? V1310) (and (cons? (hd V1310)) (and (cons? (tl (hd V1310))) (and (= () (tl (tl (hd V1310)))) (= () (tl V1310)))))) (length (hd (hd V1310)))) ((and (cons? V1310) (and (cons? (hd V1310)) (and (cons? (tl (hd V1310))) (= () (tl (tl (hd V1310))))))) (shen.pac-h V1309 (length (hd (hd V1310))) (tl V1310))) (true (simple-error "partial function shen.prolog-arity-check")))) -(defun shen.pac-h (V1661 V1662 V1663) (cond ((= () V1663) V1662) ((and (cons? V1663) (cons? (hd V1663))) (if (= V1662 (length (hd (hd V1663)))) (shen.pac-h V1661 V1662 (tl V1663)) (simple-error (cn "arity error in prolog procedure " (shen.app V1661 " -" shen.a))))) (true (shen.f-error shen.pac-h)))) +(defun shen.pac-h (V1315 V1316 V1317) (cond ((= () V1317) V1316) ((and (cons? V1317) (cons? (hd V1317))) (if (= V1316 (length (hd (hd V1317)))) (shen.pac-h V1315 V1316 (tl V1317)) (simple-error (cn "arity error in prolog procedure " (shen.app V1315 " +" shen.a))))) (true (simple-error "partial function shen.pac-h")))) -(defun shen. (V1664) (let W1665 (let W1666 (shen. V1664) (if (shen.parse-failure? W1666) (shen.parse-failure) (let W1667 (shen.<-out W1666) (let W1668 (shen.in-> W1666) (let W1669 (shen. W1668) (if (shen.parse-failure? W1669) (shen.parse-failure) (let W1670 (shen.<-out W1669) (let W1671 (shen.in-> W1669) (shen.comb W1671 (cons W1667 W1670)))))))))) (if (shen.parse-failure? W1665) (let W1672 (let W1673 ( V1664) (if (shen.parse-failure? W1673) (shen.parse-failure) (let W1674 (shen.<-out W1673) (let W1675 (shen.in-> W1673) (shen.comb W1675 (if (empty? W1674) () (simple-error (cn "Prolog syntax error here: - " (shen.app W1674 " - ..." shen.r))))))))) (if (shen.parse-failure? W1672) (shen.parse-failure) W1672)) W1665))) +(defun shen. (V1318) (let W1319 (let W1320 (shen. V1318) (if (shen.parse-failure? W1320) (shen.parse-failure) (let W1321 (shen.<-out W1320) (let W1322 (shen.in-> W1320) (let W1323 (shen. W1322) (if (shen.parse-failure? W1323) (shen.parse-failure) (let W1324 (shen.<-out W1323) (let W1325 (shen.in-> W1323) (shen.comb W1325 (cons W1321 W1324)))))))))) (if (shen.parse-failure? W1319) (let W1326 (let W1327 ( V1318) (if (shen.parse-failure? W1327) (shen.parse-failure) (let W1328 (shen.<-out W1327) (let W1329 (shen.in-> W1327) (shen.comb W1329 (if (empty? W1328) () (simple-error (cn "Prolog syntax error here: + " (shen.app W1328 " + ..." shen.r))))))))) (if (shen.parse-failure? W1326) (shen.parse-failure) W1326)) W1319))) -(defun shen.linearise-clause (V1676) (cond ((and (cons? V1676) (and (cons? (tl V1676)) (= () (tl (tl V1676))))) (shen.lch (shen.linearise (@p (hd V1676) (hd (tl V1676)))))) (true (shen.f-error shen.linearise-clause)))) +(defun shen.linearise-clause (V1330) (cond ((and (cons? V1330) (and (cons? (tl V1330)) (= () (tl (tl V1330))))) (shen.lch (shen.linearise (@p (hd V1330) (hd (tl V1330)))))) (true (simple-error "partial function shen.linearise-clause")))) -(defun shen.lch (V1677) (cond ((tuple? V1677) (cons (fst V1677) (cons (shen.lchh (snd V1677)) ()))) (true (shen.f-error shen.lch)))) +(defun shen.lch (V1331) (cond ((tuple? V1331) (cons (fst V1331) (cons (shen.lchh (snd V1331)) ()))) (true (simple-error "partial function shen.lch")))) -(defun shen.lchh (V1678) (cond ((and (cons? V1678) (and (= where (hd V1678)) (and (cons? (tl V1678)) (and (cons? (hd (tl V1678))) (and (= = (hd (hd (tl V1678)))) (and (cons? (tl (hd (tl V1678)))) (and (cons? (tl (tl (hd (tl V1678))))) (and (= () (tl (tl (tl (hd (tl V1678)))))) (and (cons? (tl (tl V1678))) (= () (tl (tl (tl V1678))))))))))))) (cons (cons (if (value shen.*occurs*) is! is) (tl (hd (tl V1678)))) (shen.lchh (hd (tl (tl V1678)))))) (true V1678))) +(defun shen.lchh (V1332) (cond ((and (cons? V1332) (and (= where (hd V1332)) (and (cons? (tl V1332)) (and (cons? (hd (tl V1332))) (and (= = (hd (hd (tl V1332)))) (and (cons? (tl (hd (tl V1332)))) (and (cons? (tl (tl (hd (tl V1332))))) (and (= () (tl (tl (tl (hd (tl V1332)))))) (and (cons? (tl (tl V1332))) (= () (tl (tl (tl V1332))))))))))))) (cons (cons (if (value shen.*occurs*) is! is) (tl (hd (tl V1332)))) (shen.lchh (hd (tl (tl V1332)))))) (true V1332))) -(defun shen. (V1679) (let W1680 (let W1681 (shen. V1679) (if (shen.parse-failure? W1681) (shen.parse-failure) (let W1682 (shen.<-out W1681) (let W1683 (shen.in-> W1681) (if (shen.hds=? W1683 <--) (let W1684 (tail W1683) (let W1685 (shen. W1684) (if (shen.parse-failure? W1685) (shen.parse-failure) (let W1686 (shen.<-out W1685) (let W1687 (shen.in-> W1685) (let W1688 (shen. W1687) (if (shen.parse-failure? W1688) (shen.parse-failure) (let W1689 (shen.in-> W1688) (shen.comb W1689 (cons W1682 (cons W1686 ()))))))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W1680) (shen.parse-failure) W1680))) +(defun shen. (V1333) (let W1334 (let W1335 (shen. V1333) (if (shen.parse-failure? W1335) (shen.parse-failure) (let W1336 (shen.<-out W1335) (let W1337 (shen.in-> W1335) (if (shen.hds=? W1337 <--) (let W1338 (tail W1337) (let W1339 (shen. W1338) (if (shen.parse-failure? W1339) (shen.parse-failure) (let W1340 (shen.<-out W1339) (let W1341 (shen.in-> W1339) (let W1342 (shen. W1341) (if (shen.parse-failure? W1342) (shen.parse-failure) (let W1343 (shen.in-> W1342) (shen.comb W1343 (cons W1336 (cons W1340 ()))))))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W1334) (shen.parse-failure) W1334))) -(defun shen. (V1690) (let W1691 (let W1692 (shen. V1690) (if (shen.parse-failure? W1692) (shen.parse-failure) (let W1693 (shen.<-out W1692) (let W1694 (shen.in-> W1692) (let W1695 (shen. W1694) (if (shen.parse-failure? W1695) (shen.parse-failure) (let W1696 (shen.<-out W1695) (let W1697 (shen.in-> W1695) (shen.comb W1697 (cons W1693 W1696)))))))))) (if (shen.parse-failure? W1691) (let W1698 (let W1699 ( V1690) (if (shen.parse-failure? W1699) (shen.parse-failure) (let W1700 (shen.in-> W1699) (shen.comb W1700 ())))) (if (shen.parse-failure? W1698) (shen.parse-failure) W1698)) W1691))) +(defun shen. (V1344) (let W1345 (let W1346 (shen. V1344) (if (shen.parse-failure? W1346) (shen.parse-failure) (let W1347 (shen.<-out W1346) (let W1348 (shen.in-> W1346) (let W1349 (shen. W1348) (if (shen.parse-failure? W1349) (shen.parse-failure) (let W1350 (shen.<-out W1349) (let W1351 (shen.in-> W1349) (shen.comb W1351 (cons W1347 W1350)))))))))) (if (shen.parse-failure? W1345) (let W1352 (let W1353 ( V1344) (if (shen.parse-failure? W1353) (shen.parse-failure) (let W1354 (shen.in-> W1353) (shen.comb W1354 ())))) (if (shen.parse-failure? W1352) (shen.parse-failure) W1352)) W1345))) -(defun shen. (V1701) (let W1702 (if (cons? V1701) (let W1703 (head V1701) (let W1704 (tail V1701) (if (and (atom? W1703) (not (shen.prolog-keyword? W1703))) (shen.comb W1704 W1703) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1702) (let W1705 (if (cons? V1701) (let W1706 (head V1701) (let W1707 (tail V1701) (if (= W1706 (intern ":")) (shen.comb W1707 W1706) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1705) (let W1708 (if (shen.ccons? V1701) (let W1709 (head V1701) (let W1710 (tail V1701) (if (shen.hds=? W1709 cons) (let W1711 (tail W1709) (let W1712 (shen. W1711) (if (shen.parse-failure? W1712) (shen.parse-failure) (let W1713 (shen.<-out W1712) (let W1714 (shen.in-> W1712) (let W1715 (shen. W1714) (if (shen.parse-failure? W1715) (shen.parse-failure) (let W1716 (shen.<-out W1715) (let W1717 (shen.in-> W1715) (let W1718 ( W1717) (if (shen.parse-failure? W1718) (shen.parse-failure) (let W1719 (shen.in-> W1718) (shen.comb W1710 (cons cons (cons W1713 (cons W1716 ())))))))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1708) (let W1720 (if (shen.ccons? V1701) (let W1721 (head V1701) (let W1722 (tail V1701) (if (shen.hds=? W1721 +) (let W1723 (tail W1721) (let W1724 (shen. W1723) (if (shen.parse-failure? W1724) (shen.parse-failure) (let W1725 (shen.<-out W1724) (let W1726 (shen.in-> W1724) (let W1727 ( W1726) (if (shen.parse-failure? W1727) (shen.parse-failure) (let W1728 (shen.in-> W1727) (shen.comb W1722 (cons shen.+m (cons W1725 ()))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1720) (let W1729 (if (shen.ccons? V1701) (let W1730 (head V1701) (let W1731 (tail V1701) (if (shen.hds=? W1730 -) (let W1732 (tail W1730) (let W1733 (shen. W1732) (if (shen.parse-failure? W1733) (shen.parse-failure) (let W1734 (shen.<-out W1733) (let W1735 (shen.in-> W1733) (let W1736 ( W1735) (if (shen.parse-failure? W1736) (shen.parse-failure) (let W1737 (shen.in-> W1736) (shen.comb W1731 (cons shen.-m (cons W1734 ()))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1729) (let W1738 (if (shen.ccons? V1701) (let W1739 (head V1701) (let W1740 (tail V1701) (if (shen.hds=? W1739 mode) (let W1741 (tail W1739) (let W1742 (shen. W1741) (if (shen.parse-failure? W1742) (shen.parse-failure) (let W1743 (shen.<-out W1742) (let W1744 (shen.in-> W1742) (if (shen.hds=? W1744 +) (let W1745 (tail W1744) (let W1746 ( W1745) (if (shen.parse-failure? W1746) (shen.parse-failure) (let W1747 (shen.in-> W1746) (shen.comb W1740 (cons shen.+m (cons W1743 ()))))))) (shen.parse-failure))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1738) (let W1748 (if (shen.ccons? V1701) (let W1749 (head V1701) (let W1750 (tail V1701) (if (shen.hds=? W1749 mode) (let W1751 (tail W1749) (let W1752 (shen. W1751) (if (shen.parse-failure? W1752) (shen.parse-failure) (let W1753 (shen.<-out W1752) (let W1754 (shen.in-> W1752) (if (shen.hds=? W1754 -) (let W1755 (tail W1754) (let W1756 ( W1755) (if (shen.parse-failure? W1756) (shen.parse-failure) (let W1757 (shen.in-> W1756) (shen.comb W1750 (cons shen.-m (cons W1753 ()))))))) (shen.parse-failure))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1748) (shen.parse-failure) W1748)) W1738)) W1729)) W1720)) W1708)) W1705)) W1702))) +(defun shen. (V1355) (let W1356 (if (cons? V1355) (let W1357 (head V1355) (let W1358 (tail V1355) (if (and (atom? W1357) (not (shen.prolog-keyword? W1357))) (shen.comb W1358 W1357) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1356) (let W1359 (if (cons? V1355) (let W1360 (head V1355) (let W1361 (tail V1355) (if (= W1360 (intern ":")) (shen.comb W1361 W1360) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1359) (let W1362 (if (shen.ccons? V1355) (let W1363 (head V1355) (let W1364 (tail V1355) (if (shen.hds=? W1363 cons) (let W1365 (tail W1363) (let W1366 (shen. W1365) (if (shen.parse-failure? W1366) (shen.parse-failure) (let W1367 (shen.<-out W1366) (let W1368 (shen.in-> W1366) (let W1369 (shen. W1368) (if (shen.parse-failure? W1369) (shen.parse-failure) (let W1370 (shen.<-out W1369) (let W1371 (shen.in-> W1369) (let W1372 ( W1371) (if (shen.parse-failure? W1372) (shen.parse-failure) (let W1373 (shen.in-> W1372) (shen.comb W1364 (cons cons (cons W1367 (cons W1370 ())))))))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1362) (let W1374 (if (shen.ccons? V1355) (let W1375 (head V1355) (let W1376 (tail V1355) (if (shen.hds=? W1375 +) (let W1377 (tail W1375) (let W1378 (shen. W1377) (if (shen.parse-failure? W1378) (shen.parse-failure) (let W1379 (shen.<-out W1378) (let W1380 (shen.in-> W1378) (let W1381 ( W1380) (if (shen.parse-failure? W1381) (shen.parse-failure) (let W1382 (shen.in-> W1381) (shen.comb W1376 (cons shen.+m (cons W1379 ()))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1374) (let W1383 (if (shen.ccons? V1355) (let W1384 (head V1355) (let W1385 (tail V1355) (if (shen.hds=? W1384 -) (let W1386 (tail W1384) (let W1387 (shen. W1386) (if (shen.parse-failure? W1387) (shen.parse-failure) (let W1388 (shen.<-out W1387) (let W1389 (shen.in-> W1387) (let W1390 ( W1389) (if (shen.parse-failure? W1390) (shen.parse-failure) (let W1391 (shen.in-> W1390) (shen.comb W1385 (cons shen.-m (cons W1388 ()))))))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1383) (let W1392 (if (shen.ccons? V1355) (let W1393 (head V1355) (let W1394 (tail V1355) (if (shen.hds=? W1393 mode) (let W1395 (tail W1393) (let W1396 (shen. W1395) (if (shen.parse-failure? W1396) (shen.parse-failure) (let W1397 (shen.<-out W1396) (let W1398 (shen.in-> W1396) (if (shen.hds=? W1398 +) (let W1399 (tail W1398) (let W1400 ( W1399) (if (shen.parse-failure? W1400) (shen.parse-failure) (let W1401 (shen.in-> W1400) (shen.comb W1394 (cons shen.+m (cons W1397 ()))))))) (shen.parse-failure))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1392) (let W1402 (if (shen.ccons? V1355) (let W1403 (head V1355) (let W1404 (tail V1355) (if (shen.hds=? W1403 mode) (let W1405 (tail W1403) (let W1406 (shen. W1405) (if (shen.parse-failure? W1406) (shen.parse-failure) (let W1407 (shen.<-out W1406) (let W1408 (shen.in-> W1406) (if (shen.hds=? W1408 -) (let W1409 (tail W1408) (let W1410 ( W1409) (if (shen.parse-failure? W1410) (shen.parse-failure) (let W1411 (shen.in-> W1410) (shen.comb W1404 (cons shen.-m (cons W1407 ()))))))) (shen.parse-failure))))))) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1402) (shen.parse-failure) W1402)) W1392)) W1383)) W1374)) W1362)) W1359)) W1356))) -(defun shen.prolog-keyword? (V1758) (element? V1758 (cons (intern ";") (cons <-- ())))) +(defun shen.prolog-keyword? (V1412) (element? V1412 (cons (intern ";") (cons <-- ())))) -(defun atom? (V1759) (or (symbol? V1759) (or (string? V1759) (or (boolean? V1759) (or (number? V1759) (empty? V1759)))))) +(defun atom? (V1413) (or (symbol? V1413) (or (string? V1413) (or (boolean? V1413) (or (number? V1413) (empty? V1413)))))) -(defun shen. (V1760) (let W1761 (let W1762 (shen. V1760) (if (shen.parse-failure? W1762) (shen.parse-failure) (let W1763 (shen.<-out W1762) (let W1764 (shen.in-> W1762) (shen.comb W1764 W1763))))) (if (shen.parse-failure? W1761) (shen.parse-failure) W1761))) +(defun shen. (V1414) (let W1415 (let W1416 (shen. V1414) (if (shen.parse-failure? W1416) (shen.parse-failure) (let W1417 (shen.<-out W1416) (let W1418 (shen.in-> W1416) (shen.comb W1418 W1417))))) (if (shen.parse-failure? W1415) (shen.parse-failure) W1415))) -(defun shen. (V1765) (let W1766 (let W1767 (shen. V1765) (if (shen.parse-failure? W1767) (shen.parse-failure) (let W1768 (shen.<-out W1767) (let W1769 (shen.in-> W1767) (shen.comb W1769 W1768))))) (if (shen.parse-failure? W1766) (shen.parse-failure) W1766))) +(defun shen. (V1419) (let W1420 (let W1421 (shen. V1419) (if (shen.parse-failure? W1421) (shen.parse-failure) (let W1422 (shen.<-out W1421) (let W1423 (shen.in-> W1421) (shen.comb W1423 W1422))))) (if (shen.parse-failure? W1420) (shen.parse-failure) W1420))) -(defun shen. (V1770) (let W1771 (let W1772 (shen. V1770) (if (shen.parse-failure? W1772) (shen.parse-failure) (let W1773 (shen.<-out W1772) (let W1774 (shen.in-> W1772) (let W1775 (shen. W1774) (if (shen.parse-failure? W1775) (shen.parse-failure) (let W1776 (shen.<-out W1775) (let W1777 (shen.in-> W1775) (shen.comb W1777 (cons W1773 W1776)))))))))) (if (shen.parse-failure? W1771) (let W1778 (let W1779 ( V1770) (if (shen.parse-failure? W1779) (shen.parse-failure) (let W1780 (shen.in-> W1779) (shen.comb W1780 ())))) (if (shen.parse-failure? W1778) (shen.parse-failure) W1778)) W1771))) +(defun shen. (V1424) (let W1425 (let W1426 (shen. V1424) (if (shen.parse-failure? W1426) (shen.parse-failure) (let W1427 (shen.<-out W1426) (let W1428 (shen.in-> W1426) (let W1429 (shen. W1428) (if (shen.parse-failure? W1429) (shen.parse-failure) (let W1430 (shen.<-out W1429) (let W1431 (shen.in-> W1429) (shen.comb W1431 (cons W1427 W1430)))))))))) (if (shen.parse-failure? W1425) (let W1432 (let W1433 ( V1424) (if (shen.parse-failure? W1433) (shen.parse-failure) (let W1434 (shen.in-> W1433) (shen.comb W1434 ())))) (if (shen.parse-failure? W1432) (shen.parse-failure) W1432)) W1425))) -(defun shen. (V1781) (let W1782 (if (shen.hds=? V1781 !) (let W1783 (tail V1781) (shen.comb W1783 !)) (shen.parse-failure)) (if (shen.parse-failure? W1782) (let W1784 (if (shen.ccons? V1781) (let W1785 (head V1781) (let W1786 (tail V1781) (let W1787 (shen. W1785) (if (shen.parse-failure? W1787) (shen.parse-failure) (let W1788 (shen.<-out W1787) (let W1789 (shen.in-> W1787) (let W1790 ( W1789) (if (shen.parse-failure? W1790) (shen.parse-failure) (let W1791 (shen.in-> W1790) (shen.comb W1786 W1788)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1784) (shen.parse-failure) W1784)) W1782))) +(defun shen. (V1435) (let W1436 (if (shen.hds=? V1435 !) (let W1437 (tail V1435) (shen.comb W1437 !)) (shen.parse-failure)) (if (shen.parse-failure? W1436) (let W1438 (if (shen.ccons? V1435) (let W1439 (head V1435) (let W1440 (tail V1435) (let W1441 (shen. W1439) (if (shen.parse-failure? W1441) (shen.parse-failure) (let W1442 (shen.<-out W1441) (let W1443 (shen.in-> W1441) (let W1444 ( W1443) (if (shen.parse-failure? W1444) (shen.parse-failure) (let W1445 (shen.in-> W1444) (shen.comb W1440 W1442)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1438) (shen.parse-failure) W1438)) W1436))) -(defun shen. (V1792) (let W1793 (let W1794 (shen. V1792) (if (shen.parse-failure? W1794) (shen.parse-failure) (let W1795 (shen.<-out W1794) (let W1796 (shen.in-> W1794) (let W1797 (shen. W1796) (if (shen.parse-failure? W1797) (shen.parse-failure) (let W1798 (shen.<-out W1797) (let W1799 (shen.in-> W1797) (shen.comb W1799 (cons W1795 W1798)))))))))) (if (shen.parse-failure? W1793) (let W1800 (let W1801 ( V1792) (if (shen.parse-failure? W1801) (shen.parse-failure) (let W1802 (shen.in-> W1801) (shen.comb W1802 ())))) (if (shen.parse-failure? W1800) (shen.parse-failure) W1800)) W1793))) +(defun shen. (V1446) (let W1447 (let W1448 (shen. V1446) (if (shen.parse-failure? W1448) (shen.parse-failure) (let W1449 (shen.<-out W1448) (let W1450 (shen.in-> W1448) (let W1451 (shen. W1450) (if (shen.parse-failure? W1451) (shen.parse-failure) (let W1452 (shen.<-out W1451) (let W1453 (shen.in-> W1451) (shen.comb W1453 (cons W1449 W1452)))))))))) (if (shen.parse-failure? W1447) (let W1454 (let W1455 ( V1446) (if (shen.parse-failure? W1455) (shen.parse-failure) (let W1456 (shen.in-> W1455) (shen.comb W1456 ())))) (if (shen.parse-failure? W1454) (shen.parse-failure) W1454)) W1447))) -(defun shen. (V1803) (let W1804 (let W1805 (shen. V1803) (if (shen.parse-failure? W1805) (shen.parse-failure) (let W1806 (shen.<-out W1805) (let W1807 (shen.in-> W1805) (shen.comb W1807 W1806))))) (if (shen.parse-failure? W1804) (let W1808 (if (cons? V1803) (let W1809 (head V1803) (let W1810 (tail V1803) (if (atom? W1809) (shen.comb W1810 W1809) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1808) (let W1811 (if (shen.ccons? V1803) (let W1812 (head V1803) (let W1813 (tail V1803) (let W1814 (shen. W1812) (if (shen.parse-failure? W1814) (shen.parse-failure) (let W1815 (shen.<-out W1814) (let W1816 (shen.in-> W1814) (let W1817 ( W1816) (if (shen.parse-failure? W1817) (shen.parse-failure) (let W1818 (shen.in-> W1817) (shen.comb W1813 W1815)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1811) (shen.parse-failure) W1811)) W1808)) W1804))) +(defun shen. (V1457) (let W1458 (let W1459 (shen. V1457) (if (shen.parse-failure? W1459) (shen.parse-failure) (let W1460 (shen.<-out W1459) (let W1461 (shen.in-> W1459) (shen.comb W1461 W1460))))) (if (shen.parse-failure? W1458) (let W1462 (if (cons? V1457) (let W1463 (head V1457) (let W1464 (tail V1457) (if (atom? W1463) (shen.comb W1464 W1463) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1462) (let W1465 (if (shen.ccons? V1457) (let W1466 (head V1457) (let W1467 (tail V1457) (let W1468 (shen. W1466) (if (shen.parse-failure? W1468) (shen.parse-failure) (let W1469 (shen.<-out W1468) (let W1470 (shen.in-> W1468) (let W1471 ( W1470) (if (shen.parse-failure? W1471) (shen.parse-failure) (let W1472 (shen.in-> W1471) (shen.comb W1467 W1469)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W1465) (shen.parse-failure) W1465)) W1462)) W1458))) -(defun shen. (V1819) (let W1820 (if (cons? V1819) (let W1821 (head V1819) (let W1822 (tail V1819) (if (= W1821 _) (shen.comb W1822 (gensym Y)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1820) (shen.parse-failure) W1820))) +(defun shen. (V1473) (let W1474 (if (cons? V1473) (let W1475 (head V1473) (let W1476 (tail V1473) (if (= W1475 _) (shen.comb W1476 (gensym Y)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1474) (shen.parse-failure) W1474))) -(defun shen. (V1823) (let W1824 (if (cons? V1823) (let W1825 (head V1823) (let W1826 (tail V1823) (if (shen.semicolon? W1825) (shen.comb W1826 W1825) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1824) (shen.parse-failure) W1824))) +(defun shen. (V1477) (let W1478 (if (cons? V1477) (let W1479 (head V1477) (let W1480 (tail V1477) (if (shen.semicolon? W1479) (shen.comb W1480 W1479) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W1478) (shen.parse-failure) W1478))) -(defun shen.horn-clause-procedure (V1827 V1828) (let W1829 (gensym B) (let W1830 (gensym L) (let W1831 (gensym K) (let W1832 (gensym C) (let W1833 (shen.prolog-parameters V1828) (let W1834 (shen.hascut? V1828) (let W1835 (shen.prolog-fbody V1828 W1833 W1829 W1830 W1831 W1832 W1834) (let W1836 (if W1834 (cons let (cons W1831 (cons (cons + (cons W1831 (cons 1 ()))) (cons W1835 ())))) W1835) (let W1837 (cons define (cons V1827 (append W1833 (append (cons W1829 (cons W1830 (cons W1831 (cons W1832 (cons -> ()))))) (cons W1836 ()))))) W1837)))))))))) +(defun shen.horn-clause-procedure (V1481 V1482) (let W1483 (gensym B) (let W1484 (gensym L) (let W1485 (gensym K) (let W1486 (gensym C) (let W1487 (shen.prolog-parameters V1482) (let W1488 (shen.hascut? V1482) (let W1489 (shen.prolog-fbody V1482 W1487 W1483 W1484 W1485 W1486 W1488) (let W1490 (if W1488 (cons let (cons W1485 (cons (cons + (cons W1485 (cons 1 ()))) (cons W1489 ())))) W1489) (let W1491 (cons define (cons V1481 (append W1487 (append (cons W1483 (cons W1484 (cons W1485 (cons W1486 (cons -> ()))))) (cons W1490 ()))))) W1491)))))))))) -(defun shen.hascut? (V1840) (cond ((= ! V1840) true) ((cons? V1840) (or (shen.hascut? (hd V1840)) (shen.hascut? (tl V1840)))) (true false))) +(defun shen.hascut? (V1494) (cond ((= ! V1494) true) ((cons? V1494) (or (shen.hascut? (hd V1494)) (shen.hascut? (tl V1494)))) (true false))) -(defun shen.prolog-parameters (V1845) (cond ((and (cons? V1845) (cons? (hd V1845))) (shen.parameters (length (hd (hd V1845))))) (true (shen.f-error shen.prolog-parameters)))) +(defun shen.prolog-parameters (V1499) (cond ((and (cons? V1499) (cons? (hd V1499))) (shen.parameters (length (hd (hd V1499))))) (true (simple-error "partial function shen.prolog-parameters")))) -(defun shen.prolog-fbody (V1866 V1867 V1868 V1869 V1870 V1871 V1872) (cond ((and (= () V1866) (= true V1872)) (cons shen.unlock (cons V1869 (cons V1870 ())))) ((and (cons? V1866) (and (cons? (hd V1866)) (and (cons? (tl (hd V1866))) (and (= () (tl (tl (hd V1866)))) (and (= () (tl V1866)) (= false V1872)))))) (let W1873 (shen.continue (hd (hd V1866)) (hd (tl (hd V1866))) V1868 V1869 V1870 V1871) (cons if (cons (cons shen.unlocked? (cons V1869 ())) (cons (shen.compile-head shen.+m (hd (hd V1866)) V1867 V1868 W1873) (cons false ())))))) ((and (cons? V1866) (and (cons? (hd V1866)) (and (cons? (tl (hd V1866))) (= () (tl (tl (hd V1866))))))) (let W1874 (gensym C) (let W1875 (shen.continue (hd (hd V1866)) (hd (tl (hd V1866))) V1868 V1869 V1870 V1871) (cons let (cons W1874 (cons (cons if (cons (cons shen.unlocked? (cons V1869 ())) (cons (shen.compile-head shen.+m (hd (hd V1866)) V1867 V1868 W1875) (cons false ())))) (cons (cons if (cons (cons = (cons W1874 (cons false ()))) (cons (shen.prolog-fbody (tl V1866) V1867 V1868 V1869 V1870 V1871 V1872) (cons W1874 ())))) ()))))))) (true (simple-error "implementation error in shen.prolog-fbody")))) +(defun shen.prolog-fbody (V1520 V1521 V1522 V1523 V1524 V1525 V1526) (cond ((and (= () V1520) (= true V1526)) (cons shen.unlock (cons V1523 (cons V1524 ())))) ((and (cons? V1520) (and (cons? (hd V1520)) (and (cons? (tl (hd V1520))) (and (= () (tl (tl (hd V1520)))) (and (= () (tl V1520)) (= false V1526)))))) (let W1527 (shen.continue (hd (hd V1520)) (hd (tl (hd V1520))) V1522 V1523 V1524 V1525) (cons if (cons (cons shen.unlocked? (cons V1523 ())) (cons (shen.compile-head shen.+m (hd (hd V1520)) V1521 V1522 W1527) (cons false ())))))) ((and (cons? V1520) (and (cons? (hd V1520)) (and (cons? (tl (hd V1520))) (= () (tl (tl (hd V1520))))))) (let W1528 (gensym C) (let W1529 (shen.continue (hd (hd V1520)) (hd (tl (hd V1520))) V1522 V1523 V1524 V1525) (cons let (cons W1528 (cons (cons if (cons (cons shen.unlocked? (cons V1523 ())) (cons (shen.compile-head shen.+m (hd (hd V1520)) V1521 V1522 W1529) (cons false ())))) (cons (cons if (cons (cons = (cons W1528 (cons false ()))) (cons (shen.prolog-fbody (tl V1520) V1521 V1522 V1523 V1524 V1525 V1526) (cons W1528 ())))) ()))))))) (true (simple-error "implementation error in shen.prolog-fbody")))) -(defun shen.unlock (V1876 V1877) (if (and (shen.locked? V1876) (shen.fits? V1877 V1876)) (shen.openlock V1876) false)) +(defun shen.unlock (V1530 V1531) (if (and (shen.locked? V1530) (shen.fits? V1531 V1530)) (shen.openlock V1530) false)) -(defun shen.locked? (V1878) (not (shen.unlocked? V1878))) +(defun shen.locked? (V1532) (not (shen.unlocked? V1532))) -(defun shen.unlocked? (V1879) (<-address V1879 1)) +(defun shen.unlocked? (V1533) (<-address V1533 1)) -(defun shen.openlock (V1880) (do (address-> V1880 1 true) false)) +(defun shen.openlock (V1534) (do (address-> V1534 1 true) false)) -(defun shen.fits? (V1881 V1882) (= V1881 (<-address V1882 2))) +(defun shen.fits? (V1535 V1536) (= V1535 (<-address V1536 2))) -(defun shen.cut (V1885 V1886 V1887 V1888) (let W1889 (thaw V1888) (if (and (= W1889 false) (shen.unlocked? V1886)) (shen.lock V1887 V1886) W1889))) +(defun shen.cut (V1539 V1540 V1541 V1542) (let W1543 (thaw V1542) (if (and (= W1543 false) (shen.unlocked? V1540)) (shen.lock V1541 V1540) W1543))) -(defun shen.lock (V1890 V1891) (let W1892 (address-> V1891 1 false) (let W1893 (address-> V1891 2 V1890) false))) +(defun shen.lock (V1544 V1545) (let W1546 (address-> V1545 1 false) (let W1547 (address-> V1545 2 V1544) false))) -(defun shen.continue (V1894 V1895 V1896 V1897 V1898 V1899) (let W1900 (shen.extract-vars V1894) (let W1901 (shen.extract-free-vars V1895) (let W1902 (difference W1901 W1900) (let W1903 (cons do (cons (cons shen.incinfs ()) (cons (shen.compile-body V1895 V1896 V1897 V1898 V1899) ()))) (shen.stpart W1902 W1903 V1896)))))) +(defun shen.continue (V1548 V1549 V1550 V1551 V1552 V1553) (let W1554 (shen.extract-vars V1548) (let W1555 (shen.extract-free-vars V1549) (let W1556 (difference W1555 W1554) (let W1557 (cons do (cons (cons shen.incinfs ()) (cons (shen.compile-body V1549 V1550 V1551 V1552 V1553) ()))) (shen.stpart W1556 W1557 V1550)))))) -(defun shen.extract-free-vars (V1906) (cond ((and (cons? V1906) (and (= lambda (hd V1906)) (and (cons? (tl V1906)) (and (cons? (tl (tl V1906))) (= () (tl (tl (tl V1906)))))))) (remove (hd (tl V1906)) (shen.extract-free-vars (hd (tl (tl V1906)))))) ((cons? V1906) (union (shen.extract-free-vars (hd V1906)) (shen.extract-free-vars (tl V1906)))) ((variable? V1906) (cons V1906 ())) (true ()))) +(defun shen.extract-free-vars (V1560) (cond ((and (cons? V1560) (and (= lambda (hd V1560)) (and (cons? (tl V1560)) (and (cons? (tl (tl V1560))) (= () (tl (tl (tl V1560)))))))) (remove (hd (tl V1560)) (shen.extract-free-vars (hd (tl (tl V1560)))))) ((cons? V1560) (union (shen.extract-free-vars (hd V1560)) (shen.extract-free-vars (tl V1560)))) ((variable? V1560) (cons V1560 ())) (true ()))) -(defun shen.compile-body (V1923 V1924 V1925 V1926 V1927) (cond ((= () V1923) (cons thaw (cons V1927 ()))) ((and (cons? V1923) (= ! (hd V1923))) (shen.compile-body (cons (cons shen.cut ()) (tl V1923)) V1924 V1925 V1926 V1927)) ((and (cons? V1923) (= () (tl V1923))) (append (shen.deref-calls (hd V1923) V1924) (cons V1924 (cons V1925 (cons V1926 (cons V1927 ())))))) ((cons? V1923) (let W1928 (shen.deref-calls (hd V1923) V1924) (append W1928 (cons V1924 (cons V1925 (cons V1926 (cons (shen.freeze-literals (tl V1923) V1924 V1925 V1926 V1927) ()))))))) (true (simple-error "implementation error in shen.compile-fbody")))) +(defun shen.compile-body (V1577 V1578 V1579 V1580 V1581) (cond ((= () V1577) (cons thaw (cons V1581 ()))) ((and (cons? V1577) (= ! (hd V1577))) (shen.compile-body (cons (cons shen.cut ()) (tl V1577)) V1578 V1579 V1580 V1581)) ((and (cons? V1577) (= () (tl V1577))) (append (shen.deref-calls (hd V1577) V1578) (cons V1578 (cons V1579 (cons V1580 (cons V1581 ())))))) ((cons? V1577) (let W1582 (shen.deref-calls (hd V1577) V1578) (append W1582 (cons V1578 (cons V1579 (cons V1580 (cons (shen.freeze-literals (tl V1577) V1578 V1579 V1580 V1581) ()))))))) (true (simple-error "implementation error in shen.compile-fbody")))) -(defun shen.freeze-literals (V1945 V1946 V1947 V1948 V1949) (cond ((= () V1945) V1949) ((and (cons? V1945) (= ! (hd V1945))) (shen.freeze-literals (cons (cons shen.cut ()) (tl V1945)) V1946 V1947 V1948 V1949)) ((cons? V1945) (let W1950 (shen.deref-calls (hd V1945) V1946) (cons freeze (cons (append W1950 (cons V1946 (cons V1947 (cons V1948 (cons (shen.freeze-literals (tl V1945) V1946 V1947 V1948 V1949) ()))))) ())))) (true (simple-error "implementation error in shen.freeze-literals")))) +(defun shen.freeze-literals (V1599 V1600 V1601 V1602 V1603) (cond ((= () V1599) V1603) ((and (cons? V1599) (= ! (hd V1599))) (shen.freeze-literals (cons (cons shen.cut ()) (tl V1599)) V1600 V1601 V1602 V1603)) ((cons? V1599) (let W1604 (shen.deref-calls (hd V1599) V1600) (cons freeze (cons (append W1604 (cons V1600 (cons V1601 (cons V1602 (cons (shen.freeze-literals (tl V1599) V1600 V1601 V1602 V1603) ()))))) ())))) (true (simple-error "implementation error in shen.freeze-literals")))) -(defun shen.deref-calls (V1955 V1956) (cond ((and (cons? V1955) (= fork (hd V1955))) (cons fork (cons (shen.deref-forked-literals (tl V1955) V1956) ()))) ((cons? V1955) (cons (hd V1955) (map (lambda Z1957 (shen.function-calls Z1957 V1956)) (tl V1955)))) (true (simple-error "implementation error in shen.deref-calls")))) +(defun shen.deref-calls (V1609 V1610) (cond ((and (cons? V1609) (= fork (hd V1609))) (cons fork (cons (shen.deref-forked-literals (tl V1609) V1610) ()))) ((cons? V1609) (cons (hd V1609) (map (lambda Z1611 (shen.function-calls Z1611 V1610)) (tl V1609)))) (true (simple-error "implementation error in shen.deref-calls")))) -(defun shen.deref-forked-literals (V1964 V1965) (cond ((= () V1964) ()) ((cons? V1964) (cons cons (cons (shen.deref-calls (hd V1964) V1965) (cons (shen.deref-forked-literals (tl V1964) V1965) ())))) (true (simple-error "fork requires a list of literals +(defun shen.deref-forked-literals (V1618 V1619) (cond ((= () V1618) ()) ((cons? V1618) (cons cons (cons (shen.deref-calls (hd V1618) V1619) (cons (shen.deref-forked-literals (tl V1618) V1619) ())))) (true (simple-error "fork requires a list of literals ")))) -(defun shen.function-calls (V1968 V1969) (cond ((and (cons? V1968) (and (= cons (hd V1968)) (and (cons? (tl V1968)) (and (cons? (tl (tl V1968))) (= () (tl (tl (tl V1968)))))))) (cons cons (cons (shen.function-calls (hd (tl V1968)) V1969) (cons (shen.function-calls (hd (tl (tl V1968))) V1969) ())))) ((cons? V1968) (shen.deref-terms V1968 V1969 ())) (true V1968))) +(defun shen.function-calls (V1622 V1623) (cond ((and (cons? V1622) (and (= cons (hd V1622)) (and (cons? (tl V1622)) (and (cons? (tl (tl V1622))) (= () (tl (tl (tl V1622)))))))) (cons cons (cons (shen.function-calls (hd (tl V1622)) V1623) (cons (shen.function-calls (hd (tl (tl V1622))) V1623) ())))) ((cons? V1622) (shen.deref-terms V1622 V1623 ())) (true V1622))) -(defun shen.deref-terms (V1978 V1979 V1980) (cond ((and (cons? V1978) (and (= 0 (hd V1978)) (and (cons? (tl V1978)) (= () (tl (tl V1978)))))) (if (variable? (hd (tl V1978))) (hd (tl V1978)) (simple-error (cn "attempt to optimise a non-variable " (shen.app (hd (tl V1978)) " -" shen.s))))) ((and (cons? V1978) (and (= 1 (hd V1978)) (and (cons? (tl V1978)) (= () (tl (tl V1978)))))) (if (variable? (hd (tl V1978))) (cons shen.lazyderef (cons (hd (tl V1978)) (cons V1979 ()))) (simple-error (cn "attempt to optimise a non-variable " (shen.app (hd (tl V1978)) " -" shen.s))))) ((and (not (element? V1978 V1980)) (variable? V1978)) (cons shen.deref (cons V1978 (cons V1979 ())))) ((and (cons? V1978) (and (= lambda (hd V1978)) (and (cons? (tl V1978)) (and (cons? (tl (tl V1978))) (= () (tl (tl (tl V1978)))))))) (cons lambda (cons (hd (tl V1978)) (cons (shen.deref-terms (hd (tl (tl V1978))) V1979 (cons (hd (tl V1978)) V1980)) ())))) ((cons? V1978) (map (lambda Z1981 (shen.deref-terms Z1981 V1979 V1980)) V1978)) (true V1978))) +(defun shen.deref-terms (V1632 V1633 V1634) (cond ((and (cons? V1632) (and (= 0 (hd V1632)) (and (cons? (tl V1632)) (= () (tl (tl V1632)))))) (if (variable? (hd (tl V1632))) (hd (tl V1632)) (simple-error (cn "attempt to optimise a non-variable " (shen.app (hd (tl V1632)) " +" shen.s))))) ((and (cons? V1632) (and (= 1 (hd V1632)) (and (cons? (tl V1632)) (= () (tl (tl V1632)))))) (if (variable? (hd (tl V1632))) (cons shen.lazyderef (cons (hd (tl V1632)) (cons V1633 ()))) (simple-error (cn "attempt to optimise a non-variable " (shen.app (hd (tl V1632)) " +" shen.s))))) ((and (not (element? V1632 V1634)) (variable? V1632)) (cons shen.deref (cons V1632 (cons V1633 ())))) ((and (cons? V1632) (and (= lambda (hd V1632)) (and (cons? (tl V1632)) (and (cons? (tl (tl V1632))) (= () (tl (tl (tl V1632)))))))) (cons lambda (cons (hd (tl V1632)) (cons (shen.deref-terms (hd (tl (tl V1632))) V1633 (cons (hd (tl V1632)) V1634)) ())))) ((cons? V1632) (map (lambda Z1635 (shen.deref-terms Z1635 V1633 V1634)) V1632)) (true V1632))) -(defun shen.compile-head (V1999 V2000 V2001 V2002 V2003) (cond ((and (= () V2000) (= () V2001)) V2003) ((and (cons? V2000) (and (cons? (hd V2000)) (and (= shen.+m (hd (hd V2000))) (and (cons? (tl (hd V2000))) (= () (tl (tl (hd V2000)))))))) (shen.compile-head V1999 (cons shen.+m (cons (hd (tl (hd V2000))) (cons V1999 (tl V2000)))) V2001 V2002 V2003)) ((and (cons? V2000) (and (cons? (hd V2000)) (and (= shen.-m (hd (hd V2000))) (and (cons? (tl (hd V2000))) (= () (tl (tl (hd V2000)))))))) (shen.compile-head V1999 (cons shen.-m (cons (hd (tl (hd V2000))) (cons V1999 (tl V2000)))) V2001 V2002 V2003)) ((and (cons? V2000) (= shen.-m (hd V2000))) (shen.compile-head shen.-m (tl V2000) V2001 V2002 V2003)) ((and (cons? V2000) (= shen.+m (hd V2000))) (shen.compile-head shen.+m (tl V2000) V2001 V2002 V2003)) ((and (cons? V2000) (and (cons? V2001) (shen.wildcard? (hd V2000)))) (shen.compile-head V1999 (tl V2000) (tl V2001) V2002 V2003)) ((and (cons? V2000) (variable? (hd V2000))) (shen.variable-case V1999 V2000 V2001 V2002 V2003)) ((and (= shen.-m V1999) (and (cons? V2000) (atom? (hd V2000)))) (shen.atom-case-minus V2000 V2001 V2002 V2003)) ((and (= shen.-m V1999) (and (cons? V2000) (and (cons? (hd V2000)) (and (= cons (hd (hd V2000))) (and (cons? (tl (hd V2000))) (and (cons? (tl (tl (hd V2000)))) (= () (tl (tl (tl (hd V2000))))))))))) (shen.cons-case-minus V2000 V2001 V2002 V2003)) ((and (= shen.+m V1999) (and (cons? V2000) (atom? (hd V2000)))) (shen.atom-case-plus V2000 V2001 V2002 V2003)) ((and (= shen.+m V1999) (and (cons? V2000) (and (cons? (hd V2000)) (and (= cons (hd (hd V2000))) (and (cons? (tl (hd V2000))) (and (cons? (tl (tl (hd V2000)))) (= () (tl (tl (tl (hd V2000))))))))))) (shen.cons-case-plus V2000 V2001 V2002 V2003)) (true (simple-error "implementation error in shen.compile-head")))) +(defun shen.compile-head (V1653 V1654 V1655 V1656 V1657) (cond ((and (= () V1654) (= () V1655)) V1657) ((and (cons? V1654) (and (cons? (hd V1654)) (and (= shen.+m (hd (hd V1654))) (and (cons? (tl (hd V1654))) (= () (tl (tl (hd V1654)))))))) (shen.compile-head V1653 (cons shen.+m (cons (hd (tl (hd V1654))) (cons V1653 (tl V1654)))) V1655 V1656 V1657)) ((and (cons? V1654) (and (cons? (hd V1654)) (and (= shen.-m (hd (hd V1654))) (and (cons? (tl (hd V1654))) (= () (tl (tl (hd V1654)))))))) (shen.compile-head V1653 (cons shen.-m (cons (hd (tl (hd V1654))) (cons V1653 (tl V1654)))) V1655 V1656 V1657)) ((and (cons? V1654) (= shen.-m (hd V1654))) (shen.compile-head shen.-m (tl V1654) V1655 V1656 V1657)) ((and (cons? V1654) (= shen.+m (hd V1654))) (shen.compile-head shen.+m (tl V1654) V1655 V1656 V1657)) ((and (cons? V1654) (and (cons? V1655) (shen.wildcard? (hd V1654)))) (shen.compile-head V1653 (tl V1654) (tl V1655) V1656 V1657)) ((and (cons? V1654) (variable? (hd V1654))) (shen.variable-case V1653 V1654 V1655 V1656 V1657)) ((and (= shen.-m V1653) (and (cons? V1654) (atom? (hd V1654)))) (shen.atom-case-minus V1654 V1655 V1656 V1657)) ((and (= shen.-m V1653) (and (cons? V1654) (and (cons? (hd V1654)) (and (= cons (hd (hd V1654))) (and (cons? (tl (hd V1654))) (and (cons? (tl (tl (hd V1654)))) (= () (tl (tl (tl (hd V1654))))))))))) (shen.cons-case-minus V1654 V1655 V1656 V1657)) ((and (= shen.+m V1653) (and (cons? V1654) (atom? (hd V1654)))) (shen.atom-case-plus V1654 V1655 V1656 V1657)) ((and (= shen.+m V1653) (and (cons? V1654) (and (cons? (hd V1654)) (and (= cons (hd (hd V1654))) (and (cons? (tl (hd V1654))) (and (cons? (tl (tl (hd V1654)))) (= () (tl (tl (tl (hd V1654))))))))))) (shen.cons-case-plus V1654 V1655 V1656 V1657)) (true (simple-error "implementation error in shen.compile-head")))) -(defun shen.variable-case (V2014 V2015 V2016 V2017 V2018) (cond ((and (cons? V2015) (cons? V2016)) (if (variable? (hd V2016)) (shen.compile-head V2014 (tl V2015) (tl V2016) V2017 (subst (hd V2016) (hd V2015) V2018)) (cons let (cons (hd V2015) (cons (hd V2016) (cons (shen.compile-head V2014 (tl V2015) (tl V2016) V2017 V2018) ())))))) (true (simple-error "implementation error in shen.variable-case")))) +(defun shen.variable-case (V1668 V1669 V1670 V1671 V1672) (cond ((and (cons? V1669) (cons? V1670)) (if (variable? (hd V1670)) (shen.compile-head V1668 (tl V1669) (tl V1670) V1671 (subst (hd V1670) (hd V1669) V1672)) (cons let (cons (hd V1669) (cons (hd V1670) (cons (shen.compile-head V1668 (tl V1669) (tl V1670) V1671 V1672) ())))))) (true (simple-error "implementation error in shen.variable-case")))) -(defun shen.atom-case-minus (V2027 V2028 V2029 V2030) (cond ((and (cons? V2027) (cons? V2028)) (let W2031 (gensym Tm) (cons let (cons W2031 (cons (cons shen.lazyderef (cons (hd V2028) (cons V2029 ()))) (cons (cons if (cons (cons = (cons W2031 (cons (hd V2027) ()))) (cons (shen.compile-head shen.-m (tl V2027) (tl V2028) V2029 V2030) (cons false ())))) ())))))) (true (simple-error "implementation error in shen.atom-case-minus")))) +(defun shen.atom-case-minus (V1681 V1682 V1683 V1684) (cond ((and (cons? V1681) (cons? V1682)) (let W1685 (gensym Tm) (cons let (cons W1685 (cons (cons shen.lazyderef (cons (hd V1682) (cons V1683 ()))) (cons (cons if (cons (cons = (cons W1685 (cons (hd V1681) ()))) (cons (shen.compile-head shen.-m (tl V1681) (tl V1682) V1683 V1684) (cons false ())))) ())))))) (true (simple-error "implementation error in shen.atom-case-minus")))) -(defun shen.cons-case-minus (V2040 V2041 V2042 V2043) (cond ((and (cons? V2040) (and (cons? (hd V2040)) (and (= cons (hd (hd V2040))) (and (cons? (tl (hd V2040))) (and (cons? (tl (tl (hd V2040)))) (and (= () (tl (tl (tl (hd V2040))))) (cons? V2041))))))) (let W2044 (gensym Tm) (cons let (cons W2044 (cons (cons shen.lazyderef (cons (hd V2041) (cons V2042 ()))) (cons (cons if (cons (cons cons? (cons W2044 ())) (cons (shen.compile-head shen.-m (cons (hd (tl (hd V2040))) (cons (hd (tl (tl (hd V2040)))) (tl V2040))) (cons (cons hd (cons W2044 ())) (cons (cons tl (cons W2044 ())) (tl V2041))) V2042 V2043) (cons false ())))) ())))))) (true (simple-error "implementation error in shen.cons-case-minus")))) +(defun shen.cons-case-minus (V1694 V1695 V1696 V1697) (cond ((and (cons? V1694) (and (cons? (hd V1694)) (and (= cons (hd (hd V1694))) (and (cons? (tl (hd V1694))) (and (cons? (tl (tl (hd V1694)))) (and (= () (tl (tl (tl (hd V1694))))) (cons? V1695))))))) (let W1698 (gensym Tm) (cons let (cons W1698 (cons (cons shen.lazyderef (cons (hd V1695) (cons V1696 ()))) (cons (cons if (cons (cons cons? (cons W1698 ())) (cons (shen.compile-head shen.-m (cons (hd (tl (hd V1694))) (cons (hd (tl (tl (hd V1694)))) (tl V1694))) (cons (cons hd (cons W1698 ())) (cons (cons tl (cons W1698 ())) (tl V1695))) V1696 V1697) (cons false ())))) ())))))) (true (simple-error "implementation error in shen.cons-case-minus")))) -(defun shen.atom-case-plus (V2053 V2054 V2055 V2056) (cond ((and (cons? V2053) (cons? V2054)) (let W2057 (gensym Tm) (let W2058 (gensym GoTo) (cons let (cons W2057 (cons (cons shen.lazyderef (cons (hd V2054) (cons V2055 ()))) (cons W2058 (cons (cons freeze (cons (shen.compile-head shen.+m (tl V2053) (tl V2054) V2055 V2056) ())) (cons (cons if (cons (cons = (cons W2057 (cons (hd V2053) ()))) (cons (cons thaw (cons W2058 ())) (cons (cons if (cons (cons shen.pvar? (cons W2057 ())) (cons (cons shen.bind! (cons W2057 (cons (shen.demode (hd V2053)) (cons V2055 (cons W2058 ()))))) (cons false ())))) ())))) ()))))))))) (true (simple-error "implementation error in shen.atom-case-plus")))) +(defun shen.atom-case-plus (V1707 V1708 V1709 V1710) (cond ((and (cons? V1707) (cons? V1708)) (let W1711 (gensym Tm) (let W1712 (gensym GoTo) (cons let (cons W1711 (cons (cons shen.lazyderef (cons (hd V1708) (cons V1709 ()))) (cons W1712 (cons (cons freeze (cons (shen.compile-head shen.+m (tl V1707) (tl V1708) V1709 V1710) ())) (cons (cons if (cons (cons = (cons W1711 (cons (hd V1707) ()))) (cons (cons thaw (cons W1712 ())) (cons (cons if (cons (cons shen.pvar? (cons W1711 ())) (cons (cons shen.bind! (cons W1711 (cons (shen.demode (hd V1707)) (cons V1709 (cons W1712 ()))))) (cons false ())))) ())))) ()))))))))) (true (simple-error "implementation error in shen.atom-case-plus")))) -(defun shen.cons-case-plus (V2067 V2068 V2069 V2070) (cond ((and (cons? V2067) (and (cons? (hd V2067)) (and (= cons (hd (hd V2067))) (and (cons? (tl (hd V2067))) (and (cons? (tl (tl (hd V2067)))) (and (= () (tl (tl (tl (hd V2067))))) (cons? V2068))))))) (let W2071 (gensym Tm) (let W2072 (gensym GoTo) (let W2073 (shen.extract-vars (cons (hd (tl (hd V2067))) (hd (tl (tl (hd V2067)))))) (let W2074 (shen.tame (hd V2067)) (let W2075 (shen.extract-vars W2074) (cons let (cons W2071 (cons (cons shen.lazyderef (cons (hd V2068) (cons V2069 ()))) (cons W2072 (cons (shen.goto W2073 (shen.compile-head shen.+m (tl V2067) (tl V2068) V2069 V2070)) (cons (cons if (cons (cons cons? (cons W2071 ())) (cons (shen.compile-head shen.+m (tl (hd V2067)) (cons (cons hd (cons W2071 ())) (cons (cons tl (cons W2071 ())) ())) V2069 (shen.invoke W2072 W2073)) (cons (cons if (cons (cons shen.pvar? (cons W2071 ())) (cons (shen.stpart W2075 (cons shen.bind! (cons W2071 (cons (shen.demode W2074) (cons V2069 (cons (cons freeze (cons (shen.invoke W2072 W2073) ())) ()))))) V2069) (cons false ())))) ())))) ())))))))))))) (true (simple-error "implementation error in shen.cons-case-plus")))) +(defun shen.cons-case-plus (V1721 V1722 V1723 V1724) (cond ((and (cons? V1721) (and (cons? (hd V1721)) (and (= cons (hd (hd V1721))) (and (cons? (tl (hd V1721))) (and (cons? (tl (tl (hd V1721)))) (and (= () (tl (tl (tl (hd V1721))))) (cons? V1722))))))) (let W1725 (gensym Tm) (let W1726 (gensym GoTo) (let W1727 (shen.extract-vars (cons (hd (tl (hd V1721))) (hd (tl (tl (hd V1721)))))) (let W1728 (shen.tame (hd V1721)) (let W1729 (shen.extract-vars W1728) (cons let (cons W1725 (cons (cons shen.lazyderef (cons (hd V1722) (cons V1723 ()))) (cons W1726 (cons (shen.goto W1727 (shen.compile-head shen.+m (tl V1721) (tl V1722) V1723 V1724)) (cons (cons if (cons (cons cons? (cons W1725 ())) (cons (shen.compile-head shen.+m (tl (hd V1721)) (cons (cons hd (cons W1725 ())) (cons (cons tl (cons W1725 ())) ())) V1723 (shen.invoke W1726 W1727)) (cons (cons if (cons (cons shen.pvar? (cons W1725 ())) (cons (shen.stpart W1729 (cons shen.bind! (cons W1725 (cons (shen.demode W1728) (cons V1723 (cons (cons freeze (cons (shen.invoke W1726 W1727) ())) ()))))) V1723) (cons false ())))) ())))) ())))))))))))) (true (simple-error "implementation error in shen.cons-case-plus")))) -(defun shen.demode (V2076) (cond ((and (cons? V2076) (and (= shen.+m (hd V2076)) (and (cons? (tl V2076)) (= () (tl (tl V2076)))))) (shen.demode (hd (tl V2076)))) ((and (cons? V2076) (and (= shen.-m (hd V2076)) (and (cons? (tl V2076)) (= () (tl (tl V2076)))))) (shen.demode (hd (tl V2076)))) ((cons? V2076) (map (lambda Z2077 (shen.demode Z2077)) V2076)) (true V2076))) +(defun shen.demode (V1730) (cond ((and (cons? V1730) (and (= shen.+m (hd V1730)) (and (cons? (tl V1730)) (= () (tl (tl V1730)))))) (shen.demode (hd (tl V1730)))) ((and (cons? V1730) (and (= shen.-m (hd V1730)) (and (cons? (tl V1730)) (= () (tl (tl V1730)))))) (shen.demode (hd (tl V1730)))) ((cons? V1730) (map (lambda Z1731 (shen.demode Z1731)) V1730)) (true V1730))) -(defun shen.tame (V2078) (cond ((shen.wildcard? V2078) (gensym Y)) ((cons? V2078) (map (lambda Z2079 (shen.tame Z2079)) V2078)) (true V2078))) +(defun shen.tame (V1732) (cond ((shen.wildcard? V1732) (gensym Y)) ((cons? V1732) (map (lambda Z1733 (shen.tame Z1733)) V1732)) (true V1732))) -(defun shen.goto (V2080 V2081) (cond ((= () V2080) (cons freeze (cons V2081 ()))) (true (shen.goto-h V2080 V2081)))) +(defun shen.goto (V1734 V1735) (cond ((= () V1734) (cons freeze (cons V1735 ()))) (true (shen.goto-h V1734 V1735)))) -(defun shen.goto-h (V2082 V2083) (cond ((= () V2082) V2083) ((cons? V2082) (cons lambda (cons (hd V2082) (cons (shen.goto-h (tl V2082) V2083) ())))) (true (shen.f-error shen.goto-h)))) +(defun shen.goto-h (V1736 V1737) (cond ((= () V1736) V1737) ((cons? V1736) (cons lambda (cons (hd V1736) (cons (shen.goto-h (tl V1736) V1737) ())))) (true (simple-error "partial function shen.goto-h")))) -(defun shen.invoke (V2084 V2085) (cond ((= () V2085) (cons thaw (cons V2084 ()))) (true (cons V2084 V2085)))) +(defun shen.invoke (V1738 V1739) (cond ((= () V1739) (cons thaw (cons V1738 ()))) (true (cons V1738 V1739)))) -(defun shen.wildcard? (V2086) (= V2086 _)) +(defun shen.wildcard? (V1740) (= V1740 _)) -(defun shen.pvar? (V2087) (and (absvector? V2087) (= (trap-error (<-address V2087 0) (lambda Z2088 shen.not-pvar)) shen.pvar))) +(defun shen.pvar? (V1741) (trap-error (and (absvector? V1741) (= (<-address V1741 0) shen.pvar)) (lambda Z1742 false))) -(defun shen.lazyderef (V2089 V2090) (if (shen.pvar? V2089) (let W2091 (<-address V2090 (<-address V2089 1)) (if (= W2091 shen.-null-) V2089 (shen.lazyderef W2091 V2090))) V2089)) +(defun shen.lazyderef (V1743 V1744) (if (shen.pvar? V1743) (let W1745 (<-address V1744 (<-address V1743 1)) (if (= W1745 shen.-null-) V1743 (shen.lazyderef W1745 V1744))) V1743)) -(defun shen.deref (V2092 V2093) (cond ((cons? V2092) (cons (shen.deref (hd V2092) V2093) (shen.deref (tl V2092) V2093))) (true (if (shen.pvar? V2092) (let W2094 (<-address V2093 (<-address V2092 1)) (if (= W2094 shen.-null-) V2092 (shen.deref W2094 V2093))) V2092)))) +(defun shen.deref (V1746 V1747) (cond ((cons? V1746) (cons (shen.deref (hd V1746) V1747) (shen.deref (tl V1746) V1747))) (true (if (shen.pvar? V1746) (let W1748 (<-address V1747 (<-address V1746 1)) (if (= W1748 shen.-null-) V1746 (shen.deref W1748 V1747))) V1746)))) -(defun shen.bind! (V2095 V2096 V2097 V2098) (let W2099 (shen.bindv V2095 V2096 V2097) (let W2100 (thaw V2098) (if (= W2100 false) (shen.unwind V2095 V2097 W2100) W2100)))) +(defun shen.bind! (V1749 V1750 V1751 V1752) (let W1753 (shen.bindv V1749 V1750 V1751) (let W1754 (thaw V1752) (if (= W1754 false) (shen.unwind V1749 V1751 W1754) W1754)))) -(defun shen.bindv (V2101 V2102 V2103) (address-> V2103 (<-address V2101 1) V2102)) +(defun shen.bindv (V1755 V1756 V1757) (address-> V1757 (<-address V1755 1) V1756)) -(defun shen.unwind (V2104 V2105 V2106) (do (address-> V2105 (<-address V2104 1) shen.-null-) V2106)) +(defun shen.unwind (V1758 V1759 V1760) (do (address-> V1759 (<-address V1758 1) shen.-null-) V1760)) -(defun shen.stpart (V2115 V2116 V2117) (cond ((= () V2115) V2116) ((cons? V2115) (cons let (cons (hd V2115) (cons (cons shen.newpv (cons V2117 ())) (cons (cons shen.gc (cons V2117 (cons (shen.stpart (tl V2115) V2116 V2117) ()))) ()))))) (true (simple-error "implementation error in shen.stpart")))) +(defun shen.stpart (V1769 V1770 V1771) (cond ((= () V1769) V1770) ((cons? V1769) (cons let (cons (hd V1769) (cons (cons shen.newpv (cons V1771 ())) (cons (cons shen.gc (cons V1771 (cons (shen.stpart (tl V1769) V1770 V1771) ()))) ()))))) (true (simple-error "implementation error in shen.stpart")))) -(defun shen.gc (V2118 V2119) (if (= V2119 false) (let W2120 (shen.ticket-number V2118) (do (shen.decrement-ticket W2120 V2118) V2119)) V2119)) +(defun shen.gc (V1772 V1773) (if (= V1773 false) (let W1774 (shen.ticket-number V1772) (do (shen.decrement-ticket W1774 V1772) V1773)) V1773)) -(defun shen.decrement-ticket (V2121 V2122) (address-> V2122 1 (- V2121 1))) +(defun shen.decrement-ticket (V1775 V1776) (address-> V1776 1 (- V1775 1))) -(defun shen.newpv (V2123) (let W2124 (shen.ticket-number V2123) (let W2125 (shen.make-prolog-variable W2124) (let W2126 (shen.nextticket V2123 W2124) W2125)))) +(defun shen.newpv (V1777) (let W1778 (shen.ticket-number V1777) (let W1779 (shen.make-prolog-variable W1778) (let W1780 (shen.nextticket V1777 W1778) W1779)))) -(defun shen.ticket-number (V2127) (<-address V2127 1)) +(defun shen.ticket-number (V1781) (<-address V1781 1)) -(defun shen.nextticket (V2128 V2129) (let W2130 (address-> V2128 V2129 shen.-null-) (address-> W2130 1 (+ V2129 1)))) +(defun shen.nextticket (V1782 V1783) (let W1784 (address-> V1782 V1783 shen.-null-) (address-> W1784 1 (+ V1783 1)))) -(defun shen.make-prolog-variable (V2131) (address-> (address-> (absvector 2) 0 shen.pvar) 1 V2131)) +(defun shen.make-prolog-variable (V1785) (address-> (address-> (absvector 2) 0 shen.pvar) 1 V1785)) -(defun shen.pvar (V2132) (cn "Var" (shen.app (<-address V2132 1) "" shen.a))) +(defun shen.pvar (V1786) (cn "Var" (shen.app (<-address V1786 1) "" shen.a))) (defun shen.incinfs () (set shen.*infs* (+ 1 (value shen.*infs*)))) -(defun shen.prolog-vector-size (V2133) (if (and (integer? V2133) (> V2133 0)) (set shen.*size-prolog-vector* V2133) (simple-error (cn "prolog vector size: size should be a positive integer; not " (shen.app V2133 "" shen.a))))) +(defun shen.prolog-vector-size (V1787) (if (and (integer? V1787) (> V1787 0)) (set shen.*size-prolog-vector* V1787) (simple-error (cn "prolog vector size: size should be a positive integer; not " (shen.app V1787 "" shen.a))))) -(defun shen.lzy=! (V2145 V2146 V2147 V2148) (cond ((= V2145 V2146) (thaw V2148)) ((and (shen.pvar? V2145) (not (shen.occurs-check? V2145 (shen.deref V2146 V2147)))) (shen.bind! V2145 V2146 V2147 V2148)) ((and (shen.pvar? V2146) (not (shen.occurs-check? V2146 (shen.deref V2145 V2147)))) (shen.bind! V2146 V2145 V2147 V2148)) ((and (cons? V2145) (cons? V2146)) (shen.lzy=! (shen.lazyderef (hd V2145) V2147) (shen.lazyderef (hd V2146) V2147) V2147 (freeze (shen.lzy=! (shen.lazyderef (tl V2145) V2147) (shen.lazyderef (tl V2146) V2147) V2147 V2148)))) (true false))) +(defun shen.lzy=! (V1799 V1800 V1801 V1802) (cond ((= V1799 V1800) (thaw V1802)) ((and (shen.pvar? V1799) (not (shen.occurs-check? V1799 (shen.deref V1800 V1801)))) (shen.bind! V1799 V1800 V1801 V1802)) ((and (shen.pvar? V1800) (not (shen.occurs-check? V1800 (shen.deref V1799 V1801)))) (shen.bind! V1800 V1799 V1801 V1802)) ((and (cons? V1799) (cons? V1800)) (shen.lzy=! (shen.lazyderef (hd V1799) V1801) (shen.lazyderef (hd V1800) V1801) V1801 (freeze (shen.lzy=! (shen.lazyderef (tl V1799) V1801) (shen.lazyderef (tl V1800) V1801) V1801 V1802)))) (true false))) -(defun shen.lzy= (V2160 V2161 V2162 V2163) (cond ((= V2160 V2161) (thaw V2163)) ((shen.pvar? V2160) (shen.bind! V2160 V2161 V2162 V2163)) ((shen.pvar? V2161) (shen.bind! V2161 V2160 V2162 V2163)) ((and (cons? V2160) (cons? V2161)) (shen.lzy= (shen.lazyderef (hd V2160) V2162) (shen.lazyderef (hd V2161) V2162) V2162 (freeze (shen.lzy= (shen.lazyderef (tl V2160) V2162) (shen.lazyderef (tl V2161) V2162) V2162 V2163)))) (true false))) +(defun shen.lzy= (V1814 V1815 V1816 V1817) (cond ((= V1814 V1815) (thaw V1817)) ((shen.pvar? V1814) (shen.bind! V1814 V1815 V1816 V1817)) ((shen.pvar? V1815) (shen.bind! V1815 V1814 V1816 V1817)) ((and (cons? V1814) (cons? V1815)) (shen.lzy= (shen.lazyderef (hd V1814) V1816) (shen.lazyderef (hd V1815) V1816) V1816 (freeze (shen.lzy= (shen.lazyderef (tl V1814) V1816) (shen.lazyderef (tl V1815) V1816) V1816 V1817)))) (true false))) -(defun shen.occurs-check? (V2169 V2170) (cond ((= V2169 V2170) true) ((cons? V2170) (or (shen.occurs-check? V2169 (hd V2170)) (shen.occurs-check? V2169 (tl V2170)))) (true false))) +(defun shen.occurs-check? (V1823 V1824) (cond ((= V1823 V1824) true) ((cons? V1824) (or (shen.occurs-check? V1823 (hd V1824)) (shen.occurs-check? V1823 (tl V1824)))) (true false))) -(defun call (V2171 V2172 V2173 V2174 V2175) ((((V2171 V2172) V2173) V2174) V2175)) +(defun call (V1825 V1826 V1827 V1828 V1829) ((((V1825 V1826) V1827) V1828) V1829)) -(defun return (V2182 V2183 V2184 V2185 V2186) (shen.deref V2182 V2183)) +(defun return (V1836 V1837 V1838 V1839 V1840) (shen.deref V1836 V1837)) -(defun when (V2193 V2194 V2195 V2196 V2197) (if V2193 (thaw V2197) false)) +(defun when (V1847 V1848 V1849 V1850 V1851) (if V1847 (thaw V1851) false)) -(defun is (V2198 V2199 V2200 V2201 V2202 V2203) (shen.lzy= (shen.lazyderef V2198 V2200) (shen.lazyderef V2199 V2200) V2200 V2203)) +(defun is (V1852 V1853 V1854 V1855 V1856 V1857) (shen.lzy= (shen.lazyderef V1852 V1854) (shen.lazyderef V1853 V1854) V1854 V1857)) -(defun is! (V2204 V2205 V2206 V2207 V2208 V2209) (shen.lzy=! (shen.lazyderef V2204 V2206) (shen.lazyderef V2205 V2206) V2206 V2209)) +(defun is! (V1858 V1859 V1860 V1861 V1862 V1863) (shen.lzy=! (shen.lazyderef V1858 V1860) (shen.lazyderef V1859 V1860) V1860 V1863)) -(defun bind (V2214 V2215 V2216 V2217 V2218 V2219) (shen.bind! V2214 V2215 V2216 V2219)) +(defun bind (V1868 V1869 V1870 V1871 V1872 V1873) (shen.bind! V1868 V1869 V1870 V1873)) -(defun var? (V2220 V2221 V2222 V2223 V2224) (if (shen.pvar? (shen.lazyderef V2220 V2221)) (thaw V2224) false)) +(defun var? (V1874 V1875 V1876 V1877 V1878) (if (shen.pvar? (shen.lazyderef V1874 V1875)) (thaw V1878) false)) -(defun shen.print-prolog-vector (V2227) "|prolog vector|") +(defun shen.print-prolog-vector (V1881) "|prolog vector|") -(defun fork (V2246 V2247 V2248 V2249 V2250) (cond ((= () V2246) false) ((cons? V2246) (let W2251 (((((hd V2246) V2247) V2248) V2249) V2250) (if (= W2251 false) (fork (tl V2246) V2247 V2248 V2249 V2250) W2251))) (true (simple-error "fork expects a list of literals +(defun fork (V1900 V1901 V1902 V1903 V1904) (cond ((= () V1900) false) ((cons? V1900) (let W1905 (((((hd V1900) V1901) V1902) V1903) V1904) (if (= W1905 false) (fork (tl V1900) V1901 V1902 V1903 V1904) W1905))) (true (simple-error "fork expects a list of literals ")))) -(defun findall (V2252 V2253 V2254 V2255 V2256 V2257 V2258) (if (shen.unlocked? V2256) (let W2259 (shen.newpv V2255) (shen.gc V2255 (do (shen.incinfs) (is W2259 () V2255 V2256 V2257 (freeze (shen.findall-h V2252 V2253 V2254 W2259 V2255 V2256 V2257 V2258)))))) false)) +(defun findall (V1906 V1907 V1908 V1909 V1910 V1911 V1912) (if (shen.unlocked? V1910) (let W1913 (shen.newpv V1909) (shen.gc V1909 (do (shen.incinfs) (is W1913 () V1909 V1910 V1911 (freeze (shen.findall-h V1906 V1907 V1908 W1913 V1909 V1910 V1911 V1912)))))) false)) -(defun shen.findall-h (V2260 V2261 V2262 V2263 V2264 V2265 V2266 V2267) (let W2268 (if (shen.unlocked? V2265) (do (shen.incinfs) (call V2261 V2264 V2265 V2266 (freeze (shen.overbind V2260 V2263 V2264 V2265 V2266 V2267)))) false) (if (= W2268 false) (if (shen.unlocked? V2265) (do (shen.incinfs) (is! V2262 V2263 V2264 V2265 V2266 V2267)) false) W2268))) +(defun shen.findall-h (V1914 V1915 V1916 V1917 V1918 V1919 V1920 V1921) (let W1922 (if (shen.unlocked? V1919) (do (shen.incinfs) (call V1915 V1918 V1919 V1920 (freeze (shen.overbind V1914 V1917 V1918 V1919 V1920 V1921)))) false) (if (= W1922 false) (if (shen.unlocked? V1919) (do (shen.incinfs) (is! V1916 V1917 V1918 V1919 V1920 V1921)) false) W1922))) -(defun shen.overbind (V2275 V2276 V2277 V2278 V2279 V2280) (do (shen.bindv V2276 (cons (shen.deref V2275 V2277) (shen.lazyderef V2276 V2277)) V2277) false)) +(defun shen.overbind (V1929 V1930 V1931 V1932 V1933 V1934) (do (shen.bindv V1930 (cons (shen.deref V1929 V1931) (shen.lazyderef V1930 V1931)) V1931) false)) -(defun occurs-check (V2283) (cond ((= + V2283) (set shen.*occurs* true)) ((= - V2283) (set shen.*occurs* false)) (true (simple-error "occurs-check expects a + or a -. +(defun occurs-check (V1937) (cond ((= + V1937) (set shen.*occurs* true)) ((= - V1937) (set shen.*occurs* false)) (true (simple-error "occurs-check expects a + or a -. ")))) diff --git a/kernel/klambda/reader.kl b/kernel/klambda/reader.kl index f936cc7..ba23f33 100644 --- a/kernel/klambda/reader.kl +++ b/kernel/klambda/reader.kl @@ -1,275 +1,273 @@ -(defun read-file (V2528) (let W2529 (read-file-as-bytelist V2528) (let W2530 (trap-error (compile (lambda Z2531 (shen. Z2531)) W2529) (lambda Z2532 (shen.reader-error (value shen.*residue*)))) (let W2533 (shen.process-sexprs W2530) W2533)))) +(defun read-file (V2182) (let W2183 (read-file-as-bytelist V2182) (let W2184 (trap-error (compile (lambda Z2185 (shen. Z2185)) W2183) (lambda Z2186 (shen.reader-error (value shen.*residue*)))) (let W2187 (shen.process-sexprs W2184) W2187)))) -(defun shen.reader-error (V2534) (simple-error (shen.proc-nl (cn "reader error near here: " (shen.reader-error-message (value *maximum-print-sequence-size*) 0 V2534))))) +(defun shen.reader-error (V2188) (simple-error (shen.proc-nl (cn "reader error near here: " (shen.reader-error-message (value *maximum-print-sequence-size*) 0 V2188))))) -(defun shen.reader-error-message (V2542 V2543 V2544) (cond ((= () V2544) "") ((= V2542 V2543) "") ((cons? V2544) (cn (n->string (hd V2544)) (shen.reader-error-message V2542 (+ V2543 1) (tl V2544)))) (true (shen.f-error shen.reader-error-message)))) +(defun shen.reader-error-message (V2196 V2197 V2198) (cond ((= () V2198) "") ((= V2196 V2197) "") ((cons? V2198) (cn (n->string (hd V2198)) (shen.reader-error-message V2196 (+ V2197 1) (tl V2198)))) (true (simple-error "partial function shen.reader-error-message")))) (defun it () (value shen.*it*)) -(defun read-file-as-bytelist (V2545) (let W2546 (open V2545 in) (let W2547 (read-byte W2546) (let W2548 (shen.read-file-as-bytelist-help W2546 W2547 ()) (let W2549 (close W2546) (reverse W2548)))))) +(defun read-file-as-bytelist (V2199) (let W2200 (open V2199 in) (let W2201 (read-byte W2200) (let W2202 (shen.read-file-as-bytelist-help W2200 W2201 ()) (let W2203 (close W2200) (reverse W2202)))))) -(defun shen.read-file-as-bytelist-help (V2550 V2551 V2552) (cond ((= -1 V2551) V2552) (true (shen.read-file-as-bytelist-help V2550 (read-byte V2550) (cons V2551 V2552))))) +(defun shen.read-file-as-bytelist-help (V2204 V2205 V2206) (cond ((= -1 V2205) V2206) (true (shen.read-file-as-bytelist-help V2204 (read-byte V2204) (cons V2205 V2206))))) -(defun read-file-as-string (V2553) (let W2554 (open V2553 in) (shen.rfas-h W2554 (read-byte W2554) ""))) +(defun read-file-as-string (V2207) (let W2208 (open V2207 in) (shen.rfas-h W2208 (read-byte W2208) ""))) -(defun shen.rfas-h (V2555 V2556 V2557) (cond ((= -1 V2556) (do (close V2555) V2557)) (true (shen.rfas-h V2555 (read-byte V2555) (cn V2557 (n->string V2556)))))) +(defun shen.rfas-h (V2209 V2210 V2211) (cond ((= -1 V2210) (do (close V2209) V2211)) (true (shen.rfas-h V2209 (read-byte V2209) (cn V2211 (n->string V2210)))))) -(defun input (V2558) (eval-kl (read V2558))) +(defun input (V2212) (eval-kl (read V2212))) -(defun input+ (V2559 V2560) (let W2561 (shen.monotype V2559) (let W2562 (read V2560) (if (= false (shen.typecheck W2562 (shen.rectify-type V2559))) (simple-error (cn "type error: " (shen.app W2562 (cn " is not of type " (shen.app V2559 " -" shen.r)) shen.r))) (eval-kl W2562))))) +(defun shen.input-h+ (V2213 V2214) (let W2215 (shen.monotype V2213) (let W2216 (read V2214) (if (= false (shen.typecheck W2216 V2213)) (simple-error (cn "type error: " (shen.app W2216 (cn " is not of type " (shen.app V2213 " +" shen.r)) shen.r))) (eval-kl W2216))))) -(defun shen.monotype (V2563) (cond ((cons? V2563) (map (lambda Z2564 (shen.monotype Z2564)) V2563)) (true (if (variable? V2563) (simple-error (cn "input+ expects a monotype: not " (shen.app V2563 " -" shen.a))) V2563)))) +(defun shen.monotype (V2217) (cond ((cons? V2217) (map (lambda Z2218 (shen.monotype Z2218)) V2217)) (true (if (variable? V2217) (simple-error (cn "input+ expects a monotype: not " (shen.app V2217 " +" shen.a))) V2217)))) -(defun lineread (V2565) (shen.read-loop V2565 (shen.my-read-byte V2565) () (lambda Z2566 (shen.return? Z2566)))) +(defun lineread (V2219) (shen.read-loop V2219 (shen.my-read-byte V2219) () (lambda Z2220 (shen.return? Z2220)))) -(defun read-from-string (V2567) (let W2568 (shen.str->bytes V2567) (let W2569 (compile (lambda Z2570 (shen. Z2570)) W2568) (let W2571 (shen.process-sexprs W2569) W2571)))) +(defun read-from-string (V2221) (let W2222 (shen.str->bytes V2221) (let W2223 (compile (lambda Z2224 (shen. Z2224)) W2222) (let W2225 (shen.process-sexprs W2223) W2225)))) -(defun read-from-string-unprocessed (V2572) (let W2573 (shen.str->bytes V2572) (let W2574 (compile (lambda Z2575 (shen. Z2575)) W2573) W2574))) +(defun read-from-string-unprocessed (V2226) (let W2227 (shen.str->bytes V2226) (let W2228 (compile (lambda Z2229 (shen. Z2229)) W2227) W2228))) -(defun shen.str->bytes (V2576) (cond ((= "" V2576) ()) ((shen.+string? V2576) (cons (string->n (hdstr V2576)) (shen.str->bytes (tlstr V2576)))) (true (shen.f-error shen.str->bytes)))) +(defun shen.str->bytes (V2230) (cond ((= "" V2230) ()) ((shen.+string? V2230) (cons (string->n (hdstr V2230)) (shen.str->bytes (tlstr V2230)))) (true (simple-error "partial function shen.str->bytes")))) -(defun read (V2577) (hd (shen.read-loop V2577 (shen.my-read-byte V2577) () (lambda Z2578 (shen.whitespace? Z2578))))) +(defun read (V2231) (hd (shen.read-loop V2231 (shen.my-read-byte V2231) () (lambda Z2232 (shen.whitespace? Z2232))))) -(defun shen.my-read-byte (V2579) (if (shen.char-stinput? V2579) (string->n (shen.read-unit-string V2579)) (read-byte V2579))) +(defun shen.my-read-byte (V2233) (if (shen.char-stinput? V2233) (string->n (shen.read-unit-string V2233)) (read-byte V2233))) -(defun shen.read-loop (V2584 V2585 V2586 V2587) (cond ((= 94 V2585) (simple-error "read aborted")) ((= -1 V2585) (if (empty? V2586) (simple-error "error: empty stream") (compile (lambda Z2588 (shen. Z2588)) V2586))) ((= 0 V2585) (shen.read-loop V2584 (shen.my-read-byte V2584) V2586 V2587)) (true (if (V2587 V2585) (let W2589 (shen.try-parse V2586) (if (shen.nothing-doing? W2589) (shen.read-loop V2584 (shen.my-read-byte V2584) (append V2586 (cons V2585 ())) V2587) (do (shen.record-it V2586) W2589))) (shen.read-loop V2584 (shen.my-read-byte V2584) (append V2586 (cons V2585 ())) V2587))))) +(defun shen.read-loop (V2238 V2239 V2240 V2241) (cond ((= 94 V2239) (simple-error "read aborted")) ((= -1 V2239) (if (empty? V2240) (simple-error "error: empty stream") (compile (lambda Z2242 (shen. Z2242)) V2240))) ((= 0 V2239) (shen.read-loop V2238 (shen.my-read-byte V2238) V2240 V2241)) (true (if (V2241 V2239) (let W2243 (shen.try-parse V2240) (if (shen.nothing-doing? W2243) (shen.read-loop V2238 (shen.my-read-byte V2238) (append V2240 (cons V2239 ())) V2241) (do (shen.record-it V2240) W2243))) (shen.read-loop V2238 (shen.my-read-byte V2238) (append V2240 (cons V2239 ())) V2241))))) -(defun shen.try-parse (V2590) (let W2591 (trap-error (compile (lambda Z2592 (shen. Z2592)) V2590) (lambda Z2593 shen.i-failed!)) (if (shen.nothing-doing? W2591) shen.i-failed! (shen.process-sexprs W2591)))) +(defun shen.try-parse (V2244) (let W2245 (trap-error (compile (lambda Z2246 (shen. Z2246)) V2244) (lambda Z2247 shen.i-failed!)) (if (shen.nothing-doing? W2245) shen.i-failed! (shen.process-sexprs W2245)))) -(defun shen.nothing-doing? (V2596) (cond ((= shen.i-failed! V2596) true) ((= () V2596) true) (true false))) +(defun shen.nothing-doing? (V2250) (cond ((= shen.i-failed! V2250) true) ((= () V2250) true) (true false))) -(defun shen.record-it (V2597) (set shen.*it* (shen.bytes->string V2597))) +(defun shen.record-it (V2251) (set shen.*it* (shen.bytes->string V2251))) -(defun shen.bytes->string (V2598) (cond ((= () V2598) "") ((cons? V2598) (cn (n->string (hd V2598)) (shen.bytes->string (tl V2598)))) (true (shen.f-error shen.bytes->string)))) +(defun shen.bytes->string (V2252) (cond ((= () V2252) "") ((cons? V2252) (cn (n->string (hd V2252)) (shen.bytes->string (tl V2252)))) (true (simple-error "partial function shen.bytes->string")))) -(defun shen.process-sexprs (V2599) (let W2600 (shen.unpackage¯oexpand V2599) (let W2601 (shen.find-arities W2600) (let W2602 (shen.find-types W2600) (map (lambda Z2603 (shen.process-applications Z2603 W2602)) W2600))))) +(defun shen.process-sexprs (V2253) (let W2254 (shen.unpackage¯oexpand V2253) (let W2255 (shen.find-arities W2254) (let W2256 (shen.find-types W2254) (map (lambda Z2257 (shen.process-applications Z2257 W2256)) W2254))))) -(defun shen.find-types (V2604) (cond ((and (cons? V2604) (and (cons? (tl V2604)) (= (hd V2604) (intern ":")))) (cons (hd (tl V2604)) (shen.find-types (tl (tl V2604))))) ((cons? V2604) (append (shen.find-types (hd V2604)) (shen.find-types (tl V2604)))) (true ()))) +(defun shen.find-types (V2258) (cond ((and (cons? V2258) (and (cons? (tl V2258)) (= (hd V2258) (intern ":")))) (cons (hd (tl V2258)) (shen.find-types (tl (tl V2258))))) ((cons? V2258) (append (shen.find-types (hd V2258)) (shen.find-types (tl V2258)))) (true ()))) -(defun shen.find-arities (V2607) (cond ((and (cons? V2607) (and (= define (hd V2607)) (and (cons? (tl V2607)) (and (cons? (tl (tl V2607))) (= { (hd (tl (tl V2607)))))))) (shen.store-arity (hd (tl V2607)) (shen.find-arity (hd (tl V2607)) 1 (tl (tl (tl V2607)))))) ((and (cons? V2607) (and (= define (hd V2607)) (cons? (tl V2607)))) (shen.store-arity (hd (tl V2607)) (shen.find-arity (hd (tl V2607)) 0 (tl (tl V2607))))) ((cons? V2607) (map (lambda Z2608 (shen.find-arities Z2608)) V2607)) (true shen.skip))) +(defun shen.find-arities (V2261) (cond ((and (cons? V2261) (and (= define (hd V2261)) (and (cons? (tl V2261)) (and (cons? (tl (tl V2261))) (= { (hd (tl (tl V2261)))))))) (shen.store-arity (hd (tl V2261)) (shen.find-arity (hd (tl V2261)) 1 (tl (tl (tl V2261)))))) ((and (cons? V2261) (and (= define (hd V2261)) (cons? (tl V2261)))) (shen.store-arity (hd (tl V2261)) (shen.find-arity (hd (tl V2261)) 0 (tl (tl V2261))))) ((cons? V2261) (map (lambda Z2262 (shen.find-arities Z2262)) V2261)) (true shen.skip))) -(defun shen.store-arity (V2609 V2610) (let W2611 (arity V2609) (if (= W2611 -1) (shen.execute-store-arity V2609 V2610) (if (= W2611 V2610) shen.skip (if (shen.sysfunc? V2609) (simple-error (shen.app V2609 " is a system function -" shen.a)) (do (pr (cn "changing the arity of " (shen.app V2609 " may cause errors -" shen.a)) (stoutput)) (shen.execute-store-arity V2609 V2610))))))) +(defun shen.store-arity (V2263 V2264) (let W2265 (arity V2263) (if (= W2265 -1) (shen.execute-store-arity V2263 V2264) (if (= W2265 V2264) shen.skip (if (shen.sysfunc? V2263) (simple-error (shen.app V2263 " is a system function +" shen.a)) (do (pr (cn "changing the arity of " (shen.app V2263 " may cause errors +" shen.a)) (stoutput)) (shen.execute-store-arity V2263 V2264))))))) -(defun shen.execute-store-arity (V2612 V2613) (cond ((= 0 V2613) (put V2612 arity 0 (value *property-vector*))) (true (do (put V2612 arity V2613 (value *property-vector*)) (shen.update-lambdatable V2612 V2613))))) +(defun shen.execute-store-arity (V2266 V2267) (cond ((= 0 V2267) (put V2266 arity 0 (value *property-vector*))) (true (do (put V2266 arity V2267 (value *property-vector*)) (shen.update-lambdatable V2266 V2267))))) -(defun shen.update-lambdatable (V2614 V2615) (let W2616 (eval-kl (shen.lambda-function (cons V2614 ()) V2615)) (let W2617 (shen.set-lambda-form-entry (cons V2614 W2616)) V2615))) +(defun shen.update-lambdatable (V2268 V2269) (let W2270 (value shen.*lambdatable*) (let W2271 (eval-kl (shen.lambda-function (cons V2268 ()) V2269)) (let W2272 (shen.assoc-> V2268 W2271 W2270) (let W2273 (set shen.*lambdatable* W2272) W2273))))) -(defun shen.lambda-function (V2620 V2621) (cond ((= 0 V2621) shen.skip) ((= 1 V2621) (let W2622 (gensym Y) (cons lambda (cons W2622 (cons (append V2620 (cons W2622 ())) ()))))) (true (let W2623 (gensym Y) (cons lambda (cons W2623 (cons (shen.lambda-function (append V2620 (cons W2623 ())) (- V2621 1)) ()))))))) +(defun shen.lambda-function (V2276 V2277) (cond ((= 0 V2277) shen.skip) ((= 1 V2277) (let W2278 (gensym Y) (cons lambda (cons W2278 (cons (append V2276 (cons W2278 ())) ()))))) (true (let W2279 (gensym Y) (cons lambda (cons W2279 (cons (shen.lambda-function (append V2276 (cons W2279 ())) (- V2277 1)) ()))))))) -(defun shen.assoc-> (V2633 V2634 V2635) (cond ((= () V2635) (cons (cons V2633 V2634) ())) ((and (cons? V2635) (and (cons? (hd V2635)) (= V2633 (hd (hd V2635))))) (cons (cons (hd (hd V2635)) V2634) (tl V2635))) ((cons? V2635) (cons (hd V2635) (shen.assoc-> V2633 V2634 (tl V2635)))) (true (simple-error "implementation error in shen.assoc->")))) +(defun shen.assoc-> (V2289 V2290 V2291) (cond ((= () V2291) (cons (cons V2289 V2290) ())) ((and (cons? V2291) (and (cons? (hd V2291)) (= V2289 (hd (hd V2291))))) (cons (cons (hd (hd V2291)) V2290) (tl V2291))) ((cons? V2291) (cons (hd V2291) (shen.assoc-> V2289 V2290 (tl V2291)))) (true (simple-error "implementation error in shen.assoc->")))) -(defun shen.find-arity (V2650 V2651 V2652) (cond ((and (= 0 V2651) (and (cons? V2652) (= (hd V2652) ->))) 0) ((and (= 0 V2651) (and (cons? V2652) (= (hd V2652) <-))) 0) ((and (= 0 V2651) (cons? V2652)) (+ 1 (shen.find-arity V2650 0 (tl V2652)))) ((and (= 1 V2651) (and (cons? V2652) (= } (hd V2652)))) (shen.find-arity V2650 0 (tl V2652))) ((and (= 1 V2651) (cons? V2652)) (shen.find-arity V2650 1 (tl V2652))) ((= 1 V2651) (simple-error (cn "syntax error in " (shen.app V2650 " definition: missing } -" shen.a)))) (true (simple-error (cn "syntax error in " (shen.app V2650 " definition: missing -> or <- +(defun shen.find-arity (V2306 V2307 V2308) (cond ((and (= 0 V2307) (and (cons? V2308) (= (hd V2308) ->))) 0) ((and (= 0 V2307) (and (cons? V2308) (= (hd V2308) <-))) 0) ((and (= 0 V2307) (cons? V2308)) (+ 1 (shen.find-arity V2306 0 (tl V2308)))) ((and (= 1 V2307) (and (cons? V2308) (= } (hd V2308)))) (shen.find-arity V2306 0 (tl V2308))) ((and (= 1 V2307) (cons? V2308)) (shen.find-arity V2306 1 (tl V2308))) ((= 1 V2307) (simple-error (cn "syntax error in " (shen.app V2306 " definition: missing } +" shen.a)))) (true (simple-error (cn "syntax error in " (shen.app V2306 " definition: missing -> or <- " shen.a)))))) -(defun shen. (V2653) (let W2654 (let W2655 (shen. V2653) (if (shen.parse-failure? W2655) (shen.parse-failure) (let W2656 (shen.in-> W2655) (let W2657 (shen. W2656) (if (shen.parse-failure? W2657) (shen.parse-failure) (let W2658 (shen.<-out W2657) (let W2659 (shen.in-> W2657) (let W2660 (shen. W2659) (if (shen.parse-failure? W2660) (shen.parse-failure) (let W2661 (shen.in-> W2660) (let W2662 (shen. W2661) (if (shen.parse-failure? W2662) (shen.parse-failure) (let W2663 (shen.<-out W2662) (let W2664 (shen.in-> W2662) (shen.comb W2664 (cons (shen.cons-form W2658) W2663)))))))))))))))) (if (shen.parse-failure? W2654) (let W2665 (let W2666 (shen. V2653) (if (shen.parse-failure? W2666) (shen.parse-failure) (let W2667 (shen.in-> W2666) (let W2668 (shen. W2667) (if (shen.parse-failure? W2668) (shen.parse-failure) (let W2669 (shen.<-out W2668) (let W2670 (shen.in-> W2668) (let W2671 (shen. W2670) (if (shen.parse-failure? W2671) (shen.parse-failure) (let W2672 (shen.in-> W2671) (let W2673 (shen. W2672) (if (shen.parse-failure? W2673) (shen.parse-failure) (let W2674 (shen.<-out W2673) (let W2675 (shen.in-> W2673) (shen.comb W2675 (shen.add-sexpr W2669 W2674)))))))))))))))) (if (shen.parse-failure? W2665) (let W2676 (let W2677 (shen. V2653) (if (shen.parse-failure? W2677) (shen.parse-failure) (let W2678 (shen.in-> W2677) (let W2679 (shen. W2678) (if (shen.parse-failure? W2679) (shen.parse-failure) (let W2680 (shen.<-out W2679) (let W2681 (shen.in-> W2679) (shen.comb W2681 (cons { W2680))))))))) (if (shen.parse-failure? W2676) (let W2682 (let W2683 (shen. V2653) (if (shen.parse-failure? W2683) (shen.parse-failure) (let W2684 (shen.in-> W2683) (let W2685 (shen. W2684) (if (shen.parse-failure? W2685) (shen.parse-failure) (let W2686 (shen.<-out W2685) (let W2687 (shen.in-> W2685) (shen.comb W2687 (cons } W2686))))))))) (if (shen.parse-failure? W2682) (let W2688 (let W2689 (shen. V2653) (if (shen.parse-failure? W2689) (shen.parse-failure) (let W2690 (shen.in-> W2689) (let W2691 (shen. W2690) (if (shen.parse-failure? W2691) (shen.parse-failure) (let W2692 (shen.<-out W2691) (let W2693 (shen.in-> W2691) (shen.comb W2693 (cons bar! W2692))))))))) (if (shen.parse-failure? W2688) (let W2694 (let W2695 (shen. V2653) (if (shen.parse-failure? W2695) (shen.parse-failure) (let W2696 (shen.in-> W2695) (let W2697 (shen. W2696) (if (shen.parse-failure? W2697) (shen.parse-failure) (let W2698 (shen.<-out W2697) (let W2699 (shen.in-> W2697) (shen.comb W2699 (cons (intern ";") W2698))))))))) (if (shen.parse-failure? W2694) (let W2700 (let W2701 (shen. V2653) (if (shen.parse-failure? W2701) (shen.parse-failure) (let W2702 (shen.in-> W2701) (let W2703 (shen. W2702) (if (shen.parse-failure? W2703) (shen.parse-failure) (let W2704 (shen.in-> W2703) (let W2705 (shen. W2704) (if (shen.parse-failure? W2705) (shen.parse-failure) (let W2706 (shen.<-out W2705) (let W2707 (shen.in-> W2705) (shen.comb W2707 (cons (intern ":=") W2706)))))))))))) (if (shen.parse-failure? W2700) (let W2708 (let W2709 (shen. V2653) (if (shen.parse-failure? W2709) (shen.parse-failure) (let W2710 (shen.in-> W2709) (let W2711 (shen. W2710) (if (shen.parse-failure? W2711) (shen.parse-failure) (let W2712 (shen.<-out W2711) (let W2713 (shen.in-> W2711) (shen.comb W2713 (cons (intern ":") W2712))))))))) (if (shen.parse-failure? W2708) (let W2714 (let W2715 (shen. V2653) (if (shen.parse-failure? W2715) (shen.parse-failure) (let W2716 (shen.in-> W2715) (let W2717 (shen. W2716) (if (shen.parse-failure? W2717) (shen.parse-failure) (let W2718 (shen.<-out W2717) (let W2719 (shen.in-> W2717) (shen.comb W2719 (cons (intern ",") W2718))))))))) (if (shen.parse-failure? W2714) (let W2720 (let W2721 (shen. V2653) (if (shen.parse-failure? W2721) (shen.parse-failure) (let W2722 (shen.in-> W2721) (let W2723 (shen. W2722) (if (shen.parse-failure? W2723) (shen.parse-failure) (let W2724 (shen.<-out W2723) (let W2725 (shen.in-> W2723) (shen.comb W2725 W2724)))))))) (if (shen.parse-failure? W2720) (let W2726 (let W2727 (shen. V2653) (if (shen.parse-failure? W2727) (shen.parse-failure) (let W2728 (shen.<-out W2727) (let W2729 (shen.in-> W2727) (let W2730 (shen. W2729) (if (shen.parse-failure? W2730) (shen.parse-failure) (let W2731 (shen.<-out W2730) (let W2732 (shen.in-> W2730) (shen.comb W2732 (cons W2728 W2731)))))))))) (if (shen.parse-failure? W2726) (let W2733 (let W2734 (shen. V2653) (if (shen.parse-failure? W2734) (shen.parse-failure) (let W2735 (shen.in-> W2734) (let W2736 (shen. W2735) (if (shen.parse-failure? W2736) (shen.parse-failure) (let W2737 (shen.<-out W2736) (let W2738 (shen.in-> W2736) (shen.comb W2738 W2737)))))))) (if (shen.parse-failure? W2733) (let W2739 (let W2740 ( V2653) (if (shen.parse-failure? W2740) (shen.parse-failure) (let W2741 (shen.in-> W2740) (shen.comb W2741 ())))) (if (shen.parse-failure? W2739) (shen.parse-failure) W2739)) W2733)) W2726)) W2720)) W2714)) W2708)) W2700)) W2694)) W2688)) W2682)) W2676)) W2665)) W2654))) +(defun shen. (V2309) (let W2310 (let W2311 (shen. V2309) (if (shen.parse-failure? W2311) (shen.parse-failure) (let W2312 (shen.in-> W2311) (let W2313 (shen. W2312) (if (shen.parse-failure? W2313) (shen.parse-failure) (let W2314 (shen.<-out W2313) (let W2315 (shen.in-> W2313) (let W2316 (shen. W2315) (if (shen.parse-failure? W2316) (shen.parse-failure) (let W2317 (shen.in-> W2316) (let W2318 (shen. W2317) (if (shen.parse-failure? W2318) (shen.parse-failure) (let W2319 (shen.<-out W2318) (let W2320 (shen.in-> W2318) (shen.comb W2320 (cons (shen.cons-form W2314) W2319)))))))))))))))) (if (shen.parse-failure? W2310) (let W2321 (let W2322 (shen. V2309) (if (shen.parse-failure? W2322) (shen.parse-failure) (let W2323 (shen.in-> W2322) (let W2324 (shen. W2323) (if (shen.parse-failure? W2324) (shen.parse-failure) (let W2325 (shen.<-out W2324) (let W2326 (shen.in-> W2324) (let W2327 (shen. W2326) (if (shen.parse-failure? W2327) (shen.parse-failure) (let W2328 (shen.in-> W2327) (let W2329 (shen. W2328) (if (shen.parse-failure? W2329) (shen.parse-failure) (let W2330 (shen.<-out W2329) (let W2331 (shen.in-> W2329) (shen.comb W2331 (shen.add-sexpr W2325 W2330)))))))))))))))) (if (shen.parse-failure? W2321) (let W2332 (let W2333 (shen. V2309) (if (shen.parse-failure? W2333) (shen.parse-failure) (let W2334 (shen.in-> W2333) (let W2335 (shen. W2334) (if (shen.parse-failure? W2335) (shen.parse-failure) (let W2336 (shen.<-out W2335) (let W2337 (shen.in-> W2335) (shen.comb W2337 (cons { W2336))))))))) (if (shen.parse-failure? W2332) (let W2338 (let W2339 (shen. V2309) (if (shen.parse-failure? W2339) (shen.parse-failure) (let W2340 (shen.in-> W2339) (let W2341 (shen. W2340) (if (shen.parse-failure? W2341) (shen.parse-failure) (let W2342 (shen.<-out W2341) (let W2343 (shen.in-> W2341) (shen.comb W2343 (cons } W2342))))))))) (if (shen.parse-failure? W2338) (let W2344 (let W2345 (shen. V2309) (if (shen.parse-failure? W2345) (shen.parse-failure) (let W2346 (shen.in-> W2345) (let W2347 (shen. W2346) (if (shen.parse-failure? W2347) (shen.parse-failure) (let W2348 (shen.<-out W2347) (let W2349 (shen.in-> W2347) (shen.comb W2349 (cons bar! W2348))))))))) (if (shen.parse-failure? W2344) (let W2350 (let W2351 (shen. V2309) (if (shen.parse-failure? W2351) (shen.parse-failure) (let W2352 (shen.in-> W2351) (let W2353 (shen. W2352) (if (shen.parse-failure? W2353) (shen.parse-failure) (let W2354 (shen.<-out W2353) (let W2355 (shen.in-> W2353) (shen.comb W2355 (cons (intern ";") W2354))))))))) (if (shen.parse-failure? W2350) (let W2356 (let W2357 (shen. V2309) (if (shen.parse-failure? W2357) (shen.parse-failure) (let W2358 (shen.in-> W2357) (let W2359 (shen. W2358) (if (shen.parse-failure? W2359) (shen.parse-failure) (let W2360 (shen.in-> W2359) (let W2361 (shen. W2360) (if (shen.parse-failure? W2361) (shen.parse-failure) (let W2362 (shen.<-out W2361) (let W2363 (shen.in-> W2361) (shen.comb W2363 (cons (intern ":=") W2362)))))))))))) (if (shen.parse-failure? W2356) (let W2364 (let W2365 (shen. V2309) (if (shen.parse-failure? W2365) (shen.parse-failure) (let W2366 (shen.in-> W2365) (let W2367 (shen. W2366) (if (shen.parse-failure? W2367) (shen.parse-failure) (let W2368 (shen.<-out W2367) (let W2369 (shen.in-> W2367) (shen.comb W2369 (cons (intern ":") W2368))))))))) (if (shen.parse-failure? W2364) (let W2370 (let W2371 (shen. V2309) (if (shen.parse-failure? W2371) (shen.parse-failure) (let W2372 (shen.in-> W2371) (let W2373 (shen. W2372) (if (shen.parse-failure? W2373) (shen.parse-failure) (let W2374 (shen.<-out W2373) (let W2375 (shen.in-> W2373) (shen.comb W2375 (cons (intern ",") W2374))))))))) (if (shen.parse-failure? W2370) (let W2376 (let W2377 (shen. V2309) (if (shen.parse-failure? W2377) (shen.parse-failure) (let W2378 (shen.in-> W2377) (let W2379 (shen. W2378) (if (shen.parse-failure? W2379) (shen.parse-failure) (let W2380 (shen.<-out W2379) (let W2381 (shen.in-> W2379) (shen.comb W2381 W2380)))))))) (if (shen.parse-failure? W2376) (let W2382 (let W2383 (shen. V2309) (if (shen.parse-failure? W2383) (shen.parse-failure) (let W2384 (shen.<-out W2383) (let W2385 (shen.in-> W2383) (let W2386 (shen. W2385) (if (shen.parse-failure? W2386) (shen.parse-failure) (let W2387 (shen.<-out W2386) (let W2388 (shen.in-> W2386) (shen.comb W2388 (cons W2384 W2387)))))))))) (if (shen.parse-failure? W2382) (let W2389 (let W2390 (shen. V2309) (if (shen.parse-failure? W2390) (shen.parse-failure) (let W2391 (shen.in-> W2390) (let W2392 (shen. W2391) (if (shen.parse-failure? W2392) (shen.parse-failure) (let W2393 (shen.<-out W2392) (let W2394 (shen.in-> W2392) (shen.comb W2394 W2393)))))))) (if (shen.parse-failure? W2389) (let W2395 (let W2396 ( V2309) (if (shen.parse-failure? W2396) (shen.parse-failure) (let W2397 (shen.in-> W2396) (shen.comb W2397 ())))) (if (shen.parse-failure? W2395) (shen.parse-failure) W2395)) W2389)) W2382)) W2376)) W2370)) W2364)) W2356)) W2350)) W2344)) W2338)) W2332)) W2321)) W2310))) -(defun shen.add-sexpr (V2742 V2743) (cond ((and (cons? V2742) (and (= $ (hd V2742)) (and (cons? (tl V2742)) (= () (tl (tl V2742)))))) (append (explode (hd (tl V2742))) V2743)) (true (cons V2742 V2743)))) +(defun shen.add-sexpr (V2398 V2399) (cond ((and (cons? V2398) (and (= $ (hd V2398)) (and (cons? (tl V2398)) (= () (tl (tl V2398)))))) (append (explode (hd (tl V2398))) V2399)) (true (cons V2398 V2399)))) -(defun shen. (V2744) (let W2745 (if (shen.hds=? V2744 91) (let W2746 (tail V2744) (shen.comb W2746 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2745) (shen.parse-failure) W2745))) +(defun shen. (V2400) (let W2401 (if (shen.hds=? V2400 91) (let W2402 (tail V2400) (shen.comb W2402 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2401) (shen.parse-failure) W2401))) -(defun shen. (V2747) (let W2748 (if (shen.hds=? V2747 93) (let W2749 (tail V2747) (shen.comb W2749 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2748) (shen.parse-failure) W2748))) +(defun shen. (V2403) (let W2404 (if (shen.hds=? V2403 93) (let W2405 (tail V2403) (shen.comb W2405 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2404) (shen.parse-failure) W2404))) -(defun shen. (V2750) (let W2751 (let W2752 (shen. V2750) (if (shen.parse-failure? W2752) (shen.parse-failure) (let W2753 (shen.<-out W2752) (let W2754 (shen.in-> W2752) (shen.comb W2754 W2753))))) (if (shen.parse-failure? W2751) (shen.parse-failure) W2751))) +(defun shen. (V2406) (let W2407 (let W2408 (shen. V2406) (if (shen.parse-failure? W2408) (shen.parse-failure) (let W2409 (shen.<-out W2408) (let W2410 (shen.in-> W2408) (shen.comb W2410 W2409))))) (if (shen.parse-failure? W2407) (shen.parse-failure) W2407))) -(defun shen. (V2755) (let W2756 (let W2757 (shen. V2755) (if (shen.parse-failure? W2757) (shen.parse-failure) (let W2758 (shen.<-out W2757) (let W2759 (shen.in-> W2757) (shen.comb W2759 W2758))))) (if (shen.parse-failure? W2756) (shen.parse-failure) W2756))) +(defun shen. (V2411) (let W2412 (let W2413 (shen. V2411) (if (shen.parse-failure? W2413) (shen.parse-failure) (let W2414 (shen.<-out W2413) (let W2415 (shen.in-> W2413) (shen.comb W2415 W2414))))) (if (shen.parse-failure? W2412) (shen.parse-failure) W2412))) -(defun shen.cons-form (V2761) (cond ((= () V2761) ()) ((and (cons? V2761) (and (cons? (tl V2761)) (and (cons? (tl (tl V2761))) (and (= () (tl (tl (tl V2761)))) (= (hd (tl V2761)) bar!))))) (cons cons (cons (hd V2761) (tl (tl V2761))))) ((and (cons? V2761) (and (cons? (tl V2761)) (and (cons? (tl (tl V2761))) (and (cons? (tl (tl (tl V2761)))) (= (hd (tl V2761)) bar!))))) (simple-error "misapplication of | -")) ((cons? V2761) (cons cons (cons (hd V2761) (cons (shen.cons-form (tl V2761)) ())))) (true (shen.f-error shen.cons-form)))) +(defun shen.cons-form (V2417) (cond ((= () V2417) ()) ((and (cons? V2417) (and (cons? (tl V2417)) (and (cons? (tl (tl V2417))) (and (= () (tl (tl (tl V2417)))) (= (hd (tl V2417)) bar!))))) (cons cons (cons (hd V2417) (tl (tl V2417))))) ((and (cons? V2417) (and (cons? (tl V2417)) (and (cons? (tl (tl V2417))) (and (cons? (tl (tl (tl V2417)))) (= (hd (tl V2417)) bar!))))) (simple-error "misapplication of | +")) ((cons? V2417) (cons cons (cons (hd V2417) (cons (shen.cons-form (tl V2417)) ())))) (true (simple-error "partial function shen.cons-form")))) -(defun shen. (V2762) (let W2763 (if (shen.hds=? V2762 40) (let W2764 (tail V2762) (shen.comb W2764 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2763) (shen.parse-failure) W2763))) +(defun shen. (V2418) (let W2419 (if (shen.hds=? V2418 40) (let W2420 (tail V2418) (shen.comb W2420 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2419) (shen.parse-failure) W2419))) -(defun shen. (V2765) (let W2766 (if (shen.hds=? V2765 41) (let W2767 (tail V2765) (shen.comb W2767 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2766) (shen.parse-failure) W2766))) +(defun shen. (V2421) (let W2422 (if (shen.hds=? V2421 41) (let W2423 (tail V2421) (shen.comb W2423 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2422) (shen.parse-failure) W2422))) -(defun shen. (V2768) (let W2769 (if (shen.hds=? V2768 123) (let W2770 (tail V2768) (shen.comb W2770 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2769) (shen.parse-failure) W2769))) +(defun shen. (V2424) (let W2425 (if (shen.hds=? V2424 123) (let W2426 (tail V2424) (shen.comb W2426 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2425) (shen.parse-failure) W2425))) -(defun shen. (V2771) (let W2772 (if (shen.hds=? V2771 125) (let W2773 (tail V2771) (shen.comb W2773 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2772) (shen.parse-failure) W2772))) +(defun shen. (V2427) (let W2428 (if (shen.hds=? V2427 125) (let W2429 (tail V2427) (shen.comb W2429 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2428) (shen.parse-failure) W2428))) -(defun shen. (V2774) (let W2775 (if (shen.hds=? V2774 124) (let W2776 (tail V2774) (shen.comb W2776 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2775) (shen.parse-failure) W2775))) +(defun shen. (V2430) (let W2431 (if (shen.hds=? V2430 124) (let W2432 (tail V2430) (shen.comb W2432 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2431) (shen.parse-failure) W2431))) -(defun shen. (V2777) (let W2778 (if (shen.hds=? V2777 59) (let W2779 (tail V2777) (shen.comb W2779 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2778) (shen.parse-failure) W2778))) +(defun shen. (V2433) (let W2434 (if (shen.hds=? V2433 59) (let W2435 (tail V2433) (shen.comb W2435 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2434) (shen.parse-failure) W2434))) -(defun shen. (V2780) (let W2781 (if (shen.hds=? V2780 58) (let W2782 (tail V2780) (shen.comb W2782 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2781) (shen.parse-failure) W2781))) +(defun shen. (V2436) (let W2437 (if (shen.hds=? V2436 58) (let W2438 (tail V2436) (shen.comb W2438 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2437) (shen.parse-failure) W2437))) -(defun shen. (V2783) (let W2784 (if (shen.hds=? V2783 44) (let W2785 (tail V2783) (shen.comb W2785 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2784) (shen.parse-failure) W2784))) +(defun shen. (V2439) (let W2440 (if (shen.hds=? V2439 44) (let W2441 (tail V2439) (shen.comb W2441 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2440) (shen.parse-failure) W2440))) -(defun shen. (V2786) (let W2787 (if (shen.hds=? V2786 61) (let W2788 (tail V2786) (shen.comb W2788 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2787) (shen.parse-failure) W2787))) +(defun shen. (V2442) (let W2443 (if (shen.hds=? V2442 61) (let W2444 (tail V2442) (shen.comb W2444 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2443) (shen.parse-failure) W2443))) -(defun shen. (V2789) (let W2790 (let W2791 (shen. V2789) (if (shen.parse-failure? W2791) (shen.parse-failure) (let W2792 (shen.in-> W2791) (shen.comb W2792 shen.skip)))) (if (shen.parse-failure? W2790) (let W2793 (let W2794 (shen. V2789) (if (shen.parse-failure? W2794) (shen.parse-failure) (let W2795 (shen.in-> W2794) (shen.comb W2795 shen.skip)))) (if (shen.parse-failure? W2793) (shen.parse-failure) W2793)) W2790))) +(defun shen. (V2445) (let W2446 (let W2447 (shen. V2445) (if (shen.parse-failure? W2447) (shen.parse-failure) (let W2448 (shen.in-> W2447) (shen.comb W2448 shen.skip)))) (if (shen.parse-failure? W2446) (let W2449 (let W2450 (shen. V2445) (if (shen.parse-failure? W2450) (shen.parse-failure) (let W2451 (shen.in-> W2450) (shen.comb W2451 shen.skip)))) (if (shen.parse-failure? W2449) (shen.parse-failure) W2449)) W2446))) -(defun shen. (V2796) (let W2797 (let W2798 (shen. V2796) (if (shen.parse-failure? W2798) (shen.parse-failure) (let W2799 (shen.in-> W2798) (let W2800 (shen. W2799) (if (shen.parse-failure? W2800) (shen.parse-failure) (let W2801 (shen.in-> W2800) (let W2802 (shen. W2801) (if (shen.parse-failure? W2802) (shen.parse-failure) (let W2803 (shen.in-> W2802) (let W2804 (shen. W2803) (if (shen.parse-failure? W2804) (shen.parse-failure) (let W2805 (shen.in-> W2804) (shen.comb W2805 shen.skip))))))))))))) (if (shen.parse-failure? W2797) (shen.parse-failure) W2797))) +(defun shen. (V2452) (let W2453 (let W2454 (shen. V2452) (if (shen.parse-failure? W2454) (shen.parse-failure) (let W2455 (shen.in-> W2454) (let W2456 (shen. W2455) (if (shen.parse-failure? W2456) (shen.parse-failure) (let W2457 (shen.in-> W2456) (let W2458 (shen. W2457) (if (shen.parse-failure? W2458) (shen.parse-failure) (let W2459 (shen.in-> W2458) (let W2460 (shen. W2459) (if (shen.parse-failure? W2460) (shen.parse-failure) (let W2461 (shen.in-> W2460) (shen.comb W2461 shen.skip))))))))))))) (if (shen.parse-failure? W2453) (shen.parse-failure) W2453))) -(defun shen. (V2806) (let W2807 (if (shen.hds=? V2806 92) (let W2808 (tail V2806) (shen.comb W2808 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2807) (shen.parse-failure) W2807))) +(defun shen. (V2462) (let W2463 (if (shen.hds=? V2462 92) (let W2464 (tail V2462) (shen.comb W2464 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2463) (shen.parse-failure) W2463))) -(defun shen. (V2809) (let W2810 (let W2811 (shen. V2809) (if (shen.parse-failure? W2811) (shen.parse-failure) (let W2812 (shen.in-> W2811) (let W2813 (shen. W2812) (if (shen.parse-failure? W2813) (shen.parse-failure) (let W2814 (shen.in-> W2813) (shen.comb W2814 shen.skip))))))) (if (shen.parse-failure? W2810) (let W2815 (let W2816 ( V2809) (if (shen.parse-failure? W2816) (shen.parse-failure) (let W2817 (shen.in-> W2816) (shen.comb W2817 shen.skip)))) (if (shen.parse-failure? W2815) (shen.parse-failure) W2815)) W2810))) +(defun shen. (V2465) (let W2466 (let W2467 (shen. V2465) (if (shen.parse-failure? W2467) (shen.parse-failure) (let W2468 (shen.in-> W2467) (let W2469 (shen. W2468) (if (shen.parse-failure? W2469) (shen.parse-failure) (let W2470 (shen.in-> W2469) (shen.comb W2470 shen.skip))))))) (if (shen.parse-failure? W2466) (let W2471 (let W2472 ( V2465) (if (shen.parse-failure? W2472) (shen.parse-failure) (let W2473 (shen.in-> W2472) (shen.comb W2473 shen.skip)))) (if (shen.parse-failure? W2471) (shen.parse-failure) W2471)) W2466))) -(defun shen. (V2818) (let W2819 (if (cons? V2818) (let W2820 (head V2818) (let W2821 (tail V2818) (if (not (shen.return? W2820)) (shen.comb W2821 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2819) (shen.parse-failure) W2819))) +(defun shen. (V2474) (let W2475 (if (cons? V2474) (let W2476 (head V2474) (let W2477 (tail V2474) (if (not (shen.return? W2476)) (shen.comb W2477 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2475) (shen.parse-failure) W2475))) -(defun shen. (V2822) (let W2823 (let W2824 (shen. V2822) (if (shen.parse-failure? W2824) (shen.parse-failure) (let W2825 (shen.in-> W2824) (let W2826 (shen. W2825) (if (shen.parse-failure? W2826) (shen.parse-failure) (let W2827 (shen.in-> W2826) (shen.comb W2827 shen.skip))))))) (if (shen.parse-failure? W2823) (let W2828 (let W2829 (shen. V2822) (if (shen.parse-failure? W2829) (shen.parse-failure) (let W2830 (shen.in-> W2829) (shen.comb W2830 shen.skip)))) (if (shen.parse-failure? W2828) (shen.parse-failure) W2828)) W2823))) +(defun shen. (V2478) (let W2479 (let W2480 (shen. V2478) (if (shen.parse-failure? W2480) (shen.parse-failure) (let W2481 (shen.in-> W2480) (let W2482 (shen. W2481) (if (shen.parse-failure? W2482) (shen.parse-failure) (let W2483 (shen.in-> W2482) (shen.comb W2483 shen.skip))))))) (if (shen.parse-failure? W2479) (let W2484 (let W2485 (shen. V2478) (if (shen.parse-failure? W2485) (shen.parse-failure) (let W2486 (shen.in-> W2485) (shen.comb W2486 shen.skip)))) (if (shen.parse-failure? W2484) (shen.parse-failure) W2484)) W2479))) -(defun shen. (V2831) (let W2832 (if (cons? V2831) (let W2833 (head V2831) (let W2834 (tail V2831) (if (shen.return? W2833) (shen.comb W2834 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2832) (shen.parse-failure) W2832))) +(defun shen. (V2487) (let W2488 (if (cons? V2487) (let W2489 (head V2487) (let W2490 (tail V2487) (if (shen.return? W2489) (shen.comb W2490 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2488) (shen.parse-failure) W2488))) -(defun shen.return? (V2835) (element? V2835 (cons 9 (cons 10 (cons 13 ()))))) +(defun shen.return? (V2491) (element? V2491 (cons 9 (cons 10 (cons 13 ()))))) -(defun shen. (V2836) (let W2837 (let W2838 (shen. V2836) (if (shen.parse-failure? W2838) (shen.parse-failure) (let W2839 (shen.in-> W2838) (let W2840 (shen. W2839) (if (shen.parse-failure? W2840) (shen.parse-failure) (let W2841 (shen.in-> W2840) (let W2842 (shen. W2841) (if (shen.parse-failure? W2842) (shen.parse-failure) (let W2843 (shen.in-> W2842) (shen.comb W2843 shen.skip)))))))))) (if (shen.parse-failure? W2837) (shen.parse-failure) W2837))) +(defun shen. (V2492) (let W2493 (let W2494 (shen. V2492) (if (shen.parse-failure? W2494) (shen.parse-failure) (let W2495 (shen.in-> W2494) (let W2496 (shen. W2495) (if (shen.parse-failure? W2496) (shen.parse-failure) (let W2497 (shen.in-> W2496) (let W2498 (shen. W2497) (if (shen.parse-failure? W2498) (shen.parse-failure) (let W2499 (shen.in-> W2498) (shen.comb W2499 shen.skip)))))))))) (if (shen.parse-failure? W2493) (shen.parse-failure) W2493))) -(defun shen. (V2844) (let W2845 (if (shen.hds=? V2844 42) (let W2846 (tail V2844) (shen.comb W2846 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2845) (shen.parse-failure) W2845))) +(defun shen. (V2500) (let W2501 (if (shen.hds=? V2500 42) (let W2502 (tail V2500) (shen.comb W2502 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2501) (shen.parse-failure) W2501))) -(defun shen. (V2847) (let W2848 (let W2849 (shen. V2847) (if (shen.parse-failure? W2849) (shen.parse-failure) (let W2850 (shen.in-> W2849) (let W2851 (shen. W2850) (if (shen.parse-failure? W2851) (shen.parse-failure) (let W2852 (shen.in-> W2851) (shen.comb W2852 shen.skip))))))) (if (shen.parse-failure? W2848) (let W2853 (let W2854 (shen. V2847) (if (shen.parse-failure? W2854) (shen.parse-failure) (let W2855 (shen.in-> W2854) (let W2856 (shen. W2855) (if (shen.parse-failure? W2856) (shen.parse-failure) (let W2857 (shen.in-> W2856) (shen.comb W2857 shen.skip))))))) (if (shen.parse-failure? W2853) (let W2858 (if (cons? V2847) (let W2859 (tail V2847) (let W2860 (shen. W2859) (if (shen.parse-failure? W2860) (shen.parse-failure) (let W2861 (shen.in-> W2860) (shen.comb W2861 shen.skip))))) (shen.parse-failure)) (if (shen.parse-failure? W2858) (shen.parse-failure) W2858)) W2853)) W2848))) +(defun shen. (V2503) (let W2504 (let W2505 (shen. V2503) (if (shen.parse-failure? W2505) (shen.parse-failure) (let W2506 (shen.in-> W2505) (let W2507 (shen. W2506) (if (shen.parse-failure? W2507) (shen.parse-failure) (let W2508 (shen.in-> W2507) (shen.comb W2508 shen.skip))))))) (if (shen.parse-failure? W2504) (let W2509 (let W2510 (shen. V2503) (if (shen.parse-failure? W2510) (shen.parse-failure) (let W2511 (shen.in-> W2510) (let W2512 (shen. W2511) (if (shen.parse-failure? W2512) (shen.parse-failure) (let W2513 (shen.in-> W2512) (shen.comb W2513 shen.skip))))))) (if (shen.parse-failure? W2509) (let W2514 (if (cons? V2503) (let W2515 (tail V2503) (let W2516 (shen. W2515) (if (shen.parse-failure? W2516) (shen.parse-failure) (let W2517 (shen.in-> W2516) (shen.comb W2517 shen.skip))))) (shen.parse-failure)) (if (shen.parse-failure? W2514) (shen.parse-failure) W2514)) W2509)) W2504))) -(defun shen. (V2862) (let W2863 (let W2864 (shen. V2862) (if (shen.parse-failure? W2864) (shen.parse-failure) (let W2865 (shen.<-out W2864) (let W2866 (shen.in-> W2864) (shen.comb W2866 W2865))))) (if (shen.parse-failure? W2863) (let W2867 (let W2868 (shen. V2862) (if (shen.parse-failure? W2868) (shen.parse-failure) (let W2869 (shen.<-out W2868) (let W2870 (shen.in-> W2868) (shen.comb W2870 W2869))))) (if (shen.parse-failure? W2867) (let W2871 (let W2872 (shen. V2862) (if (shen.parse-failure? W2872) (shen.parse-failure) (let W2873 (shen.<-out W2872) (let W2874 (shen.in-> W2872) (shen.comb W2874 (if (= W2873 "<>") (cons vector (cons 0 ())) (intern W2873))))))) (if (shen.parse-failure? W2871) (shen.parse-failure) W2871)) W2867)) W2863))) +(defun shen. (V2518) (let W2519 (let W2520 (shen. V2518) (if (shen.parse-failure? W2520) (shen.parse-failure) (let W2521 (shen.<-out W2520) (let W2522 (shen.in-> W2520) (shen.comb W2522 W2521))))) (if (shen.parse-failure? W2519) (let W2523 (let W2524 (shen. V2518) (if (shen.parse-failure? W2524) (shen.parse-failure) (let W2525 (shen.<-out W2524) (let W2526 (shen.in-> W2524) (shen.comb W2526 W2525))))) (if (shen.parse-failure? W2523) (let W2527 (let W2528 (shen. V2518) (if (shen.parse-failure? W2528) (shen.parse-failure) (let W2529 (shen.<-out W2528) (let W2530 (shen.in-> W2528) (shen.comb W2530 (if (= W2529 "<>") (cons vector (cons 0 ())) (intern W2529))))))) (if (shen.parse-failure? W2527) (shen.parse-failure) W2527)) W2523)) W2519))) -(defun shen. (V2875) (let W2876 (let W2877 (shen. V2875) (if (shen.parse-failure? W2877) (shen.parse-failure) (let W2878 (shen.<-out W2877) (let W2879 (shen.in-> W2877) (let W2880 (shen. W2879) (if (shen.parse-failure? W2880) (shen.parse-failure) (let W2881 (shen.<-out W2880) (let W2882 (shen.in-> W2880) (shen.comb W2882 (cn W2878 W2881)))))))))) (if (shen.parse-failure? W2876) (shen.parse-failure) W2876))) +(defun shen. (V2531) (let W2532 (let W2533 (shen. V2531) (if (shen.parse-failure? W2533) (shen.parse-failure) (let W2534 (shen.<-out W2533) (let W2535 (shen.in-> W2533) (let W2536 (shen. W2535) (if (shen.parse-failure? W2536) (shen.parse-failure) (let W2537 (shen.<-out W2536) (let W2538 (shen.in-> W2536) (shen.comb W2538 (cn W2534 W2537)))))))))) (if (shen.parse-failure? W2532) (shen.parse-failure) W2532))) -(defun shen. (V2883) (let W2884 (if (cons? V2883) (let W2885 (head V2883) (let W2886 (tail V2883) (if (shen.alpha? W2885) (shen.comb W2886 (n->string W2885)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2884) (shen.parse-failure) W2884))) +(defun shen. (V2539) (let W2540 (if (cons? V2539) (let W2541 (head V2539) (let W2542 (tail V2539) (if (shen.alpha? W2541) (shen.comb W2542 (n->string W2541)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2540) (shen.parse-failure) W2540))) -(defun shen.alpha? (V2887) (or (shen.lowercase? V2887) (or (shen.uppercase? V2887) (shen.misc? V2887)))) +(defun shen.alpha? (V2543) (or (shen.lowercase? V2543) (or (shen.uppercase? V2543) (shen.misc? V2543)))) -(defun shen.lowercase? (V2888) (and (>= V2888 97) (<= V2888 122))) +(defun shen.lowercase? (V2544) (and (>= V2544 97) (<= V2544 122))) -(defun shen.uppercase? (V2889) (and (>= V2889 65) (<= V2889 90))) +(defun shen.uppercase? (V2545) (and (>= V2545 65) (<= V2545 90))) -(defun shen.misc? (V2890) (element? V2890 (cons 61 (cons 45 (cons 42 (cons 47 (cons 43 (cons 95 (cons 63 (cons 36 (cons 33 (cons 64 (cons 126 (cons 46 (cons 62 (cons 60 (cons 38 (cons 37 (cons 39 (cons 35 (cons 96 ()))))))))))))))))))))) +(defun shen.misc? (V2546) (element? V2546 (cons 61 (cons 45 (cons 42 (cons 47 (cons 43 (cons 95 (cons 63 (cons 36 (cons 33 (cons 64 (cons 126 (cons 46 (cons 62 (cons 60 (cons 38 (cons 37 (cons 39 (cons 35 (cons 96 ()))))))))))))))))))))) -(defun shen. (V2891) (let W2892 (let W2893 (shen. V2891) (if (shen.parse-failure? W2893) (shen.parse-failure) (let W2894 (shen.<-out W2893) (let W2895 (shen.in-> W2893) (let W2896 (shen. W2895) (if (shen.parse-failure? W2896) (shen.parse-failure) (let W2897 (shen.<-out W2896) (let W2898 (shen.in-> W2896) (shen.comb W2898 (cn W2894 W2897)))))))))) (if (shen.parse-failure? W2892) (let W2899 (let W2900 ( V2891) (if (shen.parse-failure? W2900) (shen.parse-failure) (let W2901 (shen.in-> W2900) (shen.comb W2901 "")))) (if (shen.parse-failure? W2899) (shen.parse-failure) W2899)) W2892))) +(defun shen. (V2547) (let W2548 (let W2549 (shen. V2547) (if (shen.parse-failure? W2549) (shen.parse-failure) (let W2550 (shen.<-out W2549) (let W2551 (shen.in-> W2549) (let W2552 (shen. W2551) (if (shen.parse-failure? W2552) (shen.parse-failure) (let W2553 (shen.<-out W2552) (let W2554 (shen.in-> W2552) (shen.comb W2554 (cn W2550 W2553)))))))))) (if (shen.parse-failure? W2548) (let W2555 (let W2556 ( V2547) (if (shen.parse-failure? W2556) (shen.parse-failure) (let W2557 (shen.in-> W2556) (shen.comb W2557 "")))) (if (shen.parse-failure? W2555) (shen.parse-failure) W2555)) W2548))) -(defun shen. (V2902) (let W2903 (let W2904 (shen. V2902) (if (shen.parse-failure? W2904) (shen.parse-failure) (let W2905 (shen.<-out W2904) (let W2906 (shen.in-> W2904) (shen.comb W2906 W2905))))) (if (shen.parse-failure? W2903) (let W2907 (let W2908 (shen. V2902) (if (shen.parse-failure? W2908) (shen.parse-failure) (let W2909 (shen.<-out W2908) (let W2910 (shen.in-> W2908) (shen.comb W2910 W2909))))) (if (shen.parse-failure? W2907) (shen.parse-failure) W2907)) W2903))) +(defun shen. (V2558) (let W2559 (let W2560 (shen. V2558) (if (shen.parse-failure? W2560) (shen.parse-failure) (let W2561 (shen.<-out W2560) (let W2562 (shen.in-> W2560) (shen.comb W2562 W2561))))) (if (shen.parse-failure? W2559) (let W2563 (let W2564 (shen. V2558) (if (shen.parse-failure? W2564) (shen.parse-failure) (let W2565 (shen.<-out W2564) (let W2566 (shen.in-> W2564) (shen.comb W2566 W2565))))) (if (shen.parse-failure? W2563) (shen.parse-failure) W2563)) W2559))) -(defun shen. (V2911) (let W2912 (if (cons? V2911) (let W2913 (head V2911) (let W2914 (tail V2911) (if (shen.digit? W2913) (shen.comb W2914 (n->string W2913)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2912) (shen.parse-failure) W2912))) +(defun shen. (V2567) (let W2568 (if (cons? V2567) (let W2569 (head V2567) (let W2570 (tail V2567) (if (shen.digit? W2569) (shen.comb W2570 (n->string W2569)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2568) (shen.parse-failure) W2568))) -(defun shen.digit? (V2915) (and (>= V2915 48) (<= V2915 57))) +(defun shen.digit? (V2571) (and (>= V2571 48) (<= V2571 57))) -(defun shen. (V2916) (let W2917 (let W2918 (shen. V2916) (if (shen.parse-failure? W2918) (shen.parse-failure) (let W2919 (shen.in-> W2918) (let W2920 (shen. W2919) (if (shen.parse-failure? W2920) (shen.parse-failure) (let W2921 (shen.<-out W2920) (let W2922 (shen.in-> W2920) (let W2923 (shen. W2922) (if (shen.parse-failure? W2923) (shen.parse-failure) (let W2924 (shen.in-> W2923) (shen.comb W2924 W2921))))))))))) (if (shen.parse-failure? W2917) (shen.parse-failure) W2917))) +(defun shen. (V2572) (let W2573 (let W2574 (shen. V2572) (if (shen.parse-failure? W2574) (shen.parse-failure) (let W2575 (shen.in-> W2574) (let W2576 (shen. W2575) (if (shen.parse-failure? W2576) (shen.parse-failure) (let W2577 (shen.<-out W2576) (let W2578 (shen.in-> W2576) (let W2579 (shen. W2578) (if (shen.parse-failure? W2579) (shen.parse-failure) (let W2580 (shen.in-> W2579) (shen.comb W2580 W2577))))))))))) (if (shen.parse-failure? W2573) (shen.parse-failure) W2573))) -(defun shen. (V2925) (let W2926 (if (shen.hds=? V2925 34) (let W2927 (tail V2925) (shen.comb W2927 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2926) (shen.parse-failure) W2926))) +(defun shen. (V2581) (let W2582 (if (shen.hds=? V2581 34) (let W2583 (tail V2581) (shen.comb W2583 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2582) (shen.parse-failure) W2582))) -(defun shen. (V2928) (let W2929 (let W2930 (shen. V2928) (if (shen.parse-failure? W2930) (shen.parse-failure) (let W2931 (shen.<-out W2930) (let W2932 (shen.in-> W2930) (let W2933 (shen. W2932) (if (shen.parse-failure? W2933) (shen.parse-failure) (let W2934 (shen.<-out W2933) (let W2935 (shen.in-> W2933) (shen.comb W2935 (cn W2931 W2934)))))))))) (if (shen.parse-failure? W2929) (let W2936 (let W2937 ( V2928) (if (shen.parse-failure? W2937) (shen.parse-failure) (let W2938 (shen.in-> W2937) (shen.comb W2938 "")))) (if (shen.parse-failure? W2936) (shen.parse-failure) W2936)) W2929))) +(defun shen. (V2584) (let W2585 (let W2586 (shen. V2584) (if (shen.parse-failure? W2586) (shen.parse-failure) (let W2587 (shen.<-out W2586) (let W2588 (shen.in-> W2586) (let W2589 (shen. W2588) (if (shen.parse-failure? W2589) (shen.parse-failure) (let W2590 (shen.<-out W2589) (let W2591 (shen.in-> W2589) (shen.comb W2591 (cn W2587 W2590)))))))))) (if (shen.parse-failure? W2585) (let W2592 (let W2593 ( V2584) (if (shen.parse-failure? W2593) (shen.parse-failure) (let W2594 (shen.in-> W2593) (shen.comb W2594 "")))) (if (shen.parse-failure? W2592) (shen.parse-failure) W2592)) W2585))) -(defun shen. (V2939) (let W2940 (let W2941 (shen. V2939) (if (shen.parse-failure? W2941) (shen.parse-failure) (let W2942 (shen.<-out W2941) (let W2943 (shen.in-> W2941) (shen.comb W2943 W2942))))) (if (shen.parse-failure? W2940) (let W2944 (let W2945 (shen. V2939) (if (shen.parse-failure? W2945) (shen.parse-failure) (let W2946 (shen.<-out W2945) (let W2947 (shen.in-> W2945) (shen.comb W2947 W2946))))) (if (shen.parse-failure? W2944) (shen.parse-failure) W2944)) W2940))) +(defun shen. (V2595) (let W2596 (let W2597 (shen. V2595) (if (shen.parse-failure? W2597) (shen.parse-failure) (let W2598 (shen.<-out W2597) (let W2599 (shen.in-> W2597) (shen.comb W2599 W2598))))) (if (shen.parse-failure? W2596) (let W2600 (let W2601 (shen. V2595) (if (shen.parse-failure? W2601) (shen.parse-failure) (let W2602 (shen.<-out W2601) (let W2603 (shen.in-> W2601) (shen.comb W2603 W2602))))) (if (shen.parse-failure? W2600) (shen.parse-failure) W2600)) W2596))) -(defun shen. (V2948) (let W2949 (let W2950 (shen. V2948) (if (shen.parse-failure? W2950) (shen.parse-failure) (let W2951 (shen.in-> W2950) (let W2952 (shen. W2951) (if (shen.parse-failure? W2952) (shen.parse-failure) (let W2953 (shen.in-> W2952) (let W2954 (shen. W2953) (if (shen.parse-failure? W2954) (shen.parse-failure) (let W2955 (shen.<-out W2954) (let W2956 (shen.in-> W2954) (let W2957 (shen. W2956) (if (shen.parse-failure? W2957) (shen.parse-failure) (let W2958 (shen.in-> W2957) (shen.comb W2958 (n->string W2955))))))))))))))) (if (shen.parse-failure? W2949) (shen.parse-failure) W2949))) +(defun shen. (V2604) (let W2605 (let W2606 (shen. V2604) (if (shen.parse-failure? W2606) (shen.parse-failure) (let W2607 (shen.in-> W2606) (let W2608 (shen. W2607) (if (shen.parse-failure? W2608) (shen.parse-failure) (let W2609 (shen.in-> W2608) (let W2610 (shen. W2609) (if (shen.parse-failure? W2610) (shen.parse-failure) (let W2611 (shen.<-out W2610) (let W2612 (shen.in-> W2610) (let W2613 (shen. W2612) (if (shen.parse-failure? W2613) (shen.parse-failure) (let W2614 (shen.in-> W2613) (shen.comb W2614 (n->string W2611))))))))))))))) (if (shen.parse-failure? W2605) (shen.parse-failure) W2605))) -(defun shen. (V2959) (let W2960 (if (cons? V2959) (let W2961 (head V2959) (let W2962 (tail V2959) (if (not (= W2961 34)) (shen.comb W2962 (n->string W2961)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2960) (shen.parse-failure) W2960))) +(defun shen. (V2615) (let W2616 (if (cons? V2615) (let W2617 (head V2615) (let W2618 (tail V2615) (if (not (= W2617 34)) (shen.comb W2618 (n->string W2617)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2616) (shen.parse-failure) W2616))) -(defun shen. (V2963) (let W2964 (if (shen.hds=? V2963 99) (let W2965 (tail V2963) (shen.comb W2965 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2964) (shen.parse-failure) W2964))) +(defun shen. (V2619) (let W2620 (if (shen.hds=? V2619 99) (let W2621 (tail V2619) (shen.comb W2621 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2620) (shen.parse-failure) W2620))) -(defun shen. (V2966) (let W2967 (if (shen.hds=? V2966 35) (let W2968 (tail V2966) (shen.comb W2968 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2967) (shen.parse-failure) W2967))) +(defun shen. (V2622) (let W2623 (if (shen.hds=? V2622 35) (let W2624 (tail V2622) (shen.comb W2624 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2623) (shen.parse-failure) W2623))) -(defun shen. (V2969) (let W2970 (let W2971 (shen. V2969) (if (shen.parse-failure? W2971) (shen.parse-failure) (let W2972 (shen.in-> W2971) (let W2973 (shen. W2972) (if (shen.parse-failure? W2973) (shen.parse-failure) (let W2974 (shen.<-out W2973) (let W2975 (shen.in-> W2973) (shen.comb W2975 (- 0 W2974))))))))) (if (shen.parse-failure? W2970) (let W2976 (let W2977 (shen. V2969) (if (shen.parse-failure? W2977) (shen.parse-failure) (let W2978 (shen.in-> W2977) (let W2979 (shen. W2978) (if (shen.parse-failure? W2979) (shen.parse-failure) (let W2980 (shen.<-out W2979) (let W2981 (shen.in-> W2979) (shen.comb W2981 W2980)))))))) (if (shen.parse-failure? W2976) (let W2982 (let W2983 (shen. V2969) (if (shen.parse-failure? W2983) (shen.parse-failure) (let W2984 (shen.<-out W2983) (let W2985 (shen.in-> W2983) (shen.comb W2985 W2984))))) (if (shen.parse-failure? W2982) (let W2986 (let W2987 (shen. V2969) (if (shen.parse-failure? W2987) (shen.parse-failure) (let W2988 (shen.<-out W2987) (let W2989 (shen.in-> W2987) (shen.comb W2989 W2988))))) (if (shen.parse-failure? W2986) (let W2990 (let W2991 (shen. V2969) (if (shen.parse-failure? W2991) (shen.parse-failure) (let W2992 (shen.<-out W2991) (let W2993 (shen.in-> W2991) (shen.comb W2993 W2992))))) (if (shen.parse-failure? W2990) (shen.parse-failure) W2990)) W2986)) W2982)) W2976)) W2970))) +(defun shen. (V2625) (let W2626 (let W2627 (shen. V2625) (if (shen.parse-failure? W2627) (shen.parse-failure) (let W2628 (shen.in-> W2627) (let W2629 (shen. W2628) (if (shen.parse-failure? W2629) (shen.parse-failure) (let W2630 (shen.<-out W2629) (let W2631 (shen.in-> W2629) (shen.comb W2631 (- 0 W2630))))))))) (if (shen.parse-failure? W2626) (let W2632 (let W2633 (shen. V2625) (if (shen.parse-failure? W2633) (shen.parse-failure) (let W2634 (shen.in-> W2633) (let W2635 (shen. W2634) (if (shen.parse-failure? W2635) (shen.parse-failure) (let W2636 (shen.<-out W2635) (let W2637 (shen.in-> W2635) (shen.comb W2637 W2636)))))))) (if (shen.parse-failure? W2632) (let W2638 (let W2639 (shen. V2625) (if (shen.parse-failure? W2639) (shen.parse-failure) (let W2640 (shen.<-out W2639) (let W2641 (shen.in-> W2639) (shen.comb W2641 W2640))))) (if (shen.parse-failure? W2638) (let W2642 (let W2643 (shen. V2625) (if (shen.parse-failure? W2643) (shen.parse-failure) (let W2644 (shen.<-out W2643) (let W2645 (shen.in-> W2643) (shen.comb W2645 W2644))))) (if (shen.parse-failure? W2642) (let W2646 (let W2647 (shen. V2625) (if (shen.parse-failure? W2647) (shen.parse-failure) (let W2648 (shen.<-out W2647) (let W2649 (shen.in-> W2647) (shen.comb W2649 W2648))))) (if (shen.parse-failure? W2646) (shen.parse-failure) W2646)) W2642)) W2638)) W2632)) W2626))) -(defun shen. (V2994) (let W2995 (if (shen.hds=? V2994 45) (let W2996 (tail V2994) (shen.comb W2996 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2995) (shen.parse-failure) W2995))) +(defun shen. (V2650) (let W2651 (if (shen.hds=? V2650 45) (let W2652 (tail V2650) (shen.comb W2652 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2651) (shen.parse-failure) W2651))) -(defun shen. (V2997) (let W2998 (if (shen.hds=? V2997 43) (let W2999 (tail V2997) (shen.comb W2999 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2998) (shen.parse-failure) W2998))) +(defun shen. (V2653) (let W2654 (if (shen.hds=? V2653 43) (let W2655 (tail V2653) (shen.comb W2655 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2654) (shen.parse-failure) W2654))) -(defun shen. (V3000) (let W3001 (let W3002 (shen. V3000) (if (shen.parse-failure? W3002) (shen.parse-failure) (let W3003 (shen.<-out W3002) (let W3004 (shen.in-> W3002) (shen.comb W3004 (shen.compute-integer W3003)))))) (if (shen.parse-failure? W3001) (shen.parse-failure) W3001))) +(defun shen. (V2656) (let W2657 (let W2658 (shen. V2656) (if (shen.parse-failure? W2658) (shen.parse-failure) (let W2659 (shen.<-out W2658) (let W2660 (shen.in-> W2658) (shen.comb W2660 (shen.compute-integer W2659)))))) (if (shen.parse-failure? W2657) (shen.parse-failure) W2657))) -(defun shen. (V3005) (let W3006 (let W3007 (shen. V3005) (if (shen.parse-failure? W3007) (shen.parse-failure) (let W3008 (shen.<-out W3007) (let W3009 (shen.in-> W3007) (let W3010 (shen. W3009) (if (shen.parse-failure? W3010) (shen.parse-failure) (let W3011 (shen.<-out W3010) (let W3012 (shen.in-> W3010) (shen.comb W3012 (cons W3008 W3011)))))))))) (if (shen.parse-failure? W3006) (let W3013 (let W3014 (shen. V3005) (if (shen.parse-failure? W3014) (shen.parse-failure) (let W3015 (shen.<-out W3014) (let W3016 (shen.in-> W3014) (shen.comb W3016 (cons W3015 ())))))) (if (shen.parse-failure? W3013) (shen.parse-failure) W3013)) W3006))) +(defun shen. (V2661) (let W2662 (let W2663 (shen. V2661) (if (shen.parse-failure? W2663) (shen.parse-failure) (let W2664 (shen.<-out W2663) (let W2665 (shen.in-> W2663) (let W2666 (shen. W2665) (if (shen.parse-failure? W2666) (shen.parse-failure) (let W2667 (shen.<-out W2666) (let W2668 (shen.in-> W2666) (shen.comb W2668 (cons W2664 W2667)))))))))) (if (shen.parse-failure? W2662) (let W2669 (let W2670 (shen. V2661) (if (shen.parse-failure? W2670) (shen.parse-failure) (let W2671 (shen.<-out W2670) (let W2672 (shen.in-> W2670) (shen.comb W2672 (cons W2671 ())))))) (if (shen.parse-failure? W2669) (shen.parse-failure) W2669)) W2662))) -(defun shen. (V3017) (let W3018 (if (cons? V3017) (let W3019 (head V3017) (let W3020 (tail V3017) (if (shen.digit? W3019) (shen.comb W3020 (shen.byte->digit W3019)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3018) (shen.parse-failure) W3018))) +(defun shen. (V2673) (let W2674 (if (cons? V2673) (let W2675 (head V2673) (let W2676 (tail V2673) (if (shen.digit? W2675) (shen.comb W2676 (shen.byte->digit W2675)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2674) (shen.parse-failure) W2674))) -(defun shen.byte->digit (V3021) (- V3021 48)) +(defun shen.byte->digit (V2677) (- V2677 48)) -(defun shen.compute-integer (V3022) (shen.compute-integer-h (reverse V3022) 0)) +(defun shen.compute-integer (V2678) (shen.compute-integer-h (reverse V2678) 0)) -(defun shen.compute-integer-h (V3025 V3026) (cond ((= () V3025) 0) ((cons? V3025) (+ (* (shen.expt 10 V3026) (hd V3025)) (shen.compute-integer-h (tl V3025) (+ V3026 1)))) (true (shen.f-error shen.compute-integer-h)))) +(defun shen.compute-integer-h (V2681 V2682) (cond ((= () V2681) 0) ((cons? V2681) (+ (* (shen.expt 10 V2682) (hd V2681)) (shen.compute-integer-h (tl V2681) (+ V2682 1)))) (true (simple-error "partial function shen.compute-integer-h")))) -(defun shen.expt (V3029 V3030) (cond ((= 0 V3030) 1) ((> V3030 0) (* V3029 (shen.expt V3029 (- V3030 1)))) (true (/ (shen.expt V3029 (+ V3030 1)) V3029)))) +(defun shen.expt (V2685 V2686) (cond ((= 0 V2686) 1) ((> V2686 0) (* V2685 (shen.expt V2685 (- V2686 1)))) (true (/ (shen.expt V2685 (+ V2686 1)) V2685)))) -(defun shen. (V3031) (let W3032 (let W3033 (shen. V3031) (if (shen.parse-failure? W3033) (shen.parse-failure) (let W3034 (shen.<-out W3033) (let W3035 (shen.in-> W3033) (let W3036 (shen. W3035) (if (shen.parse-failure? W3036) (shen.parse-failure) (let W3037 (shen.in-> W3036) (let W3038 (shen. W3037) (if (shen.parse-failure? W3038) (shen.parse-failure) (let W3039 (shen.<-out W3038) (let W3040 (shen.in-> W3038) (shen.comb W3040 (+ W3034 W3039))))))))))))) (if (shen.parse-failure? W3032) (let W3041 (let W3042 (shen. V3031) (if (shen.parse-failure? W3042) (shen.parse-failure) (let W3043 (shen.in-> W3042) (let W3044 (shen. W3043) (if (shen.parse-failure? W3044) (shen.parse-failure) (let W3045 (shen.<-out W3044) (let W3046 (shen.in-> W3044) (shen.comb W3046 W3045)))))))) (if (shen.parse-failure? W3041) (shen.parse-failure) W3041)) W3032))) +(defun shen. (V2687) (let W2688 (let W2689 (shen. V2687) (if (shen.parse-failure? W2689) (shen.parse-failure) (let W2690 (shen.<-out W2689) (let W2691 (shen.in-> W2689) (let W2692 (shen. W2691) (if (shen.parse-failure? W2692) (shen.parse-failure) (let W2693 (shen.in-> W2692) (let W2694 (shen. W2693) (if (shen.parse-failure? W2694) (shen.parse-failure) (let W2695 (shen.<-out W2694) (let W2696 (shen.in-> W2694) (shen.comb W2696 (+ W2690 W2695))))))))))))) (if (shen.parse-failure? W2688) (let W2697 (let W2698 (shen. V2687) (if (shen.parse-failure? W2698) (shen.parse-failure) (let W2699 (shen.in-> W2698) (let W2700 (shen. W2699) (if (shen.parse-failure? W2700) (shen.parse-failure) (let W2701 (shen.<-out W2700) (let W2702 (shen.in-> W2700) (shen.comb W2702 W2701)))))))) (if (shen.parse-failure? W2697) (shen.parse-failure) W2697)) W2688))) -(defun shen. (V3047) (let W3048 (if (shen.hds=? V3047 46) (let W3049 (tail V3047) (shen.comb W3049 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W3048) (shen.parse-failure) W3048))) +(defun shen. (V2703) (let W2704 (if (shen.hds=? V2703 46) (let W2705 (tail V2703) (shen.comb W2705 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2704) (shen.parse-failure) W2704))) -(defun shen. (V3050) (let W3051 (let W3052 (shen. V3050) (if (shen.parse-failure? W3052) (shen.parse-failure) (let W3053 (shen.<-out W3052) (let W3054 (shen.in-> W3052) (shen.comb W3054 (shen.compute-fraction W3053)))))) (if (shen.parse-failure? W3051) (shen.parse-failure) W3051))) +(defun shen. (V2706) (let W2707 (let W2708 (shen. V2706) (if (shen.parse-failure? W2708) (shen.parse-failure) (let W2709 (shen.<-out W2708) (let W2710 (shen.in-> W2708) (shen.comb W2710 (shen.compute-fraction W2709)))))) (if (shen.parse-failure? W2707) (shen.parse-failure) W2707))) -(defun shen.compute-fraction (V3055) (shen.compute-fraction-h V3055 -1)) +(defun shen.compute-fraction (V2711) (shen.compute-fraction-h V2711 -1)) -(defun shen.compute-fraction-h (V3058 V3059) (cond ((= () V3058) 0) ((cons? V3058) (+ (* (shen.expt 10 V3059) (hd V3058)) (shen.compute-fraction-h (tl V3058) (- V3059 1)))) (true (shen.f-error shen.compute-fraction-h)))) +(defun shen.compute-fraction-h (V2714 V2715) (cond ((= () V2714) 0) ((cons? V2714) (+ (* (shen.expt 10 V2715) (hd V2714)) (shen.compute-fraction-h (tl V2714) (- V2715 1)))) (true (simple-error "partial function shen.compute-fraction-h")))) -(defun shen. (V3060) (let W3061 (let W3062 (shen. V3060) (if (shen.parse-failure? W3062) (shen.parse-failure) (let W3063 (shen.<-out W3062) (let W3064 (shen.in-> W3062) (let W3065 (shen. W3064) (if (shen.parse-failure? W3065) (shen.parse-failure) (let W3066 (shen.in-> W3065) (let W3067 (shen. W3066) (if (shen.parse-failure? W3067) (shen.parse-failure) (let W3068 (shen.<-out W3067) (let W3069 (shen.in-> W3067) (shen.comb W3069 (shen.compute-E W3063 W3068))))))))))))) (if (shen.parse-failure? W3061) (let W3070 (let W3071 (shen. V3060) (if (shen.parse-failure? W3071) (shen.parse-failure) (let W3072 (shen.<-out W3071) (let W3073 (shen.in-> W3071) (let W3074 (shen. W3073) (if (shen.parse-failure? W3074) (shen.parse-failure) (let W3075 (shen.in-> W3074) (let W3076 (shen. W3075) (if (shen.parse-failure? W3076) (shen.parse-failure) (let W3077 (shen.<-out W3076) (let W3078 (shen.in-> W3076) (shen.comb W3078 (shen.compute-E W3072 W3077))))))))))))) (if (shen.parse-failure? W3070) (shen.parse-failure) W3070)) W3061))) +(defun shen. (V2716) (let W2717 (let W2718 (shen. V2716) (if (shen.parse-failure? W2718) (shen.parse-failure) (let W2719 (shen.<-out W2718) (let W2720 (shen.in-> W2718) (let W2721 (shen. W2720) (if (shen.parse-failure? W2721) (shen.parse-failure) (let W2722 (shen.in-> W2721) (let W2723 (shen. W2722) (if (shen.parse-failure? W2723) (shen.parse-failure) (let W2724 (shen.<-out W2723) (let W2725 (shen.in-> W2723) (shen.comb W2725 (shen.compute-E W2719 W2724))))))))))))) (if (shen.parse-failure? W2717) (let W2726 (let W2727 (shen. V2716) (if (shen.parse-failure? W2727) (shen.parse-failure) (let W2728 (shen.<-out W2727) (let W2729 (shen.in-> W2727) (let W2730 (shen. W2729) (if (shen.parse-failure? W2730) (shen.parse-failure) (let W2731 (shen.in-> W2730) (let W2732 (shen. W2731) (if (shen.parse-failure? W2732) (shen.parse-failure) (let W2733 (shen.<-out W2732) (let W2734 (shen.in-> W2732) (shen.comb W2734 (shen.compute-E W2728 W2733))))))))))))) (if (shen.parse-failure? W2726) (shen.parse-failure) W2726)) W2717))) -(defun shen. (V3079) (let W3080 (let W3081 (shen. V3079) (if (shen.parse-failure? W3081) (shen.parse-failure) (let W3082 (shen.in-> W3081) (let W3083 (shen. W3082) (if (shen.parse-failure? W3083) (shen.parse-failure) (let W3084 (shen.<-out W3083) (let W3085 (shen.in-> W3083) (shen.comb W3085 W3084)))))))) (if (shen.parse-failure? W3080) (let W3086 (let W3087 (shen. V3079) (if (shen.parse-failure? W3087) (shen.parse-failure) (let W3088 (shen.in-> W3087) (let W3089 (shen. W3088) (if (shen.parse-failure? W3089) (shen.parse-failure) (let W3090 (shen.<-out W3089) (let W3091 (shen.in-> W3089) (shen.comb W3091 (- 0 W3090))))))))) (if (shen.parse-failure? W3086) (let W3092 (let W3093 (shen. V3079) (if (shen.parse-failure? W3093) (shen.parse-failure) (let W3094 (shen.<-out W3093) (let W3095 (shen.in-> W3093) (shen.comb W3095 W3094))))) (if (shen.parse-failure? W3092) (shen.parse-failure) W3092)) W3086)) W3080))) +(defun shen. (V2735) (let W2736 (let W2737 (shen. V2735) (if (shen.parse-failure? W2737) (shen.parse-failure) (let W2738 (shen.in-> W2737) (let W2739 (shen. W2738) (if (shen.parse-failure? W2739) (shen.parse-failure) (let W2740 (shen.<-out W2739) (let W2741 (shen.in-> W2739) (shen.comb W2741 W2740)))))))) (if (shen.parse-failure? W2736) (let W2742 (let W2743 (shen. V2735) (if (shen.parse-failure? W2743) (shen.parse-failure) (let W2744 (shen.in-> W2743) (let W2745 (shen. W2744) (if (shen.parse-failure? W2745) (shen.parse-failure) (let W2746 (shen.<-out W2745) (let W2747 (shen.in-> W2745) (shen.comb W2747 (- 0 W2746))))))))) (if (shen.parse-failure? W2742) (let W2748 (let W2749 (shen. V2735) (if (shen.parse-failure? W2749) (shen.parse-failure) (let W2750 (shen.<-out W2749) (let W2751 (shen.in-> W2749) (shen.comb W2751 W2750))))) (if (shen.parse-failure? W2748) (shen.parse-failure) W2748)) W2742)) W2736))) -(defun shen. (V3096) (let W3097 (if (shen.hds=? V3096 101) (let W3098 (tail V3096) (shen.comb W3098 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W3097) (shen.parse-failure) W3097))) +(defun shen. (V2752) (let W2753 (if (shen.hds=? V2752 101) (let W2754 (tail V2752) (shen.comb W2754 shen.skip)) (shen.parse-failure)) (if (shen.parse-failure? W2753) (shen.parse-failure) W2753))) -(defun shen.compute-E (V3099 V3100) (* V3099 (shen.expt 10 V3100))) +(defun shen.compute-E (V2755 V2756) (* V2755 (shen.expt 10 V2756))) -(defun shen. (V3101) (let W3102 (let W3103 (shen. V3101) (if (shen.parse-failure? W3103) (shen.parse-failure) (let W3104 (shen.in-> W3103) (let W3105 (shen. W3104) (if (shen.parse-failure? W3105) (shen.parse-failure) (let W3106 (shen.in-> W3105) (shen.comb W3106 shen.skip))))))) (if (shen.parse-failure? W3102) (let W3107 (let W3108 (shen. V3101) (if (shen.parse-failure? W3108) (shen.parse-failure) (let W3109 (shen.in-> W3108) (shen.comb W3109 shen.skip)))) (if (shen.parse-failure? W3107) (shen.parse-failure) W3107)) W3102))) +(defun shen. (V2757) (let W2758 (let W2759 (shen. V2757) (if (shen.parse-failure? W2759) (shen.parse-failure) (let W2760 (shen.in-> W2759) (let W2761 (shen. W2760) (if (shen.parse-failure? W2761) (shen.parse-failure) (let W2762 (shen.in-> W2761) (shen.comb W2762 shen.skip))))))) (if (shen.parse-failure? W2758) (let W2763 (let W2764 (shen. V2757) (if (shen.parse-failure? W2764) (shen.parse-failure) (let W2765 (shen.in-> W2764) (shen.comb W2765 shen.skip)))) (if (shen.parse-failure? W2763) (shen.parse-failure) W2763)) W2758))) -(defun shen. (V3110) (let W3111 (if (cons? V3110) (let W3112 (head V3110) (let W3113 (tail V3110) (if (shen.whitespace? W3112) (shen.comb W3113 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3111) (shen.parse-failure) W3111))) +(defun shen. (V2766) (let W2767 (if (cons? V2766) (let W2768 (head V2766) (let W2769 (tail V2766) (if (shen.whitespace? W2768) (shen.comb W2769 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W2767) (shen.parse-failure) W2767))) -(defun shen.whitespace? (V3116) (cond ((= 32 V3116) true) ((= 13 V3116) true) ((= 10 V3116) true) ((= 9 V3116) true) (true false))) +(defun shen.whitespace? (V2772) (cond ((= 32 V2772) true) ((= 13 V2772) true) ((= 10 V2772) true) ((= 9 V2772) true) (true false))) -(defun shen.unpackage¯oexpand (V3117) (cond ((= () V3117) ()) ((and (cons? V3117) (shen.packaged? (hd V3117))) (shen.unpackage¯oexpand (append (shen.unpackage (hd V3117)) (tl V3117)))) ((cons? V3117) (let W3118 (macroexpand (hd V3117)) (if (shen.packaged? W3118) (shen.unpackage¯oexpand (cons W3118 (tl V3117))) (cons W3118 (shen.unpackage¯oexpand (tl V3117)))))) (true (shen.f-error shen.unpackage¯oexpand)))) +(defun shen.unpackage¯oexpand (V2773) (cond ((= () V2773) ()) ((and (cons? V2773) (shen.packaged? (hd V2773))) (shen.unpackage¯oexpand (append (shen.unpackage (hd V2773)) (tl V2773)))) ((cons? V2773) (let W2774 (macroexpand (hd V2773)) (if (shen.packaged? W2774) (shen.unpackage¯oexpand (cons W2774 (tl V2773))) (cons W2774 (shen.unpackage¯oexpand (tl V2773)))))) (true (simple-error "partial function shen.unpackage¯oexpand")))) -(defun shen.packaged? (V3121) (cond ((and (cons? V3121) (and (= package (hd V3121)) (and (cons? (tl V3121)) (cons? (tl (tl V3121)))))) true) (true false))) +(defun shen.packaged? (V2777) (cond ((and (cons? V2777) (and (= package (hd V2777)) (and (cons? (tl V2777)) (cons? (tl (tl V2777)))))) true) (true false))) -(defun shen.unpackage (V3124) (cond ((and (cons? V3124) (and (= package (hd V3124)) (and (cons? (tl V3124)) (and (= null (hd (tl V3124))) (cons? (tl (tl V3124))))))) (tl (tl (tl V3124)))) ((and (cons? V3124) (and (= package (hd V3124)) (and (cons? (tl V3124)) (cons? (tl (tl V3124)))))) (let W3125 (eval (hd (tl (tl V3124)))) (let W3126 (shen.package-symbols (str (hd (tl V3124))) W3125 (tl (tl (tl V3124)))) (let W3127 (shen.record-external (hd (tl V3124)) W3125) (let W3128 (shen.record-internal (hd (tl V3124)) W3125 (tl (tl (tl V3124)))) W3126))))) (true (shen.f-error shen.unpackage)))) +(defun shen.unpackage (V2780) (cond ((and (cons? V2780) (and (= package (hd V2780)) (and (cons? (tl V2780)) (and (= null (hd (tl V2780))) (cons? (tl (tl V2780))))))) (tl (tl (tl V2780)))) ((and (cons? V2780) (and (= package (hd V2780)) (and (cons? (tl V2780)) (cons? (tl (tl V2780)))))) (let W2781 (eval (hd (tl (tl V2780)))) (let W2782 (shen.package-symbols (str (hd (tl V2780))) W2781 (tl (tl (tl V2780)))) (let W2783 (shen.record-external (hd (tl V2780)) W2781) (let W2784 (shen.record-internal (hd (tl V2780)) W2781 (tl (tl (tl V2780)))) W2782))))) (true (simple-error "partial function shen.unpackage")))) -(defun shen.record-internal (V3129 V3130 V3131) (let W3132 (trap-error (get V3129 shen.internal-symbols (value *property-vector*)) (lambda Z3133 ())) (let W3134 (shen.internal-symbols (str V3129) V3130 V3131) (put V3129 shen.internal-symbols (union W3134 W3132) (value *property-vector*))))) +(defun shen.record-internal (V2785 V2786 V2787) (let W2788 (trap-error (get V2785 shen.internal-symbols (value *property-vector*)) (lambda Z2789 ())) (let W2790 (shen.internal-symbols (str V2785) V2786 V2787) (put V2785 shen.internal-symbols (union W2790 W2788) (value *property-vector*))))) -(defun shen.internal-symbols (V3141 V3142 V3143) (cond ((cons? V3143) (union (shen.internal-symbols V3141 V3142 (hd V3143)) (shen.internal-symbols V3141 V3142 (tl V3143)))) ((shen.internal? V3143 V3141 V3142) (cons (shen.intern-in-package V3141 V3143) ())) (true ()))) +(defun shen.internal-symbols (V2797 V2798 V2799) (cond ((cons? V2799) (union (shen.internal-symbols V2797 V2798 (hd V2799)) (shen.internal-symbols V2797 V2798 (tl V2799)))) ((shen.internal? V2799 V2797 V2798) (cons (shen.intern-in-package V2797 V2799) ())) (true ()))) -(defun shen.record-external (V3144 V3145) (let W3146 (trap-error (get V3144 shen.external-symbols (value *property-vector*)) (lambda Z3147 ())) (put V3144 shen.external-symbols (union V3145 W3146) (value *property-vector*)))) +(defun shen.record-external (V2800 V2801) (let W2802 (trap-error (get V2800 shen.external-symbols (value *property-vector*)) (lambda Z2803 ())) (put V2800 shen.external-symbols (union V2801 W2802) (value *property-vector*)))) -(defun shen.package-symbols (V3152 V3153 V3154) (cond ((cons? V3154) (map (lambda Z3155 (shen.package-symbols V3152 V3153 Z3155)) V3154)) ((shen.internal? V3154 V3152 V3153) (shen.intern-in-package V3152 V3154)) (true V3154))) +(defun shen.package-symbols (V2808 V2809 V2810) (cond ((cons? V2810) (map (lambda Z2811 (shen.package-symbols V2808 V2809 Z2811)) V2810)) ((shen.internal? V2810 V2808 V2809) (shen.intern-in-package V2808 V2810)) (true V2810))) -(defun shen.intern-in-package (V3156 V3157) (intern (@s V3156 (@s "." (str V3157))))) +(defun shen.intern-in-package (V2812 V2813) (intern (@s V2812 (@s "." (str V2813))))) -(defun shen.internal? (V3158 V3159 V3160) (and (not (element? V3158 V3160)) (and (not (shen.sng? V3158)) (and (not (shen.dbl? V3158)) (and (symbol? V3158) (and (not (shen.sysfunc? V3158)) (and (not (variable? V3158)) (and (not (shen.internal-to-shen? (str V3158))) (not (shen.internal-to-P? V3159 (str V3158))))))))))) +(defun shen.internal? (V2814 V2815 V2816) (and (not (element? V2814 V2816)) (and (not (shen.sng? V2814)) (and (not (shen.dbl? V2814)) (and (symbol? V2814) (and (not (shen.sysfunc? V2814)) (and (not (variable? V2814)) (and (not (shen.internal-to-shen? (str V2814))) (not (shen.internal-to-P? V2815 (str V2814))))))))))) -(defun shen.internal-to-shen? (V3165) (cond ((and (shen.+string? V3165) (and (= "s" (hdstr V3165)) (and (shen.+string? (tlstr V3165)) (and (= "h" (hdstr (tlstr V3165))) (and (shen.+string? (tlstr (tlstr V3165))) (and (= "e" (hdstr (tlstr (tlstr V3165)))) (and (shen.+string? (tlstr (tlstr (tlstr V3165)))) (and (= "n" (hdstr (tlstr (tlstr (tlstr V3165))))) (and (shen.+string? (tlstr (tlstr (tlstr (tlstr V3165))))) (= "." (hdstr (tlstr (tlstr (tlstr (tlstr V3165))))))))))))))) true) (true false))) +(defun shen.internal-to-shen? (V2821) (cond ((and (shen.+string? V2821) (and (= "s" (hdstr V2821)) (and (shen.+string? (tlstr V2821)) (and (= "h" (hdstr (tlstr V2821))) (and (shen.+string? (tlstr (tlstr V2821))) (and (= "e" (hdstr (tlstr (tlstr V2821)))) (and (shen.+string? (tlstr (tlstr (tlstr V2821)))) (and (= "n" (hdstr (tlstr (tlstr (tlstr V2821))))) (and (shen.+string? (tlstr (tlstr (tlstr (tlstr V2821))))) (= "." (hdstr (tlstr (tlstr (tlstr (tlstr V2821))))))))))))))) true) (true false))) -(defun shen.sysfunc? (V3166) (element? V3166 (get shen shen.external-symbols (value *property-vector*)))) +(defun shen.sysfunc? (V2822) (element? V2822 (get shen shen.external-symbols (value *property-vector*)))) -(defun shen.internal-to-P? (V3174 V3175) (cond ((and (= "" V3174) (and (shen.+string? V3175) (= "." (hdstr V3175)))) true) ((and (shen.+string? V3174) (and (shen.+string? V3175) (= (hdstr V3174) (hdstr V3175)))) (shen.internal-to-P? (tlstr V3174) (tlstr V3175))) (true false))) +(defun shen.internal-to-P? (V2830 V2831) (cond ((and (= "" V2830) (and (shen.+string? V2831) (= "." (hdstr V2831)))) true) ((and (shen.+string? V2830) (and (shen.+string? V2831) (= (hdstr V2830) (hdstr V2831)))) (shen.internal-to-P? (tlstr V2830) (tlstr V2831))) (true false))) -(defun shen.process-applications (V3178 V3179) (cond ((element? V3178 V3179) V3178) ((and (cons? V3178) (= cond (hd V3178))) (cons cond (shen.process-cond-clauses (tl V3178) V3179))) ((and (cons? V3178) (shen.non-application? (hd V3178))) (shen.special-case (hd V3178) V3178 V3179)) ((cons? V3178) (shen.process-application (map (lambda Z3180 (shen.process-applications Z3180 V3179)) V3178) V3179)) (true V3178))) +(defun shen.process-applications (V2834 V2835) (cond ((element? V2834 V2835) V2834) ((and (cons? V2834) (shen.non-application? (hd V2834))) (shen.special-case (hd V2834) V2834 V2835)) ((cons? V2834) (shen.process-application (map (lambda Z2836 (shen.process-applications Z2836 V2835)) V2834) V2835)) (true V2834))) -(defun shen.non-application? (V3183) (cond ((= define V3183) true) ((= defun V3183) true) ((= synonyms V3183) true) ((shen.special? V3183) true) ((shen.extraspecial? V3183) true) (true false))) +(defun shen.non-application? (V2839) (cond ((= define V2839) true) ((= defun V2839) true) ((= synonyms V2839) true) ((shen.special? V2839) true) ((shen.extraspecial? V2839) true) (true false))) -(defun shen.special-case (V3188 V3189 V3190) (cond ((and (= lambda V3188) (and (cons? V3189) (and (= lambda (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (= () (tl (tl (tl V3189))))))))) (cons lambda (cons (hd (tl V3189)) (cons (shen.process-applications (hd (tl (tl V3189))) V3190) ())))) ((and (= let V3188) (and (cons? V3189) (and (= let (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (and (cons? (tl (tl (tl V3189)))) (= () (tl (tl (tl (tl V3189))))))))))) (cons let (cons (hd (tl V3189)) (cons (shen.process-applications (hd (tl (tl V3189))) V3190) (cons (shen.process-applications (hd (tl (tl (tl V3189)))) V3190) ()))))) ((and (= defun V3188) (and (cons? V3189) (and (= defun (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (and (cons? (tl (tl (tl V3189)))) (= () (tl (tl (tl (tl V3189))))))))))) V3189) ((and (= define V3188) (and (cons? V3189) (and (= define (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (= { (hd (tl (tl V3189))))))))) (cons define (cons (hd (tl V3189)) (cons { (shen.process-after-type (hd (tl V3189)) (tl (tl (tl V3189))) V3190))))) ((and (= define V3188) (and (cons? V3189) (and (= define (hd V3189)) (cons? (tl V3189))))) (cons define (cons (hd (tl V3189)) (map (lambda Z3191 (shen.process-applications Z3191 V3190)) (tl (tl V3189)))))) ((= synonyms V3188) (cons synonyms V3189)) ((and (= type V3188) (and (cons? V3189) (and (= type (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (= () (tl (tl (tl V3189))))))))) (cons type (cons (shen.process-applications (hd (tl V3189)) V3190) (tl (tl V3189))))) ((and (= input+ V3188) (and (cons? V3189) (and (= input+ (hd V3189)) (and (cons? (tl V3189)) (and (cons? (tl (tl V3189))) (= () (tl (tl (tl V3189))))))))) (cons input+ (cons (hd (tl V3189)) (cons (shen.process-applications (hd (tl (tl V3189))) V3190) ())))) ((and (cons? V3189) (shen.special? (hd V3189))) (cons (hd V3189) (map (lambda Z3192 (shen.process-applications Z3192 V3190)) (tl V3189)))) ((and (cons? V3189) (shen.extraspecial? (hd V3189))) V3189) (true (shen.f-error shen.special-case)))) +(defun shen.special-case (V2844 V2845 V2846) (cond ((and (= lambda V2844) (and (cons? V2845) (and (= lambda (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (= () (tl (tl (tl V2845))))))))) (cons lambda (cons (hd (tl V2845)) (cons (shen.process-applications (hd (tl (tl V2845))) V2846) ())))) ((and (= let V2844) (and (cons? V2845) (and (= let (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (and (cons? (tl (tl (tl V2845)))) (= () (tl (tl (tl (tl V2845))))))))))) (cons let (cons (hd (tl V2845)) (cons (shen.process-applications (hd (tl (tl V2845))) V2846) (cons (shen.process-applications (hd (tl (tl (tl V2845)))) V2846) ()))))) ((and (= defun V2844) (and (cons? V2845) (and (= defun (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (and (cons? (tl (tl (tl V2845)))) (= () (tl (tl (tl (tl V2845))))))))))) V2845) ((and (= define V2844) (and (cons? V2845) (and (= define (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (= { (hd (tl (tl V2845))))))))) (cons define (cons (hd (tl V2845)) (cons { (shen.process-after-type (hd (tl V2845)) (tl (tl (tl V2845))) V2846))))) ((and (= define V2844) (and (cons? V2845) (and (= define (hd V2845)) (cons? (tl V2845))))) (cons define (cons (hd (tl V2845)) (map (lambda Z2847 (shen.process-applications Z2847 V2846)) (tl (tl V2845)))))) ((= synonyms V2844) (cons synonyms V2845)) ((and (= type V2844) (and (cons? V2845) (and (= type (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (= () (tl (tl (tl V2845))))))))) (cons type (cons (shen.process-applications (hd (tl V2845)) V2846) (tl (tl V2845))))) ((and (= input+ V2844) (and (cons? V2845) (and (= input+ (hd V2845)) (and (cons? (tl V2845)) (and (cons? (tl (tl V2845))) (= () (tl (tl (tl V2845))))))))) (cons input+ (cons (hd (tl V2845)) (cons (shen.process-applications (hd (tl (tl V2845))) V2846) ())))) ((and (cons? V2845) (shen.special? (hd V2845))) (cons (hd V2845) (map (lambda Z2848 (shen.process-applications Z2848 V2846)) (tl V2845)))) ((and (cons? V2845) (shen.extraspecial? (hd V2845))) V2845) (true (simple-error "partial function shen.special-case")))) -(defun shen.process-cond-clauses (V3195 V3196) (cond ((= () V3195) ()) ((and (cons? V3195) (and (cons? (hd V3195)) (and (cons? (tl (hd V3195))) (= () (tl (tl (hd V3195))))))) (cons (cons (shen.process-applications (hd (hd V3195)) V3196) (cons (shen.process-applications (hd (tl (hd V3195))) V3196) ())) (shen.process-cond-clauses (tl V3195) V3196))) (true (shen.f-error shen.process-cond-clauses)))) - -(defun shen.process-after-type (V3199 V3200 V3201) (cond ((and (cons? V3200) (= } (hd V3200))) (cons } (map (lambda Z3202 (shen.process-applications Z3202 V3201)) (tl V3200)))) ((cons? V3200) (cons (hd V3200) (shen.process-after-type V3199 (tl V3200) V3201))) (true (simple-error (cn "missing } in " (shen.app V3199 " +(defun shen.process-after-type (V2851 V2852 V2853) (cond ((and (cons? V2852) (= } (hd V2852))) (cons } (map (lambda Z2854 (shen.process-applications Z2854 V2853)) (tl V2852)))) ((cons? V2852) (cons (hd V2852) (shen.process-after-type V2851 (tl V2852) V2853))) (true (simple-error (cn "missing } in " (shen.app V2851 " " shen.a)))))) -(defun shen.process-application (V3203 V3204) (cond ((cons? V3203) (let W3205 (arity (hd V3203)) (let W3206 (length (tl V3203)) (if (element? V3203 V3204) V3203 (if (shen.shen-call? (hd V3203)) V3203 (if (shen.foreign? V3203) (shen.unpack-foreign V3203) (if (shen.fn-call? V3203) (shen.fn-call V3203) (if (shen.zero-place? V3203) V3203 (if (shen.undefined-f? (hd V3203) W3205) (shen.simple-curry (cons (cons fn (cons (hd V3203) ())) (tl V3203))) (if (variable? (hd V3203)) (shen.simple-curry V3203) (if (shen.application? (hd V3203)) (shen.simple-curry V3203) (if (shen.partial-application*? (hd V3203) W3205 W3206) (shen.lambda-function V3203 (- W3205 W3206)) (if (shen.overapplication? (hd V3203) W3205 W3206) (shen.simple-curry (cons (cons fn (cons (hd V3203) ())) (tl V3203))) V3203))))))))))))) (true (shen.f-error shen.process-application)))) +(defun shen.process-application (V2855 V2856) (cond ((cons? V2855) (let W2857 (arity (hd V2855)) (let W2858 (length (tl V2855)) (if (element? V2855 V2856) V2855 (if (shen.shen-call? (hd V2855)) V2855 (if (shen.foreign? V2855) (shen.unpack-foreign V2855) (if (shen.fn-call? V2855) (shen.fn-call V2855) (if (shen.zero-place? V2855) V2855 (if (shen.undefined-f? (hd V2855) W2857) (shen.simple-curry (cons (cons fn (cons (hd V2855) ())) (tl V2855))) (if (variable? (hd V2855)) (shen.simple-curry V2855) (if (shen.application? (hd V2855)) (shen.simple-curry V2855) (if (shen.partial-application*? (hd V2855) W2857 W2858) (shen.lambda-function V2855 (- W2857 W2858)) (if (shen.overapplication? (hd V2855) W2857 W2858) (shen.simple-curry (cons (cons fn (cons (hd V2855) ())) (tl V2855))) V2855))))))))))))) (true (simple-error "partial function shen.process-application")))) -(defun shen.unpack-foreign (V3207) (cond ((and (cons? V3207) (and (cons? (hd V3207)) (and (= foreign (hd (hd V3207))) (and (cons? (tl (hd V3207))) (= () (tl (tl (hd V3207)))))))) (cons (hd (tl (hd V3207))) (tl V3207))) (true (shen.f-error shen.unpack-foreign)))) +(defun shen.unpack-foreign (V2859) (cond ((and (cons? V2859) (and (cons? (hd V2859)) (and (= foreign (hd (hd V2859))) (and (cons? (tl (hd V2859))) (= () (tl (tl (hd V2859)))))))) (cons (hd (tl (hd V2859))) (tl V2859))) (true (simple-error "partial function shen.unpack-foreign")))) -(defun shen.foreign? (V3210) (cond ((and (cons? V3210) (and (cons? (hd V3210)) (and (= foreign (hd (hd V3210))) (and (cons? (tl (hd V3210))) (= () (tl (tl (hd V3210)))))))) true) (true false))) +(defun shen.foreign? (V2862) (cond ((and (cons? V2862) (and (cons? (hd V2862)) (and (= foreign (hd (hd V2862))) (and (cons? (tl (hd V2862))) (= () (tl (tl (hd V2862)))))))) true) (true false))) -(defun shen.zero-place? (V3213) (cond ((and (cons? V3213) (= () (tl V3213))) true) (true false))) +(defun shen.zero-place? (V2865) (cond ((and (cons? V2865) (= () (tl V2865))) true) (true false))) -(defun shen.shen-call? (V3214) (and (symbol? V3214) (shen.internal-to-shen? (str V3214)))) +(defun shen.shen-call? (V2866) (and (symbol? V2866) (shen.internal-to-shen? (str V2866)))) -(defun shen.application? (V3219) (cond ((and (cons? V3219) (and (= protect (hd V3219)) (and (cons? (tl V3219)) (= () (tl (tl V3219)))))) false) ((and (cons? V3219) (and (= foreign (hd V3219)) (and (cons? (tl V3219)) (= () (tl (tl V3219)))))) false) (true (cons? V3219)))) +(defun shen.application? (V2871) (cond ((and (cons? V2871) (and (= protect (hd V2871)) (and (cons? (tl V2871)) (= () (tl (tl V2871)))))) false) ((and (cons? V2871) (and (= foreign (hd V2871)) (and (cons? (tl V2871)) (= () (tl (tl V2871)))))) false) (true (cons? V2871)))) -(defun shen.undefined-f? (V3224 V3225) (cond ((= -1 V3225) (and (shen.lowercase-symbol? V3224) (not (element? V3224 (external shen))))) (true false))) +(defun shen.undefined-f? (V2876 V2877) (cond ((= -1 V2877) (and (shen.lowercase-symbol? V2876) (not (element? V2876 (external shen))))) (true false))) -(defun shen.lowercase-symbol? (V3226) (and (symbol? V3226) (not (variable? V3226)))) +(defun shen.lowercase-symbol? (V2878) (and (symbol? V2878) (not (variable? V2878)))) -(defun shen.simple-curry (V3227) (cond ((and (cons? V3227) (and (cons? (tl V3227)) (= () (tl (tl V3227))))) V3227) ((and (cons? V3227) (and (cons? (tl V3227)) (cons? (tl (tl V3227))))) (shen.simple-curry (cons (cons (hd V3227) (cons (hd (tl V3227)) ())) (tl (tl V3227))))) (true V3227))) +(defun shen.simple-curry (V2879) (cond ((and (cons? V2879) (and (cons? (tl V2879)) (= () (tl (tl V2879))))) V2879) ((and (cons? V2879) (and (cons? (tl V2879)) (cons? (tl (tl V2879))))) (shen.simple-curry (cons (cons (hd V2879) (cons (hd (tl V2879)) ())) (tl (tl V2879))))) (true V2879))) -(defun function (V3228) (fn V3228)) +(defun function (V2880) (fn V2880)) -(defun fn (V3229) (cond ((= (arity V3229) 0) (V3229)) (true (trap-error (get V3229 shen.lambda-form (value *property-vector*)) (lambda Z3230 (simple-error (cn "fn: " (shen.app V3229 " is undefined -" shen.a)))))))) +(defun fn (V2881) (cond ((= (arity V2881) 0) (V2881)) (true (let W2882 (assoc V2881 (value shen.*lambdatable*)) (if (empty? W2882) (simple-error (cn "fn: " (shen.app V2881 " is undefined +" shen.a))) (tl W2882)))))) -(defun shen.fn-call? (V3233) (cond ((and (cons? V3233) (and (= fn (hd V3233)) (and (cons? (tl V3233)) (= () (tl (tl V3233)))))) true) ((and (cons? V3233) (and (= function (hd V3233)) (and (cons? (tl V3233)) (= () (tl (tl V3233)))))) true) (true false))) +(defun shen.fn-call? (V2885) (cond ((and (cons? V2885) (and (= fn (hd V2885)) (and (cons? (tl V2885)) (= () (tl (tl V2885)))))) true) ((and (cons? V2885) (and (= function (hd V2885)) (and (cons? (tl V2885)) (= () (tl (tl V2885)))))) true) (true false))) -(defun shen.fn-call (V3234) (cond ((and (cons? V3234) (and (= function (hd V3234)) (and (cons? (tl V3234)) (= () (tl (tl V3234)))))) (shen.fn-call (cons fn (tl V3234)))) ((and (cons? V3234) (and (= fn (hd V3234)) (and (cons? (tl V3234)) (= () (tl (tl V3234)))))) (let W3235 (arity (hd (tl V3234))) (if (= W3235 -1) V3234 (if (= W3235 0) (tl V3234) (shen.lambda-function (tl V3234) W3235))))) (true (shen.f-error shen.fn-call)))) +(defun shen.fn-call (V2886) (cond ((and (cons? V2886) (and (= function (hd V2886)) (and (cons? (tl V2886)) (= () (tl (tl V2886)))))) (shen.fn-call (cons fn (tl V2886)))) ((and (cons? V2886) (and (= fn (hd V2886)) (and (cons? (tl V2886)) (= () (tl (tl V2886)))))) (let W2887 (arity (hd (tl V2886))) (if (= W2887 -1) V2886 (if (= W2887 0) (tl V2886) (shen.lambda-function (tl V2886) W2887))))) (true (simple-error "partial function shen.fn-call")))) -(defun shen.partial-application*? (V3236 V3237 V3238) (let W3239 (> V3237 V3238) (let W3240 (if (and W3239 (and (shen.loading?) (not (element? V3236 (cons + (cons - ())))))) (pr (cn "partial application of " (shen.app V3236 " -" shen.a)) (stoutput)) shen.skip) W3239))) +(defun shen.partial-application*? (V2888 V2889 V2890) (let W2891 (> V2889 V2890) (let W2892 (if (and W2891 (and (shen.loading?) (not (element? V2888 (cons + (cons - ())))))) (pr (cn "partial application of " (shen.app V2888 " +" shen.a)) (stoutput)) shen.skip) W2891))) (defun shen.loading? () (value shen.*loading?*)) -(defun shen.overapplication? (V3245 V3246 V3247) (cond ((= -1 V3246) false) (true (let W3248 (< V3246 V3247) (let W3249 (if (and W3248 (shen.loading?)) (pr (shen.app V3245 (cn " might not like " (shen.app V3247 (cn " argument" (shen.app (if (= V3247 1) "" "s") " -" shen.a)) shen.a)) shen.a) (stoutput)) shen.skip) W3248))))) +(defun shen.overapplication? (V2897 V2898 V2899) (cond ((= -1 V2898) false) (true (let W2900 (< V2898 V2899) (let W2901 (if (and W2900 (shen.loading?)) (pr (shen.app V2897 (cn " might not like " (shen.app V2899 (cn " argument" (shen.app (if (= V2899 1) "" "s") " +" shen.a)) shen.a)) shen.a) (stoutput)) shen.skip) W2900))))) diff --git a/kernel/klambda/sequent.kl b/kernel/klambda/sequent.kl index f9df594..30101b5 100644 --- a/kernel/klambda/sequent.kl +++ b/kernel/klambda/sequent.kl @@ -1,102 +1,102 @@ -(defun shen. (V3365) (let W3366 (if (cons? V3365) (let W3367 (head V3365) (let W3368 (tail V3365) (let W3369 (shen. W3368) (if (shen.parse-failure? W3369) (shen.parse-failure) (let W3370 (shen.<-out W3369) (let W3371 (shen.in-> W3369) (shen.comb W3371 (let W3372 (shen.rules->prolog W3367 W3370) (shen.remember-datatype W3367 (fn W3367)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W3366) (shen.parse-failure) W3366))) +(defun shen. (V3019) (let W3020 (if (cons? V3019) (let W3021 (head V3019) (let W3022 (tail V3019) (let W3023 (shen. W3022) (if (shen.parse-failure? W3023) (shen.parse-failure) (let W3024 (shen.<-out W3023) (let W3025 (shen.in-> W3023) (shen.comb W3025 (let W3026 (shen.rules->prolog W3021 W3024) (shen.remember-datatype W3021 (fn W3021)))))))))) (shen.parse-failure)) (if (shen.parse-failure? W3020) (shen.parse-failure) W3020))) -(defun shen.remember-datatype (V3373 V3374) (do (set shen.*datatypes* (shen.assoc-> V3373 V3374 (value shen.*datatypes*))) (do (set shen.*alldatatypes* (shen.assoc-> V3373 V3374 (value shen.*alldatatypes*))) V3373))) +(defun shen.remember-datatype (V3027 V3028) (do (set shen.*datatypes* (shen.assoc-> V3027 V3028 (value shen.*datatypes*))) (do (set shen.*alldatatypes* (shen.assoc-> V3027 V3028 (value shen.*alldatatypes*))) V3027))) -(defun shen. (V3375) (let W3376 (let W3377 (shen. V3375) (if (shen.parse-failure? W3377) (shen.parse-failure) (let W3378 (shen.<-out W3377) (let W3379 (shen.in-> W3377) (let W3380 (shen. W3379) (if (shen.parse-failure? W3380) (shen.parse-failure) (let W3381 (shen.<-out W3380) (let W3382 (shen.in-> W3380) (shen.comb W3382 (append W3378 W3381)))))))))) (if (shen.parse-failure? W3376) (let W3383 (let W3384 ( V3375) (if (shen.parse-failure? W3384) (shen.parse-failure) (let W3385 (shen.<-out W3384) (let W3386 (shen.in-> W3384) (shen.comb W3386 (if (empty? W3385) () (simple-error (cn "datatype syntax error here: - " (shen.app W3385 " - ..." shen.r))))))))) (if (shen.parse-failure? W3383) (shen.parse-failure) W3383)) W3376))) +(defun shen. (V3029) (let W3030 (let W3031 (shen. V3029) (if (shen.parse-failure? W3031) (shen.parse-failure) (let W3032 (shen.<-out W3031) (let W3033 (shen.in-> W3031) (let W3034 (shen. W3033) (if (shen.parse-failure? W3034) (shen.parse-failure) (let W3035 (shen.<-out W3034) (let W3036 (shen.in-> W3034) (shen.comb W3036 (append W3032 W3035)))))))))) (if (shen.parse-failure? W3030) (let W3037 (let W3038 ( V3029) (if (shen.parse-failure? W3038) (shen.parse-failure) (let W3039 (shen.<-out W3038) (let W3040 (shen.in-> W3038) (shen.comb W3040 (if (empty? W3039) () (simple-error (cn "datatype syntax error here: + " (shen.app W3039 " + ..." shen.r))))))))) (if (shen.parse-failure? W3037) (shen.parse-failure) W3037)) W3030))) -(defun shen. (V3387) (let W3388 (let W3389 (shen. V3387) (if (shen.parse-failure? W3389) (shen.parse-failure) (let W3390 (shen.<-out W3389) (let W3391 (shen.in-> W3389) (shen.comb W3391 W3390))))) (if (shen.parse-failure? W3388) (let W3392 (let W3393 (shen. V3387) (if (shen.parse-failure? W3393) (shen.parse-failure) (let W3394 (shen.<-out W3393) (let W3395 (shen.in-> W3393) (shen.comb W3395 W3394))))) (if (shen.parse-failure? W3392) (shen.parse-failure) W3392)) W3388))) +(defun shen. (V3041) (let W3042 (let W3043 (shen. V3041) (if (shen.parse-failure? W3043) (shen.parse-failure) (let W3044 (shen.<-out W3043) (let W3045 (shen.in-> W3043) (shen.comb W3045 W3044))))) (if (shen.parse-failure? W3042) (let W3046 (let W3047 (shen. V3041) (if (shen.parse-failure? W3047) (shen.parse-failure) (let W3048 (shen.<-out W3047) (let W3049 (shen.in-> W3047) (shen.comb W3049 W3048))))) (if (shen.parse-failure? W3046) (shen.parse-failure) W3046)) W3042))) -(defun shen. (V3396) (let W3397 (let W3398 (shen. V3396) (if (shen.parse-failure? W3398) (shen.parse-failure) (let W3399 (shen.<-out W3398) (let W3400 (shen.in-> W3398) (let W3401 (shen. W3400) (if (shen.parse-failure? W3401) (shen.parse-failure) (let W3402 (shen.<-out W3401) (let W3403 (shen.in-> W3401) (let W3404 (shen. W3403) (if (shen.parse-failure? W3404) (shen.parse-failure) (let W3405 (shen.in-> W3404) (let W3406 (shen. W3405) (if (shen.parse-failure? W3406) (shen.parse-failure) (let W3407 (shen.<-out W3406) (let W3408 (shen.in-> W3406) (let W3409 (shen. W3408) (if (shen.parse-failure? W3409) (shen.parse-failure) (let W3410 (shen.in-> W3409) (shen.comb W3410 (cons (cons W3399 (cons W3402 (cons W3407 ()))) ())))))))))))))))))))) (if (shen.parse-failure? W3397) (shen.parse-failure) W3397))) +(defun shen. (V3050) (let W3051 (let W3052 (shen. V3050) (if (shen.parse-failure? W3052) (shen.parse-failure) (let W3053 (shen.<-out W3052) (let W3054 (shen.in-> W3052) (let W3055 (shen. W3054) (if (shen.parse-failure? W3055) (shen.parse-failure) (let W3056 (shen.<-out W3055) (let W3057 (shen.in-> W3055) (let W3058 (shen. W3057) (if (shen.parse-failure? W3058) (shen.parse-failure) (let W3059 (shen.in-> W3058) (let W3060 (shen. W3059) (if (shen.parse-failure? W3060) (shen.parse-failure) (let W3061 (shen.<-out W3060) (let W3062 (shen.in-> W3060) (let W3063 (shen. W3062) (if (shen.parse-failure? W3063) (shen.parse-failure) (let W3064 (shen.in-> W3063) (shen.comb W3064 (cons (cons W3053 (cons W3056 (cons W3061 ()))) ())))))))))))))))))))) (if (shen.parse-failure? W3051) (shen.parse-failure) W3051))) -(defun shen. (V3411) (let W3412 (let W3413 (shen. V3411) (if (shen.parse-failure? W3413) (shen.parse-failure) (let W3414 (shen.<-out W3413) (let W3415 (shen.in-> W3413) (let W3416 (shen. W3415) (if (shen.parse-failure? W3416) (shen.parse-failure) (let W3417 (shen.<-out W3416) (let W3418 (shen.in-> W3416) (let W3419 (shen. W3418) (if (shen.parse-failure? W3419) (shen.parse-failure) (let W3420 (shen.in-> W3419) (let W3421 (shen. W3420) (if (shen.parse-failure? W3421) (shen.parse-failure) (let W3422 (shen.<-out W3421) (let W3423 (shen.in-> W3421) (let W3424 (shen. W3423) (if (shen.parse-failure? W3424) (shen.parse-failure) (let W3425 (shen.in-> W3424) (shen.comb W3425 (shen.lr-rule W3414 W3417 (cons () (cons W3422 ())))))))))))))))))))))) (if (shen.parse-failure? W3412) (shen.parse-failure) W3412))) +(defun shen. (V3065) (let W3066 (let W3067 (shen. V3065) (if (shen.parse-failure? W3067) (shen.parse-failure) (let W3068 (shen.<-out W3067) (let W3069 (shen.in-> W3067) (let W3070 (shen. W3069) (if (shen.parse-failure? W3070) (shen.parse-failure) (let W3071 (shen.<-out W3070) (let W3072 (shen.in-> W3070) (let W3073 (shen. W3072) (if (shen.parse-failure? W3073) (shen.parse-failure) (let W3074 (shen.in-> W3073) (let W3075 (shen. W3074) (if (shen.parse-failure? W3075) (shen.parse-failure) (let W3076 (shen.<-out W3075) (let W3077 (shen.in-> W3075) (let W3078 (shen. W3077) (if (shen.parse-failure? W3078) (shen.parse-failure) (let W3079 (shen.in-> W3078) (shen.comb W3079 (shen.lr-rule W3068 W3071 (cons () (cons W3076 ())))))))))))))))))))))) (if (shen.parse-failure? W3066) (shen.parse-failure) W3066))) -(defun shen. (V3426) (let W3427 (let W3428 (shen. V3426) (if (shen.parse-failure? W3428) (shen.parse-failure) (let W3429 (shen.<-out W3428) (let W3430 (shen.in-> W3428) (let W3431 (shen. W3430) (if (shen.parse-failure? W3431) (shen.parse-failure) (let W3432 (shen.in-> W3431) (let W3433 (shen. W3432) (if (shen.parse-failure? W3433) (shen.parse-failure) (let W3434 (shen.<-out W3433) (let W3435 (shen.in-> W3433) (shen.comb W3435 (cons (cons () (cons W3429 ())) W3434))))))))))))) (if (shen.parse-failure? W3427) (let W3436 (let W3437 (shen. V3426) (if (shen.parse-failure? W3437) (shen.parse-failure) (let W3438 (shen.<-out W3437) (let W3439 (shen.in-> W3437) (let W3440 (shen. W3439) (if (shen.parse-failure? W3440) (shen.parse-failure) (let W3441 (shen.in-> W3440) (shen.comb W3441 (cons (cons () (cons W3438 ())) ()))))))))) (if (shen.parse-failure? W3436) (shen.parse-failure) W3436)) W3427))) +(defun shen. (V3080) (let W3081 (let W3082 (shen. V3080) (if (shen.parse-failure? W3082) (shen.parse-failure) (let W3083 (shen.<-out W3082) (let W3084 (shen.in-> W3082) (let W3085 (shen. W3084) (if (shen.parse-failure? W3085) (shen.parse-failure) (let W3086 (shen.in-> W3085) (let W3087 (shen. W3086) (if (shen.parse-failure? W3087) (shen.parse-failure) (let W3088 (shen.<-out W3087) (let W3089 (shen.in-> W3087) (shen.comb W3089 (cons (cons () (cons W3083 ())) W3088))))))))))))) (if (shen.parse-failure? W3081) (let W3090 (let W3091 (shen. V3080) (if (shen.parse-failure? W3091) (shen.parse-failure) (let W3092 (shen.<-out W3091) (let W3093 (shen.in-> W3091) (let W3094 (shen. W3093) (if (shen.parse-failure? W3094) (shen.parse-failure) (let W3095 (shen.in-> W3094) (shen.comb W3095 (cons (cons () (cons W3092 ())) ()))))))))) (if (shen.parse-failure? W3090) (shen.parse-failure) W3090)) W3081))) -(defun shen. (V3442) (let W3443 (let W3444 (shen. V3442) (if (shen.parse-failure? W3444) (shen.parse-failure) (let W3445 (shen.<-out W3444) (let W3446 (shen.in-> W3444) (if (shen.hds=? W3446 >>) (let W3447 (tail W3446) (let W3448 (shen. W3447) (if (shen.parse-failure? W3448) (shen.parse-failure) (let W3449 (shen.<-out W3448) (let W3450 (shen.in-> W3448) (shen.comb W3450 (cons W3445 (cons W3449 ())))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W3443) (let W3451 (let W3452 (shen. V3442) (if (shen.parse-failure? W3452) (shen.parse-failure) (let W3453 (shen.<-out W3452) (let W3454 (shen.in-> W3452) (shen.comb W3454 (cons () (cons W3453 ()))))))) (if (shen.parse-failure? W3451) (shen.parse-failure) W3451)) W3443))) +(defun shen. (V3096) (let W3097 (let W3098 (shen. V3096) (if (shen.parse-failure? W3098) (shen.parse-failure) (let W3099 (shen.<-out W3098) (let W3100 (shen.in-> W3098) (if (shen.hds=? W3100 >>) (let W3101 (tail W3100) (let W3102 (shen. W3101) (if (shen.parse-failure? W3102) (shen.parse-failure) (let W3103 (shen.<-out W3102) (let W3104 (shen.in-> W3102) (shen.comb W3104 (cons W3099 (cons W3103 ())))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W3097) (let W3105 (let W3106 (shen. V3096) (if (shen.parse-failure? W3106) (shen.parse-failure) (let W3107 (shen.<-out W3106) (let W3108 (shen.in-> W3106) (shen.comb W3108 (cons () (cons W3107 ()))))))) (if (shen.parse-failure? W3105) (shen.parse-failure) W3105)) W3097))) -(defun shen. (V3455) (let W3456 (let W3457 (shen. V3455) (if (shen.parse-failure? W3457) (shen.parse-failure) (let W3458 (shen.<-out W3457) (let W3459 (shen.in-> W3457) (let W3460 (shen. W3459) (if (shen.parse-failure? W3460) (shen.parse-failure) (let W3461 (shen.in-> W3460) (let W3462 (shen. W3461) (if (shen.parse-failure? W3462) (shen.parse-failure) (let W3463 (shen.<-out W3462) (let W3464 (shen.in-> W3462) (shen.comb W3464 (cons W3458 W3463))))))))))))) (if (shen.parse-failure? W3456) (let W3465 (let W3466 ( V3455) (if (shen.parse-failure? W3466) (shen.parse-failure) (let W3467 (shen.in-> W3466) (shen.comb W3467 ())))) (if (shen.parse-failure? W3465) (shen.parse-failure) W3465)) W3456))) +(defun shen. (V3109) (let W3110 (let W3111 (shen. V3109) (if (shen.parse-failure? W3111) (shen.parse-failure) (let W3112 (shen.<-out W3111) (let W3113 (shen.in-> W3111) (let W3114 (shen. W3113) (if (shen.parse-failure? W3114) (shen.parse-failure) (let W3115 (shen.in-> W3114) (let W3116 (shen. W3115) (if (shen.parse-failure? W3116) (shen.parse-failure) (let W3117 (shen.<-out W3116) (let W3118 (shen.in-> W3116) (shen.comb W3118 (cons W3112 W3117))))))))))))) (if (shen.parse-failure? W3110) (let W3119 (let W3120 ( V3109) (if (shen.parse-failure? W3120) (shen.parse-failure) (let W3121 (shen.in-> W3120) (shen.comb W3121 ())))) (if (shen.parse-failure? W3119) (shen.parse-failure) W3119)) W3110))) -(defun shen. (V3468) (let W3469 (if (shen.hds=? V3468 !) (let W3470 (tail V3468) (shen.comb W3470 !)) (shen.parse-failure)) (if (shen.parse-failure? W3469) (let W3471 (let W3472 (shen. V3468) (if (shen.parse-failure? W3472) (shen.parse-failure) (let W3473 (shen.<-out W3472) (let W3474 (shen.in-> W3472) (if (shen.hds=? W3474 >>) (let W3475 (tail W3474) (let W3476 (shen. W3475) (if (shen.parse-failure? W3476) (shen.parse-failure) (let W3477 (shen.<-out W3476) (let W3478 (shen.in-> W3476) (shen.comb W3478 (cons W3473 (cons W3477 ())))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W3471) (let W3479 (let W3480 (shen. V3468) (if (shen.parse-failure? W3480) (shen.parse-failure) (let W3481 (shen.<-out W3480) (let W3482 (shen.in-> W3480) (shen.comb W3482 (cons () (cons W3481 ()))))))) (if (shen.parse-failure? W3479) (shen.parse-failure) W3479)) W3471)) W3469))) +(defun shen. (V3122) (let W3123 (if (shen.hds=? V3122 !) (let W3124 (tail V3122) (shen.comb W3124 !)) (shen.parse-failure)) (if (shen.parse-failure? W3123) (let W3125 (let W3126 (shen. V3122) (if (shen.parse-failure? W3126) (shen.parse-failure) (let W3127 (shen.<-out W3126) (let W3128 (shen.in-> W3126) (if (shen.hds=? W3128 >>) (let W3129 (tail W3128) (let W3130 (shen. W3129) (if (shen.parse-failure? W3130) (shen.parse-failure) (let W3131 (shen.<-out W3130) (let W3132 (shen.in-> W3130) (shen.comb W3132 (cons W3127 (cons W3131 ())))))))) (shen.parse-failure)))))) (if (shen.parse-failure? W3125) (let W3133 (let W3134 (shen. V3122) (if (shen.parse-failure? W3134) (shen.parse-failure) (let W3135 (shen.<-out W3134) (let W3136 (shen.in-> W3134) (shen.comb W3136 (cons () (cons W3135 ()))))))) (if (shen.parse-failure? W3133) (shen.parse-failure) W3133)) W3125)) W3123))) -(defun shen. (V3483) (let W3484 (let W3485 (shen. V3483) (if (shen.parse-failure? W3485) (shen.parse-failure) (let W3486 (shen.<-out W3485) (let W3487 (shen.in-> W3485) (let W3488 (shen. W3487) (if (shen.parse-failure? W3488) (shen.parse-failure) (let W3489 (shen.in-> W3488) (let W3490 (shen. W3489) (if (shen.parse-failure? W3490) (shen.parse-failure) (let W3491 (shen.<-out W3490) (let W3492 (shen.in-> W3490) (shen.comb W3492 (cons W3486 W3491))))))))))))) (if (shen.parse-failure? W3484) (let W3493 (let W3494 (shen. V3483) (if (shen.parse-failure? W3494) (shen.parse-failure) (let W3495 (shen.<-out W3494) (let W3496 (shen.in-> W3494) (shen.comb W3496 (cons W3495 ())))))) (if (shen.parse-failure? W3493) (let W3497 (let W3498 ( V3483) (if (shen.parse-failure? W3498) (shen.parse-failure) (let W3499 (shen.in-> W3498) (shen.comb W3499 ())))) (if (shen.parse-failure? W3497) (shen.parse-failure) W3497)) W3493)) W3484))) +(defun shen. (V3137) (let W3138 (let W3139 (shen. V3137) (if (shen.parse-failure? W3139) (shen.parse-failure) (let W3140 (shen.<-out W3139) (let W3141 (shen.in-> W3139) (let W3142 (shen. W3141) (if (shen.parse-failure? W3142) (shen.parse-failure) (let W3143 (shen.in-> W3142) (let W3144 (shen. W3143) (if (shen.parse-failure? W3144) (shen.parse-failure) (let W3145 (shen.<-out W3144) (let W3146 (shen.in-> W3144) (shen.comb W3146 (cons W3140 W3145))))))))))))) (if (shen.parse-failure? W3138) (let W3147 (let W3148 (shen. V3137) (if (shen.parse-failure? W3148) (shen.parse-failure) (let W3149 (shen.<-out W3148) (let W3150 (shen.in-> W3148) (shen.comb W3150 (cons W3149 ())))))) (if (shen.parse-failure? W3147) (let W3151 (let W3152 ( V3137) (if (shen.parse-failure? W3152) (shen.parse-failure) (let W3153 (shen.in-> W3152) (shen.comb W3153 ())))) (if (shen.parse-failure? W3151) (shen.parse-failure) W3151)) W3147)) W3138))) -(defun shen. (V3500) (let W3501 (if (cons? V3500) (let W3502 (head V3500) (let W3503 (tail V3500) (if (= W3502 (intern ",")) (shen.comb W3503 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3501) (shen.parse-failure) W3501))) +(defun shen. (V3154) (let W3155 (if (cons? V3154) (let W3156 (head V3154) (let W3157 (tail V3154) (if (= W3156 (intern ",")) (shen.comb W3157 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3155) (shen.parse-failure) W3155))) -(defun shen. (V3504) (let W3505 (let W3506 (shen. V3504) (if (shen.parse-failure? W3506) (shen.parse-failure) (let W3507 (shen.<-out W3506) (let W3508 (shen.in-> W3506) (let W3509 (shen. W3508) (if (shen.parse-failure? W3509) (shen.parse-failure) (let W3510 (shen.in-> W3509) (let W3511 (shen. W3510) (if (shen.parse-failure? W3511) (shen.parse-failure) (let W3512 (shen.<-out W3511) (let W3513 (shen.in-> W3511) (shen.comb W3513 (cons (shen.curry W3507) (cons (intern ":") (cons (shen.rectify-type W3512) ()))))))))))))))) (if (shen.parse-failure? W3505) (let W3514 (let W3515 (shen. V3504) (if (shen.parse-failure? W3515) (shen.parse-failure) (let W3516 (shen.<-out W3515) (let W3517 (shen.in-> W3515) (shen.comb W3517 W3516))))) (if (shen.parse-failure? W3514) (shen.parse-failure) W3514)) W3505))) +(defun shen. (V3158) (let W3159 (let W3160 (shen. V3158) (if (shen.parse-failure? W3160) (shen.parse-failure) (let W3161 (shen.<-out W3160) (let W3162 (shen.in-> W3160) (let W3163 (shen. W3162) (if (shen.parse-failure? W3163) (shen.parse-failure) (let W3164 (shen.in-> W3163) (let W3165 (shen. W3164) (if (shen.parse-failure? W3165) (shen.parse-failure) (let W3166 (shen.<-out W3165) (let W3167 (shen.in-> W3165) (shen.comb W3167 (cons (shen.curry W3161) (cons (intern ":") (cons (shen.rectify-type W3166) ()))))))))))))))) (if (shen.parse-failure? W3159) (let W3168 (let W3169 (shen. V3158) (if (shen.parse-failure? W3169) (shen.parse-failure) (let W3170 (shen.<-out W3169) (let W3171 (shen.in-> W3169) (shen.comb W3171 W3170))))) (if (shen.parse-failure? W3168) (shen.parse-failure) W3168)) W3159))) -(defun shen. (V3518) (let W3519 (if (cons? V3518) (let W3520 (head V3518) (let W3521 (tail V3518) (if (= W3520 (intern ":")) (shen.comb W3521 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3519) (shen.parse-failure) W3519))) +(defun shen. (V3172) (let W3173 (if (cons? V3172) (let W3174 (head V3172) (let W3175 (tail V3172) (if (= W3174 (intern ":")) (shen.comb W3175 shen.skip) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3173) (shen.parse-failure) W3173))) -(defun shen. (V3522) (let W3523 (let W3524 (shen. V3522) (if (shen.parse-failure? W3524) (shen.parse-failure) (let W3525 (shen.<-out W3524) (let W3526 (shen.in-> W3524) (let W3527 (shen. W3526) (if (shen.parse-failure? W3527) (shen.parse-failure) (let W3528 (shen.<-out W3527) (let W3529 (shen.in-> W3527) (shen.comb W3529 (cons W3525 W3528)))))))))) (if (shen.parse-failure? W3523) (let W3530 (let W3531 ( V3522) (if (shen.parse-failure? W3531) (shen.parse-failure) (let W3532 (shen.in-> W3531) (shen.comb W3532 ())))) (if (shen.parse-failure? W3530) (shen.parse-failure) W3530)) W3523))) +(defun shen. (V3176) (let W3177 (let W3178 (shen. V3176) (if (shen.parse-failure? W3178) (shen.parse-failure) (let W3179 (shen.<-out W3178) (let W3180 (shen.in-> W3178) (let W3181 (shen. W3180) (if (shen.parse-failure? W3181) (shen.parse-failure) (let W3182 (shen.<-out W3181) (let W3183 (shen.in-> W3181) (shen.comb W3183 (cons W3179 W3182)))))))))) (if (shen.parse-failure? W3177) (let W3184 (let W3185 ( V3176) (if (shen.parse-failure? W3185) (shen.parse-failure) (let W3186 (shen.in-> W3185) (shen.comb W3186 ())))) (if (shen.parse-failure? W3184) (shen.parse-failure) W3184)) W3177))) -(defun shen. (V3533) (let W3534 (if (shen.hds=? V3533 if) (let W3535 (tail V3533) (if (cons? W3535) (let W3536 (head W3535) (let W3537 (tail W3535) (shen.comb W3537 (cons if (cons W3536 ()))))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3534) (let W3538 (if (shen.hds=? V3533 let) (let W3539 (tail V3533) (if (cons? W3539) (let W3540 (head W3539) (let W3541 (tail W3539) (if (cons? W3541) (let W3542 (head W3541) (let W3543 (tail W3541) (shen.comb W3543 (cons let (cons W3540 (cons W3542 ())))))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3538) (let W3544 (if (shen.hds=? V3533 ctxt) (let W3545 (tail V3533) (if (cons? W3545) (let W3546 (head W3545) (let W3547 (tail W3545) (if (variable? W3546) (shen.comb W3547 (cons ctxt (cons W3546 ()))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3544) (shen.parse-failure) W3544)) W3538)) W3534))) +(defun shen. (V3187) (let W3188 (if (shen.hds=? V3187 if) (let W3189 (tail V3187) (if (cons? W3189) (let W3190 (head W3189) (let W3191 (tail W3189) (shen.comb W3191 (cons if (cons W3190 ()))))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3188) (let W3192 (if (shen.hds=? V3187 let) (let W3193 (tail V3187) (if (cons? W3193) (let W3194 (head W3193) (let W3195 (tail W3193) (if (cons? W3195) (let W3196 (head W3195) (let W3197 (tail W3195) (shen.comb W3197 (cons let (cons W3194 (cons W3196 ())))))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3192) (let W3198 (if (shen.hds=? V3187 ctxt) (let W3199 (tail V3187) (if (cons? W3199) (let W3200 (head W3199) (let W3201 (tail W3199) (if (variable? W3200) (shen.comb W3201 (cons ctxt (cons W3200 ()))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3198) (let W3202 (if (shen.hds=? V3187 sqts) (let W3203 (tail V3187) (if (cons? W3203) (let W3204 (head W3203) (let W3205 (tail W3203) (if (variable? W3204) (shen.comb W3205 (cons sqts (cons W3204 ()))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W3202) (shen.parse-failure) W3202)) W3198)) W3192)) W3188))) -(defun shen.lr-rule (V3554 V3555 V3556) (cond ((and (cons? V3556) (and (= () (hd V3556)) (and (cons? (tl V3556)) (= () (tl (tl V3556)))))) (let W3557 (gensym P) (let W3558 (cons (tl V3556) (cons W3557 ())) (let W3559 (cons (shen.coll-formulae V3555) (cons W3557 ())) (let W3560 (cons V3554 (cons (cons W3559 ()) (cons W3558 ()))) (let W3561 (cons V3554 (cons V3555 (cons V3556 ()))) (cons W3561 (cons W3560 ())))))))) (true (simple-error "implementation error in shen.lr-rule")))) +(defun shen.lr-rule (V3212 V3213 V3214) (cond ((and (cons? V3214) (and (= () (hd V3214)) (and (cons? (tl V3214)) (= () (tl (tl V3214)))))) (let W3215 (gensym P) (let W3216 (cons (tl V3214) (cons W3215 ())) (let W3217 (cons (shen.coll-formulae V3213) (cons W3215 ())) (let W3218 (cons V3212 (cons (cons W3217 ()) (cons W3216 ()))) (let W3219 (cons V3212 (cons V3213 (cons V3214 ()))) (cons W3219 (cons W3218 ())))))))) (true (simple-error "implementation error in shen.lr-rule")))) -(defun shen.coll-formulae (V3564) (cond ((= () V3564) ()) ((and (cons? V3564) (and (cons? (hd V3564)) (and (= () (hd (hd V3564))) (and (cons? (tl (hd V3564))) (= () (tl (tl (hd V3564)))))))) (cons (hd (tl (hd V3564))) (shen.coll-formulae (tl V3564)))) (true (simple-error "implementation error in shen.coll-formulae")))) +(defun shen.coll-formulae (V3222) (cond ((= () V3222) ()) ((and (cons? V3222) (and (cons? (hd V3222)) (and (= () (hd (hd V3222))) (and (cons? (tl (hd V3222))) (= () (tl (tl (hd V3222)))))))) (cons (hd (tl (hd V3222))) (shen.coll-formulae (tl V3222)))) (true (simple-error "implementation error in shen.coll-formulae")))) -(defun shen. (V3565) (let W3566 (if (cons? V3565) (let W3567 (head V3565) (let W3568 (tail V3565) (if (not (shen.key-in-sequent-calculus? W3567)) (shen.comb W3568 (macroexpand W3567)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3566) (shen.parse-failure) W3566))) +(defun shen. (V3223) (let W3224 (if (cons? V3223) (let W3225 (head V3223) (let W3226 (tail V3223) (if (not (shen.key-in-sequent-calculus? W3225)) (shen.comb W3226 (macroexpand W3225)) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3224) (shen.parse-failure) W3224))) -(defun shen.key-in-sequent-calculus? (V3569) (or (element? V3569 (cons >> (cons (intern ";") (cons (intern ",") (cons (intern ":") (cons <-- ())))))) (or (shen.sng? V3569) (shen.dbl? V3569)))) +(defun shen.key-in-sequent-calculus? (V3227) (or (element? V3227 (cons >> (cons (intern ";") (cons (intern ",") (cons (intern ":") (cons <-- ())))))) (or (shen.sng? V3227) (shen.dbl? V3227)))) -(defun shen. (V3570) (let W3571 (let W3572 (shen. V3570) (if (shen.parse-failure? W3572) (shen.parse-failure) (let W3573 (shen.<-out W3572) (let W3574 (shen.in-> W3572) (shen.comb W3574 W3573))))) (if (shen.parse-failure? W3571) (shen.parse-failure) W3571))) +(defun shen. (V3228) (let W3229 (let W3230 (shen. V3228) (if (shen.parse-failure? W3230) (shen.parse-failure) (let W3231 (shen.<-out W3230) (let W3232 (shen.in-> W3230) (shen.comb W3232 W3231))))) (if (shen.parse-failure? W3229) (shen.parse-failure) W3229))) -(defun shen. (V3575) (let W3576 (if (cons? V3575) (let W3577 (head V3575) (let W3578 (tail V3575) (if (shen.dbl? W3577) (shen.comb W3578 W3577) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3576) (shen.parse-failure) W3576))) +(defun shen. (V3233) (let W3234 (if (cons? V3233) (let W3235 (head V3233) (let W3236 (tail V3233) (if (shen.dbl? W3235) (shen.comb W3236 W3235) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3234) (shen.parse-failure) W3234))) -(defun shen. (V3579) (let W3580 (if (cons? V3579) (let W3581 (head V3579) (let W3582 (tail V3579) (if (shen.sng? W3581) (shen.comb W3582 W3581) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3580) (shen.parse-failure) W3580))) +(defun shen. (V3237) (let W3238 (if (cons? V3237) (let W3239 (head V3237) (let W3240 (tail V3237) (if (shen.sng? W3239) (shen.comb W3240 W3239) (shen.parse-failure)))) (shen.parse-failure)) (if (shen.parse-failure? W3238) (shen.parse-failure) W3238))) -(defun shen.sng? (V3583) (and (symbol? V3583) (shen.sng-h? (str V3583)))) +(defun shen.sng? (V3241) (and (symbol? V3241) (shen.sng-h? (str V3241)))) -(defun shen.sng-h? (V3586) (cond ((= "___" V3586) true) ((and (shen.+string? V3586) (= "_" (hdstr V3586))) (shen.sng-h? (tlstr V3586))) (true false))) +(defun shen.sng-h? (V3244) (cond ((= "___" V3244) true) ((and (shen.+string? V3244) (= "_" (hdstr V3244))) (shen.sng-h? (tlstr V3244))) (true false))) -(defun shen.dbl? (V3587) (and (symbol? V3587) (shen.dbl-h? (str V3587)))) +(defun shen.dbl? (V3245) (and (symbol? V3245) (shen.dbl-h? (str V3245)))) -(defun shen.dbl-h? (V3590) (cond ((= "===" V3590) true) ((and (shen.+string? V3590) (= "=" (hdstr V3590))) (shen.dbl-h? (tlstr V3590))) (true false))) +(defun shen.dbl-h? (V3248) (cond ((= "===" V3248) true) ((and (shen.+string? V3248) (= "=" (hdstr V3248))) (shen.dbl-h? (tlstr V3248))) (true false))) -(defun shen.rules->prolog (V3591 V3592) (let W3593 (mapcan (lambda Z3594 (shen.rule->clause Z3594)) V3592) (let W3595 (cons defprolog (cons V3591 W3593)) (eval W3595)))) +(defun shen.rules->prolog (V3249 V3250) (let W3251 (mapcan (lambda Z3252 (shen.rule->clause Z3252)) V3250) (let W3253 (cons defprolog (cons V3249 W3251)) (eval W3253)))) -(defun shen.rule->clause (V3596) (cond ((and (cons? V3596) (and (cons? (tl V3596)) (and (cons? (tl (tl V3596))) (and (cons? (hd (tl (tl V3596)))) (and (cons? (tl (hd (tl (tl V3596))))) (and (= () (tl (tl (hd (tl (tl V3596)))))) (= () (tl (tl (tl V3596)))))))))) (let W3597 (shen.extract-vars (hd (tl (hd (tl (tl V3596)))))) (append (shen.rule->head (hd (tl (hd (tl (tl V3596)))))) (append (cons <-- ()) (shen.rule->body W3597 Assumptions (hd V3596) (hd (tl V3596)) (hd (hd (tl (tl V3596))))))))) (true (shen.f-error shen.rule->clause)))) +(defun shen.rule->clause (V3254) (cond ((and (cons? V3254) (and (cons? (tl V3254)) (and (cons? (tl (tl V3254))) (and (cons? (hd (tl (tl V3254)))) (and (cons? (tl (hd (tl (tl V3254))))) (and (= () (tl (tl (hd (tl (tl V3254)))))) (= () (tl (tl (tl V3254)))))))))) (let W3255 (shen.extract-vars (hd (tl (hd (tl (tl V3254)))))) (append (shen.rule->head (hd (tl (hd (tl (tl V3254)))))) (append (cons <-- ()) (shen.rule->body W3255 Assumptions (hd V3254) (hd (tl V3254)) (hd (hd (tl (tl V3254))))))))) (true (simple-error "partial function shen.rule->clause")))) -(defun shen.rule->head (V3598) (cons (shen.macro-@ch V3598) (cons Assumptions ()))) +(defun shen.rule->head (V3256) (cons (shen.macro-@ch V3256) (cons Assumptions ()))) -(defun shen.macro-@ch (V3599) (cons shen.@ch (cons V3599 ()))) +(defun shen.macro-@ch (V3257) (cons shen.@ch (cons V3257 ()))) -(defun shen.macro-@c (V3600) (cons shen.@c (cons V3600 ()))) +(defun shen.macro-@c (V3258) (cons shen.@c (cons V3258 ()))) -(defun shen.rule->body (V3601 V3602 V3603 V3604 V3605) (cond ((= () V3605) (shen.side-conditions->goals () V3601 V3602 V3603 V3604)) ((and (= () V3604) (and (cons? V3605) (= () (tl V3605)))) (let W3606 (shen.passive-variables (hd V3605) V3601) (let W3607 (shen.remove-bystanders V3601 (hd V3605)) (cons (shen.specialise-member (hd V3605) V3602 W3607 W3606) (shen.side-conditions->goals () V3601 V3602 V3603 ()))))) ((cons? V3605) (let W3608 (gensym NewAssumptions) (let W3609 (shen.passive-variables (hd V3605) V3601) (let W3610 (shen.remove-bystanders V3601 (hd V3605)) (cons (shen.specialise-consume (hd V3605) V3602 W3610 W3609 W3608) (shen.rule->body (append V3601 W3609) W3608 V3603 V3604 (tl V3605))))))) (true (shen.f-error shen.rule->body)))) +(defun shen.rule->body (V3259 V3260 V3261 V3262 V3263) (cond ((= () V3263) (shen.side-conditions->goals () V3259 V3260 V3261 V3262)) ((and (= () V3262) (and (cons? V3263) (= () (tl V3263)))) (let W3264 (shen.passive-variables (hd V3263) V3259) (let W3265 (shen.remove-bystanders V3259 (hd V3263)) (cons (shen.specialise-member (hd V3263) V3260 W3265 W3264) (shen.side-conditions->goals () V3259 V3260 V3261 ()))))) ((cons? V3263) (let W3266 (gensym NewAssumptions) (let W3267 (shen.passive-variables (hd V3263) V3259) (let W3268 (shen.remove-bystanders V3259 (hd V3263)) (cons (shen.specialise-consume (hd V3263) V3260 W3268 W3267 W3266) (shen.rule->body (append V3259 W3267) W3266 V3261 V3262 (tl V3263))))))) (true (simple-error "partial function shen.rule->body")))) -(defun shen.specialise-member (V3611 V3612 V3613 V3614) (let W3615 (gensym shen.member) (let W3616 (shen.member-clause W3615 V3611 V3613 V3614) (cons W3615 (cons V3612 (append V3613 V3614)))))) +(defun shen.specialise-member (V3269 V3270 V3271 V3272) (let W3273 (gensym shen.member) (let W3274 (shen.member-clause W3273 V3269 V3271 V3272) (cons W3273 (cons V3270 (append V3271 V3272)))))) -(defun shen.remove-bystanders (V3619 V3620) (cond ((= () V3619) ()) ((and (cons? V3619) (shen.occurs-check? (hd V3619) V3620)) (cons (hd V3619) (shen.remove-bystanders (tl V3619) V3620))) ((cons? V3619) (shen.remove-bystanders (tl V3619) V3620)) (true (shen.f-error shen.remove-bystanders)))) +(defun shen.remove-bystanders (V3277 V3278) (cond ((= () V3277) ()) ((and (cons? V3277) (shen.occurs-check? (hd V3277) V3278)) (cons (hd V3277) (shen.remove-bystanders (tl V3277) V3278))) ((cons? V3277) (shen.remove-bystanders (tl V3277) V3278)) (true (simple-error "partial function shen.remove-bystanders")))) -(defun shen.member-clause (V3621 V3622 V3623 V3624) (let W3625 (shen.nvars (length V3624)) (let W3626 (append (cons (cons - (cons (cons cons (cons (shen.macro-@ch V3622) (cons _ ()))) ())) ()) (append V3623 (append W3625 (append (cons <-- ()) (append (shen.passive-bind V3624 W3625) (cons (intern ";") ())))))) (let W3627 (let W3628 (gensym Hypotheses) (let W3629 (append V3623 V3624) (let W3630 (append (cons (cons - (cons (cons cons (cons _ (cons W3628 ()))) ())) ()) W3629) (let W3631 (cons (cons V3621 (cons W3628 W3629)) ()) (append W3630 (append (cons <-- ()) (append W3631 (cons (intern ";") ())))))))) (let W3632 (cons defprolog (cons V3621 (append W3626 W3627))) (eval W3632)))))) +(defun shen.member-clause (V3279 V3280 V3281 V3282) (let W3283 (shen.nvars (length V3282)) (let W3284 (append (cons (cons - (cons (cons cons (cons (shen.macro-@ch V3280) (cons _ ()))) ())) ()) (append V3281 (append W3283 (append (cons <-- ()) (append (shen.passive-bind V3282 W3283) (cons (intern ";") ())))))) (let W3285 (let W3286 (gensym Hypotheses) (let W3287 (append V3281 V3282) (let W3288 (append (cons (cons - (cons (cons cons (cons _ (cons W3286 ()))) ())) ()) W3287) (let W3289 (cons (cons V3279 (cons W3286 W3287)) ()) (append W3288 (append (cons <-- ()) (append W3289 (cons (intern ";") ())))))))) (let W3290 (cons defprolog (cons V3279 (append W3284 W3285))) (eval W3290)))))) -(defun shen.nvars (V3633) (cond ((= 0 V3633) ()) (true (cons (gensym NewV) (shen.nvars (- V3633 1)))))) +(defun shen.nvars (V3291) (cond ((= 0 V3291) ()) (true (cons (gensym NewV) (shen.nvars (- V3291 1)))))) -(defun shen.passive-bind (V3634 V3635) (cond ((and (= () V3634) (= () V3635)) ()) ((and (cons? V3634) (cons? V3635)) (cons (cons bind (cons (hd V3635) (cons (hd V3634) ()))) (shen.passive-bind (tl V3634) (tl V3635)))) (true (shen.f-error shen.passive-bind)))) +(defun shen.passive-bind (V3292 V3293) (cond ((and (= () V3292) (= () V3293)) ()) ((and (cons? V3292) (cons? V3293)) (cons (cons bind (cons (hd V3293) (cons (hd V3292) ()))) (shen.passive-bind (tl V3292) (tl V3293)))) (true (simple-error "partial function shen.passive-bind")))) -(defun shen.specialise-consume (V3636 V3637 V3638 V3639 V3640) (let W3641 (gensym shen.consume) (let W3642 (shen.consume-clause W3641 V3636 V3638 V3639 V3640) (cons W3641 (cons V3637 (cons V3640 (append V3638 V3639))))))) +(defun shen.specialise-consume (V3294 V3295 V3296 V3297 V3298) (let W3299 (gensym shen.consume) (let W3300 (shen.consume-clause W3299 V3294 V3296 V3297 V3298) (cons W3299 (cons V3295 (cons V3298 (append V3296 V3297))))))) -(defun shen.consume-clause (V3643 V3644 V3645 V3646 V3647) (let W3648 (shen.nvars (length V3646)) (let W3649 (gensym Assumption) (let W3650 (cons (cons - (cons (cons cons (cons (shen.macro-@ch V3644) (cons W3649 ()))) ())) (cons V3647 (append V3645 (append W3648 (append (cons <-- ()) (append (shen.passive-bind V3646 W3648) (cons (cons bind (cons V3647 (cons W3649 ()))) (cons (intern ";") ())))))))) (let W3651 (let W3652 (gensym Hypotheses) (let W3653 (append V3645 V3646) (let W3654 (gensym Assumptions) (let W3655 (cons (cons - (cons (cons cons (cons W3649 (cons W3652 ()))) ())) (cons (cons cons (cons W3654 (cons V3647 ()))) W3653)) (let W3656 (cons (cons bind (cons W3654 (cons W3649 ()))) (cons (cons V3643 (cons W3652 (cons V3647 W3653))) ())) (append W3655 (append (cons <-- ()) (append W3656 (cons (intern ";") ()))))))))) (let W3657 (cons defprolog (cons V3643 (append W3650 W3651))) (eval W3657))))))) +(defun shen.consume-clause (V3301 V3302 V3303 V3304 V3305) (let W3306 (shen.nvars (length V3304)) (let W3307 (gensym Assumption) (let W3308 (cons (cons - (cons (cons cons (cons (shen.macro-@ch V3302) (cons W3307 ()))) ())) (cons V3305 (append V3303 (append W3306 (append (cons <-- ()) (append (shen.passive-bind V3304 W3306) (cons (cons bind (cons V3305 (cons W3307 ()))) (cons (intern ";") ())))))))) (let W3309 (let W3310 (gensym Hypotheses) (let W3311 (append V3303 V3304) (let W3312 (gensym Assumptions) (let W3313 (cons (cons - (cons (cons cons (cons W3307 (cons W3310 ()))) ())) (cons (cons cons (cons W3312 (cons V3305 ()))) W3311)) (let W3314 (cons (cons bind (cons W3312 (cons W3307 ()))) (cons (cons V3301 (cons W3310 (cons V3305 W3311))) ())) (append W3313 (append (cons <-- ()) (append W3314 (cons (intern ";") ()))))))))) (let W3315 (cons defprolog (cons V3301 (append W3308 W3309))) (eval W3315))))))) -(defun shen.passive-variables (V3658 V3659) (difference (shen.extract-vars V3658) V3659)) +(defun shen.passive-variables (V3316 V3317) (difference (shen.extract-vars V3316) V3317)) -(defun shen.side-conditions->goals (V3662 V3663 V3664 V3665 V3666) (cond ((= () V3665) (shen.premises->goals V3662 V3664 V3666)) ((and (cons? V3665) (and (cons? (hd V3665)) (and (= if (hd (hd V3665))) (and (cons? (tl (hd V3665))) (= () (tl (tl (hd V3665)))))))) (cons (cons when (tl (hd V3665))) (shen.side-conditions->goals V3662 V3663 V3664 (tl V3665) V3666))) ((and (cons? V3665) (and (cons? (hd V3665)) (and (= let (hd (hd V3665))) (and (cons? (tl (hd V3665))) (and (cons? (tl (tl (hd V3665)))) (= () (tl (tl (tl (hd V3665)))))))))) (if (element? (hd (tl (hd V3665))) V3663) (cons (cons is! (tl (hd V3665))) (shen.side-conditions->goals V3662 V3663 V3664 (tl V3665) V3666)) (cons (cons bind (tl (hd V3665))) (shen.side-conditions->goals V3662 (cons (hd (tl (hd V3665))) V3663) V3664 (tl V3665) V3666)))) ((and (cons? V3665) (and (cons? (hd V3665)) (and (= ctxt (hd (hd V3665))) (and (cons? (tl (hd V3665))) (= () (tl (tl (hd V3665)))))))) (if (element? (hd (tl (hd V3665))) V3663) (shen.side-conditions->goals (cons (hd (tl (hd V3665))) V3662) V3663 V3664 (tl V3665) V3666) (cons (cons bind (cons (hd (tl (hd V3665))) (cons V3664 ()))) (shen.side-conditions->goals (cons (hd (tl (hd V3665))) V3662) (cons (hd (tl (hd V3665))) V3663) (hd (tl (hd V3665))) (tl V3665) V3666)))) (true (shen.f-error shen.side-conditions->goals)))) +(defun shen.side-conditions->goals (V3322 V3323 V3324 V3325 V3326) (cond ((= () V3325) (shen.premises->goals V3322 V3324 V3326)) ((and (cons? V3325) (and (cons? (hd V3325)) (and (= if (hd (hd V3325))) (and (cons? (tl (hd V3325))) (= () (tl (tl (hd V3325)))))))) (cons (cons when (tl (hd V3325))) (shen.side-conditions->goals V3322 V3323 V3324 (tl V3325) V3326))) ((and (cons? V3325) (and (cons? (hd V3325)) (and (= let (hd (hd V3325))) (and (cons? (tl (hd V3325))) (and (cons? (tl (tl (hd V3325)))) (= () (tl (tl (tl (hd V3325)))))))))) (if (element? (hd (tl (hd V3325))) V3323) (cons (cons is! (tl (hd V3325))) (shen.side-conditions->goals V3322 V3323 V3324 (tl V3325) V3326)) (cons (cons bind (tl (hd V3325))) (shen.side-conditions->goals V3322 (cons (hd (tl (hd V3325))) V3323) V3324 (tl V3325) V3326)))) ((and (cons? V3325) (and (cons? (hd V3325)) (and (= ctxt (hd (hd V3325))) (and (cons? (tl (hd V3325))) (= () (tl (tl (hd V3325)))))))) (if (element? (hd (tl (hd V3325))) V3323) (shen.side-conditions->goals (cons (hd (tl (hd V3325))) V3322) V3323 V3324 (tl V3325) V3326) (cons (cons bind (cons (hd (tl (hd V3325))) (cons V3324 ()))) (shen.side-conditions->goals (cons (hd (tl (hd V3325))) V3322) (cons (hd (tl (hd V3325))) V3323) (hd (tl (hd V3325))) (tl V3325) V3326)))) ((and (cons? V3325) (and (cons? (hd V3325)) (and (= sqts (hd (hd V3325))) (and (cons? (tl (hd V3325))) (= () (tl (tl (hd V3325)))))))) (shen.side-conditions->goals V3322 V3323 V3324 (tl V3325) V3326)) (true (simple-error "partial function shen.side-conditions->goals")))) -(defun shen.premises->goals (V3671 V3672 V3673) (cond ((= () V3673) (cons (intern ";") ())) ((and (cons? V3673) (= ! (hd V3673))) (cons ! (shen.premises->goals V3671 V3672 (tl V3673)))) ((and (cons? V3673) (= fail (hd V3673))) (cons (cons when (cons false ())) (shen.premises->goals V3671 V3672 (tl V3673)))) ((and (cons? V3673) (and (cons? (hd V3673)) (and (cons? (tl (hd V3673))) (= () (tl (tl (hd V3673))))))) (cons (cons shen.system-S (cons (shen.macro-@c (hd (tl (hd V3673)))) (cons (shen.construct-context V3671 (hd (hd V3673)) V3672) ()))) (shen.premises->goals V3671 V3672 (tl V3673)))) (true (shen.f-error shen.premises->goals)))) +(defun shen.premises->goals (V3331 V3332 V3333) (cond ((= () V3333) (cons (intern ";") ())) ((and (cons? V3333) (= ! (hd V3333))) (cons ! (shen.premises->goals V3331 V3332 (tl V3333)))) ((and (cons? V3333) (= fail (hd V3333))) (cons (cons when (cons false ())) (shen.premises->goals V3331 V3332 (tl V3333)))) ((and (cons? V3333) (and (cons? (hd V3333)) (and (cons? (tl (hd V3333))) (= () (tl (tl (hd V3333))))))) (cons (cons shen.system-S (cons (shen.macro-@c (hd (tl (hd V3333)))) (cons (shen.construct-context V3331 (hd (hd V3333)) V3332) ()))) (shen.premises->goals V3331 V3332 (tl V3333)))) (true (simple-error "partial function shen.premises->goals")))) -(defun shen.construct-context (V3677 V3678 V3679) (cond ((= () V3678) V3679) ((and (cons? V3678) (and (= () (tl V3678)) (element? (hd V3678) V3677))) (hd V3678)) ((cons? V3678) (cons cons (cons (shen.macro-@c (hd V3678)) (cons (shen.construct-context V3677 (tl V3678) V3679) ())))) (true (shen.f-error shen.construct-context)))) +(defun shen.construct-context (V3337 V3338 V3339) (cond ((= () V3338) V3339) ((and (cons? V3338) (and (= () (tl V3338)) (element? (hd V3338) V3337))) (hd V3338)) ((cons? V3338) (cons cons (cons (shen.macro-@c (hd V3338)) (cons (shen.construct-context V3337 (tl V3338) V3339) ())))) (true (simple-error "partial function shen.construct-context")))) -(defun preclude (V3680) (let W3681 (map (lambda Z3682 (shen.intern-type Z3682)) V3680) (let W3683 (value shen.*datatypes*) (let W3684 (shen.remove-datatypes W3681 W3683) (let W3685 (set shen.*datatypes* W3684) (shen.show-datatypes W3685)))))) +(defun preclude (V3340) (let W3341 (map (lambda Z3342 (shen.intern-type Z3342)) V3340) (let W3343 (value shen.*datatypes*) (let W3344 (shen.remove-datatypes W3341 W3343) (let W3345 (set shen.*datatypes* W3344) (shen.show-datatypes W3345)))))) -(defun shen.remove-datatypes (V3690 V3691) (cond ((= () V3690) V3691) ((cons? V3690) (shen.remove-datatypes (tl V3690) (shen.unassoc (hd V3690) V3691))) (true (simple-error "implementation error in shen.remove-datatypes")))) +(defun shen.remove-datatypes (V3350 V3351) (cond ((= () V3350) V3351) ((cons? V3350) (shen.remove-datatypes (tl V3350) (shen.unassoc (hd V3350) V3351))) (true (simple-error "implementation error in shen.remove-datatypes")))) -(defun shen.show-datatypes (V3692) (map (lambda Z3693 (hd Z3693)) V3692)) +(defun shen.show-datatypes (V3352) (map (lambda Z3353 (hd Z3353)) V3352)) -(defun include (V3694) (let W3695 (map (lambda Z3696 (shen.intern-type Z3696)) V3694) (let W3697 (map (lambda Z3698 (shen.remember-datatype Z3698 (fn Z3698))) W3695) (let W3699 (value shen.*datatypes*) (shen.show-datatypes W3699))))) +(defun include (V3354) (let W3355 (map (lambda Z3356 (shen.intern-type Z3356)) V3354) (let W3357 (map (lambda Z3358 (shen.remember-datatype Z3358 (fn Z3358))) W3355) (let W3359 (value shen.*datatypes*) (shen.show-datatypes W3359))))) -(defun preclude-all-but (V3700) (let W3701 (set shen.*datatypes* ()) (let W3702 (map (lambda Z3703 (shen.intern-type Z3703)) V3700) (let W3704 (map (lambda Z3705 (shen.remember-datatype Z3705 (fn Z3705))) W3702) (shen.show-datatypes (value shen.*datatypes*)))))) +(defun preclude-all-but (V3360) (let W3361 (set shen.*datatypes* ()) (let W3362 (map (lambda Z3363 (shen.intern-type Z3363)) V3360) (let W3364 (map (lambda Z3365 (shen.remember-datatype Z3365 (fn Z3365))) W3362) (shen.show-datatypes (value shen.*datatypes*)))))) -(defun include-all-but (V3706) (let W3707 (map (lambda Z3708 (shen.intern-type Z3708)) V3706) (let W3709 (value shen.*alldatatypes*) (let W3710 (set shen.*datatypes* (shen.remove-datatypes W3707 W3709)) (shen.show-datatypes W3710))))) +(defun include-all-but (V3366) (let W3367 (map (lambda Z3368 (shen.intern-type Z3368)) V3366) (let W3369 (value shen.*alldatatypes*) (let W3370 (set shen.*datatypes* (shen.remove-datatypes W3367 W3369)) (shen.show-datatypes W3370))))) diff --git a/kernel/klambda/sys.kl b/kernel/klambda/sys.kl index d04fc79..e732b95 100644 --- a/kernel/klambda/sys.kl +++ b/kernel/klambda/sys.kl @@ -1,16 +1,16 @@ -(defun thaw (V3767) (V3767)) +(defun thaw (V3430) (V3430)) -(defun eval (V3768) (eval-kl (shen.shen->kl (shen.process-applications (macroexpand V3768) (shen.find-types V3768))))) +(defun eval (V3431) (eval-kl (shen.shen->kl (shen.process-applications (macroexpand V3431) (shen.find-types V3431))))) -(defun external (V3769) (cond ((= null V3769) ()) (true (trap-error (get V3769 shen.external-symbols (value *property-vector*)) (lambda Z3770 (simple-error (cn "package " (shen.app V3769 " does not exist. +(defun external (V3432) (cond ((= null V3432) ()) (true (trap-error (get V3432 shen.external-symbols (value *property-vector*)) (lambda Z3433 (simple-error (cn "package " (shen.app V3432 " does not exist. ;" shen.a)))))))) -(defun internal (V3771) (cond ((= null V3771) ()) (true (trap-error (get V3771 shen.internal-symbols (value *property-vector*)) (lambda Z3772 (simple-error (cn "package " (shen.app V3771 " does not exist. +(defun internal (V3434) (cond ((= null V3434) ()) (true (trap-error (get V3434 shen.internal-symbols (value *property-vector*)) (lambda Z3435 (simple-error (cn "package " (shen.app V3434 " does not exist. ;" shen.a)))))))) -(defun fail-if (V3773 V3774) (if (V3773 V3774) (fail) V3774)) +(defun fail-if (V3436 V3437) (if (V3436 V3437) (fail) V3437)) -(defun @s (V3775 V3776) (cn V3775 V3776)) +(defun @s (V3438 V3439) (cn V3438 V3439)) (defun tc? () (value shen.*tc*)) @@ -20,195 +20,191 @@ (defun tracked () (value shen.*tracking*)) -(defun ps (V3777) (trap-error (get V3777 shen.source (value *property-vector*)) (lambda Z3778 (simple-error (shen.app V3777 " not found. +(defun ps (V3440) (trap-error (get V3440 shen.source (value *property-vector*)) (lambda Z3441 (simple-error (shen.app V3440 " not found. " shen.a))))) (defun stinput () (value *stinput*)) -(defun vector (V3779) (let W3780 (absvector (+ V3779 1)) (let W3781 (address-> W3780 0 V3779) (let W3782 (if (= V3779 0) W3781 (shen.fillvector W3781 1 V3779 (fail))) W3782)))) +(defun vector (V3442) (let W3443 (absvector (+ V3442 1)) (let W3444 (address-> W3443 0 V3442) (let W3445 (if (= V3442 0) W3444 (shen.fillvector W3444 1 V3442 (fail))) W3445)))) -(defun shen.fillvector (V3784 V3785 V3786 V3787) (cond ((= V3785 V3786) (address-> V3784 V3786 V3787)) (true (shen.fillvector (address-> V3784 V3785 V3787) (+ 1 V3785) V3786 V3787)))) +(defun shen.fillvector (V3447 V3448 V3449 V3450) (cond ((= V3448 V3449) (address-> V3447 V3449 V3450)) (true (shen.fillvector (address-> V3447 V3448 V3450) (+ 1 V3448) V3449 V3450)))) -(defun vector? (V3788) (and (absvector? V3788) (let W3789 (trap-error (<-address V3788 0) (lambda Z3790 -1)) (and (number? W3789) (>= W3789 0))))) +(defun vector? (V3451) (and (absvector? V3451) (trap-error (>= (<-address V3451 0) 0) (lambda Z3452 false)))) -(defun vector-> (V3791 V3792 V3793) (if (= V3792 0) (simple-error "cannot access 0th element of a vector -") (address-> V3791 V3792 V3793))) +(defun vector-> (V3453 V3454 V3455) (if (= V3454 0) (simple-error "cannot access 0th element of a vector +") (address-> V3453 V3454 V3455))) -(defun <-vector (V3794 V3795) (if (= V3795 0) (simple-error "cannot access 0th element of a vector -") (let W3796 (<-address V3794 V3795) (if (= W3796 (fail)) (simple-error "vector element not found -") W3796)))) +(defun <-vector (V3456 V3457) (if (= V3457 0) (simple-error "cannot access 0th element of a vector +") (let W3458 (<-address V3456 V3457) (if (= W3458 (fail)) (simple-error "vector element not found +") W3458)))) -(defun shen.posint? (V3797) (and (integer? V3797) (>= V3797 0))) +(defun shen.posint? (V3459) (and (integer? V3459) (>= V3459 0))) -(defun limit (V3798) (<-address V3798 0)) +(defun limit (V3460) (<-address V3460 0)) -(defun symbol? (V3799) (cond ((or (boolean? V3799) (or (number? V3799) (or (string? V3799) (or (cons? V3799) (or (empty? V3799) (vector? V3799)))))) false) ((element? V3799 (cons { (cons } (cons (intern ":") (cons (intern ";") (cons (intern ",") ())))))) true) (true (trap-error (let W3800 (str V3799) (shen.analyse-symbol? W3800)) (lambda Z3801 false))))) +(defun symbol? (V3461) (cond ((or (boolean? V3461) (or (number? V3461) (or (string? V3461) (or (cons? V3461) (or (empty? V3461) (vector? V3461)))))) false) ((element? V3461 (cons { (cons } (cons (intern ":") (cons (intern ";") (cons (intern ",") ())))))) true) (true (trap-error (let W3462 (str V3461) (shen.analyse-symbol? W3462)) (lambda Z3463 false))))) -(defun shen.analyse-symbol? (V3804) (cond ((shen.+string? V3804) (and (shen.alpha? (string->n (hdstr V3804))) (shen.alphanums? (tlstr V3804)))) (true (simple-error "implementation error in shen.analyse-symbol?")))) +(defun shen.analyse-symbol? (V3466) (cond ((shen.+string? V3466) (and (shen.alpha? (string->n (hdstr V3466))) (shen.alphanums? (tlstr V3466)))) (true (simple-error "implementation error in shen.analyse-symbol?")))) -(defun shen.alphanums? (V3807) (cond ((= "" V3807) true) ((shen.+string? V3807) (let W3808 (string->n (hdstr V3807)) (and (or (shen.alpha? W3808) (shen.digit? W3808)) (shen.alphanums? (tlstr V3807))))) (true (simple-error "implementation error in shen.alphanums?")))) +(defun shen.alphanums? (V3469) (cond ((= "" V3469) true) ((shen.+string? V3469) (let W3470 (string->n (hdstr V3469)) (and (or (shen.alpha? W3470) (shen.digit? W3470)) (shen.alphanums? (tlstr V3469))))) (true (simple-error "implementation error in shen.alphanums?")))) -(defun variable? (V3809) (cond ((or (boolean? V3809) (or (number? V3809) (string? V3809))) false) (true (trap-error (let W3810 (str V3809) (shen.analyse-variable? W3810)) (lambda Z3811 false))))) +(defun variable? (V3471) (cond ((or (boolean? V3471) (or (number? V3471) (string? V3471))) false) (true (trap-error (let W3472 (str V3471) (shen.analyse-variable? W3472)) (lambda Z3473 false))))) -(defun shen.analyse-variable? (V3814) (cond ((shen.+string? V3814) (and (shen.uppercase? (string->n (hdstr V3814))) (shen.alphanums? (tlstr V3814)))) (true (simple-error "implementation error in shen.analyse-variable?")))) +(defun shen.analyse-variable? (V3476) (cond ((shen.+string? V3476) (and (shen.uppercase? (string->n (hdstr V3476))) (shen.alphanums? (tlstr V3476)))) (true (simple-error "implementation error in shen.analyse-variable?")))) -(defun gensym (V3815) (concat V3815 (set shen.*gensym* (+ 1 (value shen.*gensym*))))) +(defun gensym (V3477) (concat V3477 (set shen.*gensym* (+ 1 (value shen.*gensym*))))) -(defun concat (V3816 V3817) (intern (cn (str V3816) (str V3817)))) +(defun concat (V3478 V3479) (intern (cn (str V3478) (str V3479)))) -(defun @p (V3818 V3819) (let W3820 (absvector 3) (let W3821 (address-> W3820 0 shen.tuple) (let W3822 (address-> W3820 1 V3818) (let W3823 (address-> W3820 2 V3819) W3820))))) +(defun @p (V3480 V3481) (let W3482 (absvector 3) (let W3483 (address-> W3482 0 shen.tuple) (let W3484 (address-> W3482 1 V3480) (let W3485 (address-> W3482 2 V3481) W3482))))) -(defun fst (V3824) (<-address V3824 1)) +(defun fst (V3486) (<-address V3486 1)) -(defun snd (V3825) (<-address V3825 2)) +(defun snd (V3487) (<-address V3487 2)) -(defun tuple? (V3826) (and (absvector? V3826) (= shen.tuple (trap-error (<-address V3826 0) (lambda Z3827 shen.not-tuple))))) +(defun tuple? (V3488) (trap-error (and (absvector? V3488) (= shen.tuple (<-address V3488 0))) (lambda Z3489 false))) -(defun append (V3832 V3833) (cond ((= () V3832) V3833) ((cons? V3832) (cons (hd V3832) (append (tl V3832) V3833))) (true (simple-error "attempt to append a non-list")))) +(defun append (V3494 V3495) (cond ((= () V3494) V3495) ((cons? V3494) (cons (hd V3494) (append (tl V3494) V3495))) (true (simple-error "attempt to append a non-list")))) -(defun @v (V3834 V3835) (let W3836 (limit V3835) (let W3837 (vector (+ W3836 1)) (let W3838 (vector-> W3837 1 V3834) (if (= W3836 0) W3838 (shen.@v-help V3835 1 W3836 W3838)))))) +(defun @v (V3496 V3497) (let W3498 (limit V3497) (let W3499 (vector (+ W3498 1)) (let W3500 (vector-> W3499 1 V3496) (if (= W3498 0) W3500 (shen.@v-help V3497 1 W3498 W3500)))))) -(defun shen.@v-help (V3840 V3841 V3842 V3843) (cond ((= V3841 V3842) (shen.copyfromvector V3840 V3843 V3842 (+ V3842 1))) (true (shen.@v-help V3840 (+ V3841 1) V3842 (shen.copyfromvector V3840 V3843 V3841 (+ V3841 1)))))) +(defun shen.@v-help (V3502 V3503 V3504 V3505) (cond ((= V3503 V3504) (shen.copyfromvector V3502 V3505 V3504 (+ V3504 1))) (true (shen.@v-help V3502 (+ V3503 1) V3504 (shen.copyfromvector V3502 V3505 V3503 (+ V3503 1)))))) -(defun shen.copyfromvector (V3844 V3845 V3846 V3847) (trap-error (vector-> V3845 V3847 (<-vector V3844 V3846)) (lambda Z3848 V3845))) +(defun shen.copyfromvector (V3506 V3507 V3508 V3509) (trap-error (vector-> V3507 V3509 (<-vector V3506 V3508)) (lambda Z3510 V3507))) -(defun hdv (V3849) (trap-error (<-vector V3849 1) (lambda Z3850 (simple-error "hdv needs a non-empty vector as an argument +(defun hdv (V3511) (trap-error (<-vector V3511 1) (lambda Z3512 (simple-error "hdv needs a non-empty vector as an argument ")))) -(defun tlv (V3851) (let W3852 (limit V3851) (if (= W3852 0) (simple-error "cannot take the tail of the empty vector -") (if (= W3852 1) (vector 0) (let W3853 (vector (- W3852 1)) (shen.tlv-help V3851 2 W3852 (vector (- W3852 1)))))))) +(defun tlv (V3513) (let W3514 (limit V3513) (if (= W3514 0) (simple-error "cannot take the tail of the empty vector +") (if (= W3514 1) (vector 0) (let W3515 (vector (- W3514 1)) (shen.tlv-help V3513 2 W3514 (vector (- W3514 1)))))))) -(defun shen.tlv-help (V3855 V3856 V3857 V3858) (cond ((= V3856 V3857) (shen.copyfromvector V3855 V3858 V3857 (- V3857 1))) (true (shen.tlv-help V3855 (+ V3856 1) V3857 (shen.copyfromvector V3855 V3858 V3856 (- V3856 1)))))) +(defun shen.tlv-help (V3517 V3518 V3519 V3520) (cond ((= V3518 V3519) (shen.copyfromvector V3517 V3520 V3519 (- V3519 1))) (true (shen.tlv-help V3517 (+ V3518 1) V3519 (shen.copyfromvector V3517 V3520 V3518 (- V3518 1)))))) -(defun assoc (V3870 V3871) (cond ((= () V3871) ()) ((and (cons? V3871) (and (cons? (hd V3871)) (= V3870 (hd (hd V3871))))) (hd V3871)) ((cons? V3871) (assoc V3870 (tl V3871))) (true (simple-error "attempt to search a non-list with assoc +(defun assoc (V3532 V3533) (cond ((= () V3533) ()) ((and (cons? V3533) (and (cons? (hd V3533)) (= V3532 (hd (hd V3533))))) (hd V3533)) ((cons? V3533) (assoc V3532 (tl V3533))) (true (simple-error "attempt to search a non-list with assoc ")))) -(defun shen.assoc-set (V3875 V3876 V3877) (cond ((= () V3877) (cons (cons V3875 V3876) ())) ((and (cons? V3877) (and (cons? (hd V3877)) (= V3875 (hd (hd V3877))))) (cons (cons (hd (hd V3877)) V3876) (tl V3877))) ((cons? V3877) (cons (hd V3877) (shen.assoc-set V3875 V3876 (tl V3877)))) (true (shen.f-error shen.assoc-set)))) +(defun boolean? (V3536) (cond ((= true V3536) true) ((= false V3536) true) (true false))) -(defun shen.assoc-rm (V3881 V3882) (cond ((= () V3882) ()) ((and (cons? V3882) (and (cons? (hd V3882)) (= V3881 (hd (hd V3882))))) (tl V3882)) ((cons? V3882) (cons (hd V3882) (shen.assoc-rm V3881 (tl V3882)))) (true (shen.f-error shen.assoc-rm)))) +(defun nl (V3537) (cond ((= 0 V3537) 0) (true (do (pr " +" (stoutput)) (nl (- V3537 1)))))) -(defun boolean? (V3885) (cond ((= true V3885) true) ((= false V3885) true) (true false))) +(defun difference (V3544 V3545) (cond ((= () V3544) ()) ((cons? V3544) (if (element? (hd V3544) V3545) (difference (tl V3544) V3545) (cons (hd V3544) (difference (tl V3544) V3545)))) (true (simple-error "attempt to find the difference with a non-list +")))) -(defun nl (V3886) (cond ((= 0 V3886) 0) (true (do (pr " -" (stoutput)) (nl (- V3886 1)))))) +(defun do (V3546 V3547) V3547) -(defun difference (V3893 V3894) (cond ((= () V3893) ()) ((cons? V3893) (if (element? (hd V3893) V3894) (difference (tl V3893) V3894) (cons (hd V3893) (difference (tl V3893) V3894)))) (true (simple-error "attempt to find the difference with a non-list +(defun element? (V3559 V3560) (cond ((= () V3560) false) ((and (cons? V3560) (= V3559 (hd V3560))) true) ((cons? V3560) (element? V3559 (tl V3560))) (true (simple-error "attempt to find an element in a non-list ")))) -(defun do (V3895 V3896) V3896) +(defun empty? (V3563) (cond ((= () V3563) true) (true false))) -(defun element? (V3908 V3909) (cond ((= () V3909) false) ((and (cons? V3909) (= V3908 (hd V3909))) true) ((cons? V3909) (element? V3908 (tl V3909))) (true (simple-error "attempt to find an element in a non-list -")))) +(defun fix (V3564 V3565) (shen.fix-help V3564 V3565 (V3564 V3565))) -(defun empty? (V3912) (cond ((= () V3912) true) (true false))) +(defun shen.fix-help (V3571 V3572 V3573) (cond ((= V3572 V3573) V3573) (true (shen.fix-help V3571 V3573 (V3571 V3573))))) -(defun fix (V3913 V3914) (shen.fix-help V3913 V3914 (V3913 V3914))) +(defun put (V3574 V3575 V3576 V3577) (let W3578 (hash V3574 (limit V3577)) (let W3579 (trap-error (<-vector V3577 W3578) (lambda Z3580 ())) (let W3581 (vector-> V3577 W3578 (shen.change-pointer-value V3574 V3575 V3576 W3579)) V3576)))) -(defun shen.fix-help (V3920 V3921 V3922) (cond ((= V3921 V3922) V3922) (true (shen.fix-help V3920 V3922 (V3920 V3922))))) +(defun unput (V3582 V3583 V3584) (let W3585 (hash V3582 (limit V3584)) (let W3586 (trap-error (<-vector V3584 W3585) (lambda Z3587 ())) (let W3588 (vector-> V3584 W3585 (shen.remove-pointer V3582 V3583 W3586)) V3582)))) -(defun put (V3923 V3924 V3925 V3926) (let W3927 (trap-error (shen.<-dict V3926 V3923) (lambda Z3928 ())) (let W3929 (shen.assoc-set V3924 V3925 W3927) (let W3930 (shen.dict-> V3926 V3923 W3929) V3925)))) +(defun shen.remove-pointer (V3599 V3600 V3601) (cond ((= () V3601) ()) ((and (cons? V3601) (and (cons? (hd V3601)) (and (cons? (hd (hd V3601))) (and (cons? (tl (hd (hd V3601)))) (and (= () (tl (tl (hd (hd V3601))))) (and (= V3600 (hd (tl (hd (hd V3601))))) (= V3599 (hd (hd (hd V3601)))))))))) (tl V3601)) ((cons? V3601) (cons (hd V3601) (shen.remove-pointer V3599 V3600 (tl V3601)))) (true (simple-error "implementation error in shen.remove-pointer")))) -(defun unput (V3931 V3932 V3933) (let W3934 (trap-error (shen.<-dict V3933 V3931) (lambda Z3935 ())) (let W3936 (shen.assoc-rm V3932 W3934) (let W3937 (shen.dict-> V3933 V3931 W3936) V3931)))) +(defun shen.change-pointer-value (V3614 V3615 V3616 V3617) (cond ((= () V3617) (cons (cons (cons V3614 (cons V3615 ())) V3616) ())) ((and (cons? V3617) (and (cons? (hd V3617)) (and (cons? (hd (hd V3617))) (and (cons? (tl (hd (hd V3617)))) (and (= () (tl (tl (hd (hd V3617))))) (and (= V3615 (hd (tl (hd (hd V3617))))) (= V3614 (hd (hd (hd V3617)))))))))) (cons (cons (hd (hd V3617)) V3616) (tl V3617))) ((cons? V3617) (cons (hd V3617) (shen.change-pointer-value V3614 V3615 V3616 (tl V3617)))) (true (simple-error "implementation error in shen.change-pointer-value")))) -(defun get (V3938 V3939 V3940) (let W3941 (trap-error (shen.<-dict V3940 V3938) (lambda Z3942 (simple-error (shen.app V3938 (cn " has no attributes: " (shen.app V3939 " -" shen.s)) shen.a)))) (let W3943 (assoc V3939 W3941) (if (empty? W3943) (simple-error (cn "attribute " (shen.app V3939 (cn " not found for " (shen.app V3938 " -" shen.s)) shen.s))) (tl W3943))))) +(defun get (V3618 V3619 V3620) (let W3621 (hash V3618 (limit V3620)) (let W3622 (trap-error (<-vector V3620 W3621) (lambda Z3623 (simple-error (shen.app V3618 (cn " has no attributes: " (shen.app V3619 " +" shen.s)) shen.a)))) (let W3624 (assoc (cons V3618 (cons V3619 ())) W3622) (if (empty? W3624) (simple-error (cn "attribute " (shen.app V3619 (cn " not found for " (shen.app V3618 " +" shen.s)) shen.s))) (tl W3624)))))) -(defun hash (V3944 V3945) (let W3946 (shen.mod (shen.hashkey V3944) V3945) (if (= W3946 0) 1 W3946))) +(defun hash (V3625 V3626) (let W3627 (shen.mod (shen.hashkey V3625) V3626) (if (= W3627 0) 1 W3627))) -(defun shen.hashkey (V3947) (let W3948 (map (lambda Z3949 (string->n Z3949)) (explode V3947)) (shen.prodbutzero W3948 1))) +(defun shen.hashkey (V3628) (let W3629 (map (lambda Z3630 (string->n Z3630)) (explode V3628)) (shen.prodbutzero W3629 1))) -(defun shen.prodbutzero (V3950 V3951) (cond ((= () V3950) V3951) ((and (cons? V3950) (= 0 (hd V3950))) (shen.prodbutzero (tl V3950) V3951)) ((cons? V3950) (if (> V3951 10000000000) (shen.prodbutzero (tl V3950) (+ V3951 (hd V3950))) (shen.prodbutzero (tl V3950) (* V3951 (hd V3950))))) (true (shen.f-error shen.prodbutzero)))) +(defun shen.prodbutzero (V3631 V3632) (cond ((= () V3631) V3632) ((and (cons? V3631) (= 0 (hd V3631))) (shen.prodbutzero (tl V3631) V3632)) ((cons? V3631) (if (> V3632 10000000000) (shen.prodbutzero (tl V3631) (+ V3632 (hd V3631))) (shen.prodbutzero (tl V3631) (* V3632 (hd V3631))))) (true (simple-error "partial function shen.prodbutzero")))) -(defun shen.mod (V3952 V3953) (shen.modh V3952 (shen.multiples V3952 (cons V3953 ())))) +(defun shen.mod (V3633 V3634) (shen.modh V3633 (shen.multiples V3633 (cons V3634 ())))) -(defun shen.multiples (V3958 V3959) (cond ((and (cons? V3959) (> (hd V3959) V3958)) (tl V3959)) ((cons? V3959) (shen.multiples V3958 (cons (* 2 (hd V3959)) V3959))) (true (simple-error "implementation error in shen.multiples")))) +(defun shen.multiples (V3639 V3640) (cond ((and (cons? V3640) (> (hd V3640) V3639)) (tl V3640)) ((cons? V3640) (shen.multiples V3639 (cons (* 2 (hd V3640)) V3640))) (true (simple-error "implementation error in shen.multiples")))) -(defun shen.modh (V3966 V3967) (cond ((= 0 V3966) 0) ((= () V3967) V3966) ((and (cons? V3967) (> (hd V3967) V3966)) (if (empty? (tl V3967)) V3966 (shen.modh V3966 (tl V3967)))) ((cons? V3967) (shen.modh (- V3966 (hd V3967)) V3967)) (true (simple-error "implementation error in shen.modh")))) +(defun shen.modh (V3647 V3648) (cond ((= 0 V3647) 0) ((= () V3648) V3647) ((and (cons? V3648) (> (hd V3648) V3647)) (if (empty? (tl V3648)) V3647 (shen.modh V3647 (tl V3648)))) ((cons? V3648) (shen.modh (- V3647 (hd V3648)) V3648)) (true (simple-error "implementation error in shen.modh")))) -(defun sum (V3970) (cond ((= () V3970) 0) ((cons? V3970) (+ (hd V3970) (sum (tl V3970)))) (true (simple-error "attempt to sum a non-list +(defun sum (V3651) (cond ((= () V3651) 0) ((cons? V3651) (+ (hd V3651) (sum (tl V3651)))) (true (simple-error "attempt to sum a non-list ")))) -(defun head (V3975) (cond ((cons? V3975) (hd V3975)) (true (simple-error "head expects a non-empty list +(defun head (V3656) (cond ((cons? V3656) (hd V3656)) (true (simple-error "head expects a non-empty list ")))) -(defun tail (V3980) (cond ((cons? V3980) (tl V3980)) (true (simple-error "tail expects a non-empty list +(defun tail (V3661) (cond ((cons? V3661) (tl V3661)) (true (simple-error "tail expects a non-empty list ")))) -(defun hdstr (V3981) (pos V3981 0)) +(defun hdstr (V3662) (pos V3662 0)) -(defun intersection (V3988 V3989) (cond ((= () V3988) ()) ((cons? V3988) (if (element? (hd V3988) V3989) (cons (hd V3988) (intersection (tl V3988) V3989)) (intersection (tl V3988) V3989))) (true (simple-error "attempt to find the intersection with a non-list +(defun intersection (V3669 V3670) (cond ((= () V3669) ()) ((cons? V3669) (if (element? (hd V3669) V3670) (cons (hd V3669) (intersection (tl V3669) V3670)) (intersection (tl V3669) V3670))) (true (simple-error "attempt to find the intersection with a non-list ")))) -(defun reverse (V3990) (shen.reverse-help V3990 ())) +(defun reverse (V3671) (shen.reverse-help V3671 ())) -(defun shen.reverse-help (V3995 V3996) (cond ((= () V3995) V3996) ((cons? V3995) (shen.reverse-help (tl V3995) (cons (hd V3995) V3996))) (true (simple-error "attempt to reverse a non-list +(defun shen.reverse-help (V3676 V3677) (cond ((= () V3676) V3677) ((cons? V3676) (shen.reverse-help (tl V3676) (cons (hd V3676) V3677))) (true (simple-error "attempt to reverse a non-list ")))) -(defun union (V4001 V4002) (cond ((= () V4001) V4002) ((cons? V4001) (if (element? (hd V4001) V4002) (union (tl V4001) V4002) (cons (hd V4001) (union (tl V4001) V4002)))) (true (simple-error "attempt to find the union with a non-list +(defun union (V3682 V3683) (cond ((= () V3682) V3683) ((cons? V3682) (if (element? (hd V3682) V3683) (union (tl V3682) V3683) (cons (hd V3682) (union (tl V3682) V3683)))) (true (simple-error "attempt to find the union with a non-list ")))) -(defun y-or-n? (V4003) (let W4004 (pr (shen.proc-nl V4003) (stoutput)) (let W4005 (pr " (y/n) " (stoutput)) (let W4006 (shen.app (read (stinput)) "" shen.s) (if (= "y" W4006) true (if (= "n" W4006) false (do (pr "please answer y or n -" (stoutput)) (y-or-n? V4003)))))))) +(defun y-or-n? (V3684) (let W3685 (pr (shen.proc-nl V3684) (stoutput)) (let W3686 (pr " (y/n) " (stoutput)) (let W3687 (shen.app (read (stinput)) "" shen.s) (if (= "y" W3687) true (if (= "n" W3687) false (do (pr "please answer y or n +" (stoutput)) (y-or-n? V3684)))))))) -(defun not (V4007) (if V4007 false true)) +(defun not (V3688) (if V3688 false true)) (defun abort () (simple-error "")) -(defun subst (V4013 V4014 V4015) (cond ((= V4014 V4015) V4013) ((cons? V4015) (cons (subst V4013 V4014 (hd V4015)) (subst V4013 V4014 (tl V4015)))) (true V4015))) +(defun subst (V3694 V3695 V3696) (cond ((= V3695 V3696) V3694) ((cons? V3696) (cons (subst V3694 V3695 (hd V3696)) (subst V3694 V3695 (tl V3696)))) (true V3696))) -(defun explode (V4016) (shen.explode-h (shen.app V4016 "" shen.a))) +(defun explode (V3697) (shen.explode-h (shen.app V3697 "" shen.a))) -(defun shen.explode-h (V4019) (cond ((= "" V4019) ()) ((shen.+string? V4019) (cons (hdstr V4019) (shen.explode-h (tlstr V4019)))) (true (simple-error "implementation error in explode-h")))) +(defun shen.explode-h (V3700) (cond ((= "" V3700) ()) ((shen.+string? V3700) (cons (hdstr V3700) (shen.explode-h (tlstr V3700)))) (true (simple-error "implementation error in explode-h")))) -(defun cd (V4020) (set *home-directory* (if (= V4020 "") "" (shen.app V4020 "/" shen.a)))) +(defun cd (V3701) (set *home-directory* (if (= V3701 "") "" (shen.app V3701 "/" shen.a)))) -(defun shen.for-each (V4021 V4022) (cond ((= () V4022) true) ((cons? V4022) (let W4023 (V4021 (hd V4022)) (shen.for-each V4021 (tl V4022)))) (true (shen.f-error shen.for-each)))) +(defun map (V3702 V3703) (shen.map-h V3702 V3703 ())) -(defun map (V4024 V4025) (shen.map-h V4024 V4025 ())) +(defun shen.map-h (V3704 V3705 V3706) (cond ((= () V3705) (reverse V3706)) ((cons? V3705) (shen.map-h V3704 (tl V3705) (cons (V3704 (hd V3705)) V3706))) (true (simple-error "partial function shen.map-h")))) -(defun shen.map-h (V4026 V4027 V4028) (cond ((= () V4027) (reverse V4028)) ((cons? V4027) (shen.map-h V4026 (tl V4027) (cons (V4026 (hd V4027)) V4028))) (true (shen.f-error shen.map-h)))) +(defun length (V3707) (shen.length-h V3707 0)) -(defun length (V4029) (shen.length-h V4029 0)) +(defun shen.length-h (V3712 V3713) (cond ((= () V3712) V3713) (true (shen.length-h (tl V3712) (+ V3713 1))))) -(defun shen.length-h (V4034 V4035) (cond ((= () V4034) V4035) (true (shen.length-h (tl V4034) (+ V4035 1))))) +(defun occurrences (V3719 V3720) (cond ((= V3719 V3720) 1) ((cons? V3720) (+ (occurrences V3719 (hd V3720)) (occurrences V3719 (tl V3720)))) (true 0))) -(defun occurrences (V4041 V4042) (cond ((= V4041 V4042) 1) ((cons? V4042) (+ (occurrences V4041 (hd V4042)) (occurrences V4041 (tl V4042)))) (true 0))) - -(defun nth (V4047 V4048) (cond ((and (= 1 V4047) (cons? V4048)) (hd V4048)) ((cons? V4048) (nth (- V4047 1) (tl V4048))) (true (simple-error (cn "nth applied to " (shen.app V4047 (cn ", " (shen.app V4048 " +(defun nth (V3725 V3726) (cond ((and (= 1 V3725) (cons? V3726)) (hd V3726)) ((cons? V3726) (nth (- V3725 1) (tl V3726))) (true (simple-error (cn "nth applied to " (shen.app V3725 (cn ", " (shen.app V3726 " " shen.a)) shen.a)))))) -(defun integer? (V4049) (and (number? V4049) (let W4050 (shen.abs V4049) (shen.integer-test? W4050 (shen.magless W4050 1))))) +(defun integer? (V3727) (and (number? V3727) (let W3728 (shen.abs V3727) (shen.integer-test? W3728 (shen.magless W3728 1))))) -(defun shen.abs (V4051) (if (> V4051 0) V4051 (- 0 V4051))) +(defun shen.abs (V3729) (if (> V3729 0) V3729 (- 0 V3729))) -(defun shen.magless (V4052 V4053) (let W4054 (* V4053 2) (if (> W4054 V4052) V4053 (shen.magless V4052 W4054)))) +(defun shen.magless (V3730 V3731) (let W3732 (* V3731 2) (if (> W3732 V3730) V3731 (shen.magless V3730 W3732)))) -(defun shen.integer-test? (V4058 V4059) (cond ((= 0 V4058) true) ((> 1 V4058) false) (true (let W4060 (- V4058 V4059) (if (> 0 W4060) (integer? V4058) (shen.integer-test? W4060 V4059)))))) +(defun shen.integer-test? (V3736 V3737) (cond ((= 0 V3736) true) ((> 1 V3736) false) (true (let W3738 (- V3736 V3737) (if (> 0 W3738) (integer? V3736) (shen.integer-test? W3738 V3737)))))) -(defun mapcan (V4067 V4068) (cond ((= () V4068) ()) ((cons? V4068) (append (V4067 (hd V4068)) (mapcan V4067 (tl V4068)))) (true (simple-error "attempt to mapcan over a non-list +(defun mapcan (V3745 V3746) (cond ((= () V3746) ()) ((cons? V3746) (append (V3745 (hd V3746)) (mapcan V3745 (tl V3746)))) (true (simple-error "attempt to mapcan over a non-list ")))) -(defun == (V4074 V4075) (cond ((= V4074 V4075) true) (true false))) +(defun == (V3752 V3753) (cond ((= V3752 V3753) true) (true false))) -(defun bound? (V4076) (and (symbol? V4076) (let W4077 (trap-error (value V4076) (lambda Z4078 shen.this-symbol-is-unbound)) (if (= W4077 shen.this-symbol-is-unbound) false true)))) +(defun bound? (V3754) (and (symbol? V3754) (let W3755 (trap-error (value V3754) (lambda Z3756 shen.this-symbol-is-unbound)) (if (= W3755 shen.this-symbol-is-unbound) false true)))) -(defun shen.string->bytes (V4079) (cond ((= "" V4079) ()) (true (cons (string->n (pos V4079 0)) (shen.string->bytes (tlstr V4079)))))) +(defun shen.string->bytes (V3757) (cond ((= "" V3757) ()) (true (cons (string->n (pos V3757 0)) (shen.string->bytes (tlstr V3757)))))) -(defun maxinferences (V4080) (if (< V4080 0) (value shen.*maxinferences*) (if (integer? V4080) (set shen.*maxinferences* V4080) (simple-error "maxinferences expects an integer value +(defun maxinferences (V3758) (if (< V3758 0) (value shen.*maxinferences*) (if (integer? V3758) (set shen.*maxinferences* V3758) (simple-error "maxinferences expects an integer value ")))) (defun inferences () (value shen.*infs*)) -(defun protect (V4081) V4081) - -(defun sterror () (value *sterror*)) +(defun protect (V3759) V3759) (defun stoutput () (value *stoutput*)) -(defun string->symbol (V4082) (let W4083 (intern V4082) (if (symbol? W4083) W4083 (simple-error (cn "cannot intern " (shen.app V4082 " to a symbol" shen.s)))))) +(defun string->symbol (V3760) (let W3761 (intern V3760) (if (symbol? W3761) W3761 (simple-error (cn "cannot intern " (shen.app V3760 " to a symbol" shen.s)))))) -(defun optimise (V4086) (cond ((= + V4086) (set shen.*optimise* true)) ((= - V4086) (set shen.*optimise* false)) (true (simple-error "optimise expects a + or a -. +(defun optimise (V3764) (cond ((= + V3764) (set shen.*optimise* true)) ((= - V3764) (set shen.*optimise* false)) (true (simple-error "optimise expects a + or a -. ")))) (defun os () (value *os*)) @@ -225,7 +221,7 @@ (defun release () (value *release*)) -(defun package? (V4087) (cond ((= null V4087) true) (true (trap-error (do (external V4087) true) (lambda Z4088 false))))) +(defun package? (V3765) (cond ((= null V3765) true) (true (trap-error (do (external V3765) true) (lambda Z3766 false))))) (defun fail () shen.fail!)(defun userdefs () (value shen.*userdefs*)) @@ -235,31 +231,31 @@ (defun system-S? () (value shen.*shen-type-theory-enabled?*)) -(defun enable-type-theory (V4091) (cond ((= + V4091) (set shen.*shen-type-theory-enabled?* true)) ((= - V4091) (set shen.*shen-type-theory-enabled?* false)) (true (simple-error "enable-type-theory expects a + or a - +(defun enable-type-theory (V3769) (cond ((= + V3769) (set shen.*shen-type-theory-enabled?* true)) ((= - V3769) (set shen.*shen-type-theory-enabled?* false)) (true (simple-error "enable-type-theory expects a + or a - ")))) -(defun hush (V4094) (cond ((= + V4094) (set *hush* true)) ((= - V4094) (set *hush* false)) (true (simple-error "hush expects a + or a - +(defun shen.hush (V3772) (cond ((= + V3772) (set *hush* true)) ((= - V3772) (set *hush* false)) (true (simple-error "hush expects a + or a - ")))) -(defun tc (V4097) (cond ((= + V4097) (set shen.*tc* true)) ((= - V4097) (set shen.*tc* false)) (true (simple-error "tc expects a + or -")))) +(defun tc (V3775) (cond ((= + V3775) (set shen.*tc* true)) ((= - V3775) (set shen.*tc* false)) (true (simple-error "tc expects a + or -")))) -(defun destroy (V4098) (do (set shen.*sigf* (shen.unassoc V4098 (value shen.*sigf*))) V4098)) +(defun destroy (V3776) (do (set shen.*sigf* (shen.unassoc V3776 (value shen.*sigf*))) V3776)) -(defun shen.unassoc (V4108 V4109) (cond ((= () V4109) ()) ((and (cons? V4109) (and (cons? (hd V4109)) (= V4108 (hd (hd V4109))))) (tl V4109)) ((cons? V4109) (cons (hd V4109) (shen.unassoc V4108 (tl V4109)))) (true (simple-error "implementation error in shen.unassoc")))) +(defun shen.unassoc (V3786 V3787) (cond ((= () V3787) ()) ((and (cons? V3787) (and (cons? (hd V3787)) (= V3786 (hd (hd V3787))))) (tl V3787)) ((cons? V3787) (cons (hd V3787) (shen.unassoc V3786 (tl V3787)))) (true (simple-error "implementation error in shen.unassoc")))) -(defun in-package (V4110) (if (package? V4110) (set shen.*package* V4110) (simple-error (cn "package " (shen.app V4110 " does not exist +(defun in-package (V3788) (if (package? V3788) (set shen.*package* V3788) (simple-error (cn "package " (shen.app V3788 " does not exist " shen.a))))) -(defun write-to-file (V4111 V4112) (let W4113 (open V4111 out) (let W4114 (if (string? V4112) V4112 (shen.app V4112 "" shen.s)) (let W4115 (pr W4114 W4113) (let W4116 (close W4113) V4112))))) +(defun write-to-file (V3789 V3790) (let W3791 (open V3789 out) (let W3792 (if (string? V3790) V3790 (shen.app V3790 "" shen.s)) (let W3793 (pr W3792 W3791) (let W3794 (close W3791) V3790))))) (defun fresh () (shen.freshterm (gensym shen.t))) -(defun update-lambda-table (V4117 V4118) (let W4119 (put V4117 arity V4118 (value *property-vector*)) (let W4120 (shen.lambda-entry V4117) (let W4121 (shen.set-lambda-form-entry (cons V4117 W4120)) V4117)))) +(defun update-lambda-table (V3795 V3796) (let W3797 (put V3795 arity V3796 (value *property-vector*)) (let W3798 (shen.lambda-entry V3795) (let W3799 (set shen.*lambdatable* (cons W3798 (value shen.*lambdatable*))) V3795)))) -(defun specialise (V4124 V4125) (cond ((= 0 V4125) (do (set shen.*special* (remove V4124 (value shen.*special*))) (do (set shen.*extraspecial* (remove V4124 (value shen.*extraspecial*))) V4124))) ((= 1 V4125) (do (set shen.*special* (adjoin V4124 (value shen.*special*))) (do (set shen.*extraspecial* (remove V4124 (value shen.*extraspecial*))) V4124))) ((= 2 V4125) (do (set shen.*special* (remove V4124 (value shen.*special*))) (do (set shen.*extraspecial* (adjoin V4124 (value shen.*extraspecial*))) V4124))) (true (simple-error "specialise requires values of 0, 1 or 2 +(defun specialise (V3802 V3803) (cond ((= 0 V3803) (do (set shen.*special* (remove V3802 (value shen.*special*))) (do (set shen.*extraspecial* (remove V3802 (value shen.*extraspecial*))) V3802))) ((= 1 V3803) (do (set shen.*special* (adjoin V3802 (value shen.*special*))) (do (set shen.*extraspecial* (remove V3802 (value shen.*extraspecial*))) V3802))) ((= 2 V3803) (do (set shen.*special* (remove V3802 (value shen.*special*))) (do (set shen.*extraspecial* (adjoin V3802 (value shen.*extraspecial*))) V3802))) (true (simple-error "specialise requires values of 0, 1 or 2 ")))) -(defun absolute (V4126) (set *absolute* (cons V4126 (value *absolute*)))) +(defun absolute (V3804) (set *absolute* (cons V3804 (value *absolute*)))) -(defun unabsolute (V4127) (set *absolute* (remove V4127 (value *absolute*)))) +(defun unabsolute (V3805) (set *absolute* (remove V3805 (value *absolute*)))) diff --git a/kernel/klambda/t-star.kl b/kernel/klambda/t-star.kl index 4d88dff..0c6d2a6 100644 --- a/kernel/klambda/t-star.kl +++ b/kernel/klambda/t-star.kl @@ -1,102 +1,104 @@ -(defun shen.typecheck (V4853 V4854) (let W4855 (shen.extract-vars V4854) (let W4856 (shen.rectify-type V4854) (let W4857 (shen.curry V4853) (((((lambda Z4858 (lambda Z4859 (lambda Z4860 (lambda Z4861 (let W4862 (shen.newpv Z4858) (shen.gc Z4858 (do (shen.incinfs) (shen.insert-prolog-variables (receive (shen.deref W4855 Z4858)) (receive (shen.deref W4856 Z4858)) W4862 Z4858 Z4859 Z4860 (freeze (shen.toplevel-forms (receive (shen.deref W4857 Z4858)) W4862 Z4858 Z4859 Z4860 (freeze (return W4862 Z4858 Z4859 Z4860 Z4861)))))))))))) (shen.prolog-vector)) (@v true (@v 0 (vector 0)))) 0) (freeze true)))))) +(defun shen.typecheck (V4434 V4435) (let W4436 (shen.extract-vars V4435) (let W4437 (shen.rectify-type V4435) (let W4438 (shen.curry V4434) (((((lambda Z4439 (lambda Z4440 (lambda Z4441 (lambda Z4442 (let W4443 (shen.newpv Z4439) (shen.gc Z4439 (do (shen.incinfs) (shen.insert-prolog-variables (receive (shen.deref W4436 Z4439)) (receive (shen.deref W4437 Z4439)) W4443 Z4439 Z4440 Z4441 (freeze (shen.toplevel-forms (receive (shen.deref W4438 Z4439)) W4443 Z4439 Z4440 Z4441 (freeze (return W4443 Z4439 Z4440 Z4441 Z4442)))))))))))) (shen.prolog-vector)) (@v true (@v 0 (vector 0)))) 0) (freeze true)))))) -(defun shen.insert-prolog-variables (V4863 V4864 V4865 V4866 V4867 V4868 V4869) (let W4870 (if (shen.unlocked? V4867) (let W4871 (shen.lazyderef V4863 V4866) (if (= W4871 ()) (do (shen.incinfs) (is! V4864 V4865 V4866 V4867 V4868 V4869)) false)) false) (if (= W4870 false) (if (shen.unlocked? V4867) (let W4872 (shen.lazyderef V4863 V4866) (if (cons? W4872) (let W4873 (hd W4872) (let W4874 (tl W4872) (let W4875 (shen.newpv V4866) (shen.gc V4866 (do (shen.incinfs) (shen.insert-prolog-variables W4874 (subst (shen.deref W4875 V4866) W4873 V4864) V4865 V4866 V4867 V4868 V4869)))))) false)) false) W4870))) +(defun shen.insert-prolog-variables (V4444 V4445 V4446 V4447 V4448 V4449 V4450) (let W4451 (if (shen.unlocked? V4448) (let W4452 (shen.lazyderef V4444 V4447) (if (= W4452 ()) (do (shen.incinfs) (is! V4445 V4446 V4447 V4448 V4449 V4450)) false)) false) (if (= W4451 false) (if (shen.unlocked? V4448) (let W4453 (shen.lazyderef V4444 V4447) (if (cons? W4453) (let W4454 (hd W4453) (let W4455 (tl W4453) (let W4456 (shen.newpv V4447) (shen.gc V4447 (do (shen.incinfs) (shen.insert-prolog-variables W4455 (subst (shen.deref W4456 V4447) W4454 V4445) V4446 V4447 V4448 V4449 V4450)))))) false)) false) W4451))) -(defun shen.toplevel-forms (V4876 V4877 V4878 V4879 V4880 V4881) (let W4882 (+ V4880 1) (let W4883 (if (shen.unlocked? V4879) (let W4884 (shen.lazyderef V4876 V4878) (if (cons? W4884) (let W4885 (shen.lazyderef (hd W4884) V4878) (if (= W4885 define) (let W4886 (shen.lazyderef (tl W4884) V4878) (if (cons? W4886) (let W4887 (hd W4886) (let W4888 (tl W4886) (do (shen.incinfs) (when (shen.type-theory-enabled?) V4878 V4879 W4882 (freeze (shen.cut V4878 V4879 W4882 (freeze (shen.signal-def (value shen.*spy*) W4887 V4878 V4879 W4882 (freeze (shen.t* (cons define (cons W4887 W4888)) V4877 V4878 V4879 W4882 V4881)))))))))) false)) false)) false)) false) (if (= W4883 false) (let W4889 (if (shen.unlocked? V4879) (do (shen.incinfs) (shen.system-S (cons V4876 (cons (intern ":") (cons V4877 ()))) () V4878 V4879 W4882 V4881)) false) (if (= W4889 false) (shen.unlock V4879 W4882) W4889)) W4883)))) +(defun shen.toplevel-forms (V4457 V4458 V4459 V4460 V4461 V4462) (let W4463 (+ V4461 1) (let W4464 (if (shen.unlocked? V4460) (let W4465 (shen.lazyderef V4457 V4459) (if (cons? W4465) (let W4466 (shen.lazyderef (hd W4465) V4459) (if (= W4466 define) (let W4467 (shen.lazyderef (tl W4465) V4459) (if (cons? W4467) (let W4468 (hd W4467) (let W4469 (tl W4467) (do (shen.incinfs) (when (shen.type-theory-enabled?) V4459 V4460 W4463 (freeze (shen.cut V4459 V4460 W4463 (freeze (shen.signal-def (value shen.*spy*) W4468 V4459 V4460 W4463 (freeze (shen.t* (cons define (cons W4468 W4469)) V4458 V4459 V4460 W4463 V4462)))))))))) false)) false)) false)) false) (if (= W4464 false) (let W4470 (if (shen.unlocked? V4460) (do (shen.incinfs) (shen.system-S (cons V4457 (cons (intern ":") (cons V4458 ()))) () V4459 V4460 W4463 V4462)) false) (if (= W4470 false) (shen.unlock V4460 W4463) W4470)) W4464)))) -(defun shen.signal-def (V4890 V4891 V4892 V4893 V4894 V4895) (let W4896 (if (shen.unlocked? V4893) (let W4897 (shen.lazyderef V4890 V4892) (if (= W4897 false) (do (shen.incinfs) (thaw V4895)) false)) false) (if (= W4896 false) (if (shen.unlocked? V4893) (let W4898 (shen.lazyderef V4890 V4892) (if (= W4898 true) (let W4899 (shen.newpv V4892) (shen.gc V4892 (do (shen.incinfs) (is W4899 (pr (cn " -typechecking (fn " (shen.app (shen.deref V4891 V4892) ") -" shen.a)) (stoutput)) V4892 V4893 V4894 V4895)))) false)) false) W4896))) +(defun shen.signal-def (V4471 V4472 V4473 V4474 V4475 V4476) (let W4477 (if (shen.unlocked? V4474) (let W4478 (shen.lazyderef V4471 V4473) (if (= W4478 false) (do (shen.incinfs) (thaw V4476)) false)) false) (if (= W4477 false) (if (shen.unlocked? V4474) (let W4479 (shen.lazyderef V4471 V4473) (if (= W4479 true) (let W4480 (shen.newpv V4473) (shen.gc V4473 (do (shen.incinfs) (is W4480 (pr (cn " +typechecking (fn " (shen.app (shen.deref V4472 V4473) ") +" shen.a)) (stoutput)) V4473 V4474 V4475 V4476)))) false)) false) W4477))) -(defun shen.rectify-type (V4900) (shen.demodulate (shen.curry-type V4900))) +(defun shen.rectify-type (V4481) (shen.demodulate (shen.curry-type V4481))) -(defun shen.demodulate (V4901) (trap-error (let W4902 (shen.walk (lambda Z4903 (shen.demod Z4903)) V4901) (if (= W4902 V4901) V4901 (shen.demodulate W4902))) (lambda Z4904 V4901))) +(defun shen.demodulate (V4482) (trap-error (let W4483 (shen.walk (lambda Z4484 (shen.demod Z4484)) V4482) (if (= W4483 V4482) V4482 (shen.demodulate W4483))) (lambda Z4485 V4482))) -(defun shen.curry-type (V4905) (cond ((and (cons? V4905) (and (cons? (tl V4905)) (and (= --> (hd (tl V4905))) (and (cons? (tl (tl V4905))) (and (cons? (tl (tl (tl V4905)))) (= --> (hd (tl (tl (tl V4905)))))))))) (shen.curry-type (cons (hd V4905) (cons --> (cons (tl (tl V4905)) ()))))) ((and (cons? V4905) (and (cons? (hd V4905)) (and (= list (hd (hd V4905))) (and (cons? (tl (hd V4905))) (and (= () (tl (tl (hd V4905)))) (and (cons? (tl V4905)) (and (= ==> (hd (tl V4905))) (and (cons? (tl (tl V4905))) (= () (tl (tl (tl V4905)))))))))))) (shen.curry-type (cons (hd V4905) (cons --> (cons (cons str (cons (hd V4905) (tl (tl V4905)))) ()))))) ((and (cons? V4905) (and (cons? (tl V4905)) (and (= * (hd (tl V4905))) (and (cons? (tl (tl V4905))) (and (cons? (tl (tl (tl V4905)))) (= * (hd (tl (tl (tl V4905)))))))))) (shen.curry-type (cons (hd V4905) (cons * (cons (tl (tl V4905)) ()))))) ((cons? V4905) (map (lambda Z4906 (shen.curry-type Z4906)) V4905)) (true V4905))) +(defun shen.curry-type (V4486) (cond ((and (cons? V4486) (and (cons? (tl V4486)) (and (= --> (hd (tl V4486))) (and (cons? (tl (tl V4486))) (and (cons? (tl (tl (tl V4486)))) (= --> (hd (tl (tl (tl V4486)))))))))) (shen.curry-type (cons (hd V4486) (cons --> (cons (tl (tl V4486)) ()))))) ((and (cons? V4486) (and (cons? (hd V4486)) (and (= list (hd (hd V4486))) (and (cons? (tl (hd V4486))) (and (= () (tl (tl (hd V4486)))) (and (cons? (tl V4486)) (and (= ==> (hd (tl V4486))) (and (cons? (tl (tl V4486))) (= () (tl (tl (tl V4486)))))))))))) (shen.curry-type (cons (hd V4486) (cons --> (cons (cons str (cons (hd V4486) (tl (tl V4486)))) ()))))) ((and (cons? V4486) (and (cons? (tl V4486)) (and (= * (hd (tl V4486))) (and (cons? (tl (tl V4486))) (and (cons? (tl (tl (tl V4486)))) (= * (hd (tl (tl (tl V4486)))))))))) (shen.curry-type (cons (hd V4486) (cons * (cons (tl (tl V4486)) ()))))) ((cons? V4486) (map (lambda Z4487 (shen.curry-type Z4487)) V4486)) (true V4486))) -(defun shen.curry (V4907) (cond ((and (cons? V4907) (and (= define (hd V4907)) (cons? (tl V4907)))) V4907) ((and (cons? V4907) (and (= type (hd V4907)) (and (cons? (tl V4907)) (and (cons? (tl (tl V4907))) (= () (tl (tl (tl V4907)))))))) (cons type (cons (shen.curry (hd (tl V4907))) (tl (tl V4907))))) ((and (cons? V4907) (and (= input+ (hd V4907)) (and (cons? (tl V4907)) (and (cons? (tl (tl V4907))) (= () (tl (tl (tl V4907)))))))) (cons input+ (cons (hd (tl V4907)) (cons (shen.curry (hd (tl (tl V4907)))) ())))) ((and (cons? V4907) (shen.special? (hd V4907))) (cons (hd V4907) (map (lambda Z4908 (shen.curry Z4908)) (tl V4907)))) ((and (cons? V4907) (shen.extraspecial? (hd V4907))) V4907) ((and (cons? V4907) (and (cons? (tl V4907)) (cons? (tl (tl V4907))))) (shen.curry (cons (cons (hd V4907) (cons (hd (tl V4907)) ())) (tl (tl V4907))))) ((and (cons? V4907) (and (cons? (tl V4907)) (= () (tl (tl V4907))))) (cons (shen.curry (hd V4907)) (cons (shen.curry (hd (tl V4907))) ()))) (true V4907))) +(defun shen.curry (V4488) (cond ((and (cons? V4488) (and (= define (hd V4488)) (cons? (tl V4488)))) V4488) ((and (cons? V4488) (and (= type (hd V4488)) (and (cons? (tl V4488)) (and (cons? (tl (tl V4488))) (= () (tl (tl (tl V4488)))))))) (cons type (cons (shen.curry (hd (tl V4488))) (tl (tl V4488))))) ((and (cons? V4488) (shen.special? (hd V4488))) (cons (hd V4488) (map (lambda Z4489 (shen.curry Z4489)) (tl V4488)))) ((and (cons? V4488) (shen.extraspecial? (hd V4488))) V4488) ((and (cons? V4488) (and (cons? (tl V4488)) (cons? (tl (tl V4488))))) (shen.curry (cons (cons (hd V4488) (cons (hd (tl V4488)) ())) (tl (tl V4488))))) ((and (cons? V4488) (and (cons? (tl V4488)) (= () (tl (tl V4488))))) (cons (shen.curry (hd V4488)) (cons (shen.curry (hd (tl V4488))) ()))) (true V4488))) -(defun shen.special? (V4909) (element? V4909 (value shen.*special*))) +(defun shen.special? (V4490) (element? V4490 (value shen.*special*))) -(defun shen.extraspecial? (V4910) (element? V4910 (value shen.*extraspecial*))) +(defun shen.extraspecial? (V4491) (element? V4491 (value shen.*extraspecial*))) -(defun shen.system-S (V4911 V4912 V4913 V4914 V4915 V4916) (let W4917 (+ V4915 1) (let W4918 (if (shen.unlocked? V4914) (do (shen.incinfs) (when (shen.maxinfexceeded?) V4913 V4914 W4917 V4916)) false) (if (= W4918 false) (let W4919 (if (shen.unlocked? V4914) (let W4920 (shen.lazyderef V4911 V4913) (if (cons? W4920) (let W4921 (hd W4920) (let W4922 (shen.lazyderef (tl W4920) V4913) (if (cons? W4922) (let W4923 (hd W4922) (let W4924 (shen.lazyderef (tl W4922) V4913) (if (cons? W4924) (let W4925 (hd W4924) (let W4926 (shen.lazyderef (tl W4924) V4913) (if (= W4926 ()) (do (shen.incinfs) (when (= (shen.deref W4923 V4913) (intern ":")) V4913 V4914 W4917 (freeze (when (shen.type-theory-enabled?) V4913 V4914 W4917 (freeze (shen.cut V4913 V4914 W4917 (freeze (shen.system-S-h W4921 W4925 V4912 V4913 V4914 W4917 V4916)))))))) false))) false))) false))) false)) false) (if (= W4919 false) (let W4927 (if (shen.unlocked? V4914) (do (shen.incinfs) (when (value shen.*spy*) V4913 V4914 W4917 (freeze (shen.show V4911 V4912 V4913 V4914 W4917 V4916)))) false) (if (= W4927 false) (let W4928 (if (shen.unlocked? V4914) (do (shen.incinfs) (shen.search-user-datatypes V4911 V4912 (value shen.*datatypes*) V4913 V4914 W4917 V4916)) false) (if (= W4928 false) (shen.unlock V4914 W4917) W4928)) W4927)) W4919)) W4918)))) +(defun shen.system-S (V4492 V4493 V4494 V4495 V4496 V4497) (let W4498 (+ V4496 1) (let W4499 (if (shen.unlocked? V4495) (do (shen.incinfs) (when (shen.maxinfexceeded?) V4494 V4495 W4498 V4497)) false) (if (= W4499 false) (let W4500 (if (shen.unlocked? V4495) (let W4501 (shen.lazyderef V4492 V4494) (if (cons? W4501) (let W4502 (hd W4501) (let W4503 (shen.lazyderef (tl W4501) V4494) (if (cons? W4503) (let W4504 (hd W4503) (let W4505 (shen.lazyderef (tl W4503) V4494) (if (cons? W4505) (let W4506 (hd W4505) (let W4507 (shen.lazyderef (tl W4505) V4494) (if (= W4507 ()) (do (shen.incinfs) (when (= (shen.deref W4504 V4494) (intern ":")) V4494 V4495 W4498 (freeze (when (shen.type-theory-enabled?) V4494 V4495 W4498 (freeze (shen.cut V4494 V4495 W4498 (freeze (shen.system-S-h W4502 W4506 V4493 V4494 V4495 W4498 V4497)))))))) false))) false))) false))) false)) false) (if (= W4500 false) (let W4508 (if (shen.unlocked? V4495) (do (shen.incinfs) (when (value shen.*spy*) V4494 V4495 W4498 (freeze (shen.show V4492 V4493 V4494 V4495 W4498 V4497)))) false) (if (= W4508 false) (let W4509 (if (shen.unlocked? V4495) (do (shen.incinfs) (shen.search-user-datatypes V4492 V4493 (value shen.*datatypes*) V4494 V4495 W4498 V4497)) false) (if (= W4509 false) (shen.unlock V4495 W4498) W4509)) W4508)) W4500)) W4499)))) -(defun shen.show (V4935 V4936 V4937 V4938 V4939 V4940) (do (shen.line) (do (shen.show-p (shen.deref V4935 V4937)) (do (nl 2) (do (shen.show-assumptions (shen.deref V4936 V4937) 1) (do (shen.pause-for-user) false)))))) +(defun shen.show (V4516 V4517 V4518 V4519 V4520 V4521) (do (shen.line) (do (shen.show-p (shen.deref V4516 V4518)) (do (nl 2) (do (shen.show-assumptions (shen.deref V4517 V4518) 1) (do (shen.pause-for-user) false)))))) -(defun shen.line () (let W4941 (inferences) (pr (cn "____________________________________________________________ " (shen.app W4941 (cn " inference" (shen.app (if (= 1 W4941) "" "s") " +(defun shen.line () (let W4522 (inferences) (pr (cn "____________________________________________________________ " (shen.app W4522 (cn " inference" (shen.app (if (= 1 W4522) "" "s") " ?- " shen.a)) shen.a)) (stoutput)))) -(defun shen.show-p (V4942) (cond ((and (cons? V4942) (and (cons? (tl V4942)) (and (cons? (tl (tl V4942))) (and (= () (tl (tl (tl V4942)))) (= (hd (tl V4942)) (intern ":")))))) (do (shen.prterm (hd V4942)) (do (pr " : " (stoutput)) (pr (shen.app (hd (tl (tl V4942))) "" shen.r) (stoutput))))) (true (shen.prterm V4942)))) +(defun shen.show-p (V4523) (cond ((and (cons? V4523) (and (cons? (tl V4523)) (and (cons? (tl (tl V4523))) (and (= () (tl (tl (tl V4523)))) (= (hd (tl V4523)) (intern ":")))))) (do (shen.prterm (hd V4523)) (do (pr " : " (stoutput)) (pr (shen.app (hd (tl (tl V4523))) "" shen.r) (stoutput))))) (true (shen.prterm V4523)))) -(defun shen.prterm (V4943) (cond ((and (cons? V4943) (and (= cons (hd V4943)) (and (cons? (tl V4943)) (and (cons? (tl (tl V4943))) (= () (tl (tl (tl V4943)))))))) (do (pr "[" (stoutput)) (do (shen.prterm (hd (tl V4943))) (do (shen.prtl (hd (tl (tl V4943)))) (pr "]" (stoutput)))))) ((cons? V4943) (do (pr "(" (stoutput)) (do (shen.prterm (hd V4943)) (do (map (lambda Z4944 (do (pr " " (stoutput)) (shen.prterm Z4944))) (tl V4943)) (pr ")" (stoutput)))))) (true (print V4943)))) +(defun shen.prterm (V4524) (cond ((and (cons? V4524) (and (= cons (hd V4524)) (and (cons? (tl V4524)) (and (cons? (tl (tl V4524))) (= () (tl (tl (tl V4524)))))))) (do (pr "[" (stoutput)) (do (shen.prterm (hd (tl V4524))) (do (shen.prtl (hd (tl (tl V4524)))) (pr "]" (stoutput)))))) ((cons? V4524) (do (pr "(" (stoutput)) (do (shen.prterm (hd V4524)) (do (map (lambda Z4525 (do (pr " " (stoutput)) (shen.prterm Z4525))) (tl V4524)) (pr ")" (stoutput)))))) (true (print V4524)))) -(defun shen.prtl (V4945) (cond ((= () V4945) "") ((and (cons? V4945) (and (= cons (hd V4945)) (and (cons? (tl V4945)) (and (cons? (tl (tl V4945))) (= () (tl (tl (tl V4945)))))))) (do (pr " " (stoutput)) (do (shen.prterm (hd (tl V4945))) (shen.prtl (hd (tl (tl V4945))))))) (true (do (pr " | " (stoutput)) (shen.prterm V4945))))) +(defun shen.prtl (V4526) (cond ((= () V4526) "") ((and (cons? V4526) (and (= cons (hd V4526)) (and (cons? (tl V4526)) (and (cons? (tl (tl V4526))) (= () (tl (tl (tl V4526)))))))) (do (pr " " (stoutput)) (do (shen.prterm (hd (tl V4526))) (shen.prtl (hd (tl (tl V4526))))))) (true (do (pr " | " (stoutput)) (shen.prterm V4526))))) -(defun shen.show-assumptions (V4952 V4953) (cond ((= () V4952) (pr " -> " (stoutput))) ((cons? V4952) (do (pr (shen.app V4953 ". " shen.a) (stoutput)) (do (shen.show-p (hd V4952)) (do (nl 1) (shen.show-assumptions (tl V4952) (+ V4953 1)))))) (true (simple-error "implementation error in shen.show-assumptions")))) +(defun shen.show-assumptions (V4533 V4534) (cond ((= () V4533) (pr " +> " (stoutput))) ((cons? V4533) (do (pr (shen.app V4534 ". " shen.a) (stoutput)) (do (shen.show-p (hd V4533)) (do (nl 1) (shen.show-assumptions (tl V4533) (+ V4534 1)))))) (true (simple-error "implementation error in shen.show-assumptions")))) -(defun shen.pause-for-user () (let W4954 (read-byte (stinput)) (if (= W4954 94) (simple-error "input aborted +(defun shen.pause-for-user () (let W4535 (read-byte (stinput)) (if (= W4535 94) (simple-error "input aborted ") (nl 1)))) (defun shen.type-theory-enabled? () (value shen.*shen-type-theory-enabled?*)) (defun shen.maxinfexceeded? () (if (> (inferences) (value shen.*maxinferences*)) (simple-error "maximum inferences exceeded") false)) -(defun shen.system-S-h (V4955 V4956 V4957 V4958 V4959 V4960 V4961) (let W4962 (+ V4960 1) (let W4963 (if (shen.unlocked? V4959) (do (shen.incinfs) (when (value shen.*spy*) V4958 V4959 W4962 (freeze (shen.show (cons V4955 (cons (intern ":") (cons V4956 ()))) V4957 V4958 V4959 W4962 V4961)))) false) (if (= W4963 false) (let W4964 (if (shen.unlocked? V4959) (do (shen.incinfs) (when (not (cons? (shen.lazyderef V4955 V4958))) V4958 V4959 W4962 (freeze (shen.primitive V4955 V4956 V4958 V4959 W4962 V4961)))) false) (if (= W4964 false) (let W4965 (if (shen.unlocked? V4959) (do (shen.incinfs) (shen.by-hypothesis V4955 V4956 V4957 V4958 V4959 W4962 V4961)) false) (if (= W4965 false) (let W4966 (if (shen.unlocked? V4959) (let W4967 (shen.lazyderef V4955 V4958) (if (cons? W4967) (let W4968 (hd W4967) (let W4969 (shen.lazyderef (tl W4967) V4958) (if (= W4969 ()) (do (shen.incinfs) (shen.lookupsig W4968 (cons --> (cons V4956 ())) V4958 V4959 W4962 V4961)) false))) false)) false) (if (= W4966 false) (let W4970 (if (shen.unlocked? V4959) (let W4971 (shen.lazyderef V4955 V4958) (if (cons? W4971) (let W4972 (shen.lazyderef (hd W4971) V4958) (if (= W4972 fn) (let W4973 (shen.lazyderef (tl W4971) V4958) (if (cons? W4973) (let W4974 (hd W4973) (let W4975 (shen.lazyderef (tl W4973) V4958) (if (= W4975 ()) (do (shen.incinfs) (when (= (arity (shen.deref W4974 V4958)) 0) V4958 V4959 W4962 (freeze (shen.cut V4958 V4959 W4962 (freeze (shen.system-S-h (cons W4974 ()) V4956 V4957 V4958 V4959 W4962 V4961)))))) false))) false)) false)) false)) false) (if (= W4970 false) (let W4976 (if (shen.unlocked? V4959) (let W4977 (shen.lazyderef V4955 V4958) (if (cons? W4977) (let W4978 (shen.lazyderef (hd W4977) V4958) (if (= W4978 fn) (let W4979 (shen.lazyderef (tl W4977) V4958) (if (cons? W4979) (let W4980 (hd W4979) (let W4981 (shen.lazyderef (tl W4979) V4958) (if (= W4981 ()) (do (shen.incinfs) (shen.lookupsig W4980 V4956 V4958 V4959 W4962 V4961)) false))) false)) false)) false)) false) (if (= W4976 false) (let W4982 (if (shen.unlocked? V4959) (let W4983 (shen.lazyderef V4955 V4958) (if (cons? W4983) (let W4984 (hd W4983) (let W4985 (shen.lazyderef (tl W4983) V4958) (if (cons? W4985) (let W4986 (hd W4985) (let W4987 (shen.lazyderef (tl W4985) V4958) (if (= W4987 ()) (let W4988 (shen.newpv V4958) (shen.gc V4958 (do (shen.incinfs) (when (not (cons? (shen.lazyderef W4984 V4958))) V4958 V4959 W4962 (freeze (shen.lookupsig W4984 (cons W4988 (cons --> (cons V4956 ()))) V4958 V4959 W4962 (freeze (shen.system-S-h W4986 W4988 V4957 V4958 V4959 W4962 V4961)))))))) false))) false))) false)) false) (if (= W4982 false) (let W4989 (if (shen.unlocked? V4959) (let W4990 (shen.lazyderef V4955 V4958) (if (cons? W4990) (let W4991 (hd W4990) (let W4992 (shen.lazyderef (tl W4990) V4958) (if (cons? W4992) (let W4993 (hd W4992) (let W4994 (shen.lazyderef (tl W4992) V4958) (if (= W4994 ()) (let W4995 (shen.newpv V4958) (shen.gc V4958 (do (shen.incinfs) (shen.system-S-h W4991 (cons W4995 (cons --> (cons V4956 ()))) V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W4993 W4995 V4957 V4958 V4959 W4962 V4961)))))) false))) false))) false)) false) (if (= W4989 false) (let W4996 (if (shen.unlocked? V4959) (let W4997 (shen.lazyderef V4955 V4958) (if (cons? W4997) (let W4998 (shen.lazyderef (hd W4997) V4958) (if (= W4998 cons) (let W4999 (shen.lazyderef (tl W4997) V4958) (if (cons? W4999) (let W5000 (hd W4999) (let W5001 (shen.lazyderef (tl W4999) V4958) (if (cons? W5001) (let W5002 (hd W5001) (let W5003 (shen.lazyderef (tl W5001) V4958) (if (= W5003 ()) (let W5004 (shen.lazyderef V4956 V4958) (let W5005 (lambda Z5006 (do (shen.incinfs) (shen.system-S-h W5000 Z5006 V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W5002 (cons list (cons Z5006 ())) V4957 V4958 V4959 W4962 V4961))))) (if (cons? W5004) (let W5007 (shen.lazyderef (hd W5004) V4958) (let W5008 (freeze (let W5009 (shen.lazyderef (tl W5004) V4958) (let W5010 (lambda Z5011 (W5005 Z5011)) (if (cons? W5009) (let W5012 (hd W5009) (let W5013 (shen.lazyderef (tl W5009) V4958) (let W5014 (freeze (W5010 W5012)) (if (= W5013 ()) (thaw W5014) (if (shen.pvar? W5013) (shen.bind! W5013 () V4958 W5014) false))))) (if (shen.pvar? W5009) (let W5015 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5009 (cons W5015 ()) V4958 (freeze (W5010 W5015))))) false))))) (if (= W5007 list) (thaw W5008) (if (shen.pvar? W5007) (shen.bind! W5007 list V4958 W5008) false)))) (if (shen.pvar? W5004) (let W5016 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5004 (cons list (cons W5016 ())) V4958 (freeze (W5005 W5016))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4996 false) (let W5017 (if (shen.unlocked? V4959) (let W5018 (shen.lazyderef V4955 V4958) (if (cons? W5018) (let W5019 (shen.lazyderef (hd W5018) V4958) (if (= W5019 @p) (let W5020 (shen.lazyderef (tl W5018) V4958) (if (cons? W5020) (let W5021 (hd W5020) (let W5022 (shen.lazyderef (tl W5020) V4958) (if (cons? W5022) (let W5023 (hd W5022) (let W5024 (shen.lazyderef (tl W5022) V4958) (if (= W5024 ()) (let W5025 (shen.lazyderef V4956 V4958) (let W5026 (lambda Z5027 (lambda Z5028 (do (shen.incinfs) (shen.system-S-h W5021 Z5027 V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W5023 Z5028 V4957 V4958 V4959 W4962 V4961)))))) (if (cons? W5025) (let W5029 (hd W5025) (let W5030 (shen.lazyderef (tl W5025) V4958) (let W5031 (lambda Z5032 ((W5026 W5029) Z5032)) (if (cons? W5030) (let W5033 (shen.lazyderef (hd W5030) V4958) (let W5034 (freeze (let W5035 (shen.lazyderef (tl W5030) V4958) (let W5036 (lambda Z5037 (W5031 Z5037)) (if (cons? W5035) (let W5038 (hd W5035) (let W5039 (shen.lazyderef (tl W5035) V4958) (let W5040 (freeze (W5036 W5038)) (if (= W5039 ()) (thaw W5040) (if (shen.pvar? W5039) (shen.bind! W5039 () V4958 W5040) false))))) (if (shen.pvar? W5035) (let W5041 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5035 (cons W5041 ()) V4958 (freeze (W5036 W5041))))) false))))) (if (= W5033 *) (thaw W5034) (if (shen.pvar? W5033) (shen.bind! W5033 * V4958 W5034) false)))) (if (shen.pvar? W5030) (let W5042 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5030 (cons * (cons W5042 ())) V4958 (freeze (W5031 W5042))))) false))))) (if (shen.pvar? W5025) (let W5043 (shen.newpv V4958) (shen.gc V4958 (let W5044 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5025 (cons W5043 (cons * (cons W5044 ()))) V4958 (freeze ((W5026 W5043) W5044))))))) false)))) false))) false))) false)) false)) false)) false) (if (= W5017 false) (let W5045 (if (shen.unlocked? V4959) (let W5046 (shen.lazyderef V4955 V4958) (if (cons? W5046) (let W5047 (shen.lazyderef (hd W5046) V4958) (if (= W5047 @v) (let W5048 (shen.lazyderef (tl W5046) V4958) (if (cons? W5048) (let W5049 (hd W5048) (let W5050 (shen.lazyderef (tl W5048) V4958) (if (cons? W5050) (let W5051 (hd W5050) (let W5052 (shen.lazyderef (tl W5050) V4958) (if (= W5052 ()) (let W5053 (shen.lazyderef V4956 V4958) (let W5054 (lambda Z5055 (do (shen.incinfs) (shen.system-S-h W5049 Z5055 V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W5051 (cons vector (cons Z5055 ())) V4957 V4958 V4959 W4962 V4961))))) (if (cons? W5053) (let W5056 (shen.lazyderef (hd W5053) V4958) (let W5057 (freeze (let W5058 (shen.lazyderef (tl W5053) V4958) (let W5059 (lambda Z5060 (W5054 Z5060)) (if (cons? W5058) (let W5061 (hd W5058) (let W5062 (shen.lazyderef (tl W5058) V4958) (let W5063 (freeze (W5059 W5061)) (if (= W5062 ()) (thaw W5063) (if (shen.pvar? W5062) (shen.bind! W5062 () V4958 W5063) false))))) (if (shen.pvar? W5058) (let W5064 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5058 (cons W5064 ()) V4958 (freeze (W5059 W5064))))) false))))) (if (= W5056 vector) (thaw W5057) (if (shen.pvar? W5056) (shen.bind! W5056 vector V4958 W5057) false)))) (if (shen.pvar? W5053) (let W5065 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5053 (cons vector (cons W5065 ())) V4958 (freeze (W5054 W5065))))) false)))) false))) false))) false)) false)) false)) false) (if (= W5045 false) (let W5066 (if (shen.unlocked? V4959) (let W5067 (shen.lazyderef V4955 V4958) (if (cons? W5067) (let W5068 (shen.lazyderef (hd W5067) V4958) (if (= W5068 @s) (let W5069 (shen.lazyderef (tl W5067) V4958) (if (cons? W5069) (let W5070 (hd W5069) (let W5071 (shen.lazyderef (tl W5069) V4958) (if (cons? W5071) (let W5072 (hd W5071) (let W5073 (shen.lazyderef (tl W5071) V4958) (if (= W5073 ()) (let W5074 (shen.lazyderef V4956 V4958) (let W5075 (freeze (do (shen.incinfs) (shen.system-S-h W5070 string V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W5072 string V4957 V4958 V4959 W4962 V4961))))) (if (= W5074 string) (thaw W5075) (if (shen.pvar? W5074) (shen.bind! W5074 string V4958 W5075) false)))) false))) false))) false)) false)) false)) false) (if (= W5066 false) (let W5076 (if (shen.unlocked? V4959) (let W5077 (shen.lazyderef V4955 V4958) (if (cons? W5077) (let W5078 (shen.lazyderef (hd W5077) V4958) (if (= W5078 lambda) (let W5079 (shen.lazyderef (tl W5077) V4958) (if (cons? W5079) (let W5080 (hd W5079) (let W5081 (shen.lazyderef (tl W5079) V4958) (if (cons? W5081) (let W5082 (hd W5081) (let W5083 (shen.lazyderef (tl W5081) V4958) (if (= W5083 ()) (let W5084 (shen.lazyderef V4956 V4958) (let W5085 (lambda Z5086 (lambda Z5087 (let W5088 (shen.newpv V4958) (shen.gc V4958 (let W5089 (shen.newpv V4958) (shen.gc V4958 (do (shen.incinfs) (bind W5089 (shen.freshterm (shen.lazyderef W5080 V4958)) V4958 V4959 W4962 (freeze (bind W5088 (shen.beta (shen.lazyderef W5080 V4958) (shen.deref W5089 V4958) (shen.deref W5082 V4958)) V4958 V4959 W4962 (freeze (shen.system-S-h W5088 Z5087 (cons (cons W5089 (cons (intern ":") (cons Z5086 ()))) V4957) V4958 V4959 W4962 V4961)))))))))))) (if (cons? W5084) (let W5090 (hd W5084) (let W5091 (shen.lazyderef (tl W5084) V4958) (let W5092 (lambda Z5093 ((W5085 W5090) Z5093)) (if (cons? W5091) (let W5094 (shen.lazyderef (hd W5091) V4958) (let W5095 (freeze (let W5096 (shen.lazyderef (tl W5091) V4958) (let W5097 (lambda Z5098 (W5092 Z5098)) (if (cons? W5096) (let W5099 (hd W5096) (let W5100 (shen.lazyderef (tl W5096) V4958) (let W5101 (freeze (W5097 W5099)) (if (= W5100 ()) (thaw W5101) (if (shen.pvar? W5100) (shen.bind! W5100 () V4958 W5101) false))))) (if (shen.pvar? W5096) (let W5102 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5096 (cons W5102 ()) V4958 (freeze (W5097 W5102))))) false))))) (if (= W5094 -->) (thaw W5095) (if (shen.pvar? W5094) (shen.bind! W5094 --> V4958 W5095) false)))) (if (shen.pvar? W5091) (let W5103 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5091 (cons --> (cons W5103 ())) V4958 (freeze (W5092 W5103))))) false))))) (if (shen.pvar? W5084) (let W5104 (shen.newpv V4958) (shen.gc V4958 (let W5105 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5084 (cons W5104 (cons --> (cons W5105 ()))) V4958 (freeze ((W5085 W5104) W5105))))))) false)))) false))) false))) false)) false)) false)) false) (if (= W5076 false) (let W5106 (if (shen.unlocked? V4959) (let W5107 (shen.lazyderef V4955 V4958) (if (cons? W5107) (let W5108 (shen.lazyderef (hd W5107) V4958) (if (= W5108 let) (let W5109 (shen.lazyderef (tl W5107) V4958) (if (cons? W5109) (let W5110 (hd W5109) (let W5111 (shen.lazyderef (tl W5109) V4958) (if (cons? W5111) (let W5112 (hd W5111) (let W5113 (shen.lazyderef (tl W5111) V4958) (if (cons? W5113) (let W5114 (hd W5113) (let W5115 (shen.lazyderef (tl W5113) V4958) (if (= W5115 ()) (let W5116 (shen.newpv V4958) (shen.gc V4958 (let W5117 (shen.newpv V4958) (shen.gc V4958 (let W5118 (shen.newpv V4958) (shen.gc V4958 (do (shen.incinfs) (shen.system-S-h W5112 W5118 V4957 V4958 V4959 W4962 (freeze (bind W5117 (shen.freshterm (shen.lazyderef W5110 V4958)) V4958 V4959 W4962 (freeze (bind W5116 (shen.beta (shen.lazyderef W5110 V4958) (shen.lazyderef W5117 V4958) (shen.lazyderef W5114 V4958)) V4958 V4959 W4962 (freeze (shen.system-S-h W5116 V4956 (cons (cons W5117 (cons (intern ":") (cons W5118 ()))) V4957) V4958 V4959 W4962 V4961)))))))))))))) false))) false))) false))) false)) false)) false)) false) (if (= W5106 false) (let W5119 (if (shen.unlocked? V4959) (let W5120 (shen.lazyderef V4955 V4958) (if (cons? W5120) (let W5121 (shen.lazyderef (hd W5120) V4958) (if (= W5121 open) (let W5122 (shen.lazyderef (tl W5120) V4958) (if (cons? W5122) (let W5123 (hd W5122) (let W5124 (shen.lazyderef (tl W5122) V4958) (if (cons? W5124) (let W5125 (hd W5124) (let W5126 (shen.lazyderef (tl W5124) V4958) (if (= W5126 ()) (let W5127 (shen.lazyderef V4956 V4958) (let W5128 (lambda Z5129 (do (shen.incinfs) (is! W5125 Z5129 V4958 V4959 W4962 (freeze (when (element? (shen.lazyderef Z5129 V4958) (cons in (cons out ()))) V4958 V4959 W4962 (freeze (shen.system-S-h W5123 string V4957 V4958 V4959 W4962 V4961))))))) (if (cons? W5127) (let W5130 (shen.lazyderef (hd W5127) V4958) (let W5131 (freeze (let W5132 (shen.lazyderef (tl W5127) V4958) (let W5133 (lambda Z5134 (W5128 Z5134)) (if (cons? W5132) (let W5135 (hd W5132) (let W5136 (shen.lazyderef (tl W5132) V4958) (let W5137 (freeze (W5133 W5135)) (if (= W5136 ()) (thaw W5137) (if (shen.pvar? W5136) (shen.bind! W5136 () V4958 W5137) false))))) (if (shen.pvar? W5132) (let W5138 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5132 (cons W5138 ()) V4958 (freeze (W5133 W5138))))) false))))) (if (= W5130 stream) (thaw W5131) (if (shen.pvar? W5130) (shen.bind! W5130 stream V4958 W5131) false)))) (if (shen.pvar? W5127) (let W5139 (shen.newpv V4958) (shen.gc V4958 (shen.bind! W5127 (cons stream (cons W5139 ())) V4958 (freeze (W5128 W5139))))) false)))) false))) false))) false)) false)) false)) false) (if (= W5119 false) (let W5140 (if (shen.unlocked? V4959) (let W5141 (shen.lazyderef V4955 V4958) (if (cons? W5141) (let W5142 (shen.lazyderef (hd W5141) V4958) (if (= W5142 type) (let W5143 (shen.lazyderef (tl W5141) V4958) (if (cons? W5143) (let W5144 (hd W5143) (let W5145 (shen.lazyderef (tl W5143) V4958) (if (cons? W5145) (let W5146 (hd W5145) (let W5147 (shen.lazyderef (tl W5145) V4958) (if (= W5147 ()) (do (shen.incinfs) (shen.cut V4958 V4959 W4962 (freeze (is! (shen.rectify-type (shen.deref W5146 V4958)) V4956 V4958 V4959 W4962 (freeze (shen.system-S-h W5144 V4956 V4957 V4958 V4959 W4962 V4961)))))) false))) false))) false)) false)) false)) false) (if (= W5140 false) (let W5148 (if (shen.unlocked? V4959) (let W5149 (shen.lazyderef V4955 V4958) (if (cons? W5149) (let W5150 (shen.lazyderef (hd W5149) V4958) (if (= W5150 input+) (let W5151 (shen.lazyderef (tl W5149) V4958) (if (cons? W5151) (let W5152 (hd W5151) (let W5153 (shen.lazyderef (tl W5151) V4958) (if (cons? W5153) (let W5154 (hd W5153) (let W5155 (shen.lazyderef (tl W5153) V4958) (if (= W5155 ()) (do (shen.incinfs) (is! V4956 (shen.rectify-type (shen.deref W5152 V4958)) V4958 V4959 W4962 (freeze (shen.system-S-h W5154 (cons stream (cons in ())) V4957 V4958 V4959 W4962 V4961)))) false))) false))) false)) false)) false)) false) (if (= W5148 false) (let W5156 (if (shen.unlocked? V4959) (let W5157 (shen.lazyderef V4955 V4958) (if (cons? W5157) (let W5158 (shen.lazyderef (hd W5157) V4958) (if (= W5158 set) (let W5159 (shen.lazyderef (tl W5157) V4958) (if (cons? W5159) (let W5160 (hd W5159) (let W5161 (shen.lazyderef (tl W5159) V4958) (if (cons? W5161) (let W5162 (hd W5161) (let W5163 (shen.lazyderef (tl W5161) V4958) (if (= W5163 ()) (do (shen.incinfs) (shen.system-S-h W5160 symbol V4957 V4958 V4959 W4962 (freeze (shen.system-S-h (cons value (cons W5160 ())) V4956 V4957 V4958 V4959 W4962 (freeze (shen.system-S-h W5162 V4956 V4957 V4958 V4959 W4962 V4961)))))) false))) false))) false)) false)) false)) false) (if (= W5156 false) (let W5164 (if (shen.unlocked? V4959) (let W5165 (shen.newpv V4958) (shen.gc V4958 (do (shen.incinfs) (shen.l-rules V4957 W5165 false V4958 V4959 W4962 (freeze (shen.cut V4958 V4959 W4962 (freeze (shen.system-S-h V4955 V4956 W5165 V4958 V4959 W4962 V4961)))))))) false) (if (= W5164 false) (let W5166 (if (shen.unlocked? V4959) (do (shen.incinfs) (shen.search-user-datatypes (cons V4955 (cons (intern ":") (cons V4956 ()))) V4957 (value shen.*datatypes*) V4958 V4959 W4962 V4961)) false) (if (= W5166 false) (shen.unlock V4959 W4962) W5166)) W5164)) W5156)) W5148)) W5140)) W5119)) W5106)) W5076)) W5066)) W5045)) W5017)) W4996)) W4989)) W4982)) W4976)) W4970)) W4966)) W4965)) W4964)) W4963)))) +(defun shen.system-S-h (V4536 V4537 V4538 V4539 V4540 V4541 V4542) (let W4543 (+ V4541 1) (let W4544 (if (shen.unlocked? V4540) (do (shen.incinfs) (when (value shen.*spy*) V4539 V4540 W4543 (freeze (shen.show (cons V4536 (cons (intern ":") (cons V4537 ()))) V4538 V4539 V4540 W4543 V4542)))) false) (if (= W4544 false) (let W4545 (if (shen.unlocked? V4540) (do (shen.incinfs) (when (not (cons? (shen.lazyderef V4536 V4539))) V4539 V4540 W4543 (freeze (shen.primitive V4536 V4537 V4539 V4540 W4543 V4542)))) false) (if (= W4545 false) (let W4546 (if (shen.unlocked? V4540) (do (shen.incinfs) (shen.by-hypothesis V4536 V4537 V4538 V4539 V4540 W4543 V4542)) false) (if (= W4546 false) (let W4547 (if (shen.unlocked? V4540) (let W4548 (shen.lazyderef V4536 V4539) (if (cons? W4548) (let W4549 (hd W4548) (let W4550 (shen.lazyderef (tl W4548) V4539) (if (= W4550 ()) (do (shen.incinfs) (shen.lookupsig W4549 (cons --> (cons V4537 ())) V4539 V4540 W4543 V4542)) false))) false)) false) (if (= W4547 false) (let W4551 (if (shen.unlocked? V4540) (let W4552 (shen.lazyderef V4536 V4539) (if (cons? W4552) (let W4553 (shen.lazyderef (hd W4552) V4539) (if (= W4553 fn) (let W4554 (shen.lazyderef (tl W4552) V4539) (if (cons? W4554) (let W4555 (hd W4554) (let W4556 (shen.lazyderef (tl W4554) V4539) (if (= W4556 ()) (do (shen.incinfs) (when (= (arity (shen.deref W4555 V4539)) 0) V4539 V4540 W4543 (freeze (shen.cut V4539 V4540 W4543 (freeze (shen.system-S-h (cons W4555 ()) V4537 V4538 V4539 V4540 W4543 V4542)))))) false))) false)) false)) false)) false) (if (= W4551 false) (let W4557 (if (shen.unlocked? V4540) (let W4558 (shen.lazyderef V4536 V4539) (if (cons? W4558) (let W4559 (shen.lazyderef (hd W4558) V4539) (if (= W4559 fn) (let W4560 (shen.lazyderef (tl W4558) V4539) (if (cons? W4560) (let W4561 (hd W4560) (let W4562 (shen.lazyderef (tl W4560) V4539) (if (= W4562 ()) (do (shen.incinfs) (shen.lookupsig W4561 V4537 V4539 V4540 W4543 V4542)) false))) false)) false)) false)) false) (if (= W4557 false) (let W4563 (if (shen.unlocked? V4540) (let W4564 (shen.lazyderef V4536 V4539) (if (cons? W4564) (let W4565 (hd W4564) (let W4566 (shen.lazyderef (tl W4564) V4539) (if (cons? W4566) (let W4567 (hd W4566) (let W4568 (shen.lazyderef (tl W4566) V4539) (if (= W4568 ()) (let W4569 (shen.newpv V4539) (shen.gc V4539 (do (shen.incinfs) (when (not (cons? (shen.lazyderef W4565 V4539))) V4539 V4540 W4543 (freeze (shen.lookupsig W4565 (cons W4569 (cons --> (cons V4537 ()))) V4539 V4540 W4543 (freeze (shen.system-S-h W4567 W4569 V4538 V4539 V4540 W4543 V4542)))))))) false))) false))) false)) false) (if (= W4563 false) (let W4570 (if (shen.unlocked? V4540) (let W4571 (shen.lazyderef V4536 V4539) (if (cons? W4571) (let W4572 (hd W4571) (let W4573 (shen.lazyderef (tl W4571) V4539) (if (cons? W4573) (let W4574 (hd W4573) (let W4575 (shen.lazyderef (tl W4573) V4539) (if (= W4575 ()) (let W4576 (shen.newpv V4539) (shen.gc V4539 (do (shen.incinfs) (shen.system-S-h W4572 (cons W4576 (cons --> (cons V4537 ()))) V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4574 W4576 V4538 V4539 V4540 W4543 V4542)))))) false))) false))) false)) false) (if (= W4570 false) (let W4577 (if (shen.unlocked? V4540) (let W4578 (shen.lazyderef V4536 V4539) (if (cons? W4578) (let W4579 (shen.lazyderef (hd W4578) V4539) (if (= W4579 cons) (let W4580 (shen.lazyderef (tl W4578) V4539) (if (cons? W4580) (let W4581 (hd W4580) (let W4582 (shen.lazyderef (tl W4580) V4539) (if (cons? W4582) (let W4583 (hd W4582) (let W4584 (shen.lazyderef (tl W4582) V4539) (if (= W4584 ()) (let W4585 (shen.lazyderef V4537 V4539) (let W4586 (lambda Z4587 (do (shen.incinfs) (shen.system-S-h W4581 Z4587 V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4583 (cons list (cons Z4587 ())) V4538 V4539 V4540 W4543 V4542))))) (if (cons? W4585) (let W4588 (shen.lazyderef (hd W4585) V4539) (let W4589 (freeze (let W4590 (shen.lazyderef (tl W4585) V4539) (let W4591 (lambda Z4592 (W4586 Z4592)) (if (cons? W4590) (let W4593 (hd W4590) (let W4594 (shen.lazyderef (tl W4590) V4539) (let W4595 (freeze (W4591 W4593)) (if (= W4594 ()) (thaw W4595) (if (shen.pvar? W4594) (shen.bind! W4594 () V4539 W4595) false))))) (if (shen.pvar? W4590) (let W4596 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4590 (cons W4596 ()) V4539 (freeze (W4591 W4596))))) false))))) (if (= W4588 list) (thaw W4589) (if (shen.pvar? W4588) (shen.bind! W4588 list V4539 W4589) false)))) (if (shen.pvar? W4585) (let W4597 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4585 (cons list (cons W4597 ())) V4539 (freeze (W4586 W4597))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4577 false) (let W4598 (if (shen.unlocked? V4540) (let W4599 (shen.lazyderef V4536 V4539) (if (cons? W4599) (let W4600 (shen.lazyderef (hd W4599) V4539) (if (= W4600 @p) (let W4601 (shen.lazyderef (tl W4599) V4539) (if (cons? W4601) (let W4602 (hd W4601) (let W4603 (shen.lazyderef (tl W4601) V4539) (if (cons? W4603) (let W4604 (hd W4603) (let W4605 (shen.lazyderef (tl W4603) V4539) (if (= W4605 ()) (let W4606 (shen.lazyderef V4537 V4539) (let W4607 (lambda Z4608 (lambda Z4609 (do (shen.incinfs) (shen.system-S-h W4602 Z4608 V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4604 Z4609 V4538 V4539 V4540 W4543 V4542)))))) (if (cons? W4606) (let W4610 (hd W4606) (let W4611 (shen.lazyderef (tl W4606) V4539) (let W4612 (lambda Z4613 ((W4607 W4610) Z4613)) (if (cons? W4611) (let W4614 (shen.lazyderef (hd W4611) V4539) (let W4615 (freeze (let W4616 (shen.lazyderef (tl W4611) V4539) (let W4617 (lambda Z4618 (W4612 Z4618)) (if (cons? W4616) (let W4619 (hd W4616) (let W4620 (shen.lazyderef (tl W4616) V4539) (let W4621 (freeze (W4617 W4619)) (if (= W4620 ()) (thaw W4621) (if (shen.pvar? W4620) (shen.bind! W4620 () V4539 W4621) false))))) (if (shen.pvar? W4616) (let W4622 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4616 (cons W4622 ()) V4539 (freeze (W4617 W4622))))) false))))) (if (= W4614 *) (thaw W4615) (if (shen.pvar? W4614) (shen.bind! W4614 * V4539 W4615) false)))) (if (shen.pvar? W4611) (let W4623 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4611 (cons * (cons W4623 ())) V4539 (freeze (W4612 W4623))))) false))))) (if (shen.pvar? W4606) (let W4624 (shen.newpv V4539) (shen.gc V4539 (let W4625 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4606 (cons W4624 (cons * (cons W4625 ()))) V4539 (freeze ((W4607 W4624) W4625))))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4598 false) (let W4626 (if (shen.unlocked? V4540) (let W4627 (shen.lazyderef V4536 V4539) (if (cons? W4627) (let W4628 (shen.lazyderef (hd W4627) V4539) (if (= W4628 @v) (let W4629 (shen.lazyderef (tl W4627) V4539) (if (cons? W4629) (let W4630 (hd W4629) (let W4631 (shen.lazyderef (tl W4629) V4539) (if (cons? W4631) (let W4632 (hd W4631) (let W4633 (shen.lazyderef (tl W4631) V4539) (if (= W4633 ()) (let W4634 (shen.lazyderef V4537 V4539) (let W4635 (lambda Z4636 (do (shen.incinfs) (shen.system-S-h W4630 Z4636 V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4632 (cons vector (cons Z4636 ())) V4538 V4539 V4540 W4543 V4542))))) (if (cons? W4634) (let W4637 (shen.lazyderef (hd W4634) V4539) (let W4638 (freeze (let W4639 (shen.lazyderef (tl W4634) V4539) (let W4640 (lambda Z4641 (W4635 Z4641)) (if (cons? W4639) (let W4642 (hd W4639) (let W4643 (shen.lazyderef (tl W4639) V4539) (let W4644 (freeze (W4640 W4642)) (if (= W4643 ()) (thaw W4644) (if (shen.pvar? W4643) (shen.bind! W4643 () V4539 W4644) false))))) (if (shen.pvar? W4639) (let W4645 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4639 (cons W4645 ()) V4539 (freeze (W4640 W4645))))) false))))) (if (= W4637 vector) (thaw W4638) (if (shen.pvar? W4637) (shen.bind! W4637 vector V4539 W4638) false)))) (if (shen.pvar? W4634) (let W4646 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4634 (cons vector (cons W4646 ())) V4539 (freeze (W4635 W4646))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4626 false) (let W4647 (if (shen.unlocked? V4540) (let W4648 (shen.lazyderef V4536 V4539) (if (cons? W4648) (let W4649 (shen.lazyderef (hd W4648) V4539) (if (= W4649 @s) (let W4650 (shen.lazyderef (tl W4648) V4539) (if (cons? W4650) (let W4651 (hd W4650) (let W4652 (shen.lazyderef (tl W4650) V4539) (if (cons? W4652) (let W4653 (hd W4652) (let W4654 (shen.lazyderef (tl W4652) V4539) (if (= W4654 ()) (let W4655 (shen.lazyderef V4537 V4539) (let W4656 (freeze (do (shen.incinfs) (shen.system-S-h W4651 string V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4653 string V4538 V4539 V4540 W4543 V4542))))) (if (= W4655 string) (thaw W4656) (if (shen.pvar? W4655) (shen.bind! W4655 string V4539 W4656) false)))) false))) false))) false)) false)) false)) false) (if (= W4647 false) (let W4657 (if (shen.unlocked? V4540) (let W4658 (shen.lazyderef V4536 V4539) (if (cons? W4658) (let W4659 (shen.lazyderef (hd W4658) V4539) (if (= W4659 lambda) (let W4660 (shen.lazyderef (tl W4658) V4539) (if (cons? W4660) (let W4661 (hd W4660) (let W4662 (shen.lazyderef (tl W4660) V4539) (if (cons? W4662) (let W4663 (hd W4662) (let W4664 (shen.lazyderef (tl W4662) V4539) (if (= W4664 ()) (let W4665 (shen.lazyderef V4537 V4539) (let W4666 (lambda Z4667 (lambda Z4668 (let W4669 (shen.newpv V4539) (shen.gc V4539 (let W4670 (shen.newpv V4539) (shen.gc V4539 (do (shen.incinfs) (bind W4670 (shen.freshterm (shen.lazyderef W4661 V4539)) V4539 V4540 W4543 (freeze (bind W4669 (shen.beta (shen.lazyderef W4661 V4539) (shen.deref W4670 V4539) (shen.deref W4663 V4539)) V4539 V4540 W4543 (freeze (shen.system-S-h W4669 Z4668 (cons (cons W4670 (cons (intern ":") (cons Z4667 ()))) V4538) V4539 V4540 W4543 V4542)))))))))))) (if (cons? W4665) (let W4671 (hd W4665) (let W4672 (shen.lazyderef (tl W4665) V4539) (let W4673 (lambda Z4674 ((W4666 W4671) Z4674)) (if (cons? W4672) (let W4675 (shen.lazyderef (hd W4672) V4539) (let W4676 (freeze (let W4677 (shen.lazyderef (tl W4672) V4539) (let W4678 (lambda Z4679 (W4673 Z4679)) (if (cons? W4677) (let W4680 (hd W4677) (let W4681 (shen.lazyderef (tl W4677) V4539) (let W4682 (freeze (W4678 W4680)) (if (= W4681 ()) (thaw W4682) (if (shen.pvar? W4681) (shen.bind! W4681 () V4539 W4682) false))))) (if (shen.pvar? W4677) (let W4683 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4677 (cons W4683 ()) V4539 (freeze (W4678 W4683))))) false))))) (if (= W4675 -->) (thaw W4676) (if (shen.pvar? W4675) (shen.bind! W4675 --> V4539 W4676) false)))) (if (shen.pvar? W4672) (let W4684 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4672 (cons --> (cons W4684 ())) V4539 (freeze (W4673 W4684))))) false))))) (if (shen.pvar? W4665) (let W4685 (shen.newpv V4539) (shen.gc V4539 (let W4686 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4665 (cons W4685 (cons --> (cons W4686 ()))) V4539 (freeze ((W4666 W4685) W4686))))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4657 false) (let W4687 (if (shen.unlocked? V4540) (let W4688 (shen.lazyderef V4536 V4539) (if (cons? W4688) (let W4689 (shen.lazyderef (hd W4688) V4539) (if (= W4689 let) (let W4690 (shen.lazyderef (tl W4688) V4539) (if (cons? W4690) (let W4691 (hd W4690) (let W4692 (shen.lazyderef (tl W4690) V4539) (if (cons? W4692) (let W4693 (hd W4692) (let W4694 (shen.lazyderef (tl W4692) V4539) (if (cons? W4694) (let W4695 (hd W4694) (let W4696 (shen.lazyderef (tl W4694) V4539) (if (= W4696 ()) (let W4697 (shen.newpv V4539) (shen.gc V4539 (let W4698 (shen.newpv V4539) (shen.gc V4539 (let W4699 (shen.newpv V4539) (shen.gc V4539 (do (shen.incinfs) (shen.system-S-h W4693 W4699 V4538 V4539 V4540 W4543 (freeze (bind W4698 (shen.freshterm (shen.lazyderef W4691 V4539)) V4539 V4540 W4543 (freeze (bind W4697 (shen.beta (shen.lazyderef W4691 V4539) (shen.lazyderef W4698 V4539) (shen.lazyderef W4695 V4539)) V4539 V4540 W4543 (freeze (shen.system-S-h W4697 V4537 (cons (cons W4698 (cons (intern ":") (cons W4699 ()))) V4538) V4539 V4540 W4543 V4542)))))))))))))) false))) false))) false))) false)) false)) false)) false) (if (= W4687 false) (let W4700 (if (shen.unlocked? V4540) (let W4701 (shen.lazyderef V4536 V4539) (if (cons? W4701) (let W4702 (shen.lazyderef (hd W4701) V4539) (if (= W4702 open) (let W4703 (shen.lazyderef (tl W4701) V4539) (if (cons? W4703) (let W4704 (hd W4703) (let W4705 (shen.lazyderef (tl W4703) V4539) (if (cons? W4705) (let W4706 (hd W4705) (let W4707 (shen.lazyderef (tl W4705) V4539) (if (= W4707 ()) (let W4708 (shen.lazyderef V4537 V4539) (let W4709 (lambda Z4710 (do (shen.incinfs) (is! W4706 Z4710 V4539 V4540 W4543 (freeze (when (element? (shen.lazyderef Z4710 V4539) (cons in (cons out ()))) V4539 V4540 W4543 (freeze (shen.system-S-h W4704 string V4538 V4539 V4540 W4543 V4542))))))) (if (cons? W4708) (let W4711 (shen.lazyderef (hd W4708) V4539) (let W4712 (freeze (let W4713 (shen.lazyderef (tl W4708) V4539) (let W4714 (lambda Z4715 (W4709 Z4715)) (if (cons? W4713) (let W4716 (hd W4713) (let W4717 (shen.lazyderef (tl W4713) V4539) (let W4718 (freeze (W4714 W4716)) (if (= W4717 ()) (thaw W4718) (if (shen.pvar? W4717) (shen.bind! W4717 () V4539 W4718) false))))) (if (shen.pvar? W4713) (let W4719 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4713 (cons W4719 ()) V4539 (freeze (W4714 W4719))))) false))))) (if (= W4711 stream) (thaw W4712) (if (shen.pvar? W4711) (shen.bind! W4711 stream V4539 W4712) false)))) (if (shen.pvar? W4708) (let W4720 (shen.newpv V4539) (shen.gc V4539 (shen.bind! W4708 (cons stream (cons W4720 ())) V4539 (freeze (W4709 W4720))))) false)))) false))) false))) false)) false)) false)) false) (if (= W4700 false) (let W4721 (if (shen.unlocked? V4540) (let W4722 (shen.lazyderef V4536 V4539) (if (cons? W4722) (let W4723 (shen.lazyderef (hd W4722) V4539) (if (= W4723 type) (let W4724 (shen.lazyderef (tl W4722) V4539) (if (cons? W4724) (let W4725 (hd W4724) (let W4726 (shen.lazyderef (tl W4724) V4539) (if (cons? W4726) (let W4727 (hd W4726) (let W4728 (shen.lazyderef (tl W4726) V4539) (if (= W4728 ()) (do (shen.incinfs) (shen.cut V4539 V4540 W4543 (freeze (is! (shen.rectify-type (shen.deref W4727 V4539)) V4537 V4539 V4540 W4543 (freeze (shen.system-S-h W4725 V4537 V4538 V4539 V4540 W4543 V4542)))))) false))) false))) false)) false)) false)) false) (if (= W4721 false) (let W4729 (if (shen.unlocked? V4540) (let W4730 (shen.lazyderef V4536 V4539) (if (cons? W4730) (let W4731 (shen.lazyderef (hd W4730) V4539) (if (= W4731 shen.input-h+) (let W4732 (shen.lazyderef (tl W4730) V4539) (if (cons? W4732) (let W4733 (hd W4732) (let W4734 (shen.lazyderef (tl W4732) V4539) (if (cons? W4734) (let W4735 (hd W4734) (let W4736 (shen.lazyderef (tl W4734) V4539) (if (= W4736 ()) (do (shen.incinfs) (is V4537 (shen.rectify-type (shen.rdecons (shen.deref W4733 V4539))) V4539 V4540 W4543 (freeze (shen.system-S-h W4735 (cons stream (cons in ())) V4538 V4539 V4540 W4543 V4542)))) false))) false))) false)) false)) false)) false) (if (= W4729 false) (let W4737 (if (shen.unlocked? V4540) (let W4738 (shen.lazyderef V4536 V4539) (if (cons? W4738) (let W4739 (shen.lazyderef (hd W4738) V4539) (if (= W4739 set) (let W4740 (shen.lazyderef (tl W4738) V4539) (if (cons? W4740) (let W4741 (hd W4740) (let W4742 (shen.lazyderef (tl W4740) V4539) (if (cons? W4742) (let W4743 (hd W4742) (let W4744 (shen.lazyderef (tl W4742) V4539) (if (= W4744 ()) (do (shen.incinfs) (shen.system-S-h W4741 symbol V4538 V4539 V4540 W4543 (freeze (shen.system-S-h (cons value (cons W4741 ())) V4537 V4538 V4539 V4540 W4543 (freeze (shen.system-S-h W4743 V4537 V4538 V4539 V4540 W4543 V4542)))))) false))) false))) false)) false)) false)) false) (if (= W4737 false) (let W4745 (if (shen.unlocked? V4540) (let W4746 (shen.newpv V4539) (shen.gc V4539 (do (shen.incinfs) (shen.l-rules V4538 W4746 false V4539 V4540 W4543 (freeze (shen.cut V4539 V4540 W4543 (freeze (shen.system-S-h V4536 V4537 W4746 V4539 V4540 W4543 V4542)))))))) false) (if (= W4745 false) (let W4747 (if (shen.unlocked? V4540) (do (shen.incinfs) (shen.search-user-datatypes (cons V4536 (cons (intern ":") (cons V4537 ()))) V4538 (value shen.*datatypes*) V4539 V4540 W4543 V4542)) false) (if (= W4747 false) (shen.unlock V4540 W4543) W4747)) W4745)) W4737)) W4729)) W4721)) W4700)) W4687)) W4657)) W4647)) W4626)) W4598)) W4577)) W4570)) W4563)) W4557)) W4551)) W4547)) W4546)) W4545)) W4544)))) -(defun shen.primitive (V5167 V5168 V5169 V5170 V5171 V5172) (let W5173 (if (shen.unlocked? V5170) (let W5174 (shen.lazyderef V5168 V5169) (let W5175 (freeze (do (shen.incinfs) (when (number? (shen.lazyderef V5167 V5169)) V5169 V5170 V5171 V5172))) (if (= W5174 number) (thaw W5175) (if (shen.pvar? W5174) (shen.bind! W5174 number V5169 W5175) false)))) false) (if (= W5173 false) (let W5176 (if (shen.unlocked? V5170) (let W5177 (shen.lazyderef V5168 V5169) (let W5178 (freeze (do (shen.incinfs) (when (boolean? (shen.lazyderef V5167 V5169)) V5169 V5170 V5171 V5172))) (if (= W5177 boolean) (thaw W5178) (if (shen.pvar? W5177) (shen.bind! W5177 boolean V5169 W5178) false)))) false) (if (= W5176 false) (let W5179 (if (shen.unlocked? V5170) (let W5180 (shen.lazyderef V5168 V5169) (let W5181 (freeze (do (shen.incinfs) (when (string? (shen.lazyderef V5167 V5169)) V5169 V5170 V5171 V5172))) (if (= W5180 string) (thaw W5181) (if (shen.pvar? W5180) (shen.bind! W5180 string V5169 W5181) false)))) false) (if (= W5179 false) (let W5182 (if (shen.unlocked? V5170) (let W5183 (shen.lazyderef V5168 V5169) (let W5184 (freeze (do (shen.incinfs) (when (symbol? (shen.lazyderef V5167 V5169)) V5169 V5170 V5171 V5172))) (if (= W5183 symbol) (thaw W5184) (if (shen.pvar? W5183) (shen.bind! W5183 symbol V5169 W5184) false)))) false) (if (= W5182 false) (if (shen.unlocked? V5170) (let W5185 (shen.lazyderef V5167 V5169) (if (= W5185 ()) (let W5186 (shen.lazyderef V5168 V5169) (let W5187 (lambda Z5188 (do (shen.incinfs) (thaw V5172))) (if (cons? W5186) (let W5189 (shen.lazyderef (hd W5186) V5169) (let W5190 (freeze (let W5191 (shen.lazyderef (tl W5186) V5169) (let W5192 (lambda Z5193 (W5187 Z5193)) (if (cons? W5191) (let W5194 (hd W5191) (let W5195 (shen.lazyderef (tl W5191) V5169) (let W5196 (freeze (W5192 W5194)) (if (= W5195 ()) (thaw W5196) (if (shen.pvar? W5195) (shen.bind! W5195 () V5169 W5196) false))))) (if (shen.pvar? W5191) (let W5197 (shen.newpv V5169) (shen.gc V5169 (shen.bind! W5191 (cons W5197 ()) V5169 (freeze (W5192 W5197))))) false))))) (if (= W5189 list) (thaw W5190) (if (shen.pvar? W5189) (shen.bind! W5189 list V5169 W5190) false)))) (if (shen.pvar? W5186) (let W5198 (shen.newpv V5169) (shen.gc V5169 (shen.bind! W5186 (cons list (cons W5198 ())) V5169 (freeze (W5187 W5198))))) false)))) false)) false) W5182)) W5179)) W5176)) W5173))) +(defun shen.rdecons (V4748) (cond ((and (cons? V4748) (and (= cons (hd V4748)) (and (cons? (tl V4748)) (and (cons? (tl (tl V4748))) (= () (tl (tl (tl V4748)))))))) (cons (shen.rdecons (hd (tl V4748))) (shen.rdecons (hd (tl (tl V4748)))))) ((cons? V4748) (cons (shen.rdecons (hd V4748)) (shen.rdecons (tl V4748)))) (true V4748))) -(defun shen.by-hypothesis (V5199 V5200 V5201 V5202 V5203 V5204 V5205) (let W5206 (if (shen.unlocked? V5203) (let W5207 (shen.lazyderef V5201 V5202) (if (cons? W5207) (let W5208 (shen.lazyderef (hd W5207) V5202) (if (cons? W5208) (let W5209 (hd W5208) (let W5210 (shen.lazyderef (tl W5208) V5202) (if (cons? W5210) (let W5211 (hd W5210) (let W5212 (shen.lazyderef (tl W5210) V5202) (if (cons? W5212) (let W5213 (hd W5212) (let W5214 (shen.lazyderef (tl W5212) V5202) (if (= W5214 ()) (do (shen.incinfs) (when (= (shen.deref W5211 V5202) (intern ":")) V5202 V5203 V5204 (freeze (when (= (shen.deref V5199 V5202) (shen.deref W5209 V5202)) V5202 V5203 V5204 (freeze (is! V5200 W5213 V5202 V5203 V5204 V5205)))))) false))) false))) false))) false)) false)) false) (if (= W5206 false) (if (shen.unlocked? V5203) (let W5215 (shen.lazyderef V5201 V5202) (if (cons? W5215) (let W5216 (tl W5215) (do (shen.incinfs) (shen.by-hypothesis V5199 V5200 W5216 V5202 V5203 V5204 V5205))) false)) false) W5206))) +(defun shen.primitive (V4749 V4750 V4751 V4752 V4753 V4754) (let W4755 (if (shen.unlocked? V4752) (let W4756 (shen.lazyderef V4750 V4751) (let W4757 (freeze (do (shen.incinfs) (when (number? (shen.lazyderef V4749 V4751)) V4751 V4752 V4753 V4754))) (if (= W4756 number) (thaw W4757) (if (shen.pvar? W4756) (shen.bind! W4756 number V4751 W4757) false)))) false) (if (= W4755 false) (let W4758 (if (shen.unlocked? V4752) (let W4759 (shen.lazyderef V4750 V4751) (let W4760 (freeze (do (shen.incinfs) (when (boolean? (shen.lazyderef V4749 V4751)) V4751 V4752 V4753 V4754))) (if (= W4759 boolean) (thaw W4760) (if (shen.pvar? W4759) (shen.bind! W4759 boolean V4751 W4760) false)))) false) (if (= W4758 false) (let W4761 (if (shen.unlocked? V4752) (let W4762 (shen.lazyderef V4750 V4751) (let W4763 (freeze (do (shen.incinfs) (when (string? (shen.lazyderef V4749 V4751)) V4751 V4752 V4753 V4754))) (if (= W4762 string) (thaw W4763) (if (shen.pvar? W4762) (shen.bind! W4762 string V4751 W4763) false)))) false) (if (= W4761 false) (let W4764 (if (shen.unlocked? V4752) (let W4765 (shen.lazyderef V4750 V4751) (let W4766 (freeze (do (shen.incinfs) (when (symbol? (shen.lazyderef V4749 V4751)) V4751 V4752 V4753 V4754))) (if (= W4765 symbol) (thaw W4766) (if (shen.pvar? W4765) (shen.bind! W4765 symbol V4751 W4766) false)))) false) (if (= W4764 false) (if (shen.unlocked? V4752) (let W4767 (shen.lazyderef V4749 V4751) (if (= W4767 ()) (let W4768 (shen.lazyderef V4750 V4751) (let W4769 (lambda Z4770 (do (shen.incinfs) (thaw V4754))) (if (cons? W4768) (let W4771 (shen.lazyderef (hd W4768) V4751) (let W4772 (freeze (let W4773 (shen.lazyderef (tl W4768) V4751) (let W4774 (lambda Z4775 (W4769 Z4775)) (if (cons? W4773) (let W4776 (hd W4773) (let W4777 (shen.lazyderef (tl W4773) V4751) (let W4778 (freeze (W4774 W4776)) (if (= W4777 ()) (thaw W4778) (if (shen.pvar? W4777) (shen.bind! W4777 () V4751 W4778) false))))) (if (shen.pvar? W4773) (let W4779 (shen.newpv V4751) (shen.gc V4751 (shen.bind! W4773 (cons W4779 ()) V4751 (freeze (W4774 W4779))))) false))))) (if (= W4771 list) (thaw W4772) (if (shen.pvar? W4771) (shen.bind! W4771 list V4751 W4772) false)))) (if (shen.pvar? W4768) (let W4780 (shen.newpv V4751) (shen.gc V4751 (shen.bind! W4768 (cons list (cons W4780 ())) V4751 (freeze (W4769 W4780))))) false)))) false)) false) W4764)) W4761)) W4758)) W4755))) -(defun shen.lookupsig (V5217 V5218 V5219 V5220 V5221 V5222) (if (shen.unlocked? V5220) (do (shen.incinfs) (shen.sigf (assoc V5217 (value shen.*sigf*)) V5218 V5219 V5220 V5221 V5222)) false)) +(defun shen.by-hypothesis (V4781 V4782 V4783 V4784 V4785 V4786 V4787) (let W4788 (if (shen.unlocked? V4785) (let W4789 (shen.lazyderef V4783 V4784) (if (cons? W4789) (let W4790 (shen.lazyderef (hd W4789) V4784) (if (cons? W4790) (let W4791 (hd W4790) (let W4792 (shen.lazyderef (tl W4790) V4784) (if (cons? W4792) (let W4793 (hd W4792) (let W4794 (shen.lazyderef (tl W4792) V4784) (if (cons? W4794) (let W4795 (hd W4794) (let W4796 (shen.lazyderef (tl W4794) V4784) (if (= W4796 ()) (do (shen.incinfs) (when (= (shen.deref W4793 V4784) (intern ":")) V4784 V4785 V4786 (freeze (when (= (shen.deref V4781 V4784) (shen.deref W4791 V4784)) V4784 V4785 V4786 (freeze (is! V4782 W4795 V4784 V4785 V4786 V4787)))))) false))) false))) false))) false)) false)) false) (if (= W4788 false) (if (shen.unlocked? V4785) (let W4797 (shen.lazyderef V4783 V4784) (if (cons? W4797) (let W4798 (tl W4797) (do (shen.incinfs) (shen.by-hypothesis V4781 V4782 W4798 V4784 V4785 V4786 V4787))) false)) false) W4788))) -(defun shen.sigf (V5237 V5238 V5239 V5240 V5241 V5242) (cond ((cons? V5237) ((((((tl V5237) V5238) V5239) V5240) V5241) V5242)) (true false))) +(defun shen.lookupsig (V4799 V4800 V4801 V4802 V4803 V4804) (if (shen.unlocked? V4802) (do (shen.incinfs) (shen.sigf (assoc V4799 (value shen.*sigf*)) V4800 V4801 V4802 V4803 V4804)) false)) -(defun shen.freshterm (V5243) (let W5244 (absvector 3) (let W5245 (address-> W5244 0 shen.print-freshterm) (let W5246 (address-> W5245 1 V5243) (let W5247 (address-> W5246 2 (set shen.*gensym* (+ 1 (value shen.*gensym*)))) W5247))))) +(defun shen.sigf (V4819 V4820 V4821 V4822 V4823 V4824) (cond ((cons? V4819) ((((((tl V4819) V4820) V4821) V4822) V4823) V4824)) (true false))) -(defun shen.print-freshterm (V5248) (cn "&&" (str (<-address V5248 1)))) +(defun shen.freshterm (V4825) (let W4826 (absvector 3) (let W4827 (address-> W4826 0 shen.print-freshterm) (let W4828 (address-> W4827 1 V4825) (let W4829 (address-> W4828 2 (set shen.*gensym* (+ 1 (value shen.*gensym*)))) W4829))))) -(defun shen.search-user-datatypes (V5249 V5250 V5251 V5252 V5253 V5254 V5255) (let W5256 (if (shen.unlocked? V5253) (let W5257 (shen.lazyderef V5251 V5252) (if (cons? W5257) (let W5258 (shen.lazyderef (hd W5257) V5252) (if (cons? W5258) (let W5259 (tl W5258) (do (shen.incinfs) (call (((shen.deref W5259 V5252) (shen.deref V5249 V5252)) (shen.deref V5250 V5252)) V5252 V5253 V5254 V5255))) false)) false)) false) (if (= W5256 false) (if (shen.unlocked? V5253) (let W5260 (shen.lazyderef V5251 V5252) (if (cons? W5260) (let W5261 (tl W5260) (do (shen.incinfs) (shen.search-user-datatypes V5249 V5250 W5261 V5252 V5253 V5254 V5255))) false)) false) W5256))) +(defun shen.print-freshterm (V4830) (cn "&&" (shen.app (<-address V4830 1) "" shen.a))) -(defun shen.l-rules (V5262 V5263 V5264 V5265 V5266 V5267 V5268) (let W5269 (+ V5267 1) (let W5270 (if (shen.unlocked? V5266) (let W5271 (shen.lazyderef V5262 V5265) (if (= W5271 ()) (let W5272 (shen.lazyderef V5264 V5265) (if (= W5272 true) (do (shen.incinfs) (shen.cut V5265 V5266 W5269 (freeze (bind V5263 () V5265 V5266 W5269 V5268)))) false)) false)) false) (if (= W5270 false) (let W5273 (if (shen.unlocked? V5266) (let W5274 (shen.lazyderef V5262 V5265) (if (cons? W5274) (let W5275 (shen.lazyderef (hd W5274) V5265) (if (cons? W5275) (let W5276 (shen.lazyderef (hd W5275) V5265) (if (cons? W5276) (let W5277 (shen.lazyderef (hd W5276) V5265) (if (= W5277 cons) (let W5278 (shen.lazyderef (tl W5276) V5265) (if (cons? W5278) (let W5279 (hd W5278) (let W5280 (shen.lazyderef (tl W5278) V5265) (if (cons? W5280) (let W5281 (hd W5280) (let W5282 (shen.lazyderef (tl W5280) V5265) (if (= W5282 ()) (let W5283 (shen.lazyderef (tl W5275) V5265) (if (cons? W5283) (let W5284 (hd W5283) (let W5285 (shen.lazyderef (tl W5283) V5265) (if (cons? W5285) (let W5286 (shen.lazyderef (hd W5285) V5265) (if (cons? W5286) (let W5287 (shen.lazyderef (hd W5286) V5265) (if (= W5287 list) (let W5288 (shen.lazyderef (tl W5286) V5265) (if (cons? W5288) (let W5289 (hd W5288) (let W5290 (shen.lazyderef (tl W5288) V5265) (if (= W5290 ()) (let W5291 (shen.lazyderef (tl W5285) V5265) (if (= W5291 ()) (let W5292 (tl W5274) (do (shen.incinfs) (when (= (shen.deref W5284 V5265) (intern ":")) V5265 V5266 W5269 (freeze (shen.cut V5265 V5266 W5269 (freeze (shen.l-rules (cons (cons W5279 (cons W5284 (cons W5289 ()))) (cons (cons W5281 (cons W5284 (cons (cons list (cons W5289 ())) ()))) W5292)) V5263 true V5265 V5266 W5269 V5268))))))) false)) false))) false)) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W5273 false) (let W5293 (if (shen.unlocked? V5266) (let W5294 (shen.lazyderef V5262 V5265) (if (cons? W5294) (let W5295 (shen.lazyderef (hd W5294) V5265) (if (cons? W5295) (let W5296 (shen.lazyderef (hd W5295) V5265) (if (cons? W5296) (let W5297 (shen.lazyderef (hd W5296) V5265) (if (= W5297 @p) (let W5298 (shen.lazyderef (tl W5296) V5265) (if (cons? W5298) (let W5299 (hd W5298) (let W5300 (shen.lazyderef (tl W5298) V5265) (if (cons? W5300) (let W5301 (hd W5300) (let W5302 (shen.lazyderef (tl W5300) V5265) (if (= W5302 ()) (let W5303 (shen.lazyderef (tl W5295) V5265) (if (cons? W5303) (let W5304 (hd W5303) (let W5305 (shen.lazyderef (tl W5303) V5265) (if (cons? W5305) (let W5306 (shen.lazyderef (hd W5305) V5265) (if (cons? W5306) (let W5307 (hd W5306) (let W5308 (shen.lazyderef (tl W5306) V5265) (if (cons? W5308) (let W5309 (shen.lazyderef (hd W5308) V5265) (if (= W5309 *) (let W5310 (shen.lazyderef (tl W5308) V5265) (if (cons? W5310) (let W5311 (hd W5310) (let W5312 (shen.lazyderef (tl W5310) V5265) (if (= W5312 ()) (let W5313 (shen.lazyderef (tl W5305) V5265) (if (= W5313 ()) (let W5314 (tl W5294) (do (shen.incinfs) (when (= (shen.deref W5304 V5265) (intern ":")) V5265 V5266 W5269 (freeze (shen.cut V5265 V5266 W5269 (freeze (shen.l-rules (cons (cons W5299 (cons W5304 (cons W5307 ()))) (cons (cons W5301 (cons W5304 (cons W5311 ()))) W5314)) V5263 true V5265 V5266 W5269 V5268))))))) false)) false))) false)) false)) false))) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W5293 false) (let W5315 (if (shen.unlocked? V5266) (let W5316 (shen.lazyderef V5262 V5265) (if (cons? W5316) (let W5317 (shen.lazyderef (hd W5316) V5265) (if (cons? W5317) (let W5318 (shen.lazyderef (hd W5317) V5265) (if (cons? W5318) (let W5319 (shen.lazyderef (hd W5318) V5265) (if (= W5319 @s) (let W5320 (shen.lazyderef (tl W5318) V5265) (if (cons? W5320) (let W5321 (hd W5320) (let W5322 (shen.lazyderef (tl W5320) V5265) (if (cons? W5322) (let W5323 (hd W5322) (let W5324 (shen.lazyderef (tl W5322) V5265) (if (= W5324 ()) (let W5325 (shen.lazyderef (tl W5317) V5265) (if (cons? W5325) (let W5326 (hd W5325) (let W5327 (shen.lazyderef (tl W5325) V5265) (if (cons? W5327) (let W5328 (shen.lazyderef (hd W5327) V5265) (if (= W5328 string) (let W5329 (shen.lazyderef (tl W5327) V5265) (if (= W5329 ()) (let W5330 (tl W5316) (do (shen.incinfs) (when (= (shen.deref W5326 V5265) (intern ":")) V5265 V5266 W5269 (freeze (shen.cut V5265 V5266 W5269 (freeze (shen.l-rules (cons (cons W5321 (cons W5326 (cons string ()))) (cons (cons W5323 (cons W5326 (cons string ()))) W5330)) V5263 true V5265 V5266 W5269 V5268))))))) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W5315 false) (let W5331 (if (shen.unlocked? V5266) (let W5332 (shen.lazyderef V5262 V5265) (if (cons? W5332) (let W5333 (shen.lazyderef (hd W5332) V5265) (if (cons? W5333) (let W5334 (shen.lazyderef (hd W5333) V5265) (if (cons? W5334) (let W5335 (shen.lazyderef (hd W5334) V5265) (if (= W5335 @v) (let W5336 (shen.lazyderef (tl W5334) V5265) (if (cons? W5336) (let W5337 (hd W5336) (let W5338 (shen.lazyderef (tl W5336) V5265) (if (cons? W5338) (let W5339 (hd W5338) (let W5340 (shen.lazyderef (tl W5338) V5265) (if (= W5340 ()) (let W5341 (shen.lazyderef (tl W5333) V5265) (if (cons? W5341) (let W5342 (hd W5341) (let W5343 (shen.lazyderef (tl W5341) V5265) (if (cons? W5343) (let W5344 (shen.lazyderef (hd W5343) V5265) (if (cons? W5344) (let W5345 (shen.lazyderef (hd W5344) V5265) (if (= W5345 vector) (let W5346 (shen.lazyderef (tl W5344) V5265) (if (cons? W5346) (let W5347 (hd W5346) (let W5348 (shen.lazyderef (tl W5346) V5265) (if (= W5348 ()) (let W5349 (shen.lazyderef (tl W5343) V5265) (if (= W5349 ()) (let W5350 (tl W5332) (do (shen.incinfs) (when (= (shen.deref W5342 V5265) (intern ":")) V5265 V5266 W5269 (freeze (shen.cut V5265 V5266 W5269 (freeze (shen.l-rules (cons (cons W5337 (cons W5342 (cons W5347 ()))) (cons (cons W5339 (cons W5342 (cons (cons vector (cons W5347 ())) ()))) W5350)) V5263 true V5265 V5266 W5269 V5268))))))) false)) false))) false)) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W5331 false) (let W5351 (if (shen.unlocked? V5266) (let W5352 (shen.lazyderef V5262 V5265) (if (cons? W5352) (let W5353 (hd W5352) (let W5354 (tl W5352) (let W5355 (shen.lazyderef V5263 V5265) (let W5356 (lambda Z5357 (lambda Z5358 (do (shen.incinfs) (bind Z5357 W5353 V5265 V5266 W5269 (freeze (shen.l-rules W5354 Z5358 V5264 V5265 V5266 W5269 V5268)))))) (if (cons? W5355) (let W5359 (hd W5355) (let W5360 (tl W5355) ((W5356 W5359) W5360))) (if (shen.pvar? W5355) (let W5361 (shen.newpv V5265) (shen.gc V5265 (let W5362 (shen.newpv V5265) (shen.gc V5265 (shen.bind! W5355 (cons W5361 W5362) V5265 (freeze ((W5356 W5361) W5362))))))) false)))))) false)) false) (if (= W5351 false) (shen.unlock V5266 W5269) W5351)) W5331)) W5315)) W5293)) W5273)) W5270)))) +(defun shen.search-user-datatypes (V4831 V4832 V4833 V4834 V4835 V4836 V4837) (let W4838 (if (shen.unlocked? V4835) (let W4839 (shen.lazyderef V4833 V4834) (if (cons? W4839) (let W4840 (shen.lazyderef (hd W4839) V4834) (if (cons? W4840) (let W4841 (tl W4840) (do (shen.incinfs) (call (((shen.deref W4841 V4834) (shen.deref V4831 V4834)) (shen.deref V4832 V4834)) V4834 V4835 V4836 V4837))) false)) false)) false) (if (= W4838 false) (if (shen.unlocked? V4835) (let W4842 (shen.lazyderef V4833 V4834) (if (cons? W4842) (let W4843 (tl W4842) (do (shen.incinfs) (shen.search-user-datatypes V4831 V4832 W4843 V4834 V4835 V4836 V4837))) false)) false) W4838))) -(defun shen.t* (V5363 V5364 V5365 V5366 V5367 V5368) (let W5369 (+ V5367 1) (let W5370 (if (shen.unlocked? V5366) (let W5371 (shen.lazyderef V5363 V5365) (if (cons? W5371) (let W5372 (shen.lazyderef (hd W5371) V5365) (if (= W5372 define) (let W5373 (shen.lazyderef (tl W5371) V5365) (if (cons? W5373) (let W5374 (hd W5373) (let W5375 (tl W5373) (let W5376 (shen.newpv V5365) (shen.gc V5365 (let W5377 (shen.newpv V5365) (shen.gc V5365 (let W5378 (shen.newpv V5365) (shen.gc V5365 (let W5379 (shen.newpv V5365) (shen.gc V5365 (do (shen.incinfs) (shen.cut V5365 V5366 W5369 (freeze (bind W5376 (shen.sigxrules (cons W5374 W5375)) V5365 V5366 W5369 (freeze (bind W5379 (fst (shen.lazyderef W5376 V5365)) V5365 V5366 W5369 (freeze (bind W5377 (snd (shen.lazyderef W5376 V5365)) V5365 V5366 W5369 (freeze (bind W5378 (shen.freshen-sig (shen.deref W5379 V5365)) V5365 V5366 W5369 (freeze (shen.t*-rules W5374 W5377 W5378 1 V5365 V5366 W5369 (freeze (is W5379 V5364 V5365 V5366 W5369 V5368)))))))))))))))))))))))) false)) false)) false)) false) (if (= W5370 false) (shen.unlock V5366 W5369) W5370)))) +(defun shen.l-rules (V4844 V4845 V4846 V4847 V4848 V4849 V4850) (let W4851 (+ V4849 1) (let W4852 (if (shen.unlocked? V4848) (let W4853 (shen.lazyderef V4844 V4847) (if (= W4853 ()) (let W4854 (shen.lazyderef V4846 V4847) (if (= W4854 true) (do (shen.incinfs) (shen.cut V4847 V4848 W4851 (freeze (bind V4845 () V4847 V4848 W4851 V4850)))) false)) false)) false) (if (= W4852 false) (let W4855 (if (shen.unlocked? V4848) (let W4856 (shen.lazyderef V4844 V4847) (if (cons? W4856) (let W4857 (shen.lazyderef (hd W4856) V4847) (if (cons? W4857) (let W4858 (shen.lazyderef (hd W4857) V4847) (if (cons? W4858) (let W4859 (shen.lazyderef (hd W4858) V4847) (if (= W4859 cons) (let W4860 (shen.lazyderef (tl W4858) V4847) (if (cons? W4860) (let W4861 (hd W4860) (let W4862 (shen.lazyderef (tl W4860) V4847) (if (cons? W4862) (let W4863 (hd W4862) (let W4864 (shen.lazyderef (tl W4862) V4847) (if (= W4864 ()) (let W4865 (shen.lazyderef (tl W4857) V4847) (if (cons? W4865) (let W4866 (hd W4865) (let W4867 (shen.lazyderef (tl W4865) V4847) (if (cons? W4867) (let W4868 (shen.lazyderef (hd W4867) V4847) (if (cons? W4868) (let W4869 (shen.lazyderef (hd W4868) V4847) (if (= W4869 list) (let W4870 (shen.lazyderef (tl W4868) V4847) (if (cons? W4870) (let W4871 (hd W4870) (let W4872 (shen.lazyderef (tl W4870) V4847) (if (= W4872 ()) (let W4873 (shen.lazyderef (tl W4867) V4847) (if (= W4873 ()) (let W4874 (tl W4856) (do (shen.incinfs) (when (= (shen.deref W4866 V4847) (intern ":")) V4847 V4848 W4851 (freeze (shen.cut V4847 V4848 W4851 (freeze (shen.l-rules (cons (cons W4861 (cons W4866 (cons W4871 ()))) (cons (cons W4863 (cons W4866 (cons (cons list (cons W4871 ())) ()))) W4874)) V4845 true V4847 V4848 W4851 V4850))))))) false)) false))) false)) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W4855 false) (let W4875 (if (shen.unlocked? V4848) (let W4876 (shen.lazyderef V4844 V4847) (if (cons? W4876) (let W4877 (shen.lazyderef (hd W4876) V4847) (if (cons? W4877) (let W4878 (shen.lazyderef (hd W4877) V4847) (if (cons? W4878) (let W4879 (shen.lazyderef (hd W4878) V4847) (if (= W4879 @p) (let W4880 (shen.lazyderef (tl W4878) V4847) (if (cons? W4880) (let W4881 (hd W4880) (let W4882 (shen.lazyderef (tl W4880) V4847) (if (cons? W4882) (let W4883 (hd W4882) (let W4884 (shen.lazyderef (tl W4882) V4847) (if (= W4884 ()) (let W4885 (shen.lazyderef (tl W4877) V4847) (if (cons? W4885) (let W4886 (hd W4885) (let W4887 (shen.lazyderef (tl W4885) V4847) (if (cons? W4887) (let W4888 (shen.lazyderef (hd W4887) V4847) (if (cons? W4888) (let W4889 (hd W4888) (let W4890 (shen.lazyderef (tl W4888) V4847) (if (cons? W4890) (let W4891 (shen.lazyderef (hd W4890) V4847) (if (= W4891 *) (let W4892 (shen.lazyderef (tl W4890) V4847) (if (cons? W4892) (let W4893 (hd W4892) (let W4894 (shen.lazyderef (tl W4892) V4847) (if (= W4894 ()) (let W4895 (shen.lazyderef (tl W4887) V4847) (if (= W4895 ()) (let W4896 (tl W4876) (do (shen.incinfs) (when (= (shen.deref W4886 V4847) (intern ":")) V4847 V4848 W4851 (freeze (shen.cut V4847 V4848 W4851 (freeze (shen.l-rules (cons (cons W4881 (cons W4886 (cons W4889 ()))) (cons (cons W4883 (cons W4886 (cons W4893 ()))) W4896)) V4845 true V4847 V4848 W4851 V4850))))))) false)) false))) false)) false)) false))) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W4875 false) (let W4897 (if (shen.unlocked? V4848) (let W4898 (shen.lazyderef V4844 V4847) (if (cons? W4898) (let W4899 (shen.lazyderef (hd W4898) V4847) (if (cons? W4899) (let W4900 (shen.lazyderef (hd W4899) V4847) (if (cons? W4900) (let W4901 (shen.lazyderef (hd W4900) V4847) (if (= W4901 @s) (let W4902 (shen.lazyderef (tl W4900) V4847) (if (cons? W4902) (let W4903 (hd W4902) (let W4904 (shen.lazyderef (tl W4902) V4847) (if (cons? W4904) (let W4905 (hd W4904) (let W4906 (shen.lazyderef (tl W4904) V4847) (if (= W4906 ()) (let W4907 (shen.lazyderef (tl W4899) V4847) (if (cons? W4907) (let W4908 (hd W4907) (let W4909 (shen.lazyderef (tl W4907) V4847) (if (cons? W4909) (let W4910 (shen.lazyderef (hd W4909) V4847) (if (= W4910 string) (let W4911 (shen.lazyderef (tl W4909) V4847) (if (= W4911 ()) (let W4912 (tl W4898) (do (shen.incinfs) (when (= (shen.deref W4908 V4847) (intern ":")) V4847 V4848 W4851 (freeze (shen.cut V4847 V4848 W4851 (freeze (shen.l-rules (cons (cons W4903 (cons W4908 (cons string ()))) (cons (cons W4905 (cons W4908 (cons string ()))) W4912)) V4845 true V4847 V4848 W4851 V4850))))))) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W4897 false) (let W4913 (if (shen.unlocked? V4848) (let W4914 (shen.lazyderef V4844 V4847) (if (cons? W4914) (let W4915 (shen.lazyderef (hd W4914) V4847) (if (cons? W4915) (let W4916 (shen.lazyderef (hd W4915) V4847) (if (cons? W4916) (let W4917 (shen.lazyderef (hd W4916) V4847) (if (= W4917 @v) (let W4918 (shen.lazyderef (tl W4916) V4847) (if (cons? W4918) (let W4919 (hd W4918) (let W4920 (shen.lazyderef (tl W4918) V4847) (if (cons? W4920) (let W4921 (hd W4920) (let W4922 (shen.lazyderef (tl W4920) V4847) (if (= W4922 ()) (let W4923 (shen.lazyderef (tl W4915) V4847) (if (cons? W4923) (let W4924 (hd W4923) (let W4925 (shen.lazyderef (tl W4923) V4847) (if (cons? W4925) (let W4926 (shen.lazyderef (hd W4925) V4847) (if (cons? W4926) (let W4927 (shen.lazyderef (hd W4926) V4847) (if (= W4927 vector) (let W4928 (shen.lazyderef (tl W4926) V4847) (if (cons? W4928) (let W4929 (hd W4928) (let W4930 (shen.lazyderef (tl W4928) V4847) (if (= W4930 ()) (let W4931 (shen.lazyderef (tl W4925) V4847) (if (= W4931 ()) (let W4932 (tl W4914) (do (shen.incinfs) (when (= (shen.deref W4924 V4847) (intern ":")) V4847 V4848 W4851 (freeze (shen.cut V4847 V4848 W4851 (freeze (shen.l-rules (cons (cons W4919 (cons W4924 (cons W4929 ()))) (cons (cons W4921 (cons W4924 (cons (cons vector (cons W4929 ())) ()))) W4932)) V4845 true V4847 V4848 W4851 V4850))))))) false)) false))) false)) false)) false)) false))) false)) false))) false))) false)) false)) false)) false)) false)) false) (if (= W4913 false) (let W4933 (if (shen.unlocked? V4848) (let W4934 (shen.lazyderef V4844 V4847) (if (cons? W4934) (let W4935 (hd W4934) (let W4936 (tl W4934) (let W4937 (shen.lazyderef V4845 V4847) (let W4938 (lambda Z4939 (lambda Z4940 (do (shen.incinfs) (bind Z4939 W4935 V4847 V4848 W4851 (freeze (shen.l-rules W4936 Z4940 V4846 V4847 V4848 W4851 V4850)))))) (if (cons? W4937) (let W4941 (hd W4937) (let W4942 (tl W4937) ((W4938 W4941) W4942))) (if (shen.pvar? W4937) (let W4943 (shen.newpv V4847) (shen.gc V4847 (let W4944 (shen.newpv V4847) (shen.gc V4847 (shen.bind! W4937 (cons W4943 W4944) V4847 (freeze ((W4938 W4943) W4944))))))) false)))))) false)) false) (if (= W4933 false) (shen.unlock V4848 W4851) W4933)) W4913)) W4897)) W4875)) W4855)) W4852)))) -(defun shen.sigxrules (V5380) (compile (lambda Z5381 (shen. Z5381)) V5380)) +(defun shen.t* (V4945 V4946 V4947 V4948 V4949 V4950) (let W4951 (+ V4949 1) (let W4952 (if (shen.unlocked? V4948) (let W4953 (shen.lazyderef V4945 V4947) (if (cons? W4953) (let W4954 (shen.lazyderef (hd W4953) V4947) (if (= W4954 define) (let W4955 (shen.lazyderef (tl W4953) V4947) (if (cons? W4955) (let W4956 (hd W4955) (let W4957 (tl W4955) (let W4958 (shen.newpv V4947) (shen.gc V4947 (let W4959 (shen.newpv V4947) (shen.gc V4947 (let W4960 (shen.newpv V4947) (shen.gc V4947 (let W4961 (shen.newpv V4947) (shen.gc V4947 (do (shen.incinfs) (shen.cut V4947 V4948 W4951 (freeze (bind W4958 (shen.sigxrules (cons W4956 W4957)) V4947 V4948 W4951 (freeze (bind W4961 (fst (shen.lazyderef W4958 V4947)) V4947 V4948 W4951 (freeze (bind W4959 (snd (shen.lazyderef W4958 V4947)) V4947 V4948 W4951 (freeze (bind W4960 (shen.freshen-sig (shen.deref W4961 V4947)) V4947 V4948 W4951 (freeze (shen.t*-rules W4956 W4959 W4960 1 V4947 V4948 W4951 (freeze (is W4961 V4946 V4947 V4948 W4951 V4950)))))))))))))))))))))))) false)) false)) false)) false) (if (= W4952 false) (shen.unlock V4948 W4951) W4952)))) -(defun shen. (V5382) (let W5383 (if (cons? V5382) (let W5384 (tail V5382) (if (shen.hds=? W5384 {) (let W5385 (tail W5384) (let W5386 (shen. W5385) (if (shen.parse-failure? W5386) (shen.parse-failure) (let W5387 (shen.<-out W5386) (let W5388 (shen.in-> W5386) (if (shen.hds=? W5388 }) (let W5389 (tail W5388) (let W5390 (shen. W5389) (if (shen.parse-failure? W5390) (shen.parse-failure) (let W5391 (shen.<-out W5390) (let W5392 (shen.in-> W5390) (shen.comb W5392 (let W5393 (shen.rectify-type W5387) (@p W5393 W5391)))))))) (shen.parse-failure))))))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W5383) (shen.parse-failure) W5383))) +(defun shen.sigxrules (V4962) (compile (lambda Z4963 (shen. Z4963)) V4962)) -(defun shen.freshen-sig (V5394) (let W5395 (shen.extract-vars V5394) (let W5396 (map (lambda Z5397 (cons Z5397 (shen.freshterm (concat & Z5397)))) W5395) (shen.freshen-type W5396 V5394)))) +(defun shen. (V4964) (let W4965 (if (cons? V4964) (let W4966 (tail V4964) (if (shen.hds=? W4966 {) (let W4967 (tail W4966) (let W4968 (shen. W4967) (if (shen.parse-failure? W4968) (shen.parse-failure) (let W4969 (shen.<-out W4968) (let W4970 (shen.in-> W4968) (if (shen.hds=? W4970 }) (let W4971 (tail W4970) (let W4972 (shen. W4971) (if (shen.parse-failure? W4972) (shen.parse-failure) (let W4973 (shen.<-out W4972) (let W4974 (shen.in-> W4972) (shen.comb W4974 (let W4975 (shen.rectify-type W4969) (@p W4975 W4973)))))))) (shen.parse-failure))))))) (shen.parse-failure))) (shen.parse-failure)) (if (shen.parse-failure? W4965) (shen.parse-failure) W4965))) -(defun shen.freshen-type (V5398 V5399) (cond ((= () V5398) V5399) ((and (cons? V5398) (cons? (hd V5398))) (shen.freshen-type (tl V5398) (subst (tl (hd V5398)) (hd (hd V5398)) V5399))) (true (shen.f-error shen.freshen-type)))) +(defun shen.freshen-sig (V4976) (let W4977 (shen.extract-vars V4976) (let W4978 (map (lambda Z4979 (cons Z4979 (shen.freshterm (concat & Z4979)))) W4977) (shen.freshen-type W4978 V4976)))) -(defun shen. (V5400) (let W5401 (let W5402 (shen. V5400) (if (shen.parse-failure? W5402) (shen.parse-failure) (let W5403 (shen.<-out W5402) (let W5404 (shen.in-> W5402) (let W5405 (shen. W5404) (if (shen.parse-failure? W5405) (shen.parse-failure) (let W5406 (shen.<-out W5405) (let W5407 (shen.in-> W5405) (shen.comb W5407 (cons W5403 W5406)))))))))) (if (shen.parse-failure? W5401) (let W5408 (let W5409 (shen. V5400) (if (shen.parse-failure? W5409) (shen.parse-failure) (let W5410 (shen.<-out W5409) (let W5411 (shen.in-> W5409) (shen.comb W5411 (cons W5410 ())))))) (if (shen.parse-failure? W5408) (shen.parse-failure) W5408)) W5401))) +(defun shen.freshen-type (V4980 V4981) (cond ((= () V4980) V4981) ((and (cons? V4980) (cons? (hd V4980))) (shen.freshen-type (tl V4980) (subst (tl (hd V4980)) (hd (hd V4980)) V4981))) (true (simple-error "partial function shen.freshen-type")))) -(defun shen. (V5412) (let W5413 (let W5414 (shen. V5412) (if (shen.parse-failure? W5414) (shen.parse-failure) (let W5415 (shen.<-out W5414) (let W5416 (shen.in-> W5414) (if (shen.hds=? W5416 ->) (let W5417 (tail W5416) (if (cons? W5417) (let W5418 (head W5417) (let W5419 (tail W5417) (if (shen.hds=? W5419 where) (let W5420 (tail W5419) (if (cons? W5420) (let W5421 (head W5420) (let W5422 (tail W5420) (shen.comb W5422 (@p W5415 (cons where (cons W5421 (cons W5418 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5413) (let W5423 (let W5424 (shen. V5412) (if (shen.parse-failure? W5424) (shen.parse-failure) (let W5425 (shen.<-out W5424) (let W5426 (shen.in-> W5424) (if (shen.hds=? W5426 <-) (let W5427 (tail W5426) (if (cons? W5427) (let W5428 (head W5427) (let W5429 (tail W5427) (if (shen.hds=? W5429 where) (let W5430 (tail W5429) (if (cons? W5430) (let W5431 (head W5430) (let W5432 (tail W5430) (shen.comb W5432 (@p W5425 (shen.correct (cons where (cons W5431 (cons W5428 ())))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5423) (let W5433 (let W5434 (shen. V5412) (if (shen.parse-failure? W5434) (shen.parse-failure) (let W5435 (shen.<-out W5434) (let W5436 (shen.in-> W5434) (if (shen.hds=? W5436 <-) (let W5437 (tail W5436) (if (cons? W5437) (let W5438 (head W5437) (let W5439 (tail W5437) (shen.comb W5439 (@p W5435 (shen.correct W5438))))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5433) (let W5440 (let W5441 (shen. V5412) (if (shen.parse-failure? W5441) (shen.parse-failure) (let W5442 (shen.<-out W5441) (let W5443 (shen.in-> W5441) (if (shen.hds=? W5443 ->) (let W5444 (tail W5443) (if (cons? W5444) (let W5445 (head W5444) (let W5446 (tail W5444) (shen.comb W5446 (@p W5442 W5445)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5440) (shen.parse-failure) W5440)) W5433)) W5423)) W5413))) +(defun shen. (V4982) (let W4983 (let W4984 (shen. V4982) (if (shen.parse-failure? W4984) (shen.parse-failure) (let W4985 (shen.<-out W4984) (let W4986 (shen.in-> W4984) (let W4987 (shen. W4986) (if (shen.parse-failure? W4987) (shen.parse-failure) (let W4988 (shen.<-out W4987) (let W4989 (shen.in-> W4987) (shen.comb W4989 (cons W4985 W4988)))))))))) (if (shen.parse-failure? W4983) (let W4990 (let W4991 (shen. V4982) (if (shen.parse-failure? W4991) (shen.parse-failure) (let W4992 (shen.<-out W4991) (let W4993 (shen.in-> W4991) (shen.comb W4993 (cons W4992 ())))))) (if (shen.parse-failure? W4990) (shen.parse-failure) W4990)) W4983))) -(defun shen.correct (V5447) (cond ((and (cons? V5447) (and (= where (hd V5447)) (and (cons? (tl V5447)) (and (cons? (tl (tl V5447))) (and (cons? (hd (tl (tl V5447)))) (and (= fail-if (hd (hd (tl (tl V5447))))) (and (cons? (tl (hd (tl (tl V5447))))) (and (cons? (tl (tl (hd (tl (tl V5447)))))) (and (= () (tl (tl (tl (hd (tl (tl V5447))))))) (= () (tl (tl (tl V5447))))))))))))) (cons where (cons (cons and (cons (hd (tl V5447)) (cons (cons not (cons (tl (hd (tl (tl V5447)))) ())) ()))) (tl (tl (hd (tl (tl V5447)))))))) ((and (cons? V5447) (and (= where (hd V5447)) (and (cons? (tl V5447)) (and (cons? (tl (tl V5447))) (= () (tl (tl (tl V5447)))))))) (cons where (cons (cons and (cons (hd (tl V5447)) (cons (cons not (cons (cons = (cons (hd (tl (tl V5447))) (cons (cons fail ()) ()))) ())) ()))) (tl (tl V5447))))) ((and (cons? V5447) (and (= fail-if (hd V5447)) (and (cons? (tl V5447)) (and (cons? (tl (tl V5447))) (= () (tl (tl (tl V5447)))))))) (cons where (cons (cons not (cons (tl V5447) ())) (tl (tl V5447))))) (true (cons where (cons (cons not (cons (cons = (cons V5447 (cons (cons fail ()) ()))) ())) (cons V5447 ())))))) +(defun shen. (V4994) (let W4995 (let W4996 (shen. V4994) (if (shen.parse-failure? W4996) (shen.parse-failure) (let W4997 (shen.<-out W4996) (let W4998 (shen.in-> W4996) (if (shen.hds=? W4998 ->) (let W4999 (tail W4998) (if (cons? W4999) (let W5000 (head W4999) (let W5001 (tail W4999) (if (shen.hds=? W5001 where) (let W5002 (tail W5001) (if (cons? W5002) (let W5003 (head W5002) (let W5004 (tail W5002) (shen.comb W5004 (@p W4997 (cons where (cons W5003 (cons W5000 ()))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W4995) (let W5005 (let W5006 (shen. V4994) (if (shen.parse-failure? W5006) (shen.parse-failure) (let W5007 (shen.<-out W5006) (let W5008 (shen.in-> W5006) (if (shen.hds=? W5008 <-) (let W5009 (tail W5008) (if (cons? W5009) (let W5010 (head W5009) (let W5011 (tail W5009) (if (shen.hds=? W5011 where) (let W5012 (tail W5011) (if (cons? W5012) (let W5013 (head W5012) (let W5014 (tail W5012) (shen.comb W5014 (@p W5007 (shen.correct (cons where (cons W5013 (cons W5010 ())))))))) (shen.parse-failure))) (shen.parse-failure)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5005) (let W5015 (let W5016 (shen. V4994) (if (shen.parse-failure? W5016) (shen.parse-failure) (let W5017 (shen.<-out W5016) (let W5018 (shen.in-> W5016) (if (shen.hds=? W5018 <-) (let W5019 (tail W5018) (if (cons? W5019) (let W5020 (head W5019) (let W5021 (tail W5019) (shen.comb W5021 (@p W5017 (shen.correct W5020))))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5015) (let W5022 (let W5023 (shen. V4994) (if (shen.parse-failure? W5023) (shen.parse-failure) (let W5024 (shen.<-out W5023) (let W5025 (shen.in-> W5023) (if (shen.hds=? W5025 ->) (let W5026 (tail W5025) (if (cons? W5026) (let W5027 (head W5026) (let W5028 (tail W5026) (shen.comb W5028 (@p W5024 W5027)))) (shen.parse-failure))) (shen.parse-failure)))))) (if (shen.parse-failure? W5022) (shen.parse-failure) W5022)) W5015)) W5005)) W4995))) -(defun shen.t*-rules (V5448 V5449 V5450 V5451 V5452 V5453 V5454 V5455) (let W5456 (+ V5454 1) (let W5457 (if (shen.unlocked? V5453) (let W5458 (shen.lazyderef V5449 V5452) (if (= W5458 ()) (do (shen.incinfs) (thaw V5455)) false)) false) (if (= W5457 false) (let W5459 (if (shen.unlocked? V5453) (let W5460 (shen.lazyderef V5449 V5452) (if (cons? W5460) (let W5461 (hd W5460) (let W5462 (tl W5460) (let W5463 (shen.newpv V5452) (shen.gc V5452 (do (shen.incinfs) (bind W5463 (shen.freshen-rule (shen.deref W5461 V5452)) V5452 V5453 W5456 (freeze (shen.t*-rule V5448 V5451 (fst (shen.lazyderef W5463 V5452)) (snd (shen.lazyderef W5463 V5452)) V5450 V5452 V5453 W5456 (freeze (shen.cut V5452 V5453 W5456 (freeze (shen.t*-rules V5448 W5462 V5450 (+ V5451 1) V5452 V5453 W5456 V5455)))))))))))) false)) false) (if (= W5459 false) (shen.unlock V5453 W5456) W5459)) W5457)))) +(defun shen.correct (V5029) (cond ((and (cons? V5029) (and (= where (hd V5029)) (and (cons? (tl V5029)) (and (cons? (tl (tl V5029))) (and (cons? (hd (tl (tl V5029)))) (and (= fail-if (hd (hd (tl (tl V5029))))) (and (cons? (tl (hd (tl (tl V5029))))) (and (cons? (tl (tl (hd (tl (tl V5029)))))) (and (= () (tl (tl (tl (hd (tl (tl V5029))))))) (= () (tl (tl (tl V5029))))))))))))) (cons where (cons (cons and (cons (hd (tl V5029)) (cons (cons not (cons (tl (hd (tl (tl V5029)))) ())) ()))) (tl (tl (hd (tl (tl V5029)))))))) ((and (cons? V5029) (and (= where (hd V5029)) (and (cons? (tl V5029)) (and (cons? (tl (tl V5029))) (= () (tl (tl (tl V5029)))))))) (cons where (cons (cons and (cons (hd (tl V5029)) (cons (cons not (cons (cons == (cons (hd (tl (tl V5029))) (cons (cons fail ()) ()))) ())) ()))) (tl (tl V5029))))) ((and (cons? V5029) (and (= fail-if (hd V5029)) (and (cons? (tl V5029)) (and (cons? (tl (tl V5029))) (= () (tl (tl (tl V5029)))))))) (cons where (cons (cons not (cons (tl V5029) ())) (tl (tl V5029))))) (true (cons where (cons (cons not (cons (cons == (cons V5029 (cons (cons fail ()) ()))) ())) (cons V5029 ())))))) -(defun shen.freshen-rule (V5464) (cond ((tuple? V5464) (let W5465 (shen.extract-vars (fst V5464)) (let W5466 (map (lambda Z5467 (cons Z5467 (shen.freshterm Z5467))) W5465) (@p (shen.freshen W5466 (fst V5464)) (shen.freshen W5466 (snd V5464)))))) (true (shen.f-error shen.freshen-rule)))) +(defun shen.t*-rules (V5030 V5031 V5032 V5033 V5034 V5035 V5036 V5037) (let W5038 (+ V5036 1) (let W5039 (if (shen.unlocked? V5035) (let W5040 (shen.lazyderef V5031 V5034) (if (= W5040 ()) (do (shen.incinfs) (thaw V5037)) false)) false) (if (= W5039 false) (let W5041 (if (shen.unlocked? V5035) (let W5042 (shen.lazyderef V5031 V5034) (if (cons? W5042) (let W5043 (hd W5042) (let W5044 (tl W5042) (let W5045 (shen.newpv V5034) (shen.gc V5034 (do (shen.incinfs) (bind W5045 (shen.freshen-rule (shen.deref W5043 V5034)) V5034 V5035 W5038 (freeze (shen.t*-rule V5030 V5033 (fst (shen.lazyderef W5045 V5034)) (snd (shen.lazyderef W5045 V5034)) V5032 V5034 V5035 W5038 (freeze (shen.cut V5034 V5035 W5038 (freeze (shen.t*-rules V5030 W5044 V5032 (+ V5033 1) V5034 V5035 W5038 V5037)))))))))))) false)) false) (if (= W5041 false) (shen.unlock V5035 W5038) W5041)) W5039)))) -(defun shen.freshen (V5468 V5469) (cond ((= () V5468) V5469) ((and (cons? V5468) (cons? (hd V5468))) (shen.freshen (tl V5468) (shen.beta (hd (hd V5468)) (tl (hd V5468)) V5469))) (true (shen.f-error shen.freshen)))) +(defun shen.freshen-rule (V5046) (cond ((tuple? V5046) (let W5047 (shen.extract-vars (fst V5046)) (let W5048 (map (lambda Z5049 (cons Z5049 (shen.freshterm Z5049))) W5047) (@p (shen.freshen W5048 (fst V5046)) (shen.freshen W5048 (snd V5046)))))) (true (simple-error "partial function shen.freshen-rule")))) -(defun shen.t*-rule (V5470 V5471 V5472 V5473 V5474 V5475 V5476 V5477 V5478) (let W5479 (if (shen.unlocked? V5476) (do (shen.incinfs) (shen.t*-rule-h V5472 V5473 V5474 V5475 V5476 V5477 V5478)) false) (if (= W5479 false) (if (shen.unlocked? V5476) (let W5480 (shen.newpv V5475) (shen.gc V5475 (do (shen.incinfs) (bind W5480 (simple-error (cn "type error in rule " (shen.app V5471 (cn " of " (shen.app V5470 " -" shen.a)) shen.a))) V5475 V5476 V5477 V5478)))) false) W5479))) +(defun shen.freshen (V5050 V5051) (cond ((= () V5050) V5051) ((and (cons? V5050) (cons? (hd V5050))) (shen.freshen (tl V5050) (shen.beta (hd (hd V5050)) (tl (hd V5050)) V5051))) (true (simple-error "partial function shen.freshen")))) -(defun shen.t*-rule-h (V5481 V5482 V5483 V5484 V5485 V5486 V5487) (let W5488 (+ V5486 1) (let W5489 (if (shen.unlocked? V5485) (let W5490 (shen.lazyderef V5481 V5484) (if (= W5490 ()) (let W5491 (shen.lazyderef V5483 V5484) (if (cons? W5491) (let W5492 (shen.lazyderef (hd W5491) V5484) (if (= W5492 -->) (let W5493 (shen.lazyderef (tl W5491) V5484) (if (cons? W5493) (let W5494 (hd W5493) (let W5495 (shen.lazyderef (tl W5493) V5484) (if (= W5495 ()) (do (shen.incinfs) (shen.cut V5484 V5485 W5488 (freeze (shen.t*-correct V5482 W5494 () V5484 V5485 W5488 V5487)))) false))) false)) false)) false)) false)) false) (if (= W5489 false) (let W5496 (if (shen.unlocked? V5485) (let W5497 (shen.newpv V5484) (shen.gc V5484 (let W5498 (shen.newpv V5484) (shen.gc V5484 (let W5499 (shen.newpv V5484) (shen.gc V5484 (do (shen.incinfs) (shen.p-hyps (shen.freshterms V5481) W5497 V5484 V5485 W5488 (freeze (shen.t*-integrity V5481 V5483 W5497 W5498 V5484 V5485 W5488 (freeze (shen.cut V5484 V5485 W5488 (freeze (shen.myassume V5481 V5483 W5499 V5484 V5485 W5488 (freeze (shen.t*-correct V5482 W5498 W5499 V5484 V5485 W5488 V5487)))))))))))))))) false) (if (= W5496 false) (shen.unlock V5485 W5488) W5496)) W5489)))) +(defun shen.t*-rule (V5052 V5053 V5054 V5055 V5056 V5057 V5058 V5059 V5060) (let W5061 (if (shen.unlocked? V5058) (do (shen.incinfs) (shen.t*-rule-h V5054 V5055 V5056 V5057 V5058 V5059 V5060)) false) (if (= W5061 false) (if (shen.unlocked? V5058) (let W5062 (shen.newpv V5057) (shen.gc V5057 (do (shen.incinfs) (bind W5062 (simple-error (cn "type error in rule " (shen.app V5053 (cn " of " (shen.app V5052 " +" shen.a)) shen.a))) V5057 V5058 V5059 V5060)))) false) W5061))) -(defun shen.myassume (V5500 V5501 V5502 V5503 V5504 V5505 V5506) (let W5507 (if (shen.unlocked? V5504) (let W5508 (shen.lazyderef V5500 V5503) (if (= W5508 ()) (let W5509 (shen.lazyderef V5502 V5503) (let W5510 (freeze (do (shen.incinfs) (thaw V5506))) (if (= W5509 ()) (thaw W5510) (if (shen.pvar? W5509) (shen.bind! W5509 () V5503 W5510) false)))) false)) false) (if (= W5507 false) (if (shen.unlocked? V5504) (let W5511 (shen.lazyderef V5500 V5503) (if (cons? W5511) (let W5512 (hd W5511) (let W5513 (tl W5511) (let W5514 (shen.lazyderef V5501 V5503) (if (cons? W5514) (let W5515 (hd W5514) (let W5516 (shen.lazyderef (tl W5514) V5503) (if (cons? W5516) (let W5517 (shen.lazyderef (hd W5516) V5503) (if (= W5517 -->) (let W5518 (shen.lazyderef (tl W5516) V5503) (if (cons? W5518) (let W5519 (hd W5518) (let W5520 (shen.lazyderef (tl W5518) V5503) (if (= W5520 ()) (let W5521 (shen.lazyderef V5502 V5503) (let W5522 (lambda Z5523 (lambda Z5524 (lambda Z5525 (lambda Z5526 (do (shen.incinfs) (is! W5515 Z5525 V5503 V5504 V5505 (freeze (is! W5512 Z5523 V5503 V5504 V5505 (freeze (bind Z5524 (intern ":") V5503 V5504 V5505 (freeze (shen.myassume W5513 W5519 Z5526 V5503 V5504 V5505 V5506)))))))))))) (if (cons? W5521) (let W5527 (shen.lazyderef (hd W5521) V5503) (let W5528 (lambda Z5529 (lambda Z5530 (lambda Z5531 (let W5532 (tl W5521) ((((W5522 Z5529) Z5530) Z5531) W5532))))) (if (cons? W5527) (let W5533 (hd W5527) (let W5534 (shen.lazyderef (tl W5527) V5503) (let W5535 (lambda Z5536 (lambda Z5537 (((W5528 W5533) Z5536) Z5537))) (if (cons? W5534) (let W5538 (hd W5534) (let W5539 (shen.lazyderef (tl W5534) V5503) (let W5540 (lambda Z5541 ((W5535 W5538) Z5541)) (if (cons? W5539) (let W5542 (hd W5539) (let W5543 (shen.lazyderef (tl W5539) V5503) (let W5544 (freeze (W5540 W5542)) (if (= W5543 ()) (thaw W5544) (if (shen.pvar? W5543) (shen.bind! W5543 () V5503 W5544) false))))) (if (shen.pvar? W5539) (let W5545 (shen.newpv V5503) (shen.gc V5503 (shen.bind! W5539 (cons W5545 ()) V5503 (freeze (W5540 W5545))))) false))))) (if (shen.pvar? W5534) (let W5546 (shen.newpv V5503) (shen.gc V5503 (let W5547 (shen.newpv V5503) (shen.gc V5503 (shen.bind! W5534 (cons W5546 (cons W5547 ())) V5503 (freeze ((W5535 W5546) W5547))))))) false))))) (if (shen.pvar? W5527) (let W5548 (shen.newpv V5503) (shen.gc V5503 (let W5549 (shen.newpv V5503) (shen.gc V5503 (let W5550 (shen.newpv V5503) (shen.gc V5503 (shen.bind! W5527 (cons W5548 (cons W5549 (cons W5550 ()))) V5503 (freeze (((W5528 W5548) W5549) W5550))))))))) false)))) (if (shen.pvar? W5521) (let W5551 (shen.newpv V5503) (shen.gc V5503 (let W5552 (shen.newpv V5503) (shen.gc V5503 (let W5553 (shen.newpv V5503) (shen.gc V5503 (let W5554 (shen.newpv V5503) (shen.gc V5503 (shen.bind! W5521 (cons (cons W5551 (cons W5552 (cons W5553 ()))) W5554) V5503 (freeze ((((W5522 W5551) W5552) W5553) W5554))))))))))) false)))) false))) false)) false)) false))) false)))) false)) false) W5507))) +(defun shen.t*-rule-h (V5063 V5064 V5065 V5066 V5067 V5068 V5069) (let W5070 (+ V5068 1) (let W5071 (if (shen.unlocked? V5067) (let W5072 (shen.lazyderef V5063 V5066) (if (= W5072 ()) (let W5073 (shen.lazyderef V5065 V5066) (if (cons? W5073) (let W5074 (shen.lazyderef (hd W5073) V5066) (if (= W5074 -->) (let W5075 (shen.lazyderef (tl W5073) V5066) (if (cons? W5075) (let W5076 (hd W5075) (let W5077 (shen.lazyderef (tl W5075) V5066) (if (= W5077 ()) (do (shen.incinfs) (shen.cut V5066 V5067 W5070 (freeze (shen.t*-correct V5064 W5076 () V5066 V5067 W5070 V5069)))) false))) false)) false)) false)) false)) false) (if (= W5071 false) (let W5078 (if (shen.unlocked? V5067) (let W5079 (shen.newpv V5066) (shen.gc V5066 (let W5080 (shen.newpv V5066) (shen.gc V5066 (let W5081 (shen.newpv V5066) (shen.gc V5066 (do (shen.incinfs) (shen.p-hyps (shen.freshterms V5063) W5079 V5066 V5067 W5070 (freeze (shen.t*-integrity V5063 V5065 W5079 W5080 V5066 V5067 W5070 (freeze (shen.cut V5066 V5067 W5070 (freeze (shen.myassume V5063 V5065 W5081 V5066 V5067 W5070 (freeze (shen.t*-correct V5064 W5080 W5081 V5066 V5067 W5070 V5069)))))))))))))))) false) (if (= W5078 false) (shen.unlock V5067 W5070) W5078)) W5071)))) -(defun shen.freshterms (V5557) (cond ((= () V5557) ()) ((and (cons? V5557) (cons? (hd V5557))) (shen.freshterms (append (hd V5557) (tl V5557)))) ((and (cons? V5557) (shen.freshterm? (hd V5557))) (adjoin (hd V5557) (shen.freshterms (tl V5557)))) ((cons? V5557) (shen.freshterms (tl V5557))) (true (shen.f-error shen.freshterms)))) +(defun shen.myassume (V5082 V5083 V5084 V5085 V5086 V5087 V5088) (let W5089 (if (shen.unlocked? V5086) (let W5090 (shen.lazyderef V5082 V5085) (if (= W5090 ()) (let W5091 (shen.lazyderef V5084 V5085) (let W5092 (freeze (do (shen.incinfs) (thaw V5088))) (if (= W5091 ()) (thaw W5092) (if (shen.pvar? W5091) (shen.bind! W5091 () V5085 W5092) false)))) false)) false) (if (= W5089 false) (if (shen.unlocked? V5086) (let W5093 (shen.lazyderef V5082 V5085) (if (cons? W5093) (let W5094 (hd W5093) (let W5095 (tl W5093) (let W5096 (shen.lazyderef V5083 V5085) (if (cons? W5096) (let W5097 (hd W5096) (let W5098 (shen.lazyderef (tl W5096) V5085) (if (cons? W5098) (let W5099 (shen.lazyderef (hd W5098) V5085) (if (= W5099 -->) (let W5100 (shen.lazyderef (tl W5098) V5085) (if (cons? W5100) (let W5101 (hd W5100) (let W5102 (shen.lazyderef (tl W5100) V5085) (if (= W5102 ()) (let W5103 (shen.lazyderef V5084 V5085) (let W5104 (lambda Z5105 (lambda Z5106 (lambda Z5107 (lambda Z5108 (do (shen.incinfs) (is! W5097 Z5107 V5085 V5086 V5087 (freeze (is! W5094 Z5105 V5085 V5086 V5087 (freeze (bind Z5106 (intern ":") V5085 V5086 V5087 (freeze (shen.myassume W5095 W5101 Z5108 V5085 V5086 V5087 V5088)))))))))))) (if (cons? W5103) (let W5109 (shen.lazyderef (hd W5103) V5085) (let W5110 (lambda Z5111 (lambda Z5112 (lambda Z5113 (let W5114 (tl W5103) ((((W5104 Z5111) Z5112) Z5113) W5114))))) (if (cons? W5109) (let W5115 (hd W5109) (let W5116 (shen.lazyderef (tl W5109) V5085) (let W5117 (lambda Z5118 (lambda Z5119 (((W5110 W5115) Z5118) Z5119))) (if (cons? W5116) (let W5120 (hd W5116) (let W5121 (shen.lazyderef (tl W5116) V5085) (let W5122 (lambda Z5123 ((W5117 W5120) Z5123)) (if (cons? W5121) (let W5124 (hd W5121) (let W5125 (shen.lazyderef (tl W5121) V5085) (let W5126 (freeze (W5122 W5124)) (if (= W5125 ()) (thaw W5126) (if (shen.pvar? W5125) (shen.bind! W5125 () V5085 W5126) false))))) (if (shen.pvar? W5121) (let W5127 (shen.newpv V5085) (shen.gc V5085 (shen.bind! W5121 (cons W5127 ()) V5085 (freeze (W5122 W5127))))) false))))) (if (shen.pvar? W5116) (let W5128 (shen.newpv V5085) (shen.gc V5085 (let W5129 (shen.newpv V5085) (shen.gc V5085 (shen.bind! W5116 (cons W5128 (cons W5129 ())) V5085 (freeze ((W5117 W5128) W5129))))))) false))))) (if (shen.pvar? W5109) (let W5130 (shen.newpv V5085) (shen.gc V5085 (let W5131 (shen.newpv V5085) (shen.gc V5085 (let W5132 (shen.newpv V5085) (shen.gc V5085 (shen.bind! W5109 (cons W5130 (cons W5131 (cons W5132 ()))) V5085 (freeze (((W5110 W5130) W5131) W5132))))))))) false)))) (if (shen.pvar? W5103) (let W5133 (shen.newpv V5085) (shen.gc V5085 (let W5134 (shen.newpv V5085) (shen.gc V5085 (let W5135 (shen.newpv V5085) (shen.gc V5085 (let W5136 (shen.newpv V5085) (shen.gc V5085 (shen.bind! W5103 (cons (cons W5133 (cons W5134 (cons W5135 ()))) W5136) V5085 (freeze ((((W5104 W5133) W5134) W5135) W5136))))))))))) false)))) false))) false)) false)) false))) false)))) false)) false) W5089))) -(defun shen.p-hyps (V5558 V5559 V5560 V5561 V5562 V5563) (let W5564 (if (shen.unlocked? V5561) (let W5565 (shen.lazyderef V5558 V5560) (if (= W5565 ()) (let W5566 (shen.lazyderef V5559 V5560) (let W5567 (freeze (do (shen.incinfs) (thaw V5563))) (if (= W5566 ()) (thaw W5567) (if (shen.pvar? W5566) (shen.bind! W5566 () V5560 W5567) false)))) false)) false) (if (= W5564 false) (if (shen.unlocked? V5561) (let W5568 (shen.lazyderef V5558 V5560) (if (cons? W5568) (let W5569 (hd W5568) (let W5570 (tl W5568) (let W5571 (shen.lazyderef V5559 V5560) (let W5572 (lambda Z5573 (lambda Z5574 (lambda Z5575 (lambda Z5576 (do (shen.incinfs) (bind Z5573 W5569 V5560 V5561 V5562 (freeze (bind Z5574 (intern ":") V5560 V5561 V5562 (freeze (shen.p-hyps W5570 Z5576 V5560 V5561 V5562 V5563)))))))))) (if (cons? W5571) (let W5577 (shen.lazyderef (hd W5571) V5560) (let W5578 (lambda Z5579 (lambda Z5580 (lambda Z5581 (let W5582 (tl W5571) ((((W5572 Z5579) Z5580) Z5581) W5582))))) (if (cons? W5577) (let W5583 (hd W5577) (let W5584 (shen.lazyderef (tl W5577) V5560) (let W5585 (lambda Z5586 (lambda Z5587 (((W5578 W5583) Z5586) Z5587))) (if (cons? W5584) (let W5588 (hd W5584) (let W5589 (shen.lazyderef (tl W5584) V5560) (let W5590 (lambda Z5591 ((W5585 W5588) Z5591)) (if (cons? W5589) (let W5592 (hd W5589) (let W5593 (shen.lazyderef (tl W5589) V5560) (let W5594 (freeze (W5590 W5592)) (if (= W5593 ()) (thaw W5594) (if (shen.pvar? W5593) (shen.bind! W5593 () V5560 W5594) false))))) (if (shen.pvar? W5589) (let W5595 (shen.newpv V5560) (shen.gc V5560 (shen.bind! W5589 (cons W5595 ()) V5560 (freeze (W5590 W5595))))) false))))) (if (shen.pvar? W5584) (let W5596 (shen.newpv V5560) (shen.gc V5560 (let W5597 (shen.newpv V5560) (shen.gc V5560 (shen.bind! W5584 (cons W5596 (cons W5597 ())) V5560 (freeze ((W5585 W5596) W5597))))))) false))))) (if (shen.pvar? W5577) (let W5598 (shen.newpv V5560) (shen.gc V5560 (let W5599 (shen.newpv V5560) (shen.gc V5560 (let W5600 (shen.newpv V5560) (shen.gc V5560 (shen.bind! W5577 (cons W5598 (cons W5599 (cons W5600 ()))) V5560 (freeze (((W5578 W5598) W5599) W5600))))))))) false)))) (if (shen.pvar? W5571) (let W5601 (shen.newpv V5560) (shen.gc V5560 (let W5602 (shen.newpv V5560) (shen.gc V5560 (let W5603 (shen.newpv V5560) (shen.gc V5560 (let W5604 (shen.newpv V5560) (shen.gc V5560 (shen.bind! W5571 (cons (cons W5601 (cons W5602 (cons W5603 ()))) W5604) V5560 (freeze ((((W5572 W5601) W5602) W5603) W5604))))))))))) false)))))) false)) false) W5564))) +(defun shen.freshterms (V5139) (cond ((= () V5139) ()) ((and (cons? V5139) (cons? (hd V5139))) (shen.freshterms (append (hd V5139) (tl V5139)))) ((and (cons? V5139) (shen.freshterm? (hd V5139))) (adjoin (hd V5139) (shen.freshterms (tl V5139)))) ((cons? V5139) (shen.freshterms (tl V5139))) (true (simple-error "partial function shen.freshterms")))) -(defun shen.t*-correct (V5605 V5606 V5607 V5608 V5609 V5610 V5611) (let W5612 (+ V5610 1) (let W5613 (if (shen.unlocked? V5609) (let W5614 (shen.lazyderef V5605 V5608) (if (cons? W5614) (let W5615 (shen.lazyderef (hd W5614) V5608) (if (= W5615 where) (let W5616 (shen.lazyderef (tl W5614) V5608) (if (cons? W5616) (let W5617 (hd W5616) (let W5618 (shen.lazyderef (tl W5616) V5608) (if (cons? W5618) (let W5619 (hd W5618) (let W5620 (shen.lazyderef (tl W5618) V5608) (if (= W5620 ()) (let W5621 (shen.newpv V5608) (shen.gc V5608 (do (shen.incinfs) (shen.cut V5608 V5609 W5612 (freeze (bind W5621 (shen.curry W5617) V5608 V5609 W5612 (freeze (shen.system-S-h W5621 boolean V5607 V5608 V5609 W5612 (freeze (shen.cut V5608 V5609 W5612 (freeze (shen.t*-correct W5619 V5606 (cons (cons W5621 (cons (intern ":") (cons verified ()))) V5607) V5608 V5609 W5612 V5611)))))))))))) false))) false))) false)) false)) false)) false) (if (= W5613 false) (let W5622 (if (shen.unlocked? V5609) (do (shen.incinfs) (shen.system-S-h (shen.curry V5605) V5606 V5607 V5608 V5609 W5612 V5611)) false) (if (= W5622 false) (shen.unlock V5609 W5612) W5622)) W5613)))) +(defun shen.p-hyps (V5140 V5141 V5142 V5143 V5144 V5145) (let W5146 (if (shen.unlocked? V5143) (let W5147 (shen.lazyderef V5140 V5142) (if (= W5147 ()) (let W5148 (shen.lazyderef V5141 V5142) (let W5149 (freeze (do (shen.incinfs) (thaw V5145))) (if (= W5148 ()) (thaw W5149) (if (shen.pvar? W5148) (shen.bind! W5148 () V5142 W5149) false)))) false)) false) (if (= W5146 false) (if (shen.unlocked? V5143) (let W5150 (shen.lazyderef V5140 V5142) (if (cons? W5150) (let W5151 (hd W5150) (let W5152 (tl W5150) (let W5153 (shen.lazyderef V5141 V5142) (let W5154 (lambda Z5155 (lambda Z5156 (lambda Z5157 (lambda Z5158 (do (shen.incinfs) (bind Z5155 W5151 V5142 V5143 V5144 (freeze (bind Z5156 (intern ":") V5142 V5143 V5144 (freeze (shen.p-hyps W5152 Z5158 V5142 V5143 V5144 V5145)))))))))) (if (cons? W5153) (let W5159 (shen.lazyderef (hd W5153) V5142) (let W5160 (lambda Z5161 (lambda Z5162 (lambda Z5163 (let W5164 (tl W5153) ((((W5154 Z5161) Z5162) Z5163) W5164))))) (if (cons? W5159) (let W5165 (hd W5159) (let W5166 (shen.lazyderef (tl W5159) V5142) (let W5167 (lambda Z5168 (lambda Z5169 (((W5160 W5165) Z5168) Z5169))) (if (cons? W5166) (let W5170 (hd W5166) (let W5171 (shen.lazyderef (tl W5166) V5142) (let W5172 (lambda Z5173 ((W5167 W5170) Z5173)) (if (cons? W5171) (let W5174 (hd W5171) (let W5175 (shen.lazyderef (tl W5171) V5142) (let W5176 (freeze (W5172 W5174)) (if (= W5175 ()) (thaw W5176) (if (shen.pvar? W5175) (shen.bind! W5175 () V5142 W5176) false))))) (if (shen.pvar? W5171) (let W5177 (shen.newpv V5142) (shen.gc V5142 (shen.bind! W5171 (cons W5177 ()) V5142 (freeze (W5172 W5177))))) false))))) (if (shen.pvar? W5166) (let W5178 (shen.newpv V5142) (shen.gc V5142 (let W5179 (shen.newpv V5142) (shen.gc V5142 (shen.bind! W5166 (cons W5178 (cons W5179 ())) V5142 (freeze ((W5167 W5178) W5179))))))) false))))) (if (shen.pvar? W5159) (let W5180 (shen.newpv V5142) (shen.gc V5142 (let W5181 (shen.newpv V5142) (shen.gc V5142 (let W5182 (shen.newpv V5142) (shen.gc V5142 (shen.bind! W5159 (cons W5180 (cons W5181 (cons W5182 ()))) V5142 (freeze (((W5160 W5180) W5181) W5182))))))))) false)))) (if (shen.pvar? W5153) (let W5183 (shen.newpv V5142) (shen.gc V5142 (let W5184 (shen.newpv V5142) (shen.gc V5142 (let W5185 (shen.newpv V5142) (shen.gc V5142 (let W5186 (shen.newpv V5142) (shen.gc V5142 (shen.bind! W5153 (cons (cons W5183 (cons W5184 (cons W5185 ()))) W5186) V5142 (freeze ((((W5154 W5183) W5184) W5185) W5186))))))))))) false)))))) false)) false) W5146))) -(defun shen.t*-integrity (V5623 V5624 V5625 V5626 V5627 V5628 V5629 V5630) (let W5631 (if (shen.unlocked? V5628) (let W5632 (shen.lazyderef V5623 V5627) (if (= W5632 ()) (do (shen.incinfs) (is! V5624 V5626 V5627 V5628 V5629 V5630)) false)) false) (if (= W5631 false) (if (shen.unlocked? V5628) (let W5633 (shen.lazyderef V5623 V5627) (if (cons? W5633) (let W5634 (hd W5633) (let W5635 (tl W5633) (let W5636 (shen.lazyderef V5624 V5627) (if (cons? W5636) (let W5637 (hd W5636) (let W5638 (shen.lazyderef (tl W5636) V5627) (if (cons? W5638) (let W5639 (shen.lazyderef (hd W5638) V5627) (if (= W5639 -->) (let W5640 (shen.lazyderef (tl W5638) V5627) (if (cons? W5640) (let W5641 (hd W5640) (let W5642 (shen.lazyderef (tl W5640) V5627) (if (= W5642 ()) (do (shen.incinfs) (shen.system-S-h W5634 W5637 V5625 V5627 V5628 V5629 (freeze (shen.t*-integrity W5635 W5641 V5625 V5626 V5627 V5628 V5629 V5630)))) false))) false)) false)) false))) false)))) false)) false) W5631))) +(defun shen.t*-correct (V5187 V5188 V5189 V5190 V5191 V5192 V5193) (let W5194 (+ V5192 1) (let W5195 (if (shen.unlocked? V5191) (let W5196 (shen.lazyderef V5187 V5190) (if (cons? W5196) (let W5197 (shen.lazyderef (hd W5196) V5190) (if (= W5197 where) (let W5198 (shen.lazyderef (tl W5196) V5190) (if (cons? W5198) (let W5199 (hd W5198) (let W5200 (shen.lazyderef (tl W5198) V5190) (if (cons? W5200) (let W5201 (hd W5200) (let W5202 (shen.lazyderef (tl W5200) V5190) (if (= W5202 ()) (let W5203 (shen.newpv V5190) (shen.gc V5190 (do (shen.incinfs) (shen.cut V5190 V5191 W5194 (freeze (bind W5203 (shen.curry W5199) V5190 V5191 W5194 (freeze (shen.system-S-h W5203 boolean V5189 V5190 V5191 W5194 (freeze (shen.cut V5190 V5191 W5194 (freeze (shen.t*-correct W5201 V5188 (cons (cons W5203 (cons (intern ":") (cons verified ()))) V5189) V5190 V5191 W5194 V5193)))))))))))) false))) false))) false)) false)) false)) false) (if (= W5195 false) (let W5204 (if (shen.unlocked? V5191) (do (shen.incinfs) (shen.system-S-h (shen.curry V5187) V5188 V5189 V5190 V5191 W5194 V5193)) false) (if (= W5204 false) (shen.unlock V5191 W5194) W5204)) W5195)))) -(defun shen.freshterm? (V5643) (and (absvector? V5643) (and (not (string? V5643)) (= (<-address V5643 0) shen.print-freshterm)))) +(defun shen.t*-integrity (V5205 V5206 V5207 V5208 V5209 V5210 V5211 V5212) (let W5213 (if (shen.unlocked? V5210) (let W5214 (shen.lazyderef V5205 V5209) (if (= W5214 ()) (do (shen.incinfs) (is! V5206 V5208 V5209 V5210 V5211 V5212)) false)) false) (if (= W5213 false) (if (shen.unlocked? V5210) (let W5215 (shen.lazyderef V5205 V5209) (if (cons? W5215) (let W5216 (hd W5215) (let W5217 (tl W5215) (let W5218 (shen.lazyderef V5206 V5209) (if (cons? W5218) (let W5219 (hd W5218) (let W5220 (shen.lazyderef (tl W5218) V5209) (if (cons? W5220) (let W5221 (shen.lazyderef (hd W5220) V5209) (if (= W5221 -->) (let W5222 (shen.lazyderef (tl W5220) V5209) (if (cons? W5222) (let W5223 (hd W5222) (let W5224 (shen.lazyderef (tl W5222) V5209) (if (= W5224 ()) (do (shen.incinfs) (shen.system-S-h W5216 W5219 V5207 V5209 V5210 V5211 (freeze (shen.t*-integrity W5217 W5223 V5207 V5208 V5209 V5210 V5211 V5212)))) false))) false)) false)) false))) false)))) false)) false) W5213))) + +(defun shen.freshterm? (V5225) (and (absvector? V5225) (and (not (string? V5225)) (= (<-address V5225 0) shen.print-freshterm)))) diff --git a/kernel/klambda/toplevel.kl b/kernel/klambda/toplevel.kl index f22863a..4730661 100644 --- a/kernel/klambda/toplevel.kl +++ b/kernel/klambda/toplevel.kl @@ -1,8 +1,6 @@ -(defun shen.repl () (do (shen.credits) (shen.loop))) +(defun shen.shen () (do (shen.credits) (shen.loop))) -(defun shen.loop () (do (shen.initialise_environment) (do (shen.prompt) (do (trap-error (shen.read-evaluate-print) (lambda Z5667 (shen.toplevel-display-exception Z5667))) (shen.loop))))) - -(defun shen.toplevel-display-exception (V5668) (do (pr (error-to-string V5668) (stoutput)) (nl 0))) +(defun shen.loop () (do (shen.initialise_environment) (do (shen.prompt) (do (trap-error (shen.read-evaluate-print) (lambda Z5248 (do (pr (error-to-string Z5248) (stoutput)) (nl 0)))) (shen.loop))))) (defun shen.credits () (do (pr " Shen, www.shenlanguage.org, copyright (C) 2010-2024, Mark Tarver @@ -17,32 +15,32 @@ Shen, www.shenlanguage.org, copyright (C) 2010-2024, Mark Tarver (" (shen.app (length (value shen.*history*)) "+) " shen.a)) (stoutput)) (pr (cn " (" (shen.app (length (value shen.*history*)) "-) " shen.a)) (stoutput)))) -(defun shen.read-evaluate-print () (let W5669 (value shen.*package*) (let W5670 (shen.package-user-input W5669 (lineread (stinput))) (let W5671 (shen.update-history) (shen.evaluate-lineread W5670 W5671 (value shen.*tc*)))))) +(defun shen.read-evaluate-print () (let W5249 (value shen.*package*) (let W5250 (shen.package-user-input W5249 (lineread (stinput))) (let W5251 (shen.update-history) (shen.evaluate-lineread W5250 W5251 (value shen.*tc*)))))) -(defun shen.package-user-input (V5672 V5673) (cond ((= null V5672) V5673) (true (let W5674 (str V5672) (let W5675 (external V5672) (map (lambda Z5676 (shen.pui-h W5674 W5675 Z5676)) V5673)))))) +(defun shen.package-user-input (V5252 V5253) (cond ((= null V5252) V5253) (true (let W5254 (str V5252) (let W5255 (external V5252) (map (lambda Z5256 (shen.pui-h W5254 W5255 Z5256)) V5253)))))) -(defun shen.pui-h (V5681 V5682 V5683) (cond ((and (cons? V5683) (and (= fn (hd V5683)) (and (cons? (tl V5683)) (= () (tl (tl V5683)))))) (if (shen.internal? (hd (tl V5683)) V5681 V5682) (cons fn (cons (shen.intern-in-package V5681 (hd (tl V5683))) ())) V5683)) ((cons? V5683) (if (shen.internal? (hd V5683) V5681 V5682) (cons (shen.intern-in-package V5681 (hd V5683)) (map (lambda Z5684 (shen.pui-h V5681 V5682 Z5684)) (tl V5683))) (if (cons? (hd V5683)) (map (lambda Z5685 (shen.pui-h V5681 V5682 Z5685)) V5683) (cons (hd V5683) (map (lambda Z5686 (shen.pui-h V5681 V5682 Z5686)) (tl V5683)))))) (true V5683))) +(defun shen.pui-h (V5261 V5262 V5263) (cond ((and (cons? V5263) (and (= fn (hd V5263)) (and (cons? (tl V5263)) (= () (tl (tl V5263)))))) (if (shen.internal? (hd (tl V5263)) V5261 V5262) (cons fn (cons (shen.intern-in-package V5261 (hd (tl V5263))) ())) V5263)) ((cons? V5263) (if (shen.internal? (hd V5263) V5261 V5262) (cons (shen.intern-in-package V5261 (hd V5263)) (map (lambda Z5264 (shen.pui-h V5261 V5262 Z5264)) (tl V5263))) (if (cons? (hd V5263)) (map (lambda Z5265 (shen.pui-h V5261 V5262 Z5265)) V5263) (cons (hd V5263) (map (lambda Z5266 (shen.pui-h V5261 V5262 Z5266)) (tl V5263)))))) (true V5263))) (defun shen.update-history () (set shen.*history* (cons (shen.trim-it (it)) (value shen.*history*)))) -(defun shen.trim-it (V5687) (cond ((and (shen.+string? V5687) (shen.whitespace? (string->n (hdstr V5687)))) (shen.trim-it (tlstr V5687))) (true V5687))) +(defun shen.trim-it (V5267) (cond ((and (shen.+string? V5267) (shen.whitespace? (string->n (hdstr V5267)))) (shen.trim-it (tlstr V5267))) (true V5267))) -(defun shen.evaluate-lineread (V5706 V5707 V5708) (cond ((and (cons? V5706) (and (= () (tl V5706)) (and (cons? V5707) (and (shen.+string? (hd V5707)) (and (= "!" (hdstr (hd V5707))) (and (shen.+string? (tlstr (hd V5707))) (and (= "!" (hdstr (tlstr (hd V5707)))) (cons? (tl V5707))))))))) (let W5709 (read-from-string (hd (tl V5707))) (let W5710 (set shen.*history* (cons (hd (tl V5707)) (tl V5707))) (let W5711 (pr (shen.app (hd (tl V5707)) " -" shen.a) (stoutput)) (shen.evaluate-lineread W5709 W5710 V5708))))) ((and (cons? V5706) (and (= () (tl V5706)) (and (cons? V5707) (and (shen.+string? (hd V5707)) (= "!" (hdstr (hd V5707))))))) (let W5712 (if (= (tlstr (hd V5707)) "") () (hd (read-from-string (tlstr (hd V5707))))) (let W5713 (shen.use-history W5712 (tlstr (hd V5707)) (tl V5707)) (let W5714 (pr (shen.app W5713 " -" shen.a) (stoutput)) (let W5715 (read-from-string W5713) (let W5716 (set shen.*history* (cons W5713 (tl V5707))) (shen.evaluate-lineread W5715 W5716 V5708))))))) ((and (cons? V5706) (and (= () (tl V5706)) (and (cons? V5707) (and (shen.+string? (hd V5707)) (= "%" (hdstr (hd V5707))))))) (let W5717 (if (= (tlstr (hd V5707)) "") () (hd (read-from-string (tlstr (hd V5707))))) (let W5718 (shen.peek-history W5717 (tlstr (hd V5707)) (tl V5707)) (let W5719 (set shen.*history* (tl V5707)) (abort))))) ((= true V5708) (shen.check-eval-and-print V5706)) ((= false V5708) (shen.eval-and-print V5706)) (true (simple-error "implementation error in shen.evaluate-lineread")))) +(defun shen.evaluate-lineread (V5286 V5287 V5288) (cond ((and (cons? V5286) (and (= () (tl V5286)) (and (cons? V5287) (and (shen.+string? (hd V5287)) (and (= "!" (hdstr (hd V5287))) (and (shen.+string? (tlstr (hd V5287))) (and (= "!" (hdstr (tlstr (hd V5287)))) (cons? (tl V5287))))))))) (let W5289 (read-from-string (hd (tl V5287))) (let W5290 (set shen.*history* (cons (hd (tl V5287)) (tl V5287))) (let W5291 (pr (shen.app (hd (tl V5287)) " +" shen.a) (stoutput)) (shen.evaluate-lineread W5289 W5290 V5288))))) ((and (cons? V5286) (and (= () (tl V5286)) (and (cons? V5287) (and (shen.+string? (hd V5287)) (= "!" (hdstr (hd V5287))))))) (let W5292 (if (= (tlstr (hd V5287)) "") () (hd (read-from-string (tlstr (hd V5287))))) (let W5293 (shen.use-history W5292 (tlstr (hd V5287)) (tl V5287)) (let W5294 (pr (shen.app W5293 " +" shen.a) (stoutput)) (let W5295 (read-from-string W5293) (let W5296 (set shen.*history* (cons W5293 (tl V5287))) (shen.evaluate-lineread W5295 W5296 V5288))))))) ((and (cons? V5286) (and (= () (tl V5286)) (and (cons? V5287) (and (shen.+string? (hd V5287)) (= "%" (hdstr (hd V5287))))))) (let W5297 (if (= (tlstr (hd V5287)) "") () (hd (read-from-string (tlstr (hd V5287))))) (let W5298 (shen.peek-history W5297 (tlstr (hd V5287)) (tl V5287)) (let W5299 (set shen.*history* (tl V5287)) (abort))))) ((= true V5288) (shen.check-eval-and-print V5286)) ((= false V5288) (shen.eval-and-print V5286)) (true (simple-error "implementation error in shen.evaluate-lineread")))) -(defun shen.use-history (V5720 V5721 V5722) (if (integer? V5720) (nth (+ 1 V5720) (reverse V5722)) (if (symbol? V5720) (shen.string-match V5721 V5722) (simple-error "! expects a number or a symbol +(defun shen.use-history (V5300 V5301 V5302) (if (integer? V5300) (nth (+ 1 V5300) (reverse V5302)) (if (symbol? V5300) (shen.string-match V5301 V5302) (simple-error "! expects a number or a symbol ")))) -(defun shen.peek-history (V5723 V5724 V5725) (if (integer? V5723) (pr (cn " -" (shen.app (nth (+ 1 V5723) (reverse V5725)) "" shen.a)) (stoutput)) (if (or (= V5724 "") (symbol? V5723)) (shen.recursive-string-match 0 V5724 (reverse V5725)) (simple-error "% expects a number or a symbol +(defun shen.peek-history (V5303 V5304 V5305) (if (integer? V5303) (pr (cn " +" (shen.app (nth (+ 1 V5303) (reverse V5305)) "" shen.a)) (stoutput)) (if (or (= V5304 "") (symbol? V5303)) (shen.recursive-string-match 0 V5304 (reverse V5305)) (simple-error "% expects a number or a symbol ")))) -(defun shen.string-match (V5735 V5736) (cond ((= () V5736) (simple-error " -input not found")) ((and (cons? V5736) (shen.string-prefix? V5735 (hd V5736))) (hd V5736)) ((cons? V5736) (shen.string-match V5735 (tl V5736))) (true (simple-error "implementation error in shen.string-match")))) +(defun shen.string-match (V5315 V5316) (cond ((= () V5316) (simple-error " +input not found")) ((and (cons? V5316) (shen.string-prefix? V5315 (hd V5316))) (hd V5316)) ((cons? V5316) (shen.string-match V5315 (tl V5316))) (true (simple-error "implementation error in shen.string-match")))) -(defun shen.string-prefix? (V5744 V5745) (cond ((= "" V5744) true) ((and (shen.+string? V5744) (shen.whitespace? (string->n (hdstr V5744)))) (shen.string-prefix? (tlstr V5744) V5745)) ((and (shen.+string? V5745) (shen.whitespace? (string->n (hdstr V5745)))) (shen.string-prefix? V5744 (tlstr V5745))) ((and (shen.+string? V5745) (= "(" (hdstr V5745))) (shen.string-prefix? V5744 (tlstr V5745))) ((and (shen.+string? V5744) (and (shen.+string? V5745) (= (hdstr V5744) (hdstr V5745)))) (shen.string-prefix? (tlstr V5744) (tlstr V5745))) (true false))) +(defun shen.string-prefix? (V5324 V5325) (cond ((= "" V5324) true) ((and (shen.+string? V5324) (shen.whitespace? (string->n (hdstr V5324)))) (shen.string-prefix? (tlstr V5324) V5325)) ((and (shen.+string? V5325) (shen.whitespace? (string->n (hdstr V5325)))) (shen.string-prefix? V5324 (tlstr V5325))) ((and (shen.+string? V5325) (= "(" (hdstr V5325))) (shen.string-prefix? V5324 (tlstr V5325))) ((and (shen.+string? V5324) (and (shen.+string? V5325) (= (hdstr V5324) (hdstr V5325)))) (shen.string-prefix? (tlstr V5324) (tlstr V5325))) (true false))) -(defun shen.recursive-string-match (V5756 V5757 V5758) (cond ((= () V5758) shen.skip) ((cons? V5758) (do (if (shen.string-prefix? V5757 (hd V5758)) (pr (shen.app V5756 (cn ". " (shen.app (hd V5758) " -" shen.a)) shen.a) (stoutput)) shen.skip) (shen.recursive-string-match (+ V5756 1) V5757 (tl V5758)))) (true (simple-error "implementation error in shen.recursive-string-match")))) +(defun shen.recursive-string-match (V5336 V5337 V5338) (cond ((= () V5338) shen.skip) ((cons? V5338) (do (if (shen.string-prefix? V5337 (hd V5338)) (pr (shen.app V5336 (cn ". " (shen.app (hd V5338) " +" shen.a)) shen.a) (stoutput)) shen.skip) (shen.recursive-string-match (+ V5336 1) V5337 (tl V5338)))) (true (simple-error "implementation error in shen.recursive-string-match")))) diff --git a/kernel/klambda/track.kl b/kernel/klambda/track.kl index 4281580..5522a98 100644 --- a/kernel/klambda/track.kl +++ b/kernel/klambda/track.kl @@ -1,66 +1,66 @@ -(defun shen.f-error (V5790) (do (pr (cn "partial function " (shen.app V5790 "; -" shen.a)) (stoutput)) (do (if (and (not (shen.tracked? V5790)) (y-or-n? (cn "track " (shen.app V5790 "? " shen.a)))) (shen.track-function (ps V5790)) shen.ok) (simple-error "aborted")))) +(defun shen.f-error (V5370) (do (pr (cn "partial function " (shen.app V5370 "; +" shen.a)) (stoutput)) (do (if (and (not (shen.tracked? V5370)) (y-or-n? (cn "track " (shen.app V5370 "? " shen.a)))) (shen.track-function (ps V5370)) shen.ok) (simple-error "aborted")))) -(defun shen.tracked? (V5791) (element? V5791 (value shen.*tracking*))) +(defun shen.tracked? (V5371) (element? V5371 (value shen.*tracking*))) -(defun track (V5792) (let W5793 (ps V5792) (shen.track-function W5793))) +(defun track (V5372) (let W5373 (ps V5372) (shen.track-function W5373))) -(defun shen.track-function (V5796) (cond ((and (cons? V5796) (and (= defun (hd V5796)) (and (cons? (tl V5796)) (and (cons? (tl (tl V5796))) (and (cons? (tl (tl (tl V5796)))) (= () (tl (tl (tl (tl V5796)))))))))) (let W5797 (cons defun (cons (hd (tl V5796)) (cons (hd (tl (tl V5796))) (cons (shen.insert-tracking-code (hd (tl V5796)) (hd (tl (tl V5796))) (hd (tl (tl (tl V5796))))) ())))) (let W5798 (eval-kl W5797) (let W5799 (set shen.*tracking* (adjoin (hd (tl V5796)) (value shen.*tracking*))) (hd (tl V5796)))))) (true (simple-error "implementation error in shen.track-function")))) +(defun shen.track-function (V5376) (cond ((and (cons? V5376) (and (= defun (hd V5376)) (and (cons? (tl V5376)) (and (cons? (tl (tl V5376))) (and (cons? (tl (tl (tl V5376)))) (= () (tl (tl (tl (tl V5376)))))))))) (let W5377 (cons defun (cons (hd (tl V5376)) (cons (hd (tl (tl V5376))) (cons (shen.insert-tracking-code (hd (tl V5376)) (hd (tl (tl V5376))) (hd (tl (tl (tl V5376))))) ())))) (let W5378 (eval-kl W5377) (let W5379 (set shen.*tracking* (adjoin (hd (tl V5376)) (value shen.*tracking*))) (hd (tl V5376)))))) (true (simple-error "implementation error in shen.track-function")))) -(defun shen.insert-tracking-code (V5800 V5801 V5802) (cons do (cons (cons set (cons shen.*call* (cons (cons + (cons (cons value (cons shen.*call* ())) (cons 1 ()))) ()))) (cons (cons do (cons (cons shen.input-track (cons (cons value (cons shen.*call* ())) (cons V5800 (cons (shen.cons-form (shen.prolog-track V5802 V5801)) ())))) (cons (cons do (cons (cons shen.terpri-or-read-char ()) (cons (cons let (cons Result (cons V5802 (cons (cons do (cons (cons shen.output-track (cons (cons value (cons shen.*call* ())) (cons V5800 (cons Result ())))) (cons (cons do (cons (cons set (cons shen.*call* (cons (cons - (cons (cons value (cons shen.*call* ())) (cons 1 ()))) ()))) (cons (cons do (cons (cons shen.terpri-or-read-char ()) (cons Result ()))) ()))) ()))) ())))) ()))) ()))) ())))) +(defun shen.insert-tracking-code (V5380 V5381 V5382) (cons do (cons (cons set (cons shen.*call* (cons (cons + (cons (cons value (cons shen.*call* ())) (cons 1 ()))) ()))) (cons (cons do (cons (cons shen.input-track (cons (cons value (cons shen.*call* ())) (cons V5380 (cons (shen.cons-form (shen.prolog-track V5382 V5381)) ())))) (cons (cons do (cons (cons shen.terpri-or-read-char ()) (cons (cons let (cons Result (cons V5382 (cons (cons do (cons (cons shen.output-track (cons (cons value (cons shen.*call* ())) (cons V5380 (cons Result ())))) (cons (cons do (cons (cons set (cons shen.*call* (cons (cons - (cons (cons value (cons shen.*call* ())) (cons 1 ()))) ()))) (cons (cons do (cons (cons shen.terpri-or-read-char ()) (cons Result ()))) ()))) ()))) ())))) ()))) ()))) ())))) -(defun shen.prolog-track (V5803 V5804) (cond ((= (occurrences shen.incinfs V5803) 0) V5804) (true (shen.vector-dereference V5804 (shen.vector-parameter V5804))))) +(defun shen.prolog-track (V5383 V5384) (cond ((= (occurrences shen.incinfs V5383) 0) V5384) (true (shen.vector-dereference V5384 (shen.vector-parameter V5384))))) -(defun shen.vector-parameter (V5807) (cond ((= () V5807) ()) ((and (cons? V5807) (and (cons? (tl V5807)) (and (cons? (tl (tl V5807))) (and (cons? (tl (tl (tl V5807)))) (= () (tl (tl (tl (tl V5807))))))))) (hd V5807)) ((cons? V5807) (shen.vector-parameter (tl V5807))) (true (shen.f-error shen.vector-parameter)))) +(defun shen.vector-parameter (V5387) (cond ((= () V5387) ()) ((and (cons? V5387) (and (cons? (tl V5387)) (and (cons? (tl (tl V5387))) (and (cons? (tl (tl (tl V5387)))) (= () (tl (tl (tl (tl V5387))))))))) (hd V5387)) ((cons? V5387) (shen.vector-parameter (tl V5387))) (true (simple-error "partial function shen.vector-parameter")))) -(defun shen.vector-dereference (V5810 V5811) (cond ((= () V5811) V5810) ((and (cons? V5810) (and (cons? (tl V5810)) (and (cons? (tl (tl V5810))) (and (cons? (tl (tl (tl V5810)))) (= () (tl (tl (tl (tl V5810))))))))) V5810) ((cons? V5810) (cons (cons shen.deref (cons (hd V5810) (cons V5811 ()))) (shen.vector-dereference (tl V5810) V5811))) (true (shen.f-error shen.vector-dereference)))) +(defun shen.vector-dereference (V5390 V5391) (cond ((= () V5391) V5390) ((and (cons? V5390) (and (cons? (tl V5390)) (and (cons? (tl (tl V5390))) (and (cons? (tl (tl (tl V5390)))) (= () (tl (tl (tl (tl V5390))))))))) V5390) ((cons? V5390) (cons (cons shen.deref (cons (hd V5390) (cons V5391 ()))) (shen.vector-dereference (tl V5390) V5391))) (true (simple-error "partial function shen.vector-dereference")))) -(defun step (V5814) (cond ((= + V5814) (set shen.*step* true)) ((= - V5814) (set shen.*step* false)) (true (simple-error "step expects a + or a -. +(defun step (V5394) (cond ((= + V5394) (set shen.*step* true)) ((= - V5394) (set shen.*step* false)) (true (simple-error "step expects a + or a -. ")))) -(defun shen.step? () (value shen.*step*)) +(defun step? () (value shen.*step*)) -(defun spy (V5817) (cond ((= + V5817) (set shen.*spy* true)) ((= - V5817) (set shen.*spy* false)) (true (simple-error "spy expects a + or a -. +(defun spy (V5397) (cond ((= + V5397) (set shen.*spy* true)) ((= - V5397) (set shen.*spy* false)) (true (simple-error "spy expects a + or a -. ")))) -(defun shen.spy? () (value shen.*spy*)) +(defun spy? () (value shen.*spy*)) (defun shen.terpri-or-read-char () (if (value shen.*step*) (shen.check-byte (read-byte (value *stinput*))) (nl 1))) -(defun shen.check-byte (V5820) (cond ((= 94 V5820) (simple-error "aborted")) (true true))) +(defun shen.check-byte (V5400) (cond ((= 94 V5400) (simple-error "aborted")) (true true))) -(defun shen.input-track (V5821 V5822 V5823) (do (pr (cn " -" (shen.app (shen.spaces V5821) (cn "<" (shen.app V5821 (cn "> Inputs to " (shen.app V5822 (cn " -" (shen.app (shen.spaces V5821) "" shen.a)) shen.a)) shen.a)) shen.a)) (stoutput)) (shen.recursively-print V5823))) +(defun shen.input-track (V5401 V5402 V5403) (do (pr (cn " +" (shen.app (shen.spaces V5401) (cn "<" (shen.app V5401 (cn "> Inputs to " (shen.app V5402 (cn " +" (shen.app (shen.spaces V5401) "" shen.a)) shen.a)) shen.a)) shen.a)) (stoutput)) (shen.recursively-print V5403))) -(defun shen.recursively-print (V5826) (cond ((= () V5826) (pr " ==>" (stoutput))) ((cons? V5826) (do (print (hd V5826)) (do (pr ", " (stoutput)) (shen.recursively-print (tl V5826))))) (true (simple-error "implementation error in shen.recursively-print")))) +(defun shen.recursively-print (V5406) (cond ((= () V5406) (pr " ==>" (stoutput))) ((cons? V5406) (do (print (hd V5406)) (do (pr ", " (stoutput)) (shen.recursively-print (tl V5406))))) (true (simple-error "implementation error in shen.recursively-print")))) -(defun shen.spaces (V5827) (cond ((= 0 V5827) "") (true (cn " " (shen.spaces (- V5827 1)))))) +(defun shen.spaces (V5407) (cond ((= 0 V5407) "") (true (cn " " (shen.spaces (- V5407 1)))))) -(defun shen.output-track (V5828 V5829 V5830) (pr (cn " -" (shen.app (shen.spaces V5828) (cn "<" (shen.app V5828 (cn "> Output from " (shen.app V5829 (cn " -" (shen.app (shen.spaces V5828) (cn "==> " (shen.app V5830 "" shen.s)) shen.a)) shen.a)) shen.a)) shen.a)) (stoutput))) +(defun shen.output-track (V5408 V5409 V5410) (pr (cn " +" (shen.app (shen.spaces V5408) (cn "<" (shen.app V5408 (cn "> Output from " (shen.app V5409 (cn " +" (shen.app (shen.spaces V5408) (cn "==> " (shen.app V5410 "" shen.s)) shen.a)) shen.a)) shen.a)) shen.a)) (stoutput))) -(defun untrack (V5831) (do (set shen.*tracking* (remove V5831 (value shen.*tracking*))) (do (trap-error (eval (ps V5831)) (lambda Z5832 V5831)) V5831))) +(defun untrack (V5411) (do (set shen.*tracking* (remove V5411 (value shen.*tracking*))) (do (trap-error (eval (ps V5411)) (lambda Z5412 V5411)) V5411))) -(defun remove (V5833 V5834) (shen.remove-h V5833 V5834 ())) +(defun remove (V5413 V5414) (shen.remove-h V5413 V5414 ())) -(defun shen.remove-h (V5844 V5845 V5846) (cond ((= () V5845) (reverse V5846)) ((and (cons? V5845) (= V5844 (hd V5845))) (shen.remove-h (hd V5845) (tl V5845) V5846)) ((cons? V5845) (shen.remove-h V5844 (tl V5845) (cons (hd V5845) V5846))) (true (simple-error "implementation error in shen.remove-h")))) +(defun shen.remove-h (V5424 V5425 V5426) (cond ((= () V5425) (reverse V5426)) ((and (cons? V5425) (= V5424 (hd V5425))) (shen.remove-h (hd V5425) (tl V5425) V5426)) ((cons? V5425) (shen.remove-h V5424 (tl V5425) (cons (hd V5425) V5426))) (true (simple-error "implementation error in shen.remove-h")))) -(defun profile (V5847) (do (set shen.*profiled* (cons V5847 (value shen.*profiled*))) (shen.profile-help (ps V5847)))) +(defun profile (V5427) (do (set shen.*profiled* (cons V5427 (value shen.*profiled*))) (shen.profile-help (ps V5427)))) -(defun shen.profile-help (V5850) (cond ((and (cons? V5850) (and (= defun (hd V5850)) (and (cons? (tl V5850)) (and (cons? (tl (tl V5850))) (and (cons? (tl (tl (tl V5850)))) (= () (tl (tl (tl (tl V5850)))))))))) (let W5851 (gensym shen.f) (let W5852 (cons defun (cons (hd (tl V5850)) (cons (hd (tl (tl V5850))) (cons (shen.profile-func (hd (tl V5850)) (hd (tl (tl V5850))) (cons W5851 (hd (tl (tl V5850))))) ())))) (let W5853 (cons defun (cons W5851 (cons (hd (tl (tl V5850))) (cons (subst W5851 (hd (tl V5850)) (hd (tl (tl (tl V5850))))) ())))) (let W5854 (eval-kl W5852) (let W5855 (eval-kl W5853) (hd (tl V5850)))))))) (true (simple-error "Cannot profile. +(defun shen.profile-help (V5430) (cond ((and (cons? V5430) (and (= defun (hd V5430)) (and (cons? (tl V5430)) (and (cons? (tl (tl V5430))) (and (cons? (tl (tl (tl V5430)))) (= () (tl (tl (tl (tl V5430)))))))))) (let W5431 (gensym shen.f) (let W5432 (cons defun (cons (hd (tl V5430)) (cons (hd (tl (tl V5430))) (cons (shen.profile-func (hd (tl V5430)) (hd (tl (tl V5430))) (cons W5431 (hd (tl (tl V5430))))) ())))) (let W5433 (cons defun (cons W5431 (cons (hd (tl (tl V5430))) (cons (subst W5431 (hd (tl V5430)) (hd (tl (tl (tl V5430))))) ())))) (let W5434 (eval-kl W5432) (let W5435 (eval-kl W5433) (hd (tl V5430)))))))) (true (simple-error "Cannot profile. ")))) -(defun unprofile (V5856) (do (set shen.*profiled* (remove V5856 (value shen.*profiled*))) (trap-error (eval (ps V5856)) (lambda Z5857 V5856)))) +(defun unprofile (V5436) (do (set shen.*profiled* (remove V5436 (value shen.*profiled*))) (trap-error (eval (ps V5436)) (lambda Z5437 V5436)))) -(defun shen.profiled? (V5858) (element? V5858 (value shen.*profiled*))) +(defun shen.profiled? (V5438) (element? V5438 (value shen.*profiled*))) -(defun shen.profile-func (V5859 V5860 V5861) (cons let (cons Start (cons (cons get-time (cons run ())) (cons (cons let (cons Result (cons V5861 (cons (cons let (cons Finish (cons (cons - (cons (cons get-time (cons run ())) (cons Start ()))) (cons (cons let (cons Record (cons (cons shen.put-profile (cons V5859 (cons (cons + (cons (cons shen.get-profile (cons V5859 ())) (cons Finish ()))) ()))) (cons Result ())))) ())))) ())))) ()))))) +(defun shen.profile-func (V5439 V5440 V5441) (cons let (cons Start (cons (cons get-time (cons run ())) (cons (cons let (cons Result (cons V5441 (cons (cons let (cons Finish (cons (cons - (cons (cons get-time (cons run ())) (cons Start ()))) (cons (cons let (cons Record (cons (cons shen.put-profile (cons V5439 (cons (cons + (cons (cons shen.get-profile (cons V5439 ())) (cons Finish ()))) ()))) (cons Result ())))) ())))) ())))) ()))))) -(defun profile-results (V5862) (let W5863 (shen.get-profile V5862) (let W5864 (shen.put-profile V5862 0) (@p V5862 W5863)))) +(defun profile-results (V5442) (let W5443 (shen.get-profile V5442) (let W5444 (shen.put-profile V5442 0) (@p V5442 W5443)))) -(defun shen.get-profile (V5865) (trap-error (get V5865 profile (value *property-vector*)) (lambda Z5866 0))) +(defun shen.get-profile (V5445) (trap-error (get V5445 profile (value *property-vector*)) (lambda Z5446 0))) -(defun shen.put-profile (V5867 V5868) (put V5867 profile V5868 (value *property-vector*))) +(defun shen.put-profile (V5447 V5448) (put V5447 profile V5448 (value *property-vector*))) diff --git a/kernel/klambda/types.kl b/kernel/klambda/types.kl index 88c6fac..d23a10e 100644 --- a/kernel/klambda/types.kl +++ b/kernel/klambda/types.kl @@ -1,11 +1,333 @@ -(defun declare (V5907 V5908) (let W5909 (shen.rectify-type V5908) (let W5910 (((((lambda Z5911 (lambda Z5912 (lambda Z5913 (lambda Z5914 (do (shen.incinfs) (shen.variancy (receive (shen.deref V5907 Z5911)) (receive (shen.deref W5909 Z5911)) Z5911 Z5912 Z5913 Z5914)))))) (shen.prolog-vector)) (@v true (@v 0 (vector 0)))) 0) (freeze true)) (let W5915 (eval-kl (shen.prolog-abstraction V5908)) (let W5916 (set shen.*sigf* (shen.assoc-> V5907 W5915 (value shen.*sigf*))) V5907))))) +(defun declare (V5483 V5484) (let W5485 (shen.rectify-type V5484) (let W5486 (((((lambda Z5487 (lambda Z5488 (lambda Z5489 (lambda Z5490 (do (shen.incinfs) (shen.variancy (receive (shen.deref V5483 Z5487)) (receive (shen.deref W5485 Z5487)) Z5487 Z5488 Z5489 Z5490)))))) (shen.prolog-vector)) (@v true (@v 0 (vector 0)))) 0) (freeze true)) (let W5491 (eval-kl (shen.prolog-abstraction V5484)) (let W5492 (set shen.*sigf* (shen.assoc-> V5483 W5491 (value shen.*sigf*))) V5483))))) -(defun shen.variancy (V5917 V5918 V5919 V5920 V5921 V5922) (if (shen.unlocked? V5920) (let W5923 (shen.newpv V5919) (shen.gc V5919 (do (shen.incinfs) (shen.system-S-h V5917 W5923 () V5919 V5920 V5921 (freeze (shen.variants? V5917 W5923 V5918 V5919 V5920 V5921 V5922)))))) false)) +(defun shen.variancy (V5493 V5494 V5495 V5496 V5497 V5498) (if (shen.unlocked? V5496) (let W5499 (shen.newpv V5495) (shen.gc V5495 (do (shen.incinfs) (shen.system-S-h (cons fn (cons V5493 ())) W5499 () V5495 V5496 V5497 (freeze (shen.variants? V5493 W5499 V5494 V5495 V5496 V5497 V5498)))))) false)) -(defun shen.variants? (V5924 V5925 V5926 V5927 V5928 V5929 V5930) (let W5931 (+ V5929 1) (let W5932 (if (shen.unlocked? V5928) (let W5933 (shen.lazyderef V5925 V5927) (let W5934 (freeze (do (shen.incinfs) (shen.cut V5927 V5928 W5931 V5930))) (if (= W5933 symbol) (thaw W5934) (if (shen.pvar? W5933) (shen.bind! W5933 symbol V5927 W5934) false)))) false) (if (= W5932 false) (let W5935 (if (shen.unlocked? V5928) (do (shen.incinfs) (is! V5925 V5926 V5927 V5928 W5931 V5930)) false) (if (= W5935 false) (let W5936 (if (shen.unlocked? V5928) (let W5937 (shen.newpv V5927) (shen.gc V5927 (do (shen.incinfs) (is W5937 (pr (cn "warning: changing the type of " (shen.app (shen.deref V5924 V5927) " may create errors -" shen.a)) (stoutput)) V5927 V5928 W5931 V5930)))) false) (if (= W5936 false) (shen.unlock V5928 W5931) W5936)) W5935)) W5932)))) +(defun shen.variants? (V5500 V5501 V5502 V5503 V5504 V5505 V5506) (let W5507 (if (shen.unlocked? V5504) (do (shen.incinfs) (is! V5501 V5502 V5503 V5504 V5505 V5506)) false) (if (= W5507 false) (if (shen.unlocked? V5504) (let W5508 (shen.newpv V5503) (shen.gc V5503 (do (shen.incinfs) (is W5508 (pr (cn "warning: changing the type of " (shen.app (shen.deref V5500 V5503) " may create errors +" shen.a)) (stoutput)) V5503 V5504 V5505 V5506)))) false) W5507))) -(defun shen.prolog-abstraction (V5938) (let W5939 (gensym B) (let W5940 (gensym L) (let W5941 (gensym Key) (let W5942 (gensym C) (let W5943 (gensym V) (let W5944 (shen.extract-vars V5938) (cons lambda (cons W5943 (cons (cons lambda (cons W5939 (cons (cons lambda (cons W5940 (cons (cons lambda (cons W5941 (cons (cons lambda (cons W5942 (cons (shen.stpart W5944 (cons is! (cons W5943 (cons (shen.rcons_form V5938) (cons W5939 (cons W5940 (cons W5941 (cons W5942 ()))))))) W5939) ()))) ()))) ()))) ()))) ())))))))))) +(defun shen.prolog-abstraction (V5509) (let W5510 (gensym B) (let W5511 (gensym L) (let W5512 (gensym Key) (let W5513 (gensym C) (let W5514 (gensym V) (let W5515 (shen.extract-vars V5509) (cons lambda (cons W5514 (cons (cons lambda (cons W5510 (cons (cons lambda (cons W5511 (cons (cons lambda (cons W5512 (cons (cons lambda (cons W5513 (cons (shen.stpart W5515 (cons is! (cons W5514 (cons (shen.rcons_form V5509) (cons W5510 (cons W5511 (cons W5512 (cons W5513 ()))))))) W5510) ()))) ()))) ()))) ()))) ())))))))))) -(defun shen.demod (V5945) (let W5946 (value shen.*demodulation-function*) (W5946 V5945))) +(defun shen.demod (V5516) V5516) + +(declare abort (cons --> (cons A ()))) + +(declare absolute (cons string (cons --> (cons (cons list (cons string ())) ())))) + +(declare absvector? (cons A (cons --> (cons boolean ())))) + +(declare adjoin (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare and (cons boolean (cons --> (cons (cons boolean (cons --> (cons boolean ()))) ())))) + +(declare shen.app (cons A (cons --> (cons (cons string (cons --> (cons (cons symbol (cons --> (cons string ()))) ()))) ())))) + +(declare append (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare arity (cons A (cons --> (cons number ())))) + +(declare assoc (cons A (cons --> (cons (cons (cons list (cons (cons list (cons A ())) ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare atom? (cons A (cons --> (cons boolean ())))) + +(declare boolean? (cons A (cons --> (cons boolean ())))) + +(declare bootstrap (cons string (cons --> (cons string ())))) + +(declare bound? (cons symbol (cons --> (cons boolean ())))) + +(declare shen.ccons? (cons (cons list (cons A ())) (cons --> (cons boolean ())))) + +(declare cd (cons string (cons --> (cons string ())))) + +(declare close (cons (cons stream (cons A ())) (cons --> (cons (cons list (cons B ())) ())))) + +(declare cn (cons string (cons --> (cons (cons string (cons --> (cons string ()))) ())))) + +(declare compile (cons (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons B ()))) ())))) + +(declare cons? (cons A (cons --> (cons boolean ())))) + +(declare datatypes (cons --> (cons (cons list (cons symbol ())) ()))) + +(declare destroy (cons symbol (cons --> (cons symbol ())))) + +(declare difference (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare do (cons A (cons --> (cons (cons B (cons --> (cons B ()))) ())))) + +(declare (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons (cons list (cons B ())) ()))) ())))) + +(declare (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons B ())) (cons (cons list (cons A ())) ()))) ())))) + +(declare (cons (cons list (cons A ())) (cons --> (cons (cons str (cons (cons list (cons A ())) (cons (cons list (cons B ())) ()))) ())))) + +(declare shen.parse-failure? (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons boolean ())))) + +(declare shen.parse-failure (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ()))) + +(declare shen.<-out (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons B ())))) + +(declare shen.in-> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) (cons --> (cons (cons list (cons A ())) ())))) + +(declare shen.comb (cons (cons list (cons A ())) (cons --> (cons (cons B (cons --> (cons (cons str (cons (cons list (cons A ())) (cons B ()))) ()))) ())))) + +(declare element? (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons boolean ()))) ())))) + +(declare empty? (cons A (cons --> (cons boolean ())))) + +(declare enable-type-theory (cons symbol (cons --> (cons boolean ())))) + +(declare external (cons symbol (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare error-to-string (cons exception (cons --> (cons string ())))) + +(declare explode (cons A (cons --> (cons (cons list (cons string ())) ())))) + +(declare factorise (cons symbol (cons --> (cons symbol ())))) + +(declare factorise? (cons --> (cons boolean ()))) + +(declare fail (cons --> (cons symbol ()))) + +(declare fix (cons (cons A (cons --> (cons A ()))) (cons --> (cons (cons A (cons --> (cons A ()))) ())))) + +(declare freeze (cons A (cons --> (cons (cons lazy (cons A ())) ())))) + +(declare fst (cons (cons A (cons * (cons B ()))) (cons --> (cons A ())))) + +(declare gensym (cons symbol (cons --> (cons symbol ())))) + +(declare shen.hds=? (cons (cons list (cons A ())) (cons --> (cons (cons A (cons --> (cons boolean ()))) ())))) + +(declare hush (cons symbol (cons --> (cons boolean ())))) + +(declare hush? (cons --> (cons boolean ()))) + +(declare <-vector (cons (cons vector (cons A ())) (cons --> (cons (cons number (cons --> (cons A ()))) ())))) + +(declare vector-> (cons (cons vector (cons A ())) (cons --> (cons (cons number (cons --> (cons (cons A (cons --> (cons (cons vector (cons A ())) ()))) ()))) ())))) + +(declare vector (cons number (cons --> (cons (cons vector (cons A ())) ())))) + +(declare get-time (cons symbol (cons --> (cons number ())))) + +(declare hash (cons A (cons --> (cons (cons number (cons --> (cons number ()))) ())))) + +(declare head (cons (cons list (cons A ())) (cons --> (cons A ())))) + +(declare hdv (cons (cons vector (cons A ())) (cons --> (cons A ())))) + +(declare hdstr (cons string (cons --> (cons string ())))) + +(declare if (cons boolean (cons --> (cons (cons A (cons --> (cons (cons A (cons --> (cons A ()))) ()))) ())))) + +(declare in-package (cons symbol (cons --> (cons symbol ())))) + +(declare it (cons --> (cons string ()))) + +(declare implementation (cons --> (cons string ()))) + +(declare include (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare include-all-but (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare included (cons --> (cons (cons list (cons symbol ())) ()))) + +(declare inferences (cons --> (cons number ()))) + +(declare shen.insert (cons A (cons --> (cons (cons string (cons --> (cons string ()))) ())))) + +(declare integer? (cons A (cons --> (cons boolean ())))) + +(declare internal (cons symbol (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare intersection (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare language (cons --> (cons string ()))) + +(declare length (cons (cons list (cons A ())) (cons --> (cons number ())))) + +(declare limit (cons (cons vector (cons A ())) (cons --> (cons number ())))) + +(declare lineread (cons (cons stream (cons in ())) (cons --> (cons (cons list (cons unit ())) ())))) + +(declare load (cons string (cons --> (cons symbol ())))) + +(declare map (cons (cons A (cons --> (cons B ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons B ())) ()))) ())))) + +(declare mapcan (cons (cons A (cons --> (cons (cons list (cons B ())) ()))) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons B ())) ()))) ())))) + +(declare maxinferences (cons number (cons --> (cons number ())))) + +(declare n->string (cons number (cons --> (cons string ())))) + +(declare nl (cons number (cons --> (cons number ())))) + +(declare not (cons boolean (cons --> (cons boolean ())))) + +(declare nth (cons number (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons A ()))) ())))) + +(declare number? (cons A (cons --> (cons boolean ())))) + +(declare occurrences (cons A (cons --> (cons (cons B (cons --> (cons number ()))) ())))) + +(declare occurs-check (cons symbol (cons --> (cons boolean ())))) + +(declare occurs? (cons --> (cons boolean ()))) + +(declare optimise (cons symbol (cons --> (cons boolean ())))) + +(declare optimise? (cons --> (cons boolean ()))) + +(declare or (cons boolean (cons --> (cons (cons boolean (cons --> (cons boolean ()))) ())))) + +(declare os (cons --> (cons string ()))) + +(declare package? (cons symbol (cons --> (cons boolean ())))) + +(declare port (cons --> (cons string ()))) + +(declare porters (cons --> (cons string ()))) + +(declare pos (cons string (cons --> (cons (cons number (cons --> (cons string ()))) ())))) + +(declare pr (cons string (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons string ()))) ())))) + +(declare print (cons A (cons --> (cons A ())))) + +(declare profile (cons symbol (cons --> (cons symbol ())))) + +(declare preclude (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare shen.proc-nl (cons string (cons --> (cons string ())))) + +(declare profile-results (cons symbol (cons --> (cons (cons symbol (cons * (cons number ()))) ())))) + +(declare protect (cons A (cons --> (cons A ())))) + +(declare preclude-all-but (cons (cons list (cons symbol ())) (cons --> (cons (cons list (cons symbol ())) ())))) + +(declare shen.prhush (cons string (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons string ()))) ())))) + +(declare prolog-memory (cons number (cons --> (cons number ())))) + +(declare ps (cons symbol (cons --> (cons (cons list (cons unit ())) ())))) + +(declare read (cons (cons stream (cons in ())) (cons --> (cons unit ())))) + +(declare read-byte (cons (cons stream (cons in ())) (cons --> (cons number ())))) + +(declare read-file-as-bytelist (cons string (cons --> (cons (cons list (cons number ())) ())))) + +(declare read-file-as-string (cons string (cons --> (cons string ())))) + +(declare read-file (cons string (cons --> (cons (cons list (cons unit ())) ())))) + +(declare read-from-string (cons string (cons --> (cons (cons list (cons unit ())) ())))) + +(declare read-from-string-unprocessed (cons string (cons --> (cons (cons list (cons unit ())) ())))) + +(declare release (cons --> (cons string ()))) + +(declare remove (cons A (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare reverse (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ())))) + +(declare simple-error (cons string (cons --> (cons A ())))) + +(declare snd (cons (cons A (cons * (cons B ()))) (cons --> (cons B ())))) + +(declare specialise (cons symbol (cons --> (cons (cons number (cons --> (cons symbol ()))) ())))) + +(declare spy (cons symbol (cons --> (cons boolean ())))) + +(declare spy? (cons --> (cons boolean ()))) + +(declare step (cons symbol (cons --> (cons boolean ())))) + +(declare step? (cons --> (cons boolean ()))) + +(declare stinput (cons --> (cons (cons stream (cons in ())) ()))) + +(declare stoutput (cons --> (cons (cons stream (cons out ())) ()))) + +(declare string? (cons A (cons --> (cons boolean ())))) + +(declare str (cons A (cons --> (cons string ())))) + +(declare string->n (cons string (cons --> (cons number ())))) + +(declare string->symbol (cons string (cons --> (cons symbol ())))) + +(declare sum (cons (cons list (cons number ())) (cons --> (cons number ())))) + +(declare symbol? (cons A (cons --> (cons boolean ())))) + +(declare systemf (cons symbol (cons --> (cons symbol ())))) + +(declare system-S? (cons --> (cons boolean ()))) + +(declare tail (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ())))) + +(declare tlstr (cons string (cons --> (cons string ())))) + +(declare tlv (cons (cons vector (cons A ())) (cons --> (cons (cons vector (cons A ())) ())))) + +(declare tc (cons symbol (cons --> (cons boolean ())))) + +(declare tc? (cons --> (cons boolean ()))) + +(declare thaw (cons (cons lazy (cons A ())) (cons --> (cons A ())))) + +(declare track (cons symbol (cons --> (cons symbol ())))) + +(declare tracked (cons --> (cons (cons list (cons symbol ())) ()))) + +(declare trap-error (cons A (cons --> (cons (cons (cons exception (cons --> (cons A ()))) (cons --> (cons A ()))) ())))) + +(declare tuple? (cons A (cons --> (cons boolean ())))) + +(declare unabsolute (cons string (cons --> (cons (cons list (cons string ())) ())))) + +(declare undefmacro (cons symbol (cons --> (cons symbol ())))) + +(declare union (cons (cons list (cons A ())) (cons --> (cons (cons (cons list (cons A ())) (cons --> (cons (cons list (cons A ())) ()))) ())))) + +(declare unprofile (cons symbol (cons --> (cons symbol ())))) + +(declare untrack (cons symbol (cons --> (cons symbol ())))) + +(declare userdefs (cons --> (cons (cons list (cons symbol ())) ()))) + +(declare variable? (cons A (cons --> (cons boolean ())))) + +(declare vector? (cons A (cons --> (cons boolean ())))) + +(declare version (cons --> (cons string ()))) + +(declare write-to-file (cons string (cons --> (cons (cons A (cons --> (cons A ()))) ())))) + +(declare write-byte (cons number (cons --> (cons (cons (cons stream (cons out ())) (cons --> (cons number ()))) ())))) + +(declare y-or-n? (cons string (cons --> (cons boolean ())))) + +(declare > (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ())))) + +(declare < (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ())))) + +(declare >= (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ())))) + +(declare <= (cons number (cons --> (cons (cons number (cons --> (cons boolean ()))) ())))) + +(declare = (cons A (cons --> (cons (cons A (cons --> (cons boolean ()))) ())))) + +(declare + (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ())))) + +(declare / (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ())))) + +(declare - (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ())))) + +(declare * (cons number (cons --> (cons (cons number (cons --> (cons number ()))) ())))) + +(declare == (cons A (cons --> (cons (cons B (cons --> (cons boolean ()))) ())))) diff --git a/kernel/klambda/writer.kl b/kernel/klambda/writer.kl index 2628495..bddb318 100644 --- a/kernel/klambda/writer.kl +++ b/kernel/klambda/writer.kl @@ -1,56 +1,52 @@ -(defun print (V6803) (let W6804 (shen.insert V6803 "~S") (let W6805 (pr W6804 (stoutput)) V6803))) +(defun print (V5561) (let W5562 (shen.insert V5561 "~S") (let W5563 (pr W5562 (stoutput)) V5561))) -(defun pr (V6806 V6807) (if (value *hush*) V6806 (if (shen.char-stoutput? V6807) (shen.write-string V6806 V6807) (shen.write-chars V6806 V6807 (shen.string->byte V6806 0) 1)))) +(defun pr (V5564 V5565) (if (value *hush*) V5564 (if (shen.char-stoutput? V5565) (shen.write-string V5564 V5565) (shen.write-chars V5564 V5565 (shen.string->byte V5564 0) 1)))) -(defun shen.string->byte (V6808 V6809) (trap-error (string->n (pos V6808 V6809)) (lambda Z6810 shen.eos))) +(defun shen.string->byte (V5566 V5567) (trap-error (string->n (pos V5566 V5567)) (lambda Z5568 shen.eos))) -(defun shen.write-chars (V6811 V6812 V6813 V6814) (cond ((= shen.eos V6813) V6811) (true (shen.write-chars V6811 V6812 (do (write-byte V6813 V6812) (shen.string->byte V6811 V6814)) (+ V6814 1))))) +(defun shen.write-chars (V5569 V5570 V5571 V5572) (cond ((= shen.eos V5571) V5569) (true (shen.write-chars V5569 V5570 (do (write-byte V5571 V5570) (shen.string->byte V5569 V5572)) (+ V5572 1))))) -(defun shen.mkstr (V6815 V6816) (cond ((string? V6815) (shen.mkstr-l (shen.proc-nl V6815) V6816)) (true (shen.mkstr-r (cons shen.proc-nl (cons V6815 ())) V6816)))) +(defun shen.mkstr (V5573 V5574) (cond ((string? V5573) (shen.mkstr-l (shen.proc-nl V5573) V5574)) (true (shen.mkstr-r (cons shen.proc-nl (cons V5573 ())) V5574)))) -(defun shen.mkstr-l (V6821 V6822) (cond ((= () V6822) V6821) ((cons? V6822) (shen.mkstr-l (shen.insert-l (hd V6822) V6821) (tl V6822))) (true (simple-error "implementation error in shen.mkstr-l")))) +(defun shen.mkstr-l (V5579 V5580) (cond ((= () V5580) V5579) ((cons? V5580) (shen.mkstr-l (shen.insert-l (hd V5580) V5579) (tl V5580))) (true (simple-error "implementation error in shen.mkstr-l")))) -(defun shen.insert-l (V6829 V6830) (cond ((= "" V6830) "") ((and (shen.+string? V6830) (and (= "~" (hdstr V6830)) (and (shen.+string? (tlstr V6830)) (= "A" (hdstr (tlstr V6830)))))) (cons shen.app (cons V6829 (cons (tlstr (tlstr V6830)) (cons shen.a ()))))) ((and (shen.+string? V6830) (and (= "~" (hdstr V6830)) (and (shen.+string? (tlstr V6830)) (= "R" (hdstr (tlstr V6830)))))) (cons shen.app (cons V6829 (cons (tlstr (tlstr V6830)) (cons shen.r ()))))) ((and (shen.+string? V6830) (and (= "~" (hdstr V6830)) (and (shen.+string? (tlstr V6830)) (= "S" (hdstr (tlstr V6830)))))) (cons shen.app (cons V6829 (cons (tlstr (tlstr V6830)) (cons shen.s ()))))) ((shen.+string? V6830) (shen.factor-cn (cons cn (cons (hdstr V6830) (cons (shen.insert-l V6829 (tlstr V6830)) ()))))) ((and (cons? V6830) (and (= cn (hd V6830)) (and (cons? (tl V6830)) (and (cons? (tl (tl V6830))) (= () (tl (tl (tl V6830)))))))) (cons cn (cons (hd (tl V6830)) (cons (shen.insert-l V6829 (hd (tl (tl V6830)))) ())))) ((and (cons? V6830) (and (= shen.app (hd V6830)) (and (cons? (tl V6830)) (and (cons? (tl (tl V6830))) (and (cons? (tl (tl (tl V6830)))) (= () (tl (tl (tl (tl V6830)))))))))) (cons shen.app (cons (hd (tl V6830)) (cons (shen.insert-l V6829 (hd (tl (tl V6830)))) (tl (tl (tl V6830))))))) (true (simple-error "implementation error in shen.insert-l")))) +(defun shen.insert-l (V5587 V5588) (cond ((= "" V5588) "") ((and (shen.+string? V5588) (and (= "~" (hdstr V5588)) (and (shen.+string? (tlstr V5588)) (= "A" (hdstr (tlstr V5588)))))) (cons shen.app (cons V5587 (cons (tlstr (tlstr V5588)) (cons shen.a ()))))) ((and (shen.+string? V5588) (and (= "~" (hdstr V5588)) (and (shen.+string? (tlstr V5588)) (= "R" (hdstr (tlstr V5588)))))) (cons shen.app (cons V5587 (cons (tlstr (tlstr V5588)) (cons shen.r ()))))) ((and (shen.+string? V5588) (and (= "~" (hdstr V5588)) (and (shen.+string? (tlstr V5588)) (= "S" (hdstr (tlstr V5588)))))) (cons shen.app (cons V5587 (cons (tlstr (tlstr V5588)) (cons shen.s ()))))) ((shen.+string? V5588) (shen.factor-cn (cons cn (cons (hdstr V5588) (cons (shen.insert-l V5587 (tlstr V5588)) ()))))) ((and (cons? V5588) (and (= cn (hd V5588)) (and (cons? (tl V5588)) (and (cons? (tl (tl V5588))) (= () (tl (tl (tl V5588)))))))) (cons cn (cons (hd (tl V5588)) (cons (shen.insert-l V5587 (hd (tl (tl V5588)))) ())))) ((and (cons? V5588) (and (= shen.app (hd V5588)) (and (cons? (tl V5588)) (and (cons? (tl (tl V5588))) (and (cons? (tl (tl (tl V5588)))) (= () (tl (tl (tl (tl V5588)))))))))) (cons shen.app (cons (hd (tl V5588)) (cons (shen.insert-l V5587 (hd (tl (tl V5588)))) (tl (tl (tl V5588))))))) (true (simple-error "implementation error in shen.insert-l")))) -(defun shen.factor-cn (V6831) (cond ((and (cons? V6831) (and (= cn (hd V6831)) (and (cons? (tl V6831)) (and (cons? (tl (tl V6831))) (and (cons? (hd (tl (tl V6831)))) (and (= cn (hd (hd (tl (tl V6831))))) (and (cons? (tl (hd (tl (tl V6831))))) (and (cons? (tl (tl (hd (tl (tl V6831)))))) (and (= () (tl (tl (tl (hd (tl (tl V6831))))))) (and (= () (tl (tl (tl V6831)))) (and (string? (hd (tl V6831))) (string? (hd (tl (hd (tl (tl V6831))))))))))))))))) (cons cn (cons (cn (hd (tl V6831)) (hd (tl (hd (tl (tl V6831)))))) (tl (tl (hd (tl (tl V6831)))))))) (true V6831))) +(defun shen.factor-cn (V5589) (cond ((and (cons? V5589) (and (= cn (hd V5589)) (and (cons? (tl V5589)) (and (cons? (tl (tl V5589))) (and (cons? (hd (tl (tl V5589)))) (and (= cn (hd (hd (tl (tl V5589))))) (and (cons? (tl (hd (tl (tl V5589))))) (and (cons? (tl (tl (hd (tl (tl V5589)))))) (and (= () (tl (tl (tl (hd (tl (tl V5589))))))) (and (= () (tl (tl (tl V5589)))) (and (string? (hd (tl V5589))) (string? (hd (tl (hd (tl (tl V5589))))))))))))))))) (cons cn (cons (cn (hd (tl V5589)) (hd (tl (hd (tl (tl V5589)))))) (tl (tl (hd (tl (tl V5589)))))))) (true V5589))) -(defun shen.proc-nl (V6834) (cond ((= "" V6834) "") ((and (shen.+string? V6834) (and (= "~" (hdstr V6834)) (and (shen.+string? (tlstr V6834)) (= "%" (hdstr (tlstr V6834)))))) (cn (n->string 10) (shen.proc-nl (tlstr (tlstr V6834))))) ((shen.+string? V6834) (cn (hdstr V6834) (shen.proc-nl (tlstr V6834)))) (true (simple-error "implementation error in shen.proc-nl")))) +(defun shen.proc-nl (V5592) (cond ((= "" V5592) "") ((and (shen.+string? V5592) (and (= "~" (hdstr V5592)) (and (shen.+string? (tlstr V5592)) (= "%" (hdstr (tlstr V5592)))))) (cn (n->string 10) (shen.proc-nl (tlstr (tlstr V5592))))) ((shen.+string? V5592) (cn (hdstr V5592) (shen.proc-nl (tlstr V5592)))) (true (simple-error "implementation error in shen.proc-nl")))) -(defun shen.mkstr-r (V6839 V6840) (cond ((= () V6840) V6839) ((cons? V6840) (shen.mkstr-r (cons shen.insert (cons (hd V6840) (cons V6839 ()))) (tl V6840))) (true (simple-error "implementation error in shen.mkstr-r")))) +(defun shen.mkstr-r (V5597 V5598) (cond ((= () V5598) V5597) ((cons? V5598) (shen.mkstr-r (cons shen.insert (cons (hd V5598) (cons V5597 ()))) (tl V5598))) (true (simple-error "implementation error in shen.mkstr-r")))) -(defun shen.insert (V6841 V6842) (shen.insert-h V6841 V6842 "")) +(defun shen.insert (V5599 V5600) (shen.insert-h V5599 V5600 "")) -(defun shen.insert-h (V6851 V6852 V6853) (cond ((= "" V6852) V6853) ((and (shen.+string? V6852) (and (= "~" (hdstr V6852)) (and (shen.+string? (tlstr V6852)) (= "A" (hdstr (tlstr V6852)))))) (cn V6853 (shen.app V6851 (tlstr (tlstr V6852)) shen.a))) ((and (shen.+string? V6852) (and (= "~" (hdstr V6852)) (and (shen.+string? (tlstr V6852)) (= "R" (hdstr (tlstr V6852)))))) (cn V6853 (shen.app V6851 (tlstr (tlstr V6852)) shen.r))) ((and (shen.+string? V6852) (and (= "~" (hdstr V6852)) (and (shen.+string? (tlstr V6852)) (= "S" (hdstr (tlstr V6852)))))) (cn V6853 (shen.app V6851 (tlstr (tlstr V6852)) shen.s))) ((shen.+string? V6852) (shen.insert-h V6851 (tlstr V6852) (cn V6853 (hdstr V6852)))) (true (simple-error "implementation error in shen.insert-h")))) +(defun shen.insert-h (V5609 V5610 V5611) (cond ((= "" V5610) V5611) ((and (shen.+string? V5610) (and (= "~" (hdstr V5610)) (and (shen.+string? (tlstr V5610)) (= "A" (hdstr (tlstr V5610)))))) (cn V5611 (shen.app V5609 (tlstr (tlstr V5610)) shen.a))) ((and (shen.+string? V5610) (and (= "~" (hdstr V5610)) (and (shen.+string? (tlstr V5610)) (= "R" (hdstr (tlstr V5610)))))) (cn V5611 (shen.app V5609 (tlstr (tlstr V5610)) shen.r))) ((and (shen.+string? V5610) (and (= "~" (hdstr V5610)) (and (shen.+string? (tlstr V5610)) (= "S" (hdstr (tlstr V5610)))))) (cn V5611 (shen.app V5609 (tlstr (tlstr V5610)) shen.s))) ((shen.+string? V5610) (shen.insert-h V5609 (tlstr V5610) (cn V5611 (hdstr V5610)))) (true (simple-error "implementation error in shen.insert-h")))) -(defun shen.app (V6854 V6855 V6856) (cn (shen.arg->str V6854 V6856) V6855)) +(defun shen.app (V5612 V5613 V5614) (cn (shen.arg->str V5612 V5614) V5613)) -(defun shen.arg->str (V6860 V6861) (cond ((= V6860 (fail)) "...") ((shen.list? V6860) (shen.list->str V6860 V6861)) ((string? V6860) (shen.str->str V6860 V6861)) ((absvector? V6860) (shen.vector->str V6860 V6861)) (true (shen.atom->str V6860)))) +(defun shen.arg->str (V5618 V5619) (cond ((= V5618 (fail)) "...") ((shen.list? V5618) (shen.list->str V5618 V5619)) ((string? V5618) (shen.str->str V5618 V5619)) ((absvector? V5618) (shen.vector->str V5618 V5619)) (true (shen.atom->str V5618)))) -(defun shen.list->str (V6862 V6863) (cond ((= shen.r V6863) (@s "(" (@s (shen.iter-list V6862 shen.r (shen.maxseq)) ")"))) (true (@s "[" (@s (shen.iter-list V6862 V6863 (shen.maxseq)) "]"))))) +(defun shen.list->str (V5620 V5621) (cond ((= shen.r V5621) (@s "(" (@s (shen.iter-list V5620 shen.r (shen.maxseq)) ")"))) (true (@s "[" (@s (shen.iter-list V5620 V5621 (shen.maxseq)) "]"))))) (defun shen.maxseq () (value *maximum-print-sequence-size*)) -(defun shen.iter-list (V6874 V6875 V6876) (cond ((= () V6874) "") ((= 0 V6876) "... etc") ((and (cons? V6874) (= () (tl V6874))) (shen.arg->str (hd V6874) V6875)) ((cons? V6874) (@s (shen.arg->str (hd V6874) V6875) (@s " " (shen.iter-list (tl V6874) V6875 (- V6876 1))))) (true (@s "|" (@s " " (shen.arg->str V6874 V6875)))))) +(defun shen.iter-list (V5632 V5633 V5634) (cond ((= () V5632) "") ((= 0 V5634) "... etc") ((and (cons? V5632) (= () (tl V5632))) (shen.arg->str (hd V5632) V5633)) ((cons? V5632) (@s (shen.arg->str (hd V5632) V5633) (@s " " (shen.iter-list (tl V5632) V5633 (- V5634 1))))) (true (@s "|" (@s " " (shen.arg->str V5632 V5633)))))) -(defun shen.str->str (V6879 V6880) (cond ((= shen.a V6880) V6879) (true (@s (n->string 34) (@s V6879 (n->string 34)))))) +(defun shen.str->str (V5637 V5638) (cond ((= shen.a V5638) V5637) (true (@s (n->string 34) (@s V5637 (n->string 34)))))) -(defun shen.vector->str (V6881 V6882) (if (shen.print-vector? V6881) ((fn (<-address V6881 0)) V6881) (if (vector? V6881) (@s "<" (@s (shen.iter-vector V6881 1 V6882 (shen.maxseq)) ">")) (@s "<" (@s "<" (@s (shen.iter-vector V6881 0 V6882 (shen.maxseq)) ">>")))))) +(defun shen.vector->str (V5639 V5640) (if (shen.print-vector? V5639) ((fn (<-address V5639 0)) V5639) (if (vector? V5639) (@s "<" (@s (shen.iter-vector V5639 1 V5640 (shen.maxseq)) ">")) (@s "<" (@s "<" (@s (shen.iter-vector V5639 0 V5640 (shen.maxseq)) ">>")))))) -(defun shen.empty-absvector? (V6883) (= V6883 (value shen.*empty-absvector*))) +(defun shen.print-vector? (V5641) (let W5642 (<-address V5641 0) (if (= W5642 shen.tuple) true (if (= W5642 shen.pvar) true (if (not (number? W5642)) (shen.fbound? W5642) false))))) -(defun shen.print-vector? (V6884) (and (not (shen.empty-absvector? V6884)) (let W6885 (<-address V6884 0) (or (= W6885 shen.tuple) (or (= W6885 shen.pvar) (or (= W6885 shen.dictionary) (and (not (number? W6885)) (shen.fbound? W6885)))))))) +(defun shen.fbound? (V5643) (not (= (arity V5643) -1))) -(defun shen.fbound? (V6886) (not (= (arity V6886) -1))) +(defun shen.tuple (V5644) (cn "(@p " (shen.app (<-address V5644 1) (cn " " (shen.app (<-address V5644 2) ")" shen.s)) shen.s))) -(defun shen.tuple (V6887) (cn "(@p " (shen.app (<-address V6887 1) (cn " " (shen.app (<-address V6887 2) ")" shen.s)) shen.s))) +(defun shen.iter-vector (V5651 V5652 V5653 V5654) (cond ((= 0 V5654) "... etc") (true (let W5655 (trap-error (<-address V5651 V5652) (lambda Z5656 shen.out-of-bounds)) (let W5657 (trap-error (<-address V5651 (+ V5652 1)) (lambda Z5658 shen.out-of-bounds)) (if (= W5655 shen.out-of-bounds) "" (if (= W5657 shen.out-of-bounds) (shen.arg->str W5655 V5653) (@s (shen.arg->str W5655 V5653) (@s " " (shen.iter-vector V5651 (+ V5652 1) V5653 (- V5654 1))))))))))) -(defun shen.dictionary (V6888) "(dict ...)") - -(defun shen.iter-vector (V6895 V6896 V6897 V6898) (cond ((= 0 V6898) "... etc") (true (let W6899 (trap-error (<-address V6895 V6896) (lambda Z6900 shen.out-of-bounds)) (let W6901 (trap-error (<-address V6895 (+ V6896 1)) (lambda Z6902 shen.out-of-bounds)) (if (= W6899 shen.out-of-bounds) "" (if (= W6901 shen.out-of-bounds) (shen.arg->str W6899 V6897) (@s (shen.arg->str W6899 V6897) (@s " " (shen.iter-vector V6895 (+ V6896 1) V6897 (- V6898 1))))))))))) - -(defun shen.atom->str (V6903) (trap-error (str V6903) (lambda Z6904 (shen.funexstring)))) +(defun shen.atom->str (V5659) (trap-error (str V5659) (lambda Z5660 (shen.funexstring)))) (defun shen.funexstring () (@s "" (@s "f" (@s "u" (@s "n" (@s "e" (@s (shen.arg->str (gensym (intern "x")) shen.a) ""))))))) -(defun shen.list? (V6905) (or (empty? V6905) (cons? V6905))) +(defun shen.list? (V5661) (or (empty? V5661) (cons? V5661))) diff --git a/kernel/klambda/yacc.kl b/kernel/klambda/yacc.kl index a8e638f..fc9c6e3 100644 --- a/kernel/klambda/yacc.kl +++ b/kernel/klambda/yacc.kl @@ -5,7 +5,7 @@ (defun shen.syntax-error-message (V123 V124 V125) (cond ((= () V125) " ") ((= V123 V124) "...etc -") ((cons? V125) (cn (shen.app (hd V125) " " shen.s) (shen.syntax-error-message V123 (+ V124 1) (tl V125)))) (true (shen.f-error shen.syntax-error-message)))) +") ((cons? V125) (cn (shen.app (hd V125) " " shen.s) (shen.syntax-error-message V123 (+ V124 1) (tl V125)))) (true (simple-error "partial function shen.syntax-error-message")))) (defun shen.parse-failure? (V126) (= V126 (fail))) @@ -80,21 +80,21 @@ (defun shen.conscode (V349 V350 V351 V352 V353) (let W354 (gensym Remainder) (let W355 (gensym Hd) (let W356 (gensym Tl) (cons if (cons (cons shen.ccons? (cons V350 ())) (cons (cons let (cons W355 (cons (cons head (cons V350 ())) (cons W356 (cons (cons tail (cons V350 ())) (cons (shen.yacc-syntax V349 W355 (append (shen.decons V351) (cons ())) (cons shen.processed (cons (shen.yacc-syntax V349 W356 V352 V353) ()))) ())))))) (cons (cons shen.parse-failure ()) ())))))))) -(defun shen.ccons? (V365) (cond ((and (cons? V365) (cons? (hd V365))) true) (true false))) +(defun shen.ccons? (V367) (cond ((and (cons? V367) (cons? (hd V367))) true) ((and (cons? V367) (= () (hd V367))) true) (true false))) -(defun shen.decons (V366) (cond ((and (cons? V366) (and (= cons (hd V366)) (and (cons? (tl V366)) (and (cons? (tl (tl V366))) (= () (tl (tl (tl V366)))))))) (cons (hd (tl V366)) (shen.decons (hd (tl (tl V366)))))) (true V366))) +(defun shen.decons (V368) (cond ((and (cons? V368) (and (= cons (hd V368)) (and (cons? (tl V368)) (and (cons? (tl (tl V368))) (= () (tl (tl (tl V368)))))))) (cons (hd (tl V368)) (shen.decons (hd (tl (tl V368)))))) (true V368))) -(defun shen.comb (V367 V368) (cons V367 (cons V368 ()))) +(defun shen.comb (V369 V370) (cons V369 (cons V370 ()))) -(defun shen.yacc-semantics (V373 V374 V375) (cond ((and (cons? V375) (and (= shen.processed (hd V375)) (and (cons? (tl V375)) (= () (tl (tl V375)))))) (hd (tl V375))) (true (let W376 (shen.process-yacc-semantics V375) (let W377 (shen.use-type-info V373 W376) (cons shen.comb (cons V374 (cons W377 ())))))))) +(defun shen.yacc-semantics (V375 V376 V377) (cond ((and (cons? V377) (and (= shen.processed (hd V377)) (and (cons? (tl V377)) (= () (tl (tl V377)))))) (hd (tl V377))) (true (let W378 (shen.process-yacc-semantics V377) (let W379 (shen.use-type-info V375 W378) (cons shen.comb (cons V376 (cons W379 ())))))))) -(defun shen.use-type-info (V381 V382) (cond ((and (cons? V381) (and (= { (hd V381)) (and (cons? (tl V381)) (and (cons? (hd (tl V381))) (and (= list (hd (hd (tl V381)))) (and (cons? (tl (hd (tl V381)))) (and (= () (tl (tl (hd (tl V381))))) (and (cons? (tl (tl V381))) (and (= --> (hd (tl (tl V381)))) (and (cons? (tl (tl (tl V381)))) (and (cons? (hd (tl (tl (tl V381))))) (and (= str (hd (hd (tl (tl (tl V381)))))) (and (cons? (tl (hd (tl (tl (tl V381)))))) (and (cons? (hd (tl (hd (tl (tl (tl V381))))))) (and (= list (hd (hd (tl (hd (tl (tl (tl V381)))))))) (and (cons? (tl (hd (tl (hd (tl (tl (tl V381)))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl (tl V381))))))))) (and (cons? (tl (tl (hd (tl (tl (tl V381))))))) (and (= () (tl (tl (tl (hd (tl (tl (tl V381)))))))) (and (cons? (tl (tl (tl (tl V381))))) (and (= } (hd (tl (tl (tl (tl V381)))))) (and (= () (tl (tl (tl (tl (tl V381)))))) (and (= (hd (tl (hd (tl V381)))) (hd (tl (hd (tl (hd (tl (tl (tl V381))))))))) (shen.monomorphic? (hd (tl (tl (hd (tl (tl (tl V381))))))))))))))))))))))))))))))) (cons type (cons V382 (tl (tl (hd (tl (tl (tl V381))))))))) (true V382))) +(defun shen.use-type-info (V383 V384) (cond ((and (cons? V383) (and (= { (hd V383)) (and (cons? (tl V383)) (and (cons? (hd (tl V383))) (and (= list (hd (hd (tl V383)))) (and (cons? (tl (hd (tl V383)))) (and (= () (tl (tl (hd (tl V383))))) (and (cons? (tl (tl V383))) (and (= --> (hd (tl (tl V383)))) (and (cons? (tl (tl (tl V383)))) (and (cons? (hd (tl (tl (tl V383))))) (and (= str (hd (hd (tl (tl (tl V383)))))) (and (cons? (tl (hd (tl (tl (tl V383)))))) (and (cons? (hd (tl (hd (tl (tl (tl V383))))))) (and (= list (hd (hd (tl (hd (tl (tl (tl V383)))))))) (and (cons? (tl (hd (tl (hd (tl (tl (tl V383)))))))) (and (= () (tl (tl (hd (tl (hd (tl (tl (tl V383))))))))) (and (cons? (tl (tl (hd (tl (tl (tl V383))))))) (and (= () (tl (tl (tl (hd (tl (tl (tl V383)))))))) (and (cons? (tl (tl (tl (tl V383))))) (and (= } (hd (tl (tl (tl (tl V383)))))) (and (= () (tl (tl (tl (tl (tl V383)))))) (and (= (hd (tl (hd (tl V383)))) (hd (tl (hd (tl (hd (tl (tl (tl V383))))))))) (shen.monomorphic? (hd (tl (tl (hd (tl (tl (tl V383))))))))))))))))))))))))))))))) (cons type (cons V384 (tl (tl (hd (tl (tl (tl V383))))))))) (true V384))) -(defun shen.monomorphic? (V385) (cond ((variable? V385) false) ((cons? V385) (and (shen.monomorphic? (hd V385)) (shen.monomorphic? (tl V385)))) (true true))) +(defun shen.monomorphic? (V387) (cond ((variable? V387) false) ((cons? V387) (and (shen.monomorphic? (hd V387)) (shen.monomorphic? (tl V387)))) (true true))) -(defun shen.process-yacc-semantics (V386) (cond ((and (cons? V386) (and (= protect (hd V386)) (and (cons? (tl V386)) (and (= () (tl (tl V386))) (shen.non-terminal? (hd (tl V386))))))) (hd (tl V386))) ((cons? V386) (map (lambda Z387 (shen.process-yacc-semantics Z387)) V386)) ((shen.non-terminal? V386) (concat Action V386)) (true V386))) +(defun shen.process-yacc-semantics (V388) (cond ((and (cons? V388) (and (= protect (hd V388)) (and (cons? (tl V388)) (and (= () (tl (tl V388))) (shen.non-terminal? (hd (tl V388))))))) (hd (tl V388))) ((cons? V388) (map (lambda Z389 (shen.process-yacc-semantics Z389)) V388)) ((shen.non-terminal? V388) (concat Action V388)) (true V388))) -(defun shen.<-out (V390) (cond ((and (cons? V390) (and (cons? (tl V390)) (= () (tl (tl V390))))) (hd (tl V390))) (true (hd (tl V390))))) +(defun shen.<-out (V390) (hd (tl V390))) (defun shen.in-> (V391) (hd V391))