Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   C++ (http://www.velocityreviews.com/forums/f39-c.html)
-   -   C++03 IDE+compiler for Windows / educational purposes (http://www.velocityreviews.com/forums/t593101-c-03-ide-compiler-for-windows-educational-purposes.html)

Ioannis Vranos 02-21-2008 01:31 AM

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

Any ideas would be welcome.

Alf P. Steinbach 02-21-2008 01:39 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
* Ioannis Vranos:
> Do you know of any decent free simple C++03 IDE+compiler for Windows for
> use in a classroom? I know Dev-C++/MINGW but "long double" doesn't work
> always correctly there.


Well, if g++ isn't good enough for long double, and considering that
Visual C++ long double is the same as double, i.e. no special long
double type, I guess your only option would be to try to combine e.g.
CodeBlocks or Eclipse IDE with Digital Mars compiler or the like.

However, is "long double" that important (and btw., what's the problem
with g++ and long double?)?

If it isn't all important, go for g++ with CodeBlocks, or Visual C++
with Visual Studio Express, both free. Also note that Microsoft is
giving away the Professional edition of Visual Studio to students, for
free. I guess the teacher must buy it... ;-)


Cheers, & hth.,

- Alf

--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

Ioannis Vranos 02-21-2008 01:55 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
Alf P. Steinbach wrote:
> * Ioannis Vranos:
>> Do you know of any decent free simple C++03 IDE+compiler for Windows
>> for use in a classroom? I know Dev-C++/MINGW but "long double" doesn't
>> work always correctly there.

>
> Well, if g++ isn't good enough for long double, and considering that
> Visual C++ long double is the same as double, i.e. no special long
> double type, I guess your only option would be to try to combine e.g.
> CodeBlocks or Eclipse IDE with Digital Mars compiler or the like.
>
> However, is "long double" that important (and btw., what's the problem
> with g++ and long double?)?



I am not talking about g++ having problem with long double, but the
MINGW port.



> If it isn't all important, go for g++ with CodeBlocks, or Visual C++
> with Visual Studio Express, both free. Also note that Microsoft is
> giving away the Professional edition of Visual Studio to students, for
> free. I guess the teacher must buy it... ;-)



CodeBlocks hasn't a stable version yet, it had nightly builds, but they
are stating they are going to have a stable version on their site
http://www.codeblocks.org soon.


I will check VC++ 2008 Express.

jason.cipriani@gmail.com 02-21-2008 03:07 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
This is a big stretch, but another thing to try might be something
like CoLinux (http://www.colinux.org/) and use GCC on there. Of course
you won't be able to compile Windows binaries (unless you set it up to
cross compile), but it's like having a Linux machine right there. This
is assuming, of course, that using long double and just playing around
is more important than being able to compile binaries for Windows, use
a nice IDE, or play around with Windows-specific stuff. I have never
used CoLinux before though.

Why are long doubles important to you? Maybe, depending on your needs,
there is another solution for high-precision computations?

Jason


On Feb 20, 8:55 pm, Ioannis Vranos <ivra...@nospam.no.spamfreemail.gr>
wrote:
> Alf P. Steinbach wrote:
> > * Ioannis Vranos:
> >> Do you know of any decent free simple C++03 IDE+compiler for Windows
> >> for use in a classroom? I know Dev-C++/MINGW but "long double" doesn't
> >> work always correctly there.

>
> > Well, if g++ isn't good enough for long double, and considering that
> > Visual C++ long double is the same as double, i.e. no special long
> > double type, I guess your only option would be to try to combine e.g.
> > CodeBlocks or Eclipse IDE with Digital Mars compiler or the like.

>
> > However, is "long double" that important (and btw., what's the problem
> > with g++ and long double?)?

