Building a “Pun Generator” in Python

10:15am - 10:40am on Saturday, October 7 in PennTop North

Max Schwartz

Audience Level:


How do we tell how similar two words are? In spelling this can be tricky, in pronunciation even trickier. This talk will cover some important NLP tools (edit distance, phonetic representation, part-of-speech tagging) with the goal of building the beginnings of a “pun generator.”


The core of this talk will focus on edit distance, an important algorithm in Natural Language Processing (and Computational Biology) for determining how similar two strings are. While some of the coding involved may be beyond the “beginner level” this talk is targeted to, the goal will be to convey an understanding of how this algorithm works to even those with no prior programming experience. I will also introduce various methods of phonetic representation (writing the actual sounds of words), and touch briefly on part-of-speech tagging (identifying words as nouns, verbs, etc.). All of this will tie together to form the beginnings of a “pun generator,” although the first version of this is probably closer to a “Weird Al song title generator.” I will then talk about possible next steps for expanding this.

Want to edit this page?