3 ms·
Awesome--I've been knee deep learning how C code translates into assembly instructions, learning more about the compilers roles and responsibilities; but in the
by itsmemattchung 10y ago
Awesome--I've been knee deep learning how C code translates into assembly instructions, learning more about the compilers roles and responsibilities; but in the back of my mind, I aways wonder: why is the C language (or any language, really ) designed the way it is. A more concrete example: instead of "how do closures work in python," I wonder "WHY are closures designed to work this way in python ?"
- nickpsecurity 10y agoIt mostly wasn't designed if you're talking about C. It was almost totally the result of terrible hardware and personal preference derived from BCPL which was terrible hardware. The Vimeo link below goes from one paper & computer to another from CPL to BCPL to B to proto C's (IIRC) to C itself. Also shows interplay between C and C++ development. I'm also including my rant that summarizes the video in bullet points with some commentary. I still need to update it, though, with critiques from last time it was on HN. https://pastebin.com/UAQaWuWG https://pastebin.com/UAQaWuWG https://vimeo.com/132192250 https://vimeo.com/132192250 Now, for the other languages, who knows. I agree it's always fascinating to learn how they were done. I didn't get that feeling learning C's history. Not like when I studied Wirth's Lilith and Modula-2: https://en.wikipedia.org/wiki/Lilith_(computer) https://en.wikipedia.org/wiki/Lilith_(computer) Note: Full description is in references under "Personal Computer Lilith."