ref: 5c857048a92d2ec8219bc77b8e855dba95ce31b3
parent: edcb65b4aa71a20f38e936a8c07c7b8b7d685fdc
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Mon Mar 17 14:49:14 EDT 2025
help: variables don't have signatures
--- a/boot/sl.boot
+++ b/boot/sl.boot
@@ -26,16 +26,16 @@
+ n 1)`." *properties* "All properties of symbols recorded with `putprop` are recorded in this table."))
*syntax-environment* #table(bcode:nconst #fn("n1200r2e3:" #(aref)) doc-for #fn("\x8710002000W1000J60q?140B86;35040<;J404086;35040=863H020212287e212288e2e4e2:20212287e21e3e2:" #(void
sym-set-doc quote)) with-input-from #fn("z12021e1220e2e1e12315163:" #(#fn(nconc) with-bindings
-63:" #(#fn(nconc) with-bindings
+63:" #(#fn(nconc) with-bindings
#fn("z1200q211Pe4:" #(if
begin)) defmacro #fn("z170151863D0710<860=5341=?1@30q42223240<e22526e10=e12715153e3e2:" #(value-get-doc
-340q:0<85<20Q;J80485<DQ3C085=J6085<:2185=P:85=J@02285<A<0=51e3:85T23C\x94074758551513c07675855151278685<e2e12886217975855151PA<0=51e4e3:272:85<e2e1282:7585512:e2A<0=51e4e3:2885<2185=PA<0=51e4:" #(else
+340q:0<85<20Q;J80485<DQ3C085=J6085<:2185=P:85=J@02285<A<0=51e3:85T23C\x94074758551513c07675855151278685<e2e12886217975855151PA<0=51e4e3:272:85<e2e1282:7585512:e2A<0=51e4e3:2885<2185=PA<0=51e4:" #(else
82:7585512:e2A<0=51e4e3:2885<2185=PA<0=51e4:" #(else
begin or => 1arg-lambda? caddr caadr let if cddr #:g20) cond-clauses->if))) do #fn("z21<2071052207205220230522425268827872829e12:1=51522829e12:82512825e18:52e153e4e3e2e12825e18952e3:" #(#fn(map)
car cadr #fn("n170051B38071061:0<:" #(cddr caddr)) letrec #:g346 λ if #fn(nconc) begin #fn(copy-list))) mark-label #fn("n22002122e21e4:" #(emit
quote label)) with-bindings #fn("z12071052207205220230522425e12076888653e12720288687535129242:e12715152242:e127202;8688535152e3e164:" #(#fn(map)
car cadr #fn("n12060:" #(#fn(gensym))) #fn(nconc) let list #fn(copy-list)
-tect begin #fn("n22001e3:" #(set!)))) let #fn("z1q0R3B00?641<?041=?1@30q42021e12223052e124151532225052863C0268687e2e186e3@408788P:" #(#fn(nconc)
+tect begin #fn("n22001e3:" #(set!)))) let #fn("z1q0R3B00?641<?041=?1@30q42021e12223052e124151532225052863C0268687e2e186e3@408788P:" #(#fn(nconc)
bcode:cenv #fn("n1200r3e3:" #(aref)) > #fn("z12021e12273151510e163:" #(#fn(nconc)
< #fn(copy-list) reverse!)) when #fn("z1200211Pqe4:" #(if begin)) quasiquote #fn("n1700E62:" #(bq-process)) help #fn("n1700215285;3;042285235270024q53863c07586<51486=3Q0262786=52478504873907850@30q@30q@30q4873e086=360q@;07850478504752951478504262:0>1875247850@30q486;J50487360q@>0752;0524785047<60:" #(getprop
*doc* #fn(str-split) "\n" *funvars* princ #fn(for-each)
@@ -51,7 +51,7 @@
"invalid slot name: " #fn(list*) #fn(sym) #\:))) tokw)
#fn(str?) #fn(length) #fn(map) #fn("n10B3500<:0:" #())
#fn(sym) #\? "make-" #fn(str) "-" #fn(nconc) begin def s and or not quote eq? aref = length when
-510M24e4e4e4:" #(list-ref
+510M24e4e4e4:" #(list-ref
"n1200Ke3:" #(aref)) with-output-to #fn("z12021e1220e2e1e12315163:" #(#fn(nconc)
with-bindings *io-out* #fn(copy-list))) catch #fn("n22012122e123242522e2262722e22829e2e3262:22e20e3e42;22e22<22e2e4e3e3:" #(trycatch
λ #:g371 if and cons? eq? car quote thrown-value cadr caddr raise)) let* #fn("z10H3E02021e1qe12215153e1:2021e173051e1e1220=B3H02024e10=e12215153e1@301515375051e2:" #(#fn(nconc)
@@ -60,7 +60,7 @@
5153e2:" #(not #fn(nconc) = #fn(copy-list))) bcode:sp #fn("n1200r4e3:" #(aref)) bcode:stack #fn("n2200r421220e21e3e4:" #(aset!
+ bcode:sp)) assert #fn("n1200D2122230e2e2e2e4:" #(if raise quote assert-failed)) case #fn("z1Ib6208621_514225023870e2e12425e126278687>215252e3:" #(#0#
#fn("n2120C5020:1J40q:1R3=021072151e3:1H3=023072151e3:1=J>0230721<51e3:74751523=0260271e2e3:280271e2e3:" #(else
-R3=021072151e3:1H3=023072151e3:1=J>0230721<51e3:74751523=0260271e2e3:280271e2e3:" #(else
+R3=021072151e3:1H3=023072151e3:1=J>0230721<51e3:74751523=0260271e2e3:280271e2e3:" #(else
alue eqv? every sym? memq quote memv) vals->cond)
#fn(gensym) let #fn(nconc) cond #fn(map) #fn("n1A<F0<520=P:" #()))) receive #fn("z22021q1e32221e10e123825153e3:" #(call-with-values
λ #fn(nconc) #fn(copy-list))) unwind-protect #fn("n2202122q1e3e2e1232402225e121e12625e2e4e321e1e3e3:" #(let
@@ -437,7 +437,7 @@
n12021q063:" #(#fn(table-foldl)
#fn("n3182P:" #())) table-values)
to-proper #fn("n10J400:0H3600e1:0<700=51P:" #(to-proper) to-proper)
- #fn("n0Aw0:" #(*io-out*))
+ #fn("n0Aw0:" #(*io-out*))
#fn("n070A51471225061:" #(print-exception
print-stack-trace #fn(stacktrace))) #fn("n1A50420061:" #(#fn(raise)))) top-level-exception-handler)
trace #fn("n120051718551Jc02207324252627280e225e3e229e12:2885e225e3e55152@30q^147;60:" #(#fn(top-level-value)
--- a/src/system.lsp
+++ b/src/system.lsp
@@ -158,7 +158,8 @@
"Display documentation for the specified term, if available."
(let* {[doc (getprop term '*doc*)]
[lines (and doc (str-split doc "\n"))]
- [fvs (getprop term '*funvars* nil)]}
+ [funvars (getprop term '*funvars* nil)]
+ [fvs (and funvars (cons? (car funvars)) funvars)]}
(when lines
(princ (car lines))
(when (cdr lines)