Re: And the question was? (Re: Amazing, two new articles on Computerworld.com actual mention OpenVMS!)



In article <f6114h$5qa$1@xxxxxxxxxxxxxxxxxxx>,
John Reagan <john.reagan@xxxxxx> writes:
Bill Gunshannon wrote:

proprietary extension. The original point was that the PLI/I language
took alignment into consideration and included alignment instructions
as a part of the language which means it is reasonable to expect a
program using it to be somewhat portable. C and Pascal do not share
this feature. Any concern for alignment is little more than an after-
thought.


Well, so does COBOL (see the SYNCRONIZED clause).

No one said it didn't. The languages referenced were Pascal and C.
COBOL does a lot of stuff that other languages don't, kind of liker
PL/I. :-)


As a member of a standards committee, it is hard for a language to
predict behavior & performance of future hardware. COBOL and PL/I
provide some sort of "using my crystal ball, I think I need some
alignment help right here". What if my crystal ball is broken and I
actually needed alignment help somewhere else?

Yeah, but it seems to work, at least most of the time.


Allowing/requiring the human to "help" the compiler produce code on some
current hardware (much less future hardware) seems silly to me.

I guess I'm just old school. I hate languages that hogtie me and then
expect me to get some work done. I still think tyhe programmer should
actually know what the comouter is doing and should have a say in how
best to do it.

Kinda
like the "register" declaration in C. Not really part of any language
design, but just a crutch for a brain-dead compiler.

Sorry, I don't agree but then, I don;t know how any of the compilers
you get to work on do it. My experience has always been that the
compiler is free to use registers for normal variables if it wants,
but need not. The "register" directive was provided to allow the
programmer the ability to take some variable that he thinks will
benefit from being kept in a register and force it to be there.
Of course, over use on a machine with insufficient resources is just
another sign of an incompetent programmer.


Computer languages allow you to represent some algorithm to the
underlying hardware. How does alignment help you do that?

I don't understand the question. Not everything a computer does
is mathematical algorithms. One needs to store information in
memory. Some machines have a serious efficiency penalty when this
results in unaligned access. Some way to fix this is needed. Even
Macro-11 had one.


The mindset of the Pascal committee (the only one I can speak for
personally) is that alignment (or any physical implementation detail)
doesn't add to the ability to describe more algorithmic detail. We left
things vague for things like interpreters, p-code, ASCII or EBCID, etc.
to all live within the standard.

No problem with that. It was a conscious decision made by the standards
committee after due consideration and that is fine. COBOL originally did
the same thing over things like Range Checking. But, programmers should
know this and take it into consideration when writing code. Some people
might think this makes PL/I a superior language. :-) Others are just
as happy with Pascal and C. And, yes, I still like COBOL. But I know
not to trust the compiler to keep all my arrays within bounds.

bill

--
Bill Gunshannon | de-moc-ra-cy (di mok' ra see) n. Three wolves
bill@xxxxxxxxxxxxxxx | and a sheep voting on what's for dinner.
University of Scranton |
Scranton, Pennsylvania | #include <std.disclaimer.h>
.



Relevant Pages

  • Re: vocabulary...
    ... ??>>> If he can do it, he's a trainee programmer. ... which the compiler had ... ??>> BrE and needed to translate into the AmE in which COBOL ... I was a scientist and initially, most of the programs that I used and wrote were machine language but I absolutely never touched COBOL. ...
    (alt.usage.english)
  • Re: New Cobol compiler written in Cobol
    ... >language to implement a COBOL compiler using the COBOL language. ... survivors decided on a high price. ...
    (comp.lang.cobol)
  • Re: Casting the return value of malloc() ?
    ... Why is it not good QoI? ... It is not the job of any programming language to avoid treading on the toes of another language. ... A C90 compiler that predefines __cplusplus is going to cause problems for such code, and the fact that it was legal for the implementation to do so won't make it's justifiably angry customers any happier about that fact. ... COBOL is not sufficiently similar to C to encourage the writing of code that is meaningfully compilable in both languages. ...
    (comp.lang.c)
  • Re: Period for qualification
    ... The first line is "read" aloud exactly like the Cobol phrase. ... Cobol was to make the language easy to read: ... By the time the compiler is evaluating these tokens, ... (There are implicit spaces at ...
    (comp.lang.cobol)
  • Isnt it time there was a standard align statement?
    ... C language actually allowed some portable control over data ... /* per member alignment (obviously padding before the first ... fatal with compiler specific switches - and that's no business of the ...
    (comp.lang.c)