示例#1
0
 public static function sieve($input, $paramPredicate)
 {
     $x = $input->first();
     $cell = new Cell($x, null);
     $cell->cdr = function () use($input, $paramPredicate, $x) {
         return Cell::sieve($input->rest()->filter(function ($n) use($paramPredicate, $x) {
             return $paramPredicate($n, $x);
         }), $paramPredicate);
     };
     return $cell;
 }