473,889 Members | 1,674 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

C# vs. C++

cj
I don't want to start a war but why would I choose one over the other?
First and foremost I need to keep in mind marketability of the skill and
the future of the language.

I'm getting the feeling I'll be moving from VB to one or the other. I
have some say on which but perhaps not the final decision. I have used
C and C++ a little bit years ago. I have no experience in C#. I don't
expect it to be that difficult but I hate remembering the idiosyncrasies
of too many languages so I'd like to pick one C# or C++ and make the
right choice.
Jun 27 '08
151 4322
Arne Vajhøj <ar**@vajhoej.d kwrote:
Daniel James wrote:
[...]
>10 first class programmers will do more useful work in less time than
50 mediocre programmers ... and you will get fewer bugs.

In a world with concerns such as money you can't afford the mediocre.

If you look out in the real world, then you will see that
is not the general opinion.
I see this when using just about every application.
And I hate it.
Arne
Schobi

--
Sp******@gmx.de is never read
I'm HSchober at gmx dot de
"I guess at some point idealism meets human nature and
explodes." Daniel Orner
Jun 27 '08 #81
Jon Skeet [C# MVP] wrote:
Daniel James <wa*********@no spam.aaisp.orgw rote:
>It's one of .NET's
significant advantages over Java (intermediate code engine targeted by more
than one source language) but that's about it.

<snip>

Um, there are *plenty* of languages targeting the JVM. Off the top of
my head:
The point is that JVM has been officially been restricted to a single
language and wasn't meant to be open for other languages - don't know
it's current state in this regard.

And it's not only the runtime that makes the difference. Can you write
code in Java and use it easily from any other language targeting the JVM ?

[...]
Andre
Jun 27 '08 #82
On Jun 26, 6:07*am, Andre Kaufmann <andre.kaufmann _re_mo...@t-
online.dewrote:
Um, there are *plenty* of languages targeting the JVM. Off the top of
my head:

The point is that JVM has been officially been restricted to a single
language and wasn't meant to be open for other languages - don't know
it's current state in this regard.
I don't think it's ever been "restricted " - I don't remember Sun ever
telling people off for developing any of these languages, for
instance. Sun now employs the JRuby folk IIRC, and gave their blessing
to Groovy too.

Heck, there's even an API (in Java 6 IIRC, but it *might* only be in
Java 7) specifically for scripting, to make binding etc consistent
between different scripting languages targeting the JVM.
And it's not only the runtime that makes the difference. Can you write
code in Java and use it easily from any other language targeting the JVM *?
Absolutely - and the reverse, in many cases. For instance, you can
easily call Groovy code from Java, should you wish to.

I can't imagine anyone designing a language to run on the JVM which
*wouldn't* take advantage of both the standard APIs and the wealth of
3rd party libraries available - and that will include any extra Java
code you write yourself.

