CS 356 Programming Languages Spring 2019 

Course Syllabus

Dr. David A. Reimann, Professor
Department of Mathematics and Computer Science
Albion College
Albion, Michigan
Office 252 Putnam
Office Hours 3:30 - 4:15 pm, Mon
3:30 - 4:30 pm, Wed
2:15 - 3:00 pm, Thursday.
I am also available by appointment at other times. Email me or talk to me before or after class to set up a meeting outside my regular office hours.
I am often in my office at many other times. Come see me if you need help - that is why I am here!
E-mail dreimann@albion.edu
Website http://zeta.albion.edu/~dreimann/
Phone 517-629-0426 (Office)
517-629-0361 (Secretary)
Course CS 356
Course Name Programming Languages
Sections CS 356 (CRN: 9129)
Credit 1 Unit
Core/Category This course does NOT fulfill a core or category requirement.
A survey of the structure of programming languages and programming as an abstract concept. Topics include syntax and semantics, scope rules, environments, types, procedures, parameters, overloading, parametric polymorphism, and inheritance. Students will learn to program in the functional paradigm by studying the Scheme programming language. As part of the course, students will develop a language interpreter.
Prerequisites CS 173 or my permission
Meeting Times
and Locations

M W F 2:15 - 3:20 am in 221 Palenske
Website http://zeta.albion.edu/~dreimann/Spring2019/courses/cs356/
Schedule http://zeta.albion.edu/~dreimann/Spring2019/courses/cs356/schedule.php
Required Books Concepts of Programming Languages, 11th Edition, Robert W. Sebesta, 2016, Pearson.
Recommended Books
  • A LISP textbook.
Online Resources

You should install the following free software on your computer (also available in the Putnam 251 and Palenske 231 Computer Labs):

Performance Evaluation
Grade Element Possible Points
Tests 300 (2 @ 150 points each)
Homework 500 (10 @ 50 points each)
Term Project 200
Total Possible Points 1000+

See Schedule for specific dates.
Your Points Percentage Your Grade Interpretation
93.0-100.0 4.0 Represents work outstanding in quality. The student not only shows unusual mastery of the required work for the course, but also has independently sought out and used additional related materials, demonstrating the ability to discover new data, to develop new insights and to bring them to bear on the work at hand.
90.0-92.9 3.7  
87.0-89.9 3.3  
83.0-86.9 3.0 Represents work which is higher in quality than that of a 2.0, or more than satisfactory. The student has shown the ability and the initiative to fulfill more than the basic requirements of the course.
80.0-82.9 2.7  
77.0-79.9 2.3  
73.0-76.9 2.0 Represents work which fulfills all of the basic requirements for the course. It means that the student has a grasp of the material and techniques or skills sufficient to proceed with more advanced courses in the area.
70.0-72.9 1.7  
67.0-69.9 1.3  
60.0-66.9 1.0 Represents work seriously attempted but which is below the 2.0 level in quantity and quality. The student is advised not to continue advanced work in the field.
0-59.9 0.0 Represents work unsatisfactory in either quantity or quality. It results in the student's not being able to continue with further work in the field and results in no credit, although it is recorded on the permanent record.
  I Incompletes may be given only because of illness, or other unavoidable circumstances, as approved by the Petitions Committee. An Incomplete is not to be issued to a student who simply has failed to turn in some assigned work before the end of the semester. The "I" grade should be used rarely and for legitimate reasons. A final grade of Incomplete must be removed within four weeks after the end of the semester in which it was incurred, unless the deadline is extended by the Petitions Committee. Grades of "I" count as zeros in the calculation of the end-of-semester grade point average, and, if they are not removed within the required time, become zeros automatically on the student's record.

The following is the Albion College statement on attendance: "Regular attendance in all classes is expected. Every absence from class is inevitably a loss — usually one which can never be made up. A student has the responsibility to inform his or her faculty member, whenever possible in advance, of an absence due to serious or prolonged illness, and verification of absences due to emergency reasons, may be obtained from the Office of Residential Life."

In this course class absences are only excusable in documented extreme cases of unforeseen hardship or official College event, as described in the Student Handbook. Please notify me in writing (email is preferred) prior to official college events (sporting, class trips, etc.) that make it impossible for you to attend class. If you miss class because of participation in an official College event you must make prior arrangements with me. In extreme cases of unforeseen hardship, please contact me as soon as possible. In either case, you are still responsible for all material and assignments.

In cases where you have not taken personal responsibility, you will forfeit the possibillity of earning points. No credit will be given for a missed test or other scheduled in-class assignment, nor will late assignments be accepted.

You will have an opportunity to review your grade and other unreturned assignments for four weeks after the start of the subsequent semester. After that time, I will discard all unclaimed materials.

Academic Integrity and Expectations

As an academic community, Albion College is firmly committed to honor and integrity in the pursuit of knowledge. Therefore, as a member of this academic community, each student acknowledges responsibility for his or her actions and commits to the highest standards of integrity. In doing so, each student makes a covenant with the college not to engage in any form of academic dishonesty, fraud, cheating, or theft.

The goal of this course is for you to learn a rigorous academic discipline, not penmanship, typing, or other forms of plagiarism. Chapter III of the Student Handbook details instances and penalties for academic dishonesty. It also describes acceptable usage of the campus computing/networking facilities. In this class you are expected to do your own work unless explicitly stated.

Here are some things which will be considered cheating:

  • Using or turning in another's work as you own - with or without their permission.
  • Allowing someone else to use or turn in your work as theirs - in whole or in part.
  • Joint effort on an assignment with individual submissions represented as individual work.
  • If a student cannot explain why the solution is correct or how the solution was obtained.
Here are some things which are encouraged:
  • A submission using help from the instructor, student assistants, or the texts.
  • Discussion of the concepts related to the course material.
  • Discussion of assignments to understand what is required.

Typically, I grade papers one problem at a time. If you turn in someone else's work as you own, it really stands out. Please do your own work! If you are having trouble on an assignment come see me as soon as possible - I'm here to help!

We, as students and faculty, have the privilege and challenge of promoting higher standards of ourselves, the College, and society in general. Here are several expectations we should have this semester.

What you should expect of me. What I expect from you.
To attend class regularly and punctually and to adhere to the class schedule. To attend class regularly and punctually.
Come to class prepared. Come to class prepared.
Grade and return work in a reasonable amount of time. Fulfill all course assignments and requirements.
Know course material thoroughly and prepare and present it conscientiously. Uphold academic honesty in all activities.
Maintain scholarly, professional, and courteous demeanor in class. Maintain scholarly, professional, and courteous demeanor in class.
Be available at reasonable times for consultation. Keep all appointments except for extreme cases.

Communication is essential in any relationship. Our student-teacher relationship is no exception. If you have any concerns with the class material or logistics, please talk to me as soon as possible.

Tips for Success

There are a variety of effective teaching and learning styles. Part of the challenge of college is learning your individual particular learning style and how to learn from a variety of teaching styles. I will try and use several ways of presenting the material to help you learn the course material. Ultimately you are responsible for learning the material. Here are some things that will help you succeed in this course:

  • Come to class and be on time.
  • Be engaged in class; listen, take good notes, and ask questions as they arise.
  • Read the book, noting any important concepts and unresolved questions.
  • Review your notes.
  • Form a study group with others in the course.
  • Do the assigned problems and as many others as you can, even partially. Solve problems. Solve problems with notes. Solve problems without notes. Solve problems as a group. Solve problems individually. Solve problems!
  • Learn and understand key definitions
  • Come see me in my office if you are having trouble solving a problem.
  • Visit the Quantitative Studies Center for additional help.
  • Focus on learning the material, not just on earning a grade.
  • Keep all returned material, particularly quizes and tests.
  • I want you to succeed in the course, but the learning is your responsibility!

Tips for Problem Solving

One of the goals of this course is for you to improve you problem solving skills. Here are some general problem solving steps.

  • Read and understand the problem.
  • What do you need to know?
  • What do you know?
  • Devise a plan for solving the problem. Is this problem similar to others you have solved?
  • Carry out your plan.
  • Verify you solution.
  • Repeat steps as needed.
  • Note what you have learned solving the problem.
  • Can your solution be generalized?

Academic Support

Accommodations statement: Any student with a disability who believes the requirements of this course may require accommodations or modifications should contact the Learning Support Center (LSC) Director, Dr. Pamela Schwartz, who will work with you to develop a plan for reasonable accommodations based on your information and supporting documentation. If you have completed this process and have requested accommodations through the LSC for this semester, plan to meet with me as early as possible to discuss a plan for implementing these modifications in this class. It is best if we can talk at least one week prior to their implementation. The LSC is located in 114 Ferguson Hall (on the first floor of the administration building) and is open during regular business hours throughout the school year. The main phone is 517/629-0825, and the number for the Adaptive Technology Office is 517/629-0411.

College-Wide Learning Support: Academic support at Albion College is provided through the Academic Skills Center and the Learning Support Center.

  • The Academic Skills Center, located in the Seeley Mudd Building of the Library supports student success at Albion College through the Quantitative Studies Center and the Writing Center. The ASC also operates Study Rooms in various academic areas. For information, visit the ASC website at http://www.albion.edu/asc.
    • The Quantitative Studies Center provides a wide range of support to students in many subject areas. Students are free to drop in for occasional help from trained student tutors or to make appointments for on-going tutorial sessions. QSC staff members are available to assist you with the use of mathematics, statistics, spreadsheets, or graphing calculators in any course. The center also offers workshops on topics such as partial derivatives in chemistry and preparing for graduate school exams. For more information, contact the QSC Director, Karla McCavit, (x0824; kmccavit@albion.edu).
    • The Writing Center provides trained peer consultants prepared to work with writers at every stage of the writing process—from getting started brainstorming to writing drafts, and from organizing ideas to revising or final editing. Writing consultants support students by responding to writing in process, not by proofreading, editing, or writing students' papers. Both drop-in tutoring and scheduled appointments are available during the Writing Center's evening hours. For more information, contact the Writing Center (x0828; writing@albion.edu) or the Director, Scott Hendrix (shendrix@albion.edu).
  • The Learning Support Center, located in 114 Ferguson Hall (the administration building), offers individualized assistance with college-level study strategy and skill development. Students frequently utilize the center to improve grades, reading speed or comprehension. As part of this mission, the LSC also provides individual peer tutoring support for most introductory courses. In addition, the LSC provides assistance and accommodations to students who have documented learning disabilities. For more information, contact the LSC Director, Pamela Schwartz (x0825; pschwartz@albion.edu).

Copyright © 2019, David A. Reimann. All rights reserved.