>>>Is this function a part of the procedure library?
>
>The function is part of a procedure library and is called from all over our package from both classes and functions in other libraries.
>
>>>In what order the classes/procedures are loaded in memory?
>
>I have no clue. We SET PROCEDURE TO for all our function libraries when the package starts up and never unload them. Is that what you're asking?
Yes, I think if you just set procedure to one procedure file it would be quicker.
In other words, you may try (if this function doesn't have extra dependencies):
lcSaveClasslib = set('classlib')
lcSaveProc = set('procedure')
set classlib to
set procedure to myProcedureWithFunction
myFunction
* restore set proc and set classlib.
Also I just read Gregory's advice and I think the slowness may be also triggered if you have lots of tables open and you don't prefix your variables with m.
If it's not broken, fix it until it is.
My Blog