Jon
Jun 27 '08 #83
In article news:<MP******* **************@ msnews.microsof t.com>, Jon
Skeet [C# MVP] wrote:
It's one of .NET's significant advantages over Java (intermediate
code engine targeted by more than one source language) but that's
about it.

<snip>

Um, there are *plenty* of languages targeting the JVM. Off the top of
my head:
Did you notice that the very next paragraph of the bit you snipped said:
... and there are compilers for languages other than Java that
target the JVM, though I understand that the design of the JVM
specifically makes it hard to taget it with C or C++.
So, yes, of course, I agree with you. The point I was making in the bit
you didn't snip is that Java is a single-language environment BY DESIGN.
The Java zealots at Sun would have you believe that you don't need any
language other than Java and that Java is all the languages that you
will ever need ... at least, that was their mantra last time I passed by
the temple.

All the same, most of the languages you list -- and those in the
Wikipedia article you cited -- are experimental "academic" languages,
which aren't likely to be anyone's first choice for commercial
application. Groovy is obviously different, as it's designed to work
alongside Java -- I've not used Groovy but I understand that the synergy
there is good. The same is true to some extent of Jython, in that I
don't think anyone would choose Jython (over Python) unless their
project also used Java.

AspectJ is interesting, but AIUI that's an extension of Java rather than
a different language.

OTOH A remember being very impressed with the AppletMagic Ada for JVM
when I first looked at it -- too long ago now -- but I'm not sure it's
still around. Ada is a real language (one that really deserves to be
better known outside the war-toys factories) and it's interesting that
you can run it well on the JVM.
(Personally I'd say there are plenty of other things that C# has over
the Java language and that .NET has over the JVM/JRE; Java's
portability is its main benefit over .NET in my experience.)
I agree. The .NET team had the benefit of seeing the JVM in action and
of learning from its shortcomings. Their runtime is better in many ways
... but Java has the market penetration and I doubt very much that .NET
will ever displace it completely, even on Windows.

Cheers,
Daniel.

Jun 27 '08 #84
In article news:<#D******* *******@TK2MSFT NGP06.phx.gbl>, Andre Kaufmann
wrote:
Singularity has a small amount of assembly code and it's using a
native C# compiler. Cosmos however is meant to be 100% C# code.
Interesting. I've read about Singularity but not about Cosmos (in fact,
I thought Cosmos must be another name for Singularity when you mentioned
the two together in your last post).

The question, then, is how? Presumably Cosmos must touch the metal
somehow ... or is it designed as a guest OS to be run within another,
native, OS?
The point is C++ is not (always) that fast, only if you are an
experienced (expert) C++ developer the resulting C++ application
will be much faster.
You can write bad code in any language, and C++ certainly requires a bit
of care.
Short example (I never thought C++ to be slower in writing to files):
The code is attached below and does nothing but simply writing 5000000
integers to a text file.
What are COMPILER X and COMPILER Y?

Hmm ... there has to be a reason that C# comes out looking so good ...

Do all the programs produce identical output? What, exactly, did you
time (e.g. do you close the files/streams in the timed section of the
code in each case)?

The fprintf and sprintf functions will always be slow as they have to
parse the formatting string each time as well as producing output, so I
wouldn't expect them to do well. I'd expect the iostreams version to be
a good bit quicker and the itoa version to be the fastest. If I had to
guess I'd say that the C# version would be comparable to iostreams.

You could try another benchmark with boost::format -- I bet that would
be slower than any of them.
Another point is C++ could compile (nearly) as fast as any other
language. But therefore C++ must either get rid of (global) macros, or
introduce modules.
Modules are coming, eventually.

It's not global macros that are the problem, it's the fact that there's
no mechanism for the compiler to know that any macros referenced (in
include files, especially) have the same values in all compilation
units/for all builds. If the build system were smarter it could track
that and avoid recompiling header information that had already been
compiled with the same settings.

