“Your computer is not a fast PDP-11.”
CPUs are still optimized to run C, which was “close to the metal” in the 1970s, but is a direly misleading model for modern hardware.
Large inefficiencies & security problems result.

@Plinz,@JohnDCook
https://queue.acm.org/detail.cfm?id=3212479 …
-
-
Yet it is our most successful attempt at making a performant programming language: https://arxiv.org/abs/1409.0252
1 reply 0 retweets 0 likes -
Performance measures in that paper were run on an an x86 CPU (Intel Quad Core2). If the OP is correct that x86 CPUs are optimized for running C, it is not surprising that C would run faster than other languages on an x86 CPU.
1 reply 0 retweets 1 like -
Replying to @Meaningness @HenkPoley and
The point, though, is that a modern CPU is (in 1980s terms) a MIMD array of vector supercomputers, each with a VLIW scalar controller pretending to be a 80386. C doesn’t correspond to that at all, and it takes extraordinary feats of compilation to make it run effectively.
1 reply 0 retweets 1 like -
Replying to @Meaningness @HenkPoley and
If Intel gave us a channel to access the highly-parallel hardware directly, we could compile paralellizable code to utilize more of the crunch more of the time. And then functional languages, and vector languages, would probably run faster than C.
1 reply 0 retweets 2 likes -
Replying to @Meaningness @HenkPoley and
this is the thinking that led to the Itanium, though
1 reply 0 retweets 1 like -
Replying to @browserdotsys @HenkPoley and
The usual lesson taken from Itanium is that backward compatibility is more important than performance, isn’t it? OP argued it’s time to ditch C (and therefore the backward compatibility requirement) in order to advance hardware. Commercially, this is probably a non-starter!
1 reply 0 retweets 0 likes -
Replying to @Meaningness @HenkPoley and
well the itanium was also about exposing hardware resources to the assembly level more explicitly. the backward compatibility story was that sufficiently smart compilers would let people keep programming in C (and they never materialized)
2 replies 0 retweets 0 likes
Yes, I think you are correct. Whether that means a similar move now would be doomed, I don’t know. Intel screwed up the Itanium launch in various ways. OP seems to be a compiler writer complaining about the target machine, not someone prognosticating about industry direction.
-
-
Replying to @Meaningness @browserdotsys and
Coding against an abstract machine interface that presupposes sequential and deterministic hardware may be as doomed as coding foundational physics against an abstract universe interface that presupposes continuous hypercomputation.
#stringtheory0 replies 0 retweets 1 likeThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.