In general, are there any performance impacts of calling IPs?
I would say so, but very very very very very little per call
perhaps you can provide a bit more background?
I would say measure it. Do 1,000 or 10,000 in a loop.
At a these magnitude I'd guess it will start consuming a second or more of time. It certainly isn't free since OE does a bit of work at run-time to evaluate parameters and such. In the old days we used to put a lot of code in ABL include files so that we would avoid the run-time performance penalties of calling new procedures.
It may depend on factors such as whether you are using "shared variables", or procedure parameters .
yes, optimization as last step.
But up front: don't use global or shared variables :-)
then use a lot of IP, as they clarify programming, and when you master IP, then move to OO, lots of slower performance, but you´ll shine inside your company,,
Brian, I agree and always try to balance maintainability and understanding with performance. Are you saying a call to an IP (located inside the calling procedure) still makes a copy?
Sorry, my question was a bit vague, wasn't it. If my .p calls and IP in the same .p, are there performance (significant) impacts? For example:
test.p
run mytest in this-procedure (input temp-table-cust).
procedure mytest:
...