4 ms·
Despite being an open language, Swift (and Playgrounds) is an effort to usher children into the Apple tent. BASIC (essentially any 3GL) never wore such a veil.
by itomato 8y ago
Despite being an open language, Swift (and Playgrounds) is an effort to usher children into the Apple tent.
BASIC (essentially any 3GL) never wore such a veil. To suggest discrete logic and IC-level assembly compares to issuing commands via the LEGO Mindstorms protocol perfectly illustrates the chasm between learning and understanding.
- 3rdAccount 8y agoAgreed. I'm a python beast, but really struggled with Assembly language in school. I'd have been better off with a ZXSpectrum earlier in life so I could've learned hardware. IMO high level languages (as insanely useful as they are) are similar to writing spells like a wizard and using assembly or even basic when you know all the registers...etc is more like a real science. Both are valuable, but I really wish I knew more about hardware.
- teddyh 8y agoHaving a ZX Spectrum would in no way actually help you learn hardware. The only thing it would do is to reinforce its realness, so to speak, which would help to motivate you to learn it. But it would not actually help you learn it – the design and learning curve of assembly language is what it is, and having access to running hardware (compared to having an emulator) does not change that.
- 3rdAccount 8y agoIt makes it easy to learn the hardware because it has a simple processor and makes it dirt simple to access. Windows on the other hand runs on modern chips and it isn't easy to run assembly without 3rd party software and graphics is also not something a child can easily handle. I suppose a good emulator would be similar, but emulation is a little bit of a lie :)
- teddyh 8y ago> Despite being an open language, Swift (and Playgrounds) is an effort to usher children into the Apple tent. Yes. That is certainly a good argument against that specific example, and it is one I agree with. But it does not apply generally. > To suggest discrete logic and IC-level assembly compares to issuing commands via the LEGO Mindstorms protocol perfectly illustrates the chasm between learning and understanding. But learning and understanding what? Why is it (as I imply that your argument is) important to understand assembly-level instructions when it is not important to understand the underlying electronics? Why is this level special? In addition to all the general arguments I outlined above, there is one additional argument to be made against assembly language: In today’s processors, I am given to understand that these assembly language instruction sets are largely a high-level language, emulated by microcode – the assembly instructions you write have very little to do with what the processor is actually doing in a modern hardware architecture, and therefore teach you exactly the wrong things about how a modern processor works.