added prolog mode and cpp-mode