Macros can be a pain, but they can also be very useful ... I always
advise people to avoid using them if there is an alternative (e.g. use
const int (or even an enum) rather than a #define) but sometimes there
is no alternative and their use is beneficial.
If you look at functional languages targeting .NET e.g. F# and see
what is possible in these language then delegates just look like a
simple toy
That's because they're functional languages, not because they target
NET -- take a look at Haskell or Erlang and see what they can do.
But why have they to be implemented in a library ? C++ could have
integrated delegates from the beginning and add some extensional stuff
into a library ...
They don't have to be implemented in a library, but as they're not in
the core language there's no other way to add them. You could submit a
proposal to the ISO C++ committee asking for delegates as a native
language feature, but I suspect they'd say -- after a couple of years
waiting -- that as delegate functionality can be added as a library,
without changing the core language, there's no point. C++ is already
quite a big language, and making it bigger still just to add a feature
that can be implemented in a library doesn't make good sense.
I don't want to state that boost::function is bad, it's well
written and an perfect extension, I only think a direct implementation
could perform better.
I wouldn't like to judge without seeing direct implementation and
benchmarking it ... but boost::function is pretty efficient, from what
I've seen.
the .NET runtime support system, and if they weren't there would
be no way to add them to C#.

I don't know for sure, since you can easily write a .NET compiler by
yourself using the .NET runtime compiler support. Also I've seen many
IL (the .NET assembly code) based extensions, which extend the
language or .NET framework. So I think it would be possible, ...
I think you're missing the point I was making. I wasn't saying that
there was no way you could add delegate support *to* C# if it didn't
have it, I was saying that there was no way you could add delegate
support *in* C# alone. I'm not even 100% sure that that's true, but I am
certain that the result would be a lot less neat than boost::function if
you did! The point I was making was that the C++ language was more
powerful than the C# language, not that you couldn't do stuff with IL
extensions ... you can extend C++ by writing in assembler if you want
to, but that doesn't say anything about the power of C++ as a language.
... but the big advantage is that, as the framework has implemented
delegates, you can use it in every language and pass the pointers
over dll boundaries without any hassle.
I'm sure that's true -- and it *is* an advantage of the environment, no
question ... but (again) it says nothing about the power of expression
of the C# language -- it says nothing about the ease with which *you*
can express complex concepts in *your* C# code.
The main problem about macros is that the C++ compiler has to use
them too. So if it compiles a unit with header file a, it can't use
the already preprocessed and compiled intermediate code of header in
another unit, because a simple macro could convert the whole code in
the preprocessing stage.
Yes, I understand that problem, and you're right. I do think smarter
tools could alleviate that problem to a considerable extent, though.

You can do a lot to improve compile times in Visual C++ with judicious
use of precompiled headers -- but it's tricky to get right if you need
to use more than one PCH file in a project ... and the tendency is to
use the brute force approach of putting everything into a single
monolithic PCH file and so introducing all sorts of unnecessary
dependencies. Again, it's something that better tools could do a lot to
improve.

Modules are probably the best answer, though.
[...]
Delegates and labmda have been added TO C++ IN C++ (in Boost) ...
which is something you couldn't do in C#.

Perhaps. But if you look at the library, how many code there's inside
to deal with the differences of different C++ compilers I think it
wasn't an easy task ;-).
That's true ... but if more compilers complies more closely with the
standard it wouldn't be such a problem.
Implicit typed variables are coming to C++ (auto) ... but the need
for them is mostly driven by templates -- what good are they in C#?

The same reason - >generics< and LINQ has also driven them.
OK, interesting. I should have thought about generics ... and I know
very little about how LINQ works (reinventing ODBC within the language
...???) An answer to xdoclet in Java.
There could be a Windows standard for all
Windows compilers to have the advantages for natives languages too.
Try to export a template code in C++ in a Windows DLL and use it from
another language - in .NET it's simply no problem.
I take the point that the CLI gives you a standard object representation
for all .NET languages, and lets you define an object in C# and
manipulate it in C++/CLI or VB.NET or whatever ... but you can't create
a template in a C++/CLI program and use it (instantiate it) in a C# or
VB.NET program -- because those languages have no conception of
templates.

The implementation of templates in C++/CLI is not provided by the CLI,
but by the C++ compiler. Templates are therefore not visible to other
NET languages.

That's no different from the situation with native code.
But the only standard there's in Windows, is how to export flat
functions. I wished at least the name mangling would be somewhat
standardized.
Yes, a standard ABI for C++ would be nice. I believe it's one of the
things the standards group is looking at, but don't expect to see it in
the standard in 2009.
[...]
D is interesting too ... can that not be used together with DM
C++? I must say I haven't tried ...

It somewhat supports using C++ (indirectly), but as the developer
said, if it would fully support C++ - it would be a full fledged
C++ compiler, which would be not that simple to >implement< ;-).
... but can you not compile D code with the D compiler and C++ code with
the DM C++ compiler and link the two together?
Incidentally, Andrei Alexandrescu presented a paper ...
[snip]
Hm, interesting thanks for mentioning it.
The slides are here:
http://accu.org/content/conf2008/Ale...functional.pdf

I don't know how much sense they'll make to someone who wasn't at the
talk!

Cheers,
Daniel.


