22 lines
		
	
	
		
			443 B
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			443 B
		
	
	
	
		
			Factor
		
	
	
 | 
						|
USING: kernel math math.functions math.vectors sequences self ;
 | 
						|
 | 
						|
IN: pos
 | 
						|
 | 
						|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 | 
						|
 | 
						|
TUPLE: pos val ;
 | 
						|
 | 
						|
C: <pos> pos
 | 
						|
 | 
						|
: pos> ( -- val ) self> pos-val ;
 | 
						|
 | 
						|
: >pos ( val -- ) self> set-pos-val ;
 | 
						|
 | 
						|
! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 | 
						|
 | 
						|
: distance ( pos pos -- n ) pos-val swap pos-val v- [ sq ] map sum sqrt ;
 | 
						|
 | 
						|
: move-by ( point -- ) pos> v+ >pos ;
 | 
						|
 |