Added experimental function call support.
(Please beware of the function pointer. )