4 ms·
"is that it is extremely tedious, error prone, and sensitive to details. It is also unstructured," That's why it's such an important first language! Pedagogica
by mousethatroared 1y ago
"is that it is extremely tedious, error prone, and sensitive to details. It is also unstructured,"
That's why it's such an important first language! Pedagogically it's the foundation motivating all the fancy things languages give you.
You don't teach a kid to cut wood with a table saw. You give them a hand saw!
- ziml77 1y agoYou give them a hand saw because power tools are far easier to inflict serious injuries with. But if you're teaching a kid who's old enough, there's no reason to start on a hand saw if you have the power tools available.
- mousethatroared 1y agoYou don't give a noob a table saw because he'll never understand why a hand saw is useful. He'll never appreciate that more often than not, the hand saw will easier and quicker. But hey, what do I know. Im the kind of guy who gets to play with TMA and seriously considers purchasing hydrazine for work. What do I know?
- tsimionescu 1y agoNo, it is not the foundation motivating what other languages give you, not at all. Programming languages are usually designed based on formal semantics. They include constructs that have been found either through experience or certain formal reasons to be good ways to structure programs. Haskell's lazy evaluation model, for example, has no relationship to assembly code. It was not in any way designed with thought to how assembly code works, it was designed to have certain desirable theoretical properties like referential transparency. It's also important to realize that there is no "assembly language". Each processor family has its own specific assembly code with its own particular semantics that may vary wildly from any other processor. Not to mention, there are abstract assembly codes like WebAssembly or JVM bytecode, which often have even more alien semantics.
- mousethatroared 1y agoYou don't teach lambda calculus to a first grader. You don't teach Haskell to seventh grader. But 4 bit assembly driving a few LEDs? That works
- taco_emoji 1y ago> You don't teach a kid to cut wood with a table saw. You give them a hand saw! Okay but that's not for pedagogical reasons, it's because power saws are MUCH more dangerous than hand saw. Contrariwise, you don't teach a kid to drill wood with a brace & bit, because a power drill is easier to use.