pub type Function<N> = FunctionCore<N, Instruction<N>, Command<N>>;
struct Function<N> { /* private fields */ }