From: Chris Hanson Date: Wed, 23 Dec 1987 04:22:11 +0000 (+0000) Subject: Implement `vector' as primitive. X-Git-Tag: 20090517-FFI~12974 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=ad74feae90bccd1a5c01693752c416c9fc231314;p=mit-scheme.git Implement `vector' as primitive. --- diff --git a/v7/src/runtime/vector.scm b/v7/src/runtime/vector.scm index c0c7cba63..5dcff36ad 100644 --- a/v7/src/runtime/vector.scm +++ b/v7/src/runtime/vector.scm @@ -1,6 +1,6 @@ ;;; -*-Scheme-*- ;;; -;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/vector.scm,v 13.44 1987/06/21 14:51:56 allen Rel $ +;;; $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/vector.scm,v 13.45 1987/12/23 04:17:16 cph Rel $ ;;; ;;; Copyright (c) 1987 Massachusetts Institute of Technology ;;; @@ -52,7 +52,7 @@ names))) (define-primitives vector-length vector-ref vector-set! - list->vector vector-cons subvector->list + list->vector vector vector-cons subvector->list subvector-move-right! subvector-move-left! subvector-fill!)) (let-syntax () @@ -65,9 +65,6 @@ (if (unassigned? fill) (set! fill false)) (vector-cons size fill)) -(define (vector . elements) - (list->vector elements)) - (define (vector->list vector) (subvector->list vector 0 (vector-length vector))) diff --git a/v7/src/sf/gconst.scm b/v7/src/sf/gconst.scm index 101b32824..9a0611fec 100644 --- a/v7/src/sf/gconst.scm +++ b/v7/src/sf/gconst.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/gconst.scm,v 3.4 1987/12/17 20:34:34 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/gconst.scm,v 3.5 1987/12/23 04:19:28 cph Rel $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -72,7 +72,7 @@ MIT in each case. |# CONS PAIR? CAR CDR SET-CAR! SET-CDR! GENERAL-CAR-CDR NULL? LENGTH MEMQ ASSQ FIRST HEAD EMPTY-STREAM? - VECTOR-CONS VECTOR-LENGTH VECTOR-REF VECTOR-SET! + VECTOR VECTOR-CONS VECTOR-LENGTH VECTOR-REF VECTOR-SET! LIST->VECTOR SUBVECTOR->LIST SUBVECTOR-MOVE-RIGHT! SUBVECTOR-MOVE-LEFT! SUBVECTOR-FILL! diff --git a/v7/src/sf/make.scm b/v7/src/sf/make.scm index a14871f25..84eb9cb73 100644 --- a/v7/src/sf/make.scm +++ b/v7/src/sf/make.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/make.scm,v 3.13 1987/10/09 17:19:03 jinx Rel $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/make.scm,v 3.14 1987/12/23 04:22:11 cph Rel $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -60,7 +60,7 @@ MIT in each case. |# (make-environment (define :name "SF") (define :version 3) - (define :modification 13) + (define :modification 14) (define :files) (define :files-lists diff --git a/v7/src/sf/usiexp.scm b/v7/src/sf/usiexp.scm index 9efd5f499..ce4b570c5 100644 --- a/v7/src/sf/usiexp.scm +++ b/v7/src/sf/usiexp.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/usiexp.scm,v 3.4 1987/07/08 04:43:33 jinx Rel $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/sf/usiexp.scm,v 3.5 1987/12/23 04:20:38 cph Rel $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -204,12 +204,6 @@ MIT in each case. |# (if-expanded (list-expansion-loop operands)) (if-not-expanded))) -(define (vector-expansion operands if-expanded if-not-expanded block) - (if (< (length operands) 9) - (if-expanded (make-combination list->vector - (list (list-expansion-loop operands)))) - (if-not-expanded))) - (define (list-expansion-loop rest) (if (null? rest) (constant/make '()) @@ -289,7 +283,7 @@ MIT in each case. |# (define usual-integrations/expansion-names '(= < > <= >= + - * / quotient remainder fix:quotient fix:remainder - apply cons* list vector + apply cons* list caar cadr cdar cddr caaar caadr cadar caddr cdaar cdadr cddar cdddr caaaar caaadr caadar caaddr cadaar cadadr caddar cadddr @@ -303,7 +297,7 @@ MIT in each case. |# +-expansion --expansion *-expansion /-expansion quotient-expansion remainder-expansion fix:quotient-expansion fix:remainder-expansion - apply*-expansion cons*-expansion list-expansion vector-expansion + apply*-expansion cons*-expansion list-expansion caar-expansion cadr-expansion cdar-expansion cddr-expansion caaar-expansion caadr-expansion cadar-expansion caddr-expansion cdaar-expansion cdadr-expansion cddar-expansion cdddr-expansion diff --git a/v8/src/sf/make.scm b/v8/src/sf/make.scm index 990af442f..e7f981c5b 100644 --- a/v8/src/sf/make.scm +++ b/v8/src/sf/make.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/sf/make.scm,v 3.13 1987/10/09 17:19:03 jinx Rel $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/sf/make.scm,v 3.14 1987/12/23 04:22:11 cph Rel $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -60,7 +60,7 @@ MIT in each case. |# (make-environment (define :name "SF") (define :version 3) - (define :modification 13) + (define :modification 14) (define :files) (define :files-lists