               THE TELNET SONG   ("Control-Uparrow Q.")

  Words and music by The Great Quux      (c) 1984 Guy L. Steele Jr.

A function of N.    N = 4 is recommended.

EVERYBODY-SING (

  There is a program called TELNET
  that gets to another CPU.
  Control-uparrow is the escape;
  it's doubled to send it thorugh,
  and "quit" is control-uparrow Q.

  A hacker once used TELNET
  to get to another CPU.
  He knew he could quit whenever he wanted to:
  all he had to do
  was type control-uparrow Q.

  FOR I = 1 TO N (
    Instead the hacker used TELNET
    to get to another CPU.
    He knew he could quit whenever he wanted to:
    all he had to do
    was type FOR J = 1 TO 2^I ( control-uparrow ) Q.
  )

  The hacker soon grew bored of this,
  and wanted to get back.
  He sighed, and started the exponential
  popping of the stack:

  FOR I = N DOWNTO 1 (
    The hacker flushed the TELNET
    to the most distant CPU;
    He couldn't log out until he had killed them all,
    counting up powers of two:
    He typed FOR J = 1 TO 2^I ( control-uparrow ) Q.
  )

  The hacker flushed the TELNET
  to the other CPU;
  He couldn't log out until he had killed them all,
  counting up powers of two:
  He typed control-uparrow Q.

  SPOKEN ( Whew! )

  The hacker's eyes was blood-shot;
  his fingers, back and blue;
  He wanted to log out and go home to bed,
  and sleep for a day or two.
  He typed L O G O U

  SPOKEN (
    T
    carriage return.
  )

  The hacker was on a net-
  work with only twenty CPU's.
  But if he had TELNET-ed to them all,
  he would not yet be thorough
  with typing control-uparrow control-uparrow control-uparrow control-uparrow
              control-uparrow control-uparrow control-uparrow Q!
)
.
WITH-CHORDS (TRANSPOSE (

  G       G       G   
  G       C       C       G
  G   C   G   Em
  A7      D7
  D7      D7      D7      G

  FOR I = 1 TO N (
    G       G       G   
    G       C       C       G
    G   C   G   Em
    A7      D7
    D7  D   Bm  D   Bm  D   Bm ... D7  G
  )

  C       G
  D       G
  C       G   Em  A7
  A7      D7

  FOR I = N DOWNTO 1 (
    G       G       G   
    G       C       C       G
    G   C   G   Em
    A7      D7
    D7  D   Bm  D   Bm  D   Bm ... D7  G
  )

  FOR I = 1 TO 2 (
    G       G       G   
    G       C       C       G
    G   C   G   Em
    A7      D7
    D7      D7      D7      G
  )

  G       G       G   
  G       C       C       G
  G   C   G   Em
  A7      D7
  D7  D   Bm
      D   Bm
      D   Bm
      D   Bm
      D   Bm
      D   Bm
      D7  D7  G
)

