Changing some uses of prune to use members
							parent
							
								
									7ad324837b
								
							
						
					
					
						commit
						434605c0b5
					
				| 
						 | 
				
			
			@ -7,6 +7,7 @@ stack-checker.branches
 | 
			
		|||
compiler.tree
 | 
			
		||||
compiler.tree.combinators ;
 | 
			
		||||
FROM: namespaces => set ;
 | 
			
		||||
FROM: sets => members ;
 | 
			
		||||
IN: compiler.tree.def-use
 | 
			
		||||
 | 
			
		||||
SYMBOL: def-use
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +44,7 @@ GENERIC: node-uses-values ( node -- values )
 | 
			
		|||
 | 
			
		||||
M: #introduce node-uses-values drop f ;
 | 
			
		||||
M: #push node-uses-values drop f ;
 | 
			
		||||
M: #phi node-uses-values phi-in-d>> concat remove-bottom prune ;
 | 
			
		||||
M: #phi node-uses-values phi-in-d>> concat remove-bottom members ;
 | 
			
		||||
M: #declare node-uses-values drop f ;
 | 
			
		||||
M: #terminate node-uses-values [ in-d>> ] [ in-r>> ] bi append ;
 | 
			
		||||
M: #shuffle node-uses-values [ in-d>> ] [ in-r>> ] bi append ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,6 +6,7 @@ help help.markup help.topics io.streams.string kernel macros
 | 
			
		|||
namespaces sequences sequences.deep sets sorting splitting
 | 
			
		||||
strings unicode.categories values vocabs vocabs.loader words
 | 
			
		||||
words.symbol summary debugger io ;
 | 
			
		||||
FROM: sets => members ;
 | 
			
		||||
IN: help.lint.checks
 | 
			
		||||
 | 
			
		||||
ERROR: simple-lint-error message ;
 | 
			
		||||
| 
						 | 
				
			
			@ -39,7 +40,7 @@ SYMBOL: vocab-articles
 | 
			
		|||
: effect-values ( word -- seq )
 | 
			
		||||
    stack-effect
 | 
			
		||||
    [ in>> ] [ out>> ] bi append
 | 
			
		||||
    [ dup pair? [ first ] when effect>string ] map prune ;
 | 
			
		||||
    [ dup pair? [ first ] when effect>string ] map members ;
 | 
			
		||||
 | 
			
		||||
: contains-funky-elements? ( element -- ? )
 | 
			
		||||
    {
 | 
			
		||||
| 
						 | 
				
			
			@ -80,7 +81,7 @@ SYMBOL: vocab-articles
 | 
			
		|||
 | 
			
		||||
: check-see-also ( element -- )
 | 
			
		||||
    \ $see-also swap elements [
 | 
			
		||||
        rest dup prune [ length ] bi@ assert=
 | 
			
		||||
        rest all-unique? t assert=
 | 
			
		||||
    ] each ;
 | 
			
		||||
 | 
			
		||||
: vocab-exists? ( name -- ? )
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -442,7 +442,7 @@ M: array elements*
 | 
			
		|||
: elements ( elt-type element -- seq ) [ elements* ] { } make ;
 | 
			
		||||
 | 
			
		||||
: collect-elements ( element seq -- elements )
 | 
			
		||||
    swap '[ _ elements [ rest ] map concat ] map concat prune ;
 | 
			
		||||
    swap '[ _ elements [ rest ] map concat ] gather ;
 | 
			
		||||
 | 
			
		||||
: <$link> ( topic -- element )
 | 
			
		||||
    1array \ $link prefix ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -81,7 +81,7 @@ M: linux-monitor dispose* ( monitor -- )
 | 
			
		|||
        IN_MOVED_FROM +rename-file-old+ ?flag
 | 
			
		||||
        IN_MOVED_TO +rename-file-new+ ?flag
 | 
			
		||||
        drop
 | 
			
		||||
    ] { } make prune ;
 | 
			
		||||
    ] { } make members ;
 | 
			
		||||
 | 
			
		||||
: parse-event-name ( event -- name )
 | 
			
		||||
    dup len>> zero?
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,7 +18,7 @@ GENERIC: rewrite-closures* ( obj -- )
 | 
			
		|||
 | 
			
		||||
GENERIC: defs-vars* ( seq form -- seq' )
 | 
			
		||||
 | 
			
		||||
: defs-vars ( form -- vars ) { } [ defs-vars* ] reduce prune ;
 | 
			
		||||
: defs-vars ( form -- vars ) { } [ defs-vars* ] reduce members ;
 | 
			
		||||
 | 
			
		||||
M: def defs-vars* local>> unquote suffix ;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -28,7 +28,7 @@ M: object defs-vars* drop ;
 | 
			
		|||
 | 
			
		||||
GENERIC: uses-vars* ( seq form -- seq' )
 | 
			
		||||
 | 
			
		||||
: uses-vars ( form -- vars ) { } [ uses-vars* ] reduce prune ;
 | 
			
		||||
: uses-vars ( form -- vars ) { } [ uses-vars* ] reduce members ;
 | 
			
		||||
 | 
			
		||||
M: local-writer uses-vars* "local-reader" word-prop suffix ;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,5 +23,5 @@ IN: math.ranges.tests
 | 
			
		|||
[ { 0 1/3 2/3 1 } ] [ 1 0 -1/3 <range> >array reverse ] unit-test
 | 
			
		||||
 | 
			
		||||
[ 100 ] [
 | 
			
		||||
    1 100 [a,b] [ 2^ [1,b] ] map prune length
 | 
			
		||||
    1 100 [a,b] [ 2^ [1,b] ] map members length
 | 
			
		||||
] unit-test
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@ IN: random.tests
 | 
			
		|||
[ t ] [ 10000 [ iota 0 [ drop 187 random + ] reduce ] keep / 2 * 187 10 ~ ] unit-test
 | 
			
		||||
[ t ] [ 10000 [ iota 0 [ drop 400 random + ] reduce ] keep / 2 * 400 10 ~ ] unit-test
 | 
			
		||||
 | 
			
		||||
[ t ] [ 1000 [ 400 random ] replicate prune length 256 > ] unit-test
 | 
			
		||||
[ t ] [ 1000 [ 400 random ] replicate members length 256 > ] unit-test
 | 
			
		||||
 | 
			
		||||
[ f ] [ 0 random ] unit-test
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -28,8 +28,8 @@ IN: random.tests
 | 
			
		|||
 | 
			
		||||
[ { 1 2 } 3 sample ] [ too-many-samples?  ] must-fail-with
 | 
			
		||||
 | 
			
		||||
[ 3 ] [ { 1 2 3 4 } 3 sample prune length ] unit-test
 | 
			
		||||
[ 99 ] [ 100 iota 99 sample prune length ] unit-test
 | 
			
		||||
[ 3 ] [ { 1 2 3 4 } 3 sample members length ] unit-test
 | 
			
		||||
[ 99 ] [ 100 iota 99 sample members length ] unit-test
 | 
			
		||||
 | 
			
		||||
[ ]
 | 
			
		||||
[ [ 100 random-bytes ] with-system-random drop ] unit-test
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue