good c compiler

B

bernard

howdy!

please recommend a good c compiler.

- should be small
- should be fast
- should come with a good ide
- should be inexpensive

i am using windows os.

awaiting replies.
 
J

jacob navia

bernard said:
howdy!

please recommend a good c compiler.

- should be small
- should be fast
- should come with a good ide
- should be inexpensive

i am using windows os.

awaiting replies.

Hi bernard:

lcc-win is a good compiler. I know, since I wrote most of it.
Comes with good IDE+resource editor, compiler+linker+debugger.
Project management, utilities included.

Compiler has extensive math library. Language accepted is C99.

Price: Zero dollar and zero cents, for personal use.

Download: http://www.cs.virginia.edu/~lcc-win.
 
K

Keith Thompson

jacob navia said:
lcc-win is a good compiler. I know, since I wrote most of it.
Comes with good IDE+resource editor, compiler+linker+debugger.
Project management, utilities included.

Compiler has extensive math library. Language accepted is C99.
Nearly.

Price: Zero dollar and zero cents, for personal use.

Download: http://www.cs.virginia.edu/~lcc-win.
 
C

CBFalconer

bernard said:
please recommend a good c compiler.

- should be small
- should be fast
- should come with a good ide
- should be inexpensive

i am using windows os.

I recommend getting the DJGPP system and gcc. See delorie.com.
 
F

fb

CBFalconer said:
I recommend getting the DJGPP system and gcc. See delorie.com.
That was a good compiler...but I thought it was DOS only and the
development seems to have gone slightly stale. Still...an excellent
compiler from what I recall.
 
S

s0suk3

(e-mail address removed) said:



As I understand it, Jacob Navia took the lcc source code and used it as the
basis for lcc-win32. So the answer to your question is really "it was,
once, but is no longer".

The lcc-win32 compiler /used/ to be on the list, but I took it off when I
realised that the maintainer wasn't particularly concerned about
conformance (a position that he has made abundantly clear on many
occasions by his impatience towards reports of conformance errors in his
compiler). It's a list of C compilers, not a list of "ain't my language
cute and by the way doesn't it look a bit like C?" compilers.

I see you still hold the absurd position that a non-fully-conforming
compiler "isn't a C compiler"... Well well, no need to discuss that
all over again!

Sebastian
 
S

s0suk3

(e-mail address removed) said:

<snip>




I see you still hold the absurd position that C compilers are not obliged
to implement the C language correctly.

Where did I say that C compilers are not obliged to implement the C
language correctly?
I don't see how this view excludes,
say, the GFA BASIC compiler from being a C compiler. In fact, I don't see
how it excludes a garden fork or a cup of coffee from being a C compiler.

This excludes them: common sense. (Although you don't make very heavy
use of that.)

Sebastian
 
S

s0suk3

(e-mail address removed) said:



If you agree that C compilers *are* obliged to implement the C language
correctly, you share my "absurd" position that a non-fully-conforming
compiler isn't a C compiler.

