Park.edu Home > Information and Computer Science > CS 380: Compilers
CS 380: Compilers
Course Description:
The student will learn the principles of compiler construction. In particular, the student will learn about lexical analysis, symbol tables, parsing, type checking, and code optimization. Some or all of these concepts will be put into practice with programming projects. Prerequisite: CS 352. 3:0:3.
Learning Outcomes:
Upon completion of this course, the student should be able to:
- State the basics of compiling, including assembly language concepts, interpreters, compilers, and debuggers.
- Demonstrate the concepts of scanning, including lexical analysis, token generation, symbol table, operators, and reserved words.
- Demonstrate the different techniques of parsing, including the CONO table, LLR, LRR, and recursive descent parsing.
- Describe how executable code is generated by a compiler.
- Explain the different techniques of how executable code is optimized.
Assessment Tools:
Homework assignments: Assign weekly written homework assignments covering part of a class topic. Short topics will require only one assignment; longer topics could have more. These assignments can be neatly collected in a portfolio for easy reference. These assignments may be word processed or hand written, depending on the complexity.
Class Presentations: Since this is a high-level class, having students present ideas to the class is an excellent method of assessing knowledge, while at the same time giving them practice in preparing and giving instructions.
Exams: Give two to five exams during the semester covering the topics discussed in class. Exam questions should be of a similar nature to the assignment questions, but not exactly the same. Students should be able to apply the technique learned to a problem not covered in class. Open-note or cheatsheet exams can be appropriate given the complexity and detail of the exam.
Quizzes: Quick, 10-minute weekly exams are effective in keeping students up with the material. They give immediate feedback to how well they are learning the material.
Programming: It should be noted that creating a working compiler for even the most simple language is a very difficult task. While obtainable for the best of students, in can prove much too difficult of a challenge for many students.
Textbooks
To view the approved textbook list, click here.
|
--------------------------------- University Resources This page was last modified on --> Friday November 06 2009 |





