On Saturday, 19 April 2014 at 05:08:06 UTC, froglegs wrote:

Also possible in C# with structs, interop annotations and unsafe blocks.

And now you aren't using the language, but a (very) poor subset of a language that doesn't even support templates.


Doesn't change the fact it is possible, but hey lets sell C++ agenda.


C++ exposes SSE/AVX intrinsics, C# does not.

That is not correct.

1 - Nowhere in the ANSI/ISO C++ are SSE/AVX intrinsics defined, those are compiler extensions. So equal foot with the C# EMCA standard;

Duh, but every C++ compiler exposes this, so it is defacto standard. C++ has plenty of non-standard standards, such as #pragma once.


3 - .NET Native and RyuJIT have official support for SIMD instructions, GPGPU support is also planned

I see on MS website an article about having a vector data type. While interesting that isn't the same as exposing the actual instructions, which will limit potential gains.

The aricle http://blogs.msdn.com/b/dotnet/archive/2014/04/07/the-jit-finally-proposed-jit-and-simd-are-getting-married.aspx


 Additionally .NET native will be MS only--

Except it already exists today with Mono. Microsoft is just making the official .NET do something, Xamarin has been doing the last years already, both in static native compilation and SIMD support.

Any language can expose SIMD instructions, there is nothing special about them in C++, because like every other language, they are compiler extensions. Regardless of being a defacto standard or not.

If I take the C# side on this, even though I also like C++, is because we are in a D forum, and having a C# native toolchain will certanly help young developers understand we don't need VMs for memory safe systems programming languages.

Oberon compilers in the mid-90's were producing code that was as good as C compilers back then. On those days I still wrote a couple applications 100% in Assembly.

I think many value too much C and C++ compilers, because they forget how long they have been around, and also never used alternative system programming languages back when C and C++ compilers used to suck.


--
Paulo

Reply via email to