Vous êtes sur la page 1sur 2

Jump to Today

Course Syllabus
Instructor

Richard LeBlanc

Title

Professor and Department Chair

Office Phone

206-296-5511

Office Fax Phone 206-296-5518


Office Address

ENGR 527

Office Hours

MW 10:30 11:30 AM and by appointment

E-mail

leblanc@seattleu.edu (mailto:leblanc@seattleu.edu)

Location

ADMN 223

Times

MWF 12:30 PM 1:55 PM

Start Date

March 30, 2015

Course Credits

Catalog description: Common features, organization and tradeoffs of modern programming languages including semantics, garbage collection and memory management, and
type systems. Theoretical foundations of languages and computation including regular expressions, language classification, grammars and finite state automaton. Programming using
scripting languages and functional languages.

Course Prerequisites: CPSC 2430 and either MATH 3000 or CPSC 2600.

Required Text
Formal Language: A Practical Introduction (e-book), Adam Brooks Webber, Franklin Beedle and Associates, https://fbeedle.com/content/formal-language-practical-introduction-0
(https://fbeedle.com/content/formal-language-practical-introduction-0)

Recommended Texts
Programming Language Pragmatics, 3rd edition, by Michael L. Scott, Morgan Kaufmann Publishers, ISBN: 978-0123745149
Learning Python, 4th edition, by Mark Lutz, O'Reilly, ISBN: 978-0596158064

Learning outcomes
The course has several interwoven threads of learning and skill development. You will
learn about the formal concepts underlying the basic idea of computation and how they influence programming languages and software development,
learn about the history and relationships among programming languages and their features, and
learn to write programs in Python and in a functional language, F#.
On successful completion of this course, you will be able to
1. Identify key developments in the development of programming languages.
2. Work with finite state machines and regular expressions, demonstrating an understanding of their relationships and how they apply in modern programming languages.
3. Manipulate context-free grammars for programming language features and explain their role in the implementation of compilers and interpreters.
4. Write and debug programs in Python, using a programming style appropriate to the language.
5. Write and debug programs in F#, using a programming style appropriate to the language.
6. Illustrate the primary differences between functional and imperative programming
7. Describe key design choices within various programming languages in regard to language concepts such as names, scope and binding; type systems; and control flow features.
8. Describe a Turing Machine and explain how it relates to the notion of computability.

Grading Policy
Homework Assignments

10%

Programs

30%

Quizzes

10%

Midterm Exam

20%

Final Exam

30%

Attendance Policy
Absences

Because there will be much student participation and several unannounced quizzes, it is important that students attend as many classes as possible. You are not required to attend class
but any absence will likely negatively affect your grade.
Tardiness
You are expected to be in your seat at 12:30 PM. Because of the configuration of the room, late arrivals are disruptive to other students. We occasionally will have a short quiz that will
start promptly at 12:30 and must be handed in within 10 or so minutes, as announced by the instructor.

General course and university policies


Support for students with disabilities
If you have, or think you may have, a disability (including an invisible disability such as a learning disability, a chronic health problem, or a mental health condition) that interferes with
your performance as a student in this class, you are encouraged to arrange support services and/or accommodations through Disabilities Services staff located in Loyola 100, (206) 2965740. Disability-based adjustments to course expectations can be arranged only through this process.

Academic policies on the Registrar website


Be sure that you understand the following university academic policies, posted on the Registrars website: https://www.seattleu.edu/registrar/academics/performance/
(https://www.seattleu.edu/registrar/academics/performance/)

Academic integrity policy


Academic Grading Grievance Policy

Date

Details

Thu Apr 2, 2015

Read about Swift (https://seattleu.instructure.com/courses/1552914/assignments/6501820)

Wed Apr 8, 2015

Read before class: Chapters 1 & 2 of Webber (https://seattleu.instructure.com/calendar?

due by 11:59pm
12am

event_id=2169746&include_contexts=course_1552914#7b2273686f77223a2267726f75705f636f757273655f31353532393134227d)
Fri Apr 10, 2015

Read before class: Chapters 4, 7 & 8 of Webber (https://seattleu.instructure.com/calendar?

12am

event_id=2169747&include_contexts=course_1552914#7b2273686f77223a2267726f75705f636f757273655f31353532393134227d)
Mon May 11, 2015

Midterm Exam (https://seattleu.instructure.com/courses/1552914/assignments/6504041)

Fri Jun 12, 2015

Final Exam (https://seattleu.instructure.com/courses/1552914/assignments/6504042)

due by 11:59pm
due by 2pm

Vous aimerez peut-être aussi