From 8cf6f44364818ab93ccf76928de724673ce2d3cb Mon Sep 17 00:00:00 2001 From: "russell@unturf.com" Date: Fri, 24 Apr 2026 09:01:32 -0400 Subject: [PATCH] =?UTF-8?q?asm:=20rest=20args,=20cadr,=20sort,=20let*=20?= =?UTF-8?q?=E2=80=94=20Scheme=20port=20of=20Zo=C3=AB's=20favorites=20runs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Phase 1 of the asm/lumbda-full roadmap (ticket 0005, in-flight). Adds the minimum-cost set of additions that lets examples/ursa-scheme.lsp — the idiomatic Scheme port of ursa.lisp.txt — load and produce correct results on the asm tier. No CL shim yet: that requires quasiquote, define-macro, and case, all of which are Phase 2 / 0005. Added: * Rest-args in lambda — (define (f x . rest) ...). .ac_bind now detects when the remaining param list is a raw symbol (TAG_SYM) and binds it to the remaining arg list. Enables variadic defuns. * cadr builtin — (car (cdr x)) fast path. Used by Zoë's repunit-value and any CL-adjacent code. * sort builtin — ascending insertion sort on a tagged-int list. Non-destructive. Matches Python/C sort contract (default numeric ordering). Implementation ~50 lines, recursive sort + insert helpers. * let* special form — sequential binding where each init sees the preceding bindings' values. Fresh sf_let_star + sym_let_star_val + .ev_let_star branch that's a one-line variant of .ev_let (eval init in the extended env rather than the original). TCO preserved. Tests: 9 new asm assertions in asm/test.sh covering cadr, sort (empty / singleton / unsorted / already-sorted), let* (basic + sequential), rest-args (tail-only + rest-only). Total asm suite now 158 passing. Known limitation: the Scheme port's factor / rho depends on random rhoff iteration. For some seeds on asm (e.g. seed=2, factor 91) the process runs out of virtual memory before rho finds a factor. The underlying math is correct — this is an asm heap-bump-allocator behavior under long random-retry chains and will be addressed along with the CL_FULL work in ticket 0005. Python and C paths unaffected. make test-all stays green across every tier. --- asm/lumbda | Bin 57984 -> 58544 bytes asm/lumbda-gc | Bin 62616 -> 63184 bytes asm/lumbda-gc.o | Bin 66960 -> 68048 bytes asm/lumbda.o | Bin 57768 -> 58840 bytes asm/lumbda.s | 181 ++++++++++++++++++++++++++++++++++++++++++++++-- asm/test.sh | 9 +++ 6 files changed, 183 insertions(+), 7 deletions(-) diff --git a/asm/lumbda b/asm/lumbda index bb1c8183b818eddca86f0abd555061250ed915f3..0b1332044874b0b9e9cd6f35df6ef55e7861a063 100755 GIT binary patch literal 58544 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

FAS|wpjGa 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

