From 7aa542d7c3727d76a41ddf3a4a30fb8f733a5a97 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Wed, 13 Aug 2008 19:47:19 -0500 Subject: [PATCH] Add word --- basis/columns/columns-docs.factor | 9 ++++++++- basis/columns/columns.factor | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/basis/columns/columns-docs.factor b/basis/columns/columns-docs.factor index a5b26e3fd0..e0d4e4a2e0 100644 --- a/basis/columns/columns-docs.factor +++ b/basis/columns/columns-docs.factor @@ -4,7 +4,9 @@ IN: columns ARTICLE: "columns" "Column sequences" "A " { $emphasis "column" } " presents a column of a matrix represented as a sequence of rows:" { $subsection column } -{ $subsection } ; +{ $subsection } +"A utility word:" +{ $subsection flipped } ; HELP: column { $class-description "A virtual sequence which presents a fixed column of a matrix represented as a sequence of rows. New instances can be created by calling " { $link } "." } ; @@ -23,4 +25,9 @@ HELP: ( seq n -- column ) "In the same sense that " { $link } " is a virtual variant of " { $link reverse } ", " { $link } " is a virtual variant of " { $snippet "swap [ nth ] curry map" } "." } ; +HELP: +{ $values { "seq" sequence } { "seq'" sequence } } +{ $description "Outputs a new virtual sequence which presents the transpose of " { $snippet "seq" } "." } +{ $notes "This is the virtual sequence equivalent of " { $link flip } "." } ; + ABOUT: "columns" diff --git a/basis/columns/columns.factor b/basis/columns/columns.factor index 7e4a7fd408..9e282a0b64 100644 --- a/basis/columns/columns.factor +++ b/basis/columns/columns.factor @@ -13,3 +13,6 @@ M: column virtual@ dup col>> -rot seq>> nth bounds-check ; M: column length seq>> length ; INSTANCE: column virtual-sequence + +: ( seq -- seq' ) + dup first length [ ] with map ;