E N D
CNS 4450 Syllabus
Context Language is a tool of thought. We rarely think without words. In solving problems by computer, we eventually get to the point where we think in terms of programming languages. The language we use greatly affects the solutions we develop. It is therefore important to know a number of languages, and, in particular, different styles of languages. C++ and Java are object-oriented languages in the imperative style of programming. There are other programming paradigms (functional, declarative, logic). Learning different language paradigms enhances the thinking and problem-solving process, enables you to move from one language to another with ease, and allows you to pick the right language for the task at hand.
Course Objective This course will help you appreciate the issues and challenges of programming language choice, design, and implementation. We study the prominent programming paradigms with an emphasis on functional programming, to expand your understanding of problem solving with programming languages. Topics include history of programming languages, development environments, types, polymorphism, scope, memory management, and parameter passing methods. The languages discussed include ML, Java, Python, and D.
Prerequisite and Materials • Prerequisite – CNS 3240, Theory of Computation • Text – Webber, Modern Programming Languages: A Practical Introduction, Franklin-Beedle, 2003. • Slides, Syllabus, etc. – www.chuckallison.com • /Courses/4450
Course Mailing List • cs4450@uvu.freshsources.com • It’s how I keep you up-to-date • Also used as a discussion forum • Subscribe by sending an email to: • cs4450-subscribe@uvu.freshsources.com • Reply to confirmation email • Do this ASAP!
Course Grade • Homework 35% • 2 Exams 30% (15% each) • Team Project 15% • Final Exam 20% • Pop Quizzes 5% bonus • Contingent on completing a fair online Student Evaluation of Instructor • Show receipt
Submitting Homework • Word-processed printouts • For programs: • Printed listing • Printed output • Email source code before class • Turn in on time! • Must be submitted in class on due date (see syllabus) • 20% penalty first day • 50% penalty second day (no credit thereafter)
Mid-term Exams • In Testing Center • Oct. 3 – 6 • Nov. 6 – 8 • Closed Book • Unlimited time • Single-sided, 8 ½ x 11 cue sheet • Covers in-class material and reading • See Syllabus for dates (in case of changes)
Final Exam • Monday, December 15, 3-5pm • In class • Comprehensive • Closed book • Single-sided, 8 ½ x 11 cue sheet
Office Hours • Monday, Tuesday, Wednesday • 1:00pm – 2:30pm • Thursday • 1:00pm – 2:00pm • Other times by appointment