Re: Resurection of routine_id forward referencing
- Posted by Al Getz <Xaxo at aol.com> Sep 20, 2006
- 650 views
cklester wrote: > > Kat wrote: > > > > Water is a option in lakes, but as people drown in it, i think it > > should not be an option. Sheesh. > > If there's no water in your "lake," it's not a lake; it's just a hole. You > can't drive your boat in a hole. > > -=ck > "Programming in a state of Euphoria." > <a > href="http://www.cklester.com/euphoria/">http://www.cklester.com/euphoria/</a> Are you argueing pro or con here? ha ha. We shouldnt go around making sure every lake has water just so we can drive our boats in them. Kat was making the point that just because people drown in lakes doesnt mean we should empty every lake. There is another side to this argument though, and that is that that analogy isnt quite the same as forward referencing, in that we also dont force people who are afraid of water to swim in lakes. With forward referencing, we indirectly force people to either use it or render our own coded handywork useless to them. Thus, we force them to swim. Personally, however, i dont see too much of a problem due to the following argument: Without forward referencing we already do this: atom MyRid --sometime later in the code this gets filled --using routine_id() atom x global procedure MyProc(atom a) x=call_func(MyRid,{a}) end procedure Ha ha! Notice we already have forward referencing? In other words, we have the same 'problem' as with forward referencing already, so adding forward referencing shouldnt change anything in this respect. Now again only with FR: atom x global procedure MyProc(atom a) x=call_func(routine_id("MyFunc"),{a}) end procedure Compare the two now. See the similarities? We dont know where "MyFunc" resides with either one, and that's really the main issue. Now lets look at one more example with actual forward ref: atom x global procedure MyProc(atom a) x=MyFunc(a) end procedure Compare all three. See any difference? No. Thus, the argument is: "Since we can already do it today there's no reason why we shouldnt be able to do it tomorrow only a lot easier". Yes, we force newbies to swim, but we already were doing that. There is one difference, in that with actual FR we could do this too: --MyFile.exw atom x x=MyFunc(a) but that still isnt 'that' different is it? Again, a resounding "No". Again, actual f.r. isnt any different than 'emulated' f.r., which we already have now. Take care, Al E boa sorte com sua programacao Euphoria! My bumper sticker: "I brake for LED's" From "Black Knight": "I can live with losing the good fight, but i can not live without fighting it". "Well on second thought, maybe not."