4 ms·
Surprise: there's a whole bunch of different reality under your the convenient illusions of your "high level" programming language. Hardware is the reality. I
by markhahn 5y ago
Surprise: there's a whole bunch of different reality under your the convenient illusions of your "high level" programming language.
Hardware is the reality. It's not very much like the Java or Python programming model. We shouldn't hide this from programmers.
- doctor_eval 5y agoI disagree. C is also an abstraction of reality over assembly, assembly is an abstraction over machine code, which abstracts microcode, which abstracts over logic gates, and there are both deeper and adjacent abstractions as well. Underlying it all are different mathematical abstractions from karnaugh maps to quantum physics. A good developer will IMO select an abstraction that best matches their goals. If you’re writing a device driver then the abstraction might be assembly language. If you’re writing business logic it might be PL/pgSQL. But regardless of which abstraction you choose, you’re hiding something from someone.
- arunc 5y agoIn other words, hiding the complexity beneath