0% found this document useful (0 votes)
16 views52 pages

A Computer Science Tapestry Exploring Computer Science With C 2nd Edition Owen L. Astrachan - Own The Complete Ebook Set Now in PDF and DOCX Formats

The document promotes various eBooks available for download on ebookname.com, including titles on computer science and programming. It introduces the concept of computer science, emphasizing its complexity and the importance of programming as a core component. The text also discusses algorithms and their significance in problem-solving within the field of computer science.

Uploaded by

icyicytxiia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views52 pages

A Computer Science Tapestry Exploring Computer Science With C 2nd Edition Owen L. Astrachan - Own The Complete Ebook Set Now in PDF and DOCX Formats

The document promotes various eBooks available for download on ebookname.com, including titles on computer science and programming. It introduces the concept of computer science, emphasizing its complexity and the importance of programming as a core component. The text also discusses algorithms and their significance in problem-solving within the field of computer science.

Uploaded by

icyicytxiia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Endless Ebook, One Click Away – Start Downloading at ebookname.

com

A Computer Science Tapestry Exploring Computer


Science with C 2nd Edition Owen L. Astrachan

https://ebookname.com/product/a-computer-science-tapestry-
exploring-computer-science-with-c-2nd-edition-owen-l-
astrachan/

OR CLICK HERE

DOWLOAD EBOOK

Browse and Get More Ebook Downloads Instantly at https://ebookname.com


Click here to visit ebookname.com and download ebook now
Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Connecting with Computer Science 2nd Edition Greg


Anderson

https://ebookname.com/product/connecting-with-computer-
science-2nd-edition-greg-anderson/

Algorithms in C Computer Science Series 1st Edition


Sedgewick

https://ebookname.com/product/algorithms-in-c-computer-science-
series-1st-edition-sedgewick/

Computer Science Research and Technology 1st Edition


Karl C. Verdinand

https://ebookname.com/product/computer-science-research-and-
technology-1st-edition-karl-c-verdinand/

A Short History of Cultural Studies 1st Edition John


Hartley

https://ebookname.com/product/a-short-history-of-cultural-
studies-1st-edition-john-hartley/
David Buschs Compact Guide for the Nikon D3000 1st
Edition David D. Busch

https://ebookname.com/product/david-buschs-compact-guide-for-the-
nikon-d3000-1st-edition-david-d-busch/

Perspectives on Astronomy Media Edition Michael A.


Seeds

https://ebookname.com/product/perspectives-on-astronomy-media-
edition-michael-a-seeds/

Windows Azure Web Sites 1st Edition James Chambers

https://ebookname.com/product/windows-azure-web-sites-1st-
edition-james-chambers/

A Reading Course in Homeric Greek Book 1 3rd Revised


Edition Raymond V. Schoder

https://ebookname.com/product/a-reading-course-in-homeric-greek-
book-1-3rd-revised-edition-raymond-v-schoder/

Central Banking Monetary Policy and the Future of Money


1st Edition Guillaume Vallet

https://ebookname.com/product/central-banking-monetary-policy-
and-the-future-of-money-1st-edition-guillaume-vallet/
Rahul Dravid Timeless Steel Espn Cricinfo

https://ebookname.com/product/rahul-dravid-timeless-steel-espn-
cricinfo/
June 7, 1999 10:10 owltex Sheet number 22 Page number 3 magenta black

Computer Science and


Programming 1
The computer is no better than its program.
Elting Elmore Morison
Men, Machines and Modern Times

Science and technology, and the various forms of art, all unite humanity in a single and
interconnected system.
Zhores Medvedev The Medvedev Papers

I want to reach that state of condensation of sensations which constitutes a picture.


Henri Matisse
Notes d’un Peintre

In this chapter we introduce you to computer science. Ideally, we would begin with a
simple definition that could be expanded and refined throughout the book. Unfortunately,
computer science, like other disciplines, has no simple definition. For example, we might
say that biology is the study of life. But that doesn’t explain much about the content
of such subdisciplines as animal behavior, immunology, or genetics—all of which are
part of biology. Nor does it explain much about the contributions that these disciplines
make to biology in general. Similarly, is English the study of grammar and spelling, the
reading of Shakespeare’s plays, or the writing of poems and stories? In many cases it
is easier to consider the subfields within an area of study than it is to define the area of
study. So it is with computer science.

1.1 What Is Computer Science?


In some respects, computer science is a new discipline; it has grown and evolved along
with the growth of computing technology and the cheaper, faster, and more accessible
processing power of modern-day computers. As recently as 1970, many colleges and
universities did not even have departments of computer science. But computer science
has benefited from work done in such older disciplines as mathematics, psychology,
electrical engineering, physics, and linguistics. Computer science inherits characteristics
from all these fields in ways that we’ll touch on in this book, but the thread that links
these and the many subdisciplines of computer science is computer programming.
Some people prefer the term used in many European languages, informatics, over
what is called computer science in the United States. Computer science is more the
study of managing and processing information than it is the study of computers. Com-
puter science is more than programming, but programming is at the core of information
processing and computer science.

3
June 7, 1999 10:10 owltex Sheet number 23 Page number 4 magenta black

4 Chapter 1 Computer Science and Programming

This book will guide you through the study of the design, building, and analysis of
computer programs. Although you won’t become an expert by working through this
book, you will lay a foundation on which expertise can be built. Wherever possible,
the programming examples will solve problems that are difficult to solve without a
computer: a program might find the smallest of 10,000 numbers, rather than the smallest
of 2 numbers. Longer examples are taken from various core areas of computer science.
As this is a book about the design and analysis of computer programs, it must be used
in conjunction with a computer. Reading alone cannot convey the same understanding
that using, reading, and writing programs can.

1.1.1 The Tapestry of Computer Science

This chapter introduces computer science using a tapestry metaphor. A tapestry has
much in common with computer science. A tapestry has many intricate scenes that
form a whole. Similarly, computer science is a broad discipline with many intricate
subdisciplines. In studying a tapestry, we can step back and view the work as a whole,
move closer to concentrate on some particularly alluring or colorful region, and even
study the quality of the fabric itself. We’ll similarly explore computer science—studying
some things in detail, but stepping back to view the whole when appropriate. We’ll
view programs as tapestries too. You’ll study programs written by others, add to these
programs to make them more useful, and write your own programs. You’ll see that
creating and developing programs is not only useful but is immensely satisfying, and
often entertaining as well.
Several unifying threads run through a tapestry, and the various scenes and sections
originate from and build on these threads. Likewise in computer science, we find basic
themes and concepts on which the field is built and that we use to write programs and
solve problems. In this chapter we introduce the themes of computer science, which are
like the scenes in a tapestry, and the concepts, which are like the unifying threads.
Contexture is a word meaning both “an arrangement of interconnected parts” and
“the act of weaving (assembling) parts into a whole.” It can apply to tapestries and to
computer programming. This book uses a contextural approach in which programming
is the vehicle for learning about computer science. Although it is possible to study
computer science without programming, it would be like studying food and cooking
without eating, which would be neither as enjoyable nor as satisfying.
Computer science is not just programming. Too often this is the impression left after
an initial exposure to the field. I want you to learn something of what a well-read and
well-rounded computer scientist knows. You should have an understanding of what has
been done, what might be done, and what cannot be done by programming a computer.
After a brief preview of what is ahead, we’ll get to it.
June 7, 1999 10:10 owltex Sheet number 24 Page number 5 magenta black

1.2 Algorithms 5

Alan Turing (1913–1954)

Alan Turing was one of the founders of computer science, studying it before there
were computers! To honor his work, the highest achievement in the field of com-
puter science—and the equivalent in stature to a Nobel prize—is the Turing award,
given by the Association for Computing Ma-
chinery (the ACM).
In 1937, Turing published the paper On
Computable Numbers, with an Application
to the Entscheidungsproblem. In this paper
he invented an abstract machine, now known
as a Turing Machine, that is (theoretically)
capable of doing any calculation that today’s
supercomputers can. He used this abstract
machine to show that there are certain prob-
lems in mathematics whose proofs cannot
be found. This also shows that there are
certain problems that cannot be solved with
any computer. In particular, a program can-
not be written that will determine whether
an arbitrary program will eventually stop. This is called the halting problem.
During World War II, Turing was instrumental in breaking a German coding
machine called the Enigma. He was also very involved with the design of the first
computers in England and the United States. During this time, Turing practiced
one of his loves—long-distance running. A newspaper account said of his second-
place finish (by 1 foot) in a 3-mile race in a time of 15:51: “Antithesis of the popular
notion of a scientist is tall, modest, 34-year-old bachelor Alan M. Turing.…Turing
is the club’s star distance runner…[and] is also credited with the original idea for
the Automatic Computing Engine, popularly known as the Electronic Brain.”
Turing was also fond of playing “running-chess,” in which each player alter-
nated moves with a run around Turing’s garden. Turing was gay and, unfortunately,
the 1940s and 50s were not a welcome time for homosexuals. He was found guilty
of committing “acts of gross indecency” in 1952 and sentenced to a regimen of
hormones as a “cure.” More than a year after finishing this “therapy,” and with no
notice, Turing committed suicide in 1954.
For a full account of Turing’s life see[Hod83].

1.2 Algorithms
To develop an initial understanding of the themes and concepts that make up the computer
science tapestry, we’ll work through an example. Consider two similar tasks of arranging
objects into some predetermined order:
June 7, 1999 10:10 owltex Sheet number 25 Page number 6 magenta black

6 Chapter 1 Computer Science and Programming

