Re: Pseudo Code or Compiled
Posted in 1996
It isn't as simple as that... It never is! Although the p-code interpreter does check that there is a definition for every function which might be called, it does not fix up the p-code references to any function until the code is executed. Before it starts executing, FGLGO (or FGLDB) should definitely check that all the functions it might need are available to it. People get angry if they've been entering data for half-an-hour and the program suddenly stops and says "Hi, I can't go on -- you've called a non-existent function!". You can decide to make it a feature request. I don't think anything will happen, though. Yours, Jonathan Leffler (johnl@informix.com) #include <disclaimer.h> }From: "Billy Wheeler" <billy.wheeler@pixie.co.za> }Date: Mon, 8 Apr 1996 20:14:30 +2 }X-Informix-List-Id: <list.9363> } }I agree wholeheartedly with Will's excellent summary. Obviously most }of my clients don't want to face the pain of buying 2 sets of }compilers & runtimes, so I generally advise people to stick to RDS }due to the availability of the debugger...makes _my_ life easier! :-) } }The reason for the slow load in RDS is that fglgo checks that all }necessary functions are present on load, whereas the C compiler }obviously does that at link time. I suspect that there would be a }much smaller differential if you compared loading monolithic }programs (i.e. programs with only a MAIN ... END MAIN, no FUNCTIONs). } }That's why FourGen programs take forever to load - hundreds of }function resolutions have to be done. } }Perhaps Jonathan Leffler or someone could tell us if there is any way }of switching off the function resolution on loading. Failing that, what say you }all about putting it in as a feature request? } }> As far as performance, compiled programs tend to load VERY quickly. The }> time between typing in 'prog.4ge' and getting a screen up is really }> snappy compared to 'fglgo prog.4gi'. Running a process and looking at }> the CPU time consumed, you'll find that compiled programs use about }> half as much time as p-code programs.