
  function(expr_function str)
    if(COMMAND "${str}")
      return_ref(str)
    endif()

    is_function(isfunc "${str}")
    if(isfunc)
      function_new(trash)
      ans(func)
      function_import("${str}" as "${func}")
      return_ref(func)
    endif()

    lambda_isvalid("${str}")
    ans(is_lambda)
    if(is_lambda)
      function_new(trash)
      ans(func)
      lambda_import("${str}" "${func}")
      return_ref(func)
    endif()
    return()
  endfunction()