Jun 27 '08 #85
Daniel James <wa*********@no spam.aaisp.orgw rote:
Um, there are *plenty* of languages targeting the JVM. Off the top of
my head:

Did you notice that the very next paragraph of the bit you snipped said:
... and there are compilers for languages other than Java that
target the JVM, though I understand that the design of the JVM
specifically makes it hard to taget it with C or C++.
I didn't, actually. Sorry about that - it does sort of make a nonsense
of the sentence that I *did* quote though.

And yes, I agree that it would be pretty hard to target the JVM with C
or C++.
So, yes, of course, I agree with you. The point I was making in the bit
you didn't snip is that Java is a single-language environment BY DESIGN.
The Java zealots at Sun would have you believe that you don't need any
language other than Java and that Java is all the languages that you
will ever need ... at least, that was their mantra last time I passed by
the temple.
I wouldn't put it as strongly as that. I think there's a big difference
between a platform being deliberately designed to only have one
language targeting it, and a platform being designed explicitly for a
single language with little thought to trying to make life easier for
other languages.

I would put Java into the latter camp rather than the former. Even if
some Java fans think there's no point in having other languages
targeting it, I'm not aware of any ways they've made it *deliberately*
more difficult for other languages in a DRM-like way.
All the same, most of the languages you list -- and those in the
Wikipedia article you cited -- are experimental "academic" languages,
which aren't likely to be anyone's first choice for commercial
application. Groovy is obviously different, as it's designed to work
alongside Java -- I've not used Groovy but I understand that the synergy
there is good. The same is true to some extent of Jython, in that I
don't think anyone would choose Jython (over Python) unless their
project also used Java.
But that's the point - if their project *does* use Python or Ruby
already, or if they've already got a lot of code in Java that they want
to use later with Python or Ruby - then Jython and JRuby are a natural
fit.

If we're talking about languages which are common "first choices" for
commercial applications, even .NET's relatively thin on the ground,
with VB.NET and C# taking the lion's share and C++/CLI and F# pulling
up the rear - at an educated guess. Languages like Boo aren't exactly
commonplace.
AspectJ is interesting, but AIUI that's an extension of Java rather than
a different language.

OTOH A remember being very impressed with the AppletMagic Ada for JVM
when I first looked at it -- too long ago now -- but I'm not sure it's
still around. Ada is a real language (one that really deserves to be
better known outside the war-toys factories) and it's interesting that
you can run it well on the JVM.
Right. I'm interested in Scala, as there used to be implementations for
both .NET and the JVM - and because it looks like a nice language. I
haven't had a close look though, and I believe the .NET port is out of
date.
(Personally I'd say there are plenty of other things that C# has over
the Java language and that .NET has over the JVM/JRE; Java's
portability is its main benefit over .NET in my experience.)

I agree. The .NET team had the benefit of seeing the JVM in action and
of learning from its shortcomings. Their runtime is better in many ways
.. but Java has the market penetration and I doubt very much that .NET
will ever displace it completely, even on Windows.
Absolutely - I expect both to go on for quite some time, which is fine
by me. (I'm currently working just in Java professionally, and I have
no wish to leave my current employer - but I do hope I write some C#
professionally again at some point.)

I haven't replied to your other posts about LINQ, by the way, but I
think you'd be wise to look into it further - it sounds like you may
have the wrong end of the stick to some extent. It's certainly not like
embedding SQL into C# - there's a lot more to it than that. Personally
I think that LINQ to Objects (the "in process" handling of collections)
is of more use to most people than LINQ to SQL etc, though obviously
the latter has more of an "ooh" and "aah" quality to it.

--
Jon Skeet - <sk***@pobox.co m>
Web site: http://www.pobox.com/~skeet
Blog: http://www.msmvps.com/jon_skeet
C# in Depth: http://csharpindepth.com
Jun 27 '08 #86
Jon Skeet [C# MVP] wrote:
On Jun 26, 6:07 am, Andre Kaufmann <andre.kaufmann _re_mo...@t-
online.dewrote:
[...]
I don't think it's ever been "restricted " - I don't remember Sun ever
telling people off for developing any of these languages, for
instance. Sun now employs the JRuby folk IIRC, and gave their blessing
to Groovy too.
I only read about it some years ago. Perhaps restricted was the wrong
word. But in the past other languages haven't been officially let's say
supported by Sun.

This might have changed today however, since Java is Open Source now.
Heck, there's even an API (in Java 6 IIRC, but it *might* only be in
Java 7) specifically for scripting, to make binding etc consistent
between different scripting languages targeting the JVM.
>And it's not only the runtime that makes the difference. Can you write
code in Java and use it easily from any other language targeting the JVM ?

Absolutely - and the reverse, in many cases. For instance, you can
easily call Groovy code from Java, should you wish to.
I don't know the interfaces today. The good old JNI interface was a pain
to deal with.
Is it really that simple in Java too:

- Write a class in any language and compile
- Compile the code to a Dll
- Use the code from any other language targeting the JVM too ?

I read only about using Java classes and vice versa from other
languages, but not how different languages would interact.
I can't imagine anyone designing a language to run on the JVM which
*wouldn't* take advantage of both the standard APIs and the wealth of
3rd party libraries available - and that will include any extra Java
code you write yourself.

Jon
Andre
Jun 27 '08 #87
Andre Kaufmann <an************ *********@t-online.dewrote:
Absolutely - and the reverse, in many cases. For instance, you can
easily call Groovy code from Java, should you wish to.

I don't know the interfaces today. The good old JNI interface was a pain
to deal with.
Is it really that simple in Java too:

- Write a class in any language and compile
- Compile the code to a Dll
- Use the code from any other language targeting the JVM too ?
Well you wouldn't compile to a DLL. You'd compile to class files, and
then potentially jar them up. At that point, there's no difference
between a Java-created class and a class created by a different
language, other than what it chooses to do. (A Groovy class would be
full of calls to the Groovy libraries to do dynamic calls etc.)

Of course, it depends on whether your chosen language *has* a compiler
- some may not. If it doesn't, you'll probably need to use BSF or Java
6's scripting support. It looks like that's the way to go for JRuby,
for example. Jython has jythonc, but that's basically deprecated. See
http://wiki.python.org/jython/Jython...eptember2006/1
for how to run Jython code from Java without jythonc.

It looks like Groovy is one of the best integrated languages in this
respect.
I read only about using Java classes and vice versa from other
languages, but not how different languages would interact.
If you ever get hold of Groovy in Action, we've got a whole chapter
about integrating Groovy - chapter 11.

--
Jon Skeet - <sk***@pobox.co m>
Web site: http://www.pobox.com/~skeet
Blog: http://www.msmvps.com/jon_skeet
C# in Depth: http://csharpindepth.com
Jun 27 '08 #88
Daniel James wrote:
In article news:<#D******* *******@TK2MSFT NGP06.phx.gbl>, Andre Kaufmann
wrote:
>Singularity has a small amount of assembly code and it's using a
native C# compiler. Cosmos however is meant to be 100% C# code.

Interesting. I've read about Singularity but not about Cosmos (in fact,
I thought Cosmos must be another name for Singularity when you mentioned
the two together in your last post).
The question, then, is how? Presumably Cosmos must touch the metal
somehow ... or is it designed as a guest OS to be run within another,
native, OS?
I don't know all the internals. AFAIK Cosmos includes a compiler, which
translates the IL code generated by C# to x86 code.

No basically it is C# translated directly to native code, with some
extensions to let C# interact directly with the CPU.
[...]
>Short example (I never thought C++ to be slower in writing to files):
The code is attached below and does nothing but simply writing 5000000
integers to a text file.

What are COMPILER X and COMPILER Y?
Windows C++ compilers, I don't think that the vendors are quite
interesting and I don't want to start compiler wars ;-).
Hmm ... there has to be a reason that C# comes out looking so good ...

