assocs: Fix up some stack effects.
							parent
							
								
									3c4d1e41b7
								
							
						
					
					
						commit
						46d855665a
					
				| 
						 | 
				
			
			@ -517,7 +517,7 @@ HELP: unzip
 | 
			
		|||
HELP: zip
 | 
			
		||||
{ $values
 | 
			
		||||
     { "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." }
 | 
			
		||||
{ $examples
 | 
			
		||||
    { $example "USING: prettyprint assocs ;"
 | 
			
		||||
| 
						 | 
				
			
			@ -543,7 +543,7 @@ HELP: zip-as
 | 
			
		|||
HELP: zip-index
 | 
			
		||||
{ $values
 | 
			
		||||
    { "values" sequence }
 | 
			
		||||
    { "alist" "an array of key/value pairs" }
 | 
			
		||||
    { "assoc" assoc }
 | 
			
		||||
}
 | 
			
		||||
{ $examples
 | 
			
		||||
    "Zip a sequnce with its indices:"
 | 
			
		||||
| 
						 | 
				
			
			@ -557,7 +557,7 @@ HELP: zip-index
 | 
			
		|||
HELP: zip-index-as
 | 
			
		||||
{ $values
 | 
			
		||||
    { "values" sequence } { "exemplar" sequence }
 | 
			
		||||
    { "obj" "an array of key/value pairs" }
 | 
			
		||||
    { "assoc" assoc }
 | 
			
		||||
}
 | 
			
		||||
{ $examples
 | 
			
		||||
    "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
 | 
			
		||||
    ] if ; inline
 | 
			
		||||
 | 
			
		||||
 : zip ( keys values -- alist )
 | 
			
		||||
 : zip ( keys values -- assoc )
 | 
			
		||||
     over zip-as ; inline
 | 
			
		||||
 | 
			
		||||
: 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 )
 | 
			
		||||
    over map-index-as ; inline
 | 
			
		||||
 | 
			
		||||
: zip-index-as ( values exemplar -- obj )
 | 
			
		||||
: zip-index-as ( values exemplar -- assoc )
 | 
			
		||||
    [ [ 2array ] ] dip map-index-as ; inline
 | 
			
		||||
 | 
			
		||||
: zip-index ( values -- alist )
 | 
			
		||||
: zip-index ( values -- assoc )
 | 
			
		||||
    dup zip-index-as ; inline
 | 
			
		||||
 | 
			
		||||
: unzip ( assoc -- keys values )
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue