Linked by Thom Holwerda on Sat 4th Aug 2012 04:17 UTC
Hardware, Embedded Systems "Quick - name the most important personal computer of the late 1970s and early 1980s. Those of you who mentioned the legendary Apple II - that's fine. I respect your decision. Forced to think objectively in 2012, I may even agree. But if you just named Radio Shack's TRS-80, you made me smile. Your choice is entirely defensible. And back in the TRS-80's heyday, I not only would have agreed with it but would have vehemently opposed any other candidate."
Thread beginning with comment 529739
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[4]: Nothing special
by moondevil on Sun 5th Aug 2012 09:17 UTC in reply to "RE[3]: Nothing special"
moondevil
Member since:
2005-07-08

Programming now is combining libs and APIs using a programming language that has a command for every operation that had made you think in the 70/80s.


My job is based in consultancy solutions built on top of JVM and .NET languages, every time I am allowed to use C++, I rejoice at the possibility of using a language with native code implementations, even if it is C++.

Reply Parent Score: 3

RE[5]: Nothing special
by MOS6510 on Sun 5th Aug 2012 09:25 in reply to "RE[4]: Nothing special"
MOS6510 Member since:
2011-05-12

How much faster does C++ perform vs .NET you reckon?

Reply Parent Score: 2

RE[6]: Nothing special
by lucas_maximus on Sun 5th Aug 2012 15:43 in reply to "RE[5]: Nothing special"
lucas_maximus Member since:
2009-08-18

Depends whether it is managed C++ or not.

TBH I managed to get some pretty good performance increases in modern Java and .NET by just thinking about an if ... then ... else blocks.

With T-SQL etc you still have to think about the best way to write a query ... the optimizer will only do soo much for you.

While you can write small programs and let modern CPUs and Ram and mainly not worry ... but once there are quite a few people hitting it you really have to start thinking.

Reply Parent Score: 2

RE[6]: Nothing special
by moondevil on Sun 5th Aug 2012 16:30 in reply to "RE[5]: Nothing special"
moondevil Member since:
2005-07-08

How much faster does C++ perform vs .NET you reckon?


It depends on your use case, but there is nothing like native code if you want to squeeze the performance out of the machine.

With C++ you have more control over the data structure layouts to optimize the caches usage.

Shorter startup times and easy distribution of binaries.

Plus thanks to intrinsics it is easy to exploit SIMD and GPGPU capabilities.

Now, it is possible to compile .NET applications directly to native code by making use of NGEN, but even with .NET 4.0 there are some limitations on NGEN code quality vs JIT.

Microsoft actually acknowledges this in two ways:

- NGEN is being improved in .NET 4.5;

- A few months ago they had listed on their careers web site, open positions for C# native code compilers engineers

This second point is actually what I would like to have. A C# compiler that targets native code directly for distribution, while using the CLR during development.

Reply Parent Score: 2

RE[6]: Nothing special
by chiwaw on Sun 5th Aug 2012 19:11 in reply to "RE[5]: Nothing special"
chiwaw Member since:
2006-02-05

Well an expert .NET programmer would probably outperform a terrible C++ programmer. Often time execution slowness is more about bad code design, unoptimized algorithms, etc.

But assuming equally expert in both languages, C++ will definitely have the edge, as it run on top of at least one less layer. As for how much faster, I'm not sure. I know .NET is getting a whole lot more efficient over time.

The (video game) company I work for switched from C++ to C# last year. We lost a bit of performance, but oh man is producing code C# so much more fun and comfortable and easy. And also our bug counts went down dramatically.

Reply Parent Score: 1