Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Don't get me wrong, Python is head and shoulders above Java/C# or C/C++ as a teaching language. The complaint is that, as the educator, lab/tutorial time is being wasted on trivial syntax issues that would be non-existent given a more lenient parser or better tooling (preferably the latter).


I’m not sure that statement is accurate, I could see an argument being made for C being a really good learning language.


If your goal is low level programming, yes.

If your goal is understanding data structures, algorithms, etc, then C is hideous. Explaining function prototypes, include headers, very unfriendly I/O, and I already mentioned the horrible syntax for for loops.

There's a reason most of the data structures/algorithms were in a second course at my university: It's because it took most of one semester for students to get a handle on the very basics of C syntax.


It would be the best possible learning language, if your next language was going to be assembly.


Is that a crack about complexity? C doesn’t have very many features.


I’m saying that the C machine model would be an ideal introduction to pointers and registers and bit manipulation, and you could compare a C program with its compiled disassembly. Later you could get into in-line assembly and even processor intrinsics.


Alright, I see.

Another good candidate is golang.

I’m going to think on that one a bit more.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: