Ken Kahn's Ani (MIT, 1978), running again

A guide for teachers

On Ani's Cinderella, learners watch a film made in 1978 by an AI program, ask any character why it does what it does, change the story, and compare Ani's way of thinking with today's language models. This guide has session plans, printable activity cards, discussion questions and practical notes for classrooms, libraries and university courses.

At a glance

Ani is the program in Ken Kahn's MIT PhD thesis (1979), which he rewrote substantially as the technical report AI-TR-540. Given a short description of a story, it reasons its way to an animated film of moving shapes, and records why it made every choice. The film page runs Ken's 1978 program again, in the browser, so learners can question it, change the story and see what Ani does.

Ages
10 and up with an adult nearby; 13 and up on their own; university.
Time
One 45 to 60 minute workshop, or 90 minutes, or three shorter sessions.
Equipment
Laptops or desktops with Chrome, one for every two or three learners; a projector helps.
Internet
To load the page. After that, only for a language model with a key.
Cost
Free, unless you use Claude, ChatGPT or Gemini with a paid key.
Programming
None needed. Ken's notation is there for those who want it.

A good thing to watch first: Ken's 1978 film of Cinderella on YouTube, or a new version made by the site's app, with subtitles and Ken's 1978 narration, cleaned up.

The guide for students has the same activities, numbered the same way, written for learners, with the answers behind What to look for.

What students will learn

A piece of AI history

How AI was done at the MIT AI Lab in the 1970s: knowledge written by hand, reasoning with symbols, programs built from “actors” that send each other messages. The page runs Ani's actual 1978 code, recovered from the lab's backup tapes, on a MacLisp interpreter rebuilt for the revival: not an imitation of it.

Two kinds of AI, side by side

