Hard to find bugs
-
It happened in the early 90s. The "platform" was DOS, the program, dBase IV (remember?). In brief the "errors" were typing 'E' for '3' and 'O' for '0'. It took me half of a night to find... :)
36. When you surround an army, leave an outlet free. ... Do not press a desperate foe too hard. SUN-TZU - Art of War
You came late. I was doing that on punch cards back in the late 60's and 70's. You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad, so sometimes the only way to tell what your input was, was by looking at the holes.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
You came late. I was doing that on punch cards back in the late 60's and 70's. You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad, so sometimes the only way to tell what your input was, was by looking at the holes.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
I used punched cards only for a year when I was student. But when I was a school boy I often thought at punched cards like to a magic thing.
36. When you surround an army, leave an outlet free. ... Do not press a desperate foe too hard. SUN-TZU - Art of War
-
You came late. I was doing that on punch cards back in the late 60's and 70's. You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad, so sometimes the only way to tell what your input was, was by looking at the holes.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
The default monospaced system font on "classic" Macintosh systems has identical glyphs for "l" and "I", and for "O" and "0". When I was a teaching assistant, I was amazed at how many students would type "D0 20 I=6,10" (FORTRAN) and then wonder why it didn't work (I learned to recognize the error message). BTW, as of a few years ago, FORTRAN was still going strong and was even being extended. The "DO" loop optimizations work well with supercomputers, though I would think a good C compiler could recognize and optimize loops and array indices meeting the necessary criteria.
-
The default monospaced system font on "classic" Macintosh systems has identical glyphs for "l" and "I", and for "O" and "0". When I was a teaching assistant, I was amazed at how many students would type "D0 20 I=6,10" (FORTRAN) and then wonder why it didn't work (I learned to recognize the error message). BTW, as of a few years ago, FORTRAN was still going strong and was even being extended. The "DO" loop optimizations work well with supercomputers, though I would think a good C compiler could recognize and optimize loops and array indices meeting the necessary criteria.
supercat9 wrote:
many students would type "D0 20 I=6,10"
I see nothing wrong with that statement. It does waste two columns of your punch card, spaces are pretty useless in Fortran, the parser most often ignores them. The horrible thing with the language is
DO 20 I=6.10
also is a valid statement (assuming anIMPLICIT REAL D
is in effect), with quite a different effect. :)Luc Pattyn [Forum Guidelines] [My Articles]
The quality and detail of your question reflects on the effectiveness of the help you are likely to get. Show formatted code inside PRE tags, and give clear symptoms when describing a problem.
-
supercat9 wrote:
many students would type "D0 20 I=6,10"
I see nothing wrong with that statement. It does waste two columns of your punch card, spaces are pretty useless in Fortran, the parser most often ignores them. The horrible thing with the language is
DO 20 I=6.10
also is a valid statement (assuming anIMPLICIT REAL D
is in effect), with quite a different effect. :)Luc Pattyn [Forum Guidelines] [My Articles]
The quality and detail of your question reflects on the effectiveness of the help you are likely to get. Show formatted code inside PRE tags, and give clear symptoms when describing a problem.
-
Ooh. PS: Long ago, when I was developing code on Mac OS, I created my own flavor of monospaced fonts, with very clear oohs and zeroes, els and ones. All it took was editing a couple of characters. :)
Luc Pattyn [Forum Guidelines] [My Articles]
The quality and detail of your question reflects on the effectiveness of the help you are likely to get. Show formatted code inside PRE tags, and give clear symptoms when describing a problem.
-
Ooh. PS: Long ago, when I was developing code on Mac OS, I created my own flavor of monospaced fonts, with very clear oohs and zeroes, els and ones. All it took was editing a couple of characters. :)
Luc Pattyn [Forum Guidelines] [My Articles]
The quality and detail of your question reflects on the effectiveness of the help you are likely to get. Show formatted code inside PRE tags, and give clear symptoms when describing a problem.
I hacked my personal Macintosh similarly. A little annoying having to install a rOvr resource as well as the font. I guess I could 'almost' understand having identical glyphs for 'O' and '0', but I'm boggled by why they chose a simple line for both "l" and "I" (I think it also matched "|"). While one could argue that the most attractive shape for an "0" and "O" in a 5x7 font is a 5x7 box with all four corners lopped off by one pixel, I hardly see how a 7-pixel vertical line is attractive or functional as a shape for "I" or "l".
-
You came late. I was doing that on punch cards back in the late 60's and 70's. You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad, so sometimes the only way to tell what your input was, was by looking at the holes.
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
Walt Fair, Jr. wrote:
You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad
My first several programming classes used punched cards on the university mainframe. The keypunch machines were all worn out, and the university had a group of students maintaining them. It was common for there to only be two or three working machines at the end of the quarter, which was naturally the peak usage time. It would take days to get a program working: wait an hour to get on a keypunch, punch a dozen cards, wait in line to feed the reader (while the business major moron in front of you jammed it twice), wait 20-30 minutes for your listing, and then realize you made a single character mistake on a card. It's no wonder my hair was already getting thin by the time I graduated.
Software Zen:
delete this;
Fold With Us![^] -
It happened in the early 90s. The "platform" was DOS, the program, dBase IV (remember?). In brief the "errors" were typing 'E' for '3' and 'O' for '0'. It took me half of a night to find... :)
36. When you surround an army, leave an outlet free. ... Do not press a desperate foe too hard. SUN-TZU - Art of War
-
Walt Fair, Jr. wrote:
You had to look at the holes in the cards to tell the difference between 1/I, 0/O, etc. Usually the ribbons on the card punches were pretty bad
My first several programming classes used punched cards on the university mainframe. The keypunch machines were all worn out, and the university had a group of students maintaining them. It was common for there to only be two or three working machines at the end of the quarter, which was naturally the peak usage time. It would take days to get a program working: wait an hour to get on a keypunch, punch a dozen cards, wait in line to feed the reader (while the business major moron in front of you jammed it twice), wait 20-30 minutes for your listing, and then realize you made a single character mistake on a card. It's no wonder my hair was already getting thin by the time I graduated.
Software Zen:
delete this;
Fold With Us![^]Gary R. Wheeler wrote:
wait 20-30 minutes for your listing, and then realize you made a single character mistake on a card.
Ah, memories! My first job was similar - except that, from submission of cards (or, more often than not, coding sheets ready to be punched as cards) it could be several days before we got a listing back - by which time desk-checking had often thrown up the errors that needed fixing! Especially annoying when a coding sheet with "WHILE I IS LESS THAN 10" would get punched as "WH1LE 1 15 LE55 THAN IO" Still, it made us better programmers, I'm sure !?!??!
___________________________________________ .\\axxx (That's an 'M')