Course Outline
csci.viu.ca/~wesselsd/courses/csci330/outline.html
| CSCI 330 (3) Programming Languages The fundamental concepts of imperative and applicative programming languages. Topics include the description of data types, variable assignment and sharing, sequencing, iteration and recursion, parameter passing mechanisms, and type checking. (3:0:1) Pre-requisite: Min. "C" in each of CSCI 162, CSCI 260, CSCI 261 and CSCI 265 |
Course motivation and overview
This course is meant to give students a broader understanding of the nature of existing programming languages, and the benefits and drawbacks associated with features and implementations of these programming languages.
We will consider the fundamental concepts of programming languages - looking at potential language constructs, and the design decisions and implications associated with each.
The course will be a mix of theory and practical application - the former to be achieved through the lectures and readings, the latter through a series of labs/tutorials and detailed technical problems to be solved in a variety of programming languages.
Contact information
Resources
Timetable
Assessment
Topics
The planned topic set for the course is shown below. The order will
vary considerably, and some changes in topics may take place during the semester.
Functional languages (using lisp)
Language parsing
Language features and implementation (using C and C++)
Learning outcomes
On successful completion of the coruse, the student should be able to:
Programming languages, labs
While we will discuss theoretical aspects of a range of languages,
the applied portions of the course will focus heavily on common lisp, C, and C++,
plus the use of lex/flex and yacc/bison (to be introduced in lab).
Students will be expected to program heavily in each of these languages,
applying and evaluating advanced features of each.
The lab assessment will consist of a collection of five programming exercises, each introduced in one of the lab sessions and carried out independently over the space of roughly two weeks.
Labs start in the second week.
Grade Conversion:
The standard VIU grading scale will be in use.
| 90-100 | 85-<90 | 80-<85 | 76-<80 | 72-<76 | 68-<72 | 64-<68 | 60-<64 | 55-<60 | 50-<55 | < 50 |
| A+ | A | A- | B+ | B | B- | C+ | C | C- | D | F |
Lab and Computer Usage Rules:
See http://www.viu.ca/computerscience/resources.asp#Lab_and_Computer_Usage_Rules
Resources
A wide range of other supporting resources are provided by the institution, including:
Accessibility
Vancouver Island University recognizes its legal duty to provide educational opportunities
that enable students with a documented disability to access courses, programs, facilities,
and services.
The Policy and Procedural Guidelines apply to all students who have identified themselves to the institution as having a documented disability who are inquiring about, applying to, or registered in credit or non-credit courses in both on and off-campus programs.
Academic Integrity
Integrity in academic work is a central element of learning and is the basis of intellectual
pursuits in any academic community. It is also your responsibility to abide by the Student
Conduct Code and Student Academic Code of Conduct
Links to University Policies, Standards, and Guidelines
Below are links to many of the official VIU policies, procedures, and guidelines.