3. Reverse Mad-Libs
Create a Mad Libs from some examplesConsider the three sentences below and then create a "madlibs" template with the appropriate instructions in each "blank."
The baseball player walked across the street and gave the old panhandler a toonie.
The engineer drove across the country and gave the naive governor a piece of advice.
The ballerina danced across the stage and gave the surly conductor a lump of coal.
First, identify what text is changed from one sentence to the next:
The baseball player walked across the street and gave the old panhandler a toonie.
The engineer drove across the country and gave the naive governor a piece of advice.
The ballerina danced across the stage and gave the surly conductor a lump of coal.
Then, using just the simple grammatical categories "noun," "verb," "adjective", "adverb" create a template that matches all three sentences. To make things a little easier we can tweak these to include "singular noun" and "plural noun" and "present tense verb" and "past tense verb." To get in the mood, we'll write each of these multiword descriptions using "camel case": singularNoun, pluralNoun, presentTenseVerb, pastTenseVerb.
The singularNoun pastTenseVerb across the singularNoun and gave the adjective singularNoun a singularNoun.
Syntax vs. Semantics
Quick sidebar reading
Remind yourself with the relationship between parts of speech,"lexical," "syntactic," and "semantic." See also Are syntax and semantics the same? on StackOverflow.
Strictly speaking our job is done, but let's try filling in the resulting mad-lib. To do so, let's create a stock of nouns, verbs, and adjectives
singularNouns = {horse, dinner tray, deck of cards, toilet seat, computer, book, stick of butter, faith, illness, conversation} pastTenseVerbs = {coughed, fell, flew, ran, waddled, ate, smelled, wrote, loved, spread} adjectives = {rich, poor, hungry, yellow, bedraggled, spiffy, solid, inarticulate}
Now we try to substitute elements chosen from these sets into the place holders in our generic sentence:
The horse ate across the deck of cards and gave the spiffy stick of butter a toilet seat.
Now, if you are seven years old, that's hilarious, but once you get on a few years you are frustrated because some of the words don't quite fit. It's even worse if you end up with something like this:
The illness loved across the computer and gave the hungry book a conversation.
The problem we are identifying here is that our category names are appropriate for the SYNTAX but not the SEMANTICS of the mad-libs sentence.
Syntax refers to the rules of grammar, semantics refers to the meaning of the words and phrases. Let's try formulating our mad-lib again.
In our example sentences, our first noun blank included "baseball player," "engineer," and "ballerina." While all of these are nouns syntactically, we might make the mad-lib work better if we consider semantics too. Perhaps the category is "occupation." Then our set of possibilities might look like this
occupation = {baseball player, ballerina, engineer, waiter, olympic athlete, podiatrist, author, economist}
Or, maybe we'd want to be a little broader and name the category "living thing" or "agent" and have possibilities like:
livingThing = {baseball player, ballerina, engineer, horse, amoeba, rose bush, slime mold} agent = {baseball player, ballerina, engineer, horse, amoeba, robot, algorithm}
And for the second blank, we don't just want a past tense verb, we want one that has something to do with movement, with locomotion.
pastTenseVerbOfMotion = {ran, ambled, flew, slid, jumped, moseyed, rocketed, squirmed}
TO BE ADDED: a "NOW YOU TRY IT" exercise for class. It will involve teams receiving different sets of exemplars and then having a few moments to come up with a generic Mad Libs form and then passing this on to another team (enough copies for each person) and then those folks fill it out according to instructions. Goal is to make the instructions clear enough that you get funny but reasonable sounding results.
The Picture Of Dorian Gray (Oscar Wilde)
The studio was filled with the rich odour of roses, and when the light summer wind stirred amidst the trees of the garden, there came through the open door the heavy scent of the lilac, or the more delicate perfume of the pink-flowering thorn.
The barn was filled with the strong scent of manure, and when the strong wind blew amidst the trees of the garden, there came through the window the smell of diesel, or the more aromatic whiff of gasoline.
The yard was filled with the the smell of fresh cut grass, and when the mini-tornado roared amidst the trees of the garden, there came through the gate the stench of dead camels, or the more frightening scent of burning bicycle tires.
The __ __ was filled with the __ __, and when the __ __ amidst the trees of the garden, there came through the __ __ the __ __, or the more __ __.
The partOfHome was filled with the aSmell, and when the verbPhraseAboutAirMovement amidst the trees of the garden, there came through the wordForAPortal the aSmell, or the more aSmell.
Call me Ishmael. Some years ago — never mind how long precisely — having little or no money in my purse, and nothing particular to interest me on shore, I thought I would sail about a little and see the watery part of the world. It is a way I have of driving off the spleen, and regulating the circulation. Whenever I find myself growing grim about the mouth; whenever it is a damp, drizzly November in my soul; whenever I find myself involuntarily pausing before coffin warehouses, and bringing up the rear of every funeral I meet; and especially whenever my hypos get such an upper hand of me, that it requires a strong moral principle to prevent me from deliberately stepping into the street, and methodically knocking people’s hats off — then, I account it high time to get to sea as soon as I can. This is my substitute for pistol and ball. With a philosophical flourish Cato throws himself upon his sword; I quietly take to the ship. There is nothing surprising in this. If they but knew it, almost all men in their degree, some time or other, cherish very nearly the same feelings towards the ocean with me.
Call me Rover. When I was a puppy — having little or no food in my bowl, and nothing particular to interest me in the backyard, I thought I would run about a little and see the cat part of the world. It is a way I have of fighting depression, and calming my nerves. Whenever I find myself growing giddy; whenever my bark loses its bite; whenever I find myself involuntarily chasing cars, and reading sad poetry; and especially whenever moods get so nasty, that it requires a strong moral principle to prevent me from deliberately stepping into the street, and methodically knocking people’s hats off — then, I account it high time to get to sea as soon as I can. This is my substitute for pistol and ball. With a philosophical flourish Cato throws himself upon his sword; I quietly take to the ship. There is nothing surprising in this. If they but knew it, almost all men in their degree, some time or other, cherish very nearly the same feelings towards the ocean with me.
02 Aug 2018 22:48
Course tags: | Computational Thinking | Human Centered Design | 'Required' Purchase | Recommended Purchase | Request for Library |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Robots and AI | Blockchain | Automation and Control | Seeing Machines | Recognizing Patterns | Flow, Decisions, and Modularity | Spare Session | Wrap Up | Languages | Machines | Sorting and Searching | Pointers, Trees, and Graphs | Information Jigs | Solving Problems with Finesse | Solving Problems with Iteration (aka Pattern Generation) | Counting and Probability | Logic and Boolean Algebra | Welcome and Course Intro |
Go to Course: Computational Thinking | Human Centered Design