Do all the programs produce identical output? What, exactly, did you
time (e.g. do you close the files/streams in the timed section of the
code in each case)?
Close doesn't matter and yes all produce the identical output.
The fprintf and sprintf functions will always be slow as they have to
parse the formatting string each time as well as producing output, so I
The printf functions are commonly faster, because they don't have that
much overhead. IIRC correctly IOStreams (e.g. the ones shipped with
VC9.0) are using sprintf internally for formatting.
wouldn't expect them to do well. I'd expect the iostreams version to be
a good bit quicker and the itoa version to be the fastest. If I had to
guess I'd say that the C# version would be comparable to iostreams.
IOStreams are quite slow. At least the ones I know. The reason is that
much overhead due to localization, memory allocation for buffering and
too much code to run through for a simple task.
You could try another benchmark with boost::format -- I bet that would
be slower than any of them.
I think it was quite fast.
>Another point is C++ could compile (nearly) as fast as any other
language. But therefore C++ must either get rid of (global) macros, or
introduce modules.

Modules are coming, eventually.

It's not global macros that are the problem, it's the fact that there's
I mean with global in brackets that macros can be redefined in each and
for each header file and that the propagate to other header files.
So global was perhaps misleading, setting a macro in the compiler
affecting the whole code compiled is not a problem.
no mechanism for the compiler to know that any macros referenced (in
include files, especially) have the same values in all compilation
Yes, that is the main problem.
units/for all builds. If the build system were smarter it could track
that and avoid recompiling header information that had already been
compiled with the same settings.
Therefore it must have an overview over the whole code must distinguish
different header files with the same name etc. I think modules will be a
better solution. IIRC the IBM C++ compiler had some kind of modules
implemented and was quite fast in compilation.
Macros can be a pain, but they can also be very useful ... I always
advise people to avoid using them if there is an alternative (e.g. use
const int (or even an enum) rather than a #define) but sometimes there
is no alternative and their use is beneficial.
I know and agree. I use them too. But they could have been restricted to
have an effect on one single header file or must be globally defined.
>If you look at functional languages targeting .NET e.g. F# and see
what is possible in these language then delegates just look like a
simple toy

That's because they're functional languages, not because they target
NET -- take a look at Haskell or Erlang and see what they can do.
Yes, it hasn't something to do with .NET. F# is similar to ML, ML is
comparable with Haskell.
It should only proof that delegates can be implemented in C# directly,
as I stated in my recent post.
>But why have they to be implemented in a library ? C++ could have
integrated delegates from the beginning and add some extensional stuff
into a library ...
[...]
quite a big language, and making it bigger still just to add a feature
that can be implemented in a library doesn't make good sense.
I know that it's a big no no to change the language. Heck it's even to
complex to add "override" to the language.
I agree that a library is much better regarding compatibility. But it
makes it quite hard for tools implementors (e.g. RAD tools / code
completion etc.) to deal with huge libraries.
I have only the feeling that delegates should be supported directly by
the compiler and that the libraries to implement them got somewhat bloated.
[...]
I wouldn't like to judge without seeing direct implementation and
benchmarking it ... but boost::function is pretty efficient, from what
I've seen.
They have improved, since there aren't that many heap allocations
involved anymore.

There is a comparison on:
http://www.codeproject.com/KB/cpp/Cp...mentation.aspx
[...]
I think you're missing the point I was making. I wasn't saying that
there was no way you could add delegate support *to* C# if it didn't
have it, I was saying that there was no way you could add delegate
support *in* C# alone.
A - O.k. you mean the "template magic" allows C++ to implement delegates
as a library, while you can't in C#, because generics aren't that
flexible enough. Besides I think templates could be implemented in any
other language too, why should it proof the power of C++ ?
(doesn't mean that I don't like them).

I could argue C# to be more powerful because:

- I can compile code on the fly. E.g. I can compile regular expressions
and XSL stylesheets to perform faster as any C++ could to, because
it has to evaluate the regular expressions/stylesheets always.
I can even build and compile script code on the fly.

There are more examples - all languages have pros and cons.
But C++ isn't that effective always.
[...]
>... but the big advantage is that, as the framework has implemented
delegates, you can use it in every language and pass the pointers
over dll boundaries without any hassle.

I'm sure that's true -- and it *is* an advantage of the environment, no
question ... but (again) it says nothing about the power of expression
of the C# language -- it says nothing about the ease with which *you*
can express complex concepts in *your* C# code.
O.k. yes. I only missed templates in C# for generic code. However, what
I'm badly missing in C# is RAII.

But you aren't restricted to a single language. If you want to express
complex concepts use another language like F# or C++/CLI and reuse the
code in C#.

Don't get me wrong, I still like C++ and it's my main developing
language. But I sometimes miss the developing experience of other
languages and I think the standardization process is quite slow.
[...]
Modules are probably the best answer, though.
Yes, I think that too. Unfortunately they are delayed and not part of
the upcoming standard.
[...]
I take the point that the CLI gives you a standard object representation
for all .NET languages, and lets you define an object in C# and
manipulate it in C++/CLI or VB.NET or whatever ... but you can't create
a template in a C++/CLI program and use it (instantiate it) in a C# or
VB.NET program -- because those languages have no conception of
templates.
Well, the .NET framework has Generics. They aren't that powerful as
templates, but on the other side you have the possibility to export
generic lists to other languages.
The implementation of templates in C++/CLI is not provided by the CLI,
but by the C++ compiler. Templates are therefore not visible to other
NET languages.
Yes. Besides security concerns and loosing the strong typing of
Generics, why shouldn't templates been implemented in other languages too ?
[...]
The slides are here:
http://accu.org/content/conf2008/Ale...functional.pdf
Thanks, I'll have a look at it.
I don't know how much sense they'll make to someone who wasn't at the
talk!

Cheers,
Daniel.
Cheers,
Andre
Jun 27 '08 #89
Arne Vajhøj wrote:
[...]
>Boost is a good, cool library - sure. But these libraries get somewhat
bloated, because of all the template stuff and compilation slows down
more and more.

Compilation speed is usually not important.
Why ? For RAD tools it's IMHO essential and if 1000 developers wait
daily an hour for compilation they are loosing simply 1000 hours of
development time, besides the energy wasted.

I'm simply used to quickly recompile my code after a compilation error.
In C++ is meant to compile fast code. Why can't the compiler be not that
fast ? The sad story is - it could be.
[...]
Arne
Andre
Jun 27 '08 #90

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
11268
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL) on the server because of that. Our site will have an SSL certificate next week, so I would like to use AIM instead of SIM, however, I don't know how to send data via POST over https and recieve data from the Authorize.net server over an https...
2
5865
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues to execute the code until the browser send his reply to the header instruction. So an exit(); after each redirection won't hurt at all
3
23053
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which field is completed.
0
8508
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. 354 roberto@ausone:Build/php-4.3.2> ldd /opt/php4/bin/php libsablot.so.0 => /usr/local/lib/libsablot.so.0 libstdc++.so.5 => /usr/local/lib/libstdc++.so.5 libm.so.1 => /usr/lib/libm.so.1
1
8621
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the column below. The viewer can select states from the drop down lists above the other two columns as well. If the viewer selects only one, only one column fills. If the viewer selects two states, two columns fill. Etc. I could, if appropriate, have...
4
18317
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the user comes back to a page where he had a submitted POST data the browser keeps telling that the data has expired and asks if repost. How to avoid that? I tried registering all POST and GET vars as SESSION vars but
1
6890
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url http://www.mis.gla.ac.uk/biquery/training/ but each of the courses held have maximum of 8 people that could be
2
31469
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value to :parameter I dont like the idea of making the SQL statement on the fly without binding parameters as I dont want a highly polluted SQL cache.
3
23617
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the results of the picture half the size. The PHP I have installed support 1.62 or higher. And all I would like to do is take and image and make it fit a 3x3. Any suggestions to where I should read or look would be appreciated.
0
9969
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9810
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
1
10896
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10443
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
9612
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
0
5830
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
6029
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4650
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
4251
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.