pub fn validate_kernel(kernel: &Kernel) -> Result<(), CompileError>
Validate and type-check a kernel definition.
Returns CompileError if the kernel has type errors or undefined variables.
CompileError