Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Do FunctionName.prg
Message
From
13/05/2021 14:09:52
Mike Yearwood
Toronto, Ontario, Canada
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01680170
Message ID:
01680402
Views:
39
>>>>>Hi,
>>>>>
>>>>>Is there a way to make sure that when you have code:
>>>>>
>>>>>do ProcedureName.prg
>>>>>
>>>>>Fires from a program? For example, say the ProcedureName() is in MyPrograms.prg. Just like when you use NEWOBJECT() you specify the library name (VCX) and the class name.
>>>>>Is
>>>>>
>>>>>SET PROCEDURE TO MyPrograms additive
>>>>>
>>>>>is the only way?
>>>>>
>>>>>TIA
>>>>
>>>>Why are you arbitrarily storing multiple procedures/functions in a single .prg? This does not help the compiler. If you build separate .prgs per function the exe will run them faster, than if it has to dig into other files first.
>>>
>>>Are you suggesting not even name the function inside the PRG (if there is only one function inside a PRG)? And just call it by the .PRG name?
>>
>>Its wise to take his advise with a grain of salt. This is not considered good practice and would gain you absolutely nothing. (see my other reply to Mike).
>
>Thank you. My problem has never been the speed, neither compiling no at run-time. Mike assumed I was "after speed."
>The downside - for me - to place each function/procedure in a separate .PRG is a maintenance headache. I have not counted but the application probably has a couple of hundred procedures. And having to scroll through this list in the project manager (if necessary to look at the code of whatever), would increase the time of maintenance. I know many will say that instead of the Functions/Procedures I should have them in classes. And maybe so. But I started this application way before I knew anything about how to build classes. When I can and when it makes sense, I do refactor the code.

I assumed nothing. Your first question was about ensuring a function is called from within a procedure. I asked why are you continuing a practice that went the way of the dodo, when long files names were available in the operating system. I can say exactly the opposite. I can put my hand on speed.prg faster than I can remember what other library it is in. I also don't accidentally have 2 speed functions. The only point is in the exe, that it can run the function, all this other stuff is a waste of time.
Previous
Reply
Map
View

Click here to load this message in the networking platform