3 ms·
Point 1: Georgia Tech uses Python (CM & CS) or Matlab (everything else) as an intro language. Point 2: You're not allowed to use certain solutions because the
by caw 15y ago
Point 1: Georgia Tech uses Python (CM & CS) or Matlab (everything else) as an intro language.
Point 2: You're not allowed to use certain solutions because the homework is to implement what you learned in class. Yes, your linked list will be implemented iteratively, recursively, in Java, in C, etc etc. Yes this leads to homegrown libraries because then you'll turn around and use this same code in your next homework, because it builds off the prior week's. Or if you failed horribly the TA releases theirs but of course they've implemented it differently than you so there's a learning curve if you have to modify the code. Then after that, you can use the built-ins (unless it's been decided you have to implement your data structure with yet another nifty feature). It's teaching fundamentals.
With the homegrown libraries, the closest I ever saw to that was the LC3 assembler we had to code in. But everyone knew it wasn't x86 assembly and it was for learning purposes.
At the other extreme: I actually learned C without any libraries because it was taught using a game boy emulator. We didn't even have printf for debugging. Now go in to your next C class and they assume you know the libraries. I once tried to re-implement "atoi" because I didn't know it was standard.