top of page

COMS 4115: Programming Language & Translators, Fall 2021

compiler-linear-icon-modern-outline-logo

Description 

This class will discuss principles of design and implementation of compilers. In particular, we will learn about different phases of a compiler including lexical analysis, syntactic and semantic analysis including type checking, code generation, and optimization. We will also study basic program analysis techniques required to perform compiler optimization.

​

Students will learn the materials by building new modules on top of an existing compiler (Clang/LLVM) in their programming assignments.

Details about the course materials can be found here.

​

Lecture Details

          Instructor: Baishakhi Ray 
Class Schedule: Monday and Wednesday 1:10 PM - 2:25 PM
           Location: CSB 451
     Office Hours:  Wednesday 11:00 am-noon (CEPSR 6LE1)

​

                 Q&A Forum: Ed Discussion

                           Trivia: FAQ

​

Teaching Assistants.        

​

​

     Zoom link to meet TAs

       

Submission Links

​​

Grading

  • Programming Assignments: 50%     

  • Written Assignments: 10%

  • Midterm: 20%

  • Final: 20%

  • Extra Credit: 10%

​

Tentative Schedule

​

​

​

​

​

​

​

​

​

​

Upcoming Events

​

  • Class starts on 13th September

  • Entrance Exam: 15th September

​

Monday, September 13, 2021

 

 

Wednesday, September 15, 2021

  • Entry Exam

 

    

Monday, September 20, 2021

 

Wednesday, September 22, 2021

prog0 released 

Monday, September 27, 2021

  • Lexical Analysis (continues)

    

    

Wednesday, September 29, 2021

  • Lexical Analysis (continues)

written assignment1 released 

prog0 due (11:59pm ET)

Monday, October 4, 2021

prog1 assignment released

Wednesday, October 6, 2021

  

written assignment1 due (11:59pm ET)

Monday, October 11, 2021

  • Syntactic Analysis (continued)

  

   

Wednesday, October 13, 2021

  • Syntactic Analysis (continued)

   

    

Monday, October 18, 2021

   written assignment2 released 

   

Wednesday, October 20, 2021

   prog1 due (11:59pm ET)

Monday, October 25, 2021

     written assignment2 due 

Wednesday, October 27, 2021

  • Midterm Exam

  

 

Monday, November 1, 2021

  • No Class

     

  

Wednesday, November 3, 2021

  • Semantic Analysis (continued)

   

  

Monday, November 8, 2021

  

 

Wednesday, November 10, 2021

prog3 released

      prog2 due (11:59pm ET)

Monday, November 15, 2021

  

  

Wednesday, November 17, 2021

  • code generation

    

   

Monday, November 22, 2021

 

   

Wednesday, November 24, 2021

  • No Class

  

           prog3 due (11:59pm ET)

Monday, November 29, 2021

  

Wednesday, December 1, 2021

  

Monday, December 6, 2021

  

  

Wednesday, December 8, 2021

  

  

Monday, December 13, 2021

  • Final Exam

  

  

Additional Reading Materials:

  • Compilers: Principles, Techniques, and Tools

       By Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman.

       2nd Edition, Addison-Wesley, 2006

 

  • Research Papers

       Distributed by the instructor

Policies:

  • Late submissions: No late assignments will be accepted.

​​

  • Academic rules of conduct: Students are expected to adhere to the Academic Honesty policy of the Computer Science Department, this policy can be found in full here.

​​

  • Violations: Violation of any portion of these policies will result in a penalty to be assessed at the instructor's discretion. This may include receiving a zero grade for the assignment in question and a failing grade for the whole course, even for the first infraction.

​​

  • In order to receive disability-related academic accommodations for this course, students must first be registered with their school Disability Services (DS) office. Detailed information is available online for both the Columbia and Barnard registration processes. Refer to the appropriate website for information regarding deadlines, disability documentation requirements, and drop-in hours (Columbia)/intake session (Barnard). Students registered with the Columbia DS office can refer to the Master TARF section of the DS Testing Accommodations page for more information regarding disability-related academic accommodations for this course.

bottom of page