Daisy Bell in “2001: A Space Odyssey”

By Xah Lee. Date: . Last updated: .

Daisy Bell is a waltz. Famously used in the movie 2001: A Space Odyssey , sung by the artificial intelligence computer HAL 9000 in his demise.

In the movie “2001”, Daisy Bell is sung by the fictional machine HAL 9000.

HAL 9000
HAL 9000's brain room.
HAL 9000 sings Daisy Bell.

2001: Space Odyssey Buy at amazon

Daisy, Daisy,
Give me your answer do!
I'm half crazy,
All for the love of you!
It won't be a stylish marriage,
I can't afford a carriage
But you'll look sweet upon the seat
Of a bicycle built for two.

Daisy Bell, Music and lyrics by Harry Dacre, 1892.

There is a flower
Within my heart,
Daisy, Daisy!
Planted one day
By a glancing dart,
Planted by Daisy Bell!
Whether she loves me
Or loves me not,
Sometimes it's hard to tell;
Yet I am longing to share the lot -
Of beautiful Daisy Bell!

Daisy, Daisy,
Give me your answer do!
I'm half crazy,
All for the love of you!
It won't be a stylish marriage,
I can't afford a carriage
But you'll look sweet upon the seat
Of a bicycle built for two.

We will go “tandem”
As man and wife,
Daisy, Daisy!
“Peddling” away
Down the road of life,
I and my Daisy Bell!
When the road's dark
We can both despise
P'licemen and “lamps” as well;
There are “bright lights”
In the dazzling eyes
Of beautiful Daisy Bell!

Daisy, Daisy,
Give me your answer do!
I'm half crazy,
All for the love of you!
It won't be a stylish marriage,
I can't afford a carriage
But you'll look sweet upon the seat
Of a bicycle built for two.

I will stand by you
In weal or woe,
Daisy, Daisy!
You'll be the bell(e)
Which I'll ring you know!
Sweet little Daisy Bell!
You'll take the “lead”
In each “trip” we take,
Then if I don't do well,
I will permit you to
Use the brake,
My beautiful Daisy Bell!

IBM 7094 sing Daisy Bell

IBM 7094 sing Daisy Bell

In 1961, the IBM 7094 became the first computer to sing, singing the song Daisy Bell. Vocals were programmed by John Kelly and Louis Gerstman, and the accompaniment was programmed by Max Mathews.

Perl program singing Daisy Bell

# perl

# This Perl script sing the song “Daisy Bell”, composed by Henry Darce, 1892.
# It uses voice synth in Mac OS. (it only runs in Mac OS)

# Author: David Seay <http://www.mastercall.com/g-s>, 1998.
# Modifed by Charles Albrecht to add accidentals & sing "Daisy Bell"
# Further modified by Jim Miner <jfm@winternet.com> to normalize tempo
# Still Further Modifications by Brian McNett <brianmc@telebyte.net>
# (removed messy string concatenation, added quit-if-runtime)

# This script is dated 1998 and it runs in MacPerl in Mac OS at the time.
# This script also works in Mac OS X 10.4 or later (with just /usr/bin/perl).
# For Mac OS X before 10.4, you need to download the Mac::Carbon module from CPAN.
# — Xah Lee, 2005-10
# this script is hosted at
# http://xahmusic.org/music/daisy_bell.html

use Mac::Speech;

$noteNames =    "c  d  e  f  g  a  b  C  D  E  F  G  A  B  C1";
$scalePitches = "48,50,52,53,55,57,59,60,62,64,65,67,69,71,72";
@noteNames = split("  ",$noteNames);
@scalePitches = split(",",$scalePitches);
$pitches = @scalePitches;
for ($p = 0; $p < $pitches; $p++) {
        $pitch{$noteNames[$p]} = $scalePitches[$p];
}

$tempo = 240; # quarter notes per minute, approx.
$tempo_factor = 100 / $tempo; # seconds per quarter note

# NOTE DURATIONS
$dur{e}   = .5;   # eighth note
$dur{de}  = .75;  # dotted eighth note
$dur{q}   = 1;    # quarter note
$dur{dq}  = 1.5;  # dotted quarter note
$dur{h}   = 2;    # half note
$dur{he}  = 2.5;  # half note + an eighth
$dur{dh}  = 3;    # dotted half note
$dur{dhe} = 3.5;  # dotted half note + an eighth
$dur{w}   = 4;    # whole note

# ACCIDENTALS
$acc{s} = 1;      # sharp
$acc{n} = 0;      # natural
$acc{f} = -1;     # flat

# FORMAT FOR '$song' = syllable pitch accidental duration
$song = <<SONG;
. c n h, daay A s dh, zeee G n dh, daay D s dh, zeee a s dh,
give c n q, me d n q, your d s q, aaan c n h, sir d s q, doooo a s w,
I'm F n dh, halff A s dh, craay G n dh, zeee D s dh,
alll c n q, for d n q, the d s q, love f n h, of g n q, you f n w,
it g n q, won't g s q, be g n q, uh f n q, sty a s h, lish g n q,
mare f n q, ridge d s w,
I f n q, can't g n h, uh d s q, ford c n h,
uh d s q, care c n q, ridge a s w,
but a s q, you'll d s h, look g n q, sweet f n q, . c n h,
upon d s h, the g n q, seat f n q, of g n e, uh g s e,
buyy a s q, sick g n q, ul d s q, built f n h, for a s q, two d s w
SONG

@song = split(",",$song);
$songNotes = @song;

$count = CountVoices();
for ($i = 0; $i++ < $count; ) {
        $voice = GetIndVoice($i);
        $desc  = ${GetVoiceDescription($voice)};
        # some voices won't change pitch
        # try 'Zarvox' or 'Pipe Organ' or 'Cellos' or 'Bad News'
        if ($desc =~ /Zarvox/) {
                $channel = NewSpeechChannel($voice) or die $^E;

                for ($n = 0; $n < $songNotes; $n++) {
                        ($word,$note,$sharp,$dur) = split(" ",$song[$n]);

                        SetSpeechPitch $channel, $pitch{$note}+$acc{$sharp};
                        SpeakText $channel, $word               or die $ ^E;
                        select(undef, undef, undef, $tempo_factor * $dur{$dur});
                        StopSpeech $channel or die $^E;
                }
                DisposeSpeechChannel $channel;
        }
}

# MacPerl::Quit(1)

MIDI Files

Modern Tech Computer Singing

For modern tech of computer singing, see: Art: Vocaloid, Hatsune Miku