ANN An ansic90 version of lcc-win

T

Tim Rentsch

jameskuyper said:
True. But that was simply a statement of fact, not a request "that lcc-
win32 be made to conform with C90". I don't believe that anyone other
than one nutcase has ever given you such a request. Whether or not
your compiler should conform with C is purely your own concern.

Nonsense. Whether or not lcc-win conforms to C90 is potentially of
interest to the entire C community, and it perfectly appropriate to
post statements about its conformance in this newsgroup. Furthermore,
I for one am pleased to see that lcc-win is moving in the direction of
greater conformance, and doubly pleased to see a statement of
lcc-win's C90 conformance. I would think anyone in the comp.lang.c
community would be pleased by these events, or at least not be
discouraging about them transpiring.
 
T

Tim Rentsch

Keith Thompson said:
It is not a statement of fact.

First, I dispute the accuracy of the phrase "widely hated".
There are some people who dislike him, but I believe there are more
who do not. I don't know that anyone actually hates him, though
perhaps there are some who do. We could have a lengthy argument
about the exact meanings of "widely" and "hated", and it would never
reach any meaningful conclusion, so let's not. The phrase is vague,
and to my understanding of its meaning, it is false.

Second, "pomposity of style" is a matter of opinion, not of fact.
I do not dispute that some people find his style pompous, but again,
there is no object standard for pomposity.

I think you've missed Malcolm's point. Even if his statement is
expressed in subjective language, the basic point he's making is
one most readers would agree with: many posters in the newsgroup
have expressed negative comments about RH's postings, often
making references to "style". The observation that most people
agree with it (ie, agree with the statement that other people
have made such postings, not that they agree or disagree with the
statements in the postings themselves) makes it a fact. It isn't
a scientifically verifiable fact like measuring the mass of the
Earth, but it's still a fact, "something known to exist or to
have happened".

The point, if I may offer one, is just because a given statement
is a fact doesn't make it either an attack or not an attack. A
statement may be perceived as an attack, whether it was intended
as one or not. The question of whether or not RH's earlier
statements were attacks is /not/ a matter of fact, because there
are obviously different opinions about whether they were.

[snip]

So how are your remarks relevant to this discussion?

Any comments intended to help improve the flow of communication,
and I believe Malcolm's comments were so intended, are relevant
to a discussion in that they might help the discussion succeed
at its goal.
 
K

Keith Thompson

Tim Rentsch said:
I think you've missed Malcolm's point. Even if his statement is
expressed in subjective language, the basic point he's making is
one most readers would agree with: many posters in the newsgroup
have expressed negative comments about RH's postings, often
making references to "style". The observation that most people
agree with it (ie, agree with the statement that other people
have made such postings, not that they agree or disagree with the
statements in the postings themselves) makes it a fact. It isn't
a scientifically verifiable fact like measuring the mass of the
Earth, but it's still a fact, "something known to exist or to
have happened".

Sure, if you water down Malcolm's statement enough, you can arrive
at something that is true and/or inoffensive. Such as, for example,
"I like cheese."

Malcolm did not say that "many posters in the newsgroup have
expressed negative comments about RH's postings", he said that RH is
"widely hated", which is a *very* different thing. And he didn't
say that it's because of their perception of his style; he said
"because of his pomposity of style". As I read it, Malcolm's
statement presumed, as a fact, that RH's style is pompous.
(If that's not what Malcolm meant, he's welcome to clarify it.)

If I've missed Malcolm's point, it's because (in my opinion) he
expressed it very badly.

