Sujet : Re: The joy of FORTRAN
De : c186282 (at) *nospam* nnada.net (c186282)
Groupes : alt.folklore.computers comp.os.linux.miscDate : 02. Mar 2025, 07:59:40
Autres entêtes
Message-ID : <tcmcnTfrnOhGnFn6nZ2dnZfqn_GdnZ2d@giganews.com>
References : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0
On 3/1/25 3:29 PM, Charlie Gibbs wrote:
On 2025-03-01, Peter Flass <peter_flass@yahoo.com> wrote:
c186282 <c186282@nnada.net> wrote:
>
On 2/28/25 7:39 AM, Bob Eager wrote:
>
On Fri, 28 Feb 2025 02:34:52 +0000, rbowman wrote:
>
Sadly, macros made their way into C. The basic idea was fine but we had
one programmer who laid awake nights thinking up new perverted things to
do with macros. I forget if it was Kernighan or Ritchie who later said
if they had only known what people would do with them...
>
I probably do far too much with a standalone macro processor...
If you're doing it for sport, though, there have been lots of
fun things done with macros. My favourite is an IBM 360 macro
that would solve the Towers of Hanoi problem, and use the MNOTE
directive to show the moves. It generated no executable code -
the expanded source code listing was the solution.
I've written a couple of macro processors, and the acid test
for each was to write a recursive Towers of Hanoi macro for them.
It's unfortunately NOT hard to make 'C' *totally
unreadable*, impossible to follow. Sometimes you
see the young hot-shots cram a dozen lines worth
of stuff into a single line with LOTS of punctuation
characters and bracket tricks. It's also possible to
obfuscate using too many, esp nested, macros.
>
Thing is, those ultra-compacted lines don't really
run any faster - the same functions and ops are
being run regardless.
Again, if you're into it for sport, some amazing things
have been done, culminating in the International Obfuscated
C Code Contest:
https://www.ioccc.org
Being kinda old-school my pgms always look like
something from the K&R book, and with comments
after almost every line. THAT you can read a
day from now, or a year from now ....
>
Never can have enough comments. I usually use lots, but recently I was
looking over some of my old code and had a “what?” moment. It was obvious
when I wrote it.
I write C the same way. A wise person on one of these newsfroups
once said that the comments aren't for someone else, they're for
you a year from now. The more tricky the code, the more detailed
the comments.
Good advice sadly FEW are willing to take.
"Well, *I* understand it perfectly (today) !"
Even 'clear' C is often NOT so clear - neither
the syntax or logic. You've gotta EXPLAIN every
step to yourself. Old code almost always has to
be revised/debugged. Might be a month, a year,
five years. How the hell DO you figure out what
you, or anybody, worked 5 years along ? GREAT
COMMENTING is the only way.
Every function I wrote had a nice long explain
at the top, then every line narrated in the
body. It's the only thing that works.
Some other langs are a little more self-documenting.
Pascal is very readable. Python CAN be. COBOL was
SUPPOSED to be. But even then the exact plan/meanings
can be LOST after even a short time. The more
clever the code, the worse it is.
What's the point in writing complex code if, at
the first need, you basically have to totally
re-write the entire damned thing ???
Oh well, 20 years, only the "AI"s will be
doing 'programming" ..........