CS Curriculum Languages
Commenters share experiences about the programming languages taught in undergraduate computer science courses at various universities, including Scheme, Java, C, Pascal, Prolog, and others, often comparing curricula and approaches.
Activity Over Time
Top Contributors
Keywords
Sample Comments
My alma mater had zero language courses. We were expected to learn enough of whatever languages were necessary for concepts covered in the course. Intro courses used Scheme and Java. C ended up being used in later courses after the intro ones, e.g. operating systems.
That's awesome! They taught Pascal in my CS undergrad classes.
Not all unis are like that. We start with functional programming and programming essentials in general with Scheme (lisp derivative), and then do some object oriented stuff with java, and then some systems programming with C. None of the classes are related to the specific language, the language is a tool to illustrate the concepts. These are all in the first and second years. After that, there are more advanced classes in each topic. Maybe some schools are just doing it wrong?
You are talking about UK.On my Portuguese university, we got to code in standard Pascal, C, C++, Prolog, Smalltalk, Caml Light, PL/SQL, 80x86 and MIPS Assembly, Java.Many of the lectures were composed by exam + mini-project.Anyone that made it without much coding was getting a ride in workgroups, on single projects it was either code or fail.
This is exactly what my school did. The first CS class was in Scheme, based on SICP. The next one was about data structures and based on Java. The last one was about computer architecture and used C followed by MIPS followed by designing a simple CPU with logic gates.Overall, it's a pretty good system. The middle Java class was completely worthless and a big waste of time though; in hindsight, I should have skipped it. Also, while we learned a bunch of cool things in the SICP class, every sin
Yep.. my university covered things like data structures and complexity well enough, but felt they had to dumb things down for freshmans, many of who would not be advancing.So we had java and pascal for various first year courses... I wish they had just gone straight to Scheme - it would have been mind-altering and a lot of fun.They did have one course which was heavily project based which is the one I remember clearly - write a toy compiler, add a feature to a minix like OS, spellchecker w
This was the same at my university (Santa Clara University, http://www.scu.edu/engineering/cse/): introductory courses used C++ (for "intro to computing" and data structures), assembly (for a computer organization course) and Haskell (for the SICP equivalent -- not sure if it's still a requirement).Upper level courses would then expect students to pick up Verilog/VHDL, regular C, assembly, lex/yacc, Scheme/Lisp, Java and Perl/Py
It depends on the quality of the university, I graduated in 1999, but from quick glance at the CS department web site, you still get to use at least C, C++, Prolog, ML, Java, C#, depending on the project assignments.
In my university (in Paris) we used to learn programming that way for the licence degree1st year -> pascal only2nd year -> c only3d year -> java onlyThat was a very nice learning curve for the core course of programming.
My University basically taught The Art of Computer Programming. I remember one C++ class (an elective), one assembly class (required, I think), and the rest was just math. That stuff never goes out of style (not that I remember any of it...). I think I'd be much worse off if I was just taught the latest hotness. Node.js 101!