CSE 262 Programming Languages (3)
Gang Tan (Spring 2014, Fall 2014)
Current Catalog Description
Use, structure and implementation of several programming languages. Prerequisite: CSE 17 or CSE 18.
Tucker, Allen B. and Robert E. Noonan. "Programming Languages:Principles and Paradigms", 2nd ed., McGraw-Hill, 2007, ISBN 978-00072866094
Students will have:
- Understanding of the design, implementation, and use of different programming languages.
- Abilty to choose the best language for any programming task.
- Ability to more easilty learn new languages independently
Relationship between Course Outcomes and Program Outcomes
CSE 262 substantially supports the following program outcomes:
- An ability to analyze a problem and identify and define the computing requirements appropriate to it solution
- An ability to design, implement, and evaluate a computer-based system
- An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices
CSE 262 provides modest support to the following program outcomes:
Recognition of the need for, and an ability to engage in, continuing professional development
Prerequisites by Topic
- Top-down design
- Primitive data types
- Repetition and selection
- Object-oriented programming
- Fluency with JAVA
Major Topics Covered in the Course
- Lexical and Syntactic Analysis
- Names and Bindings
- Data Types
- Logic Programming
- Semantics of Expressions, Assignment Statements and Control Structures
- Functional Programming
- Memory Management
- Imperative Programming
- Oject-Oriented Programming
Assessment Plan for the Course
The students are given four homework assignments, three programmin assignments, a midterm, and a final examination. Each homework assignment typically covers a single topic. The first programmin assignment involves constructing a simple lexer and parser in JAVA. The other two programming assignments introduce students to working in the logic and functional programming paradigms. The midterm and final include vocabulary, short answer questions, and short programs. When I grade homeworks, programs and exams, I look for common errors among students, and point these out in class.
How Data in the Course are Used to Assess Program Outcomes:(unless adequately covered already in the assessment discussion under Criterion 4)
Each semester I include the averages and standard deviations for each graded item my self-assessment of the course. I also provide a matrix that relates these items to the curricular objects. This report, in turn, by the Curriculum Committee.