Kernel-LEAF: A Logic plus Functional Language