>
> I am not talking about g++ having problem with long double, but the
> MINGW port.
>
> > If it isn't all important, go for g++ with CodeBlocks, or Visual C++
> > with Visual Studio Express, both free. Also note that Microsoft is
> > giving away the Professional edition of Visual Studio to students, for
> > free. I guess the teacher must buy it... ;-)

>
> CodeBlocks hasn't a stable version yet, it had nightly builds, but they
> are stating they are going to have a stable version on their sitehttp://www.codeblocks.orgsoon.
>
> I will check VC++ 2008 Express.



dave_mikesell@fastmail.fm 02-21-2008 03:21 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
On Feb 20, 7:31 pm, Ioannis Vranos <ivra...@nospam.no.spamfreemail.gr>
wrote:
> Do you know of any decent free simple C++03 IDE+compiler for Windows for
> use in a classroom? I know Dev-C++/MINGW but "long double" doesn't work
> always correctly there.
>
> Any ideas would be welcome.


How about g++ + Vim + make?

James Kanze 02-21-2008 09:21 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
On Feb 21, 2:39 am, "Alf P. Steinbach" <al...@start.no> wrote:
> * Ioannis Vranos:


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


> Well, if g++ isn't good enough for long double, and
> considering that Visual C++ long double is the same as double,
> i.e. no special long double type, I guess your only option
> would be to try to combine e.g. CodeBlocks or Eclipse IDE
> with Digital Mars compiler or the like.


> However, is "long double" that important (and btw., what's the
> problem with g++ and long double?)?


> If it isn't all important, go for g++ with CodeBlocks, or
> Visual C++ with Visual Studio Express, both free. Also note
> that Microsoft is giving away the Professional edition of
> Visual Studio to students, for free. I guess the teacher must
> buy it... ;-)


I wonder what he really meant be C++03. None of the compilers
mentionned so far truely implements C++03---all are missing
export, for example; more importantly for students, I suspect
that most of them have subtle variations in their treatment of
two phase lookup, and I think VC++ allows binding of a temporary
to a non-const reference, and, and, and... On the other hand,
all are perfectly fine for the sort of things I'd imagine
students would be doing.

If he really needs standards conformance, of course, Comeau is
about his only choice. Not free, but very reasonably priced.
(No IDE either, but there's always gvim/emacs and make:-).)

--
James Kanze (GABI Software) email:james.kanze@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Ioannis Vranos 02-21-2008 11:00 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
jason.cipriani@gmail.com wrote:
> This is a big stretch, but another thing to try might be something
> like CoLinux (http://www.colinux.org/) and use GCC on there. Of course
> you won't be able to compile Windows binaries (unless you set it up to
> cross compile), but it's like having a Linux machine right there. This
> is assuming, of course, that using long double and just playing around
> is more important than being able to compile binaries for Windows, use
> a nice IDE, or play around with Windows-specific stuff. I have never
> used CoLinux before though.
>
> Why are long doubles important to you? Maybe, depending on your needs,
> there is another solution for high-precision computations?


Imagine newcomer students learning C++ in a class, and not being able to
use long double, and having to instruct them to avoid the type.


This isn't good for the credibility of C++, caused by a bad compiler.

jason.cipriani@gmail.com 02-21-2008 11:21 AM

Re: C++03 IDE+compiler for Windows / educational purposes
 
"Ioannis Vranos" <ivranos@nospam.no.spamfreemail.gr> wrote in message
news:fpjlkm$ngu$1@ulysses.noc.ntua.gr...
> jason.cipriani@gmail.com wrote:
>> This is a big stretch, but another thing to try might be something
>> like CoLinux (http://www.colinux.org/) and use GCC on there. Of course
>> you won't be able to compile Windows binaries (unless you set it up to
>> cross compile), but it's like having a Linux machine right there. This
>> is assuming, of course, that using long double and just playing around
>> is more important than being able to compile binaries for Windows, use
>> a nice IDE, or play around with Windows-specific stuff. I have never
>> used CoLinux before though.
>>
>> Why are long doubles important to you? Maybe, depending on your needs,
>> there is another solution for high-precision computations?

>
> Imagine newcomer students learning C++ in a class, and not being able to
> use long double, and having to instruct them to avoid the type.


I think that you are placing too much importance on a minor issue.
There are other, much trickier things about C++ than iffy support for
long doubles on certain compilers. Not being able to use long double
will not ruin a student's C++ experience -- I can promise you that.
You have a few options:

1) Do not tell them about "long double". It's not a critical type for
a beginner student to know about, an advanced student will understand
the real explanation, and in any case I can assure you nobody will be
missing out on all that much.

