From 6b7837415aa83e80d93eedcecbdf97d11de51555 Mon Sep 17 00:00:00 2001 From: Yota Toyama Date: Mon, 17 Feb 2025 20:36:38 +0900 Subject: [PATCH] Refactor prelude (#2101) --- prelude.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/prelude.scm b/prelude.scm index ed65c1117..ab09261d9 100644 --- a/prelude.scm +++ b/prelude.scm @@ -157,8 +157,9 @@ fold-left fold-right reduce-right - member-position + memq-position memv-position + member-position list-copy bytevector? @@ -1001,6 +1002,9 @@ (else (loop (cdr xs) (+ index 1)))))) + (define (memq-position x xs) + (member-position x xs eq?)) + (define (memv-position x xs) (member-position x xs eqv?)) @@ -1274,7 +1278,7 @@ (list-set! (rib-cdr record) index value)))) (define (field-index type field) - (memv-position field (cdr type))) + (memq-position field (cdr type))) ;; Tuple @@ -1516,8 +1520,6 @@ fold-left fold-right reduce-right - member-position - memv-position list-copy bytevector? @@ -2563,7 +2565,7 @@ (scheme base) (scheme cxr) (scheme repl) - (only (stak base) data-rib filter list-head memv-position pair-type procedure-type rib)) + (only (stak base) data-rib filter list-head memq-position pair-type procedure-type rib)) (begin (define eval @@ -3097,7 +3099,7 @@ ; If a variable is not in environment, it is considered to be global. (define (compilation-context-resolve context variable) - (or (memv-position variable (compilation-context-environment context)) variable)) + (or (memq-position variable (compilation-context-environment context)) variable)) ;; Procedures