#include <lmp.h> using namespace lmp; meta_fn(infinite_integers, int n) { // `let_lazy(name, expr)` is similar to `(define name (delay expr))` in scheme let_lazy(next, infinite_integers<n + 1>); meta_return (Cons<Int<n>, next>); }; meta_fn(filter_mod, class lst, int n) { let_lazy(tail, filter_mod<cdr<lst>, n>); meta_return ( ...