2) Tell them exactly what the issue is. Avoid "long doubles" because
currently, support is not widely available. That seems very
reasonable. It's part of C++, and so if you are going to teach C++,
you should teach that part as well.

3) Ask on comp.lang.c++ for a specific compiler on Windows that does
support long double. Do not mention the lack of common support to your
students. Instead, let them find out on their own later when code you
taught them about breaks on other current compilers. Alternatively,
explain to them that while they can use long double on the specific
compiler you are teaching them on, it won't necessarily work on other
compilers. That explanation is probably not as simple as "avoid it
because it's not widely supported". This is not a good option. This is
also the option you are proposing.

I think that you should go with #1, honestly. And then later on in the
course tell them "hey by the way, there is this long double type, but
it's not really widely supported right now so I'd avoid it". That's a
complete, brief explanation that anybody would understand.

If you are teaching students C++, you have far more on your plate than
teaching them about some obscure primitive data type...

In any case, you should brace yourself for the onslaught you are
likely about to receive from the less laid-back folks on this
newsgroup.

Jason


jason.cipriani@gmail.com 02-21-2008 12:11 PM

Re: C++03 IDE+compiler for Windows / educational purposes
 
P.S.:

http://compilers.iecc.com/comparch/article/98-08-061

Also, now that I am armed with a shiny new copy of the C++03
standard...

You originally wrote this:

> I know Dev-C++/MINGW but "long double" doesn't work
> always correctly there.


Can you clarify what you meant by "correctly"? Section 3.9.1/8 reads:

"There are three floating point types: float, double,
and long double. The type double provides at least
as much precision as float, and the type long double
provides at least as much precision as double."

Which places no requirements on "long double" to be more precise than
"double". Float, double, and long double could all be the same
precision, from what I can see there. For it to be incorrect, "long
double" would have to be *less* precise than "double" -- but I don't
think you observed that.

Jason

Richard Herring 02-21-2008 02:40 PM

Re: C++03 IDE+compiler for Windows / educational purposes
 
In message <fpjlkm$ngu$1@ulysses.noc.ntua.gr>, Ioannis Vranos
<ivranos@nospam.no.spamfreemail.gr> writes
>jason.cipriani@gmail.com wrote:
>> This is a big stretch, but another thing to try might be something
>> like CoLinux (http://www.colinux.org/) and use GCC on there. Of course
>> you won't be able to compile Windows binaries (unless you set it up to
>> cross compile), but it's like having a Linux machine right there. This
>> is assuming, of course, that using long double and just playing around
>> is more important than being able to compile binaries for Windows, use
>> a nice IDE, or play around with Windows-specific stuff. I have never
>> used CoLinux before though.
>> Why are long doubles important to you? Maybe, depending on your
>>needs,
>> there is another solution for high-precision computations?

>
>Imagine newcomer students learning C++ in a class, and not being able
>to use long double, and having to instruct them to avoid the type.
>

My imagination won't stretch that far. What kind of student project uses
long double? Sure, there are some specialist fields where it's
essential, but generally if you're running out of precision so fast that
double isn't enough, it's more likely that you need a different
algorithm, not more bits in your fractions.

>
>This isn't good for the credibility of C++, caused by a bad compiler.


--
Richard Herring


All times are GMT. The time now is 03:42 PM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.