1 / 18

COP4020/CGS5426 Programming languages Syllabus

COP4020/CGS5426 Programming languages Syllabus. Instructor. Xin Yuan (xyuan@cs.fsu.edu) Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website: Blackboard and http://www.cs.fsu.edu/~xyuan/cop4020. Teaching Assistants. Jiefei Cai, Office: Lov 020 Email: cai@cs.fsu.edu

oprah-bass
Download Presentation

COP4020/CGS5426 Programming languages Syllabus

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COP4020/CGS5426 Programming languages Syllabus

  2. Instructor Xin Yuan (xyuan@cs.fsu.edu) Office: 168 LOV Office hours: T, H 10:00am – 11:30am Class website: Blackboard and http://www.cs.fsu.edu/~xyuan/cop4020

  3. Teaching Assistants Jiefei Cai, • Office: Lov 020 • Email: cai@cs.fsu.edu • Office hours: TBD Carlos Sanchez • Lov 171 (mobile lab) • Email: crs09e@my.fsu.edu • Office hours: TBD

  4. Course Objectives • Understand concepts in programming languages • Be able to explain common language constructs and features • Be able to explain the subtlety in language features such as scoping, binding, and parameter passing. • Be able to simulate useful features in languages that lack them • Understand the general approach to implement a language. • Be able to write a programming language translator (compiler/interpreter). • Be able to program in procedural, object-oriented, functional, and logical programming languages • Functional programming, logical programming • Ultimate goal: be able, in principle, to design a new programming language

  5. Prerequisites • COP 4530 Data structures • Working knowledge of the UNIX environment • Proficiency in C or C++

  6. Course Material • Lecture notes (posted at the class website) • Textbooks: • Michael Scott, Programming Language Pragmatics, 3rd Edition

  7. Class Grading • Midterm (20%) • Final (30%) • Covers the whole course • Programming projects (25%) • Oral presentation and paper (10%) • Quizzes and homework assignments (15%)

  8. Presentation • Oral • Written (paper) • Must pass (70% or above) the oral and written presentation in order to pass the course • This is a cornerstone requirement from the upper level.

  9. Programming projects • Programming projects (25%) • Language implementation (partial compiler) • Alternative programming • Complete project within due date • 10% penalty each day for up to two days for late submission

  10. Letter grades • A : 94-100% C+: 77-79% D-: 60-62% • A-: 90-93% C: 73-76% F: 0-59% • B+: 87-89% C-: 70-72% • B: 83-86% D+: 67-69% • B-: 80-82% D: 63-66% To get C- or above, you must have a C- for the project and the combined grade.

  11. Computer Accounts • Computer science account • Various tools • SSH, E-mail, text editor, g++, make • All programming assignments should be done on the CS servers (linprog). • FSU account • Receiving class emails • Please communicate with the instructor and the TA using a fsu account (cs or FSU). Emails from outside fsu (yahoo, hotmail, gmail, etc) may be ignored (or filtered).

  12. Tentative schedule • Week 1: Introduction (Chapter 1) • Week 2: Syntax (Chapter 2) • Week 3: Syntax (Chapter 2) • Week 4: Names Scopes, and Bindings (Chapter 3) • Week 5: Semantics (Chapter 4) • Week 6: Semantics (Chapter 4) • Week 7: Axiomatic Semantics • Week 8: Control Flow (Chapter 6) • Week 9: Midterm • Week 10: Spring Break • Week 11: Subroutines and Parameter Passing (Chapter 8) • Week 12: Exception Handling (Chapter 8) • Week 13: Functional Programming (Chapter 10) • Week 14: Functional Programming (Chapter 10) • Week 15: Logic Programming (Chapter 11) • Week 16: Logic Programming (Chapter 11)

  13. Academic honor policy • Read the student handbook • All violations will be processed by the university • Step 1 penalty: 0 grade for the particular homework/project/exam AND 1 letter grade downgrade for the final course letter grade (e.g. B->C).

  14. Your Responsibilities • Understand lecture and reading materials • Attend office hours for extra help, as needed • Uphold academic honesty • Turn in your assignments on time • Check class Web page and your email account and regularly

  15. Dos and Don’ts • Do share debugging experiences • Do share knowledge of tools • Do acknowledge help from others • Do acknowledge sources of information from books and web pages

  16. Dos and Don’ts • Don’t cheat • Don’t copy code from others • Don’t paraphrase code from others either • E.g., changing variable names & indentations • Don’t leak your code to any place • There is no difference in terms of penalty between copying and being copied. • All honor code violation will be resolved through the Office of the Dean and the Faculties. • Zero for the particular assignment/exam AND one letter grade deduction for the level 1 agreement (first violation).

  17. Course Policies • Attendance mandatory • There are no make-up exams for missed exams unless one (1) has a good excuse AND (2) notices the instructor before the exam. • Students with disabilities • Report to Student Disability Resource Center • Bring me a letter within the first week of class

  18. To see or not to see me & TA • We are not psychics • Please let us know if… • Class is too hard • You don’t have the background • Class can be improved in certain ways • When in doubt, email us…

More Related