COMP 3007

Programming Paradigms

Winter 2012

Lectures:

COMP 3007-B (TB 238)
Wed.. and Fri. 8:35 am-9:55 am

Instructor:

Tony White
arpwhite at(@) scs.carleton.ca
HP 5354, 520-2600 x2208

Office Hours: Tue. and Thu. 1:30 pm-2:30 pm

Teaching Assistants:

The TA(s) for this course will be in HP 1170 during stated office hours.

Name 

Office Hours 

Andrew Runka

Thu. 2:00 pm-4:00 pm

Babak Salimi

Tue. 2:00 pm-4:00 pm

Announcements:

Course Description:

An introduction to functional and logic programming. Topics include: semantics of functional programming, assignment-free programming, the meta-circular interpreter, recursive functions, Prolog, backtracking, cutting, and negation.

Prerequisites:

COMP 2402 or COMP 2002

Textbooks:

Scheme

Prolog

General

Topics:

Lectures:

Scheme Example Code:

Prolog Example Code:

Assignments:

There will be 4 assignments. All assignments carry equal marks.

  1. Assignment #1
  2. Assignment #2
  3. Assignment #3
  4. Assignment #4

Laboratory:

Information on the computer laboratories for this course is here. The lab machines are equipped with computers running a Windows OS connected via a network to printers and a file server. Students are permitted to use their own facilities, but must acquire their own software to run on their own machines.

Software:

Scheme and Prolog are used in this course. The Software is provided on all laboratory computers and can be downloaded free from the World Wide Web. The Scheme (DrRacket) download is: http://www.drscheme.org. SWI-Prolog can be found at http://www.swi-prolog.org. If you have problems with the software running on the SCS machines, please e-mail support@scs.carleton.ca.

Assignment Submission:

You should take the time to ensure that your assignments are well documented and easy to understand. Assignments that don't meet these standards will be given fewer marks. Guidelines have been written that define documentation and testing standards. NOTE: NO LATE ASSIGNMENTS WILL BE ACCEPTED.

Marks will be posted on-line as soon as assignments have been graded. It is your responsibility to notify the instructor of any inconsistencies at once. Any complaints regarding assignment marks should be brought to the attention of the TA who marked them. This should be done no later than two weeks after the assignment has been first marked. No assignment remarking will be done after this time.

You should take the time to ensure that assignments are neat, legible and easy to understand. Any instructions required by the teaching assistants (for example any assumptions you made about the assignments) should be clearly indicated in a README.TXT file submitted with your assignment. Remember, it is YOUR responsibility to demonstrate that you have understood and completed the assignment. A significant portion of your grade for assignments will be given for the readability of them and for your demonstration that you have completed the assigned tasks.

There will be 4 assignments in this course which will be available on the course web page. All assignments are counted towards the final grade.

Copying of assignments is strictly disallowed. On the first occasion, all students involved will be given a mark of 0. On subsequent occasions, students will be asked to withdraw from the course.

Marking Scheme:

Assignments (4) 30%
Mid-Term Exam 15%
Final Exam 55%

Passing grades on both the term mark (assignments and mid-term exam) and the final exam are required to receive a passing grade for the course.

Course Web Page:

As well as being announced in class, all important information, such as course news, assignments, TA hours, instructor office hours, will be available on the course web page at http://www.scs.carleton.ca/~courses/3007. It is the student's responsibility to check this web page for new information regularly.

Note:

Students with disabilities requiring academic accommodations in this course are encouraged to contact a coordinator at the Paul Menton Centre to complete the necessary letters of accommodations. After registering with the Paul Menton Centre, make an appointment to come and discuss your needs with me at least two weeks prior to the midterm exam. This is necessary in order to ensure sufficient time to make the necessary arrangements.