To my linguistics homepage

LING/C SC/PSYC 438/538
Computational Linguistics
Fall 2025

This is a introductory course in computational linguistics at an advanced level. No pre-requisites for graduate students, we will learn the rudiments of programming and the theoretical underpinnings of grammar systems from scratch.

Reference Textbook

Optional: Speech and Language Processing 2nd edition, by D. Jurafsky and J.H. Martin, Prentice-Hall 2008. Or 3rd edition PDF.

Software

All software used in this class will be freely available.
We will use Python, Perl and SWI-Prolog as programming languages.
The instructor reserves the right to ask students to install additional software necessary to do some homework exercises.

Instructor: Sandiway Fong sandiway@arizona.edu
Office: Douglass 311 (send email for an appointment or take a chance and drop by before/after class)

Administrivia

Location Psychology, Rm 206
Time Tuesdays/Thursdays 9:30AM - 10:45AM

Syllabus

See lecture1 slides.

Lecture Notes

Available in Adobe PDF and Microsoft Powerpoint .pptx formats.

August

Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint
8/26 lecture1.pdf lecture1.pptx 36 Viewer Administrivia and Introduction. Syllabus.
Homework 1: read PDF of chapter 1 of textbook for Homework 3 next time here.
Homework 2: Install Perl and Python.
A note on programming languages. AI and coding.
8/28 lecture2.pdf lecture2.pptx 32 Viewer Language and computers: openai /whisper, assitive technologies and limits. Recursive nature of language. Introduction to natural language analysis: syntactic structure. Parser demos, ChatGPT.
Homework 3

September

Date Lecture Notes Number
of Slides
Panopto Topic
PDF Powerpoint
9/2 lecture3.pdf lecture3.pptx 25 Viewer Homework 3 Review. What is a Language Model: a look at text completion. English subject verb agreement. Quotes. ChatGPT-2 to 5. Homework 4: using GPT-2, Stanza and Berkeley Neural Parser.
9/4 lecture4.pdf lecture4.pptx 18 Viewer Beginning programming with Perl: focusing on proper use of quotes. QWERTY keyboard history. ChatGPT help.
world.perl / world.py
9/9 lecture5.pdf lecture5.pptx 33 Viewer Homework 4 review and extensions. A bit more on quoting. Installing WSL2 / Ubuntu on Windows 11. perlintro: scalars and arrays.
9/11 lecture6.pdf lecture6.pptx 35 Viewer perlintro contd. Numeric and string equality. Coercion. Repetition. General looping: while, for, foreach. List range. Useful string functions, including chomp and split. tr. String length: bytes vs. characters.
File I/O: open and <filehandle>.
Files: falconheavylaunch.txt
Homework 5.
HW files: 3letters.txt / 4letters.txt / 5letters.txt / 6letters.txt
9/16 lecture7.pdf lecture7.pptx 25 Viewer Homework 5 review. Scrabble word length statistics. Worked file I/O example. Split and summing the words. Word frequency table using hash tables. Sorting in Perl, Python and on the command line.
Files: falconheavylaunch.txt
Terminal log: terminal7.txt
9/18 lecture8.pdf lecture8.pptx 29 Viewer Hash and dict in Perl and Python, respectively. Anonymous arrays in Perl. Part of Speech dict example. Homework 6 on spelling rules + disemvoweling.
Files: hw6template.perl
9/23 lecture9.pdf lecture9.pptx 37 Viewer Homework 6 review. Perl references. Perl Modules: cpan. Date::Calc. Python library timedate.
Ungraded homework: install Lingua::EN::CMUDict, the CMU Pronouncing Dictionary.
File: dow.perl
9/25 lecture10.pdf lecture10.pptx 37 Viewer Digital advertising. Clickbait. Homework 7. Perl regex.
9/30 lecture11.pdf lecture11.pptx 22 Viewer A note on Homework 7. ChatGPT and clickbait.
"The lines of code that changed everything"
Getting deeper into Perl regex. Capture, backreferences, shortest vs. greedy matching, nondeterminism (backtracking).
Does Clickbait Actually Atract More Clicks? Three Clickbait Studies You Must Read


To my linguistics homepage
Last modified: Mon Aug 11 15:52:05 MST 2025