Arranging Cards

Arrange cards into four groups by suit: spades, hearts, clubs, diamonds
Sort each group. To sort a group:
For each rank (2, 3, 4, …, 10, J, Q, K, A) put the 2 first, followed
by the 3, the 4, …, followed by the 10, J, Q, K, A (if any rank is
missing, skip it)

Figure 1.1 Arranging cards in order.

1. A hand of cards (arrange by rank and suit)


2. 100,000 exams (arrange by six-digit student ID number)

Card players often do the first task because it makes playing much simpler than if
the cards in their hands are arranged in a random order. The second task is part of
the administration of the Advanced Placement exams given each year to high school
students. Many people are hired to sort the exam booklets by student ID number before
the scores are entered into a computer. In both cases people are doing the arranging. The
differences in the scale of the tasks and the techniques used to solve them will illuminate
the study of computer science and problem solving.

1.2.1 Arranging 13 Cards


A hand of cards might look like this:
10 5 Q 7 9 A 8 J 3 7 K Q 8
10 5 Q 7 9 A 8 J 3 7 K Q 8
Most people arrange cards in order by suits (spades, hearts, diamonds, and clubs), and
within suit by rank (2, …, 10, J, Q, K, A) with little thought. In fact, many people perform
a slightly different sequence of steps in arranging different hands of cards, modifying
their basic technique depending on the order in which the cards are dealt. However,
if you are asked to describe the process of arranging a hand of cards to someone who
has never seen cards before, the task becomes difficult. The careful description of such
processes is one of the fundamental parts of computer science. The descriptions are
called algorithms and are the focus of much study in computer science and in this book.
The algorithm for sorting cards shown in Figure 1.1 is both correct and concise, two
traits to strive for in writing algorithms. The instructions to sort a group are applicable to
all groups, not just to the spades or to the diamonds. Instructions that apply in more than
one situation are much more versatile than instructions that apply in a single situation.
Algorithms are often compared to recipes used in cooking: they are step-by-step
plans used in some process (arranging cards or baking bread) to arrive at some end (a
June 7, 1999 10:10 owltex Sheet number 26 Page number 7 magenta black

1.2 Algorithms 7

sorted hand of cards or a loaf of bread). Although this analogy is apt, cooking often
allows for a larger margin of error than do algorithms that are to be implemented on a
computer. Phrases like “beat until smooth,” “sauté until tender,” and “season to taste”
are interpreted differently by cooks. A more appropriate analogy may be seen with
the instructions that are used to knit a sweater or make a shirt. In such tasks, precise
instructions are given and patterns must be followed or else a sweater with a front larger
than the back or a shirt with mismatched buttons and buttonholes may result.
You can easily determine that the hand below is sorted correctly, in part because
there are so few cards in a hand and because grouping cards by suit makes it easier to see
if the cards are sorted. Verifying that the algorithm is correct in general is much more
difficult than verifying that one hand of cards is sorted.
7 8 9 7 10 K 3 5 Q A 8 J Q
7 8 9 7 10 K 3 5 Q A 8 J Q

For example, suppose that an algorithm correctly sorts 1,000 hands of cards. Does
this guarantee that the algorithm will sort all hands? No, it’s possible that the next hand
might not be sorted even though the first 1,000 hands were. This points out an important
difference between verifying an algorithm and testing an algorithm. A verified algorithm
has been proved to work in all situations. A tested algorithm has been rigorously tried
with many examples to establish confidence that it works in all situations.

1.2.2 Arranging 100,000 exams


Arranging 100,000 exams by ID number is a much more cumbersome task than arranging
13 cards. Imagine being confronted with 100,000 exams to sort. Where would you
begin? This task is more time-consuming and more prone to error than arranging cards.
Although you probably don’t need a precise description of the card-arranging algorithm
to sort cards correctly, you’ll need to think carefully about developing an algorithm to sort
100,000 exams using 40 people as assistants. Utilizing these “computational assistants”
requires communication and organization beyond what is needed to arrange 13 cards in
one person’s hand. A sample of 32 student ID numbers is shown here:

672029 662497 118183 452603 637238 249262 617834 396939


483595 613046 361999 231519 695368 689831 346006 539184
712077 816735 540778 975985 950610 846581 931662 625487
278827 821759 131232 952606 547825 385646 880295 816645

These represent a small fraction of the number of exam booklets that must be arranged.
Consider the algorithmic description in Figure 1.2. If this algorithm is implemented
correctly, it will result in 32 numbers arranged from smallest to largest. If we had a
computer to assist with the task, this might be an acceptable algorithm. (We’ll see later
that there are more efficient methods for use on a computer but that this is a method that
works and is simple to understand.) We might be tempted to use it with 32 exams, but
with 100,000 exams it would be extremely time-consuming and would make inefficient
use of the resources at our disposal since using 40 people to find the smallest exam
number is a literal waste of time.
June 7, 1999 10:10 owltex Sheet number 27 Page number 8 magenta black

8 Chapter 1 Computer Science and Programming

Sorting Exams
Repeat the following until all 32 numbers (exams) have been arranged
scan the list of numbers (exams) looking for the smallest exam
move the smallest number (exam) to another pile of exams that are maintained and
arranged from smallest to largest

Figure 1.2 Arranging exams in order.

1.3 Computer Science Themes and Concepts


The previous sorting example provides a context for the broad set of themes and concepts
that comprise computer science.

1.3.1 Theory, Language,Architecture


Three areas mentioned in [Ble90] as forming the core of computer science serve nicely as
the essential themes, linking the various scenes of the computer science tapestry together.
These themes are shown in Figure 1.3. Although we can develop algorithms for both
sorting tasks, it would be useful to know if there are better algorithms or if there is a
“best” algorithm in the sense that it can be proven to be the most efficient. Determining
whether an algorithm is “better” than another may not be relevant for arranging cards
because a nonoptimal algorithm will probably still work quickly. However, a “good”
algorithm is very relevant when arranging 100,000 exams. Developing algorithms and
evaluating them is the part of computer science known as theory.

Theory Language

Architecture

Figure 1.3 Essential computer science themes.


June 7, 1999 10:10 owltex Sheet number 28 Page number 9 magenta black

1.3 Computer Science Themes and Concepts 9

Levels Conceptual
of and formal
abstraction models

Efficiency
and
complexity

Figure 1.4 Recurring concepts

If the algorithms are to be implemented on a computer or used by people (who are in


some sense “computational engines”), there must be a language in which the algorithms
are expressed. We have noted that cooking recipes, while similar to algorithms, often
leave room for ambiguity. Although English (or other natural languages) may at some
point become a viable language in which to “instruct” computers, specialized computer
languages are needed now. Many programming languages exist, and often the choice
of language has a large impact on how well a program is written and on how fast it
is developed. Languages are necessary to implement algorithms on specific kinds of
computers.
Although both these arranging tasks are similar, an algorithm for one may be inap-
propriate for the other. Viewing a person as a computational resource (or processor), we
see that the card-arranging task is done using one processor while the exam-arranging
task is done using several processors. Just as some people can sort cards more quickly
than others, some computer processors are faster and work differently than other proces-
sors. The term architecture is used to describe how a computer is put together just as it
is used to describe how a building is put together. One active research area in computer
science involves developing algorithms and architectures for multiprocessor computing
systems.

1.3.2 Abstractions, Models, and Complexity