Ani reasons from knowledge Ken wrote by hand; a language model writes from patterns learned from vast amounts of text. On this page they work together (a model can turn a story into Ani's notation, and Ani does the rest), so students meet both in one task and can see what each is good and bad at.

How a program can explain itself

Ken called Ani a “glass box”. Every choice comes with its reasons: the chain from an action up to what the story asked for, the alternatives weighed and their scores, the suggestions kept and set aside, down to the line of code. Students learn what makes an explanation checkable, and how that differs from a model explaining itself after the fact.

Debugging and testing

Predict, run, compare. Change one word and see what changes; find where Ani stops on a new story, read why, and see what the revival's repairs do about it. These are the habits of anyone who builds or tests software, and of scientists running experiments.

Narrative and character

Ani's characters never speak. Personality, feelings and relationships are shown only by how shapes move: fast or slow, straight or curvy, toward someone or away. Students see what a story needs to say, and what a storyteller (or a program) has to invent.

Ages and what they need

No programming is needed. Knowing the Cinderella story helps. Some of the page's text is dense, written for adults: the first line or two of each panel are the important part, and the rest is there on a click.

WhoSuggested activitiesNotes
10 to 12Start here, cards 1 to 6, in pairsAn adult reads the first lines of the side panel aloud with them. Skip the Lisp. Card 5 (a kind stepmother) is the highlight.
13 to 16All of Start here; most of Going furtherHard challenges for keen students. A new story with a model (card 8) works well as a whole-class activity.
16 and up, and universityEverything, with AI-TR-540 and the code pagesGood for courses on AI history, knowledge representation, explainable AI, or computational creativity.

Before the session

Language models: your options

OptionCostWhat leaves the computerGood for
Gemini Nano, built into ChromeFreeNothingChildren's workshops. It needs desktop Chrome on a computer that can run it, and the first use downloads the model (a few gigabytes), so do that before the session on each computer. Its drafts are rougher.
Claude, ChatGPT or Gemini with an API keyPaid by whoever owns the keyThe story and Ani's instructions, sent from the page straight to that companyThe best drafts. Run it on the teacher's computer, on the projector.
The claude.ai copy of the pageEach person's own claude.ai accountThe story, to Anthropic through claude.aiAdults who already use claude.ai, such as university students: no key at all.
Keys in a classroom

An API key works like a password, and whoever has it can spend money on its owner's account.

  • Use your own key, with a spending limit set at the provider.
  • Type it yourself, on a computer you control. Never have students type real keys, and never show a key on a screen, a slide or a board.
  • On shared computers, leave Remember keys in this browser unticked. The key is then kept only in that tab, and is gone when the tab closes.
  • Run Tell Ani a new story as a whole-group activity: the class writes the story, you press the button.
  • If anyone else may have seen the key, delete it at the provider afterwards and make a new one.
Using the claude.ai copy

The site has a copy of the page made to run inside claude.ai: ani-cinderella-claude-artifact.html. Upload it to a claude.ai chat and ask Claude to copy it, exactly as it is, into an HTML artifact. There, Tell Ani a new story offers Claude on the viewer's own claude.ai account, with no key (claude.ai asks the first time), and Gemini Nano.

claude.ai accounts are for adults, so this is not the route for children's workshops.

Poor Wi-Fi, or none

The page carries everything it needs. Once it has loaded, watching the film, asking why and making films all happen in the browser, with no internet. You can also save the page (Ctrl+S, “Webpage, HTML only”) and open the saved file later; save Ani's Choice Points and Ani's Code in the same folder if you want their links to work. Without the internet the page uses plain fonts, and only Gemini Nano, once downloaded, can tell new stories.

Session plans

Card numbers refer to the activity cards below and in the students' guide. Films take a few minutes to make, so start one, then do something else while Ani works.

One workshop 45 to 60 minutes · ages 10 and up · a library, club or class

TimeWhat happensNotes
0–5Hook. Play The Introduction on the projector without explaining anything (or the start of the narrated film, or of Ken's 1978 film). Ask: who's the villain? How can you tell?Movement alone tells them a lot.
5–10Reveal. A program made this in 1978, from a short description. Show What Ani was told.Ani isn't a chatbot: it reasons from knowledge Ken wrote, and records why.
10–20Pairs: cards 1, 2 and 3.Card 3 is the “aha”: the description never says “push”.
20–25Predict. What will a kind stepmother change? Write predictions on the board, then start card 5 on the projector computer (or on every computer).At 4 a second, two to three minutes. Keep the tab in front.
25–35While Ani works: card 4. Then watch the two films side by side and check the predictions.The kind stepmother still stands guard in Kept Apart. Ask why.
35–45Card 6, then the discussion: Ani explains every choice. Can a chatbot?See the discussion questions below.
45–55Optional: tell Ani a new story together (card 8) on the projector.Gemini Nano, or your key on your computer.
55–60Exit: each person finishes the sentence Ani knew … but didn't know …

A longer version 90 minutes, or three sessions of about 30 minutes

PartActivitiesOutcome
1. Watch and ask whyCards 1 to 4; the words to know at the end of the students' guideStudents can find and explain one of Ani's choices from the glass box.
2. Change the storyCards 5, 6, 7, 12 and 13; start one film at the beginning so it is ready halfway throughStudents predict the effect of a change, test it, and explain the differences.
3. New stories and today's AICards 8 to 11; one hard challenge; discussion; a short write-upStudents compare what the language model and Ani each did, and where and why Ani stopped.

A university seminar one or two meetings

  • Before: read the introduction of AI-TR-540 (pp. 11–23, including Ken's walk through the choice of the stepmother's speed) and its discussion of creativity (pp. 205–212).
  • In class: cards 3, 9, 10 and 13, then hard challenges A and C in pairs.
  • Discuss: symbolic AI and language models; what counts as an explanation; who is the author of a generated film.
  • After: a short essay, or a proposal for one piece of knowledge Ani lacks (see Assessment).

Activity cards

Each card says what students do, what they should find, and what to watch for. The students' guide has the same activities in learners' words.

1

Meet the cast

Start here · 5 minutes · any computer
Students do

Watch The Introduction without reading anything, then describe each character from how it moves.

They find

The square (the stepmother) rushes at the star (Cinderella) and shoves it, five times, then chases and hits it; at the end the star and the triangle (the Prince) travel together. Personality and relationships come across without a word.

Watch for

Students reading the side panel first. Ask them to just watch.

2

What was Ani told?

Start here · 5 minutes
Students do

Read What Ani was told, then Show it as Ani read it. Name three things the film shows that the description doesn't mention.

They find

The description has the characters' words, how they feel about each other, and five scenes, each with tasks and a mood, rhythm and length. It never says where anyone stands, how fast they go or what they do: Ani decides all of that.

Watch for

The Lisp can put younger learners off. It's optional.

3

Ask the stepmother why

Start here · 10 minutes
Students do

Pause The Introduction while the square pushes the star, click the square and open Why.

They find

The chain of reasons: she pushes Cinderella around to establish that she dominates and hates her, as the film description asks. The word “push” is nowhere in the description: pushing is Ani's way of showing that relationship. Why so long: the push repeats five times because Ken's code for it says so, and the scene is meant to be long, 30 to 75 seconds.

Watch for

Clicks that miss the shape. The ◂ and ▸ buttons step one frame at a time.

4

A moment when no one moves

Start here · 10 minutes
Students do

Find the stillness near the end of The Meeting, at 24 a second, or the slanted no one moves line in The Meeting, part by part. Click it, and open Why no one moves.

They find

About six seconds where nothing moves. The last part is only feelings (Cinderella and the Prince are very happy); Ani shows feelings by changing how characters move, but no one is moving, so nothing shows. AI-TR-540 says such changes cannot stand alone (p. 125). With the revival's extensions (SEEN), the two wander about instead.

Watch for

At 4 a second the pause is under two seconds and easy to miss: use 24.

5

Make the stepmother kind

Start here · 15 minutes, 2 to 3 of them waiting
Students do

Write down three predictions. Change the story, A kind stepmother, Make the film; then watch side by side.

They find

Made by Ani as in 1978, 21 of the 102 choices of how the characters move come out differently (the stepmother is slower and less deliberate, and now likes others). In The Introduction she no longer pushes and hits Cinderella; she goes to her and keeps her company. But in Kept Apart she still stands guard: the scene's tasks, which weren't changed, say she prevents the meeting. Character words change how characters move; the plot lives in the scenes. (At 4 a second, the fairy godmother also stands guard in No Longer Kept Apart, keeping the stepmother away.)

Watch for

Tabs left in the background: Chrome slows them. Give waiting students card 4 or 6 to do.

6

Find a word Ani doesn't know

Start here · 10 minutes
Students do

Open Change the story and read the notes under the word lists before changing anything.

They find

Ken's own story has the fairy godmother is protective of Cinderella; Ani knows only “is protective to”, so the word is remembered but suggests nothing. And “strong”, a word for personality, is given as the Prince's looks. Neither stopped Ani in 1978.

Watch for

A good bridge to discussion: should a program stop when it meets something it doesn't understand, or carry on quietly?

7

Why is the Prince in the first scene?

Going further · 10 minutes
Students do

Click the triangle at the end of The Introduction (the description of that scene names only Cinderella and the stepmother), then Cinderella, and open Why.

They find

Cinderella goes to the Prince and goes along with him to establish what Cinderella is like. To show a trait, Ani may need someone to show it with, and brings them in.

Watch for

A chance to talk about inference: Ani adds what the description implies but never says.

8

Tell Ani a new story

Going further · 20 minutes · needs a language model
Students do

Tell Ani a new story; a ready-made story (Red Riding Hood, The Tortoise and the Hare, Beauty and the Beast) or their own; Write the film description; read the result before making the film.

They find

The description in plain words; notes where the page tidied it; any problems Ani's checks found, with a button to ask the model to fix them; and differences from the story they told. Ani can show only what characters are like, how they feel and what they do to each other, so talking, objects and places have to become chases, guarding, rescues and feelings.

Watch for

Models inventing characters, or making a prize or a place into a character. That is worth discussing, not just fixing. Simple stories of a few characters who love, hate, chase, guard and rescue work best.

9

Where Ani stops, and why

Going further · 15 minutes
Students do

Make a new story with Ani as in 1978. If it stops, read Where Ani as in 1978 stopped and What Lisp said; then Make it again with the revival's extensions.

They find

A plain-English reason for each stop, with the 1978 program's own message. For example, a tortoise-and-hare story stopped because nothing suggested how active the hare should be, so pass 1 gave up on it and pass 2 couldn't go on. Made again, the side panel says what each repair did.

Watch for

Students treating a stop as the page breaking. It is Ani as Ken left it, meeting a story he never gave it.

10

Ani as in 1978, or with the revival's extensions

Going further · 15 minutes, about 3 of them waiting
Students do

Make Ken's story, unchanged, with Ani with the revival's extensions; read Which extensions; compare with Ken's film.

They find

None of the 102 choices of how they move change, but Ani now draws the characters itself (at the time of writing, Cinderella as a small purple hexagon and the Prince as a large red circle, for example) and says why. The Introduction gains new parts (Cinderella helps the Prince along, and follows her stepmother), and at the end of The Meeting the two wander instead of standing still.

Watch for

The question underneath: if new code is written in Ken's style from his own ideas, whose program is it?

11

The scene Ken left out

Going further · 15 minutes, about 5 of them waiting
Students do

Change the story, Cinderella beautified, make the film; watch the new scene; click Cinderella in the scenes after it.

They find

Ken wrote this scene in 1978 and left it commented out. Made with the extensions, the fairy godmother goes to Cinderella and transforms her at once (she is magical: the revival's rule); then Ani takes a fresh look at Cinderella as if the character were brand new (AI-TR-540, p. 168), and the side panel says how she has changed.

Watch for

It needs the extensions; the page switches to them for this scene.

12

Two films of one story

Going further · 10 minutes
Students do

Watch a scene at 24 a second, then at 4, and find differences; then compare a film of their own with Ken's, side by side.

They find

The two rates are two different runs: even The Introduction is filmed differently (about 38 seconds at 24, about 48 at 4), and each later scene is planned from where the last one's filming left the characters. 24 is the rate of Ken's camera; 4, of his TV previews and the flipbook printed in AI-TR-540.

Watch for

A good moment to ask what “the” film is, when one program and one story give two.

13

Inside a choice point

Going further · 15 minutes
Students do

Open Ani's Choice Points, read the stepmother's speed (As the thesis tells it), then explore others.

They find

The stepmother's speed (high) was decided at attempt 825 of 836, after 10 postponements. The four characters' speeds wait on one another until the film's focus breaks the deadlock. Ken walks through this choice on pp. 20–23 of AI-TR-540.

Watch for

The table is dense. Point students at one cell at a time.

A–E

The hard challenges

Hard · 20 to 45 minutes each · keen students, older students
Why hard

Each depends on what Ani actually does, which is found only by running it, so a frontier AI model asked the same question usually gets it wrong too. Have students record a prediction before they check, and let them compare a chatbot's predictions with theirs.

  • A. Predict before you look (a shy Prince): score their predictions of the Prince's nine ways of moving against How Ani's choices changed.
  • B. Make it happen: change words until the film meets a target (the Prince slower than Cinderella; a mean stepmother who never touches Cinderella in The Introduction). Some targets may be impossible; accept a well-evidenced argument that one is.
  • C. Explain a curve: a chain of “because”s from Ken's words to Cinderella's curving path. Expect: high curvature, suggested because she is graceful and good (the opposite of evil) and by the film's variety and energy; a “low” from the film's low flashiness was set aside. The stepmother's path curves little.
  • D. A part that takes no time: part 4 of The Introduction, “Cinderella helps the Prince”, lasts 0 seconds, because the 1978 Ani had no way to show helping; with the extensions (KNOW) it has one.
  • E. A story the 1978 Ani can film: two or three characters, at least two scenes, no stop. It usually takes several tries; the notes on each stop are the learning.

Discussion questions

Each opens on a click to what to listen for.

Ani explains every choice. Can a language model?

Listen for the difference between a record of the reasons a program actually used and a plausible explanation written afterward. Ani's reasons can be checked against its code; a model's explanation of itself is more text it generated. But Ani's explanations are only as good as Ken's rules, and a model can explain many things Ani never could.

What does it mean that Ani can't show winning?

The page tells the language model that Ani can't show places, objects, races, winning or speech, so a win becomes the winner's joy and pride and the loser's shame. AI-TR-540 says Ani cannot handle very concrete expressions such as “a glass slipper” (p. 19). Listen for: Ani knows characters, feelings, relationships and movement, nothing else; winning needs a race, rules and a finish line. What would Ani need to know to show it?

Who made the Cinderella film: Ani, or Ken?

Ken asked it himself: who really made the Cinderella film — Ani or me? (p. 207). His answer is that it is a matter of degree: how many levels of reasoning, how many choices, how much knowledge. Extend it: who made a film from a student's story, told by a language model, planned by Ani, with repairs written in 2026?

Is Ani creative?

Ken lists the objections, among them Ani only does what it's told, humans only sometimes do (p. 209), and then argues against them: Ani has rules for when to follow, change or reject its own suggestions, and breaks them often (pp. 210–211). Students can find examples in the glass box: suggestions set aside.

The kind stepmother still keeps Cinderella from the Prince. Bug, or feature?

Listen for the idea that the description has two parts, the characters and the scenes, and that changing one doesn't rewrite the other. Is a stepmother who is kind but still stands guard a contradiction, or a more interesting character?

Ani stops when it meets something it can't handle; a language model always writes something. Which would you rather have?

Listen for: it depends what's at stake. A stop is honest but unhelpful; a confident answer is helpful but can be wrong. Ani also carries on quietly in places (the word it doesn't know in Ken's own story): is that better or worse than stopping?

Is a film made with the revival's extensions still Ken's Ani's film?

The extensions are new Lisp, written in Ken's style from ideas in AI-TR-540, in files of their own. Ken's 1978 film is always shown as it was made. Is a repaired Ani the same program? (A version of the Ship of Theseus.)

Ani's knowledge was written by one person. A language model's comes from millions. What follows?

Listen for bias (whose ideas of “evil” or “graceful”?), for mistakes and who can find and fix them, and for who is responsible for what the program does.

Quotes worth discussing

From AI-TR-540; the page numbers here and throughout this guide are its.

Ani is built upon the principle that as few decisions as possible be determined arbitrarily.Ken Kahn, AI-TR-540, p. 22
Difficult choices are postponed to be resumed when more of the film has been determined.p. 2
The essence of animation is change.p. 168
Ani is a creative entity that is a “glass box” that we can look inside …p. 208
… one can learn much from a relatively simple model of a complex process because of its very simplicity.p. 13

Assessment ideas

LevelWhat it looks like
DescribesSays what happens in the film, or what changed.
Explains with evidenceSays why, quoting Ani's reasons from the page.
Explains and generalizesUses the evidence to say something about how Ani works, what it knows, or how it differs from people or from language models.

Troubleshooting

A film is taking a long time

Keep its tab in front: Chrome slows tabs in the background, and the status line above the film says when Chrome has paused it. At 4 frames a second a film takes two to three minutes on a recent computer, about five with Ken's beautified scene, and about a quarter of an hour at 24. Each scene plays as soon as it is filmed. Stop, beside the status line, ends the run.

Ani stopped

That is Ani as Ken left it, meeting a story he never gave it. The side panel says where and why, in plain words, with what Lisp said a click away. Make it again with the revival's extensions usually gets further. Stops make good discussion (card 9).

The model invented characters, or changed the story

Read the plain-words summary before making the film. Ask the model to fix the problems the page lists, try a stronger model, or open the description in the editor (Look it over, then make the film) and change it there. Small models such as Gemini Nano write rougher drafts. Short, simple stories work best.

Gemini Nano isn't offered, or is downloading

It is built into recent desktop Chrome, on computers that can run it, and downloads the first time it is used (a few gigabytes). If it isn't offered, that computer or browser can't run it; use a key on the teacher's computer instead.

The key doesn't work

Check that the key is for the provider chosen (Claude needs an Anthropic key, ChatGPT an OpenAI key, Gemini a Google AI key), that the account has credit, and that the model chosen is available to it. The page shows the provider's message.

The characters look different in a new film

Made with the revival's extensions, Ani chooses each character's shape, size and colors itself (APPEAR), and the side panel says why. Ken's 1978 film is always drawn as Ken drew it.

A film made earlier has gone

The page keeps films in the browser that made them. A private or guest window, a different computer, or clearing the browser's data loses them. To keep a film, use Save: a film file opens on the page again later, with all of Ani's reasons; a video plays anywhere.

Safety and privacy

What the page keeps. In the browser on that computer only: settings (the frame rate, TV or color, which Ani and which extensions, which model), the story being told, the description being edited, and the films made there, so they are still there after a reload. API keys are kept only if Remember keys in this browser is ticked. Nothing is kept on a server. On shared computers, a Chrome guest window forgets everything when it closes; otherwise clear the site's data afterwards.

What leaves the computer. Nothing about the stories, unless someone:

  • uses Claude, ChatGPT or Gemini with a key: the story and Ani's instructions go from the page straight to that company, under its terms (Gemini Nano runs on the computer, and nothing leaves it);
  • chooses Send this story to Ken, which the site offers for a story of one's own, where Ani stopped on it and in the Save panel: the page shows exactly what will be sent (the story, the description, the model, where Ani stopped, nothing about the person) and sends it only on Send it.

Loading the site fetches its fonts from Google Fonts. And on the site, if something goes wrong in the page, an error report goes to Ken through Sentry, an error-reporting service, so that he can fix it, without any story, key or personal data, as the film page's footer says.

Children. Ask them not to put real names, addresses or other personal details into stories. Model providers' terms have age limits and claude.ai accounts are for adults, so with children use Gemini Nano or your own key on your own computer.

Content. Ani's films are abstract shapes; in Ken's Cinderella the stepmother pushes and hits Cinderella, shown as shapes bumping. Language models can write unexpected things; the page shows the description in plain words before Ani films it.

Background reading