to test if a function exists, should use fboundp