From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.176.3.171 with SMTP id 40mr2985884uau.9.1481971901748; Sat, 17 Dec 2016 02:51:41 -0800 (PST) X-Received: by 10.157.39.129 with SMTP id c1mr411544otb.15.1481971901699; Sat, 17 Dec 2016 02:51:41 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!n6no960588qtd.0!news-out.google.com!c1ni18165itd.0!nntp.google.com!b123no1008040itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 17 Dec 2016 02:51:41 -0800 (PST) In-Reply-To: <877f6y3lzo.fsf@nightsong.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=78.192.88.225; posting-account=21X1fwoAAABfSGdxRzzAXr3Ux_KE3tHr NNTP-Posting-Host: 78.192.88.225 References: <5f542dff-8dd0-49b8-8228-3ccc8248c57d@googlegroups.com> <276a2153-b81f-4e19-9615-530e798e5798@googlegroups.com> <1533893062.503569684.598007.laguest-archeia.com@nntp.aioe.org> <877f6y3lzo.fsf@nightsong.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <85710560-c177-4979-b508-241927593dbe@googlegroups.com> Subject: Re: C# new features (v.7) From: Hadrien Grasland Injection-Date: Sat, 17 Dec 2016 10:51:41 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:32902 Date: 2016-12-17T02:51:41-08:00 List-Id: Le samedi 17 d=C3=A9cembre 2016 11:09:49 UTC+1, Paul Rubin a =C3=A9crit=C2= =A0: > Luke A. Guest writes: > > Yup. Need to get younger people excited but seems only a few of us > > actually see this. >=20 > Younger programmers (those who didn't grow up dealing with old slow > machines with little memory) generally use lower performance but more > convenient languages rather than C, Ada, etc. They're protected from > integer overflow by bignums, memory errors by bounds checking, > alloc/free errors by garbage collection, etc. Lots of very good > developers shipping successful products have never programmed in > anything but Javascript or Python or Ruby. Ada and C are niche > languages for embedded control and C++ is for when performance requires > it (except now Go and Rust are cutting in on that niche too). >=20 > As others have said, C++ has also improved a lot lately, with more > improvements coming. I wouldn't put Go in the high-performance niche for the same reason that I = don't consider Java as a competitor to C++. Although the CPU performance of= these languages has improved so much over the years that it is rarely a bl= ocker anymore, the memory consumption of their implementations is still way= too high for applications that push the hardware to its limits. This is especially true as hardware parallelism starts to grow faster than = RAM size, leading to a fast decrease of memory per compute core. While big = Java applications are usually designed for 4-8 GB of RAM per CPU core, Inte= l's Xeon Phi has 1.4 GB of "slow" DDR4 and ~50 MB of "fast" MCDRAM per hype= rthread, and the typical GPU scratchpad is ~48 KB large and shared by hundr= eds of threads... Rust's memory management model is more interesting, and seems less wasteful= than Java's garbage collector. It might be better suited to the highly par= allel architectures that are becoming the norms for high-performance comput= e. But will it be good enough to displace C, C++ and Fortran? Only time wil= l tell...