In this section we continue our contextural approach, whereby we weave the essential
themes into the fabric that is computer science and the scenes that make up its tapestry. In
addition to the themes of theory, language, and architecture, we’ll often refer to several
of the recurring concepts presented in [(ed91]. These form part of the foundation on
which computer science is built; they are shown in Figure 1.4.
Both sorting tasks involve arranging things, yet the complexity of the second task
makes it imperative that an efficient algorithm be used if the goal is to be achieved within a
reasonable time frame. Both efficiency and complexity are parts of the computer science
June 7, 1999 10:10 owltex Sheet number 29 Page number 10 magenta black

10 Chapter 1 Computer Science and Programming

tapestry we are studying. In programming and computer science, these terms concern
how difficult a problem is and the computational resources, such as time and memory,
that a problem requires.
We have avoided many of the details inherent in these examples that might be of
concern as rough ideas evolve into detailed algorithms. If 40 people are sorting exams
we might be concerned, for example, with how many are left-handed. This might
affect the arrangement of the exams as they are physically moved about during the
sorting process. Some playing cards are embellished with beautiful designs; it might
be necessary to explain to someone who has never played cards that these designs are
irrelevant in the arrangement process. In general these levels of detail are examples of
levels of abstraction (Figure 1.4). In one sense this entire chapter mirrors the fact that
we are viewing the computer science tapestry at a very high level of abstraction, with
few details. Each subsequent chapter of this book involves a study of some aspect of the
tapestry at a level of greater detail.
Finally, both these tasks involve numbers. We all have an idea of what a number is,
although the concept of number may be different to a mathematician and to an accountant.
In computer science conceptual ideas must often be formalized to be well understood.
For example, telling someone who is playing hide-and-go-seek to start counting from
1 and to stop when they reach the “last number” is an interesting way to teach the
concept of infinity. The finite memory of computers, however, imposes a limit on the
largest number that can be represented. This difference between conceptual and formal
models is a concept that will recur and that completes the three concepts in Figure 1.4,
forming common threads of the computer science tapestry.

Pause to Reflect 1.1 The New Hacker’s Dictionary defines bogo-sort as described here.

Bogo-sort: Repeatedly throw a hand of cards in the air, picking them up


at random, and stopping the process when examining the hand reveals the
cards are in order.

Using this “algorithm,” what is the minimum number of “throws” that yields a
sorted hand? What is the danger of using this algorithm?

1.2 In the algorithm for sorting cards, nothing is stated about forming a hand from
each of the separate suits. Does something need to be stated? Is too much left
as “understood by the player” so that someone unfamiliar with cards couldn’t use
the algorithm?

1.3 Write a concise description of the method or algorithm you use to sort a hand of
cards.

1.4 Suppose that the 32 student ID numbers listed in the text are sorted. Is it a simple
matter to verify that the numbers are in the correct order? Consider the same
question for 100,000 numbers.
June 7, 1999 10:10 owltex Sheet number 30 Page number 11 magenta black

1.3 Computer Science Themes and Concepts 11

Charles Antony (Tony)Richard Hoare (b. 1934)

Perhaps best known for his invention of the sorting algorithm he modestly named
Quicksort, Hoare has made profound contributions to many branches of computer
science, especially in programming and pro-
gramming languages. Hoare received the
ACM Turing award in 1980. In his award ad-
dress he had this to say about learning from
failure: “I have learned more from my fail-
ures than can ever be revealed in the cold
print of a scientific article and now I would
like you to learn from them, too.
Besides, failures are much more fun to
hear about afterwards; they are not so funny
at the time.” In a collection of essays [Hoa89],
Hoare describes the programmer of the cur-
rent era as part apprentice and part wizard;
he urges that computer science education
should focus on both theoretical foundations
and practical applications. In his last essay
of that collection he states “I salute the brav-
ery of those who accept the challenge of be-
ing the first to try out new ideas; and I also respect the caution of those who prefer
to stick with ideas which they know and understand and trust.”
I think Hoare may not like C++; it is too big, too full of features, and it doesn’t
have a formal foundation. However, according to his web page, he set himself
the following task for his 1993–1994 sabbatical year: to become acquainted with
Visual BasicTM . Of course as other goals for that year he listed:
To complete a work on unification of theories of programming and to start
new work on a range of scientific theories of computational phenomena.
In describing computer science as, in part, an engineering discipline, Hoare
states:
…the major factor in the wider propagation of professional methods is
education, an education which conveys a broad and deep understanding of
theoretical principles as well as their practical application, an education
such as can be offered by our universities and polytechnics.
For more information, see [Hoa89].
June 7, 1999 10:10 owltex Sheet number 31 Page number 12 magenta black

12 Chapter 1 Computer Science and Programming

1.4 Language,Architecture, and Programs


Language is necessary for expressing algorithms. For computers, a precise programming
language is necessary. In this section we briefly touch on the process by which an
algorithm is transformed from an idea into a working computer program. This process
is the same regardless of the kind of computer being used.
The final computer program differs from machine to machine in the same manner
that the same idea is expressed differently in German than it is in English. Consider the
German word Geländesprung defined:
Geländesprung: a jump made in skiing from a crouching position with the use
of both poles.
An idea whose expression requires many English words can be expressed in a single
German word. Different computers can offer the same economy of expression; what
one computer might do in a single instruction can require several instructions (and a
corresponding increase in time to execute the instructions) on another computer. For
example, so-called supercomputers can add 100 numbers with a single instruction. On
ordinary computers, one instruction can add only two numbers.

1.4.1 High- and Low-level Languages

High thoughts must have high language.


Aristophanes
Frogs

How do computers work? We don’t need to know this to use computers just as we don’t
need to know how internal combustion engines work to drive a car. A little knowledge,
however, can help to demystify what a computer is doing when it executes a program. A
computer can be viewed from many levels, from the transistors that make up its circuits
to the programs that are used to design the circuits.
At the lowest level, computers respond to electric signals at an extremely fast rate.
Computers react to whether electricity is flowing or not; the computer merely responds
to switches that are in one of two states: on or off. This method of using two states
involves what is termed the binary number system, or the base 2 system. This system
is based on counting using only the digits 0 and 1. The base 10 system, with which you
are most familiar, uses the digits 0 through 9.
There are hundreds of different kinds of computers. You may have used Apple
Macintosh computers, which are built using a computer chip called the Power-PC, or
another kind of computer based on the Intel Pentium chip. Pictures of these different
chips are shown at the end of the chapter in Figure 1.9 and 1.11. These chips are the
foundation on which a computer is built. The chip determines how fast the computer
runs and what kinds of software can be used with the computer. Since computers are
constructed from different components and have different underlying architectures, they
may respond differently to the same sequence of zeros and ones. Just as chat means
“to converse informally” in English and means “a small domesticated feline (cat)” in
June 7, 1999 10:10 owltex Sheet number 32 Page number 13 magenta black

1.4 Language,Architecture, and Programs 13

French, so might 00010100111010 instruct one computer to add two numbers and another
computer to print the letter q.
Rather than instruct computers at this level of zeros and ones, languages have been
developed that allow ideas to be expressed at a higher level—in a way more easily
understood by people. In addition to being more easily understood, these high-level
languages can be translated into particular sequences of zeros and ones for particular
computers. Just as translators can translate English into both Japanese and Swahili, so can
translating computer programs translate a high-level language into a low-level language
for a particular computer. The concept of higher level programming languages was a
breakthrough. The first computers were “programmed” literally by flipping switches by
hand or physically rewiring the computer to create different on/off states corresponding
to a program. The use of higher level languages made programming easier (although it is
still an intellectually challenging task) and helped to make computer use more prevalent.
The computer language used in this book is called C++.1 This language has its roots
in the C programming language, which was developed in the 1970s. The language C
is a high-level language2 that allows low-level concepts to be expressed more readily
than some other high-level languages. For example, in C it is easy to write a program to
change a single bit (a 0 or a 1) in the computer’s memory. This is hard, if not impossible,
to do in other high-level languages, such as Pascal.
We’re not studying C++ because it permits one bit to be changed. We’re studying
C++ because with it several programming styles are possible. In particular, it can be
used with a style of programming called object-oriented programming, often abbreviated
as OOP. We will use OOP throughout this book, but it will be an aid to our study of
programming and computer science rather than the principal focus. We’ll explore OOP
briefly at the end of this chapter.
The intricacies of C++ are such that mastering the entire language, as well as the
concepts of object-oriented programming, is a task too daunting and difficult for begin-
ning programmers. In this book we present a significant subset of C++ and use it to write
programs that permit the study of essential areas of computer science. At the same time
the power of C++ is exploited where possible to allow you to create more complicated
programs than would be feasible using other languages. Don’t be disheartened that you
won’t learn absolutely all of C++ in this book—you’ll be building a foundation on which
subsequent study can add. The few parts of the language that aren’t covered are mostly
“short-cuts” that can be replaced using features of the language that are in the book.

A Concrete Example. To illustrate the difference between high- and low-level languages,
we’ll study how a C++ program is translated into a low-level language. The low-level
language of 0’s and 1’s that a computer understands is called machine language. Be-
cause different computers have different machine languages, a program is needed to
translate the high-level C++ language into machine language. A compiler is a program
that does this translation. Often the compiling process involves an intermediate step
wherein the code is translated into assembly language.

1
This is pronounced as “see plus plus.”
2
Although some computer scientists might take exception to this statement, C is clearly a much higher-
level language than machine or assembly language.
June 7, 1999 10:10 owltex Sheet number 33 Page number 14 magenta black

14 Chapter 1 Computer Science and Programming

main: main:
save %sp,-128,%sp pushl %ebp
mov 7,%o0 movl %esp,%ebp
st %o0,[%fp-20] subl $12,%esp
mov 12,%o0 movl $7,-4(%ebp)
st %o0,[%fp-24] movl $12,-8(%ebp)
ld [%fp-20],%o0 movl -4(%ebp),%eax
ld [%fp-24],%o1 imull -8(%ebp),%eax
call .umul,0 movl %eax,-12(%ebp)
nop xorl %eax,%eax
st %o0,[%fp-28] jmp .L1
mov 0,%i0 .align 4
b .LL1 xorl %eax,%eax
nop jmp .L1
mov 0,%i0 .align 4
b .LL1 .L1:
nop leave
.LL1: ret
ret
restore

Figure 1.5 Assembly code using g++ (Sparc on left, Pentium on right).

To keep the example simple, we’ll use a program that stores two numbers in memory,
then multiplies the numbers storing the product in a different memory location. The
program follows.
int main()
{
int x,y,z;
x = 7; y = 12;
z = x*y;
return 0;
}
We will not discuss the C++ instructions here; we use the program only to illustrate the
differences between high- and low-level languages.
The world is full of C++ compilers. Compilers exist for various kinds of computers,
sizes of programs, and amounts of money. The code in this book has been tested using
four different compilers. Some of these compilers cost hundreds of dollars, some are
less expensive, and one is free.
The assembly code generated by the same compiler running on two different ma-
chines is shown in Figure 1.5. The compiler used is g++ running on two different
machines: a Sun Sparcstation and a Pentium-based computer.3
There is one column of assembly code for each machine. Note that although the programs
are of roughly the same length, there are few similarities in the assembly instructions.

3
The characteristics of these machines are not important, but the same compiler runs on both machines,
which facilitates a comparison.
June 7, 1999 10:10 owltex Sheet number 34 Page number 15 magenta black

1.5 Creating and Developing Programs 15

Among the instructions are ld, call, and nop for the Sun assembly and pushl, subl, and
xorl for the Pentium. The important point of Figure 1.5 is that you do not need to worry
about assembly code to write programs in C++ or in any other high-level language. It is
comforting to know that we can ignore most of the low-level details in writing programs
and studying computer science and, perhaps, enticing to know that the details are there
for those who are interested.

1.5 Creating and Developing Programs


How is a computer program created? Usually a problem arises whose solution requires
computation. An algorithm for the solution is developed into a running program in
several steps. The steps that lead to the program’s execution on a computer are also
important. We’ll look at developing a program for the problem of multiplying two
numbers as shown in Figure 1.6. The process of developing an idea into an algorithm
that is eventually realized as a working computer program is illustrated in Figure 1.7.

From Problem to Algorithm. Consider the steps labeled 1 and 2 in Figure 1.7. The
problem of multiplying two specific numbers (1285 and 57) has been generalized to the
problem of multiplying two arbitrary numbers (Y and Z). The two views of the problem,
one concrete and one general, represent two levels of abstraction. A solution to the
general problem will be useful for any two numbers, not just for 1285 and 57. If you
can develop a general solution that is useful in many situations, it is usually worth it.
Sometimes, however, a solution to a specific problem is needed and solving a general
version would take too long or be too difficult.
To write a program for solving this general problem, we must develop an algorithm
for multiplication. Consider multiplying rational numbers (fractions), integers, real
numbers, and complex numbers as illustrated in Figure 1.6.
You may not be familiar with each of these types of numbers, but each uses a different
method for multiplication. If we’re going to write a program to multiply, we’ll need to
determine what type of number is being used. The general form of X × Y can be used
to express multiplication regardless of which type of number is multiplied. One of the
advantages of C++ is that this conceptual similarity in notation is formalized in code:
the same symbol, *, can be used to multiply many types of numbers.
In addition to the type of number, considerations in the development of the algorithm
might include the size of the numbers being multiplied (an efficient algorithm would

Rational Integer Real Complex


3/4 * 8/9 1,285 * 57 3.14 * 6.023 (3 + 5i) * (2 - 7i )
2/3 73,245 18.91222 41 - 11i

Figure 1.6 Multiplying different types of numbers.


June 7, 1999 10:10 owltex Sheet number 35 Page number 16 magenta black

16 Chapter 1 Computer Science and Programming

1
1,285 Y
x 57 xZ

int operator * (int x, int y)


2 // pre: post:
{
4
}

5
010001100101001000011110010101
ld [%fp+-0x8],%o0
set L8,%o1
7 mov 0xd,%o2
6 mov 0xd, %o3
call

8
73,245

8
73,245

Figure 1.7 The steps of transition from problem to program.

be more important if the numbers were hundreds of digits long as opposed to three
digits long), how many times numbers will be multiplied, and whether the result of
multiplying the numbers can exceed the memory constraints of the computer. Although
it’s impossible for numbers to get “too big” conceptually, the inherent finiteness of a
computer’s memory requires that a formal model of computation take this into account.

From Algorithm to Program. In step 3 we translate the algorithm into the high-level
language C++. The name operator * has been given to the C++ instructions that perform
Another Random Document on
Scribd Without Any Related Topics
"What in the devil—stop that!" Blaine remonstrated. There was a
scuffle beginning. I recall that I shouted,
"Blaine! Take it easy! You'll be killed!"
Amazing power of these squat little men! A claw-like hand was
clapped over Blaine's mouth; his flailing arms and kicking legs were
pinned by the Radak's clutches; and then they picked him up and
carted him away.
"I shall begin with you, Peter Mack," the Radak ruler said quietly.
"Come forward, bend before me."
For a second Mack hesitated, flinging Shorty and me a questioning
glance. But we had nothing to offer. Then the shabby, lanky figure of
the bearded Mack shambled forward, guided by two Radaks until he
was standing with head bent before the Ruler. Down the slope the
murmurs of the crowd of Lei rose into a babble. The milling throng of
slave-people a hundred yards or so from us crowded curiously
forward to see Mack better. There was a sudden, low-voiced
command from the Radak Ruler. A dozen or more of the squat, grey
Radaks ran at the Lei, cuffing them, knocking them back ... I saw a
young Lei girl, slim, with flowing white and tawny hair framing her
face. The little automaton Radak ran at her, struck her in the mouth
so that the blood spurted out.
And through it all, near me a row of Radak children stood stiffly at
attention, motionless, with only their round green eyes turning
sidewise to watch the scene.
Then the ancient Radak Ruler's smouldering gaze was upon Mack's
head. An awed silence fell over the scene as Mack stood motionless.
Who shall say by what weird and gruesome process Mack was now
being sapped! No one on Earth knows what a thought is. No one can
say what is within our brain cells to constitute knowledge. But
something is there, something in our conscious and subconscious
minds upon which our memory can draw. And we do know that
thought is a wave of vibration—an infinitely tiny, infinitely rapid
vibration. A thing that at least has a tangible entity. And this Radak's
mind now was drawing, sapping from Mack.
A minute. Five minutes. In the tense silence, I felt Shorty clutch at
me, heard him mutter: "God, it's weird!"
Mack now was drooping. A mental agony, rasping his nerves now,
drawing vitality from him so that he drooped, swayed, and suddenly
let out a groan. Mental anguish, with screaming nerves translating it
into physical pain.
"It's torture!" Vivian murmured. "Look at him—stop it! Stop it!"
Mack had fallen to the ground, writhing now, mumbling with futile
hands clawing at his face and head as though to pluck away that
damnable, torturing gaze. But still, calmly, inexorably the green-eyed,
monstrous little Radak held him—this shriveled Radak Ruler, avidly,
greedily drawing in the knowledge of Mack's past life—those myriad
little things of Earth-life stored within Mack's brain. Surely it must
have been a torture most horrible.

Shorty and I were starting to leap forward in protest. But Vivian was
ahead of us, raging, rushing heedlessly at the old Radak. She almost
reached him. She was screaming, "You—you rotten damn Thing—you
—"
Her hand went up to strike him. It was all a sudden chaos, just a few
seconds. Radaks caught Shorty and me; with almost machine-like
strength their arms pinned us. I think I yelled at Shorty not to
struggle. In that same second, I saw Vivian's arm with clenched fist
trying to hit the Radak Ruler, but a little squat grey figure standing
guard there, jumped and seized her. It was an amazing tableau. At
the threatened blow, the Ruler shrank back. His whole little body
quivered, pulsated; and on the weird, almost unhuman face, there
was a look, not of fear, but of strange revulsion—as though the threat
of that physical blow were something too horrible to contemplate.
"Vivian! Vivian—you—they'll kill you! Run—Vivian, run—"
Mack was staggering to his feet, stumbling, half falling. But he
reached Vivian, clutched her. Both of them were confused, dazed so
that all they could do was stand there, holding onto each other. I saw
Mack gazing defiantly at the oncoming Radaks—Mack who on Earth
probably wouldn't have lifted a hand to help anyone, ready now to
fight to protect this girl.
"You will all—stand—away from them." It was the Ruler's quiet,
measured voice. And abruptly I saw that his shriveled hand had gone
to his belt. A weapon was hanging there—a little pot-bellied black
cylinder. His fingers shifted it, seemed aiming it at Vivian and Mack.
Shorty and I were struggling, but the Radaks held us. And we were
both shouting. Then there was a soundless, almost invisible flash,
just a vague spitting glow of light from the little cylinder. It leaped
and for a second clung upon Mack and the girl. They seemed to
stiffen. Just that; nothing else. Still clutching each other they stood
transfixed, and on their faces there was a blankness, a strange
emptiness.
"You will walk together, hand in hand," the Ruler's soft voice was
droning. "One of my Radaks will lead you to the upper exit. And then
you will walk together alone—out into the Realm of the Deathless
Things."
He added something in his own language. A little Radak moved in
front of Mack and Vivian now. Hand in hand they were standing
docile, and then they were following the Radak—following him with
slow measured steps, their faces blank, their eyes staring straight
ahead of them. Like somnambulists, walking in their sleep.
"Good Lord," Shorty murmured. "That could be the way we were
abducted on Earth! Do you suppose—"

His words were cut off. The Ruler had given another command. The
Radaks gripping us were pulling us away—shoving us back into the
dim crimson tunnel from which they had brought us. I turned to look
behind me. The stiff figures of Mack and Vivian still were visible,
walking in a trance, following the square, box-like little Radak who
marched silently ahead of them. For a moment they wound along the
edge of the slope; then the crimson murk of radiance enveloped
them and they were gone.
Roughly Shorty and I were shoved along the tunnel by our captors.
Then a rock panel slid aside. We were shoved in, and the panel slid
closed.
"Well," Shorty murmured. "That's that. We're in a jam, Bob—a damn
weird jam."
It was soundless in here, and darker than out in the main open
grotto. But still there was that dim crimson glow. We were in a small
cave-cell now. The air was hot, fetid, earthy. Presently we could see a
little better. There was nothing but black, spongy ground, glowing red
rock walls and a rock ceiling close over us. In the dimness I fumbled,
feeling the wall, trying to find the crevice of the sliding door panel;
but could not.
Time passed. Shorty and I both realized now that we were weak and
faint from hunger—not altogether the hunger from missing a meal or
so, but the depletion of long under-nourishment. Together we lay
down on the fibrous ground. I think at that moment I was more
despairing than ever before in my life. I seemed unable to cope with
even the thought of what we might possibly plan. I closed my eyes. I
seemed just to want to drift into the blessed relief of sleep.
"This is one jam we might not get out of, Bob," Shorty murmured
presently.
"Yes, looks so."
Then suddenly both of us were galvanized into alertness. The door-
panel was sliding open with a little rasp and an influx of brighter red
glow. Outside in the corridor we saw a group of Radaks on guard. But
none of them came in. They moved aside and a figure came past
them—a Lei girl. Her slim body was draped in a bluish garment of
thatch. Her long tawny hair flowed down over her shoulders. She was
carrying a slab on which there was food and drink for us.
Then she set the slab on the ground near us. She was between us
and the door, almost a silhouette but I could see that her hand was
at her lips and her glowing eyes seemed warning us to be silent.
For an instant she leaned close toward me. "I am Tahn—the wife of
Taro, the Lei." Her voice barely whispered it. "You say nothing. I
come again—with Taro's plan to help you! We would save you and
your Earth—if we can!"
Silent, Shorty and I just stared. Then she had turned and was gone.
The rock panel slid closed upon us.

III

I must explain now what was happening to Mack and Vivian as they
afterward told it to me. Mack recalls quite clearly that moment of
dazed, numbed anguish when he writhed on the ground with the
horrible sapping gaze of the Radak Ruler upon him. Then he heard
Vivian scream, saw her rushing at the shriveled old Radak.
He called, "Vivian! Run—they'll kill you—"
He found himself staggering to his feet, stumbling until he was by her
side. He felt her clutch him, both of them standing there, numbed
and dazed, terrified, with the feeling that the rushing Radaks would
instantly kill them. He remembers that the girl and himself took a
stumbling step forward. To Mack it was like stumbling through a
suddenly appearing black curtain of emptiness. Just an abyss of
soundless nothingness, except that there seemed still to be Vivian's
clutch on his arm. No, it was her hand holding his as they stood
peering at a distant blur of red radiance.
"Viv—where are we? What happened?"
"Pete—I'm frightened—can't—see anything—"
But the red radiance was growing, spreading to dispel the blank
empty darkness so that in a moment he could see the drab,
disheveled form of the girl beside him, her moist, cold hand
convulsively clutching his, and the red light on her pallid, terrified
face. And in the distance now there were outlines—a sort of red line
that looked like a shimmering cliff with jagged spires upstanding in a
row.
"Vivian—everything's gone—the Radaks—we're not where we were—
Bob and Shorty—gone—"
The red glow in a moment had brightened to be far more luminous
than they remembered it in the caverns. Obviously there was a sky
overhead now—a lurid, murky, blood-red haze of infinite distance.
This was the outer surface of the little planetoid. The Realm of the
Deathless Monsters! Mack realized it with a shudder of terror. He and
Vivian now could see that they were standing upon a little rise of
ground, in what could have been called a forest. Everywhere great
stalks of spindly blue and grey vegetation towered into the air.
Growing things of fantastic shape, woven in places to be a solid
jungle. Or again there were open glades of rocky ground—buttes and
little spires, small ravines and crevices. All of it bathed in crimson, as
though here were a bloody landscape of unutterable horror. The
horror of things not yet seen ... things lurking—
"Oh Pete, what can we do?" Hungry and faint she swayed against
him. But in the blood-red light she was trying to smile. "You tell us
what we ought to do—I will help us do it, Pete. I'm not—not afraid."
But the terror of despair was clutching at both of them. Mack tried to
gather his wits. Alone here on an alien world. Could they find food
and drink? Wander here, until some ghastly monster engulfed them?
Or should they try to get back underground? Why? To have the
murderous Radaks fall upon them and kill them?
But the will to live in every human is very strong. No one will lie
down and just hopelessly wait for death.
"Viv—those cliffs over there—cliffs with the spires—there ought to be
tunnels maybe at the bottom of them. If we could get back—maybe
get to Bob and Shorty—" His voice trailed away. It all seemed so
hopeless.
Then he felt the girl clutch at his arm. "Look! Maybe that's water? I'm
so thirsty—"
"I see it. Maybe it is. Come on."
In a nearby open glade, surrounded by stalks of the towering fibrous
vegetation, what could have been a shallow pool of water was spread
on the open rocks. A little pool, twenty feet or so in diameter. Rivulets
extended off to the sides of it in crevices of the rock-surfaces. It was
quite shallow, seemingly only a few inches deep. The red radiant
glow that suffused everything stained it like blood, but it was
translucent so that the rocks showed through it.
Was it water? As they approached, Vivian stepped over one of the
branching rivulet arms. The translucent red stuff suddenly lifted from
the rocks, the little tentacle arm of it wrapping itself around her
ankle!

The girl screamed. In a panic Mack reached down, plucking at the


red mass. Ghastly horror! It was like quivering, sticky glue. Frantically
he tore at it. Warm, pulsating, protoplasm. It stuck to his fingers,
greedily fastening upon his flesh until he wiped it away. Vivian, too,
was frantically flailing at the stuff. And in that second Mack was
aware that the whole twenty-foot spread of it on the rocks was in
motion now—rolling itself up from the rocks, congealing, gathering
itself into a great circular mass. Huge, eight-foot ball of blood-red,
pulsating protoplasm. Yet now it seemed there was a nucleus, a little
central part, more solid than the rest, suddenly growing to look
almost like a head and face in the center of the mass. Red-gleaming
eyes; a sucking mouth, yawning.
All this Mack saw in a horrified second or two while still he was
flailing to cast away the broken, pulpy arm of the monster. And he
saw now that the great ball of it was rocking. Then it started to roll
and bump toward them!
"Vivian! Run—good Lord, here it comes!"
They fled. But behind them it was coming, gathering speed, bumping
and squishing over the rocks. Mack tried to keep his wits. The
monstrous thing was only twenty feet behind them now. And as it
rolled, it was expanding. A lashing ball twice as high as their heads.
Then ahead of them Mack saw a narrow pass between two huge
rocks—a space some three feet wide. He shoved Vivian into it—a
space too small for the monster to follow. It was a crevice only some
ten feet long. They dashed through it.
Mack turned to see what the crimson Deathless Thing would do. It
had hit the rocks, and now it was oozing through the narrow space—
thin red streamer of protoplasm feeding itself through the crevice.
Mack and Vivian had fled to one side, and as the jet of red pulp came
through, out on the other side it rolled itself again into a ball—ghastly
thing that kept on going down the slope! In a moment it was a
hundred feet away. Panting, Mack clutched his companion and they
stared. The bumping, rolling circular mass had reached a patch of
forest. It slowed; stopped.
"Pete, look!" The girl's terrified, awed voice murmured it. "Look at it
now!"
There in the forest glade the monstrous crimson ball was sagging,
flattening, spreading itself out into a thin, translucent layer on the
rocky ground. Then it was motionless, quiescent, waiting.
"Well!" Mack breathed. "At least we know now what to avoid! We—"
But again Vivian gripped him. "What's that over there?" Her shaking
hand gestured to one side. It was an upright blob moving in a patch
of trees. A tree hid it; then it showed again. It stopped, seemed to
turn upon itself. Still upright. Then again it moved.
Suddenly Mack gasped, "A man! Look—see it now—a man—why—
why it's Blaine!"
Startled relief was in his voice. The figure came to another open
space, where the crimson glow in the air showed it plainly. It was
Blaine. He was moving along, gazing around as though searching.
"Blaine! Blaine!" Mack called.
The banker turned at the voice; saw Mack and Vivian who now were
running toward him. "You Mack—Vivian—you're safe—"
"Yes, sure!" It was a blessed relief to Mack.
"I've been looking for you," Blaine called. He was running to meet
them. "And I've got something—something important! A weapon—"
The three reached each other. Blaine and Mack gripped hands. Then
suddenly Vivian gasped: "Another! Another of those Things—"
Out among the trees beyond where Blaine had been a moment
before, a slithering red shape was visible. Another of the Deathless
Things which soundlessly had been stalking Blaine. Like a huge thirty-
foot crimson python it was sliding through the vegetation. Its neck
and head came up, reared up as for a second it stopped, peering
with red-green eyes seeking its prey. Then it lowered its head and
came slithering rapidly forward!

I must go back now for just a moment to recount what had


happened to Blaine, from that moment when the Radak guards
hustled him away from their shriveled ancient ruler. Ignoring his
protests, he was shoved along a corridor, thrown into a cave-cell and
its door-slide closed upon him. But he wasn't alone there for long.
Presently the slide opened again and a figure came in. It was
obviously a Radak, but of somewhat a different type. The same
square, powerful look. But this one was taller, almost as tall as Blaine.
Grey-skinned, lean and muscular. He seemed fairly young, thirty
Earth-years perhaps.
"I have come for to talk to you," the visitor announced. He sat stiffly
on a rock by a wall of the cave. His grey-black woven garment
swished as he motioned Blaine to sit on the ground before him. "You
are very interesting to me. Sit down."
"Thanks. I'll stand," Blaine said. "You speak my language very well."
"That I should." The Radak's smile made his strange face wrinkle into
a grimace. "I am Ratan. Our Great Mind sent me to your Earth. I
picked you Earthmen, and ordered you seized. I will tell you about
that. You can be very helpful to us, I am thinking. Perhaps especially
so. I am commanded to tell you our plans."
Carefully Blaine listened to the strange things this Ratan quite calmly
was telling him. With their weird mechanisms, the Radaks now were
directing their tiny world through Space, toward our Earth. Already
they were bathing Earth with a radiance which was disturbing the
Earth's axial and orbital rotations—that vague, dim purple haze which
Dr. Johns had described to Shorty and me. Then when Zelos was
closer to Earth, the vibratory beam would be intensified.
The Earth would be drawn from its orbit. Engulfed in this weird
gravitational force, it would follow Zelos back from the Sun—out into
Interplanetary Space.... The abduction of the Earth! Blaine knew little
of science, but enough to realize what soon would happen on
Earth....
"Storms—the disturbance of all your atmospheric pressures—" Ratan
was saying with his ironic smile, "that will very soon kill many of your
people. And then will come the congealing cold. Certain it is that
human life on your Earth will not withstand it."
Our atmosphere, not adapted to insulate the cold of Space—
There was no need for this Ratan to picture for Blaine the wild
devastation of Earth. "Perhaps even before we have drawn you out to
the orbit of Saturn," Ratan was saying, "then there will be no
Earthman still living."
The end of human Earth-life. It might take another Earth-year, or
many. But it was coming. Inevitable. A thing that the Radak Great-
Mind had long planned, and that already was being successfully
accomplished.... There are on Earth now as I write this brief
narrative, many scientists working to understand the theories of the
strange, diabolic mechanisms of the bandit Crimson Comet. The
projection of some new application of gravitational force. The purple
ray was something of that nature, of course. A link between Zelos
and Earth, like a chain binding them together—a powerful little tug
pulling a great ocean liner. And the same force unquestionably was
what made Zelos itself mobile in Space. That much we know
definitely because in miniature, but doubtless of the same
approximate nature, the purple gravitational ray is the motive power
for the Radak Space-ship which we now have intact.
"So you are planning to kill everyone on Earth," Blaine said. His heart
was pounding, but he tried to hold his voice calm. He stood with
folded arms, gazing at Ratan. "And what will that gain you?"
"Our little planet here we do not like," Ratan retorted. "Many space-
ships we will build, and when your Earth-people are gone, then we
will migrate to your much better world. The Lei, and the Radaks to
rule them. The Great Mind has planned it all. We have been secretly
to your Earth, we have studied life there. It will be much better for us
than this. The Great Mind will rule your whole world for a while—until
he dies. And then—do you not see something unusual in me?"
"What?" Blaine demanded.
"I am the appointed one to be the next Great Mind. When I was born
it was decided. I have been trained for that. Just for that, nothing
else."

Blaine could see it in him now. That air of quiet, confident


dominance. "I see what you mean," Blaine agreed. "I am like that, on
Earth. You realize it?"
"It is why I chose to bring you here," Ratan said.
"I can be very helpful to you," Blaine added. "My companions—they
are just captives. But I would like to be more than that." The banker
shrugged. "I bow to the inevitable. If you are to seize my world, then
I would like to do the best for myself. That's good sense, isn't it?"
Was he gaining this fellow's confidence? The big Radak smiled also.
"What do you mean?"
"On Earth I am very powerful. I have money, property."
"Of what good could that be to me?" Ratan smiled. "And when I get
there—I have it all anyway."
"What I mean," Blaine persisted, "I am an organizer. I know the
resources of Earth—"
"And to that I agree," Ratan interrupted. "You mean, you would join
us, as a friend."
"For a position of power among you Radaks, yes. You will find I can
handle the Lei." He smiled cannily. "On Earth they called me ruthless.
I could bend men to my will—and always to my own profit."
Blaine's keen, appraising gaze was watching the Radak. Ratan was
smiling; he could understand talk like this, and it was obvious that he
liked it.... Blaine's heart was pounding. At Ratan's broad grey belt a
little pot-bellied metal cylinder was hanging. He gestured to it
casually.
"What is that, Ratan?"
"That? It is a weapon of ours. Very important. There are only very
few of us who may carry it. A Rak-gun, perhaps your language would
term it."
"Let me see it. How does it work?"
But Ratan was only fingering it lovingly. He made no move to detach
it from his belt. He was smiling. "It is what brought you from Earth."
He seemed willing enough to describe it. The projection of a vibration
akin to thought-waves, but infinitely more intense. In effect it
paralyzed the conscious mind, yet left the motor area intact. The
victim, to all intents and purposes was a somnambulist. The
subconscious mind, with will power numbed, then was open to any
suggestive stimulus which it received. The victim's muscles
instinctively obeyed commands. And the memory areas recorded
nothing. Shorty and I had seen it happen to Vivian and Mack. Blaine
did not know of that. But it had happened to him, on Earth, as it had
to all of us.
"And, then, after a time it wears off?"
"Exactly. An hour—what you would call an hour on Earth, perhaps.
But another shock of it can be given. You were under its influence for
about three weeks—the time it took for our Space-ship to bring us
here."
"And you fed me very badly," Blaine commented. He was taut inside
now. He took a casual step forward so that he was almost within
reach of the seated Radak. "Is that thing easy to operate?"
Blaine's heart leaped as Ratan unclipped the little cylinder from his
belt. "Very simple," the Radak said. "Just a pressure on this little
lever. But it will be years before the Great Mind or myself would let
you handle one of these."
"I was thinking," Blaine said, "when we get to Earth you yourself will
not be the Great Ruler. But if, perhaps, the Great Mind should
suddenly die? Then it would be only the great Ratan, with me to help
him—" Blaine had leaned forward confidentially and lowered his
voice. "Did you ever think of that?"
Surely at least the idea of murdering his commander was startling to
Ratan, and for that instant he was off his guard. Just a second, but it
was enough for Blaine. The banker abruptly reached, snatched the
cylinder and leaped backward.
"Now you damned villain—"

Blaine raised the cylinder level. With a roar, Ratan was on his feet.
There was a soundless, vague little flash. Ratan, tensing his muscles
for a leap abruptly relaxed, wavered.
"Quiet now! Stand still!" Blaine ordered sharply.
He stood listening, with the quiescent, blankly staring Ratan before
him. Had Ratan's roar of startled anger aroused any guards out in the
corridor? It seemed not. There was only silence.
"Now we will go out of here," Blaine said softly. "We will go out. You
know where Robert Rance is now. You will lead me to him."
With hands outstretched, the big Radak moved to the door, slid it
open. At this moment Shorty and I were confined in another cave-cell
not far away. Ratan knew it; he was leading Blaine there. But
suddenly, at a corridor intersection, voices sounded! Radaks were
coming.
"Crouch down!" Blaine commanded. "Be quiet! Not a sound from
you!"
There was a wall recess. Blaine shoved his numbed captive into it.
Together they crouched. And now Blaine saw that in a sheath at
Ratan's belt, there was a knife. He drew it out; held it in his other
hand and kept the cylinder ready. Two Radaks were coming. They
were talking together in their own language. They stopped nearby,
evidently with the intention of parting here at the intersection.
Blaine listened. Then he whispered to Ratan: "Answer me softly.
What are they saying? Tell me in English."
"Those Earth-people banished—into the Realm of—Deathless—
Monsters—and they will die—of course." Ratan's words were
mumbled, queerly mouthed, like one who talks in his sleep. Blaine
assumed that all of us were out there on the upper surface, not just
Vivian and Mack. Swiftly he changed his plans.
"In a moment when I command you," he whispered, "you will lead
me there. You know where the Earth-people would probably be now?
Out which exit they went? Answer me—softly."
"By the—big cliff with the—rock spires.... The exit is—down this left
corridor."
Tensely Blaine waited. The nearby Radaks parted and moved away.
"Now, lead me," he whispered.
Again they moved forward, down the left-hand corridor-branch now.
And suddenly behind Blaine there was a shout. He whirled. One of
the Radaks had changed his mind and was coming back, calling
something to his fellow. Blaine had no time to get himself and Ratan
out of sight. The Radak saw them—saw the stiffly walking Ratan, and
Blaine with the cylinder in his hand.
With a startled shout, the little Radak leaped at Blaine. The flash met
him; he stopped in his tracks, stood stiff. But from the other
direction, his companion was coming. And now the commotion was
bringing others. Blaine could hear several of the guttural voices and
the thuds of their oncoming footsteps.
With a leap Blaine went past Ratan. The squat little shape of the
other Radak came charging down the center of the narrow corridor.
His greenish eye-beams were weird in the crimson gloom. Again
Blaine fired his cylinder. But this time evidently he missed and in
another second the Radak was on him. The shock of the impact flung
them both to the ground. The cylinder was knocked from Blaine's
hand. He felt his adversary's arms clutching him, squeezing him with
machine-like strength. In another moment Blaine's ribs would have
smashed. But his left hand still gripped the knife. With despairing
effort he drove it into the Radak's side.
Ghastly knife-thrust! It went in with a crunch, a rasp as it severed the
strange flesh. There was a hiss as hot fluid spurted. The Radak's
scream was horrible. His arms fell away. Blaine disentangled himself.
On the ground near him he saw the cylinder, snatched it, dropped it
into his pocket. A commotion was all around him now. Oncoming
Radaks in several of the branching corridors. But ahead of Blaine
there seemed no one.
He ran. Behind him he could dimly see the squat little figures gazing
at their dead fellow, and surrounding the stricken Ratan. No one
seemed to notice the fleeing Blaine as he ran the length of the
winding corridor until at last he was out upon the crimson upper
surface.
For a time he wandered. He did not see any of the crimson monsters,
or at least did not recognize them for what they were. Then he heard
Mack shouting at him; saw Mack and Vivian running toward him.
"I've got something important—a weapon," he called to Mack.
Then abruptly the three of them saw that huge, python-like crimson
Thing which had been silently stalking Blaine.
"Look!" Vivian gasped. "Another of them!"
It was slithering rapidly at them now, no more than fifty feet away.
Its green-swaying eye-beams clung to them. For that instant they
were standing stricken with terror. To one side of them there was the
brink of an abyss a few yards away, and to the other, and behind
them, a ragged little cliff.
"Got to try and climb those rocks!" Mack gasped. "Can't get past that
snake thing—we're trapped—"
But Blaine swept him aside. The cylinder was in Blaine's hand now.
"This will stop it!" he muttered. "You two—get behind me!"
The monstrous thirty-foot thing was only half its own length away
from them now. Then, as its head reared over a projection of the
uneven, rocky ground, Blaine carefully aimed the cylinder and fired.
But the monster didn't stop! There was no conscious, thinking brain
in that ghastly, pulsating crimson head! Just motor-ganglia reacting
to the impulses of instinct!
Blaine fired again. But the monster kept on coming and in another
second was upon them!

IV

Back in our cave-cell, Shorty and I stared blankly after the figure of
the Lei woman, Tahn, as she motioned to the Radak guards who slid
our door-panel closed. Again we were alone.
"Well," Shorty murmured. "What do you make of that? The wife of
some Lei named Taro, she said."
And that she would come back and try to get us out of here. That her
husband had some plan—
Eagerly, Shorty and I waited. Would it be an hour, or a day? Both of
us were thinking of Blaine, locked somewhere around here, perhaps
in a cell like ours. Or had the Radaks killed him by now? And Vivian
and Mack, wandering out there in the Realm of the Things you
couldn't kill.
"Guess they're done for," Shorty said, when I mentioned them.
"Unless we can get out there to them—"
Shorty's smile was ironic. "That would fix everything, of course. Don't
be an ass, Bob. If we were out there, we'd all be trying to get back.
For what? So the Radaks would jump on us and kill us."
It was all so utterly hopeless. But it was queer, that instinct all five of
us had, to try and keep together.
The young Lei woman had brought us food and drink. Shorty and I
slumped on the earthern floor now and sampled the food. Nauseous
stuff, indescribable.
"If it's been weeks since we left the Earth," Shorty said, "no wonder
we're nearly starved to death."
But we managed to eat and drink some of it, and then exhausted by
the nerve tension of what we had been through, we drifted off into
an uneasy slumber.
The rasp of the sliding door-panel jerked us into alertness. I had the
feeling that only a little time had passed. The panel slid open just a
foot or two, and a figure came in. It was Tahn.
Both Shorty and I were on our feet. "You came as you hoped," I said
softly. "We're ready. Just tell us what you want us to do."
She barely whispered, "The Radak guards just now are changing.
There is no one outside. We go, quickly."
"Go where?" Shorty demanded.
"To my husband, Taro. He is in a corridor near here. Come now,
quickly."
The faintly red corridor outside was empty. Swiftly Tahn led us along
it, around several sharp bends, past a cross-corridor intersection. I
was tense, expecting every moment that Radaks would leap upon us
from the shadows. But so far we had escaped notice, though
obviously there were many Radaks near here. Several times we
passed the dim oval openings of little grottos, and often there were
guttural, chattering voices from within them.
"Won't the guards discover we're gone?" Shorty murmured.
"Perhaps not for maybe much time. I am in charge of you, I bring
you food and drink. The guards stay outside, should you try to break
out."
Our tunnel was descending now. And suddenly from the dimness to
one side, there came a murmur: "Tahn! Tahn—"
A young Lei man was crouching in a shadowed recess. It was Tahn's
husband, Taro.
"She has brought you, Earthmen. That is good."
We crouched down with him. He was a youngish fellow, tall, slim and
powerfully built. His single draped garment exposed one bronze
shoulder. His grey-black hair was chopped at the base of his neck,
with a narrow band of bright-colored fabric tied around his forehead.
With his high-cheek bones, hawk-like nose and gleaming dark eyes
he could have been a stalwart young savage of Earth.
"I want to help you," he was saying. "Your coming here fits my plans,
and believe me I have worked on them a long time. Tahn and I,
making the Radaks trust us."
"Say," Shorty murmured, "you certainly are fluent with English."
The young Lei's face wrinkled into a smile. "Why should I not, my
wife and I? We Lei learn things quickly. Perhaps a different mind-
quality from yours, almost at once to absorb what we hear. Ratan—
he is next to the Great Mind as leader of the Radaks—he chose Tahn
and me to go on the expedition to Earth. We were carefully watched,
or we would have escaped to warn you. It was Tahn who took care of
you on the way here."

He told us then of the weird Radak-gun, with its flash of mind-current


—the weapon which probably just at this exact moment no more
than half a mile away in this maze of subterranean corridors, Blaine
was snatching from Ratan.... And Tahn told us, too, of the Radak plot
to devastate Earth.
"You have some plan?" Shorty murmured.
He told us then that he knew how to get into the Cavern of Machines
—a huge, guarded grotto where all the diabolic, giant mechanisms of
the Radaks were housed. The power plant of little Zelos, and the
source of the purple radiance which was bathing Earth.
"If we can kill the guards and get into the Cavern—only the Great
Mind himself—or Ratan—will be there. No one else but those two are
allowed there. No one else knows the secrets of the mechanisms to
operate them."
"So we just get in and overcome the Great Mind himself," Shorty
commented. He gave a mock shudder with an attempt to be
humorous. "All right. Figure that's done. Then what?"
Taro's plan was certainly desperate, but at least it promised the
possibility of success. "Do you know where the Earthman Blaine is?" I
demanded.
Tahn said, "He is in a cave-cell. I am ordered to take him food and
drink very soon."
"What weapons have you got?" Shorty asked. "Say, if you could get
one of those brain-paralyzing guns—"
Taro shook his head. "Never could I even get near one. The Great
Mind always carries one—and so does Ratan. But there is no chance
—"
"We must get to Blaine," I said. "And then try and find Vivian and
Mack. We've all got to be together—"
We planned it for a few moments more. Then cautiously Taro and
Tahn led us to a corridor intersection. "We will hide here," he said,
gesturing to another shadowed recess where the ragged rocks of the
wall jutted out in an overhang. "Tahn can go best." The young Lei
turned to his wife. "Tahn, listen. You get food and drink. You take it
to Blaine's cell. There are not always guards perhaps. You watch your
chance—"
"Listen!" Shorty suddenly interjected. "Maybe I'm crazy, but there's
some kind of commotion around here."
We could all hear it now—a distant murmur of turmoil down one of
the side corridors. Taro nodded. "Something is wrong. And Blaine's
cell is down that way. You Earthmen wait here! I will go with Tahn.
Then we come back to you."

They were gone only a few moments. From a little distance they had
stood unnoticed, watching and listening. Blaine had escaped! He had
seized Ratan's thought-gun; turned it upon Ratan and one of the
guards; had stricken them. And had knifed another guard, and
vanished.
"Well! Good for Blaine," Shorty murmured. "He's smarter than all the
rest of us put together! And he's got one of those guns! Where'd he
go—"
"They think perhaps out to the outer surface," Taro said. "He ran that
way."
"To find Mack and Vivian!" I exclaimed. "Well, that's what we want to
do. Show us that exit, Taro."
"I will go with you," the young Lei said quietly. But there was no
mistaking his shudder and the grim look on his face. "Tahn, you stay
here."
"I will go with my husband," she retorted. "Taro, please—"
We took her. It seemed that the commotion at Blaine's cell must have
drawn all the Radaks from these other passages. We were not
discovered as we threaded our way back, until presently we were
ascending a winding tunnel which ended at the crimson upper
surface. How long it took us to sight Mack, Vivian and Blaine I do not
know. It seemed an eternity of apprehension, as Taro and Tahn
cautiously led us along winding rocky defiles and past patches of that
weird, fantastic forest. Shorty and I saw none of the monsters. But
there were many times when suddenly, without explanation, Taro
turned us from where we would have wandered.
Then we were far enough from the tunnel entrances so that we
dared talk without possibility that the Radaks would hear us.
"Blaine! Blaine—where are you?"
"Mack! Vivian—are you here?"
It was Tahn who first saw them. We were in a cluster of rocks with a
brink ahead of us. I could see lower ground perhaps fifty feet down—
a precipitous descent close ahead of us. It chanced that Tahn was
leading, and suddenly she turned, gave a cry, and then pointed over
the brink.
"There they are! Down there! Look—look at them—"
We crowded to the brink. Fifty feet down this ragged wall, Blaine,
Vivian and Mack stood backed against it. An abyss was near them.
And in front of them a great crimson, python-like thing was slithering,
almost upon them now, with Blaine futilely firing his gun at it!
There was nothing we could do; and for those seconds all four of us
stood staring, mute, numbed with horror. The scene on the ledge
below us was clear as though on a little stage. The monster in
another second would be upon its victims. I saw Blaine throw down
his gun in despair. His voice floated up to us.
"Damn thing won't work! Got to—try to run—"
Then, suddenly we saw Mack leap forward, not toward where he
might have a wild chance of climbing up our ragged little cliff-wall,
but the other way—toward the brink that dropped down to another
terrace, between the brink and the monster's slithering length. His
intention was obvious—to lead the monster over that other brink
after him.... To sacrifice himself so that his companions might escape.
In the chaos of that second we saw Mack get past the monster's
head and neck. Its head turned. And then, before Mack could hurl
himself down the hundred-foot drop, a loop of the great crimson
body lashed out. It seemed that a tentacle whipped separate from
the undulating snake-like body—a tentacle that seized Mack, looped
around him and flung him into the air.
Just a ghastly second or two as Mack's whirling body came up
diagonally toward us in the air, and then fell back, into a ragged
cluster of rocks beyond the monster's tail. Horribly we could hear the
thud as it struck. For another second the great crimson head of the
monster seemed to rear, with swaying eye-beams searching. But
Mack's body was hidden by the rock-cluster.

Then, suddenly the gruesome python shape, head down, began


oozing over the brink beside it. Flowing mass of protoplasm. It
thinned out as it sagged down the hundred-foot drop—thinned until it
was a narrow ribbon—a blood-red rivulet of waterfall. Then it was all
on the lower level, gathering itself together until in a moment it was
a great congealed, quivering crimson ball with the head in the center.
For another instant it pulsated; then it bumped and rolled down a
ragged slope, reached a little patch of distant vegetation where we
could dimly see it spreading itself thinly out.... Spread like a blood-
red pool, quiescent, waiting.
With Taro and Tahn, Shorty and I climbed down the ragged little
descent, joined Vivian and Blaine.
"He tried to save us," the white-faced Vivian murmured.
"Yes," I agreed. "We saw it."
We found his broken body in the cluster of rocks fifty feet away. He
was still conscious but we thought he was dying. One of his arms
hung limp. Blood was coming from a head wound. But his pallid face
was trying to smile.
"My leg and arm," he mumbled. "Can't move them."
One of his legs undoubtedly was broken. As we told him that the
monster had gone his gaze seemed only on Vivian.
"Thought it would kill you, Viv," he muttered. "Didn't want that."
Then he fainted. He had been trying to get up on one elbow as Vivian
knelt with an arm under his head. Then his eyes closed, and he
sagged, went limp.
"We must stop that blood from his head," Tahn murmured. "And then
try and get him into one of the tunnels."
Vivian jumped up. "Here's what we need—bandages." She flashed us
a little twisted smile as she tore off her waist and skirt and ripped
them into strips. "Here—bandages." She handed the strips of fabric
to Tahn. Then she grinned at me. "This underdress—not too
becoming, is it?" She gestured at the brief undergarment that now
partly covered her, and her whimsical smile broadened. "Well this
time, anyway, I had a good motive, didn't I?"
Shorty and I carried the still unconscious Mack back to one of the
tunnel entrances. And Taro led us to a shadowed, cave-like little place
where we laid him down. Good luck seemed with us. We had
encountered, so far, no Radaks.

"You and Tahn will stay with him," I told Vivian. And Shorty and I had
decided that Blaine had best stay also. For once Blaine had to do
something against his will.
"Think I'm too old to help you young fellows now?" he said. "All right,
maybe I am."
Certainly he was in no physical condition to be much help in the
desperate venture we were planning. He handed me the Radak-gun,
showed me how to use it. I dropped it in my pocket.
"Good luck to you," Blaine said.
"Thanks. We'll need it," I acknowledged.
Then Shorty, Taro and I left them. Taro had hidden the only weapons
he could get, near here. We found them—sheathed knives that the
Lei used in the underground fields. They were odd-shaped knives;
they seemed made of a highly polished, metallic stone. I thumbed
one. It was sharp.
"Very handy," Shorty commented. "Come on, Taro, let's go. Where is
this Cavern of Machines?"
It was perhaps half an Earth-mile, low down in the maze of
underground passages. Shorty clutched his knife; I held the Radak-
gun as we followed Taro down the dim, descending crimson tunnel.

"There's one of the guards!" Shorty whispered. "See him?"


I pushed Shorty back. "No, two of them! The other one's sitting
down. You and Taro keep behind me. I'll tackle them with the Radak-
gun."
We could see the square grey figures of two Radaks down the little
length of tunnel ahead of us. They were by an opening that seemed
to lead sharply downward, with a glow of radiance streaming up. And
now in the heavy underground silence we could hear the faint
muffled thrum and whine of mechanisms.
My hand silently gripped Taro. All three of us crouched. "That's the
entrance to the Cavern of Machines?" I whispered.
"Yes."
"Two guards. Are there liable to be more of them around?"
Taro shook his head. "I think not. Though I cannot surely say."
"The machines are operating," Shorty said. "Hear them? That means
only the Great Mind, or Ratan will be down there in the Cavern?"
"Yes," the young Lei agreed.
"It's most likely not Ratan," I said. "Blaine got him—struck him
insensible. Or would he be recovered by now?"
Taro had no way of guessing. With an ordinary Radak the shock
would have lasted longer than this. "But Ratan's mind is trained—
developed—more powerful as you would say. He could recover more
quickly."
"Are there other entrances?" Shorty asked. "They'd have guards at
them. If we make any commotion down there, and a bunch of
Radaks come rushing us—"
"This is the only entrance."
"Right," Shorty chuckled. "Come on then, let's finish off these
fellows." He fingered his knife. "You tackle 'em with that gun, Bob.
But if you miss, trust me—I'll slip this knife into them—"
With Taro and Shorty behind me I crept soundlessly forward. In my
hand the pot bellied little Radak gun, so unfamiliar, gave me an
uneasy feeling. Suppose I should miss. An uproar from these guards
might bring dozens of others.
"How close do I have to get?" I whispered to Taro.
"This now—close enough."
One of the Radaks was standing up, lounging with his back to the
wall. The other was lying down. To send my flash clinging to the
heads of both of them, I would have to shift my aim, and fire twice.
My hand trembled a little. Then I pressed the lever.
There was that vaguely visible flash. The gun-hilt in my grip vibrated,
and at the muzzle of it there was a faint little hiss. A hit! The Radak
on the ground seemed to stiffen. He raised his head, staring blankly.
The Radak who was standing noticed it. He started, whirled around
toward us. It took all my will power to withhold my second flash for
that instant. But I did; and then as the standing figure steadied, I
fired again.
"Got him!" Shorty murmured. "Good work, Bob! Come on!"
We ran forward. The standing Radak was motionless, gazing with
vacant stare. Shorty dashed up to him. "Lie down, you're asleep! If
you're not, you ought to be."
But the Radak did not move, just turned his empty gaze toward the
sound of Shorty's voice. I got it. "They don't speak English! Tell them,
Taro."
The Lei murmured commandingly in his own language, and in a
moment the two guards were lying inert with closed eyes.
"Mighty neat," Shorty whispered. "Come on—here we go."
Beyond the guards an earthen ramp led sleepily downward, winding
to a circular spiral. Then presently we emerged upon a little ledge
with the great Cavern of Machines spread out before us.
"Crouch down! We will see who is here," Taro whispered. There was
awe in his voice. "We must not be seen until we attack."
It was a huge, vault-like cavern, with glowing roof high over our
heads, and we were about twenty feet above its lower level, with a
narrow, steep ramp leading down from near us. I saw that it was a
weird, dim grotto, lurid with swaying, prismatic glows of colored
radiance, and throbbing, humming with a myriad mechanical voices.
Distant railed terraces held frameworks of metal, where opalescent
tubes were glowing. Beams of light-radiance seemed to carry the
power from one strange mechanism to the next, like wires connecting
them in series. No Lei, no ordinary Radak, and certainly least of all us
Earthmen, could by any chance have understood the scientific details
of what we were seeing.
I recall there was a convergence of beams, high up in mid-air at the
center of the cavern, where a shower of tiny electrolyte sparks
glittered like a fountain of pyrotechnics. And out of it a narrow
concentrated beam of violet-purple glow shot upward to a grid in the
ceiling—the gravitational force, doubtless, which from there was
conducted to some point above where it was hurled into Space.
How long I stared, awed, I have no idea. Then I was aware of Taro
beside me, whispering, "It is the Great Mind who is down there. He
has just come into sight—down by that yellow glow."
The floor of the cavern held a dozen or more of the huge
mechanisms, and in the center of them there was a throbbing space
that seemed to hold the controls of all these intricate machines.
Down there in the weird glow we could now see the lone figure of
the ancient Radak leader—shriveled and bent, he moved around,
occasionally reaching to shift some lever or make some adjustment.
"He must not see us coming!" Taro whispered. His voice was tense.
And on his face now as the multi-colored glow bathed it, there was
unmistakable terror. This young Lei, like all his people, born and bred
to fear the dominance of the Great Mind—to attack that little figure,
to Taro was almost unthinkable. Taro had planned this; dreamed of it.
But faced with it now, there was only terror sweeping him, so that
had he been here alone, easily he could have turned and fled.
Shorty and I had no such inhibitions.
"What in the devil," Shorty murmured. "He's got a Radak-gun—sure,
I've no doubt of it. We've got to duck that. But once I get close to
him—" Shorty's gesture with his knife was significant.
For minutes more we tensely waited. Then we got down the ramp
without being seen, and on the lower floor we crouched between two
of the giant whining machines.
"Easy now!" I whispered. "You two—keep behind me—"
I held the Radak-gun in my hand. We waited another moment; then
ducked forward and crouched again, behind a great glowing
mechanism through which two beams of colored light were passing.
We were only some twenty feet from the leader now. Close enough
for my shot, or for us to rush him. He was bending down over a
glowing dial. Green light from it streamed upward, bathed his weird
mummy-like countenance so that suddenly he seemed like some
horrible ghoul intent upon a task diabolic, gruesome.

"Let him have it!" Shorty whispered. "Now's your chance!"


I must confess my heart was racing, with a sudden nameless
premonition of terror. Thoughts are instant things. I tried to tell
myself that this was just a weazened old man. Helpless, with three of
us about to leap on him. Of course he was helpless! With sudden
relief I saw that he had discarded his belt. It hung on the peg of a
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookname.com

You might also like