Skip to content


Repository files navigation

Computational Linguistics 2


This is the primary course website for Computational Linguistics 2 (Lin 637), offered by the Department of Linguistics at Stony Brook University. For a brief list of topics, check the syllabus.

This repository is publicly accessible and hosts the LaTeX source code for the lecture notes. Compiled pdfs of each chapter are available in the pdf folder.


This course assumes a certain degree of familiarity with generative syntax, phonology, and basic mathematics (sets, functions, relations, first-order logic). Please take the online survey to ensure that you satisfy the prerequisites. Giving a few wrong answers is okay, but if you feel that you do not know enough in a certain area, you should brush up on that in the first two weeks of the class. Relevant materials are suggested in the readings repository (access restricted to enrolled students).

In addition, you will have to use Python and possibly markdown and/or LaTeX at various points during this course. The link list at the end of this document has some useful tutorials.

If you don't want to deal with installing Python and git, you can download our virtual machine that already comes with everything preconfigured.


Course readings are made available through the private readings repository. You must be enrolled in this class in order to get access.


Each homework will be hosted in its own private repository. Only course participants have access to these repositories. Each assignment will be announced in GitHub's issue tracker. I recommend that you watch this repository and configure GitHub to email you update notifications.

Compilation instructions

If you want to compile the lecture notes yourself, or use them as the basis for your own course, carefully follow the steps below.

  1. Make sure you have all necessary software installed and set up correctly, in particular

    • a recent LaTeX distribution with Tikz >= 3.00 and recent versions of minted and forest
    • the Python pygments package (required by minted)
  2. Clone the repository via git, or download and extract the zip file. Note that the project folder will also contain an empty build folder, which is used for temporary files to speed up compilation.

  3. Use the standard tex --> pdf compilation tool chain (not tex --> dvi --> ps --> pdf), but make sure that pdflatex is run with the parameters --shell-escape and --etex.

Useful links

Using git





fficial course website for Compuational Linguistics 2 (LIN 637), Stony Brook University, Spring 2024






No releases published


No packages published