(Incidentally, I don't find RH's posting style to be particularly
pompous, and I've seldom seen any non-troll say that it is pompous.)
The point, if I may offer one, is just because a given statement
is a fact doesn't make it either an attack or not an attack. A
statement may be perceived as an attack, whether it was intended
as one or not. The question of whether or not RH's earlier
statements were attacks is /not/ a matter of fact, because there
are obviously different opinions about whether they were.

Yes, there are different opinions. There are certainly some
statements that RH has made that I would call strong criticisms of
lcc-win and/or of jacob navia; if you want to call them attacks,
I won't dispute it. But his statements that lcc-win did not
conform to C90 were, as I recall, made only in the context of a
discussion of whether or not lcc-win is a conforming C compiler.
If he or anyone else had said that lcc-win *did* conform to C90,
that would have been a false statement.

So what's the problem?
[snip]

So how are your remarks relevant to this discussion?

Any comments intended to help improve the flow of communication,
and I believe Malcolm's comments were so intended, are relevant
to a discussion in that they might help the discussion succeed
at its goal.

I don't know what Malcolm intended. My best guess, based on what
he actually wrote, is that he intended to be inflammatory. Again,
he's more than welcome to clarify.
 
S

Seebs

ObTopic: I consider conformance to be a Boolean property. Either an
implementation conforms to the Standard or it doesn't. Nevertheless,
I certainly recognise that one might argue for conformance being a
scalar quantity, such that one implementation X can be "more
conforming" than another implementation Y, even if X has conformance
issues. Views?

It had better not be a boolean, because if it is, there are no conforming
implementations.

One useful distinction might be to distinguish between bugs and
intended implementation. We might conclude that there exist implementations
which conform (except for any bugs) and can be distinguished from
implementations where the implementors specifically decided not to conform
with some aspect of the spec.

It's not a C example, but consider the behavior of some GNU utilities and
the "POSIXLY_CORRECT" environment variable; if it's set, they conform with
the spec even when the spec appears to be misguided or stupid. (I am not
a huge fan of this choice, but there are some cases where I will at least
go so far as to say "the world would have been a better place if POSIX
had made a different choice here".)

That said, even if we look at design, I'm not totally sure that any
implementation is *perfectly* conforming. I'm also not sure I care.
By and large, I generally find that once you get to the point that a
few million lines of arbitrary open source software build, I am much
more concerned with other quality-of-implementation issues than I
am with conformance. (As a side note, I also find that, in general, I
am extremely unlikely to care about or object to a non-conformance with
the C spec when it aligns with POSIX instead; in practice, 99% of my
code is built for Unix-like systems only, and I have little to no reason
to want it more portable right now.)

So I definitely view it as a sliding scale. In practice, gcc's c99 is
good enough for me -- I can use compound literals, mixed declarations
and code, inline specifiers, and VLAs. So far, in practice, that's been
enough for me, and has been extremely useful.

-s
 
K

Keith Thompson

Richard Heathfield said:
ObTopic: I consider conformance to be a Boolean property. Either an
implementation conforms to the Standard or it doesn't. Nevertheless,
I certainly recognise that one might argue for conformance being a
scalar quantity, such that one implementation X can be "more
conforming" than another implementation Y, even if X has conformance
issues. Views?

I would probably express the latter as "Implementation X is more
nearly conforming than implementation Y".

I also tend to think that minor bugs do not prevent an implementation
from being conforming, or at least reasonably conforming, whereas
features that have not yet been implemented do. This is not an
entirely consistent position, since in some cases the behavior is
indistinguishable. But any piece of software as big as a compiler
will almost certainly have some bugs, so the alternative is to say
that there are no conforming compilers.

Given the lack of a formal definition for the language, it's a little
difficult to say that conformance is absolutely a Boolean property.
Nevertheless, I often think of it that way.
 
P

Phil Carmody

Richard Heathfield said:
In <[email protected]>, Keith Thompson wrote:
[SNIP - "pompous" discussion elided]
ObTopic: I consider conformance to be a Boolean property. Either an
implementation conforms to the Standard or it doesn't. Nevertheless,
I certainly recognise that one might argue for conformance being a
scalar quantity, such that one implementation X can be "more
conforming" than another implementation Y, even if X has conformance
issues. Views?

It's the complement of non-conformance, which is definitely a real
number. However, evaluation of the non-conformance is performed
in fixed-length floating point. The lucky few get below epsilon.

The non-conformance of the only C compiler I've written doesn't
fit in single-precision floats, for example. Mostly because it
was actually an assembler for a bizarre architecture.

(Having said that, I did write a perl script which turned something
superficially very C-like into something disgustingly BASIC-like,
that probably has a float-representable non-conformance whose 1s-bit
isn't known.)

Phil
 
B

bartc

When jacob initially announced the C90-compliant version of
lcc-win, he said it was "Due to popular demand". I asked him,
just out of curiosity, what "popular demand" he was referring to.
He never answered.

Of course he's under no obligation to do so, and the answer doesn't
affect me one way or the other, so I'm not going to worry about it
too much -- but I'm still idly curious about just what he meant.

I'll keep any speculation to myself until he answers.

I'd suggest he got fed up with people always bringing up this one niggling
detail of // comments in his compiler, ignoring everything else, and this
was just to shut them up. Which didn't work because now everyone is
questioning his motives...

(Although I don't know why it would have been such a big deal to control //
comments in his main compiler instead of having to provide an entirely
different compiler to achieve this...)
 
J

jacob navia

bartc a écrit :
I'd suggest he got fed up with people always bringing up this one
niggling detail of // comments in his compiler, ignoring everything
else, and this was just to shut them up. Which didn't work because now
everyone is questioning his motives...

I can't do anything here without some guy complaining. If I do not have
an ansi C90 version I do not conform to any standard.

If I do develop an ansic 90 conforming version then I have "ulterior motives"
and I do it because I am bad anyway...

There is NO WAY I can do something correct here. At least heathfield himself
hasn't complained, but other people have.
(Although I don't know why it would have been such a big deal to control
// comments in his main compiler instead of having to provide an
entirely different compiler to achieve this...)
Because it is not just // comments. It is also the ansic 90 standard
library, the ansic 90 syntax, rejecting all C99 features, etc...

The version I have now has a C90 library and a C90 compiler and a C90
linker!

But let's close this... Instead of discussing here I would be much
more thankful if anybody actually TESTED the presented version and
would tell me if anything is wrong.

Thanks in advance.

P.S. I do not have ansic90 compliant headers... If you find some
old ones please tell me.
 
B

bartc

jacob navia said:
bartc a écrit :
Because it is not just // comments. It is also the ansic 90 standard
library, the ansic 90 syntax, rejecting all C99 features, etc...

The version I have now has a C90 library and a C90 compiler and a C90
linker!

I remember you used a different executable for C90.

It might be sweeter though if a -C90 switch on the main compiler could
automatically invoke the C90 one?

(But don't do anything just for my benefit because I'm entirely unbothered
by the C90/C99 issue.)
 
J

jameskuyper

Tim said:
Nonsense. Whether or not lcc-win conforms to C90 is potentially of
interest to the entire C community,

You misunderstand me - I meant only that whether or not lcc-win should
conform to C90 is a decision that jacob is perfectly free to make for
himself. If his target customer base wants it, that's certainly a
strong incentive to provide it, but it's also an incentive he can
ignore if he chooses. I wouldn't recommend that he pay any attention
to Mr. Teapot's requests; because that guy's just a heckler - and I'm
not aware of any one else here requesting C90 conformance for lcc-win.
If there has indeed been "popular demand" for such a change, it must
have occurred outside of this newsgroup.

However, since you bring up the topic, I do not agree that the fact
that a compiler has achieved full C90 conformance is of significant
interest, not when it targets a platform for which there are already
several fully conforming implementations, not unless there's something
unusually good about that compiler. C99 conformance of lcc-win32 is a
much more newsworthy event.
lcc-win's C90 conformance. I would think anyone in the comp.lang.c
community would be pleased by these events, or at least not be
discouraging about them transpiring.

I don't want to discourage such developments, though I think his time
would have been better spent adding an optional full-conformance mode
to the current version of the compiler, rather than to an old version
of it. Presumably the newest version has some improvements over the
older one. Many of those improvements are, like support for //
comments, incompatible with full C90 conformance. However, I would
gues that at least a few of his improvements would be fully C90
compatible, if only as conforming extensions, and it would have been
better if his fully-C90 compatible compiler had the benefits of those
improvements.

Even better would have been to improve the C99 conformance of his
current version. The thing that worries me is that he may have wasted
his time on C90 conformance because he mispercieved comments about the
non-conformance of his compiler as requests that it be made
conforming; the comment of his quoted above strongly supports that
suspicion.
 
K

Keith Thompson

bartc said:
I'd suggest he got fed up with people always bringing up this one
niggling detail of // comments in his compiler, ignoring everything
else, and this was just to shut them up. Which didn't work because now
everyone is questioning his motives...
[snip]

Why is it that, every time I try to ask jacob this simple question,
other people feel the need to jump in and speculate about his
motivations?

I'm interested in what jacob has to say in answer to my question,
not in what you *think* he might say.

But it doesn't look like jacob is going to answer anyway, so I'll
just give up.
 
J

James Kuyper

Keith said:
....
Why is it that, every time I try to ask jacob this simple question,
other people feel the need to jump in and speculate about his
motivations?

Because jacob doesn't bother responding, leaving others free to
speculate. Why doesn't he bother responding? That would be speculation.
 
J

jacob navia

James Kuyper a écrit :
Because jacob doesn't bother responding, leaving others free to
speculate. Why doesn't he bother responding? That would be speculation.

Well, I did answer in this thread. See my reply to Seeb.

Please, let's stop this eternal polemics. It would be better
if somebody actually used the proposed version...

Thanks.
 
K

Keith Thompson

James Kuyper said:
Because jacob doesn't bother responding, leaving others free to
speculate. Why doesn't he bother responding? That would be speculation.

jacob posted a followup less than an hour after bartc's post.
 
K

Keith Thompson

jacob navia said:
James Kuyper a écrit :

Well, I did answer in this thread. See my reply to Seeb.

I've looked through this entire thread in groups.google.com (74
articles as of a few minutes ago). I don't see any reply by you
to Seeb, nor do I see a direct answer to my question. Can you
give me a pointer to the article to which you're referring?
Please, let's stop this eternal polemics. It would be better
if somebody actually used the proposed version...

I don't currently have a system on which I can install it.
 
J

James Kuyper

I should, more precisely, have written that Jacod has not bothered
answering your question. A response that is not an answer wouldn't matter.
jacob posted a followup less than an hour after bartc's post.

I can't actually see his responses on my usual newsreader, because I've
set it to filter them out; I took your comments as implying that he
still had not answered your question, just as you explicitly said in
your earlier message.

I just used Google Groups to check. It shows no direct response by jacob
to your message. The closest it comes is his response to bartc's
response to your message. I don't see any answer from him to your
question; not in that message, nor in any other message he's posted on
this thread.

I also see that he claims to have answered your question in this thread
in his reply to a message by Seebs. Google groups displays no message in
this thread which is a reply by jacob to a message from Seebs. Google
Groups doesn't show a single message from jacob on this newsgroup
containing either the word "popular" or "demand", since the one on
2009-09-24 in which he cited "popular demand" as the reason for the release.

The Google Groups search engine is rather flaky though, so he might be
right - but I can't find the message.
 
T

Tim Rentsch

Keith Thompson said:
Tim Rentsch said:
You're reading something into the posting that it doesn't say.
It may be that Jacob took Richard's statement as a request, and
it may be that he didn't, but certainly his posting doesn't say
that he took it as a request. So it isn't clear just who is
confused in this instance.

When jacob initially announced the C90-compliant version of
lcc-win, he said it was "Due to popular demand". [snip]

I think it's perfectly reasonable to take a statement
that lcc-win doesn't conform as an indication that
there is some desire that it conform. I think I
would take it that way if I were in his shoes. That
doesn't mean the earlier statement was taken as
a request.
 
T

Tim Rentsch

Keith Thompson said:
I think you're reading things into what James wrote that aren't
necessarily there.

Speaking only for myself (but I suspect others will agree with
me):

I have no objection to jacob's announcement; I think it was perfectly
appropriate to post it here. I have not discouraged jacob from
making and releasing a C90-compliant version of lcc-win, and I don't
believe anyone else has either. I'm not *greatly* pleased by it,
but only because I don't do Windows programming and I therefore
don't have much personal use for lcc-win; that's not a criticism,
and I imagine it's good news for Windows developers.

The only issue I have (and it's a minor one) is that jacob has said
that he made this release "Due to popular demand". That may well
be true, but I've seen no such demand here in comp.lang.c (or in
comp.compilers.lcc, which I also read regularly).

It is true that Richard Heathfield repeatedly stated (prior to
jacob's announcement) that lcc-win did not conform to the C90
standard. It is also true that Richard did not suggest that lcc-win
*should* conform to the C90 standard -- or that it should not.
jacob may or may not have misunderstood Richard's intent.

I was responding principally to James's last sentence, "Whether
or not your compiler should conform with C is purely your own
concern." I'm concerned with whether lcc-win conforms; I
think it should, because I believe it benefits the C community
if it does. I expect other people here share this interest
and belief, and wanted to express encouragement after the
disclosure -- that's really all I was trying to say. I
wasn't meaning to give a response directed solely or
even principally at James.
 
T

Tim Rentsch

Keith Thompson said:
Sure, if you water down Malcolm's statement enough, you can arrive
at something that is true and/or inoffensive. Such as, for example,
"I like cheese."

Malcolm did not say that "many posters in the newsgroup have
expressed negative comments about RH's postings", he said that RH is
"widely hated", which is a *very* different thing. And he didn't
say that it's because of their perception of his style; he said
"because of his pomposity of style". As I read it, Malcolm's
statement presumed, as a fact, that RH's style is pompous.
(If that's not what Malcolm meant, he's welcome to clarify it.)

That's not how I took it. I took it as restating the views
expressed by people who have posted negative opinions, not as his
own opinion.
If I've missed Malcolm's point, it's because (in my opinion) he
expressed it very badly.

It was deliberately written in inflammatory language, and perhaps
deliberately poor expression as well. I took that as satire, and
as a means of underscoring the point he was making. A more
watered down version wouldn't have made the point as strongly.
(Whether that would have been better or worse is another
question, but the point wouldn't be as strong.)
(Incidentally, I don't find RH's posting style to be particularly
pompous, and I've seldom seen any non-troll say that it is pompous.)

Yes, that's part of why I thought Malcolm wasn't expressing it as
something he believed, because it's not a fact -- obviously
different people hold different opinions on this question.
Yes, there are different opinions. There are certainly some
statements that RH has made that I would call strong criticisms of
lcc-win and/or of jacob navia; if you want to call them attacks,
I won't dispute it.

I think they key point is not whether I would call them attacks
but whether they were perceived by other people (including Jacob)
as attacks.
But his statements that lcc-win did not
conform to C90 were, as I recall, made only in the context of a
discussion of whether or not lcc-win is a conforming C compiler.
If he or anyone else had said that lcc-win *did* conform to C90,
that would have been a false statement.

Part of Malcom's point is that just because a statement
is true (or false) doesn't mean it isn't an attack,
or won't be perceived as an attack. The written word
in email or news postings is notorious for inflaming
strong emotional reactions, especially negative ones,
and it's silly to pretend that tendency doesn't exist.
Moreover I think it displays a lack of maturity not
to try to compensate for it.
So what's the problem?

The problem is there's a noticeable incongruity between the
expressions of some senders and the impressions of some
receivers. It's possible no action will be taken as a
result of this, but as part of making that decision it's
important first to observe that the incongruity exists.

[snip]

So how are your remarks relevant to this discussion?

Any comments intended to help improve the flow of communication,
and I believe Malcolm's comments were so intended, are relevant
to a discussion in that they might help the discussion succeed
at its goal.

I don't know what Malcolm intended. My best guess, based on what
he actually wrote, is that he intended to be inflammatory. Again,
he's more than welcome to clarify.

I think he did intentionally use inflammatory language. I
believe his purpose in doing so was not to inflame but to make
his point more effectively.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads

lcc-win 17
ANN Linux version of lcc-win 1
64 bit version of lcc-win 1
Lcc win overflow handling 42
The lcc-win string library 31
lcc-win is not <some compiler> 9
Warnings in lcc-win 70
C99 initializers in lcc-win 0

Members online

No members online now.

Forum statistics

Threads
473,774
Messages
2,569,596
Members
45,127
Latest member
CyberDefense
Top