diff --git a/mes/module/mes/type-0.mes b/mes/module/mes/type-0.mes index 083a26b6..6d2b284a 100644 --- a/mes/module/mes/type-0.mes +++ b/mes/module/mes/type-0.mes @@ -77,10 +77,10 @@ (eq? (core:type x) )) (define (procedure? p) - (and (or (builtin? p) - (and (pair? p) (eq? (car p) 'lambda)) - (closure? p)) - #t)) + (cond ((builtin? p) #t) + ((and (pair? p) (eq? (car p) 'lambda))) + ((closure? p) #t) + (#t #f))) (define (special? x) (eq? (core:type x) )) diff --git a/module/mes/guile.scm b/module/mes/guile.scm index 242561f9..e0edbdaf 100644 --- a/module/mes/guile.scm +++ b/module/mes/guile.scm @@ -47,6 +47,7 @@ core:write-port core:type %compiler + %program equal2? keyword->string pmatch-car @@ -93,8 +94,7 @@ (define 15) (define %arch (car (string-split %host-type #\-))) (define %compiler "gnuc") - - (define %compiler "gnuc") + (define %program "the program text") (define keyword->string (compose symbol->string keyword->symbol)) (define (core:type x) diff --git a/module/mes/mes-0.scm b/module/mes/mes-0.scm index 88f0b66f..de677ba2 100644 --- a/module/mes/mes-0.scm +++ b/module/mes/mes-0.scm @@ -29,7 +29,6 @@ #:export ( builtin? mes-use-module - EOF append2 mes? guile? @@ -37,7 +36,11 @@ guile-2? %arch %compiler + %program + pmatch-car + pmatch-cdr )) + (cond-expand (guile-2) (guile @@ -50,7 +53,9 @@ (define guile? #t) (define guile-1.8? (equal? (effective-version) "1.8")) (define guile-2? (equal? (major-version) "2")) -(define EOF (if #f #f)) (define append2 append) (define %arch (car (string-split %host-type #\-))) (define %compiler "gnuc") +(define %program "the program text") +(define pmatch-car car) +(define pmatch-cdr cdr) diff --git a/tests/display.test b/tests/display.test index f649eede..a0723c4c 100755 --- a/tests/display.test +++ b/tests/display.test @@ -22,9 +22,9 @@ exec ${MES-bin/mes} --no-auto-compile -L ${0%/*} -L module -C module -e '(tests ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Mes. If not, see . -;; (define-module (tests display) -;; #:use-module (mes mes-0) -;; #:use-module (mes test)) +(define-module (tests display) + #:use-module (mes mes-0) + #:use-module (mes test)) (mes-use-module (mes display)) (mes-use-module (mes guile)) diff --git a/tests/pmatch.test b/tests/pmatch.test index 504c5c6e..3f76f119 100755 --- a/tests/pmatch.test +++ b/tests/pmatch.test @@ -26,6 +26,7 @@ exec ${MES-bin/mes} --no-auto-compile -L ${0%/*} -L module -C module -e '(tests (define-module (tests pmatch) #:use-module (system base pmatch) #:use-module (mes mes-0) + #:use-module (mes guile) #:use-module (mes test)) (cond-expand diff --git a/tests/scm.test b/tests/scm.test index 08a6c591..1ce8bdc0 100755 --- a/tests/scm.test +++ b/tests/scm.test @@ -99,14 +99,6 @@ exec ${MES-mes} --no-auto-compile -L ${0%/*} -L module -C module -e '(tests boot (pass-if-equal "assoc-set!" '((a . 0) (b . 2)) (assoc-set! '((a . 0) (b . 1)) 'b 2)) (pass-if-equal "assoc-set! new" '((b . 2) (a . 0)) (assoc-set! '((a . 0)) 'b 2)) -(pass-if "builtin? car" (builtin? car)) -(pass-if "builtin? cdr" (builtin? cdr)) -(pass-if "builtin? cons" (builtin? cons)) -(pass-if "builtin? eq?" (builtin? eq?)) -(pass-if "builtin? if" (builtin? eq?)) -(when (not guile?) - (pass-if "builtin? eval" (not (builtin? not)))) -(pass-if "procedure?" (procedure? builtin?)) (pass-if "procedure?" (procedure? procedure?)) (pass-if "gensym" (symbol? (gensym))) diff --git a/tests/vector.test b/tests/vector.test index 0bf8c185..4f51489d 100755 --- a/tests/vector.test +++ b/tests/vector.test @@ -39,7 +39,9 @@ exec ${MES-bin/mes} --no-auto-compile -L ${0%/*} -L module -C module -e '(tests (pass-if "vector?" (vector? #(1 2 c))) (pass-if "vector-length" (seq? (vector-length #(1)) 1)) -(pass-if "make-vector" (sequal? (make-vector 3) #(*unspecified* *unspecified* *unspecified*))) +(pass-if-equal "make-vector" + (list->vector (list *unspecified* *unspecified* *unspecified*)) + (make-vector 3)) (pass-if "make-vector 1" (sequal? (make-vector 3 0) #(0 0 0))) (pass-if "vector-ref" (seq? (vector-ref #(0 1) 1) 1))