Re: C90 IDE+compiler for Windows / educational purposes

Discussion in 'C Programming' started by Ioannis Vranos, Feb 20, 2008.

  1. Richard Heathfield said:
    >
    > Ioannis Vranos said:
    >
    >> Hi,
    >>
    >> Do you know of any decent free simple C90 IDE+compiler for Windows
    >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    >> doesn't work correctly there.

    >
    > Turbo C is fine, and is available for free download from the Borland
    > museum site.
    >
    > BTW welcome back to clc :)



    Is this C90/C95 conformant?

    The one I found is version 2.01:

    http://dn.codegear.com/article/20841
     
    Ioannis Vranos, Feb 20, 2008
    #1
    1. Advertising

  2. Ioannis Vranos

    jacob navia Guest

    Richard Heathfield wrote:
    > Ioannis Vranos said:
    >
    >> Richard Heathfield said:
    >> >
    >> > Ioannis Vranos said:
    >> >
    >> >> Hi,
    >> >>
    >> >> Do you know of any decent free simple C90 IDE+compiler for Windows
    >> >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    >> >> doesn't work correctly there.
    >> >
    >> > Turbo C is fine, and is available for free download from the Borland
    >> > museum site.

    >>
    >>
    >> Is this C90/C95 conformant?
    >>
    >> The one I found is version 2.01:
    >>
    >> http://dn.codegear.com/article/20841

    >
    > The only non-conformance issue I know about in that version is that it uses
    > CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet hacking (when nobody's
    > looking) should fix that.
    >


    Nothing about the six (!!!) memory models it uses?

    Of course, for somebody living in the past, that is an excellent
    compiler for teaching obsolete stuff. Imagine, trying to make
    newcomers understand six memory models.

    Never mind. Go ahead with your rubbish.



    --
    jacob navia
    jacob at jacob point remcomp point fr
    logiciels/informatique
    http://www.cs.virginia.edu/~lcc-win32
     
    jacob navia, Feb 20, 2008
    #2
    1. Advertising

  3. Ioannis Vranos said:

    > Richard Heathfield said:
    > >
    > > Ioannis Vranos said:
    > >
    > >> Hi,
    > >>
    > >> Do you know of any decent free simple C90 IDE+compiler for Windows
    > >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    > >> doesn't work correctly there.

    > >
    > > Turbo C is fine, and is available for free download from the Borland
    > > museum site.

    >
    >
    > Is this C90/C95 conformant?
    >
    > The one I found is version 2.01:
    >
    > http://dn.codegear.com/article/20841


    The only non-conformance issue I know about in that version is that it uses
    CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet hacking (when nobody's
    looking) should fix that.

    --
    Richard Heathfield <http://www.cpax.org.uk>
    Email: -http://www. +rjh@
    Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
    "Usenet is a strange place" - dmr 29 July 1999
     
    Richard Heathfield, Feb 20, 2008
    #3
  4. jacob navia wrote:
    > Richard Heathfield wrote:
    >> Ioannis Vranos said:
    >>
    >>> Richard Heathfield said:
    >>> >
    >>> > Ioannis Vranos said:
    >>> >
    >>> >> Hi,
    >>> >>
    >>> >> Do you know of any decent free simple C90 IDE+compiler for Windows
    >>> >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    >>> >> doesn't work correctly there.
    >>> >
    >>> > Turbo C is fine, and is available for free download from the Borland
    >>> > museum site.
    >>>
    >>>
    >>> Is this C90/C95 conformant?
    >>>
    >>> The one I found is version 2.01:
    >>>
    >>> http://dn.codegear.com/article/20841

    >>
    >> The only non-conformance issue I know about in that version is that it
    >> uses CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet hacking (when
    >> nobody's looking) should fix that.
    >>

    >
    > Nothing about the six (!!!) memory models it uses?
    >
    > Of course, for somebody living in the past, that is an excellent
    > compiler for teaching obsolete stuff. Imagine, trying to make
    > newcomers understand six memory models.
    >
    > Never mind. Go ahead with your rubbish.



    Does lcc-win32 come with an option for strict ISO C90/C95 code?
     
    Ioannis Vranos, Feb 21, 2008
    #4
  5. jacob navia said:

    > Richard Heathfield wrote:
    >> Ioannis Vranos said:
    >>
    >>> Richard Heathfield said:
    >>> >
    >>> > Ioannis Vranos said:
    >>> >
    >>> >> Hi,
    >>> >>
    >>> >> Do you know of any decent free simple C90 IDE+compiler for Windows
    >>> >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    >>> >> doesn't work correctly there.
    >>> >
    >>> > Turbo C is fine, and is available for free download from the Borland
    >>> > museum site.
    >>>
    >>>
    >>> Is this C90/C95 conformant?
    >>>
    >>> The one I found is version 2.01:
    >>>
    >>> http://dn.codegear.com/article/20841

    >>
    >> The only non-conformance issue I know about in that version is that it
    >> uses CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet hacking (when
    >> nobody's looking) should fix that.
    >>

    >
    > Nothing about the six (!!!) memory models it uses?


    Please explain what you think is non-conforming about any of those memory
    models.

    > Of course, for somebody living in the past, that is an excellent
    > compiler for teaching obsolete stuff.


    No, it's an excellent compiler for teaching C90, which is the de facto
    industry standard, and it runs on any x86 right down to 8086s, which means
    that third world orgs have got a fighting chance of laying their hands on
    enough machines for one per student. And it's free, of course.

    > Imagine, trying to make
    > newcomers understand six memory models.


    You don't need to understand /any/ of them if you're learning ISO C. Please
    learn the facts before posting.

    > Never mind. Go ahead with your rubbish.


    Thank you for your kind permission to allow me to give good advice to the
    OP, but I've got news for you - I don't *need* your permission. Now, if
    you're allowed to call good sound advice "rubbish", by the same token I'm
    allowed to call your attempted rebuttal ignorant, self-serving, and
    puerile. But I won't. Instead, I will simply note that you have a direct
    commercial interest in advising people to use the compiler that you
    maintain, that there has been a spate of non-conformance issues with that
    compiler recently, and that I think the OP (who is after a conforming C
    compiler) would be far better off with a compiler written by people who
    know C than they would be with an implementation maintained by someone who
    holds the Standard in disdain and is on record as saying that he can't
    even be bothered to read it properly.

    --
    Richard Heathfield <http://www.cpax.org.uk>
    Email: -http://www. +rjh@
    Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
    "Usenet is a strange place" - dmr 29 July 1999
     
    Richard Heathfield, Feb 21, 2008
    #5
  6. Ioannis Vranos

    Guest

    On Feb 20, 5:32 pm, Richard Heathfield <> wrote:
    > Ioannis Vranos said:
    >
    >
    >
    > > Richard Heathfield said:

    >
    > > > Ioannis Vranos said:

    >
    > > >> Hi,

    >
    > > >> Do you know of any decent free simple C90 IDE+compiler for Windows
    > > >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    > > >> doesn't work correctly there.

    >
    > > > Turbo C is fine, and is available for free download from the Borland
    > > > museum site.

    >
    > > Is this C90/C95 conformant?

    >
    > > The one I found is version 2.01:

    >
    > >http://dn.codegear.com/article/20841

    >
    > The only non-conformance issue I know about in that version is that it uses
    > CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet hacking (when nobody's
    > looking) should fix that.


    How about non-compilant stddef.h? The compiler was released before
    the C standard, it'd be strange if it were compliant, wouldn't it?
    Not that I like lcc-win too much, but I would certainly choose
    mingw if I were to choose between lcc-win and Turbo C ;)

    Yevgen
     
    , Feb 21, 2008
    #6
  7. Ioannis Vranos

    Bartc Guest

    "Richard Heathfield" <> wrote in message
    news:...
    > jacob navia said:


    >>>> > Turbo C is fine, and is available for free download from the Borland
    >>>> > museum site.


    >> Nothing about the six (!!!) memory models it uses?


    > Thank you for your kind permission to allow me to give good advice to the
    > OP, but I've got news for you - I don't *need* your permission. Now, if
    > you're allowed to call good sound advice "rubbish", by the same token I'm
    > allowed to call your attempted rebuttal ignorant, self-serving, and
    > puerile. But I won't.


    > Instead, I will simply note that you have a direct
    > commercial interest in advising people to use the compiler that you
    > maintain,


    To be fair, I don't think that compiler (lcc-win32) was mentioned by him, at
    least in the parts of this thread I could read.

    And I share his concerns somewhat, the students should be using the most
    up-to-date compilers they can run. (I wouldn't wish the 8086 memory model -
    I don't think you can get away from it - on anyone.)

    The OP mentioned Dev-C++ suggesting their hardware is capable.

    --
    Bart
     
    Bartc, Feb 21, 2008
    #7
  8. wrote:

    >
    > How about non-compilant stddef.h? The compiler was released before
    > the C standard, it'd be strange if it were compliant, wouldn't it?
    > Not that I like lcc-win too much, but I would certainly choose
    > mingw if I were to choose between lcc-win and Turbo C ;)



    Which unfortunately has the long double bug.
     
    Ioannis Vranos, Feb 21, 2008
    #8
  9. Ioannis Vranos

    CBFalconer Guest

    jacob navia wrote:
    > Richard Heathfield wrote:
    >> Ioannis Vranos said:
    >>> Richard Heathfield said:
    >>>> Ioannis Vranos said:
    >>>>>
    >>>>> Do you know of any decent free simple C90 IDE+compiler for
    >>>>> Windows for use in a classroom? I know Dev-C++/MINGW but
    >>>>> "long double" doesn't work correctly there.
    >>>>
    >>>> Turbo C is fine, and is available for free download from the
    >>>> Borland museum site.
    >>>
    >>> Is this C90/C95 conformant? The one I found is version 2.01:
    >>>
    >>> http://dn.codegear.com/article/20841

    >>
    >> The only non-conformance issue I know about in that version is
    >> that it uses CLOCK_TCK instead of CLOCKS_PER_SEC. A little quiet
    >> hacking (when nobody's looking) should fix that.

    >
    > Nothing about the six (!!!) memory models it uses?
    >
    > Of course, for somebody living in the past, that is an excellent
    > compiler for teaching obsolete stuff. Imagine, trying to make
    > newcomers understand six memory models.
    >
    > Never mind. Go ahead with your rubbish.


    Of course Jacob doesn't mention that, having selected a suitable
    model, you can then just ignore the models (unless you exceed
    available sizes) and meanwhile you will find the compiler to be
    almost completely C90 standard conformant (with the appropriate
    options). Jacobs recommended compiler appears to have some serious
    failures to conform to any C standard.

    --
    [mail]: Chuck F (cbfalconer at maineline dot net)
    [page]: <http://cbfalconer.home.att.net>
    Try the download section.



    --
    Posted via a free Usenet account from http://www.teranews.com
     
    CBFalconer, Feb 21, 2008
    #9
  10. Ioannis Vranos

    Bartc Guest

    "Ioannis Vranos" <> wrote in message
    news:fpijsc$jam$...
    > wrote:
    >
    >>
    >> How about non-compilant stddef.h? The compiler was released before
    >> the C standard, it'd be strange if it were compliant, wouldn't it?
    >> Not that I like lcc-win too much, but I would certainly choose
    >> mingw if I were to choose between lcc-win and Turbo C ;)

    >
    >
    > Which unfortunately has the long double bug.


    What is the problem exactly with long double on that compiler? Perhaps it
    might be easier to find a workaround.

    --
    Bart
     
    Bartc, Feb 21, 2008
    #10
  11. Bartc wrote:
    > "Ioannis Vranos" <> wrote in message
    > news:fpijsc$jam$...
    >> wrote:
    >>
    >>> How about non-compilant stddef.h? The compiler was released before
    >>> the C standard, it'd be strange if it were compliant, wouldn't it?
    >>> Not that I like lcc-win too much, but I would certainly choose
    >>> mingw if I were to choose between lcc-win and Turbo C ;)

    >>
    >> Which unfortunately has the long double bug.

    >
    > What is the problem exactly with long double on that compiler? Perhaps it
    > might be easier to find a workaround.



    The problem is students learning C in a class and not being able to use
    long double, and having to instruct them to avoid the type.
     
    Ioannis Vranos, Feb 21, 2008
    #11
  12. Ioannis Vranos

    CBFalconer Guest

    wrote:
    > Richard Heathfield <> wrote:
    >> Ioannis Vranos said:
    >>> Richard Heathfield said:
    >>>

    .... snip ...
    >>>
    >>>> Turbo C is fine, and is available for free download from the
    >>>> Borland museum site.
    >>>
    >>> Is this C90/C95 conformant?
    >>>
    >>> The one I found is version 2.01:
    >>> http://dn.codegear.com/article/20841

    >>
    >> The only non-conformance issue I know about in that version is
    >> that it uses CLOCK_TCK instead of CLOCKS_PER_SEC. A little
    >> quiet hacking (when nobody's looking) should fix that.

    >
    > How about non-compilant stddef.h? The compiler was released
    > before the C standard, it'd be strange if it were compliant,
    > wouldn't it? Not that I like lcc-win too much, but I would
    > certainly choose mingw if I were to choose between lcc-win
    > and Turbo C ;)


    I don't know what is wrong with TCs stddef.h. However, TC has few
    variations from the standard, is on my machine, and is used
    regularly to check that I have built portability into my code
    correctly. It is the only 16 bit compiler I have available. Note
    that TC was built to meet one of the earlier drafts of the C89
    standard.

    --
    [mail]: Chuck F (cbfalconer at maineline dot net)
    [page]: <http://cbfalconer.home.att.net>
    Try the download section.



    --
    Posted via a free Usenet account from http://www.teranews.com
     
    CBFalconer, Feb 21, 2008
    #12
  13. Ioannis Vranos

    santosh Guest

    Bartc wrote:

    >
    > "Ioannis Vranos" <> wrote in message
    > news:fpijsc$jam$...
    >> wrote:
    >>
    >>>
    >>> How about non-compilant stddef.h? The compiler was released before
    >>> the C standard, it'd be strange if it were compliant, wouldn't it?
    >>> Not that I like lcc-win too much, but I would certainly choose
    >>> mingw if I were to choose between lcc-win and Turbo C ;)

    >>
    >>
    >> Which unfortunately has the long double bug.

    >
    > What is the problem exactly with long double on that compiler? Perhaps
    > it might be easier to find a workaround.


    Apparently the MinGW compiler (which is a ported gcc) emits code for 96
    bit long double while the runtime library with which it usually links,
    which is Microsoft's system runtime (crt.dll or some such), lacks
    support for 96 bit long doubles. This is particularly noticeable with
    I/O functions like printf and scanf.

    I think there is a command line option to force gcc to use other sizes
    of long doubles but I don't exactly remember which.
     
    santosh, Feb 21, 2008
    #13
  14. Ioannis Vranos

    santosh Guest

    Bartc wrote:

    >
    > "Richard Heathfield" <> wrote in message
    > news:...
    >> jacob navia said:

    >
    >>>>> > Turbo C is fine, and is available for free download from the
    >>>>> > Borland museum site.

    >
    >>> Nothing about the six (!!!) memory models it uses?

    >
    >> Thank you for your kind permission to allow me to give good advice to
    >> the OP, but I've got news for you - I don't *need* your permission.
    >> Now, if you're allowed to call good sound advice "rubbish", by the
    >> same token I'm allowed to call your attempted rebuttal ignorant,
    >> self-serving, and puerile. But I won't.

    >
    >> Instead, I will simply note that you have a direct
    >> commercial interest in advising people to use the compiler that you
    >> maintain,

    >
    > To be fair, I don't think that compiler (lcc-win32) was mentioned by
    > him, at least in the parts of this thread I could read.
    >
    > And I share his concerns somewhat, the students should be using the
    > most up-to-date compilers they can run. (I wouldn't wish the 8086
    > memory model - I don't think you can get away from it - on anyone.)
    >
    > The OP mentioned Dev-C++ suggesting their hardware is capable.


    As Richard rightly notes Turbo C is very popular in the so called
    developing countries. Institutes with less resources use Turbo C while
    the "higher end" ones use MSVc and DJGPP/MinGW. You'd be hard pressed
    to find other installations.
     
    santosh, Feb 21, 2008
    #14
  15. Ioannis Vranos

    Guest

    On Feb 20, 7:50 pm, CBFalconer <> wrote:
    > wrote:
    > > Richard Heathfield <> wrote:
    > >> Ioannis Vranos said:
    > >>> Richard Heathfield said:

    >
    > ... snip ...
    >
    > >>>> Turbo C is fine, and is available for free download from the
    > >>>> Borland museum site.

    >
    > >>> Is this C90/C95 conformant?

    >
    > >>> The one I found is version 2.01:
    > >>> http://dn.codegear.com/article/20841

    >
    > >> The only non-conformance issue I know about in that version is
    > >> that it uses CLOCK_TCK instead of CLOCKS_PER_SEC. A little
    > >> quiet hacking (when nobody's looking) should fix that.

    >
    > > How about non-compilant stddef.h? The compiler was released
    > > before the C standard, it'd be strange if it were compliant,
    > > wouldn't it? Not that I like lcc-win too much, but I would
    > > certainly choose mingw if I were to choose between lcc-win
    > > and Turbo C ;)

    >
    > I don't know what is wrong with TCs stddef.h.


    No offsetof, no wchar_t (no wchar_t *at all*, in fact). I
    bet you will find hundred and twenty three other problems
    if you try.

    > However, TC has few
    > variations from the standard, is on my machine, and is used
    > regularly to check that I have built portability into my code
    > correctly. It is the only 16 bit compiler I have available. Note
    > that TC was built to meet one of the earlier drafts of the C89
    > standard.


    How many years did it take for MS and gcc to get to C89 conformance?

    Yevgen
     
    , Feb 21, 2008
    #15
  16. Ioannis Vranos

    Guest

    On Feb 20, 9:25 pm, santosh <> wrote:
    > Bartc wrote:
    >
    > > "Ioannis Vranos" <> wrote in message
    > >news:fpijsc$jam$...
    > >> wrote:

    >
    > >>> How about non-compilant stddef.h? The compiler was released before
    > >>> the C standard, it'd be strange if it were compliant, wouldn't it?
    > >>> Not that I like lcc-win too much, but I would certainly choose
    > >>> mingw if I were to choose between lcc-win and Turbo C ;)

    >
    > >> Which unfortunately has the long double bug.

    >
    > > What is the problem exactly with long double on that compiler? Perhaps
    > > it might be easier to find a workaround.

    >
    > Apparently the MinGW compiler (which is a ported gcc) emits code for 96
    > bit long double while the runtime library with which it usually links,
    > which is Microsoft's system runtime (crt.dll or some such), lacks
    > support for 96 bit long doubles. This is particularly noticeable with
    > I/O functions like printf and scanf.


    Microsoft's long double is the same as double, 8 bytes;
    while gcc's long double is 12 bytes. So MS does support
    long double, it's just a different long double ;)

    > I think there is a command line option to force gcc to use other sizes
    > of long doubles but I don't exactly remember which.


    There are options to make long double bigger, and to make double
    bigger, but no option to make long double to be the same type
    as double.

    Yevgen
     
    , Feb 21, 2008
    #16
  17. said:

    > On Feb 20, 7:50 pm, CBFalconer <> wrote:


    <snip>

    >> I don't know what is wrong with TCs stddef.h.

    >
    > No offsetof, no wchar_t (no wchar_t *at all*, in fact).


    Well, neither of those omissions presents a serious problem to someone who
    is knowledgeable and determined to fix the problem (whereas a broken long
    double is a lot harder to fix, because you'd need the source code).

    --
    Richard Heathfield <http://www.cpax.org.uk>
    Email: -http://www. +rjh@
    Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
    "Usenet is a strange place" - dmr 29 July 1999
     
    Richard Heathfield, Feb 21, 2008
    #17
  18. Bartc said:

    <snip>
    >
    > (I wouldn't wish the 8086 memory model
    > - I don't think you can get away from it - on anyone.)


    Dealing with the memory model is trivial. You just tell your students:
    "This memory model stuff isn't really relevant any more (at least, not
    right now) in the programming world, so we're not going to teach you about
    it; just always remember to use the large memory model, never mind why,
    and if you're desperately interested there's an ancient book on my desk
    that will tell you all about it, but otherwise, choose large model when
    you're setting up your project, then forget all about it, and just write
    in portable C."

    > The OP mentioned Dev-C++ suggesting their hardware is capable.


    If better hardware is available across the board, Digital Mars may well be
    an excellent choice.

    --
    Richard Heathfield <http://www.cpax.org.uk>
    Email: -http://www. +rjh@
    Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
    "Usenet is a strange place" - dmr 29 July 1999
     
    Richard Heathfield, Feb 21, 2008
    #18
  19. On 20 Feb, 22:03, Ioannis Vranos <>
    wrote:
    > Richard Heathfield said:
    >  >
    >  > Ioannis Vranos said:
    >  >
    >  >> Hi,
    >  >>
    >  >> Do you know of any decent free simple C90 IDE+compiler for Windows
    >  >> for use in a classroom? I know Dev-C++/MINGW but "long double"
    >  >> doesn't work correctly there.
    >  >
    >  > Turbo C is fine, and is available for free download from the Borland
    >  > museum site.
    >  >
    >  > BTW welcome back to clc :)
    >
    > Is this C90/C95 conformant?
    >
    > The one I found is version 2.01:
    >
    > http://dn.codegear.com/article/20841


    Microsoft now have free versions of their compiler (Express).
    I've no idea how compliant it is


    --
    Nick Keighley
     
    Nick Keighley, Feb 21, 2008
    #19
  20. Ioannis Vranos

    Guest

    On Feb 21, 1:49 am, Richard Heathfield <> wrote:
    > said:
    >
    > > On Feb 20, 7:50 pm, CBFalconer <> wrote:

    >
    > <snip>
    >
    > >> I don't know what is wrong with TCs stddef.h.

    >
    > > No offsetof, no wchar_t (no wchar_t *at all*, in fact).

    >
    > Well, neither of those omissions presents a serious problem to someone who
    > is knowledgeable and determined to fix the problem


    How about locale? How about other missing things which
    you have no idea about? Little quiet hacking in such a
    case is in fact harder (because it would actually mean
    checking the whole library and the compiler) than taking
    glibc printf sources and building those with mingw.
    Or even not building anything but knowing exactly what is
    broken.

    It's funny, little omissions which do not represent serious
    problems in an ancient compiler from a museum, and real serious
    problems in another compiler advertised here by his annoying
    author. By a spammer damn it!
     
    , Feb 21, 2008
    #20
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. IchBin
    Replies:
    0
    Views:
    364
    IchBin
    Mar 15, 2006
  2. Alexander Cherednichenko

    Educational java IDE

    Alexander Cherednichenko, Jan 24, 2008, in forum: Java
    Replies:
    6
    Views:
    654
  3. Ioannis Vranos
    Replies:
    35
    Views:
    944
    Kelsey Bjarnason
    Feb 7, 2008
  4. Ioannis Vranos
    Replies:
    23
    Views:
    952
  5. Laurent Julliard
    Replies:
    7
    Views:
    112
    Michael Neumann
    May 23, 2004
Loading...

Share This Page