assocs: Fix up some stack effects.
parent
3c4d1e41b7
commit
46d855665a
|
@ -517,7 +517,7 @@ HELP: unzip
|
||||||
HELP: zip
|
HELP: zip
|
||||||
{ $values
|
{ $values
|
||||||
{ "keys" sequence } { "values" sequence }
|
{ "keys" sequence } { "values" sequence }
|
||||||
{ "alist" "an array of key/value pairs" } }
|
{ "assoc" assoc } }
|
||||||
{ $description "Combines two sequences pairwise into a single sequence of key/value pairs." }
|
{ $description "Combines two sequences pairwise into a single sequence of key/value pairs." }
|
||||||
{ $examples
|
{ $examples
|
||||||
{ $example "USING: prettyprint assocs ;"
|
{ $example "USING: prettyprint assocs ;"
|
||||||
|
@ -543,7 +543,7 @@ HELP: zip-as
|
||||||
HELP: zip-index
|
HELP: zip-index
|
||||||
{ $values
|
{ $values
|
||||||
{ "values" sequence }
|
{ "values" sequence }
|
||||||
{ "alist" "an array of key/value pairs" }
|
{ "assoc" assoc }
|
||||||
}
|
}
|
||||||
{ $examples
|
{ $examples
|
||||||
"Zip a sequnce with its indices:"
|
"Zip a sequnce with its indices:"
|
||||||
|
@ -557,7 +557,7 @@ HELP: zip-index
|
||||||
HELP: zip-index-as
|
HELP: zip-index-as
|
||||||
{ $values
|
{ $values
|
||||||
{ "values" sequence } { "exemplar" sequence }
|
{ "values" sequence } { "exemplar" sequence }
|
||||||
{ "obj" "an array of key/value pairs" }
|
{ "assoc" assoc }
|
||||||
}
|
}
|
||||||
{ $examples
|
{ $examples
|
||||||
"Zip a sequnce with its indices as a vector:"
|
"Zip a sequnce with its indices as a vector:"
|
||||||
|
|
|
@ -206,7 +206,7 @@ M: assoc value-at* swap [ = nip ] curry assoc-find nip ;
|
||||||
[ [ set-at ] with-assoc 2each ] keep
|
[ [ set-at ] with-assoc 2each ] keep
|
||||||
] if ; inline
|
] if ; inline
|
||||||
|
|
||||||
: zip ( keys values -- alist )
|
: zip ( keys values -- assoc )
|
||||||
over zip-as ; inline
|
over zip-as ; inline
|
||||||
|
|
||||||
: map-index-as ( ... seq quot: ( ... elt index -- ... newelt ) exemplar -- ... obj )
|
: map-index-as ( ... seq quot: ( ... elt index -- ... newelt ) exemplar -- ... obj )
|
||||||
|
@ -221,10 +221,10 @@ M: assoc value-at* swap [ = nip ] curry assoc-find nip ;
|
||||||
: map-index ( ... seq quot: ( ... elt index -- ... newelt ) -- ... newseq )
|
: map-index ( ... seq quot: ( ... elt index -- ... newelt ) -- ... newseq )
|
||||||
over map-index-as ; inline
|
over map-index-as ; inline
|
||||||
|
|
||||||
: zip-index-as ( values exemplar -- obj )
|
: zip-index-as ( values exemplar -- assoc )
|
||||||
[ [ 2array ] ] dip map-index-as ; inline
|
[ [ 2array ] ] dip map-index-as ; inline
|
||||||
|
|
||||||
: zip-index ( values -- alist )
|
: zip-index ( values -- assoc )
|
||||||
dup zip-index-as ; inline
|
dup zip-index-as ; inline
|
||||||
|
|
||||||
: unzip ( assoc -- keys values )
|
: unzip ( assoc -- keys values )
|
||||||
|
|
Loading…
Reference in New Issue