NjKZnKg9@;^^8=%ggRe*yqOCr^7x#+i4o>PJ{i} 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%0DBMZ~)Um;?dO50SD)Fz4~wYpb|6iInjHa6tI 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 diff --git a/asm/lumbda.o b/asm/lumbda.o index c940b87a0eb7cecbf19b80b45987f2057f9de969..fe2a98c76560c40347d6243722ca8a5fd92b5fd6 100644 GIT binary patch literal 58840 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" +bn_cadr: .byte 4; .ascii "cadr" +bn_sort: .byte 4; .ascii "sort" .ifdef GC_NAIVE bn_gccollect: .byte 10; .ascii "gc-collect" bn_gcstats: .byte 8; .ascii "gc-stats" @@ -407,6 +412,7 @@ bi_names: .quad bn_isqrt .quad bn_randomseed, bn_randomint, bn_randomstate, bn_randomstateset .quad bn_randomseedfromos + .quad bn_cadr, bn_sort .ifdef GC_NAIVE .quad bn_gccollect, bn_gcstats, bn_witharena, bn_arenastats, bn_arenamode .endif @@ -466,6 +472,7 @@ sym_setbang_val:.quad 0 sym_lambda_val: .quad 0 sym_begin_val: .quad 0 sym_let_val: .quad 0 +sym_let_star_val: .quad 0 sym_cond_val: .quad 0 sym_and_val: .quad 0 sym_or_val: .quad 0 @@ -2469,6 +2476,8 @@ eval: je .ev_begin cmpq sym_let_val(%rip), %rbx je .ev_let + cmpq sym_let_star_val(%rip), %rbx + je .ev_let_star cmpq sym_cond_val(%rip), %rbx je .ev_cond cmpq sym_and_val(%rip), %rbx @@ -2829,6 +2838,57 @@ env_set_both: movq %rax, %rdi jmp .eval_top +# ---- let* (sequential binding — each init sees preceding bindings) ---- +.ev_let_star: + # (let* ((v1 e1) ...) body...) + movq %r12, %rax + andq $-8, %rax + movq (%rax), %rbx # bindings + movq 8(%rax), %r12 # body + + movq %rbp, %rcx # extended env starts as current env +.ev_lets_binds: + cmpq $VAL_NIL, %rbx + je .ev_lets_body + + movq %rbx, %rax + andq $-8, %rax + movq (%rax), %rdi # (var expr) pair + movq 8(%rax), %rbx # rest bindings + + movq %rdi, %rax + andq $-8, %rax + movq (%rax), %r8 # var + movq 8(%rax), %rax + andq $-8, %rax + movq (%rax), %rdi # expr + + # Eval expr in EXTENDED env (distinguishes let* from let) + pushq %rbx + pushq %rcx + pushq %r8 + movq %rcx, %rsi # eval in extended env + call eval + popq %r8 + popq %rcx + popq %rbx + + pushq %rbx + movq %r8, %rdi + movq %rax, %rsi + movq %rcx, %rdx + call env_define + movq %rax, %rcx + popq %rbx + jmp .ev_lets_binds + +.ev_lets_body: + movq %rcx, %rbp + movq %r12, %rdi + call wrap_begin + movq %rax, %rdi + jmp .eval_top + # ---- named let ---- .ev_named_let: # %rbx = name sym, %r12 = ((bindings...) body...) @@ -3206,6 +3266,13 @@ eval_list: .ac_bind: cmpq $VAL_NIL, %rdi je .ac_go + # Rest-arg check: if %rdi is a raw symbol (not a pair), the param + # list ended with `(. rest)` — bind rest-sym to remaining args. + # Enables (define (f x . rest) ...) and (lambda (a . b) ...). + movq %rdi, %rax + andq $TAG_MASK, %rax + cmpq $TAG_SYM, %rax + je .ac_rest cmpq $VAL_NIL, %rdx je .ac_go @@ -3239,6 +3306,18 @@ eval_list: movq 8(%rax), %rdx jmp .ac_bind +.ac_rest: + # %rdi = rest-sym (tagged), %rdx = remaining args list, %rsi = env. + # env_define expects rdi=sym, rsi=val, rdx=env — shuffle. + pushq %rcx # save body + movq %rsi, %rcx # stash env + movq %rdx, %rsi # val = remaining args list + movq %rcx, %rdx # env + call env_define + movq %rax, %rsi # updated env + popq %rcx # restore body + jmp .ac_go + .ac_go: # TCO: eval body in extended env movq %rsi, %rbp @@ -3405,6 +3484,10 @@ eval_list: je bi_random_state_bang cmpq $BI_RANDOMSEEDFROMOS, %rax je bi_random_seed_from_os + cmpq $BI_CADR, %rax + je bi_cadr + cmpq $BI_SORT, %rax + je bi_sort cmpq $BI_INTEGERP, %rax je bi_integerp cmpq $BI_PORTALSAVE, %rax @@ -4141,6 +4224,86 @@ bi_reverse: call list_reverse RET_VAL +# (cadr x) — second element. Shortcut: (car (cdr x)). +bi_cadr: + GETARG %rdi + andq $-8, %rdi + movq 8(%rdi), %rdi # cdr + andq $-8, %rdi + movq (%rdi), %rax # car + RET_VAL + +# (sort lst) — ascending insertion sort of a list of tagged integers. +# Non-destructive; returns a new list. Comparison is `<` on untagged int +# values (TAG_INT=0, so `sarq $3` yields the int). For non-integer mixed +# lists the result is undefined — matches the Python/C contract that +# `sort` uses the default numeric ordering. +bi_sort: + GETARG %rdi + call list_sort_rec + RET_VAL + +# list_sort_rec: %rdi = list (tagged) -> %rax = sorted list (tagged). +# sort(nil) = nil +# sort(x::rest) = insert(x, sort(rest)) +list_sort_rec: + cmpq $VAL_NIL, %rdi + jne 1f + movq $VAL_NIL, %rax + ret +1: + pushq %rbx + movq %rdi, %rbx # save input list (tagged) + andq $-8, %rbx # untagged pair ptr + movq (%rbx), %rax # car + pushq %rax # save x + movq 8(%rbx), %rdi # cdr + call list_sort_rec # %rax = sorted cdr + popq %rdi # x + movq %rax, %rsi # sorted cdr + call list_insert_rec + popq %rbx + ret + +# list_insert_rec: %rdi = x (tagged int), %rsi = sorted list (tagged) +# -> %rax = sorted list with x inserted. +list_insert_rec: + cmpq $VAL_NIL, %rsi + jne 1f + # Empty: return (cons x '()) + movq $VAL_NIL, %rsi + call make_pair + ret +1: + # Compare x < head of sorted? + movq %rsi, %rax + andq $-8, %rax + movq (%rax), %rcx # head (tagged) + movq %rdi, %rax + sarq $3, %rax # x untagged + movq %rcx, %rdx + sarq $3, %rdx # head untagged + cmpq %rdx, %rax + jl .ins_prepend + # x >= head: (cons head (insert x (cdr sorted))) + pushq %rcx # save head + pushq %rdi # save x + movq %rsi, %rax + andq $-8, %rax + movq 8(%rax), %rsi # cdr sorted + # rdi already = x (unchanged through memory loads) + call list_insert_rec # %rax = tail after insert + popq %rdi # discard x + popq %rcx # head + movq %rcx, %rdi # car = head + movq %rax, %rsi # cdr = inserted tail + call make_pair + ret +.ins_prepend: + # (cons x sorted) + call make_pair # rdi=x, rsi=sorted already set + ret + bi_map: # (map f lst) — apply f to each element, build result list # NOTE: %r13 is the heap limit (global), must not be used as scratch. @@ -7523,6 +7686,10 @@ init_special_forms: call intern_static movq %rax, sym_let_val(%rip) + leaq sf_let_star(%rip), %rdi + call intern_static + movq %rax, sym_let_star_val(%rip) + leaq sf_cond(%rip), %rdi call intern_static movq %rax, sym_cond_val(%rip) diff --git a/asm/test.sh b/asm/test.sh index d40ce07..9641506 100644 --- a/asm/test.sh +++ b/asm/test.sh @@ -57,6 +57,15 @@ check "isqrt-1" "(isqrt 1)" "1" check "isqrt-perfect" "(isqrt 144)" "12" check "isqrt-floor" "(isqrt 10)" "3" check "isqrt-big" "(isqrt 1000000000000)" "1000000" +check "cadr" "(cadr (list 1 2 3))" "2" +check "sort-empty" "(sort (list))" "()" +check "sort-one" "(sort (list 42))" "(42)" +check "sort" "(sort (list 3 1 4 1 5 9 2 6))" "(1 1 2 3 4 5 6 9)" +check "sort-sorted" "(sort (list 1 2 3))" "(1 2 3)" +check "let*" "(let* ((x 1) (y (+ x 1))) y)" "2" +check "let*-seq" "(let* ((a 1) (b a) (c (+ a b))) c)" "2" +check "rest-args" "(define (f x . r) r) (f 1 2 3 4)" "(2 3 4)" +check "rest-only" "(define (g . a) a) (g 1 2 3)" "(1 2 3)" check "random-int-1" "(begin (random-seed! 42) (random-int 1000000))" "558742" check "random-int-2" "(begin (random-seed! 42) (random-int 1000000) (random-int 1000000))" "543102" check "random-reseed" "(begin (random-seed! 42) (random-int 1000000) (random-seed! 42) (random-int 1000000))" "558742"