Agreed about the long term benefits of rewriting! Also whilst we're at it - fire any programmer that uses goto, return to, undescriptive variable names or seems incapable of writing comments. Though I did work with a programmer who claimed comments were unnecessary because the code was"self-documenting"!! Strangely enough he also was a big "goto" user....
Simon --------------------------------- Simon Verona Director Dealer Management Services Ltd Sent from my iPhone On 4 Mar 2009, at 17:27, concern shoko <[email protected]> wrote: > At times the best way to debug is to write your own program. > Honestly the average time we spend perusing the endless uncommented > lines is more than the time we need to write the whole program from > scratch.... > > Food for thought.... > > On Wed, Mar 4, 2009 at 4:12 PM, Richard Kann <[email protected]> > wrote: > The old I learned basic programming in school. Who needs those new > fangled large variable names or comments. Try this for size: > > > L=5 > GOSUB 9000 > A5=VAR > L=30 > GOSUB 9000 > A7=VAR > . > . > . <some 300 lines later> > 9000 INPUT VAR > IF LEN(VAR)>L THEN GO 9000 > RETURN > > This was a 15000 line program, the variables were all defined way up > at the top (at least 1/2 were, the new fields were left out). There > were actually 8 or 9 different subroutine areas for common inputs, > prints, etc. I got whiplash trying to read the code. > > > Richard Kann > > > Simon Verona wrote: >> >> I think that good programming techniques don’t change.. nice, clea >> r, concise code (with comments) is massively easier to develop, de >> bug and has less bugs inserted with ongoing maintenance and update >> s... >> >> >> >> My nightmare is code like (I was looking at code similar to this >> earlier in the week)... >> >> >> >> IF X=2&Y=1&Z=3 THEN >> >> A=A+1 >> >> J<X,Y>=R<Z> >> >> GO 100 >> >> END ELSE >> >> GO 200 >> >> END >> >> >> >> This is just a snippet of the kind of code I was debugging – about >> 1000 lines of code in the same vein, without a single comment! >> >> >> >> Such fun! >> >> >> >> Simon >> >> >> >> <mime-attachment.jpg> >> >> >> >> From: [email protected] [mailto:[email protected]] On >> Behalf Of Richard Kann >> Sent: 03 March 2009 23:49 >> To: [email protected] >> Subject: Re: Jbase programming query >> >> >> >> I've seen worse though I agree on the return to's. The other issue >> is goto statements that jump all over the world rather then using >> if then's or other more smooth routines. Maybe it's my age, but >> back in the old days it caused massive frame faulting making the >> disc run constant. These days I guess it is not as important though >> still a pain to debug. >> >> Simon Verona wrote: >> >> I think it's a case of "you're fired " if you use return to !!! >> >> I can only agree having had to historically debut code with lots of >> return to's in! >> >> Simon >> >> --------------------------------- >> Simon Verona >> Director >> Dealer Management Services Ltd >> >> Sent from my iPhone >> >> On 3 Mar 2009, at 17:38, Richard Kann <[email protected]> wrote: >> >> >> You said: >> Never, ever, ever, ever, ever, ever, ever, ever,ever, ever, ever, >> ever,ever,ever, use RETURN TO. That's ever, ever, ever, ever, ever, >> ever, ever, ever, ever, ever, ever, ever, ever, ever, ever, ever, >> ever, >> ever, ever, ever, ever, ever, ever, ever, ever ad infinitum. >> But how do you REALLY feel about it Jim? >> >> Richard Kann >> Comp-Ware Systems, Inc. >> >> Jim Idle wrote: >> >> Dhaya wrote: >> >> >> Hi >> >> I am using jbase 4.1 release with T24. I have a query regarding >> the >> usage of 'recursive return" statement >> in Jbase programming language. I understood we can recursive >> return >> to come out of subroutine to calling program. I have a requirement >> where when the recursive return is executed, program control should >> not come out >> the subroutine used. It is that is there any way to code such as >> >> PROGRAM.ABORT: >> >> RETURN TO (PROGRAM.ABORT - 1) >> >> Because, i want this recursivee return to be executed 1 level down. >> Can i use (PROGRAM.ABORT - 1) in jbasic >> or Is there any alternate way to use. >> >> >> >> Never, ever, ever, ever, ever, ever, ever, ever,ever, ever, ever, >> ever,ever,ever, use RETURN TO. That's ever, ever, ever, ever, ever, >> ever, ever, ever, ever, ever, ever, ever, ever, ever, ever, ever, >> ever, >> ever, ever, ever, ever, ever, ever, ever, ever ad infinitum. >> >> For a start you will never debug it. Wanting to do this is a sign >> that >> your design is very wrong. >> >> jBC is a compiled language, therefore the line numbers have no >> meaning >> except in the debugger. There are some compiled languages that >> annotate >> lines but they are compiling broken languages. >> >> The reason that you are wanting to do this is either that you have >> used >> GOTO elsewhere in this program, or that you have called nested >> subroutines, discovered an error and now want to back out of all the >> GOSUBs until you can return from the subroutine. Either way, it >> means >> that you need to redesign your subroutine. Each GOSUB should check an >> error return and back out accordingly. This type of thing is why more >> modern languages have exceptions that can cascade back up the chain >> and >> be caught at an appropriate point. However jBC does not have this >> functionality so you must program accordingly. >> >> Now, personally, I think that the language should have had separate >> notation for subroutine vs gosub return, but it doesn't, so you are >> stuck with it. Review your design here - when you have to ask how >> to do >> something like this, it means the program is broken. >> >> Jim >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> > > > > -- > C. Shoko > Temenos GLOBUS Developer > |Nedbank Africa|South Africa| > > > > --~--~---------~--~----~------------~-------~--~----~ Please read the posting guidelines at: http://groups.google.com/group/jBASE/web/Posting%20Guidelines IMPORTANT: Type T24: at the start of the subject line for questions specific to Globus/T24 To post, send email to [email protected] To unsubscribe, send email to [email protected] For more options, visit this group at http://groups.google.com/group/jBASE?hl=en -~----------~----~----~----~------~----~------~--~---
