From: Lloyd Zusman Date: 2004-07-31T10:16:48+09:00 Subject: Re: Forward references? Sam McCall writes: > Lloyd Zusman wrote: >> Is there a way to define forward references to functions? Due to my own >> personal eccentricities, I like to have the main body of a program >> appear at the top of its source file, and the functions it uses at the >> end. > In ruby, function definitions are code that gets executed, rather than > declarations that get found in the source file and put into a table. > So basically, the definitions have to come before the code that uses > them (but not before the definition of the methods that use them) in the > program flow. Therefore, if you want the main code at the top of the > file, put it in an END block or a method as already mentioned, or in a > separate file etc. > Defining stubs at the top won't work, because your main code runs before > the methods are redefined. > Sam Thank you very much, and thanks to all the rest of you for your helpful replies. Based on all this, I have settled on the following approach, which I have mentioned earlier in this thread: def main # my main routine # # ... etc. ... # return (exitcode) ### or this: exit(exitcode) end def function1 # ... etc. ... end def function2 # ... etc. ... end # other functions ... # final line ... exit(main) -- Lloyd Zusman ljz@asfast.com God bless you.