logoalt Hacker News

flohofwoelast Wednesday at 3:03 PM2 repliesview on HN

Starting with assembly makes it pretty clear why higher level languages had been invented. E.g. a speed run through computing:

- machine code

- assembly

- Lisp and Forth

- C

- Pascal

- maybe a short detour into OOP and functional languages

...but in the end, all you need to understand for programming computers are "sequences, conditions and loops" (that's what my computer club teacher used to say - still good advice).


Replies

TheOtherHobbeslast Thursday at 12:02 AM

I'd change the end of that list to C, Pascal, Lisp, Python.

But in the end no one learns "assembler". Everyone learns a specific ISA, and they all have different strengths and limitations. Assembler on a 36-bit PDP-10, with 16 registers and native floating point, is a completely different experience to assembler on a Z80 with an 8-bit accumulator and no multiply or divide.

You can learn about the heap and the stack and registers and branches and jumps on both, but you're still thinking in terms of toy matchstick architecture, not modern building design.

tsimionesculast Wednesday at 4:37 PM

> but in the end, all you need to understand for programming computers are "sequences, conditions and loops"

I fully agree - and assembly language teaches you precisely 0 of these.

show 1 reply