[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1765012922980011.jpg (51 KB, 800x800)
51 KB JPG
Is the "le PDP-11" meme about C based on some real facts or is it just cope shit that anti-C shills collectively made up to sound smarter?
>>
File: pdp11-c.jpg (111 KB, 1378x775)
111 KB JPG
>>108895406
If it's used to argue that C does not represent modern processors well, it's definitely true. Complete lack of consideration for SIMD is a great example.
>>
>>108895406

user interface be like run program, empty program, yank power cable and some other options?
>>
>>108895406
It's a fact but the part they often forget to mention is how much influence C had on the design of modern CPUs.
Therefore you can hit them with the absolute trvthnvke your computer is, in fact, trooning out and calling itself a fast PDP-11.
>>
>>108897308
I don't really agree with that. Modern cpus are a natural evolution of a few basic concepts. These concepts are not specifically c features, also the majority of the instructions of a modern cpu are not useful to C.
>>
>>108895444
simd is worthless in higher level languages without something like ghc's rewrite rules, so that's a fucking retarded argument
>>
>>108895444
>If it's used to argue that C does not represent modern processors well, it's definitely true.
As long as it's also used to argue that machine code isn't representative of modern processors, that's a valid argument. It's even true; there's many ways in which processors lie about what they're really doing now.
But almost nobody who makes software gives a flying fuck about it, and people autistic enough to care typically can't handle making a large program (they get bogged down in the fine details and never make progress on the bigger picture).
>>
here's a better anti-c statement: no modules!
>>
>>108895406
It's cope shit. This article disproves this meme: https://www.yodaiken.com/2021/05/21/your-computer-is-a-fast-pdp-11-and-more-on-c-the-c-standard-and-computer-architecture/

Also see https://yarchive.net/comp/c.html

The influence of the PDP-11 on the C language was extremely minimal, contrary to popular contrarian belief. In fact, the only thing that did influence the language were autoincrement cells (leading to postfix increment).

Apart from this and maybe some other minor details I can't remember right now, C was designed since the very beginning to be machine-agnostic as much as possible. In fact, the original purpose of UB was precisely letting the platform do its own thing when no reasonable portable behavior could be implemented, it was later perverted by compiler writers.
>>
It's a load of talmudic bullshit meant to subvert and undermine Aryan technology (C is one of the crowning achievements of Aryan civlization).
>>
>>108895406
it's a meme. C was designed so that it was easier to port unix to other architectures.
>>
>>108898561
This is a very valid criticism, but sadly unfixable without breaking backwards compatibility. Experience has shown that a proper module system must be designed into the language from scratch a priori, just look at what happened to Sepples.
>>
>>108895406
It's a cope for the reason that it's not really relevant in any way when discussing programming languages
>>
>>108895406
100% nonsense. If someone tells you that shit you can know for sure that someone doesn't know shit.
>>108897389
Irrelevant with Open MP 4+.
>>108898561
Retard take.
>>108898938
Nobody with a brain wanted modules, it was the wish list of a bunch of retards.
>>
>>108900354
And what is this reason?
>>
There is some truth to it, but it's pointlessly targeted against C.
It's not really about the language, but the style of programming in regards to machine performance characteristics.

Imagine PDP-11 as a DSP microchip - all memory access is pretty much the same speed, all instructions take fixed number of cycles, there is no pipelining, no caching. You could do random memory accesses, branching all over the place. And the only way to make it faster was doing less of it.

Now we have out-of-order superscalars with hierarchy of caches, instruction-level pipelining, branch predictor, memory prefetching predictor and god knows what.
Some of the changes were motivated by taking the PDP-11 style code and make the CPU faster for it without changing the program.
But there is a new way to restructure your programs (and programming style) to exploit peak performance characteristic. Computation is blazing, memory is still pretty slow, but local access is faster than random access.

So a lot of the PDP-11 FUD is motivated by this - that we still write the programs in PDP-11 style and don't take a full advantage. This is not a language issue specifically. It applies to 99% of mainstream languages, really. Funnily, assembly isn't a low level language by author's (of that C is now low level paper) definition either.

And yet you can take C (or assembly, C++, Rust, ... any memory managed langauge) and structure your program is such way that does exploit the performance characteristics becuase they are very flexible. Often not possible in GC languages that force you an indirection. This is often not mentioned by the FUD shills.
And of course the FUD shills won't tell you how they imagine to structure programs that hare lots of branching logic and little of data of the same type that need to be batch-processed.
>>
>>108900405
damn i guess it really is impossible to tie one piece of code to another without literally copypasting the contents of former into the latter
>>
>>108900449
What do you mean? I'm saying the reason why it's a meme is because it's not relevant when discussing/debating which programming language is better, that's not what actually matters
>>
>>108900664
It turns out, in many ways, your computer really is a fast PDP-11.
>>
>>108900664
>shills won't tell you how they imagine to structure programs
I am not really sure anybody will be able to, even in a purely speculative LET'S DO THIS GOOD THING INSTEAD OF THAT BAD THING way. Even if you can concieve of some brand spanking new TRVE lowlevel language called bssembly, access to speculative execution and all the fancy """new""" features of hardware will lead to history repeating, rather than a new paradigm in software. And that is operating under the assumption that everybody will play nice, that what programmers really need is even more fine-grained control that C is supposedly larping about.
What's that 1% non-mainstream language that leverages all that shit in any capacity? Something declarative, where the prorgammer offloads all the optimizations to the compiler I presume?
>>
>>108895444
SIMD was superseded by GPUs and CUDA
>>
>>108897631
>C's simd support is lacking
>>simd is worthless without the language supporting it well
That's what Anon already said.
>>
>>108901106
So?
>>
>>108895406
C represents nothing. Compilers do insane transformations on C code based on language specifications. Sometimes they interpret it maliciously, like deleting bounds checks if there's UB inside. It's a high level language like any other.
>>
>>108901322
t. David Chisnall
>>
>>108901083
Some people really refuse to learn from the failure of Itanium.
>>
>>108895406
>PDP-11
modern processors totally same
>>
>>108901112
>CUDA
openCL
>>
>>108901384
The Z80, just to cite a well known architecture, was far more different from x86 than any PDP ever was.
>>
>>108898727
Anyone who actually can write even a little bit of C understands this. You are dealing with primary school twitter spammers in this thread.
>>
C just good, deal with it
https://desuarchive.org/g/thread/108770946
>>
>>108901083
the pitch is that speculative execution and branch brediction exists to speed up the PDP-11 model and they are not necessary, thus simplifying CPUs.
And the right way is - ironically to the paper's name - a high level approach where you do high level array languages and database-like queries.
>>
>>108901578
>And the right way is - ironically to the paper's name - a high level approach where you do high level array languages and database-like queries.
And how would it work *in practice*? Talk is cheap.
>>
>>108900405
it's ok if you haven't grown to understand benefits of modules yet.
>>
>>108901112
Webdev opinion



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.