No, because fully-conforming is not the same as correctly. Remember
that dereferencing an uninitialized pointer can cause a fully-
conforming implementation to execute the "rm -rf /" command. I don't
know about you, but I don't consider that "correctness". In any event,
there are still more important things in an implementation than full
conformance, such as actual usability, as I've mentioned before (e.g.,
powerful libraries, good optimization, innovative language extensions,
etc).
Yes, but common sense also excludes (from the set of all C compilers)
compilers that don't implement C, and yet until your most recent
disclaimer (quoted above - "Where did I say that C compilers are not
obliged...") it did seem that you wanted to include compilers that don't
implement C, which flies in the face of common sense.

Terminology disagreements. Let's forget them.

Sebastian
 
C

cr88192

bernard said:
howdy!

please recommend a good c compiler.

- should be small
- should be fast
- should come with a good ide
- should be inexpensive

i am using windows os.

MinGW and Cygwin are good.
each has different merits, but I more prefer MinGW for technical reasons
(but Cygwin is better at being a "nicer" framework with a better set of
tools).

free IDE's are also available, but I don't personally use them.
 
J

jacob navia

Is the 'lcc' compiler listed below the 'The Digital Mars C compiler'
the same as Jacob's lcc-win?

Sebastian

No. That is the original lcc, without the work I have done:

o C89: no long long, nor long double.
o No assembler, you have to use microsoft assembler
o no linker
o no debugger, nor the possibility of a debugger since it
doesn't generate debug information.
o No ide
 
J

jacob navia

Richard said:
The lcc-win32 compiler /used/ to be on the list, but I took it off when I
realised that the maintainer wasn't particularly concerned about
conformance (a position that he has made abundantly clear on many
occasions by his impatience towards reports of conformance errors in his
compiler).


This is a lie by somebody that has made abundantly clear that
he hates my compiler. I have worked years implementing C99, and I have
now an implementation that is not missing any important feature.
 
C

cr88192

Richard Heathfield said:
(e-mail address removed) said:



I see you still hold the absurd position that C compilers are not obliged
to implement the C language correctly. I don't see how this view excludes,
say, the GFA BASIC compiler from being a C compiler. In fact, I don't see
how it excludes a garden fork or a cup of coffee from being a C compiler.

forall A (A or not A)

not a very useful way to think IMO.


if something accepts and compiles C (for the vast majority of inputs), even
if imperfectly in some edge cases, and offers a few extensions, it can still
be classified as a C compiler IMO.

the other things listed, however, will not compile any valid C programs...



it is much the same as if someone goes and declares that someone goes to
hell if they have ever become aroused, and that arousal is of an analogous
level of guilt to adultery (even if the person in question is not married,
the logic can be followed out this way).

this position is absurd (and yes, some people go in this direction in terms
of their doctrine).

so, please refrain from this style of thinking, it is silly...
 
S

s0suk3

(e-mail address removed) said:





If an implementation does not translate C programs according to the C
language definition, how can it be considered a C implementation?

Perhaps it does translate programs according to the language
definition, but it lacks a set of features. Perhaps it adds a set of
features. Perhaps it imposes modifications on a set of features. This
sort of things are common among C implementations, and that doesn't
prevent them from being C implementations.
The incorrectness is in the program, not the implementation.

Sure, the program incorrectly dereferences a pointer that it
shouldn't. But I was talking about the compiler executing that command
under that circumstance. Thankfully, I can now see your notion of
"correctness".
But you merely
place an *additional* constraint on C implementations, the constraint of
"reasonableness", the constraint of "not deliberately setting out to wreak
revenge on the hapless programmer"

Hapless? I thought you had agreed that even the most experienced
programmer will make this sort of mistake.
- and of course mainstream
implementations do observe this constraint. Nevertheless, programmers
would do well to stick to the rules of C if they wish their code to work.

<snip>

The point is that the word "conformance" is very meaningless in the
context of C, unless you add that magical ingredient: common sense.
Without it, a conforming implementation is some sort of program that
can blow up your machine or make demons fly out of your nose. And when
you do take common sense into account, you'll realize that what
*really* is important in a C implementation, which you don't seem to
see now, and which isn't full conformance.

Sebastian
 
N

Nick Keighley

howdy!
yo

please recommend a good c compiler.

- should be small

why? This is a serious question. Modern hardware comes
with vast resources for low prices. Are you running
your compiler on a toaster or something?
- should be fast
- should come with a good ide
- should be inexpensive

i am using windows os.

Microsoft provide a free version of their compiler.
Look for "express"
awaiting replies.

I'm not sure what that means
 
S

s0suk3

forall A (A or not A)

not a very useful way to think IMO.

if something accepts and compiles C (for the vast majority of inputs), even
if imperfectly in some edge cases, and offers a few extensions, it can still
be classified as a C compiler IMO.

the other things listed, however, will not compile any valid C programs....

it is much the same as if someone goes and declares that someone goes to
hell if they have ever become aroused, and that arousal is of an analogous
level of guilt to adultery (even if the person in question is not married,
the logic can be followed out this way).

this position is absurd (and yes, some people go in this direction in terms
of their doctrine).

so, please refrain from this style of thinking, it is silly...
 
S

s0suk3

(Oops, sorry for my empty previous post.)

forall A (A or not A)

not a very useful way to think IMO.

if something accepts and compiles C (for the vast majority of inputs), even
if imperfectly in some edge cases, and offers a few extensions, it can still
be classified as a C compiler IMO.

the other things listed, however, will not compile any valid C programs....

it is much the same as if someone goes and declares that someone goes to
hell if they have ever become aroused, and that arousal is of an analogous
level of guilt to adultery (even if the person in question is not married,
the logic can be followed out this way).

this position is absurd (and yes, some people go in this direction in terms
of their doctrine).

so, please refrain from this style of thinking, it is silly...

Thanks for bringing some common sense into this Dark World Of
Nonsense.

Sebastian
 
N

Nick Keighley

Richard Heathfield wrote:

This is a lie by somebody that has made abundantly clear that
he hates my compiler. I have worked years implementing C99, and I have
now an implementation that is not missing any important feature.

good grief.

I was just about to suggest to Richard that he add lcc-win
back onto the list of free compilers as near compliance as
opposed to full compliance is good enough. Perhaps with a
caveat that it is only free for non-commercial use (this
isn't a criticism) and that it has a few compliance holes
(but then all real-world compilers probably do). But your
post kind of illustrates your attitude to compliance.
 
C

Chris Dollin

Terminology disagreements. Let's forget them.

If we forget them
Then our languages will confuse
One and another.

Let us remember our disagreements
But without making them
occasions of turbulence.

[Turbulence
is off-topic
in comp.lang.c.]
 
B

Bartc

Richard Heathfield said:
(e-mail address removed) said:

As I understand it, Jacob Navia took the lcc source code and used it as
the
basis for lcc-win32. So the answer to your question is really "it was,
once, but is no longer".

The lcc-win32 compiler /used/ to be on the list, but I took it off when I
realised that the maintainer wasn't particularly concerned about
conformance (a position that he has made abundantly clear on many
occasions by his impatience towards reports of conformance errors in his
compiler). It's a list of C compilers, not a list of "ain't my language
cute and by the way doesn't it look a bit like C?" compilers.

I use lcc-win32 for compiling code appearing on c.l.c. In that regard, it
performs quite adequately. So I would call it a C compiler.

I also use Mingw and DMC for second opinions. I once used Pelles C too but I
can't get that working again.

I've also just looked at lcc on your list, but since it seems to be
distributed as source code, I couldn't actually run it (lcc42.zip). So
lcc-win32 is much more use here than lcc, for someone running Windows.
 

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

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,011
Latest member
AjaUqq1950

Latest Threads

Top