From: Guillermo J. Rozas Date: Thu, 14 Jun 1990 00:02:47 +0000 (+0000) Subject: Add sequence-immediate-actions that does not flatten the structure. X-Git-Tag: 20090517-FFI~11387 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=b451853b41af8aacce964d282745dca69c7c0621;p=mit-scheme.git Add sequence-immediate-actions that does not flatten the structure. --- diff --git a/v7/src/runtime/scomb.scm b/v7/src/runtime/scomb.scm index e51120616..583946cf1 100644 --- a/v7/src/runtime/scomb.scm +++ b/v7/src/runtime/scomb.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scomb.scm,v 14.4 1989/10/26 06:47:03 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scomb.scm,v 14.5 1990/06/14 00:02:47 jinx Exp $ Copyright (c) 1988 Massachusetts Institute of Technology @@ -109,6 +109,17 @@ MIT in each case. |# (else (list sequence)))) +(define (sequence-immediate-actions sequence) + (cond ((object-type? (ucode-type sequence-2) sequence) + (list (&pair-car sequence) + (&pair-cdr sequence))) + ((object-type? (ucode-type sequence-3) sequence) + (list (&triple-first sequence) + (&triple-second sequence) + (&triple-third sequence))) + (else + (error "sequence-immediate-actions: not a sequence" sequence)))) + (define-integrable (sequence-components sequence receiver) (receiver (sequence-actions sequence)))