View reviews for professors for this course View On Testudo

CMSC330

Organization of Programming Languages

Prerequisite: Minimum grade of C- in CMSC250 and CMSC216. Restriction: Must be in a major within the CMNS-Computer Science department; or must be in the Computer Science Minor program; or must be in Engineering: Computer program. A study of programming languages, including their syntax, semantics, and implementation. Several different models of languages are discussed, including dynamic, scripting (e.g., Ruby, Python) functional (e.g., OCaml, Haskell, Scheme), and memory safe systems programming (e.g., Rust). Explores language features such as formal syntax, scoping and binding of variables, higher-order programming, typing, and type polymorphism. Introduces finite automata, context free grammar, parsing, lambda calculus, and basics of security attacks and software security.

7 reviews
Average rating: 4.57

9 reviews
Average rating: 4.56

2 reviews
Average rating: 4.50

9 reviews
Average rating: 4.44

7 reviews
Average rating: 4.14

14 reviews
Average rating: 4.07

79 reviews
Average rating: 3.96

21 reviews
Average rating: 3.62

13 reviews
Average rating: 3.54

4 reviews
Average rating: 3.00

102 reviews
Average rating: 2.83

0 reviews
Average rating: Not yet rated

0 reviews
Average rating: Not yet rated

0 reviews
Average rating: Not yet rated

Average GPA: 2.67 between 5,720 students

"W"s are considered to be 0.0 quality points. "Other" grades are not factored into the average GPA calculation.