Task

Select certain elements from an Array into a new Array in a generic way.



To demonstrate, select all even numbers from an Array.

As an option, give a second solution which filters destructively,
by modifying the original Array rather than creating a new Array.




module var;
 
extern printf;
 
@Integer main [
	var arr = 1..9;
	var evens = arr.filter(#(i) i % 2 == 0);
	printf("%s\n", evens::str